/* ===========================================================================
   static/css/tokens.css — Kanzleiakte CI, Ebene 1: Werte
   ---------------------------------------------------------------------------
   Einzige Quelle der Wahrheit für Farbe, Schrift, Abstand, Radius.
   Enthält ausschliesslich Variablen, keine Selektoren für Komponenten.

   Ladereihenfolge in templates/base.html:
       bootstrap.min.css  ->  font-awesome  ->  kanzleiakte.css
       ->  tokens.css  ->  ci.css
   Diese Datei steht bewusst NACH kanzleiakte.css, damit sie deren Werte
   ueberschreiben kann, und VOR ci.css, das die Variablen verbraucht.

   Referenz: docs/design/DESIGNSYSTEM.md
   =========================================================================== */

:root {
  /* --- Flächen und Linien ------------------------------------------------ */
  --ka-ground:        #F4F2ED;  /* Aktendeckel: Seitenhintergrund */
  --ka-surface:       #FFFFFF;  /* Papier: Karten, Tabellen, Formulare */
  --ka-surface-muted: #FAF8F3;  /* Kartenkopf, Tabellenkopf, Fusszeile */
  --ka-line:          #E3DED3;  /* Rahmen */
  --ka-line-soft:     #F0ECE4;  /* Zeilentrenner innerhalb einer Karte */
  --ka-lesegrund:        #E7E3DA;  /* Hintergrund der Lesefläche (Tablet: Dokument pruefen, .ka-pruefen__dokument) */
  --ka-lesegrund-rahmen: #DAD4C8;  /* Rahmen des angezeigten Blatts auf der Lesefläche */
  --ka-griff:            #D3CCC0;  /* Ziehgriff eines von unten aufgezogenen Blatts (.ka-blatt__griff) */

  /* --- Text -------------------------------------------------------------- */
  --ka-ink:       #16191D;      /* Fliesstext, Ueberschriften */
  --ka-ink-2:     #454B54;      /* zweite Ebene */
  --ka-ink-muted: #5C636E;      /* kleinster zulaessiger Grauwert: 6.1:1 auf
                                   Weiss. Bootstraps .text-muted (#6C757D)
                                   liegt bei 4.7:1 und wird in ci.css auf
                                   diesen Wert gehoben. */

  /* --- Navigation und Handlung ------------------------------------------- */
  --ka-nav:        #102A41;     /* Navigationsleiste */
  --ka-nav-active: #1D4468;     /* aktiver Navigationspunkt */
  --ka-nav-text:   #C6D4E2;
  --ka-nav-label:  #93A9BE;
  --ka-nav-hover:  #16385A;     /* Zeile unter dem Mauszeiger, Suchfeld, Schalter */
  --ka-nav-line:   #27547C;     /* Rahmen von Suchfeld und Schalter */
  --ka-nav-focus:  #5E8CB5;     /* Rahmen des Suchfelds im Fokus */
  --ka-nav-count:  #26476A;     /* Zaehler-Plakette */
  --ka-nav-count-text: #CFE0F0;
  --ka-primary:    #15385C;     /* Justizblau: genau eine Hauptaktion je Seite */
  --ka-primary-h:  #0E2942;     /* Hover/Active */
  --ka-primary-t:  #EAF0F6;     /* Blau-Ton, Flaeche */
  --ka-primary-b:  #D3E0EC;     /* Blau-Ton, Rahmen */

  /* --- Signale ----------------------------------------------------------- */
  /* Rot ist fuer Fristen und Sperren reserviert. Siehe DESIGNSYSTEM.md,
     Abschnitt "Rot heisst Frist" — einschliesslich der bewussten Ausnahme
     fuer Formularfehler (.text-danger, .invalid-feedback). */
  --ka-frist:       #A32318;    /* Flaeche mit weisser Schrift */
  --ka-frist-text:  #8E2019;    /* Schrift auf hellem Grund, 4.5:1 */
  --ka-frist-t:     #FBEDEB;
  --ka-frist-b:     #EFCFC9;

  --ka-vorfrist:      #B4761A;
  --ka-vorfrist-text: #7A4B00;
  --ka-vorfrist-t:    #FDF3E0;
  --ka-vorfrist-b:    #EDD9B2;

  --ka-ok:      #1B6B48;
  --ka-ok-text: #145638;
  --ka-ok-t:    #E8F3EC;
  --ka-ok-b:    #C9E2D3;

  --ka-neutral-t: #EFEBE3;
  --ka-neutral-b: #E0DAD0;
  --ka-siegel:    #D8C39B;      /* Akzent: Logo, Avatar */
  --ka-siegel-ink: var(--ka-ink);  /* Schrift auf dem Avatar (Kanzlei-CI: dunkel oder weiss) */

  /* --- Kalender: Eintragsarten (W13) ---------------------------------------
     Fuellfarben der Eintraege im Kalender (templates/agenda/calendar.html, Klassen .ev-*, ci.css Teil C9), jeweils mit weisser Schrift
     (--ka-kal-schrift) mindestens 4.5:1. Termin nimmt die Handlungsfarbe, Besprechung das Gruen, Intern das Grau, Frist das Fristrot und die
     Vorfrist die helle Warnflaeche (--ka-vorfrist-*); eigene Werte brauchen nur Gericht, Notfrist, Wiedervorlage und Aufgabe. */
  --ka-kal-schrift:       #FFFFFF;
  --ka-kal-rand:          rgba(20, 25, 31, .35);  /* Streifen links am Eintrag */
  --ka-kal-gericht:       #6A3FA0;  /* Gerichtstermin: 7.4:1 */
  --ka-kal-notfrist:      #6E150F;  /* Notfrist: dunkleres Rot als die Frist, dazu fett */
  --ka-kal-wiedervorlage: #1F6E7A;  /* Wiedervorlage: 5.9:1 */
  --ka-kal-aufgabe:       #5A6B1E;  /* Aufgabe: 5.9:1 */

  /* --- Schrift ------------------------------------------------------------
     Ausgeliefert wird bewusst ein Systemschrift-Stack:
       * kein Google-Fonts-CDN (Uebertragung der IP an Dritte ist bei
         Mandatsdaten ein vermeidbares DSGVO-Risiko, vgl. LG Muenchen I,
         3 O 17493/20),
       * keine vierte CDN-Abhaengigkeit neben Bootstrap, Font Awesome, jQuery.
     Wer IBM Plex Sans / Source Serif 4 haben moechte, legt die woff2-Dateien
     nach static/fonts/ und traegt die @font-face-Regeln ein (Vorlage:
     docs/design/DESIGNSYSTEM.md, Abschnitt 4); die Variablen brauchen dafuer
     keine Aenderung.
     ---------------------------------------------------------------------- */
  --ka-font-sans:  "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --ka-font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --ka-font-mono:  "IBM Plex Mono", SFMono-Regular, Menlo, Consolas, monospace;

  --ka-fs-xs:  11px;    /* Feldbeschriftung in Versalien */
  --ka-fs-sm:  12.5px;  /* Nebentext, Tabellenzusatz */
  --ka-fs-md:  13.5px;  /* Standardtext */
  --ka-fs-lg:  16px;    /* Kartentitel, serif */
  --ka-fs-xl:  20px;    /* Seitentitel, serif */
  --ka-fs-2xl: 25px;    /* Aktenkopf, serif */

  /* --- Masse -------------------------------------------------------------- */
  --ka-radius:      6px;    /* Button, Eingabefeld */
  --ka-radius-lg:   10px;   /* Karte */
  --ka-radius-pill: 999px;
  --ka-control-h:    38px;  /* Standardhoehe Button/Feld */
  --ka-control-h-lg: 44px;  /* Hauptaktion, Touch-Ziel */
  --ka-space-1: 4px;
  --ka-space-2: 8px;
  --ka-space-3: 12px;
  --ka-space-4: 16px;
  --ka-space-5: 24px;
  --ka-shadow:     0 1px 2px rgba(20, 25, 31, .06);
  --ka-shadow-pop: 0 10px 28px rgba(20, 25, 31, .16);

  /* --- Dichte -------------------------------------------------------------
     Kanzleien arbeiten in Listen. Standard ist kompakt; <body
     data-dichte="komfort"> schaltet auf die luftige Variante um. */
  --ka-row-py: 11px;
}

body[data-dichte="komfort"] {
  --ka-row-py: 16px;
}
