/* Nachweisakte – Gestaltungs-Tokens (Quelle: design/DESIGN-BRIEF.md)
   Kontraste werden in tests/ui/contrast.mjs geprüft. Werte nur hier ändern. */

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

:root {
  color-scheme: light dark;

  /* Schrift */
  --font-ui: "Plex Sans", "Segoe UI", system-ui, sans-serif;
  --font-mono: "Plex Mono", ui-monospace, "Cascadia Mono", monospace;
  --font-doc: "Source Serif", Georgia, serif;
  --fs-xs: 0.8125rem;
  --fs-sm: 0.875rem;
  --fs-md: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: 1.375rem;
  --fs-2xl: 1.75rem;
  --fs-3xl: 2.25rem;
  --lh: 1.5;
  --measure: 68ch;

  /* Abstand: Vielfache von 0,25 rem */
  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-6: 1.5rem;
  --s-8: 2rem;
  --s-10: 2.5rem;

  /* Raster */
  --col-register: 15rem;
  --col-main-max: 46rem;
  --col-margin: 17rem;

  /* Farbe – hell */
  --paper: #F7F5F0;
  --sheet: #FFFFFF;
  --tint: #EFECE4;
  --ink: #17202B;
  --ink-2: #4A5462;
  --rule: #D9D4C8;
  --rule-strong: #8A8478;
  --register: #0B5E6B;
  --register-ink: #FFFFFF;
  --ok: #1E6B3A;
  --fail: #A3261E;
  --open: #7A5600;
  --na: #505A66;
  --machine: #5B3E8C;
  --focus: #1B3FA0;

  --radius: 2px;
  --line: 1px solid var(--rule);
  --line-strong: 1px solid var(--rule-strong);
  --dur: 120ms;
}

@media (prefers-color-scheme: dark) {
  :root {
    --paper: #12171E;
    --sheet: #1A212B;
    --tint: #222B37;
    --ink: #ECEAE5;
    --ink-2: #B3BBC6;
    --rule: #2F3A47;
    --rule-strong: #7F8A99;
    --register: #6CC4D1;
    --register-ink: #0C1A1E;
    --ok: #7FD39C;
    --fail: #FF9D92;
    --open: #E9C45E;
    --na: #B3BBC6;
    --machine: #C6AAF2;
    --focus: #A3B8FF;
  }
}

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