/*
 * Thème « nuit » — direction A, « Nuit de prospection » (ECL-21).
 *
 * C'est la direction retenue par Steven pour le métier SDR. Elle ne vit ici
 * qu'en TOKENS : aucun sélecteur de composant, aucune règle de mise en page.
 * `public/css/quest.css` peint les écrans avec ces variables et rien d'autre —
 * c'est ce qui permet à `marche` et `arcade` d'exister sans réécrire une ligne
 * de JavaScript.
 *
 * Le contrat des tokens est dans `src/lib/quest-theme.js` ;
 * `scripts/check-quest-themes.js` refuse une feuille qui en oublie un.
 *
 * Le jaune #FFD23F est RÉSERVÉ aux moments IA — le [AI] du logo, le juge, la
 * manager, l'action principale d'un écran. C'est la règle du design system du
 * socle, transposée : `--q-ai` ne décore rien, il désigne.
 */

.quest-v2[data-quest-theme='nuit'] {
  /* palette — le ciel de 21 h, trois arrêts de dégradé radial */
  --q-bg-1: #1b2a5e;
  --q-bg-2: #0F1B3D;
  --q-bg-3: #0a1230;
  /* Aucune trame : la nuit est une nappe, pas un écran cathodique. Le token
     existe quand même — un thème déclare TOUT le contrat (ECL-51). */
  --q-bg-texture: none;
  --q-surface: rgb(255 255 255 / 4%);
  --q-surface-2: rgb(255 255 255 / 7%);
  --q-border: #2f3f75;
  --q-border-strong: #4a5c9c;
  --q-text: #EAF0FF;
  --q-text-muted: #9fb0e0;
  --q-text-dim: #6f80b3;
  --q-ai: #FFD23F;
  --q-ai-soft: rgb(255 210 63 / 14%);
  /* Un thème sombre déclare l'accent qui REMPLIT et l'accent qui ÉCRIT à la
     même valeur : le jaune tient les deux rôles sur du navy. La découpe
     n'existe que pour les thèmes clairs (ECL-51, `quest-theme.js`). */
  --q-ai-ink: #FFD23F;
  --q-ai-on: #0a1230;
  --q-primary: #3A47FF;
  --q-primary-soft: rgb(58 71 255 / 20%);
  --q-primary-ink: #EAF0FF;
  --q-good: #7ee2a8;
  --q-bad: #ff8a80;
  --q-bad-ink: #ff8a80;
  --q-warn: #ffc46b;
  /* Rien à mettre en pastille : le jour en cours se dit par sa bordure et son
     halo, la marque par la couleur de son texte. */
  --q-on-bg: transparent;
  --q-on-ink: #FFD23F;
  --q-brand-bg: transparent;
  --q-brand-ink: #EAF0FF;

  /* typographie — Bricolage Grotesque pour les journées, Inter pour le reste */
  --q-font-display: 'Bricolage Grotesque', 'Inter', system-ui, sans-serif;
  --q-font-title: 'Bricolage Grotesque', 'Inter', system-ui, sans-serif;
  --q-font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --q-display-weight: 800;
  --q-display-size: 2rem;
  --q-display-tracking: -0.02em;

  /* formes */
  --q-radius: 14px;
  --q-radius-sm: 10px;
  --q-radius-pill: 999px;
  --q-border-width: 1px;
  --q-tilt: 0deg;

  /* profondeur — une nuit a des halos, pas des ombres portées franches */
  --q-shadow: 0 18px 40px rgb(4 8 24 / 45%);
  --q-shadow-sm: none;
  --q-glow: 0 0 0 1px rgb(255 210 63 / 35%), 0 0 24px rgb(255 210 63 / 18%);

  /* densité */
  --q-gap: 20px;
  --q-gap-sm: 10px;
  --q-pad: 20px;
  --q-pad-sm: 12px;

  /* mouvement — sobre : jamais de motion sans information */
  --q-motion-fast: 140ms;
  --q-motion-slow: 520ms;
  --q-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}
