/* ============================================================
   Azure Lernen – Themen-Modi
   body.theme-dyslexia  : Legasthenie-freundlich (Schrift + Abstände)
   body.theme-contrast  : Hoher Kontrast (WCAG AA+)
   body.theme-calm      : Ruhe-Modus (weniger Farbe, weniger Reize)
   body.theme-bigtext   : Größere Schrift
   body.theme-nomotion  : Alle Animationen aus
   ============================================================ */

/* ---------- OpenDyslexic (lokal, keine externen Abhängigkeiten) ---------- */
@font-face {
  font-family: "OpenDyslexic";
  src: url("../fonts/OpenDyslexic-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "OpenDyslexic";
  src: url("../fonts/OpenDyslexic-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ---------- Legasthenie-Modus ---------- */
body.theme-dyslexia {
  font-family: "OpenDyslexic", "Comic Sans MS", Verdana, sans-serif;
  --font-size: 18px;
  --line-height: 1.9;
  --space: 1.4;
  letter-spacing: 0.035em;
  word-spacing: 0.28em;
}
body.theme-dyslexia p, body.theme-dyslexia li, body.theme-dyslexia .page-sub,
body.theme-dyslexia .mc-summary, body.theme-dyslexia .cs-table td {
  word-spacing: 0.3em;
}
body.theme-dyslexia .btn, body.theme-dyslexia .quiz-option, body.theme-dyslexia .order-item {
  line-height: 1.5;
}
body.theme-dyslexia .code-block pre,
body.theme-dyslexia .cb-terminal {
  font-family: "Courier New", monospace;
  letter-spacing: 0.02em;
  word-spacing: 0.2em;
}

/* ---------- Hoher Kontrast ---------- */
body.theme-contrast {
  --bg: #ffffff;
  --card: #ffffff;
  --card-border: #000000;
  --text: #000000;
  --text-soft: #1a1a1a;
  --primary: #004a8f;
  --primary-dark: #00325f;
  --primary-soft: #dceeff;
  --accent: #7a5a00;
  --accent-soft: #fff3c4;
  --success: #004d00;
  --success-soft: #d9f2d9;
  --error: #a00000;
  --error-soft: #ffe3e3;
  --warn: #4d3400;
  --warn-soft: #fff0cc;
  --code-bg: #000000;
  --code-text: #ffffff;
}
body.theme-contrast .card,
body.theme-contrast .section-body,
body.theme-contrast .module-card,
body.theme-contrast .glossar-item,
body.theme-contrast .setting-row,
body.theme-contrast .badge-card {
  border-width: 2px;
  box-shadow: none;
}
body.theme-contrast .quiz-option,
body.theme-contrast .order-item {
  border-width: 2px;
  background: #ffffff;
}
body.theme-contrast .main-nav a[aria-current="page"] {
  background: #000000;
  color: #ffffff;
  border: 2px solid #000000;
}
body.theme-contrast .status-level { background: #dceeff; color: #000; }
body.theme-contrast .hero {
  background: #dceeff;
  border: 2px solid #000;
}

/* ---------- Ruhe-Modus (Autismus) ---------- */
body.theme-calm {
  --bg: #f2f4f6;
  --card: #fcfdfe;
  --card-border: #ccd4dc;
  --primary: #4a6a8a;
  --primary-dark: #39546e;
  --primary-soft: #e8eef4;
  --accent: #a08a4a;
  --accent-soft: #f4f0e2;
  --success: #4a7a55;
  --success-soft: #e8f1ea;
  --error: #8a4a4a;
  --error-soft: #f2e8e8;
  --warn: #7a6a3a;
  --warn-soft: #f2eeda;
  --code-bg: #2a3038;
  --code-text: #e8ecf1;
}
body.theme-calm .hero {
  background: #e8eef4;
}
body.theme-calm .status-xpbar-fill,
body.theme-calm .progress-fill {
  background: #4a6a8a;
}
body.theme-calm .toast,
body.theme-calm .levelup-overlay {
  background: rgba(42, 48, 56, 0.85);
}
body.theme-calm .tts-fab { background: #4a6a8a; }

/* ---------- Größere Schrift ---------- */
body.theme-bigtext {
  --font-size: 20px;
  --line-height: 1.75;
}

/* ---------- Keine Animationen ---------- */
body.theme-nomotion *,
body.theme-nomotion *::before,
body.theme-nomotion *::after {
  animation: none !important;
  transition: none !important;
}
