/* Vorzimmer – Design-Tokens (Arbeitstitel). Quelle: design/DESIGN-BRIEF.md
   Kontrastnachweis: tests/ui/contrast.mjs  */

@font-face { font-family: "Source Serif 4"; src: url("fonts/SourceSerif4SmText-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Serif 4"; src: url("fonts/SourceSerif4SmText-It.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Source Serif 4"; src: url("fonts/SourceSerif4SmText-Semibold.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Serif 4 Display"; src: url("fonts/SourceSerif4Display-Semibold.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "IBM Plex Sans"; src: url("fonts/IBMPlexSans-Regular.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Sans"; src: url("fonts/IBMPlexSans-Medium.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "IBM Plex Sans"; src: url("fonts/IBMPlexSans-SemiBold.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("fonts/IBMPlexMono-Regular.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("fonts/IBMPlexMono-Medium.woff2") format("woff2"); font-weight: 500; font-display: swap; }

:root {
  /* Farbe */
  --paper: #F5F2EA;        /* Seitenhintergrund, Aktenpapier */
  --sheet: #FFFDF8;        /* Vermerk-/Formularfläche */
  --wash: #ECE7DA;         /* ausgewählte Zeile, ruhige Fläche */
  --ink: #1C2330;          /* Text */
  --ink-2: #4A5262;        /* Sekundärtext */
  --rule: #D9D3C4;         /* Haarlinie (dekorativ, kein Bedeutungsträger) */
  --rule-strong: #7D7667;  /* Feldränder, Schalter: ≥ 3:1 auf allen Flächen */
  --blue: #1F3F7A;         /* Primäraktion, Link, Fokus */
  --blue-wash: #E3E8F2;
  --red: #A3271F;          /* ausschließlich Frist / Eskalation */
  --red-wash: #F6E4DF;
  --green: #2C6A45;        /* erledigt, Standort EU bestätigt */
  --green-wash: #E2EEE5;
  --ochre: #7F5600;        /* offen, Annahme, zu prüfen */
  --ochre-wash: #F4EAD2;
  --on-dark: #FFFDF8;

  /* Schrift */
  --font-read: "Source Serif 4", "Iowan Old Style", Georgia, serif;
  --font-display: "Source Serif 4 Display", "Source Serif 4", Georgia, serif;
  --font-ui: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --fs-xs: 0.8125rem;  /* 13 */
  --fs-sm: 0.875rem;   /* 14 */
  --fs-md: 1rem;       /* 16 */
  --fs-read: 1.125rem; /* 18 Lesetext */
  --fs-lg: 1.375rem;   /* 22 */
  --fs-xl: 1.75rem;    /* 28 */
  --fs-2xl: 2.25rem;   /* 36 */
  --lh-read: 1.55;
  --lh-ui: 1.4;
  --tracking-label: 0.08em;

  /* Raum (8-px-Raster) */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px;

  /* Form */
  --radius: 2px;
  --hairline: 1px solid var(--rule);
  --focus: 0 0 0 3px var(--paper), 0 0 0 5px var(--blue);
  --nav-w: 216px;
  --list-w: 384px;
  --margin-w: 220px;
  --measure: 68ch;
  --tap: 44px;
  --t-fast: 120ms;
}

@media (prefers-reduced-motion: reduce) {
  :root { --t-fast: 0ms; }
}
