/* =========================================================
   GEMOBILE - Custom checkout plugin v1
   Osobna wtyczka, bez podmiany aktualnych plików.
   ========================================================= */

body.woocommerce-checkout:not(.woocommerce-order-received){
  background:#f6f6f6;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .main-content,
body.woocommerce-checkout:not(.woocommerce-order-received) .site-content,
body.woocommerce-checkout:not(.woocommerce-order-received) #main{
  background:#f6f6f6;
}

body.woocommerce-checkout:not(.woocommerce-order-received) h1.entry-title,
body.woocommerce-checkout:not(.woocommerce-order-received) .page-title{
  display:none!important;
}

.gemobile-checkout-page{
  max-width:1240px;
  margin:0 auto;
  color:#111;
}

.gemobile-checkout-page *{
  box-sizing:border-box;
}

.gemobile-checkout-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,360px);
  gap:22px;
  align-items:center;
  margin:0 0 18px;
  padding:30px;
  border:1px solid rgba(214,179,106,.28);
  border-radius:30px;
  background:
    radial-gradient(circle at top right,rgba(214,179,106,.16),transparent 36%),
    linear-gradient(180deg,#fffaf0 0%,#fff 100%);
  box-shadow:0 18px 50px rgba(0,0,0,.055);
}

.gemobile-checkout-eyebrow{
  display:inline-flex;
  margin-bottom:10px;
  color:#75551b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.gemobile-checkout-hero h1{
  margin:0;
  color:#0b0b0d;
  font-size:clamp(30px,3vw,46px);
  line-height:1.02;
  font-weight:950;
  letter-spacing:-.05em;
}

.gemobile-checkout-hero p{
  margin:12px 0 0;
  max-width:650px;
  color:#5f6368;
  font-size:16px;
  line-height:1.5;
  font-weight:650;
}

.gemobile-checkout-hero__benefits{
  display:grid;
  gap:8px;
}

.gemobile-checkout-hero__benefits span{
  display:flex;
  align-items:center;
  min-height:38px;
  padding:9px 13px;
  border-radius:999px;
  background:#fff;
  color:#111;
  font-size:13px;
  font-weight:900;
  box-shadow:0 6px 18px rgba(0,0,0,.04);
}

.gemobile-checkout-hero__benefits span::before{
  content:'✓';
  margin-right:8px;
  font-weight:950;
}

.gemobile-checkout-coupon-box{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 18px;
  padding:14px 18px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.035);
}

.gemobile-checkout-coupon-box strong{
  display:block;
  color:#111;
  font-size:14px;
  font-weight:950;
}

.gemobile-checkout-coupon-box span{
  display:block;
  margin-top:3px;
  color:#5f6368;
  font-size:13px;
  font-weight:650;
  line-height:1.35;
}

.gemobile-checkout-copy-code{
  min-height:38px;
  padding:0 14px;
  border:0;
  border-radius:999px;
  background:#0b0b0d;
  color:#fff;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}

.gemobile-checkout-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(390px,450px);
  gap:24px;
  align-items:start;
}

.gemobile-checkout-main,
.gemobile-checkout-sidebar{
  min-width:0;
}

.gemobile-checkout-sidebar{
  position:sticky;
  top:105px;
}

.gemobile-checkout-card{
  margin-bottom:16px;
  padding:22px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:24px;
  background:#fff;
  box-shadow:0 12px 34px rgba(0,0,0,.045);
}

.gemobile-checkout-card__head{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:18px;
}

.gemobile-checkout-card__head > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:50%;
  background:#0b0b0d;
  color:#fff;
  font-size:13px;
  font-weight:950;
  line-height:1;
}

.gemobile-checkout-card__head h2{
  margin:0;
  color:#0b0b0d;
  font-size:22px;
  line-height:1.1;
  font-weight:950;
  letter-spacing:-.03em;
}

.gemobile-checkout-card__head p{
  margin:5px 0 0;
  color:#5f6368;
  font-size:13px;
  line-height:1.35;
  font-weight:650;
}

.gemobile-checkout-order-heading{
  display:none!important;
}

/* Coupon / notices WooCommerce */
.gemobile-checkout-page .woocommerce-info,
.gemobile-checkout-page .woocommerce-message,
.gemobile-checkout-page .woocommerce-error,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.035)!important;
  color:#111!important;
  font-size:13px!important;
  line-height:1.35!important;
}

body.woocommerce-checkout form.checkout_coupon{
  max-width:1240px;
  margin:0 auto 18px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.035)!important;
}

/* Fields */
.gemobile-checkout-page #customer_details .col-1,
.gemobile-checkout-page #customer_details .col-2{
  width:100%!important;
  max-width:none!important;
  float:none!important;
}

.gemobile-checkout-page .woocommerce-billing-fields h3,
.gemobile-checkout-page .woocommerce-shipping-fields h3,
.gemobile-checkout-page .woocommerce-additional-fields h3{
  margin:0 0 14px!important;
  color:#111!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
}

.gemobile-checkout-page .form-row{
  margin-bottom:12px!important;
}

.gemobile-checkout-page .form-row label{
  margin-bottom:6px!important;
  color:#222!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.2!important;
}

.gemobile-checkout-page input.input-text,
.gemobile-checkout-page textarea,
.gemobile-checkout-page select,
.gemobile-checkout-page .select2-selection{
  min-height:48px!important;
  border:1px solid rgba(0,0,0,.13)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#111!important;
  font-size:15px!important;
  font-weight:650!important;
  box-shadow:none!important;
}

.gemobile-checkout-page textarea{
  min-height:96px!important;
  padding-top:12px!important;
}

.gemobile-checkout-page input.input-text:focus,
.gemobile-checkout-page textarea:focus,
.gemobile-checkout-page select:focus,
.gemobile-checkout-page .select2-container--open .select2-selection{
  border-color:#111!important;
  box-shadow:0 0 0 4px rgba(17,17,17,.07)!important;
  outline:none!important;
}

/* Order table */
.gemobile-checkout-page #order_review table.shop_table{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  table-layout:auto!important;
  border-collapse:collapse!important;
  border:1px solid rgba(0,0,0,.07)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#fff!important;
}

.gemobile-checkout-page #order_review table.shop_table th,
.gemobile-checkout-page #order_review table.shop_table td{
  padding:12px 13px!important;
  vertical-align:top!important;
  border-top:1px solid rgba(0,0,0,.07)!important;
  color:#222!important;
}

.gemobile-checkout-page #order_review table.shop_table thead th{
  border-top:0!important;
  color:#111!important;
  font-size:13px!important;
  font-weight:900!important;
}

.gemobile-checkout-page #order_review table.shop_table .product-name{
  width:auto!important;
  max-width:none!important;
  color:#111!important;
  font-size:13.5px!important;
  line-height:1.28!important;
  font-weight:750!important;
  white-space:normal!important;
  word-break:normal!important;
}

.gemobile-checkout-page #order_review table.shop_table .product-total,
.gemobile-checkout-page #order_review table.shop_table td.product-total,
.gemobile-checkout-page #order_review table.shop_table th.product-total{
  width:118px!important;
  min-width:105px!important;
  text-align:right!important;
  white-space:nowrap!important;
}

.gemobile-checkout-page #order_review table.shop_table .amount{
  white-space:nowrap!important;
  font-weight:850!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot td{
  text-align:right!important;
}

.gemobile-checkout-page #order_review table.shop_table .order-total .amount{
  color:#0b0b0d!important;
  font-size:22px!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
}

/* Shipping methods */
.gemobile-checkout-page #shipping_method{
  display:grid!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

.gemobile-checkout-page #shipping_method li{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:14px!important;
  background:#fafafa!important;
}

.gemobile-checkout-page #shipping_method label{
  margin:0!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.2!important;
  text-align:right!important;
}

/* Payment */
.gemobile-checkout-page #payment,
.gemobile-checkout-page .woocommerce-checkout-payment{
  margin-top:14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

.gemobile-checkout-page #payment ul.payment_methods{
  display:grid!important;
  gap:9px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method{
  display:block!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid rgba(0,0,0,.09)!important;
  border-radius:16px!important;
  background:#fafafa!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method > input{
  margin:0 8px 0 0!important;
  vertical-align:middle!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method > label{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:calc(100% - 28px)!important;
  margin:0!important;
  color:#111!important;
  font-size:13.5px!important;
  font-weight:850!important;
  line-height:1.25!important;
  vertical-align:middle!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method img{
  max-height:22px!important;
  width:auto!important;
  margin:0!important;
  vertical-align:middle!important;
}

.gemobile-checkout-page #payment .payment_box{
  margin:10px 0 0!important;
  padding:11px 12px!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#5f6368!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}

/* PayU installment widget */
.gemobile-checkout-page #order_review [id^="installment-mini-"],
.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:12px 0!important;
  transform:none!important;
  float:none!important;
  clear:both!important;
  z-index:1!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  min-height:38px!important;
  padding:8px 10px!important;
  border:1px solid rgba(0,0,0,.07)!important;
  border-radius:999px!important;
  background:#f5fbf8!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget *{
  max-width:100%!important;
  font-size:11px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}

/* Button */
.gemobile-checkout-page #place_order{
  width:100%!important;
  min-height:56px!important;
  margin-top:14px!important;
  border-radius:999px!important;
  background:#0b0b0d!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
}

.gemobile-checkout-page #place_order:hover{
  background:#222!important;
}

/* Trust grid */
.gemobile-checkout-trust-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.gemobile-checkout-trust-grid div{
  padding:16px;
  border-radius:18px;
  background:#f7f7f7;
}

.gemobile-checkout-trust-grid strong{
  display:block;
  color:#111;
  font-size:14px;
  font-weight:950;
  line-height:1.15;
}

.gemobile-checkout-trust-grid span{
  display:block;
  margin-top:6px;
  color:#5f6368;
  font-size:12.5px;
  line-height:1.35;
  font-weight:650;
}

/* Responsive */
@media(max-width:1100px){
  .gemobile-checkout-layout{
    grid-template-columns:minmax(0,1fr) minmax(350px,410px);
  }
}

@media(max-width:1024px){
  .gemobile-checkout-hero,
  .gemobile-checkout-layout{
    grid-template-columns:1fr;
  }

  .gemobile-checkout-sidebar{
    position:static;
  }

  .gemobile-checkout-hero__benefits{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:768px){
  .gemobile-checkout-hero{
    padding:20px;
    border-radius:22px;
  }

  .gemobile-checkout-hero h1{
    font-size:30px;
  }

  .gemobile-checkout-hero p{
    font-size:14.5px;
  }

  .gemobile-checkout-hero__benefits,
  .gemobile-checkout-trust-grid{
    grid-template-columns:1fr;
  }

  .gemobile-checkout-coupon-box{
    display:block;
    padding:14px;
  }

  .gemobile-checkout-copy-code{
    width:100%;
    margin-top:10px;
  }

  .gemobile-checkout-card{
    padding:16px;
    border-radius:20px;
  }

  .gemobile-checkout-card__head h2{
    font-size:19px;
  }

  .gemobile-checkout-page #order_review table.shop_table .product-total,
  .gemobile-checkout-page #order_review table.shop_table td.product-total,
  .gemobile-checkout-page #order_review table.shop_table th.product-total{
    width:96px!important;
    min-width:86px!important;
  }

  .gemobile-checkout-page #order_review table.shop_table th,
  .gemobile-checkout-page #order_review table.shop_table td{
    padding:11px 10px!important;
  }

  .gemobile-checkout-page #order_review table.shop_table .product-name{
    font-size:12.5px!important;
  }
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v2
   Poprawa sekcji "Twoje zamówienie":
   - bardziej kompaktowe podsumowanie,
   - ukrycie nagłówka tabeli,
   - czytelniejszy produkt,
   - dostawa bez dużych pól w tabeli,
   - mniejszy widget rat,
   - płatności bardziej eleganckie.
   ========================================================= */

/* Cały box podsumowania trochę lżejszy */
.gemobile-checkout-card--summary{
  padding:24px!important;
  border-radius:28px!important;
}

/* Nagłówek sekcji */
.gemobile-checkout-card--summary .gemobile-checkout-card__head{
  margin-bottom:20px!important;
}

.gemobile-checkout-card--summary .gemobile-checkout-card__head > span{
  width:38px!important;
  height:38px!important;
  flex-basis:38px!important;
}

.gemobile-checkout-card--summary .gemobile-checkout-card__head h2{
  font-size:25px!important;
}

.gemobile-checkout-card--summary .gemobile-checkout-card__head p{
  font-size:14px!important;
}

/* Reset tabeli zamówienia - bez kratek jak w arkuszu */
.gemobile-checkout-page #order_review table.shop_table{
  display:block!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  overflow:visible!important;
}

.gemobile-checkout-page #order_review table.shop_table thead{
  display:none!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody,
.gemobile-checkout-page #order_review table.shop_table tfoot,
.gemobile-checkout-page #order_review table.shop_table tr{
  display:block!important;
  width:100%!important;
}

/* Produkt jako osobna karta */
.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:start!important;
  margin:0 0 12px!important;
  padding:16px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(0,0,0,.035)!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item td{
  display:block!important;
  padding:0!important;
  border:0!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-name{
  color:#111!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:850!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-total{
  min-width:auto!important;
  width:auto!important;
  text-align:right!important;
  color:#111!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:950!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-total .amount{
  font-size:15px!important;
  font-weight:950!important;
}

/* Wiersze podsumowania */
.gemobile-checkout-page #order_review table.shop_table tfoot tr{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:14px 0!important;
  border-top:1px solid rgba(0,0,0,.08)!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:first-child{
  border-top:0!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot th,
.gemobile-checkout-page #order_review table.shop_table tfoot td{
  display:block!important;
  padding:0!important;
  border:0!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot th{
  color:#111!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:900!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot td{
  text-align:right!important;
  color:#111!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:850!important;
}

/* Dostawa w podsumowaniu jako pionowe wybory */
.gemobile-checkout-page #order_review table.shop_table tfoot tr.woocommerce-shipping-totals{
  align-items:start!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr.woocommerce-shipping-totals td{
  min-width:210px!important;
}

.gemobile-checkout-page #shipping_method{
  gap:8px!important;
}

.gemobile-checkout-page #shipping_method li{
  min-height:44px!important;
  padding:10px 12px!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(0,0,0,.035)!important;
}

.gemobile-checkout-page #shipping_method label{
  font-size:13px!important;
  font-weight:900!important;
}

/* Łącznie mocniej, ale bez ogromnej kratki */
.gemobile-checkout-page #order_review table.shop_table tfoot tr.order-total{
  margin-top:4px!important;
  padding:18px 0!important;
  border-top:1px solid rgba(0,0,0,.12)!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr.order-total th{
  font-size:17px!important;
  font-weight:950!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr.order-total td,
.gemobile-checkout-page #order_review table.shop_table tfoot tr.order-total .amount{
  font-size:28px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}

/* Widget rat PayU - mniejszy i nie jak duża komórka tabeli */
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget),
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]){
  display:block!important;
  padding:0 0 14px!important;
  border-top:0!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget) th,
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]) th{
  display:none!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget) td,
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]) td{
  width:100%!important;
  text-align:center!important;
}

.gemobile-checkout-page #order_review [id^="installment-mini-"]{
  margin:2px 0 0!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  width:100%!important;
  max-width:100%!important;
  min-height:46px!important;
  padding:9px 12px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#f6fbf9 0%,#eef8f5 100%)!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget *{
  font-size:11px!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget-amount{
  font-size:13px!important;
  font-weight:950!important;
}

/* Płatności pod spodem: bardziej jak wybór metody, mniej jak lista techniczna */
.gemobile-checkout-page #payment ul.payment_methods{
  margin-top:18px!important;
  gap:10px!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method{
  padding:14px 15px!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(0,0,0,.035)!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method > label{
  font-size:14px!important;
  font-weight:950!important;
}

.gemobile-checkout-page #payment .payment_box{
  margin-top:12px!important;
  padding:14px 15px!important;
  border-radius:16px!important;
  background:#fafafa!important;
  color:#5f6368!important;
  font-size:13px!important;
}

/* Logo płatności nie powinno rozwalać wiersza */
.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method img{
  max-height:26px!important;
}

/* Przycisk */
.gemobile-checkout-page #place_order{
  min-height:60px!important;
  margin-top:18px!important;
  font-size:17px!important;
}

/* Mobile */
@media(max-width:768px){
  .gemobile-checkout-card--summary{
    padding:18px!important;
  }

  .gemobile-checkout-card--summary .gemobile-checkout-card__head h2{
    font-size:23px!important;
  }

  .gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:14px!important;
  }

  .gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-total{
    text-align:left!important;
  }

  .gemobile-checkout-page #order_review table.shop_table tfoot tr{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  .gemobile-checkout-page #order_review table.shop_table tfoot td{
    text-align:left!important;
  }

  .gemobile-checkout-page #order_review table.shop_table tfoot tr.woocommerce-shipping-totals td{
    min-width:0!important;
  }

  .gemobile-checkout-page #shipping_method li{
    border-radius:16px!important;
  }

  .gemobile-checkout-page #order_review table.shop_table tfoot tr.order-total td,
  .gemobile-checkout-page #order_review table.shop_table tfoot tr.order-total .amount{
    font-size:26px!important;
  }
}

/* Fallback dla przeglądarek bez :has — przynajmniej usuwamy duże komórki */
@supports not selector(:has(*)){
  .gemobile-checkout-page #order_review [id^="installment-mini-"]{
    display:block!important;
    margin:10px 0!important;
  }
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v3
   Kod rabatowy nie jest stałym elementem checkoutu.
   Zostawiamy tylko natywne pole kuponu WooCommerce, jeśli jest aktywne.
   ========================================================= */

.gemobile-checkout-coupon-box{
  display:none!important;
}

/* Natywny pasek WooCommerce z kuponem mniej eksponowany */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{
  max-width:1240px;
  margin:0 auto 16px!important;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  min-height:38px!important;
  padding:9px 14px!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(0,0,0,.025)!important;
  font-size:13px!important;
  color:#444!important;
}

body.woocommerce-checkout form.checkout_coupon{
  max-width:1240px;
  margin:0 auto 18px!important;
}

/* Gdy sklep wyłączy kupony, nie zostaje żadna pusta sekcja od GEMobile */
.gemobile-checkout-page .gemobile-checkout-hero{
  margin-top:0!important;
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v4
   - kupon przeniesiony do sekcji zamówienia,
   - miniaturka produktu w podsumowaniu,
   - poprawione skalowanie widgetu rat.
   ========================================================= */

/* Chowamy standardowy pasek kuponu WooCommerce nad checkoutem */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon{
  display:none!important;
}

/* Panel kuponu w sidebarze */
.gemobile-checkout-coupon-panel{
  margin:0 0 18px!important;
  padding:16px!important;
  border:1px solid rgba(214,179,106,.34)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#fffaf0 0%,#fff 100%)!important;
}

.gemobile-checkout-coupon-panel__head strong{
  display:block;
  color:#111;
  font-size:16px;
  font-weight:950;
  line-height:1.15;
}

.gemobile-checkout-coupon-panel__head span{
  display:block;
  margin-top:5px;
  color:#5f6368;
  font-size:13px;
  line-height:1.35;
  font-weight:650;
}

.gemobile-checkout-inline-coupon{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:end;
  margin-top:12px;
}

.gemobile-checkout-inline-coupon .form-row{
  margin:0!important;
}

.gemobile-checkout-inline-coupon input.input-text{
  min-height:48px!important;
}

.gemobile-checkout-inline-coupon .button{
  min-width:148px;
  min-height:48px;
  padding:0 18px;
  border:0!important;
  border-radius:14px!important;
  background:#0b0b0d!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
  box-shadow:none!important;
}

.gemobile-checkout-inline-coupon .button:hover{
  background:#222!important;
}

/* Podsumowanie produktu z miniaturką */
.gemobile-checkout-product-line{
  display:grid;
  grid-template-columns:60px minmax(0,1fr);
  gap:12px;
  align-items:start;
}

.gemobile-checkout-product-image img,
.gemobile-checkout-product-thumb{
  display:block;
  width:60px!important;
  height:60px!important;
  object-fit:cover!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid rgba(0,0,0,.06)!important;
}

.gemobile-checkout-product-text{
  min-width:0;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-name{
  font-size:14px!important;
  line-height:1.34!important;
}

/* Widget rat - bardziej zwarty i prawidłowo wyskalowany */
.gemobile-checkout-page #order_review [id^="installment-mini-"],
.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  margin:10px 0 0 auto!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  max-width:280px!important;
  min-height:44px!important;
  padding:8px 10px!important;
  border-radius:16px!important;
  gap:4px!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget *{
  font-size:10.5px!important;
  line-height:1.08!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget-amount,
.gemobile-checkout-page #order_review .payu-mini-installments-widget .amount{
  font-size:12px!important;
  font-weight:950!important;
}

/* Nieco ciaśniejsze odstępy między sekcjami w summary */
.gemobile-checkout-card--summary .woocommerce-checkout-payment{
  margin-top:12px!important;
}

@media(max-width:768px){
  .gemobile-checkout-coupon-panel{
    padding:14px!important;
    border-radius:18px!important;
  }

  .gemobile-checkout-inline-coupon{
    grid-template-columns:1fr;
  }

  .gemobile-checkout-inline-coupon .button{
    width:100%;
  }

  .gemobile-checkout-product-line{
    grid-template-columns:52px minmax(0,1fr);
    gap:10px;
  }

  .gemobile-checkout-product-image img,
  .gemobile-checkout-product-thumb{
    width:52px!important;
    height:52px!important;
    border-radius:12px!important;
  }

  .gemobile-checkout-page #order_review .payu-mini-installments-widget{
    max-width:100%!important;
    margin:10px 0 0!important;
  }
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v5
   Poprawki:
   - dostawa nie rozjeżdża się przy wyborze paczkomatu,
   - całe kafelki dostawy/płatności są wizualnie klikalne,
   - banner rat PayU jest zwarty i nie rozwala podsumowania.
   ========================================================= */

/* Dostawa: pełna szerokość, bez dzielenia na dwie kolumny przy długim tekście */
.gemobile-checkout-page #order_review table.shop_table tfoot tr.woocommerce-shipping-totals{
  display:block!important;
  padding:16px 0!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr.woocommerce-shipping-totals th{
  display:block!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:0!important;
  border:0!important;
  font-size:15px!important;
  line-height:1.2!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr.woocommerce-shipping-totals td{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  text-align:left!important;
}

.gemobile-checkout-page #shipping_method{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
}

.gemobile-checkout-page #shipping_method li{
  position:relative!important;
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:13px 15px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(0,0,0,.035)!important;
  cursor:pointer!important;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.gemobile-checkout-page #shipping_method li:hover{
  border-color:rgba(0,0,0,.22)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.055)!important;
}

.gemobile-checkout-page #shipping_method li:has(input:checked){
  border-color:#0b0b0d!important;
  background:#fffdf8!important;
  box-shadow:0 10px 24px rgba(0,0,0,.07)!important;
}

.gemobile-checkout-page #shipping_method input{
  position:relative!important;
  z-index:2!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  cursor:pointer!important;
}

.gemobile-checkout-page #shipping_method label{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-size:14px!important;
  line-height:1.18!important;
  font-weight:950!important;
  text-align:left!important;
  cursor:pointer!important;
  white-space:normal!important;
  word-break:normal!important;
}

.gemobile-checkout-page #shipping_method label .amount{
  display:inline!important;
  font-size:13px!important;
  font-weight:900!important;
}

/* Elementy paczkomatu generowane przez wtyczkę nie mogą rozpychać kafla */
.gemobile-checkout-page #shipping_method li .select2,
.gemobile-checkout-page #shipping_method li select,
.gemobile-checkout-page #shipping_method li button,
.gemobile-checkout-page #shipping_method li .button,
.gemobile-checkout-page #shipping_method li a{
  max-width:100%!important;
}

.gemobile-checkout-page #shipping_method li button,
.gemobile-checkout-page #shipping_method li .button,
.gemobile-checkout-page #shipping_method li a.button{
  margin-top:8px!important;
  min-height:36px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:900!important;
}

/* Płatności: cały kafel wygląda jak klikalny */
.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method{
  cursor:pointer!important;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method:hover{
  border-color:rgba(0,0,0,.22)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.055)!important;
}

.gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method:has(input:checked){
  border-color:#0b0b0d!important;
  background:#fffdf8!important;
  box-shadow:0 10px 24px rgba(0,0,0,.07)!important;
}

/* PayU raty: usuwamy efekt "wielkiej pastylki" i ustawiamy banner jako mały pasek pod sumą */
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]),
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget){
  display:block!important;
  width:100%!important;
  padding:0 0 12px!important;
  margin:0!important;
  border-top:0!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]) th,
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget) th{
  display:none!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]) td,
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget) td{
  display:block!important;
  width:100%!important;
  padding:0!important;
  text-align:left!important;
}

.gemobile-checkout-page #order_review [id^="installment-mini-"]{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  width:100%!important;
  max-width:100%!important;
  min-height:40px!important;
  margin:0!important;
  padding:8px 10px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:14px!important;
  background:#f5fbf8!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  overflow:hidden!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget *{
  max-width:100%!important;
  font-size:10px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget img,
.gemobile-checkout-page #order_review [id^="installment-mini-"] img{
  max-height:18px!important;
  width:auto!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget-amount,
.gemobile-checkout-page #order_review .payu-mini-installments-widget .amount{
  font-size:12px!important;
  font-weight:950!important;
}

/* Fallback bez :has */
@supports not selector(:has(*)){
  .gemobile-checkout-page #shipping_method li{
    border-color:rgba(0,0,0,.12)!important;
  }

  .gemobile-checkout-page #payment ul.payment_methods li.wc_payment_method{
    border-color:rgba(0,0,0,.12)!important;
  }
}

@media(max-width:768px){
  .gemobile-checkout-page #shipping_method li{
    grid-template-columns:20px minmax(0,1fr)!important;
    min-height:52px!important;
    padding:12px 13px!important;
    border-radius:18px!important;
  }

  .gemobile-checkout-page #shipping_method label{
    font-size:13.5px!important;
  }

  .gemobile-checkout-page #order_review .payu-mini-installments-widget{
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    min-height:38px!important;
  }

  .gemobile-checkout-page #order_review .payu-mini-installments-widget *{
    font-size:9.5px!important;
  }
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v6
   Poprawki:
   - dostawa jako szerokie, stabilne kafelki,
   - poprawione wyświetlanie paczkomatu InPost,
   - banner rat PayU pełniejszy i lepiej dopasowany.
   ========================================================= */

/* ===== DOSTAWA ===== */

/* Nadpisanie gridu na prosty, stabilny układ blokowy */
.gemobile-checkout-page #shipping_method{
  display:block!important;
  width:100%!important;
}

.gemobile-checkout-page #shipping_method li{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:58px!important;
  margin:0 0 12px!important;
  padding:16px 16px 16px 52px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(0,0,0,.035)!important;
  cursor:pointer!important;
  overflow:hidden!important;
}

.gemobile-checkout-page #shipping_method li:last-child{
  margin-bottom:0!important;
}

.gemobile-checkout-page #shipping_method li input[type="radio"],
.gemobile-checkout-page #shipping_method li input[type="checkbox"]{
  position:absolute!important;
  top:18px!important;
  left:16px!important;
  width:20px!important;
  height:20px!important;
  margin:0!important;
  z-index:3!important;
}

.gemobile-checkout-page #shipping_method li > label{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-size:14px!important;
  line-height:1.22!important;
  font-weight:950!important;
  text-align:left!important;
  cursor:pointer!important;
  white-space:normal!important;
  word-break:normal!important;
}

/* Wszystkie dodatkowe informacje / kontrolki pod etykietą */
.gemobile-checkout-page #shipping_method li > *:not(input):not(label){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:10px!important;
  margin-left:0!important;
  text-align:left!important;
  clear:both!important;
}

/* Teksty z wybranym paczkomatem */
.gemobile-checkout-page #shipping_method li p,
.gemobile-checkout-page #shipping_method li div,
.gemobile-checkout-page #shipping_method li span,
.gemobile-checkout-page #shipping_method li small{
  white-space:normal!important;
  word-break:break-word!important;
  line-height:1.35!important;
}

.gemobile-checkout-page #shipping_method li .amount{
  display:inline!important;
  font-size:13px!important;
  font-weight:900!important;
}

/* Przycisk/link "Wybierz/Zmień paczkomat" */
.gemobile-checkout-page #shipping_method li button,
.gemobile-checkout-page #shipping_method li .button,
.gemobile-checkout-page #shipping_method li a.button,
.gemobile-checkout-page #shipping_method li a[href*="paczkom"],
.gemobile-checkout-page #shipping_method li a[href*="inpost"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:100%!important;
  min-height:38px!important;
  padding:0 14px!important;
  margin-top:10px!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:900!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

/* Zaznaczony wariant */
.gemobile-checkout-page #shipping_method li:has(input:checked){
  border-color:#0b0b0d!important;
  background:#fffdf8!important;
  box-shadow:0 10px 24px rgba(0,0,0,.07)!important;
}

/* ===== BANNER RAT PAYU ===== */

/* Wiersz z widgetem jako pełna szerokość */
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]),
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget){
  display:block!important;
  width:100%!important;
  padding:8px 0 14px!important;
  margin:0!important;
  border-top:0!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]) th,
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget) th{
  display:none!important;
}

.gemobile-checkout-page #order_review table.shop_table tfoot tr:has([id^="installment-mini-"]) td,
.gemobile-checkout-page #order_review table.shop_table tfoot tr:has(.payu-mini-installments-widget) td{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
  text-align:left!important;
}

.gemobile-checkout-page #order_review [id^="installment-mini-"]{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}

.gemobile-checkout-page #order_review [id^="installment-mini-"] > *{
  width:100%!important;
  max-width:100%!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  width:100%!important;
  max-width:100%!important;
  min-height:46px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#f6fbf9 0%,#eef8f5 100%)!important;
  box-shadow:none!important;
  gap:6px!important;
  overflow:hidden!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget *{
  max-width:100%!important;
  font-size:11px!important;
  line-height:1.1!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget img,
.gemobile-checkout-page #order_review [id^="installment-mini-"] img{
  max-height:18px!important;
  width:auto!important;
}

.gemobile-checkout-page #order_review .payu-mini-installments-widget .amount,
.gemobile-checkout-page #order_review .payu-mini-installments-widget-amount{
  font-size:13px!important;
  font-weight:950!important;
  white-space:nowrap!important;
}

/* Mobile */
@media(max-width:768px){
  .gemobile-checkout-page #shipping_method li{
    min-height:56px!important;
    padding:14px 14px 14px 48px!important;
    border-radius:20px!important;
  }

  .gemobile-checkout-page #shipping_method li input[type="radio"],
  .gemobile-checkout-page #shipping_method li input[type="checkbox"]{
    top:17px!important;
    left:14px!important;
    width:19px!important;
    height:19px!important;
  }

  .gemobile-checkout-page #shipping_method li > label{
    font-size:13.5px!important;
  }

  .gemobile-checkout-page #shipping_method li button,
  .gemobile-checkout-page #shipping_method li .button,
  .gemobile-checkout-page #shipping_method li a.button{
    min-height:36px!important;
    padding:0 12px!important;
    font-size:11.5px!important;
  }

  .gemobile-checkout-page #order_review .payu-mini-installments-widget{
    min-height:44px!important;
    padding:9px 10px!important;
    border-radius:14px!important;
    justify-content:center!important;
  }

  .gemobile-checkout-page #order_review .payu-mini-installments-widget *{
    font-size:10px!important;
  }

  .gemobile-checkout-page #order_review .payu-mini-installments-widget .amount,
  .gemobile-checkout-page #order_review .payu-mini-installments-widget-amount{
    font-size:12px!important;
  }
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v7
   Produkt w podsumowaniu jak na liście produktowej.
   ========================================================= */

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item{
  display:block!important;
  padding:18px!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-total{
  display:none!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item td.product-name{
  display:block!important;
  width:100%!important;
  padding:0!important;
}

.gemobile-checkout-product-line{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}

.gemobile-checkout-product-image{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:8px!important;
}

.gemobile-checkout-product-image img,
.gemobile-checkout-product-thumb{
  display:block!important;
  width:72px!important;
  height:72px!important;
  object-fit:cover!important;
  border-radius:14px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  background:#fff!important;
}

.gemobile-checkout-product-thumb--empty{
  background:#f5f5f5!important;
}

.gemobile-checkout-product-qty{
  display:inline-block!important;
  color:#111!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:950!important;
}

.gemobile-checkout-product-content{
  min-width:0!important;
}

.gemobile-checkout-product-title{
  color:#0b0b0d!important;
  font-size:17px!important;
  line-height:1.22!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}

.gemobile-checkout-product-meta{
  margin-top:10px!important;
  color:#5f6368!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:750!important;
}

.gemobile-checkout-product-price{
  margin-top:12px!important;
  color:#0b0b0d!important;
  font-size:16px!important;
  line-height:1.1!important;
  font-weight:950!important;
}

.gemobile-checkout-product-price .amount{
  font-size:16px!important;
  font-weight:950!important;
}

@media(max-width:768px){
  .gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item{
    padding:14px!important;
  }

  .gemobile-checkout-product-line{
    grid-template-columns:62px minmax(0,1fr)!important;
    gap:12px!important;
  }

  .gemobile-checkout-product-image img,
  .gemobile-checkout-product-thumb{
    width:62px!important;
    height:62px!important;
    border-radius:12px!important;
  }

  .gemobile-checkout-product-title{
    font-size:15px!important;
    line-height:1.24!important;
  }

  .gemobile-checkout-product-meta{
    margin-top:8px!important;
    font-size:12.5px!important;
    line-height:1.36!important;
  }

  .gemobile-checkout-product-price{
    margin-top:10px!important;
  }

  .gemobile-checkout-product-price,
  .gemobile-checkout-product-price .amount{
    font-size:15px!important;
  }
}


/* =========================================================
   GEMOBILE - Custom checkout plugin v8
   Usunięcie dubla ilości ×1.
   Zostaje natywna ilość WooCommerce.
   ========================================================= */

.gemobile-checkout-product-qty{
  display:none!important;
}

.gemobile-checkout-page #order_review table.shop_table tbody tr.cart_item .product-quantity{
  display:block!important;
  margin-top:8px!important;
  color:#111!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:950!important;
}


/* GEMobile checkout v9 - aktywne pole kodu rabatowego */
.gemobile-checkout-coupon-result{
  margin-top:10px!important;
}

.gemobile-checkout-coupon-result .woocommerce-message,
.gemobile-checkout-coupon-result .woocommerce-error,
.gemobile-checkout-coupon-result .woocommerce-info{
  margin:10px 0 0!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  font-size:13px!important;
  line-height:1.35!important;
}

.gemobile-checkout-apply-coupon.is-loading{
  opacity:.72;
  cursor:wait;
}

@media(max-width:768px){
  .gemobile-checkout-coupon-panel{
    display:block!important;
    margin:0 0 16px!important;
  }

  .gemobile-checkout-inline-coupon input.input-text{
    width:100%!important;
  }
}
