[hidden]{display:none!important}
.tool-hero{padding-top:36px;padding-bottom:32px}.tool-hero h1{font-size:clamp(36px,5vw,62px)}
.reading-settings{max-width:1120px;margin:0 0 16px;padding:12px 0;font-size:15px}.reading-settings summary{width:fit-content}
.tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tools-grid h2,.resources-grid h2{font-size:27px}
.tools-grid>.card:last-child:nth-child(odd){grid-column:1/-1}
.tool-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:26px;align-items:start;margin:32px 0 44px}
.tool-form,.result-panel{min-width:0;background:white;border:1px solid #d6ded2;border-radius:16px;padding:26px}
.tool-form>h2,.result-panel>h2{font-size:30px;margin-top:0}.result-panel{background:#e9f0e2;position:sticky;top:20px}
.result-panel h3{font-size:23px}.result-panel .amount{font-size:clamp(30px,4vw,42px);font-weight:800;letter-spacing:-.035em;margin:8px 0;overflow-wrap:anywhere}
.tool-form fieldset{border:1px solid #c1ceb9;padding:18px;margin:24px 0;border-radius:10px;min-width:0}
.tool-form legend{font-weight:750;padding:0 6px;max-width:100%}.tool-form label{display:block;font-size:16px;font-weight:650;margin:16px 0 6px}
input,select{min-height:48px;width:100%;min-width:0;background:#fff;color:#183d34;border:1px solid #71846b;border-radius:7px;font:inherit;line-height:1.4;padding:10px}
input:focus-visible,select:focus-visible{outline:3px solid #af4a18;outline-offset:3px}input[aria-invalid=true],select[aria-invalid=true]{border:2px solid #992b19}
input[type=checkbox]{width:22px;height:22px;min-height:22px;flex:none;accent-color:#183d34;margin:3px 0}
.tool-form label.checkbox-line{display:flex;align-items:flex-start;gap:12px;font-weight:500;line-height:1.5;margin-top:22px}
.input-unit{display:flex;align-items:center;gap:8px}.input-unit>span{white-space:nowrap;font-size:16px;min-width:28px}
.budget-row{display:grid;grid-template-columns:1.1fr 1fr;gap:10px}.budget-row label{margin-top:0}.remove-row{align-self:end;min-height:48px;padding:10px}
.text-button{background:transparent;color:#183d34;border:0;padding:10px 0;text-decoration:underline;text-underline-offset:4px}
.scenario-grid{display:block}.scenario h3{font-size:20px}.scenario legend{font-size:21px}
.form-error,.notice{padding:16px;border:1px solid #b47034;border-left:5px solid #b47034;background:#fff5e7;border-radius:6px;margin:16px 0;color:#63351b;overflow-wrap:anywhere}
.form-error{border-color:#992b19;background:#fff2ed;color:#742314}.form-error:focus{outline:2px solid #992b19;outline-offset:3px}
.positive{color:#0f5840}.negative{color:#872e23}.result-panel dl{margin:22px 0}.result-panel dt{font-weight:650;margin-top:14px}.result-panel dd{margin:3px 0;overflow-wrap:anywhere}
.result-panel th,.result-panel td{font-size:15px;padding:12px 6px}.result-panel code{font:inherit}.result-label{font-size:14px;text-transform:uppercase;letter-spacing:.07em;font-weight:700}
.calculation-detail{font-size:16px;overflow-wrap:anywhere}.result-meta{font-size:14px;border-top:1px solid #bacab0;padding-top:12px}.scenario-label{font-size:18px}
.resources-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}#resource-profile{max-width:580px}.qa-list li{margin:12px 0}
html[data-large-text=true] body{font-size:21px}html[data-large-text=true] .small,html[data-large-text=true] .card p,html[data-large-text=true] .tool-form label,html[data-large-text=true] .calculation-detail,html[data-large-text=true] td,html[data-large-text=true] th{font-size:19px}html[data-large-text=true] input,html[data-large-text=true] select,html[data-large-text=true] button{font-size:20px}html[data-large-text=true] nav .links{font-size:18px}
html[data-high-contrast=true] body,html[data-high-contrast=true] header,html[data-high-contrast=true] footer{background:white;color:#061f13}html[data-high-contrast=true] .card,html[data-high-contrast=true] .tool-form,html[data-high-contrast=true] .result-panel,html[data-high-contrast=true] .strip{background:white;color:#061f13;border:2px solid #061f13}html[data-high-contrast=true] .small,html[data-high-contrast=true] .number{color:#183d34}html[data-high-contrast=true] .dark{background:#061f13;color:white}html[data-high-contrast=true] .dark .small{color:white}html[data-high-contrast=true] input,html[data-high-contrast=true] select{border:2px solid #061f13}
@media(max-width:900px){.tool-layout{grid-template-columns:1fr}.result-panel{position:static}.tool-form,.result-panel{padding:20px}}
@media(max-width:640px){.tools-grid,.resources-grid,.budget-row{grid-template-columns:1fr}.tool-form{padding:16px}.tool-form fieldset{padding:14px}.actions>*{width:100%;text-align:center}.reading-settings .actions>*{width:auto}.tool-hero h1{font-size:38px}.tool-form .small{font-size:15px}.remove-row{justify-self:start;width:auto}}
@media print{body{background:white!important;color:black!important;font-size:11pt}.screen-only,header,footer,.reading-settings,.tool-form,.skip{display:none!important}.wrap{max-width:none;padding:0}.hero{padding:0!important}.hero h1{font-size:24pt!important}.hero p{font-size:11pt!important}.tool-layout{display:block;margin:0}.result-panel{position:static;background:white!important;border:1px solid #aaa;padding:18px;color:black!important}.result-panel .amount{font-size:25pt}.section{padding:14px 0}a{color:black!important;overflow-wrap:anywhere}table{font-size:10pt}h2,h3{break-after:avoid}.result-panel tr,fieldset{break-inside:avoid}.notice{background:white!important;color:black!important;border-color:#555}.positive,.negative{color:black!important}}
