/* Keep calculator summary actions on one line at every breakpoint. */
.calculator-summary-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}

.calculator-summary-actions > .calculator-reset-button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

.calculator-summary-actions > .calculator-add-cart {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  white-space: nowrap !important;
}

@media (max-width: 680px) {
  .calculator-reference-summary.is-floating .calculator-summary-actions {
    gap: 4px !important;
  }

  .calculator-reference-summary.is-floating .calculator-summary-actions > .calculator-reset-button {
    flex: 0 0 44px !important;
  }

  .calculator-reference-summary.is-floating .calculator-summary-actions > .calculator-add-cart {
    flex: 0 0 50px !important;
  }
}

/* Calculator summary: totals and actions stay in the same horizontal row. */
.calculator-reference-summary:not(.is-floating) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(270px, 330px) !important;
  grid-template-rows: auto !important;
  align-items: center !important;
  column-gap: 18px !important;
  row-gap: 0 !important;
}

.calculator-reference-summary:not(.is-floating) > .calculator-reference-total {
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
}

.calculator-reference-summary:not(.is-floating) > .calculator-cart-action {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: end !important;
  width: 100% !important;
  max-width: 330px !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.calculator-summary-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 680px) {
  .calculator-reference-summary:not(.is-floating) {
    grid-template-columns: minmax(0, 1fr) 98px !important;
    column-gap: 8px !important;
  }

  .calculator-reference-summary:not(.is-floating) > .calculator-cart-action {
    width: 98px !important;
    max-width: 98px !important;
  }

  .calculator-reference-summary:not(.is-floating) .calculator-summary-actions {
    gap: 4px !important;
  }

  .calculator-reference-summary:not(.is-floating) .calculator-reset-button {
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
  }

  .calculator-reference-summary:not(.is-floating) .calculator-reset-label,
  .calculator-reference-summary:not(.is-floating) .calculator-add-cart span {
    display: none !important;
  }

  .calculator-reference-summary:not(.is-floating) .calculator-add-cart {
    flex: 0 0 50px !important;
    width: 50px !important;
    min-width: 50px !important;
    padding: 0 !important;
  }
}

/* Calculator services UX redesign v2 */
.calculator-reference-services {
  --service-card-border: rgba(19, 33, 54, .10);
  --service-card-border-active: rgba(255, 106, 19, .48);
  --service-card-bg: #fff;
  --service-card-bg-active: rgba(255, 106, 19, .045);
}

.calculator-services-intro {
  margin-bottom: 14px !important;
}

.calculator-services-intro p {
  max-width: 680px;
  color: #6f7f93 !important;
  line-height: 1.45 !important;
}

.calculator-services-panel {
  margin: 0 !important;
  padding: 13px !important;
  border: 1px solid rgba(19, 33, 54, .09) !important;
  border-radius: 15px;
  background: rgba(248, 250, 252, .82);
}

.calculator-services-panel + .calculator-services-panel {
  margin-top: 12px !important;
}

.calculator-services-panel--included {
  border-color: rgba(31, 123, 77, .13) !important;
  background: rgba(31, 123, 77, .025);
}

.calculator-services-panel--addons {
  border-color: rgba(255, 106, 19, .13) !important;
  background: linear-gradient(180deg, rgba(255, 106, 19, .025), rgba(255,255,255,.72));
}

.calculator-services-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.calculator-services-panel-title {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: 9px;
}

.calculator-services-panel-index {
  display: inline-grid;
  width: 28px;
  min-width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid rgba(19,33,54,.10);
  border-radius: 9px;
  background: #fff;
  color: #718096;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
}

.calculator-services-panel--included .calculator-services-panel-index {
  border-color: rgba(31, 123, 77, .18);
  background: rgba(31, 123, 77, .07);
  color: #1f7b4d;
}

.calculator-services-panel--addons .calculator-services-panel-index {
  border-color: rgba(255, 106, 19, .22);
  background: rgba(255, 106, 19, .07);
  color: var(--brand);
}

.calculator-services-panel-head h4 {
  margin: 0 !important;
  color: #17253a !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.calculator-services-panel-head p {
  margin: 3px 0 0;
  color: #7b899b;
  font-size: 10.5px;
  line-height: 1.35;
}

.calculator-services-panel-badge {
  display: inline-flex;
  min-height: 25px;
  align-items: center;
  flex: 0 0 auto;
  padding: 0 8px;
  border: 1px solid rgba(255,106,19,.18);
  border-radius: 999px;
  background: rgba(255,106,19,.07);
  color: var(--brand);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .035em;
  white-space: nowrap;
  text-transform: uppercase;
}

.calculator-services-panel-badge--included {
  border-color: rgba(31, 123, 77, .18);
  background: rgba(31, 123, 77, .07);
  color: #1f7b4d;
}

.calculator-base-services .calculator-info-list,
.calculator-additional-services .calculator-options-list {
  gap: 7px !important;
}

.calculator-reference-services .calculator-service-item {
  position: relative;
  min-width: 0;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 9px 11px !important;
  border: 1px solid var(--service-card-border);
  border-radius: 11px !important;
  background: var(--service-card-bg);
  box-sizing: border-box;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .12s ease;
}

.calculator-reference-services .calculator-service-item:hover {
  border-color: rgba(255,106,19,.24);
  background: rgba(255,255,255,.98);
  box-shadow: 0 7px 18px rgba(18,31,48,.045);
}

.calculator-reference-services .calculator-service-item.is-selected-service,
.calculator-reference-services .calculator-service-item:has(input[data-calc-addon]:checked),
.calculator-reference-services .calculator-service-item:has(input[data-calc-service-toggle]:checked) {
  border-color: var(--service-card-border-active) !important;
  background: var(--service-card-bg-active) !important;
  box-shadow: inset 0 0 0 1px rgba(255,106,19,.045), 0 8px 22px rgba(255,106,19,.065);
}

.calculator-reference-services .calculator-service-item--included,
.calculator-reference-services .calculator-service-item--included:hover {
  border-color: rgba(31, 123, 77, .12) !important;
  background: rgba(255,255,255,.85) !important;
  box-shadow: none !important;
}

.calculator-reference-services .calculator-service-item--included::after {
  content: '✓';
  position: absolute;
  top: 7px;
  right: 8px;
  display: grid;
  width: 18px;
  height: 18px;
  place-items: center;
  border-radius: 999px;
  background: rgba(31, 123, 77, .09);
  color: #1f7b4d;
  font-size: 10px;
  font-weight: 900;
  pointer-events: none;
}

.calculator-reference-services .calculator-service-item--included > .calculator-base-service-price {
  margin-right: 24px;
}

.calculator-reference-services .calculator-service-item .calculator-option-main {
  align-items: center !important;
}

.calculator-reference-services .calculator-service-item .calculator-option-main > span,
.calculator-reference-services .calculator-service-item [data-base-service-label] {
  color: #2d3e53 !important;
  font-size: 12px !important;
  font-weight: 700;
  line-height: 1.28 !important;
}

.calculator-reference-services .calculator-service-item input[type="checkbox"],
.calculator-reference-services .calculator-service-item input[type="radio"] {
  width: 17px !important;
  height: 17px !important;
  min-width: 17px;
  accent-color: var(--brand) !important;
}

.calculator-reference-services .calculator-service-item--included > input.calculator-base-check {
  accent-color: #1f7b4d !important;
}

.calculator-reference-services .calculator-service-item .calculator-option-price,
.calculator-reference-services .calculator-service-item .calculator-base-service-price {
  color: #27384e !important;
  font-size: 11px !important;
  font-weight: 850 !important;
}

.calculator-reference-services .calculator-service-item.is-selected-service .calculator-option-price,
.calculator-reference-services .calculator-service-item:has(input[data-calc-addon]:checked) .calculator-option-price,
.calculator-reference-services .calculator-service-item:has(input[data-calc-service-toggle]:checked) .calculator-option-price {
  color: var(--brand) !important;
}

.calculator-service-item--pickup .calculator-option-main > span::after {
  content: 'Можно выбрать только один вариант забора';
  display: block;
  margin-top: 3px;
  color: #8491a2;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.25;
}

.calculator-service-item--pickup.is-selected-service .calculator-option-main > span::after {
  color: #b85b12;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item {
  grid-template-columns: minmax(0, 1fr) var(--calculator-service-price-width) !important;
  row-gap: 8px;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-option-main {
  grid-column: 1;
  grid-row: 1;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-option-price {
  grid-column: 2;
  grid-row: 1;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-addon-counter {
  grid-column: 1 / -1;
  grid-row: 2;
  justify-self: start;
  width: auto;
  min-width: 0;
  padding: 5px;
  border: 1px solid rgba(19,33,54,.08);
  border-radius: 10px;
  background: rgba(255,255,255,.86);
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-addon-count-step {
  width: 31px;
  min-width: 31px;
  height: 31px;
  border-radius: 8px;
  background: #fff;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-addon-count {
  width: 64px !important;
  min-width: 64px !important;
  height: 31px;
  border-radius: 8px;
  background: #fff;
}

.calculator-additional-services .calculator-option-row-select-count.calculator-service-item {
  row-gap: 8px !important;
}

.calculator-additional-services .calculator-option-row-select-count.calculator-service-item.is-service-expanded {
  border-color: rgba(255,106,19,.34) !important;
  background: rgba(255,106,19,.035) !important;
}

.calculator-service-subgroup {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 9px;
  border: 1px dashed rgba(19,33,54,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.54);
}

.calculator-service-subgroup > legend {
  padding: 0 5px;
  color: #6f7d90;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .025em;
}

.calculator-service-subgroup .calculator-service-item {
  background: #fff;
}

.calculator-reference-services .calculator-packaging-select > summary {
  min-height: 32px;
  border-radius: 9px;
}

.calculator-reference-services .calculator-packaging-select > summary::before {
  content: 'Настроить';
  color: #8090a4;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.calculator-reference-services .calculator-packaging-select[open] > summary::before {
  content: 'Открыто';
  color: var(--brand);
}

@media (max-width: 768px) {
  .calculator-services-panel {
    padding: 10px !important;
    border-radius: 13px;
  }

  .calculator-services-panel-head {
    gap: 8px;
  }

  .calculator-services-panel-title {
    gap: 7px;
  }

  .calculator-services-panel-index {
    width: 25px;
    min-width: 25px;
    height: 25px;
  }

  .calculator-services-panel-head p {
    font-size: 10px;
  }

  .calculator-services-panel-badge {
    min-height: 23px;
    padding-inline: 7px;
    font-size: 8px;
  }

  .calculator-reference-services .calculator-service-item {
    min-height: 50px !important;
    padding: 9px !important;
  }

  .calculator-reference-services .calculator-service-item--included {
    grid-template-columns: 16px minmax(0, 1fr) 80px !important;
  }

  .calculator-reference-services .calculator-service-item--included > .calculator-base-service-price {
    width: 80px !important;
    min-width: 80px !important;
    margin-right: 18px;
  }

  .calculator-service-item--pickup .calculator-option-main > span::after {
    font-size: 8.5px;
  }

  .calculator-additional-services .calculator-option-row-count.calculator-service-item {
    grid-template-columns: minmax(0, 1fr) 82px !important;
  }

  .calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-option-price {
    width: 82px !important;
    min-width: 82px !important;
  }
}

/* Calculator services: force vertical service list */
.calculator-base-services .calculator-info-list,
.calculator-additional-services .calculator-options-list,
.calculator-service-subgroup {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  width: 100% !important;
}

.calculator-base-services .calculator-base-service,
.calculator-additional-services .calculator-option-row,
.calculator-additional-services .calculator-option-group,
.calculator-service-subgroup .calculator-option-row {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

.calculator-services-layout,
.calculator-additional-services .calculator-services-layout {
  display: block !important;
  width: 100% !important;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item,
.calculator-additional-services .calculator-option-row-select-count.calculator-service-item,
.calculator-additional-services .calculator-option-row-variant.calculator-service-item {
  width: 100% !important;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item.is-count-selected .calculator-addon-counter,
.calculator-additional-services .calculator-option-row-select-count.calculator-service-item.is-service-expanded [data-service-count-wrap],
.calculator-additional-services .calculator-option-row-variant.calculator-service-item select {
  justify-self: start;
}

/* Calculator packaging/select dropdown repair v3 */
.calculator-reference-services .calculator-packaging-select {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
}

/* Restore the summary to a simple 3-column row: title / selected value / chevron. */
.calculator-reference-services .calculator-packaging-select > summary {
  display: grid !important;
  grid-template-columns: minmax(90px, auto) minmax(0, 1fr) 14px !important;
  grid-template-rows: auto !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 34px !important;
  padding: 6px 9px !important;
  border: 1px solid rgba(255, 106, 19, .30) !important;
  border-radius: 9px !important;
  background: rgba(255, 106, 19, .045) !important;
  color: #26384f !important;
  list-style: none !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}

.calculator-reference-services .calculator-packaging-select > summary::-webkit-details-marker {
  display: none !important;
}

.calculator-reference-services .calculator-packaging-select > summary::marker {
  content: '' !important;
}

/* The redesign added an extra pseudo column and broke the summary layout. */
.calculator-reference-services .calculator-packaging-select > summary::before,
.calculator-reference-services .calculator-packaging-select[open] > summary::before {
  content: none !important;
  display: none !important;
}

.calculator-reference-services .calculator-packaging-select > summary > span,
.calculator-reference-services .calculator-packaging-select > summary > small {
  min-width: 0 !important;
}

.calculator-reference-services .calculator-packaging-select > summary > span {
  grid-column: 1 !important;
  overflow: hidden !important;
  color: #30425a !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.calculator-reference-services .calculator-packaging-select > summary > small {
  grid-column: 2 !important;
  overflow: hidden !important;
  color: var(--brand) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-align: right !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.calculator-reference-services .calculator-packaging-select > summary > i {
  grid-column: 3 !important;
  justify-self: end !important;
  color: var(--brand) !important;
  font-size: 10px !important;
  transition: transform .16s ease !important;
}

.calculator-reference-services .calculator-packaging-select[open] > summary {
  border-color: rgba(255, 106, 19, .50) !important;
  background: rgba(255, 106, 19, .075) !important;
}

.calculator-reference-services .calculator-packaging-select[open] > summary > i {
  transform: rotate(180deg) !important;
}

/* Every expandable option panel is ONE vertical column. */
.calculator-reference-services .calculator-packaging-select > .calculator-dropdown-panel,
.calculator-reference-services .calculator-packaging-select > .calculator-packaging-options {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  margin-top: 6px !important;
  padding: 7px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 1px solid rgba(19, 33, 54, .12) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 14px 36px rgba(18, 31, 48, .12) !important;
  box-sizing: border-box !important;
}

.calculator-reference-services .calculator-packaging-select:not([open]) > .calculator-dropdown-panel,
.calculator-reference-services .calculator-packaging-select:not([open]) > .calculator-packaging-options {
  display: none !important;
}

.calculator-reference-services .calculator-packaging-select[open] > .calculator-dropdown-panel,
.calculator-reference-services .calculator-packaging-select[open] > .calculator-packaging-options {
  display: grid !important;
}

/* Each option is one full-width horizontal row inside the VERTICAL list. */
.calculator-reference-services .calculator-packaging-options > .calculator-packaging-option,
.calculator-reference-services .calculator-dropdown-panel > .calculator-packaging-option {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto !important;
  align-items: center !important;
  column-gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 6px 7px !important;
  border: 1px solid rgba(19, 33, 54, .075) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

.calculator-reference-services .calculator-packaging-options > .calculator-packaging-option:hover,
.calculator-reference-services .calculator-dropdown-panel > .calculator-packaging-option:hover {
  border-color: rgba(255, 106, 19, .22) !important;
  background: rgba(255, 106, 19, .025) !important;
}

.calculator-reference-services .calculator-packaging-option > .calculator-option-main {
  display: grid !important;
  grid-template-columns: 17px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
}

.calculator-reference-services .calculator-packaging-option > .calculator-option-main > input[type="checkbox"],
.calculator-reference-services .calculator-packaging-option > .calculator-option-main > input[type="radio"] {
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
}

.calculator-reference-services .calculator-packaging-option > .calculator-option-main > span {
  min-width: 0 !important;
  overflow: hidden !important;
  color: #4f6178 !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.calculator-reference-services .calculator-packaging-option > .calculator-option-price {
  width: auto !important;
  min-width: max-content !important;
  justify-self: end !important;
  color: var(--brand) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Keep all other service lists vertical too. */
.calculator-base-services .calculator-info-list,
.calculator-additional-services .calculator-options-list,
.calculator-service-subgroup {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-auto-flow: row !important;
  width: 100% !important;
}

@media (max-width: 680px) {
  .calculator-reference-services .calculator-packaging-select > summary {
    grid-template-columns: minmax(0, 1fr) 14px !important;
    row-gap: 3px !important;
  }

  .calculator-reference-services .calculator-packaging-select > summary > span {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .calculator-reference-services .calculator-packaging-select > summary > i {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  .calculator-reference-services .calculator-packaging-select > summary > small {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    text-align: left !important;
  }

  .calculator-reference-services .calculator-packaging-select > .calculator-dropdown-panel,
  .calculator-reference-services .calculator-packaging-select > .calculator-packaging-options {
    position: absolute !important;
    top: calc(100% + 6px) !important;
    right: auto !important;
    bottom: auto !important;
    left: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 280px !important;
    transform: none !important;
    z-index: 920 !important;
  }
}

/* Calculator selected service values: full visibility v4 */
.calculator-reference-services {
  --calculator-service-price-width: 92px;
}

.calculator-reference-services .calculator-base-service {
  align-items: center !important;
  min-height: 56px !important;
}

.calculator-reference-services .calculator-base-service > .calculator-packaging-select {
  min-width: 0 !important;
  width: 100% !important;
}

.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 16px !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  column-gap: 8px !important;
  row-gap: 3px !important;
  min-height: 44px !important;
  padding: 7px 9px !important;
}

.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > span[data-base-service-label] {
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  overflow: visible !important;
  color: #26384f !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-overflow: clip !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > small,
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-packaging-summary],
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-base-service-multiselect-summary],
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-base-service-variant-summary] {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
  color: var(--brand) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-overflow: clip !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > i {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: end !important;
}

.calculator-reference-services .calculator-service-item--included > .calculator-base-service-price {
  width: var(--calculator-service-price-width) !important;
  min-width: var(--calculator-service-price-width) !important;
  margin-right: 22px !important;
  align-self: center !important;
}

.calculator-reference-services .calculator-base-service:not(:has(.calculator-packaging-select)) {
  min-height: 48px !important;
}

@media (max-width: 768px) {
  .calculator-reference-services {
    --calculator-service-price-width: 82px;
  }

  .calculator-reference-services .calculator-base-service .calculator-packaging-select > summary {
    min-height: 46px !important;
    padding: 7px 8px !important;
  }

  .calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > small,
  .calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-packaging-summary],
  .calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-base-service-multiselect-summary],
  .calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-base-service-variant-summary] {
    font-size: 10px !important;
  }
}

/* Calculator selected services token styling v5 */
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > small,
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-packaging-summary],
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-base-service-multiselect-summary],
.calculator-reference-services .calculator-base-service .calculator-packaging-select > summary > [data-base-service-variant-summary] {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 3px 4px !important;
  color: #33465d !important;
}

/* Calculator additional services compact multi-pickup v6 */
.calculator-services-panel--addons {
  padding: 7px !important;
}

.calculator-services-panel--addons .calculator-services-panel-head {
  margin-bottom: 6px !important;
  gap: 7px !important;
}

.calculator-services-panel--addons .calculator-services-panel-title {
  gap: 6px !important;
}

.calculator-services-panel--addons .calculator-services-panel-index {
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  border-radius: 7px !important;
}

.calculator-services-panel--addons .calculator-services-panel-head h4 {
  font-size: 13px !important;
}

.calculator-services-panel--addons .calculator-services-panel-head p {
  margin-top: 1px !important;
  font-size: 9.5px !important;
  line-height: 1.25 !important;
}

.calculator-services-panel--addons .calculator-services-panel-badge {
  min-height: 21px !important;
  padding: 0 6px !important;
  font-size: 8px !important;
}

.calculator-additional-services .calculator-options-list {
  gap: 4px !important;
}

.calculator-additional-services .calculator-service-item {
  min-height: 38px !important;
  padding: 5px 7px !important;
  border-radius: 8px !important;
}

.calculator-additional-services .calculator-option-main {
  gap: 6px !important;
}

.calculator-additional-services .calculator-option-main > span {
  font-size: 11px !important;
  line-height: 1.2 !important;
}

.calculator-additional-services .calculator-option-price {
  font-size: 10.5px !important;
}

/* Pickup checkboxes are independent: no single-choice helper line. */
.calculator-service-item--pickup .calculator-option-main > span::after,
.calculator-service-item--pickup.is-selected-service .calculator-option-main > span::after {
  content: none !important;
  display: none !important;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item {
  row-gap: 4px !important;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-addon-counter {
  gap: 3px !important;
  padding: 2px !important;
  border-radius: 8px !important;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-addon-count-step {
  width: 27px !important;
  min-width: 27px !important;
  height: 27px !important;
  border-radius: 7px !important;
  font-size: 15px !important;
}

.calculator-additional-services .calculator-option-row-count.calculator-service-item .calculator-addon-count {
  width: 54px !important;
  min-width: 54px !important;
  height: 27px !important;
  padding: 0 3px !important;
  border-radius: 7px !important;
  font-size: 11px !important;
}

.calculator-service-subgroup {
  gap: 4px !important;
  padding: 5px !important;
  border-radius: 9px !important;
}

.calculator-service-subgroup > legend {
  padding: 0 3px !important;
  font-size: 9px !important;
}

.calculator-additional-services .calculator-option-row-select-count.calculator-service-item {
  row-gap: 4px !important;
}

@media (max-width: 768px) {
  .calculator-services-panel--addons {
    padding: 6px !important;
  }

  .calculator-additional-services .calculator-options-list {
    gap: 3px !important;
  }

  .calculator-additional-services .calculator-service-item {
    min-height: 36px !important;
    padding: 5px 6px !important;
  }
}
