@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.20%;descent-override:22.48%;line-gap-override:0.00%;size-adjust:107.40%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3;font-style:normal}.__variable_f367f3{--font-inter:"__Inter_f367f3","__Inter_Fallback_f367f3"}@font-face{font-family:__Outfit_ed3508;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Outfit_ed3508;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Outfit_Fallback_ed3508;src:local("Arial");ascent-override:100.55%;descent-override:26.14%;line-gap-override:0.00%;size-adjust:99.45%}.__className_ed3508{font-family:__Outfit_ed3508,__Outfit_Fallback_ed3508;font-style:normal}.__variable_ed3508{--font-outfit:"__Outfit_ed3508","__Outfit_Fallback_ed3508"}:root{--accent:221,83%,53%;--accent-hover:221,83%,46%;--accent-green:152,68%,36%;--accent-red:4,74%,54%;--accent-amber:38,92%,50%;--bg-app:220,16%,96%;--bg-surface:0,0%,100%;--bg-surface-2:220,14%,98%;--border:220,13%,90%;--border-strong:220,13%,82%;--text-primary:222,47%,11%;--text-secondary:220,14%,40%;--text-muted:220,9%,60%;--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 12px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04);--shadow-lg:0 12px 32px rgba(0,0,0,.12),0 4px 8px rgba(0,0,0,.06);--r-sm:6px;--r-md:10px;--r-lg:14px;--r-full:999px;--header-h:60px}*{margin:0;padding:0;box-sizing:border-box}body,html{overflow-x:hidden;position:relative;width:100%;background:hsl(var(--bg-app))}body{color:hsl(var(--text-primary));font-family:var(--font-inter),"Inter",-apple-system,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-outfit),"Outfit",sans-serif;font-weight:700;letter-spacing:-.02em}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--border-strong));border-radius:99px}.top-bar{height:var(--header-h);background:hsl(var(--bg-surface));border-bottom:1px solid hsl(var(--border));justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:200;box-shadow:var(--shadow-sm)}.brand,.top-bar{display:flex;align-items:center}.brand{gap:10px;flex-shrink:1;min-width:0}.brand-text{display:flex;flex-direction:column;justify-content:center;min-width:0}.brand-text h1{font-size:1.15rem;color:hsl(var(--text-primary));line-height:1.1;margin-bottom:1px;white-space:nowrap}.brand-tagline{margin:0;font-size:.65rem;font-weight:600;color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.05em;line-height:1}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.user-pill{font-size:.75rem;font-weight:500;color:hsl(var(--text-secondary));background:hsl(var(--bg-app));border:1px solid hsl(var(--border));padding:4px 10px;border-radius:var(--r-full)}.btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;font-size:.8125rem;font-weight:600;cursor:pointer;border-radius:var(--r-sm);border:none;transition:all .15s ease;white-space:nowrap;text-decoration:none;font-family:inherit}.btn-primary{background:hsl(var(--accent));color:#fff;box-shadow:0 1px 3px hsla(var(--accent),.35)}.btn-primary:hover{background:hsl(var(--accent-hover));box-shadow:0 3px 8px hsla(var(--accent),.4);transform:translateY(-1px)}.btn-ghost{background:hsl(var(--bg-surface));color:hsl(var(--text-secondary));border:1px solid hsl(var(--border))}.btn-ghost:hover{background:hsl(var(--bg-app));color:hsl(var(--text-primary));border-color:hsl(var(--border-strong))}.btn-danger{background:hsl(var(--accent-red));color:#fff}.btn-sm{padding:4px 10px;font-size:.75rem}.dashboard{max-width:1320px;margin:0 auto;padding:24px}.stats-bar{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:20px}@media (max-width:900px){.stats-bar{grid-template-columns:repeat(2,1fr)}}.stat-card{background:hsl(var(--bg-surface));border:1px solid hsl(var(--border));border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.stat-card:hover{box-shadow:var(--shadow-md)}.stat-card-label{font-size:.7rem;font-weight:700;color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.stat-card-value{font-size:1.6rem;font-weight:700;font-family:var(--font-outfit),"Outfit",sans-serif;line-height:1;margin-bottom:6px}.stat-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:99px}.badge-green{background:rgba(29,154,96,.1);color:hsl(var(--accent-green))}.badge-red{background:rgba(225,62,51,.1);color:hsl(var(--accent-red))}.badge-blue{background:rgba(36,99,235,.1);color:hsl(var(--accent))}.badge-gray{background:hsl(var(--bg-app));color:hsl(var(--text-secondary))}.panel{background:hsl(var(--bg-surface));border:1px solid hsl(var(--border));border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:18px}.panel>:last-child{border-radius:0 0 var(--r-lg) var(--r-lg)}.panel-header{justify-content:space-between;padding:14px 20px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--bg-surface-2))}.panel-header,.panel-title{display:flex;align-items:center}.panel-title{font-size:.875rem;font-weight:700;color:hsl(var(--text-primary));gap:8px}.panel-body{padding:16px 20px}.time-gate-bar{display:flex;gap:4px}.time-gate-btn{padding:4px 12px;font-size:.75rem;font-weight:700;border:1px solid hsl(var(--border));border-radius:var(--r-full);background:transparent;color:hsl(var(--text-secondary));cursor:pointer;transition:all .15s;font-family:inherit}.time-gate-btn.active{background:hsl(var(--accent));color:#fff;border-color:hsl(var(--accent))}.time-gate-btn:hover:not(.active){background:hsl(var(--bg-app));color:hsl(var(--text-primary))}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px}.cat-stat-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-md);border:1px solid hsl(var(--border));background:hsl(var(--bg-surface));transition:box-shadow .15s}.cat-stat-card:hover{box-shadow:var(--shadow-md)}.cat-stat-emoji{font-size:1.4rem;flex-shrink:0}.cat-stat-info{flex:1 1;min-width:0}.cat-stat-name{font-size:.78rem;font-weight:700;color:hsl(var(--text-primary))}.cat-stat-amount{font-size:1rem;font-weight:700;font-family:var(--font-outfit),"Outfit",sans-serif}.cat-stat-count{font-size:.7rem;color:hsl(var(--text-muted))}.ledger-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px}.ledger-toolbar-left,.ledger-toolbar-right,.search-box{display:flex;align-items:center;gap:8px}.search-box{background:hsl(var(--bg-surface));border:1px solid hsl(var(--border));padding:7px 12px;border-radius:var(--r-md);width:220px;transition:border-color .15s}.search-box:focus-within{border-color:hsl(var(--accent));box-shadow:0 0 0 3px hsla(var(--accent),.12)}.search-box input{background:none;border:none;outline:none;font:inherit;width:100%;font-size:.85rem}.toggle-pill{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.78rem;font-weight:600;color:hsl(var(--text-secondary));-webkit-user-select:none;-moz-user-select:none;user-select:none}.pill-switch{width:30px;height:17px;background:hsl(var(--border-strong));border-radius:99px;position:relative;transition:.2s;flex-shrink:0}.pill-switch:after{content:"";position:absolute;width:13px;height:13px;left:2px;top:2px;background:#fff;border-radius:50%;transition:.2s}.toggle-pill input:checked+.pill-switch{background:hsl(var(--accent))}.toggle-pill input:checked+.pill-switch:after{transform:translateX(13px)}.toggle-pill input{display:none}.ledger-table{width:100%;border-collapse:collapse;table-layout:fixed}.ledger-table thead th{background:#f6f7f9;padding:10px 14px;font-size:.7rem;font-weight:800;color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid hsl(var(--border));white-space:nowrap}.ledger-table tbody td{padding:9px 14px;border-bottom:1px solid hsl(var(--border));font-size:.855rem;vertical-align:middle}.ledger-table tbody tr:last-child td{border-bottom:none}.ledger-table tbody tr:hover td{background:#fcfcfd}.col-drag{width:36px;text-align:center;color:hsl(var(--text-muted));cursor:-webkit-grab;cursor:grab;font-size:1rem}.col-date{width:140px;font-weight:500;color:hsl(var(--text-secondary))}.col-cat{width:155px}.col-desc{min-width:0}.col-change{width:130px;text-align:right;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.col-balance{width:150px;text-align:right;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-left:1px solid hsl(var(--border));background:#fcfcfd}.col-actions{width:90px;text-align:center;vertical-align:middle}.amount-pos{color:hsl(var(--accent-green))}.amount-neg{color:hsl(var(--accent-red))}tr.is-forecast .col-balance,tr.is-forecast td{color:hsl(var(--text-muted))}tr.editing td{background:rgba(36,99,235,.04)!important}tr.selected td{background:hsla(var(--accent),.08)!important;border-bottom-color:hsla(var(--accent),.2)}tr.selected:hover td{background:hsla(var(--accent),.12)!important}tr.negative-balance td{background:hsla(var(--accent-red),.08)!important;border-bottom-color:hsla(var(--accent-red),.2)}tr.reconciled td{background:hsla(var(--accent),.08)!important;border-bottom-color:hsla(var(--accent),.2)}.col-sel{width:44px;text-align:center}.sel-check{width:16px;height:16px;cursor:pointer;accent-color:hsl(var(--accent))}tr.dragging{opacity:.3}tr.drop-indicator-before td:first-child{box-shadow:inset 0 3px 0 0 hsl(var(--accent))}tr.drop-indicator-after td:first-child{box-shadow:inset 0 -3px 0 0 hsl(var(--accent))}tr.is-beginning-balance td{background:#fffcf0!important;border-bottom:2px dashed #faeaa8}tr.is-beginning-balance:hover td{background:#fffae6!important}.label-beginning{display:inline-block;font-size:.62rem;font-weight:800;color:#a16c12;background:#fff0c2;padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;margin-right:6px}.recur-badge{display:inline-flex;align-items:center;gap:3px;font-size:.65rem;font-weight:700;color:hsl(var(--accent));background:rgba(36,99,235,.1);padding:2px 7px;border-radius:99px}.inline-edit-input{width:100%;padding:4px 6px;border:1.5px solid hsl(var(--accent));border-radius:var(--r-sm);font:inherit;background:#fff;outline:none;box-shadow:0 0 0 3px hsla(var(--accent),.12)}.cat-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:.75rem;font-weight:600;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default;border:1px solid transparent;transition:filter .12s}.cat-tag[data-clickable]:hover{filter:brightness(.95);cursor:pointer}.cat-picker-popover{position:fixed;width:340px;padding:15px;background:#fff;border:1px solid hsl(var(--border));border-radius:var(--r-lg);box-shadow:0 15px 40px rgba(0,0,0,.15);z-index:20000;visibility:hidden;opacity:0;transform:translateY(10px);transition:all .2s cubic-bezier(.16,1,.3,1)}.cat-picker-popover.active{visibility:visible;opacity:1;transform:translateY(0);z-index:20000}.picker-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;max-height:260px;overflow-y:auto;margin-bottom:8px}.picker-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--r-sm);cursor:pointer;font-size:.8rem;font-weight:600;border:1px solid transparent;transition:all .12s}.picker-item:hover{filter:brightness(.93)}.picker-divider{height:1px;background:hsl(var(--border));margin:4px 0}.picker-add{display:flex;gap:4px;padding:2px}.picker-add input{flex:1 1;padding:6px 8px;border:1px solid hsl(var(--border));border-radius:var(--r-sm);font:inherit;font-size:.78rem;outline:none}.picker-add input:focus{border-color:hsl(var(--accent))}.modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:#fff;width:100%;max-width:480px;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}.modal-header{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid hsl(var(--border));background:hsl(var(--bg-surface-2))}.modal-header h3{font-size:1rem}.modal-close{background:none;border:none;cursor:pointer;font-size:1.25rem;color:hsl(var(--text-muted));line-height:1;padding:2px 6px;border-radius:var(--r-sm)}.modal-close:hover{background:hsl(var(--bg-app));color:hsl(var(--text-primary))}.tx-form{padding:20px;gap:14px}.form-field,.tx-form{display:flex;flex-direction:column}.form-field{gap:5px}.form-field label{font-size:.7rem;font-weight:700;color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.5px}.form-field input,.form-field select{padding:8px 10px;border:1px solid hsl(var(--border));border-radius:var(--r-sm);font:inherit;font-size:.875rem;outline:none;background:hsl(var(--bg-surface));transition:border-color .15s}.form-field input:focus,.form-field select:focus{border-color:hsl(var(--accent));box-shadow:0 0 0 3px hsla(var(--accent),.12)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.seg{display:flex;background:hsl(var(--bg-app));padding:3px;border-radius:var(--r-md);border:1px solid hsl(var(--border))}.seg-item{flex:1 1;text-align:center;cursor:pointer;position:relative}.seg-item input{position:absolute;opacity:0;width:0;height:0}.seg-item span{display:block;padding:7px 10px;font-size:.775rem;font-weight:700;border-radius:7px;color:hsl(var(--text-muted));transition:all .15s}.seg-item input:checked+span{background:#fff;box-shadow:var(--shadow-sm)}.seg-item input[value=expense]:checked+span{color:hsl(var(--accent-red))}.seg-item input[value=income]:checked+span{color:hsl(var(--accent-green))}.seg-item:hover span{color:hsl(var(--text-primary))}.recur-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.82rem;font-weight:600;color:hsl(var(--text-secondary));-webkit-user-select:none;-moz-user-select:none;user-select:none}.recur-toggle input{position:absolute;opacity:0;pointer-events:none}.recur-knob{width:32px;height:18px;background:hsl(var(--border-strong));border-radius:99px;position:relative;transition:.2s;flex-shrink:0}.recur-knob:after{content:"";position:absolute;width:14px;height:14px;left:2px;top:2px;background:#fff;border-radius:50%;transition:.2s}.recur-toggle input:checked+.recur-knob{background:hsl(var(--accent))}.recur-toggle input:checked+.recur-knob:after{transform:translateX(14px)}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid hsl(var(--border));background:hsl(var(--bg-surface-2))}.empty-state{text-align:center;padding:60px 20px;color:hsl(var(--text-muted))}.empty-state-icon{font-size:2.5rem;margin-bottom:12px}.empty-state h3{font-size:1.1rem;color:hsl(var(--text-secondary));margin-bottom:8px}.empty-state p,.toast{font-size:.875rem}.toast{position:fixed;bottom:24px;right:24px;z-index:9999;background:hsl(var(--text-primary));color:#fff;padding:12px 20px;border-radius:var(--r-md);font-weight:600;box-shadow:var(--shadow-lg);animation:toastIn .25s ease-out}@keyframes toastIn{0%{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}.drag-tooltip{position:fixed;pointer-events:none;z-index:10000;background:hsl(var(--text-primary));color:#fff;padding:6px 14px;border-radius:var(--r-md);font-size:.8rem;font-weight:700;white-space:nowrap;box-shadow:var(--shadow-lg);display:none;border:1.5px solid hsl(var(--accent))}.table-scroll-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:0 0 var(--r-lg) var(--r-lg)}@media (max-width:768px){:root{--header-h:54px}body,html{overflow-x:hidden;width:100%;position:relative}.top-bar{padding:0 8px;gap:4px;border-radius:0;width:100%;box-sizing:border-box}.brand{gap:6px;min-width:0;flex:1 1}.brand-text h1{font-size:1.05rem}.brand-tagline{display:none!important}.header-actions{gap:4px;flex-shrink:0}.user-pill{display:none!important}.header-actions .btn{padding:5px 8px;font-size:.7rem}.dashboard{padding:12px 8px;width:100%;box-sizing:border-box;overflow:hidden}.stats-bar{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.stat-card{padding:10px;border-radius:var(--r-md)}.stat-card-value{font-size:1.15rem}.stat-card-label{font-size:.58rem}.panel-header{flex-direction:column;align-items:stretch;gap:12px;padding:14px 12px}.panel-header>div{width:100%;display:flex;flex-direction:column;gap:8px}.time-gate-bar{justify-content:space-between;width:100%}.panel-title{font-size:.8rem}.panel>.table-scroll-wrap{margin:0;padding:0;overflow-x:visible}.ledger-table{min-width:0!important;width:100%!important;border-collapse:separate;table-layout:auto}.ledger-table thead{display:none}.ledger-table,.ledger-table tbody,.ledger-table tr{display:block;width:100%}.ledger-table tr{display:grid;grid-template-areas:"sel date amt" "sel desc amt" "sel cat bal";grid-template-columns:44px 1fr auto;padding:12px 14px;border-bottom:1px solid hsl(var(--border));background:#fff;align-items:center;grid-gap:2px 12px;gap:2px 12px;min-height:72px}.ledger-table tr:last-child{border-bottom:none}.ledger-table td{display:block!important;border:none!important;padding:0!important;background:none!important;width:auto!important}.col-sel{grid-area:sel;display:flex!important;align-items:center;justify-self:center}.col-date{grid-area:date;font-size:.65rem!important;font-weight:700;color:hsl(var(--text-muted));text-transform:uppercase;margin-bottom:-2px}.col-desc{grid-area:desc;font-size:.9rem!important;font-weight:600;line-height:1.2!important;margin:2px 0}.col-cat{grid-area:cat;margin-top:2px}.col-change{grid-area:amt;text-align:right;font-size:1.1rem!important;display:flex!important;flex-direction:column;justify-content:flex-start;align-items:flex-end}.col-balance{grid-area:bal;text-align:right;font-size:.75rem!important;font-weight:600;color:hsl(var(--text-muted));margin-top:2px}.col-actions,.col-drag{display:none!important}tr.is-beginning-balance{grid-template-areas:"icon date dash" "icon label bal";grid-template-columns:44px 1fr auto}tr.is-beginning-balance .col-sel{display:none!important}tr.is-beginning-balance .col-drag{grid-area:icon;display:flex!important;font-size:1.2rem;color:#d97706}tr.is-beginning-balance .col-drag:after{content:"🏦"}tr.is-beginning-balance .col-drag svg{display:none}tr.is-beginning-balance .col-desc{grid-area:label;font-size:.75rem;font-weight:800}tr.is-beginning-balance .col-balance{grid-area:bal;font-size:1.1rem!important;color:hsl(var(--text-primary))!important;font-weight:700}.ledger-toolbar{padding:12px;gap:14px;background:transparent;border:none;box-shadow:none}.ledger-toolbar-left{grid-template-columns:1fr;gap:10px}.search-box{width:100%;height:42px}.ledger-toolbar-right .btn{height:44px}.modal-overlay{align-items:stretch;padding:0;background:#fff;z-index:10000}.modal{position:fixed;inset:0;max-width:100%!important;height:100%!important;max-height:100vh!important;border-radius:0!important;animation:modalPageIn .35s cubic-bezier(.16,1,.3,1)!important}@keyframes modalPageIn{0%{transform:translateX(30%);opacity:0}to{transform:none;opacity:1}}.modal-header{padding:12px 16px;min-height:56px;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;justify-items:center;background:#fff;border-bottom:1.5px solid hsl(var(--border))}.modal-header h3{font-size:1rem;font-weight:700;grid-column:2}.modal-close{grid-column:1;grid-row:1;font-size:1.5rem;width:32px;height:32px;display:grid;place-items:center}.modal-close:before{content:"←"}.modal-close{color:hsl(var(--accent))}.tx-form{padding:20px 16px;gap:20px}.form-field label{font-size:.65rem}.form-row{grid-template-columns:1fr;gap:16px}.modal-footer{position:-webkit-sticky;position:sticky;bottom:0;box-shadow:0 -4px 12px rgba(0,0,0,.05)}.cat-picker-popover{left:16px!important;right:16px!important}}@media (max-width:420px){.stats-bar{grid-template-columns:1fr;gap:10px}}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.top-bar{padding:12px 16px}.brand-text h1{font-size:1.1rem}.header-actions{gap:8px}.user-pill{display:none}}@media (min-width:769px){.mobile-only{display:none!important}}.mobile-fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:#2463eb;color:#fff;border:none;font-size:28px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.3);z-index:50;cursor:pointer}.mobile-tx-list{display:flex;flex-direction:column;gap:12px;padding:16px 16px 90px}.mobile-tx-card{background:#fff;border:1px solid hsl(var(--border));border-radius:12px;padding:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer}.mobile-tx-card.negative-balance{background:hsla(var(--accent-red),.08)!important;border-color:hsla(var(--accent-red),.2)!important}.mobile-tx-card.reconciled{background:hsla(var(--accent),.08)!important;border-color:hsla(var(--accent),.2)!important}.mobile-tx-left{display:flex;align-items:center;gap:12px;flex:1 1;min-width:0}.mobile-tx-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.mobile-tx-details{display:flex;flex-direction:column;gap:4px;min-width:0}.mobile-tx-desc{font-weight:600;font-size:.95rem;color:hsl(var(--text-primary));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-tx-meta{font-size:.8rem;color:hsl(var(--text-secondary));display:flex;gap:8px;align-items:center}.mobile-tx-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.mobile-tx-amount{font-weight:700;font-size:1rem}.mobile-tx-balance{font-size:.75rem;color:hsl(var(--text-tertiary))}.landing-page{min-height:100vh;display:flex;flex-direction:row;background-color:#fff;color:#0f172a;overflow:auto}.landing-content{padding:80px 60px;background:#fff;border-right:1px solid #e2e8f0}.landing-auth,.landing-content{flex:1 1;display:flex;flex-direction:column;justify-content:center;position:relative}.landing-auth{padding:80px 40px;align-items:center;background:linear-gradient(145deg,#0d1321,#151a2e 60%,#131525)}.landing-grid{position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,hsla(0,0%,100%,.05) 1px,transparent 0);background-size:32px 32px;pointer-events:none}.landing-h1{font-size:3.5rem;font-weight:900;letter-spacing:-.03em;line-height:1.1;margin-bottom:24px}.landing-p{font-size:1.15rem;color:hsla(0,0%,100%,.7);line-height:1.6;margin-bottom:48px;max-width:540px}.value-props{display:flex;flex-direction:column;gap:28px}.value-prop{display:flex;align-items:flex-start;gap:16px;max-width:480px}.vp-icon{padding:10px;border-radius:12px;margin-top:2px;display:flex;justify-content:center;align-items:center}.vp-blue{background:rgba(36,99,235,.15);color:#447aee}.vp-green{background:rgba(29,154,96,.15);color:#29d685}.vp-yellow{background:rgba(242,185,13,.15);color:#f5c73d}.vp-title{font-size:1.1rem;font-weight:600;margin-bottom:6px}.vp-desc{font-size:.95rem;color:hsla(0,0%,100%,.5);line-height:1.5}@media (max-width:900px){.landing-page{flex-direction:column}.landing-content{border-right:none;border-bottom:1px solid hsla(0,0%,100%,.1)}.landing-auth,.landing-content{padding:40px 24px}.landing-h1{font-size:2.2rem}}