/* ==========================================================================
   PÁGINAS INTERNAS — producto individual, blog y artículos.
   Usa las variables :root definidas en shop.css (crema/dorado/Georgia).
   ========================================================================== */

/* ==========================================================================
   PRODUCTO INDIVIDUAL — ficha premium
   ========================================================================== */

.single-product div.product .summary.entry-summary {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.75rem !important;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
}

.single-product div.product .product_title {
	font-family: var(--fcs-serif) !important;
	font-size: 1.75rem !important;
	line-height: 1.25;
}

.single-product div.product p.price {
	color: var(--fcs-gold) !important;
	font-size: 1.625rem !important;
	margin-bottom: 1rem;
}

.single-product div.product p.price::after {
	content: '';
	display: block;
	width: 3rem;
	height: 2px;
	background: var(--fcs-beige);
	margin-top: 0.875rem;
}

.single-product div.product .woocommerce-product-details__short-description {
	color: var(--fcs-gray);
	font-size: 0.9688rem;
	line-height: 1.7;
}

/* Galería con presencia: solo la imagen principal, sin carrusel ni flechas */
.single-product div.product .woocommerce-product-gallery img {
	border-radius: 14px;
	background: var(--fcs-cream);
	object-fit: contain;
	width: 100%;
	height: auto;
}

.single-product div.product .woocommerce-product-gallery__image:not(:first-child),
.single-product div.product .flex-direction-nav,
.single-product div.product .flex-control-thumbs {
	display: none !important;
}

/* Sin navegación "producto anterior / siguiente" en los bordes de la pantalla */
.storefront-product-pagination {
	display: none !important;
}

/* Cantidad + carrito alineados y cómodos */
.single-product div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	align-items: stretch;
	margin-bottom: 0.875rem !important;
}

.single-product div.product form.cart .quantity .qty {
	height: 100%;
	min-height: 3rem;
	min-width: 4.25rem;
	text-align: center;
	background: var(--fcs-white);
}

.single-product div.product .single_add_to_cart_button {
	flex: 1;
	min-width: 12rem;
}

/* Botón de WhatsApp del producto */
.fci-producto-wsp {
	display: block;
	width: 100%;
	margin-bottom: 1.25rem;
}

/* Bloque ¿Qué incluye? */
.fci-incluye {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 12px;
	padding: 1.25rem 1.375rem;
	margin-bottom: 1rem;
}

.fci-incluye h3 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.125rem;
	color: var(--fcs-dark);
	margin: 0 0 0.75rem;
}

.fci-incluye ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.5rem;
}

.fci-incluye li {
	margin: 0;
	padding-left: 1.5rem;
	position: relative;
	font-size: 0.9063rem;
	color: var(--fcs-gray);
}

.fci-incluye li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.42em;
	width: 0.625rem;
	height: 0.625rem;
	border-radius: 50%;
	border: 1.5px solid var(--fcs-gold);
}

/* Aviso: la imagen en pantalla es referencial */
.fci-aviso-color {
	margin: 0 0 1.25rem;
	padding: 1.125rem 1.375rem;
	background: var(--fcs-cream);
	border-left: 3px solid var(--fcs-gold);
	border-radius: 0 12px 12px 0;
}

.fci-aviso-color p {
	margin: 0;
	font-family: var(--fcs-serif);
	font-style: italic;
	font-size: 0.875rem;
	line-height: 1.7;
	color: var(--fcs-gray);
}

/* Bloque ¿Cómo funciona el pedido? — mini-tarjetas con jerarquía */
.fci-pasos {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 16px;
	padding: 2.25rem 1.5rem 2rem;
	margin: 2.5rem 0;
	text-align: center;
}

.fci-pasos h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.625rem;
	color: var(--fcs-dark);
	margin: 0 0 0.875rem;
}

.fci-pasos h2::after {
	content: '';
	display: block;
	width: 3rem;
	height: 2px;
	background: var(--fcs-gold);
	margin: 0.875rem auto 1.75rem;
}

.fci-pasos__lista {
	list-style: none;
	counter-reset: fci-paso;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.875rem;
	text-align: center;
}

.fci-pasos__item {
	counter-increment: fci-paso;
	margin: 0;
	position: relative;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 12px;
	padding: 1.125rem 1rem 1.25rem;
	transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.fci-pasos__item:hover {
	transform: translateY(-3px);
	border-color: var(--fcs-gold);
	box-shadow: 0 12px 26px -18px rgba(26, 26, 26, 0.25);
}

/* Número en círculo fino dorado */
.fci-pasos__item::before {
	content: counter(fci-paso);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin: 0 auto 0.75rem;
	border-radius: 50%;
	border: 1px solid var(--fcs-gold);
	color: var(--fcs-gold-hover);
	font-family: var(--fcs-serif);
	font-size: 1.0625rem;
	background: var(--fcs-cream);
}

.fci-pasos__item h3 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.0313rem;
	color: var(--fcs-dark);
	margin: 0 0 0.375rem;
	line-height: 1.3;
}

.fci-pasos__item p {
	font-size: 0.8438rem;
	line-height: 1.55;
	color: var(--fcs-gray);
	margin: 0;
}

/* Bloque de confianza del producto */
.fci-confianza {
	margin: 0 0 2.5rem;
}

.fci-confianza ul {
	list-style: none;
	margin: 0;
	padding: 1.25rem 1.5rem;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	display: grid;
	gap: 1rem;
}

.fci-confianza li {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-size: 0.9063rem;
	color: var(--fcs-gray);
}

.fci-confianza .fc-icono {
	width: 1.5rem;
	height: 1.5rem;
	color: var(--fcs-gold);
	flex-shrink: 0;
}

/* Tabs de WooCommerce ocultas en el producto (refuerzo del filtro PHP) */
.single-product .woocommerce-tabs {
	display: none !important;
}

/* Bloque de ayuda emocional */
.fci-ayuda-final {
	background:
		radial-gradient(ellipse 100% 90% at 50% 115%, rgba(212, 196, 168, 0.18), transparent 65%),
		var(--fcs-dark);
	border-radius: 14px;
	padding: 2.5rem 1.75rem;
	margin: 2.5rem 0;
	text-align: center;
}

.fci-ayuda-final h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--fcs-white);
	margin: 0 0 0.625rem;
}

.fci-ayuda-final p {
	color: var(--fcs-beige);
	max-width: 34rem;
	margin: 0 auto 1.5rem;
}

/* Relacionados — tarjetas premium como en la tienda */
.single-product .related.products > h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.625rem;
	color: var(--fcs-dark);
	margin-bottom: 1.5rem;
}

.single-product ul.products {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0 !important;
	padding: 0;
	list-style: none;
}

.single-product ul.products::before,
.single-product ul.products::after {
	display: none !important;
}

.single-product ul.products li.product {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1rem 1rem 1.375rem !important;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
	text-align: center;
}

.single-product ul.products li.product:hover {
	transform: translateY(-4px);
	border-color: var(--fcs-gold);
	box-shadow: 0 20px 44px -24px rgba(26, 26, 26, 0.35);
}

.single-product ul.products li.product a img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: var(--fcs-cream);
	border-radius: 10px;
	padding: 5%;
	margin: 0 0 1rem !important;
	box-sizing: border-box;
}

.single-product ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.0625rem;
	color: var(--fcs-dark);
}

.single-product ul.products li.product .price {
	display: block;
	color: var(--fcs-gold) !important;
	font-weight: 600;
	margin-bottom: 0.75rem;
}

/* ==========================================================================
   BLOG — listado y paginación
   ========================================================================== */

.fcb-listado {
	background: var(--fcs-cream);
	padding: 3rem 0 3.5rem;
}

.fcb-paginacion {
	margin-top: 2rem;
	text-align: center;
}

.fcb-paginacion .nav-links {
	display: flex;
	justify-content: center;
	gap: 0.375rem;
	flex-wrap: wrap;
}

.fcb-paginacion .page-numbers {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 8px;
	color: var(--fcs-gray);
	padding: 0.5rem 0.875rem;
	text-decoration: none;
}

.fcb-paginacion .page-numbers.current,
.fcb-paginacion .page-numbers:hover {
	background: var(--fcs-gold);
	border-color: var(--fcs-gold);
	color: var(--fcs-white);
}

.fcb-vacio {
	color: var(--fcs-gray);
	text-align: center;
	padding: 2rem 0;
}

/* El blog usa su propia plantilla: anular el ancho angosto heredado */
.blog .site-main {
	max-width: none;
}

/* ==========================================================================
   ARTÍCULO INDIVIDUAL — lectura editorial
   ========================================================================== */

.single-post .site-main {
	max-width: 47rem;
	margin-left: auto;
	margin-right: auto;
}

.single-post article.post {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 2.25rem 2rem;
}

.single-post .entry-title {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.25;
	color: var(--fcs-dark);
}

.single-post .posted-on {
	font-family: var(--fcs-serif);
	font-size: 0.875rem;
	color: var(--fcs-gold);
	letter-spacing: 0.05em;
}

.single-post .post-thumbnail img {
	border-radius: 12px;
	margin: 1.25rem 0;
}

.single-post .entry-content {
	font-size: 1.0625rem;
	line-height: 1.8;
	color: #3A3A3A;
}

.single-post .entry-content h2,
.single-post .entry-content h3 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	color: var(--fcs-dark);
	margin-top: 2rem;
	padding-bottom: 0.375rem;
	border-bottom: 1px solid var(--fcs-beige);
}

.single-post .entry-content a {
	color: var(--fcs-gold-hover);
}

/* CTA final del artículo */
.fci-post-cta {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-left: 4px solid var(--fcs-gold);
	border-radius: 12px;
	padding: 1.75rem;
	margin-top: 2.5rem;
	text-align: center;
}

.fci-post-cta h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.375rem;
	color: var(--fcs-dark);
	margin: 0 0 0.5rem;
	border: none !important;
	padding: 0 !important;
}

.fci-post-cta p {
	color: var(--fcs-gray);
	margin: 0 0 1.25rem;
}

/* ==========================================================================
   CARRITO — premium, coherente con tienda y producto
   ========================================================================== */

body.woocommerce-cart {
	overflow-x: clip;
}

/* Encabezado tipo hero, como las demás páginas internas */
.woocommerce-cart .entry-header {
	margin: 0 calc(50% - 50vw) 2.5rem;
	background: var(--fcs-cream);
	border-bottom: 1px solid var(--fcs-beige);
	padding: 3rem 1.25rem 2.75rem;
	text-align: center;
}

.woocommerce-cart .entry-title {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 2rem;
	color: var(--fcs-dark);
	margin: 0;
}

.woocommerce-cart .entry-title::after {
	content: '';
	display: block;
	width: 3.5rem;
	height: 2px;
	background: var(--fcs-gold);
	margin: 1rem auto 0;
}

/* Tabla de productos como tarjeta */
.woocommerce-cart .woocommerce-cart-form table.shop_table {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
}

.woocommerce-cart table.shop_table th {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 0.9375rem;
	letter-spacing: 0.04em;
	color: var(--fcs-dark);
	background: var(--fcs-cream);
	border-bottom: 1px solid var(--fcs-beige);
}

.woocommerce-cart table.shop_table td {
	border-top: 1px solid var(--fcs-beige) !important;
	color: var(--fcs-gray);
}

.woocommerce-cart table.shop_table .product-name a {
	font-family: var(--fcs-serif);
	font-size: 1.0625rem;
	color: var(--fcs-dark);
	text-decoration: none;
}

.woocommerce-cart table.shop_table .product-name a:hover {
	color: var(--fcs-gold-hover);
}

.woocommerce-cart table.shop_table img {
	width: 72px;
	border-radius: 10px;
	background: var(--fcs-cream);
}

.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal {
	color: var(--fcs-gold-hover);
	font-weight: 600;
}

.woocommerce-cart table.shop_table .quantity .qty {
	min-height: 2.75rem;
	min-width: 4rem;
	text-align: center;
}

/* Quitar producto */
.woocommerce-cart table.shop_table a.remove {
	color: var(--fcs-gray) !important;
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	font-weight: 400;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.woocommerce-cart table.shop_table a.remove:hover {
	color: var(--fcs-white) !important;
	background: var(--fcs-gold);
	border-color: var(--fcs-gold);
}

/* Cupón: que nunca desborde en móvil */
.woocommerce-cart td.actions .coupon .input-text {
	max-width: 100%;
}

/* Totales como tarjeta */
.woocommerce-cart .cart-collaterals .cart_totals {
	width: 100%;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.5rem 1.625rem 1.75rem;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
}

.woocommerce-cart .cart_totals h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.375rem;
	color: var(--fcs-dark);
	margin: 0 0 1rem;
}

.woocommerce-cart .cart_totals table.shop_table {
	background: transparent;
	border: none !important;
	margin-bottom: 1rem;
}

.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td {
	background: transparent;
	border-top: 1px solid var(--fcs-beige) !important;
	border-bottom: none !important;
	font-family: var(--fcs-sans);
	color: var(--fcs-gray);
}

.woocommerce-cart .cart_totals .order-total td,
.woocommerce-cart .cart_totals .order-total th {
	font-size: 1.125rem;
	color: var(--fcs-dark);
}

.woocommerce-cart .cart_totals .order-total .amount {
	color: var(--fcs-gold-hover);
}

.woocommerce-cart .wc-proceed-to-checkout {
	padding-bottom: 0;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	width: 100%;
	font-size: 1.0625rem !important;
}

/* Microtexto de confianza bajo el botón */
.fci-cart-nota {
	font-size: 0.8438rem;
	color: var(--fcs-gray);
	text-align: center;
	margin: 0.875rem 0 0;
}

/* Banda de asesoría bajo el carrito */
.fci-cart-ayuda {
	margin-top: 2.5rem;
	padding: 0;
}

/* Carrito vacío */
.woocommerce-cart .cart-empty.woocommerce-info {
	background: transparent;
	border: none;
	font-family: var(--fcs-serif);
	font-size: 1.375rem;
	color: var(--fcs-dark);
	text-align: center;
	padding: 2rem 1rem 0.5rem;
	margin: 0;
}

.woocommerce-cart .cart-empty.woocommerce-info::before {
	display: none;
}

.woocommerce-cart .return-to-shop,
.fci-cart-vacio-wsp {
	text-align: center;
	margin: 0.75rem 0;
}

.woocommerce-cart .return-to-shop .button {
	font-size: 1rem !important;
	padding: 0.9375rem 2rem !important;
}

/* --- Carrito en móvil: cada producto como ficha ordenada --- */
@media (max-width: 768px) {
	.woocommerce-cart .woocommerce-cart-form table.shop_table,
	.woocommerce-cart .woocommerce-cart-form table.shop_table tbody {
		display: block;
	}

	/* Ocultamos el encabezado de columnas (no aplica en vista apilada) */
	.woocommerce-cart .woocommerce-cart-form table.shop_table thead {
		display: none;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item {
		position: relative;
		display: block;
		padding: 1.375rem 1.125rem 1.125rem;
		border-top: 1px solid var(--fcs-beige);
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item:first-child {
		border-top: 0;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item td {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 1rem;
		width: auto;
		padding: 0.45rem 0;
		border: 0 !important;
		text-align: right;
	}

	/* Etiqueta (Producto, Precio…) a la izquierda de cada fila */
	.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item td::before {
		content: attr(data-title);
		font-weight: 600;
		color: var(--fcs-dark);
		text-align: left;
	}

	/* Imagen del producto: centrada, sin etiqueta */
	.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-thumbnail {
		justify-content: center;
		padding-bottom: 0.75rem;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-thumbnail::before {
		display: none;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-thumbnail img {
		width: 96px;
	}

	/* Botón quitar (×): dentro de la tarjeta, esquina superior derecha */
	.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-remove {
		position: absolute;
		top: 0.75rem;
		right: 0.875rem;
		padding: 0;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table td.product-remove::before {
		display: none;
	}

	/* Fila de acciones (cupón + actualizar): apilada y a lo ancho */
	.woocommerce-cart .woocommerce-cart-form table.shop_table td.actions {
		display: block;
		padding: 1.125rem;
		text-align: center;
	}

	.woocommerce-cart .woocommerce-cart-form table.shop_table td.actions::before {
		display: none;
	}

	/* Cupón apilado: campo ancho arriba, botón ancho abajo (a prueba de errores) */
	.woocommerce-cart td.actions .coupon {
		display: block;
		margin-bottom: 0.875rem;
	}

	.woocommerce-cart td.actions .coupon .input-text {
		display: block;
		width: 100%;
		min-height: 3rem;
		margin: 0 0 0.5rem;
	}

	.woocommerce-cart td.actions .coupon .button {
		display: block;
		width: 100%;
	}

	/* Mensaje de error del cupón: a lo ancho y legible, nunca en columna */
	.woocommerce-cart td.actions .coupon .woocommerce-error,
	.woocommerce-cart td.actions .coupon .woocommerce-message,
	.woocommerce-cart td.actions .coupon .woocommerce-info {
		width: 100%;
		margin-top: 0.625rem;
		text-align: left;
	}

	/* "Actualizar carrito" sí a lo ancho */
	.woocommerce-cart td.actions button[name='update_cart'] {
		width: 100%;
	}
}

/* Solo vendemos en Chile: ocultamos el campo de país (queda fijo en CL). */
#billing_country_field,
#shipping_country_field {
	display: none !important;
}

/* Más aire lateral en carrito y checkout en móvil */
@media (max-width: 768px) {
	.woocommerce-cart .col-full,
	.woocommerce-checkout .col-full {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}
}

/* ==========================================================================
   AVISOS DE WOOCOMMERCE — notificación premium
   ========================================================================== */

.woocommerce-message,
.woocommerce-info {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1rem;
	background: var(--fcs-cream) !important;
	border: 1px solid var(--fcs-beige) !important;
	border-left: 4px solid var(--fcs-gold) !important;
	border-radius: 12px;
	color: var(--fcs-dark) !important;
	font-size: 0.9688rem;
	padding: 1.125rem 1.375rem !important;
	margin-bottom: 2rem;
	box-shadow: 0 8px 22px -18px rgba(26, 26, 26, 0.25);
}

/* Check de confirmación fino */
.woocommerce-message::before {
	content: '';
	flex-shrink: 0;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	border: 1.5px solid var(--fcs-gold);
	background:
		url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' fill='none'%3E%3Cpath d='M1.5 5.5 4.5 8.5 10.5 1.5' stroke='%239A7D4E' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
		center / 0.75rem no-repeat;
	position: static;
	display: block;
}

.woocommerce-info::before {
	display: none;
}

.fc-aviso__texto {
	flex: 1;
	min-width: 12rem;
}

.fc-aviso__texto strong {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.0313rem;
}

/* Botón "Ver carrito" premium dentro del aviso */
.woocommerce-message .button.wc-forward,
.woocommerce-info .button.wc-forward {
	order: 3;
	margin-left: auto;
	background: var(--fcs-gold) !important;
	color: var(--fcs-white) !important;
	border-radius: 999px !important;
	font-weight: 600;
	padding: 0.8125rem 1.625rem !important;
	transition: background-color 0.25s ease, transform 0.25s ease;
}

.woocommerce-message .button.wc-forward:hover,
.woocommerce-info .button.wc-forward:hover {
	background: var(--fcs-gold-hover) !important;
	transform: translateY(-1px);
}

.woocommerce-message .button.wc-forward::after {
	content: ' \2192';
}

@media (max-width: 599px) {
	.woocommerce-message,
	.woocommerce-info {
		flex-direction: column;
		align-items: flex-start;
	}

	.woocommerce-message .button.wc-forward,
	.woocommerce-info .button.wc-forward {
		order: 3;
		margin-left: 0;
		width: 100%;
		text-align: center;
	}
}

/* ==========================================================================
   CHECKOUT — formulario premium
   ========================================================================== */

body.woocommerce-checkout {
	overflow-x: clip;
}

/* Encabezado hero como las demás internas */
.woocommerce-checkout .entry-header {
	margin: 0 calc(50% - 50vw) 2.5rem;
	background: var(--fcs-cream);
	border-bottom: 1px solid var(--fcs-beige);
	padding: 3rem 1.25rem 2.75rem;
	text-align: center;
}

.woocommerce-checkout .entry-title {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 2rem;
	color: var(--fcs-dark);
	margin: 0;
}

.woocommerce-checkout .entry-title::after {
	content: '';
	display: block;
	width: 3.5rem;
	height: 2px;
	background: var(--fcs-gold);
	margin: 1rem auto 0;
}

/* Bloque de facturación como tarjeta */
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.75rem 1.625rem;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
	margin-bottom: 1.5rem;
}

.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3,
#order_review_heading {
	font-family: var(--fcs-serif) !important;
	font-weight: 400 !important;
	font-size: 1.375rem !important;
	color: var(--fcs-dark) !important;
}

.woocommerce-checkout .woocommerce-billing-fields > h3::after,
#order_review_heading::after {
	content: '';
	display: block;
	width: 3rem;
	height: 2px;
	background: var(--fcs-beige);
	margin-top: 0.625rem;
}

/* Labels ordenados */
.woocommerce-checkout .form-row label,
.woocommerce-account .form-row label {
	font-size: 0.875rem;
	font-weight: 600;
	color: #3A3A3A;
	margin-bottom: 0.375rem;
	display: block;
}

.woocommerce-checkout .form-row,
.woocommerce-account .form-row {
	margin-bottom: 1.125rem;
}

/* Inputs y selects refinados */
.woocommerce-checkout .input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-account .input-text,
.woocommerce-account select,
.woocommerce-account textarea {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 10px;
	min-height: 3rem;
	padding: 0.75rem 1rem;
	color: var(--fcs-dark);
	font-size: 1rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-checkout .input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-account .input-text:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
	border-color: var(--fcs-gold);
	box-shadow: 0 0 0 3px rgba(154, 125, 78, 0.14);
	outline: none;
}

/* Select nativo (Comuna) con flecha dorada propia */
.woocommerce-checkout select,
.woocommerce-account select {
	appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%239A7D4E' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	padding-right: 2.5rem;
	cursor: pointer;
}

/* ---- Select2 (Región): a la altura del resto del formulario ---- */
.woocommerce-checkout .select2-container--default .select2-selection--single,
.woocommerce-account .select2-container--default .select2-selection--single {
	height: 3rem;
	border: 1px solid var(--fcs-beige);
	border-radius: 10px;
	background: var(--fcs-white);
	display: flex;
	align-items: center;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1.4;
	padding: 0 2.5rem 0 1rem;
	color: var(--fcs-dark);
	font-size: 1rem;
	width: 100%;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__placeholder,
.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: var(--fcs-gray);
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow,
.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 100%;
	top: 0;
	right: 0.625rem;
	width: 1.5rem;
	background:
		url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%239A7D4E' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E")
		center no-repeat;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow b,
.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow b {
	display: none;
}

.woocommerce-checkout .select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--open .select2-selection--single,
.woocommerce-account .select2-container--focus .select2-selection--single,
.woocommerce-account .select2-container--open .select2-selection--single {
	border-color: var(--fcs-gold);
	box-shadow: 0 0 0 3px rgba(154, 125, 78, 0.14);
}

/* Desplegable de opciones */
.select2-dropdown {
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 10px !important;
	overflow: hidden;
	box-shadow: 0 14px 30px -16px rgba(26, 26, 26, 0.3);
}

.select2-search--dropdown .select2-search__field {
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 8px !important;
	padding: 0.5rem 0.75rem !important;
}

.select2-results__option {
	padding: 0.625rem 1rem !important;
	color: var(--fcs-dark);
}

.select2-results__option--highlighted.select2-results__option--selectable,
.select2-container--default .select2-results__option--highlighted[aria-selected] {
	background: var(--fcs-gold) !important;
	color: var(--fcs-white) !important;
}

/* ---- Resumen del pedido ---- */
.woocommerce-checkout #order_review {
	background: var(--fcs-white) !important;
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 14px !important;
	padding: 1.625rem !important;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
}

.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td {
	border: none !important;
	border-bottom: 1px solid var(--fcs-cream) !important;
	color: var(--fcs-gray);
	font-size: 0.9375rem;
	padding: 0.75rem 0.25rem;
}

.woocommerce-checkout #order_review table.shop_table thead th {
	font-family: var(--fcs-serif);
	font-weight: 400;
	letter-spacing: 0.04em;
	color: var(--fcs-dark);
}

.woocommerce-checkout #order_review .order-total th,
.woocommerce-checkout #order_review .order-total td {
	font-size: 1.0625rem;
	color: var(--fcs-dark);
	border-bottom: none !important;
	border-top: 1px solid var(--fcs-beige) !important;
}

.woocommerce-checkout #order_review .order-total .amount {
	color: var(--fcs-gold-hover);
	font-weight: 700;
}

/* Métodos de pago */
.woocommerce-checkout #payment {
	background: var(--fcs-cream) !important;
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 12px !important;
}

.woocommerce-checkout #payment .payment_methods li {
	background: var(--fcs-white) !important;
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 10px !important;
}

.woocommerce-checkout #payment .payment_methods li label {
	font-weight: 600;
	color: var(--fcs-dark);
}

.woocommerce-checkout #payment .payment_box {
	background: var(--fcs-cream) !important;
	border-radius: 8px !important;
	color: var(--fcs-gray) !important;
	font-size: 0.875rem;
}

/* Botón final */
.woocommerce-checkout #place_order {
	background: var(--fcs-gold) !important;
	color: var(--fcs-white) !important;
	border-radius: 999px !important;
	font-size: 1.0625rem !important;
	font-weight: 600;
	padding: 1.0625rem 2rem !important;
	transition: background-color 0.25s ease, transform 0.25s ease;
}

.woocommerce-checkout #place_order:hover {
	background: var(--fcs-gold-hover) !important;
	transform: translateY(-1px);
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (min-width: 600px) {
	.single-product ul.products {
		grid-template-columns: repeat(2, 1fr);
	}

	.fci-pasos__lista {
		grid-template-columns: repeat(2, 1fr);
	}

	.fci-confianza ul {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1024px) {
	.single-product ul.products {
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	/* Carrito en dos columnas: productos + resumen */
	.woocommerce-cart .entry-content > .woocommerce {
		display: grid;
		grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
		gap: 2rem;
		align-items: start;
	}

	.woocommerce-cart .entry-content > .woocommerce > .woocommerce-notices-wrapper,
	.woocommerce-cart .entry-content > .woocommerce > .fci-cart-ayuda,
	.woocommerce-cart .entry-content > .woocommerce > .cart-empty,
	.woocommerce-cart .entry-content > .woocommerce > .return-to-shop,
	.woocommerce-cart .entry-content > .woocommerce > .fci-cart-vacio-wsp {
		grid-column: 1 / -1;
	}

	.woocommerce-cart .cart-collaterals {
		width: 100%;
	}

	.single-product div.product .product_title {
		font-size: 2.125rem !important;
	}

	.fci-pasos {
		padding: 2.5rem 2rem 2.25rem;
	}

	.fci-pasos__lista {
		grid-template-columns: repeat(5, 1fr);
		gap: 1.25rem;
	}

	/* Línea sutil conectando los números */
	.fci-pasos__item:not(:last-child)::after {
		content: '';
		position: absolute;
		top: 2.25rem;
		right: -1.25rem;
		width: 1.25rem;
		height: 1px;
		background: var(--fcs-beige);
	}

	.fci-confianza ul {
		grid-template-columns: repeat(4, 1fr);
		padding: 1.5rem 2rem;
	}

	.fci-confianza li {
		flex-direction: column;
		text-align: center;
		gap: 0.5rem;
	}

	.fci-ayuda-final {
		padding: 3rem 2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.single-product ul.products li.product {
		transition: none !important;
	}
}

/* ==========================================================================
   RESULTADO DE PAGO — /pago-aprobado/ y /pago-rechazado/ (retorno de Flow)
   ========================================================================== */

.fcp-resultado .fcs-encabezado__texto {
	max-width: 38rem;
	margin-left: auto;
	margin-right: auto;
}

.fcp-hero--ok {
	background: linear-gradient(180deg, #EFF2EA 0%, var(--fcs-cream) 100%);
}

.fcp-hero--error {
	background: linear-gradient(180deg, #F4ECEA 0%, var(--fcs-cream) 100%);
}

/* Ícono circular con check / cruz (SVG embebido, sin dependencias) */
.fcp-icono {
	display: inline-flex;
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	margin-bottom: 1.125rem;
	background-color: var(--fcs-white);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.75rem;
	box-shadow: 0 10px 24px -14px rgba(26, 26, 26, 0.35);
}

.fcp-icono--ok {
	border: 2px solid #5E7A52;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235E7A52' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5 9.5 18 20 6.5'/%3E%3C/svg%3E");
}

.fcp-icono--error {
	border: 2px solid #A65D57;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A65D57' stroke-width='2.25' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E");
}

/* Ícono de subida, mismo lenguaje visual que los demás .fcp-icono */
.fcp-icono--subir {
	border: 2px solid var(--fcs-gold);
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A7D4E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12'/%3E%3Cpath d='M7 8l5-5 5 5'/%3E%3Cpath d='M4 17v2a2 2 0 002 2h12a2 2 0 002-2v-2'/%3E%3C/svg%3E");
}

.fcp-cuerpo {
	background: var(--fcs-white);
	padding: 2.75rem 0 3.5rem;
}

.fcp-cuerpo__inner {
	max-width: 760px;
}

.fcp-resumen,
.fcp-siguiente {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.5rem 1.625rem;
	margin-bottom: 1.25rem;
}

.fcp-resumen h2,
.fcp-siguiente h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 0 0 0.875rem;
}

.fcp-siguiente p {
	color: var(--fcs-gray);
	line-height: 1.7;
	margin: 0;
}

.fcp-resumen__datos,
.fcp-resumen__items {
	list-style: none;
	margin: 0;
	padding: 0;
}

.fcp-resumen__datos li {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgba(212, 196, 168, 0.45);
	font-size: 0.9375rem;
	color: var(--fcs-dark);
}

.fcp-resumen__datos li span {
	color: var(--fcs-gray);
	font-weight: 600;
}

.fcp-resumen__items {
	margin-top: 0.75rem;
}

.fcp-resumen__items li {
	padding: 0.375rem 0;
	color: var(--fcs-gray);
	font-size: 0.9375rem;
}

.fcp-acciones {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 1.75rem 0 1rem;
}

.fcp-acciones .fcs-btn {
	flex: 1 1 14rem;
}

/* Botón de borde sobre fondo claro (volver al carrito) */
.fcs-btn--borde-claro {
	background: transparent;
	color: var(--fcs-gold-hover);
	border-color: var(--fcs-beige);
}

.fcs-btn--borde-claro:hover,
.fcs-btn--borde-claro:focus {
	border-color: var(--fcs-gold);
	background: var(--fcs-cream);
	color: var(--fcs-gold-hover);
}

.fcp-nota {
	text-align: center;
	font-family: var(--fcs-serif);
	font-style: italic;
	color: var(--fcs-gray);
	margin: 1.5rem 0 0;
}

/* --------------------------------------------------------------------------
   Transferencia bancaria — gracias mejorada y comprobante
   -------------------------------------------------------------------------- */

.fcp-transferencia {
	margin: 1.5rem 0;
}

.fcp-estado {
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	padding: 0.5rem 1rem;
	border-radius: 999px;
	margin: 0 0 1.25rem;
}

.fcp-estado--pendiente {
	background: #FBF3E2;
	border: 1px solid #D9B978;
	color: #8A6A1F;
}

.fcp-grid {
	display: grid;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}

.fcp-banco,
.fcp-pasos {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.5rem 1.625rem;
}

.fcp-banco h2,
.fcp-pasos h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 0 0 0.875rem;
}

.fcp-banco ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.fcp-banco li {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgba(212, 196, 168, 0.45);
	font-size: 0.9375rem;
	color: var(--fcs-dark);
}

.fcp-banco li:last-child {
	border-bottom: none;
}

.fcp-banco li span {
	color: var(--fcs-gray);
	font-weight: 600;
	flex-shrink: 0;
}

.fcp-pasos ol {
	margin: 0 0 1.25rem;
	padding-left: 1.25rem;
	color: var(--fcs-gray);
	line-height: 1.7;
}

.fcp-pasos ol li {
	margin-bottom: 0.5rem;
}

.fcp-pasos .fcs-btn {
	width: 100%;
}

.fcp-comprobante {
	background: var(--fcs-cream);
	border: 1.5px dashed var(--fcs-gold);
	border-radius: 14px;
	padding: 1.75rem 1.625rem;
	text-align: center;
}

.fcp-comprobante--listo {
	border-style: solid;
	background: #F2F6EF;
	border-color: #5E7A52;
}

.fcp-comprobante h3 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.125rem;
	color: var(--fcs-dark);
	margin: 0 0 0.5rem;
}

.fcp-comprobante > p {
	color: var(--fcs-gray);
	font-size: 0.9375rem;
	margin: 0 0 1.25rem;
}

.fcp-comprobante form {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.875rem;
}

/* Campo de carga: input nativo oculto visualmente + botón + nombre de archivo */
.fcp-comprobante__campo {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
}

.fcp-comprobante__input {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.fcp-comprobante__boton {
	width: 100%;
	cursor: pointer;
}

.fcp-comprobante__input:focus-visible + .fcp-comprobante__boton {
	outline: 2px solid var(--fcs-gold);
	outline-offset: 2px;
}

.fcp-comprobante__nombre {
	font-size: 0.875rem;
	color: var(--fcs-gray);
	word-break: break-all;
}

.fcp-comprobante__ayuda {
	font-size: 0.8125rem;
	color: var(--fcs-gray);
	margin: 0.25rem 0 1.25rem;
}

.fcp-comprobante__enviar {
	width: 100%;
}

/* Avisos de resultado (comprobante / formulario de datos) */
.fcp-aviso {
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	font-size: 0.9375rem;
	font-weight: 600;
	margin: 0 0 1.25rem;
}

.fcp-aviso--ok {
	background: #F2F6EF;
	border: 1px solid #5E7A52;
	color: #3E5536;
}

.fcp-aviso--error {
	background: #F8EEED;
	border: 1px solid #A65D57;
	color: #7C4540;
}

.fcp-aviso--info {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	color: var(--fcs-dark);
	font-weight: 400;
}

/* ==========================================================================
   DATOS DEL MEMORIAL — /datos-pedido/ (formulario post-compra)
   ========================================================================== */

.fcd-cuerpo {
	background: var(--fcs-white);
	padding: 2.75rem 0 3.5rem;
}

.fcd-cuerpo__inner {
	max-width: 720px;
}

.fcd-estado {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.75rem;
	text-align: center;
}

.fcd-estado h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.375rem;
	color: var(--fcs-dark);
	margin: 0 0 0.75rem;
}

.fcd-estado h3 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.125rem;
	color: var(--fcs-dark);
	margin: 1.25rem 0 0.5rem;
}

.fcd-estado p {
	color: var(--fcs-gray);
	line-height: 1.7;
	margin: 0 0 1rem;
}

.fcd-resumen {
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
	text-align: left;
}

.fcd-resumen li {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgba(212, 196, 168, 0.45);
	font-size: 0.9375rem;
	color: var(--fcs-dark);
}

.fcd-resumen li span {
	color: var(--fcs-gray);
	font-weight: 600;
	flex-shrink: 0;
}

/* ---- Formulario guiado ---- */

.fcd-form {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.75rem 1.5rem;
}

.fcd-form__pedido {
	text-align: center;
	color: var(--fcs-gray);
	font-size: 0.9375rem;
	margin: 0 0 1.5rem;
}

.fcd-grupo {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 12px;
	padding: 1.25rem 1.375rem 1.375rem;
	margin: 0 0 1.25rem;
}

.fcd-grupo legend {
	font-family: var(--fcs-serif);
	font-size: 1.125rem;
	color: var(--fcs-dark);
	padding: 0 0.5rem 0 0;
	margin-left: 0;
}

.fcd-campo {
	margin: 0 0 1rem;
}

.fcd-campo:last-child {
	margin-bottom: 0;
}

.fcd-campo label {
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
	color: #3A3A3A;
	margin-bottom: 0.375rem;
}

.fcd-req {
	color: #A65D57;
}

.fcd-campo input[type='text'],
.fcd-campo input[type='date'],
.fcd-campo select,
.fcd-campo textarea {
	width: 100%;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 10px;
	min-height: 3rem;
	padding: 0.75rem 1rem;
	color: var(--fcs-dark);
	font-size: 1rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.fcd-campo input:focus,
.fcd-campo select:focus,
.fcd-campo textarea:focus {
	border-color: var(--fcs-gold);
	box-shadow: 0 0 0 3px rgba(154, 125, 78, 0.14);
	outline: none;
}

.fcd-campo select {
	appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%239A7D4E' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	padding-right: 2.5rem;
	cursor: pointer;
}

.fcd-campo input[type='file'] {
	width: 100%;
	border: 1.5px dashed var(--fcs-beige);
	border-radius: 10px;
	background: var(--fcs-cream);
	padding: 0.875rem 1rem;
	font-size: 0.9375rem;
	color: var(--fcs-dark);
}

.fcd-fechas {
	display: grid;
	gap: 0;
}

.fcd-nota {
	font-size: 0.8438rem;
	color: var(--fcs-gray);
	margin: 0.25rem 0 0;
	line-height: 1.6;
}

.fcd-nota--centro {
	text-align: center;
	margin-top: 0.75rem;
}

.fcd-enviar {
	margin: 1.5rem 0 0;
}

.fcd-enviar .fcs-btn {
	width: 100%;
	font-size: 1.0625rem;
	padding: 1.0625rem 2rem;
}

.fcd-ayuda {
	text-align: center;
	margin-top: 1.75rem;
}

.fcd-ayuda p {
	color: var(--fcs-gray);
	font-size: 0.9375rem;
	margin: 0 0 0.75rem;
}

/* ---- CTA "Completar datos del memorial" (gracias / pago aprobado / cuenta) ---- */

.fcd-cta {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.75rem;
	text-align: center;
	margin: 1.5rem 0;
}

.fcd-cta h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.375rem;
	color: var(--fcs-dark);
	margin: 0 0 0.625rem;
}

.fcd-cta p {
	color: var(--fcs-gray);
	line-height: 1.7;
	max-width: 32rem;
	margin: 0 auto 1.25rem;
}

.fcd-cta__nota {
	font-size: 0.875rem;
	font-style: italic;
}

/* Datos ya recibidos: acento dorado en el borde */
.fcd-cta--listo {
	border-color: var(--fcs-gold);
}

/* Esperando confirmación de pago: tono neutro, sin urgencia */
.fcd-cta--espera {
	background: var(--fcs-white);
	border-color: rgba(154, 125, 78, 0.25);
}

.fcd-cta--espera h2 {
	font-size: 1.25rem;
}

.fcd-cta--espera p {
	margin-bottom: 0;
}

/* El CTA dentro del bloque "¿Qué sigue ahora?" no duplica fondo */
.fcp-siguiente .fcd-cta {
	background: transparent;
	border: none;
	padding: 0.5rem 0 0;
	margin: 0;
}

.fcp-siguiente .fcd-cta h2 {
	display: none;
}

/* ---- Responsive ---- */

@media (min-width: 700px) {
	.fcp-grid {
		grid-template-columns: 1fr 1fr;
	}

	.fcd-fechas {
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}

	.fcd-form {
		padding: 2rem 2.25rem;
	}

	.fcp-comprobante {
		padding: 2rem 2.5rem;
	}

	.fcp-comprobante__boton,
	.fcp-comprobante__enviar {
		width: auto;
		min-width: 14rem;
	}
}

/* ==========================================================================
   PEDIDO RECIBIDO — /finalizar-compra/order-received/ (checkout estandar)
   ========================================================================== */

body.woocommerce-order-received {
	overflow-x: clip;
}

/* Mensaje "Pedido recibido" con icono de confirmacion */
.woocommerce-order-received .woocommerce-thankyou-order-received {
	background: var(--fcs-cream) !important;
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 14px;
	padding: 2rem 1.625rem;
	margin: 0 0 1.75rem;
	text-align: center;
	font-family: var(--fcs-serif);
	font-size: 1.1875rem;
	line-height: 1.6;
	color: var(--fcs-dark) !important;
}

.woocommerce-order-received .woocommerce-thankyou-order-received::before {
	content: '';
	display: block;
	width: 4rem;
	height: 4rem;
	margin: 0 auto 1.125rem;
	border-radius: 50%;
	background-color: var(--fcs-white);
	border: 2px solid #5E7A52;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235E7A52' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5 9.5 18 20 6.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.75rem;
	box-shadow: 0 10px 24px -14px rgba(26, 26, 26, 0.35);
}

/* Resumen: numero de pedido, fecha, total, metodo de pago */
.woocommerce-order-received ul.woocommerce-order-overview {
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
}

.woocommerce-order-received ul.woocommerce-order-overview li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 1rem;
	margin: 0;
	padding: 0.875rem 1.375rem;
	border-bottom: 1px solid var(--fcs-cream);
	font-size: 0.9375rem;
	color: var(--fcs-gray);
}

.woocommerce-order-received ul.woocommerce-order-overview li:last-child {
	border-bottom: none;
}

.woocommerce-order-received ul.woocommerce-order-overview li strong {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.0625rem;
	color: var(--fcs-dark);
	text-align: right;
}

/* Titulo de seccion "Detalles del pedido" */
.woocommerce-order-received .woocommerce-order-details__title {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.375rem;
	color: var(--fcs-dark);
	margin: 0 0 1rem;
}

/* Tabla de productos del pedido */
.woocommerce-order-received table.shop_table {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
	margin-bottom: 2rem;
}

.woocommerce-order-received table.shop_table th {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 0.9375rem;
	letter-spacing: 0.04em;
	color: var(--fcs-dark);
	background: var(--fcs-cream);
	border-bottom: 1px solid var(--fcs-beige);
}

.woocommerce-order-received table.shop_table td {
	border-top: 1px solid var(--fcs-beige) !important;
	color: var(--fcs-gray);
}

.woocommerce-order-received table.shop_table tfoot tr:last-child th,
.woocommerce-order-received table.shop_table tfoot tr:last-child td {
	font-size: 1.0625rem;
	color: var(--fcs-dark);
}

.woocommerce-order-received table.shop_table .woocommerce-Price-amount {
	color: var(--fcs-gold-hover);
	font-weight: 600;
}

/* Datos del cliente — tarjeta con etiquetas (woocommerce/order/order-details-customer.php) */
.fcp-datos-cliente {
	margin: 0 0 1.5rem;
}

.fcp-datos-cliente__grid {
	display: grid;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}

.fcp-datos-cliente__card {
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 14px;
	padding: 1.5rem 1.625rem;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
}

.fcp-datos-cliente__titulo {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 0 0 1.125rem;
}

.fcp-datos-cliente__lista {
	margin: 0;
}

.fcp-datos-cliente__fila {
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	padding: 0.625rem 0;
	border-bottom: 1px solid rgba(212, 196, 168, 0.4);
}

.fcp-datos-cliente__fila:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.fcp-datos-cliente__fila dt {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--fcs-gold);
	margin: 0;
}

.fcp-datos-cliente__fila dd {
	font-size: 0.9375rem;
	color: var(--fcs-dark);
	margin: 0;
}

@media (min-width: 700px) {
	.fcp-datos-cliente__grid {
		grid-template-columns: 1fr 1fr;
	}
}

/* Aviso preventivo sobre la direccion (checkout y "Datos del cliente") */
.fcp-aviso-direccion {
	background: var(--fcs-cream);
	border-left: 4px solid var(--fcs-gold);
	border-radius: 0 10px 10px 0;
	padding: 0.875rem 1.125rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--fcs-gray);
	margin: 1.25rem 0;
}

.fcp-aviso-direccion strong {
	color: var(--fcs-dark);
}

.fcp-aviso-direccion a {
	color: var(--fcs-gold-hover);
	font-weight: 600;
}

/* --------------------------------------------------------------------------
   ACCESO AL PEDIDO — fallback de WooCommerce "Please log in to view this
   order" (pedido recibido, pago aprobado/rechazado o cualquier endpoint
   donde WooCommerce pida iniciar sesion para ver un pedido).
   -------------------------------------------------------------------------- */

/* Mensaje propio al inicio del formulario: explica por que se pide acceso */
.fcp-acceso {
	text-align: center;
	padding: 0 0 1.5rem;
	margin: 0 0 1.5rem;
	border-bottom: 1px solid var(--fcs-beige);
}

.fcp-acceso .fcp-icono {
	margin-bottom: 1.125rem;
}

.fcp-acceso h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 0 0 0.625rem;
}

.fcp-acceso p {
	color: var(--fcs-gray);
	line-height: 1.7;
	margin: 0;
}

/* Ayuda por WhatsApp al final del formulario */
.fcp-acceso__ayuda {
	margin: 1.25rem 0 0 !important;
	padding-top: 1.25rem;
	border-top: 1px solid var(--fcs-beige);
	text-align: center;
	font-size: 0.9375rem;
	color: var(--fcs-gray);
}

.fcp-acceso__ayuda a {
	color: var(--fcs-gold-hover);
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1px solid var(--fcs-beige);
}

.fcp-acceso__ayuda a:hover {
	color: var(--fcs-gold);
	border-color: var(--fcs-gold);
}

/* Icono de candado, mismo lenguaje visual que los demas .fcp-icono */
.fcp-icono--candado {
	border: 2px solid var(--fcs-gold);
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A7D4E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
}

/* El aviso generico de WooCommerce ("Por favor, accede a tu cuenta...")
   queda redundante una vez que el formulario incluye nuestro mensaje */
.woocommerce-info:has(+ .woocommerce-form-login .fcp-acceso) {
	display: none;
}

/* Formulario de acceso como tarjeta, coherente con el resto del sitio.
   Usamos !important porque ".woocommerce form.login" del core (mas especifica
   por incluir el selector de elemento "form") fija su propio padding, margen,
   borde y radio, y box-sizing/width evitan que el max-width desborde en mobile. */
.woocommerce-order-received .woocommerce-form-login,
.fcp-resultado .woocommerce-form-login {
	background: var(--fcs-white) !important;
	border: 1px solid var(--fcs-beige) !important;
	border-radius: 14px !important;
	padding: 1.75rem 1.625rem !important;
	box-shadow: 0 10px 28px -22px rgba(26, 26, 26, 0.22);
	box-sizing: border-box;
	width: 100%;
	max-width: 26rem;
	margin: 2rem auto !important;
}

.woocommerce-order-received .woocommerce-form-login .form-row,
.fcp-resultado .woocommerce-form-login .form-row {
	width: 100%;
	float: none;
	margin: 0 0 1.125rem;
	padding: 0;
}

.woocommerce-order-received .woocommerce-form-login .form-row label,
.fcp-resultado .woocommerce-form-login .form-row label {
	font-size: 0.875rem;
	font-weight: 600;
	color: #3A3A3A;
	margin-bottom: 0.375rem;
	display: block;
}

.woocommerce-order-received .woocommerce-form-login .input-text,
.fcp-resultado .woocommerce-form-login .input-text {
	width: 100%;
	background: var(--fcs-white);
	border: 1px solid var(--fcs-beige);
	border-radius: 10px;
	min-height: 3rem;
	padding: 0.75rem 1rem;
	color: var(--fcs-dark);
	font-size: 1rem;
	box-sizing: border-box;
}

.woocommerce-order-received .woocommerce-form-login .input-text:focus,
.fcp-resultado .woocommerce-form-login .input-text:focus {
	border-color: var(--fcs-gold);
	box-shadow: 0 0 0 3px rgba(154, 125, 78, 0.14);
	outline: none;
}

.woocommerce-order-received .woocommerce-form-login__rememberme,
.fcp-resultado .woocommerce-form-login__rememberme {
	font-size: 0.875rem;
	color: var(--fcs-gray);
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.woocommerce-order-received .woocommerce-form-login__rememberme input[type='checkbox'],
.fcp-resultado .woocommerce-form-login__rememberme input[type='checkbox'] {
	accent-color: var(--fcs-gold);
	width: 1.125rem;
	height: 1.125rem;
	margin: 0;
}

.woocommerce-order-received .woocommerce-form-login__submit,
.fcp-resultado .woocommerce-form-login__submit {
	background: var(--fcs-gold) !important;
	color: var(--fcs-white) !important;
	border: none;
	border-radius: 999px !important;
	font-weight: 600;
	font-size: 1rem;
	padding: 0.875rem 2rem !important;
	width: 100%;
	cursor: pointer;
	transition: background-color 0.25s ease, transform 0.25s ease;
}

.woocommerce-order-received .woocommerce-form-login__submit:hover,
.fcp-resultado .woocommerce-form-login__submit:hover {
	background: var(--fcs-gold-hover) !important;
	transform: translateY(-1px);
}

.woocommerce-order-received .lost_password,
.fcp-resultado .lost_password {
	text-align: center;
	font-size: 0.875rem;
	margin: 1rem 0 0;
}

.woocommerce-order-received .lost_password a,
.fcp-resultado .lost_password a {
	color: var(--fcs-gold-hover);
}

/* ==========================================================================
   MI CUENTA — panel premium (escritorio, navegación, pedidos, ver pedido)
   ========================================================================== */

/* ---- Botones pill reutilizables ---- */

.fcm-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	padding: 0.75rem 1.5rem;
	border-radius: 999px;
	border: 1.5px solid transparent;
	cursor: pointer;
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.fcm-btn--primario {
	background: var(--fcs-gold);
	color: var(--fcs-white);
}

.fcm-btn--primario:hover,
.fcm-btn--primario:focus {
	background: var(--fcs-gold-hover);
	color: var(--fcs-white);
	transform: translateY(-1px);
}

.fcm-btn--secundario {
	background: transparent;
	color: var(--fcs-gold);
	border-color: var(--fcs-gold);
}

.fcm-btn--secundario:hover,
.fcm-btn--secundario:focus {
	background: var(--fcs-cream);
	color: var(--fcs-gold-hover);
	border-color: var(--fcs-gold-hover);
}

/* ---- Navegación lateral ---- */

.woocommerce-account .woocommerce-MyAccount-navigation {
	background: var(--fcs-cream);
	border: 1px solid rgba(154, 125, 78, 0.25);
	border-radius: 16px;
	padding: 0.75rem;
	box-sizing: border-box;
}

/* El ancho fijo (220px) más el margen de columna de Storefront (~5.88%)
   más el ancho del contenido (~78%) suman más del 100% del contenedor,
   por lo que el contenido flotado se desplaza debajo del menú. Se
   reemplaza por flexbox para alinear ambos arriba en pantallas grandes. */
@media (min-width: 56.1875em) {
	.woocommerce-account .woocommerce {
		display: flex;
		align-items: flex-start;
		gap: 2rem;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		flex: 0 0 260px;
		width: 260px;
		margin: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		flex: 1 1 auto;
		width: auto;
		margin: 0;
	}
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	border-top: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	border-bottom: none;
	margin: 0 0 0.375rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem 1rem !important;
	margin: 0;
	border-radius: 12px;
	border: 1px solid transparent;
	background: var(--fcs-white);
	color: var(--fcs-dark);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.3;
	transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a .fc-icono {
	flex-shrink: 0;
	width: 1.125rem;
	height: 1.125rem;
	color: var(--fcs-gold);
	transition: color 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus {
	border-color: var(--fcs-beige);
	color: var(--fcs-gold-hover);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--fcs-gold);
	border-color: var(--fcs-gold);
	color: var(--fcs-white);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a .fc-icono {
	color: var(--fcs-white);
}

@media (max-width: 56.1875em) {
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none !important;
		width: 100% !important;
		margin: 0 0 1.5rem !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: flex;
		flex-direction: column;
	}
}

/* ---- Escritorio: saludo y tarjetas de acceso rápido ---- */

.fcm-saludo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	background: var(--fcs-white);
	border: 1px solid rgba(154, 125, 78, 0.25);
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(42, 33, 27, 0.06);
	padding: 1.75rem;
	margin: 0 0 1.5rem;
}

.fcm-saludo__texto h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--fcs-dark);
	margin: 0 0 0.5rem;
}

.fcm-saludo__texto p {
	color: var(--fcs-gray);
	line-height: 1.7;
	margin: 0;
	max-width: 40rem;
}

.fcm-saludo .fcm-btn {
	flex-shrink: 0;
}

.fcm-tarjetas {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
	margin: 0 0 1.5rem;
}

.fcm-tarjeta {
	display: flex;
	flex-direction: column;
	background: var(--fcs-white);
	border: 1px solid rgba(154, 125, 78, 0.25);
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(42, 33, 27, 0.06);
	padding: 1.5rem;
}

.fcm-tarjeta__icono {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	background: var(--fcs-cream);
	color: var(--fcs-gold);
	margin: 0 0 1rem;
}

.fcm-tarjeta__icono .fc-icono {
	width: 1.375rem;
	height: 1.375rem;
}

.fcm-tarjeta h3 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.1875rem;
	color: var(--fcs-dark);
	margin: 0 0 0.5rem;
}

.fcm-tarjeta p {
	color: var(--fcs-gray);
	line-height: 1.6;
	font-size: 0.9375rem;
	margin: 0 0 1.25rem;
	flex-grow: 1;
}

.fcm-tarjeta .fcm-btn {
	align-self: flex-start;
}

@media (min-width: 700px) {
	.fcm-tarjetas {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1100px) {
	.fcm-tarjetas {
		grid-template-columns: repeat(4, 1fr);
	}
}

/* ---- Mis pedidos: encabezado y tabla ---- */

.fcm-pedidos__header {
	margin: 0 0 1.25rem;
}

.fcm-pedidos__header h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--fcs-dark);
	margin: 0 0 0.375rem;
}

.fcm-pedidos__header p {
	color: var(--fcs-gray);
	line-height: 1.6;
	margin: 0;
}

.woocommerce-account table.woocommerce-orders-table {
	background: var(--fcs-white);
	border: 1px solid rgba(154, 125, 78, 0.25);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 12px 30px rgba(42, 33, 27, 0.06);
	border-collapse: separate;
	border-spacing: 0;
}

.woocommerce-account table.woocommerce-orders-table thead th {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 0.9375rem;
	letter-spacing: 0.02em;
	color: var(--fcs-dark);
	background: var(--fcs-cream);
	border-bottom: 1px solid var(--fcs-beige);
	padding: 0.875rem 1.25rem;
}

.woocommerce-account table.woocommerce-orders-table tbody td,
.woocommerce-account table.woocommerce-orders-table tbody th {
	padding: 1rem 1.25rem;
	border-top: 1px solid rgba(212, 196, 168, 0.4);
	color: var(--fcs-gray);
	vertical-align: middle;
}

.woocommerce-account table.woocommerce-orders-table tbody tr:first-child td,
.woocommerce-account table.woocommerce-orders-table tbody tr:first-child th {
	border-top: none;
}

.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-number a {
	color: var(--fcs-gold-hover);
	font-weight: 700;
	text-decoration: none;
}

.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

/* El tema define .woocommerce a.button con !important (relleno bronce
   sitewide); aquí se sobreescribe a propósito para distinguir la acción
   principal ("Ver pedido") de las secundarias (borde, sin relleno). */
.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent !important;
	color: var(--fcs-gold) !important;
	border: 1.5px solid var(--fcs-gold) !important;
	border-radius: 999px !important;
	padding: 0.5rem 1.125rem !important;
	font-size: 0.8438rem !important;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button.view {
	background: var(--fcs-gold) !important;
	color: var(--fcs-white) !important;
	border-color: var(--fcs-gold) !important;
}

.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button:hover,
.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button:focus {
	background: var(--fcs-cream) !important;
	color: var(--fcs-gold-hover) !important;
	border-color: var(--fcs-gold-hover) !important;
}

.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button.view:hover,
.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button.view:focus {
	background: var(--fcs-gold-hover) !important;
	color: var(--fcs-white) !important;
	border-color: var(--fcs-gold-hover) !important;
}

/* ---- Badges de estado del pedido ---- */

.fcm-badge {
	display: inline-block;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	padding: 0.375rem 0.875rem;
	border-radius: 999px;
	white-space: nowrap;
}

.fcm-badge--pendiente {
	background: #FBF3E2;
	border: 1px solid #D9B978;
	color: #8A6A1F;
}

.fcm-badge--revision {
	background: #EEF3FA;
	border: 1px solid #9CB8DD;
	color: #3E5C8A;
}

.fcm-badge--confirmado,
.fcm-badge--completado {
	background: #F2F6EF;
	border: 1px solid #5E7A52;
	color: #3E5536;
}

.fcm-badge--cancelado {
	background: #F8EEED;
	border: 1px solid #A65D57;
	color: #7C4540;
}

/* ---- Ver pedido: encabezado y resumen ---- */

.fcm-pedido-header {
	margin: 0 0 1.5rem;
}

.fcm-pedido-header h1 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.625rem;
	color: var(--fcs-dark);
	margin: 0 0 0.5rem;
}

.fcm-pedido-header__estado {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	color: var(--fcs-gray);
	font-size: 0.9375rem;
	margin: 0;
}

.fcm-resumen {
	background: var(--fcs-white);
	border: 1px solid rgba(154, 125, 78, 0.25);
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(42, 33, 27, 0.06);
	padding: 1.5rem 1.625rem;
	margin: 0 0 1.5rem;
}

.fcm-resumen h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 0 0 1.125rem;
}

.fcm-resumen dl {
	margin: 0;
}

.fcm-resumen .fcm-resumen__fila {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.625rem 0;
	border-bottom: 1px solid rgba(212, 196, 168, 0.4);
	font-size: 0.9375rem;
}

.fcm-resumen .fcm-resumen__fila:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.fcm-resumen dt {
	color: var(--fcs-gray);
	font-weight: 600;
	margin: 0;
}

.fcm-resumen dd {
	color: var(--fcs-dark);
	font-weight: 600;
	text-align: right;
	margin: 0;
}

/* Detalle de productos y notas del pedido en Mi cuenta, mismo lenguaje visual */
.woocommerce-view-order .woocommerce-order-details__title {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 1.5rem 0 1rem;
}

.woocommerce-view-order table.shop_table {
	background: var(--fcs-white);
	border: 1px solid rgba(154, 125, 78, 0.25) !important;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 12px 30px rgba(42, 33, 27, 0.06);
	margin-bottom: 1.5rem;
}

.woocommerce-view-order table.shop_table th {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 0.9375rem;
	color: var(--fcs-dark);
	background: var(--fcs-cream);
	border-bottom: 1px solid var(--fcs-beige);
}

.woocommerce-view-order table.shop_table td {
	border-top: 1px solid var(--fcs-beige) !important;
	color: var(--fcs-gray);
}

.woocommerce-view-order table.shop_table .woocommerce-Price-amount {
	color: var(--fcs-gold-hover);
	font-weight: 600;
}

.woocommerce-view-order .woocommerce-OrderUpdates {
	background: var(--fcs-cream);
	border: 1px solid var(--fcs-beige);
	border-radius: 16px;
	padding: 1.25rem 1.5rem;
	margin: 0 0 1.5rem;
	list-style: none;
}

.woocommerce-view-order .woocommerce-OrderUpdate + .woocommerce-OrderUpdate {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(212, 196, 168, 0.5);
}

.woocommerce-view-order .woocommerce-OrderUpdate-meta {
	font-size: 0.8125rem;
	color: var(--fcs-gray);
	font-weight: 600;
	margin: 0 0 0.25rem;
}

.woocommerce-view-order .woocommerce-OrderUpdate-description p {
	margin: 0;
	color: var(--fcs-dark);
	line-height: 1.6;
}

/* ---- Direcciones: tarjetas ---- */

.woocommerce-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 1.5rem;
	margin-top: 1rem;
}

/* WooCommerce define .col2-set .col-1/.col-2 con float y ancho ~48% con
   más especificidad que el grid de aquí; se fuerza el ancho completo. */
.woocommerce-account .woocommerce-Address {
	background: var(--fcs-white);
	border: 1px solid rgba(154, 125, 78, 0.25);
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(42, 33, 27, 0.06);
	padding: 1.5rem 1.625rem;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box;
}

.woocommerce-account .woocommerce-Address-title {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin: 0 0 1rem;
}

.woocommerce-account .woocommerce-Address-title h2 {
	font-family: var(--fcs-serif);
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--fcs-dark);
	margin: 0;
}

/* El icono de edición depende de Font Awesome y no carga aquí; se
   reemplaza por un botón de texto coherente con el resto de "Mi cuenta". */
.woocommerce-account .woocommerce-Address-title .edit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	color: var(--fcs-gold);
	border: 1.5px solid var(--fcs-gold);
	border-radius: 999px;
	padding: 0.375rem 1rem;
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	text-indent: 0;
	overflow: visible;
	float: none;
	width: auto;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.woocommerce-account .woocommerce-Address-title .edit::before {
	content: none;
}

.woocommerce-account .woocommerce-Address-title .edit:hover,
.woocommerce-account .woocommerce-Address-title .edit:focus {
	background: var(--fcs-gold);
	color: var(--fcs-white);
	border-color: var(--fcs-gold);
}

.woocommerce-account .woocommerce-Address address {
	font-style: normal;
	color: var(--fcs-gray);
	line-height: 1.7;
	font-size: 0.9375rem;
}
