/* The approved 18px equipment value is the reference for input and menu text.
   Keep the established columns, caption positions, number insets and arrows. */
body[data-page="project"] {
  --sx-input-face:"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;
  --sx-input-value-size:18px;
  --sx-input-value-weight:700;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .common-parameters :is(input,.currency-menu-toggle,.currency-current),
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs :is(.equipment-identity,.equipment-identity b,.equipment-type-toggle,.equipment-type-current,.equipment-location-toggle,.equipment-location-input,.equipment-location-status,.equipment-location-status b) {
  font-family:var(--sx-input-face) !important;
  font-size:var(--sx-input-value-size) !important;
  font-weight:var(--sx-input-value-weight) !important;
  font-style:normal !important;
  font-variant-numeric:tabular-nums;
  letter-spacing:normal !important;
  text-align:center !important;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .common-parameters :is(input,.currency-menu-toggle,.currency-current) {
  line-height:normal !important;
}
/* Keep the approved value size in portrait, while still fitting unusually
   long prices/counts through the existing measured font-size variable. */
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs #price,
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs #stores {
  font-size:var(--public-param-font-size,var(--sx-input-value-size)) !important;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-location-status { line-height:1.2; }
@media (min-width:721px) {
  body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row[data-location-confirmed="true"] .equipment-location-control {
    grid-template-columns:minmax(0,1fr) 116px 70px minmax(88px,max-content);
  }
  body[data-page="project"][data-lang="en"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row[data-location-confirmed="true"] .equipment-location-control {
    grid-template-columns:minmax(0,1fr) 112px minmax(64px,max-content) minmax(88px,max-content) !important;
  }
  body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-location-status { padding-inline:18px; }
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .common-parameters label {
  font-family:var(--sx-input-face) !important;
  font-weight:700 !important;
  text-align:center !important;
}
/* Section labels and the equipment-count/scope notes must remain readable
   at the bottom of a long input list as well as at the top. */
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-kicker {
  font-family:var(--sx-input-face);
  font-size:18px;
  font-weight:700;
  line-height:1.45;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-input-notes-v50 {
  min-width:0;
  flex:1 1 auto;
  display:grid;
  gap:4px;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .roi-input-footer :is(#equipmentCount,.equipment-ac-scope-v50) {
  font-family:var(--sx-input-face);
  font-size:16px;
  font-weight:500;
  line-height:1.6;
  white-space:normal;
  overflow-wrap:break-word;
  color:#c6dcd6;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .roi-input-footer > .btn {
  flex:0 0 auto;
  white-space:nowrap;
}
/* Menus can be portalled to body, so they deliberately do not depend on an
   equipment-row ancestor. Selection dots keep their existing independent lane. */
body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76) > button,
body[data-page="project"] .power-options > button > span {
  font-family:var(--sx-input-face) !important;
  font-size:var(--sx-input-value-size) !important;
  font-weight:var(--sx-input-value-weight) !important;
  font-style:normal !important;
  font-variant-numeric:tabular-nums;
  letter-spacing:normal !important;
  line-height:1.35 !important;
  text-align:center !important;
}
body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76) > button {
  min-height:44px !important;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs :is(.equipment-location-input,.equipment-location-toggle,.heatpump-reference-v74 > summary) {
  font-family:var(--sx-input-face) !important;
}
/* Use the existing power-menu motion and scroll treatment for each listbox,
   including menus mounted directly under body. Their content/columns stay put. */
body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76) {
  animation:powerMenuOpen .24s ease both;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scroll-padding-block:6px;
  scrollbar-width:thin;
  scrollbar-color:rgba(88,232,223,.55) rgba(3,15,13,.75);
  -webkit-overflow-scrolling:touch;
}
body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76)::-webkit-scrollbar { width:6px; }
body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76)::-webkit-scrollbar-track { background:rgba(3,15,13,.75); }
body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76)::-webkit-scrollbar-thumb { background:rgba(88,232,223,.55); border-radius:3px; }
@media (prefers-reduced-motion:reduce) {
  body[data-page="project"] :is(.power-options,.equipment-type-options,.currency-options,.carbon-region-options,.heatpump-gas-unit-options-v76) { animation:none !important; }
}

/* Separate equipment groups and parameter controls without changing their
   geometry, input alignment, or the existing animated background layers. */
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-rows {
  row-gap:20px;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row {
  border-color:#4b8878;
  background-color:rgba(13,38,31,.8);
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row:hover {
  border-color:#64a895;
  background-color:rgba(17,48,40,.8);
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row:focus-within {
  border-color:#72d5bb;
  background-color:rgba(17,48,40,.9);
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row > .equipment-row-head {
  border-bottom-color:#365f53;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs :is(.equipment-location-control,.currency-menu-toggle),
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs :is(.equipment-row > .field,.heatpump-field-v73,.common-parameters .field) > input:not([aria-invalid="true"]),
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row[data-v76-input-alignment] :is(.power-combobox,.heatpump-gas-control-v75) > input:not([aria-invalid="true"]),
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row[data-v76-input-alignment] :is(.power-menu-toggle,.heatpump-gas-unit-toggle-v76) {
  border-color:#47766b !important;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs :is(.equipment-type-toggle,.equipment-location-toggle,.equipment-location-status) {
  border-color:#47766b;
}
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-location-control:focus-within,
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs :is(.equipment-row > .field,.heatpump-field-v73,.common-parameters .field) > input:not([aria-invalid="true"]):focus,
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row[data-v76-input-alignment] :is(.power-combobox,.heatpump-gas-control-v75) > input:not([aria-invalid="true"]):focus,
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .currency-menu-toggle:is(:focus-visible,[aria-expanded="true"]),
body[data-page="project"] .roi-panel:not(.pdf-snapshot-copy-v2) #roiViewInputs .equipment-row[data-v76-input-alignment] :is(.power-menu-toggle,.heatpump-gas-unit-toggle-v76):is(:focus-visible,[aria-expanded="true"]) {
  border-color:#58e8df !important;
}
