:root{--bg:#101211;--surface:#1a1c1b;--surface-2:#202422;--rule:#2c2e2d;--rule-strong:#3d403e;--ink:#fcfcfc;--ink-2:#a5a3a0;--ink-3:#7d7b78;--pos:#4be38a;--pos-ink:#08130c;--pos-dim:rgba(75,227,138,0.14);--neg:#e0654f;--link:#8ab8ff;--focus:#8ab8ff;--shadow-1:0 1px 2px rgba(0,0,0,0.3);--shadow-2:0 10px 30px rgba(0,0,0,0.35);--ease-out:cubic-bezier(0.23,1,0.32,1);--dur-1:150ms;--dur-2:220ms;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.page{max-width:1120px;margin:0 auto;padding:var(--s-6) var(--s-5) 96px}.page-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}.page-header h1{font-size:21px;margin:0;letter-spacing:-.01em}.page-header .sub{color:var(--ink-2);font-size:13px}.layout{display:grid;grid-template-columns:360px 1fr;grid-gap:var(--s-5);gap:var(--s-5);align-items:start}@media (max-width:900px){.layout{grid-template-columns:1fr}}.layout>section{min-width:0}.card{background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:var(--s-4) var(--s-4) var(--s-5);margin-bottom:var(--s-4)}.card>:last-child{margin-bottom:0}.card h2{font-size:15px;color:var(--ink);margin:0 0 var(--s-1);font-weight:600;letter-spacing:-.006em}.card>h2+.card-sub{margin:0 0 var(--s-3);color:var(--ink-2);font-size:13px;max-width:60ch}.card>h2:not(:has(+.card-sub)){margin-bottom:var(--s-3)}.kind-key{margin:0 0 var(--s-3);padding:0;list-style:none;display:grid;grid-gap:2px;gap:2px;font-size:13px;color:var(--ink-2)}.kind-key li{display:grid;grid-template-columns:6.5em 1fr;grid-gap:var(--s-2);gap:var(--s-2)}.kind-key b{color:var(--ink);font-weight:600}.eyebrow{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-weight:600}.field{margin-bottom:var(--s-4)}.field:last-child{margin-bottom:0}.field label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:var(--s-1)}.field input[type=number],.field input[type=text],.field select{width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--rule-strong);border-radius:6px;padding:7px var(--s-2);font:inherit}.field select:hover{border-color:var(--ink-3)}.event-row select,.field input[type=range]{width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--rule-strong);border-radius:6px;padding:var(--s-2) 10px;font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:border-color var(--dur-1) var(--ease-out)}.event-row select:hover,.field input:hover{border-color:var(--ink-3)}.field-note{margin:var(--s-1) 0 0;font-size:12.5px;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.field-row{display:flex;gap:var(--s-3)}.field-row .field{flex:1 1}.field-label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:var(--s-1)}.choice-row{display:flex;gap:var(--s-2)}.choice,.field label.choice{flex:1 1;display:flex;align-items:center;gap:var(--s-2);font-size:13.5px;color:var(--ink);background:var(--bg);border:1px solid var(--rule-strong);border-radius:6px;padding:7px var(--s-2);cursor:pointer;transition:border-color var(--dur-1) var(--ease-out)}.choice:hover{border-color:var(--ink-3)}.choice:has(input:checked){border-color:var(--ink)}.choice input{margin:0;accent-color:var(--ink)}@media (max-width:480px){.choice-row{flex-direction:column}}details.advanced{margin-top:var(--s-2)}details.advanced summary{cursor:pointer;color:var(--ink-2);font-size:13px}details.advanced[open] summary{margin-bottom:var(--s-2)}.event-row{display:grid;grid-template-columns:72px 76px 1fr 30px;grid-gap:var(--s-2);gap:var(--s-2);align-items:center;margin-bottom:var(--s-3);padding-bottom:var(--s-3);border-bottom:1px solid var(--rule)}.event-row:last-of-type{border-bottom:0}.event-row .ev-label{grid-area:1/1/2/4}.event-row .remove{grid-area:1/4/2/5}.event-row .ev-month{grid-area:2/1/3/2}.event-row .ev-year{grid-area:2/2/3/3}.event-row .ev-amount{grid-area:2/3/3/5}.event-row .ev-account{grid-area:3/1/4/5}.event-row .ev-hbp{grid-area:4/1/5/5;display:flex;align-items:center;gap:var(--s-2);font-size:.82rem;color:var(--ink-2)}.event-row .ev-hbp input{width:auto}.event-row input{width:100%;padding:7px var(--s-2)}.event-row input,button{background:var(--bg);color:var(--ink);border:1px solid var(--rule-strong);border-radius:6px;font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button{padding:7px var(--s-3);cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),opacity var(--dur-1) var(--ease-out)}button:hover{border-color:var(--ink-3)}button.primary{background:var(--pos);color:var(--pos-ink);border-color:var(--pos);font-weight:600}button.remove{padding:4px 9px;color:var(--neg);border-color:transparent}.kpis{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-bottom:var(--s-4)}.kpi{flex:1 1 150px;background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:var(--s-3) var(--s-4)}.kpi .label{font-size:12px;color:var(--ink-2)}.kpi .value{font-size:19px;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:2px}.banner{border:1px solid var(--neg);color:var(--neg);border-radius:8px;padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);font-size:14px}.warning-list .warning-item{padding:var(--s-3) 0;border-top:1px solid var(--rule);color:var(--ink-2);font-size:13px}.warning-list .warning-item:first-of-type{border-top:0;padding-top:var(--s-1)}.disclosure{position:relative;display:inline-flex;margin-left:var(--s-1);vertical-align:baseline}.disclosure-btn{display:inline-flex;align-items:center;gap:3px;background:none;border:0;padding:0 2px;color:var(--ink-3);font:inherit;font-size:12.5px;line-height:1;cursor:pointer;border-radius:4px}.disclosure-btn:hover{color:var(--ink)}.disclosure-btn:focus-visible{outline:2px solid var(--ink-3);outline-offset:2px}.disclosure-count{font-size:10.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.disclosure-panel{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:min(340px,calc(100vw - 32px));max-height:60vh;overflow-y:auto;display:block;background:var(--bg);border:1px solid var(--rule-strong);border-radius:8px;padding:var(--s-3);box-shadow:0 8px 24px rgb(0 0 0/.35);text-align:left;white-space:normal}.disclosure-item{display:block;padding:var(--s-2) 0;border-top:1px solid var(--rule)}.disclosure-item:first-child{border-top:0;padding-top:0}.disclosure-text{display:block;font-size:12.5px;color:var(--ink-2);font-weight:400}.disclosure-link{display:inline-block;margin-top:var(--s-1);font-size:12.5px;color:var(--link)}@media (max-width:560px){.disclosure-panel{left:auto;right:0}}.warn-code{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;letter-spacing:.03em;color:var(--ink-3);border:1px solid var(--rule-strong);border-radius:4px;padding:1px 5px;margin-top:var(--s-1)}.error-box{border:1px solid var(--neg);border-radius:8px;padding:var(--s-3) var(--s-4);color:var(--neg);font-size:14px;margin-bottom:var(--s-4)}.chart-note{color:var(--ink-3)}.chart-note,.legend{font-size:12px;margin-top:var(--s-2)}.legend .key{display:inline-block;width:18px;height:3px;vertical-align:middle;margin-right:6px}.legend .key-dashed{height:0;background:none!important;border-top:2px dashed var(--ink-2)}.room-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--s-3);gap:var(--s-3)}.room-item{display:flex;flex-direction:column;gap:2px}.room-label{font-size:12px;color:var(--ink-2)}.room-value{font-size:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.optimizer-row{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--s-3);gap:var(--s-3)}@media (max-width:640px){.optimizer-row{grid-template-columns:1fr}}.opt{background:var(--bg);border:1px solid var(--rule);border-radius:8px;padding:var(--s-3)}.opt-best{border-color:var(--pos)}.opt-rank{font-size:12px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em}.opt-best .opt-rank{color:var(--pos)}.opt-value{font-size:19px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:2px 0 var(--s-1)}.opt-note{font-size:11.5px;color:var(--ink-3);line-height:1.45}.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--rule)}.brand{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;letter-spacing:-.01em}.site-nav{display:flex;gap:var(--s-4);flex-wrap:wrap}.site-nav a{color:var(--ink-2);text-decoration:none;font-size:13.5px;transition:color var(--dur-1) var(--ease-out)}.site-nav a:hover{color:var(--ink)}.site-footer{border-top:1px solid var(--rule);padding:var(--s-5);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-4);color:var(--ink-2);font-size:12.5px}.site-footer p{margin:0;max-width:62ch}.footer-meta{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap}.footer-meta a{color:var(--link);text-decoration:none}.chip{display:inline-block;border:1px solid var(--rule-strong);border-radius:999px;padding:2px 10px;font-size:12px;color:var(--ink-2)}button.chip{cursor:pointer;background:transparent}button.chip:hover{border-color:var(--ink-3)}.dialog-overlay{position:fixed;inset:0;z-index:50;background:rgba(8,10,9,.72);display:grid;place-items:center;padding:var(--s-5);animation:overlay-in var(--dur-2) var(--ease-out)}.dialog-card{background:var(--surface);border:1px solid var(--rule-strong);border-radius:12px;max-width:560px;width:100%;padding:var(--s-5);box-shadow:0 24px 64px rgba(0,0,0,.45);animation:dialog-in var(--dur-2) var(--ease-out)}.dialog-card h2{margin:0 0 var(--s-3);font-size:18px}.dialog-card p{margin:0 0 var(--s-3);color:var(--ink-2);font-size:14px}@keyframes overlay-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}@media (prefers-reduced-motion:reduce){.dialog-card,.dialog-overlay{animation:none}}.landing{max-width:1120px;margin:0 auto;padding:0 var(--s-5) var(--s-6)}.landing h1{font-size:34px;line-height:1.15;letter-spacing:-.02em;max-width:21ch;margin:var(--s-6) 0 var(--s-4);text-wrap:balance}.landing-sub{color:var(--ink-2);max-width:56ch;margin:0 0 var(--s-6)}.cta.primary{display:inline-block;background:var(--pos);color:var(--pos-ink);border:1px solid var(--pos);border-radius:6px;padding:9px var(--s-4);text-decoration:none;font:inherit;font-weight:600;cursor:pointer}.cta.primary:disabled{opacity:.6;cursor:default}.hero-proof{margin:var(--s-3) 0 0;font-size:13px;color:var(--ink-2)}.hero-proof a{color:var(--link);text-decoration:none}.preview-shot{margin:var(--s-6) 0 0}.preview-shot img{width:100%;height:auto;border:1px solid var(--rule);border-radius:10px;display:block}.preview-shot figcaption{margin-top:var(--s-2);font-size:12.5px;color:var(--ink-3)}.landing-section{margin-top:var(--s-6);padding-top:var(--s-6);border-top:1px solid var(--rule)}.landing-section h2{font-size:21px;letter-spacing:-.01em;margin:0 0 var(--s-3)}.section-body{color:var(--ink-2);max-width:68ch;margin:0}.landing-cols{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--s-5);gap:var(--s-5)}@media (max-width:800px){.landing-cols{grid-template-columns:1fr}}.step-n{font-size:12px;color:var(--pos);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-bottom:var(--s-1)}.step h3{font-size:15px;margin:0 0 var(--s-2)}.step p{margin:0;color:var(--ink-2);font-size:14px}.faq details{border-bottom:1px solid var(--rule);padding:var(--s-3) 0}.faq details:last-child{border-bottom:none}.faq summary{cursor:pointer;font-size:15px;font-weight:600}.faq details p{margin:var(--s-2) 0 0;color:var(--ink-2);max-width:68ch}.landing-cta-bottom{margin-top:var(--s-6);padding-top:var(--s-6);display:flex;align-items:center;gap:var(--s-4)}.account,.landing-cta-bottom{border-top:1px solid var(--rule)}.account{padding-top:var(--s-3);margin-top:var(--s-3)}.account:first-of-type{border-top:0;padding-top:0;margin-top:0}.account-head{display:grid;grid-template-columns:auto 1fr 110px auto;grid-gap:var(--s-2);gap:var(--s-2);align-items:center;margin-bottom:var(--s-3)}.account-name{padding:7px var(--s-2);min-width:0}.account-head select,.account-name{background:var(--bg);color:var(--ink);border:1px solid var(--rule-strong);border-radius:6px;font:inherit}.account-head select{padding:7px 4px}.kind-badge{font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--rule-strong);border-radius:999px;padding:3px 9px;color:var(--ink-2);white-space:nowrap}.kind-fhsa,.kind-tfsa{color:var(--pos);border-color:var(--pos)}.kind-rrsp{color:var(--ink)}.kind-resp,.kind-rrsp{border-color:var(--ink-3)}.kind-resp{color:var(--accent,var(--ink))}.account-actions{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-3)}@media (max-width:640px){.account-head{grid-template-columns:auto 1fr auto}.account-head select{grid-column:1/-1}}.scenario-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-4)}.scenario-tabs{display:flex;flex-wrap:wrap;gap:var(--s-2)}.scenario-tab{color:var(--ink-2)}.scenario-tab.is-active{color:var(--ink);border-color:var(--ink-3);font-weight:600}.scenario-edit{display:flex;align-items:center;gap:var(--s-2)}.scenario-edit label{font-size:12px;color:var(--ink-2)}.scenario-edit input{background:var(--bg);color:var(--ink);border:1px solid var(--rule-strong);border-radius:6px;padding:7px var(--s-2);font:inherit;width:160px}.table-scroll{overflow-x:auto}table.compare{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.compare td,table.compare th{text-align:right;padding:var(--s-2) var(--s-2);border-bottom:1px solid var(--rule)}table.compare thead th{font-size:12px;color:var(--ink-2);font-weight:600}table.compare th[scope=row]{text-align:left;color:var(--ink-2);font-weight:400}table.compare tr.is-final td,table.compare tr.is-final th{font-weight:600}table.compare tr:last-child td,table.compare tr:last-child th{border-bottom:0}table.compare td.pos{color:var(--pos)}table.compare td.neg{color:var(--neg)}.win-chip{display:inline-block;margin-left:var(--s-2);font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--pos);border:1px solid var(--pos);border-radius:999px;padding:1px 6px}@media (max-width:640px){.scenario-bar{flex-direction:column;align-items:stretch}.scenario-edit input{width:100%}}.real-note{display:block;font-size:11px;color:var(--ink-2);margin-top:2px}.kind-home{color:var(--ink);border-color:var(--ink-3)}.check{display:flex;align-items:center;gap:var(--s-2);font-size:13px;color:var(--ink-2);margin-top:var(--s-2);cursor:pointer}.check input{accent-color:var(--pos)}.account-head:has(.kind-home){grid-template-columns:auto 1fr auto}.prose{max-width:68ch}.prose h1{margin-bottom:var(--s-3)}.prose .lede{font-size:17px;line-height:1.6;color:var(--ink-2);margin-bottom:var(--s-6)}.prose h2{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);font-weight:600;margin:var(--s-6) 0 var(--s-3)}.prose p,.prose ul{line-height:1.65;margin:0 0 var(--s-3)}.prose ul{padding-left:1.1em}.prose li{margin-bottom:var(--s-2)}.prose table{margin-bottom:var(--s-3)}.prose table td,.prose table th{text-align:left}.prose table th[scope=row]{white-space:normal;color:var(--ink)}.prose .chart-note{margin-top:var(--s-5)}.dialog-actions{display:flex;align-items:center;gap:var(--s-4);flex-wrap:wrap}.dialog-links{display:flex;gap:var(--s-3);font-size:13px}.answer{background:radial-gradient(120% 140% at 0 0,rgba(75,227,138,.07),transparent 60%),var(--surface);border:1px solid var(--rule-strong);border-radius:12px;padding:var(--s-5);margin-bottom:var(--s-4);box-shadow:var(--shadow-1)}.answer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap}.answer .value{font-size:clamp(34px,6vw,46px);line-height:1.05;letter-spacing:-.025em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:var(--s-2) 0 0}.answer .label{font-size:13px;color:var(--ink-2)}.answer-read{margin:var(--s-3) 0 0;font-size:14px;color:var(--ink-2);max-width:56ch}.answer-read strong{color:var(--ink);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.switch{display:inline-flex;align-items:center;gap:var(--s-2);cursor:pointer;font-size:13px;color:var(--ink-2)}.switch input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:34px;height:20px;border-radius:999px;background:var(--bg);border:1px solid var(--rule-strong);position:relative;cursor:pointer;flex:none;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.switch input:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--ink-2);transition:transform var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.switch input:checked{background:var(--pos-dim);border-color:var(--pos)}.switch input:checked:after{transform:translateX(14px);background:var(--pos)}@media (prefers-reduced-motion:reduce){.switch input,.switch input:after{transition:none}}.detail-head{display:flex;align-items:baseline;gap:var(--s-3);margin:var(--s-6) 0 var(--s-3)}.detail-head:after{content:"";flex:1 1;height:1px;background:var(--rule)}.detail-head p{margin:0;font-size:12.5px;color:var(--ink-3)}table.compare{font-size:13px}table.compare tbody tr{transition:background-color var(--dur-1) var(--ease-out)}table.compare tbody tr:hover{background:var(--surface-2)}table.compare tr.is-final td,table.compare tr.is-final th{border-top:1px solid var(--rule-strong);background:var(--surface-2)}@media (prefers-reduced-motion:reduce){table.compare tbody tr{transition:none}}.card{box-shadow:var(--shadow-1)}.dialog-card{box-shadow:var(--shadow-2)}.account-actions .actions-label{font-size:12.5px;color:var(--ink-2);align-self:center}@media (pointer:coarse){input,select,textarea{font-size:16px}}.row-abbr{font-size:10.5px;letter-spacing:.06em;color:var(--ink-3);border:1px solid var(--rule-strong);border-radius:4px;padding:1px 5px;margin-left:var(--s-2);white-space:nowrap}table.compare th[scope=row]{max-width:24ch}input[type=range]{accent-color:var(--pos)}@media (min-width:901px){.layout>section:first-child{position:-webkit-sticky;position:sticky;top:var(--s-4);max-height:calc(100vh - var(--s-5));overflow-y:auto;scrollbar-width:thin}}.card-sub,.chart-note{max-width:76ch}.hbp-table{width:100%;border-collapse:collapse;font-size:.85rem}.hbp-table td,.hbp-table th{padding:var(--s-1) var(--s-2);text-align:right}.hbp-table td:first-child,.hbp-table th:first-child{text-align:left}.hbp-table thead th{color:var(--ink-2);font-weight:500;border-bottom:1px solid var(--rule)}.hbp-table tbody tr+tr td{border-top:1px solid var(--rule)}.wiki-index{list-style:none;padding:0;margin:var(--s-5) 0 0}.wiki-index li{padding:var(--s-3) 0;border-top:1px solid var(--rule)}.wiki-index li:first-child{border-top:0}.wiki-index a{font-size:15px;color:var(--link);text-decoration:none}.wiki-index a:hover{text-decoration:underline}.chart-note a,.wiki-entry a,.wiki-sources a{color:var(--link)}.wiki-index span{display:block;margin-top:var(--s-1);font-size:13px;color:var(--ink-2)}.wiki-entry{max-width:68ch;margin-top:var(--s-5)}.wiki-entry h1{font-size:26px}.wiki-entry h2{font-size:17px;margin-top:var(--s-6)}.wiki-entry li,.wiki-entry p{color:var(--ink-2);line-height:1.6}.wiki-entry code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.wiki-entry pre{background:var(--bg-2,rgb(255 255 255/.03));border:1px solid var(--rule);border-radius:6px;padding:var(--s-3);overflow-x:auto}.wiki-sources{max-width:68ch;margin-top:var(--s-6)}.wiki-sources h2{font-size:15px}.wiki-sources ul{padding-left:var(--s-4)}.wiki-sources li{font-size:13px;color:var(--ink-2);margin-bottom:var(--s-2)}:root{--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#9085e9}.series-1{--series:var(--series-1)}.series-2{--series:var(--series-2)}.series-3{--series:var(--series-3)}.series-4{--series:var(--series-4)}.series-5{--series:var(--series-5)}.series-6{--series:var(--series-6)}.series-fill{fill:var(--series);transition:opacity var(--dur-1) var(--ease-out)}.series-dot{display:inline-block;width:9px;height:9px;border-radius:2px;background:var(--series);margin-right:var(--s-2);vertical-align:baseline}.donut-row{display:flex;gap:var(--s-5);align-items:center;flex-wrap:wrap}.donut{width:192px;height:192px;flex:0 0 auto}.donut-value{fill:var(--ink);font-size:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.donut-label{fill:var(--ink-2);font-size:11px}.donut-table{flex:1 1 320px}.donut-table thead th:first-child{text-align:left}.donut-table th[scope=row]{font-weight:400;color:var(--ink-2);white-space:nowrap}.months-bars{display:flex;gap:4px;align-items:flex-end;height:150px;margin:var(--s-4) 0 var(--s-2)}.months-bar{flex:1 1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-width:0;background:none;border:0;padding:0;cursor:pointer;opacity:.62;transition:opacity var(--dur-1) var(--ease-out)}.months-bar.is-selected,.months-bar:hover{opacity:1}.months-bar:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.months-stack{display:flex;width:100%;flex-direction:column;justify-content:flex-end;height:100%;gap:2px}.months-stack .seg{background:var(--series);border-radius:2px;min-height:1px}.months-stack .seg:last-child{border-radius:2px 2px 4px 4px}.months-tick{font-size:10.5px;color:var(--ink-3);text-align:center;margin-top:var(--s-1)}.legend{display:flex;gap:var(--s-4);flex-wrap:wrap;font-size:12.5px;color:var(--ink-2);margin-bottom:var(--s-4)}@media (max-width:560px){.months-bars{height:120px;gap:2px}.months-tick{font-size:9px}}.crossover-chart{width:100%;height:auto}.crossover-chart .grid{stroke:var(--rule);stroke-width:1}.crossover-chart .axis-label{fill:var(--ink-3);font-size:11px}.crossover-chart .line{fill:none;stroke:var(--series);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.crossover-chart .crossover-mark{stroke:var(--ink-3);stroke-width:1;stroke-dasharray:4 3}.detail-dock{position:fixed;right:var(--s-5);bottom:var(--s-5);z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-2)}.detail-pill{display:inline-flex;align-items:baseline;gap:var(--s-2);background:var(--surface-2);border:1px solid var(--rule-strong);border-radius:999px;padding:9px var(--s-4);color:var(--ink);font:inherit;font-size:13px;cursor:pointer;box-shadow:var(--shadow-2);transition:border-color var(--dur-1) var(--ease-out)}.detail-pill:hover{border-color:var(--ink-3)}.detail-pill:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.detail-pill-key{color:var(--ink-3);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em}.detail-pill-value{font-weight:500}.detail-pill-caret{color:var(--ink-3);font-size:10px}.detail-menu{width:min(320px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--rule-strong);border-radius:10px;padding:var(--s-2);box-shadow:var(--shadow-2)}.detail-option{display:block;width:100%;text-align:left;background:none;border:0;border-radius:8px;padding:var(--s-3);color:var(--ink);font:inherit;cursor:pointer}.detail-option:hover{background:var(--surface-2)}.detail-option:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.detail-option.is-current{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--pos)}.detail-option-name{display:block;font-size:13.5px}.detail-option-blurb{display:block;font-size:12px;color:var(--ink-2);margin-top:2px}.detail-menu-note{margin:var(--s-2) var(--s-3) var(--s-1);font-size:11.5px;color:var(--ink-3)}@media (max-width:640px){.detail-dock{right:0;left:0;bottom:0;align-items:stretch;padding:var(--s-2) var(--s-3) calc(var(--s-3) + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 60%,transparent)}.detail-pill{justify-content:center;border-radius:10px}.detail-menu{width:auto}}.onboarding{border-color:var(--rule-strong)}.onboarding-options{display:flex;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-4)}.onboarding-option{flex:1 1 200px;text-align:left;background:var(--surface-2);border:1px solid var(--rule-strong);border-radius:8px;padding:var(--s-3);color:var(--ink);font:inherit;cursor:pointer;transition:border-color var(--dur-1) var(--ease-out)}.onboarding-option:hover{border-color:var(--ink-3)}.onboarding-option:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.onboarding-option-name{display:block;font-size:14px}.onboarding-option-blurb{display:block;font-size:12.5px;color:var(--ink-2);margin-top:var(--s-1)}.page{padding-bottom:96px}.start{max-width:620px;margin:0 auto;padding-top:8vh}.start-progress{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 var(--s-4)}.start h1{font-size:30px;line-height:1.25;letter-spacing:-.01em;margin:0;text-wrap:balance}.start-why{color:var(--ink-2);font-size:14px;line-height:1.6;max-width:52ch;margin-top:var(--s-3)}.start-body{margin-top:var(--s-6);display:flex;flex-direction:column;gap:var(--s-5)}.start-field label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:var(--s-2)}.start-input{display:flex;align-items:baseline;gap:var(--s-2);border-bottom:1px solid var(--rule-strong);padding-bottom:var(--s-2)}.start-input:focus-within{border-bottom-color:var(--pos)}.start-input>span{color:var(--ink-3);font-size:22px}.start-input input{flex:1 1;min-width:0;background:none;border:0;color:var(--ink);font:500 30px/1.2 inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:0}.start-input input:focus-visible{outline:none}.start-input input::-webkit-inner-spin-button,.start-input input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.start-input input{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.start-suffix{font-size:14px!important}.start-nav{display:flex;gap:var(--s-3);align-items:center;flex-wrap:wrap;margin-top:var(--s-6)}.start-nav .ghost{background:none;border:0;color:var(--ink-2);font:inherit;font-size:14px;cursor:pointer;padding:var(--s-2);border-radius:6px}.start-nav .ghost:hover{color:var(--ink)}.start-nav .cta:focus-visible,.start-nav .ghost:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.start-echo{margin-top:var(--s-5);font-size:13px;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.start-foot{margin-top:var(--s-6);font-size:13px;color:var(--ink-3);max-width:56ch}.start-foot a{color:var(--link)}@media (max-width:560px){.start{padding-top:var(--s-5)}.start h1,.start-input input{font-size:24px}}.hero-actions{display:flex;gap:var(--s-3);flex-wrap:wrap;margin-bottom:var(--s-3)}.cta.ghost{display:inline-block;background:none;color:var(--ink);border:1px solid var(--rule-strong);border-radius:6px;padding:9px var(--s-4);text-decoration:none;font-weight:500}.cta.ghost:hover{border-color:var(--ink-3)}.answer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--s-4);gap:var(--s-4)}.answer-card{border:1px solid var(--rule);border-radius:10px;padding:var(--s-4);background:var(--surface)}.answer-card h3{font-size:15px;margin:0 0 var(--s-2);line-height:1.35}.answer-card p{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.55}.source-group{margin-top:var(--s-6)}.sources-table th[scope=row]{font-weight:400;color:var(--ink);max-width:46ch}.sources-table th[scope=row] .warn-code{display:block;margin-top:var(--s-1)}.sources-table .source-date,.sources-table .source-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sources-table .source-date{color:var(--ink-2)}.sources-table a{color:var(--link)}.source-seed{color:var(--ink-3);font-size:12px}.account-page{max-width:520px}.account-banner{margin-bottom:var(--s-5)}.account-form{border:1px solid var(--rule);border-radius:10px;padding:var(--s-4);background:var(--surface)}.account-form input:disabled{opacity:.55;cursor:not-allowed}.account-form .cta.primary{margin-top:var(--s-4)}.account-alt{margin-top:var(--s-6)}.account-alt h2{font-size:16px}.account-alt li{margin-bottom:var(--s-2)}.account-alt li,.account-alt p{color:var(--ink-2)}.account-alt a,.account-form a{color:var(--link)}.reveal{opacity:0;transform:translateY(8px);transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.bar-fill,.paycheck-seg,.shock-bar,.split-seg{transition:none!important}}.story{max-width:860px;margin:0 auto;padding:0 var(--s-5) 120px}.story-hero{padding:12vh 0 var(--s-6)}.story-hero h1{font-size:34px;line-height:1.2;letter-spacing:-.015em;margin:0;text-wrap:balance}.story-lead{color:var(--ink-2);max-width:62ch;line-height:1.65;margin-top:var(--s-4)}.chapter{padding:var(--s-6) 0;border-top:1px solid var(--rule)}.chapter-n{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 var(--s-2)}.chapter h2{font-size:22px;line-height:1.3;margin:0;letter-spacing:-.01em}.chapter-lead{color:var(--ink-2);max-width:62ch;line-height:1.65;margin-top:var(--s-3)}.chapter-body{margin-top:var(--s-5);display:grid;grid-gap:var(--s-4);gap:var(--s-4)}.viz{border:1px solid var(--rule);border-radius:10px;padding:var(--s-4);background:var(--surface)}.viz-note{font-size:12.5px;color:var(--ink-3)}.viz-lead,.viz-note{margin:var(--s-3) 0 0}.viz-lead{font-size:15px}.viz-key{list-style:none;margin:var(--s-3) 0 0;padding:0;display:grid;grid-gap:var(--s-1);gap:var(--s-1)}.viz-key li{display:flex;align-items:baseline;gap:var(--s-2);font-size:13px}.viz-key-label{color:var(--ink-2)}.viz-key-value{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.paycheck-bar{display:flex;gap:2px;height:34px}.paycheck-seg{border-radius:3px;background:var(--series);transform:scaleX(0);transform-origin:left center;transition:transform var(--dur-2) var(--ease-out)}.reveal.is-in .paycheck-seg{transform:none}.bar-row{display:grid;grid-template-columns:minmax(120px,1fr) 2fr auto;grid-gap:var(--s-3);gap:var(--s-3);align-items:center;margin-bottom:var(--s-3)}.bar-label{font-size:13px;color:var(--ink-2)}.bar-track{background:var(--surface-2);border-radius:4px;height:18px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--series);border-radius:4px;transform:scaleX(0);transform-origin:left center;transition:transform var(--dur-2) var(--ease-out)}.reveal.is-in .bar-fill{transform:none}.bar-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:13.5px}.house-stat{display:grid;grid-gap:var(--s-1);gap:var(--s-1);margin-bottom:var(--s-4)}.house-stat-label{font-size:12px;color:var(--ink-2)}.house-stat-value{font-size:30px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.house-stat-note{font-size:12.5px;color:var(--ink-3)}.split-bar{display:flex;gap:2px;min-height:62px}.split-seg{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:var(--s-2) var(--s-3);border-radius:4px;background:color-mix(in oklab,var(--series) 22%,var(--surface));border-left:3px solid var(--series);min-width:0;transform:scaleX(.96);opacity:0;transform-origin:left center;transition:transform var(--dur-2) var(--ease-out),opacity var(--dur-2) var(--ease-out)}.reveal.is-in .split-seg{transform:none;opacity:1}.split-seg b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:15px}.split-seg span{font-size:11.5px;color:var(--ink-2)}.race{width:100%;max-width:420px;height:auto;display:block}.is-kept{--series:var(--pos);background:var(--pos)}.race-line{fill:none;stroke:var(--series);stroke-width:2.5;stroke-linecap:round}.race-mark{stroke:var(--ink-3);stroke-width:1;stroke-dasharray:4 3}.shock{display:flex;align-items:flex-end;gap:var(--s-5);height:190px}.shock-col{flex:1 1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;gap:var(--s-2)}.shock-bar{display:block;background:var(--series);border-radius:3px;transform:scaleY(0);transform-origin:bottom center;transition:transform var(--dur-2) var(--ease-out)}.reveal.is-in .shock-bar{transform:none}.shock-bar-value{font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shock-bar-caption{font-size:12px;color:var(--ink-2)}.code-list{list-style:none;display:flex;flex-wrap:wrap;gap:var(--s-2);margin:0;padding:0}.wiki-note{border-left:2px solid var(--rule-strong);padding:var(--s-2) 0 var(--s-2) var(--s-4)}.wiki-note-summary{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.6}.wiki-note-link{display:inline-block;margin-top:var(--s-2);font-size:13px;color:var(--link)}.story-end{padding:var(--s-6) 0;border-top:1px solid var(--rule)}.story-end h2{font-size:26px;letter-spacing:-.01em}@media (max-width:560px){.story{padding:0 var(--s-4) 100px}.story-hero{padding-top:var(--s-6)}.story-hero h1{font-size:26px}.bar-row{grid-template-columns:1fr auto}.bar-track{grid-column:1/-1}}