/* ============================================================
   WeCreate Schools — Material Design 3 Theme Layer
   Tonale Paletten aus den Markenfarben (OKLCH, HCT-kalibriert):
     primary=Petrol #287c9a · tertiary=Lime #89ba17 (Akzent) · error=Rot #d34757
     neutral / neutral-variant = petrol-getönt
   Wird NACH dem Design-System geladen → überschreibt dessen Tokens.
   ============================================================ */
:root {
  --petrol-50: #daf3ff;
  --petrol-100: #baeaff;
  --petrol-200: #84d4f5;
  --petrol-300: #6ebddd;
  --petrol-400: #56a5c5;
  --petrol-500: #3b8dab;
  --petrol-600: #1c7391;
  --petrol-700: #005872;
  --petrol-800: #003c4f;
  --petrol-900: #001e2a;
  --lime-50: #d8ff9e;
  --lime-100: #cbf191;
  --lime-200: #b1d777;
  --lime-300: #9bc061;
  --lime-400: #85a849;
  --lime-500: #6d8f2e;
  --lime-600: #557609;
  --lime-700: #405a00;
  --lime-800: #2a3d00;
  --lime-900: #131f00;
  --red-50: #ffe8e8;
  --red-100: #fed6d6;
  --red-200: #feafb1;
  --red-300: #ff898f;
  --red-400: #e57078;
  --red-500: #c95861;
  --red-600: #ac3d49;
  --red-700: #8e2031;
  --red-800: #6a0019;
  --red-900: #3c0009;
  --gray-50: #eaeff2;
  --gray-100: #dde2e4;
  --gray-200: #c3c8ca;
  --gray-300: #adb2b4;
  --gray-400: #969b9d;
  --gray-500: #7e8284;
  --gray-600: #656a6c;
  --gray-700: #4c5052;
  --gray-800: #323638;
  --gray-900: #181b1d;

    --md-sys-color-primary: #1c7391;
    --md-sys-color-on-primary: #ffffff;
    --md-sys-color-primary-container: #baeaff;
    --md-sys-color-on-primary-container: #001e2a;
    --md-sys-color-secondary: #546d79;
    --md-sys-color-on-secondary: #ffffff;
    --md-sys-color-secondary-container: #cae7f3;
    --md-sys-color-on-secondary-container: #051e27;
    --md-sys-color-tertiary: #557609;
    --md-sys-color-on-tertiary: #ffffff;
    --md-sys-color-tertiary-container: #cbf191;
    --md-sys-color-on-tertiary-container: #131f00;
    --md-sys-color-error: #ac3d49;
    --md-sys-color-on-error: #ffffff;
    --md-sys-color-error-container: #fed6d6;
    --md-sys-color-on-error-container: #3c0009;
    --md-sys-color-surface: #f3f8fa;
    --md-sys-color-on-surface: #181b1d;
    --md-sys-color-surface-variant: #d5e4eb;
    --md-sys-color-on-surface-variant: #465257;
    --md-sys-color-surface-dim: #d5dadc;
    --md-sys-color-surface-bright: #f3f8fa;
    --md-sys-color-surface-container-lowest: #ffffff;
    --md-sys-color-surface-container-low: #edf2f4;
    --md-sys-color-surface-container: #e8edef;
    --md-sys-color-surface-container-high: #e3e7ea;
    --md-sys-color-surface-container-highest: #dde2e4;
    --md-sys-color-outline: #77848a;
    --md-sys-color-outline-variant: #bccad0;
    --md-sys-color-inverse-surface: #323638;
    --md-sys-color-inverse-on-surface: #eaeff2;
    --md-sys-color-inverse-primary: #84d4f5;
    --md-sys-color-shadow: #000000;
    --md-sys-color-scrim: #000000;

  --color-primary: var(--md-sys-color-primary);
  --color-primary-light: var(--md-sys-color-primary-container);
  --color-primary-dark: var(--md-sys-color-on-primary-container);
  --color-primary-contrast: var(--md-sys-color-on-primary);
  --color-secondary: var(--md-sys-color-tertiary);
  --color-secondary-light: var(--md-sys-color-tertiary-container);
  --color-secondary-dark: var(--md-sys-color-on-tertiary-container);
  --color-secondary-contrast: var(--md-sys-color-on-tertiary);
  --color-error: var(--md-sys-color-error);
  --color-error-light: var(--md-sys-color-error-container);
  --color-error-dark: var(--md-sys-color-on-error-container);
  --color-error-contrast: var(--md-sys-color-on-error);

  --text-primary: var(--md-sys-color-on-surface);
  --text-secondary: var(--md-sys-color-on-surface-variant);
  --text-disabled: color-mix(in srgb, var(--md-sys-color-on-surface) 38%, transparent);

  --surface-default: var(--md-sys-color-surface);
  --surface-paper: var(--md-sys-color-surface-container-high);  /* M3: Content = Filled Cards (tonale Fläche) */
  --divider: var(--md-sys-color-outline-variant);

  --neutral-tint: var(--md-sys-color-surface-container-high);
  --hover-bg: color-mix(in srgb, var(--md-sys-color-primary) 12%, transparent);
  --hover-solid: color-mix(in srgb, var(--md-sys-color-primary) 10%, var(--surface-paper));
  --track-bg: var(--md-sys-color-surface-variant);
  --chip-bg: var(--md-sys-color-surface-container-high);
  --attach-bg: color-mix(in srgb, var(--md-sys-color-surface) 60%, transparent);

  --tint-ok-bg: var(--md-sys-color-tertiary-container);
  --tint-ok-fg: var(--md-sys-color-on-tertiary-container);
  --tint-ok-border: color-mix(in srgb, var(--md-sys-color-tertiary) 45%, transparent);
  --tint-warn-bg: var(--md-sys-color-error-container);
  --tint-warn-fg: var(--md-sys-color-on-error-container);
  --tint-warn-border: color-mix(in srgb, var(--md-sys-color-error) 45%, transparent);
  --overline-color: var(--md-sys-color-tertiary);

  --chat-bubble-own: var(--md-sys-color-tertiary-container);
  --chat-bubble-other: var(--md-sys-color-surface-variant);
  --gradient-brand: linear-gradient(135deg, var(--md-sys-color-primary) 0%, var(--md-sys-color-tertiary) 100%);

  --md-corner-none: 0px; --md-corner-xs: 4px; --md-corner-sm: 8px; --md-corner-md: 12px;
  --md-corner-lg: 16px; --md-corner-xl: 28px; --md-corner-full: 9999px;
  --radius-sm: 12px; --radius-md: 16px; --radius-pill: 9999px; --radius-full: 50%;

  --md-elevation-1: 0px 1px 2px rgba(0,0,0,.30), 0px 1px 3px 1px rgba(0,0,0,.15);
  --md-elevation-2: 0px 1px 2px rgba(0,0,0,.30), 0px 2px 6px 2px rgba(0,0,0,.15);
  --md-elevation-3: 0px 1px 3px rgba(0,0,0,.30), 0px 4px 8px 3px rgba(0,0,0,.15);
  --md-elevation-4: 0px 2px 3px rgba(0,0,0,.30), 0px 6px 10px 4px rgba(0,0,0,.15);
  --md-elevation-5: 0px 4px 4px rgba(0,0,0,.30), 0px 8px 12px 6px rgba(0,0,0,.15);
  --shadow-1: none;               /* Karten-Elevation (per Tweak: filled/outlined/elevated) */
  --shadow-2: var(--md-elevation-2); /* Hover-Anhebung klickbarer Karten, kleine schwebende Teile */
  --card-ring: none;              /* Karten-Rand (nur im Outlined-Stil) */
  --shadow-4: var(--md-elevation-3);
  --shadow-8: var(--md-elevation-4);
  --shadow-fab: var(--md-elevation-3);

  --state-hover-opacity: 0.08; --state-selected-opacity: 0.12; --state-activated-opacity: 0.12; --state-pressed-opacity: 0.10;
}

[data-theme='dark'] {
  --text-disabled: color-mix(in srgb, var(--md-sys-color-on-surface) 50%, transparent);
  /* Elevation-Fix: in Dark müssen erhöhte Flächen HELLER als der Hintergrund sein. */
  --attach-bg: color-mix(in srgb, var(--md-sys-color-surface-container-high) 70%, transparent);
    --md-sys-color-primary: #84d4f5;
    --md-sys-color-on-primary: #003c4f;
    --md-sys-color-primary-container: #005872;
    --md-sys-color-on-primary-container: #baeaff;
    --md-sys-color-secondary: #b0cdd9;
    --md-sys-color-on-secondary: #213943;
    --md-sys-color-secondary-container: #3b545f;
    --md-sys-color-on-secondary-container: #cae7f3;
    --md-sys-color-tertiary: #b1d777;
    --md-sys-color-on-tertiary: #2a3d00;
    --md-sys-color-tertiary-container: #405a00;
    --md-sys-color-on-tertiary-container: #cbf191;
    --md-sys-color-error: #feafb1;
    --md-sys-color-on-error: #6a0019;
    --md-sys-color-error-container: #8e2031;
    --md-sys-color-on-error-container: #fed6d6;
    --md-sys-color-surface: #22201e;
    --md-sys-color-on-surface: #f0eae5;
    --md-sys-color-surface-variant: #4a443f;
    --md-sys-color-on-surface-variant: #c8bfb8;
    --md-sys-color-surface-dim: #1b1a18;
    --md-sys-color-surface-bright: #45413d;
    --md-sys-color-surface-container-lowest: #1b1a18;
    --md-sys-color-surface-container-low: #282523;
    --md-sys-color-surface-container: #2d2a27;
    --md-sys-color-surface-container-high: #363230;
    --md-sys-color-surface-container-highest: #403b38;
    --md-sys-color-outline: #9a908a;
    --md-sys-color-outline-variant: #4f4944;
    --md-sys-color-inverse-surface: #f0eae5;
    --md-sys-color-inverse-on-surface: #2d2a27;
    --md-sys-color-inverse-primary: #1c7391;
    --md-sys-color-shadow: #000000;
    --md-sys-color-scrim: #000000;
}

/* Karten-Stil (Tweak): filled (Default) · outlined · elevated — greift auf alle Karten,
   die --surface-paper / --shadow-1 / --card-ring nutzen. */
[data-cardstyle='filled'] {
  --surface-paper: var(--md-sys-color-surface-container-high);
  --shadow-1: none;
  --card-ring: none;
}
[data-cardstyle='outlined'] {
  --surface-paper: var(--md-sys-color-surface-container-lowest);
  --shadow-1: none;
  --card-ring: 1px solid var(--md-sys-color-outline-variant);
}
[data-cardstyle='elevated'] {
  --surface-paper: var(--md-sys-color-surface-container-low);
  --shadow-1: var(--md-elevation-1);
  --card-ring: none;
}

/* M3 Typografie-Skala */
.t-h1 { font-size: 2rem; line-height: 2.5rem; font-weight: 600; letter-spacing: 0; }
.t-h2 { font-size: 1.75rem; line-height: 2.25rem; font-weight: 600; letter-spacing: 0; }
.t-h3 { font-size: 1.5rem; line-height: 2rem; font-weight: 600; letter-spacing: 0; }
.t-h4 { font-size: 1.375rem; line-height: 1.75rem; font-weight: 500; letter-spacing: 0; }
.t-h5 { font-size: 1rem; line-height: 1.5rem; font-weight: 600; letter-spacing: .15px; }
.t-h6 { font-size: 1rem; line-height: 1.5rem; font-weight: 600; letter-spacing: .15px; }
.t-subtitle1 { font-size: 1rem; line-height: 1.5rem; font-weight: 500; letter-spacing: .15px; }
.t-subtitle2 { font-size: .875rem; line-height: 1.25rem; font-weight: 500; letter-spacing: .1px; }
.t-body1 { font-size: 1rem; line-height: 1.5rem; font-weight: 400; letter-spacing: .15px; }
.t-body2 { font-size: .875rem; line-height: 1.25rem; font-weight: 400; letter-spacing: .25px; }
.t-caption { font-size: .75rem; line-height: 1rem; font-weight: 400; letter-spacing: .4px; }
.t-button { font-size: .875rem; line-height: 1.25rem; font-weight: 500; letter-spacing: .1px; text-transform: none; }
.t-overline { font-size: .6875rem; line-height: 1rem; font-weight: 600; letter-spacing: .5px; text-transform: uppercase; }

/* Komponenten-Feinschliff (M3): Buttons ohne Uppercase, Pill-Form */
.MuiButton-root, button.t-button, [class*="Button-root"] {
  text-transform: none !important; letter-spacing: .1px !important;
  border-radius: var(--md-corner-full) !important; font-weight: 500 !important;
}

/* Chat: Nachrichten-Läufe (WhatsApp-Stil) — Ecken zur Avatar-Seite hin reduziert.
   Ziel ist die DS-Bubble (Enkel-Element mit Inline-Radius); logische Eigenschaften => RTL-sicher.
   Letzte Nachricht eines Laufs behält den nativen 2px-Tail unten (neben dem Avatar). */
.cm-other.cm-run-first > :first-child > :first-child { border-end-start-radius: 6px !important; }
.cm-other.cm-run-mid > :first-child > :first-child { border-start-start-radius: 6px !important; border-end-start-radius: 6px !important; }
.cm-other.cm-run-last > :first-child > :first-child { border-start-start-radius: 6px !important; }
.cm-own.cm-run-first > :first-child > :first-child { border-end-end-radius: 6px !important; }
.cm-own.cm-run-mid > :first-child > :first-child { border-start-end-radius: 6px !important; border-end-end-radius: 6px !important; }
.cm-own.cm-run-last > :first-child > :first-child { border-start-end-radius: 6px !important; }

/* Chat: Sprechblasen-Tail zum Avatar (letzte Nachricht eines Laufs, nur Gruppenchats mit Avatar) */
.cm-hasav.cm-other.cm-run-last > :first-child > :first-child,
.cm-hasav.cm-other.cm-run-solo > :first-child > :first-child { position: relative; border-end-start-radius: 2px !important; }
.cm-hasav.cm-other.cm-run-last > :first-child > :first-child::after,
.cm-hasav.cm-other.cm-run-solo > :first-child > :first-child::after { content: ''; position: absolute; bottom: 0; left: -6px; width: 0; height: 0; border-style: solid; border-color: transparent; border-width: 0 0 9px 7px; border-bottom-color: var(--chat-bubble-other); }
[dir="rtl"] .cm-hasav.cm-other.cm-run-last > :first-child > :first-child::after,
[dir="rtl"] .cm-hasav.cm-other.cm-run-solo > :first-child > :first-child::after { left: auto; right: -6px; border-width: 0 7px 9px 0; }

/* Chat: DS-Bubble cappt bei 75% — Laufbreite (max 88%) soll der einzige Begrenzer sein */
.cm-bubble > :first-child > :first-child { max-width: 100% !important; }


/* Seitenränder der Inhaltsflächen — mobil deutlich schmaler, damit die Fläche genutzt wird */
:root{--page-max:996px;--page-frame:calc(996px + 2 * var(--page-pad-x));--page-pad-x:32px;--page-pad-top:24px;--page-pad-top-sm:16px;--page-pad-top-md:18px}
@media (max-width:900px){:root{--page-pad-x:12px;--page-pad-top:14px;--page-pad-top-sm:12px;--page-pad-top-md:12px}}


/* Einblenden der Bottom-Sheets (Suche, Benachrichtigungen, Menüs) */
@keyframes spSheetUp{from{transform:translateY(100%)}to{transform:translateY(0)}}


/* Frosted Glass für schwebende Flächen (Suche, Sheets, Menüs, Panels) */
:root{
  --glass-surface: color-mix(in srgb, var(--surface-paper) 68%, transparent);
  --glass-blur: saturate(180%) blur(26px);
  --glass-ring: 1px solid color-mix(in srgb, var(--md-sys-color-outline-variant) 60%, transparent);
}
[data-theme='dark']{--glass-surface: color-mix(in srgb, var(--surface-paper) 62%, transparent)}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){
  :root{--glass-surface: var(--surface-paper)}
}


/* Overlay hinter Dialogen, Sheets und Vollbild-Ebenen — abdunkeln und weichzeichnen */
:root{--scrim-bg:rgba(23,21,15,.28);--scrim-blur:saturate(110%) blur(3px)}
[data-theme='dark']{--scrim-bg:rgba(0,0,0,.42)}
.sp-scrim{background:var(--scrim-bg);-webkit-backdrop-filter:var(--scrim-blur);backdrop-filter:var(--scrim-blur)}


/* Ampel für Betriebszustände (Schulen, Zugänge) — Text und Fläche wechseln mit dem Thema */
:root{
  --status-ok-fg:#2f6212;--status-ok-bg:color-mix(in srgb,#62a832 24%,var(--surface-paper));
  --status-warn-fg:#6e5200;--status-warn-bg:color-mix(in srgb,#e8b923 32%,var(--surface-paper));
  /* Ampelpunkte und Fehlerfläche */
  --status-ok-dot:#2e9b3f;--status-warn-dot:#e8b923;--status-error-dot:#d23b3b;
  --status-error-bg:color-mix(in srgb,var(--color-error) 14%,transparent);
}
[data-theme='dark']{
  --status-ok-fg:#a8dd7e;--status-ok-bg:color-mix(in srgb,#62a832 22%,var(--surface-paper));
  --status-warn-fg:#f2d071;--status-warn-bg:color-mix(in srgb,#e8b923 20%,var(--surface-paper));
  --status-ok-dot:#62a832;--status-warn-dot:#e8b923;--status-error-dot:#e8636f;
  --status-error-bg:color-mix(in srgb,var(--color-error) 20%,transparent);
}

/* Formensprache „eckig“ (je Branding oder per Tweak): kleine Radien statt Pillen und runder Karten.
   Kreise (Avatare, Status-Punkte, runde Symbole mit 50 %) bleiben rund. */
[data-shape="eckig"] { --md-corner-xs: 2px; --md-corner-sm: 2px; --md-corner-md: 3px; --md-corner-lg: 4px; --md-corner-xl: 4px; --md-corner-full: 3px;
  --radius-sm: 3px; --radius-md: 4px; --radius-pill: 3px; }
[data-shape="eckig"] [style*="border-radius"]:not([style*="border-radius: 50%"]):not([style*="border-radius: 0px"]) { border-radius: 3px !important; }
/* Mobil: die nach innen gerundeten Übergänge an Kopf- und Tab-Leiste entfallen — der Inhalt schließt gerade an */
[data-shape="eckig"] .sp-concave { display: none !important; }

/* Branding-Schrift: auch Formularelemente übernehmen die Schrift */
[data-font] body, [data-font] button, [data-font] input, [data-font] textarea, [data-font] select { font-family: var(--font-sans); }

/* Kontextmenüs, Popover, Mega-Menüs, Auswahllisten: drei Varianten (je Branding oder per Tweak)
   standard = leichter Schatten + Haarlinie · schatten = deutlicher Schlagschatten · linie = kein Schatten, innere 1px-Linie */
html[data-elev="schatten"], div[data-elev="schatten"] { --menu-shadow: 0 12px 32px rgba(0,0,0,.18), 0 3px 8px rgba(0,0,0,.10); --menu-ring: 1px solid transparent; }
html[data-theme="dark"][data-elev="schatten"] { --menu-shadow: 0 12px 32px rgba(0,0,0,.55), 0 3px 8px rgba(0,0,0,.35); }
html[data-elev="linie"], div[data-elev="linie"] { --menu-shadow: inset 0 0 0 1px var(--md-sys-color-outline-variant); --menu-ring: 1px solid transparent; }
div[data-elev="standard"] { --menu-shadow: var(--md-elevation-1); --menu-ring: 1px solid var(--divider); }

/* Abstände (je Branding oder per Tweak): häufige Innenabstände von Karten, Zeilen, Menüs und Feldern skaliert. Automatisch erzeugt. */
[data-density="kompakt"] [style*="padding: 12px 16px;"]{padding:8px 11px!important}
[data-density="kompakt"] [style*="padding: 6px 8px;"]{padding:4px 6px!important}
[data-density="kompakt"] [style*="padding: 5px 8px;"]{padding:4px 6px!important}
[data-density="kompakt"] [style*="padding: 12px 20px;"]{padding:8px 14px!important}
[data-density="kompakt"] [style*="padding: 28px 32px;"]{padding:20px 22px!important}
[data-density="kompakt"] [style*="padding: 8px 10px;"]{padding:6px 7px!important}
[data-density="kompakt"] [style*="padding: 0px 7px;"]{padding:0 5px!important}
[data-density="kompakt"] [style*="padding: 0px 14px;"]{padding:0 10px!important}
[data-density="kompakt"] [style*="padding: 0px 10px;"]{padding:0 7px!important}
[data-density="kompakt"] [style*="padding: 10px 16px;"]{padding:7px 11px!important}
[data-density="kompakt"] [style*="padding: 4px 0px 8px;"]{padding:3px 0 6px!important}
[data-density="kompakt"] [style*="padding: 9px 0px;"]{padding:6px 0!important}
[data-density="kompakt"] [style*="padding: 16px 18px;"]{padding:11px 13px!important}
[data-density="kompakt"] [style*="padding: 14px 16px;"]{padding:10px 11px!important}
[data-density="kompakt"] [style*="padding: 10px 12px;"]{padding:7px 8px!important}
[data-density="kompakt"] [style*="padding: 9px 14px;"]{padding:6px 10px!important}
[data-density="kompakt"] [style*="padding: 0px 12px;"]{padding:0 8px!important}
[data-density="kompakt"] [style*="padding: 0px 8px;"]{padding:0 6px!important}
[data-density="kompakt"] [style*="padding: 0px 4px;"]{padding:0 3px!important}
[data-density="kompakt"] [style*="padding: 16px;"]{padding:11px!important}
[data-density="kompakt"] [style*="padding: 7px 13px;"]{padding:5px 9px!important}
[data-density="kompakt"] [style*="padding: 20px;"]{padding:14px!important}
[data-density="kompakt"] [style*="padding: 10px 14px;"]{padding:7px 10px!important}
[data-density="kompakt"] [style*="padding: 6px 12px;"]{padding:4px 8px!important}
[data-density="kompakt"] [style*="padding: 12px 14px;"]{padding:8px 10px!important}
[data-density="kompakt"] [style*="padding: 13px 16px;"]{padding:9px 11px!important}
[data-density="kompakt"] [style*="padding: 9px 10px;"]{padding:6px 7px!important}
[data-density="kompakt"] [style*="padding: 0px 4px 0px 0px;"]{padding:0 3px 0 0!important}
[data-density="kompakt"] [style*="padding: 8px;"]{padding:6px!important}
[data-density="kompakt"] [style*="padding: 11px 14px;"]{padding:8px 10px!important}
[data-density="kompakt"] [style*="padding: 11px 16px;"]{padding:8px 11px!important}
[data-density="kompakt"] [style*="padding: 16px 12px 8px 20px;"]{padding:11px 8px 6px 14px!important}
[data-density="kompakt"] [style*="padding: 0px 12px 8px;"]{padding:0 8px 6px!important}
[data-density="kompakt"] [style*="padding: 9px 8px;"]{padding:6px 6px!important}
[data-density="kompakt"] [style*="padding: 0px 6px 0px 10px;"]{padding:0 4px 0 7px!important}
[data-density="kompakt"] [style*="padding: 10px 8px;"]{padding:7px 6px!important}
[data-density="kompakt"] [style*="padding: 0px 8px 0px 14px;"]{padding:0 6px 0 10px!important}
[data-density="kompakt"] [style*="padding: 12px 16px 8px;"]{padding:8px 11px 6px!important}
[data-density="kompakt"] [style*="padding: 8px 14px;"]{padding:6px 10px!important}
[data-density="kompakt"] [style*="padding: 0px 8px 8px;"]{padding:0 6px 6px!important}
[data-density="kompakt"] [style*="padding: 12px 10px;"]{padding:8px 7px!important}
[data-density="kompakt"] [style*="padding: 8px 0px;"]{padding:6px 0!important}
[data-density="kompakt"] [style*="padding: 11px 13px;"]{padding:8px 9px!important}
[data-density="kompakt"] [style*="padding: 8px 12px;"]{padding:6px 8px!important}
[data-density="kompakt"] [style*="padding: 5px 10px;"]{padding:4px 7px!important}
[data-density="kompakt"] [style*="padding: 10px 0px;"]{padding:7px 0!important}
[data-density="kompakt"] [style*="padding: 12px 0px;"]{padding:8px 0!important}
[data-density="kompakt"] [style*="padding: 7px 12px;"]{padding:5px 8px!important}
[data-density="kompakt"] [style*="padding: 4px;"]{padding:3px!important}
[data-density="kompakt"] [style*="padding: 6px;"]{padding:4px!important}
[data-density="kompakt"] [style*="padding: 9px 12px;"]{padding:6px 8px!important}
[data-density="kompakt"] [style*="padding: 6px 0px;"]{padding:4px 0!important}
[data-density="kompakt"] [style*="padding: 8px 16px;"]{padding:6px 11px!important}
[data-density="kompakt"] [style*="padding: 7px 10px;"]{padding:5px 7px!important}
[data-density="kompakt"] [style*="padding: 4px 0px;"]{padding:3px 0!important}
[data-density="kompakt"] [style*="padding: 7px 8px;"]{padding:5px 6px!important}
[data-density="kompakt"] [style*="padding: 14px 18px 0px;"]{padding:10px 13px 0!important}
[data-density="kompakt"] [style*="padding: 4px 8px;"]{padding:3px 6px!important}
[data-density="kompakt"] [style*="padding: 0px 10px 0px 8px;"]{padding:0 7px 0 6px!important}
[data-density="kompakt"] [style*="padding: 10px 12px 4px;"]{padding:7px 8px 3px!important}
[data-density="kompakt"] [style*="padding: 4px 6px 4px 16px;"]{padding:3px 4px 3px 11px!important}
[data-density="kompakt"] [style*="padding: 9px 11px;"]{padding:6px 8px!important}
[data-density="kompakt"] [style*="padding: 14px 18px;"]{padding:10px 13px!important}
[data-density="kompakt"] [style*="padding: 12px 24px;"]{padding:8px 17px!important}
[data-density="kompakt"] [style*="padding: 0px 16px;"]{padding:0 11px!important}
[data-density="kompakt"] [style*="padding: 6px 10px;"]{padding:4px 7px!important}
[data-density="kompakt"] [style*="padding: 8px 4px 4px;"]{padding:6px 3px 3px!important}
[data-density="kompakt"] [style*="padding: 10px;"]{padding:7px!important}
[data-density="kompakt"] [style*="padding: 14px;"]{padding:10px!important}
[data-density="kompakt"] [style*="padding: 11px 12px;"]{padding:8px 8px!important}
[data-density="kompakt"] [style*="padding: 0px 6px;"]{padding:0 4px!important}
[data-density="kompakt"] [style*="padding: 12px;"]{padding:8px!important}
[data-density="kompakt"] [style*="padding: 0px 5px;"]{padding:0 4px!important}
[data-density="kompakt"] [style*="padding: 4px 6px;"]{padding:3px 4px!important}
[data-density="kompakt"] [style*="padding: 24px;"]{padding:17px!important}
[data-density="kompakt"] [style*="padding: 10px 14px 4px;"]{padding:7px 10px 3px!important}
[data-density="kompakt"] [style*="padding: 6px 14px;"]{padding:4px 10px!important}
[data-density="kompakt"] [style*="padding: 4px 12px;"]{padding:3px 8px!important}
[data-density="kompakt"] [style*="padding: 10px 8px 10px 16px;"]{padding:7px 6px 7px 11px!important}
[data-density="kompakt"] [style*="padding: 7px 14px;"]{padding:5px 10px!important}
[data-density="kompakt"] [style*="padding: 0px 14px 0px 10px;"]{padding:0 10px 0 7px!important}
[data-density="kompakt"] [style*="padding: 0px 16px 14px;"]{padding:0 11px 10px!important}
[data-density="kompakt"] [style*="padding: 0px 8px 0px 12px;"]{padding:0 6px 0 8px!important}
[data-density="kompakt"] [style*="padding: 4px 10px;"]{padding:3px 7px!important}
[data-density="grosszuegig"] [style*="padding: 12px 16px;"]{padding:16px 21px!important}
[data-density="grosszuegig"] [style*="padding: 6px 8px;"]{padding:8px 10px!important}
[data-density="grosszuegig"] [style*="padding: 5px 8px;"]{padding:7px 10px!important}
[data-density="grosszuegig"] [style*="padding: 12px 20px;"]{padding:16px 26px!important}
[data-density="grosszuegig"] [style*="padding: 28px 32px;"]{padding:36px 42px!important}
[data-density="grosszuegig"] [style*="padding: 8px 10px;"]{padding:10px 13px!important}
[data-density="grosszuegig"] [style*="padding: 0px 7px;"]{padding:0 9px!important}
[data-density="grosszuegig"] [style*="padding: 0px 14px;"]{padding:0 18px!important}
[data-density="grosszuegig"] [style*="padding: 0px 10px;"]{padding:0 13px!important}
[data-density="grosszuegig"] [style*="padding: 10px 16px;"]{padding:13px 21px!important}
[data-density="grosszuegig"] [style*="padding: 4px 0px 8px;"]{padding:5px 0 10px!important}
[data-density="grosszuegig"] [style*="padding: 9px 0px;"]{padding:12px 0!important}
[data-density="grosszuegig"] [style*="padding: 16px 18px;"]{padding:21px 23px!important}
[data-density="grosszuegig"] [style*="padding: 14px 16px;"]{padding:18px 21px!important}
[data-density="grosszuegig"] [style*="padding: 10px 12px;"]{padding:13px 16px!important}
[data-density="grosszuegig"] [style*="padding: 9px 14px;"]{padding:12px 18px!important}
[data-density="grosszuegig"] [style*="padding: 0px 12px;"]{padding:0 16px!important}
[data-density="grosszuegig"] [style*="padding: 0px 8px;"]{padding:0 10px!important}
[data-density="grosszuegig"] [style*="padding: 0px 4px;"]{padding:0 5px!important}
[data-density="grosszuegig"] [style*="padding: 16px;"]{padding:21px!important}
[data-density="grosszuegig"] [style*="padding: 7px 13px;"]{padding:9px 17px!important}
[data-density="grosszuegig"] [style*="padding: 20px;"]{padding:26px!important}
[data-density="grosszuegig"] [style*="padding: 10px 14px;"]{padding:13px 18px!important}
[data-density="grosszuegig"] [style*="padding: 6px 12px;"]{padding:8px 16px!important}
[data-density="grosszuegig"] [style*="padding: 12px 14px;"]{padding:16px 18px!important}
[data-density="grosszuegig"] [style*="padding: 13px 16px;"]{padding:17px 21px!important}
[data-density="grosszuegig"] [style*="padding: 9px 10px;"]{padding:12px 13px!important}
[data-density="grosszuegig"] [style*="padding: 0px 4px 0px 0px;"]{padding:0 5px 0 0!important}
[data-density="grosszuegig"] [style*="padding: 8px;"]{padding:10px!important}
[data-density="grosszuegig"] [style*="padding: 11px 14px;"]{padding:14px 18px!important}
[data-density="grosszuegig"] [style*="padding: 11px 16px;"]{padding:14px 21px!important}
[data-density="grosszuegig"] [style*="padding: 16px 12px 8px 20px;"]{padding:21px 16px 10px 26px!important}
[data-density="grosszuegig"] [style*="padding: 0px 12px 8px;"]{padding:0 16px 10px!important}
[data-density="grosszuegig"] [style*="padding: 9px 8px;"]{padding:12px 10px!important}
[data-density="grosszuegig"] [style*="padding: 0px 6px 0px 10px;"]{padding:0 8px 0 13px!important}
[data-density="grosszuegig"] [style*="padding: 10px 8px;"]{padding:13px 10px!important}
[data-density="grosszuegig"] [style*="padding: 0px 8px 0px 14px;"]{padding:0 10px 0 18px!important}
[data-density="grosszuegig"] [style*="padding: 12px 16px 8px;"]{padding:16px 21px 10px!important}
[data-density="grosszuegig"] [style*="padding: 8px 14px;"]{padding:10px 18px!important}
[data-density="grosszuegig"] [style*="padding: 0px 8px 8px;"]{padding:0 10px 10px!important}
[data-density="grosszuegig"] [style*="padding: 12px 10px;"]{padding:16px 13px!important}
[data-density="grosszuegig"] [style*="padding: 8px 0px;"]{padding:10px 0!important}
[data-density="grosszuegig"] [style*="padding: 11px 13px;"]{padding:14px 17px!important}
[data-density="grosszuegig"] [style*="padding: 8px 12px;"]{padding:10px 16px!important}
[data-density="grosszuegig"] [style*="padding: 5px 10px;"]{padding:7px 13px!important}
[data-density="grosszuegig"] [style*="padding: 10px 0px;"]{padding:13px 0!important}
[data-density="grosszuegig"] [style*="padding: 12px 0px;"]{padding:16px 0!important}
[data-density="grosszuegig"] [style*="padding: 7px 12px;"]{padding:9px 16px!important}
[data-density="grosszuegig"] [style*="padding: 4px;"]{padding:5px!important}
[data-density="grosszuegig"] [style*="padding: 6px;"]{padding:8px!important}
[data-density="grosszuegig"] [style*="padding: 9px 12px;"]{padding:12px 16px!important}
[data-density="grosszuegig"] [style*="padding: 6px 0px;"]{padding:8px 0!important}
[data-density="grosszuegig"] [style*="padding: 8px 16px;"]{padding:10px 21px!important}
[data-density="grosszuegig"] [style*="padding: 7px 10px;"]{padding:9px 13px!important}
[data-density="grosszuegig"] [style*="padding: 4px 0px;"]{padding:5px 0!important}
[data-density="grosszuegig"] [style*="padding: 7px 8px;"]{padding:9px 10px!important}
[data-density="grosszuegig"] [style*="padding: 14px 18px 0px;"]{padding:18px 23px 0!important}
[data-density="grosszuegig"] [style*="padding: 4px 8px;"]{padding:5px 10px!important}
[data-density="grosszuegig"] [style*="padding: 0px 10px 0px 8px;"]{padding:0 13px 0 10px!important}
[data-density="grosszuegig"] [style*="padding: 10px 12px 4px;"]{padding:13px 16px 5px!important}
[data-density="grosszuegig"] [style*="padding: 4px 6px 4px 16px;"]{padding:5px 8px 5px 21px!important}
[data-density="grosszuegig"] [style*="padding: 9px 11px;"]{padding:12px 14px!important}
[data-density="grosszuegig"] [style*="padding: 14px 18px;"]{padding:18px 23px!important}
[data-density="grosszuegig"] [style*="padding: 12px 24px;"]{padding:16px 31px!important}
[data-density="grosszuegig"] [style*="padding: 0px 16px;"]{padding:0 21px!important}
[data-density="grosszuegig"] [style*="padding: 6px 10px;"]{padding:8px 13px!important}
[data-density="grosszuegig"] [style*="padding: 8px 4px 4px;"]{padding:10px 5px 5px!important}
[data-density="grosszuegig"] [style*="padding: 10px;"]{padding:13px!important}
[data-density="grosszuegig"] [style*="padding: 14px;"]{padding:18px!important}
[data-density="grosszuegig"] [style*="padding: 11px 12px;"]{padding:14px 16px!important}
[data-density="grosszuegig"] [style*="padding: 0px 6px;"]{padding:0 8px!important}
[data-density="grosszuegig"] [style*="padding: 12px;"]{padding:16px!important}
[data-density="grosszuegig"] [style*="padding: 0px 5px;"]{padding:0 7px!important}
[data-density="grosszuegig"] [style*="padding: 4px 6px;"]{padding:5px 8px!important}
[data-density="grosszuegig"] [style*="padding: 24px;"]{padding:31px!important}
[data-density="grosszuegig"] [style*="padding: 10px 14px 4px;"]{padding:13px 18px 5px!important}
[data-density="grosszuegig"] [style*="padding: 6px 14px;"]{padding:8px 18px!important}
[data-density="grosszuegig"] [style*="padding: 4px 12px;"]{padding:5px 16px!important}
[data-density="grosszuegig"] [style*="padding: 10px 8px 10px 16px;"]{padding:13px 10px 13px 21px!important}
[data-density="grosszuegig"] [style*="padding: 7px 14px;"]{padding:9px 18px!important}
[data-density="grosszuegig"] [style*="padding: 0px 14px 0px 10px;"]{padding:0 18px 0 13px!important}
[data-density="grosszuegig"] [style*="padding: 0px 16px 14px;"]{padding:0 21px 18px!important}
[data-density="grosszuegig"] [style*="padding: 0px 8px 0px 12px;"]{padding:0 10px 0 16px!important}
[data-density="grosszuegig"] [style*="padding: 4px 10px;"]{padding:5px 13px!important}
/* Abstände – Breite */
[data-density="kompakt"] :is(nav > [style*="margin: "], [data-comment-anchor="125056c700-div-44-5"]){margin-left:0!important;margin-right:0!important;border-radius:0!important}
[data-density="kompakt"] nav > [style*="gap: 16px"]{gap:12px!important}
[data-density="kompakt"] :is([role="menu"],[role="listbox"])[style*="padding"]{padding-left:0!important;padding-right:0!important}
[data-density="kompakt"] :is([role="menu"],[role="listbox"]) :is([role="menuitem"],[role="option"],[role="menuitemradio"],[role="menuitemcheckbox"]){border-radius:0!important;margin-left:0!important;margin-right:0!important}
[data-density="grosszuegig"] nav > [style*="margin: 2px 8px"]:not([style*="justify-content: center"]){margin:3px 12px!important}
[data-density] nav > [style*="justify-content: center"]{padding-left:0!important;padding-right:0!important}
[data-density="grosszuegig"] :is([role="menu"],[role="listbox"])[style*="padding: 6px"]{padding:8px!important}

/* Zustimmung / erledigt — sattes Grün, unabhängig vom Branding (Rot bleibt Ablehnung) */
:root{--agree:#2E7D32;--agree-fg:#1B5E20;--agree-bg:#DCEFD9}
[data-theme='dark']{--agree:#5BC26A;--agree-fg:#A5E3AD;--agree-bg:color-mix(in srgb,#5BC26A 22%,var(--surface-paper))}

/* Bewertungsstufen (Abgaben): Schlecht → Großartig. Fläche (--rate-N), Text darauf (-on), Text auf Tönung (-ink) */
:root{
  --rate-0:#b3404c;--rate-0-on:#ffffff;--rate-0-ink:#8e2031;
  --rate-1:oklch(0.55 0.15 47);--rate-1-on:#ffffff;--rate-1-ink:oklch(0.46 0.12 45);
  --rate-2:oklch(0.82 0.15 86);--rate-2-on:#3a2b00;--rate-2-ink:oklch(0.47 0.1 78);
  --rate-3:oklch(0.76 0.16 128);--rate-3-on:#142600;--rate-3-ink:oklch(0.45 0.12 130);
  --rate-4:oklch(0.52 0.13 130);--rate-4-on:#ffffff;--rate-4-ink:oklch(0.4 0.11 132);
}
[data-theme='dark']{
  --rate-0:#f0959c;--rate-0-on:#4d0010;--rate-0-ink:#ffb3b8;
  --rate-1:oklch(0.77 0.13 55);--rate-1-on:#3d1800;--rate-1-ink:oklch(0.85 0.1 60);
  --rate-2:oklch(0.86 0.13 88);--rate-2-on:#332600;--rate-2-ink:oklch(0.89 0.11 90);
  --rate-3:oklch(0.83 0.14 130);--rate-3-on:#1a2e00;--rate-3-ink:oklch(0.88 0.12 130);
  --rate-4:oklch(0.74 0.17 136);--rate-4-on:#0f2600;--rate-4-ink:oklch(0.86 0.13 135);
}
:root{--att-excused:oklch(0.56 0.11 245)}
[data-theme='dark']{--att-excused:oklch(0.76 0.1 245)}
/* Dekor der Begrüßung ohne Branding: Petrol + Lime */
:root{--brand-deco-1:var(--color-primary);--brand-deco-2:var(--color-secondary)}
