/* Heeler RV premium calculator storefront.
   Presentation-only overrides. Protected calculator math, payloads and result IDs stay unchanged. */

html,
body.calculator-storefront{
  max-width:100%;
  overflow-x:hidden!important;
}

body.calculator-storefront{
  --calc-bg:#050505;
  --calc-panel:#0b0d0f;
  --calc-panel-2:#101316;
  --calc-panel-3:#15191c;
  --calc-line:#272d31;
  --calc-line-strong:#394247;
  --calc-text:#f5f7f8;
  --calc-muted:#9aa4a9;
  --calc-muted-2:#737d82;
  --calc-teal:#66dfd1;
  --calc-teal-strong:#27c7b3;
  --calc-teal-soft:rgba(102,223,209,.10);
  --calc-teal-soft-2:rgba(102,223,209,.16);
  --calc-warn:#e9c477;
  --calc-danger:#ffb184;
  --calc-focus:#66dfd1;
  --calc-paper:var(--calc-panel);
  --calc-ink:var(--calc-text);
  --calc-green:var(--calc-teal-strong);
  --calc-tint:var(--calc-teal-soft);
  background:var(--calc-bg)!important;
  color:var(--calc-text)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  line-height:1.45;
}

/* Shared premium header. Calculator must not invent a second visual system. */
body.calculator-storefront>.storefront-header{
  position:sticky!important;
  top:0!important;
  z-index:1000!important;
  display:block!important;
  border-bottom:1px solid #202427!important;
  background:rgba(5,5,5,.98)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px);
}
body.calculator-storefront .storefront-utility-row{display:none!important}
body.calculator-storefront .storefront-nav-row{
  display:flex!important;
  width:min(1440px,calc(100% - 48px))!important;
  min-height:60px!important;
  margin:0 auto!important;
  padding:0!important;
  align-items:center!important;
  gap:8px!important;
  border:0!important;
  background:transparent!important;
}
body.calculator-storefront .storefront-brand{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  margin:0 12px 0 0!important;
}
body.calculator-storefront .storefront-brand img{
  width:154px!important;
  height:40px!important;
  object-fit:contain!important;
}
body.calculator-storefront .catalog-navigation{
  display:flex!important;
  min-width:0!important;
  flex:1 1 auto!important;
  align-items:stretch!important;
  gap:2px!important;
  overflow:visible!important;
}
body.calculator-storefront .catalog-navigation>.catalog-menu,
body.calculator-storefront .catalog-navigation>a{
  flex:0 0 auto!important;
  min-width:0!important;
  margin:0!important;
}
body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu>summary.catalog-primary-control,
body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control{
  display:flex!important;
  min-width:0!important;
  min-height:60px!important;
  height:60px!important;
  padding:0 16px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#dfe4e6!important;
  font-size:14px!important;
  font-weight:760!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu>summary.catalog-primary-control:hover,
body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control:hover{
  background:#111416!important;
  color:#fff!important;
}
body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu[open]>summary.catalog-primary-control,
body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control[aria-current=page]{
  background:#0d1012!important;
  color:#fff!important;
  box-shadow:inset 0 -2px var(--calc-teal)!important;
}
body.calculator-storefront .storefront-market{
  display:flex!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
  align-items:center!important;
  gap:7px!important;
  color:#90999e!important;
}
body.calculator-storefront .storefront-market label{
  color:#8f989d!important;
  font-size:11px!important;
  font-weight:700!important;
}
body.calculator-storefront .storefront-market select{
  min-height:36px!important;
  padding:0 30px 0 11px!important;
  border:1px solid #333a3e!important;
  border-radius:7px!important;
  background:#0e1113!important;
  color:#f2f5f6!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:700!important;
}
body.calculator-storefront .catalog-panel{
  border:1px solid #2a3034!important;
  border-radius:10px!important;
  background:#0b0d0f!important;
  box-shadow:0 24px 70px rgba(0,0,0,.48)!important;
  color:#eef2f3!important;
}
body.calculator-storefront .catalog-panel :is(a,strong,b,summary){color:#eef2f3!important}
body.calculator-storefront .catalog-panel :is(p,small,span){color:#99a3a8!important}
body.calculator-storefront .catalog-panel a:hover{background:#14181b!important}

/* Entrance: compact, product-like and aligned with the storefront. */
html body.calculator-storefront .calc-workspace-heading{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,500px)!important;
  width:min(1440px,calc(100% - 48px))!important;
  margin:0 auto!important;
  padding:30px 0 20px!important;
  gap:36px!important;
  align-items:end!important;
  color:var(--calc-text)!important;
}
body.calculator-storefront .calc-heading-copy{min-width:0!important}
html body.calculator-storefront .calc-eyebrow{
  margin:0 0 8px!important;
  color:var(--calc-teal)!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:1.5px!important;
  text-transform:uppercase!important;
}
html body.calculator-storefront .calc-workspace-heading h1{
  max-width:760px!important;
  margin:0!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:clamp(38px,4.2vw,58px)!important;
  font-weight:820!important;
  line-height:.98!important;
  letter-spacing:-2.2px!important;
}
html body.calculator-storefront .calc-heading-copy>p:last-child{
  max-width:720px!important;
  margin:12px 0 0!important;
  color:#b2bcc0!important;
  font-size:15px!important;
  line-height:1.45!important;
}
body.calculator-storefront .calc-workspace-tools{
  display:flex!important;
  min-height:40px!important;
  margin-top:16px!important;
  align-items:center!important;
  gap:8px!important;
}
body.calculator-storefront .saved-plans-button{
  min-height:40px!important;
  padding:0 13px!important;
  border:1px solid #354046!important;
  border-radius:7px!important;
  background:#0c0f11!important;
  color:#dfe6e8!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:760!important;
  letter-spacing:0!important;
}
body.calculator-storefront .saved-plans-button:hover{
  border-color:#5d6b70!important;
  background:#12171a!important;
  color:#fff!important;
}

/* Basic / Advanced is a compact dark segmented control, not a white form card. */
html body.calculator-storefront .heeler-calc-modes{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:5px!important;
  padding:5px!important;
  margin:0!important;
  border:1px solid #282f33!important;
  border-radius:10px!important;
  background:#090b0d!important;
  box-shadow:none!important;
}
html body.calculator-storefront .heeler-calc-mode{
  position:relative!important;
  display:grid!important;
  min-height:82px!important;
  padding:12px 14px!important;
  gap:2px!important;
  align-content:center!important;
  border:1px solid transparent!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#8f999e!important;
  text-decoration:none!important;
}
html body.calculator-storefront .heeler-calc-mode:hover{
  border-color:#343d41!important;
  background:#101416!important;
}
html body.calculator-storefront .heeler-calc-mode .calc-mode-tag{
  color:#778287!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.8px!important;
}
html body.calculator-storefront .heeler-calc-mode strong{
  color:#e8edef!important;
  font-size:14px!important;
  font-weight:780!important;
}
html body.calculator-storefront .heeler-calc-mode>span:last-child{
  color:#8e989d!important;
  font-size:11px!important;
  line-height:1.35!important;
}
html body.calculator-storefront .heeler-calc-mode.active{
  border-color:rgba(102,223,209,.55)!important;
  background:var(--calc-teal-soft)!important;
  box-shadow:inset 0 0 0 1px rgba(102,223,209,.04)!important;
}
html body.calculator-storefront .heeler-calc-mode.active .calc-mode-tag,
html body.calculator-storefront .heeler-calc-mode.active strong{
  color:var(--calc-teal)!important;
}
html body.calculator-storefront .heeler-calc-mode.active>span:last-child{color:#b6c4c7!important}
html body.calculator-storefront .heeler-calc-mode.active:after{
  right:10px!important;
  top:9px!important;
  color:var(--calc-teal)!important;
  font-size:15px!important;
}

/* Main workspace: 66/34 with one document scrollbar. */
html body.calculator-storefront .pc-workspace{
  display:grid!important;
  grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr)!important;
  width:min(1440px,calc(100% - 48px))!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:0 0 60px!important;
  gap:20px!important;
  align-items:start!important;
  overflow:visible!important;
  --calc-header-offset:76px!important;
}
html body.calculator-storefront .pc-workspace-main,
html body.calculator-storefront .pc-workspace-rail{min-width:0!important}
html body.calculator-storefront .pc-workspace #calculator{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
html body.calculator-storefront .pc-workspace #calculator>.panel{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Progress navigation: compact, dark, legible. */
html body.calculator-storefront .pc-workspace .rs-tool-head{
  position:sticky!important;
  top:var(--calc-header-offset)!important;
  z-index:15!important;
  margin:0 0 14px!important;
  padding:0 0 8px!important;
  border:0!important;
  background:linear-gradient(180deg,#050505 78%,rgba(5,5,5,0))!important;
}
html body.calculator-storefront .rs-pill-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  padding:5px!important;
  border:1px solid #272d31!important;
  border-radius:10px!important;
  background:#090b0d!important;
  box-shadow:none!important;
}
html body.calculator-storefront .rs-pill{
  display:flex!important;
  min-width:0!important;
  min-height:52px!important;
  padding:8px 10px!important;
  gap:8px!important;
  align-items:center!important;
  border:1px solid transparent!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#879196!important;
  box-shadow:none!important;
  opacity:1!important;
}
html body.calculator-storefront .rs-pill:hover{
  border-color:#343c40!important;
  background:#101416!important;
}
html body.calculator-storefront .rs-pill strong{
  display:grid!important;
  width:25px!important;
  height:25px!important;
  flex:0 0 25px!important;
  place-items:center!important;
  border:1px solid #3b4448!important;
  border-radius:50%!important;
  background:#0c0f11!important;
  color:#9ca6aa!important;
  font-size:11px!important;
  font-weight:800!important;
}
html body.calculator-storefront .rs-pill b{
  display:block!important;
  color:inherit!important;
  font-size:12px!important;
  font-weight:760!important;
  line-height:1.2!important;
}
html body.calculator-storefront .rs-pill small{
  display:block!important;
  margin-top:2px!important;
  color:#717c80!important;
  font-size:10px!important;
  line-height:1.25!important;
}
html body.calculator-storefront .rs-pill.current{
  border-color:rgba(102,223,209,.55)!important;
  background:var(--calc-teal-soft)!important;
  color:var(--calc-teal)!important;
}
html body.calculator-storefront .rs-pill.current strong{
  border-color:var(--calc-teal-strong)!important;
  background:var(--calc-teal-strong)!important;
  color:#041414!important;
}
html body.calculator-storefront .rs-pill.done:not(.current) strong{
  border-color:#4d7772!important;
  background:#10201f!important;
  color:var(--calc-teal)!important;
}
html body.calculator-storefront .pc-step-nextline{
  margin:7px 3px 0!important;
  padding:0!important;
  color:#727d82!important;
  background:transparent!important;
  border:0!important;
  font-size:10px!important;
  line-height:1.35!important;
}

/* Every working step is a dark elevated surface. */
html body.calculator-storefront #calculator .pc-guided-step,
html body.calculator-storefront #calculator #calculator-step-2,
html body.calculator-storefront #calculator .pc-mode{
  position:relative!important;
  margin:0 0 14px!important;
  padding:20px!important;
  border:1px solid var(--calc-line)!important;
  border-radius:10px!important;
  background:var(--calc-panel)!important;
  color:var(--calc-text)!important;
  box-shadow:none!important;
}
html body.calculator-storefront #calculator .pc-guided-step.is-current{
  border-color:#41545a!important;
  box-shadow:inset 3px 0 0 var(--calc-teal-strong)!important;
}
html body.calculator-storefront #calculator .pc-step-kicker{
  display:flex!important;
  margin:0 0 12px!important;
  padding:0!important;
  gap:8px!important;
  align-items:center!important;
  border:0!important;
  background:transparent!important;
}
html body.calculator-storefront #calculator .pc-step-number{
  display:grid!important;
  width:25px!important;
  height:25px!important;
  flex:0 0 25px!important;
  place-items:center!important;
  border:1px solid #355f5b!important;
  border-radius:7px!important;
  background:#0f1d1c!important;
  color:var(--calc-teal)!important;
  font-size:11px!important;
  font-weight:800!important;
}
html body.calculator-storefront #calculator .pc-step-name{
  color:var(--calc-teal)!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.2px!important;
}
html body.calculator-storefront #calculator .pc-guided-step :is(h2,h3),
html body.calculator-storefront #calculator .pc-mode h3{
  margin:0 0 7px!important;
  color:#f7f8f8!important;
  font-family:inherit!important;
  font-size:clamp(20px,2vw,26px)!important;
  font-weight:780!important;
  line-height:1.15!important;
  letter-spacing:-.5px!important;
}
html body.calculator-storefront #calculator .pc-guided-step>p,
html body.calculator-storefront #calculator .pc-mode-copy{
  max-width:720px!important;
  margin:0!important;
  color:#99a4a9!important;
  font-size:13px!important;
  line-height:1.5!important;
}

/* Selection cards and chips. */
html body.calculator-storefront #calculator :is(
  .pc-mode-choice,
  .pc-battery-type button,
  .pc-battery-quick button,
  .pc-autonomy-choice,
  .recharge-chip,
  .drive-rate,
  .pc-solar-quick button,
  .pc-inverter-choice,
  .pc-load-option
){
  min-width:0!important;
  min-height:48px!important;
  padding:12px 13px!important;
  border:1px solid #30373b!important;
  border-radius:8px!important;
  background:#0f1214!important;
  color:#d8dfe1!important;
  box-shadow:none!important;
  opacity:1!important;
  transform:none!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:620!important;
  line-height:1.35!important;
}
html body.calculator-storefront #calculator :is(.pc-mode-choice,.pc-inverter-choice){
  min-height:78px!important;
  padding:13px 15px!important;
}
html body.calculator-storefront #calculator :is(
  .pc-mode-choice,
  .pc-battery-type button,
  .pc-inverter-choice,
  .recharge-chip
) :is(b,span){
  color:#edf1f2!important;
  font-size:13px!important;
  font-weight:760!important;
}
html body.calculator-storefront #calculator :is(
  .pc-mode-choice,
  .pc-battery-type button,
  .pc-inverter-choice,
  .recharge-chip
) small{
  margin-top:4px!important;
  color:#7f8a8f!important;
  font-size:11px!important;
  font-weight:450!important;
  line-height:1.35!important;
}
html body.calculator-storefront #calculator :is(
  .pc-mode-choice,
  .pc-battery-type button,
  .pc-battery-quick button,
  .pc-autonomy-choice,
  .recharge-chip,
  .drive-rate,
  .pc-solar-quick button,
  .pc-inverter-choice,
  .pc-load-option
):hover{
  border-color:#4b585d!important;
  background:#151a1d!important;
}
html body.calculator-storefront #calculator :is(
  .pc-mode-choice,
  .pc-battery-type button,
  .pc-battery-quick button,
  .pc-autonomy-choice,
  .recharge-chip,
  .drive-rate,
  .pc-solar-quick button,
  .pc-inverter-choice,
  .pc-load-option
).on{
  border-color:rgba(102,223,209,.70)!important;
  background:var(--calc-teal-soft)!important;
  color:var(--calc-teal)!important;
  box-shadow:inset 3px 0 0 var(--calc-teal-strong)!important;
}
html body.calculator-storefront #calculator :is(.pc-mode-choice,.pc-battery-type button,.pc-inverter-choice,.recharge-chip).on :is(b,span){
  color:var(--calc-teal)!important;
}
html body.calculator-storefront #calculator :is(.pc-mode-choice,.pc-battery-type button,.pc-inverter-choice,.recharge-chip).on small{
  color:#a9bbb9!important;
}

/* Nested planning controls. */
html body.calculator-storefront #calculator :is(
  .pc-chemistry,
  .pc-existing,
  .pc-battery-custom-wrap,
  .pc-solar-plan,
  .drive-planner,
  .pc-inverter-use,
  .calc-advanced
){
  margin-top:14px!important;
  padding:14px!important;
  border:1px solid #282f33!important;
  border-radius:8px!important;
  background:#090c0e!important;
  color:var(--calc-text)!important;
  box-shadow:none!important;
}
html body.calculator-storefront #calculator :is(.pc-chemistry,.pc-existing-block)>label,
html body.calculator-storefront #calculator :is(.pc-battery-custom-label,.drive-rate-label,.pc-inverter-use .kicker){
  color:#8f999e!important;
  font-size:11px!important;
  font-weight:740!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
html body.calculator-storefront #calculator :is(
  .pc-chemistry-note,
  .pc-autonomy-note,
  .pc-solar-live,
  .drive-solar-change,
  .pc-inverter-current
){
  margin-top:10px!important;
  padding:10px 11px!important;
  border:1px solid #263b3a!important;
  border-radius:7px!important;
  background:#0d1718!important;
  color:#a8b8b9!important;
  font-size:11px!important;
  line-height:1.45!important;
}
html body.calculator-storefront #calculator :is(.pc-chemistry-note,.pc-autonomy-note,.pc-solar-live,.drive-solar-change,.pc-inverter-current) b{
  color:var(--calc-teal)!important;
}

/* Inputs stay dark and readable. */
html body.calculator-storefront #calculator :is(input:not([type=checkbox]):not([type=range]),select,textarea){
  min-width:0!important;
  max-width:100%!important;
  border:1px solid #3a4448!important;
  border-radius:7px!important;
  background:#0d1012!important;
  color:#f3f6f7!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:15px!important;
  accent-color:var(--calc-teal-strong)!important;
}
html body.calculator-storefront #calculator :is(input,textarea)::placeholder{
  color:#677277!important;
  opacity:1!important;
}
html body.calculator-storefront #calculator :is(input,select,textarea):focus{
  border-color:var(--calc-teal-strong)!important;
  outline:none!important;
  box-shadow:0 0 0 3px rgba(102,223,209,.12)!important;
}

/* Power-use tray and chooser. */
html body.calculator-storefront #calculator #calculator-step-2{
  margin-bottom:0!important;
  border-radius:10px 10px 0 0!important;
  border-bottom:0!important;
}
html body.calculator-storefront #calculator .pc-load-tray{
  margin:0 0 14px!important;
  overflow:hidden!important;
  border:1px solid var(--calc-line)!important;
  border-radius:0 0 10px 10px!important;
  background:#0b0d0f!important;
}
html body.calculator-storefront #calculator .pc-load-tray-head{
  padding:12px 140px 12px 18px!important;
  border-color:#252c30!important;
  background:#0e1113!important;
}
html body.calculator-storefront #calculator .pc-load-tray-head strong,
html body.calculator-storefront #calculator .pc-load-tray-summary{
  color:#98a3a8!important;
  font-size:11px!important;
}
html body.calculator-storefront #calculator .pc-selected-empty{
  padding:20px 18px!important;
  color:#7f898e!important;
  font-size:13px!important;
}
html body.calculator-storefront #calculator .pc-selected-row{
  padding:14px!important;
  gap:9px!important;
  border-color:#252c30!important;
  background:#0b0e10!important;
}
html body.calculator-storefront #calculator .pc-selected-name b{color:#edf1f2!important}
html body.calculator-storefront #calculator .pc-selected-name small,
html body.calculator-storefront #calculator .pc-selected-field>span{color:#7f8a8f!important}
html body.calculator-storefront #calculator .pc-inline-stepper{
  height:42px!important;
  border:1px solid #354046!important;
  background:#0d1012!important;
}
html body.calculator-storefront #calculator .pc-inline-stepper button{
  background:#14191c!important;
  color:var(--calc-teal)!important;
}
html body.calculator-storefront #calculator .pc-inline-stepper input{
  background:#0d1012!important;
  color:#fff!important;
}
html body.calculator-storefront #calculator .pc-selected-wh{
  border:1px solid #25413f!important;
  background:#0e1a1a!important;
  color:var(--calc-teal)!important;
}
html body.calculator-storefront #calculator :is(.pc-selected-remove,.pc-tray-collapse,.pc-load-sheet-close){
  border-color:#333b3f!important;
  background:#101416!important;
  color:#9ba5aa!important;
}
html body.calculator-storefront #calculator .pc-add-power{
  min-height:48px!important;
  border:1px solid #30524f!important;
  background:#0e1a1a!important;
  color:var(--calc-teal)!important;
  font-size:13px!important;
}
html body.calculator-storefront #calculator .pc-add-plus{
  border-color:#456d68!important;
  background:#111a1a!important;
  color:var(--calc-teal)!important;
}
html body.calculator-storefront #calculator .pc-load-sheet{
  background:rgba(0,0,0,.78)!important;
  backdrop-filter:blur(7px)!important;
}
html body.calculator-storefront #calculator .pc-load-sheet-panel{
  border:1px solid #30373b!important;
  background:#090b0d!important;
  box-shadow:0 28px 90px rgba(0,0,0,.58)!important;
}
html body.calculator-storefront #calculator :is(.pc-load-sheet-head,.pc-load-sheet-foot){
  border-color:#252c30!important;
  background:#0d1012!important;
}
html body.calculator-storefront #calculator .pc-load-sheet-head b{color:#f2f5f6!important}
html body.calculator-storefront #calculator .pc-load-sheet-head small{color:#8f999e!important}
html body.calculator-storefront #calculator .pc-load-search{
  border-color:#354046!important;
  background:#0c0f11!important;
  color:#fff!important;
}
html body.calculator-storefront #calculator .pc-load-option{
  min-height:68px!important;
  border-color:#30373b!important;
  background:#0f1214!important;
  color:#e4e9eb!important;
}
html body.calculator-storefront #calculator .pc-load-option b{color:#eef2f3!important}
html body.calculator-storefront #calculator .pc-load-option small{color:#7e898e!important}
html body.calculator-storefront #calculator .pc-load-option-state{
  border-color:#425055!important;
  background:#0a0d0f!important;
  color:#8f9a9e!important;
}
html body.calculator-storefront #calculator .pc-load-option.on .pc-load-option-state{
  border-color:var(--calc-teal-strong)!important;
  background:var(--calc-teal-strong)!important;
  color:#041414!important;
}
html body.calculator-storefront #calculator .pc-load-done{
  min-height:42px!important;
  border-color:var(--calc-teal-strong)!important;
  background:var(--calc-teal-strong)!important;
  color:#031413!important;
}

/* Continue actions are strong but not oversized. */
html body.calculator-storefront #calculator .calc-step-actions{
  display:flex!important;
  justify-content:flex-end!important;
  margin:14px 0 0!important;
}
html body.calculator-storefront #calculator .calc-next{
  min-height:42px!important;
  padding:0 15px!important;
  border:1px solid var(--calc-teal-strong)!important;
  border-radius:7px!important;
  background:var(--calc-teal-strong)!important;
  color:#031413!important;
  font-family:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
}
html body.calculator-storefront #calculator .calc-next:hover{filter:brightness(1.06)!important}

/* Live power plan: dark, compact, progressive. */
html body.calculator-storefront .pc-workspace .results{
  position:static!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  border:1px solid #2b3236!important;
  border-radius:10px!important;
  background:#0a0c0e!important;
  color:var(--calc-text)!important;
  box-shadow:none!important;
  scroll-margin-top:var(--calc-header-offset)!important;
}
html body.calculator-storefront .pc-workspace .pc-rail-label{
  display:flex!important;
  padding:16px!important;
  gap:10px!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  border-bottom:1px solid #262d31!important;
  border-radius:10px 10px 0 0!important;
  background:#0d1012!important;
  color:#f0f3f4!important;
}
body.calculator-storefront .pc-rail-label strong{
  color:#f3f6f7!important;
  font-size:14px!important;
  font-weight:780!important;
}
body.calculator-storefront .pc-rail-label small{
  margin-top:3px!important;
  color:#7d888d!important;
  font-size:10px!important;
}
body.calculator-storefront .calc-live-dot{
  width:7px!important;
  height:7px!important;
  margin-right:7px!important;
  background:var(--calc-teal-strong)!important;
}
html body.calculator-storefront .pc-workspace .pc-rail-reset{
  min-height:32px!important;
  padding:0 9px!important;
  border:1px solid #343d41!important;
  border-radius:6px!important;
  background:#111518!important;
  color:#9aa5aa!important;
  font-size:10px!important;
}
html body.calculator-storefront .pc-workspace .result-main{
  padding:16px!important;
  border-bottom:1px solid #252c30!important;
  background:#0a0d0f!important;
}
html body.calculator-storefront .pc-workspace .pc-summary-headline{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
}
html body.calculator-storefront .pc-workspace .pc-summary-runtime{
  padding-left:12px!important;
  border-color:#2a3135!important;
}
html body.calculator-storefront .pc-workspace .result-main span{
  color:#7e898e!important;
  font-size:10px!important;
  font-weight:700!important;
}
html body.calculator-storefront .pc-workspace .result-main strong{
  color:#fff!important;
  font-size:clamp(22px,2vw,29px)!important;
  font-weight:800!important;
  letter-spacing:-.7px!important;
}
html body.calculator-storefront .pc-workspace .pc-summary-runtime small,
html body.calculator-storefront .pc-workspace .result-main>p{
  color:#9aa5aa!important;
  font-size:11px!important;
  line-height:1.45!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-summary{
  padding:0 16px!important;
  border:0!important;
  background:#0a0c0e!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-summary-head{
  padding:14px 0 4px!important;
  color:#e7edef!important;
  font-size:12px!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-summary-row{
  padding:10px 0!important;
  border-color:#252c30!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-status.good{
  border-color:#31605a!important;
  background:#102220!important;
  color:var(--calc-teal)!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-status.neutral{
  border-color:#3a4448!important;
  background:#111518!important;
  color:#899499!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-status.warn{
  border-color:#66583b!important;
  background:#1c180f!important;
  color:var(--calc-warn)!important;
}
html body.calculator-storefront .pc-workspace .pc-direction-copy b{color:#eef2f3!important}
html body.calculator-storefront .pc-workspace .pc-direction-copy :is(span,em){color:#899499!important}
html body.calculator-storefront .pc-workspace .result-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  margin:14px 16px!important;
  gap:12px!important;
}
html body.calculator-storefront .pc-workspace .metric{
  min-height:0!important;
  padding:0 0 10px!important;
  border:0!important;
  border-bottom:1px solid #252c30!important;
  background:transparent!important;
}
html body.calculator-storefront .pc-workspace .metric span{
  color:#788388!important;
  font-size:10px!important;
  font-weight:700!important;
}
html body.calculator-storefront .pc-workspace .metric b{
  display:block!important;
  margin-top:5px!important;
  color:#f3f6f7!important;
  font-size:18px!important;
  font-weight:800!important;
}
html body.calculator-storefront .pc-workspace .metric small{
  color:#7f898e!important;
  font-size:10px!important;
}
html body.calculator-storefront .pc-workspace .cta{
  padding:0 16px 16px!important;
  border:0!important;
  background:#0a0c0e!important;
}
html body.calculator-storefront .pc-workspace .cta h3{color:#eef2f3!important}
html body.calculator-storefront .pc-workspace .cta p{color:#889398!important}
html body.calculator-storefront .pc-workspace .cta>button{
  min-height:42px!important;
  border:1px solid var(--calc-teal-strong)!important;
  border-radius:7px!important;
  background:var(--calc-teal-strong)!important;
  color:#031413!important;
}
html body.calculator-storefront .pc-workspace .cta-actions button{
  min-height:40px!important;
  border:1px solid #343d41!important;
  border-radius:7px!important;
  background:#101416!important;
  color:#dbe2e4!important;
}
html body.calculator-storefront .pc-workspace .disclaimer{
  padding:0 16px 16px!important;
  color:#687378!important;
  font-size:10px!important;
}
html body.calculator-storefront .pc-workspace :is(.pc-stay-fit,.pc-stay-fit.good){
  border-color:#2d4b48!important;
  background:#0d1818!important;
}
html body.calculator-storefront .pc-workspace :is(.pc-stay-fit.short,.pc-stay-fit.close){
  border-color:#5b5037!important;
  background:#18150e!important;
}
html body.calculator-storefront .pc-workspace :is(.pc-stay-title,.pc-stay-copy,.pc-stay-scale,.pc-stay-kicker){
  color:#8e999e!important;
}
html body.calculator-storefront .pc-workspace .pc-stay-title{color:#eef2f3!important}
html body.calculator-storefront .pc-workspace .pc-stay-icon{
  border-color:#5b5037!important;
  background:#12100b!important;
  color:var(--calc-warn)!important;
}
html body.calculator-storefront .pc-workspace .pc-stay-fit.good .pc-stay-icon{
  border-color:#315d58!important;
  background:#0e1c1b!important;
  color:var(--calc-teal)!important;
}

/* Compact, useful empty state. */
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .result-grid,
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .cta,
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .disclaimer,
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .calc-summary-details{
  display:none!important;
}
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .result-main{
  padding:18px 16px 20px!important;
  border-bottom:0!important;
}
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .pc-summary-headline{
  grid-template-columns:1fr!important;
}
html body.calculator-storefront .pc-workspace-rail[data-has-loads=false] .pc-summary-runtime{
  display:none!important;
}

/* Saved plans modal follows the same language. */
body.calculator-storefront .saved-plans-dialog{
  border:1px solid #30373b!important;
  border-radius:12px!important;
  background:#0a0c0e!important;
  color:#f2f5f6!important;
  box-shadow:0 28px 90px rgba(0,0,0,.64)!important;
}
body.calculator-storefront .saved-plans-head,
body.calculator-storefront .saved-plans-save{border-color:#252c30!important}
body.calculator-storefront .saved-plans-head p,
body.calculator-storefront .saved-plans-note,
body.calculator-storefront .saved-plan small{color:#808b90!important}
body.calculator-storefront .saved-plans-close,
body.calculator-storefront .saved-plans-save input,
body.calculator-storefront .saved-plan{
  border-color:#343d41!important;
  background:#101416!important;
  color:#eef2f3!important;
}
body.calculator-storefront .saved-plans-save button,
body.calculator-storefront .saved-plan button{
  border-color:var(--calc-teal-strong)!important;
  background:var(--calc-teal-strong)!important;
  color:#031413!important;
}
body.calculator-storefront .saved-plan button.delete{
  border-color:#59403c!important;
  background:#1a1110!important;
  color:#efb4ab!important;
}

/* Below-tool technical content remains useful, but visually secondary. */
body.calculator-storefront .content{
  width:min(1200px,calc(100% - 48px))!important;
  margin:0 auto!important;
  color:#d9dfe1!important;
}
body.calculator-storefront .content section{
  margin:0!important;
  padding:38px 0!important;
  border-top:1px solid #202629!important;
  background:transparent!important;
}
body.calculator-storefront .content :is(h2,h3){color:#eef2f3!important}
body.calculator-storefront .content :is(p,li){color:#929da2!important}
body.calculator-storefront .content .formula{
  border:1px solid #4b4230!important;
  background:#17140d!important;
  color:#dbc58f!important;
}
body.calculator-storefront .content details{
  border:1px solid #2b3236!important;
  background:#0b0e10!important;
  color:#dfe5e7!important;
}
body.calculator-storefront .content details p{color:#929da2!important}

/* Footer remains part of the same dark storefront. */
body.calculator-storefront .storefront-footer{
  margin-top:0!important;
  border-top:1px solid #22282b!important;
  background:#030303!important;
  color:#9aa4a9!important;
}

/* Focus visibility and motion. */
html body.calculator-storefront :is(
  .storefront-header,
  .calc-workspace-heading,
  .pc-workspace,
  .saved-plans-dialog
) :is(button,a,input,select,summary,textarea):focus-visible{
  outline:3px solid var(--calc-focus)!important;
  outline-offset:3px!important;
  box-shadow:none!important;
}
@media(prefers-reduced-motion:reduce){
  html body.calculator-storefront *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* Tablet. */
@media(max-width:1100px){
  html body.calculator-storefront .calc-workspace-heading{
    grid-template-columns:minmax(0,1fr) minmax(320px,420px)!important;
    gap:22px!important;
  }
  html body.calculator-storefront .pc-workspace{
    grid-template-columns:minmax(0,1.72fr) minmax(300px,1fr)!important;
    gap:16px!important;
  }
  html body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu>summary.catalog-primary-control,
  html body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control{
    padding:0 11px!important;
    font-size:12px!important;
  }
}

/* Mobile workspace: summary follows configuration, no nested page overflow. */
@media(max-width:1000px){
  html body.calculator-storefront .calc-workspace-heading{
    grid-template-columns:1fr!important;
    width:calc(100% - 32px)!important;
    padding:24px 0 16px!important;
    gap:16px!important;
  }
  html body.calculator-storefront .heeler-calc-modes{max-width:620px!important}
  html body.calculator-storefront .pc-workspace{
    display:block!important;
    width:calc(100% - 32px)!important;
    padding-bottom:46px!important;
  }
  html body.calculator-storefront .pc-workspace-rail,
  html body.calculator-storefront .pc-workspace-rail.can-stick{
    position:static!important;
    top:auto!important;
    margin-top:14px!important;
  }
  body.calculator-storefront .calc-summary-toggle{
    display:flex!important;
    width:100%!important;
    min-height:56px!important;
    padding:10px 12px!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    border:1px solid #2b3236!important;
    border-radius:9px!important;
    background:#0d1012!important;
    color:#edf2f3!important;
  }
  body.calculator-storefront .calc-summary-toggle strong{
    display:block!important;
    color:#eef2f3!important;
    font-size:13px!important;
  }
  body.calculator-storefront .calc-summary-toggle small{
    display:block!important;
    margin-top:2px!important;
    color:#7f898e!important;
    font-size:10px!important;
  }
  body.calculator-storefront .calc-summary-toggle-action{
    color:var(--calc-teal)!important;
    font-size:10px!important;
    font-weight:800!important;
  }
  body.calculator-storefront .pc-workspace-rail:not(.is-expanded) .results{display:none!important}
  body.calculator-storefront .pc-workspace-rail.is-expanded .results{margin-top:8px!important}
}

/* Collapse the shared header before 768px can wrap into three rows. */
@media(max-width:820px){
  body.calculator-storefront .storefront-nav-row{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    width:calc(100% - 20px)!important;
    min-height:auto!important;
    gap:5px!important;
    padding:3px 0 5px!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-brand{
    grid-column:1!important;
    grid-row:1!important;
    margin:0!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-brand img{
    width:118px!important;
    height:34px!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-market{
    grid-column:3!important;
    grid-row:1!important;
    margin:0!important;
    justify-self:end!important;
    max-width:96px!important;
  }
  body.calculator-storefront .storefront-market label{display:none!important}
  body.calculator-storefront .storefront-market select{
    width:96px!important;
    max-width:96px!important;
    min-height:44px!important;
    padding:0 22px 0 8px!important;
    font-size:9px!important;
  }
  body.calculator-storefront .storefront-nav-row>.catalog-navigation{
    grid-column:1/-1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important;
    gap:3px!important;
  }
  body.calculator-storefront .catalog-navigation>.catalog-menu,
  body.calculator-storefront .catalog-navigation>a{
    width:100%!important;
    min-width:0!important;
  }
  body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu>summary.catalog-primary-control,
  body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control{
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    height:42px!important;
    padding:5px 4px!important;
    border:1px solid #202629!important;
    border-radius:6px!important;
    background:#0a0d0f!important;
    color:#dce2e4!important;
    font-size:10px!important;
    line-height:1.05!important;
    text-align:center!important;
    white-space:normal!important;
  }
  body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu[open]>summary.catalog-primary-control,
  body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control[aria-current=page]{
    border-color:#3b5b57!important;
    background:#0e1a1a!important;
    box-shadow:none!important;
    color:var(--calc-teal)!important;
  }
}

/* Shared header on mobile follows the current homepage architecture. */
@media(max-width:760px){
  body.calculator-storefront .storefront-nav-row{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    width:calc(100% - 20px)!important;
    min-height:auto!important;
    gap:5px!important;
    padding:3px 0 5px!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-brand{
    grid-column:1!important;
    grid-row:1!important;
    margin:0!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-brand img{
    width:118px!important;
    height:34px!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-market{
    grid-column:3!important;
    grid-row:1!important;
    margin:0!important;
    justify-self:end!important;
    max-width:88px!important;
  }
  body.calculator-storefront .storefront-market label{display:none!important}
  body.calculator-storefront .storefront-market select{
    width:88px!important;
    max-width:88px!important;
    min-height:44px!important;
    padding:0 22px 0 7px!important;
    font-size:9px!important;
  }
  body.calculator-storefront .storefront-nav-row>.catalog-navigation{
    grid-column:1/-1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important;
    gap:3px!important;
  }
  body.calculator-storefront .catalog-navigation>.catalog-menu,
  body.calculator-storefront .catalog-navigation>a{
    width:100%!important;
    min-width:0!important;
  }
  body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu>summary.catalog-primary-control,
  body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control{
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    height:42px!important;
    padding:5px 3px!important;
    border:1px solid #202629!important;
    border-radius:6px!important;
    background:#0a0d0f!important;
    color:#dce2e4!important;
    font-size:9.5px!important;
    line-height:1.05!important;
    text-align:center!important;
    white-space:normal!important;
  }
  body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu[open]>summary.catalog-primary-control,
  body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control[aria-current=page]{
    border-color:#3b5b57!important;
    background:#0e1a1a!important;
    box-shadow:none!important;
    color:var(--calc-teal)!important;
  }

  html body.calculator-storefront .calc-workspace-heading{
    width:calc(100% - 24px)!important;
    padding-top:20px!important;
  }
  html body.calculator-storefront .calc-workspace-heading h1{
    font-size:clamp(34px,10.8vw,44px)!important;
    letter-spacing:-1.6px!important;
  }
  html body.calculator-storefront .calc-heading-copy>p:last-child{font-size:13px!important}
  html body.calculator-storefront .heeler-calc-mode{
    min-height:72px!important;
    padding:10px!important;
  }
  html body.calculator-storefront .pc-workspace{width:calc(100% - 24px)!important}
  html body.calculator-storefront .pc-workspace .rs-tool-head{
    position:static!important;
    top:auto!important;
    margin-bottom:10px!important;
    padding:0!important;
    background:transparent!important;
  }
  html body.calculator-storefront .rs-pill-row{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:3px!important;
    padding:4px!important;
  }
  html body.calculator-storefront .rs-pill{
    min-height:44px!important;
    padding:6px 4px!important;
    gap:5px!important;
    justify-content:center!important;
  }
  html body.calculator-storefront .rs-pill strong{
    width:22px!important;
    height:22px!important;
    flex-basis:22px!important;
    font-size:10px!important;
  }
  html body.calculator-storefront .rs-pill-copy{min-width:0!important}
  html body.calculator-storefront .rs-pill b{
    font-size:9.5px!important;
    line-height:1.05!important;
  }
  html body.calculator-storefront .rs-pill small{display:none!important}
  html body.calculator-storefront .pc-step-nextline{display:none!important}

  html body.calculator-storefront #calculator .pc-guided-step,
  html body.calculator-storefront #calculator #calculator-step-2,
  html body.calculator-storefront #calculator .pc-mode{
    padding:16px!important;
    border-radius:9px!important;
  }
  html body.calculator-storefront #calculator .pc-mode-choices,
  html body.calculator-storefront #calculator .pc-battery-type,
  html body.calculator-storefront #calculator .pc-inverter-choices{
    grid-template-columns:1fr!important;
  }
  html body.calculator-storefront #calculator .pc-battery-quick{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body.calculator-storefront #calculator .pc-load-tray-head{
    padding:12px 110px 12px 14px!important;
  }
  html body.calculator-storefront #calculator .pc-selected-row{
    padding:12px!important;
  }
  body.calculator-storefront .content{width:calc(100% - 24px)!important}
  body.calculator-storefront .content section{padding:30px 0!important}
}

@media(max-width:480px){
  html body.calculator-storefront .heeler-calc-modes{
    grid-template-columns:1fr!important;
    gap:4px!important;
  }
  html body.calculator-storefront .heeler-calc-mode{
    min-height:58px!important;
    padding:9px 11px!important;
  }
  html body.calculator-storefront .heeler-calc-mode>span:last-child{display:none!important}
  html body.calculator-storefront #calculator .pc-summary-headline,
  html body.calculator-storefront .pc-workspace .result-grid{
    grid-template-columns:1fr!important;
  }
  html body.calculator-storefront .pc-workspace .pc-summary-runtime{
    padding:10px 0 0!important;
    border-left:0!important;
    border-top:1px solid #252c30!important;
  }
}

@media(max-width:340px){
  body.calculator-storefront .storefront-nav-row{width:calc(100% - 12px)!important}
  body.calculator-storefront .storefront-nav-row>.storefront-brand img{width:104px!important}
  html body.calculator-storefront .calc-workspace-heading,
  html body.calculator-storefront .pc-workspace,
  body.calculator-storefront .content{width:calc(100% - 16px)!important}
  html body.calculator-storefront .rs-pill{
    flex-direction:column!important;
    gap:2px!important;
  }
  html body.calculator-storefront .rs-pill strong{
    width:20px!important;
    height:20px!important;
    flex-basis:20px!important;
  }
  html body.calculator-storefront .rs-pill b{font-size:8.5px!important}
}


/* Narrow-phone containment: keep the shared four-control header inside 320px without clipping. */
@media(max-width:340px){
  body.calculator-storefront .storefront-nav-row{
    width:calc(100% - 12px)!important;
    gap:3px!important;
  }
  body.calculator-storefront .storefront-nav-row>.storefront-market{
    max-width:86px!important;
  }
  body.calculator-storefront .storefront-market select{
    width:86px!important;
    max-width:86px!important;
    padding-left:6px!important;
    padding-right:20px!important;
    font-size:8.5px!important;
  }
  body.calculator-storefront .storefront-nav-row>.catalog-navigation{
    gap:2px!important;
  }
  body.calculator-storefront .storefront-header .catalog-navigation>.catalog-menu>summary.catalog-primary-control,
  body.calculator-storefront .storefront-header .catalog-navigation>a.catalog-primary-control{
    padding:4px 2px!important;
    font-size:8.75px!important;
    letter-spacing:-.1px!important;
  }
}

/* Stage 15 accessibility: preserve Advanced mode heading presentation after semantic promotion. */
.pc-mode>h2{margin:5px 0 0;font-size:18px;line-height:1.25}
