:root{--bg:#f3f2ee;--surface:#fff;--ink:#15171c;--ink-2:#50545e;--line:#e3e1da;--control:#e9e7e1;--paid:#1b6a55;--warn:#a53c14;--warn-soft:#fbece5;--match:#2457c5;--dock:#15171c;--dock-ink:#f3f2ee;--dock-ink-2:#b7bac2;--dock-raise:#262a31;--dock-warn:#ff9e7a;--dock-paid:#7ed3b6;--seg-0:#2b3850;--seg-1:#4f6285;--seg-2:#7c8eac;--seg-3:#a9b6ca;--seg-4:#6c7a64;--seg-5:#9aa58e;--r:14px;--dock-h:92px;--dock-gap:10px;--accent:var(--paid);--ring:1.5px;--fig-h:calc(.75rem * 1.4 + 1.5rem * 1.2);--lta-h:calc(var(--fig-h) + .75rem * 1.4);--press:color-mix(in srgb, var(--ink) 8%, transparent);--ease:cubic-bezier(.16, 1, .3, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#101216;--surface:#191c21;--ink:#edebe5;--ink-2:#a6aab3;--line:#2a2e35;--control:#24282f;--paid:#5cc3a1;--warn:#ff9e7a;--warn-soft:#3a2118;--match:#8fb0ff;--dock:#23272e;--dock-raise:#30353d;--seg-0:#c9d3e4;--seg-1:#9eadc7;--seg-2:#7486a6;--seg-3:#52627f;--seg-4:#a9b39c;--seg-5:#79856b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#101216;--surface:#191c21;--ink:#edebe5;--ink-2:#a6aab3;--line:#2a2e35;--control:#24282f;--paid:#5cc3a1;--warn:#ff9e7a;--warn-soft:#3a2118;--match:#8fb0ff;--dock:#23272e;--dock-raise:#30353d;--seg-0:#c9d3e4;--seg-1:#9eadc7;--seg-2:#7486a6;--seg-3:#52627f;--seg-4:#a9b39c;--seg-5:#79856b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg)}body{margin:0}html{overflow-x:clip}html,.dock-panel,.sheet{scrollbar-width:none}html::-webkit-scrollbar{display:none}.dock-panel::-webkit-scrollbar{display:none}.sheet::-webkit-scrollbar{display:none}h1,h2,h3,p,ul,dl,dd,figure{margin:0;padding:0}ul{list-style:none}button,input{font:inherit;color:inherit}button{cursor:pointer}::selection{background:color-mix(in srgb, var(--paid) 30%, transparent)}:focus-visible{outline:var(--ring) solid var(--accent);outline-offset:2px;border-radius:6px}.dock :focus-visible{outline-color:var(--dock-paid)}button,a,label,[role=button]{-webkit-tap-highlight-color:transparent}:focus:not(:focus-visible){outline:none}button,label,.line,.section-head,.topbar,.filters,.dock,.chips,.segmented,.switch,.paid-fold{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}a{color:inherit;text-underline-offset:3px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tone-over{color:var(--warn)}.tone-unassigned{color:var(--ink)}.tone-balanced{color:var(--paid)}.month{padding-bottom:calc(var(--dock-h) + var(--dock-gap) + env(safe-area-inset-bottom) + 24px);max-width:560px;margin:0 auto}.topbar{z-index:5;padding:calc(10px + env(safe-area-inset-top)) 12px 8px;background:var(--bg);align-items:center;gap:8px;display:flex;position:sticky;top:0}.month-nav{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.month-title{text-align:center;flex:1;min-width:0}.month-title h1{letter-spacing:-.01em;font-size:1.1875rem;font-weight:700}.rate{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;overflow:hidden}.icon-btn{background:var(--control);border:0;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}.icon-btn:disabled{opacity:.35;cursor:default}.filters{justify-content:space-between;gap:8px;padding:4px 16px 12px;display:flex}.segmented{background:var(--control);border-radius:10px;padding:3px;display:flex}.segmented button{min-height:36px;color:var(--ink-2);background:0 0;border:0;border-radius:8px;padding:7px 12px;font-size:.875rem}.segmented button:disabled{opacity:.4;cursor:not-allowed}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000001f}.lists{flex-direction:column;gap:10px;padding:0 10px;display:flex}.section{background:var(--surface);border-radius:var(--r);overflow:hidden}.section-toggle{text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;min-height:56px;padding:12px 14px;display:flex}.section-title{overflow-wrap:anywhere;flex:1;min-width:0;font-size:1rem;font-weight:650}.section-meta{color:var(--ink-2);font-size:.8125rem;font-weight:400;display:block}.section-amount{font-variant-numeric:tabular-nums;font-size:1rem;font-weight:650}.section .chev{color:var(--ink-2);transition:transform .25s var(--ease)}.section.is-open>.section-head .chev{transform:rotate(180deg)}.section.tone-warn .section-meta{color:var(--warn);font-weight:600}.flow-head{justify-content:space-between;align-items:baseline;padding:14px 6px 0;font-size:1.0625rem;font-weight:700;display:flex}.flow-head span{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:400}.lines-empty,.empty{color:var(--ink-2);padding:4px 14px 16px;font-size:.875rem}.empty{text-align:center;padding:24px 8px}.line{border-top:1px solid var(--line);align-items:center;gap:12px;min-height:60px;padding:10px 14px;display:flex}.line-edit{text-align:left;background:0 0;border:0;border-radius:0;flex:1;align-items:center;gap:12px;min-width:0;min-height:60px;margin:-10px -14px -10px 0;padding:10px 14px 10px 0;display:flex}.line-edit:active{background:var(--control)}.line:has(.btn-small) .line-edit{margin-right:0;padding-right:0}.line-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.line-name{overflow-wrap:anywhere;font-size:1rem}.line-meta{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:.8125rem;display:flex}.line-amount{text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;font-size:1rem;display:flex}.line-conv{color:var(--ink-2);font-size:.8125rem}.line.is-paid .line-name,.line.is-paid .line-amount>span:first-child{color:var(--ink-2)}.paid-fold{border-top:1px solid var(--line)}.paid-fold button{text-align:left;width:100%;min-height:52px;color:var(--ink-2);background:0 0;border:0;align-items:center;gap:12px;padding:8px 14px;font-size:.875rem;font-weight:600;display:flex}.paid-fold button:active{background:var(--control)}.paid-fold button>svg:first-child{width:18px;height:18px;color:var(--paid);flex:none;margin:0 4px}.paid-fold-text{font-variant-numeric:tabular-nums;flex:1;min-width:0}.paid-fold .chev{transition:transform .25s var(--ease)}.paid-fold button[aria-expanded=true] .chev{transform:rotate(180deg)}.tag-overdue{letter-spacing:.04em;text-transform:uppercase;color:var(--warn);background:var(--warn-soft);border:1.5px solid;border-radius:5px;padding:0 5px;font-size:.6875rem;font-weight:700;line-height:1.5}.tick{cursor:pointer;flex:none;place-items:center;width:44px;height:44px;margin:-8px -6px -8px -10px;display:grid;position:relative}.tick input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.tick-box{border:2px solid var(--ink);color:#0000;width:26px;height:26px;transition:background-color .15s, border-color .15s, transform .2s var(--ease);border-radius:7px;place-items:center;display:grid}.tick-box svg{width:18px;height:18px}.tick input:checked+.tick-box{background:var(--paid);border-color:var(--paid);color:var(--surface)}.tick input:active+.tick-box{transform:scale(.88)}.tick input:focus-visible+.tick-box{outline:var(--ring) solid var(--accent);outline-offset:2px}.more{border:0;border-top:1px solid var(--line);width:100%;min-height:48px;color:var(--ink-2);background:0 0;font-size:.875rem;font-weight:600}.btn-small{border:1.5px solid var(--line);background:var(--surface);border-radius:10px;flex:none;min-height:40px;padding:8px 12px;font-size:.875rem;font-weight:600}.dock{z-index:10;left:var(--dock-gap);right:var(--dock-gap);bottom:calc(var(--dock-gap) + env(safe-area-inset-bottom));max-width:calc(560px - 2 * var(--dock-gap));background:var(--dock);color:var(--dock-ink);border-radius:var(--r);flex-direction:column;margin:0 auto;display:flex;position:fixed;box-shadow:0 8px 24px -12px #00000073}.dock-band{z-index:9;pointer-events:none;height:calc(var(--dock-h) + var(--dock-gap) + env(safe-area-inset-bottom) + 12px);background:linear-gradient(to bottom, transparent, var(--bg) 12px);position:fixed;bottom:0;left:0;right:0}.dock-bar{align-items:center;gap:6px;padding:10px 16px 10px 10px;display:flex}.dock-summary{min-width:0;color:inherit;text-align:left;background:0 0;border:0;border-radius:12px;flex:1;grid-template-columns:1fr 1fr;gap:12px;padding:6px 8px;display:grid}.dock-fig{flex-direction:column;min-width:0;transition:opacity .15s;display:flex;container-type:inline-size}.dock-label{color:var(--dock-ink-2);font-size:.75rem;line-height:1.4}.dock-value{font-size:1.5rem;font-size:min(1.5rem, 100cqi / (var(--chars,1) * .6));letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700;line-height:1.2}.dock-state{align-items:center;gap:3px;font-size:.75rem;font-weight:600;line-height:1.4;display:flex}.dock-state svg{width:13px;height:13px}.dock .tone-over{color:var(--dock-warn)}.dock .tone-balanced{color:var(--dock-paid)}.dock .tone-unassigned{color:var(--dock-ink)}.dock-progress{background:color-mix(in srgb, var(--dock-ink) 22%, transparent);border-radius:3px;height:5px;margin:7px 20px 0 0;overflow:hidden}.dock-progress span{background:var(--dock-paid);border-radius:inherit;height:100%;display:block}.dock-add{width:var(--lta-h);height:var(--lta-h);background:var(--dock-raise);color:var(--dock-ink);border:0;border-radius:12px;flex:none;place-items:center;display:grid}.dock-add svg{width:22px;height:22px}.dock-add:active{transform:scale(.94)}.dock-panel{overflow:hidden}.dock-panel:not([hidden]){overscroll-behavior:contain;max-height:min(64dvh,560px);animation:plan-open .38s var(--ease);display:block;overflow-y:auto}@keyframes plan-open{0%{opacity:0;filter:blur(4px);max-height:0}to{opacity:1;filter:blur();max-height:min(64dvh,560px)}}.dock.is-open .dock-bar{border-top:1px solid var(--dock-raise)}.plan{flex-direction:column;gap:18px;padding:18px 16px 6px;display:flex}.plan-lta{flex-direction:column;display:flex;container-type:inline-size}.plan-label{color:var(--dock-ink-2);font-size:.8125rem}.plan-big{font-size:2.25rem;font-size:min(2.25rem, 100cqi / (var(--chars,1) * .6));white-space:nowrap;letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-weight:750;line-height:1.15}.plan-state{font-size:.9375rem;font-weight:600}.plan-sub{color:var(--dock-ink-2);font-variant-numeric:tabular-nums;margin-top:2px;font-size:.8125rem}.alloc-bar{background:var(--dock-raise);border-radius:7px;height:28px;display:flex;position:relative;overflow:hidden}.alloc-seg{height:100%;box-shadow:inset -2px 0 0 var(--dock)}.seg-0{background:var(--seg-0)}.seg-1{background:var(--seg-1)}.seg-2{background:var(--seg-2)}.seg-3{background:var(--seg-3)}.seg-4{background:var(--seg-4)}.seg-5{background:var(--seg-5)}.dock .seg-0{background:#c9d3e4}.dock .seg-1{background:#9eadc7}.dock .seg-2{background:#7486a6}.dock .seg-3{background:#52627f}.dock .seg-4{background:#a9b39c}.dock .seg-5{background:#79856b}.alloc-over,.alloc-swatch-over{background:repeating-linear-gradient(135deg, var(--dock-warn) 0 3px, transparent 3px 7px)}.alloc-over{position:absolute;top:0;bottom:0}.alloc-marker{background:var(--dock-ink);border-radius:2px;width:3px;margin-left:-1.5px;position:absolute;top:-4px;bottom:-4px}.alloc{flex-direction:column;gap:8px;display:flex}.alloc-scale{color:var(--dock-ink-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;column-gap:12px;font-size:.75rem;display:flex}.alloc-legend{gap:6px;margin-top:4px;display:grid}.alloc-legend li{align-items:center;gap:10px;font-size:.875rem;display:flex}.alloc-swatch{border-radius:3px;flex:none;width:12px;height:12px}.alloc-name{overflow-wrap:anywhere;flex:1;min-width:0}.alloc-num{font-variant-numeric:tabular-nums;white-space:nowrap}.plan-figures{border-top:1px solid var(--dock-raise);grid-template-columns:1fr 1fr;gap:12px 16px;padding-top:14px;display:grid}.plan-figures dt{color:var(--dock-ink-2);font-size:.75rem}.plan-figures>div{min-width:0;container-type:inline-size}.plan-figures dd{font-size:1.0625rem;font-size:min(1.0625rem, 100cqi / (var(--chars,1) * .6));white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:650}.boot{min-height:100dvh}.first-run{flex-direction:column;gap:14px;max-width:420px;margin:0 auto;padding:18dvh 20px 40px;display:flex}.first-run h1{letter-spacing:-.02em;font-size:2rem}.first-run p{color:var(--ink-2);margin-bottom:10px}.btn{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;min-height:52px;padding:0 18px;font-weight:600;display:flex}.btn-primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn:has(:focus-visible){outline:var(--ring) solid var(--accent);outline-offset:2px}.sheet{background:var(--surface);width:min(100% - 16px,544px);max-width:none;color:var(--ink);border:0;border-radius:20px;margin:auto auto 8px;padding:0 18px 22px}.sheet::backdrop{background:#0006}.sheet-head{justify-content:space-between;align-items:center;padding:16px 0 6px;display:flex}.sheet-head h2{font-size:1.1875rem}.sheet-block{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;padding:14px 0;display:flex}.sheet-block h3{color:var(--ink-2);font-size:.8125rem;font-weight:600}.sheet-actions{gap:8px;display:grid}.note{color:var(--ink-2);padding-top:12px;font-size:.8125rem}.sheet{max-height:calc(100dvh - 16px - env(safe-area-inset-top));overscroll-behavior:contain;overflow-y:auto}.sheet-head{z-index:1;background:var(--surface);position:sticky;top:0}@keyframes scrolled-edge{to{box-shadow:0 1px 0 var(--line)}}@supports (animation-timeline:scroll()){.topbar,.sheet-head{animation:linear both scrolled-edge;animation-timeline:scroll();animation-range:0 24px}}.sheet-block:last-child{border-bottom:0}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-danger{color:var(--warn)}.btn-danger.is-armed{background:var(--warn);border-color:var(--warn);color:var(--surface)}.confirm{background:var(--warn-soft);border-radius:14px;gap:12px;padding:14px;display:grid}.confirm p{font-size:.9375rem}.setting-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.setting-value span{color:var(--ink-2);letter-spacing:0;font-size:.875rem;font-weight:500}.setting-sub{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:6px;font-size:.875rem;display:flex}.tag-locked,.tag-phase{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);border:1.5px solid;border-radius:5px;padding:0 5px;font-size:.6875rem;font-weight:700;line-height:1.5}.sheet-block>.segmented{align-self:flex-start}.inline-form{align-items:stretch;gap:8px;display:flex}.inline-form .btn{flex:none}.start-list{gap:4px;margin-bottom:6px;padding-left:18px;font-size:.9375rem;list-style:outside;display:grid}.start-list li::marker{color:var(--ink-2)}.check-row{cursor:pointer;align-items:center;gap:12px;min-height:48px;font-size:.9375rem;display:flex}.check-row input{width:22px;height:22px;accent-color:var(--paid);flex:none;margin:0}.group-list{gap:6px;display:grid;position:relative}.group-row{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:2px;min-height:56px;padding:2px 4px 2px 2px;display:flex}.group-list input{flex:1;min-width:0}.drag-handle{width:40px;height:48px;color:var(--ink-2);touch-action:none;cursor:grab;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.group-name{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;border-radius:10px;flex:1;min-width:0;min-height:48px;padding:0 8px;font-size:1rem}.group-list .group-name-input{min-height:44px}.group-more{background:0 0}.group-list>li.is-dragging{z-index:2;position:relative}.is-dragging .group-row{border-color:var(--accent);box-shadow:0 10px 24px -10px #0006}.is-dragging .drag-handle{cursor:grabbing}.is-sorting{-webkit-user-select:none;user-select:none}.icon-btn-danger{color:var(--warn)}.icon-btn-danger[aria-expanded=true]{background:var(--warn-soft)}.group-confirm{margin:4px 0 8px}.sheet-head{gap:10px}.sheet-head h2{flex:1;min-width:0}.sheet-head h2:focus{outline:none}.back-btn{margin-left:-6px}.menu{border:1.5px solid var(--line);border-radius:14px;flex-direction:column;margin-top:8px;display:flex;overflow:hidden}.menu li+li{border-top:1px solid var(--line)}.menu button{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 12px 10px 16px;display:flex}.menu button:active{background:var(--control)}.menu button>svg{color:var(--ink-2);flex:none}.menu-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.menu-title{font-weight:600}.menu-sub{color:var(--ink-2);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.8125rem}.sheet-message{padding-top:14px;font-size:.9375rem}.note-warn{color:var(--warn);font-size:.875rem;font-weight:600}.setting-sub.tone-over{color:var(--warn);font-weight:600}.first-run-start{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:10px;padding-top:20px;display:flex}.first-run-start .field-hint{margin-top:-4px;margin-bottom:0}.reminder{border-radius:var(--r);background:var(--surface);border:1.5px solid var(--line);align-items:center;gap:4px;min-height:48px;padding:2px 2px 2px 14px;display:flex}.reminder-text{min-width:0;color:var(--ink-2);flex:1;font-size:.875rem}.reminder-export{background:var(--ink);min-height:40px;color:var(--bg);border:0;border-radius:10px;flex:none;padding:0 14px;font-size:.875rem;font-weight:650}.reminder-close{width:44px;height:44px;color:var(--ink-2);background:0 0;border:0;border-radius:12px;flex:none;place-items:center;display:grid}.reminder-close svg{width:18px;height:18px}.reminder,.menu{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.editor form{flex-direction:column;gap:14px;display:flex}.editor .sheet-head{padding-bottom:2px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--ink-2);align-items:center;gap:8px;font-size:.8125rem;font-weight:600;display:flex}.field-row{align-items:flex-start;gap:10px;display:flex}.field-row .segmented{min-height:48px}.field-grow{flex:1}.field-narrow{max-width:140px}.field-hint{color:var(--ink-2);margin-top:-8px;font-size:.8125rem}.field.is-disabled select{opacity:.6}.field>.segmented{align-self:stretch}.field>.segmented button{flex:1}.field input,.field select,.group-list input,.link-list>input{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;width:100%;min-height:48px;padding:0 12px;font-size:1rem}.field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-2) 50%), linear-gradient(135deg, var(--ink-2) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}input,textarea,select{accent-color:var(--accent)}input:not([type=checkbox],[type=radio],[type=file]):focus,textarea:focus,select:focus{outline:none}.field input:focus,.field select:focus,.group-list input:focus,.link-list>input:focus{border-color:var(--accent);box-shadow:none}.field input[aria-invalid=true]{border-color:var(--warn)}.amount-input{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:8px;min-height:48px;padding-left:12px;display:flex}.amount-input:focus-within{border-color:var(--accent)}.amount-input>span{color:var(--ink-2);font-size:.875rem;font-weight:600}.field .amount-input input,.inline-form .amount-input input{box-shadow:none;font-variant-numeric:tabular-nums;background:0 0;border:0;width:100%;min-height:44px;padding-left:0;font-size:1.125rem}.amount-input input:focus{box-shadow:none!important}.conv{color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:-6px;font-size:.875rem}.chips{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.chips button{border:1.5px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink-2);border-radius:20px;padding:0 4px;font-size:.875rem;font-weight:600}.chips button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.switches{border:1.5px solid var(--line);border-radius:14px;flex-direction:column;display:flex}.switch{cursor:pointer;align-items:center;gap:12px;min-height:56px;padding:8px 14px;display:flex;position:relative}.switch+.switch{border-top:1px solid var(--line)}.switch-text{flex-direction:column;flex:1;display:flex}.switch-hint{color:var(--ink-2);font-size:.8125rem}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch-track{background:var(--control);border:1.5px solid color-mix(in srgb, var(--ink-2) 75%, var(--surface));border-radius:14px;flex:none;width:46px;height:28px;transition:background-color .2s;position:relative}.switch-track:after{content:"";background:var(--surface);width:21px;height:21px;transition:transform .2s var(--ease);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch input:checked+.switch-track{background:var(--paid);border-color:var(--paid)}.switch input:checked+.switch-track:after{transform:translate(18px)}.switch input:focus-visible+.switch-track{outline:var(--ring) solid var(--accent);outline-offset:2px}.build-info{color:var(--ink-2);font-variant-numeric:tabular-nums;padding-top:14px;font-size:.75rem}.update-bar{z-index:11;max-width:544px;left:8px;right:8px;bottom:calc(var(--dock-h) + var(--dock-gap) + env(safe-area-inset-bottom) + 10px);background:var(--surface);color:var(--ink);border:1.5px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:6px 6px 6px 16px;font-size:.9375rem;font-weight:600;display:flex;position:fixed;box-shadow:0 8px 24px -10px #00000059}.update-bar button{background:var(--ink);min-height:44px;color:var(--bg);border:0;border-radius:12px;padding:0 18px;font-weight:650}.editor-actions{gap:8px;padding-top:4px;display:flex}.editor-actions .btn{flex:1}.sheet.editor{padding-bottom:0}.amount-big{border:1.5px solid var(--line);background:var(--surface);border-radius:16px;align-items:center;gap:10px;min-height:76px;padding:0 10px 0 16px;display:flex}.amount-big:focus-within{border-color:var(--accent)}.amount-big:has(input[aria-invalid=true]){border-color:var(--warn)}.field .amount-big input{letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:0 0;border:0;flex:1;min-width:0;min-height:72px;padding:0;font-size:2.5rem;font-weight:650}.currency-chip{background:var(--control);min-height:40px;color:var(--ink);min-width:56px;border:0;border-radius:20px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:.875rem;font-weight:700;display:flex}.conv:empty{display:none}.field-error{color:var(--warn);font-size:.8125rem;font-weight:600}.field-error:empty{display:none}.pick-row{gap:8px;display:flex}.pick-chip{border:1.5px solid var(--line);background:var(--surface);min-width:0;min-height:44px;color:var(--ink);white-space:nowrap;border-radius:22px;align-items:center;gap:6px;padding:0 14px;font-size:.9375rem;font-weight:600;display:flex}.pick-chip:first-child{flex:0 auto}.pick-chip-text{text-overflow:ellipsis;overflow:hidden}.pick-chip span[aria-hidden]{color:var(--ink-2);font-size:.8125rem}.pick-chip[aria-expanded=true]{border-color:var(--ink)}.pick-row+.link-list,.pick-row+.day-grid{margin-top:-6px}.day-grid{border:1.5px solid var(--line);border-radius:14px;grid-template-columns:repeat(7,1fr);gap:4px;padding:8px;display:grid}.day-grid button{font-variant-numeric:tabular-nums;min-height:40px;color:var(--ink);background:0 0;border:0;border-radius:10px;font-size:.9375rem}.day-grid .day-none{color:var(--ink-2);grid-column:span 4;font-weight:600}.day-grid button[aria-pressed=true]{background:var(--ink);color:var(--bg);font-weight:700}.amount-input>label{color:var(--ink-2);flex:none;font-size:.875rem;font-weight:600}.amount-input>span:last-child{padding-right:12px}.match-done{color:var(--ink-2);margin-top:-4px;font-size:.8125rem}.more-options{border-top:1px solid var(--line)}.more-toggle{width:100%;min-height:48px;color:var(--ink-2);background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;font-size:.9375rem;font-weight:600;display:flex}.more-chevron{transition:transform .2s var(--ease);font-size:.875rem;display:inline-block}.more-toggle[aria-expanded=true] .more-chevron{transform:rotate(180deg)}.more-body{flex-direction:column;gap:14px;padding:2px 0 6px;display:flex}.editor-submit{z-index:1;padding:10px 18px calc(14px + env(safe-area-inset-bottom));background:var(--surface);box-shadow:0 -1px 0 var(--line);margin:-4px -18px 0;position:sticky;bottom:0}.editor-submit .btn{width:100%}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.tag-match{letter-spacing:.04em;text-transform:uppercase;color:var(--match);border:1.5px solid;border-radius:5px;padding:0 5px;font-size:.6875rem;font-weight:700;line-height:1.5}.line-spend{color:var(--ink-2);font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;margin-top:3px;font-size:.8125rem;display:flex}.line-spend.tone-over{color:var(--warn)}.spend-bar{background:var(--control);border-radius:2px;max-width:220px;height:4px;display:block;overflow:hidden}.spend-bar span{border-radius:inherit;background:var(--paid);height:100%;display:block}.line-spend.tone-over .spend-bar span{background:var(--warn)}.match-box{border:1.5px solid var(--match);border-radius:14px;gap:10px;padding:12px 14px;display:grid}.match-box p{font-variant-numeric:tabular-nums;font-size:.9375rem}.match-box strong{color:var(--match);font-size:.8125rem;display:block}.match-actions{gap:8px;display:grid}.match-txs{color:var(--ink-2);gap:6px;font-size:.875rem;display:grid}.match-txs li{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}.match-txs li>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.match-tx-amount{font-variant-numeric:tabular-nums;color:var(--ink)}.link-picker{gap:8px}.link-current{overflow-wrap:anywhere;font-size:1rem;font-weight:600}.link-current span,.link-suggest .btn-small span{color:var(--ink-2);margin-left:4px;font-size:.75rem;font-weight:500}.link-current.link-none{color:var(--ink-2);font-weight:400}.link-hint{margin-top:0}.group-current{justify-content:space-between;align-items:center;gap:10px;display:flex}.link-suggest{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.link-suggest .field-hint{margin:0}.link-actions{flex-wrap:wrap;gap:6px;display:flex}.link-list{gap:8px;display:grid}.link-list .segmented button{flex:1}.link-list ul{border:1.5px solid var(--line);border-radius:12px;max-height:260px;overflow:hidden auto}.link-list li+li{border-top:1px solid var(--line)}.link-list li.field-hint{margin:0;padding:12px}.link-list li button{background:var(--surface);width:100%;min-height:48px;color:var(--ink);text-align:left;overflow-wrap:anywhere;border:0;padding:0 14px;font-size:1rem}.link-list li button[aria-pressed=true]{color:var(--paid);font-weight:700}.link-list li button{justify-content:space-between;align-items:center;gap:12px;display:flex}.link-option-type{color:var(--ink-2);flex:none;font-size:.75rem;font-weight:400}.sprouts-connection{gap:10px;margin-top:8px;display:grid}.sprouts-hint{margin-top:-4px}.line-warn{color:var(--warn);font-size:.8125rem;font-weight:600}.link-keyword{flex-direction:column;gap:6px;display:flex}.sheet.settings{width:100%;max-width:none;height:100dvh;max-height:none;padding:0 16px calc(24px + env(safe-area-inset-bottom));background:var(--bg);animation:page-from-right .32s var(--ease);border-radius:0;margin:0;overflow-x:hidden}.sheet.settings::backdrop{background:var(--bg)}.settings>*{max-width:560px;margin-inline:auto}.settings .sheet-head{padding:calc(10px + env(safe-area-inset-top)) 0 8px;background:var(--bg);justify-content:flex-start}.settings .menu{background:var(--surface)}.page-forward{animation:page-from-right .32s var(--ease)}.page-back{animation:page-from-left .32s var(--ease)}@keyframes page-from-right{0%{transform:translate(100%)}to{transform:none}}@keyframes page-from-left{0%{opacity:0;transform:translate(-24%)}to{opacity:1;transform:none}}.sheet.action-sheet{width:min(100%,560px);padding:6px 12px calc(14px + env(safe-area-inset-bottom));animation:sheet-up .26s var(--ease);border-radius:20px 20px 0 0;margin:auto auto 0}@keyframes sheet-up{0%{opacity:0;transform:translateY(40%)}to{opacity:1;transform:none}}.action-head{flex-direction:column;gap:2px;padding:14px 6px 12px;display:flex}.action-head h2{overflow-wrap:anywhere;font-size:1.0625rem}.action-head h2:focus{outline:none}.action-head p{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.875rem}.actions{border:1.5px solid var(--line);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.action{background:var(--surface);text-align:left;-webkit-user-select:none;user-select:none;border:0;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 16px;font-weight:600;display:flex}.action+.action{border-top:1px solid var(--line)}.action:disabled{opacity:.45;cursor:not-allowed}.action-text{font-variant-numeric:tabular-nums;flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.action-hint{color:var(--ink-2);font-size:.8125rem;font-weight:400}.action-state{color:var(--ink-2);flex:none;font-size:.875rem}.action[aria-pressed=true] .action-state{color:var(--paid);font-weight:700}.action-danger{color:var(--warn)}.action-armed{background:var(--warn);color:var(--surface)}.action-primary{background:var(--ink);color:var(--bg)}.action-armed .action-hint,.action-primary .action-hint{color:inherit;opacity:.85}.action-form{flex-direction:column;gap:14px;padding:0 2px;display:flex}.month-grid-box{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;gap:10px;padding:10px;display:grid}.year-step{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;font-size:1.0625rem;font-weight:700;display:flex}.month-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.month-grid button{border:1.5px solid var(--line);background:var(--surface);border-radius:10px;width:100%;min-height:44px;font-size:.9375rem;font-weight:600}.month-grid button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.month-grid button:disabled{opacity:.35;cursor:not-allowed}.section-toggle:active,.more:active,.reminder-close:active,.group-name:active,.drag-handle:active,.segmented button:not([aria-pressed=true]):active,.action-sheet .action:not(.action-armed,.action-primary):active,.btn-small:active,.btn:not(.btn-primary,.is-armed):active,.chips button:not([aria-pressed=true]):active,.month-grid button:not([aria-pressed=true]):active,.link-list li button:active,.pick-chip:active,.more-toggle:active,.day-grid button:not([aria-pressed=true]):active{background-color:var(--press)}.icon-btn:active,.currency-chip:active{background-color:color-mix(in srgb, var(--ink) 14%, var(--control))}.dock-summary:active .dock-fig{opacity:.7}.btn-primary:active,.btn.is-armed:active,.reminder-export:active,.update-bar button:active,.action-armed:active,.action-primary:active{opacity:.85}@media (hover:hover) and (pointer:fine){.dock-summary:hover .dock-fig{opacity:.7}.dock-add:hover{background-color:color-mix(in srgb, var(--dock-ink) 18%, var(--dock-raise))}.line-edit:hover,.paid-fold button:hover,.menu button:hover,.section-toggle:hover,.more:hover,.reminder-close:hover,.group-name:hover,.drag-handle:hover,.segmented button:not([aria-pressed=true]):hover,.action-sheet .action:not(.action-armed,.action-primary,:disabled):hover,.btn-small:hover,.btn:not(.btn-primary,.is-armed,:disabled):hover,.chips button:not([aria-pressed=true]):hover,.month-grid button:not([aria-pressed=true],:disabled):hover,.link-list li button:hover,.pick-chip:hover,.day-grid button:not([aria-pressed=true]):hover{background-color:var(--press)}.icon-btn:not(:disabled):hover,.currency-chip:hover{background-color:color-mix(in srgb, var(--ink) 10%, var(--control))}}
