/* ============================================================================
   cart.css — Carrito premium v2 (Track Visual · theme 0.8.73)
   RESTYLE del carrito CLÁSICO de WooCommerce. Motor INTACTO (solo estilos;
   precios / IVA / envíos los pone el motor → mostrado == cobrado).
   Layout: CSS grid 2 columnas en desktop (ítems | tarjeta de totales STICKY).
   Fixes v2 (auditoría):
     · BUG1: WooCommerce capaba `.cart_totals` al 48% → la tarjeta no llenaba la
       columna y "Finalizar compra" salía angosto y partido en 2 líneas. Fix:
       `.cart_totals{width:100%;float:none}` + grid.
     · BUG2: el enlace "quitar" (×) venía VACÍO (sin texto ni ::before) → invisible.
       Fix: se le da la × por CSS.
   Los <button> del carrito caen en el clobber global (magenta !important, hasta
   espec. 0,3,1) → se vencen con `body.woocommerce-cart …` (≥0,3,2) + !important.
   Verificado: sobre CSS REAL cargado la medición es fiable (999px/2-col/etc.).
   ========================================================================== */

/* ---- Cabecera ---- */
.woocommerce-cart h1.entry-title,.woocommerce-cart .entry-title{font-family:var(--dkt-font-titles);font-weight:700;color:var(--dkt-vino)}

/* ---- Layout 2 columnas (desktop): grid + tarjeta de totales STICKY ---- */
@media(min-width:900px){
  /* :has() → el grid 2-col SOLO cuando hay ítems (form presente). Carrito vacío = flujo normal. */
  .woocommerce-cart .woocommerce:has(.woocommerce-cart-form){display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:2.5rem;align-items:start}
  .woocommerce-cart .woocommerce-cart-form{grid-column:1;margin:0}
  .woocommerce-cart .cart-collaterals{grid-column:2;width:auto;float:none;position:sticky;top:100px}
  .woocommerce-cart .woocommerce-notices-wrapper,
  .woocommerce-cart .woocommerce>.woocommerce-message,
  .woocommerce-cart .woocommerce>.woocommerce-info,
  .woocommerce-cart .woocommerce>.woocommerce-error{grid-column:1/-1}
}
body.woocommerce-cart .cart_totals{width:100%!important;float:none!important}

/* ---- Tabla de ítems ---- */
.woocommerce-cart table.cart{border:0;border-collapse:collapse;background:transparent;margin:0}
.woocommerce-cart table.cart thead{border-bottom:2px solid var(--dkt-line)}
.woocommerce-cart table.cart thead th{font-family:var(--dkt-font-titles);font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--dkt-muted);padding:.75rem .6rem;border:0;text-align:left}
.woocommerce-cart table.cart td{border:0;border-bottom:1px solid var(--dkt-line);padding:1.1rem .6rem;vertical-align:middle;background:transparent}
.woocommerce-cart table.cart tr.cart_item:hover td{background:#faf5f8}
body.woocommerce-cart td.product-thumbnail img{width:84px!important;height:84px!important;object-fit:contain;border:1px solid var(--dkt-line);border-radius:14px;background:#fff;padding:5px}
.woocommerce-cart td.product-name a{font-family:var(--dkt-font-titles);font-weight:600;color:var(--dkt-vino);text-decoration:none}
.woocommerce-cart td.product-name a:hover{color:var(--dkt-magenta)}
.woocommerce-cart td.product-price,.woocommerce-cart td.product-subtotal{font-family:var(--dkt-font-titles);color:var(--dkt-vino)}
.woocommerce-cart td.product-subtotal{font-weight:700}
.woocommerce-cart td.product-quantity .quantity{display:inline-flex;align-items:center}
.woocommerce-cart td.product-quantity input.qty{width:66px;padding:.5rem;border:1.5px solid var(--dkt-line);border-radius:10px;text-align:center;font-family:var(--dkt-font-titles);color:var(--dkt-vino)}
/* Quitar → círculo. La × YA la dibuja el SVG de Astra (.ahfb-svg) dentro del enlace;
   NO usamos ::before (eso causaba el doble ×). Solo estilamos el círculo + el SVG. */
body.woocommerce-cart td.product-remove a.remove{
  display:inline-flex!important;align-items:center;justify-content:center;width:28px!important;height:28px!important;
  border-radius:50%!important;background:#f3e6ee!important;color:var(--dkt-vino)!important;text-decoration:none;line-height:1;
  transition:background .2s,color .2s;font-size:0!important
}
body.woocommerce-cart td.product-remove a.remove svg{width:13px;height:13px;fill:currentColor}
body.woocommerce-cart td.product-remove a.remove:hover{background:var(--dkt-magenta)!important;color:#fff!important}

/* ---- Acciones: cupón + actualizar ---- */
.woocommerce-cart td.actions{padding-top:1.5rem;border-bottom:0}
.woocommerce-cart .coupon{display:inline-flex;gap:.5rem;flex-wrap:wrap}
.woocommerce-cart .coupon #coupon_code{padding:.6rem .95rem;border:1.5px solid var(--dkt-line);border-radius:var(--radius-pill,999px);min-width:190px;font-family:var(--dkt-font-body)}
body.woocommerce-cart .coupon button.button,
body.woocommerce-cart td.actions button[name="update_cart"]{
  background:#fff!important;color:var(--dkt-vino)!important;border:1.5px solid var(--dkt-vino)!important;
  border-radius:var(--radius-pill,999px)!important;padding:.6rem 1.2rem!important;
  font-family:var(--dkt-font-titles)!important;font-weight:600!important;box-shadow:none!important
}
body.woocommerce-cart .coupon button.button:hover,
body.woocommerce-cart td.actions button[name="update_cart"]:hover{background:var(--dkt-vino)!important;color:#fff!important}

/* ---- "Seguir comprando" (hook PHP, columna izquierda) ---- */
.dkt-cart-keepshopping{margin:1.4rem 0 0}
.dkt-cart-keepshopping a{font-family:var(--dkt-font-titles);font-weight:600;color:var(--dkt-vino);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.dkt-cart-keepshopping a:hover{color:var(--dkt-magenta)}

/* ---- Tarjeta de TOTALES ---- */
body.woocommerce-cart .cart_totals{background:#fff!important;border:1px solid var(--dkt-line)!important;border-radius:18px!important;padding:1.6rem 1.6rem 1.7rem!important;box-shadow:0 14px 40px -22px rgba(95,14,57,.32)}
body.woocommerce-cart .cart_totals h2{font-family:var(--dkt-font-titles);font-weight:700;font-size:1.2rem;color:var(--dkt-vino);margin:0 0 1.1rem;background:transparent!important;padding:0!important;border:0!important}
.woocommerce-cart .cart_totals table{border:0;margin:0}
.woocommerce-cart .cart_totals table th,.woocommerce-cart .cart_totals table td{border:0;border-top:1px solid var(--dkt-line);padding:.72rem 0;font-family:var(--dkt-font-body);color:#4a4a4a;background:transparent}
.woocommerce-cart .cart_totals tr:first-child th,.woocommerce-cart .cart_totals tr:first-child td{border-top:0}
.woocommerce-cart .cart_totals th{font-weight:600;color:var(--dkt-vino);text-align:left}
.woocommerce-cart .cart_totals td{text-align:right}
.woocommerce-cart .cart_totals .order-total th{font-size:1.08rem}
.woocommerce-cart .cart_totals .order-total td,.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount{font-family:var(--dkt-font-titles);font-weight:800;font-size:1.4rem;color:var(--dkt-magenta)}
.woocommerce-cart .cart_totals .includes_tax,.woocommerce-cart .cart_totals small{color:var(--dkt-muted);font-weight:400}
.woocommerce-cart .cart_totals ul#shipping_method{margin:0;padding:0;list-style:none}
.woocommerce-cart .cart_totals ul#shipping_method li{margin:.2rem 0}

/* ---- Botón "Finalizar compra" (pill magenta ancho) ---- */
.woocommerce-cart .wc-proceed-to-checkout{padding:1.3rem 0 0;display:block;width:100%}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:block!important;width:100%!important;text-align:center!important;white-space:nowrap;
  font-family:var(--dkt-font-titles)!important;font-weight:700!important;font-size:1.06rem!important;
  background:var(--dkt-magenta)!important;color:#fff!important;border:0!important;border-radius:var(--radius-pill,999px)!important;
  padding:.95rem 1.2rem!important;box-shadow:0 8px 20px -8px rgba(165,0,80,.5)!important;transition:transform .2s,background .2s
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--dkt-magenta-mid,#87114A)!important;transform:translateY(-2px)}

/* ---- Resumen con jerarquía (0.9.2 · mockup aprobado 2026-07-26) ---- */
/* Cabecera de la tarjeta con divisor de borde a borde (negativos sobre el padding). */
body.woocommerce-cart .cart_totals h2{
  margin:-1.6rem -1.6rem 1.05rem!important;padding:1.15rem 1.6rem .95rem!important;
  border-bottom:1px solid var(--dkt-line)!important;font-size:1.08rem
}
.woocommerce-cart .cart_totals .cart-subtotal th{font-family:var(--dkt-font-titles);font-weight:600;font-size:.95rem;color:var(--dkt-vino)}
.woocommerce-cart .cart_totals .cart-subtotal td .woocommerce-Price-amount{font-family:var(--dkt-font-titles);font-weight:700;font-size:1.35rem;color:var(--dkt-magenta)}

/* ---- Nota de envío: cajita suave con icono (mockup) ---- */
.dkt-cart-shipnote{
  display:flex;gap:.5rem;align-items:flex-start;text-align:left;
  background:var(--dkt-paper,#FBF4F2);border-radius:8px;padding:.68rem .85rem;
  margin:.85rem 0 0;font-family:var(--dkt-font-body);font-size:.78rem;color:var(--dkt-muted);line-height:1.45
}
.dkt-cart-shipnote svg{width:15px;height:15px;flex:none;margin-top:1px;color:var(--dkt-muted)}

/* ---- Separador "o" antes del WhatsApp ---- */
.dkt-cart-or{display:flex;align-items:center;gap:.7rem;width:100%;color:var(--dkt-muted);font-family:var(--dkt-font-body);font-size:.75rem;margin:.1rem 0}
.dkt-cart-or::before,.dkt-cart-or::after{content:"";flex:1;height:1px;background:var(--dkt-line)}

/* ---- Tira de confianza + chip de ayuda por WhatsApp (hook PHP, bajo el botón) ---- */
.dkt-cart-trust{margin-top:1.1rem;display:flex;flex-direction:column;align-items:center;gap:.7rem}
.dkt-cart-trust__row{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-family:var(--dkt-font-body);font-size:.78rem;color:var(--dkt-muted)}
.dkt-cart-trust__row svg{width:14px;height:14px;flex:none}
/* Botón "Comprar por WhatsApp" del carrito — verde WhatsApp relleno, texto + logo BLANCOS. */
.dkt-wa-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.3rem;border:2px solid #25D366;border-radius:var(--radius-pill,999px);background:#25D366;color:#fff!important;font-family:var(--dkt-font-titles);font-weight:600;font-size:.9rem;text-decoration:none!important;box-shadow:0 5px 16px -8px rgba(37,211,102,.6);transition:background .2s,border-color .2s}
.dkt-wa-chip svg{width:18px;height:18px;flex:none;fill:#fff!important}
.dkt-wa-chip:hover{background:#1FAD53!important;border-color:#1FAD53!important;color:#fff!important}

/* ---- Estado vacío ---- */
.woocommerce-cart .cart-empty{font-family:var(--dkt-font-titles);font-size:1.2rem;color:var(--dkt-vino);text-align:center;margin:2.5rem 0 1.2rem}
.woocommerce-cart .return-to-shop{text-align:center}
body.woocommerce-cart .return-to-shop a.button{background:var(--dkt-magenta)!important;color:#fff!important;border:0!important;border-radius:var(--radius-pill,999px)!important;font-family:var(--dkt-font-titles)!important;font-weight:600!important;padding:.85rem 1.9rem!important}

/* ---- Móvil ---- */
@media(max-width:899px){
  .woocommerce-cart .cart-collaterals{margin-top:1.8rem}
  body.woocommerce-cart td.product-thumbnail img{width:64px!important;height:64px!important}
  .woocommerce-cart .coupon{width:100%}
  .woocommerce-cart .coupon #coupon_code{min-width:0;flex:1}
}
@media(prefers-reduced-motion:reduce){
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  body.woocommerce-cart td.product-remove a.remove{transition:none}
}
