:root{--bg:#f6f5fc;--panel:#fff;--fg:#1b1840;--muted:#615e80;--line:#e3e0f0;--soft:#efedfa;--accent:#5b36f2;--accent-fg:#fff;--accent-ink:#3a1fb8;--ok:#0f9d77;--bad:#e0335d;--warn:#c97800;--mango:#ffb21e;--lagoon:#12c2a4;--flamingo:#ff4d7e;--sky:#2f9bff;--font:"Schibsted Grotesk", "Helvetica Neue", Arial, system-ui, sans-serif;--r:14px;--shadow:0 10px 30px #28187824}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#13122b;--panel:#1c1a3a;--fg:#f1efff;--muted:#a9a6c8;--line:#2f2c55;--soft:#26244a;--accent:#8e73ff;--accent-fg:#13122b;--accent-ink:#5b36f2;--ok:#3fd6a8;--bad:#ff6b8e;--warn:#ffc24d;--shadow:0 8px 28px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#13122b;--panel:#1c1a3a;--fg:#f1efff;--muted:#a9a6c8;--line:#2f2c55;--soft:#26244a;--accent:#8e73ff;--accent-fg:#13122b;--accent-ink:#5b36f2;--ok:#3fd6a8;--bad:#ff6b8e;--warn:#ffc24d;--shadow:0 8px 28px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:14px;line-height:1.45}.wrap{max-width:76rem;padding-block:28px 96px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));flex-direction:column;gap:20px;margin-inline:auto;display:flex}button,input,select{font:inherit;color:inherit}.num,td.amt,.tile-v,.cat-amt{font-variant-numeric:tabular-nums}.top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px;display:flex}.top h1{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:1.9rem;font-weight:700}.brand{align-items:center;gap:12px;display:flex}.brand-mark{flex:none;width:1.15em;height:1.15em}.lede{color:var(--muted);max-width:62ch;margin:4px 0 0}.lede b{color:var(--fg);font-weight:600}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn{border:1.5px solid var(--line);background:var(--panel);cursor:pointer;border-radius:11px;padding:7px 14px;font-weight:650;transition:background-color .15s,border-color .15s,color .15s}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn:active:not(:disabled){background:var(--soft)}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn.primary:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:var(--accent-fg)}.btn.primary:active:not(:disabled){background:var(--accent-ink)}.btn.danger{color:var(--bad)}.btn.danger:hover{border-color:var(--bad);color:var(--bad)}.btn:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:focus-visible,select:focus-visible,input:focus-visible,.cat:focus-visible{outline:2px solid var(--accent);outline-offset:2px}select,input[type=text],input[type=search]{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;padding:7px 10px}.tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:12px;display:grid}.tile{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:2px;min-width:0;padding:14px 16px;display:flex}.tile-l{color:var(--muted);letter-spacing:.02em;font-size:12px}.tile-v{letter-spacing:-.01em;white-space:nowrap;font-size:1.55rem;font-weight:600}.tile-n{color:var(--muted);font-size:12px}.tiles>.tile{--c:var(--accent);border-color:color-mix(in srgb, var(--c) 30%, var(--line));background:color-mix(in srgb, var(--c) 9%, var(--panel));position:relative;overflow:hidden}.tiles>.tile:before{content:"";background:var(--c);width:5px;position:absolute;inset:0 auto 0 0}.tiles>.tile:nth-child(4n+1){--c:var(--lagoon)}.tiles>.tile:nth-child(4n+2){--c:var(--flamingo)}.tiles>.tile:nth-child(4n+3){--c:var(--accent)}.tiles>.tile:nth-child(4n+4){--c:var(--mango)}.tiles>.tile .tile-v{font-weight:700}.pos{color:var(--ok)}.neg{color:var(--bad)}.grid2{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));gap:12px;display:grid}.yp-bar{justify-content:flex-start;display:flex}#view-planning.year-mode>:not(#planModeBar):not(#yearPlan){display:none!important}.yp{flex-direction:column;gap:16px;display:flex}.yp-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;display:flex}.yp-head h2{align-items:center;gap:10px;margin:0;display:flex}.yp-cols{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;display:grid}@media (max-width:860px){.yp-cols{grid-template-columns:minmax(0,1fr)}}.yp-inc{grid-template-columns:minmax(0,1.3fr) 110px auto minmax(0,1fr) 24px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.yp-inc input,.yp-inc select,.yp-goal input,.yp-setup input[type=text]{min-width:0}@media (max-width:560px){.yp-inc{grid-template-columns:minmax(0,1fr) 100px 24px}.yp-inc>span.note{display:none}.yp-inc select{grid-column:1/3}}.yp-acts{flex-wrap:wrap;gap:8px;margin:4px 0 8px;display:flex}.yp-total{margin:0}.yp-goal{align-items:center;gap:8px;margin-bottom:6px;display:flex}.yp-goal input{width:140px;font-size:18px;font-weight:600}.yp-setup input[type=text]{box-sizing:border-box;width:100%}.yp-tablewrap{overflow-x:auto}.yp-table{border-collapse:collapse;width:100%;min-width:620px;font-size:13.5px}.yp-table th,.yp-table td{border-top:1px solid var(--line);text-align:right;vertical-align:top;white-space:nowrap;padding:7px 8px}.yp-table thead th{color:var(--muted);border-top:0;font-size:12px;font-weight:600}.yp-table th:first-child,.yp-table td:last-child{text-align:left}.yp-table tbody th{font-weight:600}.yp-table tfoot th,.yp-table tfoot td{border-top:2px solid var(--line);font-weight:700}.yp-table tr.done>*{background:color-mix(in srgb, var(--accent) 3%, var(--panel))}.yp-plan{font-variant-numeric:tabular-nums;display:block}.yp-act{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:700;display:block}.yp-act.ok{color:var(--ok)}.yp-act.bad{color:var(--bad)}.yp-chip{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.yp-chip.ok{background:color-mix(in srgb, var(--ok) 15%, var(--panel));color:var(--ok)}.yp-chip.warn{background:color-mix(in srgb, var(--warn) 15%, var(--panel));color:var(--warn)}.yp-chip.bad{background:color-mix(in srgb, var(--bad) 13%, var(--panel));color:var(--bad)}.yp-chip.run{background:var(--soft);color:var(--muted)}.yp-chip.miss{background:color-mix(in srgb, var(--mango,#ffb21e) 18%, var(--panel));color:var(--warn)}.yp-table tr.miss>*{color:var(--muted)}.yp-sq.miss{background:repeating-linear-gradient(45deg, var(--soft) 0 6px, color-mix(in srgb, var(--mango,#ffb21e) 30%, var(--panel)) 6px 12px);color:var(--warn)}.yp-missing{background:color-mix(in srgb, var(--mango,#ffb21e) 12%, var(--panel));border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;padding:10px 12px;display:flex}.yp-missing p{flex:320px;margin:0;font-size:13.5px}.yp-goalrow{justify-content:space-between;align-items:center;gap:16px;display:flex}.yp-goalrow>div:first-child{flex-direction:column;display:flex}.yp-big{font-size:30px}.yp-grade{background:var(--soft);border-radius:12px;align-items:center;gap:10px;padding:8px 14px;display:flex}.yp-grade b{font-size:34px;line-height:1}.yp-grade.ok b{color:var(--ok)}.yp-grade.warn b{color:var(--warn)}.yp-grade.bad b{color:var(--bad)}.yp-gbar{background:var(--soft);border-radius:8px;height:14px;position:relative}.yp-gfill{background:linear-gradient(90deg, var(--lagoon,#12c2a4), var(--ok));border-radius:8px;position:absolute;inset:0 auto 0 0}.yp-gmark{background:var(--fg);opacity:.6;width:2px;position:absolute;top:-4px;bottom:-4px}.yp-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}@media (max-width:860px){.yp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.yp-kpis b.up{color:var(--ok)}.yp-kpis b.down{color:var(--bad)}.yp-squares{grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;display:grid}.yp-sq{height:34px;color:var(--muted);background:var(--soft);border-radius:8px;place-items:center;font-size:12px;font-weight:700;display:grid}.yp-sq.ok{background:var(--ok);color:var(--panel)}.yp-sq.warn{background:var(--warn);color:var(--panel)}.yp-sq.bad{background:var(--bad);color:var(--panel)}.yp-sq.run{background:color-mix(in srgb, var(--accent) 25%, var(--panel));color:var(--accent-ink)}.fu-goal{background:color-mix(in srgb, var(--lagoon,#12c2a4) 8%, var(--panel));border-radius:10px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.fu-gtitle{align-items:center;gap:6px;font-size:13.5px;font-weight:600;display:flex}.fu-gicon{color:var(--lagoon,#12c2a4);font-size:16px;font-style:normal}.fu-gres{margin:0;font-size:13px;font-weight:600}.fu-gres.ok{color:var(--ok)}.fu-gres.bad{color:var(--bad)}.fu-gprog{flex-direction:column;gap:4px;display:flex}.fu-gmsg{color:var(--muted);font-size:12.5px}.fu-gmsg.bad{color:var(--bad);font-weight:600}.fu-gmsg.ok{color:var(--ok);font-weight:600}.fu-ghist{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:12.5px;display:flex}.fu-ghist b.up{color:var(--ok)}.fu-ghist b.down{color:var(--bad)}.fu-gdots{gap:3px;display:inline-flex}.fu-gdots i{width:18px;height:18px;color:var(--panel);border-radius:50%;place-items:center;font-size:11px;font-style:normal;font-weight:700;display:grid}.fu-gdots i.ok{background:var(--ok)}.fu-gdots i.bad{background:var(--bad)}.fu-gedit{background:var(--soft);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.fu-gedit p{margin:0}.fu-grow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fu-grow input{width:100px}.fu-target{stroke:var(--lagoon,#12c2a4);stroke-width:2px;stroke-dasharray:4 3}.fu-bar.met{fill:var(--ok)}.fu-bar.missed{fill:var(--bad)}.fu-dueline em{margin-left:6px;font-style:normal;font-weight:600}.fu-dueline em.up{color:var(--ok)}.fu-dueline em.down{color:var(--bad)}.fu-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.fu-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.fu-card.due{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel))}.fu-card.open{outline:2px solid var(--accent);outline-offset:-1px}.fu-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fu-kind{color:var(--muted);font-size:12px}.fu-due{color:var(--accent-ink);margin:0;font-size:13px;font-weight:600}.fu-spark{width:100%;height:46px}.fu-bar{fill:color-mix(in srgb, var(--accent) 70%, var(--panel))}.fu-bar.partial{fill:color-mix(in srgb, var(--accent) 25%, var(--panel))}.fu-nums{color:var(--muted);flex-direction:column;gap:2px;font-size:13px;display:flex}.fu-nums b{color:var(--fg)}.fu-nums em{font-style:normal;font-weight:600}.fu-nums em.down,.fu-why b.down{color:var(--bad)}.fu-nums em.up,.fu-why b.up{color:var(--ok)}.fu-acts{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:auto;display:flex}.fu-acts>*{white-space:nowrap}.fu-dhead{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.fu-dhead h2{margin:0}.fu-ok{color:var(--ok);font-size:13.5px;font-weight:600}.fu-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;display:grid}.fu-stats .sp-imp.big{grid-column:auto}.fu-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}@media (max-width:860px){.fu-cols,.fu-stats{grid-template-columns:minmax(0,1fr)}}.fu-cats{flex-direction:column;gap:5px;margin-bottom:10px;display:flex}.fu-crow{grid-template-columns:minmax(0,1.2fr) minmax(60px,1fr) auto 36px;align-items:center;gap:8px;font-size:13.5px;display:grid}.fu-ctrack{background:var(--soft);border-radius:5px;height:8px;overflow:hidden}.fu-cbar{border-radius:5px;height:100%;display:block}.fu-shops{border-collapse:collapse;width:100%;font-size:13.5px}.fu-shops th{text-align:left;color:var(--muted);padding:4px 0;font-size:12px;font-weight:600}.fu-shops td{border-top:1px solid var(--line);padding:4px 0}.fu-shops td:nth-child(n+2),.fu-shops th:nth-child(n+2){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.fu-shadow{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.fu-sh{border-left:3px solid var(--mango,#ffb21e);background:color-mix(in srgb, var(--mango,#ffb21e) 8%, var(--panel));border-radius:8px;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 10px;display:grid}.fu-sh.ok{border-left-color:var(--ok);background:color-mix(in srgb, var(--ok) 7%, var(--panel))}.fu-sh p{grid-column:1/-1;margin:0;font-size:13px}.fu-why{flex-direction:column;gap:4px;margin:0;padding:0;font-size:13.5px;list-style:none;display:flex}.fu-pays{margin:0;padding:0;list-style:none}.fu-pays li{border-top:1px solid var(--line);grid-template-columns:64px minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 0;font-size:13.5px;display:grid}@media (max-width:640px){.fu-pays li{grid-template-columns:56px minmax(0,1fr) auto}.fu-pays li>:nth-child(4),.fu-pays li>:nth-child(5){grid-column:2/-1}}.fu-note{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--fg);border-radius:8px;padding:8px}.fu-duebox{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel))}.fu-dueline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;font-size:14px;display:flex}.sp-follow{white-space:nowrap;font-size:12.5px}.sp-follow.on{color:var(--accent-ink);font-weight:600}.sp-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 24px;display:flex}.sp-top h2{margin:0 0 4px}.sp-ctl{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.sp-n{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.sp-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (max-width:1000px){.sp-grid{grid-template-columns:minmax(0,1fr)}}.sp-flow{overflow-x:auto}@media (min-width:1001px){.sp-flowcard{position:sticky;top:84px}}.sp-flow-svg{width:100%;min-width:620px;height:auto;display:block}.sp-link{opacity:.32;transition:opacity .15s}.sp-link:hover{opacity:.6}.sp-lab{fill:var(--fg);font-size:15px}.sp-lab-n{font-weight:600}.sp-lab-v{fill:var(--muted)}.sp-lab-down{fill:var(--ok);font-weight:700}.sp-lab-up{fill:var(--bad);font-weight:700}.sp-impact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sp-imp{background:var(--soft);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.sp-imp b{font-size:16px}.sp-imp.big{background:color-mix(in srgb, var(--lagoon,#12c2a4) 12%, var(--panel));grid-column:1/-1}.sp-imp.big b{font-size:26px}.sp-imp b.up{color:var(--ok)}.sp-imp b.down{color:var(--bad)}.sp-wtools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sp-dest{color:var(--muted);flex-basis:100%;align-items:center;gap:6px;font-size:13px;display:inline-flex}.sp-msg{background:color-mix(in srgb, var(--accent) 9%, var(--panel));border-radius:8px;margin:0;padding:8px 10px;font-size:13.5px}.sp-rows{flex-direction:column;gap:6px;max-height:620px;padding-right:4px;display:flex;overflow-y:auto}.sp-wgroup .mini-h{margin:10px 0 4px}.sp-wrow{grid-template-columns:minmax(0,1.1fr) minmax(80px,1fr) auto auto auto;align-items:center;gap:8px;font-size:13.5px;display:grid}.sp-wn{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sp-wrow input[type=range]{width:100%;accent-color:var(--accent)}.sp-wv{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--muted);text-align:right;min-width:92px;font-size:12.5px}.sp-wv.up{color:var(--ok);font-weight:600}.sp-wv.down{color:var(--bad);font-weight:600}.sp-stream-wrap{position:relative;overflow-x:auto}.sp-stream-svg{width:100%;min-width:560px;height:auto;display:block}.sp-band{opacity:.85;stroke:var(--panel);stroke-width:1px}.sp-band:hover{opacity:1}.sp-income{fill:none;stroke:var(--fg);stroke-width:2px;stroke-dasharray:5 4}.sp-gl{stroke:var(--line)}.sp-axis{fill:var(--muted);font-size:12px}.sp-axis.fut{font-style:italic}.sp-future{fill:var(--soft);opacity:.6}.sp-guide{stroke:var(--fg);stroke-width:1px;opacity:.4}.sp-tip{background:var(--panel);border:1px solid var(--line);pointer-events:none;border-radius:10px;flex-direction:column;gap:3px;width:220px;padding:8px 10px;font-size:12.5px;display:flex;position:absolute;top:8px}.sp-tip span{float:right;font-variant-numeric:tabular-nums}.sp-tip-sum{border-top:1px solid var(--line);color:var(--muted);padding-top:4px}.sp-legend{color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:12.5px;display:flex}.sp-legend-inc:before{content:"";border-top:2px dashed var(--fg);vertical-align:middle;width:18px;margin-right:6px;display:inline-block}.sp-bhead{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.sp-bhead .link-btn{margin-left:auto}.sp-brow{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(100px,1.4fr) auto minmax(120px,auto) 24px;align-items:center;gap:10px;padding:6px 0;font-size:13.5px;display:grid}.sp-brow.total{border-top:0;font-weight:600}.sp-bbar{background:var(--soft);border-radius:6px;height:10px;position:relative;overflow:visible}.sp-bfill{background:var(--ok);border-radius:6px;position:absolute;top:0;bottom:0;left:0}.sp-bfill.ahead{background:var(--warn)}.sp-bfill.over{background:var(--bad)}.sp-bpace{background:var(--fg);opacity:.55;width:2px;position:absolute;top:-3px;bottom:-3px}.sp-bnum{white-space:nowrap;font-variant-numeric:tabular-nums}.sp-bnum input{width:86px}.sp-bst{white-space:nowrap;font-size:12.5px}.sp-bst.ok{color:var(--ok)}.sp-bst.ahead{color:var(--warn)}.sp-bst.over{color:var(--bad);font-weight:600}@media (max-width:640px){.sp-brow{grid-template-columns:minmax(0,1fr) auto 24px}.sp-brow .sp-bbar{order:5;grid-column:1/-1}.sp-brow .sp-bst{order:6;grid-column:1/-1}.sp-wrow{grid-template-columns:minmax(0,1fr) auto auto auto}.sp-wrow input[type=range]{order:3;grid-column:1/-1}.sp-impact{grid-template-columns:minmax(0,1fr)}}.review-box{border-color:color-mix(in srgb, var(--flamingo) 45%, var(--line));background:color-mix(in srgb, var(--flamingo) 5%, var(--panel))}.review-box .card-head{align-items:baseline;gap:10px;display:flex}.review-count{color:var(--flamingo);font-weight:700}.review-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.review-item{border-top:1px solid var(--line);grid-template-columns:96px 1fr auto;align-items:center;gap:4px 14px;padding:10px 0;display:grid}.review-item:first-child{border-top:0}.review-date{color:var(--muted);font-size:13px}.review-what b{overflow-wrap:anywhere;display:block}.review-what span{color:var(--muted);font-size:12.5px;display:block}.review-amt{color:var(--good,#2f9e5a);white-space:nowrap;text-align:right;font-weight:700}.review-acts{flex-wrap:wrap;grid-column:2/-1;align-items:center;gap:6px;display:flex}.review-acts select{max-width:220px}.review-more{align-self:flex-start;margin-top:6px}@media (max-width:560px){.review-item{grid-template-columns:1fr auto}.review-date,.review-acts{grid-column:1/-1}}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:10px;min-width:0;padding:18px;display:flex}.card h2{margin:0;font-size:1rem;font-weight:600}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.note{color:var(--muted);margin:0;font-size:12.5px}.cats{flex-direction:column;gap:1px;display:flex}.cat{all:unset;box-sizing:border-box;cursor:pointer;border-radius:6px;grid-template-columns:minmax(6.5rem,9.5rem) 1fr auto;align-items:center;gap:10px;padding:5px 6px;font-size:13px;display:grid}.cat:hover,.cat.on{background:var(--soft)}.cat-n{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;display:flex;overflow:hidden}.cat-t{min-width:0;height:12px}.cat-b{border-radius:3px;min-width:2px;height:100%;transition:opacity .2s;display:block}.cats.has-on .cat:not(.on) .cat-b{opacity:.28}.cat-amt{white-space:nowrap;text-align:right}.cat-amt small{color:var(--muted);margin-left:6px;font-size:12px}.dot{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.days{min-height:230px;position:relative}.days svg{display:block}.tip{pointer-events:none;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);white-space:nowrap;z-index:3;border-radius:8px;padding:6px 10px;font-size:12px;position:absolute}.tip span{color:var(--muted);display:block}.tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tools input[type=search]{flex:14rem}.chip{border:1px solid var(--line);background:var(--soft);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;display:inline-flex}.count{color:var(--muted);margin-left:auto;font-size:12.5px}.tablebox{border-top:1px solid var(--line);max-height:38rem;margin-inline:-18px;padding-inline:18px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{background:var(--panel);text-align:left;color:var(--muted);border-bottom:1px solid var(--line);z-index:1;padding:0;font-size:12px;font-weight:600;position:sticky;top:0}th button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;padding:9px 8px;display:block}th button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}th[aria-sort=ascending] button:after{content:" ↑"}th[aria-sort=descending] button:after{content:" ↓"}th.r button{text-align:right}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:6px 8px}td.d{white-space:nowrap;color:var(--muted);width:1%}td.desc{overflow-wrap:anywhere}td.amt{text-align:right;white-space:nowrap;width:1%}td.c{width:1%}.tag{border:1px solid var(--line);background:var(--panel);border-radius:7px;align-items:center;gap:7px;padding:0 0 0 9px;display:inline-flex}.tag select{cursor:pointer;background:0 0;border:0;max-width:11rem;padding:5px 8px 5px 0}.tag select:disabled{cursor:default;opacity:1}tr.flash td{animation:1.2s ease-out flash}@keyframes flash{0%{background:color-mix(in srgb, var(--accent) 18%, transparent)}to{background:0 0}}@media (prefers-reduced-motion:reduce){tr.flash td{animation:none}.cat-b{transition:none}}.empty{text-align:center;color:var(--muted);padding:28px 8px}.manage{flex-direction:column;gap:6px;display:flex}.mrow{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) 11.5rem 11rem 4.5rem auto;align-items:center;gap:8px;padding:6px 0;display:grid}.mrow input[type=color]{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;width:30px;height:30px;padding:2px}.mrow .mc{color:var(--muted);text-align:right;font-size:12.5px}.mconfirm{background:var(--soft);border-radius:8px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.madd{flex-wrap:wrap;gap:8px;padding-top:6px;display:flex}.madd input{flex:12rem}@media (max-width:560px){.mrow{grid-template-columns:auto minmax(0,1fr) auto}.mrow .mk,.mrow .mg{grid-column:2}.mrow .mc{display:none}td.d{font-size:12px}.tag select{max-width:8.5rem}}.toast{left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));background:var(--fg);width:min(36rem,100% - 32px);color:var(--bg);box-shadow:var(--shadow);z-index:60;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;font-size:13.5px;display:flex;position:fixed;transform:translate(-50%)}.toast .msg{flex:14rem}.toast button{border:1px solid color-mix(in srgb, var(--bg) 40%, transparent);color:var(--bg);cursor:pointer;background:0 0;border-radius:8px;padding:6px 10px;font-weight:500}.toast button.main{background:var(--bg);color:var(--fg)}.banner{background:var(--soft);border:1px solid var(--line);border-radius:var(--r);color:var(--muted);padding:14px 16px}.import{border-color:var(--accent)}.imp-sum{color:var(--fg);font-size:13.5px}.imp-list{flex-direction:column;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.imp-list li{border-bottom:1px solid var(--line);grid-template-columns:4.2rem minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:6px 0;display:grid}.imp-list .d{color:var(--muted)}.imp-list .desc{overflow-wrap:anywhere}.imp-list .amt{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.imp-list li.more{color:var(--muted);border:0;display:block}@media (max-width:560px){.imp-list li{grid-template-columns:3.6rem minmax(0,1fr) auto}.imp-list .cat-n{display:none}}.is-empty .tabs,.is-empty .view,.is-empty #period,.is-empty #customRange,.is-empty #manageBtn,.is-empty #manage,.is-empty #importBtn{display:none!important}.start{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;gap:20px;display:grid}.start-drop{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;border:2px dashed color-mix(in srgb, var(--accent) 45%, var(--line));background:color-mix(in srgb, var(--accent) 4%, var(--panel));border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:360px;padding:44px 28px;transition:border-color .15s,background .15s;display:flex}.start-drop:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--panel))}.start-drop:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.start-sheet{width:132px;height:auto;margin-bottom:8px}.start-sheet .s-paper{fill:var(--panel);stroke:var(--line);stroke-width:2px}.start-sheet .s-head{fill:color-mix(in srgb, var(--accent) 14%, var(--panel))}.start-sheet .s-grid{stroke:var(--line);stroke-width:1.5px;fill:none}.start-sheet .s-cell{fill:color-mix(in srgb, var(--fg) 16%, var(--panel))}.start-sheet .s-neg{fill:color-mix(in srgb, var(--fg) 30%, var(--panel))}.start-sheet .s-pos{fill:var(--ok)}.start-title{letter-spacing:-.01em;color:var(--fg);font-size:1.6rem;font-weight:700}.start-text{max-width:34ch;color:var(--muted);font-size:15px;line-height:1.5}.start-btn{pointer-events:none;margin-top:8px;padding:11px 20px;font-size:15px}.start-hint{color:var(--muted);font-size:13px}.start-help{background:var(--panel);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:12px;padding:26px 26px 22px;display:flex}.start-help h2{margin:0;font-size:1.05rem}.start-help ol{counter-reset:step;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.start-help li{counter-increment:step;grid-template-columns:26px minmax(0,1fr);gap:10px;font-size:14.5px;line-height:1.45;display:grid}.start-help li:before{content:counter(step);background:var(--soft);width:24px;height:24px;color:var(--fg);border-radius:50%;place-items:center;margin-top:-1px;font-size:12.5px;font-weight:700;display:grid}.start-help p{color:var(--muted);border-top:1px solid var(--line);margin:4px 0 0;padding-top:14px;font-size:13.5px;line-height:1.5}@media (max-width:760px){.start{grid-template-columns:minmax(0,1fr)}.start-drop{min-height:300px;padding:32px 20px}}@media (hover:none){.start-hint{display:none}}@media (prefers-reduced-motion:reduce){.start-drop{transition:none}}.drop{z-index:30;background:color-mix(in srgb, var(--bg) 82%, transparent);border:3px dashed var(--accent);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.drop span{background:var(--panel);box-shadow:var(--shadow);border-radius:12px;padding:14px 20px;font-size:1.05rem;font-weight:600}.view{flex-direction:column;gap:20px;display:flex}.tabs{flex-wrap:wrap;gap:6px;margin-top:-4px;display:flex}.tab{all:unset;cursor:pointer;color:var(--muted);border-radius:999px;padding:8px 16px;font-weight:650;transition:background-color .15s,color .15s}.tab:hover{background:var(--soft);color:var(--fg)}.tab[aria-selected=true]{color:var(--accent-fg);background:var(--accent)}.tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.range{align-items:center;gap:6px;display:inline-flex}.range input{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:6px 8px}.plan-top{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:16px 24px;display:grid}.field>label{color:var(--muted);margin-bottom:5px;font-size:12px;font-weight:500;display:block}.field select,.field input[type=number]{box-sizing:border-box;border:1px solid var(--line);background:var(--panel);border-radius:8px;width:100%;padding:8px 10px;font-size:15px}.field .note{margin-top:6px}.custom-pct{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;font-size:13px;display:flex}.custom-pct input{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:4.2rem;margin:0 3px 0 6px;padding:5px 7px}.parts{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:12px;display:grid}.part{border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.part-h{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.part-h h3{margin:0;font-size:1rem;font-weight:600}.part-pct{letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.part-nums{color:var(--muted);grid-template-columns:1fr 1fr;gap:4px 12px;font-size:12.5px;display:grid}.part-nums b{color:var(--fg);font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:600;display:block}.meter{background:var(--soft);border-radius:5px;height:10px;position:relative}.meter i{border-radius:5px;height:100%;display:block}.meter .mark{background:var(--fg);border-radius:1px;width:2px;position:absolute;top:-4px;bottom:-4px}.pill{background:var(--soft);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.pill.ok{color:var(--ok)}.pill.bad{color:var(--bad)}.pill.warn{color:var(--warn)}.pc-list{border-top:1px solid var(--line);flex-direction:column;display:flex}.pc{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:5px 0;font-size:13px;display:grid}.pc.zero{color:var(--muted)}.pc .cat-n{min-width:0}.pc .amt{font-variant-numeric:tabular-nums;white-space:nowrap}.pc select{border-radius:6px;max-width:7.5rem;padding:3px 6px;font-size:12px}.tablebox.short{max-height:24rem}th .th{padding:9px 8px;display:block}th.r .th,td.r{text-align:right}td.r{font-variant-numeric:tabular-nums;white-space:nowrap}.cwrap{align-items:center;gap:6px;display:inline-flex}.link-btn{all:unset;cursor:pointer;color:var(--accent);border-radius:4px;padding:2px 4px;font-size:12.5px;font-weight:500}.link-btn:hover{text-decoration:underline}.link-btn:focus-visible,.icon-btn:focus-visible,.split-tag:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.link-btn:disabled{display:none}.split-tag{border:1px dashed var(--muted);background:var(--panel);cursor:pointer;white-space:nowrap;border-radius:7px;align-items:center;gap:4px;padding:5px 10px;font-size:13px;display:inline-flex}.split-tag .dot{margin-right:-1px}tr.has-split td{border-bottom-color:#0000}tr.sub td{color:var(--muted);border-bottom-color:#0000;padding-top:2px;padding-bottom:4px;font-size:12.5px}tr.sub td.amt{color:var(--muted)}tr.sub+tr:not(.sub) td,tr.sub:last-child td{border-top:0}tr.sub:last-child td{border-bottom-color:var(--line);padding-bottom:8px}tr.sub:has(+tr:not(.sub)) td{border-bottom-color:var(--line);padding-bottom:8px}.sub-mark{color:var(--muted)}tr.split-edit td{background:var(--soft);padding:12px}.split-box{flex-direction:column;gap:8px;display:flex}.split-part{grid-template-columns:minmax(0,1fr) 9.5rem auto auto;align-items:center;gap:8px;display:grid}.split-part input[type=text],.split-amt input{border:1px solid var(--line);background:var(--panel);box-sizing:border-box;border-radius:8px;width:100%;min-width:0;padding:6px 9px}.split-amt{align-items:center;gap:4px;display:flex}.split-amt input{text-align:right;font-variant-numeric:tabular-nums}.icon-btn{all:unset;cursor:pointer;width:28px;height:28px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--panel);color:var(--bad)}.icon-btn:disabled{opacity:.3;cursor:default}.split-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding-top:4px;display:flex}.split-status{font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}@media (max-width:640px){.split-part{border-bottom:1px solid var(--line);flex-wrap:wrap;padding-bottom:8px;display:flex}.split-part>input[type=text]{flex:100%}.split-amt{flex:8rem}.split-part .tag{flex:9rem;min-width:0}.split-part .tag select{width:100%;max-width:none}.split-box{max-width:calc(100vw - 72px)}td.c .cwrap{flex-wrap:wrap}}.check{cursor:pointer;align-items:flex-start;gap:8px;margin-top:10px;font-size:13px;display:flex}.check input{accent-color:var(--accent);margin-top:2px}.home-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));align-items:start;gap:16px 24px;display:grid}.home-grid .note{margin-top:6px}.loans{flex-direction:column;gap:12px;display:flex}.loan{border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:12px;padding:14px;display:flex}.loan-h{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.loan-h b{font-size:1rem}.loan-in{grid-template-columns:repeat(auto-fill,minmax(min(100%,10.5rem),1fr));gap:10px 12px;display:grid}.lf{flex-direction:column;min-width:0;display:flex}.lf input,.lf select{border:1px solid var(--line);background:var(--panel);box-sizing:border-box;border-radius:8px;width:100%;min-width:0;padding:7px 9px}.lf input[type=number]{font-variant-numeric:tabular-nums}.lf .note{margin-top:3px;font-size:11.5px}.loan-out{background:var(--soft);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:10px;padding:10px 12px;display:grid}.ls b{font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:600;display:block}.loans{gap:0}.loanrow{border-bottom:1px solid var(--line);flex-direction:column;gap:4px;padding:8px 0;display:flex}.lrow{grid-template-columns:minmax(8rem,1.2fr) minmax(7rem,1fr) minmax(5rem,.6fr) minmax(7rem,1fr) minmax(10rem,1.6fr) minmax(5rem,auto);align-items:center;gap:10px;display:grid}.lrow.lhead{color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:6px;font-size:12px;font-weight:500}.lrow input{border:1px solid var(--line);background:var(--panel);box-sizing:border-box;font-variant-numeric:tabular-nums;border-radius:8px;width:100%;min-width:0;padding:7px 9px}.lcap{display:none}.lcell{min-width:0}.lpay{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:0 6px;font-size:13px;display:flex}.lpay .note{flex-basis:100%;font-size:12px}.lname{text-align:right;font-size:12px}.lrow input.is-sugg{color:var(--accent);border-style:dashed}.lrow input.is-sugg:focus{color:var(--fg);border-style:solid}.lsugg{background:color-mix(in srgb, var(--accent) 9%, var(--panel));border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin:0;padding:7px 10px;font-size:12.5px;display:flex}.lsugg b{font-variant-numeric:tabular-nums}.btn.small{padding:4px 10px;font-size:12.5px}.tx-open{all:unset;cursor:pointer;overflow-wrap:anywhere;border-radius:4px;align-items:baseline;gap:2px;display:inline-flex}.tx-open:hover{color:var(--accent)}.tx-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tx-open.on{font-weight:600}.tx-sub{color:var(--muted);font-size:12px;font-weight:400}.tx-caret{color:var(--muted);margin-left:6px;font-size:12px}tr.detail td{border-bottom:1px solid var(--line);padding:0 8px 12px}.dt{border:1px solid var(--accent);background:var(--panel);border-radius:10px;flex-direction:column;gap:12px;padding:12px 14px;display:flex}.dt-head{align-items:baseline;gap:12px;display:flex}.dt-head>div{flex:1;min-width:0}.dt-amt{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.dt-sec{flex-direction:column;gap:6px;display:flex}.dt-sec .flabel{margin:0}.dt-tag{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.dt-tag .tag select{max-width:13rem}.dt-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dt-chip{all:unset;box-sizing:border-box;white-space:nowrap;cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:999px;flex:none;padding:4px 11px;font-size:12.5px}.dt-chip:hover:not(:disabled){border-color:var(--muted)}.dt-chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);font-weight:600}.dt-chip.add{color:var(--accent);border-style:dashed}.dt-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.dt-chip:disabled{cursor:default;opacity:.6}.dt-group{flex-direction:column;gap:4px;display:flex}.dt-group .note{font-size:12px}.dt-add{align-items:center;gap:4px;display:inline-flex}.dt-add input{border:1px solid var(--accent);background:var(--panel);border-radius:999px;width:10rem;padding:4px 11px;font-size:12.5px}.dt-part{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding-top:8px;display:flex}.dt-part-h{justify-content:space-between;gap:8px;font-size:13px;display:flex}.dt-part-h b{font-variant-numeric:tabular-nums}.dt-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding-top:10px;display:flex}@media (max-width:640px){#ledger table,#ledger tbody{display:block}#ledger thead{display:none}#ledger tbody tr{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;column-gap:8px;padding:7px 0;display:grid}#ledger tbody td{border:0;width:auto;padding:1px 0}#ledger td.d{grid-area:1/1;font-size:12px}#ledger td.desc{grid-area:1/2;padding-left:0!important}#ledger td.amt{grid-area:1/3}#ledger td.c{grid-area:2/1/auto/-1;padding-top:4px}#ledger tr.grp,#ledger tr.in-grp{background:color-mix(in srgb, var(--soft) 50%, var(--panel))}#ledger tr.grp td,#ledger tr.in-grp td{background:0 0}#ledger .grp-btn{flex-wrap:wrap}#ledger tbody tr:not(.grp) td.c:empty{display:none}#ledger tr.split-edit,#ledger tr.detail{padding:6px 0 10px;display:block}#ledger tr.split-edit td,#ledger tr.detail td{padding:0;display:block}#ledger tr.sub{border-bottom:0;padding:2px 0 2px 12px}#ledger tr.in-grp{padding-left:12px}#ledger tr.in-grp td:first-child{padding-left:0}#ledger .tablebox{margin-inline:0;padding-inline:0}.dt{padding:10px}.dt-tag .tag{width:100%}.dt-tag .tag select{flex:1;max-width:none}}.health{flex-direction:column;gap:8px;display:flex}.hb-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.hb-head .flabel{margin:0}.hb-score{font-size:14px;font-weight:600}.hb-score b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.6rem}.hb-score.ok{color:var(--ok)}.hb-score.warn{color:var(--warn)}.hb-score.bad{color:var(--bad)}.hb-bar{background:linear-gradient(90deg, var(--bad) 0%, var(--warn) 45%, var(--warn) 60%, var(--ok) 80%, var(--ok) 100%);opacity:.9;border-radius:6px;height:12px;position:relative}.hb-mark{background:var(--fg);width:4px;box-shadow:0 0 0 2px var(--panel);border-radius:2px;position:absolute;top:-5px;bottom:-5px}.hb-scale{color:var(--muted);grid-template-columns:40% 20% 20% 20%;font-size:11px;display:grid}.hb-scale span:nth-child(n+2){text-align:center}.hb-scale span:last-child{text-align:right}.hb-checks{flex-wrap:wrap;gap:6px;display:flex}.hb-c{background:var(--soft);border-radius:12px;padding:4px 10px;font-size:12.5px;line-height:1.4;display:inline-block}.hb-c i{margin-right:4px;font-style:normal;font-weight:700}.hb-c.ok i{color:var(--ok)}.hb-c.warn i{color:var(--warn)}.hb-c.bad i{color:var(--bad)}.hb-c b{font-weight:600}.plan-sheet .health{border:1px solid var(--line);border-radius:10px;padding:12px}.hb-c{cursor:pointer;font:inherit;color:inherit;border:1px solid #0000}.hb-c:hover{border-color:var(--line)}.hb-c:focus-visible{outline:2px solid var(--accent)}.hb-hint{margin:0;font-size:12px}.modal{z-index:40;padding:max(16px, env(safe-area-inset-top,0px)) max(16px, env(safe-area-inset-right,0px)) max(16px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));background:#0b122073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:var(--panel);color:var(--fg);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;width:min(40rem,100%);max-height:100%;display:flex;overflow:hidden}.m-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 8px;display:flex}.m-head h2{margin:0;font-size:1.15rem}.m-head .note{margin:2px 0 0}.m-total{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:0 18px 10px;display:flex}.m-total b{font-variant-numeric:tabular-nums;font-size:1.3rem}.m-body{padding:4px 18px 8px;overflow:auto}.modal-box>.note{border-top:1px solid var(--line);margin:0;padding:8px 18px 14px;font-size:12px}.m-grp{border-bottom:1px solid var(--line);padding:8px 0}.m-grp-h{justify-content:space-between;gap:8px;padding-bottom:4px;font-size:13.5px;font-weight:600;display:flex}.m-grp-h b{font-variant-numeric:tabular-nums}.m-row{box-sizing:border-box;border-radius:6px;grid-template-columns:3.6rem minmax(0,1fr) auto;align-items:baseline;gap:8px;width:100%;padding:4px 6px;font-size:13px;display:grid}button.m-row{all:unset;box-sizing:border-box;cursor:pointer;border-radius:6px;grid-template-columns:3.6rem minmax(0,1fr) auto;align-items:baseline;gap:8px;width:100%;padding:4px 6px;font-size:13px;display:grid}button.m-row:hover,button.m-row.on{background:var(--soft)}button.m-row{grid-template-columns:3.6rem minmax(0,1fr) auto 12px}.m-dt{margin:4px 0 10px}button.m-row:focus-visible{outline:2px solid var(--accent)}.m-d{color:var(--muted);font-size:12px}.m-l{overflow-wrap:anywhere}.m-a{font-variant-numeric:tabular-nums;white-space:nowrap}.hb-c.info i{color:var(--accent)}.hb-c.info{background:color-mix(in srgb, var(--accent) 8%, var(--soft))}.ot-badge{color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:999px;margin-left:6px;padding:0 7px;font-size:11px;font-weight:600;line-height:1.5;display:inline-block}.check.ot{white-space:nowrap;margin:0;font-size:12.5px}.split-part{grid-template-columns:minmax(0,1fr) 9.5rem auto auto auto}tr.excluded td{opacity:.5}tr.excluded td.amt{text-decoration:line-through}.ot-badge.ex{color:var(--muted);border-color:var(--line)}.pg-row input{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:16rem;max-width:100%;padding:6px 9px}.sheet-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:2px;display:flex}.sheet-tab{all:unset;cursor:pointer;color:var(--muted);background:var(--soft);border:1px solid #0000;border-bottom:0;border-radius:8px 8px 0 0;margin-bottom:-1px;padding:7px 14px;font-size:13px;font-weight:600}.sheet-tab[aria-selected=true]{background:var(--panel);color:var(--fg);border-color:var(--line)}.sheet-tab.add{color:var(--accent);background:0 0}.sheet-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sheet-tab:disabled{cursor:default;opacity:.5}.plan-new{flex-wrap:wrap;align-items:end;gap:12px;padding-top:12px;display:flex}.plan-new>.note{flex-basis:100%;margin:0}.plan-new .lf{min-width:12rem}.plan-new input,.plan-new select{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:7px 9px}.plan-sheet{flex-direction:column;gap:14px;padding-top:14px;display:flex}.sheet-h{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.sheet-name{background:0 0;border:1px solid #0000;border-radius:8px;width:14rem;max-width:100%;margin-left:-6px;padding:3px 6px;font-size:1.15rem;font-weight:700}.sheet-name:hover,.sheet-name:focus{border-color:var(--line);background:var(--panel)}.sheet-h .actions{margin-left:auto}.plan-model{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.plan-model .flabel{width:100%;margin:0}.pl-sec{flex-direction:column;display:flex}.pl-sec-h{border-bottom:2px solid var(--line);justify-content:space-between;align-items:baseline;padding:6px 0;display:flex}.pl-sec-h h3{margin:0;font-size:.95rem}.pl-sec-h b{font-variant-numeric:tabular-nums}.pl-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(8rem,1.3fr) minmax(10rem,1.5fr) 6rem 8rem 6rem 28px;align-items:center;gap:8px;padding:4px 0;font-size:13px;display:grid}.pl-row input,.pl-row select{box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:6px;width:100%;min-width:0;padding:5px 7px}.pl-row input:hover,.pl-row input:focus,.pl-row select:hover,.pl-row select:focus{border-color:var(--line);background:var(--panel)}.pl-row input[type=number]{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.pl-row .tag{background:0 0;border:0;padding-left:4px}.pl-row .tag select{max-width:none}.pl-head{color:var(--muted);border-bottom:1px solid var(--line);font-size:11.5px;font-weight:500}.pl-head span:nth-child(n+3){text-align:right}.pl-was,.pl-act{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.pl-act{color:var(--fg)}.pl-row.changed .pl-was{text-decoration:line-through}.pl-row.changed input[type=number]{color:var(--accent)}.pl-row.added{background:color-mix(in srgb, var(--accent) 6%, transparent)}.pl-foot{padding:6px 0}.analysis>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 12px;list-style:none;display:flex}.analysis>summary::-webkit-details-marker{display:none}.analysis>summary h2{margin:0;font-size:1rem}.analysis>summary h2:before{content:"▸ ";color:var(--muted)}.analysis[open]>summary h2:before{content:"▾ "}.analysis[open]>summary{margin-bottom:14px}.analysis>.card,.analysis>.tiles{margin-top:14px}.analysis>.card{box-shadow:none;border:1px solid var(--line)}.plan-totals{flex-wrap:wrap;align-items:baseline;gap:6px 18px;font-size:14px;display:flex}.plan-totals b{font-variant-numeric:tabular-nums;margin-left:4px}.pstep{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding-top:12px;display:flex}.pstep-h,.review>summary{align-items:center;gap:10px;display:flex}button.pstep-h{all:unset;cursor:pointer;border-radius:8px;align-items:center;gap:10px;margin:-4px -6px;padding:4px 6px;display:flex}button.pstep-h:hover{background:var(--soft)}button.pstep-h:focus-visible{outline:2px solid var(--accent)}.pstep-h .caret{color:var(--muted);font-size:12px}.pstep-h .note{margin:0}.pstep.closed{padding-bottom:2px}.pstep-h h3,.review>summary h3{margin:0;font-size:1rem}.pstep-h b{font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.05rem}.pnum{background:var(--accent);width:24px;height:24px;color:var(--accent-fg);border-radius:50%;flex:none;place-items:center;font-size:12.5px;font-weight:700;display:inline-grid}.pstep-sub{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.pstep-sub .note,.pstep>.note{margin:0}.pi{border-bottom:1px solid var(--line);padding:4px 0}.pi-row{grid-template-columns:minmax(0,1fr) 9rem 28px;align-items:center;gap:8px;display:grid}.pi.cost .pi-row{grid-template-columns:minmax(8rem,1.4fr) 9rem minmax(9rem,1.2fr) 8rem 28px}.pi input,.pi select{box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:6px;width:100%;min-width:0;padding:5px 7px;font-size:13.5px}.pi input:hover,.pi input:focus,.pi select:hover,.pi select:focus,.pstep>.pi:not(.cost) input[type=text],.pstep>.pi:not(.cost) input[type=number]{border-color:var(--line);background:var(--panel)}.pi input[type=number]{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.pi-info{color:var(--muted);padding:0 7px 2px;font-size:11.5px}.pi.added{background:color-mix(in srgb, var(--accent) 6%, transparent)}.pc-block{border:1px solid var(--line);border-radius:10px}.pc-head{width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.pc-head:hover{background:var(--soft);border-radius:10px}.pc-head .pc-name{font-weight:600}.pc-head b{font-variant-numeric:tabular-nums;margin-left:auto}.pc-modebar{flex-wrap:wrap;align-items:center;gap:6px 12px;padding:4px 0 8px;display:flex}.pc-modebar .note{margin:0}.pc-mode button{padding:4px 10px;font-size:12.5px}.budget-row{flex-wrap:wrap;align-items:center;gap:10px;padding:4px 0;font-weight:600;display:flex}.budget-in{text-align:right;font-variant-numeric:tabular-nums;border:1px solid var(--line);background:var(--panel);border-radius:8px;width:9rem;padding:7px 9px;font-size:1.05rem;font-weight:700}.budget-note{margin:0 0 6px}.budget-ref{margin:2px 0 8px;font-size:13px}.budget-ref summary{cursor:pointer;color:var(--accent);font-size:12.5px}.ref-row{border-bottom:1px solid var(--line);color:var(--muted);grid-template-columns:minmax(0,1fr) auto 6rem;gap:8px;padding:3px 0;display:grid}.ref-row b{text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.ref-row>span{overflow-wrap:anywhere;min-width:0}@media (max-width:560px){.ref-row{grid-template-columns:minmax(0,1fr) 5.5rem}.ref-row .note{grid-area:2/1;font-size:11.5px}.ref-row b{grid-area:1/2}}.pc-head .caret{color:var(--muted);width:1em}.pc-items{flex-direction:column;padding:0 12px 8px;display:flex}.pc-items .link-btn{align-self:flex-start;margin-top:6px}.add-cost{border:1px dashed var(--line);border-radius:10px;grid-template-columns:minmax(8rem,1.4fr) minmax(9rem,1.2fr) 9rem 7rem auto;align-items:center;gap:8px;margin-top:6px;padding:10px 12px;display:grid}.add-cost .flabel{grid-column:1/-1;margin:0}.add-cost input,.add-cost select{border:1px solid var(--line);background:var(--panel);box-sizing:border-box;border-radius:8px;width:100%;min-width:0;padding:7px 9px}.review>summary{cursor:pointer;list-style:none}.review>summary::-webkit-details-marker{display:none}.review>summary h3:after{content:" ▸";color:var(--muted);font-size:12px;font-weight:400}.review[open]>summary h3:after{content:" ▾";font-size:12px}.review-in{margin-top:10px}.pstep-wait{border-top:1px solid var(--line);padding-top:12px}.ex-body{flex-direction:column;gap:4px;display:flex}.ex-quick{gap:14px;margin-bottom:4px;display:flex}.ex-part{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:8px;padding:8px 4px;display:flex}.ex-part b{font-variant-numeric:tabular-nums;margin-left:auto}.ex-part .note{margin:0}.ex-fmts{flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:12px;display:flex}.ex-fmts .flabel{margin:0}.ex-fmt{cursor:pointer;align-items:center;gap:6px;display:flex}.m-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;display:flex}.st-items{flex-direction:column;padding:0 12px 8px;display:flex}.st-item{border-bottom:1px solid var(--line);grid-template-columns:4.2rem minmax(0,1fr) minmax(9rem,14rem) 6.5rem;align-items:center;gap:8px;padding:3px 0;font-size:13px;display:grid}.st-item:last-child{border-bottom:0}.st-item b{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.st-item .note{margin:0}.st-m{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.st-item select{background:0 0;border:1px solid #0000;border-radius:6px;width:100%;min-width:0;padding:4px 6px;font-size:12.5px}.st-item select:hover,.st-item select:focus{border-color:var(--line);background:var(--panel)}.dt-sec .pc-block{margin-top:6px}.st-actions{gap:8px;margin-top:8px;display:flex}@media (max-width:640px){.st-item{grid-template-columns:minmax(0,1fr) 6rem}.st-item .note{display:none}.st-item select{grid-area:2/1/auto/-1}}@media (max-width:760px){.pi.cost .pi-row{grid-template-columns:minmax(0,1fr) 7.5rem 28px;row-gap:4px}.pi.cost .pi-row>:first-child{grid-area:1/1}.pi.cost .pi-row>:nth-child(4){grid-area:1/2}.pi.cost .pi-row>:nth-child(5){grid-area:1/3}.pi.cost .pi-row>:nth-child(2){grid-area:2/1}.pi.cost .pi-row>:nth-child(3){grid-area:2/2/auto/4}.pi-row{grid-template-columns:minmax(0,1fr) 7.5rem 28px}.add-cost{grid-template-columns:1fr 1fr}.add-cost>input[type=text]{grid-column:1/-1}.pl-head{display:none}.pl-row{grid-template-columns:minmax(0,1fr) 7.5rem 28px;row-gap:2px;padding:6px 0}.pl-row>:first-child{grid-area:1/1}.pl-row>:nth-child(4){grid-area:1/2}.pl-row>:nth-child(6){grid-area:1/3}.pl-row>:nth-child(2){grid-area:2/1}.pl-row>:nth-child(3){grid-area:2/2;font-size:11.5px}.pl-row>:nth-child(3):before{content:"was "}.pl-row>:nth-child(5){text-align:left;grid-area:3/1/auto/-1;font-size:11.5px}.pl-row>:nth-child(5):not(:empty):before{content:"Actual so far: ";color:var(--muted)}.pl-row>:nth-child(5):empty{display:none}.sheet-h .actions{margin-left:0}}.check.inline{white-space:nowrap;align-items:center;margin:0}tr.grp td{background:color-mix(in srgb, var(--soft) 60%, var(--panel))}tr.grp.open td{border-bottom-color:#0000}.grp-btn{all:unset;cursor:pointer;align-items:baseline;gap:6px;font-weight:600;display:inline-flex}.grp-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.grp-btn .caret{color:var(--muted);width:10px;display:inline-block}.grp-n{color:var(--muted);font-size:12px;font-weight:400}.grp-tags{flex-wrap:wrap;gap:2px 10px;font-size:12.5px;display:flex}tr.in-grp td:first-child{padding-left:22px}tr.in-grp td{background:color-mix(in srgb, var(--soft) 25%, var(--panel))}tr.in-grp td.desc{padding-left:26px}.newsub{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.newsub .flabel{width:100%;margin:0 6px 0 0}.newsub select,.newsub input{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;padding:6px 9px}.newsub input{flex:10rem}.ns-wrap{align-items:center;gap:4px;display:inline-flex}.ns-in{border:1px solid var(--accent);background:var(--panel);border-radius:6px;width:9rem;padding:5px 8px}.vis-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.vis-pie{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.pie{flex:0 210px;min-width:160px;max-width:230px}.pie .slice{cursor:pointer;transition:fill-opacity .15s}.pie .slice:hover{fill-opacity:1}.vis-legend{flex-direction:column;flex:14rem;gap:1px;min-width:0;display:flex}.vl{all:unset;cursor:pointer;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto 2.6rem;align-items:center;gap:8px;padding:4px 6px;font-size:13px;display:grid}.vl:hover,.vl.on{background:var(--soft)}.vl.dim{opacity:.5}.vl:disabled{cursor:default}.vl:focus-visible{outline:2px solid var(--accent)}.vl-n{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vl-v{font-variant-numeric:tabular-nums;white-space:nowrap}.vl small{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.vis-bars{height:220px}.mc-col.vb{all:unset;box-sizing:border-box;cursor:pointer;border-radius:6px;flex-direction:column;flex:1 1 0;align-items:center;gap:3px;min-width:40px;padding:2px 0;display:flex}.mc-col.vb:hover,.mc-col.vb.on{background:var(--soft)}.mc-col.vb.dim{opacity:.45}.mc-col.vb:focus-visible{outline:2px solid var(--accent)}.seg{border:1px solid var(--line);background:var(--soft);border-radius:9px;flex-wrap:wrap;padding:2px;display:inline-flex}.seg button{all:unset;cursor:pointer;color:var(--muted);border-radius:7px;padding:5px 11px;font-size:13px;font-weight:500}.seg button[aria-pressed=true]{background:var(--panel);color:var(--fg);box-shadow:0 1px 2px #00000014}.seg button:focus-visible{outline:2px solid var(--accent)}.mort-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));gap:12px;display:grid}@media (max-width:640px){.mort-stats{grid-template-columns:1fr 1fr}.ms b{font-size:1.05rem}.mc-bars{gap:3px}.mc-col{min-width:28px}.mc-val,.mc-bal{font-size:9.5px}}.ms{flex-direction:column;gap:1px;min-width:0;display:flex}.ms b{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.25rem;font-weight:600}.ms .note{font-size:12px}.income-share{flex-direction:column;gap:6px;padding-top:4px;display:flex}.is-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;font-size:14px;display:flex}.is-head b{font-size:1.15rem}.ibar{background:var(--soft);border-radius:7px;height:14px;display:flex;overflow:hidden}.ib{height:100%;display:block}.int{background:var(--bad)}.am{background:var(--ok)}.rest{background:var(--soft);border:1px solid var(--line)}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 14px;font-size:12px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.mort-chart{flex-direction:column;gap:8px;display:flex}.mc-bars{align-items:stretch;gap:6px;height:210px;padding-top:4px;display:flex;overflow-x:auto}.mc-col{border-radius:6px;flex-direction:column;flex:1 1 0;align-items:center;gap:3px;min-width:34px;display:flex}.mc-col:focus-visible{outline:2px solid var(--accent)}.mc-stack{flex-direction:column;flex:1;justify-content:flex-end;width:70%;max-width:44px;display:flex}.mc-stack span{width:100%;display:block}.mc-stack span.int{opacity:.85;border-radius:4px 4px 0 0}.mc-stack span.am{opacity:.85}.mc-val{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10.5px}.mc-lab{color:var(--muted);white-space:nowrap;font-size:11.5px}.mc-bal{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10.5px}.timed{justify-content:space-between;align-items:flex-start;gap:8px;transition:opacity .25s;display:flex}.timed.fade{opacity:0}@media (prefers-reduced-motion:reduce){.timed{transition:none}}.lwarn.timed{background:color-mix(in srgb, var(--warn) 10%, var(--panel));border-radius:8px;padding:7px 10px}.note-x{all:unset;cursor:pointer;width:22px;height:22px;color:var(--muted);border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.note-x:hover{background:var(--panel);color:var(--fg)}.note-x:focus-visible{outline:2px solid var(--accent)}.lwarn{color:var(--warn);margin:0;font-size:12.5px}.lmore summary{cursor:pointer;color:var(--accent);width:max-content;font-size:12.5px}.lmore-in{grid-template-columns:repeat(auto-fill,minmax(min(100%,12rem),1fr));align-items:end;gap:10px;padding:8px 0 4px;display:grid}.lrm{justify-content:flex-end}.found{background:var(--soft);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding:8px 12px;font-size:13px;display:flex}.home .home-row{flex-wrap:wrap;align-items:center;gap:8px 12px;font-weight:500;display:flex}.home .home-row input{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:14rem;max-width:100%;padding:7px 9px}@media (max-width:760px){.lrow{grid-template-columns:1fr 1fr}.lrow.lhead{display:none}.lcap{color:var(--muted);margin-bottom:3px;font-size:11.5px;display:block}.lname{text-align:left;color:var(--fg);grid-area:1/1/auto/-1;font-size:13px;font-weight:600}.lcell:nth-child(5){grid-column:1/-1}}.loan-group{border:1px solid var(--line);border-radius:var(--r);background:color-mix(in srgb, var(--soft) 45%, var(--panel));flex-direction:column;gap:12px;padding:14px;display:flex}.loan-group-h{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.loan-group-h h3{margin:0;font-size:1.1rem;font-weight:700}.loan-parts{flex-direction:column;gap:10px;display:flex}.loan.part{background:var(--panel)}.rate-big{font-variant-numeric:tabular-nums;font-weight:700}.rate-change{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rate-change .flabel{margin:0}.rate-change input{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;padding:6px 9px}.rate-change input[type=number]{width:7rem}.rate-change .note{font-size:12px}.rate-hist{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rate-hist .flabel{margin:0 4px 0 0}.rate-hist .subchip{font-variant-numeric:tabular-nums;padding:2px 2px 2px 10px;font-size:12.5px}.loan-foot{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.wealth-tag{color:var(--ok);white-space:nowrap;margin-left:4px;font-size:11px;font-weight:600}.subchip .wbtn{all:unset;cursor:pointer;color:var(--muted);white-space:nowrap;border:1px solid #0000;border-radius:999px;margin-left:4px;padding:2px 7px;font-size:11px;font-weight:600}.subchip .wbtn[aria-pressed=true]{color:var(--ok);border-color:var(--ok)}.subchip .wbtn:focus-visible{outline:2px solid var(--accent)}.subchip .wbtn:disabled{cursor:default}.mini-h{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;margin:6px 0 0;font-size:12px;font-weight:600}.pc.pc-sub{padding-block:3px;font-size:12.5px}.pc.pc-sub .cat-n{gap:6px;padding-left:14px}.pc .note{white-space:nowrap;font-size:11.5px}.stack{flex-direction:column;gap:12px;min-width:0;display:flex}.cat.subcat{color:var(--muted);padding-block:2px;font-size:12px}.cat.subcat .cat-n{gap:6px;padding-left:10px}.cat.subcat .cat-t{height:7px}.cat.subcat .cat-b{opacity:.6}.cats.has-on .cat.subcat:not(.on) .cat-b{opacity:.2}.cat.subcat.on{color:var(--fg)}.msubs{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;padding-left:38px;display:flex}.subchip{border:1px solid var(--line);background:var(--soft);border-radius:999px;align-items:center;padding-left:10px;display:inline-flex}.subchip input{background:0 0;border:0;min-width:3rem;padding:4px 0;font-size:12.5px}.subchip .icon-btn{width:24px;height:24px}.subadd input{border:1px dashed var(--line);background:0 0;border-radius:999px;width:9rem;padding:4px 11px;font-size:12.5px}.flabel{color:var(--muted);margin-bottom:5px;font-size:12px;font-weight:500;display:block}.bigsum{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.6rem;font-weight:600}.inc-table td{vertical-align:middle}.inc-table td input{border:1px solid var(--line);background:var(--panel);text-align:right;font-variant-numeric:tabular-nums;border-radius:6px;width:7.5rem;padding:5px 7px}.inc-table tfoot td{border-top:2px solid var(--line);border-bottom:0;font-weight:600}.inc-table tr.untagged td:first-child{color:var(--warn)}.note.own{margin-top:2px;font-size:11px;display:block}.inc-tag summary{cursor:pointer;padding:6px 0;font-size:13.5px;font-weight:500}.inc-txs{flex-direction:column;display:flex}.inc-tx{border-bottom:1px solid var(--line);grid-template-columns:4rem minmax(0,1fr) auto minmax(9rem,15rem);align-items:center;gap:10px;padding:6px 0;font-size:13px;display:grid}.inc-tx .d{color:var(--muted)}.inc-tx .amt{font-variant-numeric:tabular-nums;white-space:nowrap}.inc-tx select{border:1px solid var(--line);background:var(--panel);border-radius:6px;width:100%;padding:5px 7px}.inc-tx.needs .desc:after{content:" · needs a sub-tag";color:var(--warn);font-size:12px}.inc-wrap{flex-direction:column;display:flex}.inc-dt{gap:8px;margin:0 0 8px}.inc-tx.open{border-bottom:0}@media (max-width:640px){.inc-tx{grid-template-columns:3.4rem minmax(0,1fr) auto}.inc-tx>:last-child{grid-column:1/-1}.msubs{padding-left:0}.inc-table td input{width:6rem}}[hidden]{display:none!important}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}body{margin:0}body:has(#view-settings:not([hidden])) .wrap>.top{display:none}.set-title{letter-spacing:-.03em;margin:4px 0 0;font-size:1.9rem;font-weight:800}.has-nav .wrap{padding-top:20px}.has-nav .wrap>.top h1{display:none}.has-nav .wrap>.top{align-items:center}.nav{z-index:25;background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(12px);backdrop-filter:saturate(1.6)blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-in{max-width:76rem;padding:10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));align-items:center;gap:18px;margin:0 auto;display:flex}.nav-brand{letter-spacing:-.02em;color:var(--fg);flex:none;align-items:center;gap:9px;font-size:17px;font-weight:800;text-decoration:none;display:inline-flex}.nav-brand .brand-mark{width:30px;height:30px}.nav .tabs{scrollbar-width:none;flex-wrap:nowrap;flex:1;margin:0;overflow-x:auto}.nav .tabs::-webkit-scrollbar{display:none}.nav .tab{white-space:nowrap}.nav-right{flex:none;margin-left:auto;position:relative}.nav-user{all:unset;cursor:pointer;border-radius:50%}.nav-user:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.nav-avatar{color:#1b1840;background:var(--mango);border-radius:50%;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.nav-menu{background:var(--panel);border:1px solid var(--line);min-width:230px;box-shadow:var(--shadow);border-radius:14px;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.nav-menu[hidden]{display:none}.nav-menu-who{border-bottom:1px solid var(--line);flex-direction:column;gap:2px;margin-bottom:4px;padding:10px 12px 8px;display:flex}.nav-menu-who b{overflow-wrap:anywhere}.nav-menu-who span{color:var(--muted);font-size:12.5px}.nav-menu [role=menuitem]{all:unset;cursor:pointer;border-radius:9px;padding:9px 12px;font-weight:600}.nav-menu [role=menuitem]:hover,.nav-menu [role=menuitem]:focus-visible{background:var(--soft)}#view-settings:not([hidden]){flex-direction:column;gap:16px;display:flex}body.is-empty.has-nav #view-settings:not([hidden]){display:flex!important}body.is-empty.has-nav:has(#view-settings:not([hidden])) #emptyStart{display:none}@media (max-width:720px){.nav-in{flex-wrap:wrap;gap:10px;padding-bottom:8px}.nav .tabs{flex-basis:100%;order:3}.nav-brand span{font-size:16px}}.nav-note{opacity:0;pointer-events:none;z-index:70;background:var(--fg);color:var(--bg);border-radius:12px;max-width:calc(100vw - 32px);padding:11px 16px;font-weight:600;transition:opacity .2s,transform .2s;position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px)}.nav-note.show{opacity:1;transform:translate(-50%)}.set-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.set-col{flex-direction:column;gap:16px;min-width:0;display:flex}.set-card{gap:14px}.set-head h2{font-size:1.05rem}.set-head .note{margin:4px 0 0}.set-row{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.set-k{color:var(--muted);min-width:4rem}.set-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.set-more summary{cursor:pointer;color:var(--accent);font-weight:600}.set-more .pw-form{padding:12px 0 0}.set-seg{align-self:flex-start}.set-seg button{padding:7px 14px}.fd-list.set-files{max-height:none;padding:0}.set-card-danger{border-color:color-mix(in srgb, var(--bad) 35%, var(--line));background:color-mix(in srgb, var(--bad) 4%, var(--panel))}.set-danger input{width:9rem}@media (max-width:820px){.set-grid{grid-template-columns:minmax(0,1fr)}}.files-dialog{border:1px solid var(--line);background:var(--panel);width:min(640px,100vw - 32px);color:var(--fg);box-shadow:var(--shadow,0 8px 28px #0000002e);border-radius:14px;padding:0}.files-dialog::backdrop{background:#0a0e1473}.fd-head{justify-content:space-between;align-items:center;padding:16px 18px 4px;display:flex}.fd-head h2{margin:0;font-size:1.1rem}.fd-x{all:unset;cursor:pointer;color:var(--muted);border-radius:6px;padding:4px 8px}.fd-note{color:var(--muted);margin:0 18px 8px;font-size:13px}.fd-list{max-height:60vh;padding:4px 18px 16px;font-size:13.5px;overflow:auto}.fd-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.fd-row b{overflow-wrap:anywhere;display:block}.fd-meta{color:var(--muted);font-size:12px}.fd-actions{gap:6px;display:flex}.fd-actions button{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--fg);border-radius:7px;padding:4px 9px;font-size:12.5px}.fd-actions button.danger{color:var(--bad)}.fd-confirm{background:color-mix(in srgb, var(--flamingo) 8%, var(--panel));border-radius:8px;flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px;padding:8px 10px;display:flex}.fd-confirm[hidden]{display:none}.fd-confirm .fd-note{color:var(--muted);flex-basis:100%;margin:0;font-size:12.5px}.fd-confirm .btn.small.danger{color:var(--bad)}.auth-page{box-sizing:border-box;min-height:100vh;background:radial-gradient(circle at 12% 18%, var(--mango) 0 clamp(70px, 12vw, 150px), transparent calc(clamp(70px, 12vw, 150px) + 1px)), radial-gradient(circle at 88% 86%, var(--lagoon) 0 clamp(90px, 15vw, 200px), transparent calc(clamp(90px, 15vw, 200px) + 1px)), radial-gradient(circle at 92% 12%, var(--accent) 0 clamp(30px, 5vw, 60px), transparent calc(clamp(30px, 5vw, 60px) + 1px)), var(--bg);place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.auth-card{background:var(--panel);border:1px solid var(--line);box-sizing:border-box;border-radius:16px;flex-direction:column;gap:12px;width:min(400px,100%);padding:28px 26px 22px;display:flex}.auth-brand{letter-spacing:-.02em;color:var(--fg);align-items:center;gap:9px;font-size:16px;font-weight:800;display:flex}.auth-brand .brand-mark{width:28px;height:28px}.auth-card h1{margin:6px 0 0;font-size:1.5rem}.auth-text,.auth-info{color:var(--muted);margin:0;font-size:14px}.auth-info{color:var(--ok)}.auth-field{flex-direction:column;gap:5px;display:flex}.auth-field label{font-size:13px;font-weight:600}.auth-field input,.auth-pw input,.pw-form input{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--fg);box-sizing:border-box;border-radius:9px;width:100%;padding:10px 12px;font-size:15px}.auth-field input:focus,.auth-pw input:focus,.pw-form input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}.auth-pw{position:relative}.auth-pw input{padding-right:64px}.auth-eye{all:unset;cursor:pointer;color:var(--accent);padding:4px;font-size:12.5px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.auth-rules{background:var(--soft);color:var(--muted);border-radius:9px;gap:3px;margin:0;padding:10px 12px;font-size:12.5px;list-style:none;display:grid}.auth-rules li:before{content:"○ "}.auth-rules li.ok{color:var(--ok)}.auth-rules li.ok:before{content:"✓ "}.auth-msg{color:var(--bad);min-height:1em;margin:0;font-size:13.5px}.auth-msg:empty{display:none}.auth-submit{justify-content:center;width:100%;padding:11px;font-size:15px}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.pw-form{flex-direction:column;gap:10px;padding:0 18px 18px;display:flex}.pw-form .fd-head{padding:16px 0 4px}.pw-form label{flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.pw-form .fd-actions{justify-content:flex-end}.pw-form button.primary{background:var(--accent);color:var(--accent-fg);border-color:#0000}.lp{max-width:76rem;padding:0 max(16px, env(safe-area-inset-right)) 48px max(16px, env(safe-area-inset-left));color:var(--fg);margin:0 auto;overflow-x:clip}.lp-top{justify-content:space-between;align-items:center;padding:18px 0;display:flex}.lp-name{letter-spacing:-.02em;align-items:center;gap:10px;font-size:19px;font-weight:800;display:inline-flex}.lp-name .brand-mark{width:34px;height:34px}.lp-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(28px,5vw,64px);padding:clamp(28px,6vw,72px) 0 clamp(40px,7vw,96px);display:grid}.lp-hero h1{letter-spacing:-.04em;max-width:11ch;margin:0;font-size:clamp(2.7rem,6.4vw,5rem);font-weight:800;line-height:1}.lp-lead{color:var(--muted);max-width:46ch;margin:22px 0 0;font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.55}.lp-cta{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:30px;display:flex}.lp-go{border-radius:14px;padding:13px 28px;font-size:16.5px}.lp-cta-note{color:var(--muted);max-width:30ch;font-size:13.5px;line-height:1.4}.lp-stage{background:var(--accent);isolation:isolate;border-radius:28px;padding:clamp(18px,3vw,34px);position:relative}.lp-stage:before,.lp-stage:after{content:"";z-index:-1;border-radius:50%;position:absolute}.lp-stage:before{aspect-ratio:1;background:var(--mango);width:46%;top:-9%;right:-6%}.lp-stage:after{aspect-ratio:1;background:var(--lagoon);width:30%;bottom:-7%;left:-5%}.lp-figure{background:var(--panel);border-radius:20px;margin:0;padding:22px 22px 16px;position:relative}.lp-cycle{color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:14px;font-size:13px;display:grid}.lp-cycle b{color:var(--fg);margin-right:4px;font-size:14px}.lp-cycle-line{background:linear-gradient(90deg, var(--flamingo), var(--accent)) 0 0 / 58% 100% no-repeat, var(--soft);border-radius:4px;height:8px}.lp-rows{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.lp-rows li{border-bottom:1px solid var(--line);grid-template-columns:3.4rem minmax(0,1fr) auto;grid-template-areas:"d who amt""d tag tag";gap:3px 12px;padding:10px 0;font-size:14px;display:grid}.lp-d{color:var(--muted);grid-area:d;padding-top:2px;font-size:12.5px}.lp-who{text-overflow:ellipsis;white-space:nowrap;grid-area:who;font-weight:700;overflow:hidden}.lp-amt{font-variant-numeric:tabular-nums;grid-area:amt;font-weight:700}.lp-amt.pos{color:var(--ok)}.lp-tag{color:#1b1840;border-radius:999px;grid-area:tag;justify-self:start;padding:2px 9px;font-size:12px;font-weight:600}.lp-tag.inc{background:color-mix(in srgb, var(--lagoon) 30%, #fff)}.lp-tag.food{background:color-mix(in srgb, var(--mango) 40%, #fff)}.lp-tag.home{background:color-mix(in srgb, var(--sky) 26%, #fff)}.lp-tag.credit{background:color-mix(in srgb, var(--flamingo) 24%, #fff)}.lp-tag.save{background:color-mix(in srgb, var(--accent) 22%, #fff)}.lp-split{gap:4px;margin-top:16px;display:flex}.lp-part{flex:var(--w) 1 0;text-overflow:ellipsis;white-space:nowrap;color:#1b1840;border-radius:10px;min-width:0;padding:10px;font-size:12.5px;font-weight:600;overflow:hidden}.lp-part b{font-variant-numeric:tabular-nums;font-weight:800}.lp-part.needs{background:var(--lagoon)}.lp-part.wants{background:var(--mango)}.lp-part.save{background:var(--accent);color:#fff}.lp-figure figcaption{color:var(--muted);margin-top:12px;font-size:12px}@media (prefers-reduced-motion:no-preference){.lp-rows li{animation:.5s cubic-bezier(.2,.7,.2,1) both lp-in;animation-delay:calc(.25s + var(--i) * 90ms)}.lp-rows li .lp-tag{animation:.4s ease-out both lp-tag;animation-delay:calc(.6s + var(--i) * 90ms)}.lp-cycle-line{animation:1.2s cubic-bezier(.2,.7,.2,1) .2s both lp-fill}}@keyframes lp-in{0%{opacity:0;transform:translateY(-6px)}}@keyframes lp-tag{0%{opacity:0;transform:scale(.9)}}@keyframes lp-fill{0%{background-size:0 100%,auto}}.lp-what{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,32px);padding-top:8px;display:grid}.lp-row{--c:var(--accent);border-top:6px solid var(--c);padding-top:22px}.lp-row:first-child{--c:var(--mango)}.lp-row:nth-child(2){--c:var(--lagoon)}.lp-row:nth-child(3){--c:var(--flamingo)}.lp-row h2{letter-spacing:-.025em;margin:0 0 14px;font-size:clamp(1.3rem,2.1vw,1.65rem);font-weight:800;line-height:1.15}.lp-row p{color:var(--muted);margin:0 0 12px;font-size:15.5px;line-height:1.6}.lp-row p:last-child{margin-bottom:0}.lp-private{color:#f1efff;background:#1b1840;border-radius:28px;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px clamp(24px,5vw,72px);margin-top:clamp(40px,6vw,80px);padding:clamp(26px,4vw,48px);display:grid}.lp-private h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800;line-height:1.05}.lp-private ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.lp-private li{color:#d9d6f3;padding-left:30px;font-size:15.5px;line-height:1.5;position:relative}.lp-private li:before{content:"";background:var(--lagoon);border-radius:50%;width:20px;height:20px;position:absolute;top:.2em;left:0}.lp-private li:after{content:"";border-bottom:2px solid #1b1840;border-left:2px solid #1b1840;width:7px;height:4px;position:absolute;top:calc(.2em + 6px);left:6px;transform:rotate(-45deg)}.lp-end{background:var(--mango);color:#1b1840;border-radius:28px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:clamp(24px,4vw,40px);display:flex}.lp-end p{letter-spacing:-.03em;margin:0;font-size:clamp(1.4rem,2.6vw,2rem);font-weight:800}.lp-end .btn.primary{color:#fff;background:#1b1840;border-color:#1b1840}.lp-end .btn.primary:hover{background:#000;border-color:#000}@media (max-width:960px){.lp-what{grid-template-columns:minmax(0,1fr)}}@media (max-width:860px){.lp-hero,.lp-private{grid-template-columns:minmax(0,1fr)}.lp-hero h1{max-width:13ch}}@media (max-width:480px){.lp-part{white-space:normal;padding:7px 8px;line-height:1.25}}.auth-page .auth-card{box-shadow:none}.set-sub{margin:14px 0 0;font-size:15px}
