/* ── WOOCOMMERCE — Mareaboba Theme ── */
/* All values via CSS variables set in :root by functions.php. */

/* ── BASE ── */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce,
body.woocommerce-page,
body.single-product {
  background-color: var(--mb-bg);
  color: var(--mb-text);
}

body.woocommerce-cart *,
body.woocommerce-checkout * {
  font-family: var(--mb-font);
  color: var(--mb-text);
}

/* Restore accent color where it should stay red */
body.woocommerce-cart .woocommerce-Price-amount,
body.woocommerce-cart .woocommerce-Price-amount bdi,
body.woocommerce-checkout .woocommerce-Price-amount,
body.woocommerce-checkout .woocommerce-Price-amount bdi,
body.woocommerce-cart table.cart th,
body.woocommerce-checkout table th,
body.woocommerce-cart .cart_totals .order-total td,
body.woocommerce-checkout #order_review .order-total td {
  color: var(--mb-accent) !important;
}

/* ── ENCABEZADOS ── */
.woocommerce-cart h1,
.woocommerce-cart h2,
.woocommerce-cart h3,
.woocommerce-checkout h1,
.woocommerce-checkout h2,
.woocommerce-checkout h3,
.woocommerce-account h1,
.woocommerce-account h2,
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3 {
  font-style: italic;
  font-weight: 400;
  color: var(--mb-text);
  margin-bottom: 20px;
}

.woocommerce-cart h1,
.woocommerce-checkout h1 { font-size: 1.8rem; text-align: center; }
.woocommerce-cart h2     { font-size: 1.2rem; }

/* ── TABLA CARRITO ── */
.woocommerce-cart table.cart {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 24px;
}

.woocommerce-cart table.cart th {
  font-size: 0.6rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--mb-accent) !important;
  padding: 10px 8px;
  border-bottom: 1px solid #2a0a0a;
  text-align: left;
}

.woocommerce-cart table.cart td {
  padding: 16px 8px;
  border-bottom: 1px solid #e0e0e0;
  color: var(--mb-text) !important;
  font-size: 0.82rem;
  vertical-align: middle;
  background: transparent !important;
}

.woocommerce-cart table.cart td.product-name a {
  color: var(--mb-text);
  font-size: 1rem;
  font-style: italic;
}

.woocommerce-cart table.cart td.product-price {
  color: var(--mb-accent) !important;
}

/* ── ALINEACIÓN COLUMNAS (solo Producto + Precio) ── */
body.woocommerce-cart table.shop_table th.product-name,
body.woocommerce-cart table.shop_table td.product-name {
  width: 70% !important;
  text-align: left !important;
}

body.woocommerce-cart table.shop_table th.product-price,
body.woocommerce-cart table.shop_table td.product-price {
  width: 30% !important;
  text-align: right !important;
}

/* ── BOTÓN QUITAR PRODUCTO ── */
body.woocommerce-cart a.mb-cart-remove {
  display: inline-block !important;
  margin-top: 8px !important;
  font-size: 0.75rem !important;
  color: var(--mb-text) !important;
  text-decoration: underline !important;
  opacity: 0.75 !important;
  background: transparent !important;
  letter-spacing: 0.05em !important;
}
body.woocommerce-cart a.mb-cart-remove:hover {
  opacity: 1 !important;
  color: var(--mb-accent) !important;
}

/* ── CART TOTALS ── */
.woocommerce-cart .cart-collaterals { margin-top: 24px; }

.woocommerce-cart .cart_totals h2 {
  font-size: 0.65rem !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--mb-accent) !important;
  margin-bottom: 12px !important;
  font-style: normal !important;
  font-weight: normal !important;
}

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

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
  padding: 10px 0;
  border-bottom: 1px solid #e0e0e0;
  color: var(--mb-text) !important;
  font-size: 0.82rem;
  background: transparent !important;
}

.woocommerce-cart .cart_totals .order-total td {
  color: var(--mb-accent) !important;
  font-weight: 700;
}

/* ── BOTÓN FINALIZAR COMPRA ── */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce a.checkout-button {
  display: block !important;
  width: 100% !important;
  padding: 14px 0 !important;
  background: var(--mb-accent) !important;
  color: #ffffff !important;
  font-family: var(--mb-font) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.25em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  border: none !important;
  border-radius: 0 !important;
  margin-top: 16px !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { background: #a00000 !important; }

/* ── BOTÓN PLACE ORDER ── */
body.woocommerce-checkout #place_order {
  display: block !important;
  width: 100% !important;
  padding: 16px 0 !important;
  background: var(--mb-accent) !important;
  color: #ffffff !important;
  font-family: var(--mb-font) !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  border: none !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}
body.woocommerce-checkout #place_order:hover { background: #a00000 !important; }

/* ── INPUTS / SELECTS / TEXTAREAS ── */
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-cart input[type="text"],
.woocommerce-cart input[type="email"],
.woocommerce-cart input[type="number"],
.woocommerce-cart select,
.woocommerce-cart textarea {
  background: #ffffff !important;
  border: 1px solid #2a2a2a !important;
  color: var(--mb-text) !important;
  border-radius: 0 !important;
  padding: 10px !important;
  width: 100% !important;
  font-family: var(--mb-font) !important;
  font-size: 0.82rem !important;
  box-shadow: none !important;
  outline: none !important;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: var(--mb-accent) !important;
  box-shadow: none !important;
}

/* ── LABELS ── */
.woocommerce-checkout label,
.woocommerce-cart label {
  font-family: var(--mb-font) !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: var(--mb-accent) !important;
  display: block !important;
  margin-bottom: 6px !important;
}

/* ── SECCIONES BILLING/SHIPPING ── */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
  margin-bottom: 32px;
}

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading {
  font-size: 0.65rem !important;
  letter-spacing: 0.25em !important;
  text-transform: uppercase !important;
  color: var(--mb-accent) !important;
  margin-bottom: 16px !important;
  font-style: normal !important;
  font-weight: normal !important;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 8px;
}

/* ── ORDER REVIEW ── */
.woocommerce-checkout #order_review table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px;
}
.woocommerce-checkout #order_review table th,
.woocommerce-checkout #order_review table td {
  padding: 10px 8px;
  border-bottom: 1px solid #e0e0e0;
  font-size: 0.82rem;
  color: var(--mb-text) !important;
  text-align: left;
  background: transparent !important;
}
.woocommerce-checkout #order_review table th {
  font-size: 0.6rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--mb-accent) !important;
}
.woocommerce-checkout #order_review .order-total td {
  color: var(--mb-accent) !important;
  font-weight: 700;
}

/* ── PAYMENT SECTION ── */
.woocommerce-checkout #payment {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 20px !important;
}
.woocommerce-checkout #payment ul.payment_methods {
  list-style: none !important;
  padding: 0 !important;
  margin-bottom: 16px !important;
  border-bottom: 1px solid #e0e0e0 !important;
}
.woocommerce-checkout #payment ul.payment_methods li {
  padding: 10px 0 !important;
  border-bottom: 1px solid #e0e0e0 !important;
  color: var(--mb-text) !important;
}
.woocommerce-checkout #payment ul.payment_methods label,
.woocommerce-checkout #payment .wc-block-components-payment-method-options label {
  text-transform: none !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.05em !important;
  color: var(--mb-text) !important;
}
.woocommerce-checkout #payment .payment_box {
  background: transparent !important;
  color: var(--mb-muted) !important;
  font-size: 0.75rem !important;
  padding: 12px !important;
  border-radius: 0 !important;
  margin-top: 8px !important;
}

/* ── MISC CHECKOUT ── */
.woocommerce-checkout .required           { color: var(--mb-accent) !important; }
.woocommerce-checkout .form-row           { margin-bottom: 16px !important; }
.woocommerce-checkout #ship-to-different-address label {
  text-transform: none !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.05em !important;
  color: var(--mb-text) !important;
  cursor: pointer !important;
}

/* ── SELECT2 (país/región) ── */
.select2-container--default .select2-selection--single {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 0 !important;
  height: auto !important;
  padding: 8px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--mb-text) !important;
  padding-left: 0 !important;
  line-height: normal !important;
  font-size: 0.82rem !important;
  background: transparent !important;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: var(--mb-text) transparent transparent transparent !important;
}
.select2-dropdown {
  background: #ffffff !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 0 !important;
}
.select2-results__option {
  color: var(--mb-text) !important;
  background: transparent !important;
  font-size: 0.82rem !important;
}
.select2-results__option--highlighted,
.select2-results__option[aria-selected="true"] {
  background: #f5f2ee !important;
  color: var(--mb-text) !important;
}
.select2-search--dropdown .select2-search__field {
  background: #ffffff !important;
  border: 1px solid #2a2a2a !important;
  color: var(--mb-text) !important;
  font-size: 0.82rem !important;
}

/* ── NOTICES EN PÁGINAS WC ── */
.woocommerce-page .woocommerce-message,
.woocommerce-page .woocommerce-info,
.woocommerce-page .woocommerce-error {
  background: rgba(245,242,238,0.95) !important;
  border-top: none !important;
  border-left: 3px solid var(--mb-accent) !important;
  color: var(--mb-text) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.woocommerce-page .woocommerce-message *,
.woocommerce-page .woocommerce-info *,
.woocommerce-page .woocommerce-error * {
  color: var(--mb-text) !important;
  background: transparent !important;
}
.woocommerce-page .woocommerce-message a.button,
.woocommerce-page .woocommerce-info a.button,
.woocommerce-page .woocommerce-error a.button {
  background: transparent !important;
  color: var(--mb-accent) !important;
  border: 1px solid var(--mb-accent) !important;
  border-radius: 0 !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.2em !important;
  padding: 8px 14px !important;
  text-transform: uppercase !important;
}

/* Restore item link en carrito */
body.woocommerce-cart .woocommerce-message a,
body.woocommerce-cart .woocommerce-message a.button,
body.woocommerce-cart .woocommerce-message a.wc-forward,
body.woocommerce-cart .woocommerce-message a.restore-item {
  color: var(--mb-text) !important;
  display: block !important;
  float: none !important;
  text-align: center !important;
  margin: 6px auto 0 !important;
  text-decoration: underline !important;
  background: transparent !important;
}

/* ── CART COUNT BADGE EN PÁGINAS WC ── */
body.woocommerce .cart-count,
body.woocommerce-page .cart-count,
body.single-product .cart-count {
  display: inline-block !important;
  background: var(--mb-accent) !important;
  color: #ffffff !important;
  font-size: 0.5rem !important;
  padding: 1px 5px !important;
  margin-left: 3px !important;
}

/* ── MB-BTN EN PÁGINAS WC ── */
body.woocommerce .mb-btn,
body.woocommerce-page .mb-btn,
body.single-product .mb-btn {
  background: transparent !important;
  color: var(--mb-text) !important;
  border-color: var(--mb-accent) !important;
  display: block !important;
  text-decoration: none !important;
}
body.woocommerce .mb-btn:hover,
body.woocommerce-page .mb-btn:hover,
body.single-product .mb-btn:hover {
  background: var(--mb-accent) !important;
  color: #ffffff !important;
}

/* ── OCULTAR COLUMNAS / ELEMENTOS INNECESARIOS ── */
.woocommerce-cart button[name="update_cart"],
.woocommerce-cart th.product-quantity,
.woocommerce-cart td.product-quantity,
.woocommerce-cart th.product-subtotal,
.woocommerce-cart td.product-subtotal,
.woocommerce-cart td.product-thumbnail,
.woocommerce-cart .actions,
.woocommerce-cart .coupon,
.wc-block-components-totals-coupon,
.wc-block-cart__totals .wc-block-components-totals-coupon,
.wc-block-cart-item__image,
.wc-block-cart__product-image { display: none !important; }

/* ── OCULTAR SHIPPING ── */
body.woocommerce-cart tr.shipping,
body.woocommerce-cart .shipping-calculator-container,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .woocommerce-shipping-calculator,
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart #shipping_method,
.wc-block-components-quantity-selector,
.wc-block-cart-item__quantity,
.wc-block-cart-item__total,
.wc-block-components-shipping-rates-control,
.wc-block-components-totals-shipping,
.wc-block-components-shipping-calculator { display: none !important; }

/* ── PPCP: ocultar submit nativo cuando PayPal JS lo reemplaza ── */
button.ppcp-hidden,
#place_order.ppcp-hidden { display: none !important; }

/* ── PPCP: en carrito, mostrar solo "Finalizar compra" ── */
body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-cart #ppc-button-ppcp-gateway,
body.woocommerce-cart .ppcp-button-apm { display: none !important; }

/* ── CARRITO VACÍO ── */
body.woocommerce-cart .wc-empty-cart-message,
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .return-to-shop {
  background: transparent !important;
  color: var(--mb-text) !important;
  text-align: center !important;
}
body.woocommerce-cart .return-to-shop a,
body.woocommerce-cart .woocommerce-info a {
  color: var(--mb-accent) !important;
  text-decoration: underline !important;
}

/* ── MERCADO PAGO ── */
body.woocommerce-checkout [class*="payment_method_woo-mercado-pago"] .payment_box,
body.woocommerce-checkout [class*="payment_method_mercadopago"] .payment_box {
  background: #f9f9f9 !important;
  border-top: 1px solid #e0e0e0 !important;
  padding: 16px 0 !important;
}

/* ── WC BLOCKS NEUTRALIZACIÓN ── */
.wc-block-cart,
.wc-block-checkout,
[class*="wc-block-components-"],
[class*="wp-block-woocommerce-"] {
  background-color: transparent !important;
  background: transparent !important;
  color: var(--mb-text) !important;
  border-color: #e0e0e0 !important;
}

.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-button,
.wc-block-components-checkout-place-order-button {
  background: var(--mb-accent) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  padding: 14px !important;
  width: 100% !important;
}

/* ── TAMAÑO UNIFORME ── */
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td,
body.woocommerce-cart table.cart td,
body.woocommerce-checkout #order_review td,
body.woocommerce-checkout #order_review th { font-size: 0.82rem !important; }
