.all-apps{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--border, #e7e1d6);border-radius:999px;color:var(--muted, #6a7783);text-decoration:none;font-size:12.5px;font-weight:500;white-space:nowrap;transition:border-color .15s,color .15s}.all-apps:hover{border-color:var(--accent, #2f6e6d);color:var(--accent, #2f6e6d)}.apps-menu{position:relative;display:inline-flex}.apps-menu .all-apps{background:none;cursor:pointer;font-family:inherit}.apps-panel{position:absolute;top:calc(100% + 8px);left:0;z-index:60;min-width:268px;padding:6px;background:var(--surface, #ffffff);border:1px solid var(--border, #e7e1d6);border-radius:12px;box-shadow:0 12px 32px #00000024;display:flex;flex-direction:column;gap:2px}.apps-item{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;text-decoration:none;color:inherit}a.apps-item:hover,a.apps-item:focus-visible{background:var(--surface-alt, #f4f2ec)}.apps-item-name{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600}.apps-item-blurb{font-size:12px;color:var(--muted, #6a7783)}.apps-item.soon,.apps-item.current{cursor:default}.apps-item.soon .apps-item-name,.apps-item.soon .apps-item-blurb{opacity:.55}.apps-tag{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:999px;border:1px solid var(--border, #e7e1d6);color:var(--muted, #6a7783)}.apps-home{display:flex;align-items:center;gap:8px;margin-top:4px;padding:9px 10px;border-top:1px solid var(--border, #e7e1d6);font-size:13px;font-weight:600;color:var(--text, #0f1b2e);text-decoration:none;border-radius:0 0 8px 8px}.apps-home-note{font-weight:400;font-size:12px;color:var(--muted, #6a7783)}.apps-home:hover,.apps-home:focus-visible{background:var(--surface-alt, #f4f2ec);color:var(--accent, #2f6e6d)}.apps-panel{width:min(92vw,700px);max-width:none}@media(max-width:760px){.apps-panel{position:fixed;top:60px;left:8px;right:8px;width:auto;max-height:calc(100vh - 76px);overflow-y:auto;overscroll-behavior:contain}}.site-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:40px;border-top:1px solid var(--line, #e3e8ec);padding:28px 16px 32px;font-size:12px;color:var(--muted, #5a6670)}.site-footer a{color:var(--muted, #6a7783);text-decoration:none}.site-footer a:hover,.site-footer a:focus-visible{color:var(--accent, #2f6e6d);text-decoration:underline}.site-footer-note{opacity:.85}.signup-prompt{display:grid;justify-items:center;gap:10px}.signup-prompt__alt{margin:0;font-size:.92rem;color:var(--muted-ink, rgba(15, 27, 39, .62))}.signup-prompt .linklike{border:0;background:none;padding:0;font:inherit;color:var(--accent, #2e6f6d);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.signup-prompt .linklike:hover{text-decoration-thickness:2px}.signup-prompt .linklike:focus-visible{outline:2px solid var(--accent, #2e6f6d);outline-offset:3px;border-radius:3px}@media(prefers-color-scheme:dark){.signup-prompt__alt{color:var(--muted-ink, rgba(236, 240, 243, .68))}.signup-prompt .linklike{color:var(--accent, #6fb3ae)}}.cal-add{position:relative;display:inline-flex}.cal-add-button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;font:inherit;color:var(--accent, #2e6f6d);cursor:pointer;text-decoration:underline}.cal-add-button:hover,.cal-add-button:focus-visible{text-decoration:none}.cal-add-caret{font-size:.8em;text-decoration:none}.cal-add-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:230px;padding:5px;display:flex;flex-direction:column;gap:1px;background:var(--surface, #fff);border:1px solid var(--border, #e4ded2);border-radius:10px;box-shadow:0 10px 28px #00000024;text-align:left}.cal-add-item{display:flex;flex-direction:column;gap:1px;padding:7px 9px;border-radius:7px;color:inherit;text-decoration:none}.cal-add-item:hover,.cal-add-item:focus-visible{background:var(--surface-alt, #f4f1ea)}.cal-add-name{font-size:13.5px;font-weight:600}.cal-add-note{font-size:11.5px;color:var(--muted, #6b6b6b)}@media(max-width:420px){.cal-add-panel{position:fixed;left:8px;right:8px;min-width:0}}.bp{border:1px solid var(--border, #e7e1d6);border-radius:12px;background:var(--surface, #ffffff);color:var(--text, #1d2b36);padding:18px 20px;margin:0 0 18px}.bp-h{margin:0 0 6px;font-size:1.05rem}.bp-muted{color:var(--muted, #6a7783);font-size:.9rem;margin:6px 0}.bp-error{color:var(--danger, #a3362c);font-size:.9rem;margin:6px 0}.bp-good{color:var(--accent, #2e6f6d);font-size:.9rem;margin:6px 0}.bp-meter{margin:10px 0;font-size:.95rem}.bp-blocked{margin:10px 0;padding:10px 12px;border-left:3px solid var(--accent, #2e6f6d);background:var(--surface-2, #f7f4ee);font-size:.9rem}.bp-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 6px}@media(max-width:560px){.bp-plans{grid-template-columns:1fr}}.bp-plan{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border:1px solid var(--border, #e7e1d6);border-radius:10px;background:var(--surface, #ffffff);color:inherit;font:inherit;text-align:left;cursor:pointer}.bp-plan:hover:not(:disabled){border-color:var(--accent, #2e6f6d)}.bp-plan:disabled{cursor:default;opacity:.6}.bp-best{border-color:var(--accent, #2e6f6d)}.bp-price{font-size:1.35rem;font-weight:600}.bp-plan-label{font-size:.95rem}.bp-note{margin:2px 0 0}.bp-btn{display:inline-flex;align-items:center;padding:7px 14px;border:1px solid var(--border, #e7e1d6);border-radius:999px;background:var(--surface, #ffffff);color:inherit;font:inherit;cursor:pointer}.bp-btn:hover:not(:disabled){border-color:var(--accent, #2e6f6d)}.bp-btn:disabled{cursor:default;opacity:.6}.bp-fine{margin:12px 0 0;font-size:.82rem}.bp-warn{margin:10px 0;padding:10px 12px;border-left:3px solid var(--warn, #b8860b);background:var(--surface-2, #f7f4ee);font-size:.9rem}.bp-ending{margin:10px 0;padding:10px 12px;border-left:3px solid var(--border, #e7e1d6);background:var(--surface-2, #f7f4ee);font-size:.9rem}.bp-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}.bp-secondary{margin-top:14px;padding-top:12px;border-top:1px solid var(--border, #e7e1d6)}.bp-confirm{margin:12px 0 0;padding:12px 14px;border:1px solid var(--border, #e7e1d6);border-left:3px solid var(--accent, #2e6f6d);border-radius:8px;background:var(--surface-2, #f7f4ee);font-size:.9rem}.bp-confirm p{margin:0}.bp-confirm-h{font-weight:600;margin:0 0 6px!important}.bp-primary{border-color:var(--accent, #2e6f6d);font-weight:600}.bp-danger{border-color:var(--danger, #a3362c);color:var(--danger, #a3362c)}.bp-danger:hover:not(:disabled){border-color:var(--danger, #a3362c);background:var(--surface-2, #f7f4ee)}.bp-quiet{border-color:transparent;padding-inline:6px;color:var(--muted, #6a7783);text-decoration:underline;text-underline-offset:3px}.bp-quiet:hover:not(:disabled){color:var(--text, #1d2b36);border-color:transparent}.bp-receipts{list-style:none;margin:10px 0 0;padding:0;font-size:.9rem}.bp-receipts li{display:flex;align-items:baseline;gap:12px;padding:7px 0;border-top:1px solid var(--border, #e7e1d6)}.bp-r-date{min-width:7.5em}.bp-r-amount{min-width:5em;font-variant-numeric:tabular-nums}.bp-r-status{flex:1;text-transform:capitalize}:root{--navy: #0f1b27;--teal: #2e6f6d;--sage: #a6b89a;--cream: #e7e1d6;--paper: #fafaf8;--bg: var(--paper);--surface: #ffffff;--surface-alt: #f4f2ec;--border: var(--cream);--border-strong: #d6cec0;--text: var(--navy);--muted: #6a7783;--accent: var(--teal);--accent-contrast: #ffffff;--in: #15a34a;--out: #c93a2b;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(15, 27, 39, .04), 0 4px 16px rgba(15, 27, 39, .05);--font: "Satoshi", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: var(--navy);--surface: #16242f;--surface-alt: #1d2d39;--border: #263644;--border-strong: #344553;--text: var(--paper);--muted: #8fa0ac;--accent: #4e9c99;--accent-contrast: #0f1b27;--in: #4ade80;--out: #ff7a6b;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 16px rgba(0, 0, 0, .25)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}.logo{display:flex;align-items:center;gap:10px}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-word{font-weight:700;letter-spacing:-.02em;color:var(--text)}.logo-life{font-weight:500;color:#2f6e6d}@media(prefers-color-scheme:dark){.logo-life{color:var(--accent)}}.logo-tagline{color:var(--accent);font-size:12.5px;font-weight:500}.topbar{display:flex;align-items:center;gap:24px;padding:12px 24px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;flex-wrap:wrap}.tabs{display:flex;gap:2px}.tab{border:0;background:none;color:var(--muted);padding:7px 14px;border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-weight:500;transition:background .15s,color .15s}.tab:hover{background:var(--surface-alt);color:var(--text)}.tab.active{background:var(--accent);color:var(--accent-contrast);font-weight:600}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:12px}.content{max-width:1040px;margin:0 auto;padding:28px 24px 64px}.stack{display:flex;flex-direction:column;gap:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.card h2{margin:0 0 14px;font-size:15px;font-weight:600;letter-spacing:-.01em}.card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}.card-head h2{margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px}.stat{display:flex;flex-direction:column;gap:6px}.stat-label{color:var(--muted);font-size:11.5px;font-weight:500;text-transform:uppercase;letter-spacing:.07em}.stat-value{font-size:27px;font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.in{color:var(--in)}.out{color:var(--out)}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--border)}.row:last-child{border-bottom:0}.bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.bar-head{display:flex;justify-content:space-between;margin-bottom:5px;font-variant-numeric:tabular-nums}.bar-track{height:8px;background:var(--surface-alt);border-radius:999px;overflow:hidden}.bar-fill{height:100%;border-radius:999px;transition:width .25s ease}.budget-row{padding:14px 0;border-bottom:1px solid var(--border)}.budget-row:last-child{border-bottom:0}.budget-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.budget-input{display:flex;gap:6px}.budget-foot{margin-top:7px;font-size:12.5px;font-variant-numeric:tabular-nums}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border)}.table tbody tr:hover{background:var(--surface-alt)}.table th{color:var(--muted);font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.07em}.table td.right,.table th.right{text-align:right;font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:8px 15px;border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-weight:500;transition:border-color .15s,background .15s}.btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn.primary:hover:not(:disabled){background:#26605e;border-color:#26605e;color:var(--accent-contrast)}.btn.lg{padding:12px 26px;font-size:15px;font-weight:600}.btn.sm{padding:5px 11px;font-size:13px}.input,.select,.month-picker{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:8px 11px;border-radius:var(--radius-sm);font:inherit}.input:focus,.select:focus,.month-picker:focus{outline:2px solid var(--accent);outline-offset:-1px}.input.sm{width:104px;padding:5px 9px;font-variant-numeric:tabular-nums}.filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.check{display:flex;align-items:center;gap:6px;color:var(--muted)}.muted{color:var(--muted)}.error{color:var(--out);background:color-mix(in srgb,var(--out) 9%,transparent);border:1px solid color-mix(in srgb,var(--out) 28%,transparent);padding:11px 15px;border-radius:var(--radius-sm);margin:0}.pill{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:var(--surface-alt);border:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:500}.pill.rise{color:var(--danger, #c0392b);border-color:color-mix(in srgb,var(--danger, #c0392b) 35%,transparent);background:color-mix(in srgb,var(--danger, #c0392b) 10%,transparent)}.pill.fall{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.stale-row td{opacity:.6}.signed-out{max-width:540px;margin:88px auto;text-align:center}.signed-out .logo{justify-content:center;margin-bottom:28px}.signed-out h1{font-size:30px;font-weight:700;letter-spacing:-.03em;margin:0 0 10px}.signed-out p{color:var(--muted);margin:0 0 28px;font-size:15px}.principles{display:flex;justify-content:center;gap:28px;margin-top:44px;flex-wrap:wrap;color:var(--muted);font-size:12.5px}.principle{display:flex;align-items:center;gap:7px}.principle svg{color:var(--accent);flex-shrink:0}.setup-error{max-width:560px;margin:80px auto;padding:24px;font-family:var(--font);line-height:1.6}code{background:var(--surface-alt);border:1px solid var(--border);padding:1px 5px;border-radius:5px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.92em}.inline-add{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.input.sm-wide{width:150px;padding:5px 9px}.save-hint{font-size:12px;color:var(--muted);opacity:0;transition:opacity .2s;white-space:nowrap}.save-hint.on{opacity:1}.budget-input{align-items:center}.linkish{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:inherit}.linkish:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.bars li button.linkish{display:block;width:100%}.stat.clickable{cursor:pointer;transition:border-color .15s}.stat.clickable:hover{border-color:var(--accent)}.filter-chip{margin-left:10px;padding:2px 10px;border-radius:999px;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font:inherit;font-size:12px;font-weight:500;cursor:pointer;vertical-align:middle}.filter-chip:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}.asset-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:14px;margin-bottom:12px;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm)}.asset-form .input{flex:1 1 160px;min-width:120px}.asset-form .input.sm{flex:0 0 110px}.row-actions{display:flex;align-items:center;gap:10px;font-variant-numeric:tabular-nums}.pill.shared{border-color:var(--accent);color:var(--accent)}.brand-block{display:flex;align-items:center;gap:14px}.brand-button{background:none;border:0;padding:0;cursor:pointer;border-radius:var(--radius-sm)}a.brand-button{display:inline-flex;color:inherit;text-decoration:none}.brand-button:hover .logo-word{color:var(--accent)}.stat-note{font-size:11.5px;color:var(--muted)}.month-note{margin:0 0 14px;font-size:13px}.range-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px}.input.sm-date{padding:5px 9px;font-size:13px}.budget-row.child{padding-left:22px;border-left:2px solid var(--border);margin-left:4px}.budget-row.child strong{font-weight:500}.select.sm-wide{padding:5px 9px;font-size:13px;max-width:170px}.input.dim-name{font-size:15px;font-weight:600;padding:5px 9px;max-width:220px}.input.dim-value-name{font-size:inherit;font-weight:600;padding:3px 6px;max-width:220px;background:transparent;border-color:transparent}.input.dim-value-name:hover{border-color:var(--border)}.input.dim-value-name:focus{background:var(--surface, #ffffff);border-color:var(--border)}.dim-add{margin-top:12px}.swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:8px;vertical-align:middle}.match-row td{background:var(--surface-alt)}.match-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.linkish.sm-link{font-size:12px;color:var(--muted)}.period{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.table-scroll{overflow-x:auto;margin:0 -4px;padding:0 4px}.table-scroll .table{min-width:1040px}.table th:last-child,.table td:last-child{white-space:nowrap;width:1%;padding-right:4px}.table td:nth-child(2){min-width:210px}.table .select{max-width:150px;padding:5px 8px;font-size:13px}.content{max-width:1160px}.networth-bar{display:flex;justify-content:flex-end}.row-actions .link-area{display:inline-flex;align-items:center}.row-actions .link-area .btn{padding:5px 11px;font-size:13px}.remove-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 16px;margin-top:10px;background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm)}.remove-panel p{margin:4px 0 0;font-size:13px;max-width:52ch}.btn.danger{border-color:var(--out);color:var(--out)}.btn.danger:hover:not(:disabled){background:var(--out);border-color:var(--out);color:var(--surface)}.select.filtering,.input.filtering{color:var(--out);border-color:var(--out);font-weight:600}.select.filtering:focus,.input.filtering:focus{outline-color:var(--out)}.link-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px;margin-bottom:14px;background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm)}.link-panel p{margin:4px 0 0;font-size:13px;max-width:48ch}.link-panel .link-area{display:inline-flex}.scoped-row{margin:10px 0 0 20px;padding-left:14px;border-left:2px solid var(--border)}.scoped-row .budget-head{margin-bottom:6px}.stack>*{min-width:0}.card{min-width:0}.table-scroll{max-width:100%}.tx-form{flex-wrap:wrap}.tx-form .input:not(.sm):not(.sm-date){flex:1 1 160px;min-width:130px}.filters{flex-wrap:wrap;row-gap:8px}.filters>.input{flex:1 1 220px;min-width:180px}.filters .select{max-width:180px}.assumptions{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}.field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);font-weight:500}.field .input{width:130px}.field .input.sm{width:92px}.input.cell{width:108px;border-color:transparent;background:transparent;text-align:right;padding:4px 6px;font-variant-numeric:tabular-nums}.input.cell.wide{width:150px;text-align:left}.input.cell:hover{border-color:var(--border)}.input.cell:focus{background:var(--surface);border-color:var(--accent)}.input.cell.entered{font-weight:600;color:var(--accent)}.input.cell.negative{color:var(--out)}.plan-table tbody tr.depleted td{background:color-mix(in srgb,var(--out) 7%,transparent)}.plan-table .table-scroll .table,.table-scroll .plan-table{min-width:900px}.welcome-overlay,.gate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f1b278c}.welcome-modal,.gate-modal{max-width:480px;width:100%;max-height:90vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 32px}.welcome-modal h1,.gate-modal h1{margin:0 0 2px;font-size:24px;letter-spacing:-.02em}.gate-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 14px}.welcome-brand{color:var(--accent)}.welcome-tagline{margin:0 0 14px;color:var(--accent);font-weight:500}.welcome-apps{list-style:none;margin:16px 0 20px;padding:0;display:flex;flex-direction:column}.welcome-app{display:flex;align-items:baseline;gap:8px;padding:9px 0;border-bottom:1px solid var(--border);color:inherit;text-decoration:none}.welcome-apps li:last-child .welcome-app{border-bottom:0}a.welcome-app:hover strong{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.welcome-app.soon{opacity:.6}.welcome-blurb{color:var(--muted);font-size:13px}.import-panel{flex-direction:column;align-items:stretch}.import-mapping{flex-wrap:wrap;align-items:flex-end}.import-role{display:flex;flex-direction:column;gap:4px;font-size:12px}.import-panel .table-scroll{margin-top:8px}.cell-with-fill{display:flex;align-items:center;gap:4px}.fill-down{flex:0 0 auto;width:22px;height:22px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12px;line-height:1;cursor:pointer;opacity:.55}.cell-with-fill:hover .fill-down,.fill-down:focus-visible{opacity:1}.fill-down:hover{color:var(--accent);border-color:var(--accent)}.notice{color:var(--text);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);padding:11px 15px;border-radius:var(--radius-sm);margin:0}.row-attention{border-left:3px solid var(--danger, #c0392b);padding-left:.75rem}.link-consent{margin:10px 0 0;font-size:12px;line-height:1.55;max-width:60ch}.link-consent a{color:inherit;text-decoration:underline}.help-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-weight:700;font-size:14px;line-height:1;cursor:pointer;flex-shrink:0}.help-btn:hover{color:var(--accent);border-color:var(--accent)}.guide-modal{position:relative}.guide-close{position:absolute;top:10px;right:12px;border:0;background:none;color:var(--muted);font-size:22px;line-height:1;cursor:pointer;padding:4px}.guide-close:hover{color:var(--text)}.guide-steps{list-style:none;margin:16px 0 20px;padding:0}.guide-steps li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.guide-steps li:last-child{border-bottom:0}.guide-num{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}.guide-steps strong{display:block;margin-bottom:2px}.guide-steps p{margin:0;color:var(--muted);font-size:13px}.plan-line{margin:-2px 0 10px;font-size:.9rem}.plan-line a{color:inherit;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.select.sm{padding:3px 6px;font-size:.82rem;max-width:13ch}.sweep .sweep-count{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--soft, rgba(15, 27, 39, .07));font-size:.8em;font-variant-numeric:tabular-nums}.sweep-list{margin:12px 0;padding:0;list-style:none;display:grid;gap:2px;max-width:72ch}.sweep-list li{padding:7px 0;border-bottom:1px solid var(--line, rgba(15, 27, 39, .08))}.sweep-list label{display:flex;align-items:baseline;gap:9px;cursor:pointer;flex-wrap:wrap}.sweep-move{font-size:.95rem}.sweep-when{font-size:.85rem}.stat-note{display:block;margin-top:3px;font-size:.78rem;line-height:1.35}.flow-chart{position:relative;margin:10px 0 4px}.flow-chart svg{width:100%;height:auto;display:block;overflow:visible}.flow-axis{stroke:var(--line, rgba(15, 27, 39, .18));stroke-width:1}.flow-bar{stroke:var(--surface, #fff);stroke-width:2}.flow-in{fill:var(--in, #15a34a)}.flow-out{fill:var(--out, #c93a2b)}.flow-hit{fill:transparent}.flow-chart g:hover .flow-bar{filter:brightness(1.08)}.flow-tick{fill:var(--muted-ink, rgba(15, 27, 39, .6));font-size:11px}.flow-tip{position:absolute;top:0;right:0;display:grid;gap:2px;padding:8px 11px;border:1px solid var(--line, rgba(15, 27, 39, .14));border-radius:8px;background:var(--surface, #fff);font-size:.85rem;box-shadow:0 6px 18px #0f1b271a;pointer-events:none}.flow-legend{display:flex;flex-wrap:wrap;gap:14px;margin:2px 0 0;padding:0;list-style:none;font-size:.85rem;color:var(--muted-ink, rgba(15, 27, 39, .62))}.flow-legend .swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:baseline}.flow-legend .swatch.in{background:var(--in, #15a34a)}.flow-legend .swatch.out{background:var(--out, #c93a2b)}.flow-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:6px 0 12px}.flow-compare>div{display:grid;gap:1px}.flow-compare strong{font-size:1.25rem;font-variant-numeric:tabular-nums}.flow-compare .muted{font-size:.8rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rollover-toggle{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;color:var(--muted-ink, rgba(15, 27, 39, .62));cursor:pointer;white-space:nowrap}.rollover-toggle input{margin:0;cursor:pointer}.goal-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;align-items:center}.goal-form .row-actions,.goal-form>.muted{grid-column:1 / -1}.goal-list{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:16px}.goal-head{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-bottom:5px}.goal-figures{margin-left:auto;font-variant-numeric:tabular-nums}.goal-foot{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px;font-size:.82rem;align-items:baseline}.pace-track{position:relative;height:10px;border-radius:999px;background:var(--soft, rgba(15, 27, 39, .08));overflow:visible;margin:6px 0 9px}.pace-fill{height:100%;border-radius:999px;background:var(--accent, #2e6f6d);transition:width .2s ease}.pace-fill.over{background:var(--out, #c93a2b)}.pace-mark{position:absolute;top:-4px;width:2px;height:18px;border-radius:1px;background:var(--ink, rgba(15, 27, 39, .72));transform:translate(-1px)}.pace-line{font-size:.86rem;margin:0 0 4px}.pace-left{margin:0;font-size:.95rem}
