/**
 * Formulaire newsletter Contact Form 7 — règles STRUCTURELLES uniquement.
 * Le style visuel vient des classes Tailwind du thème, réinjectées sur les
 * contrôles CF7 par template-parts/blocks/newsletter.php : aucun style
 * n'est redéfini ici, on neutralise seulement les wrappers propres à CF7.
 */

/* Les wrappers CF7 sont inline par défaut : pleine largeur comme le design. */
.nl-cf7 .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

/* Variante à un seul champ (page Actualités) : le filet du bas sépare deux
   champs empilés. Seul dans sa carte, il dessinerait un trait le long du
   bord arrondi. « :only-of-type » vise le cas où le conteneur ne contient
   qu'un wrapper CF7 — aucune classe à ajouter dans le formulaire du BO. */
.nl-cf7 .wpcf7-form-control-wrap:only-of-type .wpcf7-email {
	border-bottom-width: 0;
}

/* Case de consentement : reproduit la structure label/flex du design. */
.nl-cf7 .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}

.nl-cf7 .wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
}

/* Texte du consentement. Exception à la règle ci-dessus : ce style ne peut
   PAS venir de classes Tailwind. Contact Form 7 analyse le contenu d'un tag
   englobant avec « [^[]*? » — une valeur arbitraire comme text-[16px] y
   introduirait un crochet, l'appariement [acceptance]…[/acceptance]
   échouerait et la balise fermante s'afficherait en clair sur le site.
   Valeurs reprises du formulaire statique : text-[16px] leading-[22.4px]
   text-dark. */
.nl-cf7 .wpcf7-acceptance .wpcf7-list-item-label {
	font-size: 16px;
	line-height: 22.4px;
	color: #050c0b;
}

/* Équivalent du comportement JS historique : le texte du sélecteur passe
   en foncé dès qu'un profil est choisi (l'option placeholder a value=""). */
.nl-cf7 select:valid {
	color: #151515;
}

/* Messages CF7 (éléments nouveaux, sans équivalent dans le design). */
.nl-cf7 .wpcf7-not-valid-tip {
	display: block;
	padding: 4px 20px 10px;
	background: #fff;
	font-size: 14px;
	color: #d63638;
}

.nl-cf7 .wpcf7-response-output {
	margin: 0;
	padding: 12px 16px;
	border: 1px solid currentColor;
	border-radius: 12px;
	font-size: 15px;
	line-height: 1.4;
	color: #151515;
}

.nl-cf7 .wpcf7 form.sent .wpcf7-response-output {
	color: #22803e;
}

.nl-cf7 .wpcf7 form.invalid .wpcf7-response-output,
.nl-cf7 .wpcf7 form.failed .wpcf7-response-output {
	color: #d63638;
}
