:root{--bg:#0b0b0c;--surface:#161618;--surface-2:#1f1f22;--border:#26262a;--track:#232327;--text:#f4f4f5;--muted:#8b8b93;--accent:#4ade80;--accent-ink:#052e14;--pos:#4ade80;--neg:#f87171;--c-fixed:#fbbf24;--c-inst:#f87171;--c-loose:#60a5fa;--c-var:#2dd4bf;--radius:20px;--tabbar-h:58px;--tabbar-pb:max(calc(var(--sab) - 6px), 10px);--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f5f5f4;--surface:#fff;--surface-2:#f0f0ef;--border:#e7e5e4;--track:#ececea;--text:#18181b;--muted:#71717a;--accent:#16a34a;--accent-ink:#fff;--pos:#15803d;--neg:#dc2626;--c-fixed:#f59e0b;--c-inst:#ef4444;--c-loose:#3b82f6;--c-var:#0d9488;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--bg:#f5f5f4;--surface:#fff;--surface-2:#f0f0ef;--border:#e7e5e4;--track:#ececea;--text:#18181b;--muted:#71717a;--accent:#16a34a;--accent-ink:#fff;--pos:#15803d;--neg:#dc2626;--c-fixed:#f59e0b;--c-inst:#ef4444;--c-loose:#3b82f6;--c-var:#0d9488;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-style=minimal]{--bg:#111;--surface:#1a1918;--surface-2:#242220;--border:#2c2a27;--track:#2a2825;--text:#f3eee3;--muted:#9c968a;--accent:#f3eee3;--accent-ink:#111;--pos:#a3b896;--neg:#e08a69;--c-fixed:#d98b62;--c-inst:#f3eee3;--c-loose:#8f7d5a;--c-var:#7f9a86}@media (prefers-color-scheme:light){:root:not([data-theme=dark])[data-style=minimal]{--bg:#f3eee3;--surface:#faf7f1;--surface-2:#ebe5d8;--border:#e1d9c9;--track:#e4ddce;--text:#111;--muted:#6f695e;--accent:#111;--accent-ink:#f3eee3;--pos:#4f6b45;--neg:#b4532a;--c-fixed:#c06a40;--c-inst:#111;--c-loose:#cdb88e;--c-var:#5f7a66}}:root[data-theme=light][data-style=minimal]{--bg:#f3eee3;--surface:#faf7f1;--surface-2:#ebe5d8;--border:#e1d9c9;--track:#e4ddce;--text:#111;--muted:#6f695e;--accent:#111;--accent-ink:#f3eee3;--pos:#4f6b45;--neg:#b4532a;--c-fixed:#c06a40;--c-inst:#111;--c-loose:#cdb88e;--c-var:#5f7a66}:root[data-style=oled]{--accent:#22e57a;--accent-ink:#001a0b}:root[data-style=oled],:root[data-style=oled][data-theme]{--bg:#000;--surface:#0c0c0d;--surface-2:#17171a;--border:#1f1f23;--track:#1c1c20;--text:#fff;--muted:#8e8e96;--pos:#22e57a;--neg:#ff4d5e;--c-fixed:#ffc21a;--c-inst:#ff4d6d;--c-loose:#3d9bff;--c-var:#00e0c6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}button{touch-action:manipulation;-webkit-user-select:none;user-select:none}html,body{background:var(--bg);color:var(--text);margin:0}html{background-color:var(--bg)}body{-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;overscroll-behavior-y:none;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.4}body.locked,body.locked .content{overflow:hidden}.center-text{text-align:center}html,body{height:100%;overflow:hidden}#root{height:100%}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input{font:inherit;color:inherit}h2,h3,h4,p{margin:0}h3{font-size:15px;font-weight:600}.muted{color:var(--muted)}.small{font-size:12.5px}.pos{color:var(--pos)}.neg{color:var(--neg)!important}.top-gap{margin-top:12px}.app{flex-direction:column;max-width:560px;margin:0 auto;display:flex;position:fixed;inset:0}.top{z-index:10;padding:calc(var(--sat) + 8px) calc(var(--sar) + 16px) 10px calc(var(--sal) + 16px);background:var(--bg);border-bottom:1px solid #0000;flex-direction:column;flex:none;align-items:center;gap:4px;transition:border-color .2s;display:flex;position:relative}.top.scrolled{border-bottom-color:var(--border)}.month-switch{background:var(--surface);border-radius:18px;grid-template-columns:44px 1fr 44px;align-items:center;width:100%;max-width:330px;height:54px;padding:0 5px;display:grid}.month-switch .icon-btn{border-radius:13px;width:44px;height:44px}.month{flex-direction:column;justify-content:center;align-items:center;height:100%;line-height:1.15;display:flex}.month-name{letter-spacing:-.01em;font-size:17px;font-weight:650}.month-sub{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.now-dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.today-link{color:var(--accent);font-weight:550}.sync{color:var(--muted);font-size:11.5px}.sync-error,.sync-unauthorized{color:var(--neg)}.sync-offline{color:var(--c-fixed)}.month-label{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.avatar{width:44px;height:44px;color:var(--text);background:var(--surface);border-radius:50%;flex:none;place-items:center;display:grid}@media (width<=959px){.top-row{align-items:center;width:100%;height:50px;display:flex;position:relative}.month-switch{--pill-ease:cubic-bezier(.32, .72, 0, 1);width:var(--cw,120px);max-width:none;height:46px;transition:width .45s var(--pill-ease), height .45s var(--pill-ease), grid-template-columns .45s var(--pill-ease), padding .45s var(--pill-ease), border-radius .45s var(--pill-ease);border-radius:23px;grid-template-columns:0 minmax(0,1fr) 0;padding:0;overflow:hidden}.month-switch.open{border-radius:18px;grid-template-columns:44px minmax(0,1fr) 44px;width:100%;height:50px;padding:0 3px}.month-switch .month{min-width:0}.month-switch .icon-btn{opacity:0;pointer-events:none;transition:opacity .2s, transform .35s var(--pill-ease);transform:scale(.6)}.month-switch.open .icon-btn{opacity:1;pointer-events:auto;transition-delay:80ms;transform:none}.month-switch .month-sub{opacity:0;white-space:nowrap;max-height:0;transition:max-height .4s var(--pill-ease), opacity .2s;overflow:hidden}.month-switch.open .month-sub{opacity:1;max-height:16px;transition-delay:0s,.1s}.pill-dot{transition:opacity .2s, transform .3s var(--pill-ease), margin-left .45s var(--pill-ease)}.month-switch.open .pill-dot{opacity:0;margin-left:-14px;transform:scale(0)}.avatar{transition:opacity .25s, transform .4s var(--pill-ease);position:absolute;top:3px;right:0}.top-row.open .avatar{opacity:0;pointer-events:none;transform:scale(.6)}}.top-bar{grid-template-columns:1fr auto 1fr;align-items:center;width:100%;height:54px;display:grid}.back-btn{height:44px;color:var(--accent);border-radius:13px;justify-self:start;align-items:center;gap:2px;margin-left:-6px;padding:0 10px 0 4px;font-size:15px;font-weight:550;display:inline-flex}.back-btn:active{background:var(--surface)}.top-title{font-size:17px;font-weight:650}.icon-btn{width:44px;height:44px;color:var(--muted);border-radius:14px;place-items:center;display:grid}.icon-btn:active,.icon-btn.active{background:var(--surface-2);color:var(--text)}.content{overscroll-behavior:contain;min-height:0;padding:4px calc(var(--sar) + 16px) 96px calc(var(--sal) + 16px);flex-direction:column;flex:1;gap:12px;display:flex;overflow-y:auto}.content>*,.page>*{flex-shrink:0}.page{display:contents}.content,.sheet{scrollbar-width:none;-ms-overflow-style:none}.content::-webkit-scrollbar{background:0 0;width:0;height:0;display:none}.sheet::-webkit-scrollbar{background:0 0;width:0;height:0;display:none}.hero{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:20px 8px 16px;display:flex}.hero.compact{padding-top:12px}.hero-value{letter-spacing:-.03em;font-size:40px;font-weight:700;line-height:1.1}.card{background:var(--surface);border-radius:var(--radius);text-align:left;width:100%;padding:16px;display:block}.card h3{margin-bottom:12px}.card-head{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.card-head h3{margin-bottom:8px}.link{color:var(--accent);font-size:13.5px;font-weight:550}.dot{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.rows{margin:0;padding:0;list-style:none}.rows li{justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.rows li+li{border-top:1px solid var(--border)}.rows.sub{margin-top:8px;font-size:13.5px}.row-name{align-items:center;gap:8px;display:inline-flex}.row-btn{width:100%;color:var(--text);justify-content:space-between;align-items:center;display:flex}.row-btn svg{color:var(--muted)}.badge{text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);color:var(--muted);border-radius:6px;margin-left:6px;padding:2px 6px;font-size:10.5px;font-weight:600}.block{display:block}.day-chip{background:var(--surface-2);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:14px;font-weight:650;display:grid}.select{position:relative}.select select{appearance:none;border:1px solid var(--border);background:var(--surface-2);width:100%;height:48px;color:var(--text);font:inherit;border-radius:14px;outline:none;padding:0 40px 0 14px;font-size:16px}.select select:focus{border-color:var(--accent)}.select:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);pointer-events:none;width:8px;height:8px;margin-top:-6px;position:absolute;top:50%;right:16px;transform:rotate(45deg)}.badge.pos{color:var(--pos);background:color-mix(in srgb, var(--pos) 14%, transparent)}.invest{color:var(--muted);align-items:center;gap:14px;display:flex}.invest-icon{background:color-mix(in srgb, var(--accent) 15%, transparent);width:30px;height:30px;color:var(--accent);border-radius:9px;flex:none;place-items:center;display:grid}.invest-text{flex-direction:column;flex:1;display:flex}.invest-text strong{color:var(--text);font-size:18px;font-weight:650}.link.center{align-self:center;padding:8px 16px}.empty{text-align:center;color:var(--muted);padding:24px 16px;font-size:14px}.panel{--tone:transparent;border-radius:var(--radius);background:radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--tone) 13%, transparent), transparent 55%), var(--surface);padding:18px 18px 14px;position:relative;overflow:hidden}.panel.flush{padding-bottom:4px}.panel-head{align-items:center;gap:10px;min-height:36px;display:flex}.panel-title{flex:1;font-size:15.5px;font-weight:600}.panel-aside{color:var(--muted);font-size:13px;font-weight:500}.icon-btn.sm{border-radius:12px;width:36px;height:36px;margin-right:-8px}.amount{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;margin:10px 0 14px;display:flex}.amount strong{letter-spacing:-.025em;font-size:30px;font-weight:700;line-height:1.1}.amount strong.xl{letter-spacing:-.03em;font-size:38px}.card-chip{--c:var(--muted);background:linear-gradient(135deg, var(--c), color-mix(in srgb, var(--c) 55%, #000));border-radius:5px;flex:none;width:30px;height:20px;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f}.card-chip:after{content:"";background:#ffffff8c;border-radius:1.5px;width:7px;height:6px;position:absolute;top:6px;left:5px}.card-chip.sm{border-radius:3px;width:18px;height:12px}.card-chip.sm:after{border-radius:1px;width:4px;height:4px;top:3.5px;left:3px}.card-chip.none{box-shadow:inset 0 0 0 1.5px var(--muted);background:0 0}.card-chip.none:after{display:none}.compbar{gap:3px;height:8px;margin-bottom:14px;display:flex}.compbar .seg{background:var(--c);border-radius:4px;min-width:6px}.seg.striped,.key.striped{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c) 60%, transparent);background:repeating-linear-gradient(-45deg, color-mix(in srgb, var(--c) 60%, transparent) 0 3px, transparent 3px 6px)!important}.stats-grid{--cols:3;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:12px;margin:0;display:grid}.stats-grid div{min-width:0}.stats-grid dt{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:12px;display:flex;overflow:hidden}.stats-grid dd{white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:14.5px;font-weight:600;overflow:hidden}.stats-grid{row-gap:14px}.key{--c:var(--muted);background:var(--c);border-radius:2px;flex:none;width:8px;height:8px;display:inline-block}.panel-toggle{border-top:1px solid var(--border);width:calc(100% + 36px);color:var(--muted);justify-content:space-between;align-items:center;margin:12px -18px -14px;padding:13px 18px;font-size:13.5px;font-weight:500;display:flex}.panel-toggle svg{transition:transform .2s}.panel-toggle.open svg{transform:rotate(180deg)}.panel-toggle.open{margin-bottom:0}.rowlist{margin:4px 0 0;padding:0;list-style:none}.rowlist>li+li{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent)}.rowlist .row{text-align:left;width:100%;color:var(--text);align-items:center;gap:12px;padding:11px 0;display:flex}.rowlist button.row:active{opacity:.6}.rowlist .row.dim .row-main,.rowlist .row.dim .row-value{opacity:.55}.row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-title{align-items:center;gap:6px;min-width:0;font-size:14.5px;font-weight:500;display:flex}.row-title>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:flex;overflow:hidden}.row-meta .ellipsis{text-overflow:ellipsis;min-width:0;overflow:hidden}.row-meta .pending-text{color:var(--c-loose)}.row-value{white-space:nowrap;flex-direction:column;align-items:flex-end;font-size:14.5px;font-weight:600;display:flex}.row-value .small{font-weight:400}.row-progress{background:var(--track);border-radius:2px;height:3px;margin-top:6px;overflow:hidden}.row-progress span{background:var(--c,var(--accent));border-radius:2px;height:100%;display:block}.day-chip{background:var(--surface-2);border-radius:11px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:650;line-height:1;display:flex}.day-chip small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:8.5px;font-weight:600}.day-chip.none{color:var(--muted);font-weight:500}.day-chip.soon{background:color-mix(in srgb, var(--c-loose) 16%, transparent);color:var(--c-loose)}.badge.tiny{margin-left:0;padding:1px 5px;font-size:9.5px}.section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:6px 4px -4px;font-size:12.5px;font-weight:600}.btn{border-radius:16px;justify-content:center;align-items:center;gap:8px;width:100%;height:50px;font-size:15.5px;font-weight:600;display:flex}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.primary:disabled{opacity:.4}.btn.ghost{background:var(--surface-2)}.content>.btn.ghost{background:var(--surface)}.btn.danger{color:var(--neg);background:color-mix(in srgb, var(--neg) 10%, transparent)}.btn:active:not(:disabled){transform:scale(.98)}.btn-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.stack{flex-direction:column;gap:10px;display:flex}.fab{z-index:15;right:max(20px,50vw - 260px);bottom:calc(var(--tabbar-h) + var(--tabbar-pb) + 6px + 14px);background:var(--accent);width:56px;height:56px;color:var(--accent-ink);border-radius:18px;place-items:center;display:grid;position:fixed;box-shadow:0 8px 24px #00000059}.fab:active{transform:scale(.94)}.tabbar{z-index:20;padding:6px calc(var(--sar) + 14px) var(--tabbar-pb) calc(var(--sal) + 14px);background:var(--bg);flex:none;position:relative}.tabbar-inner{grid-template-columns:repeat(var(--n,4), 1fr);height:var(--tabbar-h);background:var(--surface);box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 60%, transparent);border-radius:22px;gap:4px;padding:5px;display:grid}.tabbar button{color:var(--muted);letter-spacing:.01em;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10.5px;font-weight:550;transition:background-color .2s,color .2s;display:flex}.tabbar button.active{color:var(--text);background:color-mix(in srgb, var(--accent) 12%, var(--surface-2))}.tabbar button.active svg{color:var(--accent)}.tabbar button:active{transform:scale(.96)}.sheet-backdrop{z-index:50;background:#00000080;justify-content:center;align-items:flex-end;animation:.2s fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:560px;padding:0 16px calc(var(--sab) + 20px);margin-bottom:max(var(--kb,0px), var(--keypad-h,0px));max-height:calc(100dvh - var(--sat) - max(var(--kb,0px), var(--keypad-h,0px)) - 8px);overscroll-behavior:contain;border-radius:24px 24px 0 0;transition:margin-bottom .2s;animation:.28s cubic-bezier(.2,.9,.3,1) up;overflow-y:auto}.sheet-top{z-index:2;background:var(--surface);border-bottom:1px solid #0000;margin:0 -16px 6px;padding:8px 16px 2px;transition:border-color .2s;position:sticky;top:0}.sheet-top.stuck{border-bottom-color:var(--border)}.sheet-grip{background:var(--border);border-radius:3px;width:36px;height:5px;margin:0 auto 4px}.sheet-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-head h2{min-width:0;font-size:18px;font-weight:650}.sheet-body{flex-direction:column;gap:14px;display:flex}@keyframes up{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--muted);font-size:13px;font-weight:550}.field-hint{color:var(--muted);font-size:12px;display:block}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.input,.money-input,.stepper{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;outline:none;width:100%;height:48px;padding:0 14px;font-size:16px}.input:focus,.money-input:focus-within,.stepper:focus-within{border-color:var(--accent)}.money-input{align-items:center;gap:8px;display:flex}.money-input input{background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%;font-size:16px;font-weight:600}.stepper{grid-template-columns:40px 1fr 40px;padding:0;display:grid;overflow:hidden}.stepper button{color:var(--muted);font-size:20px}.stepper button:active{background:var(--border)}.stepper input{text-align:center;background:0 0;border:0;outline:none;min-width:0;font-size:16px;font-weight:600}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;align-items:center;gap:7px;height:38px;padding:0 14px;font-size:14px;display:inline-flex}.chip.active{border-color:var(--text);background:var(--bg);font-weight:600}.toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;display:flex}.toggle-label{font-weight:500;display:block}.toggle input{opacity:0;pointer-events:none;position:absolute}.switch{background:var(--border);border-radius:14px;flex:none;width:46px;height:28px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.toggle input:checked+.switch{background:var(--accent)}.toggle input:checked+.switch:after{transform:translate(18px)}.income-item{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding-bottom:12px;display:flex}.income-row{grid-template-columns:1fr 1fr 36px;align-items:center;gap:8px;display:grid}.income-row .icon-btn{width:36px}.colors{flex-wrap:wrap;gap:10px;display:flex}.swatch{outline-offset:2px;border-radius:50%;outline:2px solid #0000;width:34px;height:34px}.swatch.active{outline-color:var(--text)}.empty-month{padding:64px 12px}.empty-compact{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}@media (width<=360px){.chart-row{flex-direction:column;align-items:stretch}.hero-value{font-size:34px}}.hero-panel{padding-top:16px}.amount strong.invest-value{font-size:26px}.ending-text{margin-top:4px}.panel.link-panel{padding:0 18px}.settings-link{margin:0}.settings-link .row{padding:14px 0}.settings-icon{background:var(--surface-2);width:34px;height:34px;color:var(--muted);border-radius:10px;flex:none;place-items:center;display:grid}.chevron{color:var(--muted);place-items:center;display:grid}:root{--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.3, 1.3, .5, 1)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@keyframes fade-in{0%{opacity:0}}@keyframes from-right{0%{opacity:0;transform:translate(18px)}}@keyframes from-left{0%{opacity:0;transform:translate(-18px)}}@keyframes grow-x{0%{transform:scaleX(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}}@keyframes value-in{0%{opacity:0;transform:translateY(4px)}}@keyframes down-out{to{transform:translateY(100%)}}@keyframes backdrop-out{to{background-color:#0000}}.page>*{animation:rise .42s var(--ease-out) both}.page.slide-next>*{animation-name:from-right}.page.slide-prev>*{animation-name:from-left}.page>:nth-child(2){animation-delay:40ms}.page>:nth-child(3){animation-delay:80ms}.page>:nth-child(4){animation-delay:.12s}.page>:nth-child(5){animation-delay:.16s}.page>:nth-child(6){animation-delay:.2s}.page>:nth-child(n+7){animation-delay:.24s}.compbar .seg{transform-origin:0;animation:grow-x .6s var(--ease-out) both;animation-delay:calc(.12s + var(--d,0s))}.row-progress span{transform-origin:0;animation:grow-x .7s var(--ease-out) .18s both}.value-in{animation:value-in .35s var(--ease-out) both}.rowlist.expand>li{animation:rise .32s var(--ease-out) both}.rowlist.expand>li:nth-child(2){animation-delay:30ms}.rowlist.expand>li:nth-child(3){animation-delay:60ms}.rowlist.expand>li:nth-child(4){animation-delay:90ms}.rowlist.expand>li:nth-child(n+5){animation-delay:.12s}.row,.panel button,.chip,.month-switch .icon-btn,.back-btn{transition:transform .15s var(--ease-out), opacity .15s, background-color .2s}.rowlist button.row:active{opacity:.7;transform:scale(.985)}.chip:active{transform:scale(.96)}.month:active .month-name{opacity:.6}.fab{animation:pop-in .35s var(--ease-spring) .15s both;transition:transform .15s var(--ease-out)}.tabbar-inner{position:relative}.tab-indicator{z-index:0;width:calc((100% - 10px - (var(--n,4) - 1) * 4px) / var(--n,4));background:color-mix(in srgb, var(--accent) 12%, var(--surface-2));transform:translateX(calc(var(--tab,0) * (100% + 4px)));transition:transform .38s var(--ease-spring), opacity .2s;border-radius:17px;position:absolute;top:5px;bottom:5px;left:5px}.tab-indicator.hidden{opacity:0}.tabbar button{z-index:1;position:relative}.tabbar button.active{background:0 0}.tabbar button svg{transition:transform .3s var(--ease-spring), color .2s}.tabbar button.active svg{transform:translateY(-1px)scale(1.06)}.sheet-backdrop.closing{animation:.22s forwards backdrop-out}.sheet-backdrop.closing .sheet{animation:.22s cubic-bezier(.4,0,1,1) forwards down-out}.sheet-body>*{animation:rise .3s var(--ease-out) both}.sheet-body>:nth-child(2){animation-delay:25ms}.sheet-body>:nth-child(3){animation-delay:50ms}.sheet-body>:nth-child(4){animation-delay:75ms}.sheet-body>:nth-child(n+5){animation-delay:.1s}.sheet-backdrop.closing .sheet-body>*{animation:none}.sync{animation:.3s both fade-in}.month-name,.month-sub{transition:opacity .15s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}.segmented{--n:3;grid-template-columns:repeat(var(--n), 1fr);background:var(--surface-2);border-radius:14px;margin-top:12px;padding:4px;display:grid;position:relative}.segmented-indicator{width:calc((100% - 8px) / var(--n));background:var(--surface);transform:translateX(calc(var(--i,0) * 100%));transition:transform .32s var(--ease-spring);border-radius:10px;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 3px #0000002e}.segmented button{z-index:1;height:40px;color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:550;transition:color .2s;display:inline-flex;position:relative}.segmented button.active{color:var(--text)}.toggle input:checked+.switch:after{background:var(--switch-knob-on,#fff)}.accent-picker{justify-content:space-between;gap:8px;margin-top:12px;display:flex}.accent-swatch{aspect-ratio:1;background:var(--sw);max-width:46px;transition:transform .2s var(--ease-spring);border-radius:50%;flex:1;position:relative;box-shadow:inset 0 0 0 1px #7f7f7f40}.accent-swatch:after{content:"";border:2px solid var(--sw);opacity:0;transition:opacity .2s, transform .25s var(--ease-spring);border-radius:50%;position:absolute;inset:-5px;transform:scale(.85)}.accent-swatch.active:after{opacity:1;transform:scale(1)}.accent-swatch:active{transform:scale(.92)}.accent-swatch svg{color:var(--ink);opacity:0;transition:opacity .2s, transform .25s var(--ease-spring);margin:auto;position:absolute;inset:0;transform:scale(.5)}.accent-swatch.active svg{opacity:1;transform:scale(1)}.field-label.spaced{margin-top:18px;display:block}.detail{flex-direction:column;gap:4px;display:flex}.detail-meta{color:var(--muted);align-items:center;gap:6px;margin-top:-4px;font-size:13px;display:flex}.detail .amount{margin:8px 0 10px}.detail-block{border-top:1px solid var(--border);padding:14px 0}.detail-row{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.detail-row strong{font-size:15px;font-weight:600}.pills{--c:var(--accent);flex-wrap:wrap;gap:4px;display:flex}.pill{background:var(--track);max-width:40px;height:10px;animation:pop-in .35s var(--ease-spring) both;border-radius:5px;flex:1 0 14px}.pill.paid{background:var(--c)}.pill.now{background:var(--c);box-shadow:0 0 0 2px var(--surface), 0 0 0 4px color-mix(in srgb, var(--c) 45%, transparent)}.row-progress.big{border-radius:4px;height:8px}.timeline{border-top:1px solid var(--border);margin:0 0 6px}.timeline .row{padding:12px 0}.timeline .row-title{font-size:15.5px}.timeline .row-value{font-size:13px;font-weight:450}.lock{z-index:100;padding:calc(var(--sat) + 24px) 24px calc(var(--sab) + 24px);background:radial-gradient(80% 50% at 100% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%), var(--bg);place-items:center;animation:.3s both fade-in;display:grid;position:fixed;inset:0;overflow-y:auto}.lock-box{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:340px;display:flex}.lock-box>*{animation:rise .45s var(--ease-out) both}.lock-box>:nth-child(2){animation-delay:40ms}.lock-box>:nth-child(3){animation-delay:80ms}.lock-box>:nth-child(n+4){animation-delay:.12s}.lock-icon{border-radius:22px;margin-bottom:18px;box-shadow:0 10px 30px #00000040}.lock-box h1{letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:700}.lock-box>p.muted{margin-bottom:26px;font-size:15px}.lock-field{width:100%;position:relative}.lock-field .eye-btn{width:44px;height:44px;color:var(--muted);border-radius:12px;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.lock-field .eye-btn:active{background:var(--surface);color:var(--text)}.lock-field .eye-btn:disabled{opacity:.35}.lock-field.is-locked .input{opacity:.55}.lock-wait{min-height:20px;color:var(--c-fixed);background:color-mix(in srgb, var(--c-fixed) 12%, transparent);border-radius:12px;justify-content:center;align-items:center;gap:8px;margin:10px 0 12px;padding:10px 14px;font-size:13px;display:flex}.lock-wait strong{font-variant-numeric:tabular-nums}.lock-field .input{text-align:center;letter-spacing:.04em;height:52px;padding:0 52px;font-size:17px}.lock-field.has-error .input{border-color:var(--neg)}.lock-field[data-shake]{animation:.4s cubic-bezier(.36,.07,.19,.97) both shake}.lock-error{min-height:20px;color:var(--neg);margin:8px 0 10px;font-size:13px}.lock-box .btn{width:100%}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-8px)}40%,60%{transform:translate(8px)}}.spinner{border:2.5px solid color-mix(in srgb, var(--accent-ink) 30%, transparent);border-top-color:var(--accent-ink);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.back-btn.inline{align-self:flex-start;height:36px;margin:-6px 0 -4px -8px}.manager-list{margin:0}.manager-list .row{padding:12px 0}[data-style=minimal] .panel{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border)}[data-style=minimal] .month-switch,[data-style=minimal] .tabbar-inner{box-shadow:inset 0 0 0 1px var(--border)}[data-style=minimal] .lock{background:var(--bg)}[data-style=minimal] .card-chip,[data-style=minimal] .dot,[data-style=minimal] .chip .dot,[data-style=minimal] .swatch,[data-style=minimal] [data-bank],[data-style=minimal] .row-progress span,[data-style=minimal] .pill{filter:saturate(.72)}[data-style=minimal] .invest-icon{background:var(--surface-2);color:var(--text)}[data-style=minimal] .day-chip.soon{background:var(--text);color:var(--bg)}[data-style=minimal] .day-chip.soon small{color:inherit;opacity:.7}[data-style=minimal] .row-meta .pending-text{color:var(--text);font-weight:550}[data-style=minimal] .tab-indicator{background:var(--surface-2)}[data-style=minimal] .lock-wait{color:var(--text);background:var(--surface-2)}.field-label.spaced.first{margin-top:2px}.style-dot{border-radius:50%;flex:none;width:14px;height:14px;box-shadow:inset 0 0 0 1px #7f7f7f59}.style-dot.default{background:conic-gradient(#60a5fa 0 33%, #fbbf24 0 55%, #4ade80 0)}.style-dot.minimal{background:linear-gradient(90deg,#f3eee3 50%,#111 50%)}.accent-picker{flex-wrap:nowrap;gap:6px}.money-input{cursor:text;-webkit-user-select:none;user-select:none}.money-input.active{border-color:var(--accent)}.money-value{font-variant-numeric:tabular-nums;white-space:nowrap;flex:1;min-width:0;font-size:17px;font-weight:600;position:relative}.money-value.placeholder{color:var(--muted);font-weight:500}.caret{vertical-align:-.15em;background:var(--accent);border-radius:1px;width:2px;height:1.1em;margin-left:2px;animation:1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.keypad{z-index:70;max-width:560px;padding:10px calc(var(--sar) + 10px) calc(var(--sab) + 8px) calc(var(--sal) + 10px);background:var(--surface-2);box-shadow:0 -8px 30px #0000002e, inset 0 1px 0 var(--border);animation:keypad-in .26s var(--ease-out) both;border-radius:22px 22px 0 0;margin:0 auto;position:fixed;bottom:0;left:0;right:0}@keyframes keypad-in{0%{transform:translateY(100%)}}.keypad-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.key-btn{background:var(--surface);height:52px;color:var(--text);font-variant-numeric:tabular-nums;box-shadow:0 1px 0 color-mix(in srgb, var(--border) 80%, transparent);touch-action:manipulation;border-radius:14px;place-items:center;font-size:24px;font-weight:500;transition:transform 80ms,background-color .12s;display:grid}.key-btn.back{box-shadow:none;color:var(--muted);background:0 0}.key-btn.back:active{background:var(--surface);color:var(--text)}[data-style=oled] .panel{background:radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--tone) 22%, transparent), transparent 55%), var(--surface);box-shadow:inset 0 0 0 1px var(--border)}[data-style=oled] .month-switch,[data-style=oled] .tabbar-inner{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border)}[data-style=oled] .sheet{background:var(--surface);box-shadow:inset 0 1px 0 var(--border)}[data-style=oled] .keypad{background:var(--surface)}[data-style=oled] .key-btn{background:var(--surface-2)}[data-style=oled] .sheet-backdrop{background:#000000b3}[data-style=oled] .card-chip,[data-style=oled] [data-bank],[data-style=oled] .row-progress span,[data-style=oled] .pill,[data-style=oled] .dot{filter:saturate(1.25)brightness(1.08)}[data-style=oled] .tab-indicator{background:color-mix(in srgb, var(--accent) 18%, var(--surface-2))}.segmented.disabled{opacity:.45}.segmented.disabled button{cursor:not-allowed}.style-dot.oled{background:radial-gradient(circle at 50% 50%, #000 45%, transparent 47%), conic-gradient(#22e57a 0 33%, #ff4d6d 0 66%, #3d9bff 0)}.card-chip.pix{color:#32bcad;background:#32bcad29;place-items:center;display:grid;box-shadow:inset 0 0 0 1.5px #32bcadb3}.card-chip.pix:after{display:none}.card-chip.pix svg{width:62%;height:62%}.chip .card-chip{margin-right:1px}.loose-row .row-title span{font-style:normal}.accordion{background:var(--surface-2);border-radius:14px;margin-top:18px;overflow:hidden}.accordion-head{text-align:left;width:100%;color:var(--text);align-items:center;gap:12px;padding:12px 14px;display:flex}.accordion-head .acc-dot{background:var(--sw);border-radius:50%;flex:none;width:26px;height:26px;box-shadow:inset 0 0 0 1px #7f7f7f40}.accordion-head .acc-text{flex-direction:column;flex:1;line-height:1.2;display:flex}.accordion-head .acc-text small{color:var(--muted);font-size:12px}.accordion-head svg{color:var(--muted);transition:transform .25s var(--ease-out)}.accordion.open .accordion-head svg{transform:rotate(180deg)}.accordion-body{transition:grid-template-rows .3s var(--ease-out);grid-template-rows:0fr;display:grid}.accordion.open .accordion-body{grid-template-rows:1fr}.accordion-body>div{overflow:hidden}.accordion-inner{flex-direction:column;gap:12px;padding:2px 14px 14px;display:flex}.acc-group-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:11.5px;font-weight:600;display:block}.acc-grid{grid-template-columns:repeat(6,1fr);gap:10px 8px;display:grid}.acc-grid .accent-swatch{width:100%;max-width:none}.acc-grid .accent-swatch:after{inset:-4px}.reminders .rowlist{margin-top:2px}.reminders-empty{padding:4px 0 12px}.row.reminder{gap:12px;padding:8px 0}.reminder-text{text-align:left;color:var(--text);padding:4px 0}.check{color:#0000;width:26px;height:26px;box-shadow:inset 0 0 0 2px var(--border);transition:background-color .2s, box-shadow .2s, color .2s, transform .15s var(--ease-spring);border-radius:50%;flex:none;place-items:center;display:grid}.check:active{transform:scale(.88)}.check.on{background:var(--accent);color:var(--accent-ink);box-shadow:none;animation:pop-in .3s var(--ease-spring)}.is-done .reminder-text .row-title span{color:var(--muted);text-decoration:line-through}.row-meta.due.late{color:var(--neg);font-weight:550}.row-meta.due.soon{color:var(--accent);font-weight:550}.reminders-toggle{justify-content:space-between;align-items:center;padding:0 18px;display:flex}.reminders-toggle>button:first-child{color:var(--muted);align-items:center;gap:6px;padding:13px 0;font-size:13.5px;font-weight:500;display:inline-flex}.reminders-toggle>button:first-child svg{transition:transform .2s}.reminders-toggle.open>button:first-child svg{transform:rotate(180deg)}.reminders-toggle .link{padding:13px 0}.date-row{align-items:center;gap:8px;display:flex}.date-row .input{min-width:0;color-scheme:inherit;flex:1}html,body{overscroll-behavior:none}.sheet-backdrop{touch-action:none;overscroll-behavior:none}.sheet{touch-action:pan-y;overscroll-behavior:contain}.keypad{touch-action:none;overscroll-behavior:none}.key-btn{touch-action:none}body.locked .content{touch-action:none;overflow:hidden}@keyframes key-flash{0%{background-color:color-mix(in srgb, var(--accent) 30%, var(--surface));transform:scale(.93)}35%{transform:scale(.97)}to{background-color:var(--surface);transform:scale(1)}}@keyframes key-flash-back{0%{background-color:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text);transform:scale(.93)}to{background-color:#0000;transform:scale(1)}}.key-btn.flash{animation:key-flash .32s var(--ease-out)}.key-btn.back.flash{animation-name:key-flash-back}[data-style=oled] .key-btn.flash{animation-name:key-flash-oled}@keyframes key-flash-oled{0%{background-color:color-mix(in srgb, var(--accent) 30%, var(--surface-2));transform:scale(.93)}to{background-color:var(--surface-2);transform:scale(1)}}.key-btn:active{background:var(--surface);transform:none}[data-style=oled] .key-btn:active{background:var(--surface-2)}.sort{position:relative}.sort-btn{background:var(--surface-2);height:32px;color:var(--text);transition:background-color .2s, transform .15s var(--ease-out);border-radius:10px;align-items:center;gap:6px;padding:0 10px 0 9px;font-size:13px;font-weight:550;display:inline-flex}.sort-btn:active,.sort-btn.open{background:color-mix(in srgb, var(--accent) 16%, var(--surface-2))}.sort-btn svg:first-child{color:var(--muted)}.sort-dir{color:var(--accent);transition:transform .25s var(--ease-spring);place-items:center;display:inline-grid;transform:rotate(180deg)}.sort-dir.desc{transform:rotate(0)}.sort-menu{z-index:30;background:var(--surface);width:230px;box-shadow:0 12px 40px #00000059, inset 0 0 0 1px var(--border);transform-origin:100% 0;animation:menu-in .2s var(--ease-out) both;border-radius:16px;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}@keyframes menu-in{0%{opacity:0;transform:scale(.92)translateY(-4px)}}.sort-menu-title,.sort-menu-foot{color:var(--muted);padding:6px 10px;font-size:11.5px}.sort-menu-title{text-transform:uppercase;letter-spacing:.05em;font-weight:600}.sort-menu button{text-align:left;color:var(--text);border-radius:11px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.sort-menu button:active{background:var(--surface-2)}.sort-menu button.active{background:color-mix(in srgb, var(--accent) 12%, var(--surface-2))}.sort-opt{flex-direction:column;font-size:14.5px;font-weight:550;line-height:1.2;display:flex}.sort-opt small{color:var(--muted);font-size:12px;font-weight:400}.rowlist .group-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:8px;padding:14px 0 6px;font-size:12px;font-weight:600;display:flex;border-top:none!important}.rowlist .group-label span:nth-child(2){flex:1}.rowlist .group-label+li{border-top:none}.panel.flush .panel-head+.rowlist{margin-top:0}.desktop-only{display:none!important}.fab-label{display:none}@media (width>=960px){.desktop-only{display:revert!important}.mobile-only{display:none!important}.app{grid-template:"nav top""nav main"minmax(0,1fr)/248px minmax(0,1fr);max-width:none;margin:0;display:grid}.tabbar{border-right:1px solid var(--border);background:var(--bg);flex-direction:column;grid-area:nav;gap:6px;height:auto;padding:24px 16px 20px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:10px;padding:4px 10px 22px;font-size:17px;font-weight:700;display:flex!important}.brand img{border-radius:9px}.tabbar-inner{background:0 0;border-radius:0;grid-template-columns:1fr;grid-auto-rows:46px;gap:4px;height:auto;padding:0;box-shadow:none!important}.tabbar button{letter-spacing:0;border-radius:12px;flex-direction:row;justify-content:flex-start;gap:12px;padding:0 12px;font-size:14.5px;font-weight:550}.tabbar button:hover:not(.active){background:var(--surface);color:var(--text)}.tabbar button.active svg{transform:none}.tab-indicator{width:100%;height:46px;transform:translateY(calc(var(--tab,0) * (100% + 4px)));border-radius:12px;top:0;bottom:auto;left:0}.side-foot{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:auto;padding-top:12px;display:flex!important}.side-settings{height:44px;color:var(--muted);border-radius:12px;align-items:center;gap:12px;padding:0 12px;font-size:14.5px;font-weight:550;transition:background-color .2s,color .2s;display:flex}.side-settings:hover{background:var(--surface);color:var(--text)}.side-settings.active{background:color-mix(in srgb, var(--accent) 12%, var(--surface-2));color:var(--text)}.side-settings.active svg{color:var(--accent)}.side-sync{color:var(--muted);align-items:center;gap:8px;padding:0 12px;font-size:12px;display:flex!important}.side-sync i{background:var(--pos);border-radius:50%;flex:none;width:7px;height:7px}.side-sync.sync-syncing i{background:var(--muted);animation:1s step-end infinite caret}.side-sync.sync-offline i{background:var(--c-fixed)}.side-sync.sync-error i{background:var(--neg)}.top{flex-direction:row;grid-area:top;justify-content:space-between;justify-self:center;align-items:center;gap:24px;width:100%;max-width:1240px;padding:22px 40px 16px}.top .sync,.pill-dot,.pill-sync{display:none}.top-row{display:contents}.page-title{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700;display:block!important}.month-switch{width:300px;height:52px}.month-switch .icon-btn:hover{background:var(--surface-2);color:var(--text)}.content{scrollbar-width:thin;scrollbar-color:var(--border) transparent;grid-area:main;gap:16px;padding:8px 40px 48px}.content::-webkit-scrollbar{width:10px;display:block}.content::-webkit-scrollbar-thumb{background:var(--border);border:3px solid var(--bg);border-radius:10px}.page{width:100%;max-width:1160px;margin:0 auto;display:block}.page>*{margin-bottom:16px}.hero.compact{padding-top:4px}.fab{border-radius:16px;gap:8px;width:auto;height:52px;padding:0 20px 0 16px;font-size:15px;font-weight:650;display:inline-flex;bottom:32px;right:40px}.fab-label{display:inline}.fab:hover{filter:brightness(1.06);transform:translateY(-1px)}.sheet-backdrop{align-items:center;padding:32px}.sheet{max-width:520px;max-height:min(86vh,820px);animation:dialog-in .24s var(--ease-out);box-shadow:0 30px 80px #00000073, inset 0 0 0 1px var(--border);border-radius:24px;padding-bottom:24px;margin-bottom:0!important}.sheet-grip{visibility:hidden;height:2px}.sheet-backdrop.closing .sheet{animation:.18s forwards dialog-out}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}@keyframes dialog-out{to{opacity:0;transform:translateY(8px)scale(.97)}}}@media (width>=1180px){.page{column-count:2;column-gap:16px}.page>*{break-inside:avoid;width:100%}.page>.hero,.page>.empty-month,.page>.section-label{column-span:all}.page.page-fixed,.page.page-installments{column-count:auto;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;column-gap:16px;display:grid}.page.page-fixed>*,.page.page-installments>*{grid-column:2}.page.page-fixed>:first-child,.page.page-installments>:first-child{grid-area:1/1/span 4;position:sticky;top:0}.page.page-installments>.section-label{margin:8px 4px}}@media (hover:hover) and (pointer:fine){.keypad{display:none!important}.rowlist button.row{border-radius:12px;width:calc(100% + 20px);margin:0 -10px;padding-left:10px;padding-right:10px}.rowlist button.row:hover{background:var(--surface-2)}.rowlist button.row:active{opacity:.8;transform:none}.btn:hover:not(:disabled){filter:brightness(1.06)}.btn.ghost:hover:not(:disabled){background:var(--border);filter:none}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.chip:hover{border-color:var(--muted)}.link:hover,.back-btn:hover{text-underline-offset:3px;text-decoration:underline}.panel-toggle:hover,.reminders-toggle>button:hover{color:var(--text)}.accent-swatch:hover{transform:scale(1.08)}.money-input:hover,.input:hover,.select select:hover{border-color:color-mix(in srgb, var(--muted) 50%, var(--border))}.sort-btn:hover{background:color-mix(in srgb, var(--accent) 10%, var(--surface-2))}.check:hover{box-shadow:inset 0 0 0 2px var(--muted)}.money-input{cursor:text}}.brand-dot{background:var(--pos);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--pos) 18%, transparent);border-radius:50%;flex:none;margin-left:2px}.brand-dot.sync-syncing{background:var(--muted);box-shadow:none;animation:1s step-end infinite caret}.brand-dot.sync-offline{background:var(--c-fixed);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-fixed) 18%, transparent)}.brand-dot.sync-error{background:var(--neg);box-shadow:0 0 0 3px color-mix(in srgb, var(--neg) 18%, transparent)}@media (width>=960px){.content{scroll-behavior:smooth}.side-foot{gap:0}}.sum-col{display:contents}.sum-col>*{flex-shrink:0}.sum-hero{order:1}.sum-costs{order:2}.sum-upcoming{order:4}.sum-cards{order:5}.sum-income{order:6}.sum-ending{order:7}.sum-invest{order:8}.sum-settings{order:9}.page-summary .sum-col>*{animation:rise .42s var(--ease-out) backwards}.page-summary .sum-hero{animation-delay:0s}.page-summary .sum-costs{animation-delay:40ms}.page-summary .sum-cards{animation-delay:80ms}.page-summary .sum-upcoming{animation-delay:.12s}.page-summary .sum-income{animation-delay:.16s}.page-summary .sum-ending,.page-summary .sum-invest,.page-summary .sum-settings{animation-delay:.2s}.page-summary.slide-next .sum-col>*{animation-name:from-right}.page-summary.slide-prev .sum-col>*{animation-name:from-left}@media (width>=960px){.page.page-summary{flex-direction:column;gap:16px;display:flex}.page.page-summary>*,.page.page-summary .sum-col>*{margin-bottom:0}}@media (width>=1180px){.page.page-summary{column-count:auto;grid-template-columns:minmax(0,1.75fr) minmax(320px,1fr);align-items:start;gap:16px;display:grid}.page-summary .sum-col{flex-direction:column;gap:16px;min-width:0;display:flex}.page-summary .sum-col>*{order:0;width:100%}.page-summary .sum-hero{padding:22px 24px 20px}.page-summary .sum-hero .amount strong.xl{font-size:46px}.page-summary .sum-hero .stats-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.page-summary .sum-hero .compbar{height:10px}}.sum-invest .amount{margin-bottom:12px}.invest-list{margin:0 0 -6px}.invest-list .row{gap:10px;padding:9px 0}.invest-list .row-value{font-size:14px}.invest-empty{padding:2px 0 6px}.invest-item{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding-bottom:12px;display:flex}.invest-item-row{grid-template-columns:1fr 40px;align-items:center;gap:8px;display:grid}.invest-total{justify-content:space-between;align-items:baseline;padding:4px 2px;display:flex}.invest-total strong{font-size:20px;font-weight:700}@media (width<=959px){.sum-ending.no-ending{display:none}}.ending-names{color:var(--text);font-weight:600}.insights{flex-direction:column;gap:12px;margin-top:14px}.spark{grid-template-columns:repeat(6,1fr);align-items:end;gap:10px;height:96px;display:grid}.spark-col{grid-template-rows:auto 1fr auto;place-items:end center;gap:6px;height:100%;display:grid}.spark-val{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.spark-bar{width:100%;max-width:46px;height:var(--h);background:color-mix(in srgb, var(--c-inst) 38%, var(--track));transform-origin:bottom;animation:grow-y .6s var(--ease-out) both;animation-delay:calc(.15s + var(--d,0s));border-radius:8px 8px 4px 4px;align-self:end}.spark-col.now .spark-bar{background:var(--c-inst)}.spark-col.now .spark-val,.spark-col.now .spark-label{color:var(--text);font-weight:600}.spark-label{color:var(--muted);text-transform:capitalize;font-size:12px}@keyframes grow-y{0%{transform:scaleY(0)}}.insight-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.insight-stats div{background:var(--surface-2);border-radius:14px;min-width:0;padding:12px 14px}.insight-stats dt{color:var(--muted);font-size:12px}.insight-stats dd{white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:15px;font-weight:650;overflow:hidden}.insight-stats dd .small{font-size:12px;font-weight:600}.insight-title{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:11.5px;font-weight:600;display:block}.reliefs{margin:0}.reliefs .row{gap:12px;padding:8px 0}.relief-month{text-transform:capitalize;flex:none;width:40px;font-size:13px;font-weight:650}.reliefs .row-meta{font-size:13px}.insight-foot{background:var(--surface-2);border-radius:14px;justify-content:space-between;gap:12px;padding:12px 14px;font-size:13px;display:flex}.insight-foot strong{font-weight:650}@media (width>=960px){.insights.desktop-only{display:flex!important}}.insight-line{color:var(--muted);flex-wrap:wrap;gap:6px 8px;margin:0;font-size:13px;display:flex}.insight-line strong{color:var(--text);font-weight:600}.spark-bar{max-width:36px}@media (width>=960px){.page.is-empty{justify-content:center;column-count:auto!important;display:flex!important}.page.is-empty>.empty-month{grid-column:auto;width:100%;max-width:760px;padding:40px 0 24px;position:static}.empty-panel{text-align:center;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border);animation:rise .42s var(--ease-out) both;border-radius:28px;flex-direction:column;align-items:center;padding:40px 40px 28px}.empty-panel.desktop-only{display:flex!important}.empty-badge{width:60px;height:60px;color:var(--accent);background:color-mix(in srgb, var(--accent) 13%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:18px;place-items:center;margin-bottom:18px;display:grid}.empty-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.empty-title{letter-spacing:-.02em;margin:6px 0 8px;font-size:30px;font-weight:650}.empty-lead{max-width:460px;color:var(--muted);margin:0;font-size:15px;line-height:1.5}.empty-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin-top:28px;display:grid}.empty-tile{text-align:left;background:var(--surface-2);border-radius:16px;flex-direction:column;gap:4px;padding:14px 14px 12px;transition:box-shadow .2s,background .2s;display:flex;box-shadow:inset 0 0 0 1px #0000}.empty-tile.on{background:color-mix(in srgb, var(--accent) 9%, var(--surface-2));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent)}.empty-tile-label{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;overflow:hidden}.empty-tile strong{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:18px;font-weight:650}.empty-tile-sub{color:var(--muted);font-size:12px}.empty-note{color:var(--muted);margin:12px 0 0;font-size:12.5px}.empty-actions{justify-content:center;gap:10px;margin-top:26px;display:flex}.empty-actions .btn{align-items:center;gap:8px;width:auto;padding-inline:22px;display:inline-flex}.empty-keys{color:var(--muted);align-items:center;gap:4px;margin:18px 0 0;font-size:12px;display:flex}.empty-keys kbd{font:inherit;background:var(--surface-2);min-width:22px;height:22px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text);border-radius:6px;place-items:center;font-size:11px;display:inline-grid}.empty-keys kbd+kbd{margin-right:4px}}@media (width>=960px) and (width<=1179px){.empty-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.top-action{justify-self:end;margin-right:-6px}.panel.list-group{padding-top:10px;padding-bottom:10px}.list-head{align-items:center;gap:6px;min-height:40px;display:flex}.list-head-btn{text-align:left;min-width:0;color:var(--text);flex:1;align-items:center;gap:8px;padding:6px 0;display:flex}.list-head-btn .panel-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.list-chevron{color:var(--muted);transition:transform .45s var(--list-ease);place-items:center;display:grid;transform:rotate(-90deg)}.list-group.open .list-chevron{transform:none}.list-clear{padding:8px 0 8px 8px;animation:.25s both fade-in}.list-done .panel-title{color:var(--muted);transition:color .3s}.list-head-btn .panel-aside{transition:opacity .2s}.list-group{--list-ease:cubic-bezier(.32, .72, 0, 1)}.list-body{transition:grid-template-rows .45s var(--list-ease);grid-template-rows:0fr;display:grid}.list-group.open .list-body{grid-template-rows:1fr}.list-body-inner{opacity:0;min-height:0;transition:opacity .2s ease, transform .45s var(--list-ease), visibility 0s .45s;visibility:hidden;margin-bottom:-6px;overflow:hidden;transform:translateY(-6px)}.list-group.open .list-body-inner{opacity:1;visibility:visible;transition:opacity .3s ease 60ms, transform .45s var(--list-ease), visibility 0s;transform:none}.list-empty{margin:0;padding:0}.list-empty-wrap{padding:0}.list-empty:before{content:"";height:6px;display:block}.list-empty:after{content:"";height:12px;display:block}.list-item{--list-ease:cubic-bezier(.32, .72, 0, 1);transition:grid-template-rows .38s var(--list-ease) .3s, opacity .3s ease .22s, border-color .2s .3s;grid-template-rows:1fr;display:grid}.list-item-inner{min-height:0;overflow:hidden}.list-item .row{transition:transform .4s var(--list-ease) .22s}.list-item.leaving{opacity:0;grid-template-rows:0fr;border-top-color:#0000!important}.list-item.leaving .row{transform:translate(10px)}.list-item .row-title span{transition:background-size .28s var(--ease-out), color .28s ease;background:linear-gradient(currentColor,currentColor) 0 55%/0 1px no-repeat}.list-item.leaving .row-title span{color:var(--muted);background-size:100% 1px}.list-item.is-done:not(.leaving) .row-title span{color:var(--muted);background-size:100% 1px;text-decoration:none}.list-item.leaving.is-done .row-title span{color:var(--text);background-size:0 1px}.list-item.is-done .reminder-text .row-title span{text-decoration:none}.list-item.arrived,.list-item.entering{animation:list-grow .42s var(--list-ease) backwards}.list-item.arrived .row,.list-item.entering .row{animation:list-arrive .42s var(--list-ease) backwards}@keyframes list-grow{0%{opacity:0;grid-template-rows:0fr}40%{opacity:.4}}@keyframes list-arrive{0%{transform:translateY(-6px)}}.list-item.removing{opacity:0;transition:grid-template-rows .38s var(--list-ease), opacity .22s ease, border-color .2s;grid-template-rows:0fr;border-top-color:#0000!important}.list-empty-wrap{grid-template-rows:1fr;transition:grid-template-rows .42s cubic-bezier(.32,.72,0,1),opacity .25s .1s;display:grid}.list-empty-wrap>.list-empty{min-height:0;overflow:hidden}.list-empty-wrap.hidden{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.32,.72,0,1),opacity .15s}.list-item .row-value{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:450;transition:opacity .3s}.list-item.is-done .row-value{opacity:.6}.quick-add{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);align-items:center;gap:12px;display:flex}.rowlist+.quick-add{margin-top:0}.quick-add-icon{width:26px;height:26px;color:var(--muted);box-shadow:inset 0 0 0 1.5px var(--border);border-radius:50%;flex:none;place-items:center;display:grid}.quick-add-input{min-width:0;height:46px;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;font-size:16px}.quick-add-input::placeholder{color:var(--muted)}.quick-add-btn{flex:none;padding:10px 0 10px 8px}.list-group .rowlist:first-child{margin-top:2px}.muted.small.center{text-align:center}@media (width>=960px){.page.page-lists{column-count:auto;max-width:720px}}.list-groups{flex-direction:column;gap:12px;display:flex}.list-sort{position:relative}.list-sort.entering{animation:.45s cubic-bezier(.32,.72,0,1) both list-arrive}.list-sort.dragging{z-index:5;transition:none!important}.list-sort.dragging>.panel{box-shadow:0 18px 40px #00000059, inset 0 0 0 1px var(--border);transition:transform .2s var(--ease-out), box-shadow .2s;transform:scale(1.02)}.list-groups.sorting{-webkit-user-select:none;user-select:none}.list-head-btn{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.list-sort>.panel{transition:transform .2s var(--ease-out), box-shadow .2s}.list-sort.armed>.panel{box-shadow:0 10px 30px #00000047, inset 0 0 0 1px var(--border);transform:scale(1.015)}.group-menu{width:200px;top:50px;right:10px}.group-menu button svg{color:var(--muted)}.group-menu .danger-item,.group-menu .danger-item svg{color:var(--neg)}.list-new-group{color:var(--muted);border-radius:10px;align-self:center;align-items:center;gap:6px;margin:-2px 0;padding:6px 12px;font-size:13.5px;font-weight:500;display:inline-flex}.list-new-group:active{background:var(--surface)}@media (hover:hover) and (pointer:fine){.list-new-group:hover{color:var(--text)}.group-menu button:hover{background:var(--surface-2)}}@media (width>=960px){.page-lists .list-groups{gap:16px}.lists-view>.list-new-group{margin:-4px auto 0;display:flex}}@media (width<=959px){.sum-hero{order:var(--o-hero,1)}.sum-costs{order:var(--o-costs,2)}.sum-upcoming{order:var(--o-upcoming,4)}.sum-cards{order:var(--o-cards,5)}.sum-income{order:var(--o-income,6)}.sum-ending{order:var(--o-ending,7)}.sum-invest{order:var(--o-invest,8)}.page-summary .sum-col>*{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.page-summary .sum-col>.panel{transition:transform .2s var(--ease-out), box-shadow .25s ease}.page-summary .sum-col>.pressing{transition:transform .82s cubic-bezier(.3,0,.4,1);transform:scale(.975)}.page-summary .sum-col>.sort-dragging{z-index:20;box-shadow:0 22px 50px #0006, inset 0 0 0 1px var(--border);position:relative}}body.sorting{-webkit-user-select:none;user-select:none}.notify-dot{background:var(--neg);width:10px;height:10px;box-shadow:0 0 0 2.5px var(--bg);animation:pop-in .35s var(--ease-spring) both;border-radius:50%;position:absolute;top:2px;right:2px}.side-icon{place-items:center;display:inline-grid;position:relative}.side-icon .notify-dot{width:8px;height:8px;box-shadow:0 0 0 2px var(--bg);top:-3px;right:-4px}.lists-tabs{margin-top:0}.lists-tabs button{height:36px}.tab-dot{background:var(--neg);width:7px;height:7px;animation:pop-in .35s var(--ease-spring) both;border-radius:50%}.lists-view{flex-direction:column;gap:12px;display:flex}.lists-view.view-next{animation:.38s cubic-bezier(.32,.72,0,1) backwards from-right}.lists-view.view-prev{animation:.38s cubic-bezier(.32,.72,0,1) backwards from-left}@media (width>=960px){.page-lists>.lists-tabs{max-width:320px;margin-bottom:16px}.lists-view{gap:16px}.lists-view>*{margin-bottom:0!important}}@media (width<=959px){.chat-btn{width:44px;height:44px;color:var(--accent);background:var(--surface);transition:opacity .25s, transform .4s var(--pill-ease,ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:3px;right:52px}.top-row.open .chat-btn{opacity:0;pointer-events:none;transform:scale(.6)}}.content:has(>.page-chat){padding-bottom:0}.page-chat{--chat-ease:cubic-bezier(.32, .72, 0, 1)}.chat-thread{flex-direction:column;flex:1 0 auto;gap:10px;padding:4px 0 12px;display:flex}.chat-thread.is-empty{justify-content:center}.chat-welcome{text-align:center;animation:rise .45s var(--ease-out) both;flex-direction:column;align-items:center;gap:8px;padding:24px 8px;display:flex}.chat-welcome h2{letter-spacing:-.01em;margin:6px 0 0;font-size:20px;font-weight:650}.chat-welcome p{max-width:300px;margin:0;font-size:14px;line-height:1.45}.chat-welcome-icon{width:56px;height:56px;color:var(--accent);background:color-mix(in srgb, var(--accent) 13%, transparent);border-radius:18px;place-items:center;display:grid}.chat-msg{max-width:88%;animation:chat-in .32s var(--chat-ease) both;font-size:15px;line-height:1.5}@keyframes chat-in{0%{opacity:0;transform:translateY(8px)}}.chat-msg p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.chat-md{flex-direction:column;gap:8px;display:flex}.chat-md ul,.chat-md ol{flex-direction:column;gap:3px;margin:0;padding-left:20px;display:flex}.chat-md strong{font-weight:650}.chat-md code{background:var(--surface-2);border-radius:6px;padding:1px 5px;font-size:13px}.chat-md .chat-h{font-weight:650}.chat-caret{background:var(--accent);vertical-align:-2px;border-radius:2px;width:7px;height:15px;margin-left:2px;animation:1s step-end infinite caret;display:inline-block}.chat-md>p:last-of-type .chat-caret{margin-left:3px}.chat-typing{gap:4px;padding:6px 2px;display:inline-flex}.chat-typing i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite chat-dot}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-clear{color:var(--muted);align-self:center;padding:4px 10px;font-size:13px}@media (width>=960px){.page.page-chat{flex-direction:column;max-width:760px;min-height:100%;display:flex}.page-chat>*{margin-bottom:0}.chat-msg{max-width:80%}}.chat-suggestions{grid-template-columns:1fr 1fr;gap:8px;width:100%;max-width:420px;margin-top:16px;display:grid}.chat-suggestion{background:var(--surface);text-align:left;min-height:84px;color:var(--text);box-shadow:inset 0 0 0 1px var(--border);transition:transform .15s var(--ease-out), background .2s;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;padding:12px;font-size:13.5px;line-height:1.35;display:flex}.chat-suggestion svg{color:var(--accent)}.chat-suggestion:active{transform:scale(.97)}.chat-load-error{color:var(--neg);margin:4px 0 0;font-size:13px}.chat-loading{flex:1;place-items:center;display:grid}.chat-tool{color:var(--muted);animation:chat-in .32s var(--chat-ease) both;align-self:flex-start;align-items:center;gap:7px;padding:2px 4px;font-size:12.5px;display:inline-flex}.chat-tool-icon{width:18px;height:18px;color:var(--pos);background:color-mix(in srgb, var(--pos) 14%, transparent);border-radius:50%;place-items:center;display:grid}.chat-switch{color:var(--text);background:color-mix(in srgb, var(--accent) 10%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 30%, transparent);border-radius:999px;align-self:center;align-items:center;gap:7px;padding:7px 12px;font-size:12.5px;animation:.5s cubic-bezier(.3,1.3,.5,1) both chat-switch-in;display:inline-flex}.chat-switch svg{color:var(--accent)}.chat-switch b{font-weight:650}@keyframes chat-switch-in{0%{opacity:0;transform:scale(.85)}}.chat-msg.advisor{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent);background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.chat-badge{letter-spacing:.02em;color:var(--accent);align-items:center;gap:5px;margin-bottom:6px;font-size:11.5px;font-weight:600;display:inline-flex}.chat-msg.typing{padding:8px 14px}.chat-proposal{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border);animation:chat-in .38s var(--chat-ease) both;border-radius:20px;align-self:stretch;padding:14px}.chat-proposal.open{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 45%, var(--border)), 0 10px 30px #0000001f}.chat-proposal.closed{padding:10px 14px}.chat-proposal-head{align-items:center;gap:10px;display:flex}.chat-proposal-icon{width:32px;height:32px;color:var(--accent);background:color-mix(in srgb, var(--accent) 13%, transparent);border-radius:10px;flex:none;place-items:center;display:grid}.chat-proposal.closed .chat-proposal-icon{width:26px;height:26px;color:var(--muted);background:var(--surface-2);border-radius:8px}.chat-proposal-title{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.chat-proposal-title strong{overflow-wrap:anywhere;font-size:14.5px;font-weight:600}.chat-proposal.closed .chat-proposal-title strong{font-size:13.5px;font-weight:500}.chat-proposal-kicker{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11.5px;font-weight:600}.chat-proposal-status{background:var(--surface-2);border-radius:999px;flex:none;padding:4px 9px;font-size:12px;font-weight:600}.chat-proposal-status.pos{color:var(--pos);background:color-mix(in srgb, var(--pos) 13%, transparent)}.chat-proposal-status.neg{color:var(--neg);background:color-mix(in srgb, var(--neg) 12%, transparent)}.chat-proposal-status.muted{color:var(--muted)}.chat-ops{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.chat-op{background:var(--surface-2);border-radius:14px;gap:10px;padding:10px;display:flex}.chat-op-icon{border-radius:8px;flex:none;place-items:center;width:24px;height:24px;display:grid}.chat-op.plus .chat-op-icon{color:var(--pos);background:color-mix(in srgb, var(--pos) 15%, transparent)}.chat-op.edit .chat-op-icon{color:var(--c-fixed);background:color-mix(in srgb, var(--c-fixed) 16%, transparent)}.chat-op.trash .chat-op-icon{color:var(--neg);background:color-mix(in srgb, var(--neg) 14%, transparent)}.chat-op-body{flex-direction:column;gap:2px;min-width:0;display:flex}.chat-op-title{overflow-wrap:anywhere;font-size:14px;font-weight:550}.chat-op-line{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.chat-op-error{color:var(--neg);font-size:12.5px}.chat-op.has-error{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--neg) 35%, transparent)}.chat-proposal-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.chat-proposal-actions .btn{justify-content:center;align-items:center;gap:6px;height:44px;margin:0;display:inline-flex}@media (hover:hover) and (pointer:fine){.chat-suggestion:hover{background:var(--surface-2)}}.chat-msg.user{background:var(--accent);max-width:82%;color:var(--accent-ink);border-radius:22px 22px 6px;align-self:flex-end;padding:9px 15px;font-size:15px}.chat-msg.assistant{align-self:stretch;max-width:100%;padding:2px;font-size:15.5px;line-height:1.55}.chat-msg.assistant.advisor{background:color-mix(in srgb, var(--accent) 6%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent);border-radius:20px;padding:12px 14px}.chat-msg.error{max-width:90%;color:var(--neg);background:color-mix(in srgb, var(--neg) 10%, var(--surface));border-radius:18px;align-self:flex-start;padding:10px 14px}.chat-msg.user+.chat-msg.assistant,.chat-msg.user+.chat-tool,.chat-msg.user+.chat-switch{margin-top:4px}.chat-thread{gap:12px}.chat-welcome{gap:10px;padding:16px 4px 8px}.chat-welcome-icon{width:64px;height:64px;color:var(--accent-ink);background:linear-gradient(140deg, color-mix(in srgb, var(--accent) 85%, white), var(--accent) 55%, color-mix(in srgb, var(--accent) 70%, black));box-shadow:0 12px 34px color-mix(in srgb, var(--accent) 35%, transparent);border-radius:22px;margin-bottom:4px;position:relative}.chat-welcome-icon:after{content:"";border:1.5px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:28px;animation:2.6s ease-out infinite chat-ring;position:absolute;inset:-8px}@keyframes chat-ring{0%{opacity:.9;transform:scale(.92)}70%,to{opacity:0;transform:scale(1.12)}}.chat-welcome h2{letter-spacing:-.02em;font-size:22px;font-weight:700}.chat-welcome p{max-width:320px}.chat-suggestion{animation:rise .45s var(--ease-out) both}.chat-suggestion:nth-child(2){animation-delay:50ms}.chat-suggestion:nth-child(3){animation-delay:.1s}.chat-suggestion:nth-child(4){animation-delay:.15s}.chat-composer{z-index:5;background:linear-gradient(to bottom, color-mix(in srgb, var(--bg) 0%, transparent), var(--bg) 22px);margin:0 -16px;padding:10px 12px 12px;position:sticky;bottom:0}.chat-field{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border), 0 6px 24px #00000024;border-radius:26px;align-items:flex-end;gap:6px;padding:5px 5px 5px 16px;transition:box-shadow .25s,background .25s;display:flex}.chat-field:focus-within{box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 65%, var(--border)), 0 0 0 4px color-mix(in srgb, var(--accent) 14%, transparent), 0 8px 28px #00000029}.chat-input{resize:none;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;max-height:132px;padding:8px 0;font-size:16px;line-height:1.4}.chat-input::placeholder{color:var(--muted)}.chat-send{background:var(--surface-2);width:38px;height:38px;color:var(--muted);border-radius:50%;flex:none;place-items:center;transition:background .2s,color .2s,transform .25s cubic-bezier(.3,1.4,.5,1);display:grid}.chat-composer.has-text .chat-send:not(.stop){background:var(--accent);color:var(--accent-ink);transform:scale(1.06)}.chat-send:active:not(:disabled){transform:scale(.9)!important}.chat-send:disabled{cursor:default}.chat-send.stop{background:var(--text);color:var(--bg);animation:pop-in .3s var(--ease-spring) both}.chat-stop{background:currentColor;border-radius:3px;width:12px;height:12px}.chat-screen{--chat-ease:cubic-bezier(.32, .72, 0, 1);z-index:70;background:var(--bg);height:100%;padding-bottom:var(--kb,0px);box-sizing:border-box;animation:chat-screen-up .5s var(--chat-ease) both;will-change:transform;flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0}.chat-screen.closing{pointer-events:none;animation:.34s cubic-bezier(.4,0,.9,.6) forwards chat-screen-down}@keyframes chat-screen-up{0%{transform:translateY(100%)}}@keyframes chat-screen-down{to{transform:translateY(100%)}}.chat-screen-top{padding:calc(var(--sat) + 6px) calc(var(--sar) + 12px) 8px calc(var(--sal) + 12px);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);flex:none;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;display:grid}.chat-screen-btn{width:40px;height:40px;color:var(--text);background:var(--surface);transition:transform .15s var(--ease-out), background .2s;border-radius:50%;place-items:center;display:grid}.chat-screen-btn:active{background:var(--surface-2);transform:scale(.9)}.chat-screen-btn:last-child{color:var(--muted);justify-self:end}.chat-screen-title{flex-direction:column;align-items:center;gap:1px;min-width:0;display:flex}.chat-screen-name{letter-spacing:-.01em;align-items:center;gap:6px;font-size:16px;font-weight:650;display:inline-flex}.chat-screen-name svg{color:var(--accent)}.chat-screen-sub{color:var(--muted);align-items:center;gap:5px;font-size:11.5px;animation:.25s both fade-in;display:inline-flex}.chat-screen-sub.live{color:var(--accent)}.chat-screen-sub i{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite chat-pulse}@keyframes chat-pulse{50%{opacity:.3;transform:scale(.7)}}.chat-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:12px calc(var(--sar) + 16px) 0 calc(var(--sal) + 16px);scrollbar-width:none;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-scroll::-webkit-scrollbar{display:none}.chat-in-screen{flex-direction:column;flex:1 0 auto;display:flex}.chat-in-screen .chat-thread{animation:.4s .15s both fade-in}.chat-screen .chat-composer{padding-bottom:calc(var(--sab) + 8px)}.chat-screen.kb .chat-composer{padding-bottom:8px}@media (width>=960px){.chat-composer{margin:0;padding:12px 0 24px}}.chat-md p,.chat-md ul,.chat-md ol,.chat-md blockquote,.chat-md h1,.chat-md h2,.chat-md h3,.chat-md h4{margin:0}.chat-md h1,.chat-md h2,.chat-md h3,.chat-md h4{font-size:15.5px;font-weight:650}.chat-md li>p{display:inline}.chat-md a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.chat-md blockquote{border-left:3px solid var(--border);color:var(--muted);padding-left:12px}.chat-md hr{background:var(--border);border:0;height:1px;margin:4px 0}.chat-md>.chat-caret{margin-top:-6px}.chat-table{box-shadow:inset 0 0 0 1px var(--border);border-radius:12px;margin:0 -2px;overflow-x:auto}.chat-table table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13.5px}.chat-table th,.chat-table td{text-align:left;white-space:nowrap;border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);padding:8px 10px}.chat-table th{color:var(--muted);font-size:12px;font-weight:600}.chat-table tr:last-child td{border-bottom:0}body.chat-open .sheet-backdrop{z-index:90}.chat-menu{justify-self:end;position:relative}.chat-screen-menu{justify-self:end;display:flex}.chat-screen-btn.active{background:var(--surface-2)}.chat-menu-pop{z-index:80;width:210px;top:calc(100% + 8px);right:0}.chat-menu-pop button svg{color:var(--muted)}.chat-menu-pop .danger-item,.chat-menu-pop .danger-item svg{color:var(--neg)}.chat-menu-pop button:disabled{opacity:.4}.chat-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:0 0 4px;display:flex}.chat-toolbar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:14px;font-weight:600;overflow:hidden}.chat-new{justify-content:center;align-items:center;gap:8px;display:inline-flex}.chat-loading.small{padding:24px 0}.chat-history{margin-top:4px}.chat-history li{animation:rise .3s var(--ease-out) both}.chat-history-open{text-align:left;color:var(--text);padding:4px 0}.chat-history .current .row-title{color:var(--accent)}.chat-history-now{color:var(--accent);margin-left:4px;font-weight:600}.chat-history-del{color:var(--muted);margin-right:-6px}.chat-modes{flex-direction:column;gap:8px;margin-bottom:4px;display:flex}.chat-mode{text-align:left;color:var(--text);background:var(--surface-2);border-radius:16px;align-items:flex-start;gap:12px;padding:14px;transition:box-shadow .2s,background .2s;display:flex;box-shadow:inset 0 0 0 1px #0000}.chat-mode.active{background:color-mix(in srgb, var(--accent) 8%, var(--surface-2));box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 55%, transparent)}.chat-mode-radio{width:20px;height:20px;box-shadow:inset 0 0 0 2px var(--border);border-radius:50%;flex:none;margin-top:1px;transition:box-shadow .2s}.chat-mode.active .chat-mode-radio{box-shadow:inset 0 0 0 6px var(--accent)}.chat-mode-text{flex-direction:column;gap:3px;display:flex}.chat-mode-text strong{font-size:15px;font-weight:600}.chat-mode-text span{color:var(--muted);font-size:13px;line-height:1.4}@media (hover:hover) and (pointer:fine){.chat-menu-pop button:hover:not(:disabled){background:var(--surface-2)}}.bills-tabs{margin-top:0}.bills-tabs button{height:36px}.tab-dot.variable{background:var(--c-var)}.bills-view{flex-direction:column;gap:12px;display:flex}.bills-view.view-next{animation:.38s cubic-bezier(.32,.72,0,1) backwards from-right}.bills-view.view-prev{animation:.38s cubic-bezier(.32,.72,0,1) backwards from-left}.row-value.estimated{color:var(--muted);font-style:italic;font-weight:550}.row-value.estimated .small{font-size:11px;font-style:normal}.variable-row.is-paid .row-title span{color:var(--muted)}.variable-row.is-paid .day-chip{color:var(--pos);background:color-mix(in srgb, var(--pos) 14%, transparent)}.variable-status.soon{color:var(--c-var);font-weight:550}.variable-status.late{color:var(--neg);font-weight:550}.variable-status.ok{color:var(--pos)}.variable-empty{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:28px 22px 22px;display:flex}.variable-empty h3{margin:4px 0 0;font-size:18px;font-weight:650}.variable-empty p{max-width:320px;margin:0;font-size:14px;line-height:1.5}.variable-empty .btn{justify-content:center;align-items:center;gap:8px;width:auto;margin-top:6px;padding-inline:22px;display:inline-flex}.variable-empty-icon{width:52px;height:52px;color:var(--c-var);background:color-mix(in srgb, var(--c-var) 15%, transparent);border-radius:16px;place-items:center;display:grid}.variable-sheet-meta{align-items:center;gap:6px;margin:-4px 0 4px;display:flex}.variable-history{flex-direction:column;gap:6px;margin:2px 0 6px;display:flex}.variable-bars{align-items:flex-end;gap:8px;height:76px;display:flex}.variable-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:5px;height:100%;display:flex}.variable-bar-fill{width:100%;max-width:34px;height:var(--h);background:color-mix(in srgb, var(--c-var) 45%, var(--surface-2));transform-origin:bottom;animation:grow-y .5s var(--ease-out) both;border-radius:7px}.variable-bar.now .variable-bar-fill{background:var(--c-var)}.variable-bar.est .variable-bar-fill{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--c-var) 40%, transparent) 0 4px, transparent 4px 8px);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--c-var) 55%, transparent)}.variable-bar small{color:var(--muted);font-size:10.5px}.variable-bar.now small{color:var(--text);font-weight:600}.variable-diff{margin:0;font-size:12.5px;font-weight:550}.variable-diff.up{color:var(--neg)}.variable-diff.down{color:var(--pos)}.btn-row .btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}@media (width>=960px){.page-fixed>.bills-tabs{max-width:320px;margin-bottom:16px}.bills-view{gap:16px}.bills-view>*{margin-bottom:0!important}}@media (width>=1180px){.page.page-fixed:has(>.bills-view){display:block}.bills-view,.page.page-variable{column-count:auto;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:16px;display:grid}.bills-view>*,.page.page-variable>*{grid-column:2}.bills-view>:first-child,.page.page-variable>:first-child{grid-area:1/1/span 4;position:sticky;top:0}.bills-view>.variable-empty,.page.page-variable>.variable-empty{grid-area:auto/1/auto/-1;justify-self:center;max-width:560px;position:static}}.lock-over{z-index:120}.auth-fields{flex-direction:column;gap:10px;width:100%;display:flex}.auth-fields .input{text-align:left;height:52px;padding:0 16px;font-size:17px}.auth-fields.has-error .input{border-color:var(--neg)}.auth-fields.is-locked .input{opacity:.55}.auth-fields[data-shake]{animation:.4s cubic-bezier(.36,.07,.19,.97) both shake}.auth-password{width:100%;position:relative}.auth-password .input{width:100%;padding-right:52px}.auth-password .eye-btn{width:44px;height:44px;color:var(--muted);border-radius:12px;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.auth-password .eye-btn:active{background:var(--surface);color:var(--text)}.auth-password .eye-btn:disabled{opacity:.35}.auth-rules{text-align:left;flex-direction:column;gap:6px;width:100%;margin:12px 0 0;padding:0;list-style:none;display:flex}.auth-rules li{color:var(--muted);align-items:center;gap:8px;font-size:13px;transition:color .2s;display:flex}.auth-rules li svg{box-shadow:inset 0 0 0 1.5px var(--border);color:#0000;border-radius:50%;padding:2px;transition:all .2s}.auth-rules li.ok{color:var(--pos)}.auth-rules li.ok svg{background:var(--pos);color:var(--bg);box-shadow:none}.auth-rules li.bad{color:var(--neg)}.lock-cancel{margin-top:10px}.lock-foot{max-width:280px;margin:22px 0 0;line-height:1.45}.spinner.big{border-color:color-mix(in srgb, var(--accent) 25%, transparent);border-top-color:var(--accent);width:34px;height:34px;margin:18px 0}.account-me{align-items:center;gap:12px;margin-top:12px;display:flex}.account-avatar{width:44px;height:44px;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:50%;flex:none;place-items:center;display:grid}.account-avatar.small{width:34px;height:34px;color:var(--muted);background:var(--surface-2)}.account-avatar.small.admin{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}.account-avatar.small.pending{color:var(--c-fixed);background:color-mix(in srgb, var(--c-fixed) 14%, transparent)}.account-info{flex-direction:column;gap:2px;min-width:0;display:flex}.account-info strong{font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.account-list .row .link{flex:none}.account-card .stack .btn,.admin-hero .btn{justify-content:center;align-items:center;gap:8px;display:inline-flex}.admin-hero{grid-template-columns:auto 1fr;align-items:center;gap:6px 14px;display:grid}.admin-hero h3{margin:0}.admin-hero p{margin:2px 0 0;line-height:1.45}.admin-hero .btn{grid-column:1/-1;margin-top:10px}.admin-hero-icon{width:46px;height:46px;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:14px;align-self:start;place-items:center;display:grid}.invite-link{cursor:pointer;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--border);word-break:break-all;border-radius:14px;align-items:center;gap:10px;padding:14px;font-size:13px;display:flex}.invite-link svg{color:var(--pos);flex:none}.field-error{color:var(--neg);margin:0;font-size:13px}.admin-done{color:var(--pos);background:color-mix(in srgb, var(--pos) 12%, transparent);border-radius:12px;align-items:center;gap:8px;margin:0 0 4px;padding:10px 12px;font-size:14px;display:flex}a.btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.onboarding{z-index:110;padding:calc(var(--sat) + 14px) calc(var(--sar) + 20px) calc(var(--sab) + 16px) calc(var(--sal) + 20px);background:radial-gradient(80% 45% at 100% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%), var(--bg);flex-direction:column;transition:background .4s;animation:.3s both fade-in;display:flex;position:fixed;inset:0;overflow-y:auto}.onboarding.leaving{animation:.32s forwards ob-out}@keyframes ob-out{to{opacity:0;transform:scale(1.02)}}.ob-top{justify-content:space-between;align-items:center;min-height:40px;display:flex}.ob-dots{gap:6px;display:inline-flex}.ob-dots i{background:var(--border);width:8px;height:8px;transition:width .35s var(--ease-out), background .3s;border-radius:4px}.ob-dots i.on{background:var(--accent);width:22px}.ob-body{flex:1;width:100%;max-width:460px;margin:0 auto;padding-top:10px;animation:.4s cubic-bezier(.32,.72,0,1) both from-right}.ob-body h1{letter-spacing:-.02em;margin:6px 0;font-size:26px;font-weight:700}.ob-body>p.muted{margin:0 0 18px;font-size:15px;line-height:1.45}.ob-styles{flex-direction:column;gap:10px;display:flex}.ob-style{text-align:left;color:var(--text);background:var(--surface);box-shadow:inset 0 0 0 1px var(--border);transition:box-shadow .25s, transform .15s var(--ease-out);border-radius:20px;align-items:center;gap:14px;padding:10px 14px 10px 10px;display:flex}.ob-style:active{transform:scale(.985)}.ob-style.active{box-shadow:inset 0 0 0 2px var(--accent)}.ob-style-text{flex-direction:column;flex:1;gap:3px;display:flex}.ob-style-text strong{font-size:16px;font-weight:650}.ob-style-text span{color:var(--muted);font-size:13px}.ob-check{color:#0000;width:24px;height:24px;box-shadow:inset 0 0 0 2px var(--border);border-radius:50%;place-items:center;transition:all .2s;display:grid}.ob-style.active .ob-check{background:var(--accent);color:var(--accent-ink);box-shadow:none;animation:pop-in .3s var(--ease-spring)}.ob-preview{background:var(--p-bg);width:74px;height:92px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--p-text) 12%, transparent);border-radius:14px;flex-direction:column;flex:none;gap:5px;padding:7px;display:flex}.ob-p-card{background:var(--p-surface);border-radius:7px;flex-direction:column;gap:4px;padding:6px;display:flex}.ob-p-card.small{gap:3px}.ob-p-line{background:var(--p-muted);border-radius:2px;height:3px}.ob-p-line.w40{width:40%}.ob-p-line.w60{width:60%}.ob-p-line.w80{width:80%}.ob-p-big{background:var(--p-text);border-radius:3px;width:70%;height:7px}.ob-p-bar{gap:2px;height:4px;display:flex}.ob-p-bar i{background:var(--p-accent);opacity:.9;border-radius:2px}.ob-p-bar i:nth-child(2){opacity:.55}.ob-p-bar i:nth-child(3){opacity:.3}.ob-p-tab{background:var(--p-surface);border-radius:7px;justify-content:space-around;margin-top:auto;padding:4px;display:flex}.ob-p-tab i{background:var(--p-muted);border-radius:3px;width:9px;height:5px}.ob-p-tab i.on{background:var(--p-accent)}.ob-sample{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border);border-radius:18px;align-items:center;gap:10px;margin-bottom:16px;padding:14px;display:flex}.ob-sample-btn{background:var(--accent);color:var(--accent-ink);border-radius:12px;padding:9px 16px;font-size:14px;font-weight:600;transition:background .3s,color .3s}.ob-sample-chip{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:10px;align-items:center;gap:5px;padding:7px 10px;font-size:13px;font-weight:550;transition:all .3s;display:inline-flex}.ob-sample-bar{background:var(--track,var(--surface-2));border-radius:4px;flex:1;height:8px;overflow:hidden}.ob-sample-bar i{background:var(--accent);border-radius:4px;width:62%;height:100%;transition:background .3s;display:block}.ob-colors{flex-direction:column;gap:14px;display:flex}.ob-actions{width:100%;max-width:460px;margin:18px auto 0}.ob-actions .btn{width:100%;height:52px}.ob-actions .btn-row{margin:0}
