/* =====================================================================
   IR — DIE eine Token-Quelle (CI-Ebene, 15.09.2026)

   Farben, Schriftstapel und Schattierungen für alle Ebenen: Backend
   (verwaltung/assets/app.css importiert diese Datei), App (css/app.css),
   Frontend (web/start/, web/presse/) und Seiten ohne Menü (blatt_kopf()).
   Vorher trugen drei Stilquellen drei Vokabulare (--red, --ir-red, --magenta)
   mit vier Schattenpaletten (Audit E5, Punkt 1 des CI-Auftrags).

   Regeln:
   - Ein Wert steht GENAU EINMAL — hier. Jede andere Datei schreibt var(--…),
     nie Hex, auch nicht als Fallback: var(--ir-red, #E50039) ist eine
     eingefrorene Kopie (Hook Abschnitt 1, Selbsttest W1).
   - Zielvokabular sind die Namen unter „Kern". Die Aliase am Ende halten
     Bestandsseiten am Leben und laufen aus — kein neuer Code nutzt sie.
   - Rot ist die MARKE, nie eine Wertung: Plus = --st-done, Minus = --ink-2
     mit echtem Minuszeichen, Warnung = --st-work.
   - Dunkelwerte gelten bei Systemeinstellung (ohne data-theme) und bei
     data-theme="dark"; data-theme="light" erzwingt Hell. Ein Container, der
     dunkel auf heller Seite liegt (Preiskarte), definiert die Kern-Token um
     und nimmt dafür die --dunkel-* Werte — er schreibt keine Hex.
   ===================================================================== */

/* ---- Schriften (seit 18.09.2026 die EINE Stelle): Inter (Text), Montserrat (Überschriften), Rock Salt (Claim) —
   alle lokal aus web/fonts, keine Google-Fonts mehr. Jede Seite, die tokens.css lädt, hat damit die Schriften;
   die beiden app.css definieren nichts mehr selbst. Pfade relativ zu /css/. ---- */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter-var.woff2') format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/montserrat-var.woff2') format('woff2')}
@font-face{font-family:'Rock Salt';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/rock-salt.woff2') format('woff2')}

:root {
  color-scheme: light;
  /* Kern — Marke */
  --ir-red:#E50039; --ir-red-deep:#C40031; --ir-red-wash:#FBE6EC;
  /* Kern — Flächen und Schrift */
  --bg:#F4F6F8; --card:#FFFFFF; --card-2:#F8F9FB;
  --ink:#1A1E24; --ink-2:#5E6672; --ink-3:#8A93A0;
  --rule:#E4E7EB; --rule-2:#EEF1F4;
  /* Kern — Zustände (nie die Marke) */
  --st-open:#8A93A0; --st-open-wash:#EEF1F4;
  --st-work:#C77716; --st-work-wash:#FCF1E2;
  --st-done:#1B7F4D; --st-done-wash:#E7F3ED;
  --st-gold:#9A7410; --st-gold-wash:#FBF4DF;   /* Auszeichnung (Premium Pool), 19.09.2026 */
  --ext:#3A6EA5; --ext-wash:#EAF1F8;
  /* Kern — Schatten und Schrift */
  --shadow:0 1px 2px rgba(26,30,36,.05),0 12px 34px -18px rgba(26,30,36,.4);
  --shadow-sm:0 3px 18px -14px rgba(26,30,36,.3);
  --sans:Inter,"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --display:Montserrat,Inter,"Segoe UI",system-ui,Arial,sans-serif;
  --serif:Cambria,"Iowan Old Style",Georgia,serif;
  --claim:'Rock Salt','Segoe Print',cursive;
  /* Dunkelwerte als benannte Konstanten — für Container, die auf heller
     Seite dunkel liegen (Preiskarte): .kasten{--card:var(--dunkel-card);…} */
  --dunkel-ir-red:#FF3D6E; --dunkel-ir-red-deep:#E50039; --dunkel-ir-red-wash:#3A1220;
  --dunkel-bg:#14171C; --dunkel-card:#1A1E24; --dunkel-card-2:#22262D;
  --dunkel-ink:#FFFFFF; --dunkel-ink-2:#B9C0C9; --dunkel-ink-3:#7A828D;
  --dunkel-rule:#313640; --dunkel-rule-2:#262B32;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  color-scheme:dark;
  --ir-red:#FF3D6E; --ir-red-deep:#E50039; --ir-red-wash:#3A1220;
  --bg:#14171C; --card:#1A1E24; --card-2:#22262D;
  --ink:#FFFFFF; --ink-2:#B9C0C9; --ink-3:#7A828D;
  --rule:#313640; --rule-2:#262B32;
  --st-open:#7A828D; --st-open-wash:#262B32;
  --st-work:#E8A252; --st-work-wash:#3A2E1D;
  --st-done:#4CC38A; --st-done-wash:#173226;
  --st-gold:#E2C76A; --st-gold-wash:#3A3218;
  --ext:#7FAEDC; --ext-wash:#23303D;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 34px -18px rgba(0,0,0,.65);
  --shadow-sm:0 3px 18px -14px rgba(0,0,0,.5);
}}
:root[data-theme="dark"]{color-scheme:dark;
  --ir-red:#FF3D6E;--ir-red-deep:#E50039;--ir-red-wash:#3A1220;
  --bg:#14171C;--card:#1A1E24;--card-2:#22262D;
  --ink:#FFFFFF;--ink-2:#B9C0C9;--ink-3:#7A828D;--rule:#313640;--rule-2:#262B32;
  --st-open:#7A828D;--st-open-wash:#262B32;--st-work:#E8A252;--st-work-wash:#3A2E1D;
  --st-done:#4CC38A;--st-done-wash:#173226;--st-gold:#E2C76A;--st-gold-wash:#3A3218;--ext:#7FAEDC;--ext-wash:#23303D;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 34px -18px rgba(0,0,0,.65);
  --shadow-sm:0 3px 18px -14px rgba(0,0,0,.5);}
:root[data-theme="light"]{color-scheme:light;
  --ir-red:#E50039;--ir-red-deep:#C40031;--ir-red-wash:#FBE6EC;
  --bg:#F4F6F8;--card:#FFFFFF;--card-2:#F8F9FB;
  --ink:#1A1E24;--ink-2:#5E6672;--ink-3:#8A93A0;--rule:#E4E7EB;--rule-2:#EEF1F4;
  --st-open:#8A93A0;--st-open-wash:#EEF1F4;--st-work:#C77716;--st-work-wash:#FCF1E2;
  --st-done:#1B7F4D;--st-done-wash:#E7F3ED;--st-gold:#9A7410;--st-gold-wash:#FBF4DF;--ext:#3A6EA5;--ext-wash:#EAF1F8;
  --shadow:0 1px 2px rgba(26,30,36,.05),0 12px 34px -18px rgba(26,30,36,.4);
  --shadow-sm:0 3px 18px -14px rgba(26,30,36,.3);}

/* ---- Aliase (auslaufend): alte Namen zeigen auf den Kern. Kein neuer Code
   schreibt sie; wer eine Bestandsdatei anfasst, ersetzt den Alias. ---- */
:root{
  /* App-Ebene (css/app.css, bis 15.09.2026 eigene Werte) */
  --red:var(--ir-red); --red-dark:var(--ir-red-deep); --red-soft:var(--ir-red-wash); --red-tint:var(--ir-red-wash);
  /* Frontend und Token-Strecken (lokale :root-Blöcke in index.php, strecke.css) */
  --magenta:var(--ir-red); --rot:var(--ir-red); --wash:var(--ir-red-wash);
  --sek:var(--ink-2); --leise:var(--ink-3); --linie:var(--rule); --grund:var(--bg); --flaeche:var(--bg); --karte:var(--card);
  --gut:var(--st-done); --gutwash:var(--st-done-wash); --warn:var(--st-work); --warnwash:var(--st-work-wash);
  --online:var(--st-done); --font:var(--sans);
}
