/**
 * Farmacia El Cóndor 2 - estilos específicos de WooCommerce.
 * Se cargan solo cuando el plugin está activo (ver inc/theme-setup.php).
 * Complementan (no reemplazan) el CSS que WooCommerce ya trae, así que se
 * apunta a las clases reales que generan los templates del plugin.
 */

.fec2-shop-wrap {
	padding: 32px 0 56px;
}

.woocommerce-breadcrumb {
	font-size: 0.85rem;
	color: var(--fec2-texto-suave);
	margin-bottom: 20px;
}

.woocommerce-breadcrumb a {
	color: var(--fec2-verde-oscuro);
}

/* =========================================================
   TIENDA / CATEGORÍAS / BÚSQUEDA DE PRODUCTOS
   ========================================================= */
.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
}

.woocommerce ul.products li.product {
	background: var(--fec2-blanco);
	border: 1px solid var(--fec2-borde);
	border-radius: var(--fec2-radio);
	overflow: hidden;
	box-shadow: var(--fec2-sombra);
	padding: 0 0 14px;
	position: relative;
}

.woocommerce ul.products li.product img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 0;
	margin-bottom: 10px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 0.95rem;
	font-weight: 600;
	padding: 0 14px;
	color: var(--fec2-texto);
}

.woocommerce ul.products li.product .price {
	padding: 0 14px;
	font-weight: 700;
	color: var(--fec2-texto);
	display: block;
	margin: 6px 0 10px;
}

.woocommerce ul.products li.product .price del {
	color: var(--fec2-precio-anterior);
	font-weight: 400;
	margin-right: 6px;
}

.woocommerce ul.products li.product .price ins {
	text-decoration: none;
	color: var(--fec2-texto);
}

.woocommerce ul.products li.product .button {
	margin: 0 14px;
	width: calc(100% - 28px);
	background: var(--fec2-verde-oscuro);
	color: #fff;
	border-radius: var(--fec2-radio-chico);
	padding: 10px 12px;
	font-weight: 600;
	font-size: 0.88rem;
	text-align: center;
	min-height: 40px;
	border: 0;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--fec2-negro);
	color: #fff;
}

/* Insignia de oferta: verde de marca con texto negro (mismo criterio que
   .fec2-badge-oferta en style-main.css, para que tienda y portada luzcan
   consistentes). */
.woocommerce span.onsale {
	background: var(--fec2-verde);
	color: var(--fec2-negro);
	font-size: 0.7rem;
	font-weight: 700;
	border-radius: 999px;
	min-height: auto;
	min-width: auto;
	padding: 4px 10px;
	top: 10px;
	left: 10px;
	line-height: 1.4;
}

.woocommerce nav.woocommerce-pagination ul {
	border: none;
	gap: 8px;
	display: flex;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 1px solid var(--fec2-borde);
	border-radius: var(--fec2-radio-chico);
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	padding: 8px 14px;
	color: var(--fec2-verde-oscuro);
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--fec2-verde-oscuro);
	color: #fff;
}

.woocommerce-result-count,
.woocommerce-ordering {
	font-size: 0.85rem;
	color: var(--fec2-texto-suave);
}

/* =========================================================
   FICHA INDIVIDUAL DE PRODUCTO
   ========================================================= */
.woocommerce div.product {
	background: var(--fec2-blanco);
	border-radius: var(--fec2-radio);
	padding: 28px;
	box-shadow: var(--fec2-sombra);
}

.woocommerce div.product .product_title {
	color: var(--fec2-texto);
	font-size: 1.6rem;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--fec2-texto);
	font-size: 1.3rem;
	font-weight: 700;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	color: var(--fec2-precio-anterior);
	font-weight: 400;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	text-decoration: none;
	color: var(--fec2-texto);
}

.woocommerce div.product .stock {
	font-weight: 600;
	color: var(--fec2-verde-oscuro);
}

.woocommerce div.product .stock.out-of-stock {
	color: var(--fec2-alerta);
}

.woocommerce div.product form.cart .button {
	background: var(--fec2-verde-oscuro);
	color: #fff;
	border-radius: var(--fec2-radio);
	padding: 12px 26px;
	font-weight: 700;
	border: 0;
	min-height: 44px;
}

.woocommerce div.product form.cart .button:hover {
	background: var(--fec2-negro);
	color: #fff;
}

.woocommerce div.product .woocommerce-product-gallery {
	border-radius: var(--fec2-radio);
	overflow: hidden;
}

/* Productos relacionados: mismas tarjetas que el resto del sitio */
.woocommerce div.product .related.products ul.products,
.woocommerce div.product .related.products {
	margin-top: 20px;
}

.woocommerce div.product .related.products > h2 {
	color: var(--fec2-texto);
	font-size: 1.3rem;
}

.woocommerce .woocommerce-tabs {
	margin-top: 30px;
}

.woocommerce .woocommerce-tabs ul.tabs li a {
	font-weight: 600;
	color: var(--fec2-texto);
}

.woocommerce .woocommerce-tabs ul.tabs li.active a {
	color: var(--fec2-verde-oscuro);
}

/* =========================================================
   CARRITO
   ========================================================= */
.woocommerce table.shop_table {
	border-radius: var(--fec2-radio);
	overflow: hidden;
	border: 1px solid var(--fec2-borde);
}

.woocommerce table.shop_table th {
	background: var(--fec2-fondo-claro);
	color: var(--fec2-verde-oscuro);
}

.woocommerce-cart table.cart img {
	border-radius: var(--fec2-radio-chico);
	width: 64px;
	height: 64px;
	object-fit: cover;
}

.woocommerce #content table.cart td.actions .button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	background: var(--fec2-verde-oscuro);
	color: #fff;
	border-radius: var(--fec2-radio);
	font-weight: 700;
	min-height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce #content table.cart td.actions .button:hover {
	background: var(--fec2-negro);
	color: #fff;
}

.woocommerce .cart-collaterals .cart_totals {
	background: var(--fec2-fondo-claro);
	border-radius: var(--fec2-radio);
	padding: 20px;
}

/* =========================================================
   CHECKOUT
   ========================================================= */
.woocommerce-checkout #payment {
	background: var(--fec2-fondo-claro);
	border-radius: var(--fec2-radio);
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
	border: 1px solid var(--fec2-borde);
	border-radius: var(--fec2-radio-chico);
	padding: 10px 12px;
	min-height: 44px;
}

.woocommerce #order_review_heading,
.woocommerce-checkout #order_review {
	background: var(--fec2-blanco);
	border-radius: var(--fec2-radio);
	padding: 20px;
	border: 1px solid var(--fec2-borde);
}

.woocommerce #place_order {
	background: var(--fec2-verde-oscuro);
	color: #fff;
	border-radius: var(--fec2-radio);
	min-height: 48px;
	font-weight: 700;
	width: 100%;
}

.woocommerce #place_order:hover {
	background: var(--fec2-negro);
	color: #fff;
}

/* =========================================================
   MI CUENTA
   ========================================================= */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid var(--fec2-borde);
	border-radius: var(--fec2-radio);
	overflow: hidden;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid var(--fec2-borde);
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
	border-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 12px 16px;
	color: var(--fec2-texto);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--fec2-fondo-claro);
	color: var(--fec2-verde-oscuro);
	font-weight: 700;
}

.woocommerce-account .woocommerce-MyAccount-content {
	background: var(--fec2-blanco);
	border-radius: var(--fec2-radio);
	padding: 24px;
	border: 1px solid var(--fec2-borde);
}

/* =========================================================
   AVISOS DE WOOCOMMERCE (mensajes, errores, éxito)
   ========================================================= */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
.woocommerce-store-notice {
	border-radius: var(--fec2-radio);
	border-top: 3px solid var(--fec2-verde);
	background: var(--fec2-fondo-claro);
	color: var(--fec2-texto);
	padding: 14px 20px;
}

/* Único uso de rojo en todo el tema: aviso funcional de error de
   WooCommerce (stock, validación, pago rechazado, etc.). */
.woocommerce-error {
	border-top-color: var(--fec2-alerta);
	background: #fdecec;
}

.woocommerce-message .button,
.woocommerce-info .button {
	background: var(--fec2-verde-oscuro);
	color: #fff;
	border-radius: var(--fec2-radio-chico);
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 900px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(3, 1fr);
	}

	.woocommerce div.product {
		padding: 18px;
	}
}

@media (max-width: 782px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.woocommerce table.shop_table,
	.woocommerce-cart table.cart,
	.woocommerce-checkout table.shop_table {
		display: block;
		overflow-x: auto;
		max-width: 100%;
	}

	.woocommerce div.product form.cart .button {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
	}
}
