:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-bg:var(--lightningcss-light,#f5f5f7)var(--lightningcss-dark,#000);--color-surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1c1c1e);--color-surface-raised:var(--lightningcss-light,#fff)var(--lightningcss-dark,#2c2c2e);--color-fill:var(--lightningcss-light,#e8e8ed)var(--lightningcss-dark,#2c2c2e);--color-fill-hover:var(--lightningcss-light,#dcdce1)var(--lightningcss-dark,#3a3a3c);--color-fill-elevated:var(--lightningcss-light,#e8e8ed)var(--lightningcss-dark,#3a3a3c);--color-fill-elevated-hover:var(--lightningcss-light,#dcdce1)var(--lightningcss-dark,#48484a);--color-segment-thumb:var(--lightningcss-light,#fff)var(--lightningcss-dark,#636366);--color-switch-knob:#fff;--color-separator:var(--lightningcss-light,#d2d2d7)var(--lightningcss-dark,#38383a);--color-control-border:var(--lightningcss-light,#86868b)var(--lightningcss-dark,#8e8e93);--color-text:var(--lightningcss-light,#1d1d1f)var(--lightningcss-dark,#f5f5f7);--color-text-secondary:var(--lightningcss-light,#6e6e73)var(--lightningcss-dark,#a1a1a6);--color-text-tertiary:var(--lightningcss-light,#8e8e93)var(--lightningcss-dark,#6e6e73);--color-accent:var(--lightningcss-light,#06c)var(--lightningcss-dark,#2997ff);--color-accent-fill:var(--lightningcss-light,#06c)var(--lightningcss-dark,#0071e3);--color-accent-fill-hover:var(--lightningcss-light,#0058b0)var(--lightningcss-dark,#006adb);--color-accent-fill-active:var(--lightningcss-light,#004f9e)var(--lightningcss-dark,#0062c4);--color-accent-tint:var(--lightningcss-light,#e5effa)var(--lightningcss-dark,#12263d);--color-on-accent:#fff;--color-focus:var(--color-accent);--color-focus-ring:var(--lightningcss-light,#0066cc40)var(--lightningcss-dark,#2997ff59);--color-positive:var(--lightningcss-light,#1f7a35)var(--lightningcss-dark,#30d158);--color-negative:var(--lightningcss-light,#d70015)var(--lightningcss-dark,#ff6961);--color-warning:var(--lightningcss-light,#b25000)var(--lightningcss-dark,#ff9f0a);--color-on-negative:#fff;--color-income:var(--color-positive);--color-expense:var(--color-negative);--color-transfer:var(--color-text-secondary);--color-toast-bg:var(--lightningcss-light,#1d1d1f)var(--lightningcss-dark,#f5f5f7);--color-toast-text:var(--lightningcss-light,#f5f5f7)var(--lightningcss-dark,#1d1d1f);--color-toast-action:var(--lightningcss-light,#2997ff)var(--lightningcss-dark,#06c);--color-scrim:var(--lightningcss-light,#00000052)var(--lightningcss-dark,#0009);--material-bar:var(--lightningcss-light,#ffffffb8)var(--lightningcss-dark,#1c1c1eb8);--material-blur:blur(20px) saturate(180%);--font-sans:-apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-display-size:2.5rem;--text-display-weight:600;--text-display-leading:1.1;--text-display-tracking:-.025em;--text-large-title-size:2rem;--text-large-title-weight:700;--text-large-title-leading:1.15;--text-large-title-tracking:-.021em;--text-title-size:1.375rem;--text-title-weight:600;--text-title-leading:1.25;--text-title-tracking:-.015em;--text-headline-size:1.0625rem;--text-headline-weight:600;--text-headline-leading:1.3;--text-headline-tracking:-.01em;--text-body-size:1rem;--text-body-leading:1.5;--text-callout-size:.9375rem;--text-callout-leading:1.45;--text-footnote-size:.8125rem;--text-footnote-leading:1.4;--text-footnote-tracking:.003em;--text-caption-size:.75rem;--text-caption-weight:500;--text-caption-leading:1.35;--text-caption-tracking:.01em;--text-kpi-size:1.5rem;--money-frac-opacity:.6;--money-frac-size:.6em;--text-hero-size:var(--text-display-size);--stale-opacity:.6;--figures-gap:var(--space-2) var(--space-8);--trend-max-height:16rem;--space-0:.125rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--content-max:72rem;--gutter:var(--space-6);--card-padding:var(--space-5);--stack-gap:var(--space-6);--modal-width:34rem;--auth-width:25rem;--field-sm:9.5rem;--field-md:11rem;--field-lg:12rem;--meter-value:0;--meter-height:.375rem;--meter-height-lg:.625rem;--color-meter-track:var(--color-fill);--color-meter-fill:var(--color-text-secondary);--color-meter-warn:var(--color-warning);--color-meter-over:var(--color-negative);--color-meter-income:var(--color-positive);--budget-col-input:7rem;--budget-col-num:6.5rem;--budget-card-min:25rem;--account-row-min-h:3.5rem;--acct-hero-max:30rem;--settings-nav-width:11rem;--settings-content-max:50rem;--field-xs:5.5rem;--anchor-offset:4rem;--anchor-offset-compact:6.5rem;--icon-stroke:1.75;--icon-size-heading:1.25em;--thumb-press-scale:.96;--thumb-x:0px;--thumb-y:0px;--thumb-w:0px;--thumb-h:0px;--select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");--select-chevron-size:1rem;--picker-icon-box:1.75rem;--picker-lead-w:2.5rem;--color-picker-lead:var(--lightningcss-light,#0000000a)var(--lightningcss-dark,#ffffff0d);--picker-enter-scale:.96;--picker-shift:var(--space-1);--picker-enter-y:calc(-1 * var(--picker-shift));--pop-x:0px;--pop-y:0px;--pop-w:0px;--pop-max-h:0px;--color-logo-tile:#fff;--shadow-logo-tile:inset 0 0 0 .5px var(--color-separator);--shadow-switch-knob:0 1px 3px #00000040;--logo-size:1.125rem;--logo-tile-sm:1.375rem;--logo-size-sm:.9375rem;--logo-tile-lg:3rem;--logo-size-lg:1.875rem;--link-underline:color-mix(in srgb, var(--color-accent) 40%, transparent);--color-meter-muted:var(--color-text-tertiary);--radius-xs:.25rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:.875rem;--radius-xl:1.25rem;--radius-pill:999px;--shadow-card:0 1px 2px var(--lightningcss-light,#0000000d)var(--lightningcss-dark,#0000), 0 0 0 .5px var(--lightningcss-light,#0000000a)var(--lightningcss-dark,#ffffff0f);--shadow-popover:0 4px 16px var(--lightningcss-light,#0000001f)var(--lightningcss-dark,#00000080), 0 0 0 .5px var(--lightningcss-light,#00000014)var(--lightningcss-dark,#ffffff1a);--shadow-modal:0 24px 48px var(--lightningcss-light,#0000002e)var(--lightningcss-dark,#0009), 0 0 0 .5px var(--lightningcss-light,#0000000f)var(--lightningcss-dark,#ffffff1a);--shadow-thumb:0 1px 3px #0000001f, 0 0 0 .5px var(--lightningcss-light,#0000000a)var(--lightningcss-dark,#ffffff47);--shadow-bar-edge:0 .5px 0 var(--color-separator);--control-h:2.25rem;--control-h-sm:1.75rem;--press-scale:.97;--press-dim:.55;--disabled-opacity:.4;--motion-instant:.1s;--motion-fast:.16s;--motion-base:.24s;--motion-slow:.36s;--motion-ease:cubic-bezier(.25, .1, .25, 1);--motion-ease-out:cubic-bezier(0, 0, .2, 1);--motion-spring:linear(0, .142, .38, .588, .74, .841, .905, .945, .968, .982, .99, .994, .997, .998, 1);--motion-spring-duration:.44s;--modal-enter-scale:.96;--sheet-enter-y:100%;--toast-enter-y:.5rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (pointer:coarse){:root{--control-h:2.75rem;--control-h-sm:2.25rem}}@media (width<=1024px){:root{--text-hero-size:var(--text-large-title-size)}}@media (width<=640px){:root{--gutter:var(--space-4);--card-padding:var(--space-4);--stack-gap:var(--space-4)}}@media (prefers-reduced-motion:reduce){:root{--press-scale:1;--motion-spring:var(--motion-ease);--motion-spring-duration:.2s;--motion-slow:.2s;--modal-enter-scale:1;--picker-enter-scale:1;--picker-shift:0px;--sheet-enter-y:0;--toast-enter-y:0}}@media (prefers-reduced-transparency:reduce){:root{--material-bar:var(--color-surface);--material-blur:none}}@media (prefers-contrast:more){:root{--color-separator:var(--color-control-border);--color-text-secondary:var(--lightningcss-light,#3a3a3c)var(--lightningcss-dark,#d1d1d6);--shadow-card:0 0 0 1px var(--color-control-border)}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-body-size);line-height:var(--text-body-leading);-webkit-font-smoothing:antialiased;transition:background-color var(--motion-base) var(--motion-ease), color var(--motion-base) var(--motion-ease);margin:0}h1{font-size:var(--text-large-title-size);font-weight:var(--text-large-title-weight);line-height:var(--text-large-title-leading);letter-spacing:var(--text-large-title-tracking);margin:0 0 var(--space-5)}h2{font-size:var(--text-headline-size);font-weight:var(--text-headline-weight);line-height:var(--text-headline-leading);letter-spacing:var(--text-headline-tracking);margin:0 0 var(--space-3)}h3{font-size:var(--text-callout-size);font-weight:var(--text-headline-weight);line-height:var(--text-callout-leading);margin:var(--space-3) 0 var(--space-2)}a{color:var(--color-accent);text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--link-underline);text-decoration-color:var(--link-underline);text-underline-offset:.2em;transition:text-decoration-color var(--motion-fast) var(--motion-ease)}a:hover{text-decoration-color:currentColor}.breadcrumb a{text-decoration-color:#0000}.breadcrumb a:hover{text-decoration-color:currentColor}.link-row{position:relative}@media (hover:hover){.link-row:hover{background:var(--color-fill)}}.link-row:has(.row-link:active){opacity:var(--press-dim)}.link-row:has(.row-link:focus-visible){outline:2px solid var(--color-focus);outline-offset:-2px}.row-link{color:var(--color-text);font-weight:600;text-decoration:none}.row-link:focus-visible{outline:none}.row-link:after{content:"";position:absolute;inset:0}.row-chevron{width:1em;color:var(--color-text-tertiary);text-align:right;padding-left:0}.attention-link{justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 calc(-1 * var(--space-2));padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text);text-decoration:none;display:flex}.attention-link .icon{color:var(--color-text-tertiary)}@media (hover:hover){.attention-link:hover{background:var(--color-fill)}}.attention-link:active{opacity:var(--press-dim)}input,select,textarea,button{font:inherit;font-size:var(--text-callout-size);color:inherit;border-radius:var(--radius-md);min-height:var(--control-h)}input,select,textarea{background-color:var(--color-fill);padding:0 var(--space-3);transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border:1px solid #0000}textarea{padding:var(--space-2) var(--space-3)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}@media (hover:hover){:is(input,select,textarea):not(:focus,:disabled):hover{background-color:var(--color-fill-hover)}}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}select{appearance:none;padding-right:calc(var(--space-3) + var(--select-chevron-size) + var(--space-2));background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:var(--select-chevron-size)}[aria-invalid=true]{border-color:var(--color-negative)}button{cursor:pointer;padding:0 var(--space-4);background:var(--color-fill);transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), transform var(--motion-instant) var(--motion-ease), opacity var(--motion-instant) var(--motion-ease);border:0;font-weight:500}button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}button:active:not(:disabled){transform:scale(var(--press-scale))}button:disabled{opacity:var(--disabled-opacity);cursor:default}.icon{vertical-align:-.125em;width:1em;height:1em;stroke-width:var(--icon-stroke);flex:none}.icon-heading{width:var(--icon-size-heading);height:var(--icon-size-heading);vertical-align:-.2em}.icon.disclosure{color:var(--color-text-tertiary);transition:transform var(--motion-fast) var(--motion-ease)}details[open]>summary>.icon.disclosure{transform:rotate(90deg)}@media (hover:hover){button:hover:not(:disabled){background:var(--color-fill-hover)}}button.primary{background:var(--color-accent-fill);color:var(--color-on-accent);font-weight:600}@media (hover:hover){button.primary:hover:not(:disabled){background:var(--color-accent-fill-hover)}}button.primary:active:not(:disabled){background:var(--color-accent-fill-active)}button.tinted{background:var(--color-accent-tint);color:var(--color-accent)}button.ghost{color:var(--color-accent);background:0 0}@media (hover:hover){button.ghost:hover:not(:disabled){background:var(--color-fill)}}button.ghost:active:not(:disabled),button.danger:active:not(:disabled){opacity:var(--press-dim);transform:none}button.small{min-height:var(--control-h-sm);padding:0 var(--space-3);font-size:var(--text-footnote-size)}.danger,button.danger{color:var(--color-negative)}button.danger{background:0 0}button.danger.filled{background:var(--color-negative);color:var(--color-on-negative)}.muted{color:var(--color-text-secondary)}.small{font-size:var(--text-footnote-size);line-height:var(--text-footnote-leading);letter-spacing:var(--text-footnote-tracking)}.error{color:var(--color-negative)}.hint{color:var(--color-accent);font-size:var(--text-footnote-size)}.notice{background:var(--color-fill);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.loading{padding:var(--space-8);color:var(--color-text-secondary)}.row{gap:var(--space-2);align-items:center;display:flex}.row.wrap{flex-wrap:wrap}.row>span:first-child{flex:1}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--card-padding);margin-bottom:var(--stack-gap)}details.card>summary{cursor:pointer;font-weight:600}details.card[open]>summary{margin-bottom:var(--space-3)}.tag{margin-left:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-fill);color:var(--color-text);font-size:var(--text-caption-size);font-weight:var(--text-caption-weight);letter-spacing:var(--text-caption-tracking)}.topbar{z-index:40;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--gutter);background:var(--material-bar);-webkit-backdrop-filter:var(--material-blur);backdrop-filter:var(--material-blur);box-shadow:var(--shadow-bar-edge);color:var(--color-text);flex-wrap:wrap;display:flex;position:sticky;top:0}.brand{font-size:var(--text-headline-size);font-weight:var(--text-headline-weight);letter-spacing:var(--text-headline-tracking)}.topbar nav{gap:var(--space-1);flex-wrap:wrap;flex:1;display:flex}.topbar nav a{min-height:var(--control-h-sm);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-callout-size);transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.topbar nav a:hover{color:var(--color-text)}.topbar nav a.active{background:var(--color-fill);color:var(--color-text);font-weight:600}.who{gap:var(--space-2);font-size:var(--text-callout-size);align-items:center;display:flex}.who button{color:var(--color-accent)}.segmented.compact{margin-bottom:0}.segmented.compact button{min-height:var(--control-h-sm);min-width:var(--control-h-sm);color:var(--color-text-secondary);justify-content:center;align-items:center;padding:0;display:inline-flex}.segmented.compact button.active{color:var(--color-text)}.content{max-width:var(--content-max);padding:var(--stack-gap) var(--gutter);margin:0 auto}.quick-add{gap:var(--space-2);max-width:calc(var(--content-max) - 2 * var(--gutter));margin:var(--stack-gap) auto 0;padding:var(--space-4) var(--card-padding);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;display:flex;position:relative}.qa-amount{width:var(--field-sm);font-variant-numeric:tabular-nums;font-weight:600}.qa-desc{min-width:var(--field-lg);flex:1;position:relative}.qa-desc input{width:100%}.qa-msg{font-size:var(--text-footnote-size);color:var(--color-positive);flex-basis:100%;margin:0}.qa-msg.error{color:var(--color-negative)}.qa-msg.hint{color:var(--color-accent)}.qa-msg:empty{position:absolute}.label-swap{display:inline-grid}.label-swap>*{grid-area:1/1}.label-swap>.off{visibility:hidden}.suggestions{z-index:10;left:0;right:0;top:calc(100% + var(--space-1));padding:var(--space-1);background:var(--color-surface-raised);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);margin:0;list-style:none;position:absolute}.suggestions [role=option]{justify-content:space-between;gap:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;display:flex}.suggestions [role=option][aria-selected=true]{background:var(--color-fill-hover)}.suggestions small{color:var(--color-text-secondary)}.search-picker{min-width:0;display:inline-flex;position:relative}.search-picker-button{align-items:center;gap:var(--space-2);width:100%;min-width:var(--field-sm);padding:0 var(--space-3);text-align:left;transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border:1px solid #0000;font-weight:400;display:inline-flex;overflow:hidden}.search-picker-button:active:not(:disabled){transform:none}.search-picker-button[aria-expanded=true]{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus-ring)}.search-picker.has-lead .search-picker-button{padding-left:0}.search-picker-lead{width:var(--picker-lead-w);background:var(--color-picker-lead);box-shadow:inset -1px 0 0 var(--color-separator);color:var(--color-text-secondary);flex:none;align-self:stretch;place-items:center;display:grid}.search-picker-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.search-picker-text.placeholder{color:var(--color-text-secondary)}.search-picker-button small,.search-picker-pop small{color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.search-picker-chevron{color:var(--color-text-tertiary);transition:rotate var(--motion-fast) var(--motion-ease)}.search-picker.open .search-picker-chevron{rotate:180deg}.search-picker.open .search-picker-text,.search-picker.open .search-picker-button small{visibility:hidden}.search-picker .search-picker-input,.search-picker .search-picker-input:hover,.search-picker .search-picker-input:focus{z-index:1;width:100%;height:100%;min-height:0;padding:0 calc(2 * var(--space-3) + 1em) 0 calc(var(--space-3) + 1px);box-shadow:none;background-color:#0000;border-color:#0000;position:absolute;inset:0}.search-picker.has-lead .search-picker-input{padding-left:calc(var(--picker-lead-w) + var(--space-2) + 1px)}.search-picker-input::placeholder{color:var(--color-text-secondary)}.search-picker-pop{z-index:20;left:var(--pop-x);top:var(--pop-y);width:var(--pop-w);max-height:var(--pop-max-h);padding:var(--space-1);background:var(--color-surface-raised);--color-fill:var(--color-fill-elevated);--color-fill-hover:var(--color-fill-elevated-hover);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);color:var(--color-text);font-size:var(--text-callout-size);transform-origin:top;transition:opacity var(--motion-base) var(--motion-ease-out), transform var(--motion-base) var(--motion-ease-out);flex-direction:column;display:flex;position:fixed}@starting-style{.search-picker-pop{opacity:0;transform:translateY(var(--picker-enter-y)) scaleY(var(--picker-enter-scale))}}.search-picker-pop.up{transform-origin:bottom;--picker-enter-y:var(--picker-shift);translate:0 -100%}.search-picker-pop.leaving{opacity:0;transform:translateY(var(--picker-enter-y)) scaleY(var(--picker-enter-scale));transition-duration:var(--motion-fast);transition-timing-function:var(--motion-ease);pointer-events:none}.search-picker-pop ul{overscroll-behavior:contain;margin:0;padding:0;list-style:none;overflow-y:auto}.search-picker-group{padding:var(--space-2) var(--space-2) var(--space-1);color:var(--color-text-secondary);font-size:var(--text-caption-size);font-weight:var(--text-caption-weight);letter-spacing:var(--text-caption-tracking)}.search-picker-pop [role=option]{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);min-height:var(--control-h);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--motion-instant) var(--motion-ease);display:flex}.search-picker-name{flex:1;min-width:0}.search-picker-name mark{color:inherit;background:0 0;font-weight:700}.search-picker-icon{width:var(--picker-icon-box);height:var(--picker-icon-box);border-radius:var(--radius-sm);background:var(--color-fill);color:var(--color-text-secondary);flex:none;place-items:center;display:grid}.search-picker-check{color:var(--color-accent);visibility:hidden}.search-picker-pop [aria-selected=true] .search-picker-check{visibility:visible}.search-picker-pop [aria-selected=true] .search-picker-name{font-weight:600}.search-picker-pop [data-active]{background:var(--color-fill-hover)}.search-picker-icon.has-logo{background:var(--color-logo-tile);box-shadow:var(--shadow-logo-tile)}.search-picker-icon img{width:var(--logo-size);height:var(--logo-size)}.search-picker-logo{width:var(--logo-tile-sm);height:var(--logo-tile-sm);border-radius:var(--radius-xs);background:var(--color-logo-tile);box-shadow:var(--shadow-logo-tile);flex:none;place-items:center;display:grid}.search-picker-logo img{width:var(--logo-size-sm);height:var(--logo-size-sm);object-fit:contain}.search-picker-empty{padding:var(--space-2);color:var(--color-text-secondary)}.toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.month-picker{align-items:center;gap:var(--space-2);display:flex;position:relative}.month-picker>button{min-width:var(--control-h);padding:0}.month-picker>.month-picker-button{align-items:center;gap:var(--space-2);padding:0 var(--space-3);display:inline-flex}.month-picker-chevron{color:var(--color-text-secondary);transition:transform var(--motion-fast) var(--motion-ease)}.month-picker-button[aria-expanded=true] .month-picker-chevron{transform:rotate(180deg)}.month-name{font-weight:600}.month-picker-pop{z-index:20;top:calc(100% + var(--space-1));left:calc(var(--control-h) + var(--space-2));width:max-content;padding:var(--space-2);background:var(--color-surface-raised);--color-fill:var(--color-fill-elevated);--color-fill-hover:var(--color-fill-elevated-hover);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);transform-origin:top;transition:opacity var(--motion-base) var(--motion-ease-out), transform var(--motion-base) var(--motion-ease-out);position:absolute}@starting-style{.month-picker-pop{opacity:0;transform:translateY(var(--picker-enter-y)) scaleY(var(--picker-enter-scale))}}.month-picker-year{margin-bottom:var(--space-1);justify-content:space-between;align-items:center;font-weight:600;display:flex}.month-picker-year button{min-width:var(--control-h);padding:0}.month-picker-grid{gap:var(--space-1);grid-template-columns:repeat(4,1fr);display:grid}.month-picker-grid button{min-width:calc(var(--control-h) * 1.5);padding:0 var(--space-2);background:0 0;font-weight:400}.month-picker-grid button[aria-pressed=true]{background:var(--color-accent-fill);color:var(--color-on-accent);font-weight:600}@media (hover:hover){.month-picker-grid button:hover:not([aria-pressed=true]){background:var(--color-fill-hover)}}.date-input{align-items:center;display:grid;position:relative}.date-input>input{width:100%;min-width:calc(var(--field-sm) + var(--space-5));padding-right:calc(var(--space-3) + 1.5em);color:var(--color-text);font-variant-numeric:tabular-nums}.date-input-icon{right:var(--space-3);color:var(--color-text-secondary);pointer-events:none;position:absolute}.date-input-pop{z-index:30;left:var(--pop-x);top:var(--pop-y);width:max-content;padding:var(--space-2);background:var(--color-surface-raised);--color-fill:var(--color-fill-elevated);--color-fill-hover:var(--color-fill-elevated-hover);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);color:var(--color-text);font-size:var(--text-callout-size);transform-origin:top;transition:opacity var(--motion-base) var(--motion-ease-out), transform var(--motion-base) var(--motion-ease-out);position:fixed}@starting-style{.date-input-pop{opacity:0;transform:translateY(var(--picker-enter-y)) scaleY(var(--picker-enter-scale))}}.date-input-pop.up{transform-origin:bottom;--picker-enter-y:var(--picker-shift);translate:0 -100%}.date-input-head{align-items:center;gap:var(--space-1);margin:0 0 var(--space-1) var(--space-2);font-weight:600;display:flex}.date-input-head span{margin-right:auto}.date-input-head button{min-width:var(--control-h);min-height:var(--control-h);background:0 0;padding:0}.date-input-grid{grid-template-columns:repeat(7, var(--control-h));gap:var(--space-0);text-align:center;display:grid}.date-input-weekday{padding:var(--space-1) 0;color:var(--color-text-secondary);font-size:var(--text-caption-size)}.date-input-grid button{width:var(--control-h);min-height:var(--control-h);font-variant-numeric:tabular-nums;background:0 0;border-radius:50%;justify-self:center;padding:0;font-weight:400}.date-input-grid button.other-month{color:var(--color-text-tertiary)}.date-input-grid button[aria-current=date]{box-shadow:inset 0 0 0 1px var(--color-accent)}.date-input-grid button[aria-pressed=true]{background:var(--color-accent-fill);color:var(--color-on-accent);box-shadow:none;font-weight:600}@media (hover:hover){.date-input-grid button:hover:not(:disabled,[aria-pressed=true]){background:var(--color-fill-hover)}}.segmented{gap:var(--space-0);padding:var(--space-0);background:var(--color-fill);border-radius:var(--radius-md);margin-bottom:var(--space-2);display:inline-flex}.segmented button{min-height:calc(var(--control-h) - 2 * var(--space-0));padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);text-transform:capitalize;background:0 0}@media (hover:hover){.segmented button:hover:not(:disabled,.active){background:var(--color-fill-hover)}}.segmented button.active{background:var(--color-segment-thumb);box-shadow:var(--shadow-thumb);font-weight:600}.segmented button[data-label]:after{content:attr(data-label);visibility:hidden;height:0;font-weight:600;display:block;overflow:hidden}.segmented{isolation:isolate;position:relative}.segmented-thumb{z-index:-1;width:var(--thumb-w);height:var(--thumb-h);transform:translate(var(--thumb-x), var(--thumb-y));border-radius:var(--radius-sm);background:var(--color-segment-thumb);box-shadow:var(--shadow-thumb);opacity:0;pointer-events:none;position:absolute;top:0;left:0}.segmented[data-ready] .segmented-thumb{opacity:1;transition:transform var(--motion-spring-duration) var(--motion-spring), width var(--motion-spring-duration) var(--motion-spring), height var(--motion-spring-duration) var(--motion-spring), scale var(--motion-fast) var(--motion-ease)}.segmented[data-ready] button.active{box-shadow:none;background:0 0}.segmented[data-ready] button.active:active{transform:none}.segmented[data-ready]:has(button.active:active) .segmented-thumb{scale:var(--thumb-press-scale)}.segmented[data-jump] .segmented-thumb{animation:thumb-fade-in var(--motion-fast) var(--motion-ease);transition:none}@keyframes thumb-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.segmented[data-ready] .segmented-thumb{transition:none;scale:none}}.filters{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.filters input[type=search]{min-width:var(--field-lg);flex:1}.check{align-items:center;gap:var(--space-2);display:flex}.check input{min-height:auto;accent-color:var(--color-accent-fill)}.kpis{gap:var(--space-3);margin:var(--space-2) 0 var(--space-3);grid-template-columns:repeat(4,1fr);display:grid}.kpi{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-4) var(--card-padding);gap:var(--space-1);flex-direction:column;display:flex}.kpi-label{color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.kpi-value{font-size:var(--text-kpi-size);font-weight:700;line-height:var(--text-title-leading);letter-spacing:var(--text-title-tracking);font-variant-numeric:tabular-nums}.kpi.good .kpi-value{color:var(--color-positive)}.kpi.bad .kpi-value{color:var(--color-negative)}.attention{margin:0;padding:0;list-style:none}.attention li{border-bottom:1px solid var(--color-separator)}.attention li:last-child{border-bottom:0}.attention li:not(:has(a)){padding:var(--space-2) 0}.bars{grid-template-columns:minmax(8rem,14rem) 1fr auto;margin:0;padding:0;list-style:none;display:grid}.bars li{grid-column:1/-1;grid-template-columns:subgrid;gap:var(--space-3);padding:var(--space-1) 0;align-items:center;display:grid}.bar-value{font-variant-numeric:tabular-nums;text-align:right}.bar-over{color:var(--color-expense);font-size:var(--text-footnote-size);display:block}.trend{margin:0}.trend svg{width:100%;height:auto;max-height:var(--trend-max-height)}.trend .axis{stroke:var(--color-separator)}.trend .pos{fill:var(--color-positive)}.trend .neg{fill:var(--color-negative)}.trend .tick{fill:var(--color-text-secondary);font-size:var(--text-caption-size)}.dashboard .toolbar{margin-bottom:var(--space-1)}.dashboard .toolbar h1{margin:0}.dashboard .toolbar .segmented{margin:0 0 0 auto}.dashboard .toolbar .segmented button{text-transform:none}.hero-caption{margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--text-footnote-size);line-height:var(--text-footnote-leading);letter-spacing:var(--text-footnote-tracking)}.dashboard .card h3{font-size:var(--text-headline-size);line-height:var(--text-headline-leading);letter-spacing:var(--text-headline-tracking);margin:0 0 var(--space-3)}.dash-glance,.dash-section-body{transition:opacity var(--motion-fast) var(--motion-ease)}.dash-glance[aria-busy=true],.dash-section-body[aria-busy=true]{opacity:var(--stale-opacity)}.hero{gap:var(--space-3);margin:0 0 var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.hero-item{gap:var(--space-1);background:var(--color-surface);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-card);padding:var(--card-padding);flex-direction:column;display:flex}.hero-label{color:var(--color-text-secondary);font-size:var(--text-footnote-size);letter-spacing:var(--text-footnote-tracking);font-weight:500}.hero-value{font-size:var(--text-hero-size);font-weight:var(--text-display-weight);line-height:var(--text-display-leading);letter-spacing:var(--text-display-tracking);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.hero-value .skeleton{width:60%;height:calc(var(--text-hero-size) * var(--text-display-leading))}.hero-item.good .hero-value{color:var(--color-positive)}.hero-item.bad .hero-value{color:var(--color-negative)}.hero-item.expense .hero-value{color:var(--color-expense)}.hero-detail{color:var(--color-text-secondary);font-size:var(--text-footnote-size);line-height:var(--text-footnote-leading);font-variant-numeric:tabular-nums;margin:0}.hero-detail.neg-text{color:var(--color-negative)}.hero-meter{margin:var(--space-1) 0 0}.figures{gap:var(--figures-gap);margin:0 0 var(--space-2);flex-wrap:wrap;display:flex}.figures dt{color:var(--color-text-secondary);font-size:var(--text-footnote-size);letter-spacing:var(--text-footnote-tracking)}.figures dd{font-size:var(--text-headline-size);letter-spacing:var(--text-headline-tracking);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.figures-note{margin:0 0 var(--stack-gap);color:var(--color-text-secondary);font-size:var(--text-footnote-size);line-height:var(--text-footnote-leading);letter-spacing:var(--text-footnote-tracking)}.card-head{align-items:baseline;gap:var(--space-1) var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.card-head h2{margin:0}.card-caption{color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.attention-card.quiet{align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.attention-card.quiet .card-head,.attention-card.quiet p{margin:0}.dash-section-body{gap:var(--stack-gap);margin-bottom:var(--stack-gap);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;display:grid}.dash-section-body>.card{margin-bottom:0}@media (width<=1024px){.dash-section-body{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.hero{grid-template-columns:minmax(0,1fr)}.figures{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard .toolbar .segmented{flex-basis:100%;margin:0;display:flex}.dashboard .toolbar .segmented button{flex:1}.overview .table-wrap{overflow-x:visible}.overview .row-chevron{display:none}.overview table,.overview tbody,.overview tfoot,.overview tr{display:block}.overview thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.overview tr{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-separator)}.overview .cell-note{flex-basis:100%}.overview tbody tr:last-child{border-bottom:0}.overview tfoot tr{border-top:1px solid var(--color-separator)}.overview :is(td,th){justify-content:flex-end;gap:0 var(--space-2);padding:var(--space-0) 0;font-size:var(--text-callout-size);text-align:right;white-space:normal;border:0;flex-wrap:wrap;display:flex}.overview :is(td,th):first-child{text-align:left;justify-content:flex-start;font-weight:600}.overview :is(td,th)[data-label]:before{content:attr(data-label);color:var(--color-text-secondary);font-size:var(--text-footnote-size);text-align:left;margin-right:auto;font-weight:400}.overview tfoot th:not([data-label],:first-child){display:none}}.table-wrap{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-callout-size)}th,td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-separator);text-align:left;vertical-align:middle}tbody tr:last-child td{border-bottom:0}th{font-size:var(--text-caption-size);font-weight:var(--text-caption-weight);letter-spacing:var(--text-caption-tracking);color:var(--color-text-secondary);background:0 0}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.amt-frac{opacity:var(--money-frac-opacity)}.hero-value .amt-frac,.kpi-value .amt-frac,.acct-hero-figure .amt-frac,.budget-summary-figure .amt-frac{font-size:var(--money-frac-size);opacity:1}td.income{color:var(--color-income)}td.expense{color:var(--color-expense)}td.refund,td.sell{color:var(--color-income)}td.buy{color:var(--color-transfer)}.num.expense{color:var(--color-expense)}td.transfer{color:var(--color-transfer)}.actions{white-space:nowrap;text-align:right}.view-only{cursor:default;padding:0 8px}.day-head th,.day-head td{padding-top:var(--space-4);background:var(--color-bg);border-bottom:1px solid var(--color-separator)}.day-head th{font-size:var(--text-footnote-size);letter-spacing:var(--text-footnote-tracking);color:var(--color-text);font-weight:600}.day-total{font-size:var(--text-footnote-size);font-weight:600}.day-detail{font-size:var(--text-caption-size);color:var(--color-text-secondary);font-weight:400;display:block}.cat-cell{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.cat-cell .tag{margin-left:0}.row-status{align-items:center;gap:var(--space-1);font-size:var(--text-footnote-size);display:inline-flex}.table-state{align-items:center;gap:var(--space-3);padding:var(--space-10) var(--card-padding);color:var(--color-text-secondary);text-align:center;flex-direction:column;display:flex}.table-state p{margin:0}.skeleton{height:var(--text-callout-size);border-radius:var(--radius-sm);background:var(--color-fill);animation:skeleton-pulse calc(4 * var(--motion-slow)) var(--motion-ease) infinite alternate;display:block}@keyframes skeleton-pulse{to{opacity:var(--disabled-opacity)}}.show-more{margin:var(--space-4) auto 0;display:block}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tx-form{gap:var(--space-3);display:grid}.tx-form label{gap:var(--space-1);font-size:var(--text-callout-size);color:var(--color-text-secondary);display:grid}.tx-form label>input,.tx-form label>select,.tx-form label>textarea{color:var(--color-text)}.modal{color:var(--color-text);background:var(--color-surface-raised);--color-fill:var(--color-fill-elevated);--color-fill-hover:var(--color-fill-elevated-hover);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);width:min(var(--modal-width), calc(100% - 2 * var(--space-4)));max-width:none;max-height:calc(100dvh - 2 * var(--space-4));overscroll-behavior:contain;transition:opacity var(--motion-fast) var(--motion-ease), transform var(--motion-spring-duration) var(--motion-spring);border:0;padding:0;overflow:auto}@starting-style{.modal[open]{opacity:0;transform:scale(var(--modal-enter-scale))}}.modal[data-closing]{opacity:0;transform:scale(var(--modal-enter-scale))}.modal::backdrop{background:var(--color-scrim);transition:opacity var(--motion-fast) var(--motion-ease)}@starting-style{.modal[open]::backdrop{opacity:0}}.modal[data-closing]::backdrop{opacity:0}html:has(.modal[open]){overflow:hidden}.modal-body{padding:var(--space-5) var(--space-6) var(--space-6)}.modal header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.modal header h2{font-size:var(--text-title-size);letter-spacing:var(--text-title-tracking);margin:0}.modal header button{min-width:var(--control-h-sm);min-height:var(--control-h-sm);border-radius:var(--radius-pill);padding:0}.sheet-grabber{display:none}.draft-note{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);background:var(--color-fill);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-footnote-size);flex-wrap:wrap;margin:0;display:flex}.field-error{color:var(--color-negative);font-size:var(--text-footnote-size);margin:0}[aria-invalid=true]:is(input,select,textarea){border-color:var(--color-negative)}.fields{align-items:flex-end}.field{gap:var(--space-1);font-size:var(--text-footnote-size);color:var(--color-text-secondary);display:grid}.field>:is(input,select){color:var(--color-text);font-size:var(--text-callout-size)}.inline-rename{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.inline-rename input{flex:1 1 var(--field-md);min-width:0;max-width:var(--field-lg)}.unsaved-bar{bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:30;justify-content:space-between;align-items:center;gap:var(--space-3);margin:var(--space-3) 0;padding:var(--space-3) var(--card-padding);background:var(--color-surface-raised);--color-fill:var(--color-fill-elevated);--color-fill-hover:var(--color-fill-elevated-hover);border-radius:var(--radius-lg);box-shadow:var(--shadow-popover);flex-wrap:wrap;font-weight:600;display:flex;position:sticky}.unsaved-text{gap:var(--space-1);display:grid}.unsaved-text .field-error{font-weight:400}.unsaved-others,.unsaved-apply{align-items:center;gap:var(--space-1) var(--space-2);font-size:var(--text-footnote-size);color:var(--color-text-secondary);flex-wrap:wrap;font-weight:400;display:flex}.unsaved-bar .segmented{margin-bottom:0}.unsaved-bar .segmented button{text-transform:none;font-size:var(--text-footnote-size)}.unsaved-actions{gap:var(--space-2);margin-left:auto;display:flex}.unsaved-error{flex-basis:100%;font-weight:400}.toasts{z-index:60;left:50%;bottom:calc(var(--space-6) + env(safe-area-inset-bottom));gap:var(--space-2);width:min(var(--modal-width), calc(100% - 2 * var(--gutter)));pointer-events:none;justify-items:center;display:grid;position:fixed;translate:-50%}.toast{pointer-events:auto;align-items:center;gap:var(--space-4);max-width:100%;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);min-height:var(--control-h);border-radius:var(--radius-pill);background:var(--color-toast-bg);color:var(--color-toast-text);box-shadow:var(--shadow-popover);font-size:var(--text-callout-size);transition:opacity var(--motion-fast) var(--motion-ease), transform var(--motion-spring-duration) var(--motion-spring);display:flex}@starting-style{.toast{opacity:0;transform:translateY(var(--toast-enter-y))}}.toast.error{padding-right:var(--space-4)}.toast button.toast-action{min-height:var(--control-h-sm);padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--color-toast-action);background:0 0;font-weight:600}.auth{min-height:100dvh;padding:var(--space-4);place-items:center;display:grid}.auth form{width:min(var(--auth-width), 100%);gap:var(--space-4);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-8);display:grid}.auth label{gap:var(--space-1);font-size:var(--text-callout-size);color:var(--color-text-secondary);display:grid}.auth label>input{color:var(--color-text)}.budget-page .toolbar h1{margin:0}.budget-intro{margin:0 0 var(--space-4)}.budget-grid{grid-template-columns:repeat(auto-fill, minmax(min(var(--budget-card-min), 100%), 1fr));gap:var(--stack-gap);align-items:start;display:grid}.budget-grid .card{margin:0}.budget-skeleton{gap:var(--space-4);display:grid}.budget-state{align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.budget-state p{margin:0}.budget-section{margin-bottom:var(--space-8)}.budget-section .good{color:var(--color-positive)}.budget-section .bad{color:var(--color-negative)}.budget-summary{max-width:var(--budget-card-min);margin:0 0 var(--space-5)}.budget-summary p{margin:0}.budget-summary-figure{font-size:var(--text-title-size);font-weight:var(--text-title-weight);line-height:var(--text-title-leading);letter-spacing:var(--text-title-tracking);font-variant-numeric:tabular-nums}.budget-summary .meter{margin-top:var(--space-3)}.budget-card-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.budget-card-head h3{margin:0}.budget-group>summary.budget-card-head{align-items:baseline;gap:var(--space-2);font-weight:inherit;grid-template-columns:auto 1fr auto;margin-bottom:0;list-style:none;display:grid}.budget-group>summary::-webkit-details-marker{display:none}.budget-group[open]>summary{margin-bottom:var(--space-3)}.budget-group>summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.budget-group>summary[data-dirty] h3:after{content:"";width:calc(1.5 * var(--space-1));height:calc(1.5 * var(--space-1));margin-left:var(--space-2);vertical-align:middle;border-radius:var(--radius-pill);background:var(--color-accent);display:inline-block}.budget-group-meter{grid-column:1/-1}.budget-status{font-size:var(--text-footnote-size);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text-secondary)}.budget-line{grid-template-columns:minmax(0, 1fr) var(--budget-col-input) var(--budget-col-num) var(--budget-col-num);column-gap:var(--space-2);padding:var(--space-2) 0;grid-template-areas:"name input spent status""meter input spent status""error error error error";align-items:center;display:grid}.budget-line+.budget-line{border-top:1px solid var(--color-separator)}.budget-head{padding:0 0 var(--space-1);color:var(--color-text-secondary);font-size:var(--text-caption-size);font-weight:var(--text-caption-weight)}.budget-head span{text-align:right}.budget-line .num{text-align:right;font-variant-numeric:tabular-nums;font-size:var(--text-callout-size)}.budget-name{align-items:center;column-gap:var(--space-2);flex-wrap:wrap;grid-area:name;min-width:0;display:flex}.budget-name a{color:var(--color-text);font-weight:500;text-decoration:none}.budget-name a:hover{color:var(--color-accent);text-decoration:underline}.budget-note{font-size:var(--text-caption-size);flex-basis:100%}.budget-line[data-dirty] .budget-name:before{content:"";width:calc(1.5 * var(--space-1));height:calc(1.5 * var(--space-1));border-radius:var(--radius-pill);background:var(--color-accent)}.budget-line[data-dirty] .budget-note{padding-left:calc(1.5 * var(--space-1) + var(--space-2))}.budget-input{grid-area:input;align-items:center;display:flex;position:relative}.budget-input>span{left:var(--space-3);color:var(--color-text-secondary);pointer-events:none;position:absolute}.budget-input input{width:100%;padding-left:var(--space-6);text-align:right;font-variant-numeric:tabular-nums}.budget-line[data-dirty] .budget-input input:not([aria-invalid=true]){border-color:var(--color-accent)}.budget-amount{grid-area:input}.budget-spent{grid-area:spent}.budget-line .budget-status{grid-area:status}.budget-meter{margin-top:var(--space-1);font-size:var(--text-caption-size);grid-area:meter;display:block}.budget-caption{font-size:var(--text-caption-size);grid-area:caption;display:none}.budget-error{margin-top:var(--space-1);grid-area:error}.segmented.wrap{flex-wrap:wrap}.plain-fieldset{gap:var(--space-1);border:0;min-width:0;margin:0;padding:0;display:grid}.plain-fieldset legend{font-size:var(--text-callout-size);color:var(--color-text-secondary);margin-bottom:var(--space-1);padding:0}.account-picker{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:inline-flex}.account-picker.compact{flex:0 1 var(--field-lg);min-width:var(--field-md)}.account-picker.compact .search-picker{flex:1}.account-picker.buttons{gap:var(--space-2);display:grid}.account-picker.buttons .segmented{margin-bottom:0}.form-pair{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.account-state{align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.account-state p{margin:0}.account-group-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.account-group-head h2,.account-group-head p{margin:0}.account-group-total{font-size:var(--text-headline-size);font-weight:var(--text-headline-weight);line-height:var(--text-headline-leading)}.account-empty{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.account-list{column-gap:var(--space-3);margin:0 calc(-1 * var(--space-3));grid-template-columns:minmax(0,1fr) auto auto auto;padding:0;list-style:none;display:grid}.account-row{grid-column:1/-1;grid-template-columns:subgrid;min-height:var(--account-row-min-h);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background-color var(--motion-fast) var(--motion-ease), opacity var(--motion-instant) var(--motion-ease);align-items:center;display:grid;position:relative}.account-row+.account-row:before{content:"";top:0;left:var(--space-3);right:var(--space-3);border-top:1px solid var(--color-separator);position:absolute}@media (hover:hover){.account-row:not(.account-skeleton):hover{background:var(--color-fill)}}.account-row:has(a:active){opacity:var(--press-dim)}.account-row:has(a:focus-visible){outline:2px solid var(--color-focus);outline-offset:-2px}.account-row a{color:var(--color-text);font-weight:600;text-decoration:none}.account-row a:focus-visible{outline:none}.account-row a:after{content:"";border-radius:inherit;position:absolute;inset:0}.account-edit{z-index:1;position:relative}.account-main{align-items:center;gap:var(--space-0) var(--space-3);grid-template-columns:auto minmax(0,1fr);min-width:0;display:grid}.account-main>.account-mark{grid-row:span 2}.account-mark{width:var(--picker-icon-box);height:var(--picker-icon-box);border-radius:var(--radius-sm);background:var(--color-fill);color:var(--color-text-secondary);flex:none;place-items:center;display:grid}.account-mark.has-logo{background:var(--color-logo-tile);box-shadow:var(--shadow-logo-tile)}.account-mark img{width:var(--logo-size);height:var(--logo-size);object-fit:contain}.account-mark.detail-mark{width:var(--logo-tile-lg);height:var(--logo-tile-lg);border-radius:var(--radius-md);font-size:var(--text-title-size)}.account-mark.detail-mark img{width:var(--logo-size-lg);height:var(--logo-size-lg)}.account-sub{align-items:center;gap:var(--space-1) var(--space-2);color:var(--color-text-secondary);font-size:var(--text-footnote-size);flex-wrap:wrap;display:flex}.account-sub .tag{margin-left:0}.account-figure{text-align:right;justify-items:end;display:grid}.account-figure .num{font-weight:600}.account-figure small{font-size:var(--text-footnote-size)}.cell-note{color:var(--color-text-secondary);font-size:var(--text-caption-size);font-weight:400;display:block}@media (width>=641px){.overview .today-col{border-left:1px solid var(--color-separator);padding-left:var(--space-4)}}.account-row.inactive a,.account-row.inactive .account-figure .num{color:var(--color-text-secondary)}.account-chevron{color:var(--color-text-tertiary);font-size:var(--text-callout-size)}.account-skeleton{gap:var(--space-2);grid-template-columns:1fr}.account-skeleton .skeleton:first-child{width:40%}.account-skeleton .skeleton:last-child{width:25%}.section-title{font-size:var(--text-title-size);font-weight:var(--text-title-weight);line-height:var(--text-title-leading);letter-spacing:var(--text-title-tracking);margin:var(--space-8) 0 var(--space-3)}.kpi-note{color:var(--color-text-secondary);font-size:var(--text-caption-size)}tfoot th{color:var(--color-text);border-top:1px solid var(--color-separator);border-bottom:0;font-weight:600}.pos-text{color:var(--color-positive)}.neg-text{color:var(--color-negative)}.breadcrumb ol{gap:var(--space-1);margin:0 0 var(--space-3);font-size:var(--text-footnote-size);flex-wrap:wrap;padding:0;list-style:none;display:flex}.breadcrumb li+li:before{content:"›" / "";margin-right:var(--space-1);color:var(--color-text-tertiary)}.detail-head{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;display:flex}.detail-title{gap:var(--space-3);align-items:flex-start;min-width:0;display:flex}.detail-title p{margin:var(--space-1) 0 0}.detail-name{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.detail-name h1{margin:0}.detail-name .tag{margin-left:0}.detail-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.acct-hero{gap:var(--space-2);max-width:var(--acct-hero-max);justify-items:start;display:grid}.acct-hero p{margin:0}.acct-hero .meter{margin-top:var(--space-1);justify-self:stretch}.acct-hero-label{color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.acct-hero-figure{font-size:var(--text-display-size);font-weight:var(--text-display-weight);line-height:var(--text-display-leading);letter-spacing:var(--text-display-tracking);font-variant-numeric:tabular-nums}.acct-hero-figure.muted{font-size:var(--text-title-size);line-height:var(--text-title-leading);letter-spacing:var(--text-title-tracking)}.acct-facts{column-gap:var(--space-8);margin:var(--space-5) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.acct-facts>div{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--color-separator);display:flex}.acct-facts dt{color:var(--color-text-secondary)}.acct-facts dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.acct-facts dd small{display:block}.acct-month-head{margin-top:var(--space-8)}.acct-month-head .section-title{margin:0}.acct-month{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0;display:grid}.acct-month>div{gap:var(--space-0);align-content:start;display:grid}.acct-month dt{color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.acct-month dd{margin:0}.acct-month .num{text-align:left;font-size:var(--text-headline-size);font-weight:600}.acct-month-note{color:var(--color-text-secondary);font-size:var(--text-caption-size)}.statement-line td{padding:var(--space-2) 0;border:0}.statement-line span{align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--text-caption-size);text-align:center;display:flex}.statement-line span:before,.statement-line span:after{content:"";border-top:1px dashed var(--color-separator);flex:1}.posted-note{align-items:center;gap:var(--space-1) var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.posted-note .tag{margin-left:0}.warn-text{color:var(--color-warning)}.acct-skeleton{gap:var(--space-4);max-width:var(--acct-hero-max);display:grid}.acct-skeleton .skeleton:first-child{width:40%}.acct-skeleton .skeleton:nth-child(2){height:var(--text-display-size)}.form-danger{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-separator);flex-wrap:wrap;display:flex}.meter{height:var(--meter-height);background:var(--color-meter-track);border-radius:var(--radius-pill);display:block;overflow:hidden}.meter-lg{height:var(--meter-height-lg)}.meter-fill{background:var(--color-meter-fill);height:100%;transform:scaleX(var(--meter-value));transform-origin:0;transition:transform var(--motion-base) var(--motion-ease-out);display:block}.meter-fill.warn{background:var(--color-meter-warn)}.meter-fill.over{background:var(--color-meter-over)}.meter-fill.income{background:var(--color-meter-income)}.meter-fill.muted{background:var(--color-meter-muted)}@media (prefers-reduced-motion:reduce){.meter-fill{transition:none}}@media (width<=640px){.budget-line{grid-template-columns:minmax(0, 1fr) var(--budget-col-input);row-gap:var(--space-1);grid-template-areas:"name input""meter meter""caption caption""error error"}.budget-head,.budget-spent,.budget-line .budget-status{display:none}.budget-caption{display:block}.unsaved-bar{flex-direction:column;align-items:stretch}.unsaved-apply .segmented{width:100%;display:flex}.unsaved-apply .segmented button{flex:1}.unsaved-actions{margin-left:0}.unsaved-actions button{flex:1}.account-list{grid-template-columns:minmax(0,1fr) fit-content(55%) auto}.account-edit{display:none}.detail-head{flex-direction:column;align-items:stretch}.detail-actions>button{flex:1}.acct-hero-figure{font-size:var(--text-large-title-size);font-weight:var(--text-large-title-weight);line-height:var(--text-large-title-leading);letter-spacing:var(--text-large-title-tracking)}.acct-facts{grid-template-columns:1fr}.acct-month{grid-template-columns:repeat(2,minmax(0,1fr))}.tx-table,.tx-table tbody{display:block}.tx-table thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tx-table tr{align-items:center;column-gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-separator);flex-wrap:wrap;display:flex}.tx-table tbody:last-child tr:last-child{border-bottom:0}.tx-table tr>*{border:0;padding:0}.tx-table tr:not(.day-head):after{content:"";flex-basis:100%;order:3}.tx-table tr:not(.day-head)>td{margin-top:var(--space-0);order:4}.tx-table tr:not(.day-head)>td:not(.num,:first-child){color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.tx-table tr:not(.day-head)>td:first-child{flex:1 1 0;order:1;min-width:0;margin-top:0}.tx-table tr:not(.day-head)>td.num{order:2;margin-top:0}.tx-table tr:not(.day-head)>td.actions{order:5;margin-left:auto}.tx-table .day-head{padding-top:var(--space-3);background:var(--color-bg);justify-content:space-between;align-items:baseline}.tx-table .day-head>td:empty{display:none}.tx-table tr.skeleton-row:not(.day-head)>td{flex:30%;order:0}}.settings-head{margin-bottom:var(--space-4)}.settings-head h1{margin:0}.settings-head p{margin:var(--space-1) 0 0}.settings-layout{gap:var(--space-4);display:grid}.settings-content{min-width:0}.settings-page .settings-content{max-width:var(--settings-content-max)}.settings-nav ul{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.settings-nav a{min-height:var(--control-h-sm);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-footnote-size);transition:background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover){.settings-nav a:hover{color:var(--color-text)}}.settings-nav a:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.settings-nav a[aria-current=true]{background:var(--color-fill);color:var(--color-text);font-weight:600}.settings-section{margin-bottom:var(--space-8);scroll-margin-top:var(--anchor-offset)}.settings-section>h2{font-size:var(--text-title-size);font-weight:var(--text-title-weight);line-height:var(--text-title-leading);letter-spacing:var(--text-title-tracking);margin:0 0 var(--space-3);scroll-margin-top:var(--anchor-offset)}.settings-section>h2:focus:not(:focus-visible){outline:none}.settings-intro{margin:calc(-1 * var(--space-2)) 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.settings-section .card,.settings-section .table-wrap{margin-bottom:0}.settings-section h3{margin:0}.settings-list{margin:0;padding:0;list-style:none}.settings-list>li,.settings-row{padding:var(--space-3) 0;border-bottom:1px solid var(--color-separator)}.settings-list>li:first-child,.settings-row:first-child{padding-top:0}.settings-list>li:last-child,.settings-row:last-child{border-bottom:0}.settings-row{grid-template-columns:var(--field-sm) minmax(0, 1fr);gap:var(--space-1) var(--space-4);align-items:center;display:grid}.settings-row dt{color:var(--color-text-secondary)}.settings-row dd{overflow-wrap:anywhere;min-width:0;margin:0}.settings-help{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-footnote-size);display:block}.settings-status{margin:var(--space-3) 0 0;font-size:var(--text-footnote-size)}.settings-status:empty{margin:0;position:absolute}.settings-footer{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-separator);flex-wrap:wrap;display:flex}.settings-footer p,.settings-footer .settings-status{margin:0}.settings-foot-note{margin:var(--space-4) 0 0}.settings-disclosure{border-top:1px solid var(--color-separator);margin-top:var(--space-3)}.settings-disclosure>summary{padding:var(--space-3) 0 0;min-height:var(--control-h);cursor:pointer;color:var(--color-accent);font-weight:500}.settings-disclosure[open]>summary{margin-bottom:var(--space-2)}.settings-disclosure.muted>summary{color:var(--color-text-secondary)}.settings-disclosure>summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.settings-form{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.settings-form .field{flex:1 1 var(--field-sm);min-width:0}.settings-form .field>:is(input,select){width:100%}.settings-form .plain-fieldset{flex:0 auto}.settings-form .plain-fieldset legend{font-size:var(--text-footnote-size);line-height:var(--text-body-leading)}.settings-form .plain-fieldset .segmented{margin-bottom:0}.settings-form>button,.settings-form>.form-actions{margin-top:calc(var(--text-footnote-size) * var(--text-body-leading) + var(--space-1))}.settings-form>.check{flex-basis:100%}.settings-form .form-line{flex-basis:100%;margin:0}.card>.settings-form:first-child{margin-top:0}.settings-form .order-field{flex:none}.settings-form .order-field input{width:var(--field-xs)}.form-actions{gap:var(--space-2);display:inline-flex}.row-error{font-size:var(--text-footnote-size);grid-column:1/-1;margin:0}.cat-toolbar{align-items:center;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.cat-toolbar .segmented{margin-bottom:0}.cat-toolbar input[type=search]{flex:1 1 var(--field-lg);min-width:0}.cat-toolbar>p{flex-basis:100%;margin:0}.cat-toolbar .settings-form{flex-basis:100%;margin-top:0}.cat-empty{align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--color-separator);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.cat-empty p{margin:0}.cat-group{border-top:1px solid var(--color-separator)}.cat-group>summary{align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:var(--space-1) 0;cursor:pointer;list-style:none;display:flex}.cat-group>summary::-webkit-details-marker{display:none}.cat-group>summary h3{font-size:var(--text-callout-size);flex:1}.cat-group>summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.cat-group>.settings-list,.cat-group>.cat-head{margin-left:var(--space-6)}.cat-group[open]{padding-bottom:var(--space-2)}.cat-group .settings-list>li{padding:var(--space-2) 0}.cat-row{grid-template-columns:minmax(0, 1fr) var(--field-md) var(--field-md);gap:var(--space-1) var(--space-3);grid-template-areas:"name counts actions";align-items:center;display:grid}.cat-row.cat-head{padding:var(--space-1) 0;border-bottom:1px solid var(--color-separator);color:var(--color-text-secondary);font-size:var(--text-caption-size);font-weight:var(--text-caption-weight);letter-spacing:var(--text-caption-tracking)}.cat-name{align-items:center;gap:var(--space-1);flex-wrap:wrap;grid-area:name;min-width:0;display:flex}.cat-name .tag{margin-left:0}.cat-counts{align-items:center;gap:var(--space-2);grid-area:counts;min-width:0;display:flex}.cat-counts select{width:100%;min-width:0}.cat-caption{color:var(--color-text-secondary);font-size:var(--text-footnote-size);white-space:nowrap;display:none}.cat-actions{justify-content:flex-end;gap:var(--space-1);grid-area:actions;display:flex}.cat-note{align-items:center;gap:var(--space-1) var(--space-2);color:var(--color-text-secondary);font-size:var(--text-footnote-size);flex-wrap:wrap;flex-basis:100%;margin:0;display:flex}.cat-note.error{color:var(--color-negative)}.rename-name{overflow-wrap:anywhere;min-width:0}.inline-rename form{display:contents}.inline-rename .field-error{flex-basis:100%}.rule-row{gap:var(--space-1) var(--space-3);grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"text order actions";align-items:center;display:grid}.rule-row.editing{display:block}.rule-row.editing .settings-form{margin-top:0}.rule-text{overflow-wrap:anywhere;grid-area:text;min-width:0}.rule-order{white-space:nowrap;grid-area:order}.rule-actions{gap:var(--space-1);grid-area:actions;display:flex}.member-row{gap:var(--space-1) var(--space-3);grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"name role remove";align-items:center;display:grid}.member-name{overflow-wrap:anywhere;grid-area:name;min-width:0;display:grid}.member-role{grid-area:role}.member-remove{grid-area:remove}.settings-disclosure .member-row{padding:var(--space-2) 0}.copy-link{gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3);background:var(--color-fill);border-radius:var(--radius-md);display:grid}.copy-link p{font-size:var(--text-footnote-size);color:var(--color-text-secondary);margin:0}.copy-link .settings-status{color:var(--color-text)}.copy-link-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.copy-link-row input{flex:1 1 var(--field-lg);min-width:0}.copy-link-row button{background:var(--color-surface)}@media (hover:hover){.copy-link-row button:hover:not(:disabled){background:var(--color-fill-hover)}}.segmented.labelled{margin-bottom:0}.segmented.labelled button{align-items:center;gap:var(--space-2);display:inline-flex}.admin-users td{vertical-align:top}.admin-users .rename-name{font-weight:500}.admin-user-meta{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.admin-user-meta .tag{margin-left:0}.admin-users .actions{white-space:normal}.admin-actions{justify-content:flex-end;gap:var(--space-1);flex-wrap:wrap;display:flex}.admin-actions button,.admin-users td[data-label]{white-space:nowrap}.admin-link-row td{padding-top:0}.admin-link-row .error{margin:0 0 var(--space-2);font-size:var(--text-footnote-size)}.admin-link{align-items:flex-start;gap:var(--space-2);display:flex}.admin-link .copy-link{flex:1;min-width:0;margin-top:0}.household-row{gap:var(--space-0);display:grid}.household-row .rename-name{font-weight:600}.template-group{margin-top:var(--space-4)}.template-group h3{margin-bottom:var(--space-2)}.template-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.template-chip{align-items:center;gap:var(--space-0);padding-left:var(--space-3);border-radius:var(--radius-pill);background:var(--color-fill);font-size:var(--text-footnote-size);display:inline-flex}.template-chip button{min-width:var(--control-h-sm);min-height:var(--control-h-sm);border-radius:var(--radius-pill);color:var(--color-text-secondary);background:0 0;padding:0}.app-settings-grid{grid-template-columns:repeat(auto-fill, minmax(min(var(--field-lg), 100%), 1fr));gap:var(--space-4);align-items:start;display:grid}.app-settings-grid .field{align-content:start}.app-settings-grid .field>input{width:100%}.app-settings-grid+h3{margin:var(--space-5) 0 var(--space-2)}@media (prefers-reduced-motion:no-preference){html:has(.settings-page,.admin-page){scroll-behavior:smooth}}@media (width>=1024px){.settings-layout{grid-template-columns:var(--settings-nav-width) minmax(0, 1fr);gap:var(--space-8);align-items:start}.settings-nav{top:var(--anchor-offset);position:sticky}.settings-nav ul{flex-direction:column}.settings-nav a{font-size:var(--text-callout-size);display:flex}}@media (width<=640px){.settings-page,.admin-page{--anchor-offset:var(--anchor-offset-compact)}.settings-row{grid-template-columns:minmax(0,1fr)}.cat-group>.settings-list,.cat-group>.cat-head{margin-left:var(--space-5)}.cat-row.cat-head{display:none}.cat-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name actions""counts counts"}.cat-caption{display:inline}.cat-counts select{width:auto;max-width:var(--field-md);flex:1}.rule-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"text text""order actions"}.member-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name name""role remove"}.member-row .member-role{justify-self:start}.admin-users,.admin-users tbody,.admin-users tr,.admin-users td{display:block}.admin-users thead{display:none}.admin-users tr{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-separator)}.admin-users tbody tr:last-child{border-bottom:0}.admin-users td,.admin-users tbody tr:last-child td{padding:var(--space-0) 0;border-bottom:0}.admin-users td[data-label]:before{content:attr(data-label) ": ";color:var(--color-text-secondary)}.admin-users .actions{text-align:left}.admin-actions{margin-left:calc(-1 * var(--space-3));justify-content:flex-start}.admin-users tr.admin-link-row{padding-top:0}.admin-link{flex-direction:column}.admin-link .copy-link{width:100%}.kpis{grid-template-columns:repeat(2,1fr)}.bars li{grid-template-columns:1fr auto}.bars .meter{grid-area:2/1/auto/-1}.qa-amount{width:100%}.quick-add>.account-picker,.quick-add>.date-input{flex:1}.search-picker-pop,.date-input-pop{left:var(--space-4);width:calc(100% - 2 * var(--space-4))}.date-input-grid{grid-template-columns:repeat(7,1fr)}.form-pair{grid-template-columns:1fr}.modal{width:100%;max-height:calc(100dvh - var(--space-8));border-radius:var(--radius-xl) var(--radius-xl) 0 0;margin:auto 0 0}@starting-style{.modal[open]{opacity:1;transform:translateY(var(--sheet-enter-y))}}.modal[data-closing]{opacity:1;transform:translateY(var(--sheet-enter-y))}.modal-body{padding:var(--space-2) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.sheet-grabber{width:var(--space-10);height:var(--space-1);margin:0 auto var(--space-2);border-radius:var(--radius-pill);background:var(--color-fill-hover);display:block}.topbar{gap:var(--space-2)}.topbar nav{scrollbar-width:none;flex-wrap:nowrap;flex-basis:100%;order:3;overflow-x:auto}.topbar nav a{flex:none}.who{margin-left:auto}.who-name{display:none}}@media (prefers-reduced-motion:reduce){body{transition:none}.skeleton{animation:none}}@media (width>=641px) and (width<=1024px){.kpis{grid-template-columns:repeat(2,1fr)}}.dashboard .toolbar .segmented.view-switch{margin:0}.year-picker .year-name{text-align:center;font-variant-numeric:tabular-nums;min-width:3.5rem;font-weight:600}.year-view{transition:opacity var(--motion-fast) var(--motion-ease)}.year-view[aria-busy=true]{opacity:var(--stale-opacity)}.year-banner{line-height:var(--text-callout-leading)}.year-chart{margin:0}.year-chart svg{width:100%;height:auto;display:block}.year-chart .axis{stroke:var(--color-separator)}.year-chart .inc{fill:var(--color-income)}.year-chart .exp{fill:var(--color-expense)}.year-chart .untracked{fill:url(#year-hatch);stroke:var(--color-separator);stroke-dasharray:3 3}.year-chart .hatch-line{stroke:var(--color-separator);stroke-width:2px}.year-chart .future{fill:var(--color-fill)}.year-chart .tick{fill:var(--color-text-secondary);font-size:var(--text-caption-size)}.year-chart .saved{font-size:var(--text-caption-size);font-variant-numeric:tabular-nums}.year-chart .saved.pos{fill:var(--color-positive)}.year-chart .saved.neg{fill:var(--color-negative)}.year-chart .note{fill:var(--color-text-tertiary);font-size:var(--text-caption-size)}.legend{gap:var(--space-1) var(--space-4);margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--text-footnote-size);flex-wrap:wrap;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:var(--space-1);display:inline-flex}.swatch{width:var(--space-3);height:var(--space-3);border-radius:var(--radius-xs);display:inline-block}.swatch.inc{background:var(--color-income)}.swatch.exp{background:var(--color-expense)}.swatch.untracked{background:repeating-linear-gradient(135deg, var(--color-separator) 0 2px, transparent 2px 5px);box-shadow:inset 0 0 0 1px var(--color-separator)}.year-groups td,.year-groups th{padding-left:var(--space-2);padding-right:var(--space-2)}.year-groups tr.open td{border-bottom:0}.group-toggle{align-items:center;gap:var(--space-1);min-height:0;color:var(--color-text);font:inherit;text-align:left;background:0 0;padding:0;display:inline-flex}.group-toggle .icon{color:var(--color-text-tertiary)}@media (hover:hover){.group-toggle:hover:not(:disabled){color:var(--color-accent);background:0 0}}.spark{height:var(--space-5);vertical-align:middle;align-items:flex-end;gap:2px;display:inline-flex}.spark span{width:var(--space-1);background:var(--color-text-secondary);border-radius:1px;min-height:1px}.spark span.none{background:var(--color-fill);height:3px!important}.group-months td{padding-top:0}.group-months-grid{gap:var(--space-1) var(--space-3);padding:0 0 var(--space-2) var(--space-5);color:var(--color-text-secondary);font-size:var(--text-footnote-size);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.group-months-grid b{color:var(--color-text);font-variant-numeric:tabular-nums;font-weight:500;display:block}.big-list{margin:0;padding:0;list-style:none}.big-list li{gap:0 var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-separator);grid-template-columns:1fr auto;display:grid}.big-list li:last-child{border-bottom:0}.big-what{font-weight:500}.big-meta{color:var(--color-text-secondary);font-size:var(--text-footnote-size);grid-column:1}.big-amount{color:var(--color-expense);font-variant-numeric:tabular-nums;grid-area:1/2/span 2;align-self:center}.big-note,.family-note{margin:var(--space-3) 0 0}.grid-wrap{overflow-x:auto}.year-budgets{border-collapse:separate;border-spacing:3px;width:100%;font-size:var(--text-footnote-size)}.year-budgets th,.year-budgets td{text-align:center;border:0;padding:0}.year-budgets thead th{padding-bottom:var(--space-1);color:var(--color-text-secondary);font-weight:500}.year-budgets tbody th{padding-right:var(--space-3);background:var(--color-surface);color:var(--color-text);text-align:left;white-space:nowrap;font-weight:500;position:sticky;left:0}.year-budgets td.cell{height:var(--control-h-sm);min-width:var(--control-h);border-radius:var(--radius-xs);font-variant-numeric:tabular-nums}.year-budgets .cell.ok{background:var(--color-fill);color:var(--color-text-secondary)}.year-budgets .cell.over{background:color-mix(in srgb, var(--color-negative) 20%, transparent);color:var(--color-negative);font-weight:600}.year-budgets .cell.nob{box-shadow:inset 0 0 0 1px var(--color-separator);color:var(--color-text-tertiary)}.year-budgets .cell.none{background:repeating-linear-gradient(135deg, var(--color-separator) 0 1.5px, transparent 1.5px 5px)}.year-budgets .cell.later{background:0 0}.year-budgets td.over-count{padding-left:var(--space-3);color:var(--color-text-secondary);text-align:right;white-space:nowrap}.year-budgets td.over-count.bad{color:var(--color-negative);font-weight:600}.family-cards{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));margin:0;padding:0;list-style:none;display:grid}.family-cards li{gap:var(--space-0);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-fill);flex-direction:column;display:flex}.family-name{font-weight:600}.family-given{margin:var(--space-1) 0;font-size:var(--text-title-size);letter-spacing:var(--text-title-tracking);font-variant-numeric:tabular-nums;font-weight:600}.family-given.expense-text{color:var(--color-expense)}.family-line{justify-content:space-between;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-footnote-size);font-variant-numeric:tabular-nums;display:flex}@media (width<=640px){.year-groups .wide-only{display:none}.group-months-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding-left:0}.dashboard .toolbar .segmented.view-switch{flex-basis:auto;display:inline-flex}}.template-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.group-rename{align-items:center;gap:var(--space-3);padding:var(--space-1) 0;flex-wrap:wrap;display:flex}.group-rename .rename-name{font-weight:600}.group-rename .inline-rename{flex:auto}@media (width<=640px){.group-rename-note{flex-basis:100%}}.family-tick{padding:var(--space-2) 0;color:var(--color-text-secondary);font-size:var(--text-footnote-size)}.cat-group>summary h3 .tag{font-weight:500}.switch-row{justify-content:space-between;align-items:center;gap:var(--space-3);cursor:pointer;display:flex}.switch-text{flex-direction:column;gap:2px;display:flex}.share-switch:not(.compact){padding:var(--space-3);background:var(--color-fill);border-radius:12px}.share-switch.compact .switch-text{color:var(--color-text-secondary);font-size:.875rem}input.switch{appearance:none;background:var(--color-fill-elevated-hover);cursor:pointer;border-radius:13px;flex:none;width:44px;height:26px;margin:0;transition:background .2s;position:relative}input.switch:after{content:"";background:var(--color-switch-knob);width:22px;height:22px;box-shadow:var(--shadow-switch-knob);border-radius:50%;transition:transform .2s;position:absolute;top:2px;left:2px}input.switch:checked{background:var(--color-positive)}input.switch:checked:after{transform:translate(18px)}input.switch:disabled{opacity:.5;cursor:default}input.switch:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){input.switch,input.switch:after{transition:none}}.bank-picker{gap:var(--space-2);display:grid}.add-bank{gap:var(--space-2);padding:var(--space-3);background:var(--color-fill);color:var(--color-text);border-radius:12px;display:grid}.add-bank-title{margin:0;font-weight:600}.add-bank-row{gap:var(--space-3);align-items:end;display:flex}.add-bank-name{flex:1;min-width:0}.logo-drop{background:var(--color-surface);width:56px;height:56px;box-shadow:var(--shadow-logo-tile);cursor:pointer;border-radius:12px;flex:none;place-items:center;display:grid;overflow:hidden}.logo-drop:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.logo-drop img{object-fit:contain;width:100%;height:100%}.tx-form label.check{align-items:center;display:flex}.tx-form label.switch-row{justify-content:space-between;align-items:center;display:flex}.owner-tag{align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-caption-size);font-weight:var(--text-caption-weight);white-space:nowrap;display:inline-flex}.owner-initial{background:var(--color-accent-tint);width:1.25rem;height:1.25rem;color:var(--color-accent);border-radius:50%;place-items:center;font-size:.6875rem;font-weight:600;display:inline-grid}.overview-owner th{padding-top:var(--space-3);text-align:left;color:var(--color-text);font-weight:600}.overview-owner th .muted{margin-left:var(--space-2);font-weight:400}.overview-subtotal td{color:var(--color-text-secondary);font-weight:500}.account-group-figure{justify-items:end;gap:var(--space-0);text-align:right;display:grid}.admin-email .rename-name{color:var(--color-text-secondary);font-size:var(--text-footnote-size)}
