:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4ff;--surface:#fff;--surface-tint:#efeaff;--text:#221a3d;--text-2:#5f5680;--border:#221a3d1a;--violet-100:#f3efff;--violet-200:#e5dcff;--violet-300:#cfc0fb;--violet-400:#a78bfa;--violet-500:#8b5cf6;--violet-600:#7c3aed;--violet-700:#6d28d9;--violet-800:#5b21b6;--violet-900:#4c1d95;--accent:var(--violet-600);--accent-strong:var(--violet-700);--accent-soft:var(--violet-100);--gradient:linear-gradient(135deg, #8b5cf6, #6d28d9);--ink:#2b2145;--secondary-edge:var(--violet-200);--good:#15803d;--good-soft:#dcfce7;--warn:#b45309;--warn-soft:#fef3c7;--bad:#dc2626;--bad-soft:#fee2e2;--cat-1:#7c3aed;--cat-2:#0d9488;--cat-3:#e8590c;--cat-4:#0284c7;--cat-5:#a16207;--cat-6:#db2777;--cat-other:#a89fc8;--cat-pace:#9b93b8;--shadow-card:0 10px 30px #4c1d9514, 0 2px 6px #4c1d950d;--shadow-card-hover:0 14px 36px #4c1d9521, 0 3px 8px #4c1d9514;--shadow-press:0 4px 0 var(--ink);--shadow-press-down:0 1px 0 var(--ink);--r-sm:10px;--r-md:16px;--r-lg:22px;--r-xl:28px;--font:var(--font-nunito), "Nunito", ui-rounded, "SF Pro Rounded", system-ui, -apple-system, sans-serif;--sidebar-w:248px;--content-max:1120px;--focus-ring:0 0 0 2px var(--bg), 0 0 0 4px var(--accent)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#120d24;--surface:#191331;--surface-tint:#221a3d;--text:#f1edff;--text-2:#a89fc8;--border:#f1edff1f;--accent:var(--violet-500);--accent-strong:var(--violet-400);--accent-soft:#2a2050;--ink:#000;--secondary-edge:#352a5e;--good:#4ade80;--good-soft:#14321f;--warn:#fbbf24;--warn-soft:#33270e;--bad:#f87171;--bad-soft:#3a1414;--cat-1:#8b5cf6;--cat-2:#0d9488;--cat-3:#ea580c;--cat-4:#0284c7;--cat-5:#d97706;--cat-6:#ec4899;--cat-other:#6f6690;--cat-pace:#6f6690;--shadow-card:0 10px 30px #00000073;--shadow-card-hover:0 14px 36px #0000008c}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:15px;font-weight:600;line-height:1.5}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:900}h1{font-size:28px}h2{font-size:20px}h3{font-size:16px}p{margin:0}a{color:var(--accent);font-weight:700;text-decoration:none}a:hover{text-decoration:underline}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--r-sm);outline:none}.money{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:800}.money .cents{opacity:.7;font-size:.7em;font-weight:700}.money.pos{color:var(--good)}.money.neg{color:var(--bad)}.muted{color:var(--text-2)}.small{font-size:13px}.tiny{text-transform:uppercase;letter-spacing:.12em;color:var(--text-2);font-size:11px;font-weight:800}.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:20px}.card.interactive{cursor:pointer;transition:box-shadow .15s,transform .15s}.card.interactive:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.card-title{align-items:center;gap:8px;margin-bottom:12px;font-size:15px;font-weight:900;display:flex}.card-title .spacer{flex:1}.btn{font-family:var(--font);border-radius:var(--r-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:13px 22px;font-size:15px;font-weight:800;transition:transform 90ms,box-shadow 90ms,filter .15s;display:inline-flex}.btn-primary{background:var(--gradient);color:#fff;box-shadow:var(--shadow-press)}.btn-primary:hover{filter:brightness(1.07)}.btn-primary:active{box-shadow:var(--shadow-press-down);transform:translateY(3px)}.btn-secondary{background:var(--surface);color:var(--accent-strong);border:2px solid var(--secondary-edge);box-shadow:0 4px 0 var(--secondary-edge)}.btn-secondary:hover{border-color:var(--violet-300)}.btn-secondary:active{box-shadow:0 1px 0 var(--secondary-edge);transform:translateY(3px)}.btn-ghost{color:var(--accent);background:0 0}.btn-ghost:hover{background:var(--accent-soft)}.btn-danger{background:var(--bad);color:#fff;box-shadow:0 4px #7f1d1d}.btn-danger:active{transform:translateY(3px);box-shadow:0 1px #7f1d1d}.btn-sm{border-radius:var(--r-sm);padding:8px 14px;font-size:13px}.btn-block{width:100%}.chip{white-space:nowrap;background:var(--surface-tint);color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:800;display:inline-flex}.chip.good{background:var(--good-soft);color:var(--good)}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.chip.brand{background:var(--accent-soft);color:var(--accent-strong)}.chip.clickable{cursor:pointer}.chip.clickable:hover{filter:brightness(.96)}.shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);flex-direction:column;flex-shrink:0;gap:2px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.sidebar .logo{align-items:center;gap:10px;padding:6px 12px 22px;font-size:20px;font-weight:900;display:flex}.sidebar .logo .dot{color:var(--accent)}.nav-item{border-radius:var(--r-md);color:var(--text-2);cursor:pointer;align-items:center;gap:12px;padding:10px 14px;font-size:15px;font-weight:800;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--surface-tint);color:var(--text);text-decoration:none}.nav-item.active{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-card)}.nav-item .icon{text-align:center;width:22px;font-size:17px}.sidebar .foot{flex-direction:column;gap:10px;margin-top:auto;padding:0 6px;display:flex}.main{flex:1;min-width:0;padding:28px 36px 60px}.content{max-width:var(--content-max);margin:0 auto}.page-head{align-items:center;gap:14px;margin-bottom:22px;display:flex}.page-head .spacer{flex:1}.grid-2{grid-template-columns:1fr 1fr;gap:18px;display:grid}.grid-2 .span-2{grid-column:span 2}@media (max-width:980px){.grid-2{grid-template-columns:1fr}.grid-2 .span-2{grid-column:span 1}.sidebar{align-items:center;width:74px;padding:20px 10px}.sidebar .logo{padding:6px 0 22px}.sidebar .logo .wordmark{display:none}.nav-item{justify-content:center;width:46px;padding:10px}.nav-item .label{display:none}.sidebar .foot{align-items:center;padding:0}.sidebar .foot .chip .chip-label,.sidebar .foot .user-row,.sidebar .foot .theme-toggle{display:none}}.mascot{vertical-align:middle;width:30px;height:30px;display:inline-block}.mascot-fill{width:62%;height:62%}.mascot-xs{vertical-align:-3px;width:17px;height:17px;display:inline-block}.fish-ring{background:var(--accent-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:84px;height:84px;font-size:42px;display:flex}.fish-ring.good{background:var(--good-soft)}.fish-ring.warn{background:var(--warn-soft)}.fish-ring.bad{background:var(--bad-soft)}.bubble{background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;padding:12px 16px;font-weight:700;position:relative}.bubble:before{content:"";background:var(--surface);border-radius:3px;width:16px;height:16px;position:absolute;bottom:14px;left:-8px;transform:rotate(45deg)}.bubble .primary{font-size:17px;font-weight:900}.bubble .secondary{color:var(--text-2);margin-top:3px;font-size:14px;font-weight:700}.table{border-collapse:collapse;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);border-bottom:2px solid var(--border);padding:8px 12px;font-size:11px;font-weight:800}.table td{border-bottom:1px solid var(--border);padding:12px;font-weight:600}.table tbody tr{transition:background .1s}.table tbody tr:hover{background:var(--surface-tint);cursor:pointer}.table td.amount,.table th.amount{text-align:right}.table .payee{font-weight:800}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field label{font-size:13px;font-weight:800}.input,.select{font-family:var(--font);color:var(--text);background:var(--surface);border:2px solid var(--border);border-radius:var(--r-md);padding:11px 14px;font-size:15px;font-weight:700;transition:border-color .12s}.input:focus,.select:focus{border-color:var(--accent);box-shadow:none;outline:none}.input::placeholder{color:var(--text-2);font-weight:600}.toggle{background:var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;width:46px;height:27px;transition:background .15s;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:21px;height:21px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.toggle.on{background:var(--accent)}.toggle.on:after{left:22px}.dialog-backdrop{background:#120d2473;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dialog{background:var(--surface);border-radius:var(--r-xl);width:100%;max-width:480px;padding:26px;box-shadow:0 24px 64px #120d2459}.dialog h2{margin-bottom:6px}.divider{background:var(--border);border:none;height:1px;margin:14px 0}.progress{background:var(--surface-tint);border-radius:999px;height:8px;overflow:hidden}.progress>i{background:var(--gradient);border-radius:999px;height:100%;display:block}.progress.over>i{background:var(--bad)}.legend{color:var(--text-2);flex-wrap:wrap;gap:14px;font-size:13px;font-weight:700;display:flex}.legend .key{align-items:center;gap:6px;display:inline-flex}.legend .swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.blob{filter:blur(60px);opacity:.5;pointer-events:none;background:radial-gradient(circle,#c4b5fd,#0000 70%);border-radius:50%;position:absolute}:root[data-theme=dark] .blob{opacity:.25}.user-row{align-items:center;gap:10px;padding:4px 2px;display:flex}.user-row .avatar{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:900;display:flex}.user-row .name{font-size:14px;font-weight:800}.user-row .email{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.theme-toggle{background:var(--surface-tint);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.theme-toggle button{font-family:var(--font);text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;transition:background .12s,color .12s}.theme-toggle button:hover{color:var(--text)}.theme-toggle button.active{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-card)}.theme-toggle-floating{z-index:10;position:fixed;top:18px;right:18px}.auth-wrap{flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:48px 24px;display:flex;position:relative;overflow:hidden}.auth-card{text-align:center;border-radius:var(--r-xl);width:440px;max-width:100%;padding:40px 36px 32px;position:relative}.auth-card .fish-ring{margin:0 auto 18px}.auth-title{letter-spacing:-.01em;font-size:28px;font-weight:900}.auth-title .dot{color:var(--accent)}.auth-sub{color:var(--text-2);margin-top:8px;font-size:15px;font-weight:600}.auth-actions{flex-direction:column;gap:12px;margin-top:28px;display:flex}.reassure{color:var(--text-2);margin-top:18px;font-size:12px;font-weight:700}.auth-form{text-align:left;margin-top:26px}.auth-form .input{width:100%}.auth-form .auth-actions{margin-top:4px}.or-divider{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:12px;margin:16px 0 12px;font-size:12px;font-weight:800;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--border);flex:1;height:1px}.g-badge{background:var(--surface-tint);width:22px;height:22px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:inline-flex}.guest-note{background:var(--accent-soft);border-radius:var(--r-md);text-align:left;color:var(--accent-strong);align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.guest-note .mascot-xs{flex-shrink:0}.auth-foot{border-top:1px solid var(--border);color:var(--text-2);margin-top:20px;padding-top:16px;font-size:13px;font-weight:600}.form-alert{background:var(--bad-soft);color:var(--bad);border-radius:var(--r-md);text-align:left;margin-bottom:14px;padding:10px 14px;font-size:13px;font-weight:700}.form-notice{background:var(--warn-soft);color:var(--warn);border-radius:var(--r-md);text-align:left;margin-top:20px;padding:10px 14px;font-size:13px;font-weight:700}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:disabled:active{transform:none}.setting-row{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:12px 2px;display:flex}.setting-row:last-child{border-bottom:none}.setting-row .grow{flex:1;min-width:0}.setting-row .label{font-weight:800}.setting-row .hint{color:var(--text-2);margin-top:1px;font-size:13px;font-weight:600}.takeover{justify-content:center;align-items:center;min-height:100vh;padding:48px 24px;display:flex;position:relative;overflow:hidden}.paywall-col{text-align:center;width:520px;max-width:100%;position:relative}.paywall-col .fish-ring{margin:0 auto 18px}.paywall-title{font-size:28px}.paywall-title .dot{color:var(--accent)}.paywall-sub{color:var(--text-2);margin-top:8px;font-weight:600}.chart-svg{width:100%;height:auto;display:block}.chart-svg text{font-family:var(--font)}.chart-caption{margin-top:10px}.dash-key{border-top:2px dashed var(--text-2);vertical-align:middle;width:16px;display:inline-block}.hero{align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.hero .bubble{flex:1}.hero-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.trio{gap:12px;display:flex}.trio>*{flex:1}.trio .stat{background:var(--surface-tint);border-radius:var(--r-md);padding:14px 16px}.trio .stat .money{margin-top:2px;font-size:22px;display:block}.rec-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:9px 0;display:flex}.rec-row:last-child{border-bottom:none}.rec-row .logo{border-radius:var(--r-sm);background:var(--surface-tint);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:17px;display:flex}.rec-row .name{flex:1;font-weight:800}.rec-row .cadence{color:var(--text-2);font-size:12px;font-weight:600}.sub-row{align-items:center;gap:10px;padding:8px 0;display:flex}.sub-row .swatch{border-radius:3px;flex-shrink:0;width:10px;height:10px}.sub-row .name{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;width:148px;font-weight:800;overflow:hidden}.sub-row .bar{background:var(--surface-tint);border-radius:999px;flex:1;height:8px;overflow:hidden}.sub-row .bar i{border-radius:999px;height:100%;display:block}.sub-row .money{text-align:right;width:68px}.donut-wrap{align-items:center;gap:22px;display:flex}.donut-legend{flex-direction:column;flex:1;gap:8px;min-width:0;font-size:13px;font-weight:700;display:flex}.donut-legend .key{align-items:center;gap:8px;min-width:0;display:flex}.donut-legend .key .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.donut-legend .swatch{border-radius:3px;flex-shrink:0;width:10px;height:10px}.donut-legend .money{margin-left:auto;padding-left:18px}.cmp-row{align-items:center;gap:10px;padding:7px 0;display:flex}.cmp-row .label{width:84px;color:var(--text-2);font-size:13px;font-weight:800}.cmp-row .bar{background:var(--surface-tint);border-radius:6px;flex:1;height:18px;overflow:hidden}.cmp-row .bar i{border-radius:6px;height:100%;display:block}.cmp-row .money{text-align:right;width:68px}.nw-strip{align-items:center;gap:32px;display:flex}.nw-strip .big{font-size:30px}.nw-strip .stat .money{margin-top:2px;font-size:18px;display:block}.screen-empty{border:2px dashed var(--border);border-radius:var(--r-lg);text-align:center;min-height:260px;color:var(--text-2);justify-content:center;align-items:center;padding:24px;font-size:13px;font-weight:700;display:flex}.screen-empty b{color:var(--text);margin-bottom:4px;font-size:14px;font-weight:900;display:block}.screen-empty .mascot{width:38px;height:38px;margin-bottom:10px}.card-empty{color:var(--text-2);text-align:center;padding:18px 0;font-size:13px;font-weight:700}.budget-head{margin-bottom:18px}.stepper{align-items:center;gap:10px;margin-bottom:16px;display:flex}.stepper h2{text-align:center;min-width:190px}.head-body{align-items:center;gap:20px;display:flex}.head-body .bubble{flex:1}.gauge-box{flex-shrink:0;width:230px}.budget-grid{grid-template-columns:1fr 300px;align-items:start;gap:18px;display:grid}@media (max-width:980px){.budget-grid{grid-template-columns:1fr}}.tree-col{flex-direction:column;gap:14px;display:flex}.cat-head{align-items:center;gap:10px;display:flex}.cat-head .chev{color:var(--text-2);cursor:pointer;width:14px;font-size:12px;font-family:var(--font);background:0 0;border:none;padding:0}.cat-head .emoji{font-size:18px}.cat-head h3{flex:1}.cat-head .of{color:var(--text-2);font-weight:700}.cat-bar{background:var(--surface-tint);border-radius:999px;height:6px;margin:10px 0 4px;overflow:hidden}.cat-bar i{background:var(--gradient);border-radius:999px;height:100%;display:block}.cat-bar.green i{background:var(--good)}.children{margin-top:4px}.child{align-items:center;gap:10px;padding:9px 0 9px 30px;display:flex;position:relative}.child:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:0;left:10px}.child:last-child:before{bottom:50%}.child:after{content:"";background:var(--border);width:13px;height:2px;margin-top:-1px;position:absolute;top:50%;left:10px}.child .emoji{font-size:15px}.child .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:800;overflow:hidden}.child .caption{color:var(--text-2);font-size:12px;font-weight:700}.child .money{text-align:right;flex-shrink:0;width:64px}.child .mini{background:var(--surface-tint);border-radius:999px;flex-shrink:0;width:90px;height:4px;overflow:hidden}.child .mini i{background:var(--accent);border-radius:999px;height:100%;display:block}.child .mini.warn i{background:var(--warn)}.child .mini.over i{background:var(--bad)}.child .mini.green i{background:var(--good)}.child .mini.share i{background:var(--violet-500)}.child .share-caption{white-space:nowrap}.cat-bar.share i{background:var(--violet-500)}.cat-caption{color:var(--text-2);margin:0 0 4px;font-size:12px;font-weight:700}.cat-head .share-total .money{color:var(--text);font-weight:900}.collapsed-note{color:var(--text-2);margin-top:8px;font-size:13px;font-weight:700}.note-card p{color:var(--text-2);font-weight:600}.note-card .lede{color:var(--text);margin-bottom:6px;font-weight:800}.page-head .input{width:240px}.page-head .select{width:auto}.filters{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.spending-layout{align-items:flex-start;gap:18px;display:flex}.spending-layout .table-card{flex:1;min-width:0;padding:8px 4px 14px}.table-foot{color:var(--text-2);justify-content:center;align-items:center;gap:12px;padding-top:12px;font-size:13px;font-weight:700;display:flex}.cat{background:var(--surface-tint);border-radius:999px;align-items:center;gap:7px;padding:4px 11px;font-size:13px;font-weight:700;display:inline-flex}.cat .dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;display:inline-block}.cat.uncat{color:var(--text-2);background:0 0;padding-left:0;font-style:italic}.syschip{color:var(--text-2);border:1px solid var(--violet-200);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.syschip .emoji{font-size:11px}:root[data-theme=dark] .syschip{border-color:var(--accent-soft)}tr.pending td{color:var(--text-2);font-style:italic}tr.pending td .payee{font-weight:700}tr.selected{background:var(--accent-soft)}tr.selected td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.table tbody tr.selected:hover{background:var(--accent-soft)}.refund-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--good);background:var(--good-soft);border-radius:999px;margin-left:6px;padding:2px 8px;font-size:11px;font-weight:800}.slide-over{width:360px;box-shadow:var(--shadow-card-hover);flex-shrink:0;position:sticky;top:24px}.slide-over .panel-top{align-items:flex-start;gap:10px;margin-bottom:4px;display:flex}.slide-over .close{color:var(--text-2);cursor:pointer;font-size:16px;font-weight:900;font-family:var(--font);background:0 0;border:none;margin-left:auto}.slide-over .raw-name{color:var(--text-2);letter-spacing:.02em;font-size:11px;font-weight:600}.slide-over .big-amount{margin:10px 0 16px;font-size:32px}.fake-select{color:var(--text);background:var(--surface);border:2px solid var(--border);border-radius:var(--r-md);align-items:center;gap:8px;padding:11px 14px;font-size:15px;font-weight:700;display:flex}.fake-select .dot{border-radius:50%;width:9px;height:9px;display:inline-block}.readonly-row{align-items:center;gap:8px;padding:11px 2px;font-size:15px;font-weight:700;display:flex}.readonly-row .tiny{margin-left:auto}.panel-note{color:var(--text-2);font-size:12px;font-weight:700}.content-placeholder{border:2px dashed var(--border);border-radius:var(--r-lg);text-align:center;min-height:320px;color:var(--text-2);justify-content:center;align-items:center;padding:24px;font-size:13px;font-weight:700;display:flex}.content-placeholder b{color:var(--text);margin-bottom:4px;font-size:14px;font-weight:900;display:block}.content-placeholder .mascot{width:38px;height:38px;margin-bottom:10px}.networth{flex-wrap:wrap;align-items:baseline;gap:14px;padding:4px 6px 18px;display:flex}.networth .big{letter-spacing:-.01em;font-size:38px}.acct-row{align-items:center;gap:12px;padding:11px 0;display:flex}.acct-row+.acct-row{border-top:1px solid var(--border)}.acct-ic{background:var(--surface-tint);width:38px;height:38px;color:var(--accent-strong);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:900;display:flex}.acct-info{flex:1;min-width:0}.acct-name{font-weight:800}.acct-name .mask{color:var(--text-2);margin-left:4px;font-size:13px;font-weight:700}.acct-sub{text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);margin-top:2px;font-size:11px;font-weight:700}.acct-sub.warn{color:var(--warn)}.acct-bal{flex-shrink:0;font-size:16px}.card-title .total{color:var(--text-2);font-size:13px;font-weight:800}.disconnect{align-items:center;gap:14px;display:flex}.disconnect .msg{flex:1;min-width:0}.disconnect .msg .headline{font-weight:900}.disconnect .msg .detail{color:var(--text-2);margin-top:2px;font-size:13px;font-weight:600}.stepper-sm{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-card);align-items:center;gap:4px;padding:4px 6px;display:inline-flex}.stepper-sm .arrow{font-family:var(--font);color:var(--accent);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;width:34px;height:34px;font-size:17px;font-weight:900}.stepper-sm .arrow:hover{background:var(--accent-soft)}.stepper-sm .arrow[disabled]{color:var(--text-2);opacity:.4;cursor:default}.stepper-sm .arrow[disabled]:hover{background:0 0}.stepper-sm .label{text-align:center;min-width:140px;padding:0 10px;font-size:15px;font-weight:900}.trendline-card{margin-bottom:18px;padding:14px 16px}.trend-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:2px;display:flex}.trend-head .kicker{color:var(--text-2);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.trend-head .hint{color:var(--text-2);font-size:11px;font-weight:700}.trendline-card .tick{fill:var(--text-2);font-size:10px;font-weight:700}.trendline-card .tick.sel{fill:var(--accent-strong);font-weight:900}.trendline-card .dlabel{fill:var(--text);font-size:12px;font-weight:900}.trendline-card .rlabel{fill:var(--text-2);font-size:10px;font-weight:700}.trendline-card .slot{fill:#0000;cursor:pointer;outline:none}.trendline-card .slot:focus-visible{fill:color-mix(in srgb, var(--accent) 12%, transparent)}.generating-note{align-items:center;gap:8px;display:inline-flex}.generating-note .spin{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.9s linear infinite cb-spin}@keyframes cb-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.generating-note .spin{animation:none}}.compare-row{margin-top:16px}.toplist{flex-direction:column;display:flex}.toprow{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 2px;display:flex}.toprow:last-child{border-bottom:none}.toprow .dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.toprow .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:800;overflow:hidden}.toprow .share{color:var(--text-2);flex-shrink:0;font-size:12px;font-weight:700}.toprow .money{flex-shrink:0;font-size:15px}.export-row{justify-content:center;margin-top:20px;display:flex}.settings-layout{grid-template-columns:220px 1fr;align-items:start;gap:24px;display:grid}@media (max-width:980px){.settings-layout{grid-template-columns:1fr}.section-list{flex-flow:wrap;position:static}}.section-list{flex-direction:column;gap:2px;display:flex;position:sticky;top:28px}.section-link{border-radius:var(--r-md);color:var(--text-2);align-items:center;gap:10px;padding:9px 14px;font-size:14px;font-weight:800;text-decoration:none;display:flex}.section-link:hover{background:var(--surface-tint);color:var(--text);text-decoration:none}.settings-stack{flex-direction:column;gap:18px;min-width:0;display:flex}.guest-banner{background:var(--accent-soft);border-radius:var(--r-md);align-items:center;gap:14px;margin-top:8px;padding:14px 16px;display:flex}.segmented{background:var(--surface-tint);border-radius:var(--r-md);flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.segmented .seg{cursor:pointer;font-family:var(--font);color:var(--text-2);border-radius:calc(var(--r-md) - 3px);background:0 0;border:none;padding:7px 16px;font-size:13px;font-weight:800}.segmented .seg.on{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-card)}.segmented .seg:disabled{cursor:default}.danger-note{color:var(--text-2);margin-top:8px;font-size:12px;font-weight:600}.progress.good>i{background:var(--good)}.progress.warn>i{background:var(--warn)}.progress.lg{height:12px}.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:4px;display:grid}@media (max-width:980px){.goal-grid{grid-template-columns:1fr}}.goal-card{flex-direction:column;gap:14px;display:flex}button.goal-card{font:inherit;color:inherit;text-align:left;cursor:pointer;border:none;transition:box-shadow .15s,transform .15s}button.goal-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.goal-card.selected{box-shadow:0 0 0 2px var(--accent), var(--shadow-card)}.goal-top{align-items:center;gap:14px;display:flex}.goal-emoji{border-radius:var(--r-md);background:var(--surface-tint);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.goal-emoji.lg{border-radius:20px;width:64px;height:64px;font-size:32px}.goal-name{font-size:17px;font-weight:900}.goal-sub{color:var(--text-2);font-size:13px;font-weight:700}.goal-nums{justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;display:flex}.goal-nums .money{font-size:16px}.goal-card.done{background:var(--surface-tint);box-shadow:none}.new-goal{border:2px dashed var(--violet-300);box-shadow:none;text-align:center;min-height:172px;color:var(--accent-strong);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.section-kicker{align-items:center;gap:10px;margin:26px 0 12px;display:flex}.goal-slideover{z-index:40;background:var(--surface);flex-direction:column;gap:18px;width:480px;max-width:100vw;padding:26px 28px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-24px 0 64px #120d2438}.icon-btn{background:var(--surface-tint);width:40px;height:40px;color:var(--text-2);cursor:pointer;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stat-trio{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stat-trio .st{background:var(--surface-tint);border-radius:var(--r-md);padding:12px 14px}.stat-trio .money{margin-top:2px;font-size:18px;display:block}.goal-acct-row{border:2px solid var(--border);border-radius:var(--r-md);align-items:center;gap:12px;padding:12px 14px;display:flex}.goal-acct-row .ic{border-radius:var(--r-sm);background:var(--surface-tint);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex}.goal-acct-row b{font-size:14px;font-weight:900;display:block}.goal-acct-row .avail{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.goal-acct-row .avail.warn{color:var(--warn)}.hist-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;font-size:14px;display:flex}.hist-row:last-child{border-bottom:none}.hist-row .ic{background:var(--surface-tint);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:flex}.hist-row b{font-weight:800;display:block}.hist-row .sub{color:var(--text-2);font-size:12px}.goal-dialog-backdrop{z-index:50;align-items:flex-start;padding:40px 24px;overflow-y:auto}.goal-dialog{flex-direction:column;margin:auto 0;display:flex}.goal-dialog h2{margin-bottom:0}.dialog-head{align-items:center;gap:12px;display:flex}.goal-dialog .spacer,.goal-slideover .spacer{flex:1}.btn-danger-ghost{color:var(--bad);background:0 0}.btn-danger-ghost:hover{background:var(--bad-soft)}.input.error,.assign.error{border-color:var(--bad)}.wizard-steps{align-items:center;gap:8px;display:flex}.wizard-steps .s{background:var(--surface-tint);border-radius:999px;width:36px;height:6px}.wizard-steps .s.on{background:var(--accent)}.goal-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.goal-tile{border:2px solid var(--border);background:var(--surface);border-radius:var(--r-md);font-family:var(--font);cursor:pointer;text-align:left;color:var(--text);flex-direction:column;gap:6px;padding:14px 12px;font-size:14px;font-weight:800;display:flex}.goal-tile:hover{border-color:var(--violet-300)}.goal-tile .em{font-size:24px}.goal-tile.selected{border-color:var(--accent);background:var(--accent-soft)}.goal-tile.other{border-style:dashed}.goal-name-input{width:360px;max-width:100%;padding:8px 12px;font-size:20px;font-weight:900}.goal-setup-card{background:var(--surface-tint);box-shadow:none;grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:24px;display:grid}.goal-setup-card .select{background:var(--surface)}@media (max-width:760px){.goal-setup-card{grid-template-columns:1fr}}.amount-big{letter-spacing:-.02em;border-bottom:3px solid var(--accent);align-items:baseline;gap:4px;padding-bottom:6px;font-size:44px;font-weight:900;display:flex}.amount-big .cur{color:var(--text-2);font-size:26px}.amount-big input{min-width:0;font:inherit;letter-spacing:inherit;color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;flex:1;padding:0}.amount-big input::placeholder{color:var(--text-2)}button.chip{font-family:var(--font);cursor:pointer;border:none}.goal-choice{border:2px solid var(--border);border-radius:var(--r-md);background:var(--surface);font-family:var(--font);color:var(--text);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.goal-choice.selected{border-color:var(--accent);background:var(--accent-soft)}.goal-choice .em{font-size:22px}.goal-choice b{font-size:15px;font-weight:900;display:block}.goal-choice span span{color:var(--text-2);font-size:13px;font-weight:600;display:block}.goal-tick{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;font-size:13px;font-weight:900;display:flex}button.goal-acct-row{background:var(--surface);width:100%;font-family:var(--font);color:var(--text);text-align:left;cursor:pointer}button.goal-acct-row:hover{border-color:var(--violet-300)}.goal-acct-row .avail{display:block}.goal-acct-row.selected,.goal-acct-row.fund:focus-within{border-color:var(--accent);background:var(--accent-soft)}.goal-acct-row.blocked,.goal-acct-row.fund.blocked:focus-within{border-color:var(--bad)}.goal-acct-row.exhausted{opacity:.55;cursor:not-allowed}.goal-acct-row.exhausted:hover{border-color:var(--border)}.amount-prefixed{align-items:center;display:flex;position:relative}.amount-prefixed .cur{color:var(--text-2);pointer-events:none;font-variant-numeric:tabular-nums;font-weight:900;position:absolute;left:14px}.amount-prefixed .input{width:100%;padding-left:38px}.assign-wrap{flex-shrink:0;margin-left:auto}.assign-wrap .cur{font-size:15px;left:12px}.assign{width:120px;color:var(--text);font-family:var(--font);text-align:right;border:2px solid var(--border);border-radius:var(--r-sm);background:var(--surface);padding:8px 12px 8px 24px;font-size:15px;font-weight:800}.assign:focus{border-color:var(--accent);outline:none}.assign.zero{color:var(--text-2)}.assign:disabled{opacity:.55;cursor:not-allowed}.helper{color:var(--text-2);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.helper.bad{color:var(--bad)}.goal-manual-note{border:2px dashed var(--violet-300);border-radius:var(--r-md);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.goal-manual-note b{font-size:13px;font-weight:800}.goal-starting{background:var(--surface-tint);border-radius:var(--r-md);align-items:center;gap:14px;padding:12px 16px;display:flex}.goal-block-alert{background:var(--warn-soft);border:2px solid var(--warn);border-radius:var(--r-md);gap:12px;padding:12px 14px;display:flex}.goal-block-alert svg{flex-shrink:0;margin-top:2px}.goal-block-alert-body{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.goal-block-alert-body b{color:var(--warn);font-weight:900}.goal-actions{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:auto;padding-top:14px;display:flex}.goal-actions-row{justify-content:space-between;gap:0;display:flex}.goal-actions-row .btn{white-space:nowrap;min-width:0;padding:8px 4px;font-size:12.5px}button.new-goal{font-family:var(--font);cursor:pointer;width:100%}button.new-goal:hover{border-color:var(--accent)}.fish-ring{position:relative}.fish-ring.has-level{margin-bottom:8px}.lvl-chip{border:2px solid var(--surface);white-space:nowrap;padding:3px 9px;font-size:11px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}button.lvl-chip{font-family:var(--font);cursor:pointer}button.lvl-chip:hover{filter:brightness(.96)}button.lvl-chip:focus-visible,button.pond-strip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pond-strip{flex-wrap:wrap;align-items:center;gap:14px 22px;margin-bottom:18px;display:flex}.pond-strip>:nth-child(2){flex:280px}.pond-strip .lvl{white-space:nowrap;font-size:16px;font-weight:900}button.pond-strip{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border:none;transition:box-shadow .15s,transform .15s}button.pond-strip:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.pond-strip-head{flex-direction:column;gap:2px;display:flex}.pond-strip-bar{flex-direction:column;gap:8px;display:flex}.pond-strip-bar .progress>i{transition:width .4s}.pond-strip-caption{white-space:nowrap;color:var(--text-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;font-size:13px;font-weight:800;display:flex}.pond-strip-badges{align-items:center;gap:14px;display:flex}.pond-strip-badges .count{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}@media (prefers-reduced-motion:reduce){.pond-strip-bar .progress>i{transition:none}button.pond-strip,button.pond-strip:hover{transition:none;transform:none}}.badge-dots{gap:6px;display:flex}.bdot{background:var(--accent-soft);width:30px;height:30px;box-shadow:0 0 0 2px var(--surface), 0 0 0 3.5px var(--violet-300);border-radius:50%;justify-content:center;align-items:center;font-size:15px;display:flex}.bdot.locked{background:var(--surface-tint);box-shadow:none;opacity:.45;filter:grayscale()}.pond-dialog-backdrop{z-index:50;align-items:flex-start;padding:56px 24px 24px}.pond-dialog{flex-direction:column;max-width:1040px;max-height:calc(100vh - 80px);padding:0;display:flex;overflow:hidden}.pond-dialog-head{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:22px 26px;display:flex}.pond-dialog-head h2{margin:0}.pond-dialog-head .spacer{flex:1}.pond-dialog-body{flex:1;grid-template-columns:340px minmax(0,1fr);min-height:0;display:grid;overflow-y:auto}.pond-dialog-left{border-right:1px solid var(--border);flex-direction:column;gap:18px;padding:22px 24px;display:flex}.pond-dialog-right{padding:4px 26px 22px}.pond-dialog-foot{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;padding:16px 26px;display:flex}.pond-streak-chips{flex-wrap:wrap;gap:8px;display:flex}.pond-ladder{flex-direction:column;gap:2px;display:flex}.pond-earn{background:var(--surface-tint);border-radius:var(--r-md);padding:14px 16px}@media (max-width:860px){.pond-dialog-body{grid-template-columns:1fr}.pond-dialog-left{border-right:none;border-bottom:1px solid var(--border)}}.earn-row{align-items:center;gap:10px;padding:7px 0;font-size:14px;font-weight:700;display:flex}.earn-row b{color:var(--accent-strong);white-space:nowrap;margin-left:auto;font-weight:900}.rung{border-radius:var(--r-md);align-items:center;gap:12px;padding:9px 12px;display:flex}.rung .dot{background:var(--surface-tint);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:17px;display:flex}.rung .rung-info{flex-grow:1;min-width:0}.rung b{font-size:14px;font-weight:900;display:block}.rung span.sub{color:var(--text-2);font-size:12px;font-weight:700}.rung .progress{margin-top:6px}.rung .counter{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.rung.now{background:var(--accent-soft)}.rung.now .dot{background:var(--surface);box-shadow:0 0 0 2px var(--accent)}.rung.locked{opacity:.55}.sec-head{justify-content:space-between;align-items:baseline;margin:18px 0 10px;display:flex}.sec-head .count{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12px;font-weight:800}.badge-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}@media (max-width:640px){.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.badge{border-radius:var(--r-md);text-align:center;background:var(--surface-tint);flex-direction:column;align-items:center;gap:4px;padding:14px 10px 12px;display:flex;position:relative}.badge .em{margin-bottom:4px;font-size:26px;line-height:1}.badge b{font-size:13px;font-weight:900;line-height:1.2}.badge span{color:var(--text-2);font-size:11px;font-weight:700;line-height:1.3}.badge.earned{background:var(--surface);box-shadow:0 0 0 2px var(--violet-300)}.badge:not(.earned) .em{opacity:.3;filter:grayscale()}.badge .corner{border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:900;display:flex;position:absolute;top:8px;right:8px}.badge.earned .corner{background:var(--accent);color:#fff}.badge:not(.earned) .corner{color:var(--text-2)}.pond-footnote{margin-top:14px}ol.pond-ladder{margin:0;padding:0;list-style:none}.celebration-backdrop{z-index:50;align-items:flex-start;padding:40px 24px;overflow-y:auto}.celebration-dialog{flex-direction:column;margin:auto 0;display:flex}.celebration-dialog h2{margin:0}.celebration-dialog .spacer{flex:1}.recent-updates-dialog{gap:18px;max-width:580px}.ru-kicker{margin-bottom:8px}.ru-kicker.tight{margin-bottom:4px}.unlock{border-radius:var(--r-md);background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--violet-300);align-items:center;gap:14px;padding:14px 16px;display:flex}.unlock .em{background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.unlock-body{flex-grow:1;min-width:0}.unlock-body b{font-size:15px;font-weight:900}.unlock-thanks{outline:none;flex-shrink:0;font-weight:700}.feedback{flex-shrink:0;gap:6px;display:inline-flex}.feedback button{border:2px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:15px;display:inline-flex}.feedback button:hover{border-color:var(--violet-300)}button.rollup-card{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:var(--surface-tint);box-shadow:none;border:none;flex-direction:column;gap:10px;padding:16px 18px;transition:box-shadow .15s;display:flex}button.rollup-card:hover{box-shadow:0 0 0 2px var(--violet-300)}button.rollup-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rollup-head{align-items:center;gap:10px;display:flex}.rollup-head .tiny{color:var(--accent-strong)}.rollup-head .spacer{flex:1}.rollup-level{background:var(--surface);border-radius:var(--r-md);align-items:center;gap:12px;padding:10px 12px;display:flex}.rollup-level .fish-ring{width:40px;height:40px;font-size:20px}.rollup-level b{font-weight:900}.rollup-level .small,.rollup-ledger{display:block}.rollup-foot{align-items:center;gap:10px;display:flex}.rollup-foot .progress{flex-grow:1;display:block}.rollup-foot .small{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.ledger-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:9px 0;display:flex}.ledger-row:last-child{border-bottom:none}.ledger-row .ic{background:var(--surface-tint);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:flex}.ledger-row .t{flex:1;font-size:14px;font-weight:800}.ledger-row .t i{color:var(--text-2);font-size:12px;font-style:normal;font-weight:700;display:block}.ledger-row .d{color:var(--accent-strong);white-space:nowrap;font-size:13px;font-weight:900}.recent-table tbody tr:hover{cursor:default;background:0 0}.levelup-dialog{text-align:center;align-items:center;gap:14px;max-width:500px;padding:30px 30px 24px;position:relative}.levelup-dialog>.icon-btn{position:absolute;top:18px;right:18px}.levelup-dialog h2{font-size:26px}.levelup-ring-wrap{justify-content:center;align-items:center;width:150px;height:150px;display:flex;position:relative}.ripple{border:2px solid var(--violet-300);border-radius:50%;position:absolute}.ripple.outer{opacity:.35;inset:0}.ripple.inner{opacity:.7;inset:16px}.levelup-ring{width:96px;height:96px}.levelup-step{align-items:center;gap:10px;font-weight:800;display:flex}.levelup-bubble{max-width:400px;font-weight:700}.levelup-filled{text-align:left;background:var(--surface-tint);border-radius:var(--r-md);width:100%;padding:12px 16px}.levelup-filled .tiny{margin-bottom:2px}.levelup-next{align-items:center;gap:10px;width:100%;font-size:13px;font-weight:800;display:flex}.levelup-next .progress{flex-grow:1}.levelup-next .money{font-weight:800}.levelup-actions{gap:10px;width:100%;margin-top:4px;display:flex}.levelup-actions .btn{flex-grow:1}@keyframes cb-pop{0%{scale:.6}55%{scale:1.18}to{scale:1}}.bdot.pop,.lvl-chip.pop{animation:.45s cubic-bezier(.34,1.56,.64,1) both cb-pop}.pond-strip-bar .progress>i.fill-top-out{transition-duration:.22s;transition-timing-function:ease-in}.pond-strip-bar .progress>i.fill-instant{transition:none}@keyframes cb-rise-in{0%{opacity:0;transform:translateY(24px)scale(.98)}to{opacity:1;transform:none}}@keyframes cb-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cb-ripple{0%{opacity:.55;transform:scale(.86)}to{opacity:0;transform:scale(1.4)}}@keyframes cb-chip-out{0%{opacity:1}to{opacity:0}}@keyframes cb-chip-in{0%{opacity:0;scale:.8}70%{opacity:1;scale:1.08}to{opacity:1;scale:1}}@keyframes cb-bar-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.levelup-dialog.animate{animation:.32s cubic-bezier(.22,1.2,.36,1) both cb-rise-in}.levelup-ring-wrap.animate .ripple:after{content:"";border:2px solid var(--violet-300);opacity:0;border-radius:50%;animation:.6s ease-out .12s 2 cb-ripple;position:absolute;inset:-2px}.levelup-ring-wrap.animate .lvl-chip-old{animation:.26s .26s both cb-chip-out}.levelup-ring-wrap.animate .lvl-chip-new{animation:.26s .26s both cb-chip-in}.levelup-next.animate .progress>i{transform-origin:0;animation:.4s cubic-bezier(.22,1,.36,1) .52s both cb-bar-fill}@media (prefers-reduced-motion:reduce){.bdot.pop,.lvl-chip.pop,.levelup-ring-wrap.animate .ripple:after,.levelup-ring-wrap.animate .lvl-chip-new,.levelup-next.animate .progress>i{animation:none}.levelup-ring-wrap.animate .lvl-chip-old{display:none}.levelup-dialog.animate{animation:.2s both cb-fade-in}.pond-strip-bar .progress>i.fill-top-out,button.rollup-card{transition:none}}.takeover{align-items:flex-start;padding:64px 24px 48px}.paywall-col{flex-direction:column;align-items:center;width:100%;max-width:640px;display:flex}.paywall-title{letter-spacing:-.01em;font-size:32px;font-weight:900}.paywall-sub{margin-top:6px;font-weight:700}.paywall-benefits{text-align:left;flex-direction:column;gap:10px;width:100%;max-width:460px;margin:26px 0 0;padding:0;list-style:none;display:flex}.paywall-benefits li{align-items:flex-start;gap:12px;font-weight:700;display:flex}.paywall-benefits li .emoji{flex-shrink:0}.paywall-benefits li .muted{font-weight:600}.paywall-plans{grid-template-columns:1fr 1fr;gap:16px;width:100%;margin-top:28px;display:grid}@media (max-width:640px){.paywall-plans{grid-template-columns:1fr}}.plan{background:var(--surface);color:var(--text);border:2px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);text-align:left;cursor:pointer;font:inherit;flex-direction:column;padding:20px;display:flex;position:relative}.plan:disabled{cursor:default}.plan:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plan.selected{border:3px solid var(--accent);padding:19px}.plan .plan-head{align-items:center;gap:8px;display:flex}.plan .plan-name{flex:1;font-size:15px;font-weight:900}.plan .radio{border:2px solid var(--border);border-radius:50%;flex-shrink:0;width:20px;height:20px}.plan.selected .radio{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 45%, transparent 50%)}.plan .price{margin-top:10px;font-size:26px}.plan .per{color:var(--text-2);font-size:14px;font-weight:700}.plan .note{color:var(--text-2);margin-top:4px;font-size:13px;font-weight:700}.plan .badge{position:absolute;top:-11px;right:48px}.paywall-loading{text-align:center;width:100%;color:var(--text-2);margin-top:28px;padding:34px 20px;font-weight:700}.paywall-alert{justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:460px;margin:18px 0 0;display:flex}.cta-stack{flex-direction:column;align-items:center;gap:8px;width:100%;max-width:460px;margin-top:24px;display:flex}.trust-line{color:var(--text-2);font-size:12px;font-weight:700}.paywall-footer-links{gap:18px;margin-top:28px;font-size:12px;font-weight:700;display:flex}.paywall-footer-links a,.link-btn{color:var(--text-2)}.link-btn{font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.link-btn.danger{color:var(--bad)}.sub-status-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trial-countdown{border-radius:var(--r-md);background:var(--accent-soft);border:1px solid var(--violet-300);margin-top:10px;padding:10px 12px}.trial-countdown .headline{color:var(--accent-strong);font-size:14px;font-weight:800}.trial-countdown .detail{color:var(--accent-strong);margin-top:2px;font-size:12px;font-weight:600}.sub-facts{grid-template-columns:auto 1fr;gap:4px 14px;margin:10px 0 0;font-size:13px;display:grid}.sub-facts dt{color:var(--text-2);font-weight:700}.sub-facts dd{margin:0;font-weight:800}.trial-banner{border-radius:var(--r-lg);background:var(--accent-soft);border:1.5px solid var(--violet-300);align-items:center;gap:12px;margin-bottom:18px;padding:12px 16px;display:flex}:root[data-theme=dark] .trial-banner{background:#271c49;border-color:#3a2d63}.trial-banner .emoji{font-size:18px}.trial-banner .grow{flex:1;min-width:0}.trial-banner .title{font-size:14px;font-weight:800}.trial-banner .detail{color:var(--text-2);font-size:12px;font-weight:600}.deleted-banner{background:var(--good-soft);color:var(--good);border-radius:var(--r-md);text-align:center;margin-bottom:16px;padding:10px 14px;font-size:13px;font-weight:800}.delete-reauth{flex-direction:column;gap:10px;display:flex}.sync-panel{flex-direction:column;gap:14px;margin-bottom:18px;display:flex}.sync-head{align-items:center;gap:16px;display:flex}.sync-head .icon-btn{align-self:flex-start}.sync-copy{flex:1;min-width:0}.sync-copy h2{margin:0;font-size:20px}.sync-copy p{color:var(--text-2);margin:3px 0 0;font-size:13.5px;font-weight:700}.sync-fish{flex-shrink:0;width:72px;height:72px;position:relative}.sync-fish .mascot-fill{transform-origin:60% 60%}.sync-fish.rummage .mascot-fill{animation:1.6s ease-in-out infinite cb-rummage}.sync-thought{background:var(--surface);width:30px;height:30px;box-shadow:var(--shadow-card);border-radius:50%;justify-content:center;align-items:center;font-size:15px;display:flex;position:absolute;top:-6px;right:-8px}@keyframes cb-rummage{0%{transform:rotate(-6deg)translate(0)}35%{transform:rotate(9deg)translate(4px,5px)}60%{transform:rotate(4deg)translate(1px,2px)}to{transform:rotate(-6deg)translate(0)}}.sync-pct{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.sync-pct .num{letter-spacing:-.02em;font-size:30px;font-weight:900;line-height:1}.sync-pct .num small{color:var(--text-2);margin-left:2px;font-size:14px;font-weight:800}.sync-pct .eta{color:var(--text-2);font-size:12px;font-weight:800}.sync-bar{height:12px}.sync-bar>i{transition:width .5s cubic-bezier(.22,1,.36,1)}.sync-bar.slow>i{background:var(--warn)}.sync-panel.done .sync-bar>i{background:var(--good)}.sync-stages{gap:9px;margin:0;padding:0;list-style:none;display:grid}.stg{align-items:center;gap:10px;font-size:13.5px;font-weight:800;display:flex}.stg .ic{border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:900;display:flex}.stg.done .ic{background:var(--good-soft);color:var(--good)}.stg.now .ic{background:var(--accent);color:#fff}.stg.now .ic:before{content:"";background:#fff;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite cb-stage-pulse}@keyframes cb-stage-pulse{50%{opacity:.6;transform:scale(.55)}}.stg.slow .ic{background:var(--warn-soft);color:var(--warn)}.stg.todo{color:var(--text-2)}.stg.todo .ic{background:var(--surface-tint);color:var(--text-2)}.stg .meta{color:var(--text-2);margin-left:auto;font-size:11.5px;font-weight:800}.stg.done .meta{color:var(--good)}.stg.slow .meta{color:var(--warn)}.sync-accts{flex-wrap:wrap;gap:6px;display:flex}.sync-fine{color:var(--text-2);margin:0;font-size:12px;font-weight:700}.sync-foot{justify-content:flex-end;display:flex}@media (prefers-reduced-motion:reduce){.sync-fish.rummage .mascot-fill,.stg.now .ic:before{animation:none}.sync-bar>i{transition:none}}.goal-choice:disabled{opacity:.6;cursor:default}.goal-choice:not(:disabled):hover{border-color:var(--violet-300)}.goal-choice.danger b{color:var(--bad)}.goal-choice.danger:not(:disabled):hover{border-color:var(--bad);background:var(--bad-soft)}.oauth-col{text-align:center;gap:12px;padding-top:12vh}.oauth-col .paywall-sub{max-width:440px;margin-bottom:8px}.acct-row{position:relative}.acct-actions{background:var(--surface);opacity:0;pointer-events:none;gap:4px;padding-left:12px;transition:opacity .12s;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.acct-row:hover .acct-actions,.acct-row:focus-within .acct-actions{opacity:1;pointer-events:auto}@media (hover:none){.acct-actions{opacity:1;pointer-events:auto;margin-left:6px;padding-left:0;position:static;transform:none}}.type-field{border:none;min-width:0;padding:0}.type-field legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:800}.manual-type-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.manual-type-grid .goal-tile{padding:12px 10px;font-size:13px}.manual-type-grid .goal-tile .em{font-size:20px}.manual-type-grid .goal-tile:disabled{cursor:default;opacity:.7}@media (max-width:560px){.manual-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.delete-related{background:var(--warn-soft);color:var(--warn);border-radius:var(--r-md);flex-direction:column;gap:6px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.delete-related ul{margin:0;padding-left:20px}.delete-related .small{font-style:italic}.goal-choice .recommended{vertical-align:2px;margin-left:6px;padding:2px 8px;font-size:10px;font-style:normal}.goal-manual-add{flex-direction:row;align-items:center;gap:12px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ynab-wait{align-items:center;gap:12px;padding:18px 0;font-weight:800;display:flex}.ynab-spinner{border:3px solid var(--surface-tint);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.8s linear infinite cb-spin}.ynab-accounts{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ynab-account{border:2px solid var(--border);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;display:flex}.ynab-account>b{flex:150px;min-width:0;font-weight:900}.ynab-actions{flex-shrink:0;gap:8px;display:flex}.ynab-premium{margin-left:8px;padding:2px 8px;font-size:10px;font-style:normal}.ynab-progress{flex-direction:column;gap:10px;padding:6px 0;display:flex}.ynab-done{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:12px 0;display:flex}.ynab-done-ic{background:var(--good-soft);width:48px;height:48px;color:var(--good);border-radius:50%;justify-content:center;align-items:center;font-size:24px;font-weight:900;display:flex}@media (prefers-reduced-motion:reduce){.ynab-spinner{animation:none}}.trial-pill{background:var(--surface-tint);color:var(--accent-strong);border-radius:999px;align-items:center;gap:6px;margin-top:16px;padding:6px 14px;font-size:12.5px;font-weight:800;display:inline-flex}.welcome-choices{gap:10px;margin-top:24px}.btn-apple{color:#fff;background:#000;box-shadow:0 4px #3a3a3a}.btn-apple:hover{filter:brightness(1.25)}.btn-apple:active{transform:translateY(3px);box-shadow:0 1px #3a3a3a}:root[data-theme=dark] .btn-apple{color:#000;background:#fff;box-shadow:0 4px #b9b2d3}:root[data-theme=dark] .btn-apple:active{box-shadow:0 1px #b9b2d3}.btn-google{color:#221a3d;background:#fff;border:2px solid #e5dcff;box-shadow:0 4px #e5dcff}.btn-google:hover{border-color:var(--violet-300)}.btn-google:active{transform:translateY(3px);box-shadow:0 1px #e5dcff}.guest-choice{color:var(--accent-strong);font-size:16px}.link-btn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-weight:900}.link-btn:hover{text-decoration:underline}.link-btn:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}.welcome-error{flex-direction:column;gap:4px;margin:14px 0 0;display:flex}.welcome-error .link-btn,.welcome-error a{color:var(--bad);align-self:flex-start}.legal-line{color:var(--text-2);margin-top:10px;font-size:11.5px;font-weight:700;line-height:1.45}.legal-line a{color:var(--accent);font-weight:800}.signup-bubble{margin-top:18px}.password-wrap{position:relative}.password-wrap .input{padding-right:64px}.password-toggle{font-size:13px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.field-help{color:var(--text-2);margin:6px 4px 0;font-size:12px;font-weight:700}.link-form{flex-direction:column;gap:12px;display:flex}.link-form .input{width:100%}.dialog-head h2 .dot{color:var(--accent)}.user-row .email .link-btn{font-size:12px;font-weight:800}.onb-page{align-items:flex-start;padding-top:48px}.onb-col{flex-direction:column;gap:18px;width:100%;max-width:560px;display:flex}.onb-top{align-items:center;gap:14px;min-height:36px;display:flex}.onb-back-spacer{width:36px}.onb-dots{flex:1;justify-content:center;gap:6px;margin-right:50px;display:flex}.onb-dots .dot{background:var(--violet-200,#e5dcff);border-radius:999px;width:8px;height:8px;transition:width .2s}.onb-dots .dot.done{background:var(--violet-400,#a78bfa)}.onb-dots .dot.now{background:var(--accent);width:26px}.onb-hero{display:flex}.onb-stage{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.onb-row{align-items:center;gap:14px;width:100%;display:flex}.onb-ring{background:radial-gradient(circle,#8b5cf629 0%,#8b5cf600 68%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.onb-bubble{flex:1}.onb-stage .onb-bubble{text-align:center;flex:none;max-width:420px}.onb-bubble .primary{font-size:15px}.onb-title{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:900;line-height:1.15}.onb-title .dot{color:var(--accent)}.onb-cta{flex-direction:column;gap:10px;margin-top:6px;display:flex}.onb-cta .form-alert{margin:0}.onb-fine{text-align:center;color:var(--text-2);margin:0;font-size:12.5px;font-weight:700}.onb-field{flex-direction:column;gap:8px;display:flex}.onb-name-input{border-color:var(--violet-400,#a78bfa);font-size:22px;font-weight:900}.kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);font-size:11.5px;font-weight:900}.onb-choices{flex-direction:column;gap:12px;display:flex}.onb-choice{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;border:2px solid #0000;gap:14px;padding:16px;display:flex;position:relative}.onb-choice:hover{box-shadow:var(--shadow-card-hover)}.onb-choice.on{border-color:var(--accent);background:var(--accent-soft)}.onb-choice-emoji{background:var(--surface-tint);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:26px;display:flex}.onb-choice-body{flex-direction:column;gap:4px;padding-right:26px;display:flex}.onb-choice-title{font-size:17px;font-weight:900}.onb-choice-text{color:var(--text-2);font-size:13.5px;font-weight:700}.onb-tag{letter-spacing:.1em;background:var(--surface-tint);color:var(--text-2);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:10.5px;font-weight:900}.onb-tag.strong{color:#5b21b6;background:#e5dcff}.onb-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.onb-chips.centered{justify-content:center}.onb-tick{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:900;display:flex;position:absolute;top:12px;right:12px}.onb-sources{flex-direction:column;gap:8px;display:flex}.onb-source{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;border:2px solid #0000;align-items:center;gap:12px;padding:9px 14px 9px 10px;display:flex}.card.onb-source:hover{border-color:var(--accent);background:var(--accent-soft)}.onb-source-other{border:2px solid #0000;padding:0}.onb-source-other.open{border-color:var(--accent);background:var(--accent-soft);padding-bottom:12px}.onb-source-head{box-shadow:none;background:0 0}.onb-source-emoji{background:var(--surface-tint);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:19px;display:flex}.onb-source-label{flex:1;font-size:15px;font-weight:800}.onb-source-go{color:var(--violet-300,#c4b5fd);font-size:18px;font-weight:900}.onb-source-more{background:var(--violet-100,#f3efff);width:22px;height:22px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-weight:900;display:flex}.onb-other-form{flex-direction:column;gap:8px;padding:0 12px;display:flex}.onb-other-form .input{border-color:var(--violet-400,#a78bfa);width:100%;box-shadow:0 0 0 4px #8b5cf624}.onb-count{color:var(--text-2);align-self:flex-end;font-size:11px}.onb-form{flex-direction:column;gap:4px;display:flex}.onb-form .input{width:100%}.onb-types{grid-template-columns:1fr 1fr;gap:8px;display:grid}.onb-type{border-radius:var(--r-md);border:2px solid var(--border);background:var(--surface);font:inherit;color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:12px 14px;font-weight:800;display:flex}.onb-type.on{border-color:var(--accent);background:var(--accent-soft);color:#5b21b6}:root[data-theme=dark] .onb-type.on{color:var(--accent-strong)}.onb-balance{flex-direction:column;gap:4px;padding:14px 18px;display:flex}.onb-balance-row{align-items:center;gap:4px;display:flex}.onb-balance-symbol{color:var(--text-2);font-size:30px;font-weight:900}.onb-balance-input{min-width:0;font:inherit;color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:34px;font-weight:900}.onb-groups{grid-template-columns:1fr 1fr;gap:10px;display:grid}.onb-groups .onb-group:nth-child(-n+2){grid-column:span 2}.onb-group{flex-direction:column;gap:10px;padding:14px;display:flex}.onb-group-head{align-items:center;gap:8px;font-size:15px;font-weight:900;display:flex}.onb-group-emoji{background:var(--surface-tint);border-radius:9px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.onb-chip{font:inherit;cursor:pointer;background:var(--surface);color:var(--text-2);border:2px solid #e5dcff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:800}.onb-chip.on{border-color:var(--accent);background:var(--accent-soft);color:#5b21b6}:root[data-theme=dark] .onb-chip{border-color:#352a5e}:root[data-theme=dark] .onb-chip.on{color:var(--accent-strong);border-color:var(--accent)}.onb-add-own{align-self:flex-start;font-size:13.5px}.onb-add-row{align-items:center;gap:8px;display:flex}.onb-add-row .input{flex:1}.onb-count-chip{background:#ffffff38;border-radius:999px;padding:2px 8px;font-size:12px}.onb-tiles{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.onb-tile{letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);flex-direction:column;align-items:center;gap:2px;padding:14px 10px;font-size:11px;font-weight:800;display:flex}.onb-tile .money{color:var(--text);letter-spacing:-.02em;font-size:24px;font-weight:900}.sync-embedded{width:100%}.setting-edit{align-items:flex-end}.setting-edit .grow{flex-direction:column;gap:8px;display:flex}.setting-edit .input{width:100%;max-width:360px}.setting-edit .field{margin-bottom:0}.setting-edit .form-alert,.setting-edit .form-notice,.setting-edit .deleted-banner{max-width:360px;margin:0}.onb-wait{color:var(--text-2);padding-top:20vh;font-weight:800}.dialog-actions{justify-content:flex-end;gap:10px;display:flex}.btn-ghost.danger{color:var(--bad)}.btn-ghost.danger:hover{background:var(--bad-soft)}.panel-actions{gap:8px;display:flex}.memo-row{white-space:pre-wrap;overflow-wrap:anywhere}.syschip.removed-account{border-style:dashed}.segmented.txn-kinds{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.txn-hero{flex-direction:column;align-items:center;gap:2px;padding:4px 0;display:flex}.txn-amount{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:2px;font-size:28px;font-weight:900;display:flex}.txn-amount input{min-width:4ch;max-width:320px;font-family:var(--font);text-align:left;font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;padding:0;font-size:40px;font-weight:900;line-height:46px}.txn-amount input::placeholder{color:var(--text-2)}.txn-amount input:focus-visible{box-shadow:none;border-bottom:2px solid var(--violet-300)}.txn-helper{color:var(--text-2);text-align:center;min-height:16px;font-size:12px;font-weight:700}.txn-fields{border:1.5px solid var(--violet-200);border-radius:var(--r-md);background:var(--surface)}:root[data-theme=dark] .txn-fields{border-color:var(--accent-soft)}.txn-row{align-items:center;gap:10px;min-height:46px;padding:9px 12px;display:flex}.txn-row+.txn-row{border-top:1px solid var(--border)}.txn-row>label{width:72px;color:var(--text-2);flex-shrink:0;font-size:12px;font-weight:800}.txn-row>input,.txn-row>select,.txn-row-value{min-width:0;font-family:var(--font);color:var(--text);text-align:left;background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-size:14px;font-weight:800}.txn-row>input::placeholder{color:var(--text-2);font-weight:700}.txn-row>select{cursor:pointer}.txn-row>select option{background:var(--surface);color:var(--text)}.txn-row-value{cursor:pointer;align-items:center;gap:8px;width:100%;display:flex}.txn-row.picker-row{align-items:flex-start}.txn-row.picker-row>label{padding-top:6px}.picker{flex-direction:column;flex:1;min-width:0;display:flex}button.fake-select{width:100%;font-family:var(--font);cursor:pointer;text-align:left}.picker-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.picker-value.muted{color:var(--text-2);font-weight:700}.picker .caret{color:var(--text-2);margin-left:auto;font-size:12px}.picker-panel{background:var(--surface);border:2px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;margin-top:6px;padding:8px;display:flex}.picker-panel .input{width:100%}.picker-list{flex-direction:column;gap:10px;max-height:260px;display:flex;overflow-y:auto}.picker-group{flex-direction:column;gap:2px;display:flex}.picker-group .tiny{padding:2px 8px}.picker-option{border-radius:var(--r-sm);font-family:var(--font);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.picker-option:hover{background:var(--surface-tint)}.picker-option.highlight{background:var(--accent-soft);color:var(--accent-strong)}.picker-option .em{text-align:center;flex-shrink:0;width:22px;font-size:16px}.picker-option .body{flex-direction:column;flex:1;min-width:0;display:flex}.picker-option .name{font-size:14px;font-weight:800}.picker-option .cap{color:var(--text-2);font-size:11.5px;font-weight:700}.picker-option .check{color:var(--accent-strong);font-weight:900}.picker-empty{color:var(--text-2);padding:8px;font-size:13px;font-weight:700}.review-banner{background:var(--accent-soft);border:1px solid var(--violet-200);border-radius:var(--r-md);box-shadow:var(--shadow-card);align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}:root[data-theme=dark] .review-banner{border-color:var(--violet-500)}.review-banner .ic{font-size:18px}.review-banner .msg{color:var(--accent-strong);flex:1;font-weight:800}:root[data-theme=dark] .review-banner .msg{color:var(--text)}.review-hint{border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent-strong);margin:0;padding:10px 12px;font-size:12.5px;font-weight:700}.review-hint.warn{background:var(--warn-soft);color:var(--warn)}.review-hint.good{background:var(--good-soft);color:var(--good)}.review-summary{background:var(--surface-tint);border-radius:var(--r-md);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.2fr);gap:10px;padding:12px 14px;display:grid}.review-summary>div{flex-direction:column;gap:2px;min-width:0;display:flex}.review-summary b{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.picker-create .name{color:var(--accent-strong)}.picker-create-title{padding:2px 4px;font-size:13px;font-weight:800}.review-progress{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.review-progress .labels{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.review-progress .labels .muted{font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.review-progress .progress{background:var(--violet-200);height:6px}:root[data-theme=dark] .review-progress .progress{background:var(--surface-tint)}.review-progress .progress>i{background:var(--accent)}.review-mascot{align-items:center;gap:10px;display:flex}.bubble-sm{background:var(--surface-tint);border-radius:18px;flex:1;margin:0;padding:9px 13px;font-size:13px;font-weight:800;line-height:18px}.review-stack{padding-bottom:14px;position:relative}.review-stack:before,.review-stack:after{content:"";border-radius:26px;position:absolute}.review-stack:before{background:var(--violet-200);inset:18px 22px 0}.review-stack:after{background:var(--surface-tint);inset:9px 11px 7px}:root[data-theme=dark] .review-stack:before{background:#2e2452}.review-card{z-index:1;background:var(--surface);border:1px solid var(--border);border-radius:26px;flex-direction:column;gap:14px;padding:18px;display:flex;position:relative;box-shadow:0 16px 40px #221a3d24}.review-card-head{align-items:center;gap:12px;display:flex}.review-card-head .avatar{background:var(--text);width:46px;height:46px;color:var(--surface);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:900;display:flex}.review-card-head .who{flex-direction:column;flex:1;min-width:0;display:flex}.review-card-head .who b{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:900;overflow:hidden}.review-card-head .meta{color:var(--text-2);font-size:12px;font-weight:700}.review-amount{justify-content:space-between;align-items:baseline;display:flex}.review-amount .money{font-size:38px;font-weight:900}.type-tag{background:var(--surface-tint);color:var(--text-2);border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:800}.review-category{flex-direction:column;gap:8px;display:flex}.review-category .fake-select{border-width:1.5px;border-radius:14px;padding:9px 12px;font-size:13.5px}.review-selected{border:2px solid var(--accent);background:var(--accent-soft);border-radius:var(--r-md);align-items:center;gap:10px;padding:10px 12px;display:flex}.review-selected .em{font-size:18px}.review-selected .body{flex-direction:column;flex:1;min-width:0;display:flex}.review-selected .body b{font-size:14.5px;font-weight:900}.review-selected .avail{color:var(--text-2);font-size:11.5px;font-weight:700}.review-selected .suggested{background:var(--surface);color:var(--accent-strong);border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:800}.review-no-selection{border:1.5px dashed var(--violet-200);border-radius:var(--r-md);color:var(--text-2);padding:12px;font-size:12.5px;font-weight:700}.review-chips{flex-wrap:wrap;gap:6px;display:flex}.review-chips .chip{border:1.5px solid var(--violet-200);background:var(--surface);color:var(--text)}:root[data-theme=dark] .review-chips .chip{border-color:#2e2452}.review-memo{background:var(--bg);color:var(--text-2);border-radius:14px;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;font-weight:700;display:flex}.review-memo input{font-family:var(--font);color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:13px;font-weight:700}.review-caption{color:var(--text-2);align-self:center;font-size:11.5px;font-weight:800}.review-footer{align-items:center;gap:10px;display:flex}.review-footer .btn-primary{flex:1}.review-edit{flex-direction:column;gap:14px;display:flex}.review-edit-head{justify-content:space-between;align-items:center;display:flex}.review-edit-head h3{font-size:15px}.segmented.txn-kinds.two{grid-template-columns:repeat(2,minmax(0,1fr))}.txn-row>.cur{color:var(--text-2);font-weight:900}.back-link{margin-bottom:4px;font-size:13px;font-weight:800;display:inline-block}.rejected-table{padding:8px 4px 14px}.rejected-table td.actions,.rejected-table th.actions{text-align:right;white-space:nowrap}.rejected-table td.actions .btn+.btn{margin-left:6px}.rejected-table tbody tr:hover{cursor:default}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.table-foot a{font-weight:800}.cmp-headline{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:28px;font-weight:900}.cmp-headline.pos{color:var(--good)}.cmp-headline.neg{color:var(--bad)}.split-stats{gap:12px;margin-top:14px;display:flex}.split-stats .stat{background:var(--surface-tint);border-radius:var(--r-md);flex:1;padding:12px 14px}.split-stats .stat .money{margin-top:2px;font-size:18px;display:block}.top-highlight{background:var(--accent-soft)}.top-highlight .top-name{overflow-wrap:anywhere;margin-bottom:4px;font-size:18px;font-weight:900}.top-highlight .top-amount{margin-bottom:4px;font-size:30px;display:block}.sub-row .share-pct{text-align:right;width:40px;color:var(--text-2);flex-shrink:0;font-size:12px;font-weight:700}.card-total{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;font-size:14px;font-weight:900;display:flex}.card-total .caption{color:var(--text-2);margin-top:2px;font-size:12px;font-weight:700;display:block}.bc-badges{flex-wrap:wrap;gap:8px;margin-bottom:6px;display:flex}.bc-head{text-transform:uppercase;letter-spacing:.08em;color:var(--text-2);margin-top:14px;font-size:12px;font-weight:800}.bc-head.bad{color:var(--bad)}.bc-head.warn{color:var(--warn)}.bc-head.good{color:var(--good)}.bc-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:9px 0;display:flex}.bc-row:last-child{border-bottom:none}.bc-row .grow{flex:1;min-width:0}.bc-row .name{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.bc-row .sub{color:var(--text-2);font-size:12px;font-weight:700}.bc-row .right{text-align:right;flex-shrink:0}.bc-row.over .right .money{color:var(--bad)}.bc-row.near .right .money{color:var(--warn)}.bc-row.under .right .money{color:var(--good)}.vbars{align-items:stretch;gap:10px;display:flex}.vbar{flex-direction:column;flex:1;align-items:center;min-width:0;display:flex}.vbar .val{color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;margin-bottom:4px;font-size:11px;font-weight:800}.vbar .track{justify-content:center;align-items:flex-end;width:100%;height:110px;display:flex}.vbar .track i{background:var(--cat-1);border-radius:6px 6px 3px 3px;width:70%;display:block}.vbar .track i.empty{background:var(--surface-tint)}.vbar .track i.past{background:var(--cat-pace)}.vbar .lbl{color:var(--text-2);margin-top:8px;font-size:12px;font-weight:800}.vbar.sel .lbl{color:var(--accent-strong);font-weight:900}.vbar .sub{color:var(--text-2);font-size:11px;font-weight:700}.ytd-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.ytd-row:last-child{border-bottom:none}.ytd-row .name{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.trio .stat .small{margin-top:2px;display:block}.reflect-inline-error{background:var(--bad-soft);color:var(--bad);border-radius:var(--r-md);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:8px 8px 8px 14px;font-size:13px;font-weight:700;display:flex}.export-options{flex-direction:column;gap:10px;display:flex}.export-option{text-align:left;cursor:pointer;font-family:var(--font);color:var(--text);background:var(--surface-tint);border-radius:var(--r-md);border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;display:flex}.export-option:hover{background:var(--accent-soft)}.export-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.export-option .title{font-size:15px;font-weight:900}.export-option .desc{color:var(--text-2);font-size:13px;font-weight:600}.mode-note{background:var(--surface-tint);border-radius:var(--r-md);color:var(--text-2);padding:12px 14px;font-size:13px;font-weight:700}.form-success{background:var(--good-soft);color:var(--good);border-radius:var(--r-md);text-align:left;margin-bottom:14px;padding:10px 14px;font-size:13px;font-weight:700}.segmented .seg:not(:disabled):hover{color:var(--text);background:var(--surface)}.rta-box{text-align:right;flex-shrink:0;min-width:230px}.rta-box .kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);font-size:11px;font-weight:800}.rta-box .rta{font-variant-numeric:tabular-nums;font-size:34px;font-weight:900;line-height:1.15}.rta-box .rta.pos{color:var(--good)}.rta-box .rta.neg{color:var(--bad)}.classic-head-chips{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.classic-head-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.classic-head-actions .spacer{flex:1}.classic-head-actions .updating{color:var(--text-2);font-size:12px;font-weight:700}.classic-card{padding-bottom:10px}.classic-card-head{align-items:center;gap:10px;display:flex}.classic-card-toggle{cursor:pointer;min-width:0;font-family:var(--font);color:var(--text);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:12px;padding:0;display:flex}.emoji-tile{background:var(--accent-soft);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:19px;display:flex}.emoji-tile.lg{border-radius:14px;width:44px;height:44px;font-size:22px}.classic-card-titles{flex:1;min-width:0}.classic-card-titles .title-row{align-items:center;gap:6px;display:flex}.classic-card-titles h3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.count-pill{background:var(--surface-tint);color:var(--text-2);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:800}.classic-card-titles .summary{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.classic-figure{text-align:right;flex-shrink:0}.classic-figure .money{font-size:17px;font-weight:900;display:block}.classic-figure .label{color:var(--text-2);font-size:11px;font-weight:800}.classic-card .cb-bar{margin:12px 0 2px}.classic-empty{width:100%;color:var(--text-2);font-family:var(--font);cursor:pointer;background:0 0;border:none;padding:12px 0;font-size:13px;font-weight:700}.amount-pill{font-variant-numeric:tabular-nums;white-space:nowrap;background:var(--surface-tint);color:var(--text-2);border-radius:999px;padding:3px 10px;font-size:13px;font-weight:900;display:inline-block}.amount-pill.lg{padding:4px 12px;font-size:14px}.amount-pill.good{background:var(--good-soft);color:var(--good)}.amount-pill.warn{background:var(--warn-soft);color:var(--warn)}.amount-pill.bad{background:var(--bad-soft);color:var(--bad)}.amount-pill.brand{background:var(--accent-soft);color:var(--accent-strong)}.cb-bar{background:var(--surface-tint);border-radius:999px;height:4px;overflow:hidden}.cb-bar.lg{height:6px}.cb-bar>i{background:var(--text-2);border-radius:999px;height:100%;display:block}.cb-bar.good>i{background:var(--good)}.cb-bar.warn>i{background:var(--warn)}.cb-bar.bad>i{background:var(--bad)}.cb-bar.brand>i{background:var(--accent)}.type-badge{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:1px 8px;font-size:11px;font-weight:800;display:inline-block}.type-badge.regular{color:#5f5680;background:#efeaff}.type-badge.bill{color:#0f766e;background:#e3f4f2}.type-badge.goal{color:#6d28d9;background:#f3efff}.type-badge.loan{color:#c2410c;background:#fdeee4}.type-badge.credit_card_payment{color:#0369a1;background:#e5f3fb}:root[data-theme=dark] .type-badge.regular{color:#a89fc8;background:#221a3d}:root[data-theme=dark] .type-badge.bill{color:#5eead4;background:#0f2e2b}:root[data-theme=dark] .type-badge.goal{color:#a78bfa;background:#2a2050}:root[data-theme=dark] .type-badge.loan{color:#fb923c;background:#3a2012}:root[data-theme=dark] .type-badge.credit_card_payment{color:#7dd3fc;background:#0c2a3a}.classic-rows{margin-top:6px}.classic-row{align-items:center;gap:6px;padding-left:30px;display:flex;position:relative}.classic-row:before{content:"";background:var(--violet-200);width:2px;position:absolute;top:0;bottom:0;left:10px}.classic-row:last-child:before{height:24px;bottom:auto}.classic-row:after{content:"";background:var(--violet-200);width:13px;height:2px;position:absolute;top:23px;left:10px}:root[data-theme=dark] .classic-row:before,:root[data-theme=dark] .classic-row:after{background:#2a2050}.classic-row-open{border-radius:var(--r-sm);cursor:pointer;min-width:0;font-family:var(--font);color:var(--text);text-align:left;background:0 0;border:none;flex-direction:column;flex:1;gap:5px;padding:9px 10px;transition:background .1s;display:flex}.classic-row-open:hover{background:var(--surface-tint)}.classic-row-open:disabled{cursor:default}.classic-row-open:disabled:hover{background:0 0}.classic-row-top{align-items:center;gap:8px;display:flex}.classic-row-top .name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;overflow:hidden}.classic-row-top .spacer{flex:1}.classic-row-caption{color:var(--text-2);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-size:12px;font-weight:700;display:flex}.classic-row-caption .rolled{color:var(--accent-strong);white-space:nowrap;font-weight:800}.dialog-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);font-size:11px;font-weight:800}.dialog-sub{color:var(--text-2);font-size:13px;font-weight:700}.dialog-error{color:var(--bad);font-size:13px;font-weight:800}.dialog-actions{gap:10px;display:flex}.dialog-actions .btn{flex:1}.dialog-actions .btn.grow{flex:1.4}.assign-hero{flex-direction:column;align-items:center;gap:4px;display:flex}.assign-hero .sub{color:var(--text-2);font-size:13px;font-weight:700}.assign-hero .big{font-variant-numeric:tabular-nums;font-size:40px;font-weight:900}.assign-amount{border-bottom:3px solid var(--accent);align-items:baseline;gap:4px;max-width:280px;padding-bottom:4px;font-size:40px;font-weight:900;display:flex}.assign-amount .cur{color:var(--text-2);font-size:24px}.assign-amount input{width:100%;min-width:0;font:inherit;color:var(--text);text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;padding:0}.assign-amount input::placeholder{color:var(--text-2)}.breakdown{background:var(--bg);border-radius:var(--r-md);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.breakdown .line{justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.breakdown .line b{font-variant-numeric:tabular-nums;font-weight:900}.breakdown .line.rolled{color:var(--accent-strong)}.breakdown .line.activity{color:var(--text-2)}.breakdown .rule{background:var(--border);height:1px}.target-line{border:2px solid var(--violet-200);border-radius:var(--r-md);align-items:center;gap:10px;padding:10px 12px;display:flex}:root[data-theme=dark] .target-line{border-color:var(--accent-soft)}.target-line .ic{text-align:center;flex-shrink:0;width:22px;font-size:18px;font-weight:900}.target-line .ic.good{color:var(--good)}.target-line .ic.warn{color:var(--warn)}.target-line .ic.bad{color:var(--bad)}.target-line .ic.neutral{color:var(--text-2)}.target-line .ic.brand{color:var(--accent)}.target-line .txt{flex:1;min-width:0}.target-line .txt b{font-size:13px;font-weight:900;display:block}.target-line .txt span{color:var(--text-2);font-size:12px;font-weight:700;display:block}.quick-chips{flex-wrap:wrap;gap:8px;display:flex}.quick-chip{border:2px solid var(--violet-200);background:var(--surface);color:var(--text-2);font-family:var(--font);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800}.quick-chip:hover{border-color:var(--violet-300)}.quick-chip.fund{border-color:var(--violet-300);background:var(--accent-soft);color:var(--accent-strong)}:root[data-theme=dark] .quick-chip{border-color:var(--accent-soft)}:root[data-theme=dark] .quick-chip.fund{border-color:var(--accent)}.option-list{flex-direction:column;gap:8px;max-height:300px;display:flex;overflow-y:auto}.option-row{border:2px solid var(--violet-200);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--text);font-family:var(--font);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}:root[data-theme=dark] .option-row{border-color:var(--accent-soft)}.option-row:hover{border-color:var(--violet-300)}.option-row.selected{border-color:var(--accent);background:var(--accent-soft)}.option-row .txt{flex:1;min-width:0}.option-row .txt b{font-size:14px;font-weight:800;display:block}.option-row .txt span{color:var(--text-2);font-size:12px;font-weight:700;display:block}.segmented.block{display:flex}.segmented.block .seg{flex:1}.action-menu{flex-shrink:0;position:relative}.action-menu-btn{background:0 0;border-radius:10px;width:32px;height:32px;font-size:16px;font-weight:900}.action-menu-btn:hover,.action-menu-btn[aria-expanded=true]{background:var(--surface-tint);color:var(--text)}.action-menu-list{z-index:30;background:var(--surface);border-radius:var(--r-md);min-width:180px;box-shadow:var(--shadow-card-hover);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.action-menu-item{text-align:left;font-family:var(--font);color:var(--text);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;padding:9px 12px;font-size:14px;font-weight:700}.action-menu-item:hover,.action-menu-item:focus-visible{background:var(--surface-tint)}.action-menu-item.danger{color:var(--bad)}.classic-row .action-menu{align-self:center}.dialog .link-btn{font:800 13px var(--font);color:var(--accent-strong);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 2px;text-decoration:none}.dialog .link-btn:hover{text-decoration:underline}.math-box{background:var(--bg);border-radius:var(--r-md);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.math-box.tint-bill{background:color-mix(in srgb, #0f766e 7%, var(--surface))}.math-box.tint-goal{background:color-mix(in srgb, #6d28d9 6%, var(--surface))}.math-box.tint-loan{background:color-mix(in srgb, #c2410c 7%, var(--surface))}.math-row{justify-content:space-between;gap:10px;font-size:13px;font-weight:700;display:flex}.math-row b{font-variant-numeric:tabular-nums;font-weight:900}.math-row.strong span{font-weight:900}.math-row.accent{color:var(--accent-strong)}.math-box .rule{background:var(--border);height:1px}.footnote{color:var(--text-2);font-size:12px;font-weight:700}.target-summary{color:var(--accent-strong);font-size:13px;font-weight:800}.target-summary.warn{color:var(--warn)}.target-summary.type-bill{color:#0f766e}.target-summary.type-loan{color:#c2410c}:root[data-theme=dark] .target-summary.type-bill{color:#5eead4}:root[data-theme=dark] .target-summary.type-loan{color:#fb923c}.snooze-row{border:2px solid var(--border);border-radius:var(--r-md);align-items:center;gap:12px;padding:12px;display:flex}.snooze-row b{font-size:14px;font-weight:900;display:block}.snooze-row span{color:var(--text-2);font-size:12px;font-weight:700;display:block}button.toggle{border:none;padding:0}.tiles{align-items:stretch;gap:8px;display:flex}.tiles>*{flex:1}.tile{background:var(--bg);border-radius:var(--r-md);padding:10px 12px}.math-box .tile{background:var(--surface)}.tile span{color:var(--text-2);font-size:11px;font-weight:800;display:block}.tile b{font-variant-numeric:tabular-nums;font-size:17px;font-weight:900;display:block}.tile b.good{color:var(--good)}.is-stale{opacity:.5;transition:opacity .15s}.radio{border:2px solid var(--violet-300);border-radius:50%;flex-shrink:0;width:20px;height:20px;position:relative}.radio.on{border-color:var(--accent)}.radio.on:after{content:"";background:var(--accent);border-radius:50%;position:absolute;inset:3px}.type-cards{flex-direction:column;gap:8px;display:flex}.type-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.type-icon.regular{background:#efeaff}.type-icon.bill{background:#e3f4f2}.type-icon.goal{background:#f3efff}.type-icon.loan{background:#fdeee4}:root[data-theme=dark] .type-icon.regular{background:#221a3d}:root[data-theme=dark] .type-icon.bill{background:#0f2e2b}:root[data-theme=dark] .type-icon.goal{background:#2a2050}:root[data-theme=dark] .type-icon.loan{background:#3a2012}.option-row .txt b span.also-goals{vertical-align:2px;margin-left:8px;font-size:11px;font-weight:800;display:inline-block}.target-group{flex-direction:column;gap:10px;display:flex}.target-row{flex-wrap:wrap;gap:12px;display:flex}.target-row>*{flex:1;min-width:180px}.target-field{margin-bottom:0}.field-label{font-size:13px;font-weight:800}.month-stepper{background:var(--surface);border-radius:var(--r-sm);justify-content:space-between;align-items:center;gap:8px;padding:4px 6px;display:flex}.month-stepper b{font-size:14px;font-weight:900}.choice-chips{flex-wrap:wrap;gap:8px;display:flex}.choice-chip{border:2px solid var(--border);background:var(--surface);color:var(--text-2);font-family:var(--font);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800}.choice-chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.weekdays{gap:4px;display:flex}.weekday{background:var(--surface-tint);width:34px;height:34px;color:var(--text-2);font-family:var(--font);cursor:pointer;border:none;border-radius:50%;font-weight:900}.weekday.on{background:var(--accent);color:#fff}.amount-suffixed{align-items:center;display:flex;position:relative}.amount-suffixed .input{width:100%;padding-right:34px}.amount-suffixed .suf{color:var(--text-2);pointer-events:none;font-weight:900;position:absolute;right:14px}.emoji-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;margin:-2px -4px;padding:2px 4px;font-family:inherit;line-height:1}.emoji-btn:hover,.emoji-btn:focus-visible{background:var(--surface-tint)}.limit-btn{cursor:pointer;font-family:var(--font);background:0 0;border:none;border-radius:8px;padding:3px 6px}.limit-btn.caption:hover,.limit-btn.caption:focus-visible{background:var(--surface-tint);color:var(--accent)}.screen-empty .btn{margin-top:12px}.usage-box{background:var(--surface-tint);border-radius:14px;margin-bottom:14px;padding:12px 14px;font-size:14px;font-weight:700}.usage-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.usage-months{color:var(--text-2);flex-direction:column;gap:4px;margin:10px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.usage-months li{justify-content:space-between;display:flex}.emoji-sections{flex-direction:column;gap:14px;max-height:52vh;margin-top:10px;display:flex;overflow-y:auto}.emoji-grid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:6px;margin-top:6px;display:grid}.emoji-cell{background:var(--surface-tint);cursor:pointer;border:2px solid #0000;border-radius:10px;height:40px;font-size:20px}.emoji-cell:hover{border-color:var(--accent-soft)}.emoji-cell.on{border-color:var(--accent);background:var(--accent-soft)}.reorder-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.reorder-row{background:var(--surface-tint);border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex}.reorder-row b{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.reorder-row .icon-btn{background:var(--surface);width:34px;height:34px}.reorder-row .icon-btn:disabled{opacity:.35;cursor:default}.limit-chips{flex-wrap:wrap;justify-content:center;gap:8px;margin:4px 0 14px;display:flex}.limit-chip{border:2px solid var(--surface-tint);background:var(--surface);font-family:var(--font);cursor:pointer;color:var(--text);border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;display:flex}.limit-chip span{color:var(--text-2);font-size:12px;font-weight:700}.limit-chip b{font-variant-numeric:tabular-nums;font-size:15px;font-weight:900}.limit-chip.on{border-color:var(--accent);background:var(--accent-soft)}.limit-preview{background:var(--surface-tint);border-radius:14px;flex-direction:column;gap:8px;margin-bottom:12px;padding:12px 14px;display:flex}.limit-preview-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.row-slideover{z-index:40;background:var(--surface);flex-direction:column;gap:14px;width:460px;max-width:100vw;padding:26px 28px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-24px 0 64px #120d2438}.row-slideover-head{align-items:center;gap:12px;display:flex}.row-slideover-head h2{margin:0;font-size:20px;font-weight:900}.row-tx-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 12px;display:flex}.row-tx-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.row-tx{background:var(--bg);border-radius:18px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.row-tx-name{text-overflow:ellipsis;white-space:nowrap;font-weight:800;display:block;overflow:hidden}.row-tx .small{margin-top:2px;display:block}.row-tx-amount{flex-direction:column;align-items:flex-end;gap:6px;font-weight:900;display:flex}.removed-tag{color:var(--text-2);border:1px solid var(--violet-200);border-radius:999px;margin-top:6px;padding:1px 8px;font-size:11px;font-weight:800;display:inline-block}:root[data-theme=dark] .removed-tag{border-color:var(--accent-soft)}.row-tx-note{margin-top:auto;padding-top:8px}.nowrap{white-space:nowrap}.ledger-table .ledger-detail{font-size:13px;display:block}.ledger-table tbody tr:hover{cursor:default}.ledger-delete{width:34px;height:34px;font-size:14px}.ledger-delete:hover{background:var(--bad-soft)}.ledger-count{flex-direction:column;align-items:center;gap:4px;padding:10px 0 14px;display:flex}.ledger-count b{font-size:24px;font-weight:900}.ledger-current{background:var(--bg);border-radius:var(--r-md);flex-direction:column;align-items:center;gap:4px;padding:14px;display:flex}.ledger-current b{font-variant-numeric:tabular-nums;font-size:26px;font-weight:900}.ledger-accounts{max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.ledger-accounts li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:8px 2px;font-weight:800;display:flex}.ledger-accounts li>span:first-child{flex-direction:column;display:flex}.budget-goal{flex-direction:column;gap:12px;padding:18px;display:flex}.budget-goal-top{align-items:center;gap:12px;display:flex}.budget-goal-name{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:900;display:block;overflow:hidden}.budget-goal-sub{color:var(--text-2);align-items:center;gap:8px;min-width:0;margin-top:3px;font-size:12px;font-weight:700;display:flex}.budget-goal-sub>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.budget-goal-nums{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.budget-goal-strip{background:var(--bg);border-radius:var(--r-md);color:var(--text-2);justify-content:space-between;align-items:center;gap:10px;padding:8px 8px 8px 12px;font-size:13px;font-weight:700;display:flex}:root{--ru-outline:var(--violet-300)}:root[data-theme=dark]{--ru-outline:#4c3a8a}.accent-ink{color:var(--accent-strong)}.money.warn-ink{color:var(--warn)}.hero-card{margin-bottom:18px}.hero-card .hero{margin-bottom:0}.refresh-line{flex-wrap:wrap;align-items:center;gap:4px 10px;margin:12px 0 0 104px;display:flex}.refresh-line .btn-sm{padding:4px 10px}.refresh-error{color:var(--bad);font-weight:700}.glance{border-top:1px solid var(--border);margin:14px 0 0 104px;padding-top:14px}.glance-kicker{margin-bottom:10px;display:block}.glance-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.glance-tile{border-radius:var(--r-md);font:inherit;color:var(--text);text-align:center;cursor:pointer;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:68px;padding:12px 10px;text-decoration:none;transition:filter .12s;display:flex}.glance-tile:hover{filter:brightness(.97);text-decoration:none}.glance-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.glance-tile.good{background:var(--good-soft)}.glance-tile.warn{background:var(--warn-soft)}.glance-tile.bad{background:var(--bad-soft)}.glance-tile.brand{background:var(--accent-soft)}.glance-icon{font-size:16px;font-weight:900;line-height:1.2}.glance-tile.good .glance-icon{color:var(--good)}.glance-tile.warn .glance-icon{color:var(--warn)}.glance-tile.bad .glance-icon{color:var(--bad)}.glance-text{font-size:13px;font-weight:800}.glance-amount{font-variant-numeric:tabular-nums;font-size:17px;font-weight:900}.glance-tile.good .glance-amount{color:var(--good)}.glance-tile.bad .glance-amount{color:var(--bad)}.glance-tile.brand .glance-amount{color:var(--accent-strong)}.glance-label{color:var(--text-2);font-size:12px;font-weight:700}.glance-syncing,.glance-syncing .spin{align-items:center;display:flex}.glance-syncing{border-top:1px solid var(--border);color:var(--text-2);gap:8px;margin:14px 0 0 104px;padding-top:14px;font-size:13px;font-weight:700}.glance-syncing .spin{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.9s linear infinite cb-spin}button.chip{font-family:var(--font);border:none}.trio-button{font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.trio-button:hover .tiny{color:var(--accent-strong)}.trio-button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.card.interactive:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a.sub-row-link{color:inherit;border-radius:var(--r-sm);text-decoration:none}a.sub-row-link:hover{background:var(--surface-tint);text-decoration:none}.screen-empty-action{flex-direction:column;align-items:center;gap:8px;margin-top:14px;display:flex}.home-dialog{gap:16px;max-width:560px}.home-dialog-title{min-width:0}.home-dialog-title .small{margin-top:2px}.home-rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.home-row{border-radius:var(--r-md);background:var(--surface-tint);color:var(--text);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}button.home-row{width:100%;font:inherit;text-align:left;cursor:pointer;border:0}a.home-row:hover,button.home-row:hover{box-shadow:0 0 0 2px var(--ru-outline);text-decoration:none}a.home-row:focus-visible,button.home-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-row-icon{background:var(--surface);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:900;display:flex}.home-row-icon.bad{background:var(--bad-soft);color:var(--bad)}.home-row-icon.warn{background:var(--warn-soft);color:var(--warn)}.home-row-body{flex-direction:column;flex:1;min-width:0;display:flex}.home-row-body b{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.home-row .money{white-space:nowrap;font-weight:800}.row-chevron{color:var(--text-2);font-weight:900}.home-dialog-hint{text-align:center;margin:0}.home-dialog-total{border-radius:var(--r-md);background:var(--accent-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.home-dialog-total .money{font-size:17px;font-weight:900}.home-dialog-empty{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:18px 0;display:flex}.home-dialog-empty-icon{background:var(--good-soft);width:44px;height:44px;color:var(--good);border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;font-size:20px;font-weight:900;display:flex}.home-compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.home-compare .stat{background:var(--surface-tint);border-radius:var(--r-md);padding:14px 16px}.home-compare .stat .money{margin-top:2px;font-size:20px;display:block}.home-dialog>.chip{align-self:flex-start}.welcome-hero{text-align:center;flex-direction:column;align-items:center;gap:14px;max-width:520px;margin:24px auto;padding:32px;display:flex}.welcome-hero-fish{width:84px;height:84px}.welcome-hero-bullets{text-align:left;color:var(--text-2);flex-direction:column;gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.welcome-hero-bullets li{gap:10px;display:flex}.welcome-hero-actions{flex-direction:column;gap:10px;width:100%;margin-top:6px;display:flex}.ru-sheet{max-width:520px;position:relative}.ru-close{position:absolute;top:18px;right:18px}.ru-streak-only,.ru-classic,.ru-manual{flex-direction:column;gap:16px;display:flex}.ru-classic h2{padding-right:48px}.ru-fish-row{align-items:flex-end;gap:10px;padding-right:48px;display:flex}.ru-fish{flex-shrink:0;width:56px;height:56px}.ru-bubble{background:var(--accent-soft);border:1.5px solid var(--ru-outline);border-radius:18px 18px 18px 4px;flex-grow:1;margin:0;padding:10px 14px;font-size:14px;font-weight:800;line-height:1.35}.streak-card{background:var(--surface-tint);border-radius:22px;flex-direction:column;gap:14px;padding:18px 18px 16px;display:flex}.streak-card-head{justify-content:space-between;align-items:center;display:flex}.streak-kicker{color:var(--accent-strong)}.chip.streak-best{background:var(--surface);color:var(--text-2)}.streak-pending{color:var(--text-2);margin:0;font-size:16px;font-weight:800}.streak-big{align-items:baseline;gap:10px;display:flex}.streak-number{font-variant-numeric:tabular-nums;color:var(--accent-strong);font-size:64px;font-weight:900;line-height:1}.streak-unit{font-size:18px;font-weight:900}.streak-track-block{flex-direction:column;gap:8px;display:flex}.streak-track-labels{color:var(--text-2);justify-content:space-between;gap:8px;font-size:12px;font-weight:800;display:flex}.streak-track-labels .accent{color:var(--accent-strong)}.streak-note{margin:0}.week-track{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.week-track.sm{gap:4px}.week-track .step{background:var(--surface);border:1.5px dashed var(--ru-outline);border-radius:999px;height:10px}.week-track.sm .step{border:none;height:6px}.week-track .step.filled{background:var(--accent);border-color:#0000}.ru-nothing-new{color:var(--text-2);align-items:center;gap:10px;padding:2px 4px;font-size:13px;font-weight:700;display:flex}.ru-nothing-icon{background:var(--surface-tint);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:flex}.streak-strip{background:var(--surface-tint);border-radius:var(--r-md);flex-direction:column;gap:9px;padding:12px 14px;display:flex}.streak-strip-head{align-items:center;gap:8px;display:flex}.streak-strip-hint{color:var(--accent-strong);margin-left:auto;font-size:12px;font-weight:800}.streak-strip-caption{font-size:12px;font-weight:700}.streak-hero{color:#fff;background:linear-gradient(135deg, var(--violet-700), var(--violet-500));border-radius:18px;align-items:center;gap:14px;padding:16px;display:flex}.streak-hero-icon{background:#ffffff2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:26px;display:flex}.streak-hero-body{flex-direction:column;flex:1;display:flex}.streak-hero-kicker{letter-spacing:.12em;text-transform:uppercase;opacity:.9;font-size:11px;font-weight:800}.streak-hero-body b{font-size:20px;font-weight:900}.streak-hero-body span:last-child:not(.streak-hero-kicker){opacity:.92;font-size:12.5px;font-weight:700}.streak-hero-chip{color:var(--violet-700);white-space:nowrap;background:#fff;border-radius:999px;padding:5px 11px;font-size:13px;font-weight:900}.compact-streak{background:var(--surface-tint);border-radius:18px;align-items:center;gap:12px;padding:12px 14px;display:flex}.compact-streak-flame{background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.compact-streak-body{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.compact-streak-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.compact-streak-head b{font-size:15px;font-weight:900}.compact-streak-hint{color:var(--accent-strong);white-space:nowrap;font-size:11.5px;font-weight:800}.ru-review-card{border:1.5px solid var(--ru-outline);background:var(--accent-soft);border-radius:22px;flex-direction:column;gap:10px;padding:14px;display:flex}.ru-card-head{justify-content:space-between;align-items:center;display:flex}.ru-card-note{font-size:12px;font-weight:800}.ru-txns{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ru-txns.divided{gap:0}.ru-txns.divided .ru-txn+.ru-txn{border-top:1px solid var(--border)}.ru-txn{align-items:center;gap:10px;padding:4px 0;display:flex}.ru-txns.divided .ru-txn{padding:8px 0}.ru-txn-icon{background:var(--surface);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;display:flex}.ru-manual .ru-txn-icon{background:var(--surface-tint)}.ru-txn-body{flex-direction:column;flex:1;min-width:0;display:flex}.ru-txn-body b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;overflow:hidden}.ru-txn-body .small{font-size:12px}.ru-txn .money{white-space:nowrap;font-size:14px;font-weight:800}.ru-plan-card{background:var(--surface-tint);border-radius:22px;flex-direction:column;gap:10px;padding:14px;display:flex}.ru-rta-row{align-items:center;gap:10px;display:flex}.ru-rta-info{flex-direction:column;flex:1;display:flex}.ru-rta-label{font-weight:800}.ru-rta-amount{font-variant-numeric:tabular-nums;font-size:22px;font-weight:900}.ru-status-line{border-radius:12px;align-items:center;gap:8px;margin:0;padding:8px 10px;font-size:13px;font-weight:800;text-decoration:none;display:flex}.ru-status-line.warn{background:var(--warn-soft);color:var(--warn)}.ru-status-line.good{background:var(--good-soft);color:var(--good)}.ru-status-line.brand{background:var(--surface);color:var(--accent-strong)}button.ru-status-line.link{text-align:left;cursor:pointer;border:0;width:100%;font-family:inherit}button.ru-status-line.link:hover{box-shadow:0 0 0 2px var(--warn)}button.ru-status-line.link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ru-plan-row{flex-direction:column;gap:6px;display:flex}.ru-plan-row-head{font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-size:13px;font-weight:800;display:flex}.ru-plan-row .progress{background:var(--surface);display:block}.ru-plan-row .progress>i{background:var(--accent)}.ru-actions{flex-direction:column;gap:6px;display:flex}.child.focused,.classic-row.focused{background:var(--accent-soft);border-radius:var(--r-sm);box-shadow:inset 3px 0 0 var(--accent);transition:background .3s}@media (prefers-reduced-motion:reduce){.glance-syncing .spin{animation:none}.glance-tile,.child.focused,.classic-row.focused{transition:none}}@media (max-width:980px){.refresh-line,.glance,.glance-syncing{margin-left:0}}
