/* =========================================================
   Vandeto Ad Cards — badge « vedette » moderne + retrait
   du libellé de prix vide. S'applique sur toutes les cartes.
   ========================================================= */

/* Masque le badge étoile natif AdForest (l'image PNG). */
img.featured-tag {
	display: none !important;
}

/* Masque uniquement le texte de prix, jamais le bouton favori. */
.vac-hide-price .price-box > strong {
	display: none !important;
}

/* Le parent de l'ancien badge devient le contexte de position. */
.vac-host {
	position: relative;
}

/* --- Badge --- */
.vac-badge {
	position: absolute;
	top: 8px;
	z-index: 6;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	line-height: 1;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.2px;
	color: var(--vac-tc, #ffffff);
	background: linear-gradient(135deg, var(--vac-c1, #ff1e2d), var(--vac-c2, #c81824));
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
	overflow: hidden;
	pointer-events: none;
	-webkit-font-smoothing: antialiased;
}

.vac-badge i {
	font-size: 13px;
	line-height: 1;
}

.vac-badge-txt {
	white-space: nowrap;
}

/* Position */
.vac-pos-left {
	left: 8px;
}
.vac-pos-right {
	right: 8px;
}

/* Formes */
.vac-shape-pill_text {
	padding: 5px 11px;
	border-radius: 999px;
}
.vac-shape-chip_icon {
	width: 30px;
	height: 30px;
	padding: 0;
	justify-content: center;
	border-radius: 10px;
}
.vac-shape-chip_icon .vac-badge-txt {
	display: none;
}

/* --- Animations (GPU : transform / opacity) --- */

/* Reflet qui balaie le badge. */
.vac-anim-shine::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, transparent 35%, rgba(255, 255, 255, 0.55) 50%, transparent 65%);
	transform: translateX(-130%);
	pointer-events: none;
	animation: vac-shine 2.8s ease-in-out infinite;
}
@keyframes vac-shine {
	0% {
		transform: translateX(-130%);
	}
	55%,
	100% {
		transform: translateX(130%);
	}
}

/* Pulsation douce. */
.vac-anim-pulse {
	animation: vac-pulse 2s ease-in-out infinite;
	transform-origin: center;
}
@keyframes vac-pulse {
	0%,
	100% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.09);
	}
}

/* Respecte la préférence système de réduction des animations. */
@media (prefers-reduced-motion: reduce) {
	.vac-badge {
		animation: none !important;
	}
	.vac-badge::after {
		animation: none !important;
	}
}

/* =========================================================
   Fermeture propre du bas de carte quand le prix est masqué.
   Retire le trait (bordure) et l'espace vide laissés par
   l'ancienne price-box, sans jamais toucher au bouton favori.
   ========================================================= */
.vac-hide-price .price-box {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	min-height: 0 !important;
}

/* Sécurité : le cœur favori reste visible et cliquable même si
   la box est effondrée (il n'est pas masqué, seul le prix l'est). */
.vac-hide-price .price-box .favourite {
	margin: 0 !important;
}

/* =========================================================
   Cartes « modernes » des grilles (catégorie / recherche /
   auteur) : template adf-card-modern.
   ========================================================= */

/* Masque le badge featured stylé natif (remplacé par le badge VAC). */
.adf-badge--featured {
	display: none !important;
}

/* Masque le libellé de prix vide dans le footer de la carte moderne. */
.vac-hide-price .adf-card-modern__price > strong {
	display: none !important;
}

/* =========================================================
   Ratio uniforme des images de grille.
   L'aspect-ratio exact est injecté en inline par PHP ;
   ici on force le remplissage plein sans déformation.
   ========================================================= */
.vac-ratio .adf-card-modern__media {
	position: relative;
	overflow: hidden;
}
.vac-ratio .adf-card-modern__media-link {
	display: block;
	width: 100%;
	height: 100%;
}
.vac-ratio .adf-card-modern__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* =========================================================
   Longueur des titres de grille : troncature « … » sur N
   lignes (le nombre de lignes est injecté en inline par PHP).
   ========================================================= */
.vac-clamp .adf-card-modern__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
