@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-normal-C5_t9oOD.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-normal-_kVFYEpx.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-400-normal-Dhut76fR.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-400-normal-BDKaGhyp.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-500-normal-Bf-nb4oT.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-500-normal-DYtqi0QS.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DLTa1BUW.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BR_Ojra4.woff)format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-700-normal-CfpNZvy6.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-700-normal-DqEcQeE5.woff)format("woff")}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--size-body-s);font-variant-numeric:lining-nums tabular-nums;margin:0}h1,p{margin:0}:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent-strong);outline-offset:var(--focus-ring-width)}.skip-link{left:var(--space-4);top:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);background:var(--color-hero);color:var(--color-on-hero);position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:none}.page{max-width:var(--size-page-max);padding:var(--space-6) var(--space-6) calc(var(--size-bar-height) + var(--space-7) * 2);margin:0 auto}.page-header h1{font-family:var(--family-display-l);font-size:var(--size-display-l);font-weight:var(--weight-display-l);line-height:1.15}.empty-note{margin-top:var(--space-4);color:var(--color-muted);font-size:var(--size-body-s)}.bottom-bar{padding:0 var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));pointer-events:none;position:fixed;bottom:0;left:0;right:0}.bottom-bar ul{max-width:var(--size-page-max);height:var(--size-bar-height);padding:0 var(--space-2);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);pointer-events:auto;grid-template-columns:1fr 1.3fr auto 1fr 1fr;align-items:center;margin:0 auto;list-style:none;display:grid}.bar-slot{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--tap);color:var(--color-muted);font-size:var(--size-micro);font-weight:var(--weight-micro);flex-direction:column;text-decoration:none;display:flex}.bar-slot span{overflow-wrap:anywhere;text-align:center;max-width:100%;line-height:1.1}.bar-slot svg{width:var(--size-bar-icon);height:var(--size-bar-icon);stroke-width:1.8px}.bar-slot[aria-current=page]{color:var(--color-accent-strong)}.bar-plus{width:var(--size-plus-button);height:var(--size-plus-button);min-height:0;transform:translateY(calc(var(--space-4) * -1));border-radius:var(--radius-full);background:var(--color-hero);color:var(--color-on-hero);box-shadow:var(--shadow-float);margin:0 auto}.bar-plus[aria-current=page]{color:var(--color-on-hero)}@media (prefers-reduced-motion:no-preference){.bar-slot{transition:color var(--motion-short) var(--motion-ease)}}.visually-hidden{width:var(--size-hairline);height:var(--size-hairline);margin:calc(var(--size-hairline) * -1);clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;position:absolute;overflow:hidden}.stack{gap:var(--space-4);flex-direction:column;display:flex}.label{font-size:var(--size-label);font-weight:var(--weight-label);text-transform:var(--transform-label);letter-spacing:var(--tracking-label)}.muted{color:var(--color-muted)}.caption{font-size:var(--size-caption);color:var(--color-muted)}.over-text{color:var(--color-over-strong)}.good-text{color:var(--color-good)}.card{gap:var(--space-3);padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.card-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.card-title,.sheet-title{font-family:var(--family-display-m);font-size:var(--size-display-m);font-weight:var(--weight-display-m);margin:0;line-height:1.1}.hero{gap:var(--space-1);padding:var(--space-6);background:var(--color-hero);color:var(--color-on-hero);border-radius:var(--radius-xl);flex-direction:column;display:flex}.hero .label{color:var(--color-on-hero-muted)}.hero-figure{margin-top:var(--space-1);font-family:var(--family-display-xl);font-size:min(var(--size-display-xl), 15vw);font-weight:var(--weight-display-xl);line-height:1.05}.hero-line{font-size:var(--size-body-s);color:var(--color-on-hero)}.hero-top,.hero-figure-row{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;display:flex}.hero-top{align-items:center}.hero-figure-row{align-items:baseline}.hero .dropdown-pill{border:var(--size-hairline) solid var(--color-on-hero-muted);color:var(--color-on-hero);background:0 0}.hero-note{font-size:var(--size-body-s);color:var(--color-on-hero-muted)}.hero .bar{margin-top:var(--space-4);background:var(--color-ink-soft)}.hero .bar-accent{background:var(--color-accent-pale)}.hero-under{justify-content:space-between;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--size-caption);color:var(--color-on-hero-muted);flex-wrap:wrap;display:flex}.hero .btn-text{color:var(--color-on-hero-muted);align-self:flex-start}.bar{height:var(--size-track);border-radius:var(--radius-full);background:var(--color-line);overflow:hidden}.bar-fill{border-radius:var(--radius-full);height:100%}.bar-accent{background:var(--color-accent)}.bar-good{background:var(--color-good)}.bar-over{background:var(--color-over)}.bar-pale{background:var(--color-plan)}.pill,.dropdown-pill{align-items:center;gap:var(--space-1);min-height:var(--size-pill);padding:0 var(--space-3);border-radius:var(--radius-full);font-size:var(--size-body-s);font-weight:600;display:inline-flex}.pill svg{width:var(--size-icon-s);height:var(--size-icon-s)}.pill-neutral{background:var(--color-surface-soft);color:var(--color-ink-soft)}.pill-good{background:var(--color-good-soft);color:var(--color-good)}.pill-watch{background:var(--color-watch-soft);color:var(--color-watch)}.pill-over{background:var(--color-over-soft);color:var(--color-over-strong)}.dropdown-pill{background:var(--color-surface-soft);color:var(--color-ink);font-family:inherit;font-size:var(--size-caption);cursor:pointer;border:0;position:relative}.dropdown-pill:after,.btn-text:after,.text-link:after{content:"";min-height:var(--tap);position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-5);border-radius:var(--radius-full);font-family:inherit;font-size:var(--size-body);font-weight:var(--weight-body);cursor:pointer;border:0;display:inline-flex}.btn-primary{min-height:var(--size-button);background:var(--color-hero);color:var(--color-on-hero)}.btn-soft{background:var(--color-accent-soft);color:var(--color-accent-strong)}.btn-wide{width:100%}.btn:disabled{cursor:default;background:var(--color-line);color:var(--color-muted)}.btn-text,.text-link{align-items:center;gap:var(--space-1);min-height:var(--tap);color:var(--color-accent-strong);font-family:inherit;font-size:var(--size-body-s);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.icon-button{width:var(--tap);height:var(--tap);border-radius:var(--radius-full);color:var(--color-ink);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button svg{width:var(--size-icon);height:var(--size-icon);stroke-width:1.8px}.icon-space{width:var(--tap);flex:none}.round-button{background:var(--color-surface);box-shadow:var(--shadow-card);position:relative}.row{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-2) 0;border-top:var(--size-hairline) solid var(--color-surface-soft);font-size:var(--size-body);display:flex}.row:first-child{border-top:0}.row-main{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.row-name{font-weight:var(--weight-body);overflow-wrap:anywhere}.row-detail{color:var(--color-muted);white-space:nowrap;font-weight:400}.row-sub{font-size:var(--size-caption);color:var(--color-muted)}.row-amount{font-weight:var(--weight-body);text-align:right;flex:none}.row-total{font-weight:700}a.row,button.row{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0;font-family:inherit;text-decoration:none}.sublist{margin:var(--space-1) 0 0 var(--space-1);padding-left:var(--space-3);border-left:calc(var(--size-hairline) * 2) solid var(--color-accent-soft);flex-direction:column;display:flex}.sublist .row{min-height:var(--size-pill);padding:var(--space-1) 0;font-size:var(--size-body-s);border-top:0}.sublist .row-name{color:var(--color-ink-soft);font-weight:400}.panel{padding:var(--space-4);background:var(--color-bg);border-radius:var(--radius-l)}.badge{top:var(--space-1);right:var(--space-1);min-width:var(--size-badge);height:var(--size-badge);padding:0 var(--space-1);border-radius:var(--radius-full);background:var(--color-accent-strong);color:var(--color-on-hero);font-size:var(--size-micro);font-weight:700;line-height:var(--size-badge);text-align:center;position:absolute}.field{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.field-label{font-size:var(--size-caption);color:var(--color-ink-soft);font-weight:600}.field-box{min-height:var(--size-field);padding:0 var(--space-3);background:var(--color-surface-soft);border-radius:var(--radius-m);align-items:center;display:flex}.field-box:focus-within{outline:var(--focus-ring-width) solid var(--color-accent-strong)}.field-box-error{background:var(--color-over-soft)}.field-prefix{margin-right:var(--space-1);color:var(--color-muted);font-size:var(--size-input)}.field-suffix{margin-left:var(--space-1);color:var(--color-muted);font-size:var(--size-input)}.field-input{width:100%;min-width:0;min-height:var(--size-field);color:var(--color-ink);font-family:inherit;font-size:var(--size-input);font-variant-numeric:lining-nums tabular-nums;background:0 0;border:0;padding:0}.field-input:focus{outline:none}.field-hint{font-size:var(--size-caption);color:var(--color-muted)}.field-error{font-size:var(--size-caption);color:var(--color-over-strong)}select.field-input{appearance:none;cursor:pointer}.choice-list{gap:var(--space-2);flex-direction:column;display:flex}.choice-group{gap:var(--space-1);flex-direction:column;display:flex}.choice,.switch-row{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap);padding:var(--space-2) var(--space-3);border-radius:var(--radius-m);background:var(--color-surface-soft);color:var(--color-ink);text-align:left;cursor:pointer;border:0;font-family:inherit;display:flex}.choice-on{background:var(--color-accent-soft);color:var(--color-accent-strong)}.choice-text{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.choice-label{font-size:var(--size-body);font-weight:var(--weight-body)}.choice-detail{font-size:var(--size-caption);color:var(--color-muted)}.choice-tick{width:var(--size-icon);height:var(--size-icon);flex:none;display:inline-flex}.choice-tick svg{width:var(--size-icon);height:var(--size-icon)}.switch-track{width:var(--size-switch-w);height:var(--size-switch-h);border-radius:var(--radius-full);background:var(--color-plan);flex:none;position:relative}.switch-on{background:var(--color-accent-strong)}.switch-knob{top:calc((var(--size-switch-h) - var(--size-knob)) / 2);left:calc((var(--size-switch-h) - var(--size-knob)) / 2);width:var(--size-knob);height:var(--size-knob);border-radius:var(--radius-full);background:var(--color-surface);box-shadow:var(--shadow-card);position:absolute}.switch-on .switch-knob{left:calc(var(--size-switch-w) - var(--size-knob) - (var(--size-switch-h) - var(--size-knob)) / 2)}.notice{gap:var(--space-2)}.notice-text{font-size:var(--size-body-s);color:var(--color-ink);line-height:1.5}.notice-actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.step-header{gap:var(--space-3);flex-direction:column;display:flex}.step-top{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-muted);display:flex}.sheet-layer{z-index:20;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet-backdrop{background:var(--color-ink);opacity:.32;position:absolute;inset:0}.sheet{width:100%;max-width:var(--size-page-max);max-height:calc(100vh - var(--space-7) * 2);padding:var(--space-3) var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom));background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-float);flex-direction:column;display:flex;position:relative}.sheet:focus{outline:none}.sheet-handle{width:var(--size-handle-w);height:var(--size-handle-h);border-radius:var(--radius-full);background:var(--color-line);flex:none;align-self:center}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:flex}.sheet-body{gap:var(--space-4);min-height:0;margin-top:var(--space-2);flex-direction:column;flex:auto;display:flex;overflow-y:auto}.sheet-split{flex:auto;min-height:0}.sheet-split>*{flex:none}.sheet-split>.sheet-scroll{border-top:var(--size-hairline) solid var(--color-line);border-bottom:var(--size-hairline) solid var(--color-line);flex:0 auto;min-height:0;overflow-y:auto}body.sheet-open{overflow:hidden}@media (prefers-reduced-motion:no-preference){.sheet{animation:sheet-up var(--motion-medium) var(--motion-ease)}.sheet-backdrop{animation:fade-in var(--motion-medium) var(--motion-ease)}}@media (prefers-reduced-motion:reduce){.sheet{animation:fade-in var(--motion-short) var(--motion-ease)}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes fade-in{0%{opacity:0}}.toast-region{left:0;right:0;bottom:calc(var(--size-bar-height) + var(--space-7) * 2 + env(safe-area-inset-bottom));z-index:30;padding:0 var(--space-4);pointer-events:none;justify-content:center;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-4);max-width:var(--size-page-max);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--color-hero);color:var(--color-on-hero);font-size:var(--size-body-s);box-shadow:var(--shadow-float);pointer-events:auto;display:flex}.toast-undo{min-height:var(--tap);padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--color-on-hero-muted);font-family:inherit;font-size:var(--size-body-s);cursor:pointer;background:0 0;border:0;font-weight:700}.sub-header{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.back-link{align-self:flex-start;align-items:center;gap:var(--space-1);min-height:var(--tap);margin-left:calc(var(--space-2) * -1);padding-right:var(--space-2);color:var(--color-accent-strong);font-size:var(--size-body-s);font-weight:600;text-decoration:none;display:inline-flex}.back-link svg{width:var(--size-icon);height:var(--size-icon)}.page-title{font-family:var(--family-display-l);font-size:var(--size-display-l);font-weight:var(--weight-display-l);line-height:1.15}.page-footer{gap:var(--space-3);margin-top:var(--space-6);flex-direction:column;display:flex}.form{gap:var(--space-4);flex-direction:column;display:flex}.form-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.form-row>*{flex:1 1 calc(var(--size-bubble) / 1.5)}.lead{font-size:var(--size-body-s);color:var(--color-ink-soft);line-height:1.6}.edit-list{gap:var(--space-2);flex-direction:column;display:flex}.edit-row+.edit-row{border-top:var(--size-hairline) solid var(--color-line)}.edit-line{align-items:center;gap:var(--space-2);display:flex}.edit-line .field{flex:1}.plan-edit-lines{gap:var(--space-5);flex-direction:column;display:flex}.plan-edit-line{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.plan-edit-line>.field,.plan-edit-line>.row{align-self:stretch}.group-edit{padding-bottom:var(--space-2)}.plan-total{font-size:var(--size-body);font-weight:var(--weight-body)}.restore{gap:var(--space-3);flex-direction:column;display:flex}.file-button{align-self:stretch}.restore-preview{gap:var(--space-2);font-size:var(--size-body-s);flex-direction:column;display:flex}.setup-title{margin:var(--space-5) 0 var(--space-4)}.welcome{gap:var(--space-5);padding-bottom:var(--space-7);flex-direction:column;display:flex}.welcome-logo{font-family:var(--family-display-m);font-size:var(--size-display-m)}.welcome-promise{align-items:flex-start;gap:var(--space-3);font-size:var(--size-body-s);line-height:1.5;display:flex}.welcome-promise svg{width:var(--size-icon);height:var(--size-icon);color:var(--color-accent-strong);flex:none}.welcome .btn-text{align-self:center}.warning-text{font-size:var(--size-body-s);color:var(--color-ink);font-weight:600}.choice-on .choice-detail{color:var(--color-ink-soft)}.unit-switch{margin-left:var(--space-3);margin-right:calc(var(--space-2) * -1);gap:var(--space-1);flex:none;display:inline-flex}.unit{min-width:var(--tap);min-height:var(--tap);padding:0 var(--space-2);border-radius:var(--radius-m);background:var(--color-surface);color:var(--color-ink-soft);font-family:inherit;font-size:var(--size-body);font-weight:var(--weight-body);cursor:pointer;border:0}.unit-on{background:var(--color-accent-soft);color:var(--color-accent-strong)}.tick-list{flex-direction:column;display:flex}.tick-box{width:var(--size-icon);height:var(--size-icon);border:calc(var(--size-hairline) * 2) solid var(--color-plan);border-radius:var(--radius-s);color:var(--color-on-hero);flex:none;justify-content:center;align-items:center;display:inline-flex}.tick-on{border-color:var(--color-accent-strong);background:var(--color-accent-strong)}.tick-box svg{width:var(--size-icon-s);height:var(--size-icon-s)}.group-panel{gap:var(--space-2);flex-direction:column;display:flex}.group-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.group-panel .choice{background:var(--color-surface)}.group-panel .choice-on{background:var(--color-accent-soft)}.panel .field-box{background:var(--color-surface)}.panel .unit{background:var(--color-surface-soft)}.panel .unit-on{background:var(--color-accent-soft)}.remove-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-4);border-radius:var(--radius-full);color:var(--color-ink);font-family:inherit;font-size:var(--size-body);cursor:pointer;background:0 0;border:0;font-weight:700;display:inline-flex}.remove-button svg{width:var(--size-icon-s);height:var(--size-icon-s)}.summary-bar{z-index:5;gap:var(--space-2);margin:0 calc(var(--space-6) * -1);padding:var(--space-3) var(--space-6) calc(var(--space-4) + env(safe-area-inset-bottom));border-top:var(--size-hairline) solid var(--color-line);background:var(--color-surface);flex-direction:column;display:flex;position:sticky;bottom:0}.summary-bar .page-footer{margin-top:var(--space-2)}.summary-bar-row{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);font-size:var(--size-body-s);flex-wrap:wrap;display:flex}.summary-bar-label strong{font-weight:700}.summary-bar-status{align-items:center;gap:var(--space-1);font-size:var(--size-caption);font-weight:700;display:inline-flex}.summary-bar-status svg{width:var(--size-icon-s);height:var(--size-icon-s)}.summary-muted{color:var(--color-ink-soft)}.summary-good{color:var(--color-good)}.summary-over{color:var(--color-over-strong)}.ungrouped{gap:var(--space-2);padding-top:var(--space-4);border-top:var(--size-hairline) solid var(--color-line);flex-direction:column;display:flex}.ungrouped-title{color:var(--color-ink-soft);font-size:var(--size-body-s);font-weight:700}.tag-list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.tag{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--color-surface-soft);color:var(--color-ink-soft);font-size:var(--size-caption)}.home{padding-left:var(--space-4);padding-right:var(--space-4)}.home-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.home-header-left{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.home-greeting{align-items:center;gap:var(--space-2);font-size:var(--size-body);flex-wrap:wrap;font-weight:500;display:inline-flex}.home-header .dropdown-pill{background:var(--color-surface)}.home-header-right{gap:var(--space-2);display:flex}.plan-lines,.goals{gap:var(--space-4);flex-direction:column;display:flex}.plan-line{gap:var(--space-2);flex-direction:column;display:flex}.plan-line-head{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--size-body);font-weight:var(--weight-body);flex-wrap:wrap;display:flex}.plan-line-toggle{min-height:var(--tap);margin:calc(var(--space-3) * -1) 0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit}.plan-line-name{align-items:center;gap:var(--space-1);display:inline-flex}.plan-line-name svg{width:var(--size-icon-s);height:var(--size-icon-s);color:var(--color-muted)}.plan-group-lines{gap:var(--space-4);margin-top:var(--space-2);padding-left:var(--space-3);border-left:var(--size-track) solid var(--color-accent-soft);flex-direction:column;display:flex}.plan-line-foot{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.not-in-plan{border-top:var(--size-hairline) solid var(--color-surface-soft)}.buffer-tile{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-height:var(--tap);color:inherit;text-align:left;cursor:pointer;border:0;flex-wrap:wrap;font-family:inherit;display:flex}.buffer-name{align-items:center;gap:var(--space-3);font-size:var(--size-body);font-weight:var(--weight-body);display:inline-flex}.icon-round{width:var(--size-icon-round);height:var(--size-icon-round);border-radius:var(--radius-full);background:var(--color-accent-soft);color:var(--color-accent-strong);justify-content:center;align-items:center;display:inline-flex}.icon-round svg{width:var(--size-icon-s);height:var(--size-icon-s)}.buffer-amount-wrap{align-items:flex-end;gap:var(--space-1);text-align:right;flex-direction:column;display:flex}.buffer-amount,.buffer-big,.stat-figure{font-family:var(--family-display-s);font-size:var(--size-display-s);font-weight:var(--weight-display-s);line-height:1.1}.plan-foot{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:var(--size-hairline) solid var(--color-surface-soft);flex-wrap:wrap;display:flex}.chart{gap:var(--space-3);flex-direction:column;display:flex}.chart-area{gap:var(--space-2);flex-direction:column;display:flex}.chart-plot{position:relative}.bubble-zone{min-height:calc(var(--space-7) * 4.25);align-items:flex-end;display:flex}.bubble-hint{text-align:center;align-self:center;width:100%}.chart-svg{width:100%;height:auto;display:block;overflow:visible}.chart-grid{stroke:var(--color-line);stroke-width:1px}.chart-fill{fill:var(--color-accent-soft);opacity:.7}.chart-plan{fill:none;stroke:var(--color-plan);stroke-width:1.5px;stroke-dasharray:4 4}.chart-line{fill:none;stroke:var(--color-accent);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.chart-spend-dot{fill:var(--color-accent)}.chart-guide{stroke:var(--color-hero);stroke-width:1px}.chart-gap{stroke-width:3px;stroke-linecap:round}.chart-gap-good{stroke:var(--color-good)}.chart-gap-over{stroke:var(--color-over)}.chart-plan-dot{fill:var(--color-surface);stroke:var(--color-plan);stroke-width:1.5px}.chart-today{fill:var(--color-hero);stroke:var(--color-surface);stroke-width:2px}.chart-selected{fill:var(--color-accent);stroke:var(--color-surface);stroke-width:2px}.chart-label{--label-x:var(--space-2);color:var(--color-muted);font-size:var(--size-micro);font-weight:var(--weight-micro);white-space:nowrap;pointer-events:none;position:absolute}.chart-label-strong{color:var(--color-ink);font-weight:700}.label-left{--label-x:calc(-100% - var(--space-2))}.label-above{transform:translate(var(--label-x), calc(-100% - var(--space-1)))}.label-below{transform:translate(var(--label-x), var(--space-1))}.chart-touch{touch-action:pan-y;cursor:crosshair;border-radius:var(--radius-m);position:absolute;inset:0}.chart-pills{gap:var(--space-2);flex-wrap:wrap;display:flex}.bubble{gap:var(--space-1);width:var(--size-bubble);max-width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-l);background:var(--color-hero);color:var(--color-on-hero);box-shadow:var(--shadow-float);font-family:inherit;font-size:var(--size-body-s);text-align:left;cursor:pointer;border:0;flex-direction:column;display:flex;position:relative;transform:translate(-50%)}.bubble-date{font-weight:700}.bubble-more{color:var(--color-on-hero-muted);font-weight:700}.sheet-sub{margin:var(--space-2) 0 0;font-size:var(--size-label);font-weight:var(--weight-label);text-transform:var(--transform-label);letter-spacing:var(--tracking-label);color:var(--color-muted)}.pending{color:var(--color-ink-soft);font-weight:600}.hbars{gap:var(--space-3);flex-direction:column;display:flex}.hbar{gap:var(--space-1);flex-direction:column;display:flex}.hbar-head{justify-content:space-between;gap:var(--space-2);font-size:var(--size-body-s);flex-wrap:wrap;display:flex}.hbar-track{height:var(--size-track-thick);border-radius:var(--radius-full);background:var(--color-surface-soft);display:block}.hbar-fill{border-radius:var(--radius-full);background:var(--color-accent);height:100%;display:block}.hbar-other{background:var(--color-plan)}.credit-head{justify-content:space-between;align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.credit-owed{gap:var(--space-1);flex-direction:column;display:flex}.spark{width:100%;height:var(--size-spark-h);display:block}.spark-line{fill:none;stroke:var(--color-accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}@media (prefers-reduced-motion:no-preference){.bar-fill,.hbar-fill{animation:bar-fill var(--motion-medium) var(--motion-ease);transform-origin:0}}@keyframes bar-fill{0%{transform:scaleX(0)}}.amount-stack{align-items:flex-end;gap:var(--space-1);flex-direction:column;display:flex}.amount-stack .caption{font-weight:400}.why-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.why-table{width:100%;margin-top:var(--space-2);border-collapse:collapse;font-size:var(--size-body-s)}.why-table td,.why-table th{padding:var(--space-2) 0;border-top:var(--size-hairline) solid var(--color-line);text-align:left;vertical-align:top;font-weight:400}.why-date{width:30%;padding-right:var(--space-2);color:var(--color-muted)}.why-table .why-amount{text-align:right;white-space:nowrap}.why-less th,.why-less td.why-amount{color:var(--color-ink-soft)}.why-total th,.why-total td{border-top-width:calc(var(--size-hairline) * 2);font-weight:var(--weight-body)}.bubble-row{justify-content:space-between;gap:var(--space-3);display:flex}.bubble-label{color:var(--color-on-hero-muted)}.bubble-zone-tall{min-height:calc(var(--space-7) * 4.75)}.credit-tiles{gap:var(--space-2);flex-wrap:wrap;display:flex}.credit-tile{gap:var(--space-1);padding:var(--space-3);flex-direction:column;flex:1 1 0;display:flex}.owed-bars{column-gap:var(--space-2);margin:var(--space-5) 0 0;grid-template-columns:repeat(6,minmax(0,1fr));padding:0;display:grid}.owed-bar{flex-direction:column;min-width:0;display:flex}.owed-col{height:calc(var(--space-7) * 3);flex-direction:column;justify-content:flex-end;align-items:center;display:flex}.owed-fill{border-radius:var(--radius-s) var(--radius-s) 0 0;background:var(--color-accent-pale);width:100%;display:block}.owed-now .owed-fill{background:var(--color-accent)}.owed-label{padding-top:var(--space-1);color:var(--color-muted);font-size:var(--size-micro);font-weight:var(--weight-micro);text-align:center}.owed-now .owed-label{color:var(--color-ink)}.owed-value{margin-bottom:var(--space-1);color:var(--color-ink);font-size:var(--size-micro);white-space:nowrap;font-weight:700}
