/* Base palette — the CI is exactly three colours plus a neutral ramp. */
:root{
  --green-500:#7FF932;   /* Signalgrün — THE brand colour */
  --green-600:#6DE01F;   /* hover / pressed on light */
  --green-400:#9AFB5F;   /* hover on dark */
  --green-100:#E8FED9;   /* tint surface */
  --green-tint-08:rgba(127,249,50,.08);
  --green-tint-16:rgba(127,249,50,.16);
  --green-tint-32:rgba(127,249,50,.32);

  --black:#000000;
  --white:#FFFFFF;

  --grey-950:#0A0A0A;
  --grey-900:#121212;
  --grey-850:#191919;
  --grey-800:#232323;
  --grey-700:#333333;
  --grey-600:#4D4D4D;
  --grey-500:#767676;
  --grey-400:#A3A3A3;
  --grey-300:#C9C9C9;
  --grey-200:#E4E4E4;
  --grey-100:#F1F1F1;
  --grey-50:#F8F8F8;

  --white-a08:rgba(255,255,255,.08);
  --white-a12:rgba(255,255,255,.12);
  --white-a60:rgba(255,255,255,.60);
  --black-a08:rgba(0,0,0,.08);
  --black-a12:rgba(0,0,0,.12);
  --black-a60:rgba(0,0,0,.60);

  /* Semantic status — muted, administrative. Never celebratory. */
  --status-success:#2E7D32;
  --status-success-bg:#EAF5EB;
  --status-warning:#B26B00;
  --status-warning-bg:#FDF3E3;
  --status-danger:#C62828;
  --status-danger-bg:#FBEAEA;
  --status-info:#1F5F8B;
  --status-info-bg:#E9F1F7;
  --status-age:#C62828;      /* Jugendschutz / 18+ notices */

  /* Semantic aliases — light surface (default) */
  --bg-page:var(--white);
  --bg-subtle:var(--grey-50);
  --surface-card:var(--white);
  --surface-inset:var(--grey-100);
  --text-primary:var(--black);
  --text-secondary:var(--grey-600);
  --text-muted:var(--grey-500);
  --text-on-accent:var(--black);
  --text-on-dark:var(--white);
  --border-subtle:var(--grey-200);
  --border-strong:var(--black);
  --accent:var(--green-500);
  --accent-hover:var(--green-600);
  --focus-ring:var(--green-500);
  --link:var(--black);
  --link-hover:var(--green-600);
}

/* Dark section scope — the brand's signature: black field, green accent. */
.mz-dark{
  --bg-page:var(--black);
  --bg-subtle:var(--grey-950);
  --surface-card:var(--grey-900);
  --surface-inset:var(--grey-850);
  --text-primary:var(--white);
  --text-secondary:var(--grey-400);
  --text-muted:var(--grey-500);
  --border-subtle:var(--white-a12);
  --border-strong:var(--white);
  --accent-hover:var(--green-400);
  --link:var(--white);
  --link-hover:var(--green-500);
  background:var(--bg-page);
  color:var(--text-primary);
}
