:root {
  color-scheme: dark;
  --font-sans: "Segoe UI Variable", "Segoe UI", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: "Cascadia Code", "SFMono-Regular", Consolas, monospace;

  --bg-0: #071019;
  --bg-1: #0a1520;
  --bg-2: #0d1a27;
  --surface-0: rgba(10, 21, 32, 0.84);
  --surface-1: #0f1d2a;
  --surface-2: #132334;
  --surface-3: #17293b;
  --surface-hover: #1b3045;
  --border-soft: rgba(151, 176, 205, 0.11);
  --border: rgba(151, 176, 205, 0.18);
  --border-strong: rgba(167, 196, 229, 0.27);

  --text-0: #f5f8fc;
  --text-1: #c9d5e4;
  --text-2: #8da0b6;
  --text-3: #66798f;
  --white: #ffffff;

  --accent: #5d95ff;
  --accent-rgb: 93, 149, 255;
  --accent-strong: #8cb6ff;
  --accent-soft: rgba(var(--accent-rgb), 0.12);
  --accent-line: rgba(var(--accent-rgb), 0.36);

  --success: #54d7a4;
  --warning: #f4bd62;
  --danger: #f1787f;
  --violet: #ac91ff;

  /* Fachinhalt: visuell klarer als reine System-/Chrome-Texte. */
  --content-surface: rgba(var(--accent-rgb), 0.075);
  --content-surface-strong: rgba(var(--accent-rgb), 0.115);
  --content-border: rgba(var(--accent-rgb), 0.22);
  --content-border-strong: rgba(var(--accent-rgb), 0.34);
  --content-value: #f8fbff;
  --content-muted: #9fb2c8;

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
  --shadow-sm: 0 12px 28px rgba(0, 0, 0, 0.16);
  --shadow-lg: 0 28px 80px rgba(0, 0, 0, 0.32);

  --r-xs: 8px;
  --r-sm: 12px;
  --r-md: 16px;
  --r-lg: 22px;
  --r-xl: 30px;

  --s1: 0.25rem;
  --s2: 0.5rem;
  --s3: 0.75rem;
  --s4: 1rem;
  --s5: 1.25rem;
  --s6: 1.5rem;
  --s7: 1.75rem;
  --s8: 2rem;
  --s10: 2.5rem;
  --s12: 3rem;
  --s16: 4rem;

  --topbar-h: 4.5rem;
  --sidebar-w: 18rem;
  --content-pad-x: clamp(1.5rem, 2vw, 3rem);
  --content-pad-y: clamp(1.5rem, 1.6vw, 2.5rem);
  --control-h: 2.75rem;

  /* Rhythm tokens: fachliche Inhalte brauchen bewusst mehr Luft als Shell-Chrome. */
  --space-cluster: .85rem;
  --space-section: 1.35rem;
  --space-section-lg: 1.65rem;
  --panel-pad: 1.2rem;
  --panel-pad-lg: 1.35rem;

  --type-xs: 0.75rem;
  --type-sm: 0.875rem;
  --type-md: 1rem;
  --type-lg: 1.125rem;
  --type-xl: 1.35rem;
  --type-2xl: 1.75rem;
  --type-3xl: 2.25rem;
  --type-4xl: clamp(2.55rem, 2.15vw, 3.55rem);
}

html[data-org="lspd"] {
  --accent: #65a1ff;
  --accent-rgb: 101, 161, 255;
  --accent-strong: #a0c7ff;
}

html[data-org="doj"] {
  --accent: #d7aa58;
  --accent-rgb: 215, 170, 88;
  --accent-strong: #f0ca7a;
}

html[data-org="lsmd"] {
  --accent: #4fd4c2;
  --accent-rgb: 79, 212, 194;
  --accent-strong: #82e7da;
}

html[data-org="state"] {
  --accent: #aa8cff;
  --accent-rgb: 170, 140, 255;
  --accent-strong: #c6b3ff;
}

@media (min-width: 2400px) {
  html { font-size: 18px; }
  :root {
    --topbar-h: 5rem;
    --sidebar-w: 19.5rem;
    --control-h: 3rem;
    --content-pad-x: 3.25rem;
    --content-pad-y: 2.75rem;
  }
}

@media (min-width: 3200px) {
  html { font-size: 22px; }
  :root {
    --sidebar-w: 20.5rem;
    --content-pad-x: 4rem;
    --content-pad-y: 3.25rem;
  }
}
