/* ============================================================================
   REGLES_STYLE.CSS
   Suit exactement l'ordre des sections du fichier regles.html.

   Sommaire :
     0. Variables globales (couleurs, thème clair/sombre) & réinitialisation
     1. Barre supérieure (topbar)
     2. Zone principale et carte de lecture
     3. En-tête : « L'essentiel » et sommaire
     4. Sections de texte, listes
     5. Listes « oui / non » et puces
     6. Valeurs à compléter / à confirmer (surlignage de relecture)
     7. Version mobile (responsive)
     8. Blocs de règles et encadré d'aide
   ============================================================================ */


/* ============================================================================
   0. VARIABLES GLOBALES & RÉINITIALISATION
   → Désormais défini une seule fois dans /assets/commun/commun_style.css (palette claire/sombre,
     base de la page, barre du haut) : ne pas le redéfinir ici.
   ============================================================================ */


h1, h2, h3 {
  font-family: 'Fraunces', Georgia, serif;
  color: var(--ink);
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font-family: inherit;
  cursor: pointer;
}

input {
  font-family: inherit;
}


/* ============================================================================
   1. BARRE SUPÉRIEURE (TOPBAR)
   → Désormais défini une seule fois dans /assets/commun/commun_style.css (palette claire/sombre,
     base de la page, barre du haut) : ne pas le redéfinir ici.
   ============================================================================ */


/* ============================================================================
   2. ZONE PRINCIPALE ET CARTE DE LECTURE
   ============================================================================ */
.legal-main {
  display: flex;
  justify-content: center;
  padding: 40px 16px 64px;
}

.legal-card {
  width: 100%;
  max-width: 780px;
  border: 1px solid var(--line);
  background: var(--paper-raised);
  border-radius: 4px;
  padding: 36px 40px 32px;
}


/* ============================================================================
   3. EN-TÊTE : « L'ESSENTIEL » ET SOMMAIRE
   ============================================================================ */
.legal-head {
  margin-bottom: 28px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line);
}
.legal-head h2 {
  font-size: calc(30px * var(--echelle-texte, 1));
  font-weight: 600;
  letter-spacing: -0.01em;
  margin-bottom: 6px;
}
.legal-intro {
  margin: 0 0 16px;
  color: var(--ink-soft);
}
.essentiel {
  margin: 0 0 20px;
  padding: 16px 20px;
  background: var(--leaf-tint);
  border: 1px solid var(--line);
  border-radius: 3px;
}
.essentiel h3 {
  font-size: calc(17px * var(--echelle-texte, 1));
  margin-bottom: 8px;
}
.legal-toc ol {
  margin: 0;
  padding: 0 0 0 20px;
  columns: 2;
  column-gap: 32px;
  font-size: calc(14px * var(--echelle-texte, 1));
}
.legal-toc li {
  margin-bottom: 4px;
}
.legal-toc a {
  color: var(--leaf);
}
.legal-toc a:hover {
  text-decoration: underline;
}


/* ============================================================================
   4. SECTIONS DE TEXTE, LISTES
   ============================================================================ */
.legal-section {
  margin-bottom: 26px;
  scroll-margin-top: 16px;
}
.legal-section h3 {
  font-size: calc(19px * var(--echelle-texte, 1));
  font-weight: 600;
  margin-bottom: 8px;
}
.legal-section p {
  margin: 0 0 10px;
  color: var(--ink-soft);
}
.legal-section a,
.legal-list a {
  color: var(--leaf);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.legal-list {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  color: var(--ink-soft);
}
.legal-list li {
  padding: 6px 0;
  border-bottom: 1px dashed var(--line);
}
.legal-label {
  color: var(--ink);
  font-weight: 500;
}
.legal-update {
  margin: 28px 0 0;
  font-size: calc(13px * var(--echelle-texte, 1));
  color: var(--muted);
}


/* ============================================================================
   5. LISTES « OUI / NON » ET PUCES
   ============================================================================ */
.liste-oui,
.liste-non,
.legal-bullets {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  color: var(--ink-soft);
}
.liste-oui li,
.liste-non li,
.legal-bullets li {
  position: relative;
  padding: 4px 0 4px 26px;
}
.liste-oui li::before,
.liste-non li::before,
.legal-bullets li::before {
  position: absolute;
  left: 4px;
  top: 4px;
  font-weight: 600;
}
.liste-oui li::before {
  content: "✓";
  color: var(--leaf);
}
.liste-non li::before {
  content: "✕";
  color: var(--clay);
}
.legal-bullets li::before {
  content: "•";
  color: var(--ink-soft);
}


/* ============================================================================
   6. VALEURS À COMPLÉTER / À CONFIRMER (surlignage de relecture)
   ============================================================================ */
.a-completer {
  background: var(--clay-tint);
  color: var(--clay);
  padding: 1px 5px;
  border-radius: 3px;
}


/* ============================================================================
   7. VERSION MOBILE (RESPONSIVE)
   ============================================================================ */
@media (max-width: 760px) {
  
  .legal-main {
    padding: 20px 12px 40px;
  }
  .legal-card {
    padding: 24px 18px 22px;
  }
  .legal-toc ol {
    columns: 1;
  }
}


/* ============================================================================
   8. BLOCS DE RÈGLES (contenus interdits : un bloc par thème)
   ============================================================================ */
.regle-bloc {
  margin: 0 0 12px;
  padding: 12px 16px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--clay);
  border-radius: 0 3px 3px 0;
  background: var(--paper);
}
.regle-bloc h4 {
  margin: 0 0 4px;
  font-family: 'IBM Plex Sans', -apple-system, sans-serif;
  font-size: calc(14.5px * var(--echelle-texte, 1));
  font-weight: 600;
  color: var(--ink);
}
.regle-bloc p {
  margin: 0;
  font-size: calc(14px * var(--echelle-texte, 1));
}
.regle-bloc-grave {
  background: var(--clay-tint);
}
.note-box {
  margin: 12px 0 0;
  padding: 10px 14px;
  border-left: 3px solid var(--leaf);
  background: var(--leaf-tint);
  border-radius: 0 3px 3px 0;
}
