/* ════════════════════════════════════════════════════════════════════
   paper.css · Edition Nordroute 01 · Mai 2026
   Kanonische Tokens nach Brief `briefings/2026-05-24-elite-team-anweisungen.md` § A2.

   Phase 1 (heute): additive Definition der kanonischen Namen. site.css
   bleibt die laufende Quelle der alten Tokens — d. h. die Hex-Werte
   verschieben sich nicht. Die kanonischen Namen unten zeigen via
   `var(--alter-name, literal)` auf die bestehenden Variablen und fallen
   auf die im Brief spezifizierten Hex-Werte zurück, falls die alten
   Tokens später entfernt werden.

   Phase 2+ (eigener Branch mit Visual-Diff): site.css schrumpft auf
   ≤ 2 200 Zeilen, die alten Token-Namen werden seitenweise auf
   `--mark-rust` / `--mark-fjord` / etc. umgezogen, am Ende fällt die
   Alias-Schicht.

   Diese Datei wird VOR site.css geladen. Die alten Tokens in site.css
   gewinnen die Kaskade (gleiche Spezifität, später definiert) — Phase 1
   ist deshalb null-Risiko für die visuelle Oberfläche.
   ──────────────────────────────────────────────────────────────────── */

:root {
  /* === Papier — eine Bahn für die ganze Edition === */
  --paper:        #f6f1e7;
  --paper-shadow: #e8decd;
  --paper-dark:   #1b1a16;

  /* === Tinte — exakt zwei Werte === */
  --ink:       #171612;
  --ink-faded: #5f5a50;

  /* === Marker — exakt drei: rust + fjord + ein Akzent === */
  /* Aliase auf bestehende Tokens; Fallback = Brief-Spec.
     Resolution erfolgt at-use-time, nicht jetzt — site.css darf später laden. */
  --mark-rust:  var(--rust, #a04a2d);
  --mark-fjord: var(--fjord, #1a4650);
  --mark-moss:  var(--fjord-green, #516548);

  /* === Tape — eine Geometrie === */
  --tape-fill:  rgba(245, 240, 220, 0.62);
  --tape-edge:  rgba(120, 110, 80, 0.18);

  /* === Stempel — Druckintensität === */
  --stamp-opacity:  0.78;
  --stamp-rotation: -1.8deg;

  /* === Typo === */
  --serif: var(--font-display, 'Newsreader', Georgia, 'Times New Roman', serif);
  --sans:  var(--font-sans, 'Manrope', system-ui, -apple-system, sans-serif);
}
