:root{--accent:var(--calc-gold);--accent-glow:#fbbf2440;--emerald:var(--calc-emerald);--emerald-glow:var(--calc-emerald-dim);--rose:var(--calc-rose);--bg-page:var(--calc-bg-page);--bg-card:var(--calc-bg-card);--bg-input:var(--calc-bg-input);--text-primary:var(--calc-text-primary);--text-secondary:var(--calc-text-muted);--text-dim:var(--calc-text-dim);--border-subtle:var(--calc-border-subtle);--border-card:var(--calc-border-default);--shadow-card:var(--calc-shadow-card);--radius:var(--calc-radius-md);--radius-lg:var(--calc-radius-lg)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-page);min-height:100vh;color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,sans-serif;line-height:1.5}.calc-breadcrumb{max-width:1200px;color:var(--text-dim);align-items:center;gap:6px;margin:0 auto;padding:6px 20px;font-size:.75rem;display:flex}.calc-breadcrumb a{color:var(--text-dim);text-decoration:none}.calc-breadcrumb a:hover{color:var(--accent)}.calc-breadcrumb .sep{color:var(--text-dim)}.main-container{max-width:900px;margin:0 auto;padding:0 16px 48px}.page-title{color:var(--text-primary);margin:24px 0 4px;font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:700;line-height:1.2}.page-subtitle{color:var(--text-secondary);margin-bottom:24px;font-size:.92rem}.tab-nav{background:#ffffff0a;border-radius:10px;flex-wrap:wrap;gap:4px;margin-bottom:24px;padding:4px;display:flex}.tab-btn{min-width:120px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:7px;flex:1;padding:9px 16px;font-size:.85rem;font-weight:500;transition:all .2s}.tab-btn:hover{color:var(--text-primary);background:#ffffff0f}.tab-btn.active{background:var(--accent);color:#000;font-weight:600}.tab-pane{display:none}.tab-pane.active{display:block}.input-card,.result-card,.chart-card,.table-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:20px;padding:24px}.card-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:16px;font-size:.8rem;font-weight:600}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:.82rem;font-weight:500;display:block}.form-group input{background:var(--bg-input);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);border-radius:8px;padding:10px 14px;font-family:JetBrains Mono,monospace;font-size:.95rem;transition:border-color .2s}.form-group input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.form-group input::placeholder{color:var(--text-dim)}.adv-settings{border:1px solid var(--border-subtle);border-radius:8px;margin-bottom:16px;overflow:hidden}.adv-settings-toggle{color:var(--text-dim);cursor:pointer;user-select:none;align-items:center;gap:6px;padding:9px 14px;font-size:.82rem;font-weight:500;list-style:none;transition:color .15s;display:flex}.adv-settings-toggle::-webkit-details-marker{display:none}.adv-settings[open] .adv-settings-toggle{color:var(--accent);border-bottom:1px solid var(--border-subtle)}.adv-settings-body{padding:14px 14px 2px}.adv-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.match-toggle-row{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:10px 14px;display:flex}.match-toggle-label{color:var(--text-secondary);cursor:pointer;font-size:.82rem;font-weight:500}.toggle-switch{width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background:#ffffff1f;border-radius:24px;transition:background .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.preset-row{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.preset-chip{border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;background:#ffffff0f;border-radius:20px;padding:6px 14px;font-size:.78rem;font-weight:500;transition:all .15s}.preset-chip:hover{border-color:var(--accent);color:var(--accent)}.preset-chip.active{background:var(--accent);border-color:var(--accent);color:#000;font-weight:600}.hero-result{text-align:center;border-bottom:1px solid var(--border-subtle);margin-bottom:20px;padding:24px 16px 20px}.hero-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:4px;font-size:.75rem}.hero-value{color:var(--accent);text-shadow:0 0 30px var(--accent-glow);font-family:JetBrains Mono,monospace;font-size:clamp(2.5rem,8vw,4rem);font-weight:800;line-height:1.1;transition:color .3s}.hero-sub{color:var(--text-secondary);margin-top:6px;font-size:.85rem}.stat-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;display:grid}.stat-card{border:1px solid var(--border-subtle);text-align:center;background:#ffffff08;border-radius:10px;padding:14px 16px}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:6px;font-size:.7rem}.stat-value{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:1.15rem;font-weight:700}.milestone-section{margin-bottom:20px}.milestone-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:10px;font-size:.75rem;font-weight:600}.milestone-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.milestone-card{border:1px solid var(--border-subtle);text-align:center;background:#ffffff08;border-radius:10px;padding:12px 14px}.milestone-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;margin-bottom:6px;font-size:.68rem;font-weight:600;display:flex}.milestone-badge{color:var(--text-dim);letter-spacing:0;text-transform:none;background:#ffffff14;border-radius:4px;padding:1px 5px;font-size:.6rem;font-weight:500}.milestone-value{color:var(--text-primary);margin-bottom:2px;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:700}.milestone-sub{color:var(--text-dim);font-size:.65rem}.action-bar{flex-wrap:wrap;gap:8px;display:flex}.action-btn{border:1px solid var(--border-subtle);min-width:90px;color:var(--text-secondary);cursor:pointer;text-align:center;background:#ffffff0f;border-radius:8px;flex:1;padding:9px 14px;font-size:.8rem;font-weight:500;transition:all .15s}.action-btn:hover{color:var(--text-primary);border-color:var(--accent);background:#ffffff1a}.t2-stat-bar{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px;display:grid}.t2-stat{border:1px solid var(--border-subtle);text-align:center;background:#ffffff08;border-radius:10px;padding:12px}.t2-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:4px;font-size:.65rem}.t2-stat-value{color:var(--text-primary);text-overflow:clip;white-space:normal;overflow-wrap:anywhere;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:700;overflow:visible}.chart-wrap{height:260px;margin-bottom:24px;position:relative}.chart-wrap-sm{height:220px;margin-bottom:20px;position:relative}.timeline-table-wrap{overflow-x:auto}.timeline-table{border-collapse:collapse;width:100%;font-size:.82rem}.timeline-table th{color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border-subtle);white-space:nowrap;background:#ffffff0d;padding:8px 12px;font-weight:600}.timeline-table td{color:var(--text-secondary);border-bottom:1px solid #ffffff0a;padding:8px 12px;font-family:JetBrains Mono,monospace}.timeline-table tr:hover td{background:#ffffff08}.timeline-table tr.fire-reached td{color:var(--emerald);font-weight:600}.pct-bar-wrap{align-items:center;gap:8px;display:flex}.pct-bar{background:var(--accent);border-radius:3px;min-width:2px;max-width:80px;height:6px;transition:width .3s;display:inline-block}.pct-val{font-size:.75rem}.sr-table-wrap{overflow-x:auto}.sr-table{border-collapse:collapse;width:100%;font-size:.82rem}.sr-table th{color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border-subtle);background:#ffffff0d;padding:8px 12px;font-weight:600}.sr-table td{color:var(--text-secondary);border-bottom:1px solid #ffffff0a;padding:8px 12px;font-family:JetBrains Mono,monospace}.sr-table tr:hover td{background:#ffffff08}.sr-table tr.current-row td{color:var(--accent);background:#fbbf2414;font-weight:600}.sr-table tr.current-row{border-left:3px solid var(--accent)}.page-sections-outer{max-width:1600px;margin:0 auto;padding:0 1.5rem 3rem}@keyframes heroFlash{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.hero-value.flashing{animation:.3s heroFlash}.sr-benchmark{color:var(--text-dim);letter-spacing:.02em;background:#ffffff0d;border-radius:20px;margin-top:8px;padding:4px 12px;font-size:.72rem;font-weight:600;display:inline-block}.reconcile-warn{color:var(--calc-gold);background:#fbbf2414;border:1px solid #fbbf2440;border-radius:8px;margin:-8px 0 16px;padding:10px 14px;font-size:.78rem;line-height:1.5}.adv-settings-body select{background:var(--bg-input);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:8px;padding:10px 32px 10px 14px;font-family:Inter,sans-serif;font-size:.9rem}.adv-settings-body select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.timeline-note{color:var(--text-dim);border-top:1px solid var(--border-subtle);margin-top:10px;padding-top:8px;font-size:.72rem;font-style:italic}@media (width<=768px){.t2-stat-bar,.stat-grid{grid-template-columns:repeat(2,1fr)}.milestone-grid{grid-template-columns:repeat(3,1fr)}.chart-wrap{height:220px}.adv-row{grid-template-columns:1fr}}@media (width<=480px){.tab-btn{padding:8px 10px;font-size:.78rem}.hero-value{font-size:2.8rem}.t2-stat-bar{grid-template-columns:repeat(2,1fr)}.stat-grid{grid-template-columns:1fr 1fr}.milestone-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=360px){.t2-stat-bar,.milestone-grid{grid-template-columns:1fr}}[data-theme=light] body{background:var(--bg-page);color:var(--text-primary)}[data-theme=light] .tab-nav{background:#0000000d}[data-theme=light] .tab-btn:hover{background:#0000000f}[data-theme=light] .tab-btn.active{background:var(--accent);color:#fff}[data-theme=light] .form-group input{background:var(--bg-input);color:var(--text-primary);border-color:#00000026}[data-theme=light] .form-group input::placeholder{color:#94a3b8}[data-theme=light] .form-group input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}[data-theme=light] .adv-settings{border-color:#0000001a}[data-theme=light] .adv-settings-toggle{color:#64748b}[data-theme=light] .adv-settings[open] .adv-settings-toggle{color:var(--accent);border-bottom-color:#0000001a}[data-theme=light] .match-toggle-row{background:var(--bg-input);border-color:#0000001f}[data-theme=light] .toggle-slider{background:#0003}[data-theme=light] .toggle-slider:before{background:#fff}[data-theme=light] .preset-chip{color:#475569;background:#0000000d;border-color:#0000001f}[data-theme=light] .preset-chip:hover{border-color:var(--accent);color:var(--accent)}[data-theme=light] .preset-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}[data-theme=light] .hero-value{text-shadow:none}[data-theme=light] .hero-sub{color:#475569}[data-theme=light] .stat-card{background:#f0f4f9;border-color:#0000001a}[data-theme=light] .stat-value{color:#0f172a}[data-theme=light] .milestone-card{background:#f0f4f9;border-color:#0000001a}[data-theme=light] .milestone-value{color:#0f172a}[data-theme=light] .milestone-badge{color:#475569;background:#00000012}[data-theme=light] .t2-stat{background:#f0f4f9;border-color:#0000001a}[data-theme=light] .t2-stat-value{color:#0f172a}[data-theme=light] .action-btn{color:#475569;background:#0000000a;border-color:#0000001f}[data-theme=light] .action-btn:hover{color:#0f172a;border-color:var(--accent);background:#00000014}[data-theme=light] .timeline-table th,[data-theme=light] .sr-table th{color:#475569;background:#f0f4f9}[data-theme=light] .timeline-table td,[data-theme=light] .sr-table td{color:#334155;border-bottom-color:#0000000f}[data-theme=light] .timeline-table tr:hover td,[data-theme=light] .sr-table tr:hover td{background:#f8fafc}[data-theme=light] .timeline-table tr.fire-reached td{color:var(--emerald)}[data-theme=light] .sr-table tr.current-row td{color:var(--accent);background:#b4530912}[data-theme=light] .pct-bar{background:var(--accent)}[data-theme=light] .chart-card,[data-theme=light] .table-card{background:#fff;border-color:#0000001a;box-shadow:0 1px 4px #0000000f}[data-theme=light]{--accent-glow:#b4530933}[data-theme=light] .sr-benchmark{color:#64748b;background:#0000000d}[data-theme=light] .reconcile-warn{color:#b45309;background:#b4530912;border-color:#b4530940}[data-theme=light] .adv-settings-body select{background:var(--bg-input);color:#0f172a;border-color:#00000026}[data-theme=light] .sr-table tr.current-row{border-left-color:var(--accent)}[data-theme=light] .timeline-note{color:#94a3b8}body.finance-dashboard .fp-feature #srBenchmark{color:#d5e5ff;background:#ffffff1f}.sr165-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.sr165-note{color:var(--text-muted,#94a3b8);margin:.5rem 0 1rem;font-size:.85rem;line-height:1.55}.sr165-ledger,.sr165-definitions,.sr165-scenario{min-width:0;margin:1.25rem 0}.sr165-ledger h2,.sr165-definitions h2,.sr165-scenario h2{margin:0 0 .75rem;font-size:1rem;line-height:1.4}#sr165-component-ledger,#sr165-definition-comparison{scrollbar-gutter:stable;max-width:100%;overflow-x:auto}#sr165-component-ledger table,#sr165-definition-comparison table{border-collapse:collapse;width:100%;font-size:.78rem}#sr165-component-ledger th,#sr165-component-ledger td,#sr165-definition-comparison th,#sr165-definition-comparison td{border-bottom:1px solid var(--border-color,#94a3b840);text-align:right;vertical-align:top;padding:.55rem .4rem}#sr165-component-ledger th:first-child,#sr165-definition-comparison th:first-child{text-align:left;min-width:8rem;font-weight:500}#sr165-component-ledger thead th,#sr165-definition-comparison thead th{white-space:normal;min-width:4.5rem;font-weight:600}.sr165-remember{align-items:flex-start;gap:.6rem;margin:.9rem 0;font-size:.88rem;line-height:1.5;display:flex}.sr165-remember input{flex:none;width:1.15rem;height:1.15rem;margin-top:.1rem}.sr165-goal{border:1px solid var(--border-color,#94a3b840);border-radius:12px;margin-top:1rem;padding:1rem}.sr165-goal>summary{cursor:pointer;font-weight:600;line-height:1.5}.sr165-goal[open]>summary{margin-bottom:1rem}.sr165-monthly{color:#fff;border-top:1px solid #ffffff4d;flex-wrap:wrap;align-items:baseline;gap:.4rem .8rem;margin-top:1rem;padding-top:.8rem;display:flex}.sr165-monthly span{font-size:.82rem}.sr165-monthly strong{font-variant-numeric:tabular-nums;font-size:1.4rem}body.finance-polished .fp-feature .hero-value,body.finance-polished .fp-feature .hero-sub,body.finance-polished .fp-feature .hero-label{color:#fff}.sr165-target{margin:.8rem 0;font-size:.9rem;line-height:1.55}.sr165-scenario{border:1px solid var(--border-color,#94a3b840);border-radius:14px;padding:1.25rem}.sr165-scenario select{width:100%;max-width:20rem;margin:.5rem 0 1rem}#sr165-scenario-detail{font-variant-numeric:tabular-nums;margin-bottom:1rem;line-height:1.6}#applySelectedRate,.sr165-rate-select,.sr165-share-dialog button{border:1px solid var(--border-color,#94a3b866);background:var(--surface-2,#1e293b);min-height:44px;color:var(--text-primary,#e2e8f0);cursor:pointer;border-radius:8px;padding:.6rem .8rem}.sr165-rate-select{text-align:left;font:inherit;background:0 0}.sr165-rate-select:focus-visible,#applySelectedRate:focus-visible{outline:3px solid var(--calc-sky,#38bdf8);outline-offset:2px}#applySelectedRate:disabled{opacity:.55;cursor:default}.sr165-share-dialog{box-sizing:border-box;border:1px solid var(--border-color,#64748b);background:var(--surface-1,#0f172a);width:min(40rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--text-primary,#e2e8f0);border-radius:16px;padding:1.5rem;overflow:auto}.sr165-share-dialog::backdrop{background:#0009}.sr165-share-dialog h2{margin-top:0;font-size:1.25rem}.sr165-share-dialog p,.sr165-share-dialog label{line-height:1.6}.sr165-share-dialog textarea{box-sizing:border-box;overflow-wrap:anywhere;width:100%;min-height:9rem;color:inherit;border:1px solid var(--border-color,#64748b);background:0 0;border-radius:8px;margin:1rem 0;padding:.75rem;font:.85rem/1.6 monospace;display:block}.sr165-share-dialog button{margin:.25rem .5rem .25rem 0}[data-theme=light] .sr165-share-dialog,[data-theme=light] .sr165-share-dialog button,[data-theme=light] #applySelectedRate{color:#0f172a;background:#fff}[data-theme=light] .sr165-note{color:#475569}@media (width<=600px){.sr165-pair{grid-template-columns:1fr;gap:0}.sr165-goal,.sr165-scenario{padding:.8rem}.sr165-monthly{display:block}.sr165-monthly strong{margin-top:.25rem;display:block}.sr165-share-dialog{padding:1rem}}@media print{.sr165-share-dialog,.sr165-remember,#applySelectedRate{display:none}#sr165-component-ledger,#sr165-definition-comparison{overflow:visible}#sr165-component-ledger table,#sr165-definition-comparison table{font-size:8pt}.sr165-goal{break-inside:auto}html body.finance-polished{--bg-page:#fff;--bg-card:#fff;--bg-input:#fff;--text-primary:#111827;--text-secondary:#334155;--text-dim:#475569;--text-muted:#334155;--border-subtle:#cbd5e1;--border-card:#94a3b8;--accent:#92400e;--emerald:#166534;--rose:#9f1239;color:#111827;background:#fff}body.finance-polished #main-content .card-title,body.finance-polished #main-content .form-group label,body.finance-polished #main-content .match-toggle-label,body.finance-polished #main-content .adv-settings-toggle,body.finance-polished #main-content .hero-label,body.finance-polished #main-content .hero-value,body.finance-polished #main-content .hero-sub,body.finance-polished #main-content .stat-label,body.finance-polished #main-content .stat-value,body.finance-polished #main-content .milestone-title,body.finance-polished #main-content .milestone-label,body.finance-polished #main-content .milestone-badge,body.finance-polished #main-content .milestone-value,body.finance-polished #main-content .milestone-sub,body.finance-polished #main-content .t2-stat-label,body.finance-polished #main-content .t2-stat-value,body.finance-polished #main-content .sr165-note,body.finance-polished #main-content .sr165-monthly,body.finance-polished #main-content .sr-benchmark,body.finance-polished #main-content .timeline-note,body.finance-polished #main-content th,body.finance-polished #main-content td,body.finance-polished #main-content summary,body.finance-polished #main-content input,body.finance-polished #main-content select,body.finance-polished #main-content button{color:#111827;-webkit-text-fill-color:currentcolor;text-shadow:none}body.finance-polished #main-content .stat-card,body.finance-polished #main-content .milestone-card,body.finance-polished #main-content .t2-stat,body.finance-polished #main-content .match-toggle-row,body.finance-polished #main-content .milestone-badge,body.finance-polished #main-content .sr-benchmark,body.finance-polished #main-content .sr165-rate-select,body.finance-polished #main-content .timeline-table th,body.finance-polished #main-content .sr-table th,body.finance-polished #main-content .sr-table tr.current-row td{background:#fff;border-color:#94a3b8}body.finance-polished #main-content .chart-wrap,body.finance-polished #main-content .chart-wrap-sm{width:620px;max-width:none;height:260px}body.finance-polished #main-content .t2-stat-value{white-space:normal;text-overflow:clip;overflow:visible}body.finance-polished #main-content .timeline-table-wrap,body.finance-polished #main-content .sr-table-wrap{overflow:visible}body.finance-polished #main-content .timeline-table,body.finance-polished #main-content .sr-table{font-size:8pt}body.finance-polished #main-content .sr165-rate-select{border:0;min-height:0;padding:0}html body.finance-polished{--calc-bg-page:#fff;--calc-bg-page-alt:#fff;--calc-bg-card:#fff;--calc-bg-card-elevated:#fff;--calc-bg-input:#fff;--calc-bg-nested:#f8fafc;--calc-text-primary:#111827;--calc-text-secondary:#334155;--calc-text-muted:#475569;--calc-text-dim:#475569;--calc-text-faded:#475569;--calc-text-link:#075985;--calc-border-subtle:#94a3b8;--calc-border-default:#64748b;--calc-cyan:#155e75;--calc-cyan-accessible:#155e75;--calc-sky:#075985;--calc-gold:#854d0e;--calc-gold-accessible:#854d0e;--calc-emerald:#166534;--calc-indigo:#3730a3;--calc-purple:#6d28d9;--calc-purple-accessible:#6d28d9;--calc-teal:#115e59;--calc-amber:#92400e;--calc-rose:#9f1239;--calc-rose-accessible:#9f1239;color-scheme:light}body.finance-polished .edu-canvas,body.finance-polished .edu-canvas .calc-section,body.finance-polished .edu-canvas .formula-card-v2{box-shadow:none;background:#fff}}body.finance-polished #main-content .chart-wrap:has(.chart-fallback-table),body.finance-polished #main-content .chart-wrap-sm:has(.chart-fallback-table){height:auto;max-height:none}@media print{body.finance-polished #main-content .chart-wrap:has(.chart-fallback-table),body.finance-polished #main-content .chart-wrap-sm:has(.chart-fallback-table){height:auto;max-height:none;overflow:visible}}