/* Independent panels keep long appliance lists from moving the live total. */
body.calculator-view{height:100dvh;overflow:hidden}
body>header{height:78px;max-width:1600px;padding:0 28px}
main{max-width:1600px;padding:0 28px}
#calculator{height:calc(100dvh - 78px);display:flex;flex-direction:column;padding-bottom:22px;min-height:0}
.intro{padding:22px 0 20px;flex:none}
.intro h1{font-size:29px;letter-spacing:-1px;margin:8px 0;line-height:1.25}
.intro h1 br{display:none}.intro p{font-size:12px;margin:7px 0 0}.intro .eyebrow{font-size:8px}
.workspace{flex:1;min-height:0;grid-template-columns:235px minmax(0,1fr) 335px;gap:14px;align-items:stretch}
.workspace>.panel{min-width:0;min-height:0;margin:0;padding:0;overflow:hidden;border-radius:13px}
.appliance-sidebar,.calculator-panel{display:flex;flex-direction:column}
.sidebar-heading{padding:20px 17px 12px;flex:none}.sidebar-heading h2{font-size:16px}.sidebar-heading p{font-size:11px;color:var(--muted);margin:5px 0 0}
.sidebar-scroll,.editor-scroll,.results-scroll{overflow-y:scroll;overflow-x:hidden;min-height:0;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#b1bda7 #f0f3ec;scrollbar-gutter:stable}
.sidebar-scroll::-webkit-scrollbar,.editor-scroll::-webkit-scrollbar,.results-scroll::-webkit-scrollbar{width:6px}
.sidebar-scroll::-webkit-scrollbar-track,.editor-scroll::-webkit-scrollbar-track,.results-scroll::-webkit-scrollbar-track{background:#f0f3ec}
.sidebar-scroll::-webkit-scrollbar-thumb,.editor-scroll::-webkit-scrollbar-thumb,.results-scroll::-webkit-scrollbar-thumb{background:#b1bda7;border-radius:8px}
.sidebar-scroll{flex:1;padding:4px 8px}.sidebar-scroll>p{font-size:12px;padding:8px;line-height:1.6}
.appliance-choice{display:flex;align-items:center;gap:8px;width:100%;min-height:65px;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);padding:10px 8px;margin:0 0 5px}
.appliance-choice:hover{background:#f4f7ef}.appliance-choice.selected{background:#edf3e5;border-color:#b9cca7;box-shadow:inset 3px 0 #638d54}
.choice-icon{color:#7a9468;font-size:19px;flex:none}.choice-text{flex:1;min-width:0;font-size:12px;font-weight:600;overflow-wrap:anywhere}.choice-text small{display:block;font-size:9px;color:var(--muted);font-weight:400;margin-top:4px}
.appliance-choice>strong{font-size:13px;text-align:right;flex:none;max-width:48%;overflow-wrap:anywhere}.appliance-choice>strong small{display:block;font-size:9px;font-weight:400;color:var(--muted);margin-top:3px}
.catalog{flex:none;border-top:1px solid var(--line);padding:14px 12px;background:#fafbf7;max-height:48%;overflow-y:auto;scrollbar-width:thin}.catalog h3{font-size:10px;margin:0 0 10px;color:#6c7e60;font-weight:600}.catalog .presets{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:0 0 9px}.catalog .preset{font-size:10px;min-height:44px;line-height:1.35;padding:6px 5px;text-align:left}.catalog .preset span{font-size:13px;margin-right:3px}.catalog .add-custom{font-size:10px;min-height:44px;padding:8px}
.input-column{display:flex;gap:0}.editor-scroll{position:relative;flex:1;padding:23px}
.period{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:24px}.period .section-heading{margin-bottom:17px}
.section-heading{gap:10px;margin-bottom:18px}.section-heading h2{font-size:16px}.section-heading p{font-size:11px}.step{width:26px;height:26px}.pill{font-size:9px;padding:5px 8px}
.appliance{margin:0;background:#fafbf7;padding:18px}.appliance-top input{font-size:16px;padding:9px 4px}.appliance-top .remove{width:44px;height:44px}.appliance-fields{grid-template-columns:1fr 1fr;gap:18px}.appliance-fields label{font-size:12px}.appliance-fields input{font-size:16px;padding:12px}.appliance-bottom{align-items:flex-start;flex-direction:column;gap:20px;margin-top:22px}.appliance-bottom>strong{font-size:21px}.appliance details{width:100%}.appliance details summary{font-size:12px;min-height:30px}.appliance details p{font-size:12px}.appliance details input{max-width:none}.help-note{margin-top:18px}.help-note p{font-size:12px}
.calculator-panel{position:static;top:auto}.summary{border-radius:0;padding:20px 23px 17px;flex:none}.summary-heading{display:flex;justify-content:space-between;align-items:center}.summary .eyebrow{font-size:9px}.total{margin-top:10px;white-space:normal;overflow-wrap:anywhere}.total>span:first-child{font-size:42px}.summary>p{margin:3px 0 13px;font-size:11px}.summary-stats{margin:0}.summary-stats span{font-size:16px}.summary-stats small{margin-top:3px}.summary-stats>div+div{padding-left:20px}
.results-scroll{flex:1;padding:22px}.results-scroll .two{gap:10px}.results-scroll label{font-size:11px}.results-scroll input,.results-scroll textarea{font-size:16px;padding:11px}.results-scroll .section-heading h2{font-size:15px}.results-scroll .section-heading p{font-size:11px}.results-scroll details{margin-top:16px;padding-top:14px}.results-scroll summary{line-height:1.6}.results-scroll .notes-label{margin-top:16px}
.compare-row{color:var(--muted);margin-top:22px}.compare-row strong{color:var(--ink)}.difference{background:#f0f5e8;border-color:#dce6d1;margin:14px 0 18px;padding:15px}.difference>span{color:#5b7550}.difference>strong{color:var(--green);font-size:29px}.difference p{color:#65775c}.results-scroll .primary{width:100%;display:flex;justify-content:space-between;min-height:44px}#save-status{color:#486c35;font-size:11px}.report-button{color:var(--green);min-height:44px}.results-scroll .local-note{font-size:10px;color:var(--muted);text-align:center;line-height:1.6}.estimate-note{padding:20px 0}.breakdown{padding:18px 0 0;border-top:1px solid var(--line)}.breakdown h3{font-size:12px}.bar-label{overflow-wrap:anywhere}.bar-label strong{flex:none}
.mobile-live,.close-results{display:none}.calculator-view>footer{display:none}.view:not(#calculator){padding-bottom:30px}
@media(min-width:1050px) and (max-width:1200px){.workspace{grid-template-columns:205px minmax(0,1fr) 300px;gap:10px}.editor-scroll{padding:18px}.results-scroll{padding:18px}.section-heading h2{font-size:14px}.intro h1{font-size:27px}}
@media(max-width:1049px){body>header{padding:0 20px}.privacy{display:none}main{padding:0 18px}#calculator{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.workspace{grid-template-columns:210px minmax(0,1fr);gap:12px}.workspace>.calculator-panel{display:none}.mobile-live{display:flex;align-items:center;justify-content:space-between;gap:12px;position:fixed;bottom:0;left:0;right:0;padding:14px 24px calc(14px + env(safe-area-inset-bottom));background:var(--green);color:#fff;z-index:20;box-shadow:0 -4px 20px #173e2220}.mobile-live small{display:block;font-size:10px;color:#c7d7c1;margin-bottom:4px}.mobile-live strong{font-size:22px;font-weight:500}.mobile-live .primary{min-height:44px}.show-results .workspace{grid-template-columns:1fr}.show-results .workspace>.input-column,.show-results .workspace>.appliance-sidebar{display:none}.show-results .workspace>.calculator-panel{display:flex;max-width:620px;width:100%;justify-self:center}.close-results{display:grid;place-items:center;width:44px;height:36px;border:1px solid #658975;color:#fff;border-radius:8px;background:transparent;font-size:24px}.summary-heading{min-height:30px}.show-results .total>span:first-child{font-size:36px}.show-results .summary{padding:14px 22px}.show-results .summary-stats{display:none}}
@media(max-width:600px){body>header{height:106px;min-height:0;padding:12px 14px 8px;gap:10px;flex-direction:column;align-items:flex-start}.brand{font-size:18px;gap:8px}.brandmark{height:32px;width:32px;border-radius:9px}.brand small{font-size:7px;letter-spacing:1.5px;margin-top:3px}nav{width:100%;gap:5px}.nav{padding:8px 12px;font-size:11px;min-height:34px}.intro{padding:15px 0 14px}.intro h1{font-size:21px;letter-spacing:-.6px;line-height:1.3;margin:6px 0}.intro .eyebrow{display:none}.intro p{font-size:11px;margin:4px 0 0;line-height:1.5}main{padding:0 10px}#calculator{height:calc(100dvh - 106px);padding-bottom:calc(91px + env(safe-area-inset-bottom))}.workspace{grid-template-columns:115px minmax(0,1fr);gap:8px}.workspace>.panel{border-radius:10px}.sidebar-heading{padding:13px 9px 8px}.sidebar-heading h2{font-size:12px}.sidebar-heading p{font-size:10px;line-height:1.5}.sidebar-scroll{padding:2px 4px}.sidebar-scroll>p{font-size:10px;padding:4px}.appliance-choice{gap:4px;flex-wrap:wrap;padding:8px 6px;min-height:70px}.choice-icon{display:none}.choice-text{font-size:11px;flex-basis:100%}.choice-text small{font-size:8px;margin-top:2px}.appliance-choice>strong{font-size:12px;text-align:left;max-width:100%}.appliance-choice>strong small{display:inline;margin-left:4px;font-size:9px}.catalog{padding:9px 6px;max-height:40%}.catalog h3{font-size:9px;margin-bottom:7px}.catalog .presets{grid-template-columns:1fr;gap:5px}.catalog .preset{font-size:10px;min-height:44px;padding:7px}.catalog .preset span{display:none}.catalog .add-custom{font-size:10px;line-height:1.5}.editor-scroll{padding:14px 11px}.section-heading{gap:6px;flex-wrap:wrap;margin-bottom:14px}.section-heading h2{font-size:13px}.section-heading p{font-size:10px}.step{display:none}.period .pill{margin:4px 0 0}.period .two{grid-template-columns:1fr;gap:12px}.period{padding-bottom:18px;margin-bottom:19px}.period label{font-size:11px}.period input{font-size:14px;padding:10px 5px}.appliance{padding:11px}.appliance-top{gap:3px;flex-wrap:wrap;margin-bottom:14px}.appliance-top>span{display:none}.appliance-top input{width:calc(100% - 40px);min-width:0;font-size:13px}.appliance-top .remove{width:36px;height:40px}.appliance-fields{grid-template-columns:1fr;gap:13px}.appliance-fields label{font-size:11px}.appliance-fields input{font-size:16px;padding:10px}.appliance-bottom{margin-top:17px;gap:12px}.appliance details summary{font-size:11px;line-height:1.5}.appliance details p,.help-note p{font-size:10px}.appliance-bottom>strong{font-size:18px}.help-note{gap:6px}.empty{padding:16px 9px}.empty h3{font-size:12px}.empty p{font-size:11px}.mobile-live{padding:11px 12px calc(11px + env(safe-area-inset-bottom));gap:9px}.mobile-live small{font-size:8px}.mobile-live strong{font-size:19px}.mobile-live .primary{font-size:10px;padding:10px;max-width:135px}.results-scroll{padding:18px}.results-scroll .step{display:grid}.results-scroll .section-heading{flex-wrap:nowrap}.results-scroll input{font-size:16px}.show-results .summary{padding:12px 18px}.show-results .total{margin-top:4px}.show-results .summary>p{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
