:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#142b48;background:#f4f7fa;font-synthesis:none}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:#0b5a9e}
.page-width{width:min(1360px,calc(100% - 64px));margin:auto}
.brandbar{background:#fff;border-bottom:1px solid #dfe6ed}
.brand{min-height:48px;display:flex;align-items:center;gap:16px;font-size:20px;font-weight:800;letter-spacing:-.04em;color:#12345d}
.brand span{color:#08883a}
.brand small{font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#698096;margin-left:auto}
.brand>a{color:inherit;text-decoration:none}
.brand nav{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:13px;font-weight:650;letter-spacing:0}
.brand nav a{color:#12345d;text-decoration:none}
.brand nav form{margin:0}
.brand nav button{border:0;background:none;color:#12345d;font-weight:650;padding:6px 0}
@media(max-width:600px){.brand{flex-wrap:wrap;padding:10px 0;gap:4px}.brand nav{width:100%;margin-left:0;justify-content:space-between}}
.hero{background:#102d50;color:#fff;padding:26px 0 28px}
.eyebrow{margin:0 0 4px;color:#a8c4de;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.hero h1{font-size:clamp(26px,3vw,40px);letter-spacing:-.04em;line-height:1.1;margin:0 0 8px}
.hero p:last-child{margin:0;color:#dce7f1;font-size:15px;line-height:1.5}
.tabs{background:#fff;border-bottom:1px solid #d8e1ea}
.tab-row{display:flex}
.tab{flex:1;min-height:58px;border:0;border-bottom:3px solid transparent;background:#fff;color:#274a70;font-weight:650;font-size:14px}
.tab+.tab{border-left:1px solid #e7edf3}
.tab.active{color:#087a35;border-bottom-color:#078c3c}
.tab:hover{background:#f7fafc}
.tab:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.primary-button:focus-visible{outline:3px solid #3c8aca;outline-offset:2px}
.tab-panel{display:none;padding-top:24px;padding-bottom:48px}
.tab-panel.active{display:block}
.work-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(280px,3fr);gap:24px;align-items:start}
.input-surface,.live-rail,.result-surface{background:#fff;border:1px solid #dce5ed;box-shadow:0 3px 14px rgba(16,45,80,.04);border-radius:7px}
.input-surface{padding:30px 34px}
.section-kicker{margin:0 0 5px;font-size:12px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:#0c7d38}
h2,h3,p{margin-top:0}
.input-surface h2,.result-surface h2{font-size:27px;letter-spacing:-.035em;margin:0}
.intro{color:#536b80;line-height:1.5;font-size:14px;max-width:730px;margin:12px 0 24px}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.field{display:block;min-width:0;color:#183653;font-size:13px;font-weight:650}
.field>span:first-child{display:block;margin-bottom:8px}
.unit-input{height:46px;display:flex;align-items:center;border:1px solid #bfcedd;border-radius:5px;background:#fff;overflow:hidden}
.unit-input:focus-within{border-color:#2e77b8;box-shadow:0 0 0 2px rgba(46,119,184,.12)}
.unit-input span{color:#4f6680;font-size:13px;padding:0 12px;white-space:nowrap}
.unit-input span:first-child:not(:last-child){border-right:1px solid #d8e2eb;background:#f8fafc;height:100%;display:flex;align-items:center}
.unit-input span:last-child:not(:first-child){border-left:1px solid #d8e2eb;background:#f8fafc;height:100%;display:flex;align-items:center}
.unit-input input{border:0;outline:0;min-width:0;width:100%;height:100%;padding:0 13px;color:#102d50;background:transparent;font-weight:650}
.unit-input input::placeholder{color:#9aaabb;font-weight:400}
.subsection-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;border-top:1px solid #e5ebf1;margin-top:32px;padding-top:26px}
.subsection-heading h3,.result-heading h3{margin:0;font-size:20px;letter-spacing:-.025em}
.subsection-heading>p,.result-heading p{color:#647a8e;font-size:13px;margin:0;line-height:1.45}
.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 28px}
.scenario-input{border:1px solid #d6e1eb;border-radius:5px;padding:15px;background:#fff}
.scenario-name{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:750;margin-bottom:17px}
.scenario-name i,.rail-option i,.chart-legend i,.table-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none}
.scenario-label{display:block;font-size:12px;color:#5e7487;margin-bottom:7px}
.detail-group{border-top:1px solid #e3eaf0}
.detail-group summary{list-style:none;min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;font-weight:720;color:#183653;cursor:pointer}
.detail-group summary::-webkit-details-marker{display:none}
.detail-group summary::after{content:'⌄';font-size:20px;font-weight:400;color:#406487;margin-left:8px}
.detail-group[open] summary::after{transform:rotate(180deg)}
.summary-note{margin-left:auto;color:#8192a2;font-size:12px;font-weight:500}
.detail-body{padding:7px 0 22px}
.field-help{color:#657b8f;font-size:12px;line-height:1.45;margin:9px 0 16px}
.field-help.top{margin-top:0}
.toggle-row{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0}
.toggle-row label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:650}
.toggle-row input{accent-color:#087d37;width:17px;height:17px}
.scenario-detail{min-width:0;background:#f8fafc;border:1px solid #e4ebf1;border-radius:5px;padding:14px}
.scenario-detail strong{font-size:13px;color:#102d50;display:block;margin-bottom:12px}
.scenario-detail .field+.field{margin-top:12px}
.shared-field{max-width:340px;margin:18px 0 0}
.override-heading{font-size:13px;font-weight:700;margin:20px 0 10px;color:#183653}
.prb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.validation{background:#fff3f2;border:1px solid #e5b9b5;border-radius:5px;color:#9b322b;padding:14px;margin-top:16px;font-size:13px}
.validation ul{margin:8px 0 0;padding-left:20px}
.live-rail{padding:0 20px 20px;position:sticky;top:16px}
.rail-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:20px 0 14px;border-bottom:2px solid #15924a;font-size:18px;font-weight:750}
.rail-head small{font-size:12px;color:#70869a;font-weight:550}
.rail-body{padding:18px 0 7px}
.rail-intro{font-size:12px;color:#62798c;margin:0 0 11px;font-weight:650}
.rail-option{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #e8edf2}
.rail-option>span{display:flex;align-items:center;gap:7px;font-weight:650;font-size:13px}
.rail-option small{font-weight:500;color:#8093a3}
.rail-option strong{font-size:20px;color:#087436;letter-spacing:-.03em}
.rail-option.compact{padding:8px 0}
.rail-option.compact strong{font-size:15px;color:#173a60}
.rail-divider{height:16px}
.rail-note{color:#61768a;font-size:12px;line-height:1.45;margin:17px 0 6px}
.primary-button{border:0;background:#102d50;color:#fff;font-weight:720;width:100%;height:46px;border-radius:4px;display:flex;align-items:center;justify-content:center;gap:10px}
.primary-button:hover{background:#194675}
.primary-button:disabled{opacity:.55;cursor:not-allowed}
.result-surface{padding:34px 38px}
.result-surface>.intro{margin-bottom:22px}
.result-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:30px 0 12px}
.result-heading:first-child{margin-top:0}
.result-heading p{margin-top:4px}
.table-scroll{max-width:100%;overflow-x:auto}
.summary-table,.comparison-table,.annual-table{border-collapse:collapse;width:100%;font-size:13px}
.summary-table th,.summary-table td,.comparison-table th,.comparison-table td,.annual-table th,.annual-table td{padding:13px 12px;border-bottom:1px solid #e3eaf1;text-align:right;white-space:nowrap}
.summary-table th:first-child,.comparison-table th:first-child,.annual-table th:first-child{text-align:left}
.summary-table thead th,.comparison-table thead th,.annual-table thead th{background:#f2f6f9;color:#314e68;font-size:12px;font-weight:750}
.summary-table tbody th{font-weight:600;color:#35526d}
.summary-table tbody tr:nth-last-child(-n+2){background:#f6fbf7}
.summary-table thead small{display:block;color:#70869a;font-weight:500;margin-top:3px}
.table-dot{margin-right:6px}
.chart-heading{margin-top:42px}
.chart-control{font-size:12px;color:#61788d;display:flex;align-items:center;gap:9px}
.chart-control select{border:1px solid #c4d2df;border-radius:4px;height:36px;color:#173c60;background:#fff;padding:0 10px}
.chart-wrap{border:1px solid #e1e9ef;border-radius:5px;padding:16px 12px 0}
.chart-wrap svg{width:100%;height:auto}
.gridline{stroke:#e7edf2;stroke-width:1}
.axis-label{fill:#74889a;font-size:11px}
.chart-legend{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:12px;color:#547087;padding:12px}
.chart-legend span{display:flex;align-items:center;gap:6px}
.comparison-table{min-width:840px}
.comparison-table tbody th{font-weight:700;color:#173c60}
.comparison-table tbody th small{display:block;color:#8193a3;font-weight:500;margin-top:3px}
.table-note{color:#667c8f;line-height:1.45;font-size:12px;margin:13px 0 22px}
.result-detail{margin-top:18px}
.result-detail .detail-body{padding-bottom:20px}
.annual-table{min-width:680px}
.annual-table tbody tr:nth-child(5n){background:#f8fafc}
.result-warning{border-left:3px solid #ca7e32;padding:10px 13px;color:#845219;background:#fff9f1;font-size:13px}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 44px;margin-top:28px}
.method-grid h3,.method-note h3{font-size:16px;margin-bottom:7px}
.method-grid p,.method-note p{font-size:14px;line-height:1.6;color:#516a80}
.method-note{border-top:1px solid #e3eaf0;margin-top:22px;padding-top:24px}
.method-note p:last-child{margin-bottom:0}
.muted{color:#6a8093;font-size:13px}
.empty-state{background:#f5f9fc;border:1px dashed #bfd0df;border-radius:6px;padding:20px;color:#1c446a}
.empty-state strong{display:block;font-size:15px;margin-bottom:6px}
.empty-state p{font-size:13px;line-height:1.5;color:#5c758c;margin:0}
.lens-picker{display:flex;gap:8px;flex-wrap:wrap;margin:2px 0 18px}
.lens-button{background:#fff;border:1px solid #bdcedd;border-radius:20px;color:#244d6f;font-size:13px;font-weight:650;padding:9px 14px}
.lens-button:hover{background:#f3f8fb}
.lens-button.active{background:#102d50;color:#fff;border-color:#102d50}
.answer-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:22px;background:#f4f8fb;border:1px solid #dce7ef;border-left:4px solid #138d43;border-radius:6px;padding:22px 24px}
.answer-card h3{font-size:21px;line-height:1.3;letter-spacing:-.02em;margin:0 0 10px}
.answer-card p:last-child{font-size:13px;line-height:1.5;color:#5c7489;margin:0}
.answer-values{border-left:1px solid #d9e5ed;padding-left:20px}
.answer-values>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #dce7ef}
.answer-values>div:last-child{border:0}
.answer-values span{display:flex;align-items:center;gap:7px;font-size:12px;color:#48667e}
.answer-values i{display:inline-block;width:8px;height:8px;flex:none;border-radius:50%}
.answer-values strong{font-size:16px;color:#123b63;white-space:nowrap}
.result-context{font-size:12px;line-height:1.5;color:#5d758a;margin:11px 0 26px}
.model-note{background:#f8fafc;border:1px solid #e4ebf1;border-radius:5px;padding:14px 16px;margin-top:18px;font-size:12px;color:#4e687f}
.model-note strong{color:#173c60}
.model-note ul{margin:7px 0;padding-left:20px}
.model-note p{margin:6px 0 0;line-height:1.45}
.comparison-marker{stroke:#718ba1;stroke-width:1.5;stroke-dasharray:5 5}
.compact-table{min-width:0}
.annual-control{margin:0 0 12px}
.annual-table thead small{display:block;color:#70869a;font-weight:500;margin-top:3px}

@media(max-width:1050px){.work-layout{grid-template-columns:minmax(0,1fr) 300px}
.field-grid.three,.prb-grid{grid-template-columns:1fr}
.scenario-grid{gap:8px}
.scenario-input{padding:12px}
.input-surface{padding:25px}
.rail-option strong{font-size:17px}
}

@media(max-width:760px){.page-width{width:min(100% - 32px,560px)}
.brand{font-size:18px}
.hero{padding:22px 0}
.hero p:last-child{font-size:13px}
.tab-row{width:100%;padding:0 8px}
.tab{font-size:12px;min-height:52px;padding:5px}
.tab-panel{padding-top:16px}
.work-layout{display:flex;flex-direction:column;gap:16px}
.live-rail{order:-1;position:static;width:100%;padding:0 17px 17px}
.rail-head{padding:15px 0 10px;font-size:16px}
.rail-body{padding-top:10px}
.rail-option{padding:7px 0}
.rail-option strong{font-size:17px}
.rail-divider{height:8px}
.rail-note{margin:10px 0 3px}
.input-surface,.result-surface{width:100%;padding:22px 18px}
.input-surface h2,.result-surface h2{font-size:23px}
.intro{margin-bottom:18px}
.field-grid,.field-grid.three,.prb-grid{grid-template-columns:1fr}
.scenario-grid{grid-template-columns:1fr;gap:8px;margin-bottom:18px}
.scenario-input{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:5px 12px}
.scenario-name{grid-row:1/3;margin:0}
.scenario-label{margin:0}
.scenario-input .unit-input{grid-column:2;grid-row:2}
.subsection-heading{display:block;margin-top:24px;padding-top:20px}
.subsection-heading>p{margin-top:6px}
.summary-note{font-size:11px}
.result-heading{display:block}
.chart-control{margin-top:12px}
.summary-table{min-width:620px}
.method-grid{grid-template-columns:1fr;gap:16px}
.chart-wrap{padding:6px 2px 0}
.chart-legend{gap:10px}
.answer-card{grid-template-columns:1fr;padding:18px;gap:14px}
.answer-values{border-left:0;border-top:1px solid #d9e5ed;padding:8px 0 0}
.answer-card h3{font-size:18px}
.compact-table{min-width:560px}
}

@media(max-width:420px){.brand small{display:none}
.hero h1{font-size:27px}
.rail-option>span{font-size:12px}
.rail-option strong{font-size:15px}
.tab{font-size:11px}
.input-surface,.result-surface{padding:18px 14px}
.scenario-input{grid-template-columns:1fr 1fr}
}

.input-surface{grid-column:1;grid-row:1}
.live-rail{grid-column:2;grid-row:1}

@media(max-width:760px){.rail-secondary{display:none}
.rail-note{margin:10px 0 13px}
}



.paid-preview button:disabled{cursor:not-allowed;opacity:.58}
.paid-preview-banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 20px;background:#092e55;color:white;border-bottom:3px solid #65c529}.paid-preview-banner strong{text-transform:uppercase;color:#a2ed82;letter-spacing:.06em}.paid-preview-banner span{flex:1 1 300px}.paid-preview-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;background:#65c529;color:#082441!important;border-radius:7px;font-weight:800;text-decoration:none}.paid-preview-cta.pending{background:#e6edf1}.paid-preview-bottom{max-width:1100px;margin:32px auto;padding:24px;background:#f4faf2;border:1px solid #c9dfc3;border-radius:10px;text-align:center}.paid-preview-bottom h2{margin:0 0 8px}.paid-preview-bottom p{margin:0 0 16px}.paid-preview input:disabled,.paid-preview select:disabled,.paid-preview textarea:disabled{background:#edf2f5!important;color:#586b7c!important;cursor:not-allowed;opacity:.8}.paid-preview [hidden]{display:none!important}.preview-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:16px 0}.preview-field{display:grid;gap:6px;font-size:.9rem;font-weight:600}.preview-field input{min-width:0;width:100%;padding:10px;border:1px solid #cbd5df;border-radius:6px}.preview-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:16px 0}.preview-result{padding:14px;background:#f2f6f8;border:1px solid #d4e0e8;border-radius:8px}.preview-result span,.preview-result strong{display:block}.preview-result strong{margin-top:8px;color:#728394;font-size:.9rem}.preview-empty-value{display:block;min-height:1em}.paid-preview [data-preview-list] .preview-fields{padding:12px;border:1px solid #d4e0e8;border-radius:8px}@media(max-width:650px){.paid-preview-banner{align-items:stretch;flex-direction:column}.paid-preview-banner span{flex:none}.paid-preview-bottom{margin:24px 12px}.paid-preview-cta{width:100%}}
