/* Start custom CSS for woocommerce-cart, class: .elementor-element-ad4fb39 *//* ================================================================
   KLIMAKUPON.HU — WOOCOMMERCE KOSÁR (CART) WIDGET CSS
   Fájl: 15-woo-cart.css        Blokkok: 15.0 – 15.9

   HOVA: EZ A WIDGET SAJÁT Egyéni CSS-e — a Kosár (Cart) widget
         kijelölve → Haladó fül → Egyéni CSS → illeszd be, a
         ".elementor-305 .elementor-element.elementor-element-ad4fb39" szót ne cseréld le.

   HA A MEZŐ NÁLAD IS INAKTÍV (mint korábban a Flexboxnál):
   írd át az összes ".elementor-305 .elementor-element.elementor-element-ad4fb39"-t egy saját class-ra (pl.
   .cst-kp-cart), add hozzá azt a widget Osztályok mezőjében, és a
   teljes kódot másold a globális Testreszabás → További CSS-be.

   A class-nevek a WooCommerce natív kosár-sablonját (cart.php /
   cart-totals.php) követik — ez minden telepítésen ugyanaz, mivel
   ez a WooCommerce saját markupja, nem egy külön plugin generálja.
   ================================================================ */

.elementor-305 .elementor-element.elementor-element-ad4fb39{
  --kph-font:'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --kph-primary:#0D6EFD;
  --kph-primary-dark:#0B5ED7;
  --kph-ink:#0B2D5B;
  --kph-body:#6B7280;
  --kph-white:#FFFFFF;
  --kph-blue-050:#E6F2FF;
  --kph-line:#E4EAF1;
  --kph-danger:#E63946;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 *{ box-sizing:border-box; }
.elementor-305 .elementor-element.elementor-element-ad4fb39{ font-family:var(--kph-font) !important; }


/* ================================================
   15.1 — TERMÉK-TÁBLÁZAT KERETE
================================================ */
.elementor-305 .elementor-element.elementor-element-ad4fb39 .woocommerce-cart-form{
  background:var(--kph-white) !important;
  border:1px solid var(--kph-line) !important;
  border-radius:18px !important;
  padding:8px 24px !important;
  overflow:hidden !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart{
  width:100% !important;
  border-collapse:collapse !important;
  border:none !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart thead{
  border-bottom:1px solid var(--kph-line) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart thead th{
  padding:16px 10px !important;
  font-size:12px !important; font-weight:700 !important;
  letter-spacing:.04em !important; text-transform:uppercase !important;
  color:var(--kph-body) !important;
  text-align:left !important;
  border:none !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart tbody tr{
  border-bottom:1px solid var(--kph-line) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart tbody tr:last-child{
  border-bottom:none !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td{
  padding:18px 10px !important;
  border:none !important;
  vertical-align:middle !important;
}


/* ================================================
   15.2 — TERMÉK OSZLOPOK
================================================ */
/* Eltávolítás "×" */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-remove{
  width:36px !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-remove a.remove{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:28px !important; height:28px !important;
  color:var(--kph-body) !important;
  background:var(--kph-blue-050) !important;
  border-radius:50% !important;
  font-size:16px !important; font-weight:700 !important;
  line-height:1 !important;
  transition:background-color .15s ease, color .15s ease !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-remove a.remove:hover{
  background:var(--kph-danger) !important;
  color:var(--kph-white) !important;
}

/* Termékkép */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-thumbnail{
  width:84px !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-thumbnail img{
  width:72px !important; height:72px !important;
  object-fit:contain !important;
  border:1px solid var(--kph-line) !important;
  border-radius:12px !important;
  padding:6px !important;
  background:var(--kph-white) !important;
}

/* Termék neve */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-name a{
  font-size:14.5px !important; font-weight:700 !important;
  color:var(--kph-ink) !important;
  text-decoration:none !important;
  line-height:1.4 !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-name a:hover{ color:var(--kph-primary) !important; }
/* Aktivált kupon jelzése a kosár-sorban, ha a témában/pluginban
   szerepel (pl. "Aktív kupon: KP-..." szöveg a terméknév alatt) */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-name .variation,
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-name dl.variation{
  margin-top:6px !important;
  font-size:12.5px !important; color:var(--kph-body) !important;
}

/* Egységár */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-price,
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-price .woocommerce-Price-amount{
  font-size:14px !important; font-weight:600 !important;
  color:var(--kph-ink) !important;
}

/* Mennyiség-stepper */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-quantity .quantity{
  display:inline-flex !important;
  align-items:center !important;
  border:1.5px solid var(--kph-line) !important;
  border-radius:10px !important;
  overflow:hidden !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-quantity input.qty{
  width:52px !important; height:40px !important;
  padding:0 6px !important;
  border:none !important;
  text-align:center !important;
  font-family:var(--kph-font) !important; font-size:14px !important; font-weight:700 !important;
  color:var(--kph-ink) !important;
  background:var(--kph-white) !important;
  -moz-appearance:textfield !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-quantity input.qty::-webkit-outer-spin-button,
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none !important; margin:0 !important;
}

/* Részösszeg */
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-subtotal,
.elementor-305 .elementor-element.elementor-element-ad4fb39 td.product-subtotal .woocommerce-Price-amount{
  font-size:15px !important; font-weight:800 !important;
  color:var(--kph-primary) !important;
  text-align:right !important;
}


/* ================================================
   15.3 — KUPONKÓD SOR + "KOSÁR FRISSÍTÉSE" GOMB
================================================ */
.elementor-305 .elementor-element.elementor-element-ad4fb39 .actions{
  padding:20px 10px 22px !important;
  display:flex !important; flex-wrap:wrap !important; align-items:center !important;
  justify-content:space-between !important; gap:14px !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon{
  display:flex !important; align-items:center !important; gap:10px !important;
  flex-wrap:wrap !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon label{
  display:none !important; /* a placeholder elég, a label redundáns lenne */
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon input#coupon_code{
  height:44px !important; padding:0 16px !important;
  font-family:var(--kph-font) !important; font-size:14px !important;
  color:var(--kph-ink) !important;
  background:var(--kph-white) !important;
  border:1.5px solid var(--kph-line) !important; border-radius:10px !important;
  min-width:180px !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon input#coupon_code:focus{
  border-color:var(--kph-primary) !important; outline:none !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon button[name="apply_coupon"]{
  height:44px !important; padding:0 20px !important;
  font-family:var(--kph-font) !important; font-size:13.5px !important; font-weight:700 !important;
  color:var(--kph-primary) !important;
  background:var(--kph-white) !important;
  border:1.5px solid var(--kph-primary) !important; border-radius:10px !important;
  cursor:pointer !important;
  transition:background-color .15s ease, color .15s ease !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon button[name="apply_coupon"]:hover{
  background:var(--kph-primary) !important; color:var(--kph-white) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 button[name="update_cart"]{
  height:44px !important; padding:0 22px !important;
  font-family:var(--kph-font) !important; font-size:13.5px !important; font-weight:700 !important;
  color:var(--kph-white) !important;
  background:var(--kph-ink) !important;
  border:none !important; border-radius:10px !important;
  cursor:pointer !important;
  transition:background-color .15s ease !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 button[name="update_cart"]:hover{ background:var(--kph-primary) !important; }
.elementor-305 .elementor-element.elementor-element-ad4fb39 button[name="update_cart"]:disabled{
  opacity:.5 !important; cursor:not-allowed !important;
}


/* ================================================
   15.4 — ÖSSZESÍTŐ DOBOZ (cart_totals)
================================================ */
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart-collaterals{
  margin-top:28px !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals{
  max-width:420px !important;
  margin-left:auto !important;
  padding:26px 26px 28px !important;
  background:var(--kph-blue-050) !important;
  border-radius:18px !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals h2{
  margin:0 0 18px !important;
  font-family:var(--kph-font) !important; font-size:16px !important; font-weight:800 !important;
  color:var(--kph-ink) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table{
  width:100% !important; border:none !important; border-collapse:collapse !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table tr{
  border-bottom:1px solid rgba(11,45,91,.08) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table tr:last-child{
  border-bottom:none !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table th,
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table td{
  padding:12px 0 !important;
  border:none !important;
  font-family:var(--kph-font) !important; font-size:14px !important;
  color:var(--kph-ink) !important;
  text-align:left !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table th{
  font-weight:500 !important; color:var(--kph-body) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals table.shop_table td{
  text-align:right !important; font-weight:700 !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals .order-total th,
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals .order-total td{
  font-size:17px !important; font-weight:800 !important;
  color:var(--kph-primary) !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals .woocommerce-shipping-methods{
  list-style:none !important; margin:0 !important; padding:0 !important;
  text-align:right !important; font-size:13.5px !important;
}

/* "Tovább a fizetéshez" gomb */
.elementor-305 .elementor-element.elementor-element-ad4fb39 .wc-proceed-to-checkout{
  margin-top:20px !important; padding:0 !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .wc-proceed-to-checkout a.checkout-button{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:100% !important; height:54px !important;
  font-family:var(--kph-font) !important; font-size:15px !important; font-weight:700 !important;
  color:var(--kph-white) !important;
  background:var(--kph-primary) !important;
  border-radius:999px !important;
  box-shadow:0 16px 32px -16px rgba(13,110,253,.65) !important;
  transition:background-color .18s ease, transform .18s ease !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .wc-proceed-to-checkout a.checkout-button:hover{
  background:var(--kph-primary-dark) !important;
  transform:translateY(-2px) !important;
}


/* ================================================
   15.5 — ÜRES KOSÁR ÁLLAPOT
================================================ */
.elementor-305 .elementor-element.elementor-element-ad4fb39 .cart-empty{
  padding:32px 10px !important;
  font-family:var(--kph-font) !important; font-size:15px !important;
  color:var(--kph-body) !important;
  text-align:center !important;
}
.elementor-305 .elementor-element.elementor-element-ad4fb39 .return-to-shop a.button{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  height:50px !important; padding:0 24px !important; margin-top:16px !important;
  font-family:var(--kph-font) !important; font-size:14.5px !important; font-weight:700 !important;
  color:var(--kph-white) !important;
  background:var(--kph-primary) !important;
  border-radius:999px !important;
}


/* ================================================
   15.6 — REZSPONZÍV (kártyás nézet mobilon, CSS GRID-del)
   Az előző verzió abszolút pozicionálást használt a kép/eltávolítás
   gombhoz, ami törékenynek bizonyult (a sorok egymásra csúsztak).
   Helyette itt minden sort egy 3-oszlopos, elnevezett Grid-területű
   elrendezéssé alakítunk — ez garantáltan nem csúszik össze,
   függetlenül a tartalom hosszától.

   Elrendezés soronként (a termék-soroknál):
   ┌────────┬──────────────┬────────┐
   │  kép   │  termék név  │   ×    │
   │  kép   │  mennyiség   │ össz.  │
   └────────┴──────────────┴────────┘
   (az egységár sort mobilon elrejtjük — qty=1 esetén úgyis
   megegyezik a részösszeggel, feleslegesen zsúfolt lenne)

   FONTOS: a táblázat UTOLSÓ sora NEM termék-sor, hanem a
   ".actions" cella (kuponkód mező + "Kosár frissítése" gomb) —
   ez a sor NEM kapott nevesített grid-területet, ezért az előző
   verzióban az implicit grid az első (68px-es) oszlopba szorította,
   és a tartalma kilógott/levágódott. Itt ezt a sort külön,
   kifejezetten NORMÁL (nem grid) blokk-elrendezésre állítjuk vissza.
================================================ */
@media (max-width:760px){
  .elementor-305 .elementor-element.elementor-element-ad4fb39 .woocommerce-cart-form{ padding:6px 14px !important; overflow:visible !important; }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart thead{ display:none !important; }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart,
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart tbody{
    display:block !important; width:100% !important;
  }

  /* --- Termék-sorok: Grid --- */
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart tr:not(:has(td.actions)){
    display:grid !important;
    grid-template-columns:60px 1fr auto !important;
    grid-template-areas:
      "thumb name   remove"
      "thumb qty    subtotal" !important;
    column-gap:12px !important;
    row-gap:10px !important;
    padding:18px 0 !important;
    position:static !important;
  }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart tr:not(:has(td.actions)) td{
    display:block !important;
    width:auto !important;
    padding:0 !important;
    min-height:0 !important;
    text-align:left !important;
  }
  /* A data-title mobil-címkéket itt nem használjuk (a Grid-elrendezés
     már önmagában érthető), ezért kikapcsoljuk */
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td::before{ content:none !important; }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-thumbnail{
    grid-area:thumb !important;
    align-self:start !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-thumbnail img{
    width:60px !important; height:60px !important;
  }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-remove{
    grid-area:remove !important;
    justify-self:end !important; align-self:start !important;
  }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-name{
    grid-area:name !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-name a{
    font-size:13.5px !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important; -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  /* Egységár sor elrejtve mobilon — lásd fenti megjegyzés */
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-price{
    display:none !important;
  }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-quantity{
    grid-area:qty !important;
    align-self:end !important;
  }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-subtotal{
    grid-area:subtotal !important;
    text-align:right !important;
    align-self:end !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.product-subtotal .woocommerce-Price-amount{
    text-align:right !important;
  }

  /* --- "Kosár frissítése" + kuponkód sor: NORMÁL blokk, nem Grid --- */
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart tr:has(td.actions){
    display:block !important;
    width:100% !important;
    padding:16px 0 0 !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 table.shop_table.cart td.actions{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 .actions{
    flex-direction:column-reverse !important; /* frissítés gomb a kupon alá kerül */
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon{
    width:100% !important; max-width:100% !important;
    flex-direction:column !important; align-items:stretch !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon input#coupon_code{
    width:100% !important; max-width:100% !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 .coupon button[name="apply_coupon"]{
    width:100% !important;
  }
  .elementor-305 .elementor-element.elementor-element-ad4fb39 button[name="update_cart"]{
    width:100% !important; max-width:100% !important;
    white-space:normal !important;
  }

  .elementor-305 .elementor-element.elementor-element-ad4fb39 .cart_totals{ max-width:none !important; margin-left:0 !important; }
}/* End custom CSS */