/* Раскладка Bricks-элементов шаблона чекаута 1362 (kch*).
   Мета шаблона записана напрямую (мимо билдера), поэтому Bricks не
   сгенерировал CSS настроек элементов — дублируем здесь. Если шаблон
   пересохранить в билдере, правила Bricks продублируют эти (не конфликт). */

/* Сетка: контейнер 1015, колонки 50/50, gap 20 (desktop) */
@media (min-width: 768px) {
  #brxe-kchrow {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    column-gap: 20px;
  }
  #brxe-kchlft,
  #brxe-kchrgt {
    width: calc(50% - 10px);
    flex: 0 0 calc(50% - 10px);
  }
}

#brxe-kchrow {
  width: 100%;
  max-width: 1015px;
  margin-inline: auto;
}

/* Мобильно: колонки в столбик, сводка над формой */
@media (max-width: 767px) {
  #brxe-kchrow {
    flex-direction: column;
    row-gap: 24px;
  }
  #brxe-kchlft,
  #brxe-kchrgt {
    width: 100%;
  }
  #brxe-kchrgt {
    order: -1;
  }
}

/* Внутренний блок формы: дети растягиваются на всю ширину колонки
   (иначе flex-колонка Bricks сжимает Woo-контейнеры по контенту) */
#brxe-kchlft > .brxe-block {
  width: 100%;
  align-items: stretch;
}

/* Woo-контейнеры полей и order review — на всю ширину колонки */
form.woocommerce-checkout .woocommerce-billing-fields,
form.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
form.woocommerce-checkout .woocommerce-additional-fields,
form.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
form.woocommerce-checkout .woocommerce-checkout-review-order,
form.woocommerce-checkout .woocommerce-checkout-review-order-table {
  width: 100%;
}

/* Блок оплаты: без рамки и внутренних отступов — кнопка вровень с полями */
form.woocommerce-checkout #payment {
  padding: 0;
  border: none;
  box-shadow: none;
  background: transparent;
}

/* Заголовок «Доставка» */
#brxe-kchhdd {
  margin: 24px 0 16px;
  font-size: 24px;
}

/* Позиция сводки: картинка + инфо в строку, разделитель снизу */
.brxe-kchitm {
  flex-direction: row;
  flex-wrap: nowrap;
  column-gap: 20px;
  padding: 24px 0;
  border-bottom: 1px solid rgba(17, 17, 17, 0.21);
}

img.brxe-kchimg {
  width: 100px;
  height: 140px;
  max-width: 100px;
  max-height: 140px;
  object-fit: contain;
  background-color: var(--gray, #f5f5f5);
  border-radius: 8px;
  flex: 0 0 100px;
}

.brxe-kchinf {
  flex-direction: column;
  row-gap: 8px;
  flex-grow: 1;
}

.brxe-kchttl {
  font-size: 24px;
}

.brxe-kchqrw {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
}

.brxe-kchsbt {
  font-size: 24px;
  font-weight: 600;
}

#brxe-kchtot,
.brxe-kchtot {
  font-weight: 600;
  font-size: 14px;
  text-align: right;
  margin-top: 24px;
}

/* Степпер количества в сводке (− 1 +) */
.keelson-checkout-qty {
  display: inline-flex;
  align-items: stretch;
  box-sizing: border-box;
  width: 100px;
  height: 44px;
  border: 1px solid rgba(17, 17, 17, 0.2);
  border-radius: 4px;
  overflow: hidden;
  background: #fff;
}

.keelson-checkout-qty__btn {
  flex: 0 0 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #272727;
  font-size: 20px;
  font-weight: 300;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}

.keelson-checkout-qty__btn:hover,
.keelson-checkout-qty__btn:focus-visible {
  background: var(--gray, #f5f5f5);
}

.keelson-checkout-qty__btn:disabled {
  opacity: 0.5;
  cursor: default;
}

.keelson-checkout-qty__value {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: #272727;
}

/* ── Блок «Доставка»: радиокнопки во всю ширину под заголовком ──
   Ячейку-заголовок «Доставка» таблицы прячем (заголовок секции уже есть),
   строку доставки делаем блочной. */
form.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals {
  display: block;
  width: 100%;
}
form.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th {
  display: none;
}
form.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td {
  display: block;
  width: 100%;
  padding: 0 0 8px;
  text-align: left;
}

/* Строка «Итого»: сумма не переносится на вторую строку */
form.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
  white-space: nowrap;
}

/* Каждый метод — блоком: радио + лейбл в строку, допстрока («Бесплатно»,
   подпись про ТК) — ПОД лейблом (перебивает display:flex из style.css) */
form.woocommerce-checkout ul#shipping_method li {
  display: block;
  margin-bottom: 14px;
}
/* Радио (20px) равно высоте первой строки лейбла (20px) —
   выравнивание по верху центрирует его относительно первой строки */
form.woocommerce-checkout ul#shipping_method input[type="radio"] {
  margin-right: 10px;
  vertical-align: top;
  margin-top: 0;
}
form.woocommerce-checkout ul#shipping_method label {
  display: inline-block;
  vertical-align: top;
  max-width: calc(100% - 30px);
}

/* «Бесплатно» — под лейблом «Самовывоз» */
.keelson-shipping-free {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 400;
  color: #8f8f8f;
}

/* Подпись под методом «Доставка транспортной компанией» —
   блоком под радиокнопкой; отступ 23px = фактический старт текста лейбла
   (радио + его правый отступ), выровнено по левому краю лейбла */
.keelson-shipping-note {
  margin: 4px 0 0 23px;
  font-size: 12px;
  line-height: 1.4;
  color: #8f8f8f;
}
