:root{font-family:Arial,Helvetica,sans-serif;color:#20232a;background:#f4f5f7;font-synthesis:none;line-height:1.5;--accent:#4930ef;--muted:#656971;--border:#dfe1e6}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a{color:var(--accent);text-underline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.8px;margin:10px 0 0;font-weight:500}h2{font-size:23px;font-weight:500;letter-spacing:-.5px;margin:0}h3{font-weight:500}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px}
.calculator{max-width:1220px;margin:auto;padding:40px 28px}.toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center}.badge,.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.7px}.badge{color:#4431c0}.selectors{display:flex;gap:15px}.selectors label{font-size:12px;color:var(--muted)}select{display:block;margin-top:6px;border:1px solid var(--border);border-radius:6px;background:#fff;padding:9px 28px 9px 12px;color:#20232a;min-height:44px}.intro{max-width:760px;margin:20px 0 30px;color:var(--muted);font-size:15px}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.inputs{min-width:0}.panel{background:white;border:1px solid var(--border);border-radius:12px;padding:26px;margin-bottom:18px}.section-title{display:flex;align-items:center;gap:12px;margin-bottom:24px}.section-title>span{font-size:11px;color:#646076;border:1px solid #e1ddfa;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;flex-shrink:0}.section-intro{color:var(--muted);font-size:13px;margin-top:-10px;margin-bottom:22px}.field{margin:0 0 22px}.field:last-child{margin-bottom:0}.field label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-wrap{display:flex;align-items:center;border:1px solid #bfc3cd;border-radius:6px;background:#fff}.input-wrap input{width:100%;min-width:0;border:0;background:transparent;padding:12px;font-size:17px;color:#20232a;border-radius:6px}.input-wrap>span{padding:0 12px 0 4px;white-space:nowrap;font-size:12px;color:var(--muted);flex-shrink:0}.help{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 0}.error{color:#ac312a}.inline-link{font-size:13px}.assumptions{font-size:13px;color:var(--muted)}.assumptions summary{font-size:15px;color:#20232a;cursor:pointer}.assumptions[open] summary{margin-bottom:24px}.assumptions p:last-child{margin-bottom:0}.results{padding:28px;background:#fff;border:1px solid var(--border);border-radius:12px;min-width:0}.results-heading{margin-bottom:22px}.results-heading .eyebrow{color:var(--accent);margin-bottom:10px}.results-heading>p:last-child{font-size:13px;color:var(--muted);margin:6px 0 0}.metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.metric{padding:20px 17px;background:#f6f7f9;border-radius:8px;min-width:0}.metric h3{font-size:13px;line-height:1.4;margin-bottom:15px;min-height:36px}.metric-value{font-size:29px;line-height:1.1;letter-spacing:-1px;margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.metric-value span{display:block;font-size:11px;color:var(--muted);letter-spacing:0;line-height:1.4;margin-top:8px}.metric-detail{font-size:11px;line-height:1.5;color:var(--muted);margin:12px 0 0}.metric.accent{background:#eeebff}.metric.accent .metric-value{color:var(--accent)}.impact-total{padding:24px;margin-bottom:12px}.impact-total h3{font-size:16px;min-height:0;margin-bottom:16px}.impact-total .metric-value{font-size:48px;letter-spacing:-1.5px}.impact-total .metric-value span{font-size:12px}.impact-breakdown{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;row-gap:4px;font-size:13px;line-height:1.6;margin:18px 0 0;color:#49425f}.impact-breakdown strong{font-weight:600;font-variant-numeric:tabular-nums}.impact-baseline{font-size:12px;margin:12px 0 0;color:#49425f}.impact-total .accounting-note{font-size:11px;line-height:1.5;color:var(--muted);margin:12px 0 0}.heat-caveat{margin:14px 0 0}.fuel-savings{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.fuel-savings h3{font-size:19px;margin-bottom:16px}.fuel-value{font-size:32px;letter-spacing:-.7px;margin:0}.fuel-value span{display:block;font-size:11px;letter-spacing:0;color:var(--muted);margin-top:5px}.report-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.report-actions button{font-size:13px;min-height:44px;border-radius:6px;padding:11px 10px}.primary{color:#fff;border:1px solid var(--accent);background:var(--accent)}.secondary{border:1px solid #bfc3cd;background:#fff;color:#20232a}button:disabled{opacity:.42;cursor:not-allowed}.reset{grid-column:1/-1;border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}.empty{font-size:13px;background:#f4f2ff;padding:16px;border-radius:6px;color:#534b77;line-height:1.6}.notice{background:#fff6e9;border:1px solid #edd9b9;padding:15px;border-radius:6px;font-size:13px;color:#755426}.closing-note{color:var(--muted);font-size:12px;max-width:800px;margin:30px auto 0;text-align:center;line-height:1.7}
@media(max-width:760px){.calculator{padding:28px 18px}.toolbar{align-items:flex-start;flex-direction:column;gap:20px}.selectors{width:100%}.selectors label{flex:1}.selectors select{width:100%}.layout{grid-template-columns:1fr;gap:0}.panel{padding:22px}.results{padding:22px}.intro{font-size:14px}h1{font-size:28px}.closing-note{text-align:left}.metric-value{font-size:28px}.impact-total{padding:20px}.impact-total .metric-value{font-size:42px}.input-wrap>span{font-size:11px}.report-actions{grid-template-columns:1fr}.reset{grid-column:auto}}
@media print{@page{margin:12mm} :root{background:#fff;color:#000;font-size:10px}.calculator{max-width:none;padding:0}.toolbar{margin-bottom:10px}h1{font-size:22px}h2{font-size:16px}.intro,.section-intro,.help,.field label,.fuel-savings .help{font-size:10px}.layout{display:block}.inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.panel{padding:12px;margin:0;break-inside:avoid}.section-title{margin-bottom:12px}.section-title>span{width:22px;height:22px}.field{margin-bottom:12px}.input-wrap input{padding:5px;font-size:12px}.input-wrap>span{font-size:9px}.selectors{gap:10px}.selectors label{font-size:10px}select{min-height:0;padding:4px}.results{margin-top:14px;padding:15px;break-before:page;break-inside:auto}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric{padding:12px}.metric h3{font-size:10px}.metric-value{font-size:23px}.metric-value span,.metric-detail{font-size:9px}.report-actions,.inline-link{display:none}.assumptions{font-size:10px}.assumptions::details-content{content-visibility:visible}.assumptions summary{font-size:12px;margin-bottom:8px!important}.closing-note{font-size:10px;margin-top:15px}.fuel-savings h3{font-size:16px}.fuel-value{font-size:24px}.impact-total{padding:16px;break-inside:avoid}.impact-total .metric-value{font-size:32px}.impact-total h3{font-size:13px}.impact-breakdown{font-size:11px}.fuel-savings{margin-top:14px;padding-top:12px}.metric,.metric.accent{background:#f5f5f5!important}.metric.accent .metric-value{color:#000}.notice{color:#000;background:#fff}.empty{color:#000;background:#fff}.accounting-note{color:#000!important}}
.heat-option{display:flex;align-items:center;gap:10px;font-size:14px;cursor:pointer}.heat-option input{width:18px;height:18px;accent-color:var(--accent)}
.field select{width:100%;max-width:100%;font-size:14px;white-space:normal}
.calculate-action{margin:4px 0 22px}.calculate-button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:52px;border-radius:8px;padding:13px 20px;font-size:16px}.calculate-button:hover{background:#3b24cd}.results-heading h2{scroll-margin-top:24px}.results-heading h2:focus{outline:2px solid var(--accent);outline-offset:4px}@media print{.calculate-action{display:none}.results-heading h2:focus{outline:none}}
.field-label{display:flex;align-items:center;gap:2px;margin-bottom:8px;min-height:24px}.field-label label{margin-bottom:0}.info-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;margin:-10px 0;border:0;border-radius:6px;background:transparent;color:#4930bf}.info-button>span{display:grid;place-items:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;font:600 12px/1 Georgia,serif}.info-button:hover,.info-button[aria-expanded="true"]{background:#eeebff}.field-info{margin:0 0 12px;padding:14px 16px;border:1px solid #ded9fa;border-radius:8px;background:#f7f5ff;color:#45414f;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.field-info p{margin:0 0 10px}.field-info p:last-child{margin-bottom:0}.field-info .info-example{padding-top:10px;border-top:1px solid #ded9fa}@media print{.info-button,.field-info{display:none}.field-label{min-height:0}}

.impact-scenario{font-size:12px;line-height:1.5;color:#49425f;margin:-6px 0 16px}.impact-total .impact-scenario + .metric-value{margin-top:0}@media print{.impact-scenario{font-size:10px}}

.impact-qualification{margin-top:18px;padding-top:16px;border-top:1px solid #cec7ee;color:#383247;font-size:13px;line-height:1.6}.impact-qualification p{margin:0 0 10px}.impact-qualification p:last-child{margin-bottom:0}.estimate-scope{margin-top:22px;font-size:13px;line-height:1.6;color:#484b53}.estimate-scope h3{font-size:15px;color:#20232a;margin-bottom:10px}.estimate-scope p{margin-bottom:10px}.estimate-scope p:last-child{margin-bottom:0}.fuel-qualification{font-size:13px;line-height:1.6;color:#484b53;margin:12px 0 0}.estimate-record{font-size:11px;line-height:1.6;color:#656971;margin:18px 0 0;overflow-wrap:anywhere}
@media print{.impact-qualification,.estimate-scope,.fuel-qualification{font-size:10px;line-height:1.5;color:#000}.impact-qualification{margin-top:12px;padding-top:10px}.estimate-scope{margin-top:14px}.estimate-scope h3{font-size:12px}.estimate-scope p{break-inside:avoid}.fuel-savings,.estimate-record{break-inside:avoid}.estimate-record{font-size:9px;color:#000}.assumptions{grid-column:1/-1;break-inside:auto}.assumptions p{break-inside:avoid}}
