@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-standard-normal-Bf69Tn_J.woff2) format("woff2")}:root{font-family:DM Sans Variable,system-ui,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-optical-sizing:auto;color-scheme:light;--font-sans:"DM Sans Variable",system-ui,sans-serif;--font-display:"Playfair Display Variable",Georgia,serif;--font-money:"DM Mono",ui-monospace,monospace;--canvas:#f7f4ed;--surface:#fdfbf7;--surface-raised:#fffefa;--surface-grouped:#efe9de;--surface-strong:#39685d;--ink:#23343c;--muted:#58666a;--muted-soft:#65716e;--line:#e1dbcf;--line-strong:#918b7f;--action:#39685d;--action-hover:#2b5149;--safe:#315f50;--paid:#315f50;--attention:#785322;--shortfall:#963f36;--expected:#315e68;--projected:#56647a;--reserved:#70556d;--clay:#b65f48;--coral:#d79a82;--disabled:#69736f;--focus:#945034;--radius-control:10px;--radius-panel:18px;--radius-hero:22px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--shadow-soft:0 6px 22px rgb(51 48 36 / 4%);--shadow-dialog:0 24px 72px rgb(27 42 35 / 22%);--sidebar-width:248px;--content-max:1200px;--transition:.15s ease}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--canvas);scroll-padding-top:24px}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--focus);outline-offset:4px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px}::selection{color:var(--surface);background:var(--action)}a{color:var(--action)}h1,h2,h3{overflow-wrap:anywhere}.serif{font-family:var(--font-display)}.money{font-family:var(--font-money);font-weight:400;font-variant-numeric:tabular-nums lining-nums}.status{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;line-height:1.4}.status:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:currentColor}.status--actual{color:var(--ink)}.status--expected{color:var(--expected)}.status--planned,.status--attention{color:var(--attention)}.status--projected{color:var(--projected)}.status--reserved{color:var(--reserved)}.status--paid{color:var(--paid)}.status--shortfall,.text-shortfall{color:var(--shortfall)}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:20px;z-index:200;padding:14px 20px;background:var(--surface)}.skip-link:focus{top:10px}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}.sidebar{height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:28px 18px 20px;border-right:1px solid var(--line);background:#f1ede2}.brand-lockup{display:flex;align-items:center;gap:10px;text-decoration:none;min-height:48px;color:var(--ink)}.brand-lockup img{flex:none}.brand-lockup strong{display:block;font-family:var(--font-display);font-size:1.25rem;font-weight:600;letter-spacing:-.035em}.brand-lockup small{display:block;margin-top:5px;font-size:.67rem;color:var(--muted)}.nav-caption{margin:46px 12px 13px;font-size:.62rem;font-weight:700;letter-spacing:.15em;color:var(--muted)}.side-nav{display:flex;flex-direction:column;gap:6px}.nav-link{display:flex;align-items:center;gap:13px;min-height:48px;padding:12px 14px;border-radius:var(--radius-control);text-decoration:none;color:var(--muted);font-size:.86rem;font-weight:600;transition:background var(--transition)}.nav-link:hover{background:var(--surface)}.nav-link--active{background:var(--surface);color:var(--action);box-shadow:0 2px 6px #362e1a0a}.nav-link--active:after{content:"";margin-left:auto;width:6px;height:6px;background:var(--coral);border-radius:50%}.sidebar-note{margin:36px 13px 0;border-top:1px solid var(--line);padding-top:23px}.sidebar-note .eyebrow{font-size:.6rem}.sidebar-note p{color:var(--muted);font-size:.8rem;line-height:1.65}.sidebar-bottom{margin-top:auto;padding-top:28px}.secondary-nav{padding-top:14px;border-top:1px solid var(--line)}.privacy-badge{display:flex;align-items:center;gap:8px;margin:17px 12px 0;color:var(--muted);font-size:.7rem}.workspace{min-width:0}.topbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px clamp(24px,3vw,48px);border-bottom:1px solid var(--line);background:var(--surface)}.topbar-date{display:block;font-size:.62rem;letter-spacing:.16em;font-weight:600;color:var(--muted)}.topbar-context{display:block;margin-top:4px;font-family:var(--font-display);font-size:1.35rem}.topbar-actions{display:flex;align-items:center;gap:18px}.local-status{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--muted)}.local-status>span{width:6px;height:6px;border-radius:50%;background:var(--safe)}.topbar .mobile-tools,.mobile-nav,.mobile-add{display:none}.demo-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:4px clamp(24px,3vw,48px);color:var(--muted);font-size:.7rem;border-bottom:1px solid var(--line);background:#efe7db}.demo-banner strong{font-weight:600}.demo-banner a{margin-left:auto;display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}.global-alert{display:flex;align-items:center;gap:12px;padding:16px 32px}.main-content{padding:36px clamp(24px,3vw,48px) 40px}.page{display:flex;flex-direction:column;gap:var(--space-5);max-width:var(--content-max);margin:0 auto;min-width:0}.app-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1296px;margin:auto;padding:0 48px 24px;color:var(--muted);font-size:.7rem}.app-footer a{display:flex;align-items:center;min-height:44px}.eyebrow{margin:0;color:var(--action);font-size:.65rem;letter-spacing:.17em;font-weight:700;line-height:1.5;text-transform:uppercase}.page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5)}.page-header h1{font-family:var(--font-display);font-size:clamp(2.3rem,3vw,3rem);font-weight:500;letter-spacing:-.04em;line-height:1.1;margin:10px 0 12px;color:var(--ink)}.page-intro{max-width:680px;margin:0;color:var(--muted);font-size:.9rem;line-height:1.6}.page-header-action{flex:none}.panel{padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);min-width:0}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:20px}.panel-header h2{font-size:1rem;line-height:1.4;font-weight:650;margin:0;color:var(--ink)}.panel-header p{margin:6px 0 0;font-size:.78rem;line-height:1.55;color:var(--muted);max-width:600px}.panel-action{flex:none}.stacked-panels{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.body-copy{display:flex;gap:10px;margin:12px 0;color:var(--muted);font-size:.83rem;line-height:1.65}.body-copy svg,.plain-list svg,.reason-list svg{flex:none;margin-top:3px}.plain-list,.reason-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:15px}.plain-list li,.reason-list li{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.84rem;line-height:1.6}.quiet-empty,.subtle-footnote{color:var(--muted);font-size:.8rem;line-height:1.6}.quiet-empty{display:flex;gap:8px}.empty-state{text-align:center;padding:32px 18px}.empty-mark{color:var(--coral);font-family:var(--font-display);font-size:2rem}.empty-state h3{margin:10px 0;font-family:var(--font-display);font-weight:500;font-size:1.35rem}.empty-state p{max-width:430px;margin:0 auto 16px;color:var(--muted);font-size:.85rem;line-height:1.6}.button,.text-button,.text-link,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;text-decoration:none;font-size:.83rem;font-weight:600;border-radius:var(--radius-control);cursor:pointer}.button{padding:12px 18px;border:1px solid transparent;transition:background var(--transition);line-height:1.4}.button--primary{background:var(--action);color:var(--surface)}.button--primary:hover{background:var(--action-hover)}.button--secondary{background:var(--surface-grouped);color:var(--ink);border-color:var(--line)}.button--secondary:hover{background:#e5ded1}.button--quiet{background:transparent;border-color:var(--line);color:var(--action)}.button--danger{background:#f7e9e3;border-color:#dab6ac;color:var(--shortfall)}.button--block{width:100%}.button--small{padding:10px 13px;font-size:.78rem}.button:disabled,.choice-button:disabled{opacity:.55;cursor:not-allowed}.text-button,.text-link{border:0;background:transparent;color:var(--action);padding:8px 4px;text-align:left}.text-link:hover,.text-button:hover{text-decoration:underline;text-underline-offset:4px}.icon-button{padding:10px;width:44px;height:44px;border:1px solid var(--line);color:var(--action);background:var(--surface);flex:none}.form-stack{display:flex;flex-direction:column;gap:19px}.field{display:flex;flex-direction:column;gap:8px;min-width:0;color:var(--ink)}.field>span{font-size:.82rem;font-weight:600;line-height:1.5}.field span small{font-weight:400;color:var(--muted);margin-left:4px}.field>small,.form-help{color:var(--muted);font-size:.76rem;line-height:1.6}.form-help{margin:8px 0}input,select,textarea{width:100%;min-width:0;min-height:48px;padding:11px 12px;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--ink);font-size:.9rem}input::placeholder{color:var(--muted)}input[type=date]{min-inline-size:0}input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--action);flex:none}input[type=color]{width:100px;padding:4px}.currency-input{font-family:var(--font-money);font-size:2rem;min-height:72px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.field--small{max-width:160px}.checkbox-field{display:flex;align-items:center;gap:10px;min-height:44px;color:var(--muted);font-size:.85rem;cursor:pointer}.input-prefix{display:flex;align-items:center;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-raised)}.input-prefix>span{padding-left:14px;color:var(--muted)}.input-prefix input{border:0;background:transparent}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:8px}.form-actions--wrap{flex-wrap:wrap}.choice-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;background:var(--surface-grouped);border-radius:12px}.choice-button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 5px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-size:.8rem}.choice-button--active{background:var(--surface);color:var(--action);box-shadow:var(--shadow-soft)}.inline-error,.inline-note,.success-inline,.success-mark{display:flex;align-items:flex-start;gap:10px;padding:14px;border-radius:10px;line-height:1.6;font-size:.82rem}.inline-error{background:#f8e8e3;color:var(--shortfall);border:1px solid #d6b1a8}.inline-note{background:#f4ecdd;color:var(--attention)}.success-inline,.success-mark{background:#e9f0e7;color:var(--safe)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:#1c2b266b}.dialog{width:min(100%,540px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-dialog)}.dialog--wide{width:min(100%,700px)}.dialog-header{display:flex;align-items:flex-start;gap:var(--space-4);justify-content:space-between;margin-bottom:24px}.dialog-header h2{margin:0;font-family:var(--font-display);font-weight:500;font-size:1.8rem;letter-spacing:-.035em}.dialog-header p{margin:8px 0 0;color:var(--muted);font-size:.83rem;line-height:1.6}.dialog-content{min-width:0}.dialog-footer{margin-top:24px}.confirmation-summary{display:flex;flex-direction:column;gap:10px}.confirmation-summary>p{color:var(--muted);font-size:.85rem;line-height:1.6}.tools-nav{display:flex;flex-direction:column;gap:8px}.today-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px}.decision-hero{padding:var(--space-6);border-radius:var(--radius-hero);background:var(--surface-strong);color:var(--surface);display:flex;flex-direction:column;justify-content:center;min-height:338px}.decision-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.68rem;letter-spacing:.18em;font-weight:600;color:#e2ece5}.decision-value{margin:25px 0 10px;font-size:clamp(2.7rem,4.5vw,4.4rem);line-height:1.1;letter-spacing:-.05em;overflow-wrap:anywhere}.decision-horizon{margin:0;color:#e4eee7;font-size:.84rem;line-height:1.6}.decision-horizon strong{font-weight:500;color:var(--surface)}.decision-explainer{margin:14px 0 0;font-size:.84rem;line-height:1.6;color:#e1ebe4;max-width:560px}.decision-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:27px}.button--hero{background:var(--surface);color:var(--action)}.hero-receipt-link{display:inline-flex;align-items:center;gap:8px;min-width:44px;min-height:44px;color:var(--surface);text-decoration:underline;text-underline-offset:4px;font-size:.78rem}.decision-hero--shortfall{background:#764b43}.decision-hero--incomplete,.decision-hero--watch{background:#5c6355}.today-context{padding:8px 0 0;display:flex;flex-direction:column;gap:18px}.today-context>.eyebrow{color:var(--muted);font-size:.62rem}.mini-metric{display:flex;flex-direction:column;gap:7px;min-width:0}.mini-metric>span{color:var(--muted);font-size:.8rem}.mini-metric>strong{color:var(--ink);font-size:1.8rem;letter-spacing:-.04em;overflow-wrap:anywhere}.mini-metric>small{color:var(--muted);font-size:.72rem;line-height:1.5}.today-context>.mini-metric{padding-bottom:17px;border-bottom:1px solid var(--line)}.context-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.context-pair .mini-metric>strong{font-size:1.08rem}.context-pair .mini-metric>small{font-size:.68rem}.receipt{border-bottom:1px solid var(--line);scroll-margin-top:24px}.receipt summary{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:0 4px 14px;cursor:pointer;font-size:.82rem;color:var(--action);font-weight:600}.receipt summary:before{content:"+";font-size:1.2rem;margin-right:5px}.receipt[open] summary:before{content:"−"}.receipt summary>span{margin-left:auto;font-weight:400;font-size:.72rem;color:var(--muted)}.money-breakdown{max-width:720px;padding:8px 0 20px}.money-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.85rem}.money-row>div{min-width:0}.money-row small{display:block;color:var(--muted);margin-top:5px;font-size:.73rem;line-height:1.5}.money-row>strong{flex:none;font-size:.92rem}.money-row--safe>strong{color:var(--safe)}.money-row--attention>strong{color:var(--attention)}.money-row--reserved>strong{color:var(--reserved)}.money-row--bold{border-bottom:0;padding-top:18px;font-weight:600}.today-grid--lower{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.paycheck-context{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 0 16px;border-bottom:1px solid var(--line)}.paycheck-context>strong{font-size:1rem}.paycheck-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:.75rem;color:var(--muted)}.paycheck-footer>span>strong{display:block;color:var(--ink);margin-top:5px;font-weight:500}.attention-card{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;background:#f2e6d7;border:1px solid #dccaaf;border-radius:12px;color:var(--attention)}.attention-card>svg{flex:none;margin-top:3px}.attention-copy{flex:1;min-width:0}.attention-copy strong{font-size:.85rem}.attention-copy p{font-size:.8rem;line-height:1.6;margin:5px 0 0}.attention-card .text-link{font-size:.75rem;flex:none}.money-check-entry{background:var(--surface-grouped);padding:var(--space-5);border-radius:18px}.money-check-entry h2{font-family:var(--font-display);font-weight:500;font-size:1.5rem;letter-spacing:-.025em;margin:12px 0 10px}.money-check-entry p{font-size:.82rem;color:var(--muted);line-height:1.6;margin:0 0 16px}.money-check-entry .button{background:var(--surface);border-color:transparent}.runway-list{list-style:none;margin:0;padding:0}.runway-item{position:relative;display:grid;grid-template-columns:14px 62px minmax(0,1fr) auto;align-items:start;gap:12px;padding:15px 0}.runway-item:not(:last-child):after{content:"";position:absolute;width:1px;background:var(--line-strong);left:6px;top:29px;bottom:-17px}.runway-rail{display:flex;justify-content:center;margin-top:4px;z-index:1}.runway-rail>span{width:9px;height:9px;background:var(--coral);border-radius:50%;box-shadow:0 0 0 4px var(--surface)}.runway-item--paycheck .runway-rail>span,.runway-item--today .runway-rail>span{background:var(--action)}.runway-date{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:.75rem}.runway-date>span{font-size:.65rem}.runway-main strong{font-size:.83rem;font-weight:600}.runway-main p{color:var(--muted);margin:5px 0 0;font-size:.73rem;line-height:1.55}.runway-amount{padding-top:2px;font-size:.8rem}.period-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);align-items:start}.period-card--current{grid-column:1/-1;border-top:4px solid var(--action);padding-top:23px}.period-card--current .period-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.period-date{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:5px 0 18px;font-size:.8rem;color:var(--muted)}.period-date>strong{color:var(--ink);font-weight:600}.third-check-note{margin-left:auto;color:var(--expected);font-size:.72rem}.period-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-bottom:22px;border-bottom:1px solid var(--line)}.period-metrics .money-row{flex-direction:column;align-items:flex-start;border:0;padding:0;gap:10px}.period-metrics .money-row small{font-size:.68rem}.period-metrics .money-row>strong{font-size:1.25rem;overflow-wrap:anywhere}.responsibility-list h3{font-size:.8rem;font-weight:600;color:var(--muted);margin:21px 0 5px}.responsibility-list ol,.assignment-list{list-style:none;margin:0;padding:0}.responsibility-list li,.assignment-list li{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:15px 0;border-bottom:1px solid var(--line)}.responsibility-list li>div,.assignment-list li>div{display:flex;flex-direction:column;gap:6px;min-width:0}.responsibility-list li strong,.assignment-list li strong{font-size:.84rem}.responsibility-list li span,.assignment-list li span{color:var(--muted);font-size:.73rem;line-height:1.6}.responsibility-list li>strong,.assignment-list li>strong{flex:none;font-size:.83rem}.timing-warning{display:flex;gap:5px;align-items:center;color:var(--attention)}.period-card>.button{margin-top:16px}.plan-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line)}.plan-tab{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 8px 15px;min-height:48px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-size:.88rem;font-weight:600}.plan-tab--active{color:var(--action);border-bottom-color:var(--action)}.plan-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--space-5);align-items:start}.plan-occurrences{list-style:none;padding:0;margin:0}.occurrence-card{padding:20px 0;border-bottom:1px solid var(--line)}.occurrence-card:first-child{padding-top:0}.occurrence-card:last-child{border-bottom:0;padding-bottom:0}.occurrence-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.occurrence-top>div{display:flex;flex-direction:column;gap:6px;min-width:0}.occurrence-top strong{font-size:.9rem;font-weight:600}.occurrence-top span{font-size:.76rem;color:var(--muted)}.occurrence-top .occurrence-amount{color:var(--ink);font-size:.95rem;flex:none}.occurrence-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.assignment-select{display:flex;align-items:center;gap:10px;min-width:0}.assignment-select label{color:var(--muted);font-size:.7rem}.assignment-select select{max-width:180px;font-size:.75rem}.occurrence-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}.paid-note{display:block;color:var(--safe);font-size:.75rem;margin-top:12px}.definition-list,.settings-list,.category-list{list-style:none;padding:0;margin:0}.definition-list li,.settings-list li{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.definition-list li>div,.settings-list li>div:nth-child(2){display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.definition-list strong,.settings-list strong{font-size:.9rem;overflow-wrap:anywhere}.definition-list span,.settings-list span{color:var(--muted);font-size:.77rem;line-height:1.5}.plan-explainer{background:transparent;border:0;box-shadow:none;padding:12px 0;border-top:2px solid var(--coral);border-radius:0}.fund-list,.debt-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fund-list:has(>.fund-card:only-child),.debt-list:has(>.debt-card:only-child){grid-template-columns:1fr}.fund-card:only-child,.debt-card:only-child{border:0;padding:0;background:transparent}.fund-card,.debt-card{min-width:0;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface-raised)}.fund-card header,.debt-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.fund-card h3,.debt-card h3{font-family:var(--font-display);font-size:1.4rem;font-weight:500;letter-spacing:-.025em;margin:8px 0 0}.fund-card .eyebrow,.debt-card .eyebrow{font-size:.58rem}.fund-values{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:24px 0 14px}.fund-values strong{font-size:1.6rem;color:var(--safe)}.fund-values>span{color:var(--muted);font-size:.75rem}.progress-track{height:6px;background:var(--surface-grouped);border-radius:6px;overflow:hidden}.progress-track>span{display:block;height:100%;background:var(--action)}.fund-note{color:var(--muted);font-size:.74rem;line-height:1.7;margin:13px 0 0}.debt-balance{display:flex;flex-direction:column;gap:8px;padding:22px 0 16px;border-bottom:1px solid var(--line)}.debt-balance span{color:var(--muted);font-size:.75rem}.debt-balance strong{font-size:1.8rem;letter-spacing:-.04em}.debt-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:16px 0;font-size:.76rem;color:var(--muted)}.debt-meta strong{color:var(--ink)}.forecast-status{display:flex;align-items:flex-start;gap:18px;padding:26px;border-left:4px solid var(--safe);background:#eaf0e7;border-radius:0 16px 16px 0}.forecast-status>svg{flex:none;margin-top:3px;color:var(--safe)}.forecast-status h2{font-family:var(--font-display);font-weight:500;font-size:1.7rem;letter-spacing:-.025em;margin:0 0 10px}.forecast-status p{font-size:.85rem;line-height:1.65;color:var(--muted);margin:0}.forecast-status--timing-shortfall,.forecast-status--structural-shortfall{background:#f4e6df;border-color:var(--shortfall)}.forecast-status--incomplete{background:#f3ebdd;border-color:var(--attention)}.forecast-lowpoint{padding-top:16px}.forecast-lowpoint strong{display:inline-block;font-size:1.3rem;color:var(--ink)}.forecast-periods{display:flex;flex-direction:column;gap:var(--space-5)}.forecast-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;padding-bottom:22px}.forecast-summary>div{display:flex;flex-direction:column;gap:10px;min-width:0}.forecast-summary span{color:var(--muted);font-size:.73rem;line-height:1.5}.forecast-summary strong{font-size:1.12rem;overflow-wrap:anywhere}.forecast-end{border-left:1px solid var(--line);padding-left:18px}.forecast-events{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.forecast-events li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.forecast-kind{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--clay);background:#f3e6dc}.forecast-kind--paycheck{background:#e9eee7;color:var(--safe)}.forecast-events li>div{display:flex;flex-direction:column;gap:6px;min-width:0}.forecast-events strong{font-size:.88rem}.forecast-events li>div>span{color:var(--muted);font-size:.75rem;line-height:1.6}.activity-controls{display:flex;gap:var(--space-4);padding-bottom:24px;border-bottom:1px solid var(--line)}.search-field,.filter-field{display:flex;align-items:center;gap:10px;color:var(--muted);min-width:0}.search-field{flex:1}.search-field svg,.filter-field svg{flex:none}.filter-field{width:190px}.activity-list{list-style:none;margin:0;padding:0}.activity-row{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.activity-row:last-child{border-bottom:0}.activity-icon{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--muted);background:var(--surface-grouped)}.activity-icon--income{color:var(--safe);background:#e8eee4}.activity-icon--expense{color:var(--clay);background:#f4e6dd}.activity-icon--transfer{color:var(--expected)}.activity-icon--adjustment{color:var(--reserved)}.activity-description{min-width:0;flex:1;display:flex;flex-direction:column;gap:5px}.activity-description strong{font-size:.86rem;line-height:1.4;font-weight:600;overflow-wrap:anywhere}.activity-description span,.activity-description time{color:var(--muted);font-size:.72rem;line-height:1.5;overflow-wrap:anywhere}.activity-amount{font-size:.87rem;flex:none}.activity-amount--income{color:var(--safe)}.activity-amount--expense{color:var(--ink)}.today-aside .activity-row{gap:10px}.today-aside .activity-icon{width:30px;height:30px}.today-aside .activity-description strong{font-size:.78rem}.today-aside .activity-description span{display:none}.today-aside .activity-amount{font-size:.78rem}.money-check-grid,.checkin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:start}.tracked-balance-box{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:var(--space-5);border-radius:14px;color:var(--safe);background:#edf1e8}.tracked-balance-box>div{display:flex;flex-direction:column;gap:10px}.tracked-balance-box span{font-size:.77rem;color:var(--muted)}.tracked-balance-box strong{font-size:2rem;letter-spacing:-.04em}.difference-preview{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:18px;background:#f4e8dd;color:var(--attention);border-radius:10px;font-size:.78rem}.difference-preview strong{font-size:1rem}.difference-preview--zero{background:#eaf0e7;color:var(--safe)}.what-check-panel{background:var(--surface-grouped);border-color:transparent;box-shadow:none}.section-heading-icon{display:none}.received-record{border-left:3px solid var(--safe);padding:20px;background:#eaf0e7;border-radius:0 12px 12px 0}.received-record h3{font-family:var(--font-display);font-size:1.5rem;font-weight:500}.received-record p{color:var(--muted);font-size:.85rem;line-height:1.6}.settings-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);align-items:start}.settings-money,.settings-recovery,.settings-privacy,.reset-panel{grid-column:1/-1}.settings-money .form-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.settings-money .form-stack>.field-grid{align-content:start}.settings-money .form-stack>.inline-error{grid-column:1/-1}.settings-money .form-stack>.button{grid-column:1/-1;justify-self:start;align-self:start}.settings-recovery{border-top:4px solid var(--action)}.settings-recovery .panel-header h2{font-family:var(--font-display);font-size:1.7rem;font-weight:500}.settings-privacy{background:transparent;box-shadow:none;border:0;padding:8px 0}.settings-privacy .plain-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px}.settings-row-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface-grouped);color:var(--action);flex:none}.primary-tag{display:inline-block;padding:3px 7px;margin-left:7px;border-radius:5px;background:#e9eee5;color:var(--safe);font-size:.65rem}.category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.category-list li{display:flex;align-items:center;gap:8px;padding:16px 0;border-bottom:1px solid var(--line);font-size:.83rem}.category-dot{width:8px;height:8px;border-radius:50%;flex:none}.category-kind{margin-left:auto;font-size:.66rem;color:var(--muted)}.backup-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:20px}.file-drop{position:relative;display:flex;align-items:center;gap:14px;padding:22px;min-height:88px;border:1px dashed var(--line-strong);border-radius:12px;background:var(--surface-grouped);cursor:pointer}.file-drop>span{display:flex;flex-direction:column;gap:8px}.file-drop strong{font-size:.9rem}.file-drop small{color:var(--muted);font-size:.76rem;line-height:1.6}.file-drop input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-drop:focus-within{outline:2px solid var(--focus);outline-offset:4px}.backup-warning{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:.78rem;color:var(--attention);line-height:1.6}.backup-warning svg{flex:none}.product-meta{display:flex;align-items:center;gap:var(--space-4);margin-top:24px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem}.reset-panel{background:#f4ece5;box-shadow:none}.reset-panel .button{margin-top:14px}.restore-preview dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.restore-preview dl>div{padding:14px;background:var(--surface-grouped);border-radius:10px}.restore-preview dt{color:var(--muted);font-size:.73rem}.restore-preview dd{margin:7px 0 0;font-size:.88rem;overflow-wrap:anywhere}.loading-screen{min-height:100vh;display:flex;flex-direction:column;gap:20px;align-items:center;justify-content:center;color:var(--muted)}.recovery-screen{max-width:600px;margin:12vh auto;padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:18px}.recovery-screen h1{font-family:var(--font-display);font-weight:500;font-size:2rem}.recovery-screen p{color:var(--muted);line-height:1.7}.setup-page{min-height:100vh;display:flex;flex-direction:column;padding:32px clamp(20px,5vw,80px);background:var(--canvas)}.setup-brand{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:1.3rem}.setup-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,7vw,110px);width:min(1100px,100%);margin:auto;flex:1;align-items:center;padding:56px 0}.setup-story h1{font-family:var(--font-display);font-size:clamp(2.5rem,4.8vw,4.3rem);letter-spacing:-.055em;line-height:1.08;color:var(--ink);font-weight:500;margin:22px 0}.setup-story>p:not(.eyebrow){color:var(--muted);line-height:1.8;font-size:1rem}.privacy-note{display:flex;align-items:flex-start;gap:12px;padding:20px 0;margin:24px 0 0;border-top:1px solid var(--line);color:var(--muted);line-height:1.7;font-size:.85rem}.privacy-note svg{flex:none;margin-top:4px}.setup-sample-link{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:16px}.setup-sample-link>span{color:var(--muted);font-size:.73rem;line-height:1.6}.setup-card{padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-soft)}.setup-card h2{font-family:var(--font-display);font-size:1.85rem;font-weight:500;letter-spacing:-.03em;margin:12px 0}.setup-card form{display:flex;flex-direction:column;gap:18px}.step-row{display:flex;align-items:center;gap:10px;margin-bottom:27px}.step-dot{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line-strong);border-radius:50%;color:var(--muted);font-size:.72rem}.step-dot--current{background:var(--action);color:var(--surface);border-color:var(--action)}.step-dot--done{color:var(--safe);background:#e6eee3}.step-line{width:32px;height:1px;background:var(--line-strong)}.step-caption{font-size:.73rem;color:var(--muted);margin-left:8px}.setup-footer{text-align:center;font-size:.73rem;color:var(--muted);line-height:1.6}@media (max-width:1180px){:root{--sidebar-width:224px}.brand-lockup strong{font-size:1.13rem}.main-content{padding-left:28px;padding-right:28px}.today-grid,.today-grid--lower{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:22px}.decision-hero{padding:28px}.decision-value{font-size:3.3rem}.plan-grid{grid-template-columns:minmax(0,1fr) 220px}.fund-list,.debt-list{grid-template-columns:1fr}.forecast-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.period-card--current .period-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.today-aside .activity-icon{display:none}}@media (max-width:900px){.app-shell{display:block}.sidebar{display:none}.topbar .mobile-tools{display:inline-flex}.quick-add-trigger{display:none}.mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;z-index:40;bottom:0;left:0;right:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);gap:6px}.mobile-nav-link{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:54px;min-width:0;border-radius:10px;text-decoration:none;color:var(--muted);font-size:.67rem;font-weight:600}.mobile-nav-link:nth-child(3){grid-column:4}.mobile-nav-link:nth-child(4){grid-column:5}.mobile-nav-link--active{background:#eaf0e6;color:var(--action)}.mobile-add{display:grid;place-items:center;position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:calc(50% - 24px);width:48px;height:48px;z-index:45;color:var(--surface);background:var(--action);border:1px solid var(--surface);border-radius:14px;box-shadow:0 4px 15px #21372d2e}.main-content{padding-top:28px}.app-footer{padding:0 28px calc(150px + env(safe-area-inset-bottom))}.today-aside .activity-icon{display:grid}.plan-grid{grid-template-columns:minmax(0,1fr) 220px}.settings-money .form-stack{display:flex}}@media (max-width:680px){.topbar{min-height:72px;padding:12px 18px}.topbar-date{font-size:.56rem;letter-spacing:.11em}.topbar-context{font-size:1.2rem}.topbar-actions{gap:9px}.local-status{font-size:.65rem}.demo-banner{padding:2px 18px;gap:8px;font-size:.66rem}.demo-banner>span{display:none}.main-content{padding:26px 18px 28px}.page{gap:20px}.page-header{flex-direction:column;align-items:flex-start;gap:14px}.page-header h1{font-size:2.35rem;margin:9px 0 12px}.page-intro{font-size:.83rem}.page-header-action,.page-header-action .button{width:100%}.today-grid,.today-grid--lower{display:flex;flex-direction:column;gap:20px}.decision-hero{padding:26px 24px;min-height:0}.decision-value{font-size:clamp(2.6rem,10vw,3.6rem);margin:24px 0 12px}.decision-actions{gap:8px;margin-top:20px}.decision-actions .button{width:100%}.hero-receipt-link{width:100%;justify-content:center}.decision-horizon,.decision-explainer{font-size:.8rem}.today-context{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0 2px;width:100%}.today-context>.eyebrow{grid-column:1/-1}.today-context>.mini-metric{padding-bottom:15px}.mini-metric>strong{font-size:1.3rem}.mini-metric>span{font-size:.75rem}.mini-metric>small{font-size:.7rem}.context-pair{grid-column:1/-1;gap:18px}.context-pair .mini-metric>strong{font-size:1.2rem}.receipt summary{font-size:.78rem}.receipt summary>span{display:none}.today-grid--lower>.stacked-panels{width:100%}.today-aside{display:contents}.panel{padding:20px;border-radius:16px}.panel-header{gap:12px;margin-bottom:18px}.panel-header h2{font-size:.95rem}.panel-header p{font-size:.75rem}.panel-action .text-link{font-size:.72rem}.panel-header:has(.button){flex-wrap:wrap}.attention-card{flex-wrap:wrap;padding:18px}.attention-card .text-link{margin-left:30px}.money-check-entry{padding:22px;width:100%}.paycheck-context,.paycheck-footer{flex-wrap:wrap}.runway-item{grid-template-columns:12px 54px minmax(0,1fr);gap:10px;padding:14px 0}.runway-item:not(:last-child):after{left:5px}.runway-amount{grid-column:3;padding:0}.runway-date,.runway-main p{font-size:.71rem}.period-stack,.money-check-grid,.checkin-grid,.plan-grid,.settings-layout{display:flex;flex-direction:column;gap:20px}.period-card,.money-check-grid>.panel,.checkin-grid>.panel,.settings-layout>.panel,.plan-grid>.panel,.plan-grid>.stacked-panels,.money-check-grid>.stacked-panels,.checkin-grid>.stacked-panels{width:100%}.period-metrics,.period-card--current .period-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.period-metrics .money-row{font-size:.77rem}.period-metrics .money-row>strong{font-size:1.1rem}.responsibility-list li,.assignment-list li{gap:10px;align-items:flex-start}.responsibility-list li strong,.assignment-list li strong{font-size:.78rem}.responsibility-list li span,.assignment-list li span{font-size:.71rem}.plan-tabs{gap:4px;justify-content:space-between}.plan-tab{flex:1;font-size:.8rem;padding:10px 4px 14px}.plan-grid .plan-explainer{padding:16px 2px}.fund-list,.debt-list{grid-template-columns:1fr}.occurrence-top .occurrence-amount{font-size:.85rem}.assignment-select{justify-content:space-between;width:100%}.assignment-select select{max-width:200px}.forecast-status{padding:22px 18px;gap:12px}.forecast-status h2{font-size:1.45rem}.forecast-status p{font-size:.8rem}.forecast-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.forecast-summary strong{font-size:1rem}.forecast-end{border:0;padding:0}.forecast-events li{gap:10px;grid-template-columns:28px minmax(0,1fr)}.forecast-events li>strong{grid-column:2;font-size:.85rem}.forecast-events li>div>span{font-size:.72rem}.forecast-kind{width:28px;height:28px}.activity-controls{flex-direction:column}.filter-field{width:100%}.activity-row{gap:10px}.activity-icon{width:30px;height:30px}.activity-description strong{font-size:.8rem}.activity-description span,.activity-description time{font-size:.69rem}.activity-amount{font-size:.78rem}.settings-privacy .plain-list{display:flex}.category-list{grid-template-columns:1fr}.backup-actions .button{width:100%}.tracked-balance-box{padding:20px}.tracked-balance-box strong{font-size:1.7rem}.app-footer{padding-left:18px;padding-right:18px;flex-direction:column;align-items:flex-start;gap:0}.dialog-backdrop{padding:0;align-items:flex-end}.dialog,.dialog--wide{width:100%;max-height:calc(100dvh - 20px);padding:24px 20px calc(24px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.dialog-header{gap:12px}.dialog-header h2{font-size:1.6rem}.dialog-header p{font-size:.79rem}.form-actions{flex-wrap:wrap}.form-actions .button{flex:1}.choice-button{font-size:.75rem;gap:4px}.setup-page{padding:24px 18px}.setup-layout{display:flex;flex-direction:column;gap:28px;padding:36px 0}.setup-story h1{font-size:2.7rem;margin:16px 0}.setup-story>p:not(.eyebrow){font-size:.89rem}.setup-card{width:100%;padding:24px 20px}.setup-card h2{font-size:1.6rem}.setup-footer{font-size:.68rem}.recovery-screen{margin:8vh 16px;padding:var(--space-5)}}@media (max-width:390px){.main-content{padding-left:14px;padding-right:14px}.topbar{padding:12px 14px}.local-status{font-size:.59rem}.demo-banner{padding-left:14px;padding-right:14px;font-size:.61rem}.panel{padding:18px 16px}.decision-hero{padding:24px 20px}.decision-value{font-size:clamp(2.3rem,10vw,3rem)}.mini-metric>strong{font-size:1.17rem}.field-grid{grid-template-columns:1fr}.plan-tab{gap:5px;font-size:.72rem}.plan-tab svg{width:15px}.activity-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px}.activity-amount{grid-column:2;padding-top:3px}.today-aside .activity-icon{width:28px;height:28px}.money-row>strong{font-size:.81rem}.money-row{font-size:.77rem}.paycheck-footer .text-link{padding-left:0}.choice-button svg{width:14px}.dialog{padding-left:16px;padding-right:16px}.product-meta{flex-wrap:wrap;gap:10px}.fund-values strong{font-size:1.4rem}.occurrence-top{gap:10px}.assignment-select select{max-width:170px}.occurrence-actions{gap:8px}.period-metrics .money-row>strong{font-size:.95rem}.setup-page{padding-left:14px;padding-right:14px}.setup-card{padding:22px 16px}.setup-story h1{font-size:2.4rem}}.scenario-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.scenario-metrics div{padding:16px 0;border-bottom:1px solid var(--line)}.scenario-metrics dd{margin:6px 0 0;font-size:1.6rem;overflow-wrap:anywhere}.buyer-help summary{min-height:48px;display:flex;align-items:center;cursor:pointer}.buyer-help p{padding-top:12px}.pwa-status{background:var(--surface-grouped);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}@media (max-width:680px){.scenario-comparison{grid-template-columns:1fr}.pwa-status{padding:12px 16px;flex-wrap:wrap}}.app-root{display:contents}:root{--font-sans:"DM Sans Variable",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:var(--font-sans);--font-money:var(--font-sans);--midnight:#171A2D;--dark-layer:#1F2340;--iris:#6B5CF6;--violet:#4E45D5;--deep-iris:#2A2F67;--lavender:#A9B1FF;--soft-iris:#EEF0FF;--success-accent:#3DB58B;--warning-accent:#E6A657;--danger-accent:#D15E73;--canvas:#E9EDF7;--canvas-deep:#DFE5F2;--surface:#fff;--surface-raised:#fff;--surface-grouped:#EEF0FF;--surface-strong:var(--deep-iris);--ink:#171B2A;--muted:#5F6678;--muted-soft:#5F6678;--line:#D6DCEA;--line-strong:#9099B0;--action:var(--violet);--action-hover:#3931AE;--focus:var(--violet);--safe:#187357;--paid:#187357;--attention:#8A5417;--shortfall:#A3334C;--expected:#4E45D5;--projected:#5F6678;--reserved:#5A49A2;--clay:#5A49A2;--coral:var(--lavender);--radius-control:12px;--radius-panel:24px;--radius-hero:26px;--shadow-soft:0 12px 28px rgb(31 35 64 / 7%);--shadow-dialog:0 28px 80px rgb(23 26 45 / 28%);--glass-blur:16px;--glass-light:rgb(255 255 255 / 65%);--glass-dark:rgb(255 255 255 / 9%);--glass-border:rgb(255 255 255 / 27%);--sidebar-width:272px;--content-max:1200px;--hero-gradient:linear-gradient(110deg,#6B5CF6 0%,#4E45D5 56%,#2A2F67 100%)}body{background:radial-gradient(ellipse at 72% 0%,rgb(169 177 255 / 22%),transparent 45%),var(--canvas)}.money{font-weight:700;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.025em}.sidebar{color:#fff;background:radial-gradient(ellipse at 5% 0%,rgb(107 92 246 / 20%),transparent 38%),var(--midnight);padding:24px 20px 18px;border:0;overflow-y:auto;scrollbar-width:thin}.brand-lockup{color:#fff}.brand-lockup strong{font-size:1rem;font-weight:750;letter-spacing:0}.brand-lockup small{color:#b8bed8;font-size:.7rem}.brand-lockup img{border:1px solid var(--glass-border);border-radius:12px}.nav-caption{color:#b0b8d4;margin:30px 12px 12px;letter-spacing:.13em}.nav-caption--planning{margin-top:24px;padding-top:22px;border-top:1px solid rgb(255 255 255 / 10%)}.sidebar .nav-link{color:#c7cde1;min-height:46px;border:1px solid transparent;padding:10px 12px;gap:12px;font-weight:550}.sidebar .nav-link:hover{color:#fff;background:#ffffff0f}.sidebar .nav-link--active{color:#fff;background:#ffffff1c;border-color:var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:inset 0 1px #ffffff14}.nav-link--active:after{display:none}.sidebar .nav-link--active svg{color:var(--lavender)}.sidebar-bottom{display:flex;flex-direction:column;flex:1;padding-top:0}.secondary-nav{border:0;padding:0}.sidebar-money-context{margin-top:auto;padding:16px;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass-dark);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));display:flex;flex-direction:column;gap:8px}.sidebar-money-context .eyebrow{color:#c7cde1;font-size:.6rem}.sidebar-money-context .money{font-size:1.6rem;overflow-wrap:anywhere}.sidebar-local{color:#c7cde1;font-size:.68rem;line-height:1.5}.sidebar-quick-add{margin-top:18px;background:var(--hero-gradient);width:100%}.privacy-badge{color:#c7cde1;font-size:.65rem;margin:12px 0 0}.topbar{background:transparent;border:0;min-height:66px;padding:14px clamp(24px,3vw,48px) 0}.topbar-context{font-family:var(--font-sans);font-size:.83rem;font-weight:600;color:var(--muted)}.topbar-date{display:none}.local-status{padding:9px 13px;border:1px solid rgb(255 255 255 / 80%);border-radius:24px;background:var(--glass-light)}.local-status>span{background:var(--muted)}.topbar .quick-add-trigger{display:none}.demo-banner{background:transparent;border:0}.main-content{padding-top:16px}.page-header h1{font-weight:750;font-size:clamp(1.9rem,2.8vw,2.4rem);letter-spacing:-.035em;margin:10px 0 8px}.page-header .eyebrow{color:var(--muted);letter-spacing:.13em;font-size:.65rem}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius-panel)}.panel-header h2{font-size:1.05rem;font-weight:700}.panel-header p{font-size:.8rem}.button{transition:background var(--transition),box-shadow var(--transition)}.button--primary{background:var(--iris);color:#fff}.button--primary:hover{background:var(--violet);box-shadow:0 4px 14px #4e45d52e}.button--primary:active{background:var(--action-hover);box-shadow:inset 0 2px 4px #171a2d26}.button--secondary{background:var(--soft-iris);color:var(--deep-iris);border-color:transparent}.button--secondary:hover{background:#e0e3ff}.button--danger{background:#fff0f3;color:var(--shortfall);border-color:#e8bac5}.button:disabled{box-shadow:none}input,select,textarea{background:#fff;border-color:#c7cee1;border-radius:12px}input:hover,select:hover,textarea:hover{border-color:#9099b0}input:focus,select:focus,textarea:focus{border-color:var(--violet)}input:disabled,select:disabled{background:#f1f3f8;color:var(--muted)}.currency-input{font-weight:700}.choice-row{background:#f0f2fa;border:1px solid var(--line)}.choice-button--active{color:var(--deep-iris)}.inline-error{background:#fff0f3;border-color:#e8bac5}.inline-note,.attention-card,.difference-preview{background:#fff3df;color:var(--attention);border-color:#ebd5b5}.success-inline,.success-mark,.received-record,.difference-preview--zero{background:#eaf8f1;color:var(--safe)}.status{padding:5px 9px;border-radius:20px;background:#f0f2f7;font-size:.7rem}.status--expected,.status--reserved{background:var(--soft-iris)}.status--planned,.status--attention{background:#fff3df}.status--paid{background:#eaf8f1}.status--shortfall{background:#fff0f3}.empty-state h3,.fund-card h3,.debt-card h3,.received-record h3,.forecast-status h2,.dialog-header h2,.setup-card h2,.setup-story h1,.recovery-screen h1{font-family:var(--font-sans);font-weight:700}.empty-mark{font-family:var(--font-sans);color:var(--violet)}.paycheck-arrival{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid #fff;border-radius:20px;background:var(--glass-light);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-soft)}.arrival-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:var(--violet);background:var(--soft-iris);flex:none}.paycheck-arrival>div{flex:1;min-width:0}.paycheck-arrival strong{font-size:.88rem}.paycheck-arrival p{color:var(--muted);font-size:.77rem;line-height:1.5;margin:6px 0 0}.today-grid:not(.today-grid--lower){display:block}.decision-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:28px;align-items:start;min-height:306px;padding:32px;background:var(--hero-gradient);color:#fff;box-shadow:0 22px 36px #2a2f6730;overflow:hidden}.decision-topline{grid-column:1/-1;color:#fff}.decision-topline svg{color:#dce0ff}.decision-value{grid-column:1;font-size:clamp(2.6rem,5vw,4.4rem);font-weight:750;letter-spacing:-.045em;margin:20px 0 10px}.decision-horizon,.decision-explainer{grid-column:1;color:#f1f2ff;line-height:1.6}.decision-horizon strong{color:#fff}.decision-actions{grid-column:1;margin-top:24px;gap:8px}.button--hero,.hero-receipt-link{background:#ffffff1f;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));color:#fff;border-radius:12px;padding:10px 14px;font-size:.8rem;text-decoration:none}.button--hero:hover,.hero-receipt-link:hover{background:#ffffff38}.today-context{grid-column:2;grid-row:2/6;align-self:end;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass-dark);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.today-context>.eyebrow{display:none}.today-context>.mini-metric{border:0;padding:0}.today-context .mini-metric>span,.today-context .mini-metric>small{color:#e2e5ff}.today-context .mini-metric>span{font-size:.68rem}.today-context .mini-metric>strong{color:#fff;font-size:1.1rem}.today-context .mini-metric>small{font-size:.65rem}.context-pair{grid-column:1/-1;gap:16px}.hero-metric-note{grid-column:1/-1;font-size:.68rem;line-height:1.5;color:#e2e5ff;border-top:1px solid var(--glass-border);padding-top:12px;margin:0}.decision-hero--shortfall{background:linear-gradient(110deg,#723e78,#653654 60%,#342c53)}.decision-hero--incomplete,.decision-hero--watch{background:linear-gradient(110deg,#4e45d5,#2a2f67)}.receipt{border:0}.receipt summary{padding:0 4px}.receipt[open]{padding:18px 24px;border:1px solid var(--line);border-radius:20px;background:#fff}.money-row--safe>strong{color:var(--violet)}.money-check-entry{background:linear-gradient(110deg,#1f2340,#30385e);border:1px solid #424969;border-radius:22px;color:#fff;box-shadow:var(--shadow-soft)}.money-check-entry .eyebrow,.money-check-entry p{color:#cdd3ec}.money-check-entry h2{font-family:var(--font-sans);font-size:1.15rem;font-weight:700}.money-check-entry .button{color:#fff;background:var(--glass-dark);border:1px solid var(--glass-border)}.runway-panel,.plan-explainer{background:var(--glass-light);border:1px solid #fff;border-radius:22px;padding:24px;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-soft)}.runway-rail>span{background:var(--lavender)}.assignment-list li{position:relative;padding-left:42px}.assignment-list li:before{content:"";position:absolute;left:0;top:18px;width:30px;height:30px;border-radius:9px;background:var(--soft-iris)}.assignment-list li:after{content:"";position:absolute;left:10px;top:31px;width:10px;height:4px;border-radius:2px;background:var(--iris)}.plan-tabs{gap:4px;width:min(100%,620px);padding:6px;background:var(--glass-light);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}.plan-tab{flex:1;border:0;padding:10px;border-radius:12px}.plan-tab--active{background:#fff;color:var(--ink);box-shadow:0 2px 8px #1f234012}.plan-tab:hover{background:#f8f9ff}.plan-grid{grid-template-columns:minmax(0,1fr) minmax(240px,.5fr)}.fund-values strong{color:var(--violet)}.forecast-status{background:#eaf8f1}.forecast-status--timing-shortfall,.forecast-status--structural-shortfall{background:#fff0f3}.forecast-status--incomplete{background:#fff3df}.forecast-kind,.activity-icon--expense,.activity-icon--transfer,.activity-icon--adjustment{color:var(--violet);background:var(--soft-iris)}.forecast-kind--paycheck,.activity-icon--income,.primary-tag{background:#eaf8f1;color:var(--safe)}.tracked-balance-box{color:var(--deep-iris);background:var(--soft-iris)}.what-check-panel{background:var(--glass-light);border:1px solid #fff}.settings-recovery{background:linear-gradient(110deg,#1f2340,#373d70);border:0;color:#fff;padding:28px}.settings-recovery .panel-header h2{color:#fff;font-family:var(--font-sans);font-size:1.45rem;font-weight:700}.settings-recovery .panel-header p,.settings-recovery .file-drop small{color:#dce0f4}.settings-recovery .file-drop{background:var(--glass-dark);border-color:var(--glass-border);color:#fff}.settings-recovery .button--quiet{color:#fff;border-color:var(--glass-border)}.settings-recovery .backup-warning{color:#ffe3ba}.settings-money{grid-column:1/-1}.settings-save-status{grid-column:1/-1;margin:0;font-size:.8rem;color:var(--safe)}.settings-privacy{padding:24px;background:#fff;border:1px solid var(--line);border-radius:24px}.reset-panel{background:#fff0f3}.dialog-backdrop{background:#171a2d73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dialog{background:#fff;border-color:#fff;animation:direction-d-enter .14s ease-out}@keyframes direction-d-enter{0%{opacity:0}to{opacity:1}}.setup-page{background:radial-gradient(ellipse at 85% 8%,rgb(169 177 255 / 27%),transparent 40%),var(--canvas)}.setup-story h1{font-size:clamp(2.2rem,4vw,3.8rem);font-weight:750;letter-spacing:-.04em}.setup-card{border-radius:24px;background:var(--glass-light);border:1px solid #fff;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-soft)}.setup-brand{font-family:var(--font-sans);font-weight:700}.scenario-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:start}.scenario-comparison{display:flex;flex-direction:column;gap:20px}.scenario-comparison>.scenario-result{background:var(--hero-gradient);color:#fff;border:0}.scenario-comparison>.scenario-result h2,.scenario-comparison>.scenario-result .scenario-metrics dt,.scenario-comparison>.scenario-result .form-help{color:#fff}.scenario-comparison>.scenario-result .status{color:#fff;background:var(--glass-dark)}.scenario-comparison>.scenario-result .scenario-metrics{padding:18px;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass-dark)}.scenario-note{padding:24px;border:1px solid #fff;border-radius:20px;background:var(--glass-light);font-size:.82rem}@media (max-height:880px) and (min-width:961px){.sidebar{padding-top:18px}.nav-caption{margin-top:20px}.nav-caption--planning{padding-top:16px}.sidebar .nav-link{min-height:44px;padding:8px 12px}.sidebar-money-context{margin-top:20px}}@media (max-width:1100px){:root{--sidebar-width:240px}.decision-hero{column-gap:20px;padding:26px}.today-context{padding:14px}.decision-value{font-size:3.3rem}}@media (max-width:960px){.topbar .quick-add-trigger{display:inline-flex}.plan-grid{grid-template-columns:minmax(0,1fr) 230px}}@media (max-width:800px){.decision-hero{grid-template-columns:1fr}.today-context{grid-column:1;grid-row:auto;margin-top:20px}.decision-actions{grid-row:5}.decision-value{font-size:3.4rem}.scenario-layout{grid-template-columns:1fr}}@media (max-width:680px){.topbar{padding:14px 18px 0;min-height:58px}.main-content{padding-top:16px}.page-header h1{font-size:2rem}.page-header .eyebrow{font-size:.6rem}.decision-hero{display:flex;padding:24px;border-radius:24px;min-height:0}.decision-value{font-size:clamp(2.6rem,10vw,3.6rem);margin-top:24px}.decision-actions{order:1;margin-top:20px}.decision-actions .button,.hero-receipt-link{width:auto;flex:1}.today-context{order:2;width:100%;margin-top:20px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.today-context .mini-metric>strong{font-size:1.05rem}.today-context .mini-metric>small{font-size:.65rem}.context-pair{gap:14px}.paycheck-arrival{gap:10px;padding:16px}.paycheck-arrival .button{padding:10px 12px}.arrival-icon{display:none}.panel,.money-check-entry{border-radius:22px}.plan-grid{display:flex}.plan-tabs{width:100%}.plan-tab{padding:10px 4px}.settings-recovery{padding:22px 20px}.settings-recovery .panel-header h2{font-size:1.2rem}.mobile-nav{left:14px;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));padding:8px;border:1px solid var(--glass-border);border-radius:24px;background:var(--midnight);box-shadow:0 10px 28px #171a2d38}.mobile-nav-link{color:#b5bdd9}.mobile-nav-link--active{color:var(--lavender);background:transparent}.mobile-nav-link--active:before{background:var(--lavender)}.mobile-add{background:var(--iris);color:#fff;border:1px solid rgb(255 255 255 / 40%);bottom:calc(106px + env(safe-area-inset-bottom))}.workspace{padding-bottom:112px}.setup-story h1{font-size:2.3rem}}@media (max-width:390px){.decision-hero{padding:22px 18px}.today-context{padding:14px}.decision-actions{gap:8px}.button--hero,.hero-receipt-link{padding:10px;font-size:.73rem}}@media (prefers-reduced-motion:reduce){.dialog{animation:none}}.today-header-actions{display:flex;gap:12px}@media (max-width:680px){.today-header-actions{width:100%}.today-header-actions .button{flex:1;width:auto}}@media (max-width:900px){.topbar .quick-add-trigger{display:none}.mobile-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-nav-link:nth-child(3),.mobile-nav-link:nth-child(4){grid-column:auto}.mobile-add{left:auto;right:20px;bottom:calc(104px + env(safe-area-inset-bottom));background:var(--iris);color:#fff}.mobile-nav-link--active{color:var(--lavender);background:transparent}}.step-dot--done{background:#eaf8f1}@media (min-width:681px) and (max-width:900px){.mobile-nav{left:18px;right:18px;bottom:calc(12px + env(safe-area-inset-bottom));padding:8px;background:var(--midnight);border:1px solid var(--glass-border);border-radius:24px;box-shadow:var(--shadow-dialog)}.mobile-nav-link{color:#b5bdd9}.mobile-nav-link--active{color:var(--lavender)}.workspace{padding-bottom:112px}}.scenario-result .scenario-metrics>div:first-child dd{font-size:clamp(2rem,3.7vw,3.5rem);font-weight:750}.sidebar .sidebar-quick-add{background:var(--hero-gradient)}.sidebar-money-context .money--long{font-size:1.05rem;letter-spacing:-.015em}.decision-value--long{font-size:clamp(1.3rem,3vw,2.6rem)}.money-row{flex-wrap:wrap}.money-row>strong{max-width:100%;overflow-wrap:anywhere}@media (max-width:680px){.page--today .page-intro,.page--today .today-header-actions,.decision-actions .button--hero,.today-context{display:none}.decision-actions{width:100%}.hero-receipt-link{flex:none;width:auto;padding:10px 16px;font-size:.8rem}.decision-value--long{font-size:clamp(1.3rem,6vw,2.6rem)}}.sidebar :focus-visible,.mobile-nav :focus-visible{outline-color:var(--lavender)}.decision-hero :focus-visible{outline-color:#fff}
