.pad{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(var(--key-min), 1fr);gap:var(--sp-2);flex:1;min-block-size:0;display:grid}.pad__key{border-radius:var(--radius-2);background-color:var(--surface-sunken);color:var(--text);font-size:var(--fs-500);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;place-items:center;display:grid}.pad__key--zero{grid-column:span 2}.pad__key:active{background-color:var(--brand-soft);color:var(--brand)}.pad__key:disabled{opacity:.35}.pad__key--erase svg{fill:none;stroke:var(--text);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}@media (max-height:480px) and (orientation:landscape){.pad{gap:var(--sp-1);grid-area:pad}}.scrim{z-index:var(--z-scrim);background-color:var(--scrim);animation:scrim-in var(--dur-2) var(--ease-out) both;position:fixed;inset:0}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translate(0,0)}}.sheet{z-index:var(--z-sheet);gap:var(--sp-2);max-inline-size:var(--app-max);min-block-size:min(100dvh, var(--sheet-min,38rem));max-block-size:100dvh;padding-block:var(--sp-2) max(var(--sp-3), var(--safe-bottom));padding-inline:max(var(--sp-3), var(--safe-left)) max(var(--sp-3), var(--safe-right));background-color:var(--surface);box-shadow:var(--shadow-2);animation:sheet-in var(--dur-2) var(--ease-out) both;border-start-start-radius:var(--radius-3);border-start-end-radius:var(--radius-3);flex-direction:column;margin-inline:auto;display:flex;position:fixed;inset-block-end:0;inset-inline:0;overflow:hidden}.scrim[data-leaving],.sheet[data-leaving]{pointer-events:none;animation-direction:reverse}@media (max-height:660px){.sheet{--key-min:var(--tap-min);--chip-min:3rem;gap:var(--sp-1)}}.sheet__hint{min-inline-size:0;font-size:var(--fs-200);line-height:var(--lh-body);min-block-size:calc(var(--fs-200) * var(--lh-body));min-block-size:1lh;font-weight:var(--fw-medium);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sheet__hint[data-tone=error]{color:var(--danger);font-weight:var(--fw-semibold)}.amount{font-variant-numeric:tabular-nums;font-size:min(var(--fs-600), 10vw);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);text-align:end;padding-inline-end:var(--sp-1);padding-block:var(--sp-1)}.amount[data-empty]{color:var(--text-muted)}.amount__cell{font-variant-numeric:tabular-nums}.amount__cell[data-kind=decimal],.amount__cell[data-kind=fraction]{font-size:.55em}@media (max-height:480px) and (orientation:landscape){.amount{font-size:min(var(--fs-500), 6vw);grid-area:amount;align-self:end;padding-block:0}.sheet__hint{grid-area:hint;align-self:center}}.sheet--add{--sheet-min:38rem}.meta{align-items:center;gap:var(--sp-2);display:flex}.chip{justify-content:center;align-items:center;gap:var(--sp-1);min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-full);background-color:var(--surface-sunken);color:var(--text);font-size:var(--fs-200);line-height:var(--lh-snug);flex:none;display:flex}.chip:active{background-color:var(--brand-soft)}.chip[aria-pressed=true],.chip[data-on]{background-color:var(--brand-soft);color:var(--brand);font-weight:var(--fw-semibold)}.chip svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round}.chip--date{position:relative}.chip__input{opacity:0;block-size:100%;inline-size:100%;position:absolute;inset:0}.chip--note,.meta__note{min-inline-size:var(--tap-min);white-space:nowrap;text-overflow:ellipsis;line-height:var(--tap-min);text-align:start;flex:1;justify-content:flex-start;display:block;overflow:hidden}.meta__note{min-block-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-full);background-color:var(--surface-sunken)}.meta__note::placeholder{color:var(--text-muted)}.chip--done{background-color:var(--brand);color:var(--on-brand);font-weight:var(--fw-semibold)}.cats{gap:var(--sp-2);grid-template-columns:repeat(4,1fr);display:grid}.cat{justify-content:center;align-items:center;gap:var(--sp-1);min-block-size:var(--chip-min);padding:var(--sp-1) var(--sp-1);border-radius:var(--radius-2);background-color:var(--surface-sunken);flex-direction:column;display:flex;overflow:hidden}.cat__emoji{border-radius:var(--radius-full);background-color:var(--cat);block-size:1.625rem;inline-size:1.625rem;font-size:var(--fs-200);place-items:center;line-height:1;display:grid}.cat__name{white-space:nowrap;text-overflow:ellipsis;max-inline-size:100%;font-size:var(--fs-100);line-height:var(--lh-snug);letter-spacing:-.01em;overflow:hidden}.cat:active{background-color:color-mix(in srgb, var(--cat) 22%, var(--surface-sunken))}.cat:disabled{opacity:.45}@media (max-width:359px){.cat__name{font-size:var(--fs-cat-narrow);letter-spacing:var(--tracking-cat-narrow)}.chip{padding-inline:var(--sp-2)}}@media (max-height:480px) and (orientation:landscape){.sheet--add{--chip-min:var(--tap-min);column-gap:var(--sp-3);row-gap:var(--sp-1);min-block-size:100dvh;max-inline-size:min(48rem,100dvw - 6rem);padding-block:var(--sp-1) max(var(--sp-1), var(--safe-bottom));grid-template:"hint meta""amount cats""pad cats"1fr/1fr 1fr;display:grid}.meta{grid-area:meta}.cats{grid-area:cats;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(var(--chip-min), 1fr);gap:var(--sp-1)}}.sheet--budget{--sheet-min:31rem}.periods{gap:var(--sp-2);grid-template-columns:repeat(2,1fr);display:grid}.period{justify-content:center;gap:var(--seam);min-block-size:3.5rem;padding-block:var(--sp-2);padding-inline:var(--sp-3);border-radius:var(--radius-2);background-color:var(--surface-sunken);text-align:start;flex-direction:column;display:flex}.period[data-selected]{background-color:var(--brand-soft);box-shadow:inset 0 0 0 2px var(--brand)}.period[data-selected] .period__name{color:var(--brand)}.period:active{background-color:var(--brand-soft)}.period__name{font-size:var(--fs-300);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}.period__now{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);font-variant-numeric:tabular-nums}.save{min-block-size:3.5rem;padding-inline:var(--sp-3);border-radius:var(--radius-2);background-color:var(--brand);color:var(--on-brand);font-size:min(var(--fs-300), 4.4vw);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;flex:none;overflow:hidden}.save:active{opacity:.82}.save:disabled{opacity:.45}@media (max-height:480px) and (orientation:landscape){.sheet--budget{column-gap:var(--sp-3);row-gap:var(--sp-1);min-block-size:100dvh;max-inline-size:min(48rem,100dvw - 6rem);padding-block:var(--sp-1) max(var(--sp-1), var(--safe-bottom));grid-template:"hint periods""amount periods""pad save"1fr/1fr 1fr;display:grid}.periods{grid-area:periods;grid-template-columns:1fr;align-content:center}.save{grid-area:save;align-self:end}}.sheet--amount{--sheet-min:30rem}.fix__note{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);padding-inline:var(--sp-1)}@media (max-height:480px) and (orientation:landscape){.sheet--amount{--chip-min:var(--tap-min);column-gap:var(--sp-3);row-gap:var(--sp-1);min-block-size:100dvh;max-inline-size:min(48rem,100dvw - 6rem);padding-block:var(--sp-1) max(var(--sp-1), var(--safe-bottom));grid-template:"hint meta""amount cats""pad cats"1fr"pad note""pad save"/1fr 1fr;display:grid}.sheet--amount .meta{grid-area:meta}.sheet--amount .cats{grid-area:cats;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(var(--chip-min), 1fr);gap:var(--sp-1)}.fix__note{grid-area:note;align-self:end}.sheet--amount .save{grid-area:save;align-self:end}}.cat[aria-pressed=true]{background-color:color-mix(in srgb, var(--cat) 22%, var(--surface-sunken));box-shadow:inset 0 0 0 var(--seam) var(--cat)}.cat[data-off]{box-shadow:inset 0 0 0 var(--seam) var(--line-strong);border-radius:var(--radius-2);outline:var(--seam) dashed var(--line-strong);outline-offset:calc(-1 * var(--seam) * 2)}.nudge{background-color:var(--surface);border-block-start:1px solid var(--line);padding-block:var(--sp-2);animation:nudge-in var(--dur-1) var(--ease-out) both;flex:none;padding-inline-start:max(var(--sp-3), var(--safe-left));padding-inline-end:max(var(--sp-3), var(--safe-right))}@keyframes nudge-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0,0)}}.nudge__inner{align-items:center;gap:var(--sp-3);max-inline-size:var(--app-max);padding-inline:var(--sp-2);margin-inline:auto;display:flex}.nudge__icon{fill:none;stroke:var(--text-muted);stroke-width:1.8px;stroke-linejoin:round;flex:none}.nudge__text{flex-direction:column;flex:1;min-inline-size:0;display:flex}.nudge__title{font-size:var(--fs-200);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--text)}.nudge__hint{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted)}.nudge__action{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--radius-2);color:var(--brand);font-size:var(--fs-200);font-weight:var(--fw-semibold);flex:none}.nudge__action:active{background-color:var(--brand-soft);border-color:var(--brand)}@media (max-width:359px){.nudge__icon{display:none}.nudge__action{padding-inline:var(--sp-3)}}.panel{z-index:var(--z-panel);gap:var(--sp-3);padding-block:max(var(--sp-3), var(--safe-top)) max(var(--sp-4), var(--safe-bottom));padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right));background-color:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.panel__head{align-items:center;gap:var(--sp-2);min-block-size:var(--tap-min);display:flex}.panel__title{min-inline-size:0;font-family:var(--font-numeric);font-size:var(--fs-200);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.panel__close{inline-size:var(--tap-min);block-size:var(--tap-min);border-radius:var(--radius-full);flex:none;place-items:center;display:grid}.panel__close svg{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-linecap:round}.panel__lead{font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted)}.panel__data{min-block-size:var(--tap-min);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-2);background-color:var(--surface);color:var(--text);font-family:var(--font-numeric);line-height:var(--lh-snug);resize:none;flex:1}.panel__copy{min-block-size:var(--tap-min);padding-inline:var(--sp-4);border-radius:var(--radius-2);background-color:var(--brand);color:var(--on-brand);font-size:var(--fs-300);font-weight:var(--fw-semibold)}.panel__copy:active{opacity:.9}.cats--edit{min-block-size:calc(2 * var(--chip-min) + var(--sp-2));margin-block-start:var(--sp-3)}.cats--edit .cat{border:1px solid var(--line)}.cats--preview .cat[data-self]{outline:2px solid var(--brand);outline-offset:-2px}.prefs__sub{font-size:var(--fs-300);font-weight:var(--fw-semibold);margin-block-start:var(--sp-5)}.arch{border:1px solid var(--line);border-radius:var(--radius-2);margin-block-start:var(--sp-3);list-style:none;overflow:hidden}.arch__row{align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:var(--tap-min);padding:var(--sp-2) var(--sp-3);text-align:start;color:var(--text);display:flex}.arch li+li .arch__row{border-block-start:1px solid var(--line)}.arch__row:active{background-color:var(--surface-sunken)}.arch__row:disabled{opacity:.45}.arch__row svg{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.arch__dot,.editor__chip{border-radius:var(--radius-full);background-color:var(--cat);block-size:1.75rem;inline-size:1.75rem;font-size:var(--fs-200);flex:none;place-items:center;line-height:1;display:grid}.arch__name{white-space:nowrap;text-overflow:ellipsis;min-inline-size:0;font-size:var(--fs-300);flex:1;overflow:hidden}.sheet--cat{--sheet-min:30rem}.editor{gap:var(--sp-3);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-block-size:0;flex-direction:column;flex:1;padding-block-end:var(--sp-1);display:flex;overflow-y:auto}.editor__foot{gap:var(--sp-2);border-block-start:1px solid var(--line);flex-direction:column;flex:none;padding-block-start:var(--sp-2);display:flex}.editor__lead{align-items:center;gap:var(--sp-3);min-block-size:var(--tap-min);font-size:var(--fs-400);font-weight:var(--fw-semibold);display:flex}.editor__name{min-block-size:var(--tap-min);padding-inline:var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--radius-2);background-color:var(--surface);color:var(--text);font-size:var(--fs-300);font-weight:var(--fw-medium)}.editor__name::placeholder{color:var(--text-muted);font-weight:var(--fw-regular)}.editor__note{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted)}.editor__note--foot{text-align:center}.picker{grid-template-columns:repeat(auto-fill, minmax(var(--tap-min), 1fr));gap:var(--sp-1);display:grid}.picker__key{min-inline-size:var(--tap-min);min-block-size:var(--tap-min);border-radius:var(--radius-2);background-color:var(--surface-sunken);place-items:center;font-size:1.375rem;line-height:1;display:grid}.picker__key:active{background-color:var(--brand-soft)}.picker__key:not(.picker__key--color)[aria-pressed=true]{background-color:var(--brand-soft);outline:2px solid var(--brand);outline-offset:-2px}.picker--color{grid-template-columns:repeat(4,1fr)}.picker__key--color{background-color:var(--cat);border:1px solid color-mix(in srgb, var(--cat) 70%, var(--text))}.picker__key--color svg{visibility:hidden;fill:none;stroke:var(--tick,var(--text));stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.picker__key--color[aria-pressed=true]{outline:2px solid var(--text);outline-offset:-2px}.picker__key--color[aria-pressed=true] svg{visibility:visible}.picker__key[data-outside]{outline:2px dashed var(--line-strong);outline-offset:-2px}.picker__key[data-outside][aria-pressed=true]{outline-color:var(--text)}.move{align-items:center;gap:var(--sp-2);display:flex}.move__key{inline-size:var(--tap-min);block-size:var(--tap-min);border:1px solid var(--line-strong);border-radius:var(--radius-2);flex:none;place-items:center;display:grid}.move__key svg{fill:none;stroke:var(--text);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.move__key:active{background-color:var(--brand-soft)}.move__key:disabled{opacity:.35}.move__label{text-align:center;font-size:var(--fs-200);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;flex:1}.swap__title{font-size:var(--fs-300);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}.swap__text{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);margin-block-end:var(--sp-1)}.editor__row{gap:var(--sp-2);display:flex}.editor__primary,.editor__second{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-4);border-radius:var(--radius-2);font-size:var(--fs-300);font-weight:var(--fw-semibold);flex:1}.editor__primary{background-color:var(--brand);color:var(--on-brand)}.editor__primary:active{transform:scale(.98)}.editor__primary:disabled{opacity:.45}.editor__second{border:1px solid var(--line-strong);color:var(--text)}.editor__second:active{background-color:var(--surface-sunken)}.editor__second:disabled{opacity:.45}.danger{gap:var(--sp-2);border-block-start:1px solid var(--line);flex-direction:column;margin-block-start:var(--sp-2);padding-block-start:var(--sp-3);display:flex}.danger__action{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-4);border:1px solid var(--danger);border-radius:var(--radius-2);color:var(--danger);font-size:var(--fs-200);font-weight:var(--fw-semibold);align-self:flex-start}.danger__action:active{background-color:color-mix(in srgb, var(--danger) 12%, var(--surface))}.danger__action:disabled{opacity:.45}@media (max-height:480px) and (orientation:landscape){.sheet--cat{--chip-min:var(--tap-min);--sheet-min:0;column-gap:var(--sp-3);grid-template:"hint hint""body foot"1fr/1fr 1fr;min-block-size:100dvh;max-inline-size:min(48rem,100dvw - 6rem);display:grid}.sheet--cat .sheet__hint{grid-area:hint}.editor{grid-area:body}.editor__foot{border-block-start:none;grid-area:foot;justify-content:center;padding-block-start:0}}.sheet--rule{--sheet-min:46rem}.rule{gap:var(--sp-2);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-block-size:0;display:flex;overflow-y:auto}.rule>*{flex:none}.cads{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);display:grid}.cad{min-block-size:3rem;min-inline-size:var(--tap-min);padding-inline:var(--sp-1);border-radius:var(--radius-2);background-color:var(--surface-sunken);color:var(--text);font-size:min(var(--fs-200), 4vw);font-weight:var(--fw-medium);white-space:nowrap;place-items:center;display:grid}.cad[data-selected]{background-color:var(--brand-soft);box-shadow:inset 0 0 0 2px var(--brand);color:var(--brand);font-weight:var(--fw-semibold)}.cad:active{background-color:var(--brand-soft)}.starts,.ends{gap:var(--sp-2);display:flex}.ends__kept{min-block-size:calc(3 * var(--fs-100) * var(--lh-snug))}.starts--read{align-items:stretch;gap:var(--sp-1);flex-direction:column}.starts__now,.rewind__now{font-size:var(--fs-200);line-height:var(--lh-snug);color:var(--text);font-variant-numeric:tabular-nums}.rewind__now{font-size:var(--fs-300);font-weight:var(--fw-semibold)}.starts__back{justify-content:center;align-items:center;gap:var(--sp-2);min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-block:var(--sp-2);padding-inline:var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--radius-2);color:var(--text);font-size:min(var(--fs-200), 4vw);font-weight:var(--fw-medium);line-height:var(--lh-snug);text-align:center;display:flex}.starts__back svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.starts__back:active{background-color:var(--surface-sunken)}.anchor{font-variant-numeric:tabular-nums;justify-content:flex-start}.rewind__wrong{color:var(--text);font-weight:var(--fw-semibold)}.cats--pick .cat[aria-pressed=true]{outline:2px solid var(--brand);outline-offset:-2px;background-color:var(--brand-soft)}.cats--pick .cat[data-current]{outline:2px dashed var(--line-strong);outline-offset:-2px}.cats--pick .cat[data-current][aria-pressed=true]{outline-color:var(--brand)}.cat__tag{white-space:nowrap;text-overflow:ellipsis;max-inline-size:100%;font-size:.625rem;line-height:1.2;font-weight:var(--fw-semibold);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);overflow:hidden}.rule__foot{gap:var(--sp-2);border-block-start:1px solid var(--line);flex-direction:column;flex:none;padding-block-start:var(--sp-2);display:flex}.rule__preview{min-block-size:calc(2 * var(--fs-100) * var(--lh-snug));font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);font-variant-numeric:tabular-nums}.rule__confirmSlot{min-block-size:var(--tap-min)}.rule__confirm{align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-2);border-radius:var(--radius-2);text-align:start;color:var(--text);display:flex}.rule__confirm:active{background-color:var(--surface-sunken)}.rule__box{border:2px solid var(--line-strong);border-radius:var(--radius-1);flex:none;place-items:center;block-size:1.5rem;inline-size:1.5rem;display:grid}.rule__box svg{visibility:hidden;fill:none;stroke:var(--on-brand);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.rule__confirm[aria-checked=true] .rule__box{background-color:var(--brand);border-color:var(--brand)}.rule__confirm[aria-checked=true] .rule__box svg{visibility:visible}.rule__confirmText{min-inline-size:0;font-size:var(--fs-200);font-weight:var(--fw-medium);line-height:var(--lh-snug);flex:1}@media (max-height:480px) and (orientation:landscape){.sheet--rule{--sheet-min:0;column-gap:var(--sp-3);grid-template:"hint hint""body foot"1fr/1fr 1fr;min-block-size:100dvh;max-inline-size:min(48rem,100dvw - 6rem);display:grid}.sheet--rule .sheet__hint{grid-area:hint}.rule{grid-area:body}.rule__foot{border-block-start:none;grid-area:foot;justify-content:center;padding-block-start:0}.sheet--rule .amount{font-size:min(var(--fs-500), 6vw);grid-area:auto}}.sheet__hint--long{white-space:normal;color:var(--text);font-weight:var(--fw-semibold);overflow:visible}.rule__row{gap:var(--sp-2);display:flex}.rule__row .save{min-inline-size:var(--tap-min);flex:1}.rule__second{min-block-size:3.5rem;min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--radius-2);color:var(--text);font-size:min(var(--fs-300), 4.4vw);font-weight:var(--fw-semibold);white-space:nowrap;flex:none}.rule__second:active{background-color:var(--surface-sunken)}.acts{z-index:var(--z-sheet);gap:var(--sp-2);max-inline-size:var(--app-max);padding-block:var(--sp-3) max(var(--sp-3), var(--safe-bottom));padding-inline:max(var(--sp-3), var(--safe-left)) max(var(--sp-3), var(--safe-right));background-color:var(--surface);box-shadow:var(--shadow-2);animation:sheet-in var(--dur-2) var(--ease-out) both;border-start-start-radius:var(--radius-3);border-start-end-radius:var(--radius-3);flex-direction:column;margin-inline:auto;display:flex;position:fixed;inset-block-end:0;inset-inline:0}.acts__head{align-items:center;gap:var(--sp-3);min-block-size:var(--tap-min);padding-inline:var(--sp-2);border-block-end:1px solid var(--line);padding-block-end:var(--sp-2);display:flex}.acts__emoji{text-align:center;inline-size:1.75rem;font-size:var(--fs-400);flex:none;line-height:1}.acts__text{flex-direction:column;flex:1;min-inline-size:0;display:flex}.acts__name{font-size:var(--fs-300);line-height:var(--lh-snug)}.acts__when{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.acts__amount{font-variant-numeric:tabular-nums;font-size:var(--fs-300);font-weight:var(--fw-semibold);flex:none}.acts__fix,.acts__delete,.acts__close{min-block-size:var(--tap-min);padding-inline:var(--sp-4);border-radius:var(--radius-2);font-size:var(--fs-300);font-weight:var(--fw-semibold)}.acts__fix{color:var(--text);background-color:var(--surface-sunken)}.acts__fix:active{background-color:var(--brand-soft)}.acts__delete{color:var(--danger);background-color:var(--surface-sunken)}.acts__delete:active{background-color:color-mix(in srgb, var(--danger) 10%, var(--surface-sunken))}.acts__close{color:var(--text-muted)}.acts__close:active{background-color:var(--surface-sunken)}.fit{grid-template-columns:auto;justify-items:center;display:inline-grid}.fit__real{white-space:nowrap;grid-area:1/1}.fit:after{content:attr(data-alt);visibility:hidden;white-space:nowrap;grid-area:1/1}.guide{z-index:var(--z-sheet);padding-block:max(var(--sp-4), var(--safe-top)) max(var(--sp-4), var(--safe-bottom));padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right));place-items:center;display:grid;position:fixed;inset:0}@keyframes guide-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.guide__card{overscroll-behavior:contain;max-block-size:100%;inline-size:100%;max-inline-size:26rem;padding:var(--sp-4);border-radius:var(--radius-3);background-color:var(--surface);box-shadow:var(--shadow-1);animation:guide-in var(--dur-2) var(--ease-out) both;overflow-y:auto}.guide__step{font-size:var(--fs-100);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.guide__title{font-size:var(--fs-400);font-weight:var(--fw-semibold);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);color:var(--text);margin-block-start:var(--sp-3)}.guide__text{min-block-size:calc(3em * var(--lh-body));font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted);text-wrap:pretty;margin-block-start:var(--sp-2)}.guide__acts{align-items:center;gap:var(--sp-2);margin-block-start:var(--sp-4);display:flex}.guide__skip,.guide__next{min-block-size:var(--tap-min);min-inline-size:5.5rem;padding-inline:var(--sp-4);border-radius:var(--radius-2);font-size:var(--fs-300);font-weight:var(--fw-medium)}.guide__skip{color:var(--text-muted)}.guide__skip:active{background-color:var(--surface-sunken);color:var(--text)}.guide__next{background-color:var(--brand);color:var(--on-brand);font-weight:var(--fw-semibold);margin-inline-start:auto}.guide__next:active{opacity:.86}.demo{justify-content:center;align-items:center;gap:var(--sp-3);min-block-size:7.5rem;padding:var(--sp-3);border-radius:var(--radius-2);background-color:var(--surface-sunken);margin-block-start:var(--sp-3);display:flex}.demo__typed{gap:var(--sp-1);display:flex}.demo__key{border-radius:var(--radius-1);background-color:var(--surface);block-size:1.75rem;inline-size:1.75rem;color:var(--text);font-size:var(--fs-200);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;place-items:center;display:grid}.demo__key[data-off]{visibility:hidden}.demo__arrow{color:var(--text-muted);font-size:var(--fs-300)}.demo__amount{font-size:var(--fs-500);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;color:var(--text);align-items:baseline;display:flex}.demo__cell{display:block;overflow:hidden}.demo__cell[data-kind=digit]{text-align:center;inline-size:1ch}@keyframes guide-digit{0%{opacity:0;transform:translate(60%)}to{opacity:1;transform:none}}.demo__glyph{animation:guide-digit var(--dur-2) var(--ease-out) both;display:block}.demo--still{align-items:stretch;gap:var(--sp-2);flex-direction:column}.demo__line{align-items:center;gap:var(--sp-3);display:flex}.demo--still .demo__typed{justify-content:flex-end;min-inline-size:6rem}.demo--still .demo__amount{font-size:var(--fs-400)}.demo--save{gap:var(--sp-2);flex-direction:column}.mock__cats{gap:var(--sp-2);grid-template-columns:repeat(4,1fr);inline-size:100%;display:grid}.mock__cat{justify-content:center;align-items:center;gap:var(--sp-1);min-block-size:3rem;padding:var(--sp-1);border-radius:var(--radius-2);background-color:var(--surface);flex-direction:column;display:flex;overflow:hidden}.mock__cat[data-on]{background-color:color-mix(in srgb, var(--cat) 22%, var(--surface));box-shadow:inset 0 0 0 2px var(--brand)}.mock__emoji{border-radius:var(--radius-full);background-color:var(--cat);place-items:center;block-size:1.5rem;inline-size:1.5rem;font-size:.875rem;line-height:1;display:grid}.mock__name{white-space:nowrap;text-overflow:ellipsis;max-inline-size:100%;font-size:var(--fs-100);line-height:var(--lh-snug);letter-spacing:-.01em;color:var(--text);overflow:hidden}.mock__toast{align-items:center;gap:var(--sp-3);max-inline-size:100%;padding-block:var(--sp-1);padding-inline:var(--sp-3) var(--sp-2);border:1px solid var(--line);border-radius:var(--radius-3);background-color:var(--surface);color:var(--text);font-size:var(--fs-200);display:flex}.mock__amount{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mock__undo{padding-inline:var(--sp-2);color:var(--brand);font-weight:var(--fw-semibold);flex:none}@media (max-height:480px) and (orientation:landscape){.guide__card{column-gap:var(--sp-4);grid-template:"demo step""demo title""demo text""demo acts"1fr/1fr 1fr;max-inline-size:44rem;display:grid}.guide__step{grid-area:step}.demo{grid-area:demo;align-self:center;min-block-size:0;margin-block-start:0}.guide__title{grid-area:title;margin-block-start:var(--sp-2)}.guide__text{min-block-size:calc(2em * var(--lh-body));grid-area:text}.guide__acts{grid-area:acts;align-self:end;margin-block-start:var(--sp-2)}}@media (max-width:359px){.guide__card{padding:var(--sp-3)}.mock__name{font-size:var(--fs-cat-narrow);letter-spacing:var(--tracking-cat-narrow)}.guide__skip,.guide__next{min-inline-size:var(--tap-min);padding-inline:var(--sp-3)}}.demo--chart{grid-template-columns:minmax(0,1fr);place-items:center stretch;block-size:148px;display:grid;position:relative}.mock__pie{justify-self:center;display:block}.mock__rows{justify-self:stretch;gap:var(--sp-2);inline-size:100%;padding-inline:var(--sp-3);flex-direction:column;display:flex}.mock__row{column-gap:var(--sp-2);grid-template-columns:fit-content(34%) minmax(0,1fr) max-content;align-items:center;display:grid}.mock__cat-name{overflow-wrap:anywhere;color:var(--text);font-size:var(--fs-100);line-height:var(--lh-snug)}.mock__track{background-color:var(--surface-sunken);border-radius:2px;flex:1;block-size:14px;position:relative;overflow:hidden}.mock__rows .mock__amount{text-align:end;color:var(--text-muted);font-size:var(--fs-100);font-variant-numeric:tabular-nums}.mock__tap{border-radius:var(--radius-full);background-color:color-mix(in srgb, var(--text) 22%, transparent);pointer-events:none;opacity:0;block-size:30px;inline-size:30px;position:absolute}@media (prefers-reduced-motion:no-preference){.mock__tap[data-on]{animation:mock-tap var(--dur-3,.22s) var(--ease-out) both}}@keyframes mock-tap{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.4)}}.stats{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;gap:var(--sp-6);min-block-size:0;flex-direction:column;flex:1;padding-block-end:var(--sp-3);display:flex;overflow-y:auto}.stats>*{flex:none}.stats__empty{gap:var(--sp-1);flex-direction:column;grid-column:1/-1;display:flex}.stats__emptyText{color:var(--text);font-size:var(--fs-300);line-height:var(--lh-snug)}.stats__emptyPrev{color:var(--text-muted);font-size:var(--fs-200);line-height:var(--lh-snug);font-variant-numeric:tabular-nums}.stats__hero{color:var(--text);font-size:var(--fs-600);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;grid-column:1/-1}.stats__section{--plot-min:7rem;--name-max:8.5rem;--bar-h:1.5rem;--pie-size:7.5rem;gap:var(--sp-2);display:grid}.stats__rows:not([data-chart]){grid-template-columns:minmax(0,1fr) max-content}.stats__head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);grid-column:1/-1;display:flex}.stats__title{color:var(--text-muted);font-size:var(--fs-100);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;grid-column:1/-1}.stats__head>.stats__title{grid-column:auto;min-inline-size:0}.stats__head>.stats__partTitle{flex:none}.stats__titleRange{text-transform:none;letter-spacing:normal}.stats__rows+.stats__partHead,.stats__viz+.stats__partHead{border-block-start:1px solid var(--line);margin-block-start:var(--sp-2);padding-block-start:var(--sp-3)}.stats__partHead{align-items:center;gap:var(--sp-3);grid-column:1/-1;display:flex}@media (max-width:359px){.stats__partHead{align-items:flex-start;row-gap:var(--sp-1);flex-wrap:wrap}.stats__partHead[data-vista]>.stats__partTitle{flex:1 0 100%}}.stats__partHead[data-vista]{min-block-size:var(--tap-min)}.stats__partTitle{column-gap:var(--sp-2);min-inline-size:0;color:var(--text);font-size:var(--fs-200);font-weight:var(--fw-semibold);flex:auto;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;display:grid}.stats__partHead[data-kind] .stats__partName:before{content:"";block-size:.5rem;inline-size:.5rem;background-color:var(--seg);vertical-align:baseline;border-radius:2px;margin-inline-end:var(--sp-2);display:inline-block}.stats__partHead[data-kind=fixed],.stats__seg[data-kind=fixed]{--seg:var(--ink-fixed)}.stats__partHead[data-kind=variable],.stats__seg[data-kind=variable]{--seg:var(--brand)}.stats__partName{-webkit-line-clamp:2;line-clamp:2;min-inline-size:0;line-height:var(--lh-snug);overflow-wrap:anywhere;-webkit-box-orient:vertical;grid-area:1/1/2/2;display:-webkit-box;overflow:hidden}.stats__partScale{color:var(--text-muted);font-size:var(--fs-100);font-weight:var(--fw-regular);line-height:var(--lh-snug);font-variant-numeric:tabular-nums;grid-area:2/1/3/3}.stats__viz{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);cursor:pointer;touch-action:manipulation;grid-column:1/-1}.stats__donut{inline-size:var(--pie-size);block-size:var(--pie-size);margin-inline:auto;position:relative}.stats__pie{block-size:100%;inline-size:100%;display:block}.stats__donutTotal{color:var(--text);font-size:var(--fs-200);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;pointer-events:none;justify-content:center;align-items:center;margin:0;display:flex;position:absolute;inset:0}.stats__legend{column-gap:var(--sp-2);grid-template-columns:auto minmax(0,1fr) max-content;margin-block-start:var(--sp-2);display:grid}.legend{grid-template-columns:subgrid;grid-column:1/-1;align-items:center;min-block-size:1.5rem;display:grid}.legend__dot{border:1px solid var(--line-strong);border-radius:2px;block-size:.625rem;inline-size:.625rem}.legend__name{-webkit-line-clamp:2;line-clamp:2;color:var(--text);font-size:var(--fs-200);line-height:var(--lh-snug);overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.legend__value{color:var(--text);font-size:var(--fs-200);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;text-align:end}@media (prefers-reduced-motion:no-preference){.stats__viz[data-mossa],.stats__rows[data-mossa]{animation:.12s ease-out both stats-swap}}@keyframes stats-swap{0%{opacity:0}}.stats__rows[data-vista]{cursor:pointer;touch-action:manipulation}.stats__partTotal{font-variant-numeric:tabular-nums;grid-area:1/2/2/3}.stats__split{gap:var(--seam);block-size:var(--bar-h);grid-column:1/-1;display:flex;overflow:hidden}.stats__seg{border-radius:var(--radius-1);background-color:var(--seg);flex:0 auto}.stats__rows{grid-column:1/-1;grid-template-columns:fit-content(var(--name-max)) minmax(var(--plot-min), 1fr) max-content;column-gap:var(--sp-2);row-gap:0;display:grid}.stat{grid-column:1/-1;grid-template-columns:subgrid;align-items:center;min-block-size:2.5rem;display:grid}.stat__label{min-inline-size:0}.stat__name{-webkit-line-clamp:2;line-clamp:2;color:var(--text);font-size:var(--fs-200);line-height:var(--lh-snug);overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.stat__note{color:var(--text-muted);font-size:var(--fs-100);line-height:var(--lh-snug);font-variant-numeric:tabular-nums;display:block}.stat__value{color:var(--text);font-size:var(--fs-200);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;grid-column:-2}.stat__plot{block-size:var(--bar-h);min-inline-size:0;display:block;position:relative}.stat__track{border-radius:var(--radius-1);background-color:var(--surface-sunken);position:absolute;inset-block:0;inset-inline-start:0}.stat__bar{border:1px solid var(--line-strong);border-radius:2px;position:absolute;inset-block:0;inset-inline-start:0}.stat__bar[data-zero]{border:none}.stat__bar[data-open]{--open-fade:min(.5rem, 50%);-webkit-mask-image:linear-gradient(to right, #000 calc(100% - var(--open-fade)), transparent 100%);-webkit-mask-image:linear-gradient(to right, #000 calc(100% - var(--open-fade)), transparent 100%);mask-image:linear-gradient(to right, #000 calc(100% - var(--open-fade)), transparent 100%);border-inline-end:none}.stat__accrued{--accrued-w:4px;--accrued-out:2px;inset-block:calc(-1 * var(--accrued-out));inline-size:var(--accrued-w);background-image:linear-gradient(to right, var(--bg) 0 1px, var(--text-muted) 1px 3px, var(--bg) 3px 4px);margin-inline-start:calc(-1 * var(--accrued-w) / 2);position:absolute}@media (prefers-reduced-motion:no-preference){.stat__bar{transition:inline-size var(--dur-2) var(--ease-out)}}.pnav{justify-content:space-between;align-items:center;gap:var(--sp-2);grid-column:1/-1;display:flex}.pnav__arrow{min-inline-size:var(--tap-min);min-block-size:var(--tap-min);border-radius:var(--radius-2);color:var(--text);flex:none;place-items:center;display:grid}.pnav__arrow svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pnav__arrow:active{background-color:var(--surface-sunken)}.pnav__arrow:disabled{color:var(--text-muted);opacity:.4}.pnav__label{text-align:center;min-inline-size:0;color:var(--text-muted);font-size:var(--fs-200);font-weight:var(--fw-semibold);line-height:var(--lh-snug);flex:1}.pnav__label[data-corrente]{color:var(--text)}.stats__stack{gap:var(--sp-3);flex-direction:column;grid-column:1/-1;display:flex}.stats__stackBar{gap:var(--seam);block-size:var(--bar-h);border-radius:2px;display:flex;overflow:hidden}.stats__stackSeg{flex-grow:0;flex-shrink:1;min-inline-size:2px}.blank{justify-content:center;gap:var(--sp-3);min-block-size:var(--blank-min,60dvh);padding-block:var(--sp-6);flex-direction:column;flex:1;display:flex}.blank__title{font-size:var(--fs-500);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight)}.blank__text{max-inline-size:30ch;font-size:var(--fs-300);line-height:var(--lh-body);color:var(--text-muted)}.row{align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:var(--tap-min);padding-block:var(--sp-1);padding-inline:var(--sp-2);margin-inline:calc(var(--sp-2) * -1);border-radius:var(--radius-1);border-block-end:1px solid var(--line);text-align:start;display:flex;position:relative}li:last-child .row{border-block-end:none}.row:active{background-color:var(--brand-soft)}.row__go{fill:none;stroke:var(--text-muted);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.row__emoji{text-align:center;inline-size:1.75rem;font-size:var(--fs-400);flex:none;line-height:1}.row__text{flex-direction:column;flex:1;min-inline-size:0;display:flex}.row__name{font-size:var(--fs-300);line-height:var(--lh-snug)}.row__note{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.row__fixed{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.row__amount{font-variant-numeric:tabular-nums;font-size:var(--fs-300);flex:none}.list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-block-size:0;flex:1;padding-block-end:var(--sp-3);overflow-y:auto}.day__head{z-index:1;justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding-block:var(--sp-3) var(--sp-1);background-color:var(--bg);font-size:var(--fs-200);display:flex;position:sticky;inset-block-start:0}.day__name{font-weight:var(--fw-semibold)}.day__total{font-variant-numeric:tabular-nums;color:var(--text-muted)}.list__end{block-size:1px}.restore{z-index:var(--z-panel);gap:var(--sp-3);padding-block:max(var(--sp-3), var(--safe-top)) max(var(--sp-4), var(--safe-bottom));padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right));background-color:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.restore__head{align-items:center;gap:var(--sp-2);min-block-size:var(--tap-min);flex:none;display:flex}.restore__title{min-inline-size:0;font-size:var(--fs-400);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);flex:1}.restore__close{inline-size:var(--tap-min);block-size:var(--tap-min);border-radius:var(--radius-full);flex:none;place-items:center;display:grid}.restore__close svg{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-linecap:round}.restore__body{overscroll-behavior:contain;gap:var(--sp-3);flex-direction:column;flex:1;min-block-size:0;display:flex;overflow-y:auto}.restore__lead{font-size:var(--fs-300);line-height:var(--lh-body);color:var(--text);overflow-wrap:anywhere}.restore__note{font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted)}.restore__table{border-collapse:collapse;inline-size:100%;font-size:var(--fs-200)}.restore__table th,.restore__table td{padding-block:var(--sp-2);text-align:end;color:var(--text)}.restore__table thead th{color:var(--text-muted);font-weight:var(--fw-regular)}.restore__table tbody th{text-align:start;font-weight:var(--fw-regular);color:var(--text-muted)}.restore__table tbody td{font-family:var(--font-numeric);font-variant-numeric:tabular-nums}.restore__table tbody tr+tr th,.restore__table tbody tr+tr td{border-block-start:1px solid var(--line)}.restore__foot{min-block-size:var(--tap-min);flex:none;display:flex}.restore__action{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-4);border-radius:var(--radius-2);background-color:var(--brand);color:var(--on-brand);font-size:var(--fs-300);font-weight:var(--fw-semibold);flex:1}.restore__action:active{opacity:.9}.home{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-block-size:0;--line-allowance:calc(var(--fs-300) * var(--lh-snug));--line-note:calc(var(--fs-100) * var(--lh-snug));--line-pace:calc(var(--fs-200) * var(--lh-body));--line-amount:calc(var(--fs-200) * var(--lh-snug));--rows-allowance:2;--rows-since:2;--rows-pace:1;--rows-amount:4;--rows-invite:2;--body-min:max(calc(3 * var(--line-amount) + var(--rows-allowance) * var(--line-allowance) + var(--rows-since) * var(--line-note) + 4 * var(--sp-1)), calc(var(--rows-amount) * var(--line-amount) + 3 * var(--sp-1)),  calc(var(--rows-pace) * var(--line-pace) + var(--sp-2) + var(--rows-invite) * var(--line-pace)));--blank-min:0;flex:1;padding-block-end:var(--sp-3);overflow-y:auto}.hero{padding-block-start:var(--sp-3)}.hero__period{min-block-size:calc(1em * var(--lh-snug));font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hero__label{min-block-size:calc(1em * var(--lh-snug));font-size:var(--fs-200);line-height:var(--lh-snug);color:var(--text-muted)}.hero__value{min-block-size:calc(1em * var(--lh-tight));font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.hero__value[data-tone=over]{color:var(--over)}.hero__note,.slot__fixed{min-block-size:calc(1em * var(--lh-snug));font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.slot__foot{gap:var(--sp-2);flex-direction:column;justify-content:flex-end;padding-block-start:var(--sp-3);display:flex}.allowance{font-size:var(--fs-300);font-weight:var(--fw-semibold);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.allowance[data-tone=over]{color:var(--over)}.since{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);max-inline-size:42ch}.pace,.invite{font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted);max-inline-size:42ch}.pace__n,.invite b{color:var(--text);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.budget{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-2);color:var(--text);font-size:var(--fs-200);font-weight:var(--fw-medium);align-self:flex-start;margin-inline-start:calc(var(--sp-3) * -1)}.budget:active{background-color:var(--brand-soft)}.budget:disabled{opacity:.4}.days{border-block-start:1px solid var(--line)}.week{--strip-h:5rem;--day-h:calc(var(--fs-100) * var(--lh-snug));--peak-gap:4px;padding-block:var(--sp-3) var(--sp-4);border-block-end:1px solid var(--line);display:block}.week__head{justify-content:space-between;align-items:baseline;gap:var(--sp-1) var(--sp-3);flex-wrap:wrap;display:flex}.week__title{white-space:nowrap;color:var(--text-muted);font-size:var(--fs-100);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.week__legend{color:var(--text-muted);font-size:var(--fs-100);line-height:var(--lh-snug);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.week__legend:before{content:"";block-size:2px;inline-size:.75rem;vertical-align:middle;background-color:var(--text-muted);margin-inline-end:var(--sp-1);display:inline-block}.week__cols{gap:var(--sp-2);margin-block-start:calc(var(--sp-3) + var(--day-h) + var(--peak-gap));display:flex;position:relative}.week__col{gap:var(--sp-1);flex-direction:column;flex:1 1 0;min-inline-size:0;display:flex}.week__cell{block-size:var(--strip-h);display:block;position:relative}.week__cell[data-past]:after{content:"";background-color:var(--line-strong);block-size:1px;position:absolute;inset-block-end:0;inset-inline:0}.week__ink{block-size:calc(var(--h) * var(--strip-h));background-color:var(--brand);border-radius:2px 2px 0 0;position:absolute;inset-block-end:0;inset-inline:0}.week__ink[data-open]{--open-fade:min(.5rem, 50%);-webkit-mask-image:linear-gradient(to top, #000 calc(100% - var(--open-fade)), transparent 100%);-webkit-mask-image:linear-gradient(to top, #000 calc(100% - var(--open-fade)), transparent 100%);mask-image:linear-gradient(to top, #000 calc(100% - var(--open-fade)), transparent 100%)}.week__peak{color:var(--text);font-size:var(--fs-100);line-height:var(--lh-snug);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap;position:absolute;inset-block-end:calc(var(--h) * var(--strip-h) + var(--peak-gap));inset-inline-start:50%;transform:translate(-50%)}.week__peak[data-edge=start]{inset-inline-start:0;transform:none}.week__peak[data-edge=end]{inset-inline:auto 0;transform:none}.week__day{min-block-size:var(--day-h);color:var(--text-muted);font-size:var(--fs-100);line-height:var(--lh-snug);text-align:center;white-space:nowrap}.week__day[data-current]{color:var(--text);font-weight:var(--fw-semibold)}.week__line{background-image:repeating-linear-gradient(to right, var(--reference) 0 3px, transparent 3px 6px);block-size:1px;position:absolute;inset-block-end:calc(var(--day-h) + var(--sp-1) + var(--at) * var(--strip-h));inset-inline:0}.today__head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding-block:var(--sp-3) var(--sp-1);font-size:var(--fs-200);display:flex}.days>.today__head:first-child{border-block-start:1px solid var(--line)}.today__name{font-weight:var(--fw-semibold)}.today__total{font-variant-numeric:tabular-nums;color:var(--text-muted)}@media (max-width:359px){.home{--rows-allowance:3;--rows-pace:2}}.days .blank__title{font-size:var(--fs-300);font-weight:var(--fw-semibold);letter-spacing:normal}.days .blank{padding-block:var(--sp-3) var(--sp-5)}@media (max-height:480px) and (orientation:landscape){.home{--fs-hero:2.5rem}}.rates{align-items:baseline;row-gap:var(--sp-1);column-gap:var(--sp-3);min-block-size:var(--body-min);grid-template-columns:minmax(0,1fr) max-content;display:grid}.rates__row{display:contents}.rates>.invite,.rates>.pace,.rates>.allowance,.rates>.since{grid-column:1/-1}.rates__label{color:var(--text);font-size:var(--fs-200);line-height:var(--lh-snug)}.rates__value{text-align:end;color:var(--text);font-size:var(--fs-200);line-height:var(--lh-snug);font-variant-numeric:tabular-nums}.rates__row--soft .rates__label,.rates__row--soft .rates__value{color:var(--text-muted)}.rates__row[data-tone=over] .rates__label,.rates__row[data-tone=over] .rates__value{color:var(--over)}.blank__prev{color:var(--text-muted);font-size:var(--fs-200);line-height:var(--lh-snug);font-variant-numeric:tabular-nums;margin-block-start:var(--sp-2)}.mark__bg{fill:var(--brand)}.mark__fg{fill:none;stroke:var(--on-brand);stroke-width:6.4px;stroke-linecap:round}.prefs__text--rate{border-inline-start:2px solid var(--line-strong);margin-block-start:var(--sp-2);padding-inline-start:var(--sp-3)}.fixed{border:1px solid var(--line);border-radius:var(--radius-2);margin-block-start:var(--sp-3);list-style:none;overflow:hidden}.fixed__row{align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:var(--tap-min);padding:var(--sp-2) var(--sp-3);text-align:start;color:var(--text);display:flex}.fixed li+li .fixed__row{border-block-start:1px solid var(--line)}.fixed__row:active{background-color:var(--surface-sunken)}.fixed__row svg{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.fixed__text{flex-direction:column;flex:1;min-inline-size:0;display:flex}.fixed__name{white-space:nowrap;text-overflow:ellipsis;font-size:var(--fs-300);line-height:var(--lh-snug);overflow:hidden}.fixed__note{overflow-wrap:anywhere;font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);font-variant-numeric:tabular-nums;overflow:hidden}.fixed__amount{font-size:var(--fs-300);font-variant-numeric:tabular-nums;flex:none}.prefs{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-block-size:0;padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right));flex:1;padding-block-end:var(--sp-3);overflow-y:auto}.prefs__group{padding-block:var(--sp-4);border-block-end:1px solid var(--line)}.prefs__group:last-child{border-block-end:none}.prefs__title{font-size:var(--fs-400);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight)}.prefs__text{min-block-size:calc(2em * var(--lh-body));font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted);margin-block-start:var(--sp-2)}.prefs__action{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-4);border:1px solid var(--line-strong);border-radius:var(--radius-2);color:var(--text);font-size:var(--fs-300);font-weight:var(--fw-medium);margin-block-start:var(--sp-3)}.prefs__action:active{background-color:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.prefs__action:disabled{opacity:.45}.picks{border:1px solid var(--line);border-radius:var(--radius-2);margin-block-start:var(--sp-3);overflow:hidden}.pick{align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:var(--tap-min);padding:var(--sp-3) var(--sp-4);text-align:start;color:var(--text);display:flex}.pick+.pick{border-block-start:1px solid var(--line)}.pick__text{flex:1;min-inline-size:0}.pick__label{font-size:var(--fs-300);font-weight:var(--fw-medium);line-height:var(--lh-snug);display:block}.pick__note{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted);margin-block-start:var(--sp-1);display:block}.pick__mark{visibility:hidden;fill:none;stroke:var(--brand);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;flex:none}.pick[aria-checked=true]{background-color:var(--brand-soft);font-weight:var(--fw-semibold)}.pick[aria-checked=true] .pick__mark{visibility:visible}.pick:active{background-color:var(--surface-sunken)}.pick:disabled{opacity:.45}.prefs__build{text-align:center;color:var(--text-muted);font-size:var(--fs-100);line-height:var(--lh-snug);font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text;margin-block-start:var(--sp-6)}.toast{padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right));flex:none;justify-content:center;padding-block-start:var(--sp-2);display:flex}.toast:empty{display:none}.toast__box{align-items:center;gap:var(--sp-3);inline-size:100%;max-inline-size:var(--app-max);min-block-size:var(--tap-min);padding-block:var(--sp-1);padding-inline:var(--sp-4) var(--sp-2);border-radius:var(--radius-3);background-color:var(--surface);box-shadow:var(--shadow-1);border:1px solid var(--line);animation:toast-in var(--dur-1) var(--ease-out) both;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translate(0,0)}}.toast__text{min-inline-size:0;font-size:var(--fs-200);line-height:var(--lh-snug);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.toast__action{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-2);color:var(--brand);font-size:var(--fs-200);font-weight:var(--fw-semibold);flex:none}.toast__action:active{background-color:var(--brand-soft)}.updater{background-color:var(--surface);border-block-start:1px solid var(--line);padding-block:var(--sp-2);animation:updater-in var(--dur-1) var(--ease-out) both;flex:none;padding-inline-start:max(var(--sp-3), var(--safe-left));padding-inline-end:max(var(--sp-3), var(--safe-right))}.updater:empty{display:none}@keyframes updater-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0,0)}}.updater__inner{align-items:center;gap:var(--sp-1);max-width:var(--app-max);margin-inline:auto;display:flex}.updater__action{align-items:center;gap:var(--sp-3);min-height:var(--tap-min);padding-inline:var(--sp-2);border-radius:var(--radius-2);text-align:start;flex:1;display:flex}.updater__action:active,.updater__dismiss:active{background-color:var(--surface-sunken)}.updater__icon{fill:none;stroke:var(--brand);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.updater__text{flex-direction:column;min-width:0;display:flex}.updater__title{font-size:var(--fs-200);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--text)}.updater__hint{font-size:var(--fs-100);line-height:var(--lh-snug);color:var(--text-muted)}.updater__dismiss{inline-size:var(--tap-min);block-size:var(--tap-min);border-radius:var(--radius-full);flex:none;place-items:center;display:grid}.updater__dismiss svg{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-linecap:round}.app{block-size:100dvh;max-inline-size:var(--app-max);flex-direction:column;margin-inline:auto;padding-block-start:max(var(--sp-2), var(--safe-top));padding-block-end:var(--fab-lane);display:flex}.app__bar,.alert,.list,.home,.stats{padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right))}.app__bar{align-items:center;gap:var(--sp-2);min-block-size:var(--tap-min);display:flex}.nav{gap:var(--sp-1);margin-inline-start:auto;margin-inline-end:calc(var(--sp-3) * -1);display:flex}.nav__tab{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-2);color:var(--text-muted);font-size:var(--fs-200);font-weight:var(--fw-semibold)}.nav__tab[aria-current=page]{background-color:var(--surface-sunken);color:var(--text)}.nav__tab:active{background-color:var(--brand-soft);color:var(--brand)}.app__bar .mark{flex:none}@media (max-width:469px){.app__bar .mark{display:none}}@media (max-width:439px){.app__label{display:none}}@media (max-width:359px){.nav__tab{padding-inline:var(--sp-2)}}.app__action{align-items:center;gap:var(--sp-2);min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-2);color:var(--brand);font-size:var(--fs-200);font-weight:var(--fw-semibold);display:flex}.app__action svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.app__action:active{background-color:var(--brand-soft)}.app__action[aria-current=page]{background-color:var(--surface-sunken);color:var(--text)}.app__action:disabled{opacity:.4}.alert{align-items:center;gap:var(--sp-3);padding-block:var(--sp-2);color:var(--danger);display:flex}.alert--env{color:var(--text-muted);border-block-end:1px solid var(--line)}.alert__text{font-size:var(--fs-100);line-height:var(--lh-snug);flex:1}.alert__action{min-block-size:var(--tap-min);min-inline-size:var(--tap-min);padding-inline:var(--sp-3);border-radius:var(--radius-2);color:var(--danger);font-size:var(--fs-200);font-weight:var(--fw-semibold);border:1px solid;flex:none}.app__main{flex-direction:column;flex:1;min-block-size:0;display:flex}.fab{z-index:var(--z-fab);inline-size:var(--fab-size);block-size:var(--fab-size);border-radius:var(--radius-full);background-color:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-1);transition:transform var(--dur-1) var(--ease-out);place-items:center;display:grid;position:fixed;inset-block-end:max(var(--sp-4), var(--safe-bottom));inset-inline-end:max(var(--sp-4), var(--safe-right), calc(50% - var(--app-max) / 2 + var(--sp-4)))}.fab svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round}.fab:active{transform:scale(.93)}.fab:disabled{opacity:.5}.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;padding:0;position:absolute;overflow:hidden}.install{max-inline-size:var(--app-max);gap:var(--sp-5);padding-block:max(var(--sp-6), var(--safe-top)) max(var(--sp-6), var(--safe-bottom));padding-inline:max(var(--sp-4), var(--safe-left)) max(var(--sp-4), var(--safe-right));flex-direction:column;margin-inline:auto;display:flex}.install__brand{align-items:center;gap:var(--sp-3);display:flex}.install__name{font-size:var(--fs-400);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight)}.install__title{font-size:var(--fs-500);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight)}.install__lead{color:var(--text-muted);line-height:var(--lh-body)}.why{border-radius:var(--radius-3);border:1px solid var(--line);border-inline-start:3px solid var(--brand);background-color:var(--surface);padding:var(--sp-4);gap:var(--sp-2);flex-direction:column;display:flex}.why__title{font-size:var(--fs-300);font-weight:var(--fw-semibold);line-height:var(--lh-snug);text-wrap:pretty}.why__text{font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted)}.how{gap:var(--sp-4);flex-direction:column;display:flex}.how__title{font-size:var(--fs-400);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight)}.steps{gap:var(--sp-4);flex-direction:column;display:flex}.step{align-items:flex-start;gap:var(--sp-3);display:flex}.step__n{border-radius:var(--radius-full);background-color:var(--brand-soft);block-size:1.75rem;inline-size:1.75rem;color:var(--brand);font-size:var(--fs-200);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;flex:none;place-items:center;display:grid}.step__text{line-height:var(--lh-body)}.step__text b{font-weight:var(--fw-semibold)}.install__other{font-size:var(--fs-200);line-height:var(--lh-body);color:var(--text-muted);border-block-start:1px solid var(--line);padding-block-start:var(--sp-4)}.install__other b{font-weight:var(--fw-semibold);color:var(--text)}:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, "Helvetica Neue", sans-serif;--font-numeric:"SF Mono", ui-monospace, "Menlo", monospace;--fs-100:.8125rem;--fs-200:.9375rem;--fs-300:1.0625rem;--fs-400:1.25rem;--fs-500:1.75rem;--fs-600:2.5rem;--fs-display:clamp(2.75rem, 14vw, 4rem);--fs-hero:min(3.5rem, 11.5vw);--lh-tight:1.08;--lh-snug:1.25;--lh-body:1.5;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--tracking-tight:-.022em;--tracking-wide:.06em;--fs-cat-narrow:.6875rem;--tracking-cat-narrow:-.02em;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--seam:2px;--radius-1:.5rem;--radius-2:.75rem;--radius-3:1.25rem;--radius-full:999px;--dur-1:.15s;--dur-2:.2s;--dur-3:.25s;--ease-out:cubic-bezier(.22, .61, .36, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--tap-min:44px;--app-max:32rem;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--z-fab:20;--z-scrim:30;--z-sheet:31;--z-panel:50;--key-min:3.25rem;--chip-min:3.25rem;--fab-size:3.5rem;--fab-lane:calc(max(var(--sp-4), var(--safe-bottom)) + var(--fab-size) + var(--sp-3));--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f6f3;--surface:#fff;--surface-sunken:#eeeeea;--text:#12181f;--text-muted:#5c6670;--line:#e3e3de;--line-strong:#848c86;--reference:#848c86;--ink-fixed:#848c86;--brand:#0d6b4f;--brand-soft:#e3f0ea;--on-brand:#fff;--danger:#b3261e;--over:#8a5a00;--focus:#0d6b4f;--scrim:#12181f6b;--shadow-1:0 1px 2px #12181f14, 0 4px 12px #12181f0f;--shadow-2:0 -1px 3px #12181f0f, 0 -8px 28px #12181f24}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101413;--surface:#191e1c;--surface-sunken:#0a0d0c;--text:#eef1ef;--text-muted:#9aa5a0;--line:#262c2a;--line-strong:#606965;--reference:#606965;--ink-fixed:#606965;--brand:#35c795;--brand-soft:#12332a;--on-brand:#06221a;--danger:#ff8a80;--over:#e3b063;--focus:#35c795;--scrim:#0000009e;--shadow-1:0 1px 2px #00000080, 0 4px 12px #00000059;--shadow-2:0 -1px 3px #00000080, 0 -8px 28px #0000008c}}@media (prefers-reduced-motion:reduce){:root{--dur-1:.01ms;--dur-2:.01ms;--dur-3:.01ms}}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none;height:100%}body{overscroll-behavior:none;background-color:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-sans);font-size:var(--fs-300);line-height:var(--lh-body);font-weight:var(--fw-regular);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text}img,svg,picture,canvas{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit;appearance:none;background:0 0;border:none;border-radius:0}button,[role=button]{cursor:pointer;touch-action:manipulation}input,select,textarea{font-size:max(16px, var(--fs-300))}h1,h2,h3,h4{font-size:inherit;font-weight:inherit;line-height:var(--lh-snug);text-wrap:balance}p{text-wrap:pretty}ul,ol{list-style:none}a{color:inherit;text-decoration:none}:focus{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-1)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:.01ms!important}}.filepick{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:fixed;inset-block-start:0;inset-inline-start:0}
/*$vite$:1*/