/* Complements du theme pour le noyau 1.1.0 : attribut hidden respecte, composants d'articles (lms-c-*, feuille composants.css du noyau)
   habilles comme les encadres, chiffres, tableaux et appels de l'ancien site (sc-callout, sc-res-stat, sc-sectors-table, sc-inline-cta). */
[hidden] { display: none !important; }

:root {
  --lms-c-encadre-bg: rgba(12,112,153,.07); --lms-c-encadre-bord: var(--green); --lms-c-note: var(--green); --lms-c-attention: #ef4444; --lms-c-astuce: #F4BF4F;
  --lms-c-texte: var(--dark); --lms-c-doux: var(--text-muted); --lms-c-ligne: var(--border); --lms-c-accent: var(--green); --lms-c-accent-texte: #fff;
  --lms-c-rayon: var(--radius-sm); --lms-c-espace: 24px; --lms-bg: var(--white);
}

/* Encadres : sc-callout (bleu), sc-callout-warn (rouge), sc-callout-orange */
.sc-article .lms-c-encadre { background: rgba(12,112,153,.07); border-inline-start: 3px solid var(--green); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; padding: 18px 22px; margin: 24px 0; }
.sc-article .lms-c-encadre .lms-c-titre { font-family: 'Geist', sans-serif; font-size: 13px; font-weight: 600; color: var(--green-dark); letter-spacing: .05em; text-transform: uppercase; margin: 0 0 6px; line-height: 1.62; }
.sc-article .lms-c-encadre p:not(.lms-c-titre) { margin: 0 0 8px; font-size: 15px; }
.sc-article .lms-c-encadre p:not(.lms-c-titre):last-child { margin-bottom: 0; }
.sc-article .lms-c-encadre--attention { background: rgba(239,68,68,.06); border-inline-start: 3px solid #ef4444; }
.sc-article .lms-c-encadre--attention .lms-c-titre { color: #dc2626; }
.sc-article .lms-c-encadre--astuce { background: rgba(244,191,79,.07); border-inline-start: 3px solid #F4BF4F; }
.sc-article .lms-c-encadre--astuce .lms-c-titre { color: #c9960a; }
.sc-article .lms-c-encadre .lms-c-titre::before { content: none; }

/* Chiffres cles : sc-res-stats / sc-res-stat (cartes sombres) */
.sc-article .lms-c-chiffres { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin: 28px 0; padding: 0; list-style: none; }
.sc-article .lms-c-chiffres > li::before, .sc-article .lms-c-chiffre::before { content: none; }
.sc-article .lms-c-chiffre { font-size: 17px; line-height: 1.62; display: block; background: var(--dark); border: 0; border-radius: var(--radius-md); padding: 24px 20px; text-align: center; margin: 0; max-inline-size: none; }
.sc-article .lms-c-chiffres .lms-c-chiffre { padding: 24px 20px; }
.sc-article .lms-c-chiffre-valeur { font-family: 'Geist', sans-serif; font-size: 28px; font-weight: 600; color: var(--green); margin-bottom: 4px; line-height: 1.62; }
.sc-article .lms-c-chiffre-libelle { font-size: 12px; color: rgba(255,255,255,.5); line-height: 1.4; margin: 0; }
@media (max-width: 540px) { .sc-article .lms-c-chiffres { grid-template-columns: 1fr; } }

/* Etapes et chronologie : pastilles et ligne aux couleurs du site */
.sc-article .lms-c-etapes ol > li, .sc-article .lms-c-chronologie li { padding-top: 0; padding-bottom: 0; }
.sc-article .lms-c-etapes ol > li { font-size: 16px; line-height: 1.7; margin-bottom: 14px; }
.sc-article .lms-c-etapes ol > li::before { font-family: 'Geist', sans-serif; font-size: 14px; background: var(--green); color: #fff; }
.sc-article .lms-c-etapes ol > li::marker { content: none; }
.sc-article .lms-c-chronologie ul, .sc-article .lms-c-chronologie ol { border-inline-start: 2px solid var(--border); margin-inline-start: 11px; }
.sc-article .lms-c-chronologie li { padding: 0 0 28px 28px; font-size: 16px; line-height: 1.62; }
.sc-article .lms-c-chronologie li::before { top: 8px; left: -9px; width: 16px; height: 16px; border: 2px solid var(--white); background: var(--green); }
.sc-article .lms-c-chronologie li > strong:first-child { font-family: 'Geist', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--green-dark); margin-bottom: 2px; }

/* Colonnes : cartes (sc-scope-card, sc-sector-card) */
.sc-article .lms-c-colonnes { margin: 24px 0; }
.sc-article .lms-c-colonne { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-md); padding: 20px 22px; box-shadow: var(--shadow-sm); }
.sc-article .lms-c-colonne p, .sc-article .lms-c-colonne li { font-size: 14px; line-height: 1.6; }
.sc-article .lms-c-colonne p { margin: 0 0 8px; }
.sc-article .lms-c-colonne > :last-child { margin-bottom: 0; }

/* Tableaux : sc-sectors-table (en-tete sombre) */
.sc-article .lms-c-tableau { margin: 24px 0; border: 0; border-radius: var(--radius-md); box-shadow: var(--shadow-sm); background: var(--white); }
.sc-article .lms-c-tableau table { width: 100%; min-width: 30rem; border-collapse: collapse; margin: 0; box-shadow: none; border-radius: 0; font-size: 14px; }
.sc-article .lms-c-tableau caption { padding: 12px 18px; font-family: 'Geist', sans-serif; font-weight: 600; font-size: 14px; color: var(--dark); background: var(--white); }
.sc-article .lms-c-tableau thead th { background: var(--dark); color: rgba(255,255,255,.7); font-family: 'Geist', sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; padding: 14px 18px; text-align: left; border: 0; }
.sc-article .lms-c-tableau td { padding: 13px 18px; font-size: 14px; color: var(--text); border-bottom: 1px solid var(--border); background: var(--white); vertical-align: top; }
.sc-article .lms-c-tableau tbody tr:nth-child(even) { background: transparent; }
.sc-article .lms-c-tableau tbody tr:last-child td { border-bottom: 0; }

/* Pastilles : pill-red, pill-orange, pill-green (bleu du site) */
.sc-article .lms-c-pastille { display: inline-block; padding: 2px 10px; border-radius: 100px; border: 0; font-size: 11px; font-weight: 600; line-height: inherit; }
.sc-article .lms-c-pastille--rouge { background: rgba(239,68,68,.1); color: #dc2626; }
.sc-article .lms-c-pastille--orange { background: rgba(244,191,79,.15); color: #c9960a; }
.sc-article .lms-c-pastille--vert, .sc-article .lms-c-pastille--bleu { background: rgba(12,112,153,.12); color: var(--green-dark); }
.sc-article .lms-c-pastille--gris { background: rgba(0,0,0,.06); color: var(--text-muted); }

/* Appel : sc-inline-cta (bandeau sombre, texte a gauche et bouton a droite) */
.sc-article .lms-c-appel { background: linear-gradient(135deg, var(--dark) 0%, var(--dark-2) 100%); border: 0; border-radius: var(--radius-lg); padding: 40px 36px; margin: 48px 0;
  display: grid; grid-template-columns: 1fr auto; column-gap: 32px; align-items: center; }
.sc-article .lms-c-appel > * { grid-column: 1; }
.sc-article .lms-c-appel .lms-c-titre { font-family: 'Geist', sans-serif; font-size: 20px; font-weight: 600; color: #fff; margin: 32px 0 8px; line-height: 1.08; }
.sc-article .lms-c-appel p { font-size: 14px; color: rgba(255,255,255,.55); margin: 0; line-height: 1.75; }
.sc-article .lms-c-appel > :last-child:not(:first-child) { grid-column: 2; grid-row: 1 / span 2; margin: 0; }
.sc-article .lms-c-appel p:last-child > a:only-child { display: flex; background: var(--green); color: #fff; border-radius: 100px; padding: 14px 26px; text-decoration: none; font-weight: 600; font-size: 15px; line-height: 1.62; }
@media (max-width: 640px) { .sc-article .lms-c-appel { grid-template-columns: 1fr; row-gap: 16px; } .sc-article .lms-c-appel > :last-child:not(:first-child) { grid-column: 1; grid-row: auto; } }

/* Citation */
.sc-article .lms-c-citation { border-inline-start: 3px solid var(--green); margin: 24px 0; }
.sc-article .lms-c-citation blockquote { font-size: 18px; color: var(--dark); }

/* Mobile : la colonne de l'article se resserre au lieu de s'elargir au contenu le plus large (tableaux, formulaire) ; les tableaux defilent dans leur cadre */
.sc-res-layout > * { min-width: 0; }
.sc-article { overflow-wrap: break-word; }
.sc-article .lms-c-tableau { max-width: 100%; }
.sc-article .sc-guide { min-width: 0; }
.sc-article .sc-guide > * { min-width: 0; }
