/* Admin · direction A · Cadran — tokens
   Industriel (Braun, années 60) : aluminium chaud, encre, UNE couleur : l'orange signal.
   Règle : l'orange n'apparaît que lorsqu'une chose demande ton attention. Écran gris = rien à faire.
   Une seule police : Admin Cadran (base Hubot Sans, OFL, renommée), axes wght 200-900 + wdth 75-125. */

@font-face {
  font-family: "Admin Cadran";
  src: url("fontes/Admin-Cadran-Variable.ttf") format("truetype");
  font-weight: 200 900;
  font-stretch: 75% 125%;
  font-display: swap;
}

:root {
  /* — couleurs · clair (défaut) — contrastes mesurés dans _sources/contrastes.json */
  --q-bg: #E8E6E0;          /* aluminium */
  --q-surface: #F5F4F0;     /* façade */
  --q-surface-2: #DEDBD3;   /* creux, pistes de jauge */
  --q-ink: #1B1A18;         /* 15,8:1 sur surface */
  --q-ink-2: #57544D;       /* 6,9:1 sur surface */
  --q-line: #C4C0B6;        /* filets, non textuel */
  --q-signal: #E65A20;      /* orange signal : aplats, toujours sur surface (3,3:1) avec texte encre (4,8:1) */
  --q-on-signal: #1B1A18;
  --q-signal-ink: #A83A0C;  /* orange lisible en texte : 5,8:1 sur surface */
  --q-ok: #57544D;          /* « en ordre » ne se colore pas */
  --q-warn: var(--q-signal-ink);
  --q-down: var(--q-signal);

  /* — typographie */
  --q-font: "Admin Cadran", sans-serif;
  --q-num: tabular-nums;            /* tous les chiffres, partout */
  --q-wdth-chiffre: 112%;           /* chiffres larges, lisibles d'un coup d'œil */
  --q-wdth-texte: 100%;
  --q-wdth-etiquette: 88%;          /* étiquettes gravées : capitales serrées */
  --q-fs-lecture: 3.5rem;   /* 56 — la valeur qui compte */
  --q-fs-1: 2rem;           /* 32 */
  --q-fs-2: 1.375rem;       /* 22 */
  --q-fs-3: 1.0625rem;      /* 17 — texte courant */
  --q-fs-4: 0.9375rem;      /* 15 */
  --q-fs-etiquette: 0.75rem;/* 12, capitales, +0,08em */
  --q-lh-serre: 1.05;
  --q-lh: 1.4;

  /* — espacement (pas de 4) */
  --q-sp-1: 4px; --q-sp-2: 8px; --q-sp-3: 12px; --q-sp-4: 16px;
  --q-sp-5: 24px; --q-sp-6: 32px; --q-sp-7: 48px;

  /* — rayons : outillage, pas de bulles */
  --q-r-1: 3px; --q-r-2: 6px; --q-r-plein: 999px;
  --q-cible: 44px;          /* cible tactile minimale */

  /* — mouvement : mécanique, amorti court, jamais de rebond */
  --q-dur-1: 120ms; --q-dur-2: 220ms; --q-dur-3: 420ms;
  --q-ease: cubic-bezier(.2, .7, .2, 1);
  --q-ease-aiguille: cubic-bezier(.3, 1.25, .4, 1); /* l'aiguille dépasse un poil puis se pose */
}

[data-theme="sombre"] {
  --q-bg: #1C1B19;          /* anthracite chaud, jamais noir pur */
  --q-surface: #272623;
  --q-surface-2: #34322E;
  --q-ink: #ECEAE4;         /* 12,6:1 */
  --q-ink-2: #A8A499;       /* 6,1:1 */
  --q-line: #403E39;
  --q-signal: #FF6B2C;      /* 5,3:1 sur surface ; texte encre sombre dessus 6,1:1 */
  --q-on-signal: #1B1A18;
  --q-signal-ink: #FF8B57;  /* 6,5:1 */
  --q-ok: #A8A499;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="clair"]) {
    --q-bg: #1C1B19; --q-surface: #272623; --q-surface-2: #34322E; --q-ink: #ECEAE4;
    --q-ink-2: #A8A499; --q-line: #403E39; --q-signal: #FF6B2C; --q-on-signal: #1B1A18;
    --q-signal-ink: #FF8B57; --q-ok: #A8A499;
  }
}
@media (prefers-reduced-motion: reduce) {
  :root { --q-dur-1: 0ms; --q-dur-2: 0ms; --q-dur-3: 0ms; }
}

/* — alias utilisés par les composants de l app (une seule source : les --q-* ci-dessus) */
:root {
  --police: var(--q-font);
  --fond: var(--q-bg); --surface: var(--q-surface); --surface-2: var(--q-surface-2); --ligne: var(--q-line);
  --texte: var(--q-ink); --texte-2: var(--q-ink-2);
  --accent: var(--q-ink);              /* courbes et barres à l encre : l orange est réservé */
  --ok: var(--q-ink-2);                /* « en ordre » ne se colore pas */
  --attention: var(--q-signal-ink); --critique: var(--q-signal-ink); --signal: var(--q-signal);
  --t-petit: var(--q-fs-4); --t-base: var(--q-fs-3); --t-titre: var(--q-fs-2); --t-chiffre: var(--q-fs-1);
  --e-1: var(--q-sp-1); --e-2: var(--q-sp-2); --e-3: var(--q-sp-3); --e-4: var(--q-sp-4); --e-5: var(--q-sp-5); --e-6: var(--q-sp-6);
  --rayon: var(--q-r-2); --duree: var(--q-dur-2);
}
