/* Design system Gabriel — jetons. Philosophie Apple (simplicité, profondeur, détails), adaptée à un enfant de 7 ans.
   Propre au projet : aucun lien avec le Core UI Authentysens. */
@font-face { font-family: 'Atkinson'; font-weight: 400; font-display: swap; src: url('../fonts/atkinson-hyperlegible-next-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Atkinson'; font-weight: 600; font-display: swap; src: url('../fonts/atkinson-hyperlegible-next-latin-600-normal.woff2') format('woff2'); }
@font-face { font-family: 'Atkinson'; font-weight: 700; font-display: swap; src: url('../fonts/atkinson-hyperlegible-next-latin-700-normal.woff2') format('woff2'); }
@font-face { font-family: 'Atkinson'; font-weight: 800; font-display: swap; src: url('../fonts/atkinson-hyperlegible-next-latin-800-normal.woff2') format('woff2'); }
:root {
  /* Couleurs (§ 26) */
  --g-bg: #f6f4ee; --g-bg-deep: #ece8df; --g-surface: #ffffff; --g-surface-2: #f1eee7;
  --g-ink: #1c1c20; --g-ink-2: #4f4f58; --g-ink-3: #5f5f68; --g-line: rgba(20, 20, 40, .1); --g-line-strong: rgba(20, 20, 40, .2);
  --g-primary: #2b53d9; --g-primary-ink: #ffffff; --g-primary-soft: #e4eaff;
  --g-secondary: #14224f; --g-accent: #f0b13c; --g-accent-soft: #fdf1d6;
  --g-success: #166f49; --g-success-soft: #dcf3e8; --g-discovery: #7446d6; --g-discovery-soft: #ece4fb;
  --g-warning: #8f5306; --g-warning-soft: #fbecd2; --g-error-soft: #fae3dc; --g-error-ink: #97402f;
  --g-focus: #1a3fc4;
  /* Mondes (§ 27) : une teinte par monde, même famille de clarté */
  --w-indigo: #3b4cd0; --w-deep: #14224f; --w-teal: #0f8785; --w-green: #3f8f4e; --w-coral: #d65a44; --w-sky: #2383cc;
  --w-violet: #7446d6; --w-sand: #a9793b; --w-amber: #c97c12; --w-rose: #c94a80;
  /* Typographie (§ 22 à 24) : Atkinson Hyperlegible distingue I/l, 0/O, b/d, p/q */
  --g-font: 'Atkinson', ui-rounded, 'SF Pro Rounded', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --t-display: 800 clamp(2rem, 1.4rem + 2.6vw, 3rem)/1.08 var(--g-font);
  --t-title: 800 clamp(1.6rem, 1.3rem + 1.3vw, 2.125rem)/1.15 var(--g-font);
  --t-section: 700 1.375rem/1.25 var(--g-font);
  --t-body: 400 1.1875rem/1.5 var(--g-font);
  --t-body-strong: 700 1.1875rem/1.5 var(--g-font);
  --t-caption: 400 0.9375rem/1.4 var(--g-font);
  --t-button: 700 1.125rem/1.2 var(--g-font);
  --t-voice: 600 clamp(1.25rem, 1.1rem + .7vw, 1.5rem)/1.4 var(--g-font);
  /* Espacements (§ 25) */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px;
  --r-sm: 12px; --r-md: 18px; --r-lg: 26px; --r-xl: 34px; --r-pill: 999px;
  --sh-1: 0 1px 2px rgba(20, 20, 40, .06), 0 4px 14px rgba(20, 20, 40, .06);
  --sh-2: 0 2px 6px rgba(20, 20, 40, .08), 0 14px 36px rgba(20, 20, 40, .12);
  --target: 56px; /* cible tactile d'enfant : plus grande que les 44 px habituels */
  /* Mouvement (§ 33) */
  --m-micro: 120ms; --m-normal: 240ms; --m-transition: 420ms; --m-educational: 900ms;
  --e-out: cubic-bezier(.2, .8, .2, 1); --e-spring: cubic-bezier(.34, 1.4, .5, 1);
  --nav-h: 76px; --rail-w: 112px;
}
@media (prefers-reduced-motion: reduce) { :root { --m-micro: 0ms; --m-normal: 0ms; --m-transition: 0ms; --m-educational: 0ms; } }
:root[data-motion="reduced"] { --m-micro: 0ms; --m-normal: 0ms; --m-transition: 0ms; --m-educational: 0ms; }
