:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-text:#192b43;--color-text-strong:#13243b;--color-text-secondary:#3c4e65;--color-muted:#46576b;--color-text-subtle:#56677b;--color-icon-muted:#576b83;--color-text-paused:#596a7e;--color-page:#f5f7fa;--color-surface:#fff;--color-surface-subtle:#fafbfc;--color-surface-muted:#edf1f6;--color-surface-pill:#f1f4f8;--color-surface-pill-hover:#e5ecf5;--color-surface-hover:#e5edf8;--color-surface-pressed:#dce6f3;--color-surface-selected:#eaf1fa;--color-accent-soft:#eaf1fb;--color-icon-surface:#e6edf5;--color-weekend-header:#e1e7ef;--color-weekend:#f5f7fa;--color-grid:var(--color-surface);--color-day-header:var(--color-surface-muted);--color-border:#b8c6d7;--color-border-soft:#cdd7e3;--color-divider:#d9e1eb;--color-border-strong:#73869f;--color-category-border:#b8c3d2;--color-month-divider:#b8c3d2;--color-ruler-border:#93a3b8;--color-border-control:#73869f;--color-border-popover:#8b9cb3;--color-accent:#1d5791;--color-accent-hover:#164675;--color-target:#326bb2;--color-selection:#d6e5f8;--color-loading:#c9daf1;--color-positive:#4f873d;--color-funding:#75aa63;--color-covered:#909baa;--color-expense:#f6c76b;--color-on-expense:#49350c;--color-expense-marker:#bc744a;--color-reconciliation:#713a12;--color-attention:#8a4b20;--color-warning-surface:#fff6e4;--color-warning-border:#ead7b0;--color-warning-icon-border:#ba8e43;--color-warning-text:#71531e;--color-warning-marker:#98671f;--color-warning-detail:#8d5b17;--color-warning-error:#944428;--color-shortfall:#c43d3d;--color-negative:#ad492c;--color-error-surface:#fff3ef;--color-error-border:#e4b9ae;--color-error-text:#8f3021;--color-shadow:#1d2e471f;--color-on-accent:#fff;--color-action:#1e5a99;--color-action-hover:#164675;--color-brand-budget:#3b7bbb;--color-on-brand-budget:#fff;--color-target-fill:#326bb2}:root[data-color-scheme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-text:#e7eef8;--color-text-strong:#f5f8fd;--color-text-secondary:#cfdaea;--color-muted:#b8c7da;--color-text-subtle:#b1c1d6;--color-icon-muted:#b1c1d6;--color-text-paused:#a8b9cf;--color-page:#101822;--color-surface:#182333;--color-surface-subtle:#1c293b;--color-surface-muted:#233044;--color-surface-pill:#233044;--color-surface-pill-hover:#2b3d56;--color-surface-hover:#293e59;--color-surface-pressed:#344c69;--color-surface-selected:#253c59;--color-accent-soft:#253c59;--color-icon-surface:#2c3c50;--color-weekend-header:#090e15;--color-weekend:#090e15;--color-grid:#000;--color-day-header:#000;--color-border:#52647e;--color-border-soft:#40516b;--color-divider:#394a63;--color-border-strong:#7b8da6;--color-category-border:#4b5d76;--color-month-divider:#4b5d76;--color-ruler-border:#687a93;--color-border-control:#7b8da6;--color-border-popover:#7b8da6;--color-accent:#7cb7f5;--color-accent-hover:#a8d4ff;--color-target:#8bb9ef;--color-selection:#365575;--color-loading:#3d648d;--color-positive:#98c985;--color-funding:#83b972;--color-covered:#8596af;--color-expense:#dbb369;--color-on-expense:#352609;--color-expense-marker:#dea87e;--color-reconciliation:#754417;--color-attention:#e3b181;--color-warning-surface:#352e21;--color-warning-border:#665335;--color-warning-icon-border:#ab884a;--color-warning-text:#dfc28f;--color-warning-marker:#e1ba72;--color-warning-detail:#e1ba72;--color-warning-error:#f1b092;--color-negative:#f0a38c;--color-error-surface:#382927;--color-error-border:#79564c;--color-error-text:#f1b3a1;--color-shadow:#0006;--color-action:#356fae;--color-action-hover:#3977b8;--color-brand-budget:#7cb7f5;--color-on-brand-budget:#101822;--color-target-fill:#356da8}:root{color:var(--color-text);background:var(--color-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--color-accent);outline-offset:5px}h1,h2,h3,p{margin:0}p{line-height:1.65}::selection{background:var(--color-selection);color:var(--color-text-strong)}.public-home{--color-text:#e6edf4;--color-text-strong:#f3f6f9;--color-text-secondary:#a9b7c7;--color-muted:#98a8bb;--color-accent:#8cc7ff;--color-border:#1b252e;--color-border-control:#314251;--color-surface-muted:#121d27;--color-selection:#24435e;color:var(--color-text);background:#080d10;min-height:100vh}html:has(.public-home){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#080d10}.public-home .site-header{border-bottom-color:#1b252e}.public-home .site-header nav a{color:#d8e6f5}.public-home .site-header nav span{color:#8cc7ff}.home-hero{grid-template-columns:1.2fr 1fr;align-items:center;gap:72px;padding:88px 0 96px;display:grid}.home-page .eyebrow{letter-spacing:1.6px;font-size:11px;line-height:1.6}.home-hero .eyebrow{color:var(--color-accent);margin-bottom:22px}.home-hero h1{color:#f3f6f9;letter-spacing:-3px;font-size:clamp(52px,5.5vw,76px);font-weight:650;line-height:1.06}.home-hero h1 span{color:#8cc7ff}.home-description{max-width:500px;color:var(--color-text-secondary);margin-top:30px;font-size:17px;line-height:1.85}.home-hero-actions{flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:34px;display:flex}.home-primary{color:#081421;background:#8cc7ff;border-radius:5px;justify-content:space-between;align-items:center;gap:28px;padding:16px 22px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.home-primary:hover{background:#b6dcff}.home-primary span{font-size:19px;line-height:1}.home-text-link{color:#d8e6f5;align-items:center;gap:12px;padding:8px 0;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.home-text-link:hover{text-decoration:underline}.home-hero-note{color:#8b9daf;margin-top:24px;font-size:12px}.home-brand-art{text-align:center;min-width:0}.home-brand-orbit{aspect-ratio:1;background:radial-gradient(circle,#12314a66,#0000 68%);border:1px solid #162630;border-radius:50%;place-items:center;width:100%;max-width:420px;margin:0 auto;display:grid;position:relative}.home-brand-orbit:before,.home-brand-orbit:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.home-brand-orbit:before{border:1px dashed #1d3443;inset:9%}.home-brand-orbit:after{border:1px solid #203847;inset:19%}.home-brand-orbit img{filter:drop-shadow(0 0 20px #4386c344);width:58%;height:auto}.home-brand-art>span{color:#7e9bb1;letter-spacing:2.2px;margin-top:22px;font-size:9px;display:block}.home-approach{border-top:1px solid var(--color-border);padding:68px 0 80px;scroll-margin-top:32px}.home-section-heading{grid-template-columns:1.1fr 1fr;align-items:end;gap:64px;display:grid}.home-section-heading .eyebrow{color:var(--color-accent);margin-bottom:16px}.home-section-heading h2{color:var(--color-text-strong);letter-spacing:-1.5px;font-size:clamp(30px,3.6vw,44px);font-weight:600;line-height:1.16}.home-section-heading>p{max-width:420px;color:var(--color-text-secondary);font-size:16px;line-height:1.8}.home-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:48px;display:grid}.home-step{border-top:1px solid var(--color-border-control);padding-top:26px}.home-step-heading{align-items:center;gap:20px;margin-bottom:26px;display:flex}.home-step-number{color:var(--color-accent);letter-spacing:-4px;font-variant-numeric:tabular-nums;font-size:72px;font-weight:500;line-height:1}.home-step-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600;line-height:1.6}.home-step h3{color:var(--color-text-strong);letter-spacing:-.5px;margin-bottom:14px;font-size:21px;font-weight:600;line-height:1.35}.home-step p{color:var(--color-text-secondary);font-size:14px;line-height:1.85}@media (width<=850px){.home-hero{gap:32px;padding:64px 0}.home-hero h1{font-size:56px}.home-section-heading{gap:32px}.home-steps{gap:24px}.home-step-heading{flex-direction:column;align-items:flex-start;gap:12px}}@media (width<=640px){.home-hero{grid-template-columns:1fr;gap:44px;padding:52px 0 44px}.home-hero h1{letter-spacing:-2px;font-size:clamp(48px,11vw,62px)}.home-description{margin-top:24px;font-size:16px}.home-hero-note{line-height:1.7}.home-brand-orbit{max-width:260px}.home-brand-art>span{margin-top:16px}.home-approach{padding:44px 0}.home-section-heading{grid-template-columns:1fr;gap:20px}.home-section-heading>p{font-size:15px}.home-steps{grid-template-columns:1fr;gap:30px;margin-top:32px}.home-step-heading{flex-direction:row;align-items:center;gap:24px;margin-bottom:18px}.home-step-number{font-size:64px}}.move-funds-button{min-height:32px;color:var(--color-text-secondary);background:color-mix(in srgb, var(--color-surface-pill) 94%, black);font:inherit;white-space:nowrap;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex}.move-funds-button svg{color:var(--color-accent);flex-shrink:0}.move-funds-button:hover:not(:disabled){background:var(--color-surface-pill-hover);color:var(--color-accent)}.move-funds-button:active:not(:disabled){background:var(--color-surface-pressed)}.move-funds-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.move-funds-button:disabled{opacity:.5;cursor:default}.move-funds-toast{z-index:100;border:1px solid var(--color-border);max-width:min(440px,100vw - 32px);color:var(--color-text);background:var(--color-surface);box-shadow:0 6px 24px var(--color-shadow);border-radius:8px;align-items:flex-start;gap:16px;padding:14px 16px;font-size:13px;display:flex;position:fixed;bottom:20px;right:20px}.move-funds-toast button{color:var(--color-muted);background:0 0;border:0;border-radius:4px;flex-shrink:0;padding:0 4px;font-size:20px;line-height:1.1}.move-funds-toast button:hover{color:var(--color-text-strong);background:var(--color-surface-hover)}.move-funds-dialog{border:1px solid var(--color-border);width:min(460px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--color-text);background:var(--color-surface);box-shadow:0 16px 48px var(--color-shadow);border-radius:12px;margin:auto;padding:28px;overflow-y:auto}.move-funds-dialog::backdrop{background:#0004}.move-funds-dialog h2{color:var(--color-text-strong);letter-spacing:-.5px;font-size:23px;font-weight:600}.move-funds-description{color:var(--color-muted);margin:8px 0 24px;font-size:14px;line-height:1.5}.plan-next-date{color:var(--color-text-secondary);margin:0 0 24px;font-size:14px;line-height:1.5}.plan-next-date strong{color:var(--color-text-strong);white-space:nowrap;font-size:16px;font-weight:600}.move-funds-dialog fieldset{border:0;min-width:0;margin:0;padding:0}.move-funds-dialog select{width:100%;min-width:0;font:inherit;border:1px solid var(--color-border-strong);color:var(--color-text);background:var(--color-surface);border-radius:6px;padding:12px;font-size:16px}.move-funds-dialog select:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.move-funds-actions{justify-content:flex-end;gap:12px;display:flex}.move-funds-actions:has(.delete-plan-button){flex-wrap:wrap;gap:8px}.move-funds-actions .secondary-button{color:var(--color-text-secondary)}.move-funds-actions .delete-plan-button{color:var(--color-error-text);margin-right:auto}.move-funds-actions .primary-link{border:0}@media (width<=640px){.move-funds-toast{right:16px;bottom:max(16px, env(safe-area-inset-bottom))}.budget-header .account-controls{margin-left:0}.move-funds-dialog{padding:22px}}.envelope-name-dialog .form-field input{background:color-mix(in srgb, var(--color-text-strong) 7%, var(--color-surface));border:0;border-radius:8px;min-height:44px;padding:10px 12px;line-height:1.5}.envelope-name-dialog .form-field input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.envelope-name-dialog .form-field input:disabled{opacity:.6;cursor:not-allowed}.envelope-name-dialog .move-funds-actions{flex-wrap:wrap;align-items:center;gap:8px}.envelope-visibility-action{min-height:44px;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;margin-right:auto;padding:6px 0;font-size:12px}.envelope-visibility-action:hover{text-decoration:underline}.envelope-visibility-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.envelope-visibility-action:disabled{opacity:.6;cursor:not-allowed}@media (forced-colors:active){.envelope-name-dialog .form-field input{border:1px solid buttontext}}.funds-transfer-dialog{width:min(640px,100vw - 32px)}.funds-transfer-locations{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.funds-transfer-dialog .form-field{min-width:0;margin-bottom:20px}.funds-transfer-dialog .form-field label{color:var(--color-text-secondary);margin-bottom:6px;font-size:13px}.funds-transfer-dialog .form-field :is(input:not([type=checkbox]),select){width:100%;min-width:0;min-height:44px;color:var(--color-text);background:color-mix(in srgb, var(--color-text-strong) 7%, var(--color-surface));font:inherit;border:0;border-radius:8px;padding:10px 12px;font-size:16px;line-height:1.5}.funds-transfer-dialog .form-field :is(input,select):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.funds-transfer-dialog .form-field :is(input,select):disabled{opacity:.6;cursor:not-allowed}.funds-transfer-amount{width:140px}@media (width<=600px){.funds-transfer-locations{grid-template-columns:minmax(0,1fr);gap:0}}@media (forced-colors:active){.funds-transfer-dialog .form-field :is(input:not([type=checkbox]),select){border:1px solid buttontext}}.forecast-views{background:var(--color-surface-pill);border-radius:999px;gap:4px;width:fit-content;margin-top:18px;padding:3px;display:flex}.forecast-views button{font:inherit;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 14px;font-size:12px}.forecast-views button[aria-pressed=true]{background:var(--color-accent);color:#fff}.forecast-views button:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.pressure-summary{flex-wrap:wrap;justify-content:space-between;gap:16px;margin:20px 0 16px;display:flex}.pressure-summary span{color:var(--color-muted);margin-bottom:6px;font-size:12px;display:block}.pressure-summary strong{color:var(--color-text-strong);font-size:22px;font-weight:600}.pressure-legend{flex-wrap:wrap;gap:8px 16px;margin:12px 0 18px;font-size:12px;display:flex}.pressure-legend>span{overflow-wrap:anywhere;max-width:100%;color:var(--color-text-secondary);align-items:center;gap:6px;display:inline-flex}.pressure-legend i{background:var(--pressure-color);border-radius:2px;flex:0 0 10px;width:10px;height:10px}.pressure-limit line{stroke:var(--color-text-strong);stroke-width:2px;stroke-dasharray:5 4}.pressure-selected{fill:var(--color-text-strong);fill-opacity:.06;stroke:var(--color-text-strong);stroke-width:1px;pointer-events:none}.pressure-day-details{margin-bottom:16px}.pressure-driver{color:var(--color-text-secondary);margin:0 0 8px;font-size:12px}.pressure-day-details ol{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin:0;padding:0;list-style:none;display:grid}.pressure-day-details li{border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;font-size:12px;display:flex}.pressure-day-details li>span{overflow-wrap:anywhere;min-width:0}.pressure-day-details li small{color:var(--color-muted);margin-left:6px}.pressure-day-details li strong{white-space:nowrap;font-variant-numeric:tabular-nums}.pressure-day-details summary{cursor:pointer;color:var(--color-text-secondary);padding-top:10px;font-size:12px}.pressure-note{margin-top:16px}@media (width<=640px){.pressure-summary strong{font-size:18px}.pressure-day-details ol{grid-template-columns:minmax(0,1fr)}}.funds-burndown-button{width:34px;padding:6px}.funds-burndown-dialog{width:min(1000px,100vw - 32px)}.funds-burndown-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.funds-burndown-header p{color:var(--color-muted);margin:8px 0 0;font-size:13px;line-height:1.5}.funds-burndown-close{background:var(--color-surface-pill);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border:0;border-radius:50%;flex:0 0 32px;place-items:center;padding:0;display:grid}.funds-burndown-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.funds-burndown-summary{flex-wrap:wrap;justify-content:space-between;gap:18px;margin:28px 0 20px;display:flex}.funds-burndown-summary span{color:var(--color-muted);margin-bottom:6px;font-size:12px;display:block}.funds-burndown-summary strong{color:var(--color-text-strong);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.funds-burndown-chart{width:100%;min-width:0}.funds-burndown-chart svg{width:100%;height:300px;display:block;overflow:visible}.funds-burndown-axis line{stroke:var(--color-border-soft)}.funds-burndown-axis text,.funds-burndown-date{fill:var(--color-muted);font-size:10px}.funds-burndown-area{fill:var(--color-accent);opacity:.09}.funds-burndown-line{fill:none;stroke:var(--color-accent);stroke-width:2.5px;stroke-linejoin:round}.funds-burndown-limit{stroke:var(--color-negative);fill:var(--color-negative)}.funds-burndown-limit line{stroke-dasharray:5 5}.funds-burndown-cursor{stroke:var(--color-muted);stroke-dasharray:3 4;opacity:.6}.funds-burndown-point{fill:var(--color-accent);stroke:var(--color-surface);stroke-width:2px}.funds-burndown-readout{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:13px;display:flex}.funds-burndown-readout span{color:var(--color-muted);font-weight:400}.funds-burndown-scrubber{width:100%;accent-color:var(--color-accent);cursor:pointer;margin:16px 0;display:block}.funds-burndown-scrubber:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.funds-burndown-note{color:var(--color-muted);margin:0;font-size:12px;line-height:1.5}@media (width<=640px){.funds-burndown-dialog{padding:18px}.funds-burndown-summary strong{font-size:18px}.funds-burndown-header h2{font-size:21px}}.entry-dialog{border:1px solid var(--color-border);width:min(720px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--color-text);background:var(--color-surface);box-shadow:0 16px 48px var(--color-shadow);border-radius:12px;margin:auto;padding:28px;overflow-y:auto}.entry-dialog::backdrop{background:#0004}.card-payment-dialog{width:min(520px,100vw - 32px)}.planned-expense-action{cursor:pointer;background:0 0;border:0;padding:0}.planned-expense-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.entry-dialog h2{color:var(--color-text-strong);font-size:23px;font-weight:600}.entry-dialog h3{font-size:16px;font-weight:600}.entry-description{color:var(--color-muted);overflow-wrap:anywhere;margin:8px 0 24px}.entry-dialog fieldset{border:0;min-width:0;margin:0;padding:0}.entry-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.entry-dialog .form-field{min-width:0;margin-bottom:16px}.entry-dialog input:not([type=checkbox]),.entry-dialog select{box-sizing:border-box;width:100%;min-width:0;font:inherit;border:1px solid var(--color-border-control);color:var(--color-text);background:var(--color-surface);border-radius:6px;padding:10px 12px;font-size:16px}.entry-dialog input:focus-visible,.entry-dialog select:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.entry-hint{color:var(--color-muted);margin:0 0 16px;font-size:12px;line-height:1.5}.entry-dialog h3+.entry-hint{margin-top:6px}.entry-splits-scroll{border:1px solid var(--color-border);border-radius:8px;margin:12px 0;overflow-x:auto}.entry-splits-scroll:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.entry-splits-grid{border-collapse:collapse;table-layout:fixed;width:100%;min-width:520px}.entry-splits-grid.entry-splits-edit{min-width:400px}.entry-splits-grid th{text-align:left;color:var(--color-text-secondary);background:var(--color-surface-subtle);padding:10px 12px;font-size:12px;font-weight:600}.entry-splits-grid td{border-top:1px solid var(--color-border);vertical-align:middle;padding:8px}.entry-splits-grid .split-amount-column{width:125px}.entry-splits-grid .split-reduce-column{text-align:center;width:110px}.entry-splits-grid .split-actions-column{width:86px}.entry-splits-grid .split-reduce-cell{text-align:center}.split-reduce-cell input{width:16px;height:16px;accent-color:var(--color-accent);vertical-align:middle}.entry-splits-grid input:not([type=checkbox]){text-align:right;font-variant-numeric:tabular-nums}.entry-splits-grid .secondary-button{width:100%;padding:10px 6px;font-size:12px}.entry-split-summary{justify-content:space-between;align-items:center;gap:12px;margin:16px 0 24px;display:flex}.entry-split-summary span{font-variant-numeric:tabular-nums;text-align:right;font-size:13px}.entry-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.entry-dialog .primary-link,.entry-add{border:0}.entry-dialog .secondary-button{color:var(--color-text-secondary)}.entry-dialog .entry-delete{color:var(--color-negative);margin-right:auto}.entry-edit.secondary-button{padding:5px 10px;font-size:12px}.entry-toast{z-index:100;border:1px solid var(--color-border);background:var(--color-surface);max-width:calc(100vw - 40px);box-shadow:0 6px 24px var(--color-shadow);border-radius:8px;align-items:center;gap:16px;padding:14px 16px;font-size:13px;display:flex;position:fixed;bottom:20px;right:20px}.entry-toast button{color:var(--color-muted);background:0 0;border:0;font-size:20px}@media (width<=640px){.entry-dialog{padding:20px}.entry-fields{grid-template-columns:1fr;gap:0}.entry-split-summary{flex-wrap:wrap}}.expense-entry-dialog{width:min(760px,100vw - 32px)}.expense-entry-dialog .entry-account-fields{grid-template-columns:minmax(0,1fr) 190px 140px;gap:14px;display:grid}.expense-entry-dialog .entry-account-fields>.entry-fields{display:contents}.account-entry-dialog .entry-account-fields{grid-template-columns:190px 140px}.expense-entry-dialog .entry-fields{gap:14px}.expense-entry-dialog .form-field label{color:var(--color-text-secondary);margin-bottom:6px;font-size:13px}.expense-entry-dialog :is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;color:var(--color-text);background:color-mix(in srgb, var(--color-text-strong) 7%, var(--color-surface));font:inherit;border:0;border-radius:8px;padding:10px 12px;font-size:16px;line-height:1.5}.expense-entry-dialog :is(input:not([type=checkbox]),select){min-height:44px}.expense-entry-dialog :is(input,select,textarea):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.expense-entry-dialog :is(input,select,textarea):disabled{opacity:.6;cursor:not-allowed}.expense-entry-dialog textarea{resize:vertical;min-height:76px;display:block}.expense-entry-dialog .entry-splits-scroll{border:0;border-radius:0;margin:8px -4px;padding:4px}.expense-entry-dialog .entry-splits-grid th{background:0 0}.expense-entry-dialog .entry-splits-grid td{border:0;padding:6px}.expense-entry-dialog .entry-splits-grid :is(th,td):first-child{padding-left:0}.expense-entry-dialog .entry-splits-grid :is(th,td):last-child{padding-right:0}@media (width<=640px){.expense-entry-dialog .entry-account-fields{grid-template-columns:minmax(0,1fr) 110px;gap:0 14px}.expense-entry-dialog .entry-account-fields>.form-field{grid-column:1/-1}.expense-entry-dialog .entry-fields{gap:0}}@media (width<=380px){.expense-entry-dialog .entry-account-fields{grid-template-columns:minmax(0,1fr)}.expense-entry-dialog .entry-account-fields .form-field:last-child{max-width:140px}}@media (forced-colors:active){.expense-entry-dialog :is(input:not([type=checkbox]),select,textarea){border:1px solid buttontext}}.planning-dialog{width:min(560px,100vw - 32px)}.planning-dialog .form-field{min-width:0;margin-bottom:20px}.planning-dialog .form-field label{color:var(--color-text-secondary);margin-bottom:6px;font-size:13px}.planning-dialog .form-field :is(input,select,textarea){width:100%;min-width:0;color:var(--color-text);background:color-mix(in srgb, var(--color-text-strong) 7%, var(--color-surface));font:inherit;border:0;border-radius:8px;padding:10px 12px;font-size:16px;line-height:1.5}.planning-dialog .form-field :is(input,select){min-height:44px}.planning-dialog .form-field :is(input,select,textarea):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.planning-dialog .form-field :is(input,select,textarea):disabled{opacity:.6;cursor:not-allowed}.planning-dialog textarea{resize:vertical;min-height:76px;display:block}.planning-dialog .planning-schedule{grid-template-columns:140px minmax(0,1fr) 88px;gap:14px;display:grid}.planning-dialog .planning-schedule-date{grid-template-columns:140px minmax(0,200px)}.planning-dialog .planning-payee{width:calc(50% - 7px)}.planning-dialog .move-funds-actions{flex-wrap:wrap;gap:10px}@media (width<=480px){.planning-dialog .planning-schedule{grid-template-columns:minmax(0,1fr) 88px;gap:0 14px}.planning-dialog .planning-schedule>.form-field:first-child{grid-column:1/-1;width:140px}.planning-dialog .planning-schedule-date{grid-template-columns:minmax(0,1fr)}.planning-dialog .planning-schedule-date>.form-field:last-child{max-width:200px}.planning-dialog .planning-payee{width:100%}}@media (forced-colors:active){.planning-dialog .form-field :is(input,select,textarea){border:1px solid buttontext}}.funding-table .credit-payment-heading tr:first-child>:is(th,td){border-top:0;border-bottom:1px solid var(--color-border-strong);background:var(--color-surface-muted);box-shadow:none;padding:0}.funding-table .credit-payment-heading tr:first-child>th{text-align:left;padding:7px 10px 5px}.credit-payment-toggle{width:100%;min-height:26px;color:var(--color-text-strong);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:650;display:flex}.credit-payment-toggle svg{flex-shrink:0;width:12px;height:12px}.credit-payment-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.credit-ready-label{color:var(--color-muted);text-align:right;font-size:10px;font-weight:400;display:block}.funding-table .credit-payment-rows tr:first-child>:is(th,td){padding-top:0}.credit-payment-name{width:100%;min-height:32px;color:var(--color-text-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;display:flex}.credit-payment-name svg{color:var(--color-muted);flex-shrink:0}.credit-payment-name>span{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.credit-payment-name strong{color:var(--color-funding);white-space:nowrap;margin-left:auto;padding-left:4px;font-weight:600}.credit-payment-name .credit-payment-owed{color:var(--color-text-strong)}.credit-payment-name:hover{background:var(--color-surface-hover)}.credit-payment-name:hover>span{text-underline-offset:3px;text-decoration:underline}.credit-coverage{cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;width:100%;min-height:32px;padding:0;display:grid}.credit-coverage.ready{color:var(--color-funding)}.credit-coverage.partial,.credit-coverage.unfunded{color:var(--color-warning-detail)}.credit-coverage.clear{color:var(--color-muted)}.credit-coverage:hover{background:var(--color-surface-hover)}.credit-payment-toggle:focus-visible,.credit-payment-name:focus-visible,.credit-coverage:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:3px}.credit-payment-name,.credit-coverage{scroll-margin-top:var(--pinned-header-height,100px)}.credit-reserve-dialog{border:1px solid var(--color-border-popover);background:var(--color-surface);width:min(660px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--color-text-strong);box-shadow:0 16px 64px var(--color-shadow);border-radius:12px;margin:auto;padding:24px;overflow:auto}.credit-reserve-dialog::backdrop{background:#0006}.credit-reserve-dialog>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.credit-reserve-dialog h2{overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:600}.credit-reserve-dialog header p{color:var(--color-muted);margin:5px 0 0;font-size:13px}.credit-dialog-close{width:32px;height:32px;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;padding:0;font-size:24px}.credit-dialog-close:hover{background:var(--color-surface-hover)}.credit-reserve-summary{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0;padding:18px 14px;display:grid}.credit-reserve-dialog dt{color:var(--color-muted);font-size:12px}.credit-reserve-summary dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:4px 0 0;font-size:22px;font-weight:600}.credit-reserve-summary>div:first-child dd{color:var(--color-funding)}.credit-reserve-dialog .needs-cover,.credit-reserve-envelope-totals small{color:var(--color-warning-detail)}.credit-reserve-dialog h3{margin:0;font-size:14px;font-weight:600}.credit-reserve-help{color:var(--color-muted);margin:5px 0 16px;font-size:12px}.credit-reserve-envelopes{border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.credit-reserve-envelopes details+details{border-top:1px solid var(--color-border)}.credit-reserve-envelopes summary{cursor:pointer;align-items:center;gap:10px;padding:12px;font-size:13px;display:flex}.credit-reserve-envelopes summary::-webkit-details-marker{display:none}.credit-reserve-envelopes summary:before{content:"";border-right:1.5px solid var(--color-muted);border-bottom:1.5px solid var(--color-muted);flex-shrink:0;width:6px;height:6px;transform:rotate(-45deg)}.credit-reserve-envelopes details[open]>summary:before{transform:rotate(45deg)}.credit-reserve-envelopes summary:hover{background:var(--color-surface-hover)}.credit-reserve-envelope-name{overflow-wrap:anywhere;font-weight:600}.credit-reserve-envelope-totals{text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto}.credit-reserve-envelope-totals small{margin-top:2px;font-size:11px;display:block}.credit-reserve-envelopes ul{background:var(--color-surface-muted);margin:0;padding:0 14px;list-style:none}.credit-reserve-envelopes li{border-top:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.credit-reserve-envelopes li>div{overflow-wrap:anywhere;min-width:0}.credit-reserve-envelopes li strong{font-size:12px;font-weight:500;display:block}.credit-reserve-envelopes li small{color:var(--color-muted);margin-top:3px;font-size:11px;display:block}.credit-reserve-envelopes li dl{font-variant-numeric:tabular-nums;flex-shrink:0;margin:0;font-size:12px}.credit-reserve-envelopes li dl>div{justify-content:space-between;gap:16px;display:flex}.credit-reserve-envelopes li dt{font-size:11px}.credit-reserve-envelopes li dd{margin:0}.credit-reserve-note,.credit-reserve-empty,.credit-reserve-loading,.credit-reserve-error{color:var(--color-muted);margin:20px 0;font-size:13px}.credit-reserve-error p{margin-bottom:12px}.credit-reserve-dialog>footer{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.credit-reserve-direct{background:var(--color-surface-muted);border-radius:8px;margin-bottom:20px;padding:12px;font-size:13px}.credit-set-aside{border:1px solid var(--color-border-strong);border-radius:8px;margin:20px 0;padding:16px}.credit-set-aside>p,.credit-set-aside small{color:var(--color-muted);font-size:12px}.credit-set-aside fieldset{border:0;min-width:0;margin:16px 0;padding:0}.credit-set-aside :is(input,select){width:100%;min-width:0}.credit-set-aside select{font:inherit;border:1px solid var(--color-border-strong);color:var(--color-text);background:var(--color-surface);border-radius:6px;padding:12px;font-size:16px}.credit-set-aside select:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.credit-set-aside .form-field:last-child{margin-bottom:0}.credit-set-aside .primary-link,.credit-reserve-dialog>footer .primary-link{border:0}.credit-set-aside-actions{justify-content:flex-end;gap:12px;display:flex}.credit-reserve-dialog :is(button,summary):focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}@media (width<=640px){.credit-payment-toggle{font-size:12px}.credit-payment-name{gap:4px;padding-inline:4px}.credit-ready-label{margin-right:-6px}.credit-reserve-dialog{padding:18px}.credit-reserve-summary{gap:8px;padding:12px 8px}.credit-reserve-summary dt{font-size:11px}.credit-reserve-summary dd{font-size:18px}.credit-reserve-envelopes li{flex-direction:column;gap:8px}.credit-reserve-envelopes li dl{width:100%}}.budget-page{padding-bottom:calc(var(--accounts-pane-height,120px) + 12px)}.budget-page :is(button,a){scroll-margin-bottom:calc(var(--accounts-pane-height,120px) + 12px)}.budget-page .move-funds-toast{bottom:calc(var(--accounts-pane-height,0px) + 12px)}.budget-accounts-pane{z-index:25;padding:10px 20px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border-strong);background:var(--color-surface);box-shadow:0 -4px 16px var(--color-shadow);color:var(--color-text);cursor:pointer;position:fixed;inset:auto 0 0}.budget-accounts-heading{justify-content:space-between;align-items:center;gap:12px;min-height:24px;margin-bottom:5px;display:flex}.budget-accounts-heading h2{color:var(--color-text-strong);flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;font-size:13px;font-weight:600;display:flex}.budget-accounts-heading h2 span{color:var(--color-muted);font-size:11px;font-weight:400}.budget-accounts-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.budget-accounts-all{color:var(--color-accent);border-radius:4px;padding:4px 6px;font-size:11px;text-decoration:none}.budget-accounts-all:hover{background:var(--color-surface-hover);text-decoration:underline}.budget-accounts-all:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.budget-accounts-toggle,.budget-accounts-retry{color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;align-items:center;gap:5px;padding:4px 6px;font-size:11px;display:inline-flex}.budget-accounts-toggle:hover,.budget-accounts-retry:hover{background:var(--color-surface-hover);color:var(--color-accent)}.budget-accounts-toggle[aria-expanded=false] svg{transform:rotate(180deg)}.budget-accounts-toggle:focus-visible,.budget-accounts-retry:focus-visible,.budget-account:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.budget-accounts-list{overscroll-behavior-x:contain;scrollbar-width:thin;gap:8px;margin:0;padding:3px 2px 6px;list-style:none;display:flex;overflow-x:auto}.budget-accounts-list li{flex:0 0 180px;min-width:0}.budget-account{border:1px solid var(--color-border-soft);background:var(--color-surface-subtle);color:var(--color-text);border-radius:6px;padding:8px 10px;text-decoration:none;display:block}.budget-account:hover{border-color:var(--color-border-control);background:var(--color-surface-hover)}.budget-account-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;display:block;overflow:hidden}.budget-account-details{justify-content:space-between;align-items:baseline;gap:8px;margin-top:5px;display:flex}.budget-account-details strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:15px;font-weight:600}.budget-account-details>span{color:var(--color-muted);font-size:10px}.budget-accounts-state,.budget-accounts-error{color:var(--color-muted);margin:4px 0;padding:8px 0;font-size:12px}.budget-accounts-error{color:var(--color-error-text)}@media (width<=600px){.budget-accounts-pane{padding-inline:12px}.budget-accounts-list li{flex-basis:168px}}.budget-checklist{position:relative}.budget-header:has(.budget-checklist-trigger[aria-expanded=true]){z-index:30}.account-settings.budget-checklist-trigger{color:#182333;cursor:pointer;background:#86d993;border:0;align-items:center;gap:6px;font-family:inherit;font-weight:600;display:inline-flex}.account-settings.budget-checklist-trigger:hover,.account-settings.budget-checklist-trigger[aria-expanded=true]{color:#182333;background:#72cf82}.budget-checklist-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.has-welcome .budget-checklist-trigger[aria-expanded=false]{box-shadow:0 0 0 3px var(--color-surface), 0 0 0 5px #72cf82}.budget-checklist-dropdown{z-index:50;width:520px;padding-top:6px;position:fixed;top:12px;left:12px}.budget-checklist-dropdown[data-placement=above]{padding-top:0;padding-bottom:6px}.budget-checklist-panel{border:1px solid var(--color-border-popover);background:var(--color-surface);color:var(--color-text-strong);box-shadow:0 6px 28px var(--color-shadow);border-radius:8px;max-height:calc(100dvh - 24px);padding:16px;overflow-y:auto}.budget-checklist-dismiss{background:color-mix(in srgb, var(--color-positive) 6%, var(--color-surface-pill));width:calc(100% + 32px);min-height:42px;color:var(--color-text-secondary);border:0;border-radius:0 0 6px 6px;margin:14px -16px -16px;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:500;display:block}.budget-checklist-dismiss:hover{background:color-mix(in srgb, var(--color-positive) 9%, var(--color-surface-pill-hover))}.budget-checklist-dismiss:focus-visible{outline:2px solid var(--color-accent);outline-offset:-4px}.budget-checklist-error{color:var(--color-error-text);margin-top:12px;font-size:12px}.budget-checklist-summary{background:var(--color-accent-soft);color:var(--color-accent);margin:-16px -16px 14px;padding:12px 16px;font-size:12px;font-weight:600}.budget-checklist-panel ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.budget-checklist-panel li{--step-color:var(--color-text-strong);grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:4px 8px;margin-inline:-16px;padding:10px 25px;font-size:13px;line-height:1.5;display:grid}@media (hover:hover){.budget-checklist-panel li:hover{background:color-mix(in srgb, var(--color-text-strong) 4%, var(--color-surface))}}.budget-checklist-title{color:var(--step-color);font-weight:700}.budget-checklist-heading{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.budget-checklist-action{border:1px solid var(--color-border-control);background:var(--color-surface-pill);color:var(--color-text-secondary);white-space:nowrap;border-radius:4px;flex-shrink:0;align-items:center;gap:3px;padding:1px 6px;font-family:inherit;font-size:11px;font-weight:500;line-height:18px;text-decoration:none;display:inline-flex}.budget-checklist-action:hover{background:var(--color-surface-pill-hover)}.budget-checklist-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.budget-checklist-description{color:var(--color-muted);grid-column:2/-1;margin:0;font-size:13px;line-height:1.6}.budget-checklist-inline-icon{vertical-align:-3px;display:inline-block}.budget-checklist-available{vertical-align:1px;padding:2px 6px;display:inline-block}.budget-checklist-touch-help{display:none}@media (hover:none){.budget-checklist-hover-help{display:none}.budget-checklist-touch-help{display:inline}}.budget-checklist-panel small{background:color-mix(in srgb, var(--step-color) 12%, var(--color-surface));color:var(--step-color);white-space:nowrap;border-radius:4px;margin-left:auto;padding:1px 5px;font-size:11px}.budget-checklist-marker{background:color-mix(in srgb, var(--step-color) 10%, var(--color-surface));border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:12px;height:12px;margin:5px 3px 1px;display:flex}.budget-checklist-panel li:not(.is-complete) .budget-checklist-marker{background:color-mix(in srgb, color-mix(in srgb, var(--step-color) 10%, var(--color-surface)) 50%, color-mix(in srgb, var(--color-muted) 65%, var(--color-surface)))}.budget-checklist-marker svg{width:10px;height:10px}.budget-checklist-panel li.is-complete{--step-color:var(--color-positive);color:var(--color-positive)}.budget-checklist-panel .is-complete .budget-checklist-marker{background:color-mix(in srgb, var(--color-positive) 20%, var(--color-surface))}@media (width<=850px){.budget-header .account-controls{min-width:310px;position:relative}}@media (width<=640px){.budget-header .account-controls{min-width:0}}.budget-page{--category-row-end:color-mix(in srgb, var(--color-surface-muted) 90%, black);width:100%}.budget-page.has-welcome{flex-direction:column;min-height:100dvh;display:flex}.budget-page.has-welcome>:is(.budget-header,.budget-board){flex-shrink:0}.budget-welcome{text-align:center;flex:1;place-items:center;min-height:240px;padding:32px 24px;display:grid}.budget-welcome-content{max-width:440px}.budget-welcome h1{color:var(--color-text-strong);letter-spacing:-.6px;margin:0;font-size:clamp(22px,3vw,28px);font-weight:600;line-height:1.25}.budget-welcome p{color:var(--color-text-secondary);text-wrap:pretty;margin:12px 0 20px;font-size:14px;line-height:1.7}.budget-welcome-action{color:#182333;font:inherit;cursor:pointer;background:#86d993;border:0;border-radius:6px;align-items:center;gap:10px;padding:10px 16px;font-size:13px;font-weight:600;display:inline-flex}.budget-welcome-action:hover{background:#72cf82}.budget-welcome-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.budget-welcome-mobile-location{display:none}@media (width<=850px){.budget-welcome-desktop-location{display:none}.budget-welcome-mobile-location{display:inline}}.budget-header{z-index:20;background:var(--color-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;padding:12px 20px;display:flex;position:sticky;top:0}.budget-header .brand{flex-shrink:0}.budget-header .brand img{width:166.4px;height:32px}.budget-header .account-controls{gap:16px;margin-left:0}.budget-cash-controls{flex-shrink:0;align-items:center;gap:18px;display:flex}.budget-available{background:var(--color-surface);box-shadow:0 3px 10px color-mix(in srgb, var(--color-shadow) 94%, black);border-radius:999px;flex-shrink:0;align-items:stretch;margin:0;display:flex}.budget-available-help{flex-shrink:0;position:relative}.budget-available-info{color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.budget-available-info svg{width:14px;height:14px}.budget-available-info:hover{color:var(--color-accent)}.budget-available-info:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.budget-available-tooltip{z-index:50;visibility:hidden;border:1px solid var(--color-border-popover);background:var(--color-surface);width:280px;color:var(--color-text-strong);box-shadow:0 6px 28px var(--color-shadow);border-radius:8px;margin:0;padding:14px 16px;font-size:13px;font-weight:400;line-height:1.5;position:absolute;top:100%;left:50%;transform:translate(-50%)}:is(.budget-available-help:has(.budget-available-info:hover,.budget-available-info:focus) .budget-available-tooltip,.budget-available-tooltip:hover){visibility:visible}@media (width<=850px){.budget-available-tooltip{width:auto;position:fixed;top:auto;left:14px;right:14px;transform:none}}.budget-available dt,.budget-checklist-available{background:color-mix(in srgb, var(--color-surface-pill) 90%, black);color:var(--color-text-secondary);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;border-radius:999px 0 0 999px;font-size:9px;font-weight:600;line-height:1}.budget-available dt{align-items:center;padding:5px 9px;font-weight:700;display:flex}.budget-available dd{box-sizing:border-box;width:max-content;min-width:124px;color:color-mix(in srgb, var(--color-positive) 80%, white);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:6px 24px 6px 8px;font-size:20px;font-weight:600;line-height:1;display:flex;position:relative}.budget-available dd>:is(.budget-available-info,.budget-allocated-check){position:absolute;top:50%;right:6px;transform:translateY(-50%)}.budget-available.is-zero dd{color:color-mix(in srgb, var(--color-muted) 55%, white)}.budget-allocated-check{color:var(--color-funding);flex-shrink:0}.budget-board{background:var(--color-surface);border-bottom:1px solid var(--color-border);overflow:hidden}.budget-envelope-actions{flex-wrap:wrap;align-items:center;gap:10px;padding:18px 10px 12px;display:flex}.add-envelope-button{border:1px solid var(--color-border-control);background:var(--color-surface);color:var(--color-accent);font:inherit;white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;display:inline-flex}.add-envelope-button:hover{background:var(--color-surface-hover)}.add-envelope-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sort-pills{gap:6px;display:flex}.sort-pill{background:var(--color-surface-pill);color:var(--color-text-secondary);text-align:center;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;line-height:16px;display:flex;position:relative}.sort-pill:hover{background:var(--color-surface-pill-hover)}.sort-pill:has(input:checked){background:var(--category-row-end);color:var(--color-text-strong)}.sort-pill:has(input[value=next]:checked){background:var(--color-expense);color:var(--color-on-expense)}.sort-pill:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.sort-pill input{opacity:0;width:1px;height:1px;position:absolute}.budget-table-scroll{overscroll-behavior-x:contain;scroll-padding:46px 0 0 290px;overflow-x:hidden}.budget-table-scroll[data-can-scroll]{overflow-x:auto}.budget-table-scroll[data-has-later]{scroll-padding-right:92px}.budget-table-scroll:not([data-has-later]) .offscreen-column{display:none}.funding-table{--envelope-width:280px;--envelope-row-height:30px;border-spacing:0;border-collapse:separate;table-layout:fixed;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.budget-table-scroll[data-can-scroll] .funding-table{will-change:transform}.funding-table th,.funding-table td{width:18px;min-width:18px;padding:0}.funding-table td{background-color:var(--color-grid);position:relative}.funding-table tbody tr:first-child>:is(th,td){padding-top:6px}.funding-table tbody .empty-envelope-space>:is(th,td){height:calc(var(--empty-envelope-rows) * var(--envelope-row-height));padding:0}.first-envelope-hint th{text-align:left}.first-envelope-arrow{width:44px;height:60px;color:var(--color-positive);background:0 0;border:0;border-radius:4px;align-items:center;margin-left:44px;padding:4px 2px 6px;display:flex;position:relative}.first-envelope-arrow:focus-visible{outline:2px solid var(--color-positive);outline-offset:2px}.first-envelope-tooltip{z-index:5;border:1px solid var(--color-border-popover);background:var(--color-surface);width:190px;color:var(--color-text-strong);box-shadow:0 3px 12px var(--color-shadow);text-align:left;border-radius:6px;padding:8px 10px;font-size:12px;font-weight:600;line-height:1.5;position:absolute;top:5px;left:calc(100% + 8px)}.first-envelope-tooltip small{color:var(--color-muted);font-size:11px;font-weight:400;display:block}.funding-table :is(th,td).through-today-column{width:36px;min-width:36px}.funding-table th:first-child{width:var(--envelope-width);min-width:var(--envelope-width);z-index:2;background:var(--color-surface);border-right:1px solid var(--color-border-strong);position:sticky;left:0}.funding-table tbody tr:not(.envelope-category-row)>th:first-child:before{content:"";right:-1px;top:calc(0px - var(--envelope-gap-top,0px));bottom:calc(0px - var(--envelope-gap-bottom,0px));background:var(--color-border-strong);pointer-events:none;width:1px;position:absolute}.budget-table-scroll[data-scrolled-right] .funding-table th:first-child:after{content:"";left:100%;top:calc(-1px - var(--envelope-gap-top,0px));bottom:calc(-1px - var(--envelope-gap-bottom,0px));background:linear-gradient(to right, var(--color-shadow), transparent);pointer-events:none;width:10px;position:absolute}.funding-table thead{z-index:6;transform:translateY(var(--date-header-offset,0px));position:relative}.funding-cell,.envelope-button,.expense-annotation,.expense-annotation button,.target-annotation{scroll-margin-top:var(--pinned-header-height,100px)}.funding-table thead th{z-index:3;background:linear-gradient(to bottom, var(--color-surface-muted) 50%, var(--color-day-header) 50%);border-bottom:1px solid var(--color-ruler-border);height:44px;font-weight:500;position:sticky;top:0}.funding-table thead th.month-label-column{z-index:4}.funding-table thead th:first-child{z-index:5;background:var(--color-surface-muted)}.funding-table .envelope-heading{text-align:left;padding:0 18px}.envelope-heading>span:last-child{float:right;color:var(--color-muted);font-size:11px}.day-number,.day-month{display:block}.day-number{font-size:11px;font-weight:500;line-height:1.6;transform:translateY(3px)}.day-month{color:var(--color-muted);white-space:nowrap;text-align:left;padding-left:3px;font-size:10px;transform:translateY(-3px)}.funding-table th:is(.today-column,.funding-limit-column) .day-number{background:var(--color-action);width:20px;height:20px;color:var(--color-on-accent);border-radius:50%;margin-inline:auto;font-weight:700;line-height:20px}.funding-table th.funding-limit-column .day-number{isolation:isolate;color:#fff;background:0 0;position:relative}.funding-table th.funding-limit-column .day-number:before{content:"";z-index:-1;background:var(--color-funding);border-radius:50%;width:16px;height:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.funding-table td.through-today-column{box-shadow:inset -1px 0 0 var(--color-divider)}.funding-table td.weekend-column{background-color:var(--color-weekend)}.funding-table thead th.weekend-column{background:linear-gradient(to bottom, var(--color-surface-muted) 50%, var(--color-weekend-header) 50%)}.funding-table td.month-start{background-image:linear-gradient(to right, var(--color-month-divider) 1px, transparent 1px)}.funding-table th.month-start:after{content:"";background:var(--color-month-divider);pointer-events:none;width:1px;height:50%;position:absolute;bottom:0;left:0}.envelope-label{--envelope-gap:6px;--envelope-action-surface:var(--color-surface);align-items:center;gap:var(--envelope-gap);height:30px;padding:0 10px;display:flex}.funding-table.is-grouped .envelope-category-prefix,.funding-table .hidden-envelope .envelope-category-prefix{display:none}.funding-table .envelope-category-row>:is(th,td),.funding-table .envelope-category-row>.offscreen-column{background:linear-gradient(to bottom, var(--color-surface-muted), var(--category-row-end));border-top:1px solid color-mix(in srgb, var(--color-category-border) 60%, var(--color-surface-muted));border-bottom:1px solid var(--color-category-border);box-shadow:none}.funding-table .envelope-category-row th{text-align:left;height:32px;color:var(--color-text-strong);border-right-color:#0000;padding-inline:14px;font-size:14px;font-weight:700}.funding-table .envelope-category-row.is-collapsed.has-totals th{height:40px}.funding-table tbody tr.envelope-category-row:first-child>:is(th,td){padding-top:0}.category-toggle>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.category-label{align-items:center;gap:8px;display:flex}.funding-table .envelope-category-row th{padding-right:10px}.envelope-category-row{cursor:pointer}.category-toggle{min-width:0;min-height:28px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:0 auto;align-items:center;gap:6px;padding:0;display:flex}.category-toggle svg{flex-shrink:0;width:12px;height:12px}.category-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.funding-table .envelope-category-row[data-category=hidden].is-collapsed>:is(th,td){background:var(--color-surface);color:var(--color-muted);border-bottom:0}.funding-table .envelope-category-row[data-category=hidden].is-collapsed th{border-right-color:var(--color-border-strong);padding-left:10px}.envelope-category-row[data-category=hidden].is-collapsed .category-label{gap:6px}.envelope-category-row[data-category=hidden].is-collapsed .category-toggle{flex-direction:row-reverse;font-weight:400}.category-funding-count.funding-status{width:28px;height:28px;color:var(--color-muted);font-variant-numeric:tabular-nums;font-weight:400}.category-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}.category-add-envelope{background:color-mix(in srgb, var(--category-row-end) 94%, black);width:24px;height:24px;color:var(--color-accent);cursor:pointer;opacity:0;pointer-events:none;border:0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;display:grid}.envelope-category-row:hover .category-add-envelope{opacity:1;pointer-events:auto}.envelope-category-row:has(:focus-visible) .category-add-envelope{opacity:1;pointer-events:auto}.category-add-envelope:hover{background:color-mix(in srgb, var(--category-row-end) 88%, black)}.category-add-envelope:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.category-add-envelope:disabled{color:var(--color-muted);cursor:default}@media (hover:none){.category-add-envelope{opacity:1;pointer-events:auto}}.category-totals{z-index:1;width:max-content;color:var(--color-text-secondary);grid-template-columns:repeat(3,140px);align-items:center;gap:12px;margin:0;padding:0 14px;font-size:11px;display:grid;position:absolute;top:3px;left:0}.envelope-category-row:not(.is-collapsed) .category-totals{top:50%;transform:translateY(-50%)}.category-totals>div{white-space:nowrap;grid-template-columns:1fr 56px;align-items:baseline;gap:6px;display:grid}.category-totals dt{color:var(--color-muted);text-align:left;grid-area:1/2}.category-totals dd{text-align:right;grid-area:1/1;margin:0;font-size:12px;font-weight:600}.category-totals .category-net-total{color:var(--color-text-strong)}.category-event-track{background:color-mix(in srgb, var(--color-category-border) 65%, transparent);height:1px;position:absolute;bottom:7px;left:0;right:0}.category-event-button{cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;width:18px;height:16px;padding:0;display:grid;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.category-event-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:-1px}.envelope-category-row:not(.has-totals) .category-event-track{bottom:50%}.envelope-category-row:not(.has-totals) .category-event-button{bottom:50%;transform:translate(-50%,50%)}.category-event{display:block;overflow:visible}.category-expense-dot{fill:var(--color-expense-marker)}.category-expense-dot.needs-reconciliation{filter:drop-shadow(0 0 2px #ff0)drop-shadow(0 0 4px #ff0)}.category-target-diamond{fill:none;stroke:var(--color-target);stroke-width:1.5px}.funding-limit-marker{flex-shrink:0;width:16px;height:16px;display:block}.funding-limit-marker>img{display:block}.funding-table :is(th,td).offscreen-column{z-index:4;border-left:1px solid var(--color-border-strong);background:var(--color-surface);width:84px;min-width:84px;box-shadow:-3px 0 6px var(--color-shadow);text-align:center;position:sticky;right:0}.funding-table tbody tr:not(.envelope-category-row)>.offscreen-column:before{content:"";left:-1px;top:calc(0px - var(--envelope-gap-top,0px));bottom:calc(0px - var(--envelope-gap-bottom,0px));background:var(--color-border-strong);pointer-events:none;width:1px;position:absolute}.funding-table thead th.offscreen-heading{z-index:5;background:var(--color-surface-muted);color:var(--color-muted);font-size:10px}.offscreen-heading-content{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.offscreen-events{width:100%;min-height:28px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;flex-direction:column;justify-content:center;align-items:stretch;padding:1px 5px;font-size:11px;line-height:13px;display:flex}.offscreen-events>span{grid-template-columns:12px max-content minmax(0,1fr);align-items:center;gap:3px;display:grid}.offscreen-count{color:var(--color-muted);font-size:10px}.offscreen-amount{text-align:right;white-space:nowrap;font-weight:500}.offscreen-events svg{flex-shrink:0}.offscreen-events:hover{background:var(--color-surface-hover)}.offscreen-events:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.offscreen-funding-limit{cursor:pointer;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;width:22px;height:22px;padding:3px;display:flex}.offscreen-funding-limit:hover{background:var(--color-surface-hover)}.offscreen-funding-limit:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.funding-table.is-grouped .envelope-category-row+tr>:is(th,td){--envelope-gap-top:4px;border-top:var(--envelope-gap-top) solid transparent}.funding-table.is-grouped tbody tr:has(+.envelope-category-row)>:is(th,td){--envelope-gap-bottom:4px;border-bottom:var(--envelope-gap-bottom) solid transparent}.funding-table.is-grouped tbody:has(>.envelope-category-row) tr:last-child>:is(th,td){--envelope-gap-bottom:4px;border-bottom:var(--envelope-gap-bottom) solid transparent}.selected-envelope .envelope-label{--envelope-action-surface:var(--color-accent-soft)}.envelope-label:hover{--envelope-action-surface:var(--color-surface-hover);background:var(--color-surface-hover)}.envelope-row-end{align-items:center;gap:var(--envelope-gap);flex-shrink:0;margin-left:auto;display:flex;position:relative}.envelope-row-actions{right:calc(100% + var(--envelope-gap));align-items:center;gap:var(--envelope-gap);background:var(--envelope-action-surface);opacity:0;pointer-events:none;border-radius:4px;padding:0 2px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.envelope-label:hover .envelope-row-actions{opacity:1;pointer-events:auto}.envelope-label:has(:focus-visible) .envelope-row-actions{opacity:1;pointer-events:auto}.envelope-rename,.envelope-add-expense,.envelope-plan-expense,.envelope-add-target{width:22px;height:24px;color:var(--color-muted);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;border-radius:4px;flex-shrink:0;place-items:center;padding:0;display:grid}.envelope-label:hover :is(.envelope-rename,.envelope-add-expense,.envelope-plan-expense,.envelope-add-target){opacity:1;pointer-events:auto}.envelope-label:has(:focus-visible) :is(.envelope-rename,.envelope-add-expense,.envelope-plan-expense,.envelope-add-target){opacity:1;pointer-events:auto}.envelope-rename:hover,.envelope-add-expense:hover,.envelope-plan-expense:hover,.envelope-add-target:hover{background:var(--color-surface-pressed)}.envelope-rename:hover,.envelope-add-target{color:var(--color-accent)}.envelope-plan-expense{color:var(--color-expense-marker)}.envelope-add-expense{color:var(--color-accent)}.envelope-rename:focus-visible,.envelope-add-expense:focus-visible,.envelope-plan-expense:focus-visible,.envelope-add-target:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}@media (hover:none){.envelope-rename{display:none}.envelope-row-actions{opacity:1;pointer-events:auto;padding:0;position:static;transform:none}.envelope-add-expense,.envelope-plan-expense,.envelope-add-target{opacity:1;pointer-events:auto}}.envelope-button{text-align:left;min-width:0;height:100%;color:inherit;background:0 0;border:0;flex:0 auto;align-items:center;gap:8px;padding:0;text-decoration:none;display:flex}.envelope-button:hover{text-underline-offset:2px;text-decoration:underline}.funding-status{width:20px;height:20px;color:var(--color-icon-muted);flex-shrink:0;place-items:center;display:grid}.funding-status.is-active{color:var(--color-positive)}.funding-toggle{cursor:pointer;background:0 0;border:0;border-radius:4px;width:28px;height:28px;padding:0}.funding-toggle:hover{background:var(--color-surface-pressed)}.funding-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.funding-toggle[aria-disabled=true]{cursor:progress}.funding-toggle[aria-busy=true]{opacity:.5}.funding-toggle-error{color:var(--color-warning-error);background:var(--color-warning-surface);margin:0;padding:10px 14px;font-size:13px}.envelope-name{flex:1;min-width:0}.envelope-label:has(.funding-status.is-paused) .envelope-name{color:color-mix(in srgb, var(--color-text-paused) 80%, white)}.envelope-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400;line-height:1.3;display:block;overflow:hidden}.envelope-name small{color:var(--color-text-subtle);margin-top:3px;font-size:10px;font-weight:400;display:block}.envelope-money{color:color-mix(in srgb, var(--color-funding) 90%, black);white-space:nowrap;flex-shrink:0;margin-left:auto;font-size:14px;font-weight:600}.negative-amount{color:var(--color-negative)}.funding-table tr.selected-envelope th{background:var(--color-accent-soft);box-shadow:inset 3px 0 var(--color-accent)}.funding-cell{background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;width:100%;height:30px;margin:0;padding:0;display:flex;position:relative}.funding-cell:hover{background:var(--color-surface-hover)}.funding-cell:focus{outline:none}.allocation-line{background:var(--color-funding);pointer-events:none;width:100%;height:3px;margin-block:auto;display:block;position:absolute;top:0;bottom:0;left:0}.allocation-line.saving-up,.legend-saving{opacity:.3}.allocation-line.covered,.legend-covered{background:radial-gradient(circle, var(--color-covered) 1px, transparent 1px) 0 center / calc(100% / 3) 2px repeat-x;height:2px}.funding-cell:focus-visible,.envelope-button:focus-visible{outline-offset:-3px}.cell-markers{justify-content:center;align-items:center;gap:1px;display:flex;position:absolute;inset:0}.cell-markers .expense-marker{background:var(--color-surface);border-radius:50%;font-size:9px;line-height:10px}.expense-annotation,.target-annotation{z-index:1;color:var(--color-on-accent);white-space:nowrap;pointer-events:none;border-radius:3px;align-items:center;gap:3px;padding:0 4px;display:flex;position:absolute;top:50%;left:calc(50% - 7px);transform:translateY(-50%)}.has-shortfall~:is(.expense-annotation,.target-annotation){left:calc(50% + 10px)}.expense-annotation{background:var(--color-expense);color:var(--color-on-expense);pointer-events:auto}.expense-annotation button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.expense-annotation button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.expense-annotation .expense-amount:hover{text-decoration:underline}.expense-annotation button[draggable=true]{cursor:grab}.expense-annotation button[draggable=true]:active{cursor:grabbing}.planned-expense-label{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.planned-expense-label:hover{text-decoration:underline}.planned-expense-label:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button:is(.expense-annotation,.target-annotation){pointer-events:auto;cursor:pointer;border:0}button:is(.expense-annotation,.target-annotation):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.target-annotation{background:var(--color-target-fill)}.target-details{color:inherit;cursor:pointer;pointer-events:auto;background:0 0;border:0;align-items:center;gap:3px;padding:0;display:flex}.target-details:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.target-details.reconciliation-drop-target{outline:2px dashed var(--color-target);outline-offset:3px;border-radius:3px}.funding-table .plan-next-arrow{width:24px;height:24px;color:var(--color-target-fill);cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:3px;place-items:center;padding:0;display:grid;position:absolute;top:50%;left:calc(100% + 3px);transform:translateY(-50%)}.funding-table .plan-next-expense{color:var(--color-expense-marker)}.funding-table .plan-next-arrow:hover{filter:brightness(.9)}.funding-table .plan-next-arrow:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.target-annotation.with-expense .plan-next-arrow,.expense-annotation.with-target .plan-next-arrow{height:16px}.expense-annotation.with-target{top:calc(50% - 8px)}.target-annotation.with-expense{top:calc(50% + 8px)}.funding-table tr:has(.expense-annotation.with-target) :is(.envelope-button,.funding-cell){min-height:32px}.expense-annotation .expense-marker{color:inherit;font-size:9px;line-height:1}.expense-annotation.needs-reconciliation .expense-marker,.expense-marker.reconciliation-marker{background:var(--color-reconciliation);width:14px;height:14px;color:var(--color-on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.expense-amount,.target-amount{font-variant-numeric:tabular-nums;font-size:14px;line-height:16px}.amount-cents{font-size:.72em}.target-annotation .target-marker{color:inherit;font-size:14px;line-height:1}.cell-markers.with-expense{align-items:flex-start;padding-top:1px}.expense-marker{color:var(--color-expense-marker);font-size:9px}.target-marker{color:var(--color-target);font-size:17px;line-height:1}.funding-legend{border-top:1px solid var(--color-border-soft);color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:16px;padding:13px 20px;font-size:10px;display:flex}.funding-legend>span{align-items:center;gap:6px;display:flex}.legend-funding{background:var(--color-funding);width:24px;height:3px}.legend-covered{width:18px}.budget-state,.budget-loading{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:64px 24px;display:flex}.budget-state h2{letter-spacing:-.6px;font-size:24px;font-weight:500}.budget-state p,.budget-loading{color:var(--color-muted);font-size:14px}.budget-state button.primary-link{border:0}.loading-line{background:var(--color-loading);border-radius:3px;width:120px;height:3px}.day-summary{z-index:50;border:1px solid var(--color-border-popover);background:var(--color-surface);width:300px;max-width:calc(100vw - 16px);max-height:calc(100svh - 16px);color:var(--color-text-strong);box-shadow:0 6px 28px var(--color-shadow);border-radius:8px;padding:17px 18px;font-size:12px;position:fixed;overflow:auto}.day-summary-title{overflow-wrap:anywhere;font-size:14px;display:block}.day-summary-date{color:var(--color-muted);margin-top:2px;font-size:11px}.day-summary dl{margin:14px 0 8px}.day-summary dl>div{justify-content:space-between;align-items:baseline;gap:12px;margin:6px 0;display:flex}.day-summary dl>.day-summary-spending-start{border-top:1px solid var(--color-border-soft);margin-top:12px;padding-top:10px}.day-summary dt{color:var(--color-muted)}.day-summary dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.day-summary-note{color:var(--color-muted);font-size:11px}.day-summary-funding-limit{color:var(--color-text-secondary);background:var(--color-surface-muted);border-radius:4px;margin-top:10px;padding:8px;font-size:11px}.day-summary-warning{color:var(--color-warning-detail);background:var(--color-warning-surface);border-radius:4px;margin-top:10px;padding:8px;font-size:11px}.day-summary-plans{border-top:1px solid var(--color-border-soft);margin-top:12px;padding-top:10px}.day-summary-plan{align-items:center;gap:8px;padding:5px 0;display:flex}.day-summary-plan>div{flex:1;min-width:0}.day-summary-plan strong{overflow-wrap:anywhere;font-size:11px;font-weight:500;display:block}.day-summary-plan small{color:var(--color-muted);margin-top:2px;font-size:10px;display:block}.day-summary-plan>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}@media (width<=850px){.budget-header{gap:14px 20px}.sort-pills{width:100%}}@media (width<=640px){.budget-header{gap:14px 12px;padding:10px 12px}.budget-cash-controls{justify-content:space-between;gap:14px;width:100%}.budget-available-help{width:100%}.budget-available dd{flex:1}.budget-header .account-controls{gap:18px;width:100%}.sort-pills{gap:8px;width:100%}.sort-pill{flex:1;padding:5px 8px;font-size:11px}.budget-table-scroll{scroll-padding-left:190px}.funding-table{--envelope-width:180px}.funding-table th,.funding-table td{width:18px;min-width:18px}.funding-table .envelope-heading{padding:0 10px}.envelope-heading>span:last-child{float:none;margin-top:3px;display:block}.envelope-label{--envelope-gap:3px;height:32px;padding:0 4px}.funding-table .envelope-category-row th{padding-right:4px}.envelope-button{gap:6px}.envelope-name{flex:1}.envelope-name small{display:none}.envelope-money{font-size:12px;font-weight:600}.envelope-name strong{font-size:12px}.funding-cell{height:32px}.funding-table{--envelope-row-height:32px}.funding-legend{gap:12px;padding:12px;font-size:9px}}.envelope-page{max-width:1120px;color:var(--color-text);margin:0 auto}.envelope-navigation{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.envelope-back{color:var(--color-text-secondary);font-size:13px;text-decoration:none}.envelope-back:hover{color:var(--color-accent);text-decoration:underline}.envelope-refresh{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);font:inherit;cursor:pointer;border-radius:6px;padding:7px 12px;font-size:12px}.envelope-refresh:hover{background:var(--color-surface-muted)}.envelope-refresh:disabled{opacity:.5;cursor:default}.envelope-heading-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:28px;display:grid}.envelope-heading-row h1{letter-spacing:-.7px;overflow-wrap:anywhere;font-size:30px;font-weight:600}.envelope-heading-row>div:first-child{min-width:0}.envelope-heading-row .eyebrow{position:relative;top:-4px}.envelope-title{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.envelope-edit-name{color:var(--color-accent);font:inherit;text-underline-offset:3px;white-space:nowrap;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.envelope-edit-name:hover{color:var(--color-accent-hover)}.envelope-name-icon{width:28px;height:28px;color:var(--color-text-subtle);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.envelope-name-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.envelope-name-controls input{box-sizing:border-box;border:1px solid var(--color-border-control);background:var(--color-surface);width:300px;min-width:0;max-width:100%;color:var(--color-text-strong);font:inherit;border-radius:6px;padding:7px 10px;font-size:24px;font-weight:600}.envelope-name-save{background:var(--color-action);color:var(--color-on-accent);font:inherit;border:0;border-radius:6px;padding:8px 14px;font-size:12px;font-weight:600}.envelope-edit-name:focus-visible,.envelope-name-controls input:focus-visible,.envelope-name-save:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.envelope-name-form .form-error{margin:12px 0 0}.envelope-funding{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:36px;color:var(--color-text-strong);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:7px;margin-top:10px;padding:7px 10px;font-size:13px;font-weight:600;display:inline-flex}.envelope-funding-icon{flex-shrink:0;place-items:center;width:20px;height:20px;display:inline-grid}.envelope-funding-icon svg{width:18px;height:18px}.envelope-funding-toggle{background:var(--color-text-secondary);border-radius:999px;flex-shrink:0;align-items:center;width:28px;height:16px;margin-left:3px;padding:2px;display:inline-flex}.envelope-funding-toggle:before{content:"";background:var(--color-surface);border-radius:50%;width:12px;height:12px}.envelope-funding.enabled{background:color-mix(in srgb, var(--color-funding) 80%, white);color:#f5faf2;border-color:#0000}.envelope-funding.enabled .envelope-funding-toggle{background:#ffffff40}.envelope-funding.enabled .envelope-funding-toggle:before{background:var(--color-on-accent);transform:translate(12px)}.envelope-funding:not(.enabled):hover:not(:disabled){background:var(--color-surface-muted)}.envelope-funding.enabled:hover:not(:disabled){filter:brightness(.95)}.envelope-funding:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.envelope-funding:disabled{cursor:progress;opacity:.7}.envelope-expense-button{background:color-mix(in srgb, var(--color-funding) 80%, white);min-height:36px;color:var(--color-on-accent);font:inherit;white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.envelope-expense-button:hover{filter:brightness(.95)}.envelope-expense-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.envelope-target-button{background:var(--color-action)}.envelope-plan-button{background:var(--color-expense);color:var(--color-on-expense)}.envelope-expense-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.envelope-balance{text-align:right;justify-self:end;min-width:0}.envelope-balance span{color:var(--color-muted);margin-bottom:5px;font-size:12px;display:block}.envelope-balance-actions{flex-wrap:wrap;align-items:center;gap:10px 24px;display:flex}.envelope-balance strong{color:var(--color-funding);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:30px;font-weight:500}.envelope-planning{grid-template-columns:1fr 1fr;align-items:start;gap:20px;margin-bottom:24px;display:grid}.envelope-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;min-width:0;overflow:hidden}.envelope-panel>header{border-bottom:1px solid var(--color-border-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}.envelope-panel>header h2{margin-right:auto}.envelope-panel>header .envelope-expense-button{min-height:30px;padding:5px 8px;font-size:12px}.envelope-panel h2{font-size:14px;font-weight:600}.envelope-panel>header>span{color:var(--color-muted);font-size:11px}.envelope-items{margin:0;padding:0;list-style:none}.envelope-items li{align-items:baseline;gap:10px;padding:16px 18px;display:flex}.envelope-items li+li{border-top:1px solid var(--color-divider)}.envelope-items li>div{flex:1;min-width:0}.envelope-expense-details{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:baseline;gap:10px;padding:0;display:flex}.envelope-expense-description{flex:1;min-width:0}.envelope-expense-details:hover strong:first-child{text-decoration:underline}.envelope-expense-details:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.envelope-items strong{overflow-wrap:anywhere;font-size:13px;font-weight:500;display:block}.envelope-items .envelope-day-count{font-size:inherit;font-weight:700;display:inline}.envelope-items small,.envelope-items p{color:var(--color-muted);overflow-wrap:anywhere;margin-top:4px;font-size:11px;display:block}.envelope-item-icon{text-align:center;flex-shrink:0;width:16px}.envelope-item-icon.target{background:var(--color-target-fill);color:#fff;border-radius:50%;justify-content:center;align-items:center;height:16px;font-size:14px;line-height:1;display:inline-flex}.envelope-item-icon.expense{color:var(--color-expense-marker);font-size:10px}.envelope-item-icon.attention{height:16px;color:var(--color-on-accent);background:#b8733d;border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:inline-grid;position:relative;top:1px}.envelope-items .envelope-attention{color:var(--color-attention)}.envelope-due-status{color:var(--color-on-expense);background:#ffeb70;border-radius:3px;padding:1px 4px}.envelope-item-amount{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:500}.envelope-empty{color:var(--color-muted);padding:25px 18px;font-size:13px}.envelope-moves-scroll{overflow-x:auto}.envelope-moves table{border-collapse:collapse;width:100%;font-size:13px}.envelope-moves th{text-align:left;color:var(--color-muted);background:var(--color-surface-subtle);font-size:11px;font-weight:500}.envelope-moves :is(th,td){border-bottom:1px solid var(--color-divider);padding:12px 18px}.envelope-moves tr:last-child td{border-bottom:0}.envelope-moves td:nth-child(2){overflow-wrap:anywhere}.envelope-move-date{font-variant-numeric:tabular-nums;display:block}.envelope-move-date small{color:var(--color-text-secondary);margin-top:3px;font-size:11px;display:block}.envelope-move-description{align-items:center;gap:5px;max-width:100%;display:inline-flex}.envelope-move-description>span{min-width:0}.envelope-move-envelope{color:inherit;text-decoration:none}.envelope-move-envelope:hover{text-decoration:underline}.envelope-move-envelope:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.envelope-nightly-funding-icon{flex-shrink:0;width:20px;height:20px}.envelope-move-account{background:var(--color-surface-pressed);max-width:100%;min-height:20px;color:var(--color-text-strong);letter-spacing:.4px;vertical-align:middle;overflow-wrap:anywhere;border-radius:999px;justify-content:center;align-items:center;margin-left:3px;padding:3px 7px;font-size:12px;font-variant-caps:all-small-caps;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.envelope-move-account>span{min-width:0;transform:translateY(-1px)}a.envelope-move-account{cursor:pointer}a.envelope-move-account:hover{background:var(--color-selection);text-decoration:none}a.envelope-move-account:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.envelope-moves :is(th,td):first-child{white-space:nowrap;width:140px}.envelope-moves :is(th,td):last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.envelope-page .positive{color:var(--color-positive)}.envelope-page .negative{color:var(--color-negative)}.envelope-state{text-align:center;color:var(--color-muted);padding:64px 16px}.envelope-state h1{color:var(--color-text);margin-bottom:12px;font-size:24px}.envelope-state button{margin-top:18px}@media (width<=700px){.envelope-planning{grid-template-columns:1fr;gap:16px}.envelope-heading-row{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.envelope-balance{max-width:100%}.envelope-balance-actions{column-gap:8px}.envelope-expense-actions{gap:6px}.envelope-expense-button{padding:7px 8px;font-size:12px}.envelope-heading-row h1,.envelope-balance strong{font-size:26px}.envelope-moves :is(th,td){padding:12px 10px}}.envelope-first-funding{max-width:680px}.envelope-first-funding p{margin:0}.envelope-first-funding p+p{margin-top:10px}.settings-page{max-width:720px;color:var(--color-text);margin:0 auto}.settings-back{color:var(--color-text-secondary);font-size:13px;text-decoration:none}.settings-back:hover{text-decoration:underline}.settings-heading{margin:28px 0}.settings-heading h1{letter-spacing:-.7px;font-size:30px;font-weight:600}.settings-heading p{color:var(--color-muted);overflow-wrap:anywhere;margin-top:8px;font-size:14px}.settings-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:28px}.settings-panel fieldset{border:0;min-width:0;margin:0;padding:0}.settings-panel legend{padding:0;font-size:17px;font-weight:600}.settings-tabs{background:var(--color-page);border-radius:8px;gap:4px;margin-bottom:28px;padding:4px;display:flex}.settings-tab{min-width:0;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:1;padding:11px 8px;font-size:14px;font-weight:600}.settings-tab:hover{background:var(--color-surface);color:var(--color-text)}.settings-tab[aria-selected=true]{background:var(--color-surface-selected);color:var(--color-text);box-shadow:inset 0 0 0 2px var(--color-accent)}.settings-tab:focus-visible,.settings-tab-panel:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.settings-tab-panel>fieldset+fieldset{margin-top:28px}.color-scheme-options{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=480px){.color-scheme-options{grid-template-columns:1fr}}.settings-description{color:var(--color-muted);margin:10px 0 24px;font-size:13px;line-height:1.6}.settings-options{gap:12px;display:grid}.settings-option{background:var(--color-page);cursor:pointer;border-radius:6px;gap:12px;padding:15px;display:flex}.settings-option:has(input:checked){background:var(--color-surface-selected)}.settings-option input{width:16px;height:16px;accent-color:var(--color-accent);flex-shrink:0;margin:2px 0 0}.settings-option strong{font-size:14px;font-weight:600;display:block}.settings-option span span{color:var(--color-muted);margin-top:5px;font-size:12px;line-height:1.5;display:block}.settings-actions{border-top:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:16px;margin-top:26px;padding-top:22px;display:flex}.settings-actions p{color:var(--color-text-secondary);font-size:13px}.settings-actions button:disabled{opacity:.55;cursor:default}.settings-error p{margin-bottom:18px}@media (width<=480px){.settings-panel{padding:20px 16px}}.admin-page{max-width:720px;color:var(--color-text);margin:0 auto}.admin-back{color:var(--color-text-secondary);font-size:13px;text-decoration:none}.admin-back:hover{text-decoration:underline}.admin-heading{margin:28px 0}.admin-heading h1{letter-spacing:-.7px;font-size:30px;font-weight:600}.admin-heading p{color:var(--color-muted);margin-top:8px;font-size:14px}.admin-sections{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;margin:0;padding:0;list-style:none}.admin-sections li{padding:24px 28px;font-size:17px;font-weight:600}.admin-sections li+li{border-top:1px solid var(--color-border)}.admin-sections a{color:inherit;text-decoration:none}.admin-sections a:hover{color:var(--color-accent);text-decoration:underline}.admin-users-page{max-width:1000px}.admin-table-scroll{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;overflow-x:auto}.admin-table-scroll:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.admin-users-table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:640px;font-size:14px}.admin-users-table caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.admin-users-table th{text-align:left;color:var(--color-text-secondary);background:var(--color-surface-subtle);padding:14px 20px;font-size:12px;font-weight:600}.admin-users-table th:first-child{width:155px}.admin-users-table th:last-child{width:110px}.admin-users-table td{border-top:1px solid var(--color-divider);vertical-align:top;overflow-wrap:anywhere;padding:16px 20px}.admin-users-table th:last-child,.admin-users-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}.admin-users-table time{white-space:nowrap}.admin-empty-value{color:var(--color-muted)}.admin-error p{margin-bottom:18px}.admin-activity-page{max-width:1280px}.activity-refresh{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.activity-refresh p,.activity-note{color:var(--color-muted);font-size:13px;line-height:1.6}.activity-stats{margin:0 0 32px}.activity-stats>div{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;padding:20px}.activity-stats dt{color:var(--color-text-secondary);font-size:13px}.activity-stats dd{font-variant-numeric:tabular-nums;margin:8px 0;font-size:26px;font-weight:600}.activity-stats p{color:var(--color-muted);margin:0;font-size:12px;font-weight:400;line-height:1.6}.activity-runs-heading{font-size:20px;font-weight:600}.activity-note{margin:10px 0 18px}.activity-runs-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1240px;font-size:13px}.activity-runs-table caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.activity-runs-table th{text-align:left;color:var(--color-text-secondary);background:var(--color-surface-subtle);padding:14px 12px;font-size:12px;font-weight:600}.activity-runs-table th:nth-child(3){width:170px}.activity-runs-table th:nth-child(4),.activity-runs-table th:nth-child(5),.activity-runs-table th:nth-child(6){width:85px}.activity-runs-table th:last-child{width:210px}.activity-runs-table th:nth-child(8){width:110px}.activity-runs-table td{border-top:1px solid var(--color-divider);vertical-align:top;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;padding:16px 12px}.activity-runs-table td:nth-child(7){white-space:nowrap}.activity-runs-table small{color:var(--color-muted);margin-top:5px;display:block}.activity-runs-table td:last-child>span{margin-bottom:5px;display:block}.activity-status{color:var(--color-text-secondary);background:var(--color-surface-subtle);border-radius:4px;padding:4px 7px;font-size:12px;font-weight:600;display:inline-block}.activity-status--succeeded,.activity-status--running{color:var(--color-accent);background:var(--color-accent-soft)}.activity-status--failed{color:var(--color-error-text);background:var(--color-error-surface)}.activity-shortfall{color:var(--color-warning-text)}@media (width<=480px){.admin-sections li{padding:20px 16px}}.refund-split{grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:12px;display:grid}.refund-split label{overflow-wrap:anywhere}.refund-split label span{color:var(--color-muted);margin-top:4px;font-size:12px;display:block}.refund-split input{text-align:right;font-variant-numeric:tabular-nums}.refund-total{justify-content:space-between;gap:12px;margin-bottom:20px;display:flex}.refund-total strong{font-variant-numeric:tabular-nums}.entry-row-actions{flex-wrap:wrap;gap:6px;display:flex}.entry-refund-label{color:var(--color-positive);margin-bottom:4px;font-size:12px;display:block}@media (width<=380px){.refund-split{grid-template-columns:minmax(0,1fr) 110px}}.accounts-page{max-width:1120px;color:var(--color-text);margin:0 auto}.accounts-all{margin-left:24px}.account-add{border:0;flex-shrink:0}.account-management-status{color:var(--color-positive);margin-bottom:20px;font-size:14px}.account-management-list{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;margin:0;padding:0;list-style:none;overflow:hidden}.account-management-list li{align-items:center;gap:24px;padding:22px 24px;display:flex}.account-management-list li+li{border-top:1px solid var(--color-border-soft)}.account-management-name{flex:1;min-width:0}.account-management-name a{color:var(--color-text-strong);overflow-wrap:anywhere;font-size:16px;font-weight:600;text-decoration:none}.account-management-name a:hover{color:var(--color-accent);text-decoration:underline}.account-management-name span,.account-management-balance span{color:var(--color-muted);margin-top:5px;font-size:12px;display:block}.account-management-balance{text-align:right}.account-management-balance strong{font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:5px;font-size:18px;font-weight:500;display:block}.entry-dialog.account-details-dialog{width:min(480px,100vw - 32px)}.account-details-dialog form{margin-top:24px}.account-details-dialog .entry-hint{margin:8px 0 16px}.account-details-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@media (width<=640px){.account-management-list li{flex-wrap:wrap;gap:16px;padding:18px 16px}.account-management-name{flex-basis:calc(100% - 90px);order:0}.account-management-list li>button{order:1;margin-left:auto}.account-management-balance{text-align:left;order:2;width:100%}}.accounts-back{color:var(--color-text-secondary);font-size:13px;text-decoration:none}.accounts-back:hover{text-decoration:underline}.accounts-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin:28px 0;display:flex}.accounts-heading h1{letter-spacing:-.7px;font-size:30px;font-weight:600}.accounts-heading p{color:var(--color-muted);margin-top:8px;font-size:14px}.account-picker{width:min(300px,45%)}.account-picker label{color:var(--color-text-secondary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.account-picker select{border:1px solid var(--color-border-control);width:100%;font:inherit;color:var(--color-text);background:var(--color-surface);border-radius:6px;padding:10px 12px;font-size:15px}.account-picker select:focus-visible,.account-table-scroll:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.account-ledger{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;overflow:hidden}.account-summary{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:24px;padding:24px;display:flex}.account-summary h2{overflow-wrap:anywhere;margin-top:4px;font-size:23px;font-weight:600}.account-type,.account-balance>span{color:var(--color-muted);font-size:12px;display:block}.account-balance{text-align:right;flex-shrink:0;margin-left:auto}.account-balance strong{font-variant-numeric:tabular-nums;margin-top:4px;font-size:24px;font-weight:600;display:block}.accounts-page .secondary-button{color:var(--color-text-secondary)}.account-actions{border-top:1px solid var(--color-border-soft);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px;padding-top:16px;display:flex}.account-actions>button{min-height:42px;padding:10px 16px;font-size:14px;font-weight:600;line-height:20px}.accounts-page .account-actions>button{color:var(--color-on-accent);background:var(--color-action);border-color:var(--color-action)}.accounts-page .account-actions>button:hover:not(:disabled){background:var(--color-action-hover);border-color:var(--color-action-hover)}.account-actions .account-refresh{margin-right:auto}.account-table-scroll{overflow-x:auto}.account-entries{border-collapse:collapse;table-layout:fixed;width:100%;min-width:940px;font-size:14px}.account-entries caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.account-entries th{color:var(--color-text-secondary);background:var(--color-surface-subtle);text-align:left;padding:13px 20px;font-size:12px;font-weight:600}.account-entries th:first-child{width:160px}.account-entries th:nth-child(2){text-align:right;width:145px}.account-entries th:nth-child(3){width:18%}.account-entries th:nth-child(5){width:240px}.account-entries th:nth-child(6){width:160px}.account-entries td{border-top:1px solid var(--color-divider);vertical-align:top;overflow-wrap:anywhere;padding:8px 20px}.account-entries tbody tr:hover{background:var(--color-surface-subtle)}.account-entries time{white-space:nowrap;font-variant-numeric:tabular-nums}.account-entries .entry-amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:500}.accounts-page .negative{color:var(--color-negative)}.account-entries .positive{color:var(--color-positive)}.entry-memo{color:var(--color-text-secondary);white-space:pre-wrap}.entry-envelopes{gap:4px;margin:0;padding:0;list-style:none;display:grid}.entry-envelopes li{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.entry-envelopes a{color:var(--color-accent);text-decoration:none}.entry-envelopes a:hover{text-decoration:underline}.entry-envelopes span{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--color-text-secondary);flex-shrink:0}.entry-unassigned{color:var(--color-muted)}.account-entry-footer{border-top:1px solid var(--color-border);min-height:64px;color:var(--color-muted);justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;font-size:12px;display:flex}.accounts-state{color:var(--color-muted);padding:36px 24px}.accounts-state h2,.accounts-state h3{color:var(--color-text-strong);margin-bottom:8px;font-size:20px}.accounts-state button{margin-top:16px}.accounts-error{color:var(--color-error-text);background:var(--color-error-surface);padding:18px 24px}.accounts-error button{margin-top:12px}@media (width<=640px){.accounts-heading{flex-direction:column;align-items:stretch;gap:18px}.account-picker{width:100%}.account-summary{flex-wrap:wrap;gap:18px;padding:20px 16px}.account-summary h2{font-size:20px}.account-balance strong{font-size:21px}.account-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.account-actions .account-refresh{margin-right:0}.account-entries th{padding:13px 16px}.account-entries td{padding:8px 16px}.account-entry-footer{padding:14px 16px}}.site-shell{max-width:1240px;margin:0 auto;padding:0 48px}.skip-link{background:var(--color-surface);z-index:1;padding:12px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:16px}.site-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;padding:28px 0;display:flex}.brand{flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.brand img{width:208px;height:40px;display:block}.brand-footer img{width:145.6px;height:28px}@media (width<=640px){.brand picture img.brand-image{width:32px;height:32px}.brand.brand-footer picture img.brand-image{width:28px;height:28px}}.site-header nav a{font-size:14px;font-weight:600;text-decoration:none}.site-header nav a:hover{text-decoration:underline}.site-header nav span{margin-left:12px}.eyebrow{letter-spacing:1.5px;text-transform:uppercase;font-size:12px;font-weight:650}h1{letter-spacing:-3px;color:var(--color-text-strong);font-size:clamp(44px,5.5vw,72px);font-weight:600;line-height:1.06}.primary-link{color:var(--color-on-accent);background:var(--color-action);border-radius:6px;align-items:center;gap:36px;padding:15px 22px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.primary-link:hover{background:var(--color-action-hover)}.status{border:1px solid var(--color-border-control);border-radius:30px;align-self:flex-start;padding:5px 10px;font-size:12px}.site-footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);padding:40px 0 24px;font-size:14px}.footer-main{grid-template-columns:1.15fr 1.4fr 1fr;gap:40px;display:grid}.footer-brand{max-width:270px}.footer-tagline{color:var(--color-text);margin:16px 0 12px;font-weight:600}.footer-brand p a{color:var(--color-accent);white-space:nowrap;font-weight:600}.footer-navigation{grid-template-columns:1fr 1fr;gap:24px;display:grid}.site-footer h2{color:var(--color-text-strong);margin:0 0 16px;font-size:14px;font-weight:650}.footer-navigation ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.footer-navigation a,.footer-bottom a{padding:2px 0;text-decoration:none;display:inline-block}.site-footer a:hover{color:var(--color-accent);text-decoration:underline}.footer-contact address{font-style:normal;line-height:1.8}.footer-bottom{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:20px;font-size:13px;display:flex}#how-it-works{scroll-margin-top:24px}@media (width<=850px){.site-shell{padding:0 28px}.footer-main{grid-template-columns:1.4fr 1fr;gap:32px}.footer-brand{grid-column:1/-1;max-width:none}}@media (width<=640px){.site-shell{padding:0 20px}.site-header{padding:22px 0}.site-header .brand img{width:166.4px;height:32px}.site-header{flex-wrap:wrap;gap:16px}h1{letter-spacing:-2px}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,input:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}main:focus{outline:none}.site-header nav{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.nav-sign-in,.secondary-button{border:1px solid var(--color-border-control);background:0 0;border-radius:6px;padding:10px 16px;font-size:14px;font-weight:600}.nav-sign-in:hover,.secondary-button:hover{background:var(--color-surface-muted)}.quiet-link{color:var(--color-muted);font-size:14px}.login-page{grid-template-columns:1fr 1fr;align-items:center;gap:80px;min-height:660px;padding:80px 0 100px;display:grid}.login-intro .eyebrow{color:var(--color-accent);margin-bottom:24px}.login-intro h1{letter-spacing:-2px;font-size:clamp(40px,4.5vw,60px)}.login-intro>p:not(.eyebrow){color:var(--color-muted);margin:24px 0 32px;font-size:18px}.login-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:36px}.login-card h2{letter-spacing:-.7px;font-size:24px;font-weight:600}.form-intro{color:var(--color-muted);margin:8px 0 30px;font-size:15px}.registration-form,.login-form{margin-top:24px}.field-help{color:var(--color-muted);margin-top:8px;font-size:12px}.password-requirements{color:#000;margin:10px 0 0;padding:0;font-size:12px;line-height:1.8;list-style:none}.password-requirements li>span:first-child{width:18px;display:inline-block}.password-requirements li[data-met=true]{color:#237a3b}.password-requirements .sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-footer{margin-top:24px;font-size:14px}.auth-footer a,.form-note a{color:var(--color-accent);text-underline-offset:3px;text-decoration:underline}.auth-providers{margin-bottom:24px}.auth-result>p,.auth-result>div>p{overflow-wrap:anywhere;margin:20px 0;line-height:1.65}.auth-result-icon{background:var(--color-accent-soft);width:48px;height:48px;color:var(--color-accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;font-size:26px;display:inline-flex}.verification-page{max-width:580px;min-height:65vh;margin:0 auto;padding:72px 0 100px}.verification-page h1{letter-spacing:-1px;font-size:30px}.form-field{margin-bottom:22px}.form-field label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.form-field input{border:1px solid var(--color-border-strong);width:100%;min-width:0;color:var(--color-text);background:var(--color-surface);border-radius:6px;padding:13px 14px;font-size:16px}.password-field{position:relative}.password-field input{padding-right:72px}.password-toggle{color:var(--color-accent);background:0 0;border:none;border-radius:3px;padding:0 10px;font-size:13px;font-weight:600;position:absolute;top:5px;bottom:5px;right:6px}.password-toggle:hover{background:var(--color-accent-soft)}.submit-button{border:none;justify-content:space-between;width:100%;min-height:48px}.form-note{color:var(--color-muted);margin-top:20px;font-size:12px}.form-error{border:1px solid var(--color-error-border);background:var(--color-error-surface);color:var(--color-error-text);border-radius:6px;margin-bottom:20px;padding:12px 14px;font-size:14px}.session-screen{flex-direction:column;align-items:flex-start;gap:24px;min-height:60vh;padding:80px 0;display:flex}.session-screen h1{letter-spacing:-1px;font-size:36px}.session-screen p{color:var(--color-muted)}.session-screen button{border:none}.app-shell{min-height:100svh}.app-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;gap:24px;padding:20px 32px;display:flex}.app-body{min-height:calc(100svh - 81px)}.app-main{width:100%;min-width:0;padding:32px}.app-main.app-main--budget{padding:0}.account-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.account-settings{color:var(--color-muted);border-radius:4px;padding:6px 8px;font-size:12px;text-decoration:none}.account-settings:hover,.account-settings[aria-current=page]{color:var(--color-accent);background:var(--color-accent-soft)}.account-menu{position:relative}.account-menu-trigger{color:var(--color-muted);white-space:nowrap;background:0 0;border:0;border-radius:4px;align-items:center;gap:6px;padding:6px 8px;font-size:12px;display:inline-flex}.account-menu-trigger:hover,.account-menu-trigger[aria-expanded=true]{color:var(--color-accent);background:var(--color-accent-soft)}.account-menu-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.account-menu-items{z-index:50;border:1px solid var(--color-border-popover);background:var(--color-surface);width:160px;box-shadow:0 6px 28px var(--color-shadow);border-radius:6px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);right:0}.account-menu-items:before{content:"";height:7px;position:absolute;top:-7px;left:0;right:0}.account-sign-out{width:100%;min-height:40px;color:var(--color-text-secondary);text-align:left;background:0 0;border:0;border-radius:4px;padding:10px 12px;font-size:13px;display:block}.account-sign-out:hover{color:var(--color-accent);background:var(--color-accent-soft)}.account-controls .form-error{max-width:300px;margin:0}@media (width<=850px){.login-page{gap:32px}.login-card{padding:28px}.app-main{padding:28px 24px}}@media (width<=640px){.site-header nav{gap:16px}.login-page{grid-template-columns:1fr;gap:32px;padding:40px 0 56px}.login-intro .eyebrow{margin-bottom:16px}.login-intro>p:not(.eyebrow){margin:16px 0 20px;font-size:16px}.login-card{padding:24px 20px}.app-header{flex-wrap:wrap;gap:14px;padding:16px}.app-header .brand img{width:166.4px;height:32px}.app-body{grid-template-columns:1fr;min-height:auto}.app-main{padding:24px 16px}}
