:root{color-scheme:light;--color-canvas: #f3f2ed;--color-surface: #fffefa;--color-surface-elevated: #ffffff;--color-surface-subtle: #ecefe9;--color-surface-selected: #dff1eb;--color-text: #18312d;--color-text-muted: #5b6d68;--color-text-subtle: #74827e;--color-border: #d9dfda;--color-border-strong: #a9b8b2;--color-primary: #0b6b5e;--color-primary-hover: #085a4f;--color-primary-active: #06483f;--color-primary-subtle: #ccebe2;--color-accent: #d9e8a7;--color-accent-soft: #eef4d7;--color-ink-surface: #123d36;--color-ink-surface-strong: #0a2d28;--color-on-ink: #f8fbf6;--color-focus: #1d4ed8;--color-success: #166534;--color-success-subtle: #dcfce7;--color-warning: #92400e;--color-warning-subtle: #fef3c7;--color-danger: #b42318;--color-danger-subtle: #fee4e2;--color-info: #1d4ed8;--color-info-subtle: #dbeafe;--font-sans: inter, "Noto Sans", "Segoe UI", roboto, helvetica, arial, sans-serif;--font-mono: "SFMono-Regular", consolas, "Liberation Mono", monospace;--font-size-100: .75rem;--font-size-200: .875rem;--font-size-300: 1rem;--font-size-400: 1.125rem;--font-size-500: 1.25rem;--font-size-600: 1.5rem;--font-size-700: clamp(1.75rem, 5vw, 2.25rem);--line-height-tight: 1.2;--line-height-body: 1.5;--line-height-relaxed: 1.65;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--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;--radius-sm: .75rem;--radius-md: 1rem;--radius-lg: 1.5rem;--radius-xl: 2rem;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgb(18 61 54 / 6%);--shadow-md: 0 12px 32px rgb(18 61 54 / 9%);--shadow-lg: 0 24px 72px rgb(18 61 54 / 16%);--content-max: 72rem;--control-min-size: 2.75rem;font-family:var(--font-sans);font-synthesis:none;color:var(--color-text);background:var(--color-canvas)}*{box-sizing:border-box}html{min-width:20rem;background:var(--color-canvas);text-size-adjust:100%}body{min-width:20rem;min-height:100vh;margin:0;background:radial-gradient(circle at 100% 0,rgb(204 251 241 / 38%),transparent 25rem),var(--color-canvas);color:var(--color-text);font-size:var(--font-size-300);font-weight:var(--font-weight-regular);line-height:var(--line-height-body)}button,input,select,textarea{font:inherit}button,[role=button]{min-block-size:var(--control-min-size);border:1px solid transparent;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold);line-height:1.25;cursor:pointer;touch-action:manipulation;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}button:disabled,[role=button][aria-disabled=true]{opacity:.56;cursor:not-allowed}button:hover:not(:disabled),[role=button]:hover:not([aria-disabled=true]){background:var(--color-primary-hover)}button:active:not(:disabled),[role=button]:active:not([aria-disabled=true]){background:var(--color-primary-active);transform:translateY(1px)}button.button--secondary,.button--secondary{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-primary-active)}button.button--secondary:hover:not(:disabled),.button--secondary:hover:not([aria-disabled=true]){border-color:var(--color-primary);background:var(--color-surface-selected)}button.button--danger,.button--danger{background:var(--color-danger)}button.button--danger:hover:not(:disabled),.button--danger:hover:not([aria-disabled=true]){background:#8f1c13}a{color:var(--color-primary-active);font-weight:var(--font-weight-medium);text-decoration-color:currentcolor;text-underline-offset:.16em}a:hover{color:var(--color-primary)}input:not([type=checkbox],[type=radio]),select,textarea{inline-size:100%;min-block-size:var(--control-min-size);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);background:var(--color-surface);color:var(--color-text);line-height:var(--line-height-body);transition:border-color .16s ease,box-shadow .16s ease}textarea{min-block-size:7.5rem;resize:vertical}input::placeholder,textarea::placeholder{color:var(--color-text-subtle);opacity:1}input[type=checkbox],input[type=radio]{inline-size:1.25rem;block-size:1.25rem;accent-color:var(--color-primary)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}::selection{background:var(--color-primary-subtle);color:var(--color-primary-active)}h1,h2,h3,p{margin-block:0}h1,h2,h3{color:var(--color-text);font-weight:var(--font-weight-bold);letter-spacing:-.018em;line-height:var(--line-height-tight)}h1{font-size:var(--font-size-700)}h2{font-size:var(--font-size-600)}h3{font-size:var(--font-size-500)}p+p{margin-block-start:var(--space-3)}img,svg{display:block;max-inline-size:100%}.skip-link{position:fixed;z-index:20;inset-block-start:var(--space-3);inset-inline-start:var(--space-3);transform:translateY(-160%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.shell{display:grid;min-block-size:100vh;grid-template-rows:auto 1fr auto}.shell>header{display:flex;min-block-size:4rem;align-items:center;justify-content:space-between;gap:var(--space-3);border-block-end:1px solid var(--color-border);padding:var(--space-2) max(var(--space-4),env(safe-area-inset-right)) var(--space-2) max(var(--space-4),env(safe-area-inset-left));background:#fffffff0;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.shell>header strong{font-size:var(--font-size-400);font-weight:var(--font-weight-bold)}.shell nav{position:sticky;z-index:10;inset-block-end:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));order:3;gap:var(--space-1);border-block-start:1px solid var(--color-border);padding:var(--space-1) max(var(--space-2),env(safe-area-inset-right)) max(var(--space-1),env(safe-area-inset-bottom)) max(var(--space-2),env(safe-area-inset-left));background:#fffffff5;box-shadow:0 -4px 16px #16252a12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.shell nav a{display:grid;min-block-size:var(--control-min-size);place-items:center;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-100);font-weight:var(--font-weight-semibold);line-height:1.15;text-align:center;text-decoration:none}.shell nav a:hover{background:var(--color-surface-subtle);color:var(--color-primary-active)}.shell main,.auth-page{inline-size:min(100%,var(--content-max));margin-inline:auto;padding:var(--space-6) var(--space-4) calc(var(--space-8) + env(safe-area-inset-bottom))}.shell main>*+*{margin-block-start:var(--space-6)}.shell main section>*+*{margin-block-start:var(--space-3)}.card{inline-size:min(100%,30rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);background:var(--color-surface);box-shadow:var(--shadow-md)}.auth-page{display:grid;min-block-size:100vh;place-items:center}.auth-page .card{display:grid;gap:var(--space-6)}.auth-page form,.field{display:grid;gap:var(--space-4)}.field{gap:var(--space-2);color:var(--color-text);font-size:var(--font-size-200);font-weight:var(--font-weight-semibold)}.status-message,.update-prompt{border:1px solid var(--color-info);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--color-info-subtle);color:#17366f}.status-message--error{border-color:var(--color-danger);background:var(--color-danger-subtle);color:#7a271a}.status-message--success{border-color:var(--color-success);background:var(--color-success-subtle);color:var(--color-success)}.stack-form,.family-page,.settings-page,.onboarding-page{display:grid;gap:var(--space-6)}.auth-links{display:flex;flex-wrap:wrap;gap:var(--space-4)}.field-row{display:grid;gap:var(--space-4)}.choice-group{display:grid;gap:var(--space-3);margin:0;border:0;padding:0}.choice-group legend{margin-block-end:var(--space-2);font-weight:var(--font-weight-semibold)}.choice-option{display:flex;align-items:flex-start;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.detail-list{display:grid;gap:var(--space-3)}.detail-list div{display:grid;grid-template-columns:minmax(7rem,.8fr) 1fr;gap:var(--space-3)}.detail-list dt{color:var(--color-text-muted)}.detail-list dd{margin:0;font-weight:var(--font-weight-semibold)}.choice-option span,.member-list li>div,.checklist li{display:grid;gap:var(--space-1)}.choice-option small,.member-list span,.checklist span{color:var(--color-text-muted)}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.member-list,.invitation-list,.checklist{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.member-list li,.invitation-list li,.checklist li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3)}.member-list select{inline-size:auto;min-inline-size:8.5rem}.details-card{inline-size:100%}.details-card summary{cursor:pointer;font-size:var(--font-size-500);font-weight:var(--font-weight-bold)}.details-card[open] summary{margin-block-end:var(--space-4)}.destructive-card{border-color:var(--color-danger)}.checklist{counter-reset:checklist}.checklist li{position:relative;align-items:flex-start;padding-inline-start:var(--space-8)}.member-list li:last-child,.invitation-list li:last-child,.checklist li:last-child{border-block-end:0;padding-block-end:0}.checklist li:before{position:absolute;inset-inline-start:0;display:grid;inline-size:var(--space-6);block-size:var(--space-6);place-items:center;border:1px solid var(--color-border-strong);border-radius:50%;background:var(--color-surface);content:counter(checklist);counter-increment:checklist;font-size:var(--font-size-200);font-weight:var(--font-weight-bold)}.checklist__complete:before,.checklist__ready:before{border-color:var(--color-success);background:var(--color-success-subtle);color:var(--color-success)}.button-link{display:inline-flex;min-block-size:var(--control-min-size);align-items:center;justify-content:center;align-self:start;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold);text-decoration:none}.button-link:hover{background:var(--color-primary-hover);color:#fff}.update-prompt{position:fixed;z-index:15;inset-inline:var(--space-4);inset-block-end:calc(4.5rem + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);box-shadow:var(--shadow-md)}@media (width >= 48rem){.shell main,.auth-page{padding:var(--space-8) var(--space-6)}.shell nav a{font-size:var(--font-size-200)}.field-row{grid-template-columns:repeat(2,minmax(0,1fr))}.update-prompt{inset-inline:auto var(--space-6);max-inline-size:30rem}}@media (width >= 64rem){.shell{grid-template-columns:15rem minmax(0,1fr);grid-template-rows:auto 1fr}.shell>header{grid-column:1 / -1}.shell nav{position:sticky;inset-block:4rem auto;align-self:start;grid-template-columns:1fr;order:0;min-block-size:calc(100vh - 4rem);border-block-start:0;border-inline-end:1px solid var(--color-border);padding:var(--space-4);box-shadow:none}.update-prompt{inset-block-end:calc(var(--space-6) + env(safe-area-inset-bottom))}.shell nav a{justify-items:start;padding-inline:var(--space-3);text-align:start}.shell main{margin-inline:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors: active){:focus-visible{outline-color:Highlight}.shell nav a.active{outline:1px solid Highlight}}.transactions-page,.transaction-overview,.transaction-list,.recurring-suggestions,.category-manager,.transaction-form,.transaction-detail{display:grid;gap:var(--space-4)}.inline-actions,.scope-controls,.transaction-detail__actions,.confirmation-panel__actions,.recent-categories,.inline-form{display:flex;flex-wrap:wrap;gap:var(--space-2)}.inline-actions{justify-content:flex-end}.transaction-type-toggle{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0;border:0;padding:0}.transaction-type-toggle legend{inline-size:100%;margin-block-end:var(--space-1);font-weight:var(--font-weight-semibold)}.transaction-type-toggle label{display:flex;min-block-size:var(--control-min-size);align-items:center;gap:var(--space-2)}.transaction-form__amount input{font-size:var(--font-size-600);font-variant-numeric:tabular-nums}.transaction-form__advanced{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.transaction-form__advanced[open]{display:grid;gap:var(--space-4)}.recent-categories{align-items:center}.recent-categories__button{min-block-size:2rem;padding:var(--space-1) var(--space-2);font-size:var(--font-size-100)}.transaction-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.transaction-totals__item{display:grid;gap:var(--space-1);border-radius:var(--radius-sm);padding:var(--space-3);background:var(--color-surface-subtle)}.transaction-totals span,.transaction-row small,.recurring-suggestions small,.category-manager small,.eyebrow{color:var(--color-text-muted);font-size:var(--font-size-100)}.transaction-totals__value,.transaction-detail__amount,.transaction-row__amount{font-variant-numeric:tabular-nums}.transaction-list{gap:var(--space-2)}.transaction-row{display:flex;inline-size:100%;align-items:center;justify-content:space-between;gap:var(--space-3);border-color:var(--color-border);background:var(--color-surface);color:var(--color-text);text-align:start}.transaction-row:hover:not(:disabled){background:var(--color-surface-selected)}.transaction-row span,.recurring-suggestions li>span{display:grid;gap:var(--space-1)}.transaction-detail__amount{font-size:var(--font-size-700);font-weight:var(--font-weight-bold)}.confirmation-panel{display:grid;gap:var(--space-3);border:1px solid var(--color-danger);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-danger-subtle)}.confirmation-panel__actions{justify-content:flex-end}.filter-grid{display:grid;gap:var(--space-4);margin-block-start:var(--space-4)}.recurring-suggestions ul,.category-manager__list{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.recurring-suggestion,.category-manager__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3)}.recurring-suggestion:last-child,.category-manager__item:last-child{border-block-end:0;padding-block-end:0}.inline-form{align-items:end;margin-block:var(--space-4)}.inline-form .field{flex:1 1 12rem}@media (width >= 48rem){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.savings-page,.savings-form,.savings-detail,.savings-history,.savings-settings,.savings-members,.savings-progress{display:grid;gap:var(--space-4)}.savings-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.savings-overview__item,.savings-consequence{display:grid;gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface)}.savings-overview__label,.savings-bucket-card small,.savings-history small,.savings-settings small{color:var(--color-text-muted);font-size:var(--font-size-100)}.savings-overview__value,.savings-detail__amount,.savings-bucket-card__amount,.savings-history__amount{font-variant-numeric:tabular-nums}.savings-list{display:grid;gap:var(--space-3)}.savings-bucket-card{display:flex;inline-size:100%;justify-content:space-between;gap:var(--space-3);border-color:var(--color-border);background:var(--color-surface);color:var(--color-text);text-align:start}.savings-bucket-card:hover:not(:disabled){background:var(--color-surface-selected)}.savings-bucket-card__content,.savings-bucket-card__amount{display:grid;gap:var(--space-1)}.savings-bucket-card__amount{justify-items:end;font-weight:var(--font-weight-bold)}.savings-form__amount input{font-size:var(--font-size-600);font-variant-numeric:tabular-nums}.savings-consequence{line-height:var(--line-height-relaxed)}.savings-warning{border-color:var(--color-warning);background:var(--color-warning-subtle);color:var(--color-warning)}.savings-detail__amount{font-size:var(--font-size-600)}.savings-progress progress{inline-size:100%;block-size:var(--space-4);accent-color:var(--color-primary)}.savings-history ul{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.savings-history__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3)}.savings-history__item:last-child{border-block-end:0;padding-block-end:0}.savings-history__content{display:grid;gap:var(--space-1)}@media (width >= 48rem){.savings-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-page,.projection-panel,.dashboard-section,.projection-result,.saved-scenarios,.comparison,.dashboard-context,.scope-controls,.dashboard-metrics,.dashboard-grid,.projection-layout{display:grid;gap:var(--space-4)}.dashboard-context{inline-size:100%}.scope-controls{margin:0;border:0;padding:0}.scope-controls legend{font-weight:var(--font-weight-semibold)}.scope-controls label{display:flex;min-block-size:var(--control-min-size);align-items:center;gap:var(--space-2)}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{inline-size:100%;min-inline-size:0;gap:var(--space-2);padding:var(--space-4);box-shadow:none}.metric-card--primary{border-color:var(--color-primary);background:var(--color-surface-selected)}.metric-card span,.metric-card small,.dashboard-activity small,.dashboard-goals small,.saved-scenarios small{color:var(--color-text-muted)}.metric-card strong,.dashboard-amount,.projection-result__amount{font-size:var(--font-size-500);font-variant-numeric:tabular-nums}.dashboard-section,.projection-result,.saved-scenarios,.comparison{inline-size:100%;box-shadow:none}.dashboard-activity,.dashboard-goals,.saved-scenarios ul,.category-bars,.comparison-bars{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.dashboard-activity li,.dashboard-goals li,.saved-scenarios li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3)}.dashboard-activity li:last-child,.dashboard-goals li:last-child,.saved-scenarios li:last-child{border-block-end:0;padding-block-end:0}.dashboard-activity li>span,.dashboard-goals li>span,.saved-scenarios li label,.saved-scenarios li label span{display:grid;gap:var(--space-1)}.dashboard-activity li>strong{text-align:end;font-variant-numeric:tabular-nums}.dashboard-goals progress{inline-size:min(12rem,38vw);block-size:var(--space-4);accent-color:var(--color-primary)}.category-bars li,.comparison-bars li{display:grid;grid-template-columns:minmax(6rem,1fr) minmax(4rem,2fr) auto;align-items:center;gap:var(--space-3)}.category-bars div,.comparison-bars div{overflow:hidden;block-size:var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-subtle)}.category-bars i,.comparison-bars i{display:block;block-size:100%;border-radius:inherit;background:var(--color-primary)}.category-bars strong,.comparison-bars strong{font-variant-numeric:tabular-nums;text-align:end}.dashboard-section table,.comparison table{inline-size:100%;border-collapse:collapse}.dashboard-section th,.dashboard-section td,.comparison th,.comparison td{border-block-end:1px solid var(--color-border);padding:var(--space-2);text-align:start}.projection-panel{border:1px solid var(--color-info);border-radius:var(--radius-lg);padding:var(--space-6);background:var(--color-info-subtle)}.projection-disclaimer{border-inline-start:4px solid var(--color-info);padding-inline-start:var(--space-3);color:#17366f;font-size:var(--font-size-200)}.projection-layout>.card{inline-size:100%}.projection-advanced{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.projection-advanced[open]{display:grid;gap:var(--space-4)}.projection-result__amount{font-size:var(--font-size-700)}@media (width >= 48rem){.dashboard-context{grid-template-columns:minmax(12rem,18rem) 1fr;align-items:end}.scope-controls{grid-template-columns:repeat(2,max-content)}.dashboard-metrics,.dashboard-grid,.projection-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}body{overflow-x:hidden;background:radial-gradient(circle at 90% -5%,var(--color-primary-subtle),transparent 22rem),radial-gradient(circle at -10% 30%,var(--color-accent-soft),transparent 24rem),var(--color-canvas)}button,[role=button],.button-link{border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);box-shadow:0 8px 18px #0b6b5e24;letter-spacing:-.01em}button:hover:not(:disabled),[role=button]:hover:not([aria-disabled=true]),.button-link:hover{box-shadow:0 10px 24px #0b6b5e33;transform:translateY(-1px)}button.button--secondary,.button--secondary{box-shadow:none}input:not([type=checkbox],[type=radio]),select,textarea{min-block-size:3.25rem;border-color:var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--color-surface-elevated);box-shadow:inset 0 1px #ffffffb3}input:not([type=checkbox],[type=radio]):hover,select:hover,textarea:hover{border-color:var(--color-border-strong)}input:not([type=checkbox],[type=radio]):focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px #0b6b5e1a}h1{letter-spacing:-.045em}h2,h3{letter-spacing:-.032em}.shell{grid-template-rows:auto 1fr}.app-header{position:sticky;z-index:12;inset-block-start:0;min-block-size:4.5rem;border-block-end:0;padding:var(--space-3) max(var(--space-4),env(safe-area-inset-right)) var(--space-3) max(var(--space-4),env(safe-area-inset-left));background:#f3f2eddb;box-shadow:none;-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%)}.brand-lockup{display:flex;align-items:center;gap:var(--space-3)}.brand-lockup>span:last-child{display:grid;gap:0}.brand-lockup strong{letter-spacing:-.035em}.brand-lockup small{color:var(--color-text-muted);font-size:var(--font-size-100);font-weight:var(--font-weight-medium)}.brand-mark{display:grid;flex:0 0 auto;inline-size:2.5rem;block-size:2.5rem;place-items:center;border-radius:.85rem;background:var(--color-primary);box-shadow:inset 0 1px #ffffff2e;color:var(--color-on-ink);font-size:var(--font-size-400);font-weight:var(--font-weight-bold)}.header-action{display:inline-flex;min-block-size:var(--control-min-size);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;box-shadow:none;color:var(--color-text-muted)}.header-action:hover:not(:disabled){background:var(--color-surface-subtle);box-shadow:none;color:var(--color-text)}.header-action span{display:none}.shell nav{position:fixed;z-index:20;inset-inline:var(--space-3);inset-block-end:max(var(--space-3),env(safe-area-inset-bottom));overflow:hidden;gap:0;border:1px solid rgb(255 255 255 / 68%);border-radius:1.55rem;padding:var(--space-1);background:#fffefaeb;box-shadow:0 16px 45px #123d362e;-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}.shell nav a{position:relative;display:flex;min-block-size:3.65rem;flex-direction:column;gap:.15rem;border-radius:1.25rem;padding:var(--space-2) var(--space-1);font-size:.65rem;transition:color .16s ease,background-color .16s ease,transform .16s ease}.shell nav a:hover{background:transparent}.shell nav a.active{background:var(--color-surface-selected);color:var(--color-primary-active)}.shell nav a.active:after{position:absolute;inset-block-end:.28rem;inline-size:.25rem;block-size:.25rem;border-radius:var(--radius-pill);background:var(--color-primary);content:""}.nav-icon{inline-size:1.35rem;block-size:1.35rem;stroke-width:1.85}.shell main{inline-size:min(100%,var(--content-max));padding:var(--space-5) var(--space-4) calc(7rem + env(safe-area-inset-bottom))}.shell main>section,.shell main>article{animation:page-enter .32s ease both}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card{border-color:#d9dfdad6;border-radius:var(--radius-lg);background:#fffefaeb;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-heading{align-items:flex-end}.page-heading>div{display:grid;gap:var(--space-1)}.page-heading>div>p:last-child{max-inline-size:44rem;color:var(--color-text-muted)}.page-heading .button-link{flex:0 0 auto}.eyebrow{color:var(--color-primary);font-weight:var(--font-weight-bold);letter-spacing:.075em;text-transform:uppercase}.status-message,.update-prompt{border-width:0;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.choice-option{min-block-size:3.5rem;align-items:center;border-color:var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.choice-option:has(input:checked){border-color:var(--color-primary);background:var(--color-surface-selected)}.detail-list div{border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3)}.detail-list div:last-child{border-block-end:0;padding-block-end:0}.details-card summary,details summary{min-block-size:var(--control-min-size);align-content:center;color:var(--color-primary-active)}.auth-page{position:relative;display:grid;inline-size:100%;min-block-size:100svh;grid-template-rows:minmax(15rem,34svh) auto;padding:0;background:var(--color-ink-surface)}.auth-page:before,.auth-page:after{position:absolute;border-radius:50%;content:"";pointer-events:none}.auth-page:before{inset-block-start:-7rem;inset-inline-end:-6rem;inline-size:18rem;block-size:18rem;background:var(--color-primary);opacity:.55}.auth-page:after{inset-block-start:10rem;inset-inline-start:-3rem;inline-size:9rem;block-size:9rem;background:var(--color-accent);opacity:.12}.auth-brand{position:relative;z-index:1;display:grid;align-content:space-between;padding:max(var(--space-5),env(safe-area-inset-top)) var(--space-5) var(--space-6);color:var(--color-on-ink)}.brand-lockup--auth{color:var(--color-on-ink);font-weight:var(--font-weight-bold)}.brand-lockup--auth .brand-mark{background:var(--color-accent);color:var(--color-ink-surface-strong)}.auth-brand__message{display:none}.auth-brand__trust{display:flex;max-inline-size:31rem;align-items:flex-start;gap:var(--space-2);color:#f8fbf6c2;font-size:var(--font-size-200)}.auth-brand__trust svg{flex:0 0 auto;margin-block-start:.1rem;color:var(--color-accent)}.auth-card{position:relative;z-index:2;display:grid;align-content:start;gap:var(--space-5);min-block-size:66svh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-8) var(--space-5) max(var(--space-8),calc(var(--space-6) + env(safe-area-inset-bottom)));background:var(--color-canvas);box-shadow:0 -20px 60px #0a2d282e}.auth-card__intro{display:grid;gap:var(--space-2)}.auth-card__intro>p:last-child{color:var(--color-text-muted)}.auth-card form{display:grid;gap:var(--space-4)}.auth-card form>button{margin-block-start:var(--space-1)}.auth-links{justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-200)}.dashboard-page{gap:var(--space-6)}.dashboard-context{border:0;padding:var(--space-4);background:var(--color-surface-subtle);box-shadow:none}.scope-controls{display:flex;flex-wrap:wrap;gap:var(--space-2)}.scope-controls legend{inline-size:100%;color:var(--color-text-muted);font-size:var(--font-size-200)}.scope-controls label{flex:1;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);background:var(--color-surface);cursor:pointer}.scope-controls label:has(input:checked){border-color:var(--color-primary);background:var(--color-surface-selected);color:var(--color-primary-active)}.dashboard-metrics{gap:var(--space-3)}.metric-card{display:grid;min-block-size:8rem;align-content:space-between;border:0;border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-surface-elevated);box-shadow:var(--shadow-sm)}.metric-card--primary{position:relative;overflow:hidden;min-block-size:12rem;grid-column:1 / -1;padding:var(--space-6);background:radial-gradient(circle at 90% 10%,rgb(217 232 167 / 30%),transparent 9rem),var(--color-ink-surface);box-shadow:var(--shadow-lg);color:var(--color-on-ink)}.metric-card--primary:after{position:absolute;inset-inline-end:-2.5rem;inset-block-end:-3.5rem;inline-size:10rem;block-size:10rem;border:1.75rem solid rgb(217 232 167 / 10%);border-radius:50%;content:""}.metric-card--primary span,.metric-card--primary small{color:#f8fbf6b8}.metric-card--primary strong{color:var(--color-on-ink);font-size:clamp(2rem,10vw,3.4rem);letter-spacing:-.055em}.metric-card strong{font-size:clamp(1.15rem,5vw,1.55rem);letter-spacing:-.03em}.dashboard-section{border:0;box-shadow:var(--shadow-sm)}.dashboard-next-action{position:relative;overflow:hidden;background:var(--color-accent-soft)}.dashboard-next-action:after{position:absolute;inset-inline-end:-1.75rem;inset-block-start:-2.25rem;inline-size:7rem;block-size:7rem;border-radius:50%;background:var(--color-accent);content:"";opacity:.45}.dashboard-next-action>*{position:relative;z-index:1}.dashboard-activity li,.dashboard-goals li,.saved-scenarios li,.savings-history__item{border-block-end-color:var(--color-border);padding-block:var(--space-2) var(--space-4)}.category-bars div,.comparison-bars div{block-size:var(--space-2)}.projection-panel{overflow:hidden;border:0;border-radius:var(--radius-xl);background:radial-gradient(circle at 100% 0,rgb(29 78 216 / 8%),transparent 25rem),var(--color-info-subtle);box-shadow:inset 0 0 0 1px #1d4ed81f}.transaction-overview,.transaction-form,.transaction-detail,.category-manager,.recurring-suggestions,.savings-form,.savings-detail,.savings-history,.savings-settings,.savings-members{inline-size:100%}.transaction-totals,.savings-overview{gap:var(--space-2)}.transaction-totals{overflow:visible}.transaction-totals>div{display:grid;min-inline-size:0;gap:var(--space-1);border-inline-end:1px solid var(--color-border);padding-inline:var(--space-2)}.transaction-totals>div:first-child{padding-inline-start:0}.transaction-totals>div:last-child{border-inline-end:0;padding-inline-end:0}.transaction-totals__item,.savings-overview__item{min-inline-size:0;border:0;border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface-subtle);scroll-snap-align:start}.transaction-row,.savings-bucket-card{min-block-size:4.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:none}.transaction-row:hover:not(:disabled),.savings-bucket-card:hover:not(:disabled){border-color:var(--color-primary-subtle);background:var(--color-surface-selected);box-shadow:none}.transaction-form__amount input,.savings-form__amount input{min-block-size:4.5rem;border-width:2px;font-size:clamp(1.75rem,8vw,2.5rem);font-weight:var(--font-weight-bold);letter-spacing:-.04em}.transaction-type-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.transaction-type-toggle label{justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface);cursor:pointer}.transaction-type-toggle label:has(input:checked){border-color:var(--color-primary);background:var(--color-surface-selected)}.savings-bucket-card__amount{align-content:center}.savings-progress progress,.dashboard-goals progress{overflow:hidden;border:0;border-radius:var(--radius-pill)}.savings-consequence{border:0;border-inline-start:4px solid var(--color-primary);background:var(--color-surface-subtle)}.member-list li,.invitation-list li,.checklist li,.category-manager__item,.recurring-suggestion,.sync-draft-list li{padding:var(--space-3) 0 var(--space-4)}.destructive-card{background:var(--color-danger-subtle);box-shadow:none}@media (width < 30rem){.page-heading{display:grid}.page-heading .button-link{inline-size:100%}.transaction-totals,.savings-overview{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width >= 48rem){.app-header{padding-inline:var(--space-6)}.header-action span{display:inline}.shell main{padding:var(--space-8) var(--space-6) calc(7rem + env(safe-area-inset-bottom))}.shell nav{inset-inline:50% auto;inline-size:min(38rem,calc(100% - var(--space-12)));transform:translate(-50%)}.shell nav a{font-size:var(--font-size-100)}.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card--primary{grid-column:1 / -1}.auth-card{padding-inline:max(var(--space-8),calc((100vw - 34rem)/2))}}@media (width >= 64rem){body{background:radial-gradient(circle at 100% 0,var(--color-primary-subtle),transparent 30rem),var(--color-canvas)}.shell{grid-template-columns:17rem minmax(0,1fr);grid-template-rows:5.5rem 1fr}.app-header{min-block-size:5.5rem;padding-inline:var(--space-6) var(--space-8)}.shell nav{position:sticky;inset:5.5rem auto auto 0;display:flex;inline-size:auto;min-block-size:calc(100vh - 5.5rem);flex-direction:column;gap:var(--space-2);border:0;border-inline-end:1px solid var(--color-border);border-radius:0;padding:var(--space-6) var(--space-4);background:#fffefa7a;box-shadow:none;transform:none}.shell nav:after{margin-block-start:auto;border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-ink-surface);color:var(--color-on-ink);content:"Спокойно о важном";font-size:var(--font-size-200);font-weight:var(--font-weight-semibold);text-align:center}.shell nav a{display:flex;min-block-size:3.25rem;flex-direction:row;justify-content:flex-start;gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--font-size-200)}.shell nav a.active:after{inset-inline-start:0;inset-block:auto;inline-size:.25rem;block-size:1.5rem}.shell main{inline-size:min(100%,calc(var(--content-max) + var(--space-12)));margin-inline:auto;padding:var(--space-8) var(--space-10) var(--space-12)}.dashboard-metrics{grid-template-columns:1.55fr repeat(3,minmax(0,1fr))}.metric-card--primary{grid-column:auto;grid-row:span 1;min-block-size:100%}.auth-page{grid-template-columns:minmax(28rem,1.1fr) minmax(28rem,.9fr);grid-template-rows:1fr;background:var(--color-canvas)}.auth-brand{min-block-size:100svh;align-content:space-between;padding:var(--space-10) clamp(var(--space-8),6vw,6rem);background:radial-gradient(circle at 80% 10%,rgb(217 232 167 / 18%),transparent 22rem),var(--color-ink-surface)}.auth-brand__message{display:grid;max-inline-size:34rem;gap:var(--space-4)}.auth-brand__message h2{color:var(--color-on-ink);font-size:clamp(2.75rem,5vw,4.75rem);letter-spacing:-.065em;line-height:.98}.auth-brand__message>p:last-child{max-inline-size:31rem;color:#f8fbf6b8;font-size:var(--font-size-400)}.auth-brand__icon{display:grid;inline-size:3.5rem;block-size:3.5rem;place-items:center;border-radius:var(--radius-lg);background:var(--color-accent);color:var(--color-ink-surface-strong)}.auth-card{min-block-size:100svh;align-content:center;border-radius:0;padding:var(--space-12) clamp(var(--space-8),7vw,7rem);background:var(--color-canvas);box-shadow:none}}.network-status{position:sticky;z-index:11;inset-block-start:0;display:grid;gap:var(--space-2);border-block-end:1px solid var(--color-warning);padding:var(--space-2) max(var(--space-4),env(safe-area-inset-right)) var(--space-2) max(var(--space-4),env(safe-area-inset-left));background:var(--color-warning-subtle);color:var(--color-warning);font-size:var(--font-size-200)}.network-status p{margin:0}.network-status a{color:inherit}.sync-center,.sync-draft-list{display:grid;gap:var(--space-4)}.sync-draft-list{margin:0;padding:0;list-style:none}.sync-draft-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3)}.sync-draft-list li:last-child{border-block-end:0;padding-block-end:0}.sync-draft-list span{display:grid;gap:var(--space-1)}.sync-draft-list small{color:var(--color-text-muted)}
