/* Le socle : ce que TOUTES les pages partagent.
 *
 * Ce fichier ne contient que le tronc commun (couleurs, typographie, en-tête,
 * pied de page, texte courant). Ce qui n'apparaît que sur l'accueil (le héros,
 * l'écran de démonstration, la grille de tarif) reste dans l'accueil : le
 * mettre ici ferait télécharger à chaque page d'un guide des règles qu'elle
 * n'utilise jamais. */

:root{
  --ground:#fbfbfa; --panel:#fff; --panel-2:#f3f3f1; --line:#e4e4e0; --line-2:#d2d2cc;
  --ink:#16181c; --ink-2:#4d5259; --ink-3:#7b8189; --ink-4:#a5aab1;
  --amber:#b5822b; --amber-soft:#fdf4e4; --nuit:#1e2126;
  --live:#1d7a55; --mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
}
/* Trois états, pas deux : « système » ne pose aucun attribut, et c'est le cas
   le plus courant. Sans cette garde, un choix explicite « clair » perdrait
   contre un système en sombre. */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#15171b; --panel:#1d2025; --panel-2:#24282e; --line:#2c3036; --line-2:#3a3f47;
    --ink:#e8eaee; --ink-2:#a8aeb6; --ink-3:#7b8189; --ink-4:#5a6067;
    --amber:#e8b663; --amber-soft:#2a2216; --nuit:#0f1114; --live:#7fd1a6;
  }
}
:root[data-theme="dark"]{
  --ground:#15171b; --panel:#1d2025; --panel-2:#24282e; --line:#2c3036; --line-2:#3a3f47;
  --ink:#e8eaee; --ink-2:#a8aeb6; --ink-3:#7b8189; --ink-4:#5a6067;
  --amber:#e8b663; --amber-soft:#2a2216; --nuit:#0f1114; --live:#7fd1a6;
}

*{box-sizing:border-box}
body{margin:0;background:var(--ground);color:var(--ink);
  font-family:"Source Sans 3",-apple-system,system-ui,sans-serif;font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:"Bricolage Grotesque",sans-serif;margin:0;text-wrap:balance}
a{color:inherit}
img{max-width:100%}
.mono,code{font-family:var(--mono);font-size:.88em}
.wrap{max-width:1000px;margin:0 auto;padding-inline:22px}

nav{display:flex;align-items:center;gap:14px;padding-block:22px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:9px;font-family:"Bricolage Grotesque",sans-serif;
  font-weight:800;font-size:19px;letter-spacing:-.02em;text-decoration:none}
.voyant{width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 10px var(--amber)}
nav .sp{flex:1}
nav a{color:var(--ink-2);text-decoration:none;font-size:15px}
nav a:hover{color:var(--ink)}
/* L'entrée dans la Régie : sans elle, le site ne mène nulle part. */
nav a.connexion{color:var(--ink);font-weight:600;border:1px solid var(--line-2);border-radius:8px;padding:6px 14px}
nav a.connexion:hover{border-color:var(--ink-3)}
.entrer{color:var(--ink-2);font-weight:600;text-underline-offset:3px}

.titre2{font-size:clamp(26px,4vw,36px);font-weight:800;letter-spacing:-.025em}
.sous2{color:var(--ink-2);margin-top:12px;max-width:56ch}
.bouton{display:inline-flex;align-items:center;gap:9px;background:var(--nuit);color:#fbfbfa;
  text-decoration:none;font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:16px;
  padding:13px 24px;border-radius:9px;border:1px solid var(--nuit)}
.bouton:hover{opacity:.88}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .bouton{background:var(--amber);color:#15171b;border-color:var(--amber)}}
:root[data-theme="dark"] .bouton{background:var(--amber);color:#15171b;border-color:var(--amber)}

footer{border-top:1px solid var(--line);padding-block:32px 50px;color:var(--ink-3);font-size:14px;margin-top:60px}
footer .liens{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}
footer a{color:var(--ink-3)}
footer a:hover{color:var(--ink-2)}

/* ── Les pages de texte : guides, mentions, conditions ──────────────────── */
/* Une colonne, une largeur de lecture, et rien d'autre. Un texte juridique ou
   un mode d'emploi se lit en ligne droite ; toute colonne supplémentaire ne
   ferait que donner au lecteur un endroit où se perdre. */
.doc{padding-block:40px 20px;max-width:74ch}
.doc .fil{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--amber);margin-bottom:16px;display:block;text-decoration:none}
.doc h1{font-size:clamp(30px,5vw,44px);font-weight:800;letter-spacing:-.03em;line-height:1.08}
.doc .chapeau{font-size:19px;color:var(--ink-2);margin-top:16px}
.doc h2{font-size:clamp(21px,3vw,26px);font-weight:800;letter-spacing:-.02em;margin-top:44px}
.doc h3{font-size:18px;font-weight:600;margin-top:28px}
.doc p{color:var(--ink-2);margin:14px 0}
.doc ul,.doc ol{color:var(--ink-2);padding-left:22px;margin:14px 0}
.doc li{margin:7px 0}
.doc strong{color:var(--ink);font-weight:600}
.doc a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.doc code{background:var(--panel-2);padding:2px 6px;border-radius:5px;color:var(--ink)}
.doc .maj{font-size:14px;color:var(--ink-3);margin-top:10px}

/* Une étape numérotée d'un mode d'emploi. Le numéro est une information, pas
   une décoration : ces étapes se font dans cet ordre et pas un autre. */
.etape{display:grid;grid-template-columns:34px 1fr;gap:18px;margin-top:30px;align-items:start}
.etape .n{width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);
  display:flex;align-items:center;justify-content:center;font-family:var(--mono);
  font-size:13px;color:var(--amber);margin-top:2px}
.etape h3{margin-top:3px}
.etape > div > p:first-of-type{margin-top:8px}

/* Un encadré : la remarque qu'on aurait aimé lire avant de se tromper. */
.note{background:var(--panel);border:1px solid var(--line);border-left:2px solid var(--amber);
  border-radius:0 9px 9px 0;padding:16px 20px;margin:24px 0}
.note p{margin:0;font-size:15.5px}
.note p + p{margin-top:10px}

.cartes-liens{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:28px}
.carte-lien{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px;
  text-decoration:none;display:block}
.carte-lien:hover{border-color:var(--line-2)}
.carte-lien h3{font-size:18px;font-weight:600}
.carte-lien p{color:var(--ink-2);font-size:15px;margin:8px 0 0}

table.simple{width:100%;border-collapse:collapse;margin:18px 0;font-size:15.5px}
table.simple th,table.simple td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);
  color:var(--ink-2);vertical-align:top}
table.simple th{color:var(--ink);font-weight:600;font-family:"Bricolage Grotesque",sans-serif}
.deborde{overflow-x:auto}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Un trou dans un texte juridique : quelque chose que seul Nel peut remplir.
   Il doit sauter aux yeux, parce qu'une mention légale incomplète mise en
   ligne est un manquement, pas un détail de mise en page. */
.trou{background:#ffe9e4;color:#8a2c19;border:1px dashed #d9614a;border-radius:5px;
  padding:1px 8px;font-family:var(--mono);font-size:.82em;font-weight:500;
  display:inline-block;line-height:1.7}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .trou{background:#3a1f1a;color:#f0a292;border-color:#8a4231}
}
:root[data-theme="dark"] .trou{background:#3a1f1a;color:#f0a292;border-color:#8a4231}
