@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/DMMono-400-latin-ext-C2zvOubV.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/DMMono-400-latin-4GdczIuU.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/DMMono-500-latin-ext-BtRyHRi6.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/DMMono-500-latin-DRMDZjhP.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(/assets/Fraunces-300i-latin-ext-DeKB9Eki.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(/assets/Fraunces-300i-latin-Ck6y_GI5.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/Fraunces-300-latin-ext-Ca2vKHc0.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/Fraunces-300-latin-ukD16Tqj.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Fraunces-300-latin-ext-Ca2vKHc0.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Fraunces-300-latin-ukD16Tqj.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Inter-400-latin-ext-DO1Apj_S.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Inter-400-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/Inter-400-latin-ext-DO1Apj_S.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/Inter-400-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Inter-400-latin-ext-DO1Apj_S.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Inter-400-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@custom-variant dark (&:where(.dark,.dark *));:root{--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-display: "Fraunces", Georgia, serif;--fs-micro: 11px;--fs-small: 13px;--fs-body: 15px;--fs-lead: 16px;--bg: #f7f8fa;--surface: #ffffff;--surface2: #f0f2f5;--border: #dde1e7;--accent: #3d7a00;--accent2: #0070a0;--accent3: #c42020;--text: #111827;--muted: #4b5563;--warn: #8f5000;--cash: #0d6a7a;--rental: #6d3bbf;--accent-pill: #c8f060;--accent-pill-hover: #b8e050;--accent-pill-text: #111827}:root.dark{--bg: #0e0f11;--surface: #16181c;--surface2: #1e2128;--border: #2a2d35;--accent: #c8f060;--accent2: #60c8f0;--accent3: #f06060;--text: #e8eaf0;--muted: #9aa3b2;--warn: #f0a060;--cash: #5fc8d8;--rental: #a060f0;--accent-pill: #c8f060;--accent-pill-hover: #d8ff70;--accent-pill-text: #0e0f11}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body,header,.main,.tab-nav,.tab-item,.assumption-card,.kpi,.panel,.panel-section,.chart-box,.pf-table,.field input,.field select,.btn-primary,.btn-secondary,.icon-btn,.setup-checklist,.header-badge,.tab-group-sep,.navd-trigger,.navd-panel,.navd-head,.navd-item,.navd-close,.header-current{transition:background-color .2s ease,border-color .2s ease,color .2s ease}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.65;-webkit-font-smoothing:antialiased;min-height:100vh}.app-root{display:flex;flex-direction:column;min-height:100vh}header{border-bottom:1px solid var(--border);padding:14px 32px;display:flex;align-items:center;gap:16px;flex-shrink:0;background:var(--surface)}header h1{font-family:var(--font-display);font-weight:600;font-size:22px;color:var(--accent);letter-spacing:-.5px;line-height:1}header span{color:var(--muted);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;flex:1}.header-badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-micro);color:var(--muted);border:1px solid var(--border);border-radius:20px;padding:3px 10px;letter-spacing:.5px;white-space:nowrap}.main{padding:28px 32px;overflow-y:auto;flex:1;min-height:0}.section-label{font-size:var(--fs-micro);letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:14px;margin-top:28px;padding-bottom:6px;border-bottom:1px solid var(--border)}.section-label:first-child{margin-top:0}.field{margin-bottom:12px}.field label{display:block;color:var(--muted);font-size:12px;margin-bottom:4px;letter-spacing:.5px}.field input,.field select{width:100%;background:var(--surface2);border:1px solid var(--border);color:var(--text);font-family:var(--font-sans);font-size:15px;padding:7px 10px;border-radius:4px;outline:none;transition:border-color .15s}.field input:focus,.field select:focus{border-color:var(--accent)}.field input[type=range]{padding:4px 0;accent-color:var(--accent);cursor:pointer}.range-row{display:flex;align-items:center;gap:10px}.range-row input[type=range]{flex:1}.range-val{color:var(--accent);font-size:15px;min-width:38px;text-align:right}.btn-row{display:flex;gap:10px;margin-top:24px}button{font-family:var(--font-sans);font-size:13px;letter-spacing:1px;text-transform:uppercase;padding:10px 18px;border-radius:4px;cursor:pointer;border:none;transition:all .15s}.btn-primary{background:var(--accent-pill);color:var(--accent-pill-text);font-weight:500;flex:1}.btn-primary:hover{background:var(--accent-pill-hover)}.btn-secondary{background:var(--surface2);color:var(--muted);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.icon-btn{display:flex;align-items:center;justify-content:center;padding:6px;border:1px solid var(--border);border-radius:6px;background:none;color:var(--muted);cursor:pointer;line-height:0;font-size:inherit;letter-spacing:0;text-transform:none;transition:all .15s}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.share{position:relative;display:flex}.share-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:244px;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #00000029}.share-menu span{text-transform:none;letter-spacing:0;flex:none}.share-title{font-size:var(--fs-micro);letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.share-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.share-item,.share-native,.share-copy{display:flex;align-items:center;justify-content:center;padding:8px 10px;font-size:var(--fs-small);font-family:var(--font-sans);letter-spacing:0;text-transform:none;text-decoration:none;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .15s}.share-item:hover,.share-native:hover,.share-copy:hover{border-color:var(--accent);color:var(--accent)}.share-native{width:100%;margin-bottom:10px;background:var(--accent-pill);color:var(--accent-pill-text);border-color:var(--accent-pill);font-weight:500}.share-native:hover{background:var(--accent-pill-hover);border-color:var(--accent-pill-hover);color:var(--accent-pill-text)}.share-copy{width:100%;margin-top:6px}.income-table,.mc-table,.ontrack-table,.pf-table,.cmp-table,.hiw-table,.gr-table,.kpi-value,.range-val,.plan-card-amount,.hiw-formula,code{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.kpi-value,.insight-score-num{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--accent2);outline-offset:2px;border-radius:3px}.tab-item:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.icon-btn:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.field input:focus-visible,.field select:focus-visible,.pf-form-field input:focus-visible,.pf-form-field select:focus-visible{outline:2px solid var(--accent2);outline-offset:1px;border-color:var(--accent)}.field input,.field select,.pf-form-field input,.pf-form-field select{border-color:color-mix(in srgb,var(--border) 55%,var(--text))}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.chart-box,.hiw-table-wrap,.pf-table-wrap,.cmp-table-wrap,.gr-table-wrap{position:relative}@media (max-width: 768px){.chart-box:after,.hiw-table-wrap:after,.pf-table-wrap:after,.cmp-table-wrap:after,.gr-table-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;width:28px;pointer-events:none;background:linear-gradient(to right,transparent,var(--surface))}}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:16px 18px;position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;top:0;left:0;right:0;height:2px}.kpi.green:before{background:var(--accent)}.kpi.blue:before{background:var(--accent2)}.kpi.red:before{background:var(--accent3)}.kpi.warn:before{background:var(--warn)}.kpi-label{font-size:var(--fs-micro);letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.kpi-value{font-family:var(--font-display);font-size:24px;font-weight:300;letter-spacing:-.5px}.kpi.green .kpi-value{color:var(--accent)}.kpi.blue .kpi-value{color:var(--accent2)}.kpi.red .kpi-value{color:var(--accent3)}.kpi.warn .kpi-value{color:var(--warn)}.kpi-sub{font-size:11px;color:var(--muted);margin-top:4px}.tab-nav{display:flex;align-items:center;gap:4px;margin-bottom:24px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap}.tab-group{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.tab-group-sep{width:1px;height:20px;background:var(--border);margin:0 6px;flex-shrink:0}.tab-item{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:7px;font-family:var(--font-sans);font-size:12px;letter-spacing:.5px;color:var(--muted);text-decoration:none;transition:all .15s;white-space:nowrap;border:1px solid transparent}.tab-item:hover:not(.active){color:var(--text);background:var(--surface2)}.tab-item.active{color:var(--accent-pill-text);background:var(--accent-pill);border-color:transparent}.tab-item.active svg{stroke:var(--accent-pill-text)}.tab-label{line-height:1}.tab-item.disabled{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:7px;font-family:var(--font-sans);font-size:12px;letter-spacing:.5px;color:var(--muted);opacity:.45;cursor:not-allowed;white-space:nowrap;border:1px solid transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.navd-trigger{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px;border-radius:6px;background:none;color:var(--muted);cursor:pointer;line-height:0;font-size:inherit;letter-spacing:0;text-transform:none;border:1px solid color-mix(in srgb,var(--border) 55%,var(--text));transition:all .15s}.navd-trigger:hover{border-color:var(--accent);color:var(--accent)}.navd-trigger:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.header-current{flex:0 0 auto;font-size:var(--fs-micro);letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);border-left:1px solid var(--border);padding-left:12px;white-space:nowrap}.navd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#00000073}.navd-panel{position:fixed;top:0;right:0;bottom:0;z-index:81;width:min(20rem,88vw);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:-8px 0 30px #00000040;overflow-y:auto;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom,0px);animation:navd-in .18s ease}@keyframes navd-in{0%{transform:translate(100%)}to{transform:translate(0)}}.navd-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface)}.navd-title{font-size:var(--fs-micro);letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.navd-close{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px;border:1px solid color-mix(in srgb,var(--border) 55%,var(--text));border-radius:6px;background:none;color:var(--muted);cursor:pointer;line-height:0;letter-spacing:0;text-transform:none}.navd-close:hover{border-color:var(--accent);color:var(--accent)}.navd-nav{padding:8px 12px 20px}.navd-group+.navd-group{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.navd-group-title{display:flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:var(--fs-micro);font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--muted);padding:12px 10px 6px}.navd-hint{display:block;margin:0 10px 6px;padding:8px 10px;border:1px dashed var(--border);border-radius:6px;font-size:var(--fs-small);line-height:1.4;color:var(--warn);text-decoration:none}.navd-hint:hover{border-color:var(--warn)}.navd-list{list-style:none;margin:0;padding:0}.navd-item{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px;border-radius:7px;font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:.2px;color:var(--text);text-decoration:none;border:1px solid transparent;transition:all .15s}.navd-item:hover:not(.active):not(.disabled){background:var(--surface2)}.navd-item.active{color:var(--accent-pill-text);background:var(--accent-pill)}.navd-item.active svg{stroke:var(--accent-pill-text)}.navd-item.disabled{opacity:.45;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--muted)}.navd-item:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.navd-label{flex:1;line-height:1.2}.navd-external{opacity:.6}.assumptions-page{max-width:900px}.assumptions-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin-bottom:28px}.assumptions-title{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--text);margin-bottom:6px}.assumptions-subtitle{font-size:13px;color:var(--muted);line-height:1.7;max-width:480px}.setup-checklist{flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px 18px;min-width:220px;display:flex;flex-direction:column;gap:8px}.setup-step{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.setup-step.done{color:var(--accent)}.setup-ready{margin-top:4px;font-size:11px;color:var(--accent);letter-spacing:.5px;padding-top:8px;border-top:1px solid var(--border)}.setup-pending{margin-top:4px;font-size:11px;color:var(--warn);letter-spacing:.3px;padding-top:8px;border-top:1px solid var(--border);line-height:1.5}.assumptions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.assumption-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px}.assumption-card-header{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--border)}.required-badge{margin-left:auto;font-size:11px;letter-spacing:1px;background:#f0606026;color:var(--accent3);border:1px solid rgba(240,96,96,.3);border-radius:4px;padding:2px 6px;text-transform:uppercase}.assumption-fields{display:flex;flex-direction:column;gap:0}.assumption-fields-2col{display:grid;grid-template-columns:repeat(2,1fr);-moz-column-gap:12px;column-gap:12px}.assumption-gap-block{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border)}.assumption-gap-block .field-note{margin-top:8px}.assumptions-actions{display:flex;align-items:center;gap:12px;padding-top:8px}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}.chart-box{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px;min-width:0}.chart-box.full{grid-column:1 / -1}.chart-title{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.chart-box canvas{max-height:220px}.chart-box.full canvas{max-height:260px}.gr-toolbar{display:flex;flex-wrap:wrap;gap:28px;margin-bottom:18px}.seg-group{border:none;margin:0;padding:0}.seg-legend{font-size:var(--fs-micro);letter-spacing:2px;text-transform:uppercase;color:var(--muted);padding:0;margin-bottom:8px}.seg-options{display:flex;gap:6px}.seg-opt{position:relative;padding:5px 14px;font-size:12px;font-family:var(--font-sans);letter-spacing:.5px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.seg-opt input{position:absolute;width:1px;height:1px;opacity:0;margin:0}.seg-opt:hover{color:var(--text);border-color:var(--accent2)}.seg-opt.selected{background:var(--accent2);color:#000;border-color:var(--accent2);font-weight:600}.seg-opt:focus-within{outline:2px solid var(--accent2);outline-offset:2px}.gr-picker{border:1px solid var(--border);border-radius:6px;padding:12px 14px;margin-bottom:18px;background:var(--surface)}.gr-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.gr-picker-count{font-size:var(--fs-micro);letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.gr-picker-actions{display:flex;gap:4px}.gr-picker-chips{display:flex;flex-wrap:wrap;gap:8px}.gr-chip{display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--border);border-radius:20px;cursor:pointer;transition:all .12s;color:var(--muted)}.gr-chip input{position:absolute;width:1px;height:1px;opacity:0;margin:0}.gr-chip:hover{border-color:var(--accent2)}.gr-chip.selected{border-color:var(--accent2);color:var(--text)}.gr-chip:focus-within{outline:2px solid var(--accent2);outline-offset:2px}.gr-swatch{flex:none}.gr-chip-text{display:flex;flex-direction:column;line-height:1.3}.gr-chip-name{font-size:13px;color:inherit}.gr-chip-sub{font-size:var(--fs-micro);color:var(--muted);letter-spacing:.3px}.gr-table-wrap{overflow-x:auto}.gr-table{min-width:100%}.gr-table th,.gr-table td{white-space:nowrap}.gr-table th.pf-num{text-align:right}.gr-table tbody tr:last-child th{border-bottom:none}.gr-table th:first-child,.gr-table td:first-child{position:sticky;left:0;background:var(--surface);text-align:left;font-weight:400}.gr-table-total{color:var(--accent2)}.gr-empty{padding:24px 0}.chart-readout{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.income-table{width:100%;border-collapse:collapse;margin-top:8px}.income-table th{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 12px;border-bottom:1px solid var(--border)}.income-table td{padding:9px 12px;border-bottom:1px solid var(--border);font-size:13px}.income-table tr:last-child td{border-bottom:none}.income-table .total td{color:var(--accent);font-weight:500;border-top:1px solid var(--border)}.income-table .val{text-align:right}.tag{display:inline-block;font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:2px 6px;border-radius:3px;margin-left:6px}.tag.deferred{background:#f0606026;color:var(--accent3)}.tag.free{background:#c8f06026;color:var(--accent)}.tag.ltcg{background:#60c8f026;color:var(--accent2)}.tag.guaranteed{background:#f0a06026;color:var(--warn)}.tag.rental{background:#a060f026;color:#a060f0}.alert{background:#f0606014;border:1px solid rgba(240,96,96,.3);border-radius:6px;padding:14px 16px;margin-bottom:16px;font-size:13px;line-height:1.7;color:#f08080}.alert strong{color:var(--accent3)}.note{background:#c8f0600f;border:1px solid rgba(200,240,96,.2);border-radius:6px;padding:14px 16px;margin-bottom:16px;font-size:13px;line-height:1.7;color:#b8d870}.ss-callout{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:#f0a06014;border:1px solid rgba(240,160,96,.3);border-radius:6px;padding:16px 18px;margin-bottom:20px}.ss-callout-title{font-weight:500;color:var(--warn);font-size:15px;margin-bottom:3px}.ss-callout-sub{font-size:12px;color:var(--muted);line-height:1.6}.ss-callout-text{flex:1;min-width:180px}.ss-callout-fields{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.ss-callout-fields .field label{color:var(--muted)}.snapshot-mode-hint{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--muted);padding:8px 14px;background:#60c8f00d;border:1px solid rgba(96,200,240,.2);border-radius:5px;margin-bottom:12px}.snapshot-mode-return{background:none;border:1px solid rgba(96,200,240,.4);color:var(--accent2);font-family:var(--font-sans);font-size:12px;padding:3px 10px;border-radius:3px;cursor:pointer;transition:background .12s}.snapshot-mode-return:hover{background:#60c8f01a}.scenario-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}.scenario-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px}.scenario-card h3{font-family:var(--font-display);font-weight:300;font-size:17px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.scenario-card.current h3{color:var(--accent3)}.scenario-card.optimized h3{color:var(--accent)}.scenario-row{display:flex;justify-content:space-between;padding:5px 0;font-size:13px;border-bottom:1px solid rgba(255,255,255,.04)}.scenario-row .val{color:var(--text)}.scenario-row .lbl{color:var(--muted)}.panel{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.trs-note{background:#60c8f00f;border:1px solid rgba(96,200,240,.2);border-radius:6px;padding:14px 16px;margin-top:12px;font-size:13px;color:var(--accent2);line-height:1.7}.ontrack-panel{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;align-items:start;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 22px;margin-bottom:20px}.ontrack-label{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.ontrack-verdict{font-size:21px;font-weight:600;line-height:1.25;margin-bottom:10px}.ontrack-bar{height:6px;border-radius:3px;background:var(--surface2);overflow:hidden;margin-bottom:10px}.ontrack-bar>div{height:100%;border-radius:3px;transition:width .4s ease}.ontrack-blurb{font-size:13px;line-height:1.7;color:var(--muted)}.ontrack-blurb strong{color:var(--text)}.ontrack-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:10px}.ontrack-table th{text-align:left;font-weight:500;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:4px 8px 6px 0;border-bottom:1px solid var(--border)}.ontrack-table td{padding:5px 8px 5px 0;border-bottom:1px solid var(--border);color:var(--text);font-variant-numeric:tabular-nums}.ontrack-table tr.is-baseline td{font-weight:600;background:var(--surface2)}.ontrack-yours{margin-left:6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent2)}.ontrack-panel .btn-primary,.ontrack-panel .btn-secondary{grid-column:1 / -1;justify-self:start}@media (max-width: 860px){.ontrack-panel{grid-template-columns:1fr}}.field-note{margin-top:10px;padding:10px 12px;border-left:2px solid var(--border);background:var(--surface2);border-radius:0 4px 4px 0;font-size:12px;line-height:1.65;color:var(--muted)}.field-note strong{color:var(--text)}.mc-controls{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px;margin-bottom:20px;display:grid;grid-template-columns:repeat(4,1fr) auto;gap:16px;align-items:end}.mc-controls .field{margin-bottom:0}.btn-mc{background:var(--accent2);color:#0e0f11;font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:1px;text-transform:uppercase;padding:10px 18px;border-radius:4px;border:none;cursor:pointer;white-space:nowrap;transition:all .15s;height:-moz-fit-content;height:fit-content}.btn-mc:hover{background:#80d8ff}.btn-mc:disabled{background:var(--muted);cursor:not-allowed}.mc-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.prob-bar-wrap{background:var(--surface2);border-radius:4px;height:8px;margin-top:8px;overflow:hidden}.prob-bar{height:100%;border-radius:4px;transition:width .6s ease}.mc-spinner{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--muted);font-size:13px;letter-spacing:2px;flex-wrap:wrap}.spinner-dot{width:8px;height:8px;border-radius:50%;background:var(--accent2);animation:pulse 1.2s ease-in-out infinite}.spinner-dot:nth-child(2){animation-delay:.2s}.spinner-dot:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1.1)}}.mc-table{width:100%;border-collapse:collapse;font-size:13px}.mc-table th{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 12px;border-bottom:1px solid var(--border)}.mc-table td{padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.04)}.mc-section-title{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--accent2);margin:24px 0 14px;padding-bottom:6px;border-bottom:1px solid var(--border)}.mc-interval-toggle{display:flex;gap:6px;margin-bottom:14px}.mc-toggle-btn{padding:5px 14px;font-size:12px;font-family:var(--font-sans);letter-spacing:.5px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.mc-toggle-btn:hover{color:var(--text);border-color:var(--accent2)}.mc-toggle-btn.active{background:var(--accent2);color:#000;border-color:var(--accent2);font-weight:600}.pf-summary-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:24px}.pf-summary-card{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--muted);border-radius:6px;padding:14px 16px}.pf-summary-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.pf-summary-value{font-family:var(--font-display);font-size:20px;font-weight:300;letter-spacing:-.5px}.pf-summary-sub{font-size:11px;color:var(--muted);margin-top:3px}.pf-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.pf-count{font-size:12px;color:var(--muted);letter-spacing:.5px}.btn-add-account{background:var(--accent);color:#0e0f11;font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:1px;padding:9px 18px;border-radius:4px;border:none;cursor:pointer;transition:background .15s}.btn-add-account:hover{background:#d8ff70}.pf-form-wrap{background:var(--surface);border:1px solid var(--accent);border-radius:6px;padding:20px;margin-bottom:16px;animation:fadeIn .15s ease}.pf-form-row{display:flex;gap:14px;margin-bottom:12px;flex-wrap:wrap}.pf-form-field{display:flex;flex-direction:column;min-width:160px;flex:1}.pf-form-field.pf-form-wide{flex:2}.pf-form-field label{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.pf-form-field input,.pf-form-field select{background:var(--surface2);border:1px solid var(--border);color:var(--text);font-family:var(--font-sans);font-size:15px;padding:7px 10px;border-radius:4px;outline:none;transition:border-color .15s}.pf-form-field input:focus,.pf-form-field select:focus{border-color:var(--accent)}.pf-input-error{border-color:var(--accent3)!important}.pf-form-actions{display:flex;gap:10px;margin-top:4px}.pf-table-wrap{border:1px solid var(--border);border-radius:6px;overflow:hidden}.pf-table{width:100%;border-collapse:collapse;font-size:13px}.pf-table thead tr{background:var(--surface);border-bottom:1px solid var(--border)}.pf-table th{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);padding:10px 14px;text-align:left;font-weight:400}.pf-table th.pf-num{text-align:right}.pf-row{border-bottom:1px solid var(--border);transition:background .1s}.pf-row:last-child{border-bottom:none}.pf-row:hover{background:#ffffff05}.pf-row-editing{background:#c8f06008}.pf-row td{padding:12px 14px;vertical-align:middle}.pf-acct-name{font-size:15px;color:var(--text);margin-bottom:2px}.pf-acct-sub{font-size:11px;color:var(--muted);letter-spacing:.3px}.pf-num{text-align:right}.pf-actions{text-align:right;white-space:nowrap}.pf-btn-icon{background:none;border:1px solid var(--border);color:var(--muted);font-size:13px;padding:4px 8px;border-radius:3px;cursor:pointer;transition:all .12s;margin-left:4px;text-transform:none;letter-spacing:0}.pf-btn-icon:hover{border-color:var(--accent);color:var(--accent)}.pf-btn-del:hover{border-color:var(--accent3)!important;color:var(--accent3)!important}.pf-btn-toolbar{padding:6px 14px;font-size:12px;letter-spacing:.5px}.pf-delete-confirm{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--accent3);white-space:nowrap}.pf-row-editing .pf-form-wrap{border:none;padding:16px 0 4px;margin-bottom:0;background:transparent;animation:none}.pf-row-editing td{padding:0 14px 14px}.pf-empty{text-align:center;padding:60px 20px;color:var(--muted)}.pf-empty-icon{font-size:40px;margin-bottom:14px;opacity:.3}.pf-empty-title{font-family:var(--font-display);font-size:20px;font-weight:300;color:var(--text);margin-bottom:8px}.pf-empty-sub{font-size:13px;line-height:1.7;max-width:360px;margin:0 auto}.pf-contrib-options{background:#60c8f00a;border:1px solid rgba(96,200,240,.15);border-radius:5px;padding:14px 16px;margin-top:4px;display:flex;flex-direction:column;gap:12px}.pf-check-row{display:flex;flex-direction:column;gap:5px}.pf-check-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--text)}.pf-check-label input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent2);cursor:pointer;flex-shrink:0}.pf-check-hint{font-size:12px;color:var(--muted);line-height:1.5;padding-left:22px}.pf-catchup-note{background:#c8f0600f;border:1px solid rgba(200,240,96,.15);border-radius:4px;padding:10px 12px;font-size:12px;color:var(--accent);line-height:1.7;margin-left:22px}.pf-badge{display:inline-block;font-size:11px;letter-spacing:.5px;text-transform:uppercase;padding:1px 5px;border-radius:3px;font-weight:500}.pf-badge-max{background:#60c8f026;color:var(--accent2)}.pf-badge-catchup{background:#c8f0601f;color:var(--accent)}.plan-section-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.plan-impact-banner{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px 24px;border-radius:8px;margin-bottom:24px;border:1px solid}.plan-impact-pos{background:#c8f06012;border-color:#c8f0604d}.plan-impact-neg{background:#f060600f;border-color:#f0606040}.plan-impact-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.plan-impact-delta{font-family:var(--font-display);font-size:36px;font-weight:300;letter-spacing:-1px;line-height:1;margin-bottom:6px}.plan-impact-pos .plan-impact-delta{color:var(--accent)}.plan-impact-neg .plan-impact-delta{color:var(--accent3)}.plan-impact-sub{font-size:13px;color:var(--muted)}.plan-impact-vs{opacity:.6}.plan-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:20px}.plan-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px 18px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s}.plan-card:hover{border-color:#c8f06040}.plan-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.plan-card-identity{min-width:0}.plan-card-name{font-size:15px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-card-meta{font-size:11px;color:var(--muted);margin-top:2px;letter-spacing:.3px}.plan-card-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.plan-delta-badge{font-size:11px;font-weight:500;padding:2px 6px;border-radius:3px;white-space:nowrap}.plan-delta-up{background:#c8f06026;color:var(--accent)}.plan-delta-down{background:#f060601f;color:var(--accent3)}.plan-card-amount{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.plan-card-amount-num{font-family:var(--font-display);font-size:24px;font-weight:300;letter-spacing:-.5px;color:var(--text)}.plan-card-amount-unit{font-size:12px;color:var(--muted)}.plan-card-paycheck{font-size:12px;color:var(--muted);margin-left:auto}.plan-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:var(--border);border-radius:2px;outline:none;cursor:pointer}.plan-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent);cursor:pointer;-webkit-transition:background .15s,transform .1s;transition:background .15s,transform .1s}.plan-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.plan-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent);cursor:pointer;border:none}.plan-card-input-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.plan-card-input-wrap{display:flex;align-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:4px;padding:0 8px;transition:border-color .15s}.plan-card-input-wrap:focus-within{border-color:var(--accent)}.plan-card-prefix{font-size:13px;color:var(--muted);flex-shrink:0}.plan-card-suffix{font-size:12px;color:var(--muted);flex-shrink:0}.plan-card-input{background:transparent;border:none;outline:none;font-family:var(--font-sans);font-size:15px;color:var(--text);width:90px;padding:6px 4px;text-align:right}.plan-limit-chip{font-size:11px;white-space:nowrap;display:flex;align-items:center;gap:5px}.plan-catchup-chip{font-size:11px;background:#c8f0601f;color:var(--accent);border-radius:3px;padding:1px 4px}.plan-catchup-chip.super{background:#60c8f01f;color:var(--accent2)}.plan-limit-bar-wrap{display:flex;flex-direction:column;gap:4px}.plan-limit-bar{height:3px;background:var(--border);border-radius:2px;overflow:hidden}.plan-limit-fill{height:100%;border-radius:2px;transition:width .2s ease,background .2s ease}.plan-over-limit{font-size:11px;color:var(--accent3)}.plan-match-row{font-size:12px;color:var(--muted);padding:6px 8px;background:#c8f0600d;border:1px solid rgba(200,240,96,.12);border-radius:4px}.plan-match-warn{color:var(--accent3);background:#f060600f;border-color:#f0606033}.plan-changes-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:6px}.plan-change-chip{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:4px}.plan-change-chip strong{color:var(--text)}.plan-save-footer{display:flex;flex-direction:column;gap:10px;padding:18px 20px;background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:0}.plan-save-row{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.plan-save-actions{display:flex;gap:8px;flex-shrink:0}.plan-save-actions .btn-primary:disabled{opacity:.4;cursor:default}.plan-status{padding:10px 16px;border-radius:5px;font-size:13px;line-height:1.5}.plan-status-active{background:#c8f06014;border:1px solid rgba(200,240,96,.3);color:var(--accent)}.plan-status-inactive{background:#6b728014;border:1px solid var(--border);color:var(--muted)}.plan-saved-cards{display:flex;flex-direction:column;gap:10px}.plan-saved-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s}.plan-saved-card.loaded{border-color:var(--accent)}.plan-saved-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.plan-saved-card-name{font-size:15px;font-weight:500;color:var(--text);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.plan-saved-card-meta{font-size:12px;color:var(--muted);margin-top:3px}.plan-saved-card-actions{display:flex;gap:8px;flex-shrink:0}.plan-saved-card-actions .btn-secondary:disabled{opacity:.4;cursor:default}.plan-saved-changes{display:flex;flex-wrap:wrap;gap:8px}.saved-plan-active-tag{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:1px 6px}.saved-plans-empty{font-size:13px;color:var(--muted);padding:14px 16px;border:1px dashed var(--border);border-radius:6px}.cmp-table-wrap{overflow-x:auto;margin-bottom:16px}.cmp-table th,.cmp-table td{white-space:nowrap}.cmp-col-head{min-width:130px}.cmp-col-sub{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:400}.cmp-metric-label{color:var(--muted);font-size:13px}.insight-score-box{display:flex;align-items:center;gap:24px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px 24px;margin-bottom:24px}.insight-score-ring{width:96px;height:96px;border:3px solid;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.insight-score-num{font-family:var(--font-display);font-size:32px;font-weight:300;line-height:1}.insight-score-max{font-size:11px;color:var(--muted);margin-top:2px}.insight-score-grade{font-family:var(--font-display);font-size:20px;font-weight:300;margin-bottom:6px}.insight-score-sub{font-size:13px;color:var(--muted);line-height:1.6;max-width:560px}.insight-score-counts{display:flex;gap:16px;margin-top:10px;font-size:12px}.insight-group{margin-bottom:22px}.insight-group-title{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.insight-card{background:var(--surface);border:1px solid var(--border);border-left-width:3px;border-radius:6px;padding:14px 16px;margin-bottom:10px}.insight-card.insight-good{border-left-color:var(--accent)}.insight-card.insight-warn{border-left-color:var(--warn)}.insight-card.insight-bad{border-left-color:var(--accent3)}.insight-card-head{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.insight-icon{font-size:15px;flex-shrink:0}.insight-good .insight-icon{color:var(--accent)}.insight-warn .insight-icon{color:var(--warn)}.insight-bad .insight-icon{color:var(--accent3)}.insight-title{font-size:15px;font-weight:500;color:var(--text);flex:1}.insight-category{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);flex-shrink:0}.insight-detail{font-size:13px;color:var(--muted);line-height:1.65}.insight-action{margin-top:8px;padding:8px 12px;font-size:13px;line-height:1.6;color:var(--text);background:#60c8f00f;border:1px solid rgba(96,200,240,.15);border-radius:5px}.insight-action strong{color:var(--accent2)}@media (max-width: 1100px){.layout{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border)}.kpi-grid{grid-template-columns:repeat(2,1fr)}.chart-grid,.scenario-compare{grid-template-columns:1fr}.pf-summary-grid{grid-template-columns:repeat(3,1fr)}.mc-controls{grid-template-columns:1fr 1fr}.mc-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){header{padding:12px 16px;flex-wrap:wrap}.gr-toolbar{flex-direction:column;gap:14px}.gr-chip{min-height:44px}header h1{font-size:20px}.header-badge{display:none}.main{padding:12px 16px}.icon-btn{min-width:44px;min-height:44px}.header-account{min-height:44px;display:inline-flex;align-items:center}.assumptions-intro{flex-direction:column}.assumptions-grid,.assumption-fields-2col{grid-template-columns:1fr}.pf-summary-grid{grid-template-columns:repeat(2,1fr)}.mc-controls{grid-template-columns:1fr}.insight-score-box{flex-direction:column;text-align:center}.insight-score-counts{justify-content:center}.saved-plan-row{flex-direction:column;align-items:flex-start}.plan-cards-grid{grid-template-columns:1fr}.plan-save-row{flex-direction:column;align-items:stretch}.plan-save-actions{justify-content:flex-end}.plan-saved-card-top{flex-direction:column;align-items:flex-start}}.hiw-page{max-width:860px}.hiw-hero{padding-bottom:28px;margin-bottom:32px;border-bottom:1px solid var(--border)}.hiw-title{font-family:var(--font-display);font-weight:300;font-size:28px;color:var(--text);margin-bottom:10px}.hiw-subtitle{font-size:15px;color:var(--muted);line-height:1.7;max-width:600px}.hiw-section{margin-bottom:40px;padding-bottom:36px;border-bottom:1px solid var(--border)}.hiw-section:last-child{border-bottom:none;margin-bottom:0}.hiw-h2{font-family:var(--font-display);font-weight:300;font-size:20px;color:var(--accent2);margin-bottom:14px}.hiw-h3{font-size:15px;font-weight:600;color:var(--text);margin:18px 0 8px;letter-spacing:.3px}.hiw-section p{font-size:13px;color:var(--muted);line-height:1.75;margin-bottom:10px}.hiw-section p strong{color:var(--text)}.hiw-section p code{color:var(--accent2);font-size:12px}.hiw-section p em{color:var(--text);font-style:italic}.hiw-formula{font-family:var(--font-sans);font-size:13px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:12px 16px;color:var(--accent2);margin:12px 0;letter-spacing:.3px}.hiw-list{font-size:13px;color:var(--muted);line-height:1.8;padding-left:20px;margin-bottom:10px}.hiw-list li{margin-bottom:4px}.hiw-list strong{color:var(--text)}.hiw-list code{color:var(--accent2);font-size:12px}.hiw-list-ol{list-style-type:decimal}.hiw-table-wrap{overflow-x:auto;margin:12px 0}.hiw-table{width:100%;border-collapse:collapse;font-size:13px}.hiw-table th{text-align:left;color:var(--muted);font-weight:500;font-size:12px;letter-spacing:.5px;text-transform:uppercase;padding:8px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.hiw-table td{padding:9px 12px;color:var(--muted);border-bottom:1px solid rgba(255,255,255,.04);vertical-align:top;line-height:1.6}.hiw-table td:first-child{color:var(--text);font-weight:500;white-space:nowrap}.hiw-table tr:last-child td{border-bottom:none}.hiw-callout{border-radius:6px;padding:14px 16px;margin:16px 0 0;font-size:13px;line-height:1.7}.hiw-callout code{font-size:12px}.hiw-callout-warn{background:#f0a06014;border:1px solid rgba(240,160,96,.3);color:var(--warn)}.hiw-callout-warn strong{color:var(--warn)}.hiw-callout-warn code{color:var(--warn);opacity:.85}.hiw-callout-info{background:#60c8f00f;border:1px solid rgba(96,200,240,.2);color:var(--accent2)}.hiw-callout-info strong{color:var(--accent2)}.hiw-current{color:var(--accent3)}.hiw-opt{color:var(--accent)}.auth-panel{max-width:400px;margin:40px auto 0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:24px}.auth-panel h2{font-family:var(--font-display);font-weight:300;font-size:20px;color:var(--text);margin-bottom:16px}.auth-panel p{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:10px}.auth-panel p strong{color:var(--text)}.auth-error{font-size:13px;color:var(--accent3);line-height:1.6;margin:10px 0 0}.auth-note{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:12px}.auth-footer{display:flex;flex-direction:column;gap:6px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border);font-size:13px;color:var(--muted)}.auth-footer a,.auth-panel a{color:var(--accent2);text-decoration:none}.auth-footer a:hover,.auth-panel a:hover{text-decoration:underline}.link-button{background:none;border:none;padding:0;font:inherit;color:var(--accent2);cursor:pointer;text-decoration:underline}.header-account{font-size:12px;color:var(--accent2);text-decoration:none;padding:5px 10px;border:1px solid var(--border);border-radius:20px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-account:hover{border-color:var(--accent2)}.account-page{max-width:560px}.account-page .panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 24px;margin-bottom:16px}.account-page h2{font-family:var(--font-display);font-weight:300;font-size:17px;color:var(--text);margin-bottom:12px}.account-page p{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:10px}.account-page p strong{color:var(--text)}.account-page a{color:var(--accent2)}.sync-indicator{display:inline-flex;align-items:center;gap:5px;font-size:11px;letter-spacing:.5px;padding:5px 10px;border-radius:20px;border:1px solid var(--border);color:var(--muted);white-space:nowrap}.sync-indicator a{color:var(--accent2);margin-left:4px}.sync-synced{color:var(--accent);border-color:#60f0964d}.sync-pending,.sync-syncing{color:var(--accent2)}.sync-error{color:var(--accent3);border-color:#f060604d}.sync-conflict{position:fixed;top:70px;right:20px;z-index:100;max-width:340px;background:var(--surface);border:1px solid var(--accent2);border-radius:8px;padding:16px 18px;box-shadow:0 8px 30px #00000059}.sync-conflict p{font-size:13px;color:var(--text);line-height:1.7;margin-bottom:12px}.upgrade-page{max-width:620px}.upgrade-page>.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 24px;margin-bottom:16px}.upgrade-page h2{font-family:var(--font-display);font-weight:300;font-size:20px;color:var(--text);margin-bottom:12px}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.pricing-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:22px 24px;text-align:center}.pricing-card h3{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.pricing-featured{border-color:var(--accent)}.pricing-amount{font-family:var(--font-display);font-weight:300;font-size:30px;color:var(--text);margin-bottom:6px}.pricing-amount span{font-size:15px;color:var(--muted)}.pricing-savings{font-size:12px;color:var(--accent);margin-bottom:10px}.pricing-card .btn-primary{margin-top:12px;width:100%}@media (max-width: 768px){.pricing-grid{grid-template-columns:1fr}}.google-signin{margin-top:16px}.auth-divider{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.hv-hero{padding:4px 0 22px;border-bottom:1px solid var(--border);margin-bottom:24px}.hv-hero-title{font-size:26px;font-weight:600;letter-spacing:-.4px;margin:0 0 8px}.hv-hero-sub{color:var(--muted);font-size:13.5px;line-height:1.6;max-width:68ch;margin:0}.hv-list{display:flex;flex-direction:column;gap:18px}.hv-card{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.hv-card-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;padding:16px}.hv-player video{width:100%;display:block;border-radius:8px;background:#000;aspect-ratio:16 / 9}.hv-card-head{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.hv-num{font-family:DM Mono,ui-monospace,monospace;font-size:12px;color:var(--muted);letter-spacing:1px}.hv-title{font-size:17px;font-weight:600;margin:0;line-height:1.3}.hv-blurb{color:var(--muted);font-size:15px;line-height:1.55;margin:0 0 8px}.hv-duration{font-family:DM Mono,ui-monospace,monospace;font-size:12px;color:var(--muted);margin-bottom:14px}.hv-chapters-label{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.hv-chapters{display:flex;flex-wrap:wrap;gap:6px}.hv-chip{display:inline-flex;align-items:baseline;gap:6px;font:inherit;font-size:13px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface2);color:var(--text);cursor:pointer;transition:border-color .12s,background .12s}.hv-chip:hover{border-color:var(--accent);background:var(--surface)}.hv-chip-time{font-family:DM Mono,ui-monospace,monospace;font-size:10.5px;color:var(--muted)}.hv-footer{margin-top:24px}@media (max-width: 860px){.hv-card-body{grid-template-columns:1fr}}.consent-banner{position:fixed;inset-inline:0;bottom:0;z-index:60;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -4px 16px #0000001f;padding:.9rem 1rem calc(.9rem + env(safe-area-inset-bottom,0px))}.consent-inner{max-width:60rem;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.consent-copy{flex:1 1 22rem;min-width:0}.consent-copy strong{display:block;color:var(--text);font-size:.95rem;margin-bottom:.15rem}.consent-copy p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.45}.consent-actions{display:flex;gap:.6rem;flex:0 0 auto}.consent-btn{min-width:7.5rem;min-height:44px}@media (max-width: 32rem){.consent-actions{width:100%}.consent-btn{flex:1 1 0}}.consent-settings-link{background:none;border:none;padding:0;color:var(--accent);font:inherit;font-size:.85rem;text-decoration:underline;cursor:pointer}.setup-offer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding:1.1rem 1.25rem;background:var(--surface);border:1px solid var(--accent);border-radius:10px}.setup-offer h3{margin:0 0 .3rem;font-size:1.05rem;color:var(--text)}.setup-offer p{margin:0;max-width:52ch;font-size:.88rem;line-height:1.5;color:var(--muted)}.setup-offer .btn-primary{flex:0 0 auto;padding:.6rem 1.1rem}.wiz{max-width:44rem;margin:0 auto;padding:.5rem 0 3rem}.wiz-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.wiz-rail{display:flex;flex:1;flex-wrap:wrap;gap:.35rem .9rem;margin:0;padding:0;list-style:none}.wiz-rail-btn{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;padding:0;font:inherit;font-size:.8rem;color:var(--muted)}.wiz-rail-item.done .wiz-rail-btn{cursor:pointer;color:var(--accent)}.wiz-rail-item.current .wiz-rail-btn{color:var(--text)}.wiz-rail-num{display:grid;place-items:center;width:1.3rem;height:1.3rem;border-radius:50%;border:1px solid var(--border);font-size:.7rem;flex-shrink:0}.wiz-rail-item.current .wiz-rail-num{border-color:var(--accent);background:var(--accent-pill);color:var(--accent-pill-text);font-weight:500}.wiz-rail-item.done .wiz-rail-num{border-color:var(--accent);color:var(--accent)}.wiz-exit{flex:0 0 auto;background:none;border:none;padding:.3rem 0;font:inherit;font-size:.83rem;color:var(--muted);text-decoration:underline;cursor:pointer}.wiz-exit:hover{color:var(--text)}.wiz-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.75rem}.wiz-count{margin:0 0 .5rem;font-size:.73rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.wiz-title{margin:0;font-size:1.6rem;line-height:1.2;color:var(--text)}.wiz-subtitle{margin:.55rem 0 0;max-width:54ch;font-size:.92rem;line-height:1.55;color:var(--muted)}.wiz-step-body{display:flex;flex-direction:column;gap:1.35rem;margin-top:1.75rem}.wiz-lead{margin:0;font-size:.95rem;line-height:1.6;color:var(--text)}.wiz-promises{display:flex;flex-direction:column;gap:.7rem;margin:0;padding-left:1.1rem}.wiz-promises li{font-size:.88rem;line-height:1.55;color:var(--muted)}.wiz-promises strong{color:var(--text)}.wiz-row{display:flex;flex-wrap:wrap;gap:1.35rem}.wiz-row>*{flex:1 1 13rem}.wiz-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.wiz-label{font-size:.92rem;font-weight:500;color:var(--text)}.wiz-input-wrap{display:flex;align-items:center;gap:.4rem;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:0 .7rem}.wiz-input-wrap:focus-within{border-color:var(--accent)}.wiz-input-wrap.invalid{border-color:var(--accent3)}.wiz-input-wrap input{flex:1;min-width:0;background:none;border:none;padding:.7rem 0;font:inherit;font-size:1.05rem;color:var(--text)}.wiz-input-wrap input:focus{outline:none}.wiz-input-wrap:has(input:disabled){background:var(--surface2)}.wiz-input-wrap input:disabled{color:var(--muted);cursor:not-allowed}.wiz-input-wrap input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.wiz-input-wrap input::-webkit-outer-spin-button,.wiz-input-wrap input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.wiz-affix{flex:0 0 auto;font-size:.95rem;color:var(--muted)}.wiz-hint{font-size:.8rem;line-height:1.5;color:var(--muted)}.wiz-hint-block{display:block;margin-bottom:.6rem}.wiz-tiles-group{border:none;margin:0;padding:0;min-width:0}.wiz-tiles-group>.wiz-label{display:block;padding:0;margin-bottom:.5rem}.wiz-tiles{display:grid;grid-template-columns:repeat(var(--wiz-tile-cols, 2),minmax(0,1fr));gap:.6rem}.wiz-tile{display:flex;flex-direction:column;gap:.15rem;padding:.7rem .8rem;background:var(--surface2);border:1px solid var(--border);border-radius:8px;cursor:pointer;min-height:44px}.wiz-tile:hover{border-color:var(--accent)}.wiz-tile.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface2))}.wiz-tile input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.wiz-tile:focus-within{outline:2px solid var(--accent);outline-offset:2px}.wiz-tile-label{font-size:.88rem;font-weight:500;color:var(--text)}.wiz-tile-detail{font-size:.76rem;line-height:1.4;color:var(--muted)}.wiz-error,.wiz-warn,.wiz-aside{margin:0;border-radius:8px;padding:.7rem .85rem;font-size:.84rem;line-height:1.55}.wiz-error{background:color-mix(in srgb,var(--accent3) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent3) 35%,transparent);color:var(--text)}.wiz-warn{background:color-mix(in srgb,var(--warn) 12%,transparent);border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);color:var(--text)}.wiz-aside{background:var(--surface2);border:1px solid var(--border);color:var(--muted)}.wiz-aside strong{color:var(--text)}.wiz-acct-list{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}.wiz-acct{display:flex;align-items:center;gap:.7rem;padding:.7rem .85rem;background:var(--surface2);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap}.wiz-acct-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%}.wiz-acct-main{flex:1 1 10rem;min-width:0}.wiz-acct-name{display:block;font-size:.9rem;font-weight:500;color:var(--text);overflow-wrap:anywhere}.wiz-acct-meta{font-size:.77rem;color:var(--muted)}.wiz-acct-figs{display:flex;flex-direction:column;align-items:flex-end;font-size:.85rem;color:var(--text);font-variant-numeric:tabular-nums}.wiz-acct-contrib{font-size:.76rem;color:var(--accent)}.wiz-acct-actions{display:flex;align-items:center;gap:.75rem;flex:0 0 auto}.wiz-acct-note{font-size:.76rem;color:var(--muted)}.wiz-acct-editing{list-style:none}.wiz-acct-total{margin:0;font-size:.85rem;color:var(--muted)}.wiz-acct-total strong{color:var(--text);font-variant-numeric:tabular-nums}.wiz-link{background:none;border:none;padding:0;font:inherit;font-size:.8rem;color:var(--accent);text-decoration:underline;cursor:pointer}.wiz-link-danger{color:var(--accent3)}.wiz-add-btn{align-self:flex-start;background:none;border:1px dashed var(--border);border-radius:8px;padding:.6rem 1rem;font:inherit;font-size:.86rem;color:var(--muted);cursor:pointer;min-height:44px}.wiz-add-btn:hover{border-color:var(--accent);color:var(--accent)}.wiz-panel{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:1.1rem}.wiz-account-form{display:flex;flex-direction:column;gap:1.1rem}.wiz-checks{display:flex;flex-direction:column;gap:.85rem;border:1px solid color-mix(in srgb,var(--accent2) 22%,transparent);background:color-mix(in srgb,var(--accent2) 6%,transparent);border-radius:10px;padding:.85rem .95rem}.wiz-check-row{display:flex;flex-direction:column;gap:.3rem}.wiz-check-label{display:flex;align-items:center;gap:.55rem;cursor:pointer;font-size:.88rem;font-weight:500;color:var(--text)}.wiz-check-label input[type=checkbox]{width:1rem;height:1rem;flex:0 0 auto;accent-color:var(--accent2);cursor:pointer}.wiz-check-hint{padding-left:1.55rem;font-size:.76rem;line-height:1.5;color:var(--muted)}.wiz-check-hint strong{color:var(--text)}.wiz-form-actions,.wiz-nav-fwd{display:flex;align-items:center;gap:.75rem}.wiz-form-actions .btn-primary,.wiz-form-actions .btn-secondary,.wiz-nav-fwd .btn-primary{flex:0 0 auto;padding:.6rem 1.2rem}.wiz-review{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem;margin:0}.wiz-review dt{font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem}.wiz-review dd{margin:0;font-size:1.1rem;color:var(--text);font-variant-numeric:tabular-nums}.wiz-review-sub{display:block;font-size:.75rem;color:var(--muted);font-variant-numeric:normal}.wiz-review-accounts{display:flex;flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none}.wiz-review-accounts li{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--text)}.wiz-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--border)}.wiz-nav .btn-secondary{flex:0 0 auto;padding:.6rem 1.2rem}.wiz-blocked{font-size:.8rem;color:var(--muted);text-align:right;max-width:22rem}.wiz-nav-fwd .btn-primary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 34rem){.wiz-card{padding:1.15rem}.wiz-title{font-size:1.35rem}.wiz-tiles{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr))}.wiz-nav,.wiz-nav-fwd{flex-direction:column;align-items:stretch}.wiz-nav-fwd .btn-primary,.wiz-nav .btn-secondary{width:100%}.wiz-blocked{text-align:left;max-width:none}.wiz-rail-label{display:none}}.trs-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 28px;margin-bottom:16px}.scenario-compare.is-single{grid-template-columns:1fr}.flow-figure{margin:14px 0 4px}.flow-svg{display:block;width:100%;height:auto}.flow-sankey{margin-inline:auto}.flow-empty{padding:28px 16px;text-align:center;font-size:13px;color:var(--muted)}.flow-fill--guaranteed{fill:var(--warn);stroke:var(--warn)}.flow-fill--rental{fill:#a060f0;stroke:#a060f0}.flow-fill--deferred{fill:var(--accent3);stroke:var(--accent3)}.flow-fill--free{fill:var(--accent);stroke:var(--accent)}.flow-fill--ltcg{fill:var(--accent2);stroke:var(--accent2)}.flow-fill--tax{fill:var(--accent3);stroke:var(--accent3)}.flow-fill--spend{fill:var(--accent);stroke:var(--accent)}.flow-fill--surplus{fill:var(--accent2);stroke:var(--accent2)}.flow-fill--shortfall{fill:var(--accent3);stroke:var(--accent3)}.flow-text--guaranteed{fill:var(--warn)}.flow-text--rental{fill:#a060f0}.flow-text--deferred{fill:var(--accent3)}.flow-text--free{fill:var(--accent)}.flow-text--ltcg{fill:var(--accent2)}.flow-text--tax{fill:var(--accent3)}.flow-text--spend{fill:var(--accent)}.flow-text--surplus{fill:var(--accent2)}.flow-text--shortfall{fill:var(--accent3)}.flow-ribbon{fill-opacity:.24;stroke-width:0;transition:fill-opacity .15s ease}.flow-ribbon:hover{fill-opacity:.46}.flow-bar{fill-opacity:.92;stroke-width:0}.flow-bar.is-use{fill-opacity:.2;stroke-width:1.5}.flow-bar--shortfall{stroke:var(--accent3);stroke-width:1.5}.flow-hatch-line{stroke:var(--accent3)}.flow-label{fill:var(--text);font-family:var(--font-sans)}.flow-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.flow-treemap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,var(--flow-col-max, 1fr)));justify-content:center;gap:18px;margin:14px 0 4px}.flow-treemap-title{font-size:var(--fs-micro);letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.flow-tile-rect{fill-opacity:.2;stroke-width:1}.flow-tile:hover .flow-tile-rect{fill-opacity:.34}.flow-tile-label{fill:var(--text);font-family:var(--font-sans)}.flow-tile-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.flow-legend{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;margin:12px 0 0;padding:0}.flow-legend-item{display:flex;align-items:center;gap:6px;font-size:var(--fs-micro)}.flow-swatch{width:10px;height:10px;border-radius:2px;flex:none}.flow-swatch--guaranteed{background:var(--warn)}.flow-swatch--rental{background:#a060f0}.flow-swatch--deferred{background:var(--accent3)}.flow-swatch--free{background:var(--accent)}.flow-swatch--ltcg{background:var(--accent2)}.flow-swatch--tax{background:var(--accent3)}.flow-swatch--spend{background:var(--accent)}.flow-swatch--surplus{background:var(--accent2)}.flow-swatch--shortfall{background:transparent;border:1px dashed var(--accent3)}.flow-legend-label{color:var(--muted)}.flow-legend-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text)}.flow-caption{margin-top:12px;padding:10px 12px;border-left:2px solid var(--border);font-size:var(--fs-small);line-height:1.7;color:var(--muted)}@media (max-width: 699px){.flow-treemap-grid{grid-template-columns:1fr}.trs-toolbar{gap:14px 18px}}.limit-notice{margin:12px 0 4px;padding:12px 14px;border-left:2px solid var(--warn);border-radius:0 4px 4px 0;background:#f0a06012;font-size:var(--fs-small);line-height:1.65;color:var(--muted)}.limit-notice strong{color:var(--text)}.limit-notice a{color:var(--accent2)}.limit-notice a:hover{color:var(--accent)}.wiz-panel+.limit-notice,.wiz-step .limit-notice{margin-top:16px}.flow-fill--cash{fill:var(--cash);stroke:var(--cash)}.flow-text--cash{fill:var(--cash)}.flow-swatch--cash{background:var(--cash)}.ov-eyebrow{font-size:var(--fs-micro);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:34px 0 12px;display:flex;align-items:center;gap:10px}.ov-eyebrow:after{content:"";flex:1;height:1px;background:var(--border)}.ov-skel{display:block;background:linear-gradient(90deg,var(--surface2) 25%,var(--border) 50%,var(--surface2) 75%);background-size:200% 100%;animation:ov-shimmer 1.4s ease-in-out infinite}@keyframes ov-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.ov-skel{animation:none;background:var(--surface2)}}.ov-pending-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ov-answer-error{font-size:var(--fs-small);color:var(--warn);padding:12px 14px;border:1px solid var(--warn);border-radius:6px;background:#f0a06014}.ov-verdict{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:clamp(18px,3vw,28px);margin-bottom:4px}.ov-verdict-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(18px,3vw,38px);align-items:center}@media (max-width: 900px){.ov-verdict-grid{grid-template-columns:1fr}}.ov-answer{font-family:var(--font-display);font-weight:300;font-size:clamp(23px,3.2vw,35px);line-height:1.22;letter-spacing:-.6px;text-wrap:balance;margin:0 0 12px}.ov-answer b{font-weight:600}.ov-good{color:var(--accent);font-weight:600}.ov-bad{color:var(--accent3);font-weight:600}.ov-answer-sub{font-size:var(--fs-small);color:var(--muted);line-height:1.7;max-width:62ch;margin:0}.ov-answer-sub strong{color:var(--text);font-weight:500}.ov-caveat{font-size:var(--fs-micro);color:var(--warn);margin:10px 0 0;max-width:62ch;line-height:1.6}.ov-fundchip{display:inline-flex;align-items:baseline;gap:8px;border-radius:999px;padding:5px 15px 6px;margin-bottom:14px;font-size:var(--fs-micro);letter-spacing:.14em;text-transform:uppercase}.ov-fundchip b{font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:0}.ov-fundchip.is-good{background:#c8f0601a;color:var(--accent)}.ov-fundchip.is-bad{background:#f060601a;color:var(--accent3)}:root:not(.dark) .ov-fundchip.is-good{background:#3d7a001a}:root:not(.dark) .ov-fundchip.is-bad{background:#c4202017}.ov-verdict-empty{grid-column:1 / -1}.ov-bars{display:grid;gap:14px}.ov-barrow{display:grid;gap:5px}.ov-barhead{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.ov-barlabel{font-size:var(--fs-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.ov-barfig{font-family:var(--font-display);font-size:26px;font-weight:300;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.ov-bartrack{height:22px;background:var(--surface2);border-radius:4px;overflow:hidden;display:flex}.ov-fill{height:100%;flex:none}.ov-fill.need{background:var(--accent2)}.ov-fill.base{background:var(--accent2);opacity:.45}.ov-fill.surplus{background:var(--accent)}.ov-fill.short{background:repeating-linear-gradient(135deg,var(--accent3) 0 2px,transparent 2px 7px);border-left:2px dashed var(--accent3)}.ov-barnote{font-size:var(--fs-micro);color:var(--muted);line-height:1.6}.ov-barnote b{color:var(--text)}.ov-nom{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.ov-ribbon{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px clamp(16px,2.5vw,26px) 14px}.ov-ribbon-scroll{overflow-x:auto}.ov-ribbon-inner{min-width:660px}.ov-pins{position:relative;height:98px}.ov-pin{position:absolute;bottom:0;transform:translate(-50%);width:126px;text-align:center;display:flex;flex-direction:column;gap:1px}.ov-pin:after{content:"";display:block;width:1px;height:14px;margin:5px auto 0;background:var(--muted);opacity:.55}.ov-pin.low:after{height:48px}.ov-pin.edge-start{transform:translate(0);text-align:left}.ov-pin.edge-start:after{margin-left:0}.ov-pin.edge-end{transform:translate(-100%);text-align:right}.ov-pin.edge-end:after{margin-right:0}.ov-pin-age{font-family:var(--font-mono);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}.ov-pin-what{font-size:var(--fs-micro);color:var(--muted);line-height:1.35}.ov-pin.is-hero .ov-pin-age{color:var(--accent);font-size:14px}.ov-pin.is-bad .ov-pin-age{color:var(--accent3)}.ov-pin.is-bad:after{background:var(--accent3);opacity:1}.ov-ribbon-track{position:relative;height:13px;border-radius:3px;overflow:hidden;background:var(--surface2);margin-bottom:8px}.ov-seg{position:absolute;top:0;bottom:0}.ov-seg.work{background:var(--accent2);opacity:.35}.ov-seg.retired{background:var(--accent);opacity:.55}.ov-seg.dead{background:repeating-linear-gradient(135deg,var(--accent3) 0 2px,transparent 2px 6px)}.ov-ribbon-scale{position:relative;height:18px;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--muted)}.ov-ribbon-scale span{position:absolute;transform:translate(-50%)}.ov-ribbon-scale span.first{transform:translate(0)}.ov-ribbon-scale span.last{transform:translate(-100%)}.ov-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-bottom:4px}.ov-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px 20px 20px;display:flex;flex-direction:column;gap:10px;min-width:0}.ov-card.span4{grid-column:span 4}.ov-card.span5{grid-column:span 5}.ov-card.span7{grid-column:span 7}.ov-card.span8{grid-column:span 8}.ov-card.span12{grid-column:span 12}@media (max-width: 1000px){.ov-card.span4,.ov-card.span5,.ov-card.span7,.ov-card.span8{grid-column:span 12}}.ov-q{font-size:var(--fs-small);color:var(--muted);margin:0;line-height:1.6}.ov-q em{font-style:normal;color:var(--text);font-weight:500}.ov-big{font-family:var(--font-display);font-weight:300;font-size:clamp(28px,3.4vw,38px);line-height:1.05;letter-spacing:-1px;font-variant-numeric:tabular-nums;margin:0}.ov-say{font-size:var(--fs-small);color:var(--muted);margin:0;line-height:1.7}.ov-say strong{color:var(--text);font-weight:500}.ov-phase{display:flex;flex-direction:column;gap:9px}.ov-phase+.ov-phase{border-top:1px solid var(--border);padding-top:16px}.ov-phase-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.ov-phase-age{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--text)}.ov-phase-tag{font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ov-pay{display:flex;height:38px;border-radius:5px;overflow:hidden}.ov-pay i{display:block;flex:none}.ov-paykey{display:flex;flex-wrap:wrap;gap:4px 20px}.ov-paykey div{display:flex;align-items:baseline;gap:7px;font-size:var(--fs-small)}.ov-sw{width:9px;height:9px;border-radius:2px;flex:none}.ov-paykey b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:500}.ov-paykey small{color:var(--muted)}.ov-floorstat{display:grid;gap:14px}.ov-floorstat>div{display:flex;align-items:baseline;gap:11px}.ov-floorpct{font-family:var(--font-display);font-size:31px;font-weight:300;letter-spacing:-1px;line-height:1;flex:none}.ov-floorpct.good{color:var(--accent)}.ov-floorpct.bad{color:var(--accent3)}.ov-floorwhen{font-size:var(--fs-small);color:var(--muted);line-height:1.45}.ov-floor{font-size:var(--fs-small);color:var(--muted);margin:0;border-left:2px solid var(--border);padding-left:12px;line-height:1.7}.ov-floor strong{color:var(--text);font-weight:500}.ov-levers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 860px){.ov-levers{grid-template-columns:1fr}}.ov-lever{border:1px solid var(--border);border-radius:8px;padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;background:var(--bg)}.ov-lever.pick{border-color:var(--accent);background:#c8f06012}:root:not(.dark) .ov-lever.pick{background:#3d7a0012}.ov-lever-tag{font-size:var(--fs-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}.ov-lever.pick .ov-lever-tag{color:var(--accent);font-weight:600}.ov-lever-fig{font-family:var(--font-display);font-size:24px;font-weight:300;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.ov-lever-say{font-size:var(--fs-small);color:var(--muted);line-height:1.6}.ov-cheapest{font-size:9px;letter-spacing:.1em;background:var(--accent);color:var(--bg);border-radius:3px;padding:1px 6px;font-weight:700}.ov-tablewrap{overflow-x:auto}.ov-table{width:100%;border-collapse:collapse;font-size:var(--fs-small);min-width:620px;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.ov-table th{text-align:left;font-family:var(--font-sans);font-weight:500;font-size:var(--fs-micro);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:4px 0 7px;border-bottom:1px solid var(--border);white-space:nowrap}.ov-table td{padding:8px 0;border-bottom:1px solid var(--border);color:var(--text);white-space:nowrap}.ov-table th+th,.ov-table td+td{padding-left:22px}.ov-table th.num,.ov-table td.num{text-align:right}.ov-table th.viz,.ov-table td.viz{width:28%;min-width:190px}.ov-table tr.mine td{background:var(--surface2);font-weight:500}.ov-table .ok{color:var(--accent)}.ov-table .no{color:var(--accent3)}.ov-yours{margin-left:7px;font-family:var(--font-sans);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent2)}.ov-vizbar{display:flex;align-items:center;height:16px;overflow:hidden}.ov-vizbar i{display:block;height:9px;border-radius:2px;flex:none}.ov-vizbar i.have{background:var(--accent2)}.ov-vizbar i.over{background:var(--accent)}.ov-vizbar i.under{background:repeating-linear-gradient(135deg,var(--accent3) 0 1.5px,transparent 1.5px 5px);border:1px dashed var(--accent3);border-left:0;height:11px;border-radius:0 2px 2px 0}.ov .ontrack-panel{margin-bottom:20px}.ov-meter{height:8px;border-radius:2px;background:var(--surface2);overflow:hidden;display:flex}.ov-meter i{display:block;height:100%;flex:none}.ov-barunit{text-transform:none;letter-spacing:0;opacity:.75}.ov-switch{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px 26px;padding:14px 18px;margin-bottom:16px;background:var(--surface2);border:1px solid var(--border);border-radius:8px}.ov-switch .seg-group{flex:none}.ov-switch-note{flex:1 1 340px;margin:0;font-size:var(--fs-small);line-height:1.7;color:var(--muted)}.ov-switch-note strong{color:var(--text);font-weight:600}
