/* nero.css - die eine Quelle fuer Farben, Schrift und Mass.
 *
 * ALWIN, 29.08.2026: "ich brauch ein einheitliches und professionelles design
 * und nicht staendig was neues."
 *
 * Gemessen war die Ursache: 34 Seiten, jede mit eigenen Werten. Vier
 * Schwarztoene, drei Weisstoene, drei Eckenradien, zwei Namenssysteme, 35
 * Schriftgroessen von 7,5 bis 22 Pixel. Diese Datei setzt EINEN Wert je
 * Rolle.
 *
 * 03.09.2026, Umbau auf die Visual-DNA (nero-dna.css, Fassung 2):
 * Diese Datei traegt KEINE eigenen Farbwerte mehr. Jeder alte Name (--bg,
 * --ink, --blue ...) zeigt auf den passenden Namen der DNA-Leiter. Grund:
 * nero.css laedt auf allen 18 Seiten als LETZTES Stylesheet und ueberschrieb
 * mit festen Fast-Schwarz-Werten jede Marine-Flaeche, die die Seiten aus der
 * DNA bezogen. Die Seiten mussten auf html:root ausweichen. Jetzt ist die
 * Kette: nero-dna.css (Werte) -> nero.css (alte Namen als Aliase) -> Seite.
 *
 * ZERSTOERUNGSSPERRE: jede var() traegt einen Fallback mit dem DNA-Wert.
 * Laedt eine Seite die DNA nicht (oder noch nicht), faellt die Eigenschaft
 * NICHT auf initial (weiss/transparent), sondern auf denselben Marine-Wert.
 * Diese Fallback-Hex sind die einzigen festen Farbwerte in dieser Datei und
 * absichtlich Kopien aus nero-dna.css, Zeilen 27-32, 48, 92-93, 127-141.
 *
 * Beide Namenssysteme zeigen auf denselben Wert, damit keine Seite umgebaut
 * werden muss: --fd und --font-display sind dieselbe Schrift.
 */

:root {
  /* ---- Flaechen: die vier Stufen der DNA-Leiter ------------------------ */
  --bg:          var(--nero-grund,      #060b16);   /* Koerper, tiefster Grund */
  --bg2:         var(--nero-ebene,      #0b1526);   /* Bereich, Leiste, Rinne  */
  --card:        var(--nero-glas,       rgba(16, 32, 58, .62));   /* Kastenfuellung = Glas */
  --card-hi:     var(--nero-glas-hoch,  rgba(22, 41, 74, .72));   /* Kasten, hervorgehoben  */

  /* ---- Linien: zwei Stufen ------------------------------------------- */
  --line:        var(--nero-linie,      rgba(146, 182, 240, .14));   /* Trennlinien */
  /* die leisere zweite Linie: dieselbe Farbe, 60 % der Deckung (war .05 zu .08) */
  --line2:       color-mix(in srgb, var(--nero-linie, rgba(146, 182, 240, .14)) 60%, transparent);

  /* ---- Text: drei Stufen --------------------------------------------- */
  --ink:         var(--nero-text,       #e8eefc);   /* Haupttext */
  --ink2:        var(--nero-text-leise, #a3b5d8);   /* zweite Ebene */
  --ink3:        var(--nero-text-still, #8398bd);   /* dritte Ebene, Beschriftungen */

  /* ---- Akzente: Blau fuehrt, Orange antwortet ------------------------ */
  --blue:        var(--nero-blue,       #4f9dff);   /* die Leitfarbe */
  --blue2:       var(--nero-blue-200,   #a9cdff);   /* hell */
  --blue-deep:   var(--nero-blue-600,   #2f7ae0);   /* dunkel */
  --orange:      var(--nero-orange,     #ff8a3c);   /* der Akzent */
  --orange2:     var(--nero-orange-200, #ffc69b);
  --good:        var(--nero-ok,         #5ad6a0);   /* fertig, gruen */
  --bad:         var(--nero-bad,        #ff6b5c);   /* Fehler, rot */

  --akzent:      var(--nero-accent-line, linear-gradient(90deg, var(--blue), var(--orange)));

  /* ---- 30.08.2026 nachgetragen ---------------------------------------- */
  /* Diese neun standen auf mehreren Seiten je einzeln im :root, aber nirgends
   * gemeinsam. Gemessen: --lineA auf 6 Seiten, --ink-muted/--ink-faint/--warn
   * auf 5, --bg-card/--bg-card-hi auf 4. Jede Seite hat sie neu erfunden. */
  --lineA:       var(--line2);        /* zweite, hellere Trennlinie */
  --ink-muted:   var(--ink2);         /* = --ink2, zweiter Name */
  --ink-faint:   var(--ink3);         /* = --ink3, zweiter Name */
  --warn:        var(--orange);       /* = --orange, Warnfarbe */
  --accent-deep: var(--blue-deep);    /* = --blue-deep */

  /* Doppelnamen, die auf das Vorhandene zeigen statt einen zweiten Wert zu
   * fuehren. So kann eine Aenderung oben nicht mehr unten danebengehen. */
  --bg-card:     var(--card);
  --bg-card-hi:  var(--card-hi);
  --sh1:         var(--nero-sh-1, 0 8px 26px -10px rgba(0,0,0,.80));
  --sh2:         var(--nero-sh-2, 0 20px 52px -22px rgba(0,0,0,.80));

  /* farbige Schleier: aus den Akzenten gemischt, nicht mehr als feste
   * rgba-Kopien. Aendert sich --nero-blue, aendern sich alle drei mit. */
  --b06: color-mix(in srgb, var(--blue) 6%, transparent);
  --b16: color-mix(in srgb, var(--blue) 16%, transparent);
  --b24: color-mix(in srgb, var(--blue) 24%, transparent);
  --o10: color-mix(in srgb, var(--orange) 10%, transparent);
  --o16: color-mix(in srgb, var(--orange) 16%, transparent);
  --g10: color-mix(in srgb, var(--good) 10%, transparent);
  --g16: color-mix(in srgb, var(--good) 16%, transparent);

  /* ---- Schrift: EIN Satz, unter zwei Namen ---------------------------- */
  --font-display: "Archivo","Segoe UI Variable Display",system-ui,-apple-system,sans-serif;
  /* 30.08.2026: war "Segoe UI Variable Text". Vier Seiten (Cockpit, Chat,
   * Projekte, Lernen) und warp.css haben das seit jeher auf Archivo
   * ueberschrieben. Eine Vorgabe, gegen die die Mehrheit verstoesst, ist
   * keine Vorgabe. Also folgt sie der Mehrheit. */
  --font-body:    "Archivo","Segoe UI Variable Text",system-ui,-apple-system,sans-serif;
  --font-mono:    "JetBrains Mono",ui-monospace,"Cascadia Code",Consolas,monospace;
  /* der Kurzname zeigt auf denselben Wert, damit alte Seiten weiterlaufen */
  --fd: var(--font-display);
  --fb: var(--font-body);
  --fm: var(--font-mono);

  /* ---- Schriftleiter: sieben Stufen statt 35, Untergrund 11px --------- */
  /* Alwin, gemessen mit impeccable: 424 Regeln setzten Text unter 11px.
   * Das ist keine Geschmacksfrage, das ist Lesbarkeit. Untergrenze 11. */
  --t-xs:   11px;   /* kleinste Beschriftung, Kennungen */
  --t-sm:   12.5px; /* Meta, zweite Ebene */
  --t-base: 14px;   /* Fliesstext */
  --t-md:   16px;   /* betonter Text */
  --t-lg:   19px;   /* kleine Ueberschrift */
  --t-xl:   22px;   /* Ueberschrift */
  --t-2xl:  28px;   /* Titel */

  /* ---- Mass: EIN Radius je Groesse ------------------------------------ */
  --r:      5px;
  --r-md:   8px;
  --r-lg:   14px;
  --r-pill: 999px;

  --ease:  var(--nero-ease,   cubic-bezier(.22,1,.36,1));
  --glass: var(--nero-blur-2, blur(14px) saturate(1.12));
}
