/* dkr-checkout.css v2 — full koszyk recolor turkus → orange-gold
 * 2026-06-03 deploy 2 (после KOSZYK_COLOR_MAP.md)
 * Brand: #f0a020 main, #f5b341 light, #b87813 dark, #d99528 mid
 */

/* === Метод 1: переопределить CSS-переменные thecheckout — бьёт ~80% бирюзы === */
body#checkout #tc-checkout {
  --tc_blue: #f0a020;
  --tc_blue_hov: #b87813;
}

/* === Метод 4: специфичность матчит модульную (body#checkout #tc-checkout) === */
body#checkout #tc-checkout .btn,
body#checkout #tc-checkout .btn-primary,
body#checkout #tc-checkout button.btn,
body#checkout #tc-checkout input[type="submit"].btn {
  background: #f0a020 !important;
  border-color: #f0a020 !important;
  color: #fff !important;
}
body#checkout #tc-checkout .btn:hover,
body#checkout #tc-checkout .btn-primary:hover,
body#checkout #tc-checkout button.btn:hover {
  background: #b87813 !important;
  border-color: #b87813 !important;
}

/* === Метод 2: theme.css #17afa0 - целевые правила (scoped под checkout) === */
body#checkout #cart-subtotal-shipping .value { color: #f0a020 !important; }
body#checkout #tc-checkout #cart-subtotal-shipping .value { color: #f0a020 !important; }

body#checkout .product-flag.new,
body#checkout .product-flag.pack {
  background: #f0a020 !important;
  color: #fff !important;
}

/* current-price (хардкод в theme.css на #1a1a1a, но cute.less.css ставит var(--tc_blue) в koszyk) */
body#checkout #tc-checkout .checkout-block .cart-overview .product-line .product-price .current-price,
body#checkout #tc-checkout .product-price .current-price,
body#checkout #tc-checkout .current-price {
  color: #f0a020 !important;
}

/* Cart-total Razem do zapłaty */
body#checkout #tc-checkout .checkout-block .inner-area .cart-summary .card-totals-bg .card-block .cart-summary-line.cart-total .value,
body#checkout #tc-checkout .cart-summary-line.cart-total .value,
body#checkout #tc-checkout .cart-summary-line.cart-total strong { 
  color: #f0a020 !important; 
}

/* Hover на названии товара */
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-body .product-line-info.product-title a:hover,
body#checkout #tc-checkout .product-title a:hover { color: #f0a020 !important; }

/* Корзинка-удалить hover */
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-actions .remove-from-cart:hover,
body#checkout #tc-checkout .remove-from-cart:hover { color: #f0a020 !important; }
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-actions .remove-from-cart:hover svg,
body#checkout #tc-checkout .remove-from-cart:hover svg { fill: #f0a020 !important; }

/* Цена в product-line-actions */
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-actions .product-price { color: #f0a020 !important; }

/* Промокод/voucher */
body#checkout #tc-checkout .checkout-block .inner-area .cart-voucher .promo-discounts .cart-summary-line .code,
body#checkout #tc-checkout .promo-discounts .code { 
  color: #f0a020 !important; font-weight: 600; 
}
body#checkout #tc-checkout .checkout-block .inner-area .block-promo .cart-voucher .promo-name .cart-summary-line > div { color: #f0a020 !important; }

/* Login forgot-password hover */
body#checkout #tc-checkout .checkout-block #login-form .forgot-password a:hover { color: #f0a020 !important; }

/* === Payment options + Delivery radios === */
/* Radio checked (dot) */
body#checkout #tc-checkout .checkout-block .delivery-options > .delivery-option .shipping-radio .custom-radio input[type="radio"]:checked + span,
body#checkout #tc-checkout .checkout-block .payment-options .payment-option .payment-radio .custom-radio input[type="radio"]:checked + span {
  background: #f0a020 !important;
}

/* Delivery/Payment delay text */
body#checkout #tc-checkout .checkout-block .delivery-options > .delivery-option .delivery-option-delay .carrier-delay,
body#checkout #tc-checkout .checkout-block .payment-options .payment-option .payment-option-delay .payment-delay {
  color: #f0a020 !important;
}

/* paynow RODO link */
body#checkout #tc-checkout .checkout-block .payment-options .paynow-payment-form .paynow-payment-option-container .paynow-data-processing-info a {
  color: #f0a020 !important;
}

/* paynow PBL labels hover + checked */
body#checkout #tc-checkout .checkout-block .payment-options .paynow-payment-form .paynow-payment-option-container .paynow-payment-pbls label:hover,
body#checkout #tc-checkout .checkout-block .payment-options .paynow-payment-form .paynow-payment-option-container .paynow-payment-pbls input[type="radio"]:checked + label {
  border-color: #f0a020 !important;
}

/* === Метод 3: inline SVG background-image — заменить %232fb4d2 → %23f0a020 === */
/* Стрелка qty UP (active state) */
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-actions .product-line-qty .qty-box > a.cart-line-product-quantity-up:after {
  background-image: url('data:image/svg+xml;utf8,<svg fill="%23f0a020" width="15" height="15" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 455 455" style="enable-background:new 0 0 455 455" xml:space="preserve"><path d="M455 212.5H242.5V0h-30v212.5H0v30h212.5V455h30V242.5H455z"/></svg>') !important;
}
/* Стрелка qty DOWN (active state) */
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-actions .product-line-qty .qty-box > a.cart-line-product-quantity-down:after {
  background-image: url('data:image/svg+xml;utf8,<svg fill="%23f0a020" width="15" height="15" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 455 455" style="enable-background:new 0 0 455 455" xml:space="preserve"><path d="M0 212.5h455v30H0z"/></svg>') !important;
}

/* Checkbox checked фоновая иконка (галка) — если она была tc_blue */
body#checkout #tc-checkout .custom-checkbox input[type="checkbox"]:checked + span {
  background-color: #f0a020 !important;
}

/* === Label / link generic в чекауте === */
body#checkout #tc-checkout .label a,
body#checkout #tc-checkout label a {
  color: #f0a020;
}

/* Focus state на инпутах */
body#checkout #tc-checkout input:focus,
body#checkout #tc-checkout textarea:focus,
body#checkout #tc-checkout select:focus,
body#checkout #tc-checkout .form-control:focus {
  border-color: #f0a020 !important;
  box-shadow: 0 0 0 0.15rem rgba(240, 160, 32, 0.25) !important;
  outline: none !important;
}

/* SVG общие с fill #17afa0 или tc_blue */
body#checkout #tc-checkout svg[fill="#17afa0"],
body#checkout #tc-checkout svg [fill="#17afa0"],
body#checkout #tc-checkout svg[fill="#2fb4d2"],
body#checkout #tc-checkout svg [fill="#2fb4d2"] { fill: #f0a020 !important; }

body#checkout #tc-checkout svg[stroke="#17afa0"],
body#checkout #tc-checkout svg [stroke="#17afa0"],
body#checkout #tc-checkout svg[stroke="#2fb4d2"],
body#checkout #tc-checkout svg [stroke="#2fb4d2"] { stroke: #f0a020 !important; }

/* === Promo-code «Dodaj» кнопка (id="promo-code"): была var(--tc_dark) #515151, делаем brand orange === */
body#checkout #tc-checkout .checkout-block .inner-area .cart-voucher .promo-code .btn,
body#checkout #tc-checkout #promo-code .btn,
body#checkout #tc-checkout #promo-code button,
body#checkout #tc-checkout #promo-code input[type="submit"],
body#checkout #tc-checkout .promo-code button.btn,
body#checkout #tc-checkout .promo-code input[type="submit"].btn {
  background: #f0a020 !important;
  background-color: #f0a020 !important;
  border-color: #f0a020 !important;
  color: #fff !important;
  height: 42px !important;
}
body#checkout #tc-checkout .checkout-block .inner-area .cart-voucher .promo-code .btn:hover,
body#checkout #tc-checkout #promo-code .btn:hover,
body#checkout #tc-checkout #promo-code button:hover,
body#checkout #tc-checkout .promo-code .btn:hover {
  background: #b87813 !important;
  background-color: #b87813 !important;
  border-color: #b87813 !important;
}

/* === Carrier 107 (Odbiór osobisty, id_reference=1): подменяем старый бирюзовый logo на orange === */
body#checkout #tc-checkout .delivery-option.carrier-ref-1 .delivery-option-logo img {
  /* скрываем штатный <img> через scale=0 чтобы не сломать flex/размеры контейнера */
  width: 0 !important;
  height: 0 !important;
  visibility: hidden !important;
  position: absolute !important;
}
body#checkout #tc-checkout .delivery-option.carrier-ref-1 .delivery-option-logo {
  background-image: url("/themes/dobrekrzesla/assets/img/dkr-pickup-logo.png?v=koszyk7") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center left !important;
  min-width: 440px !important;
  width: 440px !important;
  min-height: 110px !important;
  height: 110px !important;
  display: inline-block !important;
}

/* === Smoke marker — видно что dkr-checkout v2 загружен === */
body#checkout #tc-checkout::before {
  content: "" !important;
  display: block !important;
  height: 3px !important;
  background: linear-gradient(90deg, #f0a020 0%, #f5b341 50%, #b87813 100%) !important;
  margin-bottom: 12px !important;
  border-radius: 2px !important;
}

/* ============================================================
   КОРЗИНА — 20% работы верстки (видимые изменения, без AJAX-рисков)
   v9 — progress bar + 2-col grid hint + sticky summary + dark CTA
   2026-06-03 ~05:30
   ============================================================ */

/* === Минимальный header — скрываем header сайта и категории на checkout === */
body#checkout .dkr-header,
body#checkout .page-header,
body#checkout header.dkr-header,
body#checkout #header,
body#checkout #_desktop_top_menu,
body#checkout .dkr-megamenu,
body#checkout .category-top-menu,
body#checkout .block-categories,
body#checkout #left-column,
body#checkout #right-column,
body#checkout .breadcrumb,
body#checkout .breadcrumb-wrapper {
  display: none !important;
}

/* header удалён — logo переехал внутрь progress-bar строки */
body#checkout::before {
  content: "" !important;
  display: block !important;
  height: 10px !important;
}

/* === Progress bar — реальный HTML с 3 шагами разных цветов === */
body#checkout .dkr-progress-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  max-width: 1200px !important;
  /* margin: 20px 0 30px !important; */
  /* padding: 18px 30px !important; */
  position: relative !important;
  margin-left: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: 'Poppins', sans-serif !important;
}
body#checkout .dkr-step {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2px !important;
  flex: 1 !important;
  justify-content: center !important;
}
body#checkout .dkr-step-num {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fff !important;
  flex-shrink: 0 !important;
}
/* Шаг ВЫПОЛНЕН — зелёный */
body#checkout .dkr-step--done { color: #1abc5b !important; }
body#checkout .dkr-step--done .dkr-step-num {
  background: #1abc5b !important;
  font-size: 16px !important;
}
/* Шаг АКТИВНЫЙ — оранж */
body#checkout .dkr-step--active { color: #f0a020 !important; }
body#checkout .dkr-step--active .dkr-step-num {
  background: #f0a020 !important;
  box-shadow: 0 0 0 3px rgba(240, 160, 32, 0.18) !important;
}
/* Шаг БУДУЩИЙ — серый */
body#checkout .dkr-step--pending { color: #999 !important; }
body#checkout .dkr-step--pending .dkr-step-num {
  background: #ccc !important;
}

@media (max-width: 575px) {
  body#checkout .dkr-progress-bar { padding: 12px 16px !important; gap: 6px !important; }
  body#checkout .dkr-step { font-size: 12px !important; gap: 6px !important; }
  body#checkout .dkr-step-num { width: 22px !important; height: 22px !important; font-size: 12px !important; }
  body#checkout .dkr-step-label { display: none !important; }
  /* На самом мелком — только пронумерованные кружки */
}

/* === 2-кол layout через CSS Grid (без DOM-перемещений) === */
@media (min-width: 992px) {
  body#checkout #tc-checkout > .checkout-process,
  body#checkout #tc-checkout > .checkout-area,
  body#checkout #tc-checkout > form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 380px !important;
    gap: 30px !important;
    max-width: 1280px !important;
    margin: 0 !important;
    padding-left: 30px !important;
    align-items: start !important;
  }
  
  /* Sticky podsumowanie zamówienia правая колонка */
  body#checkout #tc-checkout #thecheckout-cart-summary,
  body#checkout #tc-checkout .checkout-block.cart-summary,
  body#checkout #tc-checkout #thecheckout-payment {
    position: sticky !important;
    top: 100px !important;
    align-self: start !important;
    max-height: calc(100vh - 120px) !important;
    overflow-y: auto !important;
  }
}

/* === Карточка summary — белый фон, тонкая граница, тень === */
body#checkout #tc-checkout .checkout-block.main-block {
  background: #fff !important;
  border: 1px solid #ebebeb !important;
  border-radius: 8px !important;
  padding: 24px !important;
  margin-bottom: 16px !important;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
}

body#checkout #tc-checkout .checkout-block.main-block .block-header {
  border-bottom: 1px solid #f0f0f0 !important;
  padding-bottom: 16px !important;
  margin-bottom: 20px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  text-transform: none !important;
  letter-spacing: -0.2px !important;
}

/* === Главная CTA "Zamawiam" — тёмная как в макете Павла === */
body#checkout #tc-checkout #payment-confirmation .btn,
body#checkout #tc-checkout .ps-shown-by-js .btn[data-module-name],
body#checkout #tc-checkout button[type="submit"].btn-primary[id*="payment-confirmation"],
body#checkout #tc-checkout #payment-confirmation button.btn,
body#checkout #tc-checkout .btn-primary#js-payment-confirmation,
body#checkout #tc-checkout #js-payment-confirmation .btn {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
  border-color: #1a1a1a !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 18px 28px !important;
  border-radius: 6px !important;
  width: 100% !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important;
  letter-spacing: 0.3px !important;
  text-transform: none !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}
body#checkout #tc-checkout #payment-confirmation .btn:hover,
body#checkout #tc-checkout #js-payment-confirmation .btn:hover {
  background: #000 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.22) !important;
}

/* Иконка замка перед текстом (CSS unicode lock) */
body#checkout #tc-checkout #payment-confirmation .btn::before,
body#checkout #tc-checkout #js-payment-confirmation .btn::before {
  content: "🔒" !important;
  font-size: 14px !important;
  margin-right: 4px !important;
}

/* === Trust badges под CTA === */
body#checkout #tc-checkout #payment-confirmation::after,
body#checkout #tc-checkout #thecheckout-payment::after {
  content: "🔒 Bezpieczna płatność   ↺ 14 dni zwrotu   🎧 Wsparcie" !important;
  display: block !important;
  text-align: center !important;
  font-size: 12px !important;
  color: #666 !important;
  margin-top: 16px !important;
  padding: 12px !important;
  background: #fafafa !important;
  border-radius: 6px !important;
  letter-spacing: 0.2px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

/* === Trim padding в формах === */
body#checkout #tc-checkout .form-group { margin-bottom: 16px !important; }
body#checkout #tc-checkout .form-control {
  height: 48px !important;
  padding: 12px 16px !important;
  border-radius: 6px !important;
  border: 1px solid #e0e0e0 !important;
  font-size: 14px !important;
  transition: border-color 0.15s, box-shadow 0.15s !important;
}

/* === Inputs label — компактный, серый === */
body#checkout #tc-checkout label,
body#checkout #tc-checkout .form-group label {
  color: #555 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  margin-bottom: 6px !important;
}

/* === Cart summary card-totals — выделить сумму === */
body#checkout #tc-checkout .cart-summary-line.cart-total {
  padding-top: 14px !important;
  border-top: 1px solid #eee !important;
  margin-top: 8px !important;
}
body#checkout #tc-checkout .cart-summary-line.cart-total .value {
  font-size: 30px !important;
  font-weight: 800 !important;
}

/* === Mobile (CSS only, без JS sticky-bottom — это в день 2) === */
@media (max-width: 991px) {
  /* Золотая полоса-маркер (smoke marker) на мобиле раздувалась до 50px баннера
     над логотипом + лишний пробел сверху — убираем по просьбе Павла (2026-06-09) */
  body#checkout #tc-checkout::before,
  body#checkout #tc-checkout::after {
    display: none !important;
    content: none !important;
  }
  /* «Непонятный пробел» сверху: padding под скрытый хедер (57px) + body margin
     + 10px пустышка body::before — на мобиле обнуляем */
  body#checkout {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  body#checkout::before {
    display: none !important;
    content: none !important;
  }
  body#checkout #tc-checkout .checkout-block.main-block {
    padding: 18px !important;
  }
}


/* === Порядок блоков в чекауте: Adres dostawy наверх (как в макете Павла) === */
@media (min-width: 992px) {
  body#checkout #tc-checkout #thecheckout-address-delivery { order: 1 !important; }
  body#checkout #tc-checkout #thecheckout-account { order: 2 !important; }
  body#checkout #tc-checkout #thecheckout-address-invoice { order: 3 !important; }
  body#checkout #tc-checkout #thecheckout-shipping { order: 4 !important; }
  body#checkout #tc-checkout #thecheckout-payment { order: 5 !important; }
  body#checkout #tc-checkout #thecheckout-login-form { order: 6 !important; display: none !important; /* login - dyskretny link в Dane dostawy headerze (день 2) */ }
  body#checkout #tc-checkout #thecheckout-order-message { order: 7 !important; }
}

/* Logo рядом с шагами на одной линии — слева */
body#checkout .dkr-progress-bar::before {
  content: "" !important;
  display: inline-block !important;
  width: 200px !important;
  height: 50px !important;
  background: url("/themes/dobrekrzesla/assets/img/dkr-pickup-logo.png?v=koszyk7") no-repeat left center !important;
  background-size: contain !important;
  flex-shrink: 0 !important;
  margin-right: 40px !important;
  align-self: center !important;
}

/* === ШАГ 2 — «Masz konto?» dyskretny link в шапке Dane dostawy === */
/* login-form: убираем display:none и делаем компактным collapsible link */
body#checkout #tc-checkout #thecheckout-login-form {
  display: block !important;
  order: 0 !important; /* над всеми */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 0 -10px 0 !important;
  position: relative !important;
  z-index: 2 !important;
}
body#checkout #tc-checkout #thecheckout-login-form .block-header {
  display: none !important;
}
body#checkout #tc-checkout #thecheckout-login-form > .inner-area::before {
  content: "Masz konto?" !important;
  display: inline-block !important;
  font-size: 13px !important;
  color: #666 !important;
  margin-right: 8px !important;
  font-weight: 400 !important;
}
body#checkout #tc-checkout #thecheckout-login-form > .inner-area {
  position: absolute !important;
  top: 28px !important;
  right: 30px !important;
  width: auto !important;
}
/* Сам контент login-form скрыт, показываем "Zaloguj się ›" — клик раскрывает */
body#checkout #tc-checkout #thecheckout-login-form #login-form,
body#checkout #tc-checkout #thecheckout-login-form .login-form,
body#checkout #tc-checkout #thecheckout-login-form form {
  display: none !important;
}
/* Псевдо-кнопка "Zaloguj się ›" */
body#checkout #tc-checkout #thecheckout-login-form > .inner-area::after {
  content: "Zaloguj się ›" !important;
  display: inline-block !important;
  color: #f0a020 !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
body#checkout #tc-checkout #thecheckout-login-form:hover > .inner-area::after {
  color: #b87813 !important;
  text-decoration: underline !important;
}

/* === full-header (address-invoice _fullheader) — переместить вниз ближе к payment === */
body#checkout #tc-checkout .checkout-block.full-header,
body#checkout #tc-checkout .checkout-block._fullheader,
body#checkout #tc-checkout #thecheckout-address-invoice {
  order: 3 !important;
}

/* ============================================================
   ШАГ 3 — Sticky summary inside (v24, 2026-06-03 05:00)
   ============================================================ */
body#checkout #tc-checkout #thecheckout-cart-summary,
body#checkout #tc-checkout .checkout-block.cart-summary,
body#checkout #tc-checkout .card.cart-summary {
  background: #fff !important;
  border: 0 !important;
  border-radius: 8px !important;
  padding: 0 !important;
}
body#checkout #tc-checkout .cart-overview .product-line-image img,
body#checkout #tc-checkout .product-line-image img {
  width: 72px !important; height: 72px !important; object-fit: cover !important;
  border-radius: 8px !important; border: 1px solid #f0f0f0 !important;
  background: #fafafa !important; padding: 4px !important;
}
body#checkout #tc-checkout .product-line-info.product-title {
  font-size: 14px !important; font-weight: 700 !important; color: #1a1a1a !important;
}
body#checkout #tc-checkout .product-line-actions .product-line-qty .qty-box {
  border: 1px solid #e0e0e0 !important; border-radius: 6px !important;
  height: 38px !important; background: #fff !important; overflow: hidden !important;
}
body#checkout #tc-checkout .product-line-actions .product-line-qty .qty-box input.cart-line-product-quantity {
  height: 36px !important; font-size: 15px !important; font-weight: 600 !important;
  width: 40px !important; text-align: center !important; border: 0 !important; background: transparent !important;
}
body#checkout #tc-checkout .product-line-actions .product-line-qty .qty-box > a {
  width: 30px !important; height: 36px !important; background: #fafafa !important;
  border: 0 !important; cursor: pointer !important; position: relative !important;
}
body#checkout #tc-checkout .product-line-actions .product-line-qty .qty-box > a:hover {
  background: #fff3e0 !important;
}
body#checkout #tc-checkout .product-line-qty .qty-box > a.cart-line-product-quantity-up:before {
  content: "+" !important; position: absolute !important; top: 50% !important; left: 50% !important;
  transform: translate(-50%, -50%) !important; font-size: 18px !important; font-weight: 700 !important;
  color: #f0a020 !important;
}
body#checkout #tc-checkout .product-line-qty .qty-box > a.cart-line-product-quantity-down:before {
  content: "−" !important; position: absolute !important; top: 50% !important; left: 50% !important;
  transform: translate(-50%, -50%) !important; font-size: 20px !important; font-weight: 700 !important;
  color: #f0a020 !important;
}
body#checkout #tc-checkout .product-line-actions .product-price {
  font-size: 16px !important; font-weight: 700 !important; color: #1a1a1a !important; text-align: right !important;
}
body#checkout #tc-checkout .product-line-actions .remove-from-cart {
  width: 28px !important; height: 28px !important; border-radius: 50% !important;
  background: #fafafa !important; display: inline-flex !important; align-items: center !important;
  justify-content: center !important;
}
body#checkout #tc-checkout .product-line-actions .remove-from-cart:hover {
  background: #ffeded !important; color: #d32f2f !important;
}
body#checkout #tc-checkout .checkout-block .inner-area .cart-voucher .promo-code form {
  display: flex !important; gap: 8px !important; margin: 16px 0 !important;
  padding: 0 !important; position: static !important; max-width: none !important;
}
body#checkout #tc-checkout .cart-voucher .promo-code .promo-input,
body#checkout #tc-checkout .cart-voucher .promo-code input[type="text"] {
  flex: 1 !important; height: 42px !important; border-radius: 6px !important;
  padding: 8px 14px !important; font-size: 13px !important; border: 1px solid #e0e0e0 !important;
  background: #fafafa !important;
}
body#checkout #tc-checkout .cart-voucher .promo-code .btn {
  position: static !important; width: auto !important; min-width: 90px !important;
  height: 42px !important; padding: 8px 16px !important; border-radius: 6px !important;
  font-size: 13px !important; flex-shrink: 0 !important; text-transform: none !important;
}
body#checkout #tc-checkout .cart-summary-line {
  display: flex !important; justify-content: space-between !important;
  font-size: 14px !important; color: #555 !important; margin: 6px 0 !important;
}
body#checkout #tc-checkout .cart-summary-line .label { color: #888 !important; font-weight: 500 !important; }
body#checkout #tc-checkout .cart-summary-line .value { color: #1a1a1a !important; font-weight: 600 !important; }
body#checkout #tc-checkout .cart-summary-line.cart-total {
  padding-top: 14px !important; margin-top: 14px !important; border-top: 1px solid #f0f0f0 !important;
}
body#checkout #tc-checkout .cart-summary-line.cart-total .label {
  color: #1a1a1a !important; font-size: 16px !important; font-weight: 700 !important;
}
body#checkout #tc-checkout .checkout-block.cart-summary > .block-header::before {
  content: "Twoje zamówienie · " !important; color: #f0a020 !important;
}

/* ============================================================
   ШАГ 4 — Sposób dostawy radio polish (v25, 2026-06-03 05:55)
   ============================================================ */

/* Заголовок секции */
body#checkout #tc-checkout #thecheckout-shipping .block-header,
body#checkout #tc-checkout #thecheckout-shipping .shipping-method-header {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #1a1a1a !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #f0f0f0 !important;
  margin-bottom: 16px !important;
}

/* Контейнер delivery-options - без padding отдельных строк */
body#checkout #tc-checkout .delivery-options-list,
body#checkout #tc-checkout .delivery-options {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

/* Каждая строка carrier */
body#checkout #tc-checkout .delivery-option,
body#checkout #tc-checkout .delivery-option-row {
  display: grid !important;
  grid-template-columns: 28px 1fr auto !important;
  grid-template-areas: "radio name price" "radio delay price" !important;
  column-gap: 12px !important;
  row-gap: 2px !important;
  align-items: center !important;
  padding: 12px 16px !important;
  margin: 0 0 8px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s !important;
  cursor: pointer !important;
  position: relative !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-logo,
body#checkout #tc-checkout .delivery-option-row .carriers,
body#checkout #tc-checkout .delivery-option-row img { display: none !important; }
body#checkout #tc-checkout .delivery-option-row .delivery-option-label {
  grid-area: name !important; font-size: 14px !important; font-weight: 700 !important; color: #1a1a1a !important; line-height: 1.3 !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-delay,
body#checkout #tc-checkout .delivery-option-row .carrier-delay {
  grid-area: delay !important; font-size: 12px !important; color: #888 !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-price,
body#checkout #tc-checkout .delivery-option-row .carrier-price {
  grid-area: price !important; font-size: 14px !important; font-weight: 700 !important; color: #1a1a1a !important; white-space: nowrap !important; text-align: right !important;
}
body#checkout #tc-checkout .delivery-option-row .shipping-radio,
body#checkout #tc-checkout .delivery-option-row .custom-radio,
body#checkout #tc-checkout .delivery-option-row input[type="radio"] {
  grid-area: radio !important;
}
body#checkout #tc-checkout .delivery-option:hover,
body#checkout #tc-checkout .delivery-option-row:hover {
  border-color: #f0a020 !important;
  background: #fffaf2 !important;
}

/* Selected state */
body#checkout #tc-checkout .delivery-option.user-selected,
body#checkout #tc-checkout .delivery-option-row.user-selected,
body#checkout #tc-checkout .delivery-option:has(input[type="radio"]:checked) {
  border-color: #1a1a1a !important;
  background: #fafafa !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important;
}
body#checkout #tc-checkout .delivery-option.user-selected .delivery-option-label,
body#checkout #tc-checkout .delivery-option-row.user-selected .delivery-option-label {
  background: transparent !important;
}

/* Label занимает всю строку */
body#checkout #tc-checkout .delivery-option-label,
body#checkout #tc-checkout label.delivery-option-label {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  padding: 14px 18px !important;
  margin: 0 !important;
  cursor: pointer !important;
  background: transparent !important;
}

/* Radio circle styling - круглый стиль */
body#checkout #tc-checkout .delivery-options > .delivery-option .shipping-radio,
body#checkout #tc-checkout .delivery-option .shipping-radio,
body#checkout #tc-checkout .delivery-option .custom-radio {
  width: 20px !important;
  height: 20px !important;
  flex-shrink: 0 !important;
  margin-right: 16px !important;
  border: 2px solid #d0d0d0 !important;
  border-radius: 50% !important;
  background: #fff !important;
  position: relative !important;
  transition: border-color 0.15s !important;
}
body#checkout #tc-checkout .delivery-option.user-selected .shipping-radio,
body#checkout #tc-checkout .delivery-option .custom-radio:has(input[type="radio"]:checked) {
  border-color: #1a1a1a !important;
}
body#checkout #tc-checkout .delivery-options > .delivery-option .shipping-radio .custom-radio input[type="radio"]:checked + span {
  width: 10px !important;
  height: 10px !important;
  background: #1a1a1a !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 50% !important;
}

/* Название + delay (центральная область) */
body#checkout #tc-checkout .delivery-option-detail {
  display: flex !important;
  align-items: center !important;
  flex: 1 !important;
  gap: 14px !important;
  padding: 0 !important;
  background: transparent !important;
}
body#checkout #tc-checkout .delivery-option-name {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  line-height: 1.3 !important;
}
body#checkout #tc-checkout .delivery-option-delay,
body#checkout #tc-checkout .delivery-option .carrier-delay {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #888 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

/* Логотип перевозчика — слева в delivery-option-detail */
body#checkout #tc-checkout .delivery-option-logo {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
}
body#checkout #tc-checkout .delivery-option-logo img {
  max-width: 80px !important;
  max-height: 32px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Цена справа крупная */
body#checkout #tc-checkout .delivery-option .delivery-option-price,
body#checkout #tc-checkout .delivery-option-row .delivery-option-price,
body#checkout #tc-checkout .delivery-option .price {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  margin-left: auto !important;
  padding-left: 16px !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* removed dead :contains rule (v164) */

/* Mobile compact */
@media (max-width: 575px) {
  body#checkout #tc-checkout .delivery-option-label {
    padding: 12px 14px !important;
  }
  body#checkout #tc-checkout .delivery-option-name {
    font-size: 13px !important;
  }
  body#checkout #tc-checkout .delivery-option .delivery-option-price,
  body#checkout #tc-checkout .delivery-option .price {
    font-size: 14px !important;
    padding-left: 10px !important;
  }
}

/* ============================================================
   ШАГ 5 — Metoda płatności grid 2×2 (v26, 2026-06-03 06:42)
   ============================================================ */

body#checkout #tc-checkout #thecheckout-payment .block-header,
body#checkout #tc-checkout #thecheckout-payment .shipping-method-header {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #1a1a1a !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #f0f0f0 !important;
  margin-bottom: 16px !important;
}

/* Grid 2×2 для всего блока payment-options */
body#checkout #tc-checkout .checkout-block .payment-options,
body#checkout #tc-checkout #thecheckout-payment .payment-options {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

/* Каждая карточка способа оплаты */
body#checkout #tc-checkout .payment-options .payment-option,
body#checkout #tc-checkout .payment-options > li {
  display: flex !important;
  align-items: center !important;
  border: 1px solid #e8e8e8 !important;
  border-radius: 8px !important;
  background: #fff !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: border-color 0.15s, background 0.15s, box-shadow 0.15s !important;
  cursor: pointer !important;
  position: relative !important;
  min-height: 58px !important;
}
body#checkout #tc-checkout .payment-options .payment-option:hover {
  border-color: #f0a020 !important;
  background: #fffaf2 !important;
}

/* Selected state */
body#checkout #tc-checkout .payment-options .payment-option:has(input[type="radio"]:checked),
body#checkout #tc-checkout .payment-options .payment-option.user-selected,
body#checkout #tc-checkout .payment-options .payment-option.active {
  border-color: #1a1a1a !important;
  background: #fafafa !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important;
}

/* Label на всю карточку */
body#checkout #tc-checkout .payment-option label,
body#checkout #tc-checkout .payment-option .payment-option-label {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  padding: 14px 18px !important;
  margin: 0 !important;
  cursor: pointer !important;
  background: transparent !important;
}

/* Radio circle */
body#checkout #tc-checkout .payment-options .payment-option .payment-radio,
body#checkout #tc-checkout .payment-options .payment-option .custom-radio {
  width: 20px !important;
  height: 20px !important;
  flex-shrink: 0 !important;
  border: 2px solid #d0d0d0 !important;
  border-radius: 50% !important;
  background: #fff !important;
  position: relative !important;
  margin: 0 !important;
}
body#checkout #tc-checkout .payment-options .payment-option:has(input[type="radio"]:checked) .payment-radio,
body#checkout #tc-checkout .payment-options .payment-option:has(input[type="radio"]:checked) .custom-radio {
  border-color: #1a1a1a !important;
}
body#checkout #tc-checkout .checkout-block .payment-options .payment-option .payment-radio .custom-radio input[type="radio"]:checked + span {
  width: 10px !important;
  height: 10px !important;
  background: #1a1a1a !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 50% !important;
}

/* Logo способа оплаты */
body#checkout #tc-checkout .payment-option .payment-option-logo {
  display: flex !important;
  align-items: center !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}
body#checkout #tc-checkout .payment-option .payment-option-logo img {
  max-width: 64px !important;
  max-height: 28px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Название способа оплаты */
body#checkout #tc-checkout .payment-option .payment-option-name {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  line-height: 1.3 !important;
  flex: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* paynow-PBL панель (списка банков) - сжимать */
body#checkout #tc-checkout .payment-options .paynow-payment-form .paynow-payment-pbls {
  margin-top: 12px !important;
  grid-column: span 1 !important;
}
body#checkout #tc-checkout .payment-options .paynow-payment-form .paynow-payment-pbls label {
  border-radius: 6px !important;
  transition: border-color 0.15s !important;
}

/* Mobile: одной колонкой */
@media (max-width: 575px) {
  body#checkout #tc-checkout .checkout-block .payment-options,
  body#checkout #tc-checkout #thecheckout-payment .payment-options {
    grid-template-columns: 1fr !important;
  }
  body#checkout #tc-checkout .payment-option label {
    padding: 12px 14px !important;
  }
  body#checkout #tc-checkout .payment-option .payment-option-name {
    font-size: 13px !important;
  }
}

/* ============================================================
   ШАГ 6 — Adres dostawy: 2-кол grid под макет Павла (v27, 13:55)
   ============================================================ */

/* Заголовок секции DANE DOSTAWY — компактный uppercase */
body#checkout #tc-checkout #thecheckout-address-delivery .block-header,
body#checkout #tc-checkout #thecheckout-address-delivery .checkout-address-header {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #1a1a1a !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #f0f0f0 !important;
  margin-bottom: 20px !important;
}

/* Контейнер формы — CSS grid 2-кол с responsive переключателем */
body#checkout #tc-checkout #thecheckout-address-delivery .form-fields,
body#checkout #tc-checkout #thecheckout-address-delivery form,
body#checkout #tc-checkout #thecheckout-address-delivery .js-address-form {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px 16px !important;
}

/* Каждая form-group — по умолчанию занимает 1 col */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group {
  margin: 0 !important;
  grid-column: span 1 !important;
}

/* Поля которые на ПОЛНУЮ ширину (как в макете): email, ulica/numer, telefon, dodatkowe pola, button */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="email"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="address1"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="address2"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="phone"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="phone_mobile"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="alias"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="company"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="dni_number"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="vat_number"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="other"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[type="email"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="address1"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="phone"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="phone_mobile"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-footer,
body#checkout #tc-checkout #thecheckout-address-delivery .clearfix:has(button) {
  grid-column: span 1 !important;
}

/* Label сверху (как в макете koszyk2.webp где label - small grey над полем) */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group label,
body#checkout #tc-checkout #thecheckout-address-delivery .form-group .form-control-label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #888 !important;
  margin-bottom: 6px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* Input стилизация (как в макете - чистая граница + размер) */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group input,
body#checkout #tc-checkout #thecheckout-address-delivery .form-group select,
body#checkout #tc-checkout #thecheckout-address-delivery .form-group textarea,
body#checkout #tc-checkout #thecheckout-address-delivery .form-control {
  height: 48px !important;
  width: 100% !important;
  padding: 12px 16px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  background: #fff !important;
  font-size: 14px !important;
  color: #1a1a1a !important;
  transition: border-color 0.15s, box-shadow 0.15s !important;
}
body#checkout #tc-checkout #thecheckout-address-delivery .form-group input:focus,
body#checkout #tc-checkout #thecheckout-address-delivery .form-control:focus {
  border-color: #f0a020 !important;
  box-shadow: 0 0 0 0.15rem rgba(240, 160, 32, 0.18) !important;
  outline: none !important;
}

/* Placeholder light grey (как в макете "Jan", "Kowalski") */
body#checkout #tc-checkout #thecheckout-address-delivery input::placeholder,
body#checkout #tc-checkout #thecheckout-address-delivery .form-control::placeholder {
  color: #b8b8b8 !important;
  font-weight: 400 !important;
}

/* Поле телефона с префиксом — flex row */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group label.dflex {
  display: flex !important;
  align-items: stretch !important;
}
body#checkout #tc-checkout #thecheckout-address-delivery .form-group label.dflex > .country-call-prefix {
  height: 48px !important;
  top: 0 !important;
  background: #f5f5f5 !important;
  border: 1px solid #e0e0e0 !important;
  border-right: 0 !important;
  border-radius: 6px 0 0 6px !important;
  color: #666 !important;
  font-size: 14px !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  left: 0 !important;
}

/* Звёздочка обязательного поля — light orange */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group label .required,
body#checkout #tc-checkout #thecheckout-address-delivery label sup.required {
  color: #f0a020 !important;
  font-weight: 600 !important;
}

/* Кнопка "Zapisz adres" внизу формы — компактная inline */
body#checkout #tc-checkout #thecheckout-address-delivery .form-footer button,
body#checkout #tc-checkout #thecheckout-address-delivery .form-footer .btn {
  width: auto !important;
  min-width: 160px !important;
  height: 44px !important;
  margin-top: 8px !important;
  font-size: 13px !important;
}

/* Mobile <575: всё в 1 кол */
@media (max-width: 575px) {
  body#checkout #tc-checkout #thecheckout-address-delivery .form-fields,
  body#checkout #tc-checkout #thecheckout-address-delivery form {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  body#checkout #tc-checkout #thecheckout-address-delivery .form-group {
    grid-column: span 1 !important;
  }
}

/* ============================================================
   ШАГ 7 — Trust badges 3 квадратика (v28, 2026-06-03 14:35)
   ============================================================ */

/* Скрыть старый ::after с одной строкой */
body#checkout #tc-checkout #payment-confirmation::after,
body#checkout #tc-checkout #thecheckout-payment::after {
  content: none !important;
  display: none !important;
}

/* Grid 3 квадратика */
body#checkout .dkr-trust-badges {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 8px !important;
  margin: 16px 0 !important;
}

/* Каждый квадратик */
body#checkout .dkr-trust-badge {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 14px 8px !important;
  background: #fafafa !important;
  border: 1px solid #f0f0f0 !important;
  border-radius: 8px !important;
  text-align: center !important;
  min-height: 78px !important;
}

/* Иконка-emoji 28px */
body#checkout .dkr-trust-icon {
  font-size: 22px !important;
  line-height: 1 !important;
  display: block !important;
  color: #f0a020 !important;
  font-weight: 600 !important;
}

/* Текст 11px серый */
body#checkout .dkr-trust-label {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #666 !important;
  line-height: 1.3 !important;
  text-transform: none !important;
  letter-spacing: 0.1px !important;
}

/* Mobile <575: уменьшаем padding */
@media (max-width: 575px) {
  body#checkout .dkr-trust-badges { gap: 6px !important; margin: 12px 0 !important; }
  body#checkout .dkr-trust-badge { padding: 10px 4px !important; min-height: 66px !important; }
  body#checkout .dkr-trust-icon { font-size: 18px !important; }
  body#checkout .dkr-trust-label { font-size: 10px !important; }
}

/* ============================================================
   ШАГ 8 — RODO одной строкой + newsletter compact (v29, 15:20)
   ============================================================ */

/* Скрыть обязательные checkbox согласий (regulamin, услуги) — заменены текстом */
body#checkout #tc-checkout .checkbox-field.required-checkbox,
body#checkout #tc-checkout .module-account-fields.required-checkbox-1,
body#checkout #tc-checkout .module-account-fields.required-checkbox-2,
body#checkout #tc-checkout .module-account-fields.required-checkbox-3,
body#checkout #tc-checkout .module-account-fields.required-checkbox-4,
body#checkout #tc-checkout [class*="required-checkbox"] {
  display: none !important;
}

/* RODO text под CTA */
body#checkout .dkr-rodo-text {
  font-size: 11px !important;
  line-height: 1.5 !important;
  color: #888 !important;
  text-align: center !important;
  margin: 12px 8px 8px !important;
  padding: 0 !important;
  letter-spacing: 0.1px !important;
}
body#checkout .dkr-rodo-text a {
  color: #f0a020 !important;
  text-decoration: underline !important;
  font-weight: 500 !important;
}
body#checkout .dkr-rodo-text a:hover {
  color: #b87813 !important;
}

/* Newsletter checkbox — компактный (если psgdpr или похожий рендерит) */
body#checkout #tc-checkout .gdpr-fields,
body#checkout #tc-checkout .psgdpr_consent_message,
body#checkout #tc-checkout .checkbox-newsletter,
body#checkout #tc-checkout .form-group:has(input[name*="newsletter"]),
body#checkout #tc-checkout .form-group:has(input[name*="optin"]),
body#checkout #tc-checkout .form-group:has(input[name*="psgdpr"]) {
  margin: 8px 0 !important;
  padding: 10px 12px !important;
  background: #fafafa !important;
  border: 1px solid #f0f0f0 !important;
  border-radius: 6px !important;
}
body#checkout #tc-checkout .gdpr-fields label,
body#checkout #tc-checkout .psgdpr_consent_message label,
body#checkout #tc-checkout .checkbox-newsletter label,
body#checkout #tc-checkout .form-group:has(input[name*="newsletter"]) label,
body#checkout #tc-checkout .form-group:has(input[name*="optin"]) label,
body#checkout #tc-checkout .form-group:has(input[name*="psgdpr"]) label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  color: #666 !important;
  font-weight: 400 !important;
  margin: 0 !important;
  cursor: pointer !important;
  text-transform: none !important;
}
body#checkout #tc-checkout .gdpr-fields input[type="checkbox"],
body#checkout #tc-checkout .form-group:has(input[name*="newsletter"]) input[type="checkbox"],
body#checkout #tc-checkout .form-group:has(input[name*="psgdpr"]) input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  margin: 1px 0 0 !important;
  flex-shrink: 0 !important;
  accent-color: #f0a020 !important;
}

/* Mobile */
@media (max-width: 575px) {
  body#checkout .dkr-rodo-text { font-size: 10px !important; margin: 10px 4px 6px !important; }
}

/* ============================================================
   ШАГ 9 — Заголовки секций polish + Twoje zamówienie (v30, 16:00)
   ============================================================ */

/* Универсальный стиль заголовка секции в чекауте */
body#checkout #tc-checkout .checkout-block.main-block > .block-header,
body#checkout #tc-checkout .checkout-block .block-header,
body#checkout #tc-checkout .shipping-method-header,
body#checkout #tc-checkout .checkout-address-header,
body#checkout #tc-checkout .checkout-block.main-block .header-nobord .block-header {
  display: block !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #1a1a1a !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #f0f0f0 !important;
  margin-bottom: 18px !important;
  margin-top: 0 !important;
  line-height: 1.4 !important;
  background: transparent !important;
}

/* Тонкий орнамент-точка слева перед заголовком (как в макете «● DANE DOSTAWY») */
body#checkout #tc-checkout .checkout-block.main-block > .block-header::before,
body#checkout #tc-checkout .shipping-method-header::before {
  content: "●" !important;
  display: inline-block !important;
  color: #f0a020 !important;
  font-size: 10px !important;
  margin-right: 8px !important;
  vertical-align: 2px !important;
}

/* Внутренняя обертка strong внутри заголовков thecheckout - inherit */
body#checkout #tc-checkout .block-header strong,
body#checkout #tc-checkout .block-header b,
body#checkout #tc-checkout .shipping-method-header strong,
body#checkout #tc-checkout .shipping-method-header b {
  font-weight: 700 !important;
  font-size: inherit !important;
  color: inherit !important;
  text-transform: inherit !important;
  letter-spacing: inherit !important;
}

/* Twoje zamówienie - заголовок sticky panel над cart-summary */
body#checkout #tc-checkout #thecheckout-cart-summary > .checkout-block::before,
body#checkout #tc-checkout .checkout-block.cart-summary::before,
body#checkout #tc-checkout #thecheckout-cart-summary::before {
  content: "Twoje zamówienie" !important;
  display: block !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #1a1a1a !important;
}

/* Скрыть native block-header у cart-summary (мы заменили через ::before) */
body#checkout #tc-checkout .checkout-block.cart-summary > .block-header {
  display: none !important;
}

/* Точка-маркер перед Twoje zamówienie */
body#checkout #tc-checkout #thecheckout-cart-summary > .checkout-block::after,
body#checkout #tc-checkout .checkout-block.cart-summary::after {
  content: "" !important;
}
body#checkout #tc-checkout .checkout-block.cart-summary {
  position: relative !important;
}

/* ============================================================
   ШАГ 10 — Adres dostawy fine-tune: 6-col base grid (v31, 16:40)
   kod pocztowy 1/3 + miasto 2/3, как в макете Павла
   ============================================================ */

/* v134/v136: 10col grid для гибких пропорций (50/50, 30/70 и т.д.) */
body#checkout #tc-checkout #thecheckout-address-delivery .form-fields {
  display: grid !important;
  grid-template-columns: repeat(10, 1fr) !important;
  gap: 14px 16px !important;
  width: 100% !important;
  max-width: 100% !important;
}
body#checkout #tc-checkout #thecheckout-address-delivery form,
body#checkout #tc-checkout #thecheckout-address-delivery .js-address-form {
  display: block !important;
  grid-template-columns: none !important;
}

/* Default: form-group = span 5 (50%) в 10-col grid */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group {
  grid-column: span 5 !important;
  width: 100% !important;
  flex-basis: auto !important;
}

/* Полная ширина — span 6 */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="email"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="address1"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="address2"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="alias"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="company"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="dni_number"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="vat_number"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="other"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[type="email"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="address1"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="address2"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="company"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="vat_number"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-footer,
body#checkout #tc-checkout #thecheckout-address-delivery .clearfix:has(button) {
  grid-column: 1 / -1 !important;
}

/* v136: Kod pocztowy 30% + order 1 (сначала) */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="postcode"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="postal"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group.postcode,
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="postcode"]) {
  grid-column: span 3 !important;
  order: 1 !important;
}

/* v136: Miasto/City 70% + order 2 (после Kod pocztowy) */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="city"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group.city,
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="city"]) {
  grid-column: span 7 !important;
  order: 2 !important;
}

/* v137: Telefon full + order 3 (после Kod/Miasto, в самом низу) */
body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="phone"],
body#checkout #tc-checkout #thecheckout-address-delivery .form-group.phone,
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="phone"]),
body#checkout #tc-checkout #thecheckout-address-delivery .form-group:has(input[name="phone_mobile"]) {
  grid-column: 1 / -1 !important;
  order: 3 !important;
}

/* Mobile <575: всё 1 col (span 6 на 6-col grid) */
@media (max-width: 575px) {
  body#checkout #tc-checkout #thecheckout-address-delivery .form-group,
  body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="postcode"],
  body#checkout #tc-checkout #thecheckout-address-delivery .form-group[id*="city"] {
    grid-column: 1 / -1 !important;
  }
}

/* ============================================================
   ШАГ 11 — Mobile pass (v32, 17:20)
   ============================================================ */

/* ≤991: Off sticky (одна колонка) */
@media (max-width: 991px) {
  body#checkout #tc-checkout > .checkout-process,
  body#checkout #tc-checkout > .checkout-area,
  body#checkout #tc-checkout > form {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  body#checkout #tc-checkout #thecheckout-cart-summary,
  body#checkout #tc-checkout .checkout-block.cart-summary,
  body#checkout #tc-checkout #thecheckout-payment {
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* ≤767: Progress bar compact 50px, лого меньше */
@media (max-width: 767px) {
  body#checkout .dkr-progress-bar {
    padding: 10px 16px !important;
    gap: 4px !important;
  }
  body#checkout .dkr-progress-bar::before {
    width: 110px !important;
    height: 32px !important;
    margin-right: 12px !important;
  }
  body#checkout .dkr-step {
    font-size: 11px !important;
    gap: 5px !important;
  }
  body#checkout .dkr-step-num {
    width: 22px !important;
    height: 22px !important;
    font-size: 11px !important;
  }
}

/* ≤575: Mobile compact */
@media (max-width: 575px) {
  body#checkout .dkr-progress-bar {
    padding: 8px 12px !important;
  }
  body#checkout .dkr-progress-bar::before {
    width: 90px !important;
    height: 26px !important;
    margin-right: 8px !important;
  }
  body#checkout .dkr-step-label {
    display: none !important;
  }
  body#checkout .dkr-step-num {
    width: 20px !important;
    height: 20px !important;
    font-size: 10px !important;
  }
  body#checkout #tc-checkout .checkout-block.main-block,
  body#checkout #tc-checkout .checkout-block.cart-summary {
    padding: 16px !important;
    border-radius: 8px !important;
  }
  /* Trust badges 1 col, потому что на узком 3 в ряд нечитаемо */
  body#checkout .dkr-trust-badges {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 4px !important;
  }
  body#checkout .dkr-trust-badge {
    padding: 8px 4px !important;
    min-height: 58px !important;
  }
  body#checkout .dkr-trust-icon { font-size: 16px !important; }
  body#checkout .dkr-trust-label { font-size: 9px !important; }
}

/* Bottom-fixed CTA на мобильном (≤991: sticky-column схлопывается)
   Прикрепляем CTA к bottom screen для visibility */
@media (max-width: 991px) {
  body#checkout #tc-checkout #payment-confirmation,
  body#checkout #tc-checkout #js-payment-confirmation {
    position: sticky !important;
    bottom: 0 !important;
    background: #fff !important;
    padding: 12px 16px !important;
    margin: 0 -16px -16px !important;
    border-top: 1px solid #ebebeb !important;
    z-index: 998 !important;
    box-shadow: 0 -2px 8px rgba(0,0,0,0.05) !important;
  }
}

/* iOS keyboard fix — при touch-устройстве CTA остаётся в потоке (не sticky)
   чтобы клавиатура не перекрывала. */
@media (pointer: coarse) and (max-height: 600px) {
  body#checkout #tc-checkout #payment-confirmation,
  body#checkout #tc-checkout #js-payment-confirmation {
    position: static !important;
    margin: 16px 0 !important;
    box-shadow: none !important;
  }
}

/* Summary collapse на мобильном: «Pokaż zamówienie» через details/summary */
@media (max-width: 991px) {
  body#checkout #tc-checkout .checkout-block.cart-summary::before {
    cursor: pointer !important;
  }
  body#checkout #tc-checkout .checkout-block.cart-summary::before {
    content: "Twoje zamówienie ▾" !important;
  }
}

/* Cookiebot не перекрывает CTA */
body#checkout #CybotCookiebotDialog ~ #tc-checkout {
  padding-bottom: 80px !important;
}

/* ============================================================
   ШАГ 12 — Финальные micro-tweaks день 1 (v33, 17:55)
   ============================================================ */

/* Глобальная типографика чекаута */
body#checkout #tc-checkout,
body#checkout #tc-checkout * {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

body#checkout #tc-checkout {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: #1a1a1a !important;
  line-height: 1.5 !important;
}

/* Базовый отступ между блоками - 16px */
body#checkout #tc-checkout .checkout-block.main-block {
  margin-bottom: 16px !important;
}
body#checkout #tc-checkout .checkout-block.main-block:last-child {
  margin-bottom: 0 !important;
}

/* === Validation error state === */
body#checkout #tc-checkout .form-group.has-error input,
body#checkout #tc-checkout .form-group.has-error select,
body#checkout #tc-checkout .form-group.has-error textarea,
body#checkout #tc-checkout .form-group .has-error,
body#checkout #tc-checkout input.is-invalid,
body#checkout #tc-checkout .invalid-feedback ~ input,
body#checkout #tc-checkout input[aria-invalid="true"] {
  border-color: #e74c3c !important;
  background: #fff8f8 !important;
}

body#checkout #tc-checkout .form-group.has-error label,
body#checkout #tc-checkout .form-group.has-error .help-block,
body#checkout #tc-checkout .invalid-feedback,
body#checkout #tc-checkout .error-msg,
body#checkout #tc-checkout .field-error,
body#checkout #tc-checkout small.text-danger {
  color: #e74c3c !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  margin-top: 4px !important;
  display: block !important;
}

/* === Loading/skeleton state === */
body#checkout #tc-checkout .loading,
body#checkout #tc-checkout .ajax-loading,
body#checkout #tc-checkout .blockUI {
  opacity: 0.6 !important;
  pointer-events: none !important;
  filter: blur(0.5px) !important;
  transition: opacity 0.2s !important;
}

/* Пульсирующий спиннер */
body#checkout #tc-checkout .blockOverlay,
body#checkout #tc-checkout .ajax-spinner {
  background: rgba(255,255,255,0.6) !important;
  position: absolute !important;
  inset: 0 !important;
}

/* === Empty cart message === */
body#checkout #tc-checkout .cart-empty-message,
body#checkout #tc-checkout .empty-cart {
  text-align: center !important;
  padding: 60px 20px !important;
  font-size: 16px !important;
  color: #888 !important;
}

/* === Скрыть tooltip arrows и лишние bootstrap твики === */
body#checkout #tc-checkout .tooltip-arrow,
body#checkout #tc-checkout .arrow,
body#checkout #tc-checkout [data-toggle="tooltip"]::before {
  display: none !important;
}

/* === Outline focus для accessibility (tab-навигация) === */
body#checkout #tc-checkout *:focus-visible {
  outline: 2px solid #f0a020 !important;
  outline-offset: 2px !important;
}

/* === SVG иконки в чекауте unified === */
body#checkout #tc-checkout svg {
  display: inline-block !important;
  vertical-align: middle !important;
}

/* === Скрыть избыточный шум: card-header дубликаты, decorative h2 === */
body#checkout #tc-checkout .block-header + .block-header,
body#checkout #tc-checkout .checkout-block .h1,
body#checkout #tc-checkout .checkout-block > h2:empty {
  display: none !important;
}

/* === Smooth scroll для anchor-jumps === */
body#checkout html, body#checkout {
  scroll-behavior: smooth !important;
}

/* === Mobile fine: tap targets ≥44px (WCAG) === */
@media (pointer: coarse) {
  body#checkout #tc-checkout a,
  body#checkout #tc-checkout button,
  body#checkout #tc-checkout input[type="checkbox"],
  body#checkout #tc-checkout input[type="radio"] {
    min-height: 24px !important;
  }
  body#checkout #tc-checkout .btn {
    min-height: 44px !important;
  }
}

/* ============================================================
   FIX — Adres dostawy → начало (v34, 18:10)
   Превращаем .blocks-колонки в flex column чтобы order работал.
   ============================================================ */

/* Внешняя структура thecheckout: #tc-checkout > .blocks.checkout-area-N */
body#checkout #tc-checkout .blocks,
body#checkout #tc-checkout > .blocks {
  display: flex !important;
  flex-direction: column !important;
}

/* Скрыть placeholder div'ы (.tc-block-placeholder) — пустые, портят порядок */
body#checkout #tc-checkout .tc-block-placeholder {
  display: none !important;
  order: 999 !important;
}

/* Order для блоков — Adres dostawy первый */
body#checkout #tc-checkout #thecheckout-address-delivery { order: 1 !important; }
body#checkout #tc-checkout #thecheckout-account { order: 2 !important; }
body#checkout #tc-checkout #thecheckout-address-invoice { order: 3 !important; }
body#checkout #tc-checkout #thecheckout-shipping { order: 4 !important; }
body#checkout #tc-checkout #thecheckout-payment { order: 5 !important; }
body#checkout #tc-checkout #thecheckout-order-message { order: 6 !important; }

/* Login-form spec: dyskretny link уже у нас (Шаг 2), order 0 чтобы был наверху как абсолют */
body#checkout #tc-checkout #thecheckout-login-form { order: 0 !important; }

/* Скрыть html-box-1..4 placeholder если пустые */
body#checkout #tc-checkout [id*="thecheckout-html-box"]:empty,
body#checkout #tc-checkout [id*="thecheckout-required-checkbox"]:empty {
  display: none !important;
}

/* Cart-summary всегда в своей колонке — high order чтобы не мешал */
body#checkout #tc-checkout #thecheckout-cart-summary { order: 100 !important; }

/* ============================================================
   FIX — Twój koszyk (cart-summary) перенести в правую колонку (v35, 18:20)
   ============================================================ */

/* На десктопе ≥992: cart-summary всегда в правой колонке через grid-column */
@media (min-width: 992px) {
  body#checkout #tc-checkout #thecheckout-cart-summary,
  body#checkout #tc-checkout .checkout-block.cart-summary {
    grid-column: 2 !important;
    grid-row: 1 / span 99 !important;
    order: -1 !important;
    position: sticky !important;
    top: 20px !important;
    align-self: start !important;
    max-height: calc(100vh - 40px) !important;
    overflow-y: auto !important;
  }
  /* Левая колонка - все формы */
  body#checkout #tc-checkout #thecheckout-address-delivery,
  body#checkout #tc-checkout #thecheckout-account,
  body#checkout #tc-checkout #thecheckout-address-invoice,
  body#checkout #tc-checkout #thecheckout-shipping,
  body#checkout #tc-checkout #thecheckout-payment,
  body#checkout #tc-checkout #thecheckout-order-message,
  body#checkout #tc-checkout #thecheckout-login-form {
    grid-column: 1 !important;
  }
  /* На контейнере — grid с 2 колонками */
  body#checkout #tc-checkout > .blocks,
  body#checkout #tc-checkout .blocks {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 380px !important;
    gap: 24px !important;
    align-items: start !important;
  }
}

/* ============================================================
   BUGFIX v37 — защита модалов thecheckout от наших !important
   ============================================================ */
body#checkout .popup-payment-form,
body#checkout .popup-embed,
body#checkout iframe.popup-embed,
body#checkout #p24-modal,
body#checkout #p24-blur,
body#checkout #p24-raty-calculator,
body#checkout .paynow-popup,
body#checkout .blik-popup,
body#checkout [class*="modal"][role="dialog"],
body#checkout .modal-backdrop,
body#checkout #CybotCookiebotDialog {
  /* возвращаем normalize чтобы модалы не получали наш CSS */
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: 1.5 !important;
}
body#checkout .popup-payment-form *,
body#checkout #p24-modal *,
body#checkout .paynow-popup * {
  font-family: inherit !important;
  box-sizing: border-box !important;
}

/* Z-index hierarchy: P24 modal > sticky CTA > Cookiebot */
body#checkout #p24-modal,
body#checkout .popup-payment-form,
body#checkout .paynow-popup {
  z-index: 2147483639 !important; /* меньше чем Cookiebot 2147483640 */
}

/* Bottom-fixed CTA на mobile - меньше чем модал чтоб не перекрывал BLIK */
@media (max-width: 991px) {
  body#checkout #tc-checkout #payment-confirmation {
    z-index: 998 !important;
  }
}


/* v75 — стили для кликабельного mockup #dkr-mockup */

/* Скрываем SVG-wireframe v74 (заменён HTML-мокапом) */
body#checkout .dkr-progress-bar::after { content: none !important; }
body#checkout .dkr-progress-bar { margin-bottom: 0 !important; }

/* Контейнер */
#dkr-mockup {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 32px;
  width: min(1280px, 94vw);
  margin: 32px auto 64px;
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  color: #1a1a1a;
  position: relative;
  z-index: 5;
}

@media (max-width: 991px) {
  #dkr-mockup { grid-template-columns: 1fr; gap: 20px; }
}

/* Карточка */
.dkr-mk-card {
  background: #fff;
  border: 1px solid #ebebeb;
  border-radius: 12px;
  padding: 7px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
  margin-bottom: 24px;
}
.dkr-mk-card:last-child { margin-bottom: 0; }
.dkr-mk-h {
  font-size: 19px;
  font-weight: 700;
  margin: 0 0 20px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eee;
  color: #1a1a1a;
}

/* Поля */
.dkr-mk-field { display: block; margin-bottom: 16px; }
.dkr-mk-field:last-child { margin-bottom: 0; }
.dkr-mk-lbl {
  display: block;
  font-size: 12px;
  font-weight: 500;
  color: #888;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 6px;
}
.dkr-mk-field input {
  width: 100%;
  height: 44px;
  padding: 0 14px;
  background: #fafafa;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  font: inherit;
  font-size: 14px;
  color: #222;
  transition: border-color .15s, background .15s;
}
.dkr-mk-field input:focus {
  outline: 0;
  border-color: #f0a020;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(240,160,32,0.12);
}

.dkr-mk-grid2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 16px;
}
.dkr-mk-grid2:last-child { margin-bottom: 0; }
.dkr-mk-grid2 .dkr-mk-field { margin-bottom: 0; }

.dkr-mk-grid21 {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 16px;
  margin-bottom: 16px;
}
.dkr-mk-grid21 .dkr-mk-field { margin-bottom: 0; }

@media (max-width: 567px) {
  .dkr-mk-grid2, .dkr-mk-grid21 { grid-template-columns: 1fr; }
}

/* Радио (delivery / payment) */
.dkr-mk-list { display: flex; flex-direction: column; gap: 0; }
.dkr-mk-radio {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid #eee;
  cursor: pointer;
  transition: background .15s;
}
.dkr-mk-radio:last-child { border-bottom: 0; }
.dkr-mk-radio:hover { background: #fffaf0; margin: 0 -28px; padding-left: 28px; padding-right: 28px; }
.dkr-mk-rb {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1.5px solid #d4d4d4;
  background: #fff;
  flex-shrink: 0;
  position: relative;
  transition: border-color .15s;
}
.dkr-mk-radio.is-on .dkr-mk-rb {
  border-color: #f0a020;
  border-width: 2px;
}
.dkr-mk-radio.is-on .dkr-mk-rb::after {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: #f0a020;
  transform: translate(-50%, -50%);
}
.dkr-mk-rb-body { flex: 1; }
.dkr-mk-rb-name { font-size: 14px; font-weight: 500; color: #222; display: block; }
.dkr-mk-rb-price { font-size: 14px; font-weight: 500; color: #222; }
.dkr-mk-empty { color: #999; font-style: italic; padding: 8px 0; }

/* CTA блок */
.dkr-mk-card-cta { padding: 24px 28px; }
.dkr-mk-check {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 13px;
  color: #555;
  margin-bottom: 20px;
}
.dkr-mk-check input { position: absolute; opacity: 0; pointer-events: none; }
.dkr-mk-check span:first-of-type {
  width: 20px; height: 20px;
  border: 1.5px solid #d4d4d4;
  border-radius: 4px;
  background: #fff;
  flex-shrink: 0;
  position: relative;
  transition: all .15s;
}
.dkr-mk-check input:checked + span {
  background: #f0a020;
  border-color: #f0a020;
}
.dkr-mk-check input:checked + span::after {
  content: '';
  position: absolute;
  left: 5px; top: 1px;
  width: 6px; height: 11px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
}

.dkr-mk-cta {
  display: block;
  width: 100%;
  height: 56px;
  background: #1a1a1a;
  color: #fff;
  border: 0;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: background .15s, transform .05s;
}
.dkr-mk-cta:hover { background: #000; }
.dkr-mk-cta:active { transform: translateY(1px); }
.dkr-mk-secure {
  text-align: center;
  font-size: 12px;
  color: #888;
  margin-top: 14px;
}

/* Sticky cart правая колонка */
.dkr-mk-sticky {
  position: sticky;
  top: 16px;
  margin-bottom: 0;
}

.dkr-mk-prods { margin-bottom: 20px; }
.dkr-mk-prod {
  display: grid;
  grid-template-columns: 60px 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
}
.dkr-mk-prod:last-child { border-bottom: 0; }
.dkr-mk-prod-thumb {
  width: 60px; height: 60px;
  background: #f6f6f6;
  border: 1px solid #eaeaea;
  border-radius: 6px;
}
.dkr-mk-prod-name { font-size: 14px; font-weight: 500; color: #222; }
.dkr-mk-prod-meta { font-size: 12px; color: #888; margin-top: 2px; }
.dkr-mk-prod-price { font-size: 14px; font-weight: 600; color: #222; }
.dkr-mk-prod-empty { color: #999; font-style: italic; text-align: center; padding: 12px 0; }

.dkr-mk-promo {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
  padding-top: 16px;
  border-top: 1px solid #eee;
}
.dkr-mk-promo input {
  flex: 1;
  height: 44px;
  padding: 0 14px;
  background: #fafafa;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  font: inherit;
  font-size: 14px;
}
.dkr-mk-promo input:focus { outline: 0; border-color: #f0a020; background: #fff; }
.dkr-mk-promo button {
  height: 44px;
  padding: 0 18px;
  background: #f0a020;
  color: #fff;
  border: 0;
  border-radius: 6px;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
}
.dkr-mk-promo button:hover { background: #d68d12; }

.dkr-mk-totals { border-top: 1px solid #eee; padding-top: 16px; }
.dkr-mk-row {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  color: #555;
  padding: 4px 0;
}
.dkr-mk-row span:last-child { font-weight: 500; color: #222; }
.dkr-mk-grand {
  border-top: 1px solid #eee;
  margin-top: 10px;
  padding-top: 14px;
  font-size: 16px;
}
.dkr-mk-grand span:first-child { font-weight: 700; color: #1a1a1a; }
.dkr-mk-grand span:last-child { font-size: 22px; font-weight: 700; color: #1a1a1a; }

.dkr-mk-trust {
  margin-top: 18px;
  padding: 16px;
  background: #fafafa;
  border: 1px solid #eee;
  border-radius: 8px;
  display: grid;
  gap: 8px;
}
.dkr-mk-trust > div {
  font-size: 13px;
  color: #444;
  font-weight: 500;
}

/* v76 — Зеркало оригинальной корзины #dkr-mk-cart-mirror */
.dkr-mk-mirror { margin-bottom: 18px; }
.dkr-mk-mirror h1, .dkr-mk-mirror h2, .dkr-mk-mirror h3,
.dkr-mk-mirror .checkout-area-title, .dkr-mk-mirror .title {
  font-size: 19px !important;
  font-weight: 700 !important;
  margin: 0 0 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid #eee !important;
  color: #1a1a1a !important;
}
.dkr-mk-mirror .product, .dkr-mk-mirror .product-line, .dkr-mk-mirror .product-line-info {
  border-bottom: 1px solid #eee !important;
}
.dkr-mk-mirror img { max-width: 60px !important; height: auto !important; border-radius: 6px; }
.dkr-mk-mirror .cart-summary-products,
.dkr-mk-mirror .order-confirmation-table { font-size: 14px; }
.dkr-mk-mirror .label { color: #888 !important; font-size: 13px !important; }
.dkr-mk-mirror .value, .dkr-mk-mirror .price { color: #222 !important; font-weight: 500 !important; }
.dkr-mk-mirror .cart-total, .dkr-mk-mirror .order-total,
.dkr-mk-mirror tr:last-child td { font-weight: 700 !important; font-size: 16px !important; }
.dkr-mk-mirror > div,
.dkr-mk-mirror .blocks,
.dkr-mk-mirror .checkout-block {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* v78 — оригинальный #thecheckout-cart-summary перенесён внутрь .dkr-mk-card (правая sticky) */
.dkr-mk-mirror #thecheckout-cart-summary,
.dkr-mk-mirror #thecheckout-cart-summary.checkout-block,
.dkr-mk-mirror #thecheckout-cart-summary.paddboot {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* v79 — компактная корзина в правой колонке по макету Pavla */

/* Скрыть лишние внутренние заголовки (TWÓJ KOSZYK, дубль) — оставим только верхний если он есть */
.dkr-mk-mirror #thecheckout-cart-summary > .checkout-area-title,
.dkr-mk-mirror .cart-summary-products > .checkout-area-title,
.dkr-mk-mirror [data-section] > .checkout-area-title:not(:first-of-type),
.dkr-mk-mirror .h1, .dkr-mk-mirror .h2, .dkr-mk-mirror .h3 {
  display: none !important;
}

/* Внешние карточки/обводки модуля — убираем */
.dkr-mk-mirror .checkout-block,
.dkr-mk-mirror .checkout-area-content,
.dkr-mk-mirror .cart-summary,
.dkr-mk-mirror .cart-detailed-totals,
.dkr-mk-mirror .cart-summary-totals,
.dkr-mk-mirror .card,
.dkr-mk-mirror .panel,
.dkr-mk-mirror [class*="thecheckout-"] {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* === ТОВАР === */
.dkr-mk-mirror .product-line,
.dkr-mk-mirror .product-line-info,
.dkr-mk-mirror .cart-item {
  display: grid !important;
  grid-template-areas:
    "img name name"
    "img attr attr"
    "img qty price" !important;
  border-bottom: 1px solid #eee !important;
  margin: 0 !important;
  align-items: center !important;
}
.dkr-mk-mirror .product-line:last-child,
.dkr-mk-mirror .product-line-info:last-child {
  border-bottom: 0 !important;
}

.dkr-mk-mirror .product-line .product-image,
.dkr-mk-mirror .product-line img,
.dkr-mk-mirror .product-image {
  grid-area: img !important;
  width: 40px !important;
  height: 40px !important;
  object-fit: contain !important;
  border-radius: 4px !important;
  background: #fff;
  border: 1px solid #eee;
}

.dkr-mk-mirror .product-line .label,
.dkr-mk-mirror .product-line .product-name,
.dkr-mk-mirror .product-line__title,
.dkr-mk-mirror .product-line a.label {
  grid-area: name !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #222 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  text-decoration: none !important;
}

/* Атрибуты Velvet · MG09 · Czarna — одной строкой мелким */
.dkr-mk-mirror .product-line .product-line-info,
.dkr-mk-mirror .product-line__attrs,
.dkr-mk-mirror .product-attributes,
.dkr-mk-mirror .attributes,
.dkr-mk-mirror dl.product-line-info {
  grid-area: attr !important;
  font-size: 11px !important;
  color: #888 !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
.dkr-mk-mirror .product-line dt,
.dkr-mk-mirror .product-line dd {
  display: inline !important;
  font-size: 11px !important;
  color: #888 !important;
  font-weight: 400 !important;
  margin: 0 4px 0 0 !important;
}
.dkr-mk-mirror .product-line dt::after { content: ': '; }
.dkr-mk-mirror .product-line dd::after { content: ' · '; }
.dkr-mk-mirror .product-line dd:last-child::after { content: ''; }

/* QTY — компактный inline */
.dkr-mk-mirror .product-line .product-quantity,
.dkr-mk-mirror .product-line .qty,
.dkr-mk-mirror .product-line__qty,
.dkr-mk-mirror .input-group-qty,
.dkr-mk-mirror .bootstrap-touchspin {
  grid-area: qty !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  width: auto !important;
  max-width: 110px !important;
}
.dkr-mk-mirror .product-line input.qty,
.dkr-mk-mirror .product-line .js-cart-line-product-quantity {
  width: 36px !important;
  height: 28px !important;
  padding: 0 4px !important;
  text-align: center !important;
  font-size: 13px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 4px !important;
}
.dkr-mk-mirror .product-line .btn-touchspin,
.dkr-mk-mirror .product-line button[class*="quantity"],
.dkr-mk-mirror .product-line .qty-button {
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  font-size: 14px !important;
  background: #fff !important;
  border: 1px solid #e5e5e5 !important;
  color: #222 !important;
  border-radius: 4px !important;
}

/* Цена справа */
.dkr-mk-mirror .product-line .product-price,
.dkr-mk-mirror .product-line__price,
.dkr-mk-mirror .product-line .price {
  grid-area: price !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #222 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Корзина — мусорка скрыть/уменьшить */
.dkr-mk-mirror .product-line .remove-from-cart,
.dkr-mk-mirror .product-line button[class*="remove"],
.dkr-mk-mirror .product-line .js-cart-line-product-quantity-remove {
  position: absolute !important;
  right: 4px;
  top: 4px;
  width: 20px !important;
  height: 20px !important;
  font-size: 12px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  opacity: 0.4 !important;
}
.dkr-mk-mirror .product-line { position: relative !important; }

/* === ПРОМОКОД === */
.dkr-mk-mirror .thecheckout-voucher,
.dkr-mk-mirror .promo-code,
.dkr-mk-mirror .voucher,
.dkr-mk-mirror form[name="add-voucher"] {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  gap: 0 !important;
}
.dkr-mk-mirror .thecheckout-voucher .promo-input,
.dkr-mk-mirror .promo-code input,
.dkr-mk-mirror .voucher input[type="text"],
.dkr-mk-mirror form[name="add-voucher"] input[type="text"] {
  flex: 1 !important;
  height: 36px !important;
  padding: 0 10px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 4px !important;
  background: #fff !important;
  font-size: 13px !important;
  margin: 0 !important;
}
.dkr-mk-mirror .thecheckout-voucher button,
.dkr-mk-mirror .promo-code button,
.dkr-mk-mirror .voucher button,
.dkr-mk-mirror form[name="add-voucher"] button {
  height: 36px !important;
  padding: 0 16px !important;
  background: #f0a020 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}
.dkr-mk-mirror .promo-discounts,
.dkr-mk-mirror .promo-code label,
.dkr-mk-mirror form[name="add-voucher"] > label,
.dkr-mk-mirror .voucher h2 {
  display: none !important;
}

/* === ТОТАЛЫ === */
.dkr-mk-mirror .cart-summary-line,
.dkr-mk-mirror .cart-summary-totals > div {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  font-size: 13px !important;
  color: #555 !important;
  padding: 4px 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.dkr-mk-mirror .cart-summary-line .value,
.dkr-mk-mirror .cart-summary-line strong {
  font-weight: 600 !important;
  color: #222 !important;
}

.dkr-mk-mirror .cart-total,
.dkr-mk-mirror .cart-summary-line.cart-total,
.dkr-mk-mirror [data-id="total"],
.dkr-mk-mirror .cart-summary-totals .cart-total {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid #eee !important;
  font-size: 16px !important;
}
.dkr-mk-mirror .cart-total .label,
.dkr-mk-mirror .cart-total > span:first-child {
  font-weight: 700 !important;
  color: #1a1a1a !important;
  font-size: 16px !important;
}
.dkr-mk-mirror .cart-total .value,
.dkr-mk-mirror .cart-total > span:last-child {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  white-space: nowrap !important;
}

/* Скрыть мусор: Waga całkowita, дубликаты тайтлов */
.dkr-mk-mirror [class*="weight"],
.dkr-mk-mirror [class*="waga"],
.dkr-mk-mirror .cart-summary-line[data-id*="weight"] {
  display: none !important;
}

/* v88 — скрыть .block-header.shopping-cart-header + .cart-summary-top.js-cart-summary-top */
body#checkout .block-header.shopping-cart-header,
body#checkout .cart-summary-top.js-cart-summary-top,
.dkr-mk-mirror .block-header.shopping-cart-header,
.dkr-mk-mirror .cart-summary-top.js-cart-summary-top {
  display: none !important;
}

/* v89 — скрыть .product-line-prices .product-price h5 + padding-right:0 на product-line-price */
body#checkout .product-line-prices .product-price h5,
body#checkout #tc-checkout .product-line-prices .product-price h5,
.dkr-mk-mirror .product-line-prices .product-price h5 {
  display: none !important;
}
body#checkout #tc-checkout .checkout-block .cart-overview .product-line-actions .product-line-price,
.dkr-mk-mirror .checkout-block .cart-overview .product-line-actions .product-line-price {
  padding-right: 0 !important;
}

/* v154 — .block-header.shopping-cart-header ТОЛЬКО на body#checkout (убрал unscoped) */
body#checkout .block-header.shopping-cart-header,
body#checkout #tc-checkout .block-header.shopping-cart-header,
body#checkout #thecheckout-cart-summary .block-header.shopping-cart-header,
body#checkout .dkr-mk-mirror .block-header.shopping-cart-header {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* v92 — убрать ✓ Darmowa dostawa od 1000 zł (4-й div в .dkr-mk-trust) */
.dkr-mk-trust > div:nth-child(4),
.dkr-mk-trust > div:last-child { display: none !important; }

/* v93 — убрать элемент div.product-line-prices.product-price.h5 целиком */
body#checkout .product-line-prices.product-price.h5,
body#checkout #tc-checkout .product-line-prices.product-price.h5,
.dkr-mk-mirror .product-line-prices.product-price.h5 {
  display: none !important;
}

/* v97 — иконка корзины/мусорки .material-icons → 15px */
body#checkout .material-icons,
body#checkout #tc-checkout .material-icons,
.dkr-mk-mirror .material-icons,
#thecheckout-cart-summary .material-icons {
  font-size: 15px !important;
  line-height: 1 !important;
  width: 15px !important;
  height: 15px !important;
}

/* v101 — серый placeholder для Kod rabatowy */
.dkr-mk-mirror .promo-input input::placeholder,
.dkr-mk-mirror .promo-code input::placeholder,
.dkr-mk-mirror .voucher input::placeholder,
body#checkout .promo-input input::placeholder { color: #999 !important; opacity: 1 !important; }
.dkr-mk-mirror .promo-input input::-webkit-input-placeholder { color: #999 !important; }
.dkr-mk-mirror .promo-input input:-ms-input-placeholder { color: #999 !important; }

/* v102 — скрыть h5 (заголовок Kod rabatowy в .promo-code/.voucher блоке) */
.dkr-mk-mirror .promo-code h5,
.dkr-mk-mirror .voucher h5,
.dkr-mk-mirror .thecheckout-voucher h5,
.dkr-mk-mirror form[name="add-voucher"] h5,
body#checkout .promo-code h5,
body#checkout .voucher h5 { display: none !important; }

/* v104 — padding на .card-totals-bg (без !important) */
body#checkout #tc-checkout .checkout-block .inner-area .cart-summary .card-totals-bg,
.dkr-mk-mirror .checkout-block .inner-area .cart-summary .card-totals-bg,
.dkr-mk-mirror .card-totals-bg {
  padding: 0 68px 0 2px;
}

/* v107 — убрать background var(--tc_light3) с .card-totals-bg (override модуля) */
body#checkout #tc-checkout .checkout-block .inner-area .cart-summary .card-totals-bg,
.dkr-mk-mirror .card-totals-bg {
  background: transparent !important;
  background-color: transparent !important;
}

/* v108 — перенесённый .blocks.checkout-area-12 внутри .dkr-mk-trust — подогнать */
#dkr-mockup .dkr-mk-trust { display: block !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
#dkr-mockup .dkr-mk-trust > div:nth-child(-n+4) { /* наши плэйсхолдеры — оставляем */ }
#dkr-mockup .dkr-mk-trust .blocks.checkout-area-12,
#dkr-mockup .dkr-mk-trust [class*="checkout-area-12"] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
#dkr-mockup .dkr-mk-trust .blocks.checkout-area-12 .inner-area,
#dkr-mockup .dkr-mk-trust [class*="checkout-area-12"] .inner-area {
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  justify-content: space-between !important;
}
#dkr-mockup .dkr-mk-trust .blocks.checkout-area-12 .inner-area > * {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 12px !important;
}
#dkr-mockup .dkr-mk-trust .blocks.checkout-area-12 img,
#dkr-mockup .dkr-mk-trust [class*="checkout-area-12"] img {
  max-width: 32px !important;
  height: auto !important;
}

/* v109 — добить ширину перенесённого area-12 (base v37 .blocks 50% правила перехватывают) */
#dkr-mockup .dkr-mk-trust .blocks,
#dkr-mockup .dkr-mk-trust .blocks.checkout-area-12,
#dkr-mockup .dkr-mk-trust [class*="checkout-area"],
#dkr-mockup .dkr-mk-trust [class*="width-below"],
body#checkout #dkr-mockup .dkr-mk-trust .blocks,
body#checkout #tc-checkout #dkr-mockup .dkr-mk-trust .blocks {
  flex-basis: 100% !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
}

/* v110 — перенесённый #thecheckout-address-invoice внутри #dkr-mk-address-slot */
#dkr-mockup #dkr-mk-address-slot { width: 100% !important; }
#dkr-mockup #dkr-mk-address-slot #thecheckout-address-invoice,
#dkr-mockup #dkr-mk-address-slot .checkout-block.main-block,
#dkr-mockup #dkr-mk-address-slot .checkout-block.main-block.full-header {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  flex: 0 0 100% !important;
  flex-basis: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
}
#dkr-mockup #dkr-mk-address-slot .checkout-block .inner-area,
#dkr-mockup #dkr-mk-address-slot .inner-area {
  padding: 0 !important;
  margin: 0 !important;
}
#dkr-mockup #dkr-mk-address-slot .form-group,
#dkr-mockup #dkr-mk-address-slot .form-row {
  margin: 0 0 14px !important;
}
#dkr-mockup #dkr-mk-address-slot .form-group.hidden { display: none !important; }

/* v112 — перенесённый .blocks.checkout-area-10 (Sposób dostawy) в #dkr-mk-delivery-slot */
#dkr-mockup #dkr-mk-delivery-slot { width: 100% !important; }
#dkr-mockup #dkr-mk-delivery-slot .blocks.checkout-area-10,
#dkr-mockup #dkr-mk-delivery-slot [class*="checkout-area-10"],
#dkr-mockup #dkr-mk-delivery-slot .checkout-block,
body#checkout #tc-checkout #dkr-mockup #dkr-mk-delivery-slot .blocks {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  flex: 0 0 100% !important;
  flex-basis: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
}
#dkr-mockup #dkr-mk-delivery-slot .inner-area,
#dkr-mockup #dkr-mk-delivery-slot .checkout-block .inner-area { padding: 0 !important; margin: 0 !important; }

/* v112-old удалено — конфликтовало с v118 (display:flex выигрывал по specificity) */

/* v113 — перенесённый #thecheckout-payment в #dkr-mk-payment-slot */
#dkr-mockup #dkr-mk-payment-slot { width: 100% !important; }
#dkr-mockup #dkr-mk-payment-slot #thecheckout-payment,
#dkr-mockup #dkr-mk-payment-slot .checkout-block.main-block,
#dkr-mockup #dkr-mk-payment-slot .checkout-block,
body#checkout #tc-checkout #dkr-mockup #dkr-mk-payment-slot .blocks {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
}
#dkr-mockup #dkr-mk-payment-slot .inner-area { padding: 0 !important; margin: 0 !important; }

/* Опции оплаты — 2x2 grid карточек как в макете */
#dkr-mockup #dkr-mk-payment-slot .payment-options,
#dkr-mockup #dkr-mk-payment-slot .js-payment-options {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
@media (max-width: 567px) {
  #dkr-mockup #dkr-mk-payment-slot .payment-options { grid-template-columns: 1fr !important; }
}
#dkr-mockup #dkr-mk-payment-slot .payment-option,
#dkr-mockup #dkr-mk-payment-slot .payment-options > * {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 14px 16px !important;
  margin: 0 !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 8px !important;
  background: #fff !important;
  cursor: pointer !important;
  transition: border-color .15s, background .15s !important;
}
#dkr-mockup #dkr-mk-payment-slot .payment-option:has(input:checked),
#dkr-mockup #dkr-mk-payment-slot input[name="payment-option"]:checked + label,
#dkr-mockup #dkr-mk-payment-slot label:has(input[name="payment-option"]:checked) {
  border-color: #f0a020 !important;
  background: #fffaf0 !important;
}
#dkr-mockup #dkr-mk-payment-slot .payment-option label,
#dkr-mockup #dkr-mk-payment-slot label[for*="payment-option"] { font-size: 14px !important; font-weight: 600 !important; color: #222 !important; margin: 0 !important; cursor: pointer !important; }
#dkr-mockup #dkr-mk-payment-slot img.payment-logo,
#dkr-mockup #dkr-mk-payment-slot .payment-option img { max-width: 40px !important; max-height: 24px !important; object-fit: contain !important; }
#dkr-mockup #dkr-mk-payment-slot .additional-information { font-size: 12px !important; color: #888 !important; margin-top: 6px !important; }

/* v114 — финальная подгонка блока Sposób dostawy под макет Pavla */

/* Скрыть нативный заголовок блока (у нас свой "2. Sposób dostawy") */
#dkr-mk-delivery-slot > h1,
#dkr-mk-delivery-slot > h2,
#dkr-mk-delivery-slot > h3,
#dkr-mk-delivery-slot .checkout-area-title,
#dkr-mk-delivery-slot .block-header { display: none !important; }

/* Полный охват возможных оболочек одного варианта доставки */
#dkr-mk-delivery-slot label.delivery-option,
#dkr-mk-delivery-slot .delivery-option,
#dkr-mk-delivery-slot .delivery-options > .delivery-option-row,
#dkr-mk-delivery-slot .delivery-options > label,
#dkr-mk-delivery-slot .delivery-options-list > .delivery-option-row,
#dkr-mk-delivery-slot .delivery-options-list > label,
#dkr-mk-delivery-slot ul.delivery-options > li,
#dkr-mk-delivery-slot ul.delivery-options-list > li,
#dkr-mk-delivery-slot fieldset > label,
#dkr-mk-delivery-slot .form-group.delivery-options > .delivery-option-row,
#dkr-mk-delivery-slot .form-group.delivery-options > label,
#dkr-mk-delivery-slot .carrier-option {
  display: grid !important;
  grid-template-columns: 56px 1fr auto !important;
  grid-template-areas: "logo name price" "logo delay price" !important;
  column-gap: 14px !important;
  row-gap: 2px !important;
  align-items: center !important;
  padding: 14px 16px !important;
  margin: 0 0 10px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 10px !important;
  background: #fff !important;
  cursor: pointer !important;
  position: relative !important;
  transition: border-color .15s, background .15s, box-shadow .15s !important;
  list-style: none !important;
}
#dkr-mk-delivery-slot .delivery-option:last-child,
#dkr-mk-delivery-slot .delivery-options > *:last-child,
#dkr-mk-delivery-slot ul.delivery-options > li:last-child { margin-bottom: 0 !important; }

/* Селектная (выбранная) опция */
#dkr-mk-delivery-slot label.delivery-option:has(input:checked),
/* v164b: removed legacy orange checked~* rule */

/* Скрыть нативный radio (мы рисуем свой через ::before) */
#dkr-mk-delivery-slot input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
}
#dkr-mk-delivery-slot label.delivery-option::before,
#dkr-mk-delivery-slot .delivery-option::before {
  content: '';
  position: absolute;
  top: 50%; left: -1px;
  display: none; /* пока убираем псевдо-радио — оригинал имеет свои визуальные элементы */
}

/* Логотип/иконка курьера слева */
#dkr-mk-delivery-slot .carrier-logo,
#dkr-mk-delivery-slot .delivery-option-logo,
#dkr-mk-delivery-slot .delivery-option > img:first-child,
#dkr-mk-delivery-slot .delivery-option .logo {
  grid-area: logo !important;
  width: 56px !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#dkr-mk-delivery-slot .carrier-logo img,
#dkr-mk-delivery-slot .delivery-option img,
#dkr-mk-delivery-slot .delivery-option-logo img {
  max-width: 56px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  width: auto !important;
  height: auto !important;
}

/* Название курьера */
#dkr-mk-delivery-slot .carrier-name,
#dkr-mk-delivery-slot .delivery-option .name,
#dkr-mk-delivery-slot .delivery-option strong:first-of-type,
#dkr-mk-delivery-slot .delivery-option > span:first-of-type {
  grid-area: name !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  line-height: 1.3 !important;
}

/* Срок / описание */
#dkr-mk-delivery-slot .carrier-delay,
#dkr-mk-delivery-slot .delivery-option .description,
#dkr-mk-delivery-slot .delivery-option .delay,
#dkr-mk-delivery-slot .delivery-option small,
#dkr-mk-delivery-slot .delivery-option .extra-info {
  grid-area: delay !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #888 !important;
  line-height: 1.3 !important;
}

/* Цена справа */
#dkr-mk-delivery-slot .carrier-price,
#dkr-mk-delivery-slot .delivery-option .price,
#dkr-mk-delivery-slot .delivery-option .price-display {
  grid-area: price !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  white-space: nowrap !important;
  text-align: right !important;
}

/* «Za darmo» — оранжевая подсветка */
#dkr-mk-delivery-slot .delivery-option .price.free,
#dkr-mk-delivery-slot .delivery-option .price-free {
  color: #f0a020 !important;
}

/* Скрыть extra-content до выбора (хвостовые блоки) */
#dkr-mk-delivery-slot .delivery-option .extra-content:not(.shown),
#dkr-mk-delivery-slot .delivery-option-additional { display: none !important; }

/* Hover */
#dkr-mk-delivery-slot label.delivery-option:hover,
#dkr-mk-delivery-slot .delivery-option:hover {
  border-color: #f0a020 !important;
  background: #fffdf6 !important;
}

/* v115 — Sposób dostawy под макет Pavla */
#dkr-mockup .dkr-mk-card:nth-of-type(2) > h2.dkr-mk-h { display: none !important; }

#dkr-mk-delivery-slot .checkout-area-title,
#dkr-mk-delivery-slot .block-header {
  display: block !important;
  font-size: 13px !important; font-weight: 700 !important; text-transform: uppercase !important;
  letter-spacing: 0.5px !important; color: #1a1a1a !important;
  padding: 0 0 14px 0 !important; margin: 0 0 14px 0 !important; border: 0 !important;
  background: transparent !important; position: relative;
}
#dkr-mk-delivery-slot .checkout-area-title::before,
#dkr-mk-delivery-slot .block-header::before {
  content: '\2022' !important; color: #f0a020 !important;
  margin-right: 8px !important; font-size: 18px !important; line-height: 1 !important;
}

#dkr-mockup { z-index: 100 !important; position: relative !important; }
#dkr-mk-delivery-slot { z-index: 50 !important; background: transparent; position: relative; }

#dkr-mk-delivery-slot .blocks:not(.delivery-option):not(.carrier-option):empty,
#dkr-mk-delivery-slot .fixclass_mgrbott:empty,
#dkr-mk-delivery-slot .separator,
#dkr-mk-delivery-slot hr {
  display: none !important; height: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important;
}

#dkr-mk-delivery-slot .carrier-logo,
#dkr-mk-delivery-slot .delivery-option-logo,
#dkr-mk-delivery-slot .delivery-option > img,
#dkr-mk-delivery-slot .delivery-option .logo,
#dkr-mk-delivery-slot label.delivery-option > img,
#dkr-mk-delivery-slot .carrier-extra-content img { display: none !important; }

#dkr-mk-delivery-slot label.delivery-option,
#dkr-mk-delivery-slot .delivery-option,
#dkr-mk-delivery-slot .delivery-options > .delivery-option-row,
#dkr-mk-delivery-slot .delivery-options > label,
#dkr-mk-delivery-slot ul.delivery-options > li,
#dkr-mk-delivery-slot .delivery-options-list > .delivery-option-row,
#dkr-mk-delivery-slot .delivery-options-list > label,
#dkr-mk-delivery-slot .form-group.delivery-options > .delivery-option-row {
  display: grid !important;
  grid-template-columns: 28px 1fr auto !important;
  grid-template-areas: "radio name price" "radio delay price" !important;
  column-gap: 12px !important; row-gap: 2px !important; align-items: center !important;
  padding: 12px 16px !important; margin: 0 0 8px !important;
  border: 1px solid #e0e0e0 !important; border-radius: 8px !important;
  background: #fff !important; position: relative !important;
}

#dkr-mk-delivery-slot input[type="radio"] {
  position: static !important; opacity: 1 !important; pointer-events: auto !important;
  width: 16px !important; height: 16px !important; margin: 0 !important;
  grid-area: radio !important; accent-color: #1a1a1a !important;
}

#dkr-mk-delivery-slot label.delivery-option:has(input:checked),
#dkr-mk-delivery-slot .delivery-option:has(input:checked),
#dkr-mk-delivery-slot .delivery-options > *:has(input:checked),
#dkr-mk-delivery-slot ul.delivery-options > li:has(input:checked) {
  border: 2px solid #1a1a1a !important; background: #fff !important;
  box-shadow: none !important; padding: 11px 15px !important;
}

#dkr-mk-delivery-slot .carrier-name,
#dkr-mk-delivery-slot .delivery-option .name {
  grid-area: name !important; font-size: 14px !important; font-weight: 700 !important;
  color: #1a1a1a !important; line-height: 1.3 !important;
}
#dkr-mk-delivery-slot .carrier-delay,
#dkr-mk-delivery-slot .delivery-option .description,
#dkr-mk-delivery-slot .delivery-option small,
#dkr-mk-delivery-slot .delivery-option .extra-info,
#dkr-mk-delivery-slot .delivery-option .delay {
  grid-area: delay !important; font-size: 12px !important; color: #888 !important; line-height: 1.3 !important;
}
#dkr-mk-delivery-slot .carrier-price,
#dkr-mk-delivery-slot .delivery-option .price {
  grid-area: price !important; font-size: 14px !important; font-weight: 700 !important;
  color: #1a1a1a !important; white-space: nowrap !important; text-align: right !important; align-self: center !important;
}

#dkr-mk-delivery-slot .alert,
#dkr-mk-delivery-slot .alert-danger {
  font-size: 12px !important; padding: 8px 12px !important; margin: 0 0 12px !important;
  background: #fef3f3 !important; border: 0 !important; color: #c44 !important; border-radius: 6px !important;
}

/* v116 — убрать 3 наших плэйсхолдера в .dkr-mk-trust (теперь там оригинальный area-12) */
#dkr-mockup .dkr-mk-trust > div:not(.blocks):not([class*="checkout-area"]):not([id]) { display: none !important; }

/* v120 — добить высоту radio-area и лого курьеров (DPD/DHL/Poczta) */
body#checkout #tc-checkout .delivery-option-row .shipping-radio,
body#checkout #tc-checkout .delivery-option-row .custom-radio,
body#checkout #tc-checkout .delivery-option-row .radio-wrapper {
  max-width: 28px !important;
  max-height: 28px !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* Все картинки в строке доставки — лого DPD/DHL/Poczta — force hide */
body#checkout #tc-checkout .delivery-option-row .carriers,
body#checkout #tc-checkout .delivery-option-row .carriers img,
body#checkout #tc-checkout .delivery-option-row .delivery-option-logo,
body#checkout #tc-checkout .delivery-option-row img,
body#checkout #tc-checkout .delivery-option-row .delivery-option-content img,
body#checkout #tc-checkout .delivery-option.carrier-ref-1 img,
body#checkout #tc-checkout .delivery-option.carrier-ref-1 .delivery-option-logo,
body#checkout #tc-checkout .delivery-option-row picture,
body#checkout #tc-checkout .delivery-option-row svg.carrier-logo {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
}
/* Цена align self-center */
body#checkout #tc-checkout .delivery-option-row .delivery-option-price,
body#checkout #tc-checkout .delivery-option-row .carrier-price,
body#checkout #tc-checkout .delivery-option-row .price {
  align-self: center !important;
  justify-self: end !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  white-space: nowrap !important;
}

/* v121 — обнулить bootstrap .col-* + .row внутри delivery-option-row */
body#checkout #tc-checkout .delivery-option-row > *,
body#checkout #tc-checkout .delivery-option-row > div,
body#checkout #tc-checkout .delivery-option-row [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  flex: initial !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
/* Жёстко задать grid-area для конкретных wrapping divs */
body#checkout #tc-checkout .delivery-option-row .shipping-radio,
body#checkout #tc-checkout .delivery-option-row > .col-xs-1,
body#checkout #tc-checkout .delivery-option-row > div:first-child {
  grid-area: radio !important;
  width: 28px !important;
  max-width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  max-height: 28px !important;
  align-self: center !important;
  justify-self: center !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-label,
body#checkout #tc-checkout .delivery-option-row .delivery-option-content {
  grid-area: name !important;
  align-self: center !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-price-wrapper,
body#checkout #tc-checkout .delivery-option-row .delivery-option-price {
  grid-area: price !important;
  align-self: center !important;
  justify-self: end !important;
}
/* Пустые .blocks между опциями (полоски-сепараторы) */
body#checkout #tc-checkout .delivery-options + .blocks:empty,
body#checkout #tc-checkout .delivery-options > .blocks:empty,
body#checkout #tc-checkout #dkr-mk-delivery-slot .blocks:empty,
body#checkout #tc-checkout #dkr-mk-delivery-slot div[class*="fixclass_mgrbott"]:empty,
body#checkout #tc-checkout #dkr-mk-delivery-slot .blocks.fixclass_mgrbott,
#dkr-mk-delivery-slot .fixclass_mgrbott { display: none !important; }

/* v122 — финальная агрессия: радио-area + универсальные сепараторы */
body#checkout #tc-checkout .delivery-option-row {
  grid-template-columns: 32px 1fr auto !important;
}
body#checkout #tc-checkout .delivery-option-row > *:not(.delivery-option-label):not(.delivery-option-price):not(.delivery-option-delay) {
  max-height: 32px !important;
  align-self: center !important;
}
body#checkout #tc-checkout .delivery-option-row > div:first-child,
body#checkout #tc-checkout .delivery-option-row [class*="col-xs-1"]:first-of-type {
  max-width: 32px !important;
  min-width: 32px !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-label,
body#checkout #tc-checkout .delivery-option-row .name,
body#checkout #tc-checkout .delivery-option-row strong {
  word-break: normal !important;
  white-space: normal !important;
  hyphens: none !important;
}
/* Все .blocks внутри #dkr-mk-delivery-slot которые НЕ являются опциями = сепараторы */
#dkr-mk-delivery-slot > .blocks:not(.delivery-option):not(.delivery-option-row),
#dkr-mk-delivery-slot .delivery-options-list ~ .blocks,
#dkr-mk-delivery-slot .delivery-options ~ .blocks {
  display: none !important;
}

/* v124 — реальная структура: flex по факту DOM */
body#checkout #tc-checkout .delivery-option-row {
  display: block !important;
  grid-template-columns: none !important;
  grid-template-areas: none !important;
}
body#checkout #tc-checkout .delivery-option-row .fix_deliv_pay {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  position: relative !important;
}
body#checkout #tc-checkout .delivery-option-row label.absolute {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important; height: 100% !important;
  z-index: 1 !important; cursor: pointer !important;
  margin: 0 !important; padding: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row .shipping-radio {
  flex: 0 0 28px !important;
  width: 28px !important; max-width: 28px !important; min-width: 28px !important;
  height: 28px !important; max-height: 28px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  padding: 0 !important; margin: 0 !important;
  z-index: 2 !important; position: relative !important;
}
body#checkout #tc-checkout .delivery-option-row .shipping-radio .custom-radio {
  float: none !important; width: 20px !important; height: 20px !important; padding: 0 !important; margin: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-label {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-detail {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-logo { display: none !important; }
body#checkout #tc-checkout .delivery-option-row .name-and-delay {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-name,
body#checkout #tc-checkout .delivery-option-row .carrier-name,
body#checkout #tc-checkout .delivery-option-row .h6.carrier-name {
  font-size: 14px !important; font-weight: 700 !important; color: #1a1a1a !important;
  line-height: 1.3 !important; margin: 0 !important; padding: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-delay,
body#checkout #tc-checkout .delivery-option-row .carrier-delay {
  font-size: 12px !important; color: #888 !important; font-weight: 400 !important;
  line-height: 1.3 !important; margin: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-detail > .delivery-option-price {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  font-size: 14px !important; font-weight: 700 !important; color: #1a1a1a !important;
  white-space: nowrap !important;
  display: flex !important; align-items: center !important;
}
/* В .delivery-option-price показываем только первый span.carrier-price, остальные скрываем */
body#checkout #tc-checkout .delivery-option-row .delivery-option-price .carrier-price-with-tax-formatted,
body#checkout #tc-checkout .delivery-option-row .delivery-option-price .carrier-price-without-tax-formatted {
  display: none !important;
}

/* "Za darmo!" — оранжевый */
/* v164b: removed orange free price */

/* v125 — добить .fix_deliv_pay width auto (v121 ставил 32px на :first-child) */
body#checkout #tc-checkout .delivery-option-row .fix_deliv_pay,
body#checkout #tc-checkout .delivery-option-row > .fix_deliv_pay,
body#checkout #tc-checkout .delivery-option-row > div:first-child.fix_deliv_pay,
body#checkout #tc-checkout #dkr-mockup #dkr-mk-delivery-slot .delivery-option-row .fix_deliv_pay {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  grid-area: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 1 1 100% !important;
}
body#checkout #tc-checkout .delivery-option-row {
  position: relative !important;
}

/* v160 — сепараторы скрыты, цены в нормальном flex-потоке (вместо v126 absolute который схлопывал width:0) */
body#checkout #tc-checkout .delivery-option-row + .row.carrier-extra-content,
body#checkout #tc-checkout .delivery-options > .row.carrier-extra-content,
body#checkout #tc-checkout #dkr-mk-delivery-slot .row.carrier-extra-content,
body#checkout #tc-checkout #dkr-mk-delivery-slot .delivery-options > .clearfix {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Цена справа через flex-поток: detail = flex row, price margin-left:auto */
body#checkout #tc-checkout .delivery-option-row .delivery-option-detail {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  width: 100% !important;
  position: static !important;
}
body#checkout #tc-checkout .delivery-option-row .name-and-delay {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 2px !important;
  min-width: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row .delivery-option-detail > .delivery-option-price {
  display: flex !important;
  align-items: center !important;
  position: static !important;
  transform: none !important;
  flex: 0 0 auto !important;
  margin-left: auto !important;
  padding: 0 0 0 12px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  white-space: nowrap !important;
}
/* Дубль цены внутри name-and-delay скрываем (основная = в detail) */
body#checkout #tc-checkout .delivery-option-row .name-and-delay > .delivery-option-price {
  display: none !important;
}
/* "Za darmo!" оранжевый */
/* v164b: removed orange free price */
/* "brutto" суффикс убираем */
body#checkout #tc-checkout .delivery-option-row .delivery-option-price .carrier-price-with-tax-formatted,
body#checkout #tc-checkout .delivery-option-row .delivery-option-price .carrier-price-without-tax-formatted {
  display: none !important;
}

/* v160 — убрать вторую рамку и раздутость: .fix_deliv_pay без border, компактные паддинги */
body#checkout #tc-checkout .delivery-option-row {
  display: block !important;
  padding: 0 !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  margin: 0 0 8px !important;
  height: auto !important;
  min-height: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row .fix_deliv_pay {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 12px 16px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  height: auto !important;
  min-height: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row label.delivery-option-label {
  flex: 1 1 auto !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  min-width: 0 !important;
}
body#checkout #tc-checkout .delivery-option-row label.absolute {
  height: 100% !important;
}

/* v131 — растянуть #thecheckout-address-delivery (перенесён вместо -invoice) на 100% */
#dkr-mockup #dkr-mk-address-slot #thecheckout-address-delivery,
#dkr-mockup #dkr-mk-address-slot .checkout-block.main-block.header-hide,
body#checkout #tc-checkout #dkr-mockup #dkr-mk-address-slot .checkout-block,
body#checkout #tc-checkout #dkr-mockup #dkr-mk-address-slot .blocks {
  background: transparent !important;
  border: 0 !important; box-shadow: none !important;
  padding: 0 !important; margin: 0 !important;
  flex: 0 0 100% !important; flex-basis: 100% !important;
  width: 100% !important; max-width: 100% !important; min-width: 0 !important;
  display: block !important;
}
#dkr-mockup #dkr-mk-address-slot .inner-area,
#dkr-mockup #dkr-mk-address-slot .inner-wrapper,
#dkr-mockup #dkr-mk-address-slot form.address-fields { width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
#dkr-mockup #dkr-mk-address-slot .form-fields { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
#dkr-mockup #dkr-mk-address-slot .form-group.email,
#dkr-mockup #dkr-mk-address-slot .form-group.address1,
#dkr-mockup #dkr-mk-address-slot .form-group.phone { grid-column: 1 / -1 !important; }
#dkr-mockup #dkr-mk-address-slot .form-group { margin: 0 !important; }
#dkr-mockup #dkr-mk-address-slot input[type="text"],
#dkr-mockup #dkr-mk-address-slot input[type="email"],
#dkr-mockup #dkr-mk-address-slot input[type="tel"] {
  width: 100% !important; height: 44px !important; padding: 0 14px !important;
  border: 1px solid #e5e5e5 !important; border-radius: 6px !important; background: #fafafa !important;
  font-size: 14px !important;
}

/* v138 — скрыть Komentarz do zamówienia (#thecheckout-order-message) */
body#checkout #thecheckout-order-message,
body#checkout #tc-checkout #thecheckout-order-message,
#thecheckout-order-message,
body#checkout .checkout-block.header-nobord.nominheight#thecheckout-order-message {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* v139 — унификация заголовков .dkr-mk-h под нативный стиль (• UPPERCASE серый) */
#dkr-mockup h2.dkr-mk-h {
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #1a1a1a !important;
  padding: 0 0 14px 0 !important;
  margin: 0 0 14px 0 !important;
  border: 0 !important;
  background: transparent !important;
  position: relative !important;
}
#dkr-mockup h2.dkr-mk-h::before {
  content: '\2022' !important;
  color: #f0a020 !important;
  margin-right: 8px !important;
  font-size: 18px !important;
  line-height: 1 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
/* v140 — скрыть наш h2 в 3-й карточке (Metoda płatności) — нативный METODA PŁATNOŚCI остаётся внутри блока модуля */
#dkr-mockup .dkr-mk-card:nth-of-type(3) > h2.dkr-mk-h { display: none !important; }

/* v142 — .country-call-prefix height 45px */
body#checkout #tc-checkout .form-group .country-call-prefix,
body#checkout .form-group .country-call-prefix,
#dkr-mk-address-slot .country-call-prefix {
  height: 45px !important;
  line-height: 45px !important;
  display: flex !important;
  align-items: center !important;
}

/* v149 — visually-hidden для thecheckout-newsletter + conditions-to-approve (видны Google и screen-readers, не видны юзеру) */
#thecheckout-newsletter,
#conditions-to-approve,
body#checkout #thecheckout-newsletter,
body#checkout #conditions-to-approve,
body#checkout #tc-checkout #thecheckout-newsletter,
body#checkout #tc-checkout #conditions-to-approve {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  pointer-events: none !important;
}

/* v154 — visually-hidden ТОЛЬКО на body#checkout (убрал unscoped #psgdpr/.terms-and-conditions/.error-msg чтобы не зацепить /pl/koszyk и my-account) */
body#checkout #thecheckout-psgdpr,
body#checkout .terms-and-conditions,
body#checkout .error-msg,
body#checkout #tc-checkout #thecheckout-psgdpr,
body#checkout #tc-checkout .terms-and-conditions,
body#checkout #tc-checkout .error-msg {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  pointer-events: none !important;
}

/* v154 — Waga całkowita ТОЛЬКО на body#checkout (убрал unscoped [class*=cart-total-weight] чтобы не зацепить /pl/koszyk) */
body#checkout .cart-summary-line.cart-total-weight,
body#checkout .cart-summary-line.cart-total-weight.hidden,
body#checkout #tc-checkout .cart-summary-line.cart-total-weight,
body#checkout #thecheckout-cart-summary .cart-summary-line.cart-total-weight,
body#checkout .dkr-mk-mirror .cart-summary-line.cart-total-weight,
body#checkout .dkr-mk-mirror [class*="cart-total-weight"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* v156 — @media(min-width:992px) .cart-summary .card-block padding 15px */
@media (min-width: 992px) {
  body#checkout #tc-checkout .cart-summary .card-block,
  body#checkout .cart-summary .card-block,
  .dkr-mk-mirror .cart-summary .card-block {
    padding: 15px !important;
  }
}

/* v157 — .checkout-block .inner-area .cart-summary margin/padding */
body#checkout #tc-checkout .checkout-block .inner-area .cart-summary,
body#checkout .checkout-block .inner-area .cart-summary,
.dkr-mk-mirror .checkout-block .inner-area .cart-summary {
  margin: -20px -15px !important;
  padding: 36px 9px 15px 15px !important;
}

/* ============================================================
   v159 — пункты 1, 9, 10, 11, 12 из плана 07.06
   ============================================================ */

/* П.1 — скрыть левую карточку CTA (дубль). Остаётся одна оранжевая справа */
body#checkout #dkr-mockup .dkr-mk-card-cta {
  display: none !important;
}

/* П.9 — красные алерты валидации скрыты до взаимодействия.
   Селекторы только в наших слотах (изоляция) */
body#checkout #dkr-mk-delivery-slot .alert,
body#checkout #dkr-mk-delivery-slot .alert-danger,
body#checkout #dkr-mk-payment-slot .alert,
body#checkout #dkr-mk-payment-slot .alert-danger,
body#checkout #dkr-mockup .js-alert-danger {
  display: none !important;
}
/* Показывать только после попытки submit (модуль вешает классы на body/форму) */
body#checkout.dkr-show-errors #dkr-mk-delivery-slot .alert,
body#checkout.dkr-show-errors #dkr-mk-delivery-slot .alert-danger,
body#checkout.dkr-show-errors #dkr-mk-payment-slot .alert,
body#checkout.dkr-show-errors #dkr-mk-payment-slot .alert-danger {
  display: block !important;
}

/* П.10 — пустой отступ сверху правой карточки: убрать空 пустоту перед товаром */
body#checkout #dkr-mockup .dkr-mk-sticky { padding-top: 14px !important; }
body#checkout #dkr-mk-cart-mirror > #thecheckout-cart-summary > .inner-area {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body#checkout #dkr-mk-cart-mirror .cart-summary-top { min-height: 0 !important; padding: 0 !important; margin: 0 !important; }

/* П.11 — компактный qty-степпер в корзине */
body#checkout #dkr-mk-cart-mirror .product-line-qty .qty-box,
body#checkout #dkr-mk-cart-mirror .bootstrap-touchspin,
body#checkout #dkr-mk-cart-mirror .input-group-qty {
  height: 28px !important;
  max-width: 96px !important;
}
body#checkout #dkr-mk-cart-mirror input.cart-line-product-quantity,
body#checkout #dkr-mk-cart-mirror input.js-cart-line-product-quantity,
body#checkout #dkr-mk-cart-mirror input[type="number"] {
  height: 26px !important;
  width: 34px !important;
  font-size: 13px !important;
  padding: 0 2px !important;
}
body#checkout #dkr-mk-cart-mirror .bootstrap-touchspin-up,
body#checkout #dkr-mk-cart-mirror .bootstrap-touchspin-down,
body#checkout #dkr-mk-cart-mirror .qty-button {
  width: 26px !important;
  height: 26px !important;
  font-size: 13px !important;
  padding: 0 !important;
}

/* П.12 — серая полоса с крестиком внизу payment-блока */
body#checkout #dkr-mk-payment-slot .alert-dismissible,
body#checkout #dkr-mk-payment-slot .close-alert,
body#checkout #dkr-mk-payment-slot div[class*="dismiss"],
body#checkout #dkr-mk-payment-slot .payment-options ~ div:last-child:not([class*="option"]) {
  display: none !important;
}

/* ============================================================
   v160b — ФИНАЛЬНАЯ перебивка цен доставки (после всех legacy).
   Модуль сам решает какая копия цены видима (inline style):
   у free — в .detail, у платных — в .name-and-delay.
   Мы только позиционируем ОБЕ absolute right по центру строки.
   display:revert — сознательный выбор: возвращает контроль inline-style
   модуля (Chrome 84+/FF 67+/Safari 9.1+, IE НЕ поддерживаем — PS тема и так его не держит).
   ============================================================ */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .fix_deliv_pay {
  position: relative !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-price {
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  white-space: nowrap !important;
  text-align: right !important;
  grid-area: auto !important;
  align-self: auto !important;
  justify-self: auto !important;
  flex: none !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .name-and-delay > .delivery-option-price {
  display: revert !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-detail > .delivery-option-price {
  display: revert !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-price .carrier-price {
  display: inline !important;
  visibility: visible !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
}
/* v164b: removed orange free price (dkr-mockup scoped) */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-price .carrier-price-with-tax-formatted,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-price .carrier-price-without-tax-formatted {
  display: none !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .name-and-delay {
  padding-right: 120px !important;
}

/* ============================================================
   v161 — Metoda płatności: ровные тонкие плитки как в макете
   ============================================================ */

/* Контейнер: 2 колонки ровные */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-options {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  width: 100% !important;
}
@media (max-width: 567px) {
  body#checkout #tc-checkout #dkr-mk-payment-slot .payment-options {
    grid-template-columns: 1fr !important;
  }
}

/* Плитка: на всю ячейку, тонкая, одна рамка */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  display: block !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .fix_deliv_pay {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  position: relative !important;
  height: auto !important;
  min-height: 0 !important;
  width: 100% !important;
}

/* Selected = чёрная рамка как в макете */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option:has(input:checked) {
  border: 2px solid #1a1a1a !important;
}
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option:hover {
  border-color: #999 !important;
}

/* Логотипы скрыть — как в макете (radio + текст) */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .payment-option-logo,
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .payment-option-logo img {
  display: none !important;
}

/* Название способа оплаты */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .payment-option-name,
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .payment-option-name span,
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .payment-option-name .h6 {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  display: block !important;
}
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option label:not(.absolute) {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  cursor: pointer !important;
}

/* Радио компактный */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .payment-radio {
  flex: 0 0 auto !important;
  width: 20px !important;
  height: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option .custom-radio {
  float: none !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* label.absolute — кликабельность всей плитки */
body#checkout #tc-checkout #dkr-mk-payment-slot .payment-option label.absolute {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 1 !important;
  cursor: pointer !important;
}

/* Oświadczam / additional-information — на всю ширину, мелкий, вне плиток */
body#checkout #tc-checkout #dkr-mk-payment-slot .js-additional-information,
body#checkout #tc-checkout #dkr-mk-payment-slot [id*="additional-information"] {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 6px 2px !important;
  margin: 0 !important;
  font-size: 12px !important;
  color: #888 !important;
  line-height: 1.4 !important;
}
body#checkout #tc-checkout #dkr-mk-payment-slot .js-additional-information a {
  font-size: 12px !important;
}

/* Скрытые формы P24 не занимают место */
body#checkout #tc-checkout #dkr-mk-payment-slot .js-payment-option-form,
body#checkout #tc-checkout #dkr-mk-payment-slot .ps-hidden {
  display: none !important;
}

/* ============================================================
   v162 — float-labels внутри полей адреса (как макет) + Masz konto ссылка
   Модуль уже имеет .has-float-label структуру — стилизуем её
   ============================================================ */

/* Лейбл внутри поля сверху мелким */
body#checkout #dkr-mk-address-slot .has-float-label {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
}
body#checkout #dkr-mk-address-slot .has-float-label .field-label {
  position: absolute !important;
  top: 7px !important;
  left: 15px !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  color: #999 !important;
  z-index: 3 !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
  line-height: 1.2 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
body#checkout #dkr-mk-address-slot .has-float-label .field-label sup,
body#checkout #dkr-mk-address-slot .has-float-label .field-label .required {
  color: #e74c3c !important;
  font-size: 10px !important;
}

/* Инпут выше + текст в нижней половине */
body#checkout #dkr-mk-address-slot .has-float-label input[type="text"],
body#checkout #dkr-mk-address-slot .has-float-label input[type="email"],
body#checkout #dkr-mk-address-slot .has-float-label input[type="tel"],
body#checkout #dkr-mk-address-slot .has-float-label input[type="number"] {
  height: 52px !important;
  padding: 20px 14px 6px 14px !important;
  font-size: 14px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}
body#checkout #dkr-mk-address-slot .has-float-label input:focus {
  outline: 0 !important;
  border-color: #f0a020 !important;
  box-shadow: 0 0 0 3px rgba(240,160,32,0.10) !important;
}

/* Телефонный префикс +48 — высота под новый инпут */
body#checkout #dkr-mk-address-slot .country-call-prefix {
  height: 52px !important;
  line-height: 52px !important;
}

/* Masz konto? ссылка в заголовке ADRES DOSTAWY */
body#checkout #dkr-mockup .dkr-mk-login {
  float: right !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #888 !important;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
body#checkout #dkr-mockup .dkr-mk-login:hover {
  color: #f0a020 !important;
  text-decoration: underline !important;
}

/* v162b — телефон: +48 префикс не накладывается на float-label */
body#checkout #dkr-mk-address-slot .form-group.phone label.dflex,
body#checkout #dkr-mk-address-slot .form-group.phone_mobile label.dflex,
body#checkout #dkr-mk-address-slot .form-group.phone .has-float-label > div,
body#checkout #dkr-mk-address-slot .form-group.phone_mobile .has-float-label > div {
  display: flex !important;
  align-items: stretch !important;
}
body#checkout #dkr-mk-address-slot .form-group.phone .country-call-prefix,
body#checkout #dkr-mk-address-slot .form-group.phone_mobile .country-call-prefix,
body#checkout #dkr-mk-address-slot .country-call-prefix {
  height: 52px !important;
  line-height: 52px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 10px !important;
  margin: 0 !important;
  border: 1px solid #e0e0e0 !important;
  border-right: 0 !important;
  border-radius: 6px 0 0 6px !important;
  background: #fafafa !important;
  font-size: 14px !important;
  color: #555 !important;
  flex: 0 0 auto !important;
  position: relative !important;
  z-index: 1 !important;
}
body#checkout #dkr-mk-address-slot .form-group.phone input,
body#checkout #dkr-mk-address-slot .form-group.phone_mobile input {
  border-radius: 0 6px 6px 0 !important;
  flex: 1 1 auto !important;
}
/* Лейбл телефона — над префиксом, чуть правее чтобы не пересекаться */
body#checkout #dkr-mk-address-slot .form-group.phone .field-label,
body#checkout #dkr-mk-address-slot .form-group.phone_mobile .field-label {
  left: 62px !important;
}

/* v162c — +48 слева через order:-1 (в DOM он после инпута, родитель flex из v162b) */
body#checkout #dkr-mk-address-slot .country-call-prefix { order: -1 !important; }

/* ============================================================
   v163 — (1) радио доставки как в оплате: контейнер .shipping-radio
   прозрачный (был двойной круг — border на контейнере И на .custom-radio)
   (2) п.7: атрибуты товара компактно inline с тонкими лейблами
   ============================================================ */

/* 1. Радио доставки — финальная перебивка ровно как .payment-radio */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .shipping-radio {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .shipping-radio .custom-radio {
  float: none !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 2px solid #d0d0d0 !important;
  border-radius: 50% !important;
  background: #fff !important;
  position: relative !important;
  display: block !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .shipping-radio .custom-radio input[type="radio"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .shipping-radio .custom-radio input[type="radio"]:checked + span {
  display: block !important;
  width: 10px !important;
  height: 10px !important;
  background: #1a1a1a !important;
  border-radius: 50% !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row.user-selected .shipping-radio .custom-radio,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .shipping-radio .custom-radio:has(input:checked) {
  border-color: #1a1a1a !important;
}

/* 2. Атрибуты товара — inline компактно: лейбл тонкий серый + значение, через точки */
body#checkout #dkr-mk-cart-mirror .product-line-info.product-attribute {
  display: inline !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body#checkout #dkr-mk-cart-mirror .product-line-info.product-attribute .label {
  font-size: 11px !important;
  font-weight: 400 !important;
  color: #999 !important;
  display: inline !important;
  margin: 0 2px 0 0 !important;
  padding: 0 !important;
}
body#checkout #dkr-mk-cart-mirror .product-line-info.product-attribute .value {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #555 !important;
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
}
body#checkout #dkr-mk-cart-mirror .product-line-info.product-attribute:not(:last-of-type)::after {
  content: ' · ' !important;
  color: #ccc !important;
  font-size: 11px !important;
}
/* Обёртка описания — чуть воздуха */
body#checkout #dkr-mk-cart-mirror .product-line-desc {
  line-height: 1.5 !important;
}

/* ============================================================
   v164 — Sposób dostawy = минимализм как Metoda płatności
   (без оранжевого: тексты серые, цены чёрные, selected чёрный 2px)
   ============================================================ */

/* Карточка опции — ровно как payment плитка */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row {
  border: 1px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: none !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row:hover {
  border-color: #999 !important;
  background: #fff !important;
  box-shadow: none !important;
}
/* Selected = 2px чёрный, белый фон (как payment) */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row.user-selected,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row:has(input:checked) {
  border: 2px solid #1a1a1a !important;
  background: #fff !important;
  box-shadow: none !important;
}

/* Название — чёрное 14/600 как payment-option-name */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .carrier-name,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-name,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-name * {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
}

/* Подпись (Termin odbioru / 5-10 dni) — серая, не оранжевая */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .carrier-delay,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-delay,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-delay * {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #999 !important;
}

/* Цены — все чёрные, включая Za darmo (минимализм без оранжевого) */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-price .carrier-price,
body#checkout #tc-checkout #dkr-mockup .delivery-option-row .delivery-option-price.free .carrier-price {
  color: #1a1a1a !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

/* Убрать жёлтые остаточные полосы/фоны внутри slot */
body#checkout #tc-checkout #dkr-mk-delivery-slot .blocks,
body#checkout #tc-checkout #dkr-mk-delivery-slot [class*="fixclass"],
body#checkout #tc-checkout #dkr-mk-delivery-slot .delivery-options::before,
body#checkout #tc-checkout #dkr-mk-delivery-slot .delivery-options::after,
body#checkout #tc-checkout #dkr-mk-delivery-slot .delivery-option-row::before,
body#checkout #tc-checkout #dkr-mk-delivery-slot .delivery-option-row::after {
  background: transparent !important;
  border-color: transparent !important;
}
body#checkout #tc-checkout #dkr-mk-delivery-slot .delivery-options {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}
/* Расстояние между опциями как в payment (gap 10px) */
body#checkout #tc-checkout #dkr-mockup .delivery-option-row {
  margin: 0 0 10px !important;
}
body#checkout #tc-checkout #dkr-mockup .delivery-option-row:last-of-type {
  margin-bottom: 0 !important;
}

/* ============================================================
   v165 — поля фактуры (#thecheckout-address-invoice) внутри карточки
   ADRES DOSTAWY, те же стили формы что у delivery. Видимостью
   управляет модуль (чекбокс i_am_business)
   ============================================================ */

/* Контейнер invoice — без рамок модуля, на всю ширину, отступ от чекбокса */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 14px 0 0 !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .inner-area,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .inner-wrapper {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Заголовок «Adres faktury» — компактный серый разделитель вместо жирного хедера */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .block-header {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
  color: #888 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid #eee !important;
  padding: 14px 0 10px !important;
  margin: 0 !important;
}

/* Форма фактуры — тот же grid 10col что у delivery */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice form,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .js-address-form {
  display: block !important;
  grid-template-columns: none !important;
  width: 100% !important;
  max-width: 100% !important;
}
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-fields {
  display: grid !important;
  grid-template-columns: repeat(10, 1fr) !important;
  gap: 14px 16px !important;
  width: 100% !important;
  max-width: 100% !important;
}
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group {
  grid-column: span 5 !important;
  width: 100% !important;
  margin: 0 !important;
}
/* Полная ширина: firma, NIP, адрес, alias */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="company"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.company,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="vat"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.vat_number,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="address1"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.address1,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.email,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.phone {
  grid-column: 1 / -1 !important;
}
/* Kod 30 / Miasto 70 как в delivery */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.postcode,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="postcode"] {
  grid-column: span 3 !important;
}
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.city,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="city"] {
  grid-column: span 7 !important;
}

/* Float-labels — те же что delivery (правила v162 уже на #dkr-mk-address-slot скоупе, наследуются) */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .has-float-label input[type="text"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .has-float-label input[type="email"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .has-float-label input[type="tel"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .has-float-label input[type="number"] {
  height: 52px !important;
  padding: 20px 14px 6px 14px !important;
  font-size: 14px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  background: #fff !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Скрытые form-group не занимают grid-ячейки */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.hidden,
body#checkout #dkr-mk-address-slot .form-group.hidden {
  display: none !important;
}

/* v165b — Firma/NIP растянуть (business-field обёртки вне form-group правил) */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.business-field,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice [class*="business"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[class*="company"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[class*="vat"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[class*="firma"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[class*="nip"] {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice input {
  width: 100% !important;
  min-width: 0 !important;
}

/* ============================================================
   v166 — (1) при включённом VAT-чекбоксе скрываем первую форму
   (delivery) — данные вводятся один раз в DANE DO FAKTURY.
   Скрываем ТОЛЬКО form визуально — поля остаются в DOM,
   модуль (is-invoice-address-primary) сабмитит invoice как главный.
   (2) Firma + NIP = 50/50
   ============================================================ */

/* 1. Чекбокс включён → первая форма прячется (чекбокс остаётся видимым) */
body#checkout #dkr-mk-address-slot:has(#i_am_business:checked) #thecheckout-address-delivery form.address-fields,
body#checkout #dkr-mk-address-slot:has(#i_am_business:checked) #thecheckout-address-delivery form#delivery-address {
  display: none !important;
}
/* Заголовок DANE DO FAKTURY при скрытой первой форме — без верхнего бордера (форма теперь первая) */
body#checkout #dkr-mk-address-slot:has(#i_am_business:checked) #thecheckout-address-invoice .block-header {
  border-top: 0 !important;
  padding-top: 4px !important;
}

/* 2. Firma 50% + NIP 50% (перебивка v165 full-width) */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="company"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.company,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group:has(input[name="company"]) {
  grid-column: span 5 !important;
}
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="vat"],
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.vat_number,
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group:has(input[name="vat_number"]) {
  grid-column: span 5 !important;
}
@media (max-width: 567px) {
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="company"],
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.company,
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group:has(input[name="company"]),
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group[id*="vat"],
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.vat_number,
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group:has(input[name="vat_number"]) {
    grid-column: 1 / -1 !important;
  }
}

/* v166b — .business-fields-container = grid 10col (Firma 50 / NIP 50) */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .business-fields-container {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(10, 1fr) !important;
  gap: 14px 16px !important;
  width: 100% !important;
}
@media (max-width: 567px) {
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .business-fields-container .form-group.company,
  body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .business-fields-container .form-group.vat_number {
    grid-column: 1 / -1 !important;
  }
}

/* ============================================================
   v167 — ОДНА форма (invoice). Старая delivery скрыта насовсем
   (остаётся в DOM для модуля). Чекбокс VAT перенесён JS-ом
   в начало invoice. Email-grid правила для invoice.
   ============================================================ */

/* 1. Delivery-форма — скрыта всегда */
body#checkout #dkr-mk-address-slot #thecheckout-address-delivery {
  display: none !important;
}

/* 2. Invoice-форма — всегда видима (перебивка модульных скрытий) */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice {
  display: block !important;
  visibility: visible !important;
  margin: 0 !important;
}

/* 3. Заголовок DANE DO FAKTURY удалён JS-ом; страховка если AJAX вернёт */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .block-header {
  display: none !important;
}

/* 4. Чекбокс VAT (перенесён в начало invoice) — аккуратная строка */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .business-private-checkboxes {
  display: block !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}
body#checkout #dkr-mk-address-slot .business-private-checkboxes label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
  color: #555 !important;
  cursor: pointer !important;
  margin: 0 !important;
}

/* 5. Email-группа внутри invoice — full-width (уже покрыто .form-group.email 1/-1 из v165) */
body#checkout #dkr-mk-address-slot #thecheckout-address-invoice .form-group.email {
  grid-column: 1 / -1 !important;
}

/* 6. v166 :has-правило больше не нужно (delivery всегда скрыт) — нейтрализуем мягко:
   правило таргетит form внутри delivery, который и так display:none — конфликтов нет */

/* v167b — никакой block-header внутри адресного слота (наш заголовок = h2 карточки) */
body#checkout #dkr-mk-address-slot .block-header {
  display: none !important;
}

/* v168 — скрыть остаточный модульный каркас (все рабочие блоки уже в #dkr-mockup; поля/кнопки внутри живут для POST и программных кликов) */
body#checkout #tc-container,
body#checkout #tc-container-mobile {
  display: none !important;
}

/* v169b — алерты в правой колонке (cart-mirror) скрыты как в слотах */
body#checkout #dkr-mk-cart-mirror .alert,
body#checkout #dkr-mk-cart-mirror .alert-danger,
body#checkout #dkr-mk-cart-mirror [class*="error-msg"] {
  display: none !important;
}

/* ── ЗАДАЧА 2: термин доставки в сводке ── */
body#checkout #dkr-mk-cart-mirror .dkr-delivery-term {
  display: flex !important;
  justify-content: space-between !important;
  font-size: 13px !important;
}
body#checkout #dkr-mk-cart-mirror .dkr-delivery-term .label { color: #888 !important; }
body#checkout #dkr-mk-cart-mirror .dkr-delivery-term .value { color: #1a1a1a !important; font-weight: 600 !important; }

/* ── ЗАДАЧА 1 (v172): split-адрес — сетка, float-label из нативного has-float-label ── */
#dkr-mockup #dkr-mk-address-slot .dkr-addr-split {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px 16px !important;
  margin: 0 0 14px !important;
  grid-column: 1 / -1 !important;
}
#dkr-mockup #dkr-mk-address-slot .dkr-addr-split .dkr-addr-street { grid-column: 1 / -1 !important; }
#dkr-mockup #dkr-mk-address-slot .dkr-addr-split .dkr-addr-f { margin: 0 !important; width: 100% !important; }
/* инпуты split = те же float-label правила что нативные (v162 на #dkr-mk-address-slot .has-float-label) */
#dkr-mockup #dkr-mk-address-slot .dkr-addr-split .has-float-label input {
  height: 52px !important;
  padding: 20px 14px 6px 14px !important;
  font-size: 14px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  background: #fff !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
#dkr-mockup #dkr-mk-address-slot .dkr-addr-split .has-float-label .field-label {
  position: absolute !important;
  top: 7px !important; left: 15px !important;
  font-size: 10px !important; font-weight: 500 !important;
  color: #999 !important; pointer-events: none !important;
  text-transform: none !important; letter-spacing: 0 !important;
}
#dkr-mockup #dkr-mk-address-slot .dkr-addr-split .has-float-label { position: relative !important; display: block !important; }
@media (max-width: 567px) {
  #dkr-mockup #dkr-mk-address-slot .dkr-addr-split { grid-template-columns: 1fr !important; }
}

/* ── ЗАДАЧА (Paweł 2026-06-09): блок «Dostawa pod inny adres» (.second-address)
   работает некорректно — убираем полностью на checkout ── */
body#checkout .second-address,
body#checkout #tc-checkout .second-address {
  display: none !important;
}

/* ── ЗАДАЧА (Paweł 2026-06-09): логотип в шапке checkout кликабельный → главная.
   Лого рисуется через .dkr-progress-bar::before, поэтому кладём поверх него
   реальную прозрачную ссылку <a.dkr-logo-link> (вставляет dkr-mockup.js) ── */
body#checkout .dkr-progress-bar { position: relative !important; }
body#checkout .dkr-progress-bar .dkr-logo-link {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  height: 100% !important;
  width: 240px !important;
  max-width: 50% !important;
  z-index: 50 !important;
  cursor: pointer !important;
  display: block !important;
}
@media (max-width: 767px) {
  body#checkout .dkr-progress-bar .dkr-logo-link { width: 130px !important; }
}
@media (max-width: 575px) {
  body#checkout .dkr-progress-bar .dkr-logo-link { width: 110px !important; }
}

/* === DKR fix 2026-06-09: убрать пробел сверху на checkout ===
   #dkr-header-spacer (179px) компенсирует fixed кастомный хедер.
   На checkout хедер скрыт → спейсер давал большой белый пробел. Скрываем только тут. */
body#checkout #dkr-header-spacer,
body#checkout .dkr-topbar { display: none !important; }
