@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=DM+Mono:ital,wght@0,300;0,400;0,500;1,300&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#09090f;--surface:#101018;--surface2:#15151f;--surface3:#1a1a28;--border:#1e1e2e;--border2:#2a2a40;--text:#e8e8f2;--text2:#7878a0;--text3:#44445a;--accent:#3b6bff;--accent-dark:#2a55ee;--accent-soft:#3b6bff1f;--accent-glow:#3b6bff40;--gold:#f0b429;--gold2:#d9a020;--gold-soft:#f0b4291f;--green:#34d399;--green-soft:#34d3991f;--red:#f87171;--red-soft:#f871711f;--yellow:#fbbf24;--yellow-soft:#fbbf241f;--text-inv:#fff;--text-inv2:#ffffff8c;--text-inv3:#ffffff47;--shadow:0 1px 3px #0006, 0 4px 16px #0000004d;--shadow-md:0 8px 32px #00000080, 0 2px 8px #0000004d;--shadow-lg:0 20px 60px #0009;--radius:14px;--radius-sm:8px;--radius-xs:6px;--font:"Plus Jakarta Sans", sans-serif;--mono:"DM Mono", monospace;--cream:#0d0d16;--cream2:#12121e;--white:#1a1a28}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}input[type=file]{display:none}.app{min-height:100vh;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:228px;min-height:100vh;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-logo{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:24px 20px 20px;display:flex}.logo-text{letter-spacing:-.8px;color:var(--text);font-size:20px;font-weight:800}.logo-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:14px 10px;display:flex}.nav-section-label{font-family:var(--mono);color:var(--text3);letter-spacing:2px;text-transform:uppercase;margin:14px 0 5px;padding:0 10px;font-size:9px}.nav-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text2);text-align:left;width:100%;font-size:13px;font-weight:500;font-family:var(--font);background:0 0;border:none;align-items:center;gap:9px;padding:9px 12px;transition:all .15s;display:flex}.nav-item:hover{background:var(--surface2);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-glow);font-weight:600}.nav-icon{text-align:center;flex-shrink:0;width:18px;font-size:15px}.sidebar-footer{border-top:1px solid var(--border);padding:14px}.logout-btn{border:1px solid var(--border2);border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text2);font-size:12px;font-weight:500;font-family:var(--font);background:0 0;align-items:center;gap:8px;padding:8px 12px;transition:all .15s;display:flex}.logout-btn:hover{background:var(--red-soft);color:var(--red);border-color:#f8717140}.main{flex-direction:column;flex:1;min-height:100vh;margin-left:280px;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--bg);z-index:50;justify-content:space-between;align-items:center;height:60px;padding:0 32px;display:flex;position:sticky;top:0}.page-title{color:var(--text2);letter-spacing:.2px;font-size:15px;font-weight:700}.topbar-right{align-items:center;gap:8px;display:flex}.page{flex:1;width:100%;max-width:1200px;padding:28px 32px}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header-title{letter-spacing:-.5px;font-size:22px;font-weight:800}.page-header-actions{flex-wrap:wrap;gap:10px;display:flex}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-title{font-size:15px;font-weight:700}@media (width<=900px){.sidebar{width:64px}.sidebar .logo-text,.sidebar .nav-item span:not(.nav-icon),.sidebar .logout-btn span:not(:first-child){display:none}.main{margin-left:64px}.page{padding:20px 16px}}.stat-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;display:grid}.stat-grid-4{grid-template-columns:repeat(4,1fr)}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;transition:border-color .15s;position:relative;overflow:hidden}.stat-card:hover{border-color:var(--border2)}.stat-card:before{content:"";background:radial-gradient(circle, var(--accent-soft) 0%, transparent 70%);border-radius:50%;width:80px;height:80px;position:absolute;top:0;right:0;transform:translate(30%,-30%)}.stat-label{color:var(--text3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;font-size:11px;font-weight:500}.stat-value{color:var(--text);letter-spacing:-.5px;font-size:24px;font-weight:800}.stat-value.accent{color:var(--accent)}.stat-value.green{color:var(--green)}.stat-value.red{color:var(--red)}.stat-sub{color:var(--text3);margin-top:6px;font-size:11px}.account-card{border-radius:var(--radius);color:var(--text-inv);cursor:pointer;background:linear-gradient(135deg,#0e0e1a 0%,#141428 100%);border:1px solid #3b6bff33;padding:22px;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.account-card:hover{border-color:#3b6bff66;transform:translateY(-3px);box-shadow:0 12px 40px #3b6bff33}.account-card.selected{outline:2px solid var(--gold);outline-offset:2px}.account-card:before{content:"";background:radial-gradient(circle,#3b6bff26 0%,#0000 70%);border-radius:50%;width:140px;height:140px;position:absolute;top:-40px;right:-40px}.account-number{font-family:var(--mono);color:var(--text-inv2);letter-spacing:2px;margin-bottom:10px;font-size:11px}.account-balance{letter-spacing:-1px;margin-bottom:2px;font-size:28px;font-weight:800}.account-currency-label{font-family:var(--mono);color:var(--text-inv3);font-size:10px}.account-meta{border-top:1px solid #ffffff14;gap:20px;margin-top:14px;padding-top:14px;display:flex}.account-meta-item label{font-family:var(--mono);color:var(--text-inv3);letter-spacing:1px;text-transform:uppercase;font-size:9px;display:block}.account-meta-item p{margin-top:2px;font-size:12px;font-weight:500}.account-actions{gap:8px;margin-top:14px;display:flex}.acct-btn{border-radius:var(--radius-xs);color:var(--text-inv);font-family:var(--font);cursor:pointer;text-align:center;background:#ffffff0f;border:1px solid #ffffff1a;flex:1;padding:8px 6px;font-size:11px;font-weight:600;transition:background .15s}.acct-btn:hover{background:#ffffff1f}.acct-btn.gold{color:var(--gold);background:#f0b42926;border-color:#f0b42940}.acct-btn.gold:hover{background:#f0b42940}.btn{font-family:var(--font);cursor:pointer;white-space:nowrap;border:none;border-radius:20px;align-items:center;gap:6px;padding:10px 20px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark);box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.btn-gold{background:var(--gold);color:#0f0a00}.btn-gold:hover{background:var(--gold2);transform:translateY(-1px);box-shadow:0 4px 16px #f0b4294d}.btn-ghost{color:var(--text2);border:1px solid var(--border2);background:0 0}.btn-ghost:hover{background:var(--surface2);color:var(--text);border-color:var(--border2)}.btn-sm{padding:7px 14px;font-size:12px}.btn-xs{padding:4px 10px;font-size:11px}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.table-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.table-title{font-size:13px;font-weight:700}.table-link{color:var(--text3);cursor:pointer;font-size:12px;transition:color .15s}.table-link:hover{color:var(--accent)}table{border-collapse:collapse;width:100%}thead{background:var(--surface2)}th{color:var(--text3);text-align:left;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.4px;padding:10px 20px;font-size:11px;font-weight:600}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:14px 20px;font-size:13px}tr:last-child td{border-bottom:none}tbody tr{transition:background .1s}tbody tr:hover td{background:var(--surface2)}.td-icon{align-items:center;gap:10px;display:flex}.tx-logo{background:var(--surface2);border:1px solid var(--border2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;display:flex}.tx-logo.income{background:var(--green-soft);border-color:#34d39933}.tx-logo.expense{background:var(--red-soft);border-color:#f8717133}.badge{border-radius:20px;align-items:center;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge.green{background:var(--green-soft);color:var(--green)}.badge.red{background:var(--red-soft);color:var(--red)}.badge.yellow{background:var(--yellow-soft);color:var(--yellow)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.chip{background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:500;font-family:var(--mono);border-radius:20px;align-items:center;padding:2px 8px;display:inline-flex}.form-group{flex-direction:column;margin-bottom:16px;display:flex}.form-label{color:var(--text2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.form-input,.form-select{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius-sm);width:100%;font-family:var(--font);color:var(--text);outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.form-input::placeholder{color:var(--text3)}.form-select option{background:var(--surface2);color:var(--text)}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-hint{color:var(--text3);margin-top:4px;font-size:11px}.form-input.verified{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.overlay{z-index:200;background:#000000bf;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border2);width:100%;max-width:480px;box-shadow:var(--shadow-lg);border-radius:18px;padding:28px;animation:.22s modalIn;position:relative}.modal-lg{max-width:680px}@keyframes modalIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}.modal-title{color:var(--text);letter-spacing:-.3px;margin-bottom:4px;font-size:18px;font-weight:800}.modal-sub{color:var(--text2);margin-bottom:24px;font-size:13px}.modal-close{background:var(--surface2);border:1px solid var(--border2);cursor:pointer;width:28px;height:28px;color:var(--text2);border-radius:50%;justify-content:center;align-items:center;font-size:13px;transition:all .15s;display:flex;position:absolute;top:18px;right:18px}.modal-close:hover{background:var(--border2);color:var(--text)}.modal-divider{background:var(--border);height:1px;margin:18px 0}.alert{border-radius:var(--radius-sm);align-items:center;gap:8px;margin-bottom:16px;padding:11px 14px;font-size:13px;display:flex}.alert-error{background:var(--red-soft);color:var(--red);border:1px solid #f8717133}.alert-success{background:var(--green-soft);color:var(--green);border:1px solid #34d39933}.alert-info{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-glow)}.toast{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius);color:var(--text);z-index:999;box-shadow:var(--shadow-md);align-items:center;gap:8px;max-width:320px;padding:12px 16px;font-size:13px;animation:.25s toastIn;display:flex;position:fixed;bottom:24px;right:24px}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.upload-zone{border:2px dashed var(--border2);border-radius:var(--radius);text-align:center;cursor:pointer;background:var(--surface2);padding:36px 24px;transition:all .2s}.upload-zone:hover,.upload-zone.drag{border-color:var(--accent);background:var(--accent-soft)}.upload-icon{margin-bottom:10px;font-size:32px}.upload-title{margin-bottom:4px;font-size:14px;font-weight:600}.upload-desc{color:var(--text3);font-size:12px}.payment-link-box{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius-sm);padding:16px}.payment-link-label{font-family:var(--mono);color:var(--text3);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;font-size:10px}.payment-link-url{font-family:var(--mono);color:var(--accent);word-break:break-all;margin-bottom:12px;font-size:12px;line-height:1.6}.payment-link-actions{gap:8px;display:flex}.empty{text-align:center;padding:48px 24px}.empty-icon{opacity:.3;margin-bottom:10px;font-size:36px}.empty-title{color:var(--text2);margin-bottom:4px;font-size:14px;font-weight:600}.empty-desc{color:var(--text3);font-size:12px}.loading-dot{background:currentColor;border-radius:50%;width:5px;height:5px;margin:0 2px;animation:1s infinite ldot;display:inline-block}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes ldot{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.mono{font-family:var(--mono)}.divider{background:var(--border);height:1px;margin:16px 0}.two-col{grid-template-columns:1fr 1fr;gap:24px;display:grid}.recipient-pill{background:var(--green-soft);border-radius:var(--radius-sm);border:1px solid #34d39940;align-items:center;gap:10px;margin-top:8px;padding:10px 14px;animation:.2s fadeSlideIn;display:flex}.recipient-pill-avatar{background:var(--green-soft);width:30px;height:30px;color:var(--green);border:1px solid #34d3994d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.recipient-pill-name{color:var(--green);font-size:13px;font-weight:600}.recipient-pill-role{color:#34d399b3;margin-top:1px;font-size:11px}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.auth-screen{background:var(--bg);width:100%;min-height:100vh;display:flex}.auth-left{flex-direction:column;flex:1;justify-content:center;max-width:650px;padding:60px;display:flex}.auth-right{background:var(--surface);border-left:1px solid var(--border);flex:1;justify-content:center;align-items:center;padding:40px;display:flex;position:relative;overflow:hidden}.auth-right:before{content:"";background:radial-gradient(80% 80%,#3b6bff14 0%,#0000 70%);position:absolute;inset:0}.auth-brand{letter-spacing:-1.5px;color:var(--text);align-items:center;gap:10px;margin-bottom:6px;font-size:32px;font-weight:800;display:flex}.auth-brand-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;display:inline-block}.auth-tagline{color:var(--text2);margin-bottom:36px;font-size:14px;line-height:1.6}.auth-tabs{background:var(--surface2);border:1px solid var(--border);border-radius:22px;gap:4px;margin-bottom:24px;padding:4px;display:flex}.auth-tab{text-align:center;cursor:pointer;color:var(--text2);font-size:13px;font-weight:600;font-family:var(--font);background:0 0;border:none;border-radius:18px;flex:1;padding:8px 12px;transition:all .15s}.auth-tab.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px var(--accent-glow)}.auth-feature{align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.auth-feature-icon{background:var(--accent-soft);border:1px solid var(--accent-glow);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:17px;display:flex}.auth-feature-title{color:var(--text);margin-bottom:2px;font-size:13px;font-weight:600}.auth-feature-desc{color:var(--text2);font-size:12px;line-height:1.5}@media (width<=768px){.auth-right{display:none}.auth-left{max-width:100%;padding:40px 24px}}
