/* chrisinterface UI-Kit
   Christian Steiner · chrisinterface.com
   Version 5.10.0.
   ============================================================
   AUTO-GENERIERT von ui-kit/sync.py — NICHT hier editieren!
   Quelle: ui-kit/tokens.css + tokens-domain.css
   Aussehen aendern? -> in der Quelle, dann "Sync".
   ============================================================ */

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/Roboto-VariableFont_wdth_wght.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto Mono';
    src: url('../fonts/RobotoMono-VariableFont_wght.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: normal;
}

:root {
    /* === HINTERGRÜNDE === */
    --flaeche:        #121A23;   /* Workspace + ausgewählte Karten ("sinkt rein") */
    --flaeche-erhaben:     #17212C;   /* Panel-Fläche — etwas heller als bg-base (auch Topbar-Grund) */
    --flaeche-gehoben:    #1c232e;   /* Header, Tabs, Modal-Header */
    /* Die Fläche unter Zeiger und getroffener Wahl. Hieß bis Stufe 3
       (09.09.2026) `--karte-aktiv` — der Name stammt aus der Zeit, als sie
       wirklich nur Karten hoverte. Seit dem Menü-Baustein (19.08.2026) ist
       sie DIE Hover-Rolle des Hauses: Menüzeile, Kebab, gewählte
       Tabellenzeile. Kein Höhen-Schritt, ein Zustand. */
    --flaeche-betont: #2a3345;
    --eingabe:       #151D27;
    --vertieft:      #0e131c;   /* dunkle Widget-/Block-Fläche, kein Border */
    /* Die Fläche, die ÜBER dem Inhalt liegt: Menü, Popover, die schwebende
       Meldung (V-6, 05.08.2026).

       HIER STAND BIS STUFE 3 (09.09.2026) EIN ZWEITER NAME FÜR DENSELBEN
       WERT: `--karte` (#222B3C), angeschrieben als „Karten default". Es war
       nie der Grund einer Karte — `.karte` nimmt `--flaeche-erhaben`
       (#17212C), nachgemessen am 09.09.2026. Der falsche Name hat sich
       weitergetragen: Er stand in jeder Kachel, jedem Menü, jedem
       Instrumenten-Knopf. Jetzt heißt die Rolle, was sie tut, und das Büro
       kennt sie unter demselben Namen. `--rundung-karte` bleibt — die rundet
       wirklich eine Karte. */
    --flaeche-schwebend: #222B3C;

    /* === BORDERS === */
    --linie:  #2e3748;
    /* Neu in V-2a (04.08.2026): Die Suite hatte keine zarte Linie, das Büro
       nutzt sie 79-mal. Der geteilte Dialog braucht sie als HOVER-FLÄCHE des
       Schließen-Knopfs — die Rolle hat im Haus zwei Jobs, Haarlinie und
       leise Fläche. Nicht erfunden: Der Wert steht als --dunkel-linie-zart
       in farben.css und ist von Chris am 02.08.2026 am gerenderten Bild
       entschieden worden (dunkel-blicke.html); die Suite hat ihn nur nie
       adoptiert. */
    --linie-zart:  #232c3a;
    /* Der aktive Knopf im Umschalter (.kopf-nav .tab.active). Im Büro-Dach
       heißt die Rolle --flaeche-aktiv und steht dunkel auf #2e3748 — hier
       derselbe Wert (zufällig auch der von --linie), aber als EIGENE Rolle:
       Wer den Umschalter später anders färbt, fasst nicht die Linien an.
       (09.09.2026, Logistik gemessen: rgb(46,55,72).) */
    --flaeche-aktiv: #2e3748;
    --linie-stark:  #3f4a5e;
    --linie-tief:    #0B1119;   /* fast schwarz — stärkste Trennlinie (z. B. Sidebar↔Workspace) */

    /* === TEXT === */
    --text:    #e6e9ef;
    --text-gedaempft:  #8a94a6;
    --text-leise:      #79839a;
    --text-auf-akzent:  #ffffff;  /* Schrift auf gefüllten Akzent-/Destructive-Buttons */

    /* === GEZEICHNETER HAKEN ===
       Der Haken im Konto-Menü ist ein SVG in einer `data:`-URL. Dort kann
       `var()` NICHT hineingreifen: Das SVG ist ein eigenes Dokument und sieht
       die Variablen dieser Seite nicht. Die Farbe muss als Literal im Bild
       stehen. Was geht, ist die URL als GANZES zu einer Rolle zu machen — dann
       steht der Ton EINMAL hier statt verstreut in vier Modulen
       (Chris 04.08.2026). Der Wert ist `--text-gedaempft` von oben.

       HIER STAND BIS 05.08.2026 auch `--menue-pfeil`, der Pfeil im
       Auswahlfeld. Er ist mit V-4c/2 entfallen: Die Auswahl trägt jetzt einen
       Chevron aus zwei gedrehten Rahmenlinien, dessen Ton eine echte Rolle ist
       und der Farbwelt von allein folgt. Der Haken bleibt der letzte Fall, in
       dem wir eine Farbe in ein Bild schreiben müssen. */
    /* Der Chevron am Konto-Element ist am 08.09.2026 entfallen (dort steht
       nur noch das Wort „Account"); die Rolle --konto-haken hatte danach
       keinen Verwender mehr und ist am 09.09.2026 gegangen. */

    /* === AKZENT === */
    --akzent:         #4d7da8;
    --akzent-aktiv:   #5e8eb9;

    /* === STATUS (Toasts, Indicators, Feedback) ============================
       Fehler-Rot nach Rolle getrennt:
         --fehler     = Vordergrund (Text, Icons, dünne Streifen) auf dunklem BG
         --fehler-flaeche       = Background mit weißer Schrift drauf (Destructive-Buttons)
         --fehler-flaeche-aktiv = Hover-Variante für --fehler-flaeche
       Ink = dunkler Vordergrund-Ton auf dem hellen --c-*-Icon-Kreis. */
    --ok:           #4ade80;   /* grün — Erfolg (Pastell-Trio 14.08. probiert & zurückgestellt) */
    --warnung:         #fbbf24;   /* gelb — Warnung */
    --fehler:     #ef5e6e;   /* rot Vordergrund — Text, Toast-Stripe, Status */
    --fehler-flaeche:       #d04040;   /* rot Background — Destructive-Buttons */
    --fehler-flaeche-aktiv: #b91c1c;   /* dunklerer Hover-Stand für --fehler-flaeche */
    --fehler-tinte:   #ffffff;   /* Text auf Fehler-Flaeche (war Literal im Toast) */
    --info:         #38bdf8;   /* cyan — Info */
    --ok-tinte:       #0a3d18;
    --warnung-tinte:     #4a3200;
    --info-tinte:     #073049;

    /* === SPACING ===
       Die Leiter fuehrte bis F6-5 nur jede zweite Stufe — 6/10/14/20 px standen
       trotzdem 227× hart im Code (Befund der Formkarte F6-1: "der Rhythmus ist
       laengst gemeinsam, nur halb aufgeschrieben"). Seit 02.08.2026 vollstaendig.
       Modell wie im Buero-Dach: unter 4px = Feinjustage (kein Raster),
       4-24 = die benannte Leiter, ueber 24 = 4er-Raster. */
    --abstand-4:   4px;
    --abstand-6:   6px;
    --abstand-8:   8px;
    --abstand-10: 10px;
    --abstand-12: 12px;
    --abstand-14: 14px;
    --abstand-16: 16px;
    --abstand-20: 20px;
    --abstand-24: 24px;
    --abstand-40: 40px;
    /* Formular-Rhythmus: Abstand zwischen zwei Feldzeilen im Dialog.
       ENTSCHIEDEN Chris 16.08.2026 am Bild (design/formularkarte.html) — 16px
       fuer das ganze Haus. Vorher Buero 14, Suite 12; der Unterschied war nie
       beschlossen. Eigene Rolle statt --abstand-16, weil es EINE Entscheidung
       ist, die man als Ganzes nachjustiert (Argument wie bei der Schrift-Leiter).
       Sie vereinheitlicht den WERT, nicht die Bauweise: Das Buero setzt ihn auf
       sein 2-Spalten-Raster, die Suite auf den Rhythmus ihres Dialog-Rumpfs.
       Quelle: Material/design/formen.css. */
    --formular-reihe: 16px;

    /* === RADIUS === */
    /* KLEINSTE STUFE — sie fehlte (09.09.2026, Stufe zwei der
       Kit-Zusammenlegung): Pillen, Badges und die Eintraege im Kontomenue
       runden mit 4, und die 4 stand hart im Baustein statt als Rolle. Das
       Buero-Dach fuehrt sie seit je als --rundung-klein; jetzt beide. */
    /* Die Verdunkelung hinter Dialog und Schublade — bis 09.09.2026 zwei
       harte Werte in zwei Bausteinen (0.6 im Modal, 0.55 an der Schublade).
       Chris: „overlay auf den dunkleren Wert". */
    --overlay: rgba(0, 0, 0, 0.6);
    /* Die Mindestmasse fuer den Finger, aus dem Buero-Dach uebernommen
       (09.09.2026): Die Suite laeuft im Truck auf dem Tablet und hatte sie
       als einzige nicht. */
    --ziel-touch: 44px;
    --ziel-zeile: 32px;
    /* Die Sprosse, die hier fehlte — das Buero-Dach fuehrt sie seit
       08.09.2026 (die Luft ueber und unter dem Ueber-Dialog). */
    --abstand-32: 32px;
    --rundung-klein: 4px;
    --rundung-mittel: 6px;
    --rundung-gross: 12px;   /* Modal-Fenster — Chris 02.08.2026 (war 14px) */
    /* Die Rundung der KARTE, seit dem freien Aufbau (09.09.2026). Sie ist
       nicht --rundung-gross: Das Buero-Dach nennt 8 so, die Suite-Leiter
       kennt nur 6 und 12, und ihr „gross" gilt den Dialogen. Bis die Leitern
       angeglichen sind, steht die Zahl HIER — einmal, statt viermal nackt in
       Kit und Modul (Deepview 09.09.2026). */
    --rundung-karte: 8px;

    /* === SHADOW === */
    /* ZWEI SCHATTEN, benannt nach ihrer Aufgabe (09.09.2026, Stufe zwei der
       Kit-Zusammenlegung). `--schatten` hiess nach nichts und trug beides:
       Dialoge UND Menues. Jetzt --schatten-fenster fuer Dialoge (gross und
       weich, sie liegen ueber allem) und --schatten-schwebend fuer Menues und
       Meldungen (kleiner, sie haengen an einem Knopf) — dieselben Namen und
       Werte wie im Buero-Dach. */
    --schatten-fenster: 0 16px 48px rgba(0,0,0,0.45);
    /* Bedienknopf auf Farbe — der Griff des Schalters hebt sich von seiner Bahn
       ab. Kam mit V-4c/1 (05.08.2026) aus dem Büro-Dach, wo er schon stand;
       gleicher Wert in beiden Dächern, damit es eine Rolle bleibt und kein
       zweiter Wert. Gehört NICHT zu den drei Schatten aus O-8 (Kante,
       Schwebend, Modal) — die bleiben offen. */
    --schatten-knopf: 0 1px 2px rgba(0,0,0,0.2);
    /* Fläche auf Fläche — der aktive Griff im Umschalter (.kopf-nav .tab).
       Kam am 09.09.2026 mit dem freien Aufbau aus dem Büro-Dach, wo er als
       --schatten-kante steht; gleicher Wert, damit der Umschalter in allen
       zehn Werkzeugen derselbe ist. */
    --schatten-kante: 0 1px 2px rgba(0,0,0,0.05);
    /* Schatten einer schwebenden Meldung (V-6). Stand bisher HART im toast.css
       — derselbe Fall wie das Zebra in V-5. Wert unverändert übernommen. */
    --schatten-schwebend: 0 6px 24px rgba(0,0,0,0.35);

    /* === TYPOGRAFIE === */
    /* Kette wie in der Werkstatt (formen.css) und im Büro-Kit — seit 16.08.2026
       mit "Segoe UI": Roboto liegt lokal und steht auf Platz 1; die Plätze
       dahinter sind der Notfall, falls die Datei einmal nicht lädt. Ohne
       Segoe fiel Windows (der Truck!) dabei auf Arial zurück. */
    --schriftart-ui:    "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --schriftart-mono:  "Roboto Mono", "SF Mono", Menlo, monospace;

    /* Type-Scale (Screen) — Major-Third-Skala */
    /* DIE DREI KLEINEN ROLLEN, eine Sprosse hoeher (09.09.2026, Angleich der
       beiden Kits). Chris hat das am 15.08.2026 am Bild entschieden — Beleg
       design/schriftleiter.html, Variante B: „A ist zu klein" — aber nur im
       Buero-Dach umgesetzt; die Suite blieb auf der alten Leiter. Jetzt
       tragen beide dieselbe. Im Truck, wo aus Abstand gelesen wird, ist das
       erst recht richtig. */
    --schrift-2xs:  11px;   /* Feld-Labels, Tabellenkoepfe (Caps)   war 10 */
    --schrift-xs:   12px;   /* Hinweise, Fehlertexte, Mini-Labels   war 11 */
    /* Neu in V-3a (05.08.2026): Die Suite-Leiter kannte kein 12px, der
       geteilte LEISE Knopf braucht es. Wert aus der Büro-Leiter (formen.css),
       nicht erfunden. Steht bewusst UNTER sm — die Leiter bleibt aufsteigend. */
    --schrift-kompakt: 13px;   /* Felder, Tabellenzellen, Meta, leise Knoepfe   war 12 */
    --schrift-sm:   13px;   /* Body Default, Buttons, Inputs, Tabellen-Zellen */
    /* Hieß bis V-2a (04.08.2026) `--schrift-md` — umbenannt, weil derselbe
       Name im Büro-Dach 14px bedeutet. Für einen GETEILTEN Baustein war das
       eine Mine: Er hätte eine Rolle geschrieben und wäre in einem Dach zwei
       Pixel kleiner geworden, ohne dass es jemand entschieden hat. Gefunden
       nur durchs Nebeneinanderlegen der beiden Leitern; kein Wächter kannte
       das Merkmal. `grund` heißt jetzt in BEIDEN Dächern 16px. */
    /* Die 14 hat der Suite gefehlt (09.09.2026, beim Uebernehmen des
       Ueber-Dialogs aus dem Buero-Dach). Ihre Leiter sprang von 13 auf 16;
       der Dialog setzt seine tragenden Zeilen aber auf 14 — hell und eine
       Stufe unter dem Grundtext, damit sie nicht als Ueberschriften auftreten.
       DER NAME IST FREI und kommt zurueck: Bis V-2a hiess das 16er hier
       `--schrift-md`, weil im Buero-Dach dieselbe Rolle 14 bedeutet; damals
       wurde das 16er zu `grund` umbenannt, GENAU damit `md` spaeter seinen
       Buero-Wert tragen kann. Heute ist es soweit — dieselbe Rolle heisst in
       beiden Daechern gleich und misst gleich. */
    --schrift-md:   14px;   /* tragende Zeilen im Ueber-Dialog, Leerzustand-Titel */
    --schrift-grund: 16px;  /* Sektion-Headers, Modal-Titel, Grundgröße */
    --schrift-lg:   18px;   /* Block-Titel */
    /* Neu in V-2a: Die Suite-Leiter kannte kein 20px, der geteilte Dialog
       braucht es für den Schließen-Knopf. Der Wert stammt aus der Büro-Leiter
       (formen.css), ist also nicht erfunden. */
    --schrift-titel: 20px;  /* Schließen-Knopf im Dialog, große Kopfzeilen */
    /* Heisst seit 09.09.2026 --schrift-kpi wie im Buero-Dach: „xl" sagt nur,
       dass es gross ist; „kpi" sagt, wofuer. */
    --schrift-kpi:   24px;   /* große Zahlen / KPI (O-4, Chris 02.08.2026:
                              war 26px — jetzt derselbe Wert wie im Büro) */

    /* Schriftstärken — vom Roboto Variable Font nativ abgedeckt */
    --gewicht-leicht:    300;
    --gewicht-normal:  400;
    --gewicht-mittel:   500;
    --gewicht-halbfett: 600;
    --gewicht-fett:     700;

    /* Letter-Spacing */
    --laufweite: 0.08em;
}

:root {
    /* === WIDGET-HINTERGRÜNDE === */

    /* === WIDGET-BORDERS === */
    --border-widget:     #2a3550;
    --border-chart-grid: #242d3b;   /* dezente Splitlines der Chart-Y-Achsen — blau-grau
                                        (kanonischer Wert; behebt beim 1. Sync das alte
                                        #222222 in Sollkurven, siehe SUITE-ARCHITEKTUR §8) */

    /* === WIDGET-TEXT === */
    --text-widget:    #ffffff;

    /* === MESS-/CHART-/LAMPEN-FARBEN === */
    --c-t1:        #ea580c;   /* temp1 — orange */
    --c-t2:        #fb923c;   /* temp2 — hellorange */
    --c-t3:        #fcd34d;   /* temp3 — gelb */
    --c-t4:        #fca5a5;   /* temp4 — hellrot/rosa */
    --c-ambient:   #94a3b8;   /* Umgebungstemperatur — gedämpftes Grau-Blau */
    --c-speed:     #3b82f6;   /* speed — blue-500 */
    --c-distance:  #8b5cf6;   /* distance — violet-500. Bis 13.08. Teal #14b8a6:
                                 wurde als Nachbar des Druck-Cyans #06b6d4
                                 staendig mit ihm verwechselt; ein dunkleres
                                 Teal (#0d9488) reichte nicht. Violett ist die
                                 einzige freie Familie im System — Cyan=Druck,
                                 Blau=Geschw., Gruen=Lampe-an, Gelb=Zuendung,
                                 Orange/Rot=Temperaturen. Dieselbe 500er-Stufe
                                 wie die anderen Kanaele. */
    --c-pressure:  #06b6d4;   /* pressure — cyan-500 */
    /* Soll-Töne (Chris' Muster-Review 10.08.2026): Die Soll-Linien liefen im
       SELBEN Ton wie ihre Ist-Kanäle und waren praktisch unsichtbar — beim
       Aufstellen lag die Soll-Treppe exakt UNTER der Ist-Linie. Soll ist das
       PASTELL-Geschwister seines Kanals: gleiche Familie (zuordenbar),
       hellere Stufe (unterscheidbar). Pauspapier bleibt hinter der Tinte.
       LEHRE desselben Tages: Diese zwei Zeilen standen erst in der VERTEILTEN
       Dashboard-tokens.css — der nächste Sync hat sie kommentarlos gefressen
       (die 04.08.-Falle, wortwörtlich). Kanalfarben ändern sich NUR hier.

       BLEIBT PASTELL (11.08.2026, Chris: „die blau töne waren besser … wenn es
       ein korridor mit transparenz ist, dann geht blau auch"): Kurz war die
       400er-Stufe drin, weil die dünne 2-px-Strichel-Linie in Pastell gegen
       Weissgrau lief. Der eigentliche Fehler war aber die LINIENFORM, nicht der
       Ton — seit die Sollkurve ein 7 px breites Band ist, trägt die FLÄCHE die
       Sichtbarkeit, und der helle Ton darf hell bleiben. Pauspapier hinter der
       Tinte, jetzt in der richtigen Breite. */
    --c-speed-soll:    #a5c4fa;   /* Soll zur Geschwindigkeit — blue-300-Klasse */
    --c-pressure-soll: #83e3f2;   /* Soll/Band zum Druck — cyan-300-Klasse */
    /* Soll-KORRIDOR am Instrument (D-079, Chris am Bild entschieden 13.08.2026):
       Der Druck-Ring trägt den vorgeschriebenen Arbeitsdruck als Segment auf
       seiner Skala. Fläche und Kante tragen DENSELBEN Soll-Ton des Kanals.
       Seit 06.10.2026 ist das Band eine 2-px-Linie in VOLLER Farbe
       (Dashboard widgets.css, .gauge-korridor; Chris am Bild: „dünner machen
       und 100 % Farbe"). Bis dahin war es 4 Einheiten breit und per CSS auf
       60 % gedimmt, damit die Skalenstriche durchschienen — bei 2 px gibt es
       nichts mehr, das durchscheinen müsste. Ein VORGEMISCHTER Vollton bleibt
       trotzdem falsch: Er stünde in keiner Farbtabelle (erster Einbau 13.08.:
       #5895a3).
       Je Kanal ein eigener Ton (ein globaler gab dem blauen Geschwindigkeits-
       Ring eine cyane Marke). Diese Zeilen stehen HIER und nicht im verteilten
       tokens.css — dieselbe 04.08.-Falle wie oben, am 13.08. fast wiederholt. */
    --c-korridor-druck:       #83e3f2;   /* = --c-pressure-soll */
    --c-korridor-druck-kante: #83e3f2;
    --c-korridor-speed:       #a5c4fa;   /* = --c-speed-soll */
    --c-korridor-speed-kante: #a5c4fa;
    /* Lampen-Status-Farben (Status-Byte 0–5; Bedeutung mit dem SPS-Entwickler final
       zugeordnet 2026-06-23, D-055). Single source — die Anzeige referenziert nur diese Tokens. */
    --c-lamp-off:        #2a3340;   /* 0 — nicht verfügbar (Grau) */
    --c-lamp-available:  #ffffff;   /* 1 — verfügbar (Weiß) */
    --c-lamp-selected:   #ea580c;   /* 2 — ausgewählt (Orange) */
    --c-lamp-ign:        #fbbf24;   /* 3 — Zündung (Gelb) */
    --c-lamp-on:         #22c55e;   /* 4 — An (Grün) */
    --c-lamp-fault:      #ef5e6e;   /* 5 — Störung (Rot) */
    /* „kalt" (< 30 °C) — und zugleich der LEERE Balken (Chris 17.08.2026): Ein
       Balken ohne Messwerte ist ein Balken, der überall kalt ist — dieselbe
       Aussage, dieselbe Farbe. Bis dahin trug er --bg-phase-empty #2a2a2a, ein
       Zinc-Grau aus der Zeit vor dem Farbsystem, auf Blaugrau fast unsichtbar. */
    --c-sparkline-cold:  #475569;
    --lamp-label-default:    #ffffff;   /* Bubble-Label auf dunklem Bubble (grau/orange/grün/rot) */
    --lamp-label-on-yellow:  #0f1218;   /* dunkles Bubble-Label auf heller Fläche: weiß (verfügbar) + gelb (Zündung) */

    /* ====================================================================
       === PRINT — eigene Farb-/Typo-Welt für den Bericht-Druck (A4) ===
       Bewusst getrennt von den Screen-Tokens: auf weißem Papier brauchen
       Linien & Töne anderen Kontrast.
       ==================================================================== */
    --print-text:        #000000;   /* Haupttext, Achsen-Linien, Tick-Marken */
    --print-text-body:   #333333;   /* Body-Text leicht weicher */
    --print-text-soft:   #555555;   /* Sekundär-Text, Labels, Footer */
    --print-rule:        #cccccc;   /* Splitlines, gestrichelte Trenner */
    --print-bg:          #ffffff;   /* Seitenhintergrund */
    --print-ok:          #16a34a;   /* OK-Markierung, Lampe „An" */
    --print-err:         #dc2626;   /* Fehler-Markierung, Lampe „Störung" */
    --print-c-t1:        #c2410c;   /* Temp 1 — orange-700 */
    --print-c-t2:        #0e7490;   /* Temp 2 — cyan-700 */
    --print-c-t3:        #7c3aed;   /* Temp 3 — violet-600 */
    --print-c-t4:        #94a3b8;   /* Temp 4 — slate-400 */
    --print-c-ambient:   #94a3b8;   /* Umgebungstemperatur */
    --print-c-pressure:  #1e3a8a;   /* Druck — blue-900 */
    --print-c-speed:     #1e7a3a;   /* Geschwindigkeit — green-700 */
    --print-c-distance:  #9f1239;   /* Distanz — rose-800 */
    /* SOLL AUF PAPIER (K4, 21.08.2026 — Chris am Entscheidungsblatt, Fassung D
       „grau gestrichelt"). Bewusst NICHT das Pastell des Bildschirms: Dort
       trägt die Fläche hinter der Tinte, auf weissem Papier verschwindet ein
       Ton dieser Helligkeit. Und bewusst NICHT die Kanalfarbe: Auf dem Blatt
       liegen Vorgabe und Beweis nebeneinander, ohne Schalter dazwischen — die
       Trennung muss aus der Linie selbst kommen, nicht aus dem Zusammenhang.
       Grau + gestrichelt trennt beides am deutlichsten und überlebt als
       Einziges das Schwarz-Weiss-Kopieren, das ein Reklamations-Dokument
       erfahrungsgemäss hinter sich bringt.
       EIN Ton für beide Kanäle: Die Vorgabe ist auf Papier eine Sorte Linie,
       welcher Kanal gemeint ist, sagt die Achse. */
    --print-c-soll:      #8c8c8c;   /* Sollkurve auf Papier — neutralgrau */
    --print-c-lamp-selected: #ea580c;   /* Code 2 „ausgewählt" — orange-600 (D-055) */
    --print-c-lamp-ign:      #d97706;   /* Code 3 „Zündung" — amber-600, druck-tauglicher als reines Gelb (D-055) */
    /* EINE GRÖSSE FÜRS GANZE BLATT (Chris, 21.08.2026: "die Schriftgröße
       überall gleich machen"). Vorher standen drei Grade nebeneinander —
       Labels 8 pt, Werte 9 pt, Abschnitts-Überschriften 10 pt. Der Unterschied
       zwischen Label und Wert war ein einziger Punkt: zu klein, um eine
       Rangfolge zu behaupten, groß genug, um die Zeile unruhig zu machen.
       Jetzt trägt das GEWICHT die Auszeichnung, nicht der Grad: Überschriften
       fett, Labels grau, Werte schwarz — alles gleich groß.
       Wer das Blatt größer oder kleiner setzen will, ändert diese eine Zeile. */
    /* EINE FUGE ZWISCHEN ALLEM (Chris, 21.08.2026). Der Kopf hatte 6 mm unter
       sich, die Blöcke 10 — der Titel klebte dadurch an der ersten Zeile,
       obwohl er die größte Trennung im Blatt markiert. Seit die Linien unter
       den Überschriften weg sind, ist der Abstand das EINZIGE, was gliedert;
       verschiedene Werte lesen sich dann als verschieden starke Trennung, wo
       keine gemeint ist. Ein Wert, ein Takt — wie bei der Schriftgröße. */
    --print-fuge:       10mm;    /* Abstand zwischen Kopf, Blöcken und Diagrammen */
    --print-text-blatt: 8pt;     /* alles auf dem Blatt: Labels, Werte, Überschriften */
    --print-text-xs:    7pt;     /* NUR die Seiten-Fußzeile im Seitenrand */
    /* Kopfbalken-Größe: Dokumenttitel UND Auftraggeber. EIN Token, weil die
       beiden nebeneinander stehen und gleich groß sein sollen (Chris,
       21.08.2026: "das nimmt viel zu viel Platz sonst") — zwei getrennte
       Werte wären zwei Gelegenheiten, wieder auseinanderzulaufen.
       Vorher 16 pt, allein für den Titel. */
    --print-text-title: 11pt;    /* Kopfbalken: Titel und Auftraggeber */
}
