/* APW - checkout WooCommerce (Elementor Pro + Solace + Stripe UPE) */
.woocommerce-checkout, .e-checkout { --apw-yellow:#FDC033; --apw-yellow-hover:#FFD43B; --apw-yellow-press:#F2A81C; --apw-tint:#FFF6DF; --apw-ink:#202226; --apw-body:#3C434D; --apw-muted:#6A7079; --apw-line:#E6E6E6; --apw-paper:#FFFFFF; --apw-soft:#F7F7F7; --apw-font:"Mulish","Helvetica Neue",Arial,sans-serif; --apw-ease:cubic-bezier(.22,.61,.36,1); }

/* 1. Przycisk zamowienia - byl niebieski */
.woocommerce #payment #place_order,
.e-checkout #place_order,
.e-checkout__order_review #place_order,
body .woocommerce button.button.alt,
body .woocommerce a.button.alt {
  font-family: var(--apw-font) !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  color: #202226 !important;
  background: #FDC033 !important;
  background-image: none !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 19px 32px !important;
  min-height: 58px !important;
  width: 100% !important;
  text-shadow: none !important;
  box-shadow: 0 0 0 6px rgba(253,192,51,.32), 0 10px 24px rgba(32,34,38,.14) !important;
  transition: background .22s var(--apw-ease), transform .14s var(--apw-ease) !important;
}
.woocommerce #payment #place_order:hover, .e-checkout #place_order:hover { background:#FFD43B !important; }
.woocommerce #payment #place_order:active, .e-checkout #place_order:active { background:#F2A81C !important; transform:scale(.97); }
.woocommerce #payment #place_order:disabled, .woocommerce #payment #place_order.disabled { opacity:.45 !important; box-shadow:none !important; }

/* 2. Pola formularza - 16px, bo ponizej iOS zoomuje strone */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.e-checkout .form-row input.input-text,
.woocommerce-input-wrapper input.input-text {
  font-family: var(--apw-font) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: #202226 !important;
  background: #F7F7F7 !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 15px 18px !important;
  min-height: 52px !important;
  height: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
  transition: box-shadow .22s var(--apw-ease), background .22s var(--apw-ease);
}
.woocommerce form .form-row textarea { border-radius: 20px !important; min-height: 110px !important; }
.woocommerce form .form-row input.input-text::placeholder { color:#6A7079 !important; font-weight:400 !important; opacity:1; }
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: none !important;
  background: #FFFFFF !important;
  box-shadow: 0 0 0 2px #202226 !important;
}
.woocommerce .form-row input:-webkit-autofill {
  -webkit-text-fill-color: #202226 !important;
  -webkit-box-shadow: 0 0 0 1000px #F7F7F7 inset !important;
}
.woocommerce form .form-row label, .e-checkout .form-row label {
  display: block !important;
  font-family: var(--apw-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #202226 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  margin: 0 0 8px !important;
  line-height: 1.4 !important;
}
.woocommerce form .form-row abbr.required { color:#F2A81C !important; text-decoration:none !important; border:none !important; }
.woocommerce form .form-row .optional { color:#6A7079; font-weight:400; }
.woocommerce form .form-row { margin: 0 0 18px !important; padding: 0 !important; }
.woocommerce form .form-row .description, .woocommerce form .form-row span.description { font-size:13px !important; color:#6A7079 !important; margin-top:6px; }

/* 3. Select kraju (select2) */
.woocommerce .select2-container .select2-selection--single,
.select2-container--default .select2-selection--single {
  height: 52px !important;
  background: #F7F7F7 !important;
  border: none !important;
  border-radius: 999px !important;
  display: flex;
  align-items: center;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  font-family: var(--apw-font); font-size: 16px; font-weight: 600; color: #202226; line-height: 1.4; padding-left: 18px; padding-right: 42px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 52px; right: 14px; }
.select2-container--default.select2-container--open .select2-selection--single { box-shadow: 0 0 0 2px #202226 !important; }
.select2-dropdown { border:none !important; border-radius:20px !important; overflow:hidden; box-shadow:0 12px 32px rgba(32,34,38,.14) !important; font-family:var(--apw-font); }
.select2-container--default .select2-search--dropdown .select2-search__field { font-size:16px !important; border:none !important; background:#F7F7F7 !important; border-radius:999px !important; padding:10px 16px !important; }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background:#FDC033 !important; color:#202226 !important; }

/* 4. Tabela zamowienia */
.woocommerce table.shop_table { border:none !important; border-radius:0 !important; font-family:var(--apw-font); font-size:15px; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td {
  border-left:none !important; border-right:none !important; border-bottom:none !important;
  border-top:1px solid #E6E6E6 !important; padding:14px 0 !important; color:#3C434D;
}
.woocommerce table.shop_table thead th { border-top:none !important; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:#6A7079 !important; }
.woocommerce table.shop_table .order-total th,
.woocommerce table.shop_table .order-total td,
.woocommerce table.shop_table .order-total td .amount { font-weight:900 !important; font-size:20px !important; color:#202226 !important; text-transform:uppercase; }
.woocommerce table.shop_table .order-total small { font-weight:400; font-size:12px; color:#6A7079; }

/* 5. Kupon i komunikaty */
.woocommerce .woocommerce-info, .woocommerce .woocommerce-message {
  background:#FFF6DF !important; border:none !important; border-radius:20px !important; color:#202226 !important;
  font-family:var(--apw-font); font-size:14px !important; padding:16px 20px !important;
}
.woocommerce .woocommerce-info::before, .woocommerce .woocommerce-message::before { display:none !important; }
.woocommerce form.checkout_coupon { border:none !important; border-radius:20px !important; background:#F7F7F7; padding:20px !important; margin:0 0 20px !important; }
.woocommerce button.button:not(.alt), .woocommerce a.button:not(.alt) {
  font-family:var(--apw-font) !important; font-weight:800 !important; font-size:13px !important;
  text-transform:uppercase !important; letter-spacing:.06em !important; color:#fff !important;
  background:#202226 !important; border:none !important; border-radius:999px !important;
  padding:14px 24px !important; min-height:48px !important; width:auto !important; box-shadow:none !important;
}
.woocommerce button.button:not(.alt):hover { background:#33373D !important; }

/* 6. Platnosci - Stripe UPE.
   Pola karty i wybor banku sa w iframe Stripe. Wtyczka kopiuje tam style
   odczytane z tych elementow DOM, dlatego stylujemy je normalnie. */
.woocommerce-checkout #payment { background:transparent !important; border-radius:0 !important; }
.woocommerce-checkout #payment ul.payment_methods {
  border:none !important; padding:0 !important; margin:0 0 20px !important;
  display:flex; flex-direction:column; gap:12px;
}
.woocommerce-checkout #payment ul.payment_methods li {
  list-style:none !important; background:#F7F7F7 !important; border:none !important;
  border-radius:20px !important; padding:16px 20px !important; margin:0 !important;
}
.woocommerce-checkout #payment ul.payment_methods li label {
  font-family:var(--apw-font) !important; font-weight:800 !important; font-size:14px !important;
  text-transform:uppercase !important; letter-spacing:.04em !important; color:#202226 !important;
  margin:0 !important; display:inline-flex !important; align-items:center; gap:10px;
}
.woocommerce-checkout #payment div.payment_box {
  background:#FFFFFF !important; border-radius:16px !important; font-family:var(--apw-font);
  font-size:14px !important; color:#3C434D !important; margin:14px 0 0 !important; padding:16px !important;
}
.woocommerce-checkout #payment div.payment_box::before { display:none !important; }
.wc-stripe-upe-element, #wc-stripe-upe-element, .wc-stripe-payment-element { background:transparent !important; border:none !important; padding:0 !important; }
.woocommerce-checkout #payment .stripe-gateway-testmode-badge, .woocommerce-checkout #payment .wc-stripe-test-mode-notice {
  font-size:12px !important; border:none !important; border-radius:12px !important; background:#FFF6DF !important; color:#202226 !important;
}

/* 7. Zgody, bledy, naglowki */
.woocommerce-checkout input[type=checkbox], .woocommerce-checkout input[type=radio] {
  accent-color:#202226; width:20px !important; height:20px !important; min-width:20px; margin:0 !important; cursor:pointer;
}
.woocommerce-checkout .woocommerce-form__label-for-checkbox, .woocommerce-checkout label.checkbox {
  display:flex !important; align-items:flex-start; gap:12px;
  font-family:var(--apw-font); font-size:14px !important; font-weight:400 !important;
  line-height:1.6 !important; color:#3C434D !important; text-transform:none !important; letter-spacing:0 !important;
}
.woocommerce-privacy-policy-text p { font-size:13px !important; line-height:1.6; color:#6A7079 !important; }
.woocommerce .woocommerce-error { background:transparent !important; border:none !important; padding-left:0 !important; list-style:none !important; }
.woocommerce .woocommerce-error::before { display:none !important; }
.woocommerce .woocommerce-error li { color:#D9453B !important; font-family:var(--apw-font); font-size:14px !important; font-weight:800 !important; }
.woocommerce form .form-row.woocommerce-invalid input.input-text { box-shadow:0 0 0 2px #D9453B !important; }
.woocommerce-checkout h3, .woocommerce-checkout #order_review_heading, .e-checkout h3 {
  font-family:var(--apw-font) !important; font-weight:900 !important; font-size:20px !important;
  text-transform:uppercase !important; letter-spacing:.04em !important; color:#202226 !important; margin:0 0 20px !important;
}

/* 8. Mobile */
@media (max-width:600px){
  .woocommerce form .form-row-first, .woocommerce form .form-row-last { width:100% !important; float:none !important; margin-right:0 !important; }
  .woocommerce #payment #place_order, .e-checkout #place_order { font-size:15px !important; }
}
@media (min-width:601px){
  .woocommerce-billing-fields__field-wrapper { display:grid; grid-template-columns:1fr 1fr; column-gap:16px; }
  .woocommerce-billing-fields__field-wrapper .form-row { grid-column:span 2; width:100% !important; float:none !important; }
  .woocommerce-billing-fields__field-wrapper #billing_first_name_field,
  .woocommerce-billing-fields__field-wrapper #billing_last_name_field,
  .woocommerce-billing-fields__field-wrapper #billing_postcode_field,
  .woocommerce-billing-fields__field-wrapper #billing_city_field { grid-column:span 1; }
}
@media (prefers-reduced-motion: reduce){ .woocommerce *, .e-checkout * { transition:none !important; animation:none !important; } }

/* 9. Podpowiedz pod polem.
   WooCommerce renderuje ja jako niebieski dymek z ogonkiem, chowany JS-em
   i pokazywany przy focusie - na mobile nachodzil na kolejne pole.
   Robimy z niej zwykly, staly podpis. */
.woocommerce form .form-row .description,
.woocommerce form .form-row span.description {
  display: block !important;
  position: static !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #6A7079 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 6px 18px 0 !important;
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.woocommerce form .form-row .description::before,
.woocommerce form .form-row .description::after { display: none !important; content: none !important; }

/* 10. Blok platnosci na waskich ekranach.
   Kafelek metody + payment_box + kontener Elementora dawaly razem
   ponad 70px marginesu w poziomie - iframe Stripe robil sie za waski. */
.woocommerce-checkout #payment div.payment_box {
  background: transparent !important;
  padding: 12px 0 0 !important;
  border-radius: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.woocommerce-checkout #payment div.payment_box p { margin: 0 0 8px !important; }
.woocommerce-checkout #payment .wc-stripe-upe-element,
.woocommerce-checkout #payment #wc-stripe-upe-element,
.woocommerce-checkout #payment .wc-stripe-payment-element,
.woocommerce-checkout #payment iframe {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

@media (max-width: 600px) {
  .woocommerce-checkout #payment ul.payment_methods li { padding: 12px 12px !important; border-radius: 16px !important; }
  .woocommerce-checkout #payment div.payment_box { padding: 10px 0 0 !important; }
  .e-checkout .woocommerce-checkout-payment,
  .woocommerce-checkout #payment { padding-left: 0 !important; padding-right: 0 !important; }
}

/* 11. Mobile - zwezamy zagniezdzone karty.
   Na telefonie mielismy trzy warstwy paddingu: karta Elementora 28px,
   kafelek metody 20px, box platnosci 18px = 132px zjedzone z ~390px ekranu. */
@media (max-width: 600px) {
  .e-checkout__order_review,
  .e-checkout__order_review-2,
  .e-coupon-box,
  .e-checkout__column-start #customer_details {
    padding: 18px 16px !important;
    border-radius: 22px !important;
  }
  .woocommerce-checkout #payment ul.payment_methods li { padding: 12px 10px !important; }
  .woocommerce-checkout #payment ul.payment_methods li label { font-size: 13px !important; }
}

/* ==========================================================================
   12. SEKCJA PLATNOSCI - przebudowa.
   Jedna bramka (Stripe UPE), ktora sama pokazuje wybor Przelewy24/Karta/BLIK.
   Zdejmujemy wiec cala otoczke Woo: radio bramki, kafelek, zagniezdzone tlo.
   Zostaje jedna plaszczyzna: naglowek + akordeon Stripe.
   ========================================================================== */

.woocommerce-checkout #payment ul.payment_methods {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  background: transparent !important;
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
  list-style: none !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover { box-shadow: none !important; }

/* Radio i etykieta jedynej bramki - zbedne, Stripe ma wlasny wybor metody */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input.input-radio,
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label[for^="payment_method_"] {
  display: none !important;
}

/* Kontener tresci bramki - plaski, pelna szerokosc */
.woocommerce-checkout #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box.payment_method_stripe {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  color: #3C434D !important;
  font-family: var(--apw-font) !important;
  font-size: 14px !important;
}
.woocommerce-checkout #payment div.payment_box::before { display: none !important; }

/* "Dodaj nowy sposob platnosci" - jedyna opcja, wiec wybor pozorny */
.woocommerce-checkout #payment .wc-saved-payment-methods[data-count="0"],
.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-new,
.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew {
  display: none !important;
}

/* Wlasciwy element Stripe */
.woocommerce-checkout #payment fieldset#wc-stripe-upe-form,
.woocommerce-checkout #payment fieldset.wc-payment-form {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  min-width: 0 !important;
}
.woocommerce-checkout #payment .wc-stripe-upe-element {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}
.woocommerce-checkout #payment #wc-stripe-upe-errors {
  font-family: var(--apw-font);
  font-size: 13px;
  font-weight: 700;
  color: #D9453B;
  margin-top: 10px;
}

/* Notki trybu testowego Stripe - male i stonowane */
.woocommerce-checkout #payment .wc-stripe-payment-method-instruction,
.woocommerce-checkout #payment .stripe-gateway-testmode-badge {
  font-family: var(--apw-font) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #6A7079 !important;
  background: #FFF6DF !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 10px 14px !important;
  margin: 0 0 12px !important;
}

/* Oddech miedzy naglowkiem a akordeonem Stripe */
.e-checkout__order_review-2 .e-checkout-secondary-title { margin: 0 0 16px !important; }
.woocommerce-checkout #payment { margin-top: 0 !important; }
.woocommerce-checkout #payment .form-row.place-order { margin: 22px 0 0 !important; padding: 0 !important; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin: 0 0 18px !important; }

/* UWAGA: sekcja 12 celowo nadpisuje wczesniejsze reguly z sekcji 6, 10 i 11
   dotyczace #payment - te zostawiono dla kafelkowego ukladu, gdyby kiedys
   pojawila sie druga bramka platnosci (np. PayPal obok Stripe). */

/* ==========================================================================
   13. KAFELKI METOD PLATNOSCI (odwzorowanie makiety).
   Stripe przelaczony z pojedynczego Payment Elementu na osobne bramki,
   wiec kazda metoda ma wlasny kafelek: radio + nazwa + podpis.
   Ta sekcja nadpisuje ukrywanie radia z sekcji 12.
   ========================================================================== */

.woocommerce-checkout #payment ul.payment_methods {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: none !important;
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm {
  display: block !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > input.input-radio {
  display: inline-block !important;
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  pointer-events: none !important;
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > label.apw-pm__label {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 20px !important;
  border-radius: 999px !important;
  background: #F7F7F7 !important;
  cursor: pointer !important;
  box-shadow: none !important;
  text-transform: none !important;
  transition: box-shadow 220ms var(--apw-ease), background 220ms var(--apw-ease);
}
/* Wlasne kolko radia - natywne znika, zeby wygladalo tak samo wszedzie */
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > label.apw-pm__label::before {
  content: "";
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 2px #C7CBD1;
  background: #FFFFFF;
  transition: box-shadow 140ms var(--apw-ease);
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > input.input-radio:checked + label.apw-pm__label::before {
  box-shadow: inset 0 0 0 6px #202226;
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > input.input-radio:checked + label.apw-pm__label {
  background: #FFFFFF !important;
  box-shadow: inset 0 0 0 2px #202226 !important;
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > input.input-radio:focus-visible + label.apw-pm__label {
  box-shadow: inset 0 0 0 2px #202226, 0 0 0 4px rgba(253,192,51,.45) !important;
}
.apw-pm__text { display: flex !important; flex-direction: column !important; gap: 2px !important; flex: 1 1 auto; min-width: 0; }
.apw-pm__title {
  font-family: var(--apw-font) !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  color: #202226 !important;
  line-height: 1.3 !important;
}
.apw-pm__note {
  font-family: var(--apw-font) !important;
  font-weight: 400 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #6A7079 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.apw-pm__icon { flex: 0 0 auto; display: flex; align-items: center; gap: 6px; }
.apw-pm__icon img { max-height: 22px !important; width: auto !important; margin: 0 !important; float: none !important; }

/* Pole karty rozwijane pod wybranym kafelkiem */
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > div.payment_box {
  background: #FFFFFF !important;
  border: none !important;
  border-radius: 20px !important;
  box-shadow: inset 0 0 0 1px #E6E6E6 !important;
  padding: 18px !important;
  margin: 10px 0 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > div.payment_box::before { display: none !important; }

@media (max-width: 600px) {
  .woocommerce-checkout #payment ul.payment_methods li.apw-pm > label.apw-pm__label { padding: 14px 16px !important; gap: 12px !important; }
  .woocommerce-checkout #payment ul.payment_methods li.apw-pm > div.payment_box { padding: 14px !important; }
}

/* Pole kodu BLIK w rozwinietym kafelku - jak pozostale inputy */
.woocommerce-checkout #payment #wc-stripe-blik-code_field label { font-size:13px !important; font-weight:700 !important; margin-bottom:6px !important; }
.woocommerce-checkout #payment #wc-stripe-blik-code {
  letter-spacing: .22em !important;
  font-weight: 800 !important;
  text-align: center;
  max-width: 220px;
}
.woocommerce-checkout #payment .payment_box p.testmode-info {
  font-size: 12px !important; color: #6A7079 !important; background: #FFF6DF !important;
  border-radius: 12px !important; padding: 10px 14px !important; margin: 0 0 12px !important;
}
.woocommerce-checkout #payment .payment_box p { font-size: 13px !important; line-height: 1.6 !important; color: #3C434D !important; }
.woocommerce-checkout #payment .payment_box p:last-child { margin-bottom: 0 !important; }

/* 14. Zdjecie szarych ramek wewnatrz kafelkow.
   Zrodla: inset ring na payment_box (sekcja 13) oraz domyslne obramowanie
   <fieldset>, ktory Stripe wstawia wokol pol metody. */
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > div.payment_box {
  box-shadow: none !important;
  border: none !important;
  background: #F7F7F7 !important;
  border-radius: 20px !important;
}
.woocommerce-checkout #payment fieldset,
.woocommerce-checkout #payment .wc-payment-form,
.woocommerce-checkout #payment .wc-upe-form,
.woocommerce-checkout #payment .payment_box fieldset {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  min-width: 0 !important;
}
.woocommerce-checkout #payment fieldset legend { display: none !important; }
.woocommerce-checkout #payment .payment_box .form-row { margin: 0 0 10px !important; padding: 0 !important; }
.woocommerce-checkout #payment .payment_box .form-row:last-child { margin-bottom: 0 !important; }

/* 15. Szara ramka dookola sekcji kasy.
   Zrodlo: Elementor Pro rysuje 1px #d5d8dc na .e-checkout__order_review,
   .e-coupon-box i #customer_details .col-1 (zmienna --sections-border-type).
   Nasze style ustawialy tlo i cien, ale nie zdejmowaly obramowania. */
.elementor-widget-woocommerce-checkout-page { --sections-border-type: none; --sections-border-color: transparent; }
.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .col-1,
.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .col-2,
.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__order_review,
.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__order_review-2,
.elementor-widget-woocommerce-checkout-page .woocommerce .e-coupon-box,
.e-checkout__order_review, .e-checkout__order_review-2, .e-coupon-box {
  border: none !important;
  border-width: 0 !important;
}

/* Cofniecie sekcji 14: rozwiniete pole znow biale,
   inaczej szary input na szarym tle byl niewidoczny. */
.woocommerce-checkout #payment ul.payment_methods li.apw-pm > div.payment_box {
  background: #FFFFFF !important;
  box-shadow: none !important;
  border: none !important;
}
.woocommerce-checkout #payment .payment_box input.input-text,
.woocommerce-checkout #payment .payment_box #wc-stripe-blik-code {
  background: #F4F4F4 !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 15px 18px !important;
  min-height: 52px !important;
  font-size: 16px !important;
}
.woocommerce-checkout #payment .payment_box input.input-text:focus {
  background: #FFFFFF !important;
  box-shadow: 0 0 0 2px #202226 !important;
}
