@keyframes re-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes active-pop{0%{transform:scale(.95)}to{transform:scale(1)}}@keyframes field-pulse{0%{box-shadow:0 0 0 0 rgba(var(--calc-cyan-rgb,34, 211, 238), .7)}70%{box-shadow:0 0 0 8px rgba(var(--calc-cyan-rgb,34, 211, 238), 0)}to{box-shadow:0 0 0 0 rgba(var(--calc-cyan-rgb,34, 211, 238), 0)}}.field-pulse-active{animation:.6s ease-out field-pulse}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}.pmi-auto-badge{background:linear-gradient(135deg, var(--calc-cyan), var(--calc-teal));color:var(--calc-bg-page);border-radius:var(--calc-radius-xs);text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;font-size:.75rem;font-weight:700}.pmi-auto-badge.hidden{display:none}.badge-compact{padding:1px 5px;font-size:.75rem}.input-group--flex{flex:1;min-width:0}.input-group--compact{margin-bottom:0}.label-compact{margin:0;font-size:.75rem}.label-cyan{color:var(--calc-cyan)}.label-row--compact{margin-bottom:6px}.freq-toggle-row{margin-top:4px}.calc-inline-row.freq-toggle-row{align-items:stretch;gap:0}.section-label{color:var(--calc-text-secondary);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:.75rem;display:block}.glass-input--accent{border-color:rgba(var(--calc-cyan-rgb), .2)}#term-custom{margin-top:var(--calc-space-1)}body{background:var(--calc-bg-page);color:var(--calc-text-primary);background-attachment:fixed;margin:0;padding:0;font-family:Inter,sans-serif}.main-container{max-width:1400px;margin:0 auto;padding:40px 20px}.page-title{text-align:center;color:var(--calc-text-primary);letter-spacing:-.5px;margin-top:15px;margin-bottom:10px;font-size:2.25rem;font-weight:800}.page-subtitle{color:var(--calc-text-secondary);max-width:760px;margin:0 auto;line-height:1.55}.calculator-wrapper{grid-template-columns:minmax(300px,400px) minmax(0,1fr);align-items:start;gap:32px;display:grid}@media (width<=1024px){.calculator-wrapper{grid-template-columns:minmax(0,1fr);overflow:visible}.input-card{max-height:none;position:static}}@media (width<=768px){.escrow-grid{grid-template-columns:minmax(0,1fr);overflow:hidden}}.card{background:var(--calc-bg-card);backdrop-filter:blur(12px);border-radius:var(--calc-radius-md);border:1px solid var(--calc-border-default);box-shadow:var(--calc-shadow-card);padding:28px;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s;animation:.3s both re-fade-up}.card:hover{border-color:rgba(var(--calc-cyan-rgb), .2);box-shadow:var(--calc-shadow-card-hover);transform:translateY(-2px)}.input-card{scrollbar-width:none;border-left:none;flex-direction:column;gap:24px;max-height:calc(100vh - 130px);display:flex;position:sticky;top:110px;overflow:hidden auto}.re-calc .input-card,.re-calc .result-card{border-top:3px solid var(--calc-cyan)}.input-card::-webkit-scrollbar{width:0}.input-card:hover{scrollbar-width:thin;scrollbar-color:rgba(var(--calc-cyan-rgb), .3) transparent}.input-card:hover::-webkit-scrollbar{width:6px}.input-card::-webkit-scrollbar-track{border-radius:var(--calc-radius-xs);background:0 0}.input-card::-webkit-scrollbar-thumb{background:rgba(var(--calc-cyan-rgb), .3);border-radius:var(--calc-radius-xs)}.input-card::-webkit-scrollbar-thumb:hover{background:rgba(var(--calc-cyan-rgb), .5)}.result-card{border-top:3px solid var(--calc-cyan);border-left:none}.card-header-note{color:var(--calc-text-secondary);margin:0;font-size:.8125rem;line-height:1.5}.input-group{margin-bottom:14px}.input-row{align-items:flex-start;gap:12px;display:flex}.input-row-tight{gap:8px;display:flex}.calc-inline-row{align-items:center;gap:8px;display:flex}.calc-inline-row--between{justify-content:space-between}.calc-inline-row--inline{display:inline-flex}.calc-inline-row--tight{gap:4px}.calc-inline-row--sm{font-size:.75rem}.calc-section-divider{border-top:1px solid var(--calc-border-subtle);margin-top:16px;padding-top:16px}.calc-inline-note{color:var(--calc-text-dim);font-size:.75rem}.calc-inline-link{color:var(--calc-cyan);text-underline-offset:2px;font-size:.75rem;text-decoration:underline;transition:color .12s}.calc-inline-link:hover{color:var(--calc-text-primary)}.field-error{color:var(--calc-rose);margin-top:4px;font-size:.75rem;font-weight:600;display:block}.field-error:empty{display:none}label{color:var(--calc-text-secondary);letter-spacing:.01em;align-items:baseline;margin-bottom:6px;font-size:.8125rem;font-weight:600;display:flex}.input-group small{color:var(--calc-rose);margin-top:4px;font-size:.75rem;font-weight:500;line-height:1.2;display:none}.input-group small.visible{display:block}.input-group small.hint{color:var(--calc-text-secondary);display:block}.escrow-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.escrow-grid .input-group{margin-bottom:0}.payoff-strategy-section{border-top:1px solid var(--calc-border-subtle);margin-top:14px;padding-top:14px}.tab-btn:focus-visible,.seg-btn:focus-visible,.glass-input:focus-visible,.glass-select:focus-visible,.btn-outline-sm:focus-visible,.action-btn:focus-visible{outline:2px solid var(--calc-cyan);outline-offset:2px}.seg-control-wrap{background:var(--calc-bg-input);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-xs);padding:2px;display:flex}.seg-control-wrap--sm{border-radius:var(--calc-radius-xs);padding:1px}.seg-control-wrap .seg-btn{border-radius:var(--calc-radius-xs);cursor:pointer;color:var(--calc-text-secondary);background:0 0;border:none;padding:2px 8px;font-size:.8125rem;font-weight:700}.seg-control-wrap--sm .seg-btn{border-radius:var(--calc-radius-xs);padding:1px 6px;font-size:.75rem}.re-calc .seg-btn.active,.re-calc .seg-btn-full.active{background:rgba(var(--calc-cyan-rgb), .12);color:var(--calc-cyan);box-shadow:var(--calc-ring-cyan);border-color:#0000}.seg-btn,.seg-btn-full{transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.seg-btn-full.freq-active,.seg-btn-full.freq-inactive{white-space:nowrap;cursor:pointer;border:1px solid;flex:1;padding:8px 10px;font-size:.8125rem;font-weight:600;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.seg-btn-full.freq-active{background:rgba(var(--calc-cyan-rgb), .12);color:var(--calc-cyan);border-color:rgba(var(--calc-cyan-rgb), .25);box-shadow:inset 0 0 0 2px rgba(var(--calc-cyan-rgb), .45);font-weight:700}.seg-btn-full.freq-inactive{background:var(--calc-bg-nested);color:var(--calc-text-secondary);border-color:var(--calc-border-subtle);box-shadow:none}#btn-freq-monthly{border-radius:var(--calc-radius-xs) 0 0 var(--calc-radius-xs)}#btn-freq-biweekly{border-radius:0 var(--calc-radius-xs) var(--calc-radius-xs) 0;border-left:none}.input-tab-content{min-height:260px;padding-bottom:20px;display:none}.input-tab-content.active{animation:.3s both re-fade-up;display:block}@media (width<=480px){#tab-schedule{padding-bottom:80px}}input,select{background-color:var(--calc-bg-input);border:1px solid var(--calc-border-default);width:100%;color:var(--calc-text-primary);border-radius:var(--calc-radius-xs);box-sizing:border-box;font-variant-numeric:tabular-nums;padding:10px 13px;font-family:JetBrains Mono,monospace;font-size:1rem;transition:transform .25s,opacity .25s,color .2s,border-color .2s,background-color .2s,box-shadow .25s}select,.re-calc select{font-family:var(--calc-font-body,"Inter", sans-serif);font-variant-numeric:normal;font-size:.875rem}input:focus,select:focus{border-color:var(--calc-cyan);background-color:var(--calc-bg-input);box-shadow:var(--calc-ring-cyan);outline:2px solid #0000}#extra-annual,#extra-month{max-width:150px}.toggle-container{align-items:center;gap:8px;display:flex}.switch{width:48px;height:26px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--calc-bg-input);border-radius:var(--calc-radius-pill);transition:opacity .25s,transform .25s;position:absolute;inset:0}.slider:before{content:"";background-color:var(--calc-text-secondary,#8fa5c8);border-radius:50%;width:22px;height:22px;transition:opacity .25s,transform .25s;position:absolute;bottom:2px;left:3px}input:checked+.slider{background-color:var(--calc-cyan)}input:checked+.slider:before{background-color:var(--calc-bg-page-alt,#07101f);transform:translate(16px)}.rate-chip{border-radius:var(--calc-radius-pill);background:var(--calc-bg-nested);border:1px solid var(--calc-border-subtle);color:var(--calc-text-secondary);cursor:pointer;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600;transition:transform .2s cubic-bezier(.34,1.56,.64,1),background-color .2s,opacity .25s,color .2s,box-shadow .25s}.rate-chip:hover{background:rgba(var(--calc-cyan-rgb), .12);border-color:rgba(var(--calc-cyan-rgb), .4);color:var(--calc-cyan);transform:translateY(-1px)}.rate-chip.active{background:rgba(var(--calc-cyan-rgb), .12);border-color:rgba(var(--calc-cyan-rgb), .4);color:var(--calc-cyan)}.autosave-badge{color:var(--calc-emerald);letter-spacing:.08em;opacity:.8;margin-left:auto;font-size:.75rem;font-weight:600}.hero-section{gap:var(--calc-space-4) var(--calc-space-6);margin-bottom:var(--calc-space-6);padding-bottom:var(--calc-space-4);border-bottom:1px solid var(--calc-border-subtle);grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;display:grid}.hero-metric{flex-direction:column;justify-content:flex-start;min-width:0;display:flex;container-type:inline-size}.hero-metric--primary{padding-bottom:var(--calc-space-4);border-bottom:1px solid var(--calc-border-subtle);grid-column:1/-1}.hero-metric--primary .hero-metric-note{margin-top:var(--calc-space-1)}.hero-metric-note{padding-top:var(--calc-space-2);color:var(--calc-text-dim);font-size:var(--calc-text-xs);margin-top:auto;line-height:1.4}.hero-section .label-sm{min-height:2.4em;line-height:1.2;display:block}.hero-metric-note--badges{align-items:center;gap:var(--calc-space-2);flex-wrap:wrap;min-height:1.4em;display:flex}.biweekly-hint{color:var(--calc-cyan);margin-top:var(--calc-space-2);font-size:.75rem;font-weight:400;display:block}.pmi-alert{margin-top:var(--calc-space-2);color:var(--calc-rose);justify-content:flex-end;align-items:center;gap:4px;font-size:.8125rem;display:flex}.formula-chip.warn{background:rgba(var(--calc-rose-rgb,251, 113, 133), .08);border-color:rgba(var(--calc-rose-rgb,251, 113, 133), .25);color:var(--calc-rose,#fb7185)}.dot--principal{background:var(--calc-cyan)}.dot--tax{background:var(--calc-indigo)}.dot--insurance{background:var(--calc-emerald)}.dot--hoa{background:var(--calc-text-dim)}.dot--pmi{background:var(--calc-amber)}.chart-legend,.donut-legend{justify-content:center;gap:var(--calc-space-4);margin-top:var(--calc-space-4);font-size:var(--calc-text-xs);color:var(--calc-text-secondary);flex-wrap:wrap;display:flex}.chart-legend__item{align-items:center;gap:4px;display:flex}.chart-legend__swatch{border-radius:var(--calc-radius-xs);width:10px;height:10px}.chart-legend__swatch--principal{background:var(--calc-cyan)}.chart-legend__swatch--interest{background:var(--calc-rose)}.chart-legend__swatch--home{background:var(--calc-amber)}.chart-legend__swatch--balance{background:var(--calc-rose)}.chart-legend__swatch--equity{background:var(--calc-cyan)}.schedule-actions{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.schedule-actions__buttons{gap:8px;display:flex}#pmi-manual::placeholder{font-size:.8125rem}.input-with-unit{box-sizing:border-box;max-width:100%}.input-with-unit>input{min-width:0}.input-with-unit>.input-unit,.input-with-unit>.input-prefix{flex-shrink:0}.pmi-permanent-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--calc-cyan);flex-shrink:0;margin:0;padding:0}[data-theme=light] .pmi-permanent-label input[type=checkbox]{accent-color:var(--calc-cyan)}.re-calc .hero-value{color:var(--calc-cyan);letter-spacing:-.03em;text-overflow:clip;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:0;max-width:100%;font-size:clamp(2rem,2.8vw,2.65rem);font-weight:700;line-height:1.05;font-family:var(--calc-font-mono,"JetBrains Mono", monospace);text-shadow:0 0 24px rgba(var(--calc-cyan-rgb), .28);overflow:hidden}[data-theme=light] .re-calc .hero-value{text-shadow:none}.label-sm{font-size:var(--calc-text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--calc-text-muted);margin-bottom:var(--calc-space-1);font-weight:600}.badge-positive{color:var(--calc-accent-success);font-weight:700;font-size:var(--calc-text-sm)}.tab-btn{color:var(--calc-text-secondary);cursor:pointer;border-radius:var(--calc-radius-pill);white-space:nowrap;background:0 0;border:none;padding:7px 18px;font-size:.8125rem;font-weight:500;transition:transform .25s,opacity .25s,color .2s,box-shadow .25s}.tab-btn:hover{color:var(--calc-text-primary);background:var(--calc-bg-nested)}.tab-btn.active{background:linear-gradient(135deg, var(--calc-cyan), var(--calc-teal));color:var(--calc-bg-page);box-shadow:var(--calc-shadow-glow-cyan-sm), 0 2px 10px rgba(var(--calc-cyan-rgb), .35);font-weight:700}.tab-content{animation:.3s both re-fade-up;display:none}.tab-content.active{animation:.24s cubic-bezier(.4,0,.2,1) both re-fade-in;display:block}@keyframes re-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.formula-strip{background:var(--calc-bg-glass);border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-xs);flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;padding:8px 12px;display:flex;position:relative}.formula-chip{border-radius:var(--calc-radius-pill);background:var(--calc-bg-nested);border:1px solid var(--calc-border-default);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--calc-text-secondary);padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:700}.formula-chip.gold{background:rgba(var(--calc-cyan-rgb), .08);border-color:rgba(var(--calc-cyan-rgb), .25);color:var(--calc-cyan)}.formula-chip.emerald{color:var(--calc-emerald);background:#00c9a714;border-color:#00c9a740}.formula-chip.indigo{color:var(--calc-indigo);background:#7875f014;border-color:#7875f040}.formula-chip.muted{color:var(--calc-text-secondary)}.formula-op{color:var(--calc-text-secondary);font-size:.875rem;font-weight:700}.data-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0;display:grid}.data-card{background:var(--calc-bg-card);border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-xs);padding:10px 10px 8px;animation:.3s both re-fade-up}.data-label{text-transform:uppercase;letter-spacing:.08em;color:var(--calc-text-dim);margin-bottom:4px;font-size:.75rem;font-weight:600}.data-value{font-variant-numeric:tabular-nums;color:var(--calc-text-primary);font-family:JetBrains Mono,monospace;font-size:1.125rem;font-weight:600}.data-value.gold{color:var(--calc-cyan)}[data-theme=light] .data-value.gold,[data-theme=light] .formula-chip.gold{color:var(--calc-cyan-accessible,#0e7490)}.data-value.emerald{color:var(--calc-emerald)}.data-value.indigo{color:var(--calc-indigo)}.alert-stack{flex-direction:column;gap:8px;margin:10px 0;display:flex}.alert-item{border-radius:var(--calc-radius-xs);border:1px solid #0000;align-items:flex-start;gap:8px;padding:8px 12px;font-size:.75rem;line-height:1.5;display:flex}.alert-item.info{background:rgba(var(--calc-cyan-rgb), .08);border-color:rgba(var(--calc-cyan-rgb), .2);color:var(--calc-cyan)}.alert-item.success{color:var(--calc-emerald);background:#00c9a714;border-color:#00c9a733}.alert-item.warn{color:var(--calc-amber,#f59e0b);background:#f59e0b14;border-color:#f59e0b4d}.alert-item.danger{color:var(--calc-rose);background:#f8717114;border-color:#f8717133;font-weight:500}.alert-icon{flex-shrink:0;margin-top:1px;font-size:.875rem}.btn-outline-sm{align-items:center;gap:var(--calc-space-2);background:var(--calc-bg-nested);border:1px solid var(--calc-border-strong);color:var(--calc-text-secondary);border-radius:var(--calc-radius-xs);cursor:pointer;padding:7px 14px;font-family:Inter,sans-serif;font-size:.75rem;font-weight:600;transition:transform .25s,opacity .25s,color .2s,border-color .2s,background-color .2s,box-shadow .25s;display:inline-flex}.btn-outline-sm:focus-visible{outline:2px solid var(--calc-cyan);outline-offset:2px}.btn-icon{opacity:.75;flex-shrink:0;width:15px;height:15px}.btn-outline-sm:hover .btn-icon{opacity:1}.btn-outline-sm:hover{border-color:var(--calc-cyan);color:var(--calc-cyan);background:rgba(var(--calc-cyan-rgb), .06)}.breakdown-list-compact{flex-direction:column;font-size:.875rem;display:flex}.breakdown-card{background:var(--calc-bg-card,#162336cc);border-radius:var(--calc-radius-xs);border:1px solid var(--calc-border-subtle);margin-top:12px;overflow:hidden}.bd-row{border-bottom:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-xs);align-items:center;padding:11px 14px;transition:opacity .25s,background-color .25s,transform .25s;display:flex}.bd-row:last-child{border-bottom:none}.bd-row--highlighted{background-color:var(--calc-bg-nested);transform:translate(3px)}[data-theme=light] .bd-row--highlighted{background-color:#0000000a}.dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:12px}.bd-name{color:var(--calc-text-secondary);flex:1;font-size:.875rem}.bd-val{color:var(--calc-text-primary);font-variant-numeric:tabular-nums;text-align:right;flex:1;font-family:JetBrains Mono,monospace;font-weight:700}.chart-frame{justify-content:center;align-items:center;width:100%;height:240px;transition:opacity .12s;display:flex;position:relative}.chart-frame--large{height:380px;display:block}.chart-frame--compact{max-width:320px;height:200px;margin-inline:auto}.schedule-container{border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-xs);max-height:480px;position:relative;overflow-y:auto}.schedule-container::-webkit-scrollbar{width:8px}.schedule-container::-webkit-scrollbar-track{background:0 0}.schedule-container::-webkit-scrollbar-thumb{background:rgba(var(--calc-cyan-rgb), .2);border-radius:var(--calc-radius-xs)}.schedule-container::-webkit-scrollbar-thumb:hover{background:rgba(var(--calc-cyan-rgb), .4)}.amortization-table{border-collapse:collapse;width:100%;color:var(--calc-text-secondary);font-size:.8125rem}.amortization-table th{background:var(--calc-bg-card-elevated);z-index:10;text-align:right;color:var(--calc-cyan);border-bottom:1px solid var(--calc-border-default);box-shadow:var(--calc-shadow-sm);text-transform:uppercase;letter-spacing:.08em;padding:11px 12px;font-size:.75rem;font-weight:600;position:sticky;top:0}.amortization-table td{text-align:right;border-bottom:1px solid var(--calc-border-subtle);padding:9px 12px;font-family:JetBrains Mono,monospace}.amortization-table th:first-child,.amortization-table td:first-child{text-align:left}.amortization-table tbody tr{transition:background-color .12s}.amortization-table tbody tr:nth-child(2n){background:var(--calc-bg-glass)}.amortization-table tbody tr:hover{background:rgba(var(--calc-cyan-rgb), .06)}.amortization-table tr.year-end td{border-bottom:1px solid rgba(var(--calc-cyan-rgb), .25)}details{background:var(--calc-bg-card,#16233699);border-radius:var(--calc-radius-xs);border:1px solid var(--calc-border-default);margin-bottom:10px;transition:border-color .25s;overflow:hidden}.re-calc details[open]{border-color:var(--calc-indigo)}summary{cursor:pointer;color:var(--calc-text-primary);justify-content:space-between;align-items:center;padding:16px 22px;font-size:.875rem;font-weight:600;list-style:none;transition:background .25s,color .25s;display:flex}summary::-webkit-details-marker{display:none}@media print{body{color:#000;background:#fff}.glass-navbar,.calculator-wrapper .input-card{display:none}.calculator-wrapper{display:block}.result-card{box-shadow:none;background:#fff;border:none;padding:0}.amortization-table th{color:#000}body:not(.print-schedule-only) .result-card>:not(.mortgage-report-summary),body.print-schedule-only .result-card>:not(#tab-schedule){display:none}body.print-schedule-only #tab-schedule{display:block}.schedule-actions,.action-bar,.calc-back-to-top,.toast-container{display:none}.schedule-container{max-height:none;overflow:visible}.amortization-table{color:#000;break-inside:auto}.amortization-table tr{break-inside:avoid}}@media (width<=360px){.nav-top{padding-inline:8px}.nav-brand .brand-text{display:none}}.toast-container{z-index:2000;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--calc-bg-card,#162336);color:var(--calc-text-primary);border-radius:var(--calc-radius-xs);border:1px solid var(--calc-border-default);border-left:4px solid var(--calc-cyan);box-shadow:var(--calc-shadow-lg);align-items:center;gap:8px;max-width:280px;padding:10px 18px;font-size:.875rem;font-weight:600;animation:.3s ease-out slideInRight;display:flex}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.amortization-table tr.past{opacity:.35}.amortization-table tr.past td{text-decoration:line-through}.donut-summary-card{background:var(--calc-bg-card,#162336b3);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);padding:18px;animation:.3s both re-fade-up}.donut-header{color:var(--calc-text-primary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:.8125rem;font-weight:700}.donut-legend{margin-top:var(--calc-space-3);padding-top:var(--calc-space-3);border-top:1px solid var(--calc-border-subtle)}.interest-cost-highlight{border-radius:var(--calc-radius-xs);text-align:center;background:#f8717114;border:1px solid #f8717133;margin-top:12px;padding:10px}.winner-banner{border-radius:var(--calc-radius-xs);color:var(--calc-emerald);text-align:center;background:#00c9a714;border:1px solid #00c9a740;margin:10px 0;padding:10px 16px;font-size:.8125rem;font-weight:700;line-height:1.5}.winner-banner.warn{background:rgba(var(--calc-cyan-rgb), .08);border-color:rgba(var(--calc-cyan-rgb), .25);color:var(--calc-cyan)}.winner-banner.neutral{color:var(--calc-indigo);background:#7875f014;border-color:#7875f040}@media (width<=1024px){.hero-section{text-align:center;grid-template-columns:minmax(0,1fr);gap:16px;overflow:hidden}.hero-metric--primary{padding:0 0 16px}.hero-metric-note{margin-top:0}.hero-metric-note--badges{justify-content:center;min-height:0}.hero-metric{text-align:center;align-items:center}.lifetime-summary-grid{grid-template-columns:minmax(0,1fr);overflow:hidden}.data-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){body{overflow-x:clip}.main-container{padding:20px 15px;overflow-x:clip}.page-title{font-size:1.75rem}.calculator-wrapper{grid-template-columns:minmax(0,1fr);gap:16px;overflow:visible}.input-card{max-height:none;padding:18px;position:static;overflow:hidden}.card{padding:18px}.tab-btn{white-space:normal;flex:calc(50% - 2px);min-width:0;min-height:44px;padding-left:10px;padding-right:10px;font-size:.8125rem;line-height:1.25}.input-card .card-header-note,.input-card .input-tab-content,.input-card .payoff-strategy-section{opacity:1;max-height:2000px;transition:max-height .35s cubic-bezier(.4,0,.2,1),opacity .25s;overflow:hidden}.input-card.collapsed .card-header-note,.input-card.collapsed .input-tab-content,.input-card.collapsed .payoff-strategy-section{opacity:0;pointer-events:none;max-height:0;margin-bottom:0}.input-row,.input-row-tight{flex-direction:column;gap:8px}.input-row>div,.input-row-tight>div{flex-basis:100%;min-width:100%}.escrow-grid{grid-template-columns:minmax(0,1fr);overflow:hidden}.hero-section{text-align:center;grid-template-columns:minmax(0,1fr);gap:12px;overflow:hidden}.hero-value{font-size:clamp(1.8rem,5vw,2.4rem)}.breakdown-list-compact h3{text-align:left}.chart-frame--large{height:280px}.schedule-actions{flex-direction:column;align-items:flex-start;gap:12px}.data-grid{grid-template-columns:repeat(2,1fr)}.schedule-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.amortization-table th,.amortization-table td{padding:6px 8px;font-size:.75rem}.formula-strip{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.formula-strip::-webkit-scrollbar{display:none}.formula-strip:after{content:"";background:linear-gradient(to right, transparent, var(--calc-bg-page-alt,var(--calc-bg-page,#0d111a)));pointer-events:none;opacity:0;width:32px;height:100%;transition:opacity .25s;position:absolute;top:0;right:0}.formula-strip.has-overflow-right:after{opacity:1}.calc-comparison-table-wrapper{-webkit-overflow-scrolling:touch;position:relative;overflow-x:auto}.calc-comparison-table-wrapper:after{content:"";background:linear-gradient(to right, transparent, var(--calc-bg-page-alt,var(--calc-bg-page,#0d111a)));pointer-events:none;opacity:0;width:32px;height:100%;transition:opacity .25s;position:absolute;top:0;right:0}.calc-comparison-table-wrapper.has-overflow-right:after{opacity:1}.data-grid .stat-value{overflow-wrap:break-word;font-size:1rem}}@media (width<=480px){.card{border-radius:var(--calc-radius-xs);padding:14px 12px}.calculator-wrapper{gap:16px}}@media (width<=768px){.hero-section{text-align:center;grid-template-columns:1fr}}[data-theme=light] .scenarios-table-wrap:after{background:linear-gradient(90deg,#0000,#f8fafc)}[data-theme=light] .tab-btn{color:#2d4a6b}[data-theme=light] .tab-btn:hover{color:#0f1e33;background:#0000000d}[data-theme=light] .tab-btn.active{background:linear-gradient(135deg, var(--calc-cyan), #0c6578);color:#fff;box-shadow:var(--calc-shadow-glow-cyan-sm), 0 2px 10px rgba(var(--calc-cyan-rgb), .35)}[data-theme=light] body{color:#0f1e33;background:#f0f4fb}[data-theme=light] .page-title{color:#0f1e33}[data-theme=light] input,[data-theme=light] select{color-scheme:light;background-color:var(--calc-bg-input);border-color:var(--calc-border-default);color:var(--calc-text-primary)}[data-theme=light] input:focus,[data-theme=light] select:focus{border-color:rgba(var(--calc-cyan-rgb), .55);box-shadow:var(--calc-ring-cyan);background:#fff}[data-theme=light] .card{backdrop-filter:none;background:#fff;border:1px solid #00000017;box-shadow:0 2px 8px #00000014}[data-theme=light] .re-calc .input-card,[data-theme=light] .re-calc .result-card{border-top:3px solid var(--calc-cyan);border-top-color:var(--calc-cyan)}[data-theme=light] .re-calc .seg-btn.active,[data-theme=light] .re-calc .seg-btn-full.active{color:var(--calc-cyan-accessible,#0e7490);box-shadow:var(--calc-ring-cyan);background:#fff}[data-theme=light] .seg-btn-full.freq-active{background:rgba(var(--calc-cyan-rgb), .12);color:var(--calc-cyan-accessible,#0e7490);border-color:rgba(var(--calc-cyan-rgb), .4);box-shadow:inset 0 0 0 2px rgba(var(--calc-cyan-rgb), .45)}[data-theme=light] .seg-btn-full.freq-inactive{color:#475569;background:#f0f4f9;border-color:#0000001a}[data-theme=light] .rate-chip{color:#2d4a6b;background:#00000008;border:1px solid #0000001a}[data-theme=light] .rate-chip:hover,[data-theme=light] .rate-chip.active{background:rgba(var(--calc-cyan-rgb), .08);border-color:rgba(var(--calc-cyan-rgb), .4);color:var(--calc-cyan)}[data-theme=light] .slider{background-color:#cbd5e1}[data-theme=light] input:checked+.slider{background-color:var(--calc-cyan)}[data-theme=light] .formula-strip:after{background:linear-gradient(90deg,#0000,#f8fafc)}[data-theme=light] .formula-strip{background:#f8fafc;border:1px solid #00000014}[data-theme=light] .data-card{background:#f0f4fb}[data-theme=light] .hero-value{text-shadow:none}[data-theme=light] .donut-summary-card{background:#fff}[data-theme=light] .breakdown-card{background:#f8fafc}[data-theme=light] .toast{background:#fff}[data-theme=light] details{background:#f0f4fbcc}[data-theme=light] .schedule-container{border-color:#00000017}[data-theme=light] .amortization-table th{color:var(--calc-cyan);background:#f0f4fb}[data-theme=light] .amortization-table td{color:#0f1e33}[data-theme=light] .amortization-table tbody tr:nth-child(2n){background:#00000006}[data-theme=light] .amortization-table tbody tr:hover{background:rgba(var(--calc-cyan-rgb), .06)}[data-theme=light] .bd-row{border-bottom-color:#00000012}[data-theme=light] .alert-item.info{border-color:rgba(var(--calc-cyan-rgb), .22);color:var(--calc-cyan-accessible,#0e7490);background:#eff9fb}[data-theme=light] .alert-item.success{color:#15803d;background:#f0fdf4;border-color:#15803d38}[data-theme=light] .alert-item.warn{color:#78350f;background:#fffbeb;border-color:#d9770659}[data-theme=light] .alert-item.danger{color:#dc2626;background:#fff1f2;border-color:#dc262638}[data-theme=light] .interest-cost-highlight{color:#7f1d1d;background:#fff1f2;border-color:#dc26262e}[data-theme=light] .btn-outline-sm{color:#2d4a6b;background:#00000008;border-color:#0000001f}[data-theme=light] .btn-outline-sm:hover{border-color:var(--calc-cyan);color:var(--calc-cyan);background:rgba(var(--calc-cyan-rgb), .06)}.scenarios-table-wrap{-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;min-width:0;max-width:100%;position:relative;overflow-x:auto}.scenarios-table-wrap:after{content:"";background:linear-gradient(to right, transparent, var(--calc-bg-page));pointer-events:none;opacity:0;border-radius:0 8px 8px 0;width:40px;transition:opacity .25s;position:absolute;top:0;bottom:0;right:0}.scenarios-table-wrap.has-overflow-right:after{opacity:1}.scenarios-table{border-collapse:separate;border-spacing:3px;width:100%;min-width:280px;font-size:.8125rem}@media (width<=1099px){.scenarios-table{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block;overflow-x:auto}}.scenarios-table th{text-align:center;color:var(--calc-text-secondary);text-transform:uppercase;letter-spacing:.08em;background:0 0;padding:6px 8px;font-size:.75rem;font-weight:700}.scenarios-table th:first-child{text-align:left;color:var(--calc-cyan);min-width:52px}.scenarios-table td{text-align:center;font-variant-numeric:tabular-nums;border-radius:var(--calc-radius-xs);cursor:pointer;white-space:nowrap;padding:7px 8px;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:600;transition:transform .15s,outline .15s}.re-calc .scenarios-table td.cell-rate-label{text-align:left;color:var(--calc-text-secondary);cursor:default;background:0 0;outline:none;font-size:.75rem;font-weight:700;transform:none}.scenarios-table td.cell-current{background:rgba(var(--calc-cyan-rgb), .22);color:var(--calc-cyan);outline:2px solid rgba(var(--calc-cyan-rgb), .6);outline-offset:-2px;font-weight:800}.scenarios-table td.cell-cheap{color:var(--calc-emerald);background:#00c9a71a}.scenarios-table td.cell-neutral{background:var(--calc-bg-glass);color:var(--calc-text-secondary)}.scenarios-table td.cell-pricy{background:rgba(var(--calc-cyan-rgb), .06);color:var(--calc-text-secondary)}.scenarios-table td.cell-expensive{color:var(--calc-rose,#f87171);background:#f8717114}.scenarios-table td:not(.cell-rate-label):hover{outline:2px solid rgba(var(--calc-cyan-rgb), .5);outline-offset:-2px;transform:scale(1.04)}[data-theme=light] .scenarios-table th{color:#475569}[data-theme=light] .scenarios-table th:first-child{color:var(--calc-cyan-accessible,#0e7490)}[data-theme=light] .scenarios-table td.cell-rate-label{color:#475569}[data-theme=light] .scenarios-table td.cell-current{background:rgba(var(--calc-cyan-rgb), .12);color:var(--calc-cyan-accessible,#0e7490);outline-color:rgba(var(--calc-cyan-rgb), .5)}[data-theme=light] .scenarios-table td.cell-cheap{color:#065f46;background:#00967814}[data-theme=light] .scenarios-table td.cell-neutral{color:#334155;background:#00000008}[data-theme=light] .scenarios-table td.cell-pricy{background:rgba(var(--calc-cyan-rgb), .06);color:#64748b}[data-theme=light] .scenarios-table td.cell-expensive{color:#dc2626;background:#dc262612}[data-theme=light] .scenarios-table td:not(.cell-rate-label):hover{outline-color:rgba(var(--calc-cyan-rgb), .5)}[data-theme=light] .formula-chip{color:#2d4a6b;background:#edf2f9;border-color:#0000001a}[data-theme=light] .formula-chip.gold{background:rgba(var(--calc-cyan-rgb), .08);border-color:rgba(var(--calc-cyan-rgb), .25);color:var(--calc-cyan-accessible,#0e7490)}[data-theme=light] .formula-chip.emerald{color:#047857;background:#008f761a;border-color:#008f7640}[data-theme=light] .formula-chip.indigo{color:#4d49c8;background:#4d49c81a;border-color:#4d49c840}[data-theme=light] .cash-reconciliation{background:#fff;border-color:#0000001f;box-shadow:0 1px 4px #0000000f}[data-theme=light] .winner-banner{color:#065f46;background:#f0fdf9;border-color:#008f764d}[data-theme=light] .winner-banner.warn{color:#78350f;background:#fffbeb;border-color:#d9770666}[data-theme=light] .winner-banner.neutral{color:#3730a3;background:#eef2ff;border-color:#4d49c84d}[data-theme=light] .bd-row:hover{background:#00000005}.schedule-year-sep td{text-align:center;letter-spacing:.08em;color:var(--calc-text-dim);background:var(--calc-bg-glass);text-transform:uppercase;border:none;padding:5px 0;font-size:.75rem;font-weight:700}[data-theme=light] .schedule-year-sep td{color:#6b84a6;background:#00000004}.schedule-total-row td{border-top:2px solid var(--calc-border-default);padding-top:10px;font-weight:700}[data-theme=light] .schedule-total-row td{border-top-color:#00000026}.scenarios-table td.cell-best{outline:2px solid var(--calc-emerald);outline-offset:-2px}[data-theme=light] .scenarios-table td.cell-best{outline-color:#008f76}@media (width<=480px){.chart-frame--large{height:220px}.chart-frame{height:160px}.input-group label{flex-wrap:wrap;gap:4px}}@media (orientation:landscape) and (height<=480px){.chart-frame--large{height:160px}.chart-frame{height:120px}.input-tab-content{min-height:0;padding-top:8px;padding-bottom:8px}.tab-content{padding-top:8px;padding-bottom:8px}}.result-disclaimer{border-top:1px solid var(--calc-border-subtle,#ffffff0f);color:var(--calc-text-dim,#88a);margin:1.25rem 0 0;padding:.75rem 1rem 0;font-size:.8125rem;font-style:italic;line-height:1.55}[data-theme=light] .result-disclaimer{color:#64748b;border-top-color:#00000014}.equity-strip{gap:8px;margin:12px 0 0;display:flex}.equity-strip-cell{background:rgba(var(--calc-cyan-rgb), .06);border:1px solid rgba(var(--calc-cyan-rgb), .2);border-radius:var(--calc-radius-xs);flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px;display:flex}.equity-strip-label{text-transform:uppercase;letter-spacing:.08em;color:var(--calc-text-secondary);text-align:center;font-size:.75rem;font-weight:600}.equity-strip-val{color:var(--calc-emerald);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:700}[data-theme=light] .equity-strip-cell{background:#f0fdf4;border-color:#008f7633}[data-theme=light] .equity-strip-label{color:#475569}[data-theme=light] .equity-strip-val{color:#065f46}@media (width<=480px){.equity-strip{flex-direction:column}}.input-source-tag,.ownership-cost-source{color:var(--calc-text-muted,#94a3b8);font-size:.75rem;font-weight:500}.ownership-cost-row{color:var(--calc-text-muted,#94a3b8);justify-content:space-between;align-items:baseline;gap:8px;padding:3px 0;font-size:.8125rem;display:flex}.ownership-cost-rows{margin-top:8px}.ownership-cost-row span:first-child{flex:1}.checkbox-hint-row{align-items:center;gap:8px;margin-top:6px;display:flex}.refi-discounted-breakeven{color:var(--calc-text-dim);margin-top:4px;font-size:.8125rem}.scenario-empty-cell{color:var(--calc-text-dim);text-align:center;padding:24px}.scenario-cell-button{border-radius:var(--calc-radius-sm);width:100%;min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:.5rem}.scenario-cell-button:focus-visible{outline:3px solid var(--calc-cyan);outline-offset:-3px}.pmi-permanent-label{color:var(--calc-text-dim,#7b90a8);cursor:pointer;font-size:.8125rem}[data-theme=light] .pmi-permanent-label{color:#64748b}@media (width<=768px){.seg-btn,.rate-chip,.btn-outline-sm,.seg-btn-full{min-height:var(--calc-min-touch);min-width:var(--calc-min-touch);justify-content:center;align-items:center;display:flex}.calculator-wrapper{gap:16px}}.rate-chip:focus-visible,.seg-btn-full:focus-visible{outline:2px solid var(--calc-cyan);outline-offset:2px}#tds-output{min-height:24px;margin-top:12px}@keyframes closing-detail-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){#schedule-table th:nth-child(4),#schedule-table td:nth-child(4),#schedule-table th:nth-child(5),#schedule-table td:nth-child(5),#schedule-table th:nth-child(6),#schedule-table td:nth-child(6),#schedule-table th:nth-child(7),#schedule-table td:nth-child(7){display:none}}.stress-chip{border-radius:var(--calc-radius-xs);background:var(--calc-bg-glass);border:1px solid var(--calc-border-default);flex-direction:column;align-items:center;gap:4px;min-width:86px;padding:8px 12px;display:flex}.stress-chip.current{background:rgba(var(--calc-cyan-rgb), .12);border-color:rgba(var(--calc-cyan-rgb), .45)}.stress-rate{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-dim,#6b85a6);letter-spacing:.08em;font-size:.75rem;font-weight:700}.stress-chip.current .stress-rate{color:var(--calc-cyan,#22d3ee)}.stress-pmt{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#e8eef8);font-size:.875rem;font-weight:700}.arm-stress__link{color:var(--calc-cyan);white-space:nowrap;font-weight:600;text-decoration:none}.arm-stress__link:hover{text-decoration:underline}[data-theme=light] .arm-stress__link{color:var(--calc-cyan-accessible,#0e7490)}[data-theme=light] .stress-chip{background:#f0f4f9;border-color:#0000001f}[data-theme=light] .stress-chip.current{background:rgba(var(--calc-cyan-rgb), .12);border-color:rgba(var(--calc-cyan-rgb), .45)}[data-theme=light] .stress-pmt{color:#0f1e33}.program-seg{gap:4px;width:100%;display:flex}.program-seg .program-btn{letter-spacing:.02em;flex:1 1 0;min-height:34px;font-size:.8125rem}#loan-program-group .field-hint{margin-top:6px;line-height:1.5;display:block}#program-crosslink{margin-top:4px;font-size:.8125rem;display:inline-block}.apr-note{color:var(--calc-text-secondary,#8fa5c8);margin:2px 0 12px;font-size:.8125rem;line-height:1.55}.apr-note strong{color:var(--calc-cyan,#22d3ee);font-family:var(--calc-font-mono,monospace);font-weight:700}.apr-note.is-hidden{display:none}.stress-chip--escrow{border-style:dashed;border-color:var(--calc-border-strong)}.stress-chip--escrow .stress-rate{color:var(--calc-text-secondary)}[data-theme=light] .apr-note strong{color:var(--calc-cyan-accessible,#0e7490)}[data-theme=light] .stress-chip--escrow{background:#fffbeb;border-color:#b4530959}[data-theme=light] .stress-chip--escrow .stress-rate{color:#b45309}#loan-program-group small.field-hint,#va-options small.field-hint,#pmi-input-group>small.field-hint{color:var(--calc-text-dim,#7b90a8)}@media (width<=480px){.program-seg{flex-wrap:wrap}.program-seg .program-btn{flex:45%}}.cash-reconciliation{padding:var(--calc-space-4) var(--calc-space-4) 0;border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-md);background:var(--calc-bg-card,#0f172a59)}.cash-reconciliation[open]{padding-bottom:var(--calc-space-4)}.mortgage-report-detail-grid h3{color:var(--calc-text-muted);font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:700}.unified-refi-table{border-collapse:collapse;width:100%;min-width:1100px;font-size:.8125rem}.unified-refi-table th,.unified-refi-table td{border-bottom:1px solid var(--calc-border-subtle);text-align:right;vertical-align:top;padding:.65rem}.unified-refi-table th:first-child,.unified-refi-table td:first-child{text-align:left;min-width:220px}.unified-refi-table th{color:var(--calc-text-muted,#cbd5e1);font-weight:700}.unified-refi-name{color:var(--calc-text-primary,#f8fafc);font-weight:650}.unified-refi-chart{gap:.45rem;margin-top:1rem;display:grid}.unified-refi-bar{grid-template-columns:minmax(10rem,15rem) 1fr;align-items:center;gap:.6rem;font-size:.8125rem;display:grid}.unified-refi-bar-fill{border-radius:var(--calc-radius-xs);min-width:3.5rem;color:var(--calc-bg-page,#0d1117);white-space:nowrap;padding:.25rem .45rem}[data-theme=light] .unified-refi-bar-fill{color:var(--calc-text-on-accent,#fff)}.unified-refi-bar-fill.positive{background:var(--calc-accent-success,#059669)}.unified-refi-bar-fill.negative{background:var(--calc-rose,#e11d48)}@media (width<=640px){.unified-refi-bar{grid-template-columns:1fr;gap:.2rem}}.mortgage-report-summary{border:1px solid var(--calc-border-default,#94a3b833);margin:1.25rem 0}.mortgage-report-heading,.mortgage-report-metrics{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.mortgage-report-heading h2{margin:.25rem 0 0}.report-meta{color:var(--calc-text-secondary,#94a3b8);text-align:right;flex-wrap:wrap;gap:12px;font-size:.75rem;display:flex}.mortgage-report-metrics{border-top:1px solid var(--calc-border-subtle,#94a3b826);border-bottom:1px solid var(--calc-border-subtle,#94a3b826);grid-template-columns:repeat(4,minmax(0,1fr));margin:1.25rem 0;padding:1rem 0;display:grid}.mortgage-report-metrics>div{border-right:1px solid var(--calc-border-subtle,#94a3b826);gap:4px;padding:0 1rem;display:grid}.mortgage-report-metrics>div:first-child{padding-left:0}.mortgage-report-metrics>div:last-child{border-right:0;padding-right:0}.mortgage-report-metrics strong{color:var(--calc-text-primary,#f8fafc);font-size:1.125rem}.mortgage-report-detail-grid{column-count:2;column-gap:1.5rem}.mortgage-report-detail-grid>div{break-inside:avoid;margin-bottom:1rem}.mortgage-report-detail-grid p,.mortgage-report-detail-grid li{color:var(--calc-text-secondary,#cbd5e1);font-size:.8125rem;line-height:1.5}.mortgage-report-detail-grid ul{margin:0;padding-left:1.1rem}@media (width<=700px){.mortgage-report-heading{display:grid}.report-meta{text-align:left}.mortgage-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 0}.mortgage-report-metrics>div:nth-child(2){border-right:0}.mortgage-report-metrics>div:nth-child(3){padding-left:0}.mortgage-report-detail-grid{column-count:1}}@media print{.mortgage-report-summary{break-inside:avoid;color:#111827;background:#fff;border-color:#cbd5e1}.mortgage-report-metrics strong,.mortgage-report-detail-grid p,.mortgage-report-detail-grid li{color:#111827}.mortgage-report-summary .report-meta{color:#475569}}.result-card>*+*{margin-top:var(--calc-space-6)}.result-card>.sr-only+*,.result-card>.tab-content+.tab-content{margin-top:0}.result-card>.hero-section,.result-card>.mortgage-report-summary,.result-card>.result-disclaimer,.result-card>.cash-reconciliation{margin-bottom:0}.re-calc .input-prefix,.re-calc .input-unit{font-size:var(--calc-text-sm)}.result-card small{font-size:var(--calc-text-xs)}#schedule-table[data-hide-extra=true] th:nth-child(4),#schedule-table[data-hide-extra=true] td:nth-child(4),#schedule-table[data-hide-pmi=true] th:nth-child(5),#schedule-table[data-hide-pmi=true] td:nth-child(5){display:none}#schedule-table .schedule-year-sep td{display:table-cell}.cell-best .scenario-cell-button:after{content:"Lowest";margin-left:var(--calc-space-2);border-radius:var(--calc-radius-pill);background:rgba(var(--calc-cyan-rgb), .15);color:var(--calc-cyan);font-family:var(--calc-font-body,"Inter", sans-serif);letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;padding:1px 6px;font-size:.625rem;font-weight:700;display:inline-block}[data-theme=light] .label-cyan,[data-theme=light] .calc-inline-link,[data-theme=light] .stress-chip.current .stress-rate,[data-theme=light] .cell-best .scenario-cell-button:after{color:var(--calc-cyan-accessible,#0e7490)}.re-calc .calculator-wrapper{grid-template-columns:minmax(0,.92fr) minmax(0,1.28fr);align-items:start;gap:24px}.re-calc .input-card{min-width:0;max-height:none;padding:24px;position:static;overflow:visible}.re-calc .result-card{min-width:0;padding:24px;overflow:visible}.re-calc .card-header-note{max-width:46rem;color:var(--calc-text-secondary,#cbd5e1);margin:0;font-size:.86rem;line-height:1.5}.setup-stepper{border:1px solid var(--calc-border-default,#94a3b847);border-radius:var(--calc-radius-lg,16px);background:var(--calc-bg-card-elevated,#1c2333);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:24px;padding:8px;display:grid}.result-summary-rail{z-index:auto;border-bottom:1px solid var(--calc-border-subtle,#94a3b82e);background:color-mix(in srgb, var(--calc-bg-card,#111c2d) 94%, transparent);backdrop-filter:blur(16px);margin:-24px -24px 0;padding:24px;position:static}@media (width>=769px){.re-calc .result-summary-rail{margin:-16px -16px 0;padding:14px 16px}.re-calc .result-summary-rail .hero-section{border-bottom:0;grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr));gap:12px;margin-bottom:0;padding-bottom:0}.re-calc .result-summary-rail .hero-metric--primary{border-bottom:0;grid-column:auto;min-width:0;padding-bottom:0}.re-calc .result-summary-rail .hero-metric:has(#val-total-interest){display:none}.re-calc .result-summary-rail .hero-section .label-sm{min-height:1.2em}.re-calc .result-summary-rail .hero-metric-note{overflow-wrap:anywhere;min-width:0;padding-top:4px}}.report-detail-fold{border-top:1px solid var(--calc-border-subtle,#94a3b82e);margin-top:18px}.report-detail-fold>summary{color:var(--calc-text-secondary,#cbd5e1);cursor:pointer;padding:13px 0;font-size:.78rem;font-weight:700;list-style:none}.report-detail-fold>summary::-webkit-details-marker{display:none}.report-detail-fold>summary:before{content:"+";width:20px;height:20px;font-family:var(--calc-font-mono,ui-monospace, monospace);border:1px solid;border-radius:50%;place-items:center;margin-right:8px;display:inline-grid}.report-detail-fold[open]>summary:before{content:"−"}.report-detail-fold .mortgage-report-detail-grid{padding-bottom:4px}.action-bar{justify-content:space-between;align-items:center;gap:10px}.action-bar>.action-btn--primary{border-color:var(--calc-cyan-accessible,#0e7490)}.action-bar>#btn-copy{margin-right:auto}.flow-discover-pill{border:1px solid var(--calc-cyan-accessible,#0e7490);border-radius:var(--calc-radius-sm,8px);background:var(--calc-bg-card-elevated,#1c2333);min-height:42px;color:var(--calc-text-primary,#f8fafc);border-left-width:3px;align-items:center;gap:8px;padding:8px 13px;font-size:.8rem;font-weight:700;text-decoration:none;display:inline-flex}.flow-discover-pill:hover,.flow-discover-pill:focus-visible{border-color:var(--calc-cyan,#22d3ee);color:var(--calc-cyan-accessible,#0e7490)}.re-calc :is(button,a,input,select,summary):focus-visible{outline:3px solid rgba(var(--calc-cyan-rgb,34, 211, 238), .7);outline-offset:3px}@media (width<=1100px){.re-calc .calculator-wrapper{grid-template-columns:minmax(0,1fr);gap:24px}}@media (width<=768px){.re-calc .calculator-wrapper{gap:16px;overflow:visible}.re-calc .input-card,.re-calc .result-card{padding:18px}.setup-stepper{scrollbar-width:thin;margin-left:-4px;margin-right:-4px;padding:5px;display:flex;overflow-x:auto}.re-calc .result-summary-rail{backdrop-filter:none;background:0 0;border-bottom:0;margin:0;padding:18px 0 0;display:none;position:static}.action-bar{justify-content:flex-start;align-items:stretch}.action-bar>.action-btn{flex:calc(50% - 8px)}.action-bar>#btn-copy{margin-right:0}.action-bar>#btn-reset{flex-basis:100%}}@media print{.re-calc .result-summary-rail{box-shadow:none;background:0 0;border:0;margin:0;padding:0;display:block;position:static}.setup-stepper{display:none}.report-detail-fold{display:block}.report-detail-fold>summary{display:none}}.flow-discover-pill,.calc-breadcrumb+.calc-flow-context{border-radius:var(--calc-radius-md,12px);box-sizing:border-box;width:fit-content;max-width:calc(100% - 30px);min-height:42px;margin:0 auto;padding:8px 13px;display:flex}.re-calc .page-title{margin-top:8px}.re-calc{padding-top:18px}.re-calc .page-subtitle{margin-bottom:14px}.re-calc .result-summary-rail .hero-section{border-bottom:1px solid var(--calc-border-subtle,#94a3b82e);grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(0,1fr));gap:14px 18px;margin-bottom:0;padding-bottom:14px}.re-calc .result-summary-rail .hero-metric--primary{border-bottom:0;grid-column:auto;padding-bottom:0}.re-calc .result-summary-rail .hero-metric:has(#val-total-interest){display:grid}.section-kicker{color:var(--calc-cyan-on-dark,var(--calc-cyan,#22d3ee));font-family:var(--calc-font-mono,ui-monospace, monospace);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:750;line-height:1.25}.breakdown-total{border-top:1px solid var(--calc-border-subtle,#94a3b82e);color:var(--calc-text-secondary,#cbd5e1);justify-content:space-between;align-items:baseline;gap:12px;margin-top:12px;padding-top:12px;font-size:.75rem;font-weight:700;display:flex}.breakdown-total strong{color:var(--calc-text-primary,#f8fafc);font-family:var(--calc-font-mono,ui-monospace, monospace);font-size:1.05rem}.re-calc #monthly-data-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.re-calc #monthly-data-grid .data-card.is-hidden{display:none}[data-theme=light] .section-kicker{color:var(--calc-cyan-on-light,#0b5f73)}@media (width<=768px){.flow-discover-pill,.calc-breadcrumb+.calc-flow-context{width:fit-content;min-height:42px;margin-bottom:0;padding:8px 12px}.re-calc .page-title{margin-top:0}.re-calc{padding-top:18px}.setup-stepper{grid-template-columns:repeat(3,minmax(0,1fr));margin-left:0;margin-right:0;padding:4px;display:grid;overflow:visible}.re-calc .result-summary-rail .hero-section{grid-template-columns:1fr}.re-calc #monthly-data-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media print{html body .re-calc .setup-stepper{display:none}.re-calc{padding-top:0}}@media (width<=768px){.flow-discover-pill,.calc-breadcrumb+.calc-flow-context{grid-template-columns:auto minmax(0,1fr) auto;gap:10px 12px;width:calc(100% - 30px);max-width:calc(100% - 30px);min-height:0;padding:12px;display:grid}.calc-flow-context__body{min-width:0}}@media (width<=420px){.flow-discover-pill,.calc-breadcrumb+.calc-flow-context{grid-template-columns:auto minmax(0,1fr)}.calc-flow-context__cta{grid-column:1/-1;width:100%}.calc-flow-context__title{overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap;word-break:normal;overflow:hidden}}.re-calc .result-summary-rail>.cash-reconciliation{margin-top:14px;margin-bottom:0}.analysis-panel-heading{border-bottom:1px solid var(--calc-border-subtle,#94a3b82e);gap:5px;margin-bottom:16px;padding-bottom:14px;display:grid}.analysis-panel-heading h2{color:var(--calc-text-primary,#f8fafc);margin:0;font-size:1.05rem;line-height:1.25}.analysis-panel-heading p{max-width:58rem;color:var(--calc-text-secondary,#cbd5e1);margin:0;font-size:.78rem;line-height:1.45}.re-calc .result-card,.re-calc #cash-reconciliation{scroll-margin-top:7.5rem}@media (width<=768px){.re-calc #smart-defaults-banner{min-height:0;margin-bottom:10px}.re-calc .smart-default-banner{gap:8px;padding:9px 11px;font-size:.78rem;line-height:1.35}.analysis-panel-heading{margin-bottom:14px;padding-bottom:12px}}@media (width<=420px){.re-calc .smart-default-banner{flex-wrap:wrap;align-items:flex-start}.re-calc .smart-default-banner>span{flex:calc(100% - 24px);min-width:0}.re-calc .smart-default-banner .sd-change-btn{flex:none;margin-left:22px}}