/* ================================================================
   Xufa Product Selector — CSS del grid de gama (shortcodes de gama / latest)
   ================================================================ */

.xufa-gama-grid { width: 100%; }
.xufa-gama-grid .woocommerce { margin: 0; }

.xufa-gama-grid ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
	gap: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	float: none !important;
}
.xufa-gama-grid ul.products::before,
.xufa-gama-grid ul.products::after { display: none !important; }

.xufa-gama-grid ul.products li.product {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 1px 4px rgba(0,0,0,.07);
	transition: box-shadow .2s ease, transform .2s ease;
	display: flex !important;
	flex-direction: column !important;
}
.xufa-gama-grid ul.products li.product:hover {
	box-shadow: 0 4px 16px rgba(0,0,0,.12);
	transform: translateY(-2px);
}

/* ── Imagen ─────────────────────────────────────────────────── */
.xufa-gama-grid ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 !important;
	padding: 16px 16px 0 !important;
	text-decoration: none !important;
}
.xufa-gama-grid ul.products li.product img {
	width: 100% !important;
	height: 160px !important;
	object-fit: contain !important;
	border-radius: 8px !important;
	background: #f7f7f7 !important;
	margin: 0 0 12px !important;
}

/* ── Nombre ─────────────────────────────────────────────────── */
.xufa-gama-grid ul.products li.product .woocommerce-loop-product__title {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	line-height: 1.35 !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
	white-space: normal !important;
	word-break: break-word !important;
}

/* ── Precio ─────────────────────────────────────────────────── */
.xufa-gama-grid ul.products li.product .price {
	font-size: 15px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	display: block !important;
}
.xufa-gama-grid ul.products li.product .price ins {
	text-decoration: none !important;
	color: #1BA09C !important;
}

/* ── Botón ──────────────────────────────────────────────────── */
.xufa-gama-grid ul.products li.product .ver-producto-btn,
.xufa-gama-grid ul.products li.product a.button,
.xufa-gama-grid ul.products li.product button.button {
	display: block !important;
	width: calc(100% - 32px) !important;
	margin: auto 16px 16px !important;
	padding: 10px 12px !important;
	background: #1BA09C !important;
	color: #fff !important;
	border: none !important;
	border-radius: 8px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-align: center !important;
	text-decoration: none !important;
	cursor: pointer !important;
	transition: background .15s ease !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}
.xufa-gama-grid ul.products li.product .ver-producto-btn:hover,
.xufa-gama-grid ul.products li.product a.button:hover,
.xufa-gama-grid ul.products li.product button.button:hover {
	background: #158a87 !important;
	color: #fff !important;
}

/* ── Precio "Desde" ─────────────────────────────────────────── */
.xufa-gama-grid .xufa-desde {
	font-size: 11px !important;
	color: #888 !important;
	font-weight: 400 !important;
	display: block !important;
	margin-bottom: 2px !important;
	line-height: 1 !important;
}

/* ── Ocultar elementos no deseados ─────────────────────────── */
.xufa-gama-grid ul.products li.product .star-rating,
.xufa-gama-grid ul.products li.product .onsale { display: none !important; }

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 900px) {
	.xufa-gama-grid ul.products { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important; gap: 14px !important; }
	.xufa-gama-grid ul.products li.product img { height: 130px !important; }
}
@media (max-width: 480px) {
	.xufa-gama-grid ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
	.xufa-gama-grid ul.products li.product img { height: 110px !important; }
}
