/* ------------------------------------------------------------------
   extra.css — composants ajoutés pour la mise en conformité
   (transparence publicitaire, RGPD, illustrations, tableaux, FAQ).
   Aucune dépendance externe : aucune police, image ou script tiers.
   ------------------------------------------------------------------ */

/* Polices système : aucune requête vers un serveur tiers (Google Fonts). */
:root{
  --f-head: 'Segoe UI', Roboto, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
  --f-body: 'Segoe UI', Roboto, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
}

/* --- Accessibilité --------------------------------------------------- */
.wb7f0ca-skip{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--c-brand);color:#151515;padding:10px 18px;border-radius:0 0 10px 0;font-weight:700;
}
.wb7f0ca-skip:focus{left:0;text-decoration:none}
a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:3px solid var(--c-brand);outline-offset:3px;border-radius:4px;
}

/* --- Bandeau de transparence en tête de page ------------------------- */
.xd-topbar{
  background:#2b1a12;border-bottom:1px solid #4a2c1c;color:#f0d9c9;
  font-size:.82rem;line-height:1.5;padding:9px clamp(14px,3vw,40px);text-align:center;
}
.xd-topbar strong{color:#ffb98f}

/* --- Encadré de divulgation (au-dessus de la ligne de flottaison) ---- */
.xd-disclosure{
  border:1px solid #573620;background:#251811;
  border-radius:var(--radius);padding:clamp(16px,2.4vw,24px);
  display:flex;gap:14px;align-items:flex-start;
}
.xd-disclosure .xd-ico{
  flex:0 0 auto;width:34px;height:34px;border-radius:9px;background:#ff6b35;color:#1a1a1a;
  display:grid;place-items:center;font-weight:800;font-size:1.05rem;
}
.xd-disclosure h2,.xd-disclosure p{margin:0}
.xd-disclosure h2{
  font-family:var(--f-head);font-size:1rem;font-weight:700;color:#ffc9a8;
  letter-spacing:.02em;margin-bottom:.35em;
}
.xd-disclosure p{font-size:.93rem;line-height:1.6;color:#e2cfc2}
.xd-disclosure p + p{margin-top:.5em}
.xd-disclosure a{color:#ffb98f}

/* --- Étiquette « lien partenaire » ----------------------------------- */
.xd-plabel{
  display:inline-block;margin-left:.55em;padding:.16em .55em;border-radius:999px;
  background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.35);
  font-size:.66em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  vertical-align:middle;white-space:nowrap;
}
.wb7f0ca-btn-outline .xd-plabel{background:rgba(255,107,53,.12);border-color:rgba(255,107,53,.5);color:var(--c-brand)}

/* Mention sous chaque bouton d'affiliation */
.xd-ctanote{
  margin:.7em 0 0;font-size:.8rem;line-height:1.5;color:var(--c-muted);text-align:center;
}
.xd-ctanote b{color:#ffb98f;font-weight:600}

/* Lien partenaire en ligne dans le texte */
.xd-plink::after{
  content:"lien partenaire";margin-left:.4em;padding:.1em .45em;border-radius:999px;
  background:rgba(255,107,53,.14);border:1px solid rgba(255,107,53,.42);color:var(--c-brand);
  font-size:.72em;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;
}

/* --- Figures / illustrations ----------------------------------------- */
.xd-figure{margin:0}
.xd-figure img{
  width:100%;height:auto;display:block;border-radius:14px;
  border:1px solid var(--c-line);background:var(--c-soft);
}
.xd-figure figcaption{
  margin-top:.65em;font-size:.84rem;line-height:1.55;color:var(--c-muted);
}
.xd-figure figcaption b{color:#cfcfcf;font-weight:600}

/* --- Encadré d'information ------------------------------------------- */
.xd-note{
  border-left:3px solid var(--c-brand);background:var(--c-soft);
  border-radius:0 12px 12px 0;padding:clamp(14px,2vw,20px) clamp(16px,2.2vw,22px);
}
.xd-note h3{
  margin:0 0 .4em;font-family:var(--f-head);font-size:1.02rem;font-weight:700;color:#f0f0f0;
}
.xd-note p{margin:0;font-size:.94rem;line-height:1.65;color:var(--c-muted)}
.xd-note p + p{margin-top:.6em}

/* --- Tableau de données ---------------------------------------------- */
.xd-tablewrap{overflow-x:auto;border:1px solid var(--c-line);border-radius:12px}
.xd-table{border-collapse:collapse;width:100%;min-width:520px;font-size:.92rem}
.xd-table caption{
  caption-side:top;text-align:left;padding:14px 16px 10px;
  font-size:.84rem;color:var(--c-muted);
}
.xd-table th,.xd-table td{padding:11px 16px;text-align:left;border-top:1px solid var(--c-line);vertical-align:top}
.xd-table thead th{
  background:var(--c-soft);border-top:0;font-family:var(--f-head);font-size:.78rem;
  letter-spacing:.07em;text-transform:uppercase;color:var(--c-muted);white-space:nowrap;
}
.xd-table tbody th{font-weight:700;color:#f0f0f0;white-space:nowrap}
.xd-table td{color:var(--c-muted)}
.xd-table tbody tr:nth-child(even){background:rgba(255,255,255,.018)}

/* --- FAQ (accordéon natif, sans JavaScript) -------------------------- */
.xd-faq{display:grid;gap:10px}
.xd-faq details{
  border:1px solid var(--c-line);border-radius:12px;background:var(--c-soft);
  padding:14px 18px;
}
.xd-faq summary{
  cursor:pointer;list-style:none;font-family:var(--f-head);font-weight:700;color:#f0f0f0;
  position:relative;padding-right:1.8em;
}
.xd-faq summary::-webkit-details-marker{display:none}
.xd-faq summary::after{
  content:"+";position:absolute;right:0;top:-.1em;font-size:1.3em;color:var(--c-brand);line-height:1;
}
.xd-faq details[open] summary::after{content:"\2013"}
.xd-faq details p{margin:.7em 0 0;font-size:.94rem;line-height:1.65;color:var(--c-muted)}

/* --- Bloc auteur / signature éditoriale ------------------------------ */
.xd-byline{
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;
  border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);
  padding:14px 0;font-size:.86rem;color:var(--c-muted);
}
.xd-byline .xd-avatar{
  width:42px;height:42px;border-radius:50%;background:var(--c-brand);color:#151515;
  display:grid;place-items:center;font-weight:800;font-family:var(--f-head);flex:0 0 auto;
}
.xd-byline b{color:#e8e8e8;font-weight:600}
.xd-byline .xd-sep{color:var(--c-line)}

/* --- Fiche identité de l'éditeur (mentions légales) ------------------ */
.xd-idcard{
  border:1px solid var(--c-line);border-radius:14px;background:var(--c-soft);overflow:hidden;
}
.xd-idcard dl{margin:0;display:grid;grid-template-columns:minmax(150px,34%) 1fr}
.xd-idcard dt,.xd-idcard dd{margin:0;padding:12px 18px;border-top:1px solid var(--c-line);font-size:.93rem}
.xd-idcard dt{
  font-family:var(--f-head);font-weight:600;color:var(--c-muted);
  background:rgba(255,255,255,.02);
}
.xd-idcard dd{color:#e8e8e8}
.xd-idcard dt:first-of-type,.xd-idcard dl>dt:first-child,.xd-idcard dl>dd:nth-child(2){border-top:0}
@media (max-width:560px){
  .xd-idcard dl{grid-template-columns:1fr}
  .xd-idcard dd{padding-top:0;border-top:0}
}

/* --- Sommaire / navigation de pied ----------------------------------- */
.xd-footcols{
  display:grid;gap:22px clamp(20px,4vw,56px);text-align:left;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  max-width:var(--maxw,1180px);margin:0 auto 1.4em;
}
.xd-footcols h2{
  margin:0 0 .6em;font-family:var(--f-head);font-size:.76rem;font-weight:700;
  letter-spacing:.11em;text-transform:uppercase;color:#cfcfcf;
}
.xd-footcols ul{list-style:none;margin:0;padding:0;display:grid;gap:.42em}
.xd-footcols a{color:var(--c-muted)}
.xd-footcols a:hover{color:var(--c-brand)}
.xd-footcols p{margin:0 0 .5em;line-height:1.6}

/* --- Liens de section ------------------------------------------------- */
.xd-sources{list-style:none;margin:0;padding:0;display:grid;gap:.5em;font-size:.9rem}
.xd-sources li{padding-left:1.2em;position:relative;color:var(--c-muted)}
.xd-sources li::before{content:"\2197";position:absolute;left:0;color:var(--c-brand)}

/* --- Page de redirection --------------------------------------------- */
.xd-plain{max-width:640px;margin:0 auto;padding:clamp(40px,8vw,90px) 24px;text-align:center}

/* --- Impression ------------------------------------------------------- */
@media print{
  .wb7f0ca-rail,.xd-topbar,.wb7f0ca-nav{display:none}
  .wb7f0ca-body{background:#fff;color:#000}
}

/* --- Rythme vertical des blocs ajoutés -------------------------------- */
.wb7f0ca-heading.xd-h2{
  --mt:calc(var(--scale) * clamp(30px,4.2vw,52px));
  --mb:calc(var(--scale) * clamp(4px,0.6vw,8px));
}
.wb7f0ca-heading.xd-h3{
  --mt:calc(var(--scale) * clamp(18px,2.6vw,30px));
  --mb:calc(var(--scale) * clamp(4px,0.6vw,8px));
  --fs:calc(var(--scale) * clamp(1.12rem,1.02rem + 0.5vw,1.35rem));
}
.wb7f0ca-b.xd-tight{--mb:calc(var(--scale) * clamp(8px,1.2vw,14px))}
.wb7f0ca-b.xd-gap{--mb:calc(var(--scale) * clamp(28px,4vw,48px))}
.wb7f0ca-b.xd-gap-t{--mt:calc(var(--scale) * clamp(28px,4vw,48px))}
.wb7f0ca-b.xd-small{
  --fs:calc(var(--scale) * clamp(0.86rem,0.82rem + 0.22vw,0.94rem));
  --fg:var(--c-muted);
}
