/**
 * Bolsa, Checkout y Confirmación — mismo lenguaje visual que Home,
 * Tienda y Ficha de producto: editorial, mucho espacio en blanco,
 * burdeos solo como acento. Se reestiliza el bloque nativo de
 * WooCommerce (Cart/Checkout) por CSS — nunca se reconstruye su HTML.
 */

body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
.mka-confirmacion-pagina {
	max-width: 1400px;
	margin: 0 auto;
	padding: var(--mka-espaciado-lg) var(--mka-espaciado-lg) var(--mka-espaciado-xl) var(--mka-espaciado-lg);
	font-family: var(--mka-font-body);
	color: var(--mka-color-texto);
}

@media (max-width: 767px) {
	body.woocommerce-cart .wp-block-woocommerce-cart,
	body.woocommerce-checkout .wp-block-woocommerce-checkout,
	.mka-confirmacion-pagina {
		padding: var(--mka-espaciado-md) var(--mka-espaciado-md) var(--mka-espaciado-lg) var(--mka-espaciado-md);
	}
}

/* Tipografía compartida dentro de los bloques nativos */
.wc-block-cart, .wc-block-checkout {
	font-size: 0.9375rem;
}

/**
 * Panel del resumen (totales) del carrito y checkout — beige profundo,
 * como "zona puntual" de la paleta: lo diferencia del listado de
 * productos sin añadir bordes ni sombras.
 */
.wc-block-components-sidebar {
	background-color: var(--mka-color-beige-profundo);
	padding: var(--mka-espaciado-md);
}

@media (max-width: 767px) {
	.wc-block-components-sidebar {
		padding: var(--mka-espaciado-md) var(--mka-espaciado-sm);
	}
}

.wc-block-components-checkout-step__title,
.wc-block-cart__totals-title,
.wc-block-components-totals-item__label {
	font-family: var(--mka-font-body);
	font-weight: 500;
	color: var(--mka-color-texto);
}

.wc-block-components-checkout-step__title {
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--mka-color-texto-suave);
}

/* Botones — mismo lenguaje que el CTA de la ficha de producto */
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-container a,
a.wc-block-cart__submit-button,
.wc-block-components-button.wp-element-button {
	border-radius: 0;
	background-color: var(--mka-color-texto);
	border: 1px solid var(--mka-color-texto);
	color: var(--mka-color-blanco-calido);
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.9rem 1.5rem;
	transition: background-color 200ms ease, border-color 200ms ease;
}

.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-button.wp-element-button:hover {
	background-color: var(--mka-color-burdeos);
	border-color: var(--mka-color-burdeos);
	color: var(--mka-color-blanco-calido);
}

@media (prefers-reduced-motion: reduce) {
	.wc-block-cart__submit-button,
	.wc-block-components-checkout-place-order-button,
	.wc-block-components-button.wp-element-button {
		transition: none;
	}
}

/**
 * "Pedir contraentrega por WhatsApp" en la Bolsa — el componente base
 * (.mka-contraentrega*) vive en components.css; aquí solo el espacio
 * respecto al botón "Proceder al pago" nativo, junto al que se inserta.
 */
.mka-contraentrega--carrito {
	margin-top: var(--mka-espaciado-md);
}

/**
 * El botón hereda .mka-contraentrega__boton de components.css (mismo
 * aspecto que en la ficha de producto), pero en Carrito/Checkout el CSS de
 * los bloques nativos de WooCommerce compite a igual especificidad y gana
 * por orden de carga — confirmado en vivo (queda azul, no el contorno de
 * marca). Se repite aquí, con !important, igual que el resto de anulaciones
 * puntuales de bloques nativos en este archivo.
 */
.mka-contraentrega__boton {
	background-color: transparent !important;
	border: 1px solid var(--mka-color-texto) !important;
	color: var(--mka-color-texto) !important;
}

.mka-contraentrega__boton:hover,
.mka-contraentrega__boton:focus-visible {
	background-color: var(--mka-color-burdeos) !important;
	border-color: var(--mka-color-burdeos) !important;
	color: var(--mka-color-blanco-calido) !important;
}

.mka-contraentrega__boton:disabled {
	opacity: 0.45 !important;
	cursor: not-allowed;
}

/**
 * Inputs de texto y selects — mismo estilo de línea inferior del
 * sitio. !important justificado: el bloque nativo de WooCommerce
 * aplica su propio borde con más peso que un selector de clase
 * normal (igual que el fondo del body sobre Astra, en variables.css).
 */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-checkout select,
.wc-block-components-combobox input {
	border: none !important;
	border-bottom: 1px solid var(--mka-color-plata) !important;
	border-radius: 0 !important;
	background: transparent !important;
	font-family: var(--mka-font-body) !important;
	color: var(--mka-color-texto) !important;
	box-shadow: none !important;
}

.wc-block-components-text-input input:focus,
.wc-block-checkout select:focus {
	border-bottom-color: var(--mka-color-burdeos) !important;
	box-shadow: none !important;
	outline: none;
}

/* Opciones de envío/pago (radio) */
.wc-block-components-radio-control__option {
	border-radius: 0;
	border-color: var(--mka-color-plata);
}

.wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked {
	border-color: var(--mka-color-burdeos);
}

.wc-block-components-radio-control__input:checked {
	background-color: var(--mka-color-burdeos);
	border-color: var(--mka-color-burdeos);
}

/* Línea de confianza de la Bolsa */
.mka-bolsa-confianza {
	margin-top: var(--mka-espaciado-md);
	font-size: 0.8125rem;
	text-align: center;
	color: var(--mka-color-texto-suave);
}

/* Estado vacío */
.wp-block-woocommerce-empty-cart-block {
	text-align: center;
	padding: var(--mka-espaciado-xl) 0;
}

.wp-block-woocommerce-empty-cart-block p {
	font-size: 0.9375rem;
	color: var(--mka-color-texto-suave);
}

/* ------------------------------------------------------------------ */
/* Página de confirmación — plantilla propia (woocommerce/checkout/thankyou.php) */

.mka-confirmacion__intro {
	max-width: 60ch;
	margin: 0 auto var(--mka-espaciado-xl) auto;
	text-align: center;
}

.mka-confirmacion__titulo {
	font-family: var(--mka-font-display);
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	font-weight: 400;
	color: var(--mka-color-texto);
	margin: 0 0 var(--mka-espaciado-sm) 0;
}

.mka-confirmacion__pedido {
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	color: var(--mka-color-texto-suave);
	margin: 0 0 var(--mka-espaciado-lg) 0;
}

.mka-confirmacion__mensaje {
	font-size: 1.0625rem;
	line-height: 1.7;
	color: var(--mka-color-texto);
	margin: 0;
}

.mka-confirmacion__detalle {
	max-width: 60ch;
	margin: 0 auto;
	padding-top: var(--mka-espaciado-lg);
	border-top: 1px solid var(--mka-color-plata);
}

.mka-confirmacion__subtitulo {
	font-family: var(--mka-font-display);
	font-size: 1.125rem;
	font-weight: 400;
	margin: 0 0 var(--mka-espaciado-md) 0;
}

.mka-confirmacion__lista {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mka-confirmacion__item {
	display: flex;
	align-items: center;
	gap: var(--mka-espaciado-md);
	padding: var(--mka-espaciado-sm) 0;
	border-bottom: 1px solid var(--mka-color-plata);
}

.mka-confirmacion__item img,
.mka-confirmacion__item-placeholder {
	width: 4rem;
	height: 5rem;
	object-fit: cover;
	flex-shrink: 0;
}

.mka-confirmacion__item-info {
	display: flex;
	flex-direction: column;
	gap: var(--mka-espaciado-xs);
}

.mka-confirmacion__item-nombre {
	font-size: 0.9375rem;
	color: var(--mka-color-texto);
}

.mka-confirmacion__item-precio {
	font-size: 0.8125rem;
	color: var(--mka-color-texto-suave);
}

.mka-confirmacion__totales {
	margin-top: var(--mka-espaciado-md);
	font-size: 0.9375rem;
}

.mka-confirmacion__totales p {
	display: flex;
	justify-content: space-between;
	margin: 0;
}

.mka-confirmacion__whatsapp {
	display: block;
	max-width: 60ch;
	margin: var(--mka-espaciado-lg) auto 0 auto;
	text-align: center;
	font-size: 0.8125rem;
	text-decoration: underline;
	text-decoration-color: var(--mka-color-plata);
	color: var(--mka-color-texto-suave);
}

.mka-confirmacion__whatsapp:hover,
.mka-confirmacion__whatsapp:focus-visible {
	color: var(--mka-color-burdeos);
	text-decoration-color: currentColor;
}

/* Datos de transferencia en Pedido recibido (solo si hay cuentas reales cargadas en WooCommerce). */
.mka-confirmacion__transferencia {
	max-width: 60ch;
	margin: var(--mka-espaciado-lg) auto 0 auto;
	padding: var(--mka-espaciado-md) 0 0 0;
	border-top: 1px solid var(--mka-color-plata);
	text-align: center;
}

.mka-confirmacion__transferencia-texto,
.mka-confirmacion__transferencia-referencia {
	margin: 0 0 var(--mka-espaciado-sm) 0;
	font-size: 0.9375rem;
	color: var(--mka-color-texto-suave);
}

.mka-confirmacion__transferencia-referencia {
	color: var(--mka-color-burdeos);
}

.mka-confirmacion__transferencia-lista {
	list-style: none;
	margin: var(--mka-espaciado-md) 0 0 0;
	padding: 0;
}

.mka-confirmacion__transferencia-cuenta {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	padding: var(--mka-espaciado-sm) 0;
	font-size: 0.9375rem;
	color: var(--mka-color-texto);
}

.mka-confirmacion__transferencia-cuenta + .mka-confirmacion__transferencia-cuenta {
	border-top: 1px solid var(--mka-color-plata);
}

.mka-confirmacion__transferencia-banco {
	font-family: var(--mka-font-display);
	font-size: 1.0625rem;
}

/* ------------------------------------------------------------------ */
/* Títulos de Bolsa, Checkout y Mi cuenta — mismo lenguaje que el resto */
/* del sitio (serif, alineados con el contenido) en lugar del título    */
/* por defecto del tema base.                                           */
/* ------------------------------------------------------------------ */
body.woocommerce-cart .entry-header,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-header,
body.woocommerce-account .entry-header {
	max-width: 1400px;
	margin: 0 auto;
	padding: var(--mka-espaciado-lg) var(--mka-espaciado-lg) 0 var(--mka-espaciado-lg);
}

body.woocommerce-cart .entry-title,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-title,
body.woocommerce-account .entry-title {
	margin: 0;
	font-family: var(--mka-font-display);
	font-size: clamp(2.1rem, 4vw, 3.1rem);
	font-weight: 400;
	line-height: 1.15;
	color: var(--mka-color-texto);
}

@media (max-width: 767px) {
	body.woocommerce-cart .entry-header,
	body.woocommerce-checkout:not(.woocommerce-order-received) .entry-header,
	body.woocommerce-account .entry-header {
		padding: var(--mka-espaciado-md) var(--mka-espaciado-md) 0 var(--mka-espaciado-md);
	}
}

/* Enlaces de la Bolsa y de Mi cuenta: color de marca, no el azul por defecto. */
.wc-block-cart a:not(.wc-block-components-button),
.wc-block-checkout a:not(.wc-block-components-button),
.woocommerce-account .woocommerce a {
	color: var(--mka-color-texto);
	text-decoration-color: var(--mka-color-plata);
}

.wc-block-cart a:not(.wc-block-components-button):hover,
.wc-block-checkout a:not(.wc-block-components-button):hover,
.woocommerce-account .woocommerce a:hover {
	color: var(--mka-color-burdeos);
}

/* Mi cuenta */
.woocommerce-account .woocommerce {
	max-width: 1400px;
	margin: 0 auto;
	padding: var(--mka-espaciado-md) var(--mka-espaciado-lg) var(--mka-espaciado-xl) var(--mka-espaciado-lg);
	font-family: var(--mka-font-body);
	color: var(--mka-color-texto);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid var(--mka-color-plata);
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 0.85rem 0.25rem;
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	color: var(--mka-color-burdeos);
}

.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-ResetPassword {
	max-width: 30rem;
	border: 1px solid var(--mka-color-plata);
	border-radius: 0;
	padding: var(--mka-espaciado-md);
	background: var(--mka-color-blanco-calido);
}

.woocommerce-account .woocommerce input.input-text {
	border: none;
	border-bottom: 1px solid var(--mka-color-plata);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.woocommerce-account .woocommerce input.input-text:focus {
	border-bottom-color: var(--mka-color-burdeos);
	outline: none;
}

.woocommerce-account .woocommerce button.button,
.woocommerce-account .woocommerce .button {
	border-radius: 0;
	background-color: var(--mka-color-texto);
	border: 1px solid var(--mka-color-texto);
	color: var(--mka-color-blanco-calido);
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.9rem 1.5rem;
}

.woocommerce-account .woocommerce button.button:hover,
.woocommerce-account .woocommerce .button:hover {
	background-color: var(--mka-color-burdeos);
	border-color: var(--mka-color-burdeos);
	color: var(--mka-color-blanco-calido);
}

@media (max-width: 767px) {
	.woocommerce-account .woocommerce {
		padding: var(--mka-espaciado-sm) var(--mka-espaciado-md) var(--mka-espaciado-lg) var(--mka-espaciado-md);
	}
}

/* Bolsa vacía: acceso de vuelta a la tienda */
.mka-bolsa-vacia__cta {
	display: inline-block;
	margin-top: var(--mka-espaciado-sm);
	padding: 0.9rem 1.5rem;
	border: 1px solid var(--mka-color-texto);
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--mka-color-texto);
}

.wp-block-woocommerce-empty-cart-block a.mka-bolsa-vacia__cta:hover {
	background-color: var(--mka-color-burdeos);
	border-color: var(--mka-color-burdeos);
	color: var(--mka-color-blanco-calido);
}

.woocommerce-account .woocommerce-MyAccount-content a {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}
