/* ============================================================
   WooCommerce con el sistema de diseno MPV: carrito, checkout,
   tienda (/tienda/) y avisos. Se encola en las vistas de Woo.
   ============================================================ */

/* ---------- Contenedor general ---------- */
.woocommerce {
	font-family: var(--mpv-font-texto);
}
/* Enlaces SOLO dentro del contenido de Woo (nunca pisar header/footer propios) */
.woocommerce table a,
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a,
.woocommerce-checkout .woocommerce-form a,
.woocommerce .cart_totals a {
	color: var(--mpv-vino);
}
/* Blindaje del boton del header en paginas Woo */
.mpv-header .mpv-btn {
	color: var(--mpv-crema) !important;
}
.mpv-header .mpv-btn:hover {
	color: #fff !important;
}

/* ---------- Avisos (agregado al carrito, errores) ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: var(--mpv-paper);
	border-top: 3px solid var(--mpv-ink);
	border-radius: 0 0 var(--mpv-radius) var(--mpv-radius);
	color: var(--mpv-texto);
	box-shadow: var(--mpv-sombra);
}
.woocommerce-error {
	border-top-color: var(--mpv-vino);
}
.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--mpv-ink);
}
.woocommerce-error::before {
	color: var(--mpv-vino);
}

/* ---------- Botones de Woo ---------- */
.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce button[name="update_cart"],
.woocommerce-cart .checkout-button,
#place_order {
	background: var(--mpv-ink) !important;
	color: var(--mpv-crema) !important;
	font-family: var(--mpv-font-texto) !important;
	font-weight: 800 !important;
	border: none !important;
	border-radius: var(--mpv-radius-pill) !important;
	padding: 12px 26px !important;
	transition: transform .2s ease, background .2s ease !important;
}
.woocommerce .button:hover,
.woocommerce-cart .checkout-button:hover,
#place_order:hover {
	background: var(--mpv-verde-2) !important;
	color: #fff !important;
	transform: translateY(-2px);
}
.woocommerce-cart .checkout-button,
#place_order {
	background: var(--mpv-vino) !important;
	font-size: 16px !important;
	padding: 14px 32px !important;
}
.woocommerce-cart .checkout-button:hover,
#place_order:hover {
	background: var(--mpv-vino-osc) !important;
}
.woocommerce .button:disabled,
.woocommerce .button.disabled {
	background: var(--mpv-salvia) !important;
	color: var(--mpv-verde-noche) !important;
}

/* ---------- Tabla del carrito ---------- */
.woocommerce table.shop_table {
	background: var(--mpv-paper);
	border: 1px solid var(--mpv-linea);
	border-radius: var(--mpv-radius);
	overflow: hidden;
	border-collapse: separate;
	border-spacing: 0;
}
.woocommerce table.shop_table th {
	background: var(--mpv-ink);
	color: var(--mpv-crema);
	font-weight: 800;
	padding: 13px 16px;
}
.woocommerce table.shop_table td {
	border-top: 1px solid var(--mpv-linea);
	padding: 13px 16px;
}
.woocommerce table.shop_table .product-name a {
	color: var(--mpv-ink);
	font-family: var(--mpv-font-titulos);
	font-weight: 700;
}
.woocommerce a.remove {
	color: var(--mpv-vino) !important;
}
.woocommerce a.remove:hover {
	background: var(--mpv-vino);
	color: #fff !important;
}

/* Selector de cantidad */
.woocommerce .quantity .qty {
	border: 1px solid var(--mpv-linea);
	border-radius: 10px;
	padding: 8px;
	background: var(--mpv-bg);
	font-family: var(--mpv-font-texto);
	font-weight: 700;
}

/* Totales del carrito */
.cart_totals h2,
#order_review_heading,
.woocommerce-billing-fields h3 {
	font-family: var(--mpv-font-titulos);
	color: var(--mpv-ink);
}

/* ---------- Checkout ---------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	background: var(--mpv-paper);
	border: 1px solid var(--mpv-linea);
	border-radius: 12px;
	padding: 11px 14px;
	font-family: var(--mpv-font-texto);
	font-size: 15px;
	color: var(--mpv-texto);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
	border-color: var(--mpv-ink);
	outline: none;
	box-shadow: 0 0 0 3px rgba(36, 56, 43, .12);
}
.woocommerce form .form-row label {
	font-weight: 700;
	color: var(--mpv-texto-2);
	font-size: 14px;
}
/* Tabla "Tu pedido" (revisión del pedido): Astra pone padding-left 0 en
   th/td y el texto queda pegado al borde (los th llevan fondo oscuro). */
.woocommerce table.shop_table.woocommerce-checkout-review-order-table th,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table td {
	padding: 13px 16px !important;
}
.woocommerce-checkout #payment {
	background: var(--mpv-arena);
	border-radius: var(--mpv-radius);
}
.woocommerce-checkout #payment div.payment_box {
	background: var(--mpv-crema);
	color: var(--mpv-vino-noche);
	border-radius: 12px;
}
.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: var(--mpv-crema);
}

/* ---------- Tienda (/tienda/): grid de productos ---------- */
.woocommerce ul.products li.product {
	background: var(--mpv-paper);
	border: 1px solid var(--mpv-linea);
	border-radius: var(--mpv-radius);
	padding: 18px;
	transition: transform .2s ease, box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover {
	transform: translateY(-5px);
	box-shadow: 0 18px 34px rgba(36, 56, 43, .12);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--mpv-font-titulos);
	font-weight: 700;
	font-size: 19px;
	color: var(--mpv-ink);
}
.woocommerce ul.products li.product .price {
	color: var(--mpv-vino);
	font-family: var(--mpv-font-titulos);
	font-weight: 700;
	font-size: 16px;
}
.woocommerce ul.products li.product .button {
	margin-top: 10px;
}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select {
	color: var(--mpv-muted);
}

/* Página de pedido recibido */
.woocommerce-order .woocommerce-thankyou-order-received {
	font-family: var(--mpv-font-titulos);
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 700;
	color: var(--mpv-ink);
}
