693 lines
19 KiB
HTML
693 lines
19 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Wallet</title>
|
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
<link href="https://fonts.googleapis.com/css2?family=Urbanist:ital,wght@0,100..900;1,100..900&display=swap" rel="stylesheet">
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
|
</head>
|
|
<body>
|
|
<div class="navbar">
|
|
<div class="logo-container">
|
|
<i class="fas fa-sun logo-icon"></i>
|
|
<span class="logo-text">jLink</span>
|
|
</div>
|
|
|
|
<div class="search-container">
|
|
<i class="fas fa-search search-icon"></i>
|
|
<input type="text" placeholder="Search" class="search-input">
|
|
</div>
|
|
|
|
<div class="nav-items">
|
|
<div class="nav-item">
|
|
<a href="discover.html" class="nav-link">
|
|
<i class="fas fa-compass"></i>
|
|
<span>Discover</span>
|
|
<div class="blank"></div>
|
|
</a>
|
|
</div>
|
|
<div class="nav-item">
|
|
<a href="jobs.html" class="nav-link">
|
|
<i class="fas fa-briefcase"></i>
|
|
<span>Jobs</span>
|
|
<div class="blank"></div>
|
|
</a>
|
|
</div>
|
|
<div class="nav-item">
|
|
<a href="proposals.html" class="nav-link">
|
|
<i class="fas fa-file-alt"></i>
|
|
<span>Proposals</span>
|
|
<div class="blank"></div>
|
|
</a>
|
|
</div>
|
|
<div class="nav-item">
|
|
<a href="invoices.html" class="nav-link">
|
|
<i class="fas fa-dollar-sign"></i>
|
|
<span>Invoices</span>
|
|
<div class="blank"></div>
|
|
</a>
|
|
</div>
|
|
<div class="nav-item">
|
|
<a href="learn.html" class="nav-link">
|
|
<i class="fas fa-graduation-cap"></i>
|
|
<span>Learn</span>
|
|
<div class="blank"></div>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bottom-nav">
|
|
<div class="nav-item active">
|
|
<a href="wallet.html" class="nav-link">
|
|
<i class="fas fa-wallet"></i>
|
|
<span>Wallet</span>
|
|
<span class="badge">$8,210.45</span>
|
|
</a>
|
|
</div>
|
|
<div class="nav-item">
|
|
<a href="inbox.html" class="nav-link">
|
|
<i class="fas fa-inbox"></i>
|
|
<span>Inbox</span>
|
|
<span class="badge">7</span>
|
|
</a>
|
|
</div>
|
|
<div class="nav-item user-item">
|
|
<a href="profile.html" class="nav-link">
|
|
<div class="user-avatar">
|
|
<img src="https://images.unsplash.com/photo-1639039186034-27f98b6e5a2f" alt="Profile">
|
|
</div>
|
|
<span>Emily</span>
|
|
<i class="fas fa-cog settings-icon right"></i>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="content">
|
|
<div class="wallet-header">
|
|
<h1>Wallet</h1>
|
|
<div class="wallet-actions">
|
|
<button class="btn secondary"><i class="fas fa-exchange-alt"></i> Transfer</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="wallet-overview">
|
|
<div class="balance-card">
|
|
<div class="balance-header">
|
|
<h3>Total Balance</h3>
|
|
</div>
|
|
<div class="balance-amount">$8,210.45</div>
|
|
<div class="balance-change positive">+$1,250.30 this month</div>
|
|
</div>
|
|
|
|
<div class="stats-cards">
|
|
<div class="stat-card">
|
|
<div class="stat-icon income"><i class="fas fa-arrow-down"></i></div>
|
|
<div class="stat-details">
|
|
<span class="stat-label">Income</span>
|
|
<span class="stat-value">$12,450.80</span>
|
|
<span class="stat-change positive">+18.2%</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="stat-card">
|
|
<div class="stat-icon expense"><i class="fas fa-arrow-up"></i></div>
|
|
<div class="stat-details">
|
|
<span class="stat-label">Expenses</span>
|
|
<span class="stat-value">$4,240.35</span>
|
|
<span class="stat-change negative">+5.4%</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="stat-card">
|
|
<div class="stat-icon pending"><i class="fas fa-clock"></i></div>
|
|
<div class="stat-details">
|
|
<span class="stat-label">Pending</span>
|
|
<span class="stat-value">$3,180.00</span>
|
|
<span class="stat-change neutral">3 transactions</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="section-header">
|
|
<h2>Transaction History</h2>
|
|
<div class="filter-options">
|
|
<select class="filter-select">
|
|
<option>All Transactions</option>
|
|
<option>Income</option>
|
|
<option>Expenses</option>
|
|
<option>Transfers</option>
|
|
</select>
|
|
<select class="filter-select">
|
|
<option>Last 30 Days</option>
|
|
<option>This Month</option>
|
|
<option>Last Month</option>
|
|
<option>Custom Range</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="transactions-list">
|
|
<div class="transaction-item">
|
|
<div class="transaction-icon income">
|
|
<i class="fas fa-file-invoice-dollar"></i>
|
|
</div>
|
|
<div class="transaction-details">
|
|
<div class="transaction-title">Invoice Payment #INV-2023-089</div>
|
|
<div class="transaction-subtitle">From TechCorp Inc.</div>
|
|
</div>
|
|
<div class="transaction-amount income">+$2,450.00</div>
|
|
<div class="transaction-date">Apr 5, 2025</div>
|
|
</div>
|
|
|
|
<div class="transaction-item">
|
|
<div class="transaction-icon expense">
|
|
<i class="fas fa-shopping-cart"></i>
|
|
</div>
|
|
<div class="transaction-details">
|
|
<div class="transaction-title">Software Subscription</div>
|
|
<div class="transaction-subtitle">Adobe Creative Cloud</div>
|
|
</div>
|
|
<div class="transaction-amount expense">-$52.99</div>
|
|
<div class="transaction-date">Apr 3, 2025</div>
|
|
</div>
|
|
|
|
<div class="transaction-item">
|
|
<div class="transaction-icon transfer">
|
|
<i class="fas fa-exchange-alt"></i>
|
|
</div>
|
|
<div class="transaction-details">
|
|
<div class="transaction-title">Transfer to Bank Account</div>
|
|
<div class="transaction-subtitle">Chase ****4582</div>
|
|
</div>
|
|
<div class="transaction-amount expense">-$1,500.00</div>
|
|
<div class="transaction-date">Apr 1, 2025</div>
|
|
</div>
|
|
|
|
<div class="transaction-item">
|
|
<div class="transaction-icon income">
|
|
<i class="fas fa-file-invoice-dollar"></i>
|
|
</div>
|
|
<div class="transaction-details">
|
|
<div class="transaction-title">Invoice Payment #INV-2023-088</div>
|
|
<div class="transaction-subtitle">From DataSys Solutions</div>
|
|
</div>
|
|
<div class="transaction-amount income">+$3,800.00</div>
|
|
<div class="transaction-date">Mar 28, 2025</div>
|
|
</div>
|
|
|
|
<div class="transaction-item">
|
|
<div class="transaction-icon pending">
|
|
<i class="fas fa-clock"></i>
|
|
</div>
|
|
<div class="transaction-details">
|
|
<div class="transaction-title">Pending Invoice #INV-2023-090</div>
|
|
<div class="transaction-subtitle">From GlobalTech Ltd.</div>
|
|
</div>
|
|
<div class="transaction-amount pending">$1,850.00</div>
|
|
<div class="transaction-date">Processing</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="pagination">
|
|
<button class="pagination-btn"><i class="fas fa-chevron-left"></i></button>
|
|
<button class="pagination-btn active">1</button>
|
|
<button class="pagination-btn">2</button>
|
|
<button class="pagination-btn">3</button>
|
|
<span class="pagination-ellipsis">...</span>
|
|
<button class="pagination-btn">8</button>
|
|
<button class="pagination-btn"><i class="fas fa-chevron-right"></i></button>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
<style>
|
|
* {
|
|
box-sizing: border-box;
|
|
font-family: "Urbanist", sans-serif;
|
|
}
|
|
body {
|
|
margin: 0;
|
|
min-width: 320px;
|
|
min-height: 100vh;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
padding: 20px;
|
|
display: flex;
|
|
gap: 20px;
|
|
}
|
|
.navbar {
|
|
width: 300px;
|
|
height: 100%;
|
|
background-color: #EBF2F2;
|
|
border-radius: 20px;
|
|
padding: 20px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
overflow-y: auto;
|
|
}
|
|
.content {
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: white;
|
|
border-radius: 20px;
|
|
padding: 30px;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
/* Logo styling */
|
|
.logo-container {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-bottom: 20px;
|
|
}
|
|
.logo-icon {
|
|
font-size: 24px;
|
|
margin-right: 10px;
|
|
color: #333;
|
|
}
|
|
.logo-text {
|
|
font-size: 22px;
|
|
font-weight: bold;
|
|
color: #333;
|
|
}
|
|
|
|
/* Search bar styling */
|
|
.search-container {
|
|
position: relative;
|
|
margin-bottom: 25px;
|
|
}
|
|
.search-input {
|
|
width: 100%;
|
|
padding: 12px 15px 12px 40px;
|
|
border: none;
|
|
border-radius: 20px;
|
|
background-color: white;
|
|
font-size: 14px;
|
|
}
|
|
.search-icon {
|
|
position: absolute;
|
|
left: 15px;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
color: #888;
|
|
}
|
|
|
|
/* Navigation items */
|
|
.nav-items {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 20px;
|
|
margin-bottom: auto;
|
|
}
|
|
.nav-item {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 8px 10px;
|
|
color: #333;
|
|
font-weight: 500;
|
|
position: relative;
|
|
border-radius: 10px;
|
|
margin: 2px 0;
|
|
transition: background-color 0.3s ease;
|
|
}
|
|
.nav-item i {
|
|
width: 25px;
|
|
font-size: 16px;
|
|
position: relative;
|
|
z-index: 2;
|
|
}
|
|
.nav-item i.right {
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
margin-left: auto;
|
|
}
|
|
.nav-item span {
|
|
font-size: 16px;
|
|
position: relative;
|
|
z-index: 2;
|
|
}
|
|
|
|
.nav-link {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
width: 100%;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
.nav-item.active {
|
|
background-color: white;
|
|
}
|
|
|
|
/* Bottom navigation */
|
|
.bottom-nav {
|
|
margin-top: auto;
|
|
border-top: 1px solid rgba(0, 0, 0, 0.05);
|
|
padding-top: 20px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 20px;
|
|
}
|
|
|
|
/* Badge styling */
|
|
.badge {
|
|
color: #333;
|
|
border-radius: 10px;
|
|
font-size: 12px;
|
|
margin-left: auto;
|
|
position: relative;
|
|
z-index: 2;
|
|
}
|
|
|
|
/* User item styling */
|
|
.user-item {
|
|
margin-top: 5px;
|
|
}
|
|
.user-avatar {
|
|
width: 19px;
|
|
height: 19px;
|
|
background-color: #FF6B6B;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
color: white;
|
|
font-size: 12px;
|
|
margin-right: 10px;
|
|
position: relative;
|
|
z-index: 2;
|
|
}
|
|
.user-avatar img {
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: 50%;
|
|
object-fit: cover;
|
|
}
|
|
.blank {
|
|
margin-left: auto;
|
|
}
|
|
|
|
/* Wallet specific styles */
|
|
.wallet-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 30px;
|
|
}
|
|
|
|
.wallet-header h1 {
|
|
font-size: 28px;
|
|
font-weight: 700;
|
|
color: #333;
|
|
}
|
|
|
|
.wallet-actions {
|
|
display: flex;
|
|
gap: 10px;
|
|
}
|
|
|
|
.btn {
|
|
padding: 10px 20px;
|
|
border-radius: 8px;
|
|
border: none;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.btn.primary {
|
|
background-color: #4CAF50;
|
|
color: white;
|
|
}
|
|
|
|
.btn.secondary {
|
|
background-color: #f0f0f0;
|
|
color: #333;
|
|
}
|
|
|
|
.wallet-overview {
|
|
display: flex;
|
|
gap: 20px;
|
|
margin-bottom: 30px;
|
|
}
|
|
|
|
.balance-card {
|
|
background-color: #2c3e50;
|
|
color: white;
|
|
border-radius: 12px;
|
|
padding: 20px;
|
|
flex: 0 0 300px;
|
|
}
|
|
|
|
.balance-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.balance-header h3 {
|
|
font-weight: 600;
|
|
font-size: 18px;
|
|
}
|
|
|
|
.balance-amount {
|
|
font-size: 32px;
|
|
font-weight: 700;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.balance-change {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.positive {
|
|
color: #4CAF50;
|
|
}
|
|
|
|
.negative {
|
|
color: #FF5252;
|
|
}
|
|
|
|
.neutral {
|
|
color: #888;
|
|
}
|
|
|
|
.stats-cards {
|
|
display: flex;
|
|
flex: 1;
|
|
gap: 15px;
|
|
}
|
|
|
|
.stat-card {
|
|
background-color: white;
|
|
border-radius: 12px;
|
|
padding: 20px;
|
|
display: flex;
|
|
align-items: center;
|
|
flex: 1;
|
|
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
|
|
}
|
|
|
|
.stat-icon {
|
|
width: 50px;
|
|
height: 50px;
|
|
border-radius: 12px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
margin-right: 15px;
|
|
font-size: 20px;
|
|
}
|
|
|
|
.stat-icon.income {
|
|
background-color: rgba(76, 175, 80, 0.1);
|
|
color: #4CAF50;
|
|
}
|
|
|
|
.stat-icon.expense {
|
|
background-color: rgba(255, 82, 82, 0.1);
|
|
color: #FF5252;
|
|
}
|
|
|
|
.stat-icon.pending {
|
|
background-color: rgba(255, 193, 7, 0.1);
|
|
color: #FFC107;
|
|
}
|
|
|
|
.stat-details {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.stat-label {
|
|
color: #888;
|
|
font-size: 14px;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.stat-value {
|
|
font-size: 20px;
|
|
font-weight: 700;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.stat-change {
|
|
font-size: 12px;
|
|
}
|
|
|
|
.section-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.section-header h2 {
|
|
font-size: 20px;
|
|
font-weight: 700;
|
|
color: #333;
|
|
}
|
|
|
|
.filter-options {
|
|
display: flex;
|
|
gap: 10px;
|
|
}
|
|
|
|
.filter-select {
|
|
padding: 8px 15px;
|
|
border-radius: 8px;
|
|
border: 1px solid #ddd;
|
|
background-color: white;
|
|
font-size: 14px;
|
|
outline: none;
|
|
}
|
|
|
|
.transactions-list {
|
|
background-color: white;
|
|
border-radius: 12px;
|
|
overflow: hidden;
|
|
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.transaction-item {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 15px 20px;
|
|
border-bottom: 1px solid #f0f0f0;
|
|
}
|
|
|
|
.transaction-item:last-child {
|
|
border-bottom: none;
|
|
}
|
|
|
|
.transaction-icon {
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 10px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
margin-right: 15px;
|
|
font-size: 16px;
|
|
}
|
|
|
|
.transaction-icon.income {
|
|
background-color: rgba(76, 175, 80, 0.1);
|
|
color: #4CAF50;
|
|
}
|
|
|
|
.transaction-icon.expense {
|
|
background-color: rgba(255, 82, 82, 0.1);
|
|
color: #FF5252;
|
|
}
|
|
|
|
.transaction-icon.transfer {
|
|
background-color: rgba(33, 150, 243, 0.1);
|
|
color: #2196F3;
|
|
}
|
|
|
|
.transaction-icon.pending {
|
|
background-color: rgba(255, 193, 7, 0.1);
|
|
color: #FFC107;
|
|
}
|
|
|
|
.transaction-details {
|
|
flex: 1;
|
|
}
|
|
|
|
.transaction-title {
|
|
font-weight: 600;
|
|
margin-bottom: 3px;
|
|
}
|
|
|
|
.transaction-subtitle {
|
|
font-size: 14px;
|
|
color: #888;
|
|
}
|
|
|
|
.transaction-amount {
|
|
font-weight: 700;
|
|
font-size: 16px;
|
|
margin-right: 20px;
|
|
min-width: 100px;
|
|
text-align: right;
|
|
}
|
|
|
|
.transaction-amount.income {
|
|
color: #4CAF50;
|
|
}
|
|
|
|
.transaction-amount.expense {
|
|
color: #FF5252;
|
|
}
|
|
|
|
.transaction-amount.pending {
|
|
color: #FFC107;
|
|
}
|
|
|
|
.transaction-date {
|
|
color: #888;
|
|
font-size: 14px;
|
|
min-width: 80px;
|
|
text-align: right;
|
|
}
|
|
|
|
.pagination {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
gap: 5px;
|
|
}
|
|
|
|
.pagination-btn {
|
|
width: 36px;
|
|
height: 36px;
|
|
border-radius: 8px;
|
|
border: 1px solid #ddd;
|
|
background-color: white;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
cursor: pointer;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.pagination-btn.active {
|
|
background-color: #000;
|
|
color: white;
|
|
border-color: #000;
|
|
}
|
|
|
|
.pagination-ellipsis {
|
|
margin: 0 5px;
|
|
}
|
|
</style>
|
|
</html>
|