:root{
/* ── Brand core ───────────────────────────────────────── */
--porcia-blue:#2E4999;      /* Primärfarbe · Blau — dunkelster Ton der Buntfarben */
/* Blau ist ein Königsblau mit leichtem Violettstich (HSL 225°). Die gesamte Blauskala
   und die Neutralen folgen diesem Farbton — kein Petrol, kein Cyan. */
--porcia-mint:#C7FFDE;      /* Sekundärfarbe · Minze (helles Mintgrün, Farbton 150°) */
--porcia-white:#FFFFFF;     /* vierte Fläche */
--porcia-ink:#14161D;       /* Schwarz — nur Fließtext und monochrome Anwendungen */

/* ── Blau-Skala ───────────────────────────────────────── */
/* Blau #2E4999 ist der dunkelste Ton der Buntfarben und steht am Ende der Skala.
   Es gibt KEINEN dunkleren Blauton. Zustände hellen auf, sie dunkeln nicht ab. */
--blue-50:#F3F5FC;--blue-100:#E7EBF9;--blue-200:#CBD5F1;--blue-300:#A8B8E6;--blue-400:#7E95D8;
--blue-500:#5170C8;--blue-600:#395ABB;--blue-700:#3453AC;--blue-800:#304CA1;--blue-900:#2E4999;

/* ── Minz-Skala ───────────────────────────────────────
   Farbton 150°, aus #C7FFDE abgeleitet. Minze ist sehr hell (Kontrast auf Weiß 1,2:1)
   und trägt daher nur auf blauem Grund. 800 ist die dunkelste Stufe für Text auf Weiß (Kontrast 5,2:1).
   900 bleibt bewusst heller als Blau #2E4999. */
--mint-50:#F4FFF8;--mint-100:#E9FFF1;--mint-200:#DBFFEA;--mint-300:#D1FFE4;--mint-400:#CCFFE1;
--mint-500:#C7FFDE;--mint-600:#9BDDB8;--mint-700:#63B586;--mint-800:#2E7A4E;--mint-900:#266B44;

/* ── Neutrals ─────────────────────────────────────────
   Die Neutralen 600–900 liegen auf der SCHWARZ-Achse und sind damit die dokumentierte
   Ausnahme von "nichts dunkler als #2E4999": ausschließlich Text (Fließtext, Labels,
   gedämpfte Zweitzeilen) und monochrome Anwendungen — niemals als Fläche.
   Lesbarkeit hat hier Vorrang; ein Grau auf Blau-Niveau wäre für Text zu schwach. */
--neutral-0:#FFFFFF;--neutral-50:#F6F7FB;--neutral-100:#EDEFF5;--neutral-200:#DDE0EA;--neutral-300:#C2C7D5;
--neutral-400:#969DAF;--neutral-500:#6C7385;--neutral-600:#5B6172;--neutral-700:#484D5B;
--neutral-800:#24272F;--neutral-900:#14161D;

/* ── Semantic status ──────────────────────────────────── */
--status-success:#2E7D5B;--status-success-soft:#E6F2EC;
--status-warning:#A85519;--status-warning-soft:#FAEBDF;
--status-danger:#B3413A;--status-danger-soft:#F9E9E8;
--status-info:var(--blue-900);--status-info-soft:var(--blue-100);
}
