@import "https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700;800;900&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base:#f0f2f5;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#fafbfc;--border:#e8eaed;--border-hover:#d1d5db;--accent:#0f172a;--accent-glow:#0f172a14;--accent-light:#334155;--accent-primary:#22c55e;--accent-primary-dim:#22c55e1f;--blue:#6366f1;--blue-dim:#6366f11a;--green:#22c55e;--green-glow:#22c55e1f;--red:#f43f5e;--red-glow:#f43f5e1a;--amber:#f59e0b;--teal:#14b8a6;--text-primary:#0f172a;--text-secondary:#64748b;--text-muted:#94a3b8;--sidebar-bg:#141417;--sidebar-hover:#ffffff12;--sidebar-active:#22c55e26;--sidebar-text:#8f9099;--sidebar-text-h:#fff;--sidebar-width:228px;--sidebar-collapsed:58px;--radius-sm:6px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 16px #00000014, 0 1px 3px #0000000a;--shadow-card:0 1px 3px #0f172a0d, 0 4px 16px #0f172a0f;--shadow-card-hover:0 2px 8px #0f172a0f, 0 12px 32px #0f172a1a;--shadow-panel:0 8px 40px #0f172a24, 0 2px 8px #0f172a0f}html{font-size:14px}body{background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;letter-spacing:-.012em;min-height:100vh;font-family:Geist,Inter,system-ui,sans-serif}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.app-container{background-color:var(--bg-base);min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);width:var(--sidebar-width);height:100vh;color:var(--sidebar-text);border-right:1px solid #ffffff0d;flex-direction:column;flex-shrink:0;padding:0;transition:width .25s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-link{color:var(--sidebar-text);cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;margin:1px 8px;padding:7px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:all .13s;display:flex}.sidebar-link:hover{background:var(--sidebar-hover);color:var(--sidebar-text-h)}.sidebar-link.active{background:var(--sidebar-active);color:#22c55e;font-weight:600}.sidebar-link-icon-right{color:#4b5563;font-size:12px}.sidebar-link:hover .sidebar-link-icon-right{color:#9ca3af}.main-wrapper{flex-direction:column;flex:1;min-width:0;display:flex}.topnav{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:50;background:#ffffffe0;justify-content:space-between;align-items:center;height:52px;padding:0 20px;display:flex;position:sticky;top:0}.search-bar-modern{background:0 0;border-bottom:1px solid #0000;align-items:center;width:250px;display:inline-flex}.nav-tabs{display:none}.nav-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:12px 0;font-size:14px;font-weight:500;transition:color .15s}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{color:var(--text-primary);border-bottom-color:var(--green);font-weight:600}.nav-actions{align-items:center;gap:4px;display:flex}.icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,color .15s;display:flex;position:relative}.icon-btn:hover,.icon-btn--active{background:var(--bg-base);color:var(--text-primary)}.main-content{flex:1;min-width:0;padding:24px 28px}.page-greeting{margin-bottom:24px}.page-greeting-title{color:var(--text-primary);letter-spacing:-.03em;font-size:22px;font-weight:800}.page-greeting-sub{color:var(--text-secondary);margin-top:3px;font-size:13px}.customize-bar{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-bottom:20px;font-size:13px;display:flex}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(260px,auto);gap:20px;display:grid}.db-card{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:none;flex-direction:column;padding:20px 24px;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.db-card:before{content:"";border-radius:var(--radius-md);pointer-events:none;border:1px solid #fffc;position:absolute;inset:0}.db-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.db-card-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.db-card-title{color:var(--text-secondary);letter-spacing:-.01em;align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.db-card-title-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.db-card-dropdown{color:var(--text-muted);cursor:pointer;background:var(--bg-base);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;transition:background .13s;display:flex}.db-card-dropdown:hover{background:var(--border)}.db-card-value{color:var(--text-primary);letter-spacing:-.04em;margin-bottom:4px;font-size:28px;font-weight:800}.db-card-subtext{color:var(--text-secondary);align-items:center;gap:4px;font-size:13px;display:flex}.trend-chip{letter-spacing:0;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.trend-chip.up{background:var(--green-glow);color:#16a34a}.trend-chip.down{background:var(--red-glow);color:#e11d48}.trend-up{color:var(--green);font-weight:600}.trend-down{color:var(--red);font-weight:600}.stat-badge{background:var(--bg-base);color:var(--text-secondary);border-radius:20px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.link-action{color:var(--blue);align-items:center;gap:4px;margin-top:auto;padding-top:16px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.link-action:hover{text-decoration:underline}.bank-list-item{border-bottom:1px solid var(--border);justify-content:space-between;padding:12px 0;display:flex}.bank-list-item:last-child{border-bottom:none}.bank-list-name{color:var(--text-primary);font-size:13px;font-weight:600}.bank-list-sub{color:var(--text-muted);margin-top:2px;font-size:11px}.bank-list-amt{color:var(--text-primary);text-align:right;font-size:13px;font-weight:600}.bank-list-badge{color:var(--green);justify-content:flex-end;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.badge{display:none}.topnav-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);z-index:200;padding:16px;animation:.15s panel-in;position:absolute;top:calc(100% + 10px);right:0}@keyframes panel-in{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.panel-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:700}.panel-row{border-radius:4px;justify-content:space-between;align-items:center;padding:9px 0;text-decoration:none;transition:opacity .1s;display:flex}.panel-row:hover>*{opacity:.75}.currency-pill-group{background:var(--bg-base);border-radius:8px;align-items:center;gap:2px;padding:3px;display:flex}.currency-pill{color:var(--text-muted);cursor:pointer;letter-spacing:.02em;background:0 0;border:none;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:700;transition:all .13s}.currency-pill:hover{color:var(--text-primary);background:#fff}.currency-pill.active{color:var(--blue);background:#fff;box-shadow:0 1px 4px #0000001a}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.4)}}.notif-dot{background:var(--red);border:2px solid #fff;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;position:absolute;top:7px;right:7px}body.privacy-mode .db-card-value,body.privacy-mode .table-amount,body.privacy-mode .stat-value,body.privacy-mode .money,body.privacy-mode .balance,body.privacy-mode .bank-list-amt,body.privacy-mode .privacy-blur,body.privacy-mode td[style*="text-align: right"],body.privacy-mode th[style*="text-align: right"],body.privacy-mode div[style*="font-size: 22px"],body.privacy-mode div[style*="font-size: 24px"],body.privacy-mode div[style*="font-size: 28px"],body.privacy-mode div[style*="font-size: 32px"]{filter:blur(6px);-webkit-user-select:none;user-select:none;opacity:.5;transition:filter .3s cubic-bezier(.4,0,.2,1),opacity .3s}.animate-fade-in{animation:.3s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media print{.print-only,.print-letterhead{display:flex!important}.no-print,nav,header{display:none!important}body,.app-container,.main-wrapper,.main-content{background:#fff!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important}}@media screen{.print-only,.print-letterhead{display:none!important}}
