/* RegenDataHub — the shared core (client-v0.1, gate 1, 26 September 2026)
   One file for both skins: the office (the cockpit) and the client pages (the plane).
   Names are the client system's; the office's names follow as aliases where they differ (office D-026).
   Source: the Client system's tokens.json and core.md. A change here is a change to core.md in both systems. */

@font-face { font-family: "IBM Plex Sans"; font-weight: 400; font-style: normal; font-display: swap; src: url("../fonts/IBMPlexSans-400.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 500; font-style: normal; font-display: swap; src: url("../fonts/IBMPlexSans-500.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 600; font-style: normal; font-display: swap; src: url("../fonts/IBMPlexSans-600.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 400; font-style: normal; font-display: swap; src: url("../fonts/IBMPlexMono-400.woff2") format("woff2"); }

:root {
  /* type */
  --font-sans: "IBM Plex Sans", system-ui, "Segoe UI", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  /* the five score classes (Web Spec §14.4; core rule 1). Never text; the number and the class word print beside them. */
  --class-very-low:  #9c4a1e;  /* white number on it 6.16:1 */
  --class-low:       #d69a5b;  /* ink number on it 6.99:1 */
  --class-neutral:   #8a8377;  /* ink number on it 4.53:1 */
  --class-high:      #168667;  /* white number on it 4.53:1 — darkened from #178a6a (C-043, office D-034, Q-27) */
  --class-very-high: #175747;  /* white number on it 8.43:1 */

  /* grounds and inks shared with the office */
  --paper: #f4f2ed;
  --panel: #ffffff;
  --ink:   #1e1c19;
  --ink-2: #5c574f;
  --line:  #d5d0c6;
  --accent: #1f6f5a;           /* the office's links; not used on the plane (C-015) */

  /* the office's names for the same values (aliases, office D-026) */
  --score-very-low: var(--class-very-low);
  --score-low:      var(--class-low);
  --border-strong:  var(--class-neutral);
  --map-no-consent: var(--class-neutral);
  --chart-series-1: var(--class-high);
  --map-consented:  var(--class-high);
  --accent-hover:   var(--class-very-high);
  --surface:        var(--paper);
  --surface-panel:  var(--panel);
  --ink-secondary:  var(--ink-2);
  --border:         var(--line);
}
