/**
 * Base typographique commune — L'Africaine Elementor Addons.
 *
 * Système de polices appliqué à TOUS les widgets du plugin (préfixe de widget
 * Elementor « elementor-widget-lafricaine-… ») :
 *   • Headline (titres) = DM Serif Display  → déclaré dans chaque CSS de widget
 *     et dans les contrôles typographie ; ces règles l'emportent ici.
 *   • Body (corps)      = Work Sans         → défini ci-dessous, à faible
 *     spécificité (:where) pour rester surchargeable dans Elementor.
 *   • Label (sur-titres, tags, badges, méta, rôles…) = Archivo Narrow.
 *
 * Les 3 familles sont chargées via Google Fonts (voir class-plugin.php).
 */

/* --------------------------- Corps : Work Sans --------------------------- */
/* `:where()` = spécificité nulle : n'importe quelle règle de widget (titre,
   label, ou choix de l'utilisateur dans Elementor) reprend le dessus. */
:where( [class*="elementor-widget-lafricaine-"] ) {
	font-family: "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* --------------------------- État vide --------------------------- */
/* Message affiché par les widgets de liste quand la requête ne ramène rien.
   Vit ici plutôt que dans la feuille d'un widget : une quinzaine de widgets
   l'utilisent, et laf-base.css est la seule chargée sur toutes les pages. */
.laf-empty {
	padding: 48px 24px;
	border: 1px dashed #E7E3D8;
	background-color: #FBF9F4;
	text-align: center;
}

.laf-empty__title {
	margin: 0;
	color: #384A30;
	font-family: "DM Serif Display", Georgia, "Times New Roman", serif;
	font-size: 26px;
	line-height: 1.25;
}

/* Marge posée seulement s'il y a bien un texte en dessous : le titre est
   souvent seul. */
.laf-empty__title + .laf-empty__text {
	margin-top: 8px;
}

.laf-empty__text {
	max-width: 52ch;
	margin: 0 auto;
	color: #6B6F62;
	font-size: 16px;
	line-height: 1.6;
}

.laf-empty[style*="left"] .laf-empty__text {
	margin-inline: 0;
}

/* Ligne de diagnostic, visible uniquement dans l'éditeur Elementor. */
.laf-empty__hint {
	margin: 16px 0 0;
	color: #B02926;
	font-family: "Archivo Narrow", "Work Sans", sans-serif;
	font-size: 12px;
	letter-spacing: 0.5px;
}

@media (max-width: 767px) {
	.laf-empty {
		padding: 32px 16px;
	}

	.laf-empty__title {
		font-size: 21px;
	}

	.laf-empty__text {
		font-size: 15px;
	}
}

/* --------------------------- Bouton WhatsApp --------------------------- */
/* Composant partagé du shortcode [laf_whatsapp]. Il vit ici, et non dans la
   feuille d'un widget, parce que laf-base.css est la seule chargée sur toutes
   les pages : un shortcode peut apparaître n'importe où, y compris hors d'un
   widget du plugin. */
.laf-wa--button {
	display: inline-block;
	padding: 14px 28px;
	background-color: #384A30;
	color: #FFFFFF;
	font-family: "Archivo Narrow", "Work Sans", sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background-color 0.25s ease;
}

.laf-wa--button:hover,
.laf-wa--button:focus-visible {
	background-color: #B02926;
	color: #FFFFFF;
}

.laf-wa--link {
	color: #384A30;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Visible seulement pour un administrateur, quand aucun numéro n'est réglé. */
.laf-wa--unset {
	display: inline-block;
	padding: 10px 14px;
	border: 1px dashed #B02926;
	background-color: #FBF9F4;
	color: #B02926;
	font-size: 13px;
}

/* --------------------------- Labels : Archivo Narrow --------------------------- */
/* Sur-titres, badges, tags, étiquettes, catégories-kicker, durées, méta,
   rôles, liens « voir tout », filtres, compteurs. Liste explicite (issue de
   l'inventaire des classes) pour éviter toute collision de sous-chaîne.
   Spécificité (0,1,0) : surchargeable par les contrôles typographie Elementor
   du widget, mais l'emporte sur la police de corps ci-dessus. */
.laf-ad__free-cta,
.laf-ad__free-eyebrow,
.laf-ad__label,
.laf-arch__eyebrow,
.laf-arch__feature-meta,
.laf-carousel__badge,
.laf-cat__cat,
.laf-cat__explore,
.laf-chero__badge,
.laf-chero__eyebrow,
.laf-cmosaic__eyebrow,
.laf-csound__card-eyebrow,
.laf-csound__eyebrow,
.laf-dossier__item-eyebrow,
.laf-edito__label,
.laf-ehero__badge,
.laf-eopps__card-tag,
.laf-eopps__seeall,
.laf-eopps__tag,
.laf-garden__eyebrow,
.laf-garden__feature-eyebrow,
.laf-garden__item-label,
.laf-hero__badge,
.laf-lfamily__eyebrow,
.laf-lfamily__quote-meta,
.laf-lfamily__quote-role,
.laf-lfood__card-cat,
.laf-lfood__eyebrow,
.laf-lfood__feature-cat,
.laf-lfood__seeall,
.laf-lhero__badge,
.laf-lwell__dossier-eyebrow,
.laf-lwell__word-eyebrow,
.laf-mag__badge,
.laf-mag__item-cat,
.laf-meta__prefix,
.laf-opps__update,
.laf-ozi__eyebrow,
.laf-ozi__quote-eyebrow,
.laf-ozi__update,
.laf-pher__quote-eyebrow,
.laf-phero__eyebrow,
.laf-pills__count,
.laf-podcard__cat,
.laf-podcard__dur,
.laf-podcard__series,
.laf-podcontrib__role,
.laf-podcredits__role,
.laf-podcta__eyebrow,
.laf-podeps__label,
.laf-podgrid__filter,
.laf-podhero__eyebrow,
.laf-podplayer__eyebrow,
.laf-podplayer__meta,
.laf-podseries__eyebrow,
.laf-podsyn__chap-label,
.laf-podsyn__tag,
.laf-portraits__role,
.laf-pproc__eyebrow,
.laf-sercard__cat,
.laf-sercard__dur,
.laf-serhero__eyebrow,
.laf-shero__eyebrow,
.laf-spop__cat,
.laf-sres__badge,
.laf-sres__card-cat,
.laf-sres__feat-meta,
.laf-theme__eyebrow,
.laf-word__label {
	font-family: "Archivo Narrow", "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
