*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base:#f1f5f9;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#f8fafc;--border:#e2e8f0;--border-hover:#cbd5e1;--accent:#0f172a;--accent-glow:#0f172a14;--accent-light:#334155;--green:#16a34a;--green-glow:#16a34a1a;--red:#ef4444;--red-glow:#fee2e2;--amber:#f59e0b;--teal:#0284c7;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--sidebar-bg:#18181b;--sidebar-hover:#27272a;--sidebar-text:#a1a1aa;--sidebar-text-h:#fff;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:24px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000012, 0 1px 3px #0000000a;--shadow-card:0 1px 3px #0f172a0f, 0 1px 2px #0f172a0a}html{font-size:14px}body{background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;letter-spacing:-.01em;min-height:100vh;font-family:Inter,system-ui,sans-serif}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.app-container{background-color:var(--bg-base);min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);width:220px;height:100vh;color:var(--sidebar-text);flex-direction:column;flex-shrink:0;padding:16px 0;transition:width .25s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar.collapsed{width:56px}.sidebar.collapsed .sidebar-logo-container{justify-content:center;padding:0 14px 20px}.sidebar.collapsed .sidebar-text-label,.sidebar.collapsed .sidebar-menu-header,.sidebar.collapsed .sidebar-create-btn-text{display:none}.sidebar.collapsed .sidebar-create-btn{justify-content:center;margin:0 8px 16px;padding:6px}.sidebar.collapsed .sidebar-link{justify-content:center;padding:8px 0}.sidebar.collapsed .sidebar-link span,.sidebar.collapsed .sidebar-link-icon-right,.sidebar.collapsed .sidebar-sub-section,.sidebar.collapsed .sidebar-footer{display:none}.sidebar-logo-container{align-items:center;gap:8px;padding:0 16px 20px;display:flex}.qb-logo-circle{background:var(--green);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.sidebar-create-btn{color:#fff;cursor:pointer;box-sizing:border-box;background:0 0;border:1px solid #fff6;border-radius:24px;justify-content:center;align-items:center;gap:8px;width:calc(100% - 24px);margin:0 12px 16px;padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.sidebar-create-btn:hover{background:#ffffff1a;border-color:#fff}.sidebar-menu-header{justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 16px;display:flex}.sidebar-menu-label{color:#9ca3af;letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:700}.sidebar-link{color:var(--sidebar-text);cursor:pointer;border-left:4px solid #0000;justify-content:space-between;align-items:center;padding:6px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-link:hover{background:var(--sidebar-hover);color:var(--sidebar-text-h)}.sidebar-link.active{background:var(--sidebar-hover);color:#fff;border-left-color:var(--green);font-weight:600}.sidebar-link-icon-right{color:#6b7280;font-size:12px}.sidebar-link:hover .sidebar-link-icon-right{color:#fff}.sidebar-collapse-btn{background:var(--sidebar-hover);color:#9ca3af;cursor:pointer;z-index:10;border:2px solid #3f4248;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex;position:absolute;top:24px;right:-12px}.sidebar-collapse-btn:hover{background:var(--green);border-color:var(--green);color:#fff}.main-wrapper{flex-direction:column;flex:1;display:flex}.topnav{background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:50;justify-content:space-between;align-items:center;height:48px;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:16px;display:flex}.icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;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:20px 24px}.customize-bar{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-bottom:14px;font-size:13px;display:flex}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(260px,auto);gap:16px;display:grid}.db-card{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:10px;flex-direction:column;padding:16px 20px;transition:box-shadow .15s;display:flex}.db-card:hover{box-shadow:0 4px 16px #0f172a14,0 1px 3px #0f172a0a}.db-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.db-card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.db-card-dropdown{color:var(--text-secondary);cursor:pointer;align-items:center;gap:4px;font-size:12px;display:flex}.db-card-value{color:var(--text-primary);margin-bottom:4px;font-size:24px;font-weight:700}.db-card-subtext{color:var(--text-secondary);align-items:center;gap:4px;font-size:13px;display:flex}.trend-up{color:var(--green);font-weight:600}.trend-down{color:var(--red);font-weight:600}.link-action{color:#0ea5e9;margin-top:auto;padding-top:16px;font-size:12px;font-weight:500;text-decoration:none}.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:12px;font-weight:600}.bank-list-sub{color:var(--text-muted);margin-top:2px;font-size:10px}.bank-list-amt{color:var(--text-primary);text-align:right;font-size:12px}.bank-list-badge{color:var(--green);justify-content:flex-end;align-items:center;gap:4px;font-size:11px;font-weight:500;display:flex}.badge{display:none}.topnav-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);z-index:200;padding:16px;animation:.15s panel-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 32px #0f172a1f,0 2px 8px #0f172a0f}@keyframes panel-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.panel-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;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:background .1s;display:flex}.panel-row:hover>*{opacity:.8}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:.25s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}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}}
