/* Calculator FBS/FBO segmented switch — reference style */
body.fillru-homepage .calculator-reference-card .calculator-mode-switch {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 54px !important;
  margin-bottom: 16px !important;
}

body.fillru-homepage .calculator-reference-card .calculator-mode-switch-label {
  flex: 0 0 auto !important;
}

body.fillru-homepage .calculator-reference-card .calculator-mode-switch-buttons {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  width: 158px !important;
  min-width: 158px !important;
  height: 54px !important;
  padding: 4px !important;
  gap: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border: 1px solid #d9dfe6 !important;
  border-radius: 12px !important;
  background: #eef1f4 !important;
  box-shadow: 0 1px 2px rgba(28, 44, 61, .04) !important;
}

body.fillru-homepage .calculator-reference-card .calculator-mode-button,
body.fillru-homepage .calculator-reference-card .calculator-mode-button.calculator-mode-button--secondary {
  display: inline-flex !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: #536273 !important;
  box-shadow: none !important;
  filter: none !important;
  font-family: var(--font-text, Inter, "Segoe UI", Arial, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
  transform: none !important;
  transition: background-color .16s ease, color .16s ease, box-shadow .16s ease !important;
}

body.fillru-homepage .calculator-reference-card .calculator-mode-button.is-selected-mode,
body.fillru-homepage .calculator-reference-card .calculator-mode-button[aria-pressed="true"] {
  background: #ff641c !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(255, 100, 28, .22) !important;
}

body.fillru-homepage .calculator-reference-card .calculator-mode-button:not(.is-selected-mode):not([aria-pressed="true"]):hover {
  background: rgba(255, 255, 255, .48) !important;
  color: #445363 !important;
}

body.fillru-homepage .calculator-reference-card .calculator-mode-button:focus-visible {
  outline: 2px solid rgba(255, 100, 28, .32) !important;
  outline-offset: -2px !important;
}

html[data-theme="dark"] body.fillru-homepage .calculator-reference-card .calculator-mode-switch-buttons {
  border-color: rgba(255,255,255,.13) !important;
  background: rgba(255,255,255,.08) !important;
}

html[data-theme="dark"] body.fillru-homepage .calculator-reference-card .calculator-mode-button,
html[data-theme="dark"] body.fillru-homepage .calculator-reference-card .calculator-mode-button.calculator-mode-button--secondary {
  color: rgba(255,255,255,.72) !important;
}

html[data-theme="dark"] body.fillru-homepage .calculator-reference-card .calculator-mode-button.is-selected-mode,
html[data-theme="dark"] body.fillru-homepage .calculator-reference-card .calculator-mode-button[aria-pressed="true"] {
  background: #ff641c !important;
  color: #ffffff !important;
}

@media (max-width: 700px) {
  body.fillru-homepage .calculator-reference-card .calculator-mode-switch {
    flex-wrap: wrap !important;
    gap: 8px 10px !important;
  }

  body.fillru-homepage .calculator-reference-card .calculator-mode-switch-buttons {
    width: 158px !important;
    min-width: 158px !important;
  }
}


/* Add-to-cart contrast override */
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart,
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart:hover,
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart:focus-visible,
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart:active,
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart.is-added,
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart span,
body.fillru-homepage [data-fillru-calculator] .calculator-reference-actions > .calculator-add-cart i {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Calculator tables: centered accounting grid + emphasis v74 */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) {
  width: 100% !important;
  table-layout: fixed !important;
}

/* The two service tables share exactly the same column grid. */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-check { width: 4% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-name { width: 22% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-desc { width: 30% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-unit { width: 8% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-quantity { width: 10% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-price { width: 10% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-discount { width: 7% !important; }
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-sum { width: 9% !important; }

/* Every table heading is bold; textual and accounting headings are centered. */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) thead th {
  font-weight: 800 !important;
  text-align: center !important;
  vertical-align: middle !important;
}

/* Service names are always bold. */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) tbody td.calculator-service-col-name,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) tbody .calculator-service-name,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) tbody [data-base-service-label] {
  font-weight: 800 !important;
}

/* Description content is centered, including inline selectors. */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) .calculator-service-col-desc,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) .calculator-service-desc {
  text-align: center !important;
}
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) .calculator-service-col-desc :is(select, summary, summary > span, .calculator-service-desc) {
  text-align: center !important;
}
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) .calculator-service-col-desc summary {
  justify-content: center !important;
}

/* Unit, quantity, price, discount and amount use the same centered accounting alignment. */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  :is(.calculator-service-col-unit, .calculator-service-col-quantity, .calculator-service-col-price, .calculator-service-col-discount, .calculator-service-col-sum) {
  text-align: center !important;
  vertical-align: middle !important;
}
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) tfoot .calculator-table-total-value,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) tfoot .calculator-table-discount-total {
  text-align: center !important;
}

/* Section/table totals and section headings are deliberately strong. */
body.fillru-homepage .calculator-services-section-title h4,
body.fillru-homepage .calculator-services-section-heading,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) .calculator-table-total-label {
  font-weight: 800 !important;
}
body.fillru-homepage .calculator-services-table--included .calculator-table-total-label {
  color: #172f49 !important;
}

/* Final calculator result: bold and orange. */
body.fillru-homepage .calculator-summary-ref-card--total .calculator-summary-ref-label,
body.fillru-homepage .calculator-summary-ref-card--total [data-calc-final-total] {
  color: var(--brand-orange, #ff6a13) !important;
  font-weight: 900 !important;
}
body.fillru-homepage .calculator-summary-ref-card--total [data-calc-final-total] {
  font-size: 1.12em !important;
}

@media (max-width: 768px) {
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-check { width: 5% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-name { width: 21% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-desc { width: 29% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-unit { width: 8% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-quantity { width: 10% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-price { width: 10% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-discount { width: 7% !important; }
  body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) col.col-sum { width: 10% !important; }
}

/* Calculator sum column orange values v75 */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  td.calculator-service-col-sum,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  td.calculator-service-col-sum :is(strong, span),
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  tfoot td:last-child {
  color: var(--brand-orange, #ff6a13) !important;
}

/* Addon multiselect full-column width v79 */
body.fillru-homepage .calculator-services-table--addons
  td.calculator-service-col-desc:has(> .calculator-addon-single-select) {
  display: table-cell !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

body.fillru-homepage .calculator-services-table--addons
  td.calculator-service-col-desc > .calculator-addon-single-select {
  display: block !important;
  position: relative !important;
  float: none !important;
  clear: both !important;
  flex: none !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.fillru-homepage .calculator-services-table--addons
  td.calculator-service-col-desc > .calculator-addon-single-select > summary {
  display: flex !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Calculator sum values orange authority v80 */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  tbody td.calculator-service-col-sum,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  tbody td.calculator-service-col-sum *,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  tbody :is([data-base-service-sum], [data-calc-addon-sum], [data-calc-service-sum]),
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  tfoot td:last-child,
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons)
  tfoot td:last-child * {
  color: var(--brand-orange, #ff6a13) !important;
  -webkit-text-fill-color: var(--brand-orange, #ff6a13) !important;
}

/* Calculator table headers bold authority v81 */
body.fillru-homepage :is(.calculator-services-table--included, .calculator-services-table--addons) thead th,
body.fillru-homepage [data-fillru-calculator] table thead th {
  font-weight: 800 !important;
}

/* Calculator TH bold authority v82 */
body.fillru-homepage [data-fillru-calculator] table thead th,
body.fillru-homepage [data-fillru-calculator] table thead th * {
  font-weight: 800 !important;
}

