/* Card de producto del catálogo: mismo diseño que los destacados (.bento-card). HTML en App\Support\ProductCard. */
.cards .pcard {
	position:relative;
	width:100%;
	height:100%;
	min-width:0;
	display:flex;
	flex-direction:column;
	background:#FFFFFF;
	border:1px solid #E2E8F0;
	border-radius:12px;
	box-shadow:0 10px 24px rgba(8,18,35,.06);
	overflow:hidden;
	text-align:left;
	transition:border-color .15s, box-shadow .15s;
}
.cards .pcard:hover {
	border-color:#CBD5E1;
	box-shadow:0 14px 30px rgba(8,18,35,.10);
}
.cards .pcard *,
.cards .pcard *:before,
.cards .pcard *:after { box-sizing:border-box; }

.cards .pcard-image {
	position:relative;
	display:block;
	width:100%;
	aspect-ratio:1 / 1;
	flex:0 0 auto;
	overflow:hidden;
	background:#F8FAFC;
}
.cards .pcard-image img {
	position:absolute;
	inset:0;
	width:100%!important;
	height:100%!important;
	margin:0!important;
	padding:0!important;
	object-fit:cover!important;
	display:block;
	border-radius:0!important;
}
.cards .pcard-soldout .pcard-image img { filter:grayscale(1); opacity:.75; }

.cards .pcard-badge-options,
.cards .pcard-badge-soldout,
.cards .pcard-badge-discount {
	position:absolute;
	z-index:2;
	font-size:10px;
	font-weight:800;
	letter-spacing:.02em;
	line-height:1.4;
	padding:3px 8px;
	border-radius:3px;
}
.cards .pcard-badge-options {
	top:10px;
	left:10px;
	background:#070A12;
	color:#FFD200;
	display:inline-flex;
	align-items:center;
	gap:4px;
}
.cards .pcard-badge-soldout {
	top:10px;
	left:10px;
	background:#475569;
	color:#FFFFFF;
	text-transform:uppercase;
}
.cards .pcard-badge-discount {
	bottom:10px;
	right:10px;
	background:#FFFFFF;
	border:.5px solid #DC2626;
	color:#DC2626;
}

.cards .pcard-body {
	flex:1 1 auto;
	display:flex;
	flex-direction:column;
	padding:12px 14px;
	min-width:0;
}
.cards .pcard-category {
	font-size:10px;
	color:#64748B;
	margin-bottom:4px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.cards .pcard-title {
	margin:0 0 6px;
	font-size:13px;
	font-weight:600;
	color:#0F172A!important;
	line-height:1.3;
	text-decoration:none!important;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
}
.cards .pcard-title:hover { color:#143D8F!important; }

/* Precio y botón siempre al pie: alinea los botones de toda la fila. */
.cards .pcard-footer {
	margin-top:auto;
	display:grid;
	grid-template-columns:minmax(0,1fr) 48px;
	align-items:end;
	column-gap:10px;
}
.cards .pcard-price-row {
	display:flex;
	align-items:baseline;
	flex-wrap:wrap;
	gap:2px 6px;
	min-width:0;
}
.cards .pcard-price {
	font-size:20px;
	font-weight:700;
	color:#143D8F;
	white-space:nowrap;
}
.cards .pcard-price-before {
	font-size:11px;
	color:#94A3B8;
	text-decoration:line-through;
	white-space:nowrap;
}
.cards .pcard-uom {
	flex-basis:100%;
	font-size:10px;
	color:#64748B;
}

.cards .pcard-btn {
	width:48px;
	min-width:48px;
	height:42px;
	margin:0;
	padding:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	background:#FFD200;
	border:.5px solid #FFD200;
	border-radius:8px;
	color:#070A12!important;
	font-size:16px;
	line-height:1;
	text-decoration:none!important;
	cursor:pointer;
	transition:filter .15s, transform .15s;
}
.cards .pcard-btn:hover { filter:brightness(.95); }
.cards .pcard-btn:active { transform:translateY(1px); }
.cards .pcard-btn:focus-visible { outline:2px solid #143D8F; outline-offset:2px; }
.cards .pcard-btn-wa { background:#FFFFFF; border-color:#86EFAC; color:#16A34A!important; }
.cards .pcard-btn-off { background:#E2E8F0; border-color:#E2E8F0; color:#64748B!important; }

@media(max-width:767px) {
	.cards .pcard-body { padding:9px 10px 10px; }
	.cards .pcard-title { font-size:12px; }
	.cards .pcard-footer { grid-template-columns:minmax(0,1fr) 40px; column-gap:6px; }
	.cards .pcard-price { font-size:16px; }
	.cards .pcard-btn { width:40px; min-width:40px; height:38px; font-size:15px; }
}
