/* =========================================================================
   Mungos Shop Skin — estiliza el CARRITO y CHECKOUT REALES de WooCommerce.
   NO reescribe nada de la lógica: WooCommerce y las pasarelas (Mercado Pago,
   PSE, Wompi, Addi, Nequi…) renderizan su propio HTML/campos y AQUÍ solo se
   visten. 100% compatible con cualquier gateway porque su marcado no se toca,
   solo se le da el look Mungos (marcos con borde café, sombras duras, pills,
   fuentes sans-plomb + xanti-typewriter).

   Alcance: se aplica bajo `.mu-shop` (wrapper del widget Elementor) y bajo las
   clases de página de WooCommerce `.woocommerce-cart` / `.woocommerce-checkout`
   (para que funcione «de una» al instalar, sin Elementor). El archivo SOLO se
   encola en esas páginas / dentro del widget, así que targetear `.woocommerce`
   es seguro.
   ========================================================================= */

.mu-shop,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  --mu-teal:#0AAEBE; --mu-cream:#FFEED1; --mu-cream2:#FFF6E6; --mu-ink:#2A1600;
  --mu-muted:#6b5d4a; --mu-red:#ED4E3B; --mu-lime:#C2E535; --mu-limeink:#173a1b;
  --mu-brown:#4a2f22; --mu-line:#e7ddca; --mu-ok:#1b7a2e;
  --mu-radius:16px;
  font-family:"Nunito", system-ui, sans-serif;
  color:var(--mu-ink);
}
.mu-shop *, .woocommerce-cart .woocommerce *, .woocommerce-checkout .woocommerce *{ box-sizing:border-box; }

/* Ocultar etiquetas para lector de pantalla (algunas quedan visibles si el tema
   no las esconde — p.ej. el <label> de la cantidad en el carrito). */
.mu-shop .screen-reader-text,
.woocommerce-cart .screen-reader-text,
.woocommerce-checkout .screen-reader-text,
.woocommerce-cart .quantity label,
.mu-shop .quantity label{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Titulares en la fuente de marca — xanti-typewriter-variable (por pedido) */
.mu-shop h1,.mu-shop h2,.mu-shop h3,
.woocommerce-cart h1,.woocommerce-checkout h1,.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout h3{
  font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",system-ui,sans-serif;
  font-weight:800; letter-spacing:.2px;
}
/* Blindaje de la FUENTE de títulos: el tema (GICA/Hello) y la tipografía global de
   Elementor pisan h1..h3 y el título de página con su propia fuente (Fredoka). Sin
   !important «Detalles de facturación» y «Checkout» salían en Fredoka mientras «Tu
   pedido» (#id, más específico) sí quedaba en xanti. Solo tocamos font-family. */
.woocommerce-cart h1,.woocommerce-cart h2,.woocommerce-cart h3,
.woocommerce-checkout h1,.woocommerce-checkout h2,.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-shipping-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3,
.woocommerce-checkout .entry-title,.woocommerce-cart .entry-title,
.woocommerce-checkout .elementor-page-title .elementor-heading-title,
.woocommerce-cart .elementor-page-title .elementor-heading-title,
.mu-shop h1,.mu-shop h2,.mu-shop h3,.mu-shop .mu-shop__title,
.woocommerce-cart .cart_totals.mu-summary .mu-summary__title{
  font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",system-ui,sans-serif!important;
}

/* ── Marca compartida: tarjetas, campos, botones ─────────────────────── */
.mu-card{
  background:#fff;border:2px solid var(--mu-brown);border-radius:var(--mu-radius);
  box-shadow:5px 6px 0 rgba(0,0,0,.20);
}

/* Inputs / selects / textarea */
.mu-shop .input-text,.mu-shop select,.mu-shop textarea,
.woocommerce-cart .input-text,.woocommerce-cart select,
.woocommerce-checkout .input-text,.woocommerce-checkout select,.woocommerce-checkout textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea{
  width:100%;min-height:48px;border:2px solid var(--mu-line);border-radius:12px;
  padding:0 14px;font-size:15px;font-family:"Nunito",sans-serif;background:#fff;color:var(--mu-ink);
  box-shadow:none;transition:border-color .15s, box-shadow .15s;
}
.woocommerce-checkout textarea,.woocommerce-cart textarea{padding-top:11px;min-height:80px;}
.mu-shop .input-text:focus,.mu-shop select:focus,.mu-shop textarea:focus,
.woocommerce-cart .input-text:focus,.woocommerce-cart select:focus,
.woocommerce-checkout .input-text:focus,.woocommerce-checkout select:focus,.woocommerce-checkout textarea:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus{
  outline:0;border-color:var(--mu-teal);box-shadow:0 0 0 3px rgba(10,174,190,.18);
}
/* labels tipo etiqueta de marca (xanti) */
.woocommerce form .form-row label,
.woocommerce-checkout .form-row label,
.woocommerce-cart .form-row label{
  font-family:"xanti-typewriter-variable","Nunito",monospace;
  font-weight:800;font-size:12.5px;color:var(--mu-muted);margin:0 0 6px;display:block;
}
.woocommerce form .form-row .required{color:var(--mu-red);border:0;}

/* Botón CTA lima (proceder / realizar pedido).
   !important + doble clase: el tema/WooCommerce/Elementor pintan .button.alt de
   morado (#7F54B3) con alta especificidad; hay que blindarlo o sale morado. */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #place_order,
.woocommerce a.button.alt.checkout-button,
.woocommerce button.button.alt#place_order,
.mu-shop a.checkout-button,.mu-shop #place_order{
  display:flex;align-items:center;justify-content:center;gap:9px;width:100%;
  background:#B5DC4A!important;color:#1A3B3C!important;border:2px solid #1A3B3C!important;
  border-radius:999px!important;box-shadow:0 3px 0 #1A3B3C!important;
  font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",sans-serif!important;font-weight:800!important;font-size:19px;letter-spacing:.5px;
  padding:15px 26px;min-height:54px;text-align:center;text-shadow:none!important;text-transform:uppercase;
  transition:transform .12s, box-shadow .12s;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout #place_order:hover,
.woocommerce a.button.alt.checkout-button:hover,
.woocommerce button.button.alt#place_order:hover,
.mu-shop a.checkout-button:hover,.mu-shop #place_order:hover{
  background:#cff04a!important;transform:translateY(-2px);box-shadow:0 6px 0 #1A3B3C!important;
}
/* Botones secundarios (aplicar cupón, actualizar carrito) tipo «ghost» */
.woocommerce-cart .actions .button,
.woocommerce-cart .coupon .button,
.mu-shop .coupon .button,.mu-shop .actions .button{
  background:#fff;color:var(--mu-ink);border:2px solid var(--mu-brown);border-radius:999px;
  font-weight:800;font-size:14px;min-height:48px;padding:0 20px;box-shadow:none;text-transform:none;
}
.woocommerce-cart .actions .button:hover,
.woocommerce-cart .coupon .button:hover{background:var(--mu-cream);}

/* ══════════════════════════════════════════════════════════════════════
   CARRITO
   ══════════════════════════════════════════════════════════════════════ */
.woocommerce-cart .woocommerce,.mu-shop.mu-shop--cart{max-width:1160px;margin:0 auto;}
.woocommerce-cart table.shop_table,
.mu-shop table.shop_table{
  width:100%;max-width:100%;table-layout:fixed;
  background:#fff;border:2px solid var(--mu-brown);border-radius:var(--mu-radius);
  border-collapse:separate;border-spacing:0;overflow:hidden;box-shadow:5px 6px 0 rgba(0,0,0,.20);
}
/* la columna del carrito puede encogerse (si no, la tabla se desborda bajo los totales) */
.woocommerce-cart .woocommerce-cart-form{min-width:0;}
/* Anchos de columna deterministas (con table-layout:fixed) para que NADA se salga:
   la columna PRODUCTO toma el resto; las demás son fijas. */
.woocommerce-cart table.shop_table th.product-remove,
.woocommerce-cart table.shop_table td.product-remove{width:46px;text-align:center;padding-left:8px;padding-right:8px;}
.woocommerce-cart table.shop_table th.product-thumbnail,
.woocommerce-cart table.shop_table td.product-thumbnail{width:96px;}
.woocommerce-cart table.shop_table th.product-name,
.woocommerce-cart table.shop_table td.product-name{width:auto;min-width:0;word-wrap:break-word;overflow-wrap:anywhere;}
.woocommerce-cart table.shop_table th.product-price,
.woocommerce-cart table.shop_table td.product-price{width:90px;}
.woocommerce-cart table.shop_table th.product-quantity,
.woocommerce-cart table.shop_table td.product-quantity{width:140px;text-align:center;}
.woocommerce-cart table.shop_table th.product-subtotal,
.woocommerce-cart table.shop_table td.product-subtotal{width:104px;text-align:right;}
.woocommerce-cart table.shop_table thead th,
.mu-shop table.shop_table thead th{
  background:var(--mu-cream2);border-bottom:2px solid var(--mu-line);
  font-family:"xanti-typewriter-variable","Nunito",monospace;
  font-weight:800;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--mu-muted);
  padding:14px 16px;
}
.woocommerce-cart table.shop_table td,
.mu-shop table.shop_table td{border-top:1px solid var(--mu-line);padding:16px;vertical-align:middle;}
.woocommerce-cart td.product-thumbnail img,
.mu-shop td.product-thumbnail img{
  width:76px;height:76px;border-radius:14px;border:2px solid var(--mu-line);object-fit:cover;
}
.woocommerce-cart td.product-name a,
.mu-shop td.product-name a{
  font-family:"sans-plomb","Fredoka",sans-serif;font-weight:700;font-size:18px;color:var(--mu-ink);
}
.woocommerce-cart td.product-name a:hover{color:var(--mu-red);}
.woocommerce-cart .product-remove a.remove,
.mu-shop .product-remove a.remove{
  color:var(--mu-red)!important;font-size:0;width:30px;height:30px;line-height:26px;border-radius:50%;
  border:2px solid var(--mu-line);display:inline-flex;align-items:center;justify-content:center;background:#fff!important;
}
.woocommerce-cart .product-remove a.remove::before{content:"✕";font-size:15px;}
.woocommerce-cart .product-remove a.remove:hover{border-color:var(--mu-red);background:#fff!important;}
/* stepper de cantidad */
.woocommerce-cart .quantity,.mu-shop .quantity{display:inline-flex;border:2px solid var(--mu-brown);border-radius:999px;overflow:hidden;background:#fff;}
.woocommerce-cart .quantity .qty,.mu-shop .quantity .qty{
  width:56px;min-height:40px;border:0;text-align:center;font-weight:800;background:#fff;-moz-appearance:textfield;
}
.woocommerce-cart .quantity .qty::-webkit-outer-spin-button,
.woocommerce-cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.woocommerce-cart td.product-subtotal{font-weight:900;font-size:17px;}
/* cupón + actualizar carrito */
.woocommerce-cart .cart .actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:16px;}
.woocommerce-cart .cart .actions .coupon{display:flex;gap:8px;align-items:center;flex:1 1 340px;max-width:440px;}
.woocommerce-cart .cart .actions .coupon #coupon_code{flex:1 1 auto;width:auto;min-width:0;min-height:48px;}
.woocommerce-cart .cart .actions .coupon .button{flex:0 0 auto;white-space:nowrap;}
.woocommerce-cart .cart .actions > .button,
.woocommerce-cart .cart .actions button[name="update_cart"]{flex:0 0 auto;white-space:nowrap;}

/* Totales del carrito → tarjeta resumen.
   !important: WooCommerce fija .cart_totals{width:48%;float:right} con la MISMA
   especificidad y carga después → sin blindaje el resumen queda a ~48% (aplastado
   dentro de su columna). */
.woocommerce-cart .cart-collaterals,
.woocommerce-cart .cart-collaterals .cart_totals,
.mu-shop .cart_totals{
  float:none!important;width:100%!important;
}
.woocommerce-cart .cart-collaterals .cart_totals,
.mu-shop .cart_totals{
  background:#fff;border:2px solid var(--mu-brown);border-radius:var(--mu-radius);
  box-shadow:5px 6px 0 rgba(0,0,0,.20);padding:22px;
}
.woocommerce-cart .cart_totals h2{font-size:24px;margin:0 0 14px;}
.woocommerce-cart .cart_totals table.shop_table{border:0;box-shadow:none;border-radius:0;}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td{border:0;border-top:1px solid var(--mu-line);padding:11px 0;background:transparent;font-size:15px;}
.woocommerce-cart .cart_totals tr.order-total th{font-family:"sans-plomb","Fredoka",sans-serif;font-size:20px;border-top:2px solid var(--mu-brown);}
.woocommerce-cart .cart_totals tr.order-total .amount{font-family:"sans-plomb","Fredoka",sans-serif;font-size:28px;color:var(--mu-ink);}
.woocommerce-cart .cart_totals .wc-proceed-to-checkout{padding:16px 0 0;}
/* Override «Resumen del pedido» (plantilla mungos cart-totals) */
.woocommerce-cart .cart_totals.mu-summary .mu-summary__title{font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",sans-serif;font-weight:800;font-size:22px;margin:0 0 14px;color:var(--mu-ink);}
.woocommerce-cart .cart_totals.mu-summary .mu-summary__note{font-size:12px;color:var(--mu-muted);text-align:right;margin-top:2px;}
.woocommerce-cart .cart_totals.mu-summary .mu-summary__table{width:100%;border:0!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;margin:0;}

/* Stepper − n + en el carrito (shop.js envuelve el input de cantidad) */
.woocommerce-cart .quantity.mu-stepper{padding:0;max-width:100%;}
.woocommerce-cart .quantity.mu-stepper .mu-qbtn{width:32px;min-height:38px;flex:0 0 auto;border:0;background:#fff;font-size:18px;font-weight:800;line-height:1;color:var(--mu-ink);cursor:pointer;}
.woocommerce-cart .quantity.mu-stepper .mu-qbtn:hover{background:var(--mu-cream);}
.woocommerce-cart .quantity.mu-stepper .qty{width:38px;flex:0 0 auto;-moz-appearance:textfield;}
.woocommerce-cart .quantity.mu-stepper .qty::-webkit-outer-spin-button,
.woocommerce-cart .quantity.mu-stepper .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

/* ══════════════════════════════════════════════════════════════════════
   CARRITO — clon del mockup (override woo/cart/cart.php, rejilla .mu-cart)
   Valores EXACTOS del artefacto: card radius 18, thumb 92, step 40,
   grid 1fr 120px 150px 110px 34px.
   ══════════════════════════════════════════════════════════════════════ */
.woocommerce-cart .mu-cart{max-width:none;margin:0;}
.mu-cart__card{background:#fff;border:2px solid var(--mu-brown);border-radius:18px;box-shadow:5px 6px 0 rgba(0,0,0,.22);padding:8px 20px 4px;overflow:hidden;}
.mu-cart__head{display:grid;grid-template-columns:1fr 120px 150px 110px 34px;gap:12px;padding:12px 4px;
  font-family:"xanti-typewriter-variable","Nunito",monospace;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--mu-muted);border-bottom:2px solid var(--mu-line);}
.mu-cart__head .c{text-align:center;} .mu-cart__head .r{text-align:right;}
.mu-cart__row{display:grid;grid-template-columns:1fr 120px 150px 110px 34px;gap:12px;align-items:center;padding:16px 4px;border-top:1px solid var(--mu-line);}
.mu-cart__body .mu-cart__row:first-child{border-top:0;}
.mu-cart__prod{display:flex;gap:14px;align-items:center;min-width:0;}
.mu-cart__thumb{width:92px;height:92px;border-radius:14px;flex:0 0 auto;overflow:hidden;background:var(--mu-cream2);border:2px solid var(--mu-line);}
.mu-cart__thumb, .mu-cart__thumb a{display:flex;align-items:center;justify-content:center;width:92px;height:92px;}
.mu-cart__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.mu-cart__info{min-width:0;}
.mu-cart__name{font-family:"sans-plomb","Fredoka",sans-serif;font-weight:700;font-size:18px;line-height:1.15;color:var(--mu-ink);}
.mu-cart__name a{color:var(--mu-ink);} .mu-cart__name a:hover{color:var(--mu-red);}
.mu-cart__name .variation,.mu-cart__name dl,.mu-cart__name .wc-item-meta{font-family:"Nunito",sans-serif;font-weight:600;font-size:13px;color:var(--mu-muted);margin:3px 0 0;}
.mu-cart__name .mu-stock{margin-top:7px;}
.mu-cart__price{text-align:center;font-weight:800;}
.mu-cart__qty{display:flex;justify-content:center;}
.mu-cart__sub{text-align:right;font-weight:900;font-size:17px;}
.mu-cart__rm{display:flex;justify-content:center;}
.mu-cart__rm .remove{color:var(--mu-red)!important;font-size:20px;line-height:1;width:30px;height:30px;border-radius:50%;border:2px solid var(--mu-line);display:inline-flex;align-items:center;justify-content:center;background:#fff!important;text-decoration:none;}
.mu-cart__rm .remove:hover{border-color:var(--mu-red);background:#fff!important;}
/* stepper − n + (shop.js envuelve el .quantity) */
.mu-cart .quantity{display:inline-flex;align-items:center;border:2px solid var(--mu-brown);border-radius:999px;overflow:hidden;background:#fff;}
.mu-cart .quantity.mu-stepper .mu-qbtn{width:36px;min-height:40px;flex:0 0 auto;border:0;background:#fff;font-size:20px;font-weight:800;line-height:1;color:var(--mu-ink);cursor:pointer;}
.mu-cart .quantity.mu-stepper .mu-qbtn:hover{background:var(--mu-cream);}
.mu-cart .quantity .qty{width:44px;min-height:40px;border:0;text-align:center;font-weight:800;font-size:16px;background:#fff;-moz-appearance:textfield;}
.mu-cart .quantity .qty::-webkit-outer-spin-button,.mu-cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.mu-cart .quantity label.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}
/* acciones: cupón + actualizar */
.mu-cart__actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 4px 12px;}
.mu-cart__actions .coupon{display:flex;gap:8px;align-items:center;flex:1 1 340px;max-width:460px;}
.mu-cart__actions .coupon .input-text{flex:1 1 auto;min-width:0;min-height:48px;border:2px solid var(--mu-line);border-radius:12px;padding:0 14px;font-family:"Nunito";font-size:15px;background:#fff;}
.mu-cart__actions .coupon .input-text:focus{outline:0;border-color:var(--mu-teal);box-shadow:0 0 0 3px rgba(10,174,190,.18);}
.mu-cart__actions .button{flex:0 0 auto;white-space:nowrap;background:#fff;color:var(--mu-ink);border:2px solid var(--mu-brown);border-radius:999px;font-weight:800;font-size:14px;min-height:48px;padding:0 20px;cursor:pointer;box-shadow:none;text-transform:none;}
.mu-cart__actions .button:hover{background:var(--mu-cream);}
/* la columna del carrito puede encogerse dentro del grid de 2 columnas */
.woocommerce-cart .woocommerce > form.mu-cart{min-width:0;}

/* La tabla .mu-cart (5 columnas) necesita ~620px. Se apila en TARJETAS hasta 980px
   para que en portátiles medianos/tablet/móvil el nombre no caiga sobre el precio. */
@media (max-width:980px){
  .mu-cart__head{display:none;}
  .mu-cart__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;position:relative;padding:16px 4px;}
  .mu-cart__prod{flex:1 1 100%;gap:12px;padding-right:36px;}
  .mu-cart__thumb,.mu-cart__thumb a{width:64px;height:64px;}
  .mu-cart__price{display:none;}
  .mu-cart__qty{flex:0 0 auto;justify-content:flex-start;}
  .mu-cart__sub{flex:1 1 auto;text-align:right;}
  .mu-cart__rm{position:absolute;top:14px;right:0;}
  .mu-cart__actions{flex-direction:column;align-items:stretch;}
  .mu-cart__actions .coupon{max-width:none;flex-wrap:wrap;}
  .mu-cart__actions .coupon .input-text{flex:1 1 100%;}
  .mu-cart__actions .button{width:100%;}
}

/* ══════════════════════════════════════════════════════════════════════
   CHECKOUT
   ══════════════════════════════════════════════════════════════════════ */
.woocommerce-checkout form.checkout,.mu-shop form.checkout{max-width:1160px;margin:0 auto;}
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2,
.mu-shop #customer_details .col-1,.mu-shop #customer_details .col-2{
  float:none;width:100%;
}
/* Cada bloque del formulario como tarjeta */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout #customer_details,
.mu-shop .woocommerce-billing-fields,.mu-shop .woocommerce-shipping-fields{
  background:#fff;border:2px solid var(--mu-brown);border-radius:var(--mu-radius);
  box-shadow:5px 6px 0 rgba(0,0,0,.20);padding:22px;margin-bottom:18px;
}
.woocommerce-checkout #customer_details{padding:0;border:0;box-shadow:none;background:transparent;}
.woocommerce-checkout #customer_details .woocommerce-billing-fields h3,
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout .woocommerce-shipping-fields h3{font-size:22px;margin:0 0 14px;}
.woocommerce-checkout .form-row{margin:0 0 14px;padding:0;}
.woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{width:calc(50% - 7px);}

/* Resumen del pedido → tarjeta */
.woocommerce-checkout #order_review_heading{font-size:22px;margin:0 0 12px;}
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review{ float:none!important; width:100%!important; }
.woocommerce-checkout #order_review,.mu-shop #order_review{
  background:#fff;border:2px solid var(--mu-brown);border-radius:var(--mu-radius);
  box-shadow:5px 6px 0 rgba(0,0,0,.20);padding:22px;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table{border:0;box-shadow:none;border-radius:0;}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td{border:0;border-top:1px solid var(--mu-line);padding:11px 0;background:transparent;}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th{font-family:"sans-plomb","Fredoka",sans-serif;font-size:20px;border-top:2px solid var(--mu-brown);}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount{font-family:"sans-plomb","Fredoka",sans-serif;font-size:26px;color:var(--mu-ink);}

/* Ocultar el «(incluye X IVA)» y las filas de impuestos. En mu.local el IVA está
   activo (Woo lo muestra); en producción no se cobra IVA, así que no debe verse. El
   total mostrado no cambia (es lo que paga el cliente); solo se quita la nota/filas. */
.woocommerce-cart .includes_tax,
.woocommerce-cart small.tax_label,
.woocommerce-checkout .includes_tax,
.woocommerce-checkout small.tax_label,
.mu-summary .includes_tax{ display:none !important; }
.woocommerce-cart tr.tax-total,
.woocommerce-cart tr.tax-rate,
.woocommerce-checkout tr.tax-total,
.woocommerce-checkout tr.tax-rate{ display:none !important; }

/* ── Nombres de producto, PRECIOS, subtotales y totales en xanti (por pedido) ──
   El diseño traía estos en sans-plomb; el usuario los quiere en la tipografía de
   marca xanti-typewriter, igual que los títulos. !important para ganar a las reglas
   sans-plomb existentes. Cubre carrito (rejilla .mu-cart + totales) y checkout
   («Tu pedido» + totales). */
.woocommerce-cart .mu-cart__name, .woocommerce-cart .mu-cart__name a,
.woocommerce-cart td.product-name a,
.woocommerce-cart .mu-cart__price, .woocommerce-cart .mu-cart__sub,
.woocommerce-cart td.product-price, .woocommerce-cart td.product-subtotal,
.woocommerce-cart .cart_totals th, .woocommerce-cart .cart_totals .amount,
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .mu-corev__nm,
.woocommerce-checkout .woocommerce-checkout-review-order-table .amount,
.woocommerce-checkout .woocommerce-checkout-review-order-table th{
  font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",sans-serif !important;
}
/* la typewriter es más ancha → ajustar tamaños para que no desborden */
.woocommerce-cart .mu-cart__name{font-size:16px !important;line-height:1.2;}
.woocommerce-cart .cart_totals tr.order-total .amount{font-size:23px !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount{font-size:22px !important;}

/* Métodos de pago (aquí viven Mercado Pago, PSE, Wompi… — SOLO se estiliza el contenedor) */
.woocommerce-checkout #payment,.mu-shop #payment{background:transparent;border-radius:0;}
.woocommerce-checkout #payment ul.wc_payment_methods,
.mu-shop #payment ul.wc_payment_methods{border:0;padding:0;margin:0 0 14px;list-style:none;}
.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method,
.mu-shop #payment li.wc_payment_method{
  border:2px solid var(--mu-line);border-radius:14px;padding:14px 16px;margin-bottom:10px;background:#fff;
  transition:border-color .15s,background .15s;
}
.woocommerce-checkout #payment li.wc_payment_method:has(input:checked){border-color:var(--mu-teal);background:#f0fbfc;}
.woocommerce-checkout #payment li.wc_payment_method > label{font-weight:800;color:var(--mu-ink);display:inline-flex;align-items:center;gap:8px;}
.woocommerce-checkout #payment .payment_box{
  background:var(--mu-cream2)!important;border:2px solid var(--mu-line);border-radius:12px;
  margin-top:12px;padding:14px;font-size:14px;color:var(--mu-ink);
}
.woocommerce-checkout #payment .payment_box::before{display:none;}
/* place-order en BLOQUE: algunos temas lo ponen flex → el botón crece y el sello
   de confianza (que va DENTRO, tras el botón) se aplasta a min-content (el texto se
   parte «seguro y / encriptado» y los logos se apilan). Forzar block lo apila full. */
.woocommerce-checkout #payment div.form-row.place-order{display:block!important;padding:14px 0 0;border:0;}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{font-size:13px;color:var(--mu-muted);}
/* Se quitó el párrafo de «política de privacidad» del checkout (quedaba doble con el
   checkbox de términos). El filtro lo deja vacío; ocultamos el contenedor por si acaso. */
.woocommerce-checkout .woocommerce-privacy-policy-text{display:none!important;}

/* Miniatura del producto en «Tu pedido» (resumen del checkout, Shop_Skin::review_item_thumb) */
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .mu-corev__thumb{
  flex:0 0 auto;width:46px;height:46px;border-radius:10px;border:2px solid var(--mu-line);
  background:var(--mu-cream2);overflow:hidden;display:flex;align-items:center;justify-content:center;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .mu-corev__thumb img{
  width:100%;height:100%;object-fit:cover;display:block;margin:0;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .mu-corev__nm{
  flex:1 1 120px;min-width:0;font-family:"Nunito",sans-serif;font-weight:700;font-size:13.5px;
  line-height:1.25;color:var(--mu-ink);
}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .product-quantity{
  flex:0 0 auto;font-weight:800;color:var(--mu-muted);white-space:nowrap;}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name dl.variation{flex:1 1 100%;margin:2px 0 0;font-size:12px;color:var(--mu-muted);}

/* ── Avisos (notices) al estilo de marca ─────────────────────────────── */
.woocommerce-cart .woocommerce-message,.woocommerce-checkout .woocommerce-message,
.mu-shop .woocommerce-message{
  border-top-color:var(--mu-ok);background:#e5f7e8;border-radius:12px;
}
.woocommerce-cart .woocommerce-info,.woocommerce-checkout .woocommerce-info,.mu-shop .woocommerce-info{
  border-top-color:var(--mu-teal);background:var(--mu-cream2);border-radius:12px;
}
.woocommerce-cart .woocommerce-error,.woocommerce-checkout .woocommerce-error{
  border-top-color:var(--mu-red);background:#fdecea;border-radius:12px;
}

/* ══════════════════════════════════════════════════════════════════════
   ELEMENTOS DE MARCA inyectados por Shop_Skin (hooks de WooCommerce)
   ══════════════════════════════════════════════════════════════════════ */
/* Stepper de compra */
.mu-shop__stepper{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 16px;
  font-family:"xanti-typewriter-variable","Nunito",monospace;font-weight:800;font-size:13px;color:var(--mu-muted);}
.mu-step{display:inline-flex;align-items:center;gap:7px;}
.mu-step__n{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  border:2px solid var(--mu-line);background:#fff;font-size:12px;}
.mu-step--now{color:var(--mu-ink);}
.mu-step--now .mu-step__n{background:var(--mu-red);color:#fff;border-color:var(--mu-brown);}
.mu-step--done .mu-step__n{background:var(--mu-ok);color:#fff;border-color:var(--mu-brown);}
.mu-step__bar{width:26px;height:2px;background:var(--mu-line);}

/* Barra de envío gratis */
.mu-freeship{background:var(--mu-cream2);border:2px solid var(--mu-brown);border-radius:14px;padding:12px 16px;margin:0 0 18px;}
.mu-freeship__msg{font-weight:800;font-size:14px;}
.mu-freeship__track{height:9px;background:#fff;border:2px solid var(--mu-brown);border-radius:999px;margin-top:7px;overflow:hidden;}
.mu-freeship__track span{display:block;height:100%;background:var(--mu-lime);border-radius:999px;}

/* Sello de confianza + logos de pago (bajo totales / bajo el botón de pagar) →
   TARJETA de marca (crema + borde) para que se lea limpia y no se aplaste. */
.mu-trust{width:100%;margin-top:16px;display:flex;flex-direction:column;gap:8px;
  background:var(--mu-cream2);border:2px solid var(--mu-line);border-radius:14px;padding:14px 16px;}
.mu-trust__row{display:flex;align-items:flex-start;gap:9px;font-weight:700;font-size:13px;color:var(--mu-ink);line-height:1.3;}
.mu-trust__row svg{color:var(--mu-ok);flex:0 0 auto;margin-top:1px;}
.mu-trust__row span{flex:1 1 auto;min-width:0;}
.mu-trust__pays{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;}
.mu-trust__pay{font-family:"xanti-typewriter-variable","Nunito",monospace;font-weight:800;font-size:10px;
  text-transform:uppercase;letter-spacing:.03em;color:var(--mu-muted);background:#fff;border:2px solid var(--mu-line);border-radius:999px;padding:3px 9px;white-space:nowrap;}

/* Tiles de color detrás de las miniaturas del carrito */
.woocommerce-cart td.product-thumbnail img{background:var(--mu-cream2);padding:6px;}
.woocommerce-cart tr.cart_item:nth-child(3n+1) td.product-thumbnail img{background:#cfeff3;}
.woocommerce-cart tr.cart_item:nth-child(3n+2) td.product-thumbnail img{background:#e6f2cf;}
.woocommerce-cart tr.cart_item:nth-child(3n)   td.product-thumbnail img{background:#ffe6c9;}

/* Números de sección en el checkout (1 datos · 2 pedido) */
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout #order_review_heading{display:flex;align-items:center;gap:10px;}
.woocommerce-checkout .woocommerce-billing-fields > h3::before{content:"1";}
.woocommerce-checkout #order_review_heading::before{content:"2";}
.woocommerce-checkout .woocommerce-billing-fields > h3::before,
.woocommerce-checkout #order_review_heading::before{
  width:30px;height:30px;border-radius:50%;background:var(--mu-teal);color:#fff;border:2px solid var(--mu-brown);
  display:inline-flex;align-items:center;justify-content:center;
  font-family:"sans-plomb","Fredoka",sans-serif;font-weight:700;font-size:15px;flex:0 0 auto;
}

/* Cross-sell (Woo lo muestra en el carrito) → tarjetas de marca */
.woocommerce-cart .cross-sells > h2{font-family:"sans-plomb","Fredoka",sans-serif;font-size:26px;margin:0 0 16px;}
.woocommerce-cart .cross-sells ul.products li.product{
  background:#fff;border:2px solid var(--mu-brown);border-radius:var(--mu-radius);
  box-shadow:4px 5px 0 rgba(0,0,0,.18);padding:12px;
}
.woocommerce-cart .cross-sells ul.products li.product .button,
.mu-shop .woocommerce-cart .cross-sells ul.products li.product a.button{
  background:#B5DC4A!important;color:#1A3B3C!important;border:2px solid #1A3B3C!important;border-radius:999px!important;box-shadow:0 3px 0 #1A3B3C!important;font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",sans-serif!important;font-weight:800!important;letter-spacing:.5px;text-transform:uppercase;
}

/* Badge de stock por artículo (En stock / ¡Últimas N! / Agotado) */
.mu-stock{display:inline-flex;align-items:center;gap:5px;margin-top:6px;
  font-family:"xanti-typewriter-variable","Nunito",monospace;font-weight:800;font-size:10px;
  text-transform:uppercase;letter-spacing:.03em;padding:3px 9px;border-radius:999px;border:2px solid;}
.mu-stock--ok{color:var(--mu-ok);border-color:var(--mu-ok);background:#e5f7e8;}
.mu-stock--low{color:#a9760a;border-color:#a9760a;background:#fff3d6;}
.mu-stock--out{color:var(--mu-red);border-color:var(--mu-red);background:#fdecea;}

/* El cross-sell «A tu peludito le encantará» usa el widget product-carousel real (Shop_Skin).
   Ocupa TODO el ancho de contenido (como en las páginas de producto); dentro del grid de
   2 columnas del carrito abarca las dos vía grid-column:1/-1 (abajo). NO full-bleed: se
   probó de borde a borde pero descolocaba los personajes y cambiaba el diseño. */
.woocommerce-cart .mu-shop__xsell{width:100%;}
.woocommerce-cart .mu-shop__xsell > .elementor-element,
.woocommerce-cart .mu-shop__xsell .mu-pc{width:100%;}

/* Envoltura del widget: fondo crema + aire (contexto Elementor) */
.mu-shop{background:var(--mu-cream);padding:clamp(20px,4vw,40px);border-radius:var(--mu-radius);}
.mu-shop__head{display:flex;align-items:flex-end;gap:12px;margin:0 0 18px;}
.mu-shop__title{font-family:"xanti-typewriter-variable","sans-plomb","Fredoka",sans-serif;font-weight:800;font-size:clamp(28px,5vw,42px);line-height:1;margin:0;color:var(--mu-ink);}
.mu-shop__note{font-family:"xanti-typewriter-variable",monospace;color:var(--mu-muted);font-weight:800;}
.mu-shop__empty{background:#fff;border:2px dashed var(--mu-brown);border-radius:var(--mu-radius);padding:30px;text-align:center;color:var(--mu-muted);}

/* ── CHECKOUT: 2 columnas desde 981px (los campos son flexibles, sí caben) ── */
@media (min-width:981px){
  .woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:0 26px;align-items:start;}
  /* los datos ocupan la columna 1 en AMBAS filas; el resumen (encabezado + tabla)
     se apila en la columna 2 y queda arriba a la derecha, no debajo del form. */
  .woocommerce-checkout #customer_details{grid-column:1;grid-row:1 / span 2;}
  .woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1;margin:0 0 12px;}
  .woocommerce-checkout #order_review{grid-column:2;grid-row:2;align-self:start;position:sticky;top:20px;}
}

/* ── CARRITO: 2 columnas SOLO desde 1330px ─────────────────────────────────
   La tabla .mu-cart necesita ~620px de columna. Con el padding del tema, la columna
   izquierda del grid solo alcanza ese ancho cuando el viewport es ≥ ~1330px. Por
   debajo se usa UNA sola columna (carrito a todo el ancho, totales debajo) y la tabla
   se apila en tarjetas ≤980px → nunca se solapa el nombre con el precio. */
@media (min-width:1330px){
  .woocommerce-cart .woocommerce{
    display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px 26px;align-items:start;
  }
  /* elementos a todo el ancho (no entran en las 2 columnas) */
  .woocommerce-cart .woocommerce > .woocommerce-notices-wrapper,
  .woocommerce-cart .mu-shop__stepper,
  .woocommerce-cart .mu-freeship,
  .woocommerce-cart .cross-sells,
  .woocommerce-cart .mu-shop__xsell{grid-column:1 / -1;}
  .woocommerce-cart .woocommerce-cart-form{grid-column:1;}
  .woocommerce-cart .cart-collaterals{grid-column:2;width:100%;margin:0;}
  .woocommerce-cart .cart-collaterals .cart_totals{width:100%;position:sticky;top:20px;}
}

/* ── Responsive móvil ────────────────────────────────────────────────── */
@media (max-width:980px){
  .woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{width:100%;}
  /* cupón + actualizar: apilados a todo el ancho */
  .woocommerce-cart .cart .actions{flex-direction:column;align-items:stretch;gap:10px;}
  .woocommerce-cart .cart .actions .coupon{max-width:none;flex-wrap:wrap;}
  .woocommerce-cart .cart .actions .coupon #coupon_code{flex:1 1 100%;}
  .woocommerce-cart .cart .actions .coupon .button,
  .woocommerce-cart .cart .actions > .button,
  .woocommerce-cart .cart .actions button[name="update_cart"]{width:100%;}
  /* carrito: tabla → tarjetas apiladas */
  .woocommerce-cart table.shop_table thead{display:none;}
  .woocommerce-cart table.shop_table tr.cart_item{
    display:grid;grid-template-columns:76px 1fr auto;grid-template-areas:"img name remove" "img qty sub";
    gap:6px 12px;padding:14px;border-top:1px solid var(--mu-line);align-items:center;
  }
  .woocommerce-cart table.shop_table tr.cart_item td{border:0;padding:0;}
  .woocommerce-cart td.product-thumbnail{grid-area:img;}
  .woocommerce-cart td.product-name{grid-area:name;}
  .woocommerce-cart td.product-remove{grid-area:remove;text-align:right;}
  .woocommerce-cart td.product-quantity{grid-area:qty;}
  .woocommerce-cart td.product-price{display:none;}
  .woocommerce-cart td.product-subtotal{grid-area:sub;text-align:right;}
  .woocommerce-cart td.product-thumbnail img{width:64px;height:64px;}
}
