:root{--accent:var(--calc-cyan);--green:#34d399;--red:#fb7185}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--calc-bg-page);color:var(--calc-text-primary);min-height:100vh;font-family:Inter,sans-serif;line-height:1.6}.dashboard-container{max-width:1400px;margin:0 auto;padding:2rem 1.5rem 4rem}.page-header{margin-bottom:1.5rem}.page-title{color:var(--calc-text-primary);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:800}.page-subtitle{color:var(--calc-text-faded);max-width:70ch;margin-top:.4rem;font-size:.98rem}.calc-breadcrumb{color:var(--calc-text-dim);margin-bottom:1.25rem;font-size:.82rem}.calc-breadcrumb a{color:var(--calc-text-faded);text-decoration:none;transition:color .2s}.calc-breadcrumb a:hover{color:var(--calc-text-primary)}.disclaimer-banner{color:var(--calc-gold);background:#f59e0b14;border:1px solid #f59e0b33;border-radius:8px;align-items:flex-start;gap:.6rem;margin-bottom:1.5rem;padding:.7rem 1rem;font-size:.82rem;line-height:1.5;display:flex}.tab-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.tab-btn{background:var(--calc-bg-card);border:1px solid var(--calc-border-subtle);color:var(--calc-text-faded);cursor:pointer;border-radius:8px;padding:.55rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:500;transition:color .2s,border-color .2s,background .2s}.tab-btn:hover{color:var(--calc-text-primary)}.tab-btn.active{background:var(--accent);border-color:var(--accent);color:#07131a;font-weight:700}.tab-content{display:none}.tab-content.active{display:block}.calc-grid{grid-template-columns:400px 1fr;align-items:start;gap:1.5rem;display:grid}.safe-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=1024px){.calc-grid,.safe-grid{grid-template-columns:1fr}}.card{background:var(--calc-bg-card);border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-lg);padding:1.5rem}.card-title{color:var(--calc-text-primary);margin-bottom:1rem;font-size:1rem;font-weight:700}.card-note{color:var(--calc-text-faded);margin-bottom:1rem;font-size:.85rem;line-height:1.65}.preset-row{flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;display:flex}.preset-chip{background:var(--calc-bg-glass);border:1px solid var(--calc-border-subtle);color:var(--calc-text-faded);cursor:pointer;border-radius:20px;padding:.35rem .75rem;font-family:inherit;font-size:.78rem;font-weight:500;transition:color .2s,border-color .2s,background .2s}.preset-chip:hover{color:var(--calc-text-primary);border-color:var(--accent)}.preset-chip.active{background:color-mix(in srgb, var(--accent) 15%, transparent);border-color:var(--accent);color:var(--accent);font-weight:600}.form-group{margin-bottom:1rem}.input-row.two-col{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}.form-label{color:var(--calc-text-faded);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem;font-size:.78rem;font-weight:600;display:block}.input-hint{color:var(--calc-text-dim);margin-top:.35rem;font-size:.72rem;line-height:1.4;display:block}.glass-input{background:var(--calc-bg-input);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);width:100%;color:var(--calc-text-primary);padding:.65rem .875rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}select.glass-input{-webkit-appearance:none;appearance:none;cursor:pointer;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 .875rem center;background-repeat:no-repeat;padding-right:2.5rem}.glass-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);outline:none}.hero-result{text-align:center;border-bottom:1px solid var(--calc-border-subtle);margin-bottom:1rem;padding:1.25rem 0 1rem}.hero-label{text-transform:uppercase;letter-spacing:.08em;color:var(--calc-text-faded);margin-bottom:.25rem;font-size:.78rem;font-weight:600}.hero-value{color:var(--accent);font-size:clamp(2.6rem,6vw,3.6rem);font-weight:800;font-family:var(--calc-font-mono);line-height:1.05}.hero-sub{color:var(--calc-text-dim);margin-top:.4rem;font-size:.85rem}.stat-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;display:grid}.stat-cell{background:var(--calc-bg-glass);border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-md);text-align:center;padding:.7rem .875rem}.stat-val{font-size:1.15rem;font-weight:700;font-family:var(--calc-font-mono);color:var(--calc-text-primary)}.stat-lbl{color:var(--calc-text-dim);text-transform:uppercase;letter-spacing:.04em;margin-top:.15rem;font-size:.7rem}.section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--calc-text-faded);margin-bottom:.6rem;font-size:.78rem;font-weight:700}.component-legend{color:var(--calc-text-faded);flex-wrap:wrap;gap:.75rem 1.1rem;margin-top:.75rem;font-size:.8rem;display:flex}.leg-item{align-items:center;gap:.4rem;display:inline-flex}.leg-dot{border-radius:3px;width:.7rem;height:.7rem;display:inline-block}.leg-item strong{color:var(--calc-text-primary);font-family:var(--calc-font-mono);font-weight:700}.sched-table{border-collapse:collapse;width:100%;font-size:.9rem}.sched-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--calc-text-dim);border-bottom:1px solid var(--calc-border-default);padding:.5rem .6rem;font-size:.72rem;font-weight:600}.sched-table td{border-bottom:1px solid var(--calc-border-subtle);color:var(--calc-text-primary);padding:.6rem}.sched-table tbody tr:last-child td{border-bottom:1px solid var(--calc-border-default)}.sched-table tfoot td{color:var(--calc-text-primary);padding-top:.7rem}.action-bar{flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;display:flex}.btn-action{background:var(--calc-bg-glass);border:1px solid var(--calc-border-default);min-width:100px;color:var(--calc-text-faded);cursor:pointer;border-radius:8px;flex:1;padding:.5rem 1rem;font-family:inherit;font-size:.82rem;font-weight:500;transition:color .2s,border-color .2s,background .2s}.btn-action:hover{color:var(--calc-text-primary);border-color:var(--accent)}.afford-card{background:var(--calc-bg-glass);border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-md);color:var(--calc-text-faded);padding:1rem 1.25rem;font-size:.88rem;line-height:1.65}.interp-card{border-radius:var(--calc-radius-md,12px);border:1px solid #22d3ee38;border-left:3px solid var(--accent);background:#22d3ee0f;margin-top:1.25rem;padding:1rem 1.1rem}.interp-head{font-family:var(--calc-font-headline);color:var(--calc-text-primary);margin-bottom:.4rem;font-size:.98rem;font-weight:700}.interp-body{color:var(--calc-text-faded);margin:0;font-size:.85rem;line-height:1.7}.page-sections-outer{max-width:1400px;margin:0 auto;padding:0 1.5rem 3rem}@media print{.tab-bar,.preset-row,.action-bar,.disclaimer-banner,.calc-back-to-top,.page-sections-outer,footer,.glass-navbar{display:none}.tab-content{display:block}}[data-theme=light]{--accent:#0891b2;--green:#047857;--red:#e11d48}[data-theme=light] body{background:var(--calc-bg-page)}[data-theme=light] .disclaimer-banner{color:#78350f;background:#fffbeb;border-color:#d9770659}[data-theme=light] .tab-btn{color:#475569;background:#fff;border-color:#0000001f}[data-theme=light] .tab-btn:hover{color:#0f172a}[data-theme=light] .tab-btn.active{color:#fff;background:#0891b2;border-color:#0891b2}[data-theme=light] .card{background:#fff;border-color:#0000001a;box-shadow:0 2px 10px #00000012}[data-theme=light] .card-note{color:#475569}[data-theme=light] .preset-chip{color:#475569;background:#f1f5f9;border-color:#0000001f}[data-theme=light] .preset-chip:hover{color:#0f172a}[data-theme=light] .preset-chip.active{color:#0891b2;background:#0891b21a;border-color:#0891b2}[data-theme=light] .glass-input{color:#0f172a;background:#f8fafc;border-color:#00000026}[data-theme=light] select.glass-input{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='%23475569' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}[data-theme=light] .glass-input:focus{border-color:#0891b2;box-shadow:0 0 0 3px #0891b226}[data-theme=light] .input-hint{color:#64748b}[data-theme=light] .hero-value{color:#0891b2}[data-theme=light] .hero-sub{color:#475569}[data-theme=light] .stat-cell{background:#f0f4f9;border-color:#00000014}[data-theme=light] .stat-val{color:#0f172a}[data-theme=light] .stat-lbl{color:#64748b}[data-theme=light] .section-label,[data-theme=light] .component-legend{color:#475569}[data-theme=light] .leg-item strong{color:#0f172a}[data-theme=light] .sched-table th{color:#64748b;border-color:#0000001a}[data-theme=light] .sched-table td{color:#0f172a;border-color:#00000014}[data-theme=light] .sched-table tbody tr:last-child td,[data-theme=light] .sched-table tfoot td{border-color:#0000001f}[data-theme=light] .btn-action{color:#475569;background:#f1f5f9;border-color:#0000001f}[data-theme=light] .btn-action:hover{color:#0f172a;border-color:#0891b2}[data-theme=light] .afford-card{color:#475569;background:#f0f4f9;border-color:#00000014}[data-theme=light] .interp-card{background:#ecfeff;border-color:#0891b240 #0891b240 #0891b240 #0891b2}[data-theme=light] .interp-head{color:#0f172a}[data-theme=light] .interp-body{color:#475569}[data-theme=light] .calc-breadcrumb a{color:#64748b}[data-theme=light] .calc-breadcrumb a:hover{color:#0f172a}.fl-workbench{min-width:0;margin-top:1rem}.fl-workbench h3,.fl-workbench h4{overflow-wrap:anywhere;margin:0 0 .75rem}.fl-workbench summary,.fl-budget-detail summary{cursor:pointer;align-items:center;min-height:44px;font-weight:650;display:flex}.fl-workbench .fl-field{min-width:0;margin:.75rem 0}.fl-workbench .glass-input,.fl-workbench .glass-select{box-sizing:border-box;width:100%;min-width:0;min-height:44px}.fl-workbench input[type=checkbox]{accent-color:#0ea5e9;width:22px;min-height:22px}.fl-workbench .action-btn,.fl-chart-legend .action-btn,#componentLegend .action-btn,.fl-privacy .action-btn{white-space:normal;min-height:44px;padding:.6rem .9rem}.fl-tax-bridge,.fl-periods,.fl-payment-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.fl-bridge-card{border:1px solid var(--border-color,#94a3b840);border-radius:12px;min-width:0;padding:1rem}.fl-ledger-row{font-variant-numeric:tabular-nums;justify-content:space-between;gap:1rem;margin:.6rem 0;display:flex}.fl-ledger-row strong{overflow-wrap:anywhere;font-weight:500}.fl-ledger-row span{text-align:right;overflow-wrap:anywhere}.fl-chart-wrap{width:100%;min-width:0;height:280px;position:relative}.fl-chart-legend,#componentLegend{flex-wrap:wrap;gap:.5rem;margin:.75rem 0;display:flex}.fl-chart-legend button[aria-pressed=false],#componentLegend button[aria-pressed=false]{opacity:.7;text-decoration:line-through}.fl-reserve-panel{border-left:3px solid #0ea5e9;padding:1rem;font-weight:650}.fl-payment-entry{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.fl-privacy pre,#fl-share-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #94a3b84d;max-height:18rem;padding:.75rem;overflow:auto}#fl-share-dialog{box-sizing:border-box;color:#e2e8f0;background:#0f172a;border:1px solid #64748b;border-radius:16px;width:min(640px,100vw - 24px);max-height:90dvh;padding:1.25rem;overflow:auto}#fl-share-dialog::backdrop{background:#000000a6}#fl-share-dialog label{align-items:center;gap:.5rem;min-height:44px;display:flex}#fl-share-dialog textarea,#fl-copy-fallback{box-sizing:border-box;width:100%;color:inherit;background:0 0;border:1px solid #64748b;padding:.75rem}#fl-share-dialog button{min-height:44px;margin:.5rem .5rem 0 0}[data-theme=light] #fl-share-dialog{color:#0f172a;background:#fff}.fl-workbench [aria-invalid=true]{border-color:#ef4444}.fl-workbench [hidden],.fl-privacy [hidden]{display:none}@media (width<=700px){.fl-tax-bridge,.fl-periods,.fl-payment-cards{grid-template-columns:minmax(0,1fr)}.fl-ledger-row{grid-template-columns:minmax(0,1fr);gap:.25rem;display:grid}.fl-ledger-row span{text-align:left}.fl-chart-wrap{height:260px}}.fl-privacy{border-bottom:1px solid #94a3b84d;margin-bottom:1.25rem;padding-bottom:1rem}.fl-workbench summary:after,.fl-budget-detail summary:after{content:"+";margin-left:auto;padding-left:.75rem;font-size:1.25rem}.fl-workbench[open]>summary:after,.fl-budget-detail[open]>summary:after{content:"−"}