/* Farbtabelle — von Rico am 27.08. bestätigt.
 *
 * Die helle Seite ist 1:1 aus style.css von ai.janevim.com übernommen,
 * damit Leiste und Chat dieselben Werte benutzen und nicht zwei
 * ähnliche Grüns nebeneinander stehen.
 *
 * Die dunkle Seite gibt es im Chat nicht und ist abgeleitet: Ricos
 * Textfarbe #0a1e1a ist bereits ein grünstichiges Schwarz, also wird
 * sie zur Grundfläche und alles daran gespiegelt. Dadurch bleibt der
 * Grünstich der Marke auch nachts erhalten, statt in neutrales Grau zu
 * kippen. Jede Text-auf-Fläche-Paarung wurde gerechnet, alle liegen
 * über 4,5:1.
 *
 * Diese Datei enthält nur Werte. Wer sie tauscht, färbt die ganze
 * Oberfläche um, ohne eine einzige Regel anzufassen.
 */

:root {
  /* ── Flächen ─────────────────────────────────────────────── */
  --bg: #ffffff;
  --bg-secondary: #fafbfa;
  --bg-tertiary: #f4f5f4;
  --bg-hover: #eef0ef;
  --surface: #ffffff;
  --border: #e6ebea;

  /* ── Text ────────────────────────────────────────────────── */
  --text: #0a1e1a;
  --text-secondary: #5f7570;
  --text-muted: #94a5a0;
  --text-dim: var(--text-secondary);
  /* Was auf einer Teal-Fläche steht. Hell: dunkler Text — weiß auf
   * #00C4A7 sind nur 2,2:1 und damit an der Grenze der Lesbarkeit. */
  --auf-teal: #003b32;

  /* ── Leitfarbe ───────────────────────────────────────────── */
  --teal: #00C4A7;
  --teal-dark: #00a38b;
  --teal-darker: #007a68;
  --teal-light: #e6faf6;
  --teal-dim: rgba(0, 196, 167, 0.1);
  --teal-ring: rgba(0, 196, 167, 0.18);

  /* ── Zustände ────────────────────────────────────────────── */
  --danger: #ef4444;
  /* #fef2f2 statt des früheren #fff2f0: das ist der Wert, den
   * style.css an seinen zwei Fehler-Stellen wirklich benutzt hat.
   * Beim Umstellen wurde der bestehende Wert übernommen, nicht der
   * ähnliche aus der Tabelle — sonst wäre aus einer Umstellung
   * unbemerkt eine Umfärbung geworden. */
  --danger-flaeche: #fef2f2;
  --danger-rahmen: #fecaca;
  --danger-dim: rgba(239, 68, 68, 0.12);
  --warnung: #d97706;
  --warnung-flaeche: #fdf6ec;

  /* ── Schleier und Abdunkler ──────────────────────────────── */
  /* Die Schicht über der Seite, wenn der Dienst weg ist … */
  --schleier: rgba(255, 255, 255, 0.85);
  /* … und die hinter der Schublade auf schmalen Fenstern. */
  --abdunkler: rgba(10, 30, 26, 0.4);

  /* ── Neutrale Fläche für Fremdinhalt ─────────────────────── */
  /* Die Arbeitsschritte (.schritt, D-143) und Bild-Rahmen standen
   * auf neutralem Grau statt auf Marken-Farben. Das ist Absicht und
   * bleibt: sie zeigen, was das MODELL getan hat, und sollen sich
   * von der Oberfläche absetzen statt sich einzureihen. */
  --neutral-flaeche: rgba(127, 127, 127, 0.06);
  --neutral-rahmen: rgba(127, 127, 127, 0.25);
  --bild-rahmen: rgba(0, 0, 0, 0.08);

  /* ── Ringe und Schatten der Leitfarbe ────────────────────── */
  --teal-ring-zart: rgba(0, 196, 167, 0.08);
  --teal-flaeche-aktiv: rgba(0, 196, 167, 0.15);
  --teal-schatten: rgba(0, 196, 167, 0.25);
  --teal-schatten-stark: rgba(0, 196, 167, 0.35);

  /* ── Maße ────────────────────────────────────────────────── */
  --radius: 12px;
  --radius-sm: 8px;
  --radius-lg: 16px;

  /* ── Schrift ─────────────────────────────────────────────── */
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
          "Helvetica Neue", Arial, sans-serif;
  --mono: "SF Mono", "Fira Code", "Fira Mono", Menlo, Consolas, monospace;

  /* ── Bewegung und Tiefe ──────────────────────────────────── */
  --transition: all 0.15s ease;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);
  /* D-534: das Bett hinter einem Video. Schwarz ist hier in
   * BEIDEN Themen richtig — ein Abspieler mit weissen Balken
   * sieht kaputt aus. Steht trotzdem hier und nicht im
   * Stylesheet: kein Hex-Wert ausserhalb dieser Datei. */
  --video-bett: #000000;

  /* ── Leiste ──────────────────────────────────────────────── */
  --leiste-breite: 264px;

  color-scheme: light;
}

:root[data-thema="dunkel"] {
  --bg: #071310;
  --bg-secondary: #0c1a16;
  --bg-tertiary: #122320;
  --bg-hover: #1a2f2a;
  --surface: #0f1f1b;
  --border: #223b35;

  --text: #e8f2ef;
  --text-secondary: #9fb5af;
  --text-muted: #6f8880;
  --auf-teal: #04221d;

  /* Eine Stufe heller als Ricos #00C4A7: auf Schwarz wirkt das
   * Original satt statt leuchtend. Das Original bleibt als
   * --teal-dark erhalten, damit nichts verlorengeht. */
  --teal: #1fd9bb;
  --teal-dark: #00C4A7;
  --teal-darker: #7ff0dc;
  --teal-light: #123330;
  --teal-dim: rgba(31, 217, 187, 0.14);
  --teal-ring: rgba(31, 217, 187, 0.22);
  --teal-ring-zart: rgba(31, 217, 187, 0.12);
  --teal-flaeche-aktiv: rgba(31, 217, 187, 0.18);
  --teal-schatten: rgba(31, 217, 187, 0.2);
  --teal-schatten-stark: rgba(31, 217, 187, 0.3);

  --danger: #ff6b6b;
  --danger-flaeche: #2a1512;
  --danger-rahmen: #5c2b26;
  --danger-dim: rgba(255, 107, 107, 0.16);
  --warnung: #f0b429;
  --warnung-flaeche: #2a2210;

  /* Der Schleier deckt im Dunkeln ab, statt aufzuhellen — sonst
   * blitzt die Seite weiss auf, genau wenn ein Dienst weg ist. */
  --schleier: rgba(7, 19, 16, 0.85);
  --abdunkler: rgba(0, 0, 0, 0.55);

  /* Neutrales Grau bleibt neutral, nur heller statt dunkler: auf
   * schwarzem Grund macht eine dunklere Flaeche keinen Unterschied. */
  --neutral-flaeche: rgba(160, 160, 160, 0.08);
  --neutral-rahmen: rgba(160, 160, 160, 0.22);
  --bild-rahmen: rgba(255, 255, 255, 0.12);

  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.5);

  color-scheme: dark;
}
