/* Pages légales publiques (politique de confidentialité, conditions).
   Les URL doivent rester stables : elles sont déclarées à l'App Store et à
   Google Play. */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  --ground: #f6f2ea;
  --surface: #ffffff;
  --ink: #232321;
  --ink-2: #5f5f5b;
  /* 5,36:1 sur le blanc. L'ancien #8e8e89 tombait à 3,29:1, sous le
     minimum de 4,5:1 du niveau AA — or ce gris porte le pied de page,
     c'est-à-dire les liens entre les trois documents légaux. */
  --ink-3: #6b6b66;
  --rule: #e0ddd5;
  --brand: #2f6b57;
}

@media (prefers-color-scheme: dark) {
  :root {
    --ground: #1a1a18;
    --surface: #232322;
    --ink: #f0ede4;
    --ink-2: #a8a49a;
    /* 5,39:1 sur la surface sombre ; l'ancien #7c7a73 donnait 3,66:1. */
    --ink-3: #9a978f;
    --rule: #3a3a37;
    --brand: #6fb495;
  }
}

body {
  background: var(--ground);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  padding: 32px 20px 64px;
}

main {
  max-width: 720px;
  margin: 0 auto;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 20px;
  padding: 40px 32px;
}

a { color: var(--brand); }

h1 {
  font-size: 1.75rem;
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin-bottom: 6px;
}

.updated {
  color: var(--ink-3);
  font-size: 0.875rem;
  margin-bottom: 32px;
}

h2 {
  font-size: 1.0625rem;
  margin: 28px 0 6px;
  letter-spacing: -0.01em;
}

p { color: var(--ink-2); margin-bottom: 10px; }

.back {
  display: inline-block;
  margin-bottom: 24px;
  font-size: 0.875rem;
  text-decoration: none;
}

footer {
  margin-top: 36px;
  padding-top: 20px;
  border-top: 1px solid var(--rule);
  color: var(--ink-3);
  font-size: 0.8125rem;
}

@media (max-width: 480px) {
  body { padding: 16px 12px 48px; }
  main { padding: 28px 20px; border-radius: 16px; }
  h1 { font-size: 1.5rem; }
}

/* Navigation au clavier : sans ce bloc, le contour de focus par défaut du
   navigateur est le seul repère, et il disparaît sur certains fonds. Le
   `:focus-visible` ne se déclenche qu'au clavier, jamais au clic à la
   souris. */
a:focus-visible,
button:focus-visible {
  outline: 3px solid var(--brand);
  outline-offset: 2px;
  border-radius: 2px;
}

/* Sauter au contenu : le premier élément focalisable de chaque page mène
   directement au texte, sans traverser le fil d'ariane. */
.saut-au-contenu {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--surface);
  color: var(--ink);
  padding: 10px 16px;
  border: 2px solid var(--brand);
  border-radius: 4px;
  z-index: 10;
}
.saut-au-contenu:focus {
  left: 8px;
  top: 8px;
}
