/*
 * Alma de Bruja Chile — Cart v1.0
 * Dark luxury WooCommerce cart
 */

@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,500;1,6..96,400&family=Jost:wght@300;400;500;600&display=swap');

/* ═══════════════════════════════════════
   TOKENS
═══════════════════════════════════════ */
.woocommerce-cart .woocommerce {
  --bg:       #05050A;
  --bg-2:     #0C0C14;
  --bg-3:     #13131E;
  --gold:     #C9A84C;
  --gold-dim: rgba(201,168,76,0.15);
  --text-1:   #F5F0E8;
  --text-2:   #A89880;
  --text-3:   #5A5040;
  --border:   1px solid rgba(201,168,76,0.12);
  --radius:   8px;
  --font-head: 'Bodoni Moda', Georgia, serif;
  --font-sans: 'Jost', sans-serif;
}

/* ═══════════════════════════════════════
   WRAPPER
═══════════════════════════════════════ */
.woocommerce-cart .woocommerce {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 24px 80px;
  font-family: var(--font-sans);
  color: var(--text-1);
}

/* Título de página */
.woocommerce-cart .page-title,
.woocommerce-cart h1.entry-title,
.woocommerce-cart .bt-page-header h1 {
  font-family: var(--font-head) !important;
  font-size: clamp(1.6rem, 4vw, 2.4rem) !important;
  font-weight: 400 !important;
  color: var(--text-1) !important;
  text-align: center !important;
}

/* ═══════════════════════════════════════
   TABLA DEL CARRITO
═══════════════════════════════════════ */
.woocommerce-cart table.shop_table {
  width: 100% !important;
  border-collapse: collapse !important;
  background: #0C0C14 !important;
  border: 1px solid rgba(201,168,76,0.12) !important;
  border-radius: var(--radius) !important;
  overflow: hidden !important;
  font-family: var(--font-sans) !important;
}

/* Cabecera */
.woocommerce-cart table.shop_table thead th {
  background: #13131E !important;
  color: #A89880 !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  border-bottom: 1px solid rgba(201,168,76,0.12) !important;
  font-family: var(--font-sans) !important;
}

/* Ocultar columnas innecesarias en cabecera */
.woocommerce-cart table.shop_table thead .product-thumbnail {
  display: none !important;
}

/* Filas */
.woocommerce-cart table.shop_table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
  transition: background 0.15s !important;
}

.woocommerce-cart table.shop_table tbody tr:hover {
  background: rgba(255,255,255,0.02) !important;
}

.woocommerce-cart table.shop_table tbody td {
  padding: 20px 16px !important;
  vertical-align: middle !important;
  color: var(--text-2) !important;
  font-family: var(--font-sans) !important;
  border: none !important;
}

/* Botón eliminar */
.woocommerce-cart table .product-remove a {
  color: #5A5040 !important;
  font-size: 1.1rem !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
  font-weight: 300 !important;
}

.woocommerce-cart table .product-remove a:hover {
  color: #c0392b !important;
}

/* Imagen producto — oculta si es placeholder */
.woocommerce-cart table .product-thumbnail {
  display: none !important;
}

/* Nombre del producto */
.woocommerce-cart table .product-name a {
  color: var(--text-1) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  text-decoration: none !important;
  font-weight: 400 !important;
}

.woocommerce-cart table .product-name a:hover {
  color: #C9A84C !important;
}

/* Precio */
.woocommerce-cart table .product-price,
.woocommerce-cart table .product-subtotal {
  color: var(--text-2) !important;
  font-size: 0.92rem !important;
}

.woocommerce-cart table .product-subtotal .amount {
  color: var(--text-1) !important;
  font-weight: 500 !important;
}

/* Cantidad */
.woocommerce-cart table .product-quantity .quantity {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.woocommerce-cart table .product-quantity label {
  display: none !important;
}

.woocommerce-cart table .product-quantity input[type="number"] {
  width: 64px !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 6px !important;
  color: var(--text-1) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.9rem !important;
  padding: 8px 10px !important;
  text-align: center !important;
  -moz-appearance: textfield !important;
}

.woocommerce-cart table .product-quantity input[type="number"]::-webkit-inner-spin-button,
.woocommerce-cart table .product-quantity input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
}

.woocommerce-cart table .product-quantity input:focus {
  outline: none !important;
  border-color: rgba(201,168,76,0.5) !important;
}

/* Botón actualizar carrito */
.woocommerce-cart table .actions {
  padding: 16px !important;
  background: #13131E !important;
  border-top: 1px solid rgba(201,168,76,0.08) !important;
  display: flex !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

.woocommerce-cart table .actions button[name="update_cart"] {
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #A89880 !important;
  border-radius: 6px !important;
  padding: 9px 18px !important;
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.woocommerce-cart table .actions button[name="update_cart"]:hover {
  border-color: var(--gold) !important;
  color: var(--gold) !important;
}

/* Cupón */
.woocommerce-cart table .actions .coupon {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
  margin-right: auto !important;
}

.woocommerce-cart table .actions .coupon input#coupon_code {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: 6px !important;
  color: var(--text-1) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.85rem !important;
  padding: 8px 12px !important;
}

.woocommerce-cart table .actions .coupon input::placeholder {
  color: #5A5040 !important;
}

.woocommerce-cart table .actions .coupon button {
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #A89880 !important;
  border-radius: 6px !important;
  padding: 9px 16px !important;
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  white-space: nowrap !important;
}

.woocommerce-cart table .actions .coupon button:hover {
  color: var(--gold) !important;
  border-color: var(--gold) !important;
}

/* ═══════════════════════════════════════
   TOTALES
═══════════════════════════════════════ */
.woocommerce-cart .cart-collaterals {
  margin-top: 32px !important;
  display: flex !important;
  justify-content: flex-end !important;
}

.woocommerce-cart .cart_totals {
  width: 100% !important;
  max-width: 380px !important;
  background: #0C0C14 !important;
  border: 1px solid rgba(201,168,76,0.12) !important;
  border-radius: var(--radius) !important;
  padding: 24px !important;
}

.woocommerce-cart .cart_totals h2 {
  font-family: var(--font-head) !important;
  font-size: 1.1rem !important;
  font-weight: 400 !important;
  color: var(--text-1) !important;
  margin: 0 0 18px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(201,168,76,0.12) !important;
}

.woocommerce-cart .cart_totals table {
  width: 100% !important;
  border-collapse: collapse !important;
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
  padding: 10px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.88rem !important;
  color: var(--text-2) !important;
}

.woocommerce-cart .cart_totals table th {
  font-weight: 400 !important;
  text-align: left !important;
  width: 40% !important;
}

.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
  color: var(--text-1) !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  border-bottom: none !important;
  padding-top: 14px !important;
}

.woocommerce-cart .cart_totals .order-total .amount {
  color: #C9A84C !important;
  font-family: var(--font-head) !important;
  font-size: 1.15rem !important;
}

/* Botón Proceder al pago */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .cart_totals .checkout-button {
  display: block !important;
  width: 100% !important;
  background: linear-gradient(135deg, #C9A84C 0%, #8B6914 100%) !important;
  color: #05050A !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 15px 24px !important;
  font-family: var(--font-sans) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  cursor: pointer !important;
  margin-top: 20px !important;
  transition: opacity 0.2s, transform 0.15s !important;
  box-shadow: 0 4px 20px rgba(201,168,76,0.25) !important;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
  opacity: 0.9 !important;
  transform: translateY(-1px) !important;
}

/* Carrito vacío */
.woocommerce-cart .woocommerce-cart-form ~ p,
.woocommerce-cart .cart-empty {
  text-align: center !important;
  color: var(--text-2) !important;
  font-family: var(--font-sans) !important;
  padding: 48px 0 !important;
}

.woocommerce-cart .return-to-shop .button {
  background: transparent !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  color: #C9A84C !important;
  border-radius: 6px !important;
  padding: 12px 24px !important;
  font-family: var(--font-sans) !important;
  font-size: 0.85rem !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.2s !important;
}

/* Avisos WC */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info {
  background: rgba(201,168,76,0.06) !important;
  border-left: 3px solid #C9A84C !important;
  color: var(--text-2) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.85rem !important;
  padding: 12px 16px !important;
  margin-bottom: 20px !important;
  border-radius: 0 6px 6px 0 !important;
}

.woocommerce-cart .woocommerce-message a,
.woocommerce-cart .woocommerce-info a {
  color: #C9A84C !important;
}

@media (max-width: 640px) {
  .woocommerce-cart .cart-collaterals {
    justify-content: stretch !important;
  }
  .woocommerce-cart .cart_totals {
    max-width: 100% !important;
  }
  .woocommerce-cart table.shop_table thead {
    display: none !important;
  }
  .woocommerce-cart table.shop_table tbody td {
    display: block !important;
    text-align: right !important;
    padding: 8px 16px !important;
  }
  .woocommerce-cart table.shop_table tbody td::before {
    content: attr(data-title) !important;
    float: left !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #5A5040 !important;
  }
}
