.elementor-7 .elementor-element.elementor-element-f8407f2 > .elementor-widget-container{margin:-28px 0px -12px 0px;}.elementor-7 .elementor-element.elementor-element-40f9c27{--update-cart-automatically-display:none;--sections-background-color:#F7F5FF;--sections-title-color:#000000;--links-normal-color:#6A00FF;--links-hover-color:#2712D1;--sections-radio-buttons-color:#6A728A;--forms-fields-normal-color:#6A00FF;--checkout-button-padding:0px 0px 0px 0px;--checkout-button-width:fit-content;}.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals h2{font-size:16px;font-weight:800;line-height:1.3px;}.elementor-7 .elementor-element.elementor-element-40f9c27 {--sections-descriptions-color:#6A00FF;}.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart-content, .elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-destination, .elementor-7 .elementor-element.elementor-element-40f9c27 .shipping-calculator-button{font-size:14px;font-weight:800;line-height:21px;}.e-woo-select2-wrapper .select2-results__option{color:#6A00FF;}.elementor-7 .elementor-element.elementor-element-40f9c27 .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#6A00FF transparent transparent transparent;}.elementor-7 .elementor-element.elementor-element-40f9c27 .cart td span, .elementor-7 .elementor-element.elementor-element-40f9c27 .cart td, .elementor-7 .elementor-element.elementor-element-40f9c27 .input-text.qty{font-family:"Bebas Neue", Sans-serif;font-size:21px;font-weight:800;}.elementor-7 .elementor-element.elementor-element-40f9c27 .product-name .variation{font-family:"Bebas Neue", Sans-serif;font-size:18px;}@media(max-width:767px){.elementor-7 .elementor-element.elementor-element-40f9c27 .cart td span, .elementor-7 .elementor-element.elementor-element-40f9c27 .cart td, .elementor-7 .elementor-element.elementor-element-40f9c27 .input-text.qty{font-size:12px;word-spacing:0em;}.elementor-7 .elementor-element.elementor-element-40f9c27{--order-summary-quantity-border-weight:0px;}}/* Start custom CSS for html, class: .elementor-element-03eee8d *//* ===== WhatsApp Banner – versión verde con icono ===== */
:root{
  --wa:#25D366;           /* WhatsApp green */
  --wa-dark:#1ebe5d;      /* tono más oscuro para gradiente */
  --jg-accent:#6a00ff;    /* morado del sitio (por si cambia global) */
  --jg-accent-2:#9c66ff;
}

.woocommerce-cart .jg-wa-wrap{ margin:10px 0 14px; }

.woocommerce-cart .jg-wa-banner{
  display:flex; align-items:center; gap:12px;
  padding:10px 12px;
  background:linear-gradient(90deg,var(--jg-accent),var(--jg-accent-2));
  color:#fff; font-weight:800; letter-spacing:.2px;
  border-radius:12px;
  box-shadow:0 8px 20px rgba(106,0,255,.25);
  transition:background .25s ease, box-shadow .25s ease;
}

/* Cambia a verde cuando hay interacción (hover/focus/click) */
.woocommerce-cart .jg-wa-banner:hover,
.woocommerce-cart .jg-wa-banner.is-pressed{
  background:linear-gradient(90deg,var(--wa),var(--wa-dark));
  box-shadow:0 8px 22px color-mix(in oklab,var(--wa) 40%, transparent);
}

/* Lado izquierdo */
.woocommerce-cart .jg-wa-left{ display:flex; align-items:center; gap:10px; flex:1 1 auto; min-width:0; }
.woocommerce-cart .jg-wa-dot{
  display:inline-grid; place-items:center; width:18px; height:18px; border-radius:999px;
  background:#fff; color:var(--wa);
  box-shadow:0 0 0 4px rgba(255,255,255,.18);
}

/* ícono de WhatsApp dentro del “dot” (svg embebido) */
.woocommerce-cart .jg-wa-dot::before{
  content:""; width:12px; height:12px; display:block;
  background:url("data:image/svg+xml;utf8,\
  \
    \
  ") no-repeat center/contain;
}

/* Botón */
.woocommerce-cart .jg-wa-btn{
  flex:0 0 auto;
  background:#fff; color:var(--wa) !important;
  padding:8px 12px; border-radius:999px;
  font-weight:900; text-decoration:none;
  box-shadow:0 10px 18px rgba(0,0,0,.12);
  transition:transform .08s ease, filter .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
  display:inline-flex; align-items:center; gap:8px;
}

/* Icono antes del texto del botón */
.woocommerce-cart .jg-wa-btn::before{
  content:""; width:16px; height:16px; display:inline-block;
  background:url("data:image/svg+xml;utf8,\
  \
    \
  ") no-repeat center/contain;
}

/* Hover/focus → botón verde */
.woocommerce-cart .jg-wa-btn:hover,
.woocommerce-cart .jg-wa-btn:focus-visible{
  background:var(--wa); color:#fff !important;
  box-shadow:0 12px 22px color-mix(in oklab,var(--wa) 40%, transparent);
  outline: none;
}

/* “Click” visual y también cuando el contenedor está en modo .is-pressed */
.woocommerce-cart .jg-wa-btn:active{
  transform:translateY(1px) scale(.99);
}
.woocommerce-cart .jg-wa-banner.is-pressed .jg-wa-btn{
  background:var(--wa); color:#fff !important;
}

/* Compacto en móviles */
@media (max-width:640px){
  .woocommerce-cart .jg-wa-banner{ padding:9px 10px; border-radius:10px; gap:10px; }
  .woocommerce-cart .jg-wa-btn{ padding:7px 10px; font-size:.92rem; }
  .woocommerce-cart .jg-wa-txt{ display:none; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f8407f2 *//* ======================
   Caja “Copiar enlace”
   Scope: #shareCart
   ====================== */
#shareCart{
  position:relative; isolation:isolate;
  background:#f6f4ff;
  border:1px solid #e7e5f7;
  border-radius:14px;
  padding:12px;
  box-shadow:0 10px 24px rgba(38,24,77,.08);
}

/* input + botón en una fila, con wrap en móvil */
#shareCart .sc-row{
  display:flex; gap:10px; align-items:center; flex-wrap:wrap;
}

/* input del enlace */
#shareCart .sc-input{
  flex:1 1 420px; min-width:240px;
  height:44px; padding:0 12px;
  border:1px solid #e7e5f7; border-radius:12px; background:#fff;
  font-weight:700; color:#0f0f15;
  box-shadow:inset 0 1px 0 rgba(17,17,26,.04);
}
#shareCart .sc-input:focus{
  outline:none; border-color:#6a00ff;
  box-shadow:0 0 0 3px rgba(106,0,255,.18);
}

/* botón copiar */
#shareCart .sc-btn{
  height:44px; padding:0 16px;
  border-radius:999px; border:0; cursor:pointer;
  font-weight:900; color:#fff; letter-spacing:.2px;
  background:linear-gradient(90deg,#6a00ff,#9c66ff);
  box-shadow:0 10px 22px rgba(106,0,255,.25);
  transition:transform .06s ease, filter .2s ease, box-shadow .2s ease;
}
#shareCart .sc-btn:hover{
  transform:translateY(-1px); filter:saturate(110%);
  box-shadow:0 14px 28px rgba(106,0,255,.28);
}
#shareCart .sc-btn:active{ transform:translateY(0); }

/* nota inferior */
#shareCart .sc-note{
  margin-top:8px; font-size:.9rem; color:#6a728a; font-weight:700;
}

/* responsive */
@media (max-width:600px){
  #shareCart{ padding:10px; border-radius:12px; }
  #shareCart .sc-input{ flex:1 1 100%; }
  #shareCart .sc-btn{ width:100%; }
}/* End custom CSS */
/* Start custom CSS for woocommerce-cart, class: .elementor-element-40f9c27 *//* =====================================================
   JUST GAMING — CART (ONE-COLUMN · SCOPED TO THIS WIDGET)
   ===================================================== */

/* —— Paleta (puedes ajustar) —— */
:root{
  --jg-accent:#6A00FF;
  --jg-accent-2:#9C66FF;
  --jg-accent-3:#5300CC;
  --jg-text:#0F0F15;
  --jg-muted:#6A728A;
  --jg-bg:#F6F4FF;
  --jg-card:#FFFFFF;
  --jg-border:#E7E5F7;
  --jg-shadow:0 10px 28px rgba(38,24,77,.10);
  --jg-gradient:linear-gradient(90deg,var(--jg-accent),var(--jg-accent-2));
}

/* =========================
   1) Forzar LAYOUT 1 COLUMNA
   ========================= */
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart__container{
  display:block !important;         /* ignora layout 2 col */
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart__column{
  width:100% !important;
  max-width:100% !important;
  float:none !important;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart__column-start,
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart__column-end{
  margin:0 !important;
  padding:0 !important;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart__column-start{ margin-bottom:18px !important; }

/* Tarjetas contenedoras */
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-cart-form,
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart-totals{
  background:var(--jg-card);
  border:1px solid var(--jg-border);
  border-radius:16px;
  box-shadow:var(--jg-shadow);
  padding:18px;
}

/* =========================
   2) TABLA DEL CARRITO
   ========================= */
.elementor-7 .elementor-element.elementor-element-40f9c27 table.shop_table{ width:100%; table-layout:fixed; border:0; }
.elementor-7 .elementor-element.elementor-element-40f9c27 table.shop_table thead th{
  background:#F7F5FF !important;
  color:var(--jg-muted) !important;
  font-weight:900 !important;
  padding:10px 8px;
  white-space:nowrap;
  box-shadow:inset 0 -1px 0 var(--jg-border);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 table.shop_table td{
  border:0; padding:18px 14px; vertical-align:middle;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 table.shop_table tbody tr:not(:last-child) td{
  border-bottom:1px dashed var(--jg-border);
}

/* Reparto de columnas (desktop y mobile igual para estabilidad) */
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-remove,  .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-remove{ width:54px; text-align:center; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-thumbnail,.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-thumbnail{ width:18%; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-name,     .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-name{      width:44%; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-price,    .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-price{     width:12%; text-align:right; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-quantity, .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-quantity{  width:10%; text-align:center; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-subtotal, .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-subtotal{  width:12%; text-align:right; }

/* Miniaturas más grandes */
.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-thumbnail{ padding-left:8px; }
.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-thumbnail img{
  width:148px; height:148px; object-fit:cover; border-radius:12px; max-width:100%;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 img.attachment-woocommerce_thumbnail,
.elementor-7 .elementor-element.elementor-element-40f9c27 img.wp-post-image{ max-width:none; }

/* Nombre legible */
.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-name a{
  color:var(--jg-text) !important;
  text-decoration:none; font-weight:800; line-height:1.32;
  white-space:normal !important; word-break:normal !important; overflow-wrap:anywhere !important;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-name a:hover{ color:var(--jg-accent) !important; }

/* Botón eliminar centrado */
.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-remove a.remove{
  position:static; transform:none; margin:0 auto;
  display:grid; place-items:center; width:28px; height:28px; border-radius:999px;
}

/* Cantidad */
.elementor-7 .elementor-element.elementor-element-40f9c27 .quantity{ display:inline-flex; align-items:center; gap:8px; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .quantity .qty{
  height:40px; line-height:40px; border:1.5px solid var(--jg-border);
  border-radius:12px; text-align:center; font-weight:900; background:#fff; width:72px;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .quantity .minus, .elementor-7 .elementor-element.elementor-element-40f9c27 .quantity .plus{
  width:36px; height:36px; border:1px solid var(--jg-border); border-radius:12px; background:#fff; font-weight:900;
}

/* =========================
   3) TOTALES / ENVÍO (CARD)
   ========================= */
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart-totals h2{ margin:0 0 10px; font-weight:900; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table{ width:100%; border:0; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table th,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table td{ border:0; padding:10px 0; background:transparent !important; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table tr:not(.order-total):not(.cart-subtotal):not(.shipping) td{
  border-bottom:1px dashed var(--jg-border);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table th{ text-align:left; color:var(--jg-muted); font-weight:900; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table td{ text-align:right; white-space:nowrap; }

/* Métodos de envío como “pill” */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method{ display:block !important; margin-top:8px; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li{
  position:relative; isolation:isolate; list-style:none; margin:0 0 12px 0;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li::before{
  content:""; position:absolute; inset:0; border:1.5px solid var(--jg-border);
  border-radius:14px; background:#fff; pointer-events:none;
  transition:background .2s, border-color .2s, transform .06s;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li:hover::before{
  border-color:var(--jg-accent); background:var(--jg-bg); transform:translateY(-1px);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; input.shipping_method{
  position:relative; z-index:1; width:18px; height:18px; margin:12px 8px 12px 12px !important; accent-color:var(--jg-accent);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; label{
  position:relative; z-index:1; display:block; cursor:pointer; font-weight:900; color:var(--jg-text);
  margin-left:42px; padding:14px 170px 14px 0; line-height:1.25; white-space:normal;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li .amount{
  position:absolute; z-index:1; right:18px; top:50%; transform:translateY(-50%); font-weight:900;
}

/* Total final remarcado */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total th,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total td{
  font-size:1.18rem; font-weight:900; color:#0f0f15;
  background:#FAF9FF !important; border:1px solid var(--jg-border) !important;
  border-radius:12px !important; padding:12px !important;
}

/* =========================
   4) BOTÓN CHECKOUT FULL WIDTH
   ========================= */
.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout{ margin-top:14px; clear:both; float:none; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout a.checkout-button{
  display:block; width:100%; height:52px; line-height:52px; text-align:center;
  border-radius:14px; color:#fff !important; font-weight:900; letter-spacing:.2px; border:0;
  background:var(--jg-gradient); box-shadow:0 10px 28px rgba(106,0,255,.35);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout a.checkout-button:hover{
  filter:saturate(110%); box-shadow:0 14px 32px rgba(106,0,255,.40);
}

/* =========================
   5) FORMULARIOS (cálculo de envío)
   ========================= */
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator input[type="text"],
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator input[type="number"],
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator select{
  height:44px; padding:10px 12px; border:1px solid var(--jg-border) !important;
  border-radius:12px !important; background:#fff !important; color:var(--jg-text);
  transition:box-shadow .15s ease, border-color .15s ease;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator input:focus,
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator select:focus{
  border-color:var(--jg-accent) !important;
  box-shadow:0 0 0 3px rgba(106,0,255,.18) !important;
  outline:none;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator .button{
  height:46px; padding:0 20px; border-radius:12px; font-weight:900; color:#fff;
  background:var(--jg-accent); box-shadow:0 8px 18px rgba(106,0,255,.25);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator .button:hover{
  background:var(--jg-accent-3);
}

/* =========================
   6) RESPONSIVE PEQUEÑOS AJUSTES
   ========================= */
@media (max-width:600px){
  .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-thumbnail img{ width:120px; height:120px; }
  .elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; label{ padding-right:150px; }
}
/* ====== AJUSTES FINOS (scope: este widget) ====== */

/* 1) Separaciones y bordes de la card de totales */
.elementor-7 .elementor-element.elementor-element-40f9c27 .e-cart-totals,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals{
  border:1px solid #E7E5F7;
  border-radius:16px;
  box-shadow:0 10px 28px rgba(38,24,77,.10);
  padding:18px;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table td,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table th{
  padding:10px 0;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table tr:not(.order-total):not(.cart-subtotal):not(.shipping) td{
  border-bottom:1px dashed #E7E5F7;
}

/* 2) PILL de métodos de envío: compacto y sin “barras vacías” */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method{ margin-top:8px !important; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li{
  position:relative; margin:0 0 10px 0; list-style:none;
  isolation:isolate;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  border:1.5px solid #E7E5F7; border-radius:14px; background:#fff;
  transition:background .2s, border-color .2s, transform .06s;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li:hover::before{
  border-color:#6A00FF; background:#F6F4FF; transform:translateY(-1px);
}

/* radio + label alineados y sin altura extra */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; input.shipping_method{
  position:relative; z-index:1; width:18px; height:18px;
  margin:12px 8px 12px 12px !important; accent-color:#6A00FF;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; label{
  position:relative; z-index:1; display:block; cursor:pointer;
  margin-left:42px !important;
  padding:12px 150px 12px 0 !important; /* reduce el “pill” */
  line-height:1.25; white-space:normal; font-weight:900; color:#0F0F15;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li .amount{
  position:absolute; z-index:1; right:16px; top:50%;
  transform:translateY(-50%); font-weight:900; color:#0F0F15;
}

/* 3) Campos del cálculo de envío: alto, borde y focus coherentes */
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator input[type="text"],
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator input[type="number"],
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator select{
  height:44px; padding:10px 12px;
  border:1px solid #E7E5F7 !important; border-radius:12px !important;
  background:#fff !important; color:#0F0F15;
  transition:box-shadow .15s ease, border-color .15s ease;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator input:focus,
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator select:focus{
  border-color:#6A00FF !important;
  box-shadow:0 0 0 3px rgba(106,0,255,.18) !important;
  outline:none;
}

/* Select2 (dropdown estilizado de país/estado) */
.elementor-7 .elementor-element.elementor-element-40f9c27 .select2-selection--single{
  height:44px !important; border-radius:12px !important; border:1px solid #E7E5F7 !important;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .select2-selection__rendered{ line-height:44px !important; padding:0 36px 0 12px !important; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .select2-selection__arrow{ height:44px !important; }

/* 4) Fila “Total”: caja remarcada */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total th,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total td{
  background:#FAF9FF !important; border:1px solid #E7E5F7 !important;
  border-radius:12px !important; padding:12px !important;
  font-size:1.1rem; font-weight:900; color:#0F0F15;
}

/* 5) Botones */
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator .button{
  height:46px; padding:0 16px; border-radius:12px; font-weight:900;
  color:#fff; background:#6A00FF; box-shadow:0 8px 18px rgba(106,0,255,.25);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator .button:hover{ background:#5300CC; }

.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout{ margin-top:14px; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout a.checkout-button{
  display:block; width:100%; height:52px; line-height:52px; text-align:center;
  border-radius:14px; color:#fff !important; font-weight:900; letter-spacing:.2px; border:0;
  background:linear-gradient(90deg,#6A00FF,#9C66FF);
  box-shadow:0 10px 28px rgba(106,0,255,.35);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout a.checkout-button:hover{
  filter:saturate(110%); box-shadow:0 14px 32px rgba(106,0,255,.40);
}

/* 6) Tabla: pulido menor (alineaciones) */
.elementor-7 .elementor-element.elementor-element-40f9c27 table.shop_table thead th{ white-space:nowrap; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-price,    .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-price{ text-align:right;  padding-left:10px; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-quantity, .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-quantity{ text-align:center; padding-left:10px; }
.elementor-7 .elementor-element.elementor-element-40f9c27 th.product-subtotal, .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-subtotal{ text-align:right;  padding-left:10px; }

/* 7) Miniaturas: tamaño óptimo y sombra suave */
.elementor-7 .elementor-element.elementor-element-40f9c27 td.product-thumbnail img{
  width:148px; height:148px; object-fit:cover; border-radius:12px;
  max-width:100%; box-shadow:0 2px 8px rgba(0,0,0,.05);
}

/* 8) Responsive pequeño */
@media (max-width:600px){
  .elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; label{ padding-right:135px !important; }
  .elementor-7 .elementor-element.elementor-element-40f9c27 td.product-thumbnail img{ width:120px; height:120px; }
}
/* ===== FIX: radios alineados + pill no tapa el encabezado ===== */

/* El ul no debe pegarse al título y no debe cortar el ::before */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .woocommerce-shipping-totals .shop_table .shipping td{
  overflow: visible;                    /* por si el tema oculta ::before */
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method{
  margin-top: 10px !important;          /* separa del texto “Envío” */
}

/* Estructura del “pill” */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li{
  position: relative;
  list-style: none;
  margin: 0 0 10px 0 !important;
  padding: 0;                           /* limpiamos padding nativo */
  isolation: isolate;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li::before{
  content:"";
  position: absolute; inset: 0;
  border: 1.5px solid var(--jg-border, #E7E5F7);
  border-radius: 14px;
  background: #fff;
  z-index: 0;                            /* fondo debajo del contenido */
  pointer-events: none;                  /* ¡que no tape los clics! */
  transition: background .2s, border-color .2s, transform .06s;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li:hover::before{
  border-color: #6A00FF; background: #F6F4FF; transform: translateY(-1px);
}

/* Radio a la izquierda, centrado vertical */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; input.shipping_method{
  position: absolute;
  left: 14px; top: 50%; transform: translateY(-50%);
  width: 18px; height: 18px; margin: 0 !important;
  z-index: 1; accent-color: #6A00FF;
}

/* Label ocupa el cuerpo del pill, sin márgenes extra */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; label{
  position: relative; z-index: 1;
  display: block; cursor: pointer;
  margin: 0 !important;                  /* quitamos el margin-left previo */
  padding: 14px 150px 14px 42px !important;  /* 42px = espacio para el radio */
  line-height: 1.25; font-weight: 900; color: #0F0F15;
  white-space: normal;
}

/* Precio a la derecha, centrado vertical */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li .amount{
  position: absolute; right: 16px; top: 50%;
  transform: translateY(-50%);
  z-index: 1; font-weight: 900; color: #0F0F15;
}

/* Estado seleccionado con leve realce */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li:has(&gt; input.shipping_method:checked)::before{
  border-color: #6A00FF; background: #FAF9FF;
  box-shadow: 0 8px 22px rgba(106,0,255,.16);
}
/* =========================================================
   FORM POLISH — Cart &gt; Totales &gt; Calculadora de envío / campos
   ========================================================= */

/* Título y separadores */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals h2{
  font-weight: 900; font-size: 1.06rem; letter-spacing:.2px;
  margin: 0 0 12px;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table .cart-subtotal th,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shop_table .cart-subtotal td{
  padding-top: 8px; padding-bottom: 12px;
  border-bottom: 1px dashed var(--jg-border);
}

/* Enlaces utilitarios */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .woocommerce-shipping-destination{
  margin: 8px 0 2px; color: var(--jg-muted); font-weight: 700; font-size: .92rem;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals a.shipping-calculator-button,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals a[href*="change"]{
  color: var(--jg-accent); font-weight: 900; text-decoration: none;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals a.shipping-calculator-button:hover,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals a[href*="change"]:hover{
  text-decoration: underline;
}

/* Etiquetas de campos */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row label{
  display:block; margin: 10px 0 6px;
  font-weight: 900; font-size: .94rem; color: var(--jg-text);
}

/* Inputs y selects coherentes */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row input.input-text,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row select{
  width:100%; height: 48px;
  padding: 10px 14px;
  border: 1.5px solid var(--jg-border);
  border-radius: 12px;
  background:#fff;
  font-weight: 800; color: var(--jg-text);
  transition: border-color .2s, box-shadow .2s, background-color .2s;
  -webkit-appearance: none; appearance: none;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row select{
  background-image: linear-gradient(45deg, transparent 50%, var(--jg-muted) 50%),
                    linear-gradient(135deg, var(--jg-muted) 50%, transparent 50%);
  background-position: calc(100% - 22px) 20px, calc(100% - 16px) 20px;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

/* Placeholders y help text */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form ::placeholder{ color: var(--jg-muted); opacity:.8; }
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .woocommerce-input-wrapper small,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .description{
  display:block; margin-top:6px; color: var(--jg-muted); font-size:.86rem; font-weight:700;
}

/* Foco accesible */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row input.input-text:focus,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row select:focus{
  border-color: var(--jg-accent);
  box-shadow: 0 0 0 3px color-mix(in oklab, var(--jg-accent) 22%, transparent);
  outline: 0;
}

/* Estado error (WooCommerce añade .woocommerce-invalid) */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .woocommerce-invalid input.input-text,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .woocommerce-invalid select{
  border-color: #ef4444;
  box-shadow: 0 0 0 3px color-mix(in oklab, #ef4444 22%, transparent);
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .woocommerce-invalid .woocommerce-error,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .woocommerce-invalid .error{
  margin-top:6px; color:#ef4444; font-weight:900; font-size:.86rem;
}

/* Botón “Actualizar dirección” como secundario */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .button{
  margin-top:10px; height:44px; padding:0 20px; border:0;
  border-radius:12px; font-weight:900; color:#fff;
  background: linear-gradient(90deg, var(--jg-accent), var(--jg-accent-2));
  box-shadow: 0 8px 18px rgba(106,0,255,.22);
  transition: transform .06s ease, filter .2s ease, box-shadow .2s ease;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .button:hover{
  transform: translateY(-1px); filter: saturate(110%);
  box-shadow: 0 12px 26px rgba(106,0,255,.28);
}

/* Tarjeta del “Total” más compacta y legible */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total th,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total td{
  font-size: 1.06rem; padding: 12px !important;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total td{ font-variant-numeric: tabular-nums; }

/* Espaciado entre bloques del formulario para “respirar” */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping-calculator-form .form-row{
  margin-bottom: 10px;
}

/* Alineación del precio del método de envío – ya definida arriba en el pill;
   reforzamos tamaño y peso para legibilidad */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li .amount{
  font-size:.98rem; font-variant-numeric: tabular-nums; letter-spacing:.1px;
}
/*************** JUST GAMING — FIX &amp; POLISH (scoped) ***************/

/* 1) Evitar que el label responsivo (td::before) se superponga al primer método */
@media (min-width: 768px){
  .elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .shipping td::before{
    display: none !important;
  }
}

/* 2) Lista de métodos de envío como “pill” sin solapes */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method{
  display: block !important;
  margin-top: 10px !important;
}

.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li{
  position: relative;
  isolation: isolate;           /* crea una capa propia */
  list-style: none !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
}

/* El fondo/borde del pill vive en ::before, pero NO captura clics */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li::before{
  content: "";
  position: absolute;
  inset: 0;
  border: 1.5px solid var(--jg-border, #e7e5f7);
  border-radius: 14px;
  background: #fff;
  z-index: 0;
  pointer-events: none;
  transition: background .2s, border-color .2s, box-shadow .2s, transform .06s;
}

.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li:hover::before{
  border-color: var(--jg-accent, #6a00ff);
  background: color-mix(in oklab, var(--jg-accent, #6a00ff) 6%, white);
  transform: translateY(-1px);
}

/* Radio, label y monto por encima del fondo */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; input.shipping_method{
  position: absolute;
  left: 14px; top: 50%;
  transform: translateY(-50%);
  margin: 0 !important;
  width: 18px; height: 18px;
  accent-color: var(--jg-accent, #6a00ff);
  z-index: 1;
}

.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li &gt; label{
  position: relative;
  z-index: 1;
  display: block;
  cursor: pointer;
  font-weight: 900;
  color: var(--jg-text, #0f0f15);
  padding: 14px 120px 14px 48px !important; /* espacio para radio a la izq y precio a la der */
  line-height: 1.25;
  white-space: normal;
}

.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li .amount{
  position: absolute;
  z-index: 1;
  right: 16px; top: 50%;
  transform: translateY(-50%);
  font-weight: 900;
  color: var(--jg-text, #0f0f15);
}

/* Estado seleccionado con glow leve */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals ul#shipping_method li:has(&gt; input.shipping_method:checked)::before{
  border-color: var(--jg-accent, #6a00ff);
  background: #faf9ff;
  box-shadow: 0 8px 22px rgba(106,0,255,.14);
}

/* 3) Bloque “Total” — table row con tarjeta suave */
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total th,
.elementor-7 .elementor-element.elementor-element-40f9c27 .cart_totals .order-total td{
  font-size: 1.06rem;
  font-weight: 900;
  color: var(--jg-text, #0f0f15);
  background: #faf9ff !important;
  border: 1px solid var(--jg-border, #e7e5f7) !important;
  border-radius: 12px !important;
  padding: 12px !important;
}

/* 4) Botón “Finalizar compra” full width, sin encimarse */
.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout{
  margin-top: 14px !important;
  clear: both;
  float: none;
}

.elementor-7 .elementor-element.elementor-element-40f9c27 .wc-proceed-to-checkout .checkout-button{
  display: block;
  width: 100%;
  height: 56px;
  line-height: 56px;
  border-radius: 14px;
  border: 0;
  color: #fff !important;
  font-weight: 900;
  letter-spacing: .2px;
  background: linear-gradient(90deg, var(--jg-accent, #6a00ff), var(--jg-accent-2, #9c66ff));
  box-shadow: 0 10px 28px rgba(106,0,255,.28);
}

/* 5) Pequeño espacio visual entre “Envío a …” y el card de “Total” */
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-destination{
  margin: 8px 0 6px 0;
  color: var(--jg-muted, #6a728a);
  font-weight: 700;
  font-size: .92rem;
}

/* (Opcional) Afinar el texto link “Cambiar dirección” */
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator .shipping-calculator-button{
  color: var(--jg-accent, #6a00ff);
  font-weight: 800;
  text-decoration: none;
}
.elementor-7 .elementor-element.elementor-element-40f9c27 .woocommerce-shipping-calculator .shipping-calculator-button:hover{
  text-decoration: underline;
}
/* ===== WhatsApp Banner – JustGaming ===== */
.woocommerce-cart .jg-wa-wrap {
  margin: 10px 0 14px;
}

.woocommerce-cart .jg-wa-banner{
  display:flex; align-items:center; gap:12px;
  padding:10px 12px;
  background:linear-gradient(90deg,#6a00ff,#9c66ff);
  color:#fff; font-weight:800; letter-spacing:.2px;
  border-radius:12px;
  box-shadow:0 8px 20px rgba(106,0,255,.25);
}

/* Contenido izquierdo */
.woocommerce-cart .jg-wa-left{
  display:flex; align-items:center; gap:10px; flex:1 1 auto; min-width:0;
}
.woocommerce-cart .jg-wa-dot{
  display:inline-block; width:8px; height:8px; border-radius:999px;
  background:#fff;
  box-shadow:0 0 0 3px rgba(255,255,255,.25);
}
.woocommerce-cart .jg-wa-txt{ opacity:.92; font-weight:700; }

/* Botón */
.woocommerce-cart .jg-wa-btn{
  flex:0 0 auto;
  background:#fff; color:#6a00ff !important;
  padding:8px 12px; border-radius:999px;
  font-weight:900; text-decoration:none;
  box-shadow:0 10px 18px rgba(0,0,0,.12);
  transition:transform .08s ease, filter .2s ease, box-shadow .2s ease;
}
.woocommerce-cart .jg-wa-btn:hover{
  transform:translateY(-1px);
  filter:saturate(110%);
  box-shadow:0 14px 28px rgba(0,0,0,.16);
}

/* Variante compacta en móviles */
@media (max-width:640px){
  .woocommerce-cart .jg-wa-banner{
    padding:9px 10px; border-radius:10px; gap:10px;
  }
  .woocommerce-cart .jg-wa-btn{ padding:7px 10px; font-size:.92rem; }
  .woocommerce-cart .jg-wa-txt{ display:none; } /* texto corto para no romper línea */
}
/* ====== CART – Envío: arreglos base ====== */
/* Quita pseudo-elementos/overlays del theme en la fila de envío */
.woocommerce-cart .cart_totals .shop_table tr.shipping td::before,
.woocommerce-checkout .cart_totals .shop_table tr.shipping td::before{
  content:none !important;
}

/* Asegura fondo limpio en la celda de envío */
.woocommerce-cart .cart_totals .shop_table tr.shipping td{
  background:transparent !important;
  position:relative;
  padding-top: 10px;
}

/* En caso de que algún estilo lo esconda */
.woocommerce-cart .cart_totals ul#shipping_method{
  display:block !important;
  margin:8px 0 6px !important;
  padding:0 !important;
}

/* ====== “Pills” de métodos ====== */
.woocommerce-cart .cart_totals ul#shipping_method li{
  list-style:none !important;
  position:relative;
  isolation:isolate;
  margin:0 0 10px 0 !important;
  padding:12px 110px 12px 42px !important;   /* espacio izq p/ radio, der p/ precio */
  border:1.5px solid var(--jg-border, #e7e5f7);
  border-radius:14px;
  background:#fff;
  transition:background .2s, border-color .2s, box-shadow .2s, transform .06s;
}
.woocommerce-cart .cart_totals ul#shipping_method li:hover{
  border-color:var(--jg-accent, #6a00ff);
  background:var(--jg-bg, #f6f4ff);
  transform:translateY(-1px);
}

/* Radio a la izquierda, centrado vertical */
.woocommerce-cart .cart_totals ul#shipping_method input.shipping_method{
  position:absolute; left:12px; top:50%; transform:translateY(-50%);
  width:18px; height:18px; margin:0 !important; padding:0 !important;
  accent-color:var(--jg-accent, #6a00ff);
  z-index:1;
}

/* Label a todo el ancho libre */
.woocommerce-cart .cart_totals ul#shipping_method label{
  position:relative; z-index:1;
  display:block; cursor:pointer;
  margin:0 !important;
  color:var(--jg-text, #0f0f15); font-weight:900; line-height:1.25;
  white-space:normal;
}

/* Precio a la derecha, centrado */
.woocommerce-cart .cart_totals ul#shipping_method .amount{
  position:absolute; right:14px; top:50%; transform:translateY(-50%);
  font-weight:900; color:var(--jg-text, #0f0f15);
}

/* Estado seleccionado: resalta pill */
.woocommerce-cart .cart_totals ul#shipping_method li:has(&gt; input.shipping_method:checked){
  border-color:var(--jg-accent, #6a00ff);
  background:#faf9ff;
  box-shadow:0 8px 18px rgba(106,0,255,.12);
}

/* ====== Texto “Enviar a…” y link “Cambiar dirección” ====== */
.woocommerce-cart .cart_totals .woocommerce-shipping-destination{
  margin:6px 0 0; color:var(--jg-muted, #6a728a); font-weight:700; font-size:.92rem;
}
.woocommerce-cart .cart_totals .woocommerce-shipping-calculator .shipping-calculator-button{
  display:inline-block; margin:4px 0 0; font-weight:900;
  color:var(--jg-accent, #6a00ff);
}

/* ====== Si tu theme mete líneas/gradientes arriba/abajo del td ====== */
.woocommerce-cart .cart_totals .shop_table tr.shipping td {
  box-shadow:none !important;
  border:0 !important;
}

/* ====== Responsive toque fino ====== */
@media (max-width:640px){
  .woocommerce-cart .cart_totals ul#shipping_method li{
    padding:12px 84px 12px 40px !important;
  }
  .woocommerce-cart .cart_totals ul#shipping_method .amount{ right:10px; }
}
/* +AIRE ARRIBA DEL BLOQUE DE ENVÍO */
.woocommerce-cart .cart_totals .shop_table tr.shipping th,
.woocommerce-cart .cart_totals .shop_table tr.shipping td{
  padding-top: 18px !important;   /* sube si quieres más (20–22) */
}

/* que el UL arranque con hueco y no pegue al divisor */
.woocommerce-cart .cart_totals ul#shipping_method{
  margin-top: 12px !important;
}

/* primera opción con un poco de separación extra */
.woocommerce-cart .cart_totals ul#shipping_method li:first-child{
  margin-top: 6px !important;
}

/* altura mínima cómoda de cada pill */
.woocommerce-cart .cart_totals ul#shipping_method li{
  min-height: 48px;
}

/* radio centrado (por si algún estilo lo movió) */
.woocommerce-cart .cart_totals ul#shipping_method input.shipping_method{
  top: 50%;
  transform: translateY(-50%);
}

/* si algún hr/::after del theme cruza la celda de envío, elimínalo */
.woocommerce-cart .cart_totals .shop_table tr.shipping td hr,
.woocommerce-cart .cart_totals .shop_table tr.shipping td::after{
  content: none !important;
}
/* ====== ENVÍO como "pill" limpio (forzado) ====== */
.woocommerce-cart .cart_totals .shop_table tr.shipping th,
.woocommerce-cart .cart_totals .shop_table tr.shipping td{
  padding-top:14px !important;
}

/* Contenedor de la lista */
.woocommerce-cart .cart_totals ul#shipping_method{
  display:block !important;
  margin:10px 0 0 0 !important;
  padding:0 !important;
}

/* Cada opción de envío = pill */
.woocommerce-cart .cart_totals ul#shipping_method li{
  position:relative !important;
  list-style:none !important;
  margin:0 0 10px 0 !important;
  padding:0 !important;
  isolation:isolate;
}

/* Fondo/borde del pill (capa de atrás) */
.woocommerce-cart .cart_totals ul#shipping_method li::before{
  content:"";
  position:absolute; inset:0;
  border:1.5px solid var(--jg-border, #e7e5f7);
  border-radius:14px;
  background:#fff;
  transition:background .2s, border-color .2s, box-shadow .2s, transform .06s;
  z-index:0; pointer-events:none;
}

/* Hover bonito */
.woocommerce-cart .cart_totals ul#shipping_method li:hover::before{
  border-color:var(--jg-accent, #6a00ff);
  background:var(--jg-bg, #f6f4ff);
  transform:translateY(-1px);
}

/* Radio siempre centrado vertical */
.woocommerce-cart .cart_totals ul#shipping_method li &gt; input.shipping_method{
  position:absolute !important;
  left:14px; top:50%;
  transform:translateY(-50%);
  width:18px; height:18px;
  accent-color:var(--jg-accent, #6a00ff);
  z-index:1;
  margin:0 !important;
}

/* Etiqueta ocupa todo el ancho del pill */
.woocommerce-cart .cart_totals ul#shipping_method li &gt; label{
  position:relative; z-index:1;
  display:block;
  cursor:pointer;
  font-weight:900;
  color:var(--jg-text, #0f0f15);
  /* 44px a la izq (radio), 110px a la der (monto) */
  padding:12px 110px 12px 44px !important;
  line-height:1.2;
  white-space:normal;
}

/* Monto a la derecha, centrado vertical */
.woocommerce-cart .cart_totals ul#shipping_method li .amount{
  position:absolute; z-index:1;
  right:16px; top:50%;
  transform:translateY(-50%);
  font-weight:900; color:#0f0f15;
}

/* Estado seleccionado */
.woocommerce-cart .cart_totals ul#shipping_method li:has(&gt; input.shipping_method:checked)::before{
  border-color:var(--jg-accent, #6a00ff);
  background:#faf9ff;
  box-shadow:0 8px 22px rgba(106,0,255,.16);
}

/* Check visual opcional (✔) */
.woocommerce-cart .cart_totals ul#shipping_method li &gt; input.shipping_method:checked + label::after{
  content:"✔";
  position:absolute; right:90px; top:50%;
  transform:translateY(-50%);
  font-weight:900; color:var(--jg-accent, #6a00ff);
}

/* Evita cualquier línea/elemento del tema que pase encima */
.woocommerce-cart .cart_totals .shop_table tr.shipping td hr,
.woocommerce-cart .cart_totals .shop_table tr.shipping td::after{
  content:none !important;
}
/* ====== ENVÍO: pills alineados y limpios ====== */
.cart_totals .shop_table .shipping td { position: relative; }

/* elimina el pseudo borde del tema que cruza el pill */
.cart_totals .shop_table .shipping td::before { display: none !important; }

.cart_totals ul#shipping_method{
  margin-top: 8px !important;
}

.cart_totals ul#shipping_method li{
  position: relative;
  list-style: none !important;
  margin: 0 0 10px 0 !important;
  border: 1.5px solid #e7e5f7;
  border-radius: 14px;
  background: #fff;
  /* padding: top right bottom left (dejamos hueco para el radio a la izq y el $ a la dcha) */
  padding: 14px 120px 14px 48px !important;
  transition: border-color .2s, box-shadow .2s, background .2s;
}

/* radio a la izquierda (centrado vertical) */
.cart_totals ul#shipping_method li &gt; input.shipping_method{
  position: absolute;
  left: 16px; top: 50%;
  transform: translateY(-50%);
  width: 18px; height: 18px;
  margin: 0 !important;
  accent-color: #6a00ff;  /* color de marca */
  z-index: 1;
}

/* texto del método */
.cart_totals ul#shipping_method li &gt; label{
  display: block;
  margin: 0 !important;
  font-weight: 900;
  color: #0f0f15;
  line-height: 1.25;
  cursor: pointer;
}

/* precio a la derecha, centrado verticalmente */
.cart_totals ul#shipping_method li .amount{
  position: absolute;
  right: 16px; top: 50%;
  transform: translateY(-50%);
  font-weight: 900;
  color: #0f0f15;
}

/* hover + seleccionado */
.cart_totals ul#shipping_method li:hover{
  border-color: #6a00ff;
  background: #f6f4ff;
}
.cart_totals ul#shipping_method li:has(&gt; input.shipping_method:checked){
  border-color: #6a00ff;
  background: #faf9ff;
  box-shadow: 0 6px 16px rgba(106,0,255,.12);
}
/* ========== PATCH MOBILE: quita etiquetas "PRODUCTO:", "PRECIO:", etc. ========== */
@media (max-width: 680px){
  #jgCart table.shop_table_responsive tr td::before{
    content: none !important;
    display: none !important;
  }
}

/* Asegúrate de que las celdas no generen cajas blancas internas */
#jgCart table.shop_table_responsive tr td{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* ===============  Card compacto para móvil (si no lo tenías)  =============== */
@media (max-width: 680px){
  /* fuera headers */
  #jgCart table.shop_table thead { display: none; }

  /* cada item como "card" */
  #jgCart tr.cart_item{
    display: grid;
    grid-template-columns: 72px 1fr auto;
    grid-template-areas:
      "thumb title remove"
      "thumb qty   price"
      "thumb subtotal subtotal";
    gap: 10px 12px;
    background: #faf9ff;
    border: 1px solid #e7e5f7;
    border-radius: 14px;
    padding: 12px;
    margin: 10px 0 14px;
    box-shadow: 0 8px 16px rgba(38,24,77,.06);
  }

  /* miniatura */
  #jgCart td.product-thumbnail{ grid-area: thumb; }
  #jgCart td.product-thumbnail img{
    width:72px; height:72px; object-fit:cover; border-radius:10px;
    display:block; box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* nombre (2 líneas max) */
  #jgCart td.product-name{ grid-area: title; align-self:start; }
  #jgCart td.product-name a{
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
    overflow:hidden; line-height:1.28; font-weight:900;
    color:#0f0f15 !important; font-size:clamp(.95rem,2.7vw,1.02rem);
    text-decoration:none;
  }
  #jgCart td.product-name a:hover{ color:#6a00ff !important; }

  /* eliminar (X) arriba derecha */
  #jgCart td.product-remove{ grid-area: remove; justify-self:end; align-self:start; }
  #jgCart td.product-remove a.remove{
    display:grid; place-items:center; width:28px; height:28px; border-radius:999px;
    background:#fff; color:#ef4444 !important; border:1px solid #e7e5f7;
    box-shadow:0 2px 6px rgba(0,0,0,.06); text-decoration:none;
  }

  /* cantidad */
  #jgCart td.product-quantity{ grid-area: qty; align-self:center; }
  #jgCart .quantity{ display:inline-flex; align-items:center; gap:6px; }
  #jgCart .quantity .qty{
    width:62px; height:38px; text-align:center; border:1px solid #e7e5f7;
    border-radius:10px; background:#fff; font-weight:800;
  }
  #jgCart .quantity .minus, #jgCart .quantity .plus{
    width:34px; height:34px; border-radius:10px; border:1px solid #e7e5f7;
    background:#fff; font-weight:900; line-height:1;
  }

  /* precio (unitario) a la derecha */
  #jgCart td.product-price{
    grid-area: price; text-align:right; align-self:center;
    color:#6a728a; font-weight:800; font-variant-numeric:tabular-nums;
    font-size:.98rem;
  }

  /* subtotal abajo a lo ancho */
  #jgCart td.product-subtotal{
    grid-area: subtotal; text-align:right; align-self:end;
    font-weight:900; font-variant-numeric: tabular-nums; font-size:1.02rem; color:#0f0f15;
    border-top:1px dashed #e7e5f7; padding-top:6px !important; margin-top:2px;
  }
}

/* Tablet – un pelín más grande */
@media (min-width:681px) and (max-width:991px){
  #jgCart tr.cart_item{ grid-template-columns: 92px 1fr auto; }
  #jgCart td.product-thumbnail img{ width:88px; height:88px; }
  #jgCart td.product-name a{ -webkit-line-clamp:2; font-size:1.05rem; }
  #jgCart .quantity .qty{ width:70px; height:40px; }
}
/* ==== ANTI-SPLIT: no cortar palabras + dos líneas elegantes ==== */
@media (max-width:680px){
  /* permite que la columna del nombre pueda encoger sin desbordar */
  #jgCart td.product-name{ min-width:0; }

  #jgCart td.product-name a{
    /* evita cortes raros de palabras */
    word-break: normal !important;      /* no rompas dentro de palabras */
    overflow-wrap: normal !important;   /* tampoco fuerces el corte */
    white-space: normal !important;
    hyphens: auto;                      /* si cabe, guión automático (opcional) */

    /* clamp a 2 líneas y oculta lo que sobra */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;

    /* micro ajustes visuales */
    line-height: 1.25;
    letter-spacing: .1px;
  }
}

/* ==== Compacta un poco la card en móvil (padding, gaps) ==== */
@media (max-width:680px){
  #jgCart tr.cart_item{
    gap: 8px 10px;
    padding: 10px;
    border-radius: 12px;
  }

  #jgCart td.product-thumbnail img{
    width: 68px; height: 68px;
    border-radius: 10px;
  }

  #jgCart .quantity .qty{
    width: 58px; height: 36px; font-size: .92rem;
    border-radius: 10px;
  }
  #jgCart .quantity .minus,
  #jgCart .quantity .plus{
    width: 32px; height: 32px; border-radius: 10px;
  }

  #jgCart td.product-price{
    font-size: .95rem;
  }
  #jgCart td.product-subtotal{
    font-size: 1rem; padding-top: 6px !important;
  }
}

/* ==== Tablet suave ==== */
@media (min-width:681px) and (max-width:991px){
  #jgCart td.product-name a{
    -webkit-line-clamp: 2;
    font-size: 1.02rem;
  }
  #jgCart .quantity .qty{ width: 66px; height: 38px; }
}
/* ==============================
   SHARE / PREVIEW DEL CARRITO (móvil)
   scope: #jgCar
   ============================== */
@media (max-width: 680px){

  /* Tarjeta base (intento cubrir las variantes de tu markup) */
  #jgCar .jg-card,
  #jgCar .product-mini-card,
  #jgCar .cart-item-card,
  #jgCar .e-cart-item,
  #jgCar .woocommerce-cart-form .cart_item {
    position: relative;
    padding: 12px 12px 14px;
    border-radius: 14px;
    width: 100%;
  }

  /* Botón eliminar arriba a la derecha */
  #jgCar .jg-remove,
  #jgCar .remove,
  #jgCar a.remove {
    position: absolute;
    right: 10px;
    top: 10px;
    z-index: 2;
  }

  /* Título más chico, 3 líneas, sin cortes raros */
  #jgCar .jg-title,
  #jgCar .product-title,
  #jgCar .product-name,
  #jgCar td.product-name a,
  #jgCar [class*="title"],
  #jgCar [class*="name"] {
    display: -webkit-box;
    -webkit-line-clamp: 3;              /* cambia a 2 si lo quieres más compacto */
    -webkit-box-orient: vertical;
    overflow: hidden;

    font-size: .92rem !important;       /* baja a .9 si aún lo quieres más chico */
    line-height: 1.25 !important;
    letter-spacing: .1px !important;
    text-align: left !important;
    margin-right: 34px;                  /* hueco para la X */

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    hyphens: auto;
    max-width: 100%;
  }

  /* Fila cantidad + precio en una línea */
  #jgCar .jg-qty-price,
  #jgCar .qty-price-row,
  #jgCar .quantity ~ .price,
  #jgCar .price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 8px;
  }

  /* Quantity compacta */
  #jgCar .quantity .qty,
  #jgCar input.qty {
    width: 62px;
    height: 36px;
    font-size: .9rem;
    border-radius: 10px;
    text-align: center;
  }

  /* Precio a la derecha sin romper línea */
  #jgCar .jg-price,
  #jgCar .price,
  #jgCar .amount {
    font-size: .95rem;
    white-space: nowrap;
  }

  /* Subtotal con menos margen */
  #jgCar .jg-subtotal,
  #jgCar .subtotal,
  #jgCar .product-subtotal {
    margin-top: 6px;
    font-weight: 800;
  }
}

/* Tableta (opcional: un pelín más grande) */
@media (min-width: 681px) and (max-width: 991px){
  #jgCar .jg-title,
  #jgCar .product-title,
  #jgCar .product-name,
  #jgCar td.product-name a{
    font-size: 1rem;
    -webkit-line-clamp: 3;
  }
}

/* ======================
   CART mobile (≤ 680px)
   ====================== */
@media (max-width:680px){

  /* Oculta cabecera */
  #jgCart table.shop_table thead{ display:none; }

  /* Cada producto como "card" */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    display:grid;
    grid-template-columns: 72px 1fr auto;
    grid-template-areas:
      "thumb title price"
      "thumb qty   price"
      "thumb sub   sub";
    gap:10px;
    padding:12px;
    margin:10px 0;
    border:1px solid #ece9fb;
    border-radius:14px;
    background:#f8f6ff;
    box-shadow:0 6px 18px rgba(106,0,255,.08);
  }

  /* ---------- Áreas ---------- */
  #jgCart td.product-thumbnail{ grid-area:thumb; align-self:center; padding:0 !important; }
  #jgCart td.product-name{      grid-area:title; padding:0 !important; }
  #jgCart td.product-quantity{  grid-area:qty;   padding:0 !important; }
  #jgCart td.product-price{     grid-area:price; padding:0 !important; text-align:right; white-space:nowrap; }
  #jgCart td.product-subtotal{  grid-area:sub;   padding:0 !important; text-align:right; }

  /* Miniatura */
  #jgCart td.product-thumbnail img{
    width:64px; height:64px; object-fit:cover;
    border-radius:10px; display:block;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* Título más pequeño y con 2 líneas máximo */
  #jgCart td.product-name a{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;       /* muestra 2 líneas y corta con … */
    overflow:hidden;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    font-size:13px; line-height:1.25;
    font-weight:900; color:#0f0f15 !important;
    text-decoration:none;
  }

  /* Cantidad compacta y centrada */
  #jgCart .quantity{ display:flex; justify-content:center; align-items:center; }
  #jgCart .quantity .qty{
    width:64px; height:38px; text-align:center; font-weight:800;
    border:1.5px solid #e7e5f7; border-radius:12px; background:#fff;
  }

  /* Subtotal destacado */
  #jgCart td.product-subtotal .amount{ font-weight:900; }

  /* Botón eliminar como “chip” flotante */
  #jgCart td.product-remove{ position:relative; padding:0 !important; }
  #jgCart td.product-remove a.remove{
    position:absolute; top:-6px; right:-6px;
    width:28px; height:28px; border-radius:999px;
    display:grid; place-items:center;
    background:#fff; border:1px solid #ece9fb;
    color:#ef4444 !important; text-decoration:none;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* Unifica padding que pueda meter el tema */
  #jgCart table.shop_table td{ padding:0 !important; }

  /* Asegura ancho completo del contenedor */
  #jgCart table.shop_table{ width:100%; table-layout:auto !important; }
}
/* ————— CART mobile: afinado tipografía y espacios ————— */
@media (max-width:680px){
  /* Card base */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    position:relative;
    padding:14px 14px !important;
    border-radius:14px;
    margin:10px 0;
  }

  /* Título más chico y con 2–3 líneas máximo */
  #jgCart td.product-name a{
    font-size:13px;
    line-height:1.25;
    font-weight:900;
    color:#0f0f15 !important;
    display:-webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;     /* cambia 2 o 3 según prefieras */
    overflow:hidden;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    margin-bottom:8px;
    text-align:left;
  }

  /* Cantidad compacta */
  #jgCart .quantity{ display:flex; justify-content:flex-start; }
  #jgCart .quantity .qty{
    width:68px; height:38px;
    border:1.5px solid #e7e5f7; border-radius:12px;
    text-align:center; font-weight:800;
  }

  /* Precio arriba a la derecha */
  #jgCart td.product-price{
    text-align:right; white-space:nowrap; padding:0 !important;
  }

  /* Subtotal abajo a la derecha, marcado */
  #jgCart td.product-subtotal{
    text-align:right; padding-top:6px !important;
  }
  #jgCart td.product-subtotal .amount{ font-weight:900; }

  /* Quita rellenos inconsistentes del tema */
  #jgCart table.shop_table td{ padding:0 !important; }
}
@media (max-width:680px){
  /* Asegura que la miniatura exista visualmente */
  #jgCart td.product-thumbnail{ display:table-cell !important; padding:0 !important; }

  /* Convierte el row en grid con 3 columnas: thumb | contenido | precio */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    display:grid;
    grid-template-columns: 64px 1fr auto;
    grid-template-areas:
      "thumb title price"
      "thumb qty   price"
      "thumb sub   sub";
    gap:10px;
    padding:12px !important;
    border-radius:14px;
    margin:10px 0;
  }

  #jgCart td.product-thumbnail{ grid-area:thumb; align-self:center; }
  #jgCart td.product-name{ grid-area:title; }
  #jgCart td.product-quantity{ grid-area:qty; }
  #jgCart td.product-price{ grid-area:price; text-align:right; white-space:nowrap; }
  #jgCart td.product-subtotal{ grid-area:sub; text-align:right; }

  #jgCart td.product-thumbnail img{
    width:56px; height:56px; object-fit:cover; border-radius:10px;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* Mismos ajustes tipográficos del plan 1 */
  #jgCart td.product-name a{
    font-size:13px; line-height:1.25; font-weight:900;
    display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3;
    overflow:hidden; white-space:normal !important; overflow-wrap:anywhere !important;
    margin-bottom:2px; text-align:left;
  }
  #jgCart .quantity{ display:flex; justify-content:flex-start; }
  #jgCart .quantity .qty{ width:64px; height:38px; border:1.5px solid #e7e5f7; border-radius:12px; text-align:center; font-weight:800; }
  #jgCart td.product-subtotal .amount{ font-weight:900; }
}
/* ——— Más ancho para el título en móvil ——— */
@media (max-width:680px){

  /* Card más ceñido */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    padding:10px 12px !important;   /* antes 12/14; reduce bordes */
    gap:8px 10px;                    /* menos espacio entre columnas */
    /* Rejilla: miniatura | texto | precio */
    grid-template-columns: 52px minmax(0,1fr) max-content; /* MÁS ANCHO PARA EL TEXTO */
    grid-template-areas:
      "thumb title price"
      "thumb qty   price"
      "thumb sub   sub";
  }

  /* Miniatura un poco más compacta */
  #jgCart td.product-thumbnail{ grid-area:thumb; align-self:center; }
  #jgCart td.product-thumbnail img{
    width:48px; height:48px; object-fit:cover; border-radius:10px;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* Título con más líneas y menos cortes */
  #jgCart td.product-name{ grid-area:title; }
  #jgCart td.product-name a{
    font-size:13.5px; line-height:1.25; font-weight:900;
    margin:0 2px 4px 0;               /* un pelín de margen a la derecha */
    display:-webkit-box; -webkit-box-orient:vertical;
    -webkit-line-clamp: 4;            /* sube a 4 líneas; usa 3 si prefieres */
    overflow:hidden;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    hyphens:auto;
    text-align:left;
  }

  /* Precio: sin reservar tanto ancho; pegado a la derecha */
  #jgCart td.product-price{
    grid-area:price; text-align:right; white-space:nowrap;
    width:auto !important; min-width:0 !important;
    padding:0 !important;
  }

  /* Cantidad y subtotal */
  #jgCart td.product-quantity{ grid-area:qty; }
  #jgCart .quantity .qty{
    width:62px; height:38px;
    border:1.5px solid #e7e5f7; border-radius:12px;
    text-align:center; font-weight:800;
  }
  #jgCart td.product-subtotal{
    grid-area:sub; text-align:right; padding-top:6px !important;
  }
  #jgCart td.product-subtotal .amount{ font-weight:900; }

  /* Limpia rellenos de la tabla del tema que “empujan” el contenido */
  #jgCart table.shop_table td{ padding:0 !important; }
}
/* ——— Móvil: 2 columnas (thumb + contenido). Precio abajo a la derecha ——— */
@media (max-width:680px){

  /* Card: 2 columnas, el título gana el ancho */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    display:grid !important;
    gap:10px 12px;
    padding:10px 12px !important;
    grid-template-columns: 56px 1fr !important;          /* thumb + contenido */
    grid-template-areas:
      "thumb title"
      "thumb qty"
      "thumb sub"
      "thumb price";                                      /* precio cae abajo a la derecha */
    border-radius:12px;
  }

  /* Miniatura */
  #jgCart td.product-thumbnail{ grid-area:thumb; align-self:center; }
  #jgCart td.product-thumbnail img{
    width:52px; height:52px; object-fit:cover; border-radius:10px;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* Título con verdadero ancho */
  #jgCart td.product-name{ grid-area:title; min-width:0; } /* ¡clave! */
  #jgCart td.product-name a{
    font-size:14px; line-height:1.25; font-weight:900;
    display:-webkit-box; -webkit-box-orient:vertical;
    -webkit-line-clamp: 4;       /* pon 3–5 según te guste */
    overflow:hidden;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    hyphens:auto;
    margin:0 0 2px 0;
    text-align:left;
  }

  /* Cantidad */
  #jgCart td.product-quantity{ grid-area:qty; }
  #jgCart .quantity .qty{
    width:64px; height:38px;
    border:1.5px solid #e7e5f7; border-radius:12px;
    text-align:center; font-weight:800;
  }

  /* Subtotal */
  #jgCart td.product-subtotal{ grid-area:sub; text-align:right; padding-top:4px !important; }
  #jgCart td.product-subtotal .amount{ font-weight:900; }

  /* Precio: baja al área “price” y no reserva ancho */
  #jgCart td.product-price{
    grid-area:price; text-align:right;
    width:auto !important; min-width:0 !important; padding:0 !important;
    white-space:nowrap;
  }

  /* Limpia rellenos heredados del tema */
  #jgCart table.shop_table td{ padding:0 !important; }
}
/* ===== Móvil: que el título use todo el ancho ===== */
@media (max-width:680px){

  /* La tabla no limita el layout y no mete paddings raros */
  #jgCart table.shop_table{
    table-layout:auto !important;
    border-collapse:separate;
  }

  /* El <tr> se convierte en grid de 2 columnas (thumb + contenido) */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    display:grid !important;
    grid-template-columns: 60px 1fr;           /* miniatura fija + contenido flexible */
    grid-template-rows: auto auto auto;        /* título, qty, meta (precio/subtotal) */
    grid-template-areas:
      "thumb title"
      "thumb qty"
      "thumb meta";
    gap:10px 12px;
    padding:10px 12px !important;
    align-items:center;
    border-radius:12px;
  }

  /* MUY IMPORTANTE: que los <td> dejen de ser table-cell y no impongan anchos */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item &gt; td{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }

  /* Miniatura */
  #jgCart td.product-thumbnail{ grid-area:thumb; align-self:center; }
  #jgCart td.product-thumbnail img{
    width:54px; height:54px; object-fit:cover; border-radius:10px;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }

  /* Título: ahora sí toma todo el ancho de la columna 2 */
  #jgCart td.product-name{ grid-area:title; min-width:0 !important; }
  #jgCart td.product-name a{
    display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp: 4; /* 3–5 a gusto */
    overflow:hidden;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    hyphens:auto;
    font-size:15px; line-height:1.3; font-weight:900;
    margin:0;
    text-align:left;
  }

  /* Cantidad centrada */
  #jgCart td.product-quantity{ grid-area:qty; }
  #jgCart .quantity{ display:inline-flex; align-items:center; gap:6px; }
  #jgCart .quantity .qty{
    width:68px; height:38px; text-align:center; font-weight:800;
    border:1.5px solid #e7e5f7; border-radius:12px; background:#fff;
  }

  /* Precio / Subtotal abajo a la derecha (puedes elegir mostrar solo subtotal) */
  #jgCart td.product-price{ display:none !important; }           /* ← opción A: ocultar precio en móvil */
  /* Si prefieres mostrar precio y NO ocultarlo, comenta la línea de arriba y deja ambas en 'meta' */
  #jgCart td.product-price,
  #jgCart td.product-subtotal{
    grid-area:meta; justify-self:end; text-align:right;
    white-space:nowrap;
  }
  #jgCart td.product-subtotal .amount{ font-weight:900; }

  /* Quita paddings generales para que el grid tenga control total */
  #jgCart table.shop_table td{ padding:0 !important; }
}
/* ===============================
   JUST GAMING · CART MÓVIL (fix final con #jgCart)
   =============================== */
@media (max-width: 680px){

  /* Neutraliza el grid anterior si quedó cacheado */
  /* ===== JUST GAMING · CART — RESET + LAYOUT (solo móvil) ===== */
@media (max-width:680px){

  /* 1) Reset del modo móvil de Woo (quita labels y padding fantasma) */
  #jgCart table.shop_table thead{ display:none !important; }

  #jgCart table.shop_table_responsive tr &gt; td{
    display:block !important;
    float:none !important; clear:none !important;
    padding:0 !important; margin:0 !important;
    width:auto !important; min-width:0 !important;
    background:transparent !important; border:0 !important; box-shadow:none !important;
    text-align:left !important;
  }
  #jgCart table.shop_table_responsive tr &gt; td::before{
    content:none !important; display:none !important;
    width:0 !important; margin:0 !important;
  }

  /* 2) Cada item como GRID (thumb | texto | precio/subtotal) */
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    display:grid !important;
    grid-template-columns: 56px 1fr max-content;
    grid-template-rows: auto auto;
    grid-template-areas:
      "thumb title price"
      "thumb qty   price";
    gap:10px 12px !important;
    align-items:start;
    padding:12px !important;
    border:0 !important; background:transparent !important;
    position:relative;
  }

  /* 3) Mapeo */
  #jgCart td.product-thumbnail{ grid-area:thumb; align-self:start; }
  #jgCart td.product-name     { grid-area:title; min-width:0 !important; }
  #jgCart td.product-quantity { grid-area:qty; }
  #jgCart td.product-price,
  #jgCart td.product-subtotal { grid-area:price; justify-self:end; text-align:right; white-space:nowrap; }

  /* 4) Miniatura */
  #jgCart td.product-thumbnail a{ display:block; line-height:0; }
  #jgCart td.product-thumbnail img{
    width:56px !important; height:56px !important;
    object-fit:contain; display:block; border-radius:10px; margin:0;
  }

  /* 5) Título (visible, sin cortes raros) */
  #jgCart td.product-name a{
    display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden;
    font-weight:800; font-size:14px; line-height:1.25;
    color:#0f0f15; text-decoration:none;
    white-space:normal !important; word-break:normal !important; overflow-wrap:break-word !important;
  }

  /* 6) Cantidad */
  #jgCart .quantity{ display:flex; align-items:center; gap:8px; }
  #jgCart .quantity .qty{
    width:68px; height:3px; text-align:center;
    border:1.5px solid #e7e5f7; border-radius:12px; font-weight:800;
  }

  /* 7) Botón eliminar arriba-derecha */
  #jgCart td.product-remove{
    position:absolute !important; top:8px; right:8px; padding:0 !important;
  }
  #jgCart td.product-remove .remove{
    width:28px; height:28px; display:grid; place-items:center; border-radius:999px;
  }
}

/* Extra-chico: aprieta un poco */
@media (max-width:400px){
  #jgCart tr.woocommerce-cart-form__cart-item.cart_item{
    grid-template-columns: 52px 1fr max-content;
    gap:8px 10px !important;
  }
  #jgCart td.product-thumbnail img{ width:52px !important; height:52px !important; }
  #jgCart td.product-name a{ -webkit-line-clamp:2; }
}/* End custom CSS */