/* =========================================================================
   P90 — einzige Quelle der Farb-Tokens.
   Aufbau:  BASE (Form, Schrift) · STD (Standard-Theme, hell + dunkel) · Themes.
   Der STD-Block wird von tools/p90-theme-default.mjs aus einem Theme erzeugt und
   von tools/p86-build-startseite.mjs in die Startseite eingebettet; src/brand.js
   (Worker-Seiten, Mails) muss dieselben Werte tragen (tools/test-p90.mjs prueft das).
   Modus + Theme kommen als Attribute am <html> (Inline-Skript in app.html).
   ========================================================================= */
:root {
  --radius: 16px;
  --radius-sm: 12px;
  --radius-lg: 22px;
  --ease: cubic-bezier(.2, .7, .3, 1);
  --dur: .22s;
  --font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-head: var(--font);   /* P90 90.4: Inter fuer Ueberschriften und Zahlen (Schriftprobe); zurueck: "Baloo 2", var(--font) */
  --font-greet: "Baloo 2", var(--font);   /* Begruessung */
}
/*P90:DEFAULT=creme*/
/*STD-BEGIN*/
:root {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 11%, var(--surface));
  --ok: #2e7d5b;
  --on-ok: #ffffff;
  --danger: #c23a52;
  --on-danger: #ffffff;
  --vio: #6d4cf0;
  --vio-soft: #ece7ff;
  --vio-ink: #4b2fb0;
  --amb: #e0900f;
  --amb-soft: #fdeccb;
  --amb-ink: #7a4e00;
  --t-recht: #d6455d;
  --t-technik: #0e8f8f;
  --t-unterrichtsmaterial: #2e7d5b;
  --c-beispiel: #2e7d5b;
  --bar-ok: #2e7d5b;
  --prio-green: #4f9a76;
  --success: #2e7d5b;
  --sev-low: #256b4d;
  --sev-low-bg: rgba(46,125,91,.14);
  --diff-add-bg: rgba(46,125,91,.16);
  --diff-add-fg: #1f5d43;
  --st-co-merke: #2d3845;
  --st-co-bsp: #2e7d5b;
  --st-co-pr: #3d4c63;
  --st-recht-ink: #b3263d;
  --st-paed-ink: #2d3845;
  --st-bsp-ink: #22664a;
  --st-pr-ink: #3d4c63;
  --st-raise: var(--surface);
  --st-sheet: var(--surface);
  --st-tint: 6%;
  --bg: #f7f3ec;
  --surface: #fffdf8;
  --surface-2: #efe9df;
  --text: #1f2328;
  --muted: #5c5f65;
  --border: #e4dccd;
  --field-border: #918a7e;
  --primary: #2d3845;
  --primary-d: #232c37;
  --on-primary: #ffffff;
  --go: #c28a1e;
  --go-d: #d19a2c;
  --on-go: #1f2328;
  --acc: #b8862b;
  --acc-soft: #f5ecd9;
  --acc-ink: #7a5510;
  --on-acc: #1f2328;
  --hero-bg: #2d3845;
  --hero-cta-bg: #fffdf8;
  --hero-cta-fg: #2d3845;
  --dd-ring: #b8862b;
  --dd-hero-go-fg: #2d3845;
  --dd-go-bg: #4a5868;
  --dd-go-fg: #ffffff;
  --dd-grad: #2d3845;
  --onb-road: rgba(255,255,255,.08);
  --onb-overlay: rgba(24,22,18,.62);
  --shadow: 0 1px 2px rgba(50,42,28,.06), 0 6px 16px rgba(50,42,28,.06);
  --shadow-lg: 0 14px 32px rgba(50,42,28,.12);
  --t-paedagogik: #7c5ae2;
  --t-verkehrsverhalten: #0f74bd;
  --theme-color: #2d3845;
  --favicon: #1f2328;
  --brand-link: #7a5510;
  --brand-btn: #2d3845;
  --brand-btn-fg: #ffffff;
  --st-text-2: #3c4046;
  --st-ink: #7a5510;
  --st-focus: #7a5510;
  --st-btn-bg: #c28a1e;
  --st-btn-bg-h: #d19a2c;
  --st-btn-fg: #1f2328;
  --st-soft: #f5ecd9;
  --st-soft-2: #faf5ea;
  --st-well: #f3eee4;
  --st-divider: #e4dccd;
  --st-amber: #b8862b;
  --st-logo: #1f2328;
  --st-shade: 50,42,28;
  --st-deep: 24,20,12;
  --st-road: rgba(255,255,255,.07);
  --st-shadow-sm: 0 1px 2px rgba(50,42,28,.05), 0 4px 12px rgba(50,42,28,.05);
  --st-shadow-lg: 0 22px 50px rgba(50,42,28,.14), 0 4px 12px rgba(50,42,28,.06);
  --fahri-body-1: #ffffff;
  --fahri-body-2: #f6f7f5;
  --fahri-body-3: #e8eae6;
  --fahri-stroke: #d9ddd8;
  --fahri-glass-1: #d9dedc;
  --fahri-glass-2: #a9b5b1;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: var(--primary-d);
  --fab-fg: var(--on-primary);
  --sn-logo-bg: var(--dd-grad);
  --sn-logo-shadow: none;
  --hero-line: transparent;
  --nav-ic-filter: grayscale(1) contrast(1.25) brightness(.72);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: #946310;
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(.4) contrast(1.6);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 95%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #2d3845;
  --c-pruefung: #3d4c63;
  --hd-go-bg: #e9e4da;
  --hd-go-fg: #2d3845;
}
.dark-tokens, html[data-mode="dark"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 14%, var(--surface));
  --ok: #5db58d;
  --on-ok: #0e1512;
  --danger: #ff8a97;
  --on-danger: #2a0a10;
  --vio: #a98bff;
  --vio-soft: #241a3a;
  --vio-ink: #d6c2ff;
  --amb: #f4b450;
  --amb-soft: #3a2a12;
  --amb-ink: #ffd79a;
  --t-recht: #e0566d;
  --t-technik: #14a8a8;
  --t-unterrichtsmaterial: #5db58d;
  --c-beispiel: #5db58d;
  --bar-ok: #5db58d;
  --prio-green: #5db58d;
  --success: #5db58d;
  --sev-low: #5db58d;
  --sev-low-bg: rgba(93,181,141,.16);
  --diff-add-bg: rgba(93,181,141,.18);
  --diff-add-fg: #9fe0c0;
  --shadow: 0 12px 28px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.26);
  --shadow-lg: 0 16px 42px rgba(0,0,0,.48);
  --st-shadow-sm: 0 1px 2px rgba(0,0,0,.30), 0 6px 16px rgba(0,0,0,.24);
  --st-shadow-lg: 0 24px 54px rgba(0,0,0,.50), 0 4px 12px rgba(0,0,0,.30);
  --st-co-merke: #938c80;
  --st-co-bsp: #5db58d;
  --st-co-pr: #6f8299;
  --st-recht-ink: #ff9eac;
  --st-paed-ink: #d8d2c6;
  --st-bsp-ink: #8fdcb4;
  --st-pr-ink: #b4c3d6;
  --st-shade: 0,0,0;
  --st-deep: 0,0,0;
  --st-tint: 10%;
  --bg: #1a1816;
  --surface: #23201c;
  --surface-2: #2d2924;
  --text: #efeae2;
  --muted: #aaa397;
  --border: #38332c;
  --field-border: #776f63;
  --primary: #efeae2;
  --primary-d: #d6d0c6;
  --on-primary: #1f1b14;
  --go: #d9a441;
  --go-d: #c4902f;
  --on-go: #1f1b14;
  --acc: #d9a441;
  --acc-soft: #352e22;
  --acc-ink: #e8c98a;
  --on-acc: #1f1b14;
  --hero-bg: #3a352d;
  --hero-cta-bg: #d9a441;
  --hero-cta-fg: #1f1b14;
  --dd-ring: #d9a441;
  --dd-hero-go-fg: #1f1b14;
  --dd-go-bg: #443e35;
  --dd-go-fg: #ffffff;
  --dd-grad: #cfc9bd;
  --onb-road: rgba(255,255,255,.07);
  --onb-overlay: rgba(0,0,0,.62);
  --t-paedagogik: #8577f5;
  --t-verkehrsverhalten: #369be2;
  --theme-color: #1a1816;
  --favicon: #efeae2;
  --brand-link: #e8c98a;
  --brand-btn: #d9a441;
  --brand-btn-fg: #1f1b14;
  --st-text-2: #cfc9bf;
  --st-ink: #e8c98a;
  --st-focus: #e8c98a;
  --st-btn-bg: #d9a441;
  --st-btn-bg-h: #e4b459;
  --st-btn-fg: #1f1b14;
  --st-soft: #2f291f;
  --st-soft-2: #28231b;
  --st-raise: #2d2924;
  --st-sheet: #312d27;
  --st-well: #37322b;
  --st-divider: #403a32;
  --st-amber: #d9a441;
  --st-logo: #efeae2;
  --st-road: rgba(255,255,255,.06);
  --fahri-body-1: #e4e6e2;
  --fahri-body-2: #dcdeda;
  --fahri-body-3: #cfd2cd;
  --fahri-stroke: #c9ccc7;
  --fahri-glass-1: #c9cfcd;
  --fahri-glass-2: #9aa6a2;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: #37322b;
  --fab-fg: var(--text);
  --sn-logo-bg: transparent;
  --sn-logo-shadow: none;
  --hero-line: color-mix(in srgb, var(--acc) 30%, transparent);
  --nav-ic-filter: grayscale(1) contrast(1.1) brightness(1.25);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: var(--st-ink);
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(1.6) contrast(1.1);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 84%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #d8d2c6;
  --c-pruefung: #8fa3bd;
  --hd-go-bg: #37322b;
  --hd-go-fg: #efeae2;
}
@media (prefers-color-scheme: dark) {
  html:not([data-mode]) {
    --hero-bg-2: var(--hero-bg);
    --hero-scrim: none;
    --hero-disc: rgba(0,0,0,.22);
    --sky1: var(--hero-bg);
    --sky2: var(--hero-bg);
    --dd-hero-glow: transparent;
    --dd-hero-bg: var(--hero-bg);
    --onb-hero-bg: var(--hero-bg);
    --glow: 0 0 #0000;
    --bg-glow: none;
    --st-glow: 0 0 #0000;
    --st-stage-bg: var(--hero-bg);
    --st-body-bg: var(--bg);
    --st-line: color-mix(in srgb, var(--text) 14%, var(--surface));
    --ok: #5db58d;
    --on-ok: #0e1512;
    --danger: #ff8a97;
    --on-danger: #2a0a10;
    --vio: #a98bff;
    --vio-soft: #241a3a;
    --vio-ink: #d6c2ff;
    --amb: #f4b450;
    --amb-soft: #3a2a12;
    --amb-ink: #ffd79a;
    --t-recht: #e0566d;
    --t-technik: #14a8a8;
    --t-unterrichtsmaterial: #5db58d;
    --c-beispiel: #5db58d;
    --bar-ok: #5db58d;
    --prio-green: #5db58d;
    --success: #5db58d;
    --sev-low: #5db58d;
    --sev-low-bg: rgba(93,181,141,.16);
    --diff-add-bg: rgba(93,181,141,.18);
    --diff-add-fg: #9fe0c0;
    --shadow: 0 12px 28px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.26);
    --shadow-lg: 0 16px 42px rgba(0,0,0,.48);
    --st-shadow-sm: 0 1px 2px rgba(0,0,0,.30), 0 6px 16px rgba(0,0,0,.24);
    --st-shadow-lg: 0 24px 54px rgba(0,0,0,.50), 0 4px 12px rgba(0,0,0,.30);
    --st-co-merke: #938c80;
    --st-co-bsp: #5db58d;
    --st-co-pr: #6f8299;
    --st-recht-ink: #ff9eac;
    --st-paed-ink: #d8d2c6;
    --st-bsp-ink: #8fdcb4;
    --st-pr-ink: #b4c3d6;
    --st-shade: 0,0,0;
    --st-deep: 0,0,0;
    --st-tint: 10%;
    --bg: #1a1816;
    --surface: #23201c;
    --surface-2: #2d2924;
    --text: #efeae2;
    --muted: #aaa397;
    --border: #38332c;
    --field-border: #776f63;
    --primary: #efeae2;
    --primary-d: #d6d0c6;
    --on-primary: #1f1b14;
    --go: #d9a441;
    --go-d: #c4902f;
    --on-go: #1f1b14;
    --acc: #d9a441;
    --acc-soft: #352e22;
    --acc-ink: #e8c98a;
    --on-acc: #1f1b14;
    --hero-bg: #3a352d;
    --hero-cta-bg: #d9a441;
    --hero-cta-fg: #1f1b14;
    --dd-ring: #d9a441;
    --dd-hero-go-fg: #1f1b14;
    --dd-go-bg: #443e35;
    --dd-go-fg: #ffffff;
    --dd-grad: #cfc9bd;
    --onb-road: rgba(255,255,255,.07);
    --onb-overlay: rgba(0,0,0,.62);
    --t-paedagogik: #8577f5;
    --t-verkehrsverhalten: #369be2;
    --theme-color: #1a1816;
    --favicon: #efeae2;
    --brand-link: #e8c98a;
    --brand-btn: #d9a441;
    --brand-btn-fg: #1f1b14;
    --st-text-2: #cfc9bf;
    --st-ink: #e8c98a;
    --st-focus: #e8c98a;
    --st-btn-bg: #d9a441;
    --st-btn-bg-h: #e4b459;
    --st-btn-fg: #1f1b14;
    --st-soft: #2f291f;
    --st-soft-2: #28231b;
    --st-raise: #2d2924;
    --st-sheet: #312d27;
    --st-well: #37322b;
    --st-divider: #403a32;
    --st-amber: #d9a441;
    --st-logo: #efeae2;
    --st-road: rgba(255,255,255,.06);
    --fahri-body-1: #e4e6e2;
    --fahri-body-2: #dcdeda;
    --fahri-body-3: #cfd2cd;
    --fahri-stroke: #c9ccc7;
    --fahri-glass-1: #c9cfcd;
    --fahri-glass-2: #9aa6a2;
    --fahri-eye-1: #2f3b36;
    --fahri-eye-2: #0e1714;
    --fahri-shade: #141c18;
    --fahri-dash: #1f2724;
    --fahri-mouth: #15231b;
    --fahri-wheel: #15231b;
    --fahri-tire: #2f3b36;
    --fahri-hub: #d9982a;
    --band-bg: var(--hero-bg);
    --band-scrim: none;
    --band-icon-mix: 45%;
    --dd-bar-mix: 0%;
    --link: var(--acc-ink);
    --fab-bg: #37322b;
    --fab-fg: var(--text);
    --sn-logo-bg: transparent;
    --sn-logo-shadow: none;
    --hero-line: color-mix(in srgb, var(--acc) 30%, transparent);
    --nav-ic-filter: grayscale(1) contrast(1.1) brightness(1.25);
    --mm-base: 1;
    --placeholder: var(--muted);
    --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
    --diagram-mix: 0%;
    --diagram-line-mix: 0%;
    --st-hl: var(--st-ink);
    --fahri-cheek: #e3c9b4;
    --mode-ic-filter: grayscale(1) brightness(1.6) contrast(1.1);
    --icon-soft-filter: saturate(.7);
    --tag-mix: 100%;
    --dd-goal: var(--dd-ring);
    --dd-s3-mix: 84%;
    --hd-fab-shadow: 0 0 0 3px var(--bg);
    --c-merke: #d8d2c6;
    --c-pruefung: #8fa3bd;
    --hd-go-bg: #37322b;
    --hd-go-fg: #efeae2;
  }
}
/*STD-END*/

/* ---- Theme: Hoher Kontrast (Definition unveraendert; geerbte Akzente kommen aus dem Standard) ---- */
html[data-theme="contrast"] {
  --bg: #ffffff; --surface: #ffffff; --surface-2: #eeeeee;
  --text: #000000; --muted: #2e2e2e; --border: #000000;
  --primary: #0040d0; --primary-d: #0030a0; --ok: #00660d; --danger: #c00000;
  --shadow: none; --shadow-lg: 0 0 0 2px #000;
  --bg-glow: none;
  --field-border: var(--border);
}
html[data-theme="contrast"][data-mode="dark"] {
  --bg: #000000; --surface: #0a0a0a; --surface-2: #1c1c1c;
  --text: #ffffff; --muted: #d6d6d6; --border: #ffffff;
  --primary: #66aaff; --primary-d: #4f97f0; --ok: #4ade5e; --danger: #ff6b6b;
  --shadow: none; --shadow-lg: 0 0 0 2px #fff;
  --field-border: var(--border);
}

/* ---- Themes: je ein vollstaendiger Satz hell + dunkel (tools/p90-theme-default.mjs macht daraus den Standard) ---- */
html[data-theme="tinte"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 11%, var(--surface));
  --ok: #2e7d5b;
  --on-ok: #ffffff;
  --danger: #c23a52;
  --on-danger: #ffffff;
  --vio: #6d4cf0;
  --vio-soft: #ece7ff;
  --vio-ink: #4b2fb0;
  --amb: #e0900f;
  --amb-soft: #fdeccb;
  --amb-ink: #7a4e00;
  --t-recht: #d6455d;
  --t-technik: #0e8f8f;
  --t-unterrichtsmaterial: #2e7d5b;
  --c-beispiel: #2e7d5b;
  --bar-ok: #2e7d5b;
  --prio-green: #4f9a76;
  --success: #2e7d5b;
  --sev-low: #256b4d;
  --sev-low-bg: rgba(46,125,91,.14);
  --diff-add-bg: rgba(46,125,91,.16);
  --diff-add-fg: #1f5d43;
  --st-co-merke: #1f2724;
  --st-co-bsp: #2e7d5b;
  --st-co-pr: #3d4c63;
  --st-recht-ink: #b3263d;
  --st-paed-ink: #1f2724;
  --st-bsp-ink: #22664a;
  --st-pr-ink: #3d4c63;
  --st-raise: var(--surface);
  --st-sheet: var(--surface);
  --st-tint: 6%;
  --bg: #f3f4f1;
  --surface: #ffffff;
  --surface-2: #e9ebe6;
  --text: #15231b;
  --muted: #5a6560;
  --border: #dfe3dd;
  --field-border: #8b938e;
  --primary: #1f2724;
  --primary-d: #161c1a;
  --on-primary: #ffffff;
  --go: #c98f2b;
  --go-d: #b67f22;
  --on-go: #15231b;
  --acc: #bf7f12;
  --acc-soft: #f8ecd6;
  --acc-ink: #7a5208;
  --on-acc: #15231b;
  --hero-bg: #1f2724;
  --hero-cta-bg: #dc992b;
  --hero-cta-fg: #15231b;
  --dd-ring: #bf7f12;
  --dd-hero-go-fg: #15231b;
  --dd-go-bg: #2d3833;
  --dd-go-fg: #ffffff;
  --dd-grad: #1f2724;
  --onb-road: rgba(255,255,255,.08);
  --onb-overlay: rgba(12,18,15,.62);
  --shadow: 0 1px 2px rgba(20,28,24,.06), 0 6px 16px rgba(20,28,24,.06);
  --shadow-lg: 0 14px 32px rgba(20,28,24,.12);
  --t-paedagogik: #875ae2;
  --t-verkehrsverhalten: #2f6ea5;
  --theme-color: #1f2724;
  --favicon: #15231b;
  --brand-link: #7a5208;
  --brand-btn: #1f2724;
  --brand-btn-fg: #ffffff;
  --st-text-2: #36423c;
  --st-ink: #7a5208;
  --st-focus: #7a5208;
  --st-btn-bg: #d9982e;
  --st-btn-bg-h: #c98a22;
  --st-btn-fg: #15231b;
  --st-soft: #f8ecd6;
  --st-soft-2: #fbf5e9;
  --st-well: #eef0ec;
  --st-divider: #dfe3dd;
  --st-amber: #dc992b;
  --st-logo: #15231b;
  --st-shade: 20,28,24;
  --st-deep: 10,16,13;
  --st-road: rgba(255,255,255,.07);
  --st-shadow-sm: 0 1px 2px rgba(20,28,24,.05), 0 4px 12px rgba(20,28,24,.05);
  --st-shadow-lg: 0 22px 50px rgba(20,28,24,.14), 0 4px 12px rgba(20,28,24,.06);
  --fahri-body-1: #ffffff;
  --fahri-body-2: #f6f7f5;
  --fahri-body-3: #e8eae6;
  --fahri-stroke: #d9ddd8;
  --fahri-glass-1: #d9dedc;
  --fahri-glass-2: #a9b5b1;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: var(--primary-d);
  --fab-fg: var(--on-primary);
  --sn-logo-bg: var(--dd-grad);
  --sn-logo-shadow: none;
  --hero-line: transparent;
  --nav-ic-filter: grayscale(1) contrast(1.25) brightness(.72);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: #a86e0c;
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(.4) contrast(1.6);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 95%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #1f2724;
  --c-pruefung: #3d4c63;
  --hd-go-bg: #e6e8e3;
  --hd-go-fg: #1f2724;
}
html[data-theme="tinte"][data-mode="dark"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 14%, var(--surface));
  --ok: #5db58d;
  --on-ok: #0e1512;
  --danger: #ff8a97;
  --on-danger: #2a0a10;
  --vio: #a98bff;
  --vio-soft: #241a3a;
  --vio-ink: #d6c2ff;
  --amb: #f4b450;
  --amb-soft: #3a2a12;
  --amb-ink: #ffd79a;
  --t-recht: #e0566d;
  --t-technik: #14a8a8;
  --t-unterrichtsmaterial: #5db58d;
  --c-beispiel: #7fb39b;
  --bar-ok: #5db58d;
  --prio-green: #5db58d;
  --success: #5db58d;
  --sev-low: #5db58d;
  --sev-low-bg: rgba(93,181,141,.16);
  --diff-add-bg: rgba(93,181,141,.18);
  --diff-add-fg: #9fe0c0;
  --shadow: 0 12px 28px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.26);
  --shadow-lg: 0 16px 42px rgba(0,0,0,.48);
  --st-shadow-sm: 0 1px 2px rgba(0,0,0,.30), 0 6px 16px rgba(0,0,0,.24);
  --st-shadow-lg: 0 24px 54px rgba(0,0,0,.50), 0 4px 12px rgba(0,0,0,.30);
  --st-co-merke: #8f9794;
  --st-co-bsp: #5db58d;
  --st-co-pr: #6f8299;
  --st-recht-ink: #ff9eac;
  --st-paed-ink: #d8dad6;
  --st-bsp-ink: #8fdcb4;
  --st-pr-ink: #b4c3d6;
  --st-shade: 0,0,0;
  --st-deep: 0,0,0;
  --st-tint: 10%;
  --bg: #111412;
  --surface: #191d1b;
  --surface-2: #222725;
  --text: #eef1ec;
  --muted: #a3ada7;
  --border: #2c312e;
  --field-border: #6d7671;
  --primary: #e6e8e3;
  --primary-d: #cfd2cc;
  --on-primary: #15231b;
  --go: #e3a64a;
  --go-d: #cf9233;
  --on-go: #15231b;
  --acc: #e3a64a;
  --acc-soft: #33291a;
  --acc-ink: #f0c27d;
  --on-acc: #15231b;
  --hero-bg: #2b2f30;
  --hero-cta-bg: #e3a64a;
  --hero-cta-fg: #15231b;
  --dd-ring: #e3a64a;
  --dd-hero-go-fg: #15231b;
  --dd-go-bg: #343c38;
  --dd-go-fg: #ffffff;
  --dd-grad: #c5c9c3;
  --onb-road: rgba(255,255,255,.07);
  --onb-overlay: rgba(0,0,0,.62);
  --t-paedagogik: #8577f5;
  --t-verkehrsverhalten: #369be2;
  --theme-color: #111513;
  --favicon: #eef1ec;
  --brand-link: #e3a64a;
  --brand-btn: #e3a64a;
  --brand-btn-fg: #15231b;
  --st-text-2: #c8d0cb;
  --st-ink: #f0c27d;
  --st-focus: #f0c27d;
  --st-btn-bg: #e3a64a;
  --st-btn-bg-h: #eeb55f;
  --st-btn-fg: #15231b;
  --st-soft: #2c2419;
  --st-soft-2: #231e16;
  --st-raise: #222725;
  --st-sheet: #272c2a;
  --st-well: #2d322f;
  --st-divider: #353a37;
  --st-amber: #e3a64a;
  --st-logo: #eef1ec;
  --st-road: rgba(255,255,255,.06);
  --fahri-body-1: #e4e6e2;
  --fahri-body-2: #dcdeda;
  --fahri-body-3: #cfd2cd;
  --fahri-stroke: #c9ccc7;
  --fahri-glass-1: #c9cfcd;
  --fahri-glass-2: #9aa6a2;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: #2c3330;
  --fab-fg: var(--text);
  --sn-logo-bg: transparent;
  --sn-logo-shadow: none;
  --hero-line: color-mix(in srgb, var(--acc) 30%, transparent);
  --nav-ic-filter: grayscale(1) contrast(1.1) brightness(1.25);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: var(--st-ink);
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(1.6) contrast(1.1);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 84%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #d8dad6;
  --c-pruefung: #8fa3bd;
  --hd-go-bg: #2c3330;
  --hd-go-fg: #e6e8e3;
}
html[data-theme="signal"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 11%, var(--surface));
  --ok: #2e7d5b;
  --on-ok: #ffffff;
  --danger: #c23a52;
  --on-danger: #ffffff;
  --vio: #6d4cf0;
  --vio-soft: #ece7ff;
  --vio-ink: #4b2fb0;
  --amb: #e0900f;
  --amb-soft: #fdeccb;
  --amb-ink: #7a4e00;
  --t-recht: #d6455d;
  --t-technik: #0e8f8f;
  --t-unterrichtsmaterial: #2e7d5b;
  --c-beispiel: #2e7d5b;
  --bar-ok: #2e7d5b;
  --prio-green: #4f9a76;
  --success: #2e7d5b;
  --sev-low: #256b4d;
  --sev-low-bg: rgba(46,125,91,.14);
  --diff-add-bg: rgba(46,125,91,.16);
  --diff-add-fg: #1f5d43;
  --st-co-merke: #1f2d5c;
  --st-co-bsp: #2e7d5b;
  --st-co-pr: #55606a;
  --st-recht-ink: #b3263d;
  --st-paed-ink: #1f2d5c;
  --st-bsp-ink: #22664a;
  --st-pr-ink: #47525c;
  --st-raise: var(--surface);
  --st-sheet: var(--surface);
  --st-tint: 6%;
  --bg: #f5f6f8;
  --surface: #ffffff;
  --surface-2: #eaedf1;
  --text: #1b2430;
  --muted: #576373;
  --border: #dde2e8;
  --field-border: #8a94a1;
  --primary: #1f2d5c;
  --primary-d: #172346;
  --on-primary: #ffffff;
  --go: #1d4ed8;
  --go-d: #1a43bb;
  --on-go: #ffffff;
  --acc: #2a62ee;
  --acc-soft: #e5ecfd;
  --acc-ink: #1d49b8;
  --on-acc: #ffffff;
  --hero-bg: #1f2d5c;
  --hero-cta-bg: #ffffff;
  --hero-cta-fg: #1f2d5c;
  --dd-ring: #2a62ee;
  --dd-hero-go-fg: #1f2d5c;
  --dd-go-bg: #2e3f78;
  --dd-go-fg: #ffffff;
  --dd-grad: #1f2d5c;
  --onb-road: rgba(255,255,255,.08);
  --onb-overlay: rgba(13,18,30,.62);
  --shadow: 0 1px 2px rgba(20,30,50,.06), 0 6px 16px rgba(20,30,50,.06);
  --shadow-lg: 0 14px 32px rgba(20,30,50,.12);
  --t-paedagogik: #a633cc;
  --t-verkehrsverhalten: #c96f12;
  --theme-color: #1f2d5c;
  --favicon: #1b2430;
  --brand-link: #1d49b8;
  --brand-btn: #1f2d5c;
  --brand-btn-fg: #ffffff;
  --st-text-2: #3a4656;
  --st-ink: #1d49b8;
  --st-focus: #1d49b8;
  --st-btn-bg: #1d4ed8;
  --st-btn-bg-h: #1a43bb;
  --st-btn-fg: #ffffff;
  --st-soft: #e5ecfd;
  --st-soft-2: #f1f4fd;
  --st-well: #eef1f5;
  --st-divider: #dde2e8;
  --st-amber: #e0900f;
  --st-logo: #1b2430;
  --st-shade: 20,30,50;
  --st-deep: 10,16,30;
  --st-road: rgba(255,255,255,.07);
  --st-shadow-sm: 0 1px 2px rgba(20,30,50,.05), 0 4px 12px rgba(20,30,50,.05);
  --st-shadow-lg: 0 22px 50px rgba(20,30,50,.14), 0 4px 12px rgba(20,30,50,.06);
  --fahri-body-1: #ffffff;
  --fahri-body-2: #f6f7f5;
  --fahri-body-3: #e8eae6;
  --fahri-stroke: #d9ddd8;
  --fahri-glass-1: #d9dedc;
  --fahri-glass-2: #a9b5b1;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: var(--primary-d);
  --fab-fg: var(--on-primary);
  --sn-logo-bg: var(--dd-grad);
  --sn-logo-shadow: none;
  --hero-line: transparent;
  --nav-ic-filter: grayscale(1) contrast(1.25) brightness(.72);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: var(--st-ink);
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(.4) contrast(1.6);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 95%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #1f2d5c;
  --c-pruefung: #55606a;
  --hd-go-bg: #e4e8ef;
  --hd-go-fg: #1f2d5c;
}
html[data-theme="signal"][data-mode="dark"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 14%, var(--surface));
  --ok: #5db58d;
  --on-ok: #0e1512;
  --danger: #ff8a97;
  --on-danger: #2a0a10;
  --vio: #a98bff;
  --vio-soft: #241a3a;
  --vio-ink: #d6c2ff;
  --amb: #f4b450;
  --amb-soft: #3a2a12;
  --amb-ink: #ffd79a;
  --t-recht: #e0566d;
  --t-technik: #14a8a8;
  --t-unterrichtsmaterial: #5db58d;
  --c-beispiel: #5db58d;
  --bar-ok: #5db58d;
  --prio-green: #5db58d;
  --success: #5db58d;
  --sev-low: #5db58d;
  --sev-low-bg: rgba(93,181,141,.16);
  --diff-add-bg: rgba(93,181,141,.18);
  --diff-add-fg: #9fe0c0;
  --shadow: 0 12px 28px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.26);
  --shadow-lg: 0 16px 42px rgba(0,0,0,.48);
  --st-shadow-sm: 0 1px 2px rgba(0,0,0,.30), 0 6px 16px rgba(0,0,0,.24);
  --st-shadow-lg: 0 24px 54px rgba(0,0,0,.50), 0 4px 12px rgba(0,0,0,.30);
  --st-co-merke: #7f8ea8;
  --st-co-bsp: #5db58d;
  --st-co-pr: #73868b;
  --st-recht-ink: #ff9eac;
  --st-paed-ink: #b9c7e0;
  --st-bsp-ink: #8fdcb4;
  --st-pr-ink: #b6c7cc;
  --st-shade: 0,0,0;
  --st-deep: 0,0,0;
  --st-tint: 10%;
  --bg: #0f141e;
  --surface: #171e2b;
  --surface-2: #202938;
  --text: #e8edf5;
  --muted: #9aa7b8;
  --border: #2a3445;
  --field-border: #6b7a90;
  --primary: #e8edf5;
  --primary-d: #cdd5e1;
  --on-primary: #0f1a33;
  --go: #7fa6ff;
  --go-d: #6b92ee;
  --on-go: #0f1a33;
  --acc: #7fa6ff;
  --acc-soft: #1c2a4a;
  --acc-ink: #a9c3ff;
  --on-acc: #0f1a33;
  --hero-bg: #1c2740;
  --hero-cta-bg: #ffffff;
  --hero-cta-fg: #1f2d5c;
  --dd-ring: #7fa6ff;
  --dd-hero-go-fg: #1f2d5c;
  --dd-go-bg: #2c3a5c;
  --dd-go-fg: #ffffff;
  --dd-grad: #c3cbd9;
  --onb-road: rgba(255,255,255,.07);
  --onb-overlay: rgba(0,0,0,.62);
  --t-paedagogik: #c17ef1;
  --t-verkehrsverhalten: #e8932f;
  --theme-color: #0f141e;
  --favicon: #e8edf5;
  --brand-link: #a9c3ff;
  --brand-btn: #7fa6ff;
  --brand-btn-fg: #0f1a33;
  --st-text-2: #c6d0de;
  --st-ink: #a9c3ff;
  --st-focus: #a9c3ff;
  --st-btn-bg: #7fa6ff;
  --st-btn-bg-h: #94b5ff;
  --st-btn-fg: #0f1a33;
  --st-soft: #1a2642;
  --st-soft-2: #161f33;
  --st-raise: #202938;
  --st-sheet: #232d3e;
  --st-well: #2a3547;
  --st-divider: #323e51;
  --st-amber: #f4b450;
  --st-logo: #e8edf5;
  --st-road: rgba(255,255,255,.06);
  --fahri-body-1: #e4e6e2;
  --fahri-body-2: #dcdeda;
  --fahri-body-3: #cfd2cd;
  --fahri-stroke: #c9ccc7;
  --fahri-glass-1: #c9cfcd;
  --fahri-glass-2: #9aa6a2;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: #2a3547;
  --fab-fg: var(--text);
  --sn-logo-bg: transparent;
  --sn-logo-shadow: none;
  --hero-line: color-mix(in srgb, var(--acc) 30%, transparent);
  --nav-ic-filter: grayscale(1) contrast(1.1) brightness(1.25);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: var(--st-ink);
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(1.6) contrast(1.1);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 84%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #b9c7e0;
  --c-pruefung: #9db0b5;
  --hd-go-bg: #2a3547;
  --hd-go-fg: #e8edf5;
}
html[data-theme="creme"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 11%, var(--surface));
  --ok: #2e7d5b;
  --on-ok: #ffffff;
  --danger: #c23a52;
  --on-danger: #ffffff;
  --vio: #6d4cf0;
  --vio-soft: #ece7ff;
  --vio-ink: #4b2fb0;
  --amb: #e0900f;
  --amb-soft: #fdeccb;
  --amb-ink: #7a4e00;
  --t-recht: #d6455d;
  --t-technik: #0e8f8f;
  --t-unterrichtsmaterial: #2e7d5b;
  --c-beispiel: #2e7d5b;
  --bar-ok: #2e7d5b;
  --prio-green: #4f9a76;
  --success: #2e7d5b;
  --sev-low: #256b4d;
  --sev-low-bg: rgba(46,125,91,.14);
  --diff-add-bg: rgba(46,125,91,.16);
  --diff-add-fg: #1f5d43;
  --st-co-merke: #2d3845;
  --st-co-bsp: #2e7d5b;
  --st-co-pr: #3d4c63;
  --st-recht-ink: #b3263d;
  --st-paed-ink: #2d3845;
  --st-bsp-ink: #22664a;
  --st-pr-ink: #3d4c63;
  --st-raise: var(--surface);
  --st-sheet: var(--surface);
  --st-tint: 6%;
  --bg: #f7f3ec;
  --surface: #fffdf8;
  --surface-2: #efe9df;
  --text: #1f2328;
  --muted: #5c5f65;
  --border: #e4dccd;
  --field-border: #918a7e;
  --primary: #2d3845;
  --primary-d: #232c37;
  --on-primary: #ffffff;
  --go: #c28a1e;
  --go-d: #d19a2c;
  --on-go: #1f2328;
  --acc: #b8862b;
  --acc-soft: #f5ecd9;
  --acc-ink: #7a5510;
  --on-acc: #1f2328;
  --hero-bg: #2d3845;
  --hero-cta-bg: #fffdf8;
  --hero-cta-fg: #2d3845;
  --dd-ring: #b8862b;
  --dd-hero-go-fg: #2d3845;
  --dd-go-bg: #4a5868;
  --dd-go-fg: #ffffff;
  --dd-grad: #2d3845;
  --onb-road: rgba(255,255,255,.08);
  --onb-overlay: rgba(24,22,18,.62);
  --shadow: 0 1px 2px rgba(50,42,28,.06), 0 6px 16px rgba(50,42,28,.06);
  --shadow-lg: 0 14px 32px rgba(50,42,28,.12);
  --t-paedagogik: #7c5ae2;
  --t-verkehrsverhalten: #0f74bd;
  --theme-color: #2d3845;
  --favicon: #1f2328;
  --brand-link: #7a5510;
  --brand-btn: #2d3845;
  --brand-btn-fg: #ffffff;
  --st-text-2: #3c4046;
  --st-ink: #7a5510;
  --st-focus: #7a5510;
  --st-btn-bg: #c28a1e;
  --st-btn-bg-h: #d19a2c;
  --st-btn-fg: #1f2328;
  --st-soft: #f5ecd9;
  --st-soft-2: #faf5ea;
  --st-well: #f3eee4;
  --st-divider: #e4dccd;
  --st-amber: #b8862b;
  --st-logo: #1f2328;
  --st-shade: 50,42,28;
  --st-deep: 24,20,12;
  --st-road: rgba(255,255,255,.07);
  --st-shadow-sm: 0 1px 2px rgba(50,42,28,.05), 0 4px 12px rgba(50,42,28,.05);
  --st-shadow-lg: 0 22px 50px rgba(50,42,28,.14), 0 4px 12px rgba(50,42,28,.06);
  --fahri-body-1: #ffffff;
  --fahri-body-2: #f6f7f5;
  --fahri-body-3: #e8eae6;
  --fahri-stroke: #d9ddd8;
  --fahri-glass-1: #d9dedc;
  --fahri-glass-2: #a9b5b1;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: var(--primary-d);
  --fab-fg: var(--on-primary);
  --sn-logo-bg: var(--dd-grad);
  --sn-logo-shadow: none;
  --hero-line: transparent;
  --nav-ic-filter: grayscale(1) contrast(1.25) brightness(.72);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: #946310;
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(.4) contrast(1.6);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 95%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #2d3845;
  --c-pruefung: #3d4c63;
  --hd-go-bg: #e9e4da;
  --hd-go-fg: #2d3845;
}
html[data-theme="creme"][data-mode="dark"] {
  --hero-bg-2: var(--hero-bg);
  --hero-scrim: none;
  --hero-disc: rgba(0,0,0,.22);
  --sky1: var(--hero-bg);
  --sky2: var(--hero-bg);
  --dd-hero-glow: transparent;
  --dd-hero-bg: var(--hero-bg);
  --onb-hero-bg: var(--hero-bg);
  --glow: 0 0 #0000;
  --bg-glow: none;
  --st-glow: 0 0 #0000;
  --st-stage-bg: var(--hero-bg);
  --st-body-bg: var(--bg);
  --st-line: color-mix(in srgb, var(--text) 14%, var(--surface));
  --ok: #5db58d;
  --on-ok: #0e1512;
  --danger: #ff8a97;
  --on-danger: #2a0a10;
  --vio: #a98bff;
  --vio-soft: #241a3a;
  --vio-ink: #d6c2ff;
  --amb: #f4b450;
  --amb-soft: #3a2a12;
  --amb-ink: #ffd79a;
  --t-recht: #e0566d;
  --t-technik: #14a8a8;
  --t-unterrichtsmaterial: #5db58d;
  --c-beispiel: #5db58d;
  --bar-ok: #5db58d;
  --prio-green: #5db58d;
  --success: #5db58d;
  --sev-low: #5db58d;
  --sev-low-bg: rgba(93,181,141,.16);
  --diff-add-bg: rgba(93,181,141,.18);
  --diff-add-fg: #9fe0c0;
  --shadow: 0 12px 28px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.26);
  --shadow-lg: 0 16px 42px rgba(0,0,0,.48);
  --st-shadow-sm: 0 1px 2px rgba(0,0,0,.30), 0 6px 16px rgba(0,0,0,.24);
  --st-shadow-lg: 0 24px 54px rgba(0,0,0,.50), 0 4px 12px rgba(0,0,0,.30);
  --st-co-merke: #938c80;
  --st-co-bsp: #5db58d;
  --st-co-pr: #6f8299;
  --st-recht-ink: #ff9eac;
  --st-paed-ink: #d8d2c6;
  --st-bsp-ink: #8fdcb4;
  --st-pr-ink: #b4c3d6;
  --st-shade: 0,0,0;
  --st-deep: 0,0,0;
  --st-tint: 10%;
  --bg: #1a1816;
  --surface: #23201c;
  --surface-2: #2d2924;
  --text: #efeae2;
  --muted: #aaa397;
  --border: #38332c;
  --field-border: #776f63;
  --primary: #efeae2;
  --primary-d: #d6d0c6;
  --on-primary: #1f1b14;
  --go: #d9a441;
  --go-d: #c4902f;
  --on-go: #1f1b14;
  --acc: #d9a441;
  --acc-soft: #352e22;
  --acc-ink: #e8c98a;
  --on-acc: #1f1b14;
  --hero-bg: #3a352d;
  --hero-cta-bg: #d9a441;
  --hero-cta-fg: #1f1b14;
  --dd-ring: #d9a441;
  --dd-hero-go-fg: #1f1b14;
  --dd-go-bg: #443e35;
  --dd-go-fg: #ffffff;
  --dd-grad: #cfc9bd;
  --onb-road: rgba(255,255,255,.07);
  --onb-overlay: rgba(0,0,0,.62);
  --t-paedagogik: #8577f5;
  --t-verkehrsverhalten: #369be2;
  --theme-color: #1a1816;
  --favicon: #efeae2;
  --brand-link: #e8c98a;
  --brand-btn: #d9a441;
  --brand-btn-fg: #1f1b14;
  --st-text-2: #cfc9bf;
  --st-ink: #e8c98a;
  --st-focus: #e8c98a;
  --st-btn-bg: #d9a441;
  --st-btn-bg-h: #e4b459;
  --st-btn-fg: #1f1b14;
  --st-soft: #2f291f;
  --st-soft-2: #28231b;
  --st-raise: #2d2924;
  --st-sheet: #312d27;
  --st-well: #37322b;
  --st-divider: #403a32;
  --st-amber: #d9a441;
  --st-logo: #efeae2;
  --st-road: rgba(255,255,255,.06);
  --fahri-body-1: #e4e6e2;
  --fahri-body-2: #dcdeda;
  --fahri-body-3: #cfd2cd;
  --fahri-stroke: #c9ccc7;
  --fahri-glass-1: #c9cfcd;
  --fahri-glass-2: #9aa6a2;
  --fahri-eye-1: #2f3b36;
  --fahri-eye-2: #0e1714;
  --fahri-shade: #141c18;
  --fahri-dash: #1f2724;
  --fahri-mouth: #15231b;
  --fahri-wheel: #15231b;
  --fahri-tire: #2f3b36;
  --fahri-hub: #d9982a;
  --band-bg: var(--hero-bg);
  --band-scrim: none;
  --band-icon-mix: 45%;
  --dd-bar-mix: 0%;
  --link: var(--acc-ink);
  --fab-bg: #37322b;
  --fab-fg: var(--text);
  --sn-logo-bg: transparent;
  --sn-logo-shadow: none;
  --hero-line: color-mix(in srgb, var(--acc) 30%, transparent);
  --nav-ic-filter: grayscale(1) contrast(1.1) brightness(1.25);
  --mm-base: 1;
  --placeholder: var(--muted);
  --legal-link: color-mix(in srgb, var(--text) 80%, var(--bg));
  --diagram-mix: 0%;
  --diagram-line-mix: 0%;
  --st-hl: var(--st-ink);
  --fahri-cheek: #e3c9b4;
  --mode-ic-filter: grayscale(1) brightness(1.6) contrast(1.1);
  --icon-soft-filter: saturate(.7);
  --tag-mix: 100%;
  --dd-goal: var(--dd-ring);
  --dd-s3-mix: 84%;
  --hd-fab-shadow: 0 0 0 3px var(--bg);
  --c-merke: #d8d2c6;
  --c-pruefung: #8fa3bd;
  --hd-go-bg: #37322b;
  --hd-go-fg: #efeae2;
}
html[data-theme="klassisch"] {
  --bg: #f6f9f6;
  --surface: #ffffff;
  --surface-2: #eef4ef;
  --text: #15231b;
  --muted: #5f7268;
  --border: #e3ece5;
  --field-border: #e3ece5;
  --primary: #1f8f63;
  --primary-d: #1a7a52;
  --on-primary: #ffffff;
  --go: #1f8f63;
  --go-d: #1a7a52;
  --on-go: #ffffff;
  --ok: #1f8f63;
  --on-ok: #ffffff;
  --danger: #d6455d;
  --on-danger: #ffffff;
  --acc: #1f8f63;
  --acc-soft: #e2f3ea;
  --acc-ink: #1a7a52;
  --on-acc: #ffffff;
  --vio: #6d4cf0;
  --vio-soft: #ece7ff;
  --vio-ink: #4b2fb0;
  --amb: #e0900f;
  --amb-soft: #fdeccb;
  --amb-ink: #8a5600;
  --sky1: #34b277;
  --sky2: #168a55;
  --hero-bg: linear-gradient(135deg, var(--sky2), var(--sky1));
  --hero-bg-2: linear-gradient(135deg, var(--sky1), var(--sky2));
  --hero-scrim: linear-gradient(112deg, rgba(3,28,15,.46) 0%, rgba(3,28,15,.12) 48%, transparent 70%);
  --hero-disc: rgba(3,28,15,.28);
  --hero-cta-bg: #ffffff;
  --hero-cta-fg: #0c5e39;
  --dd-ring: color-mix(in srgb, var(--primary) 62%, #ffffff);
  --dd-hero-glow: color-mix(in srgb, var(--dd-ring) 55%, transparent);
  --dd-hero-bg: radial-gradient(1200px 200px at 88% -40%, var(--dd-hero-glow), transparent 60%), linear-gradient(120deg, var(--primary-d), var(--primary));
  --dd-hero-go-fg: var(--primary-d);
  --dd-go-bg: var(--primary-d);
  --dd-go-fg: #ffffff;
  --dd-grad: linear-gradient(135deg, var(--primary), var(--primary-d));
  --onb-hero-bg: linear-gradient(160deg, var(--primary) 0%, var(--primary-d) 100%);
  --onb-road: rgba(3,28,15,.22);
  --onb-overlay: rgba(6,22,14,.62);
  --glow: 0 10px 26px rgba(31,143,99,.22);
  --bg-glow: radial-gradient(900px 420px at 12% -8%, rgba(31,143,99,.09), transparent 60%), radial-gradient(800px 400px at 100% 0%, rgba(124,92,255,.08), transparent 55%);
  --shadow: 0 8px 22px rgba(20,60,38,.08), 0 2px 6px rgba(20,60,38,.05);
  --shadow-lg: 0 16px 38px rgba(20,60,38,.13);
  --t-paedagogik: #6d5ef0;
  --t-recht: #d6455d;
  --t-technik: #0e9f9f;
  --t-verkehrsverhalten: #e8821e;
  --t-unterrichtsmaterial: #2f9e44;
  --c-beispiel: #2f9e44;
  --bar-ok: #2f9e44;
  --prio-green: #37b24d;
  --success: #16a34a;
  --sev-low: #2e9e5b;
  --sev-low-bg: rgba(46,158,91,.15);
  --diff-add-bg: rgba(34,180,115,.18);
  --diff-add-fg: #1a7a4e;
  --theme-color: #1f8f63;
  --favicon: #1f8f63;
  --brand-link: #0f8a4f;
  --brand-btn: #0f8a4f;
  --brand-btn-fg: #ffffff;
  --st-text-2: #34473c;
  --st-ink: #1a7a52;
  --st-focus: #1a7a52;
  --st-btn-bg: #1a7a52;
  --st-btn-bg-h: #156847;
  --st-btn-fg: #ffffff;
  --st-soft: #e2f3ea;
  --st-soft-2: #f0f8f3;
  --st-raise: #ffffff;
  --st-well: #eef4ef;
  --st-divider: #e3ece5;
  --st-sheet: #ffffff;
  --st-amber: #e0900f;
  --st-logo: #1a7a52;
  --st-co-merke: #6d5ef0;
  --st-co-bsp: #2f9e44;
  --st-co-pr: #0e7490;
  --st-recht-ink: #b3263d;
  --st-paed-ink: #5443d6;
  --st-bsp-ink: #237a34;
  --st-pr-ink: #0b6178;
  --st-line: color-mix(in srgb, var(--text) 11%, var(--surface));
  --st-shade: 20,60,38;
  --st-deep: 3,36,21;
  --st-road: rgba(4,38,23,.24);
  --st-stage-bg: radial-gradient(110% 70% at 90% -10%, rgba(255,255,255,.26), transparent 55%), linear-gradient(158deg, var(--sky1), var(--sky2));
  --st-body-bg: radial-gradient(900px 480px at 8% -6%, color-mix(in srgb, var(--primary) 11%, transparent), transparent 62%), radial-gradient(760px 420px at 100% 0%, color-mix(in srgb, var(--t-paedagogik) 8%, transparent), transparent 58%), var(--bg);
  --st-shadow-sm: 0 1px 2px rgba(20,60,38,.05), 0 4px 12px rgba(20,60,38,.05);
  --st-shadow-lg: 0 22px 50px rgba(20,60,38,.16), 0 4px 12px rgba(20,60,38,.06);
  --st-glow: 0 10px 24px rgba(26,122,82,.24);
  --st-tint: 9%;
  --fahri-body-1: #fffefb;
  --fahri-body-2: #f5f8f3;
  --fahri-body-3: #e7efe8;
  --fahri-stroke: #d6e2d8;
  --fahri-glass-1: #cbeeda;
  --fahri-glass-2: #8ec9a8;
  --fahri-eye-1: #188c5a;
  --fahri-eye-2: #083a25;
  --fahri-shade: #0b3b26;
  --fahri-dash: #0c5e39;
  --fahri-mouth: #0b4d31;
  --fahri-wheel: #16241c;
  --fahri-tire: #28402f;
  --fahri-hub: #cfe9da;
  --band-bg: initial;
  --band-scrim: initial;
  --band-icon-mix: 0%;
  --dd-bar-mix: 100%;
  --link: initial;
  --fab-bg: var(--primary-d);
  --fab-fg: var(--on-primary);
  --sn-logo-bg: var(--dd-grad);
  --sn-logo-shadow: 0 3px 10px color-mix(in srgb, var(--primary) 40%, transparent);
  --hero-line: transparent;
  --nav-ic-filter: none;
  --mm-base: 0;
  --placeholder: initial;
  --legal-link: var(--muted);
  --diagram-mix: 9%;
  --diagram-line-mix: 22%;
  --st-hl: var(--st-ink);
  --c-merke: #6d5ef0;
  --c-pruefung: #0e7490;
  --fahri-cheek: #ffb0b0;
  --mode-ic-filter: none;
  --icon-soft-filter: none;
  --tag-mix: 0%;
  --dd-goal: var(--primary);
  --dd-s3-mix: 84%;
  --hd-go-bg: var(--primary);
  --hd-go-fg: var(--on-primary);
  --hd-fab-shadow: initial;
}
html[data-theme="klassisch"][data-mode="dark"] {
  --bg: #0e1612;
  --surface: #16221b;
  --surface-2: #1d2c24;
  --text: #e9f5ec;
  --muted: #8fb39a;
  --border: #21342a;
  --field-border: #21342a;
  --primary: #2fa873;
  --primary-d: #268f61;
  --on-primary: #ffffff;
  --go: #2fa873;
  --go-d: #268f61;
  --on-go: #ffffff;
  --ok: #2fa873;
  --on-ok: #ffffff;
  --danger: #ff8a97;
  --on-danger: #ffffff;
  --acc: #2fa873;
  --acc-soft: #11301f;
  --acc-ink: #62c99c;
  --on-acc: #ffffff;
  --vio: #a98bff;
  --vio-soft: #241a3a;
  --vio-ink: #d6c2ff;
  --amb: #f4b450;
  --amb-soft: #3a2a12;
  --amb-ink: #ffd79a;
  --sky1: #1f9d63;
  --sky2: #0b5e38;
  --hero-bg: linear-gradient(135deg, var(--sky2), var(--sky1));
  --hero-bg-2: linear-gradient(135deg, var(--sky1), var(--sky2));
  --hero-scrim: linear-gradient(112deg, rgba(3,28,15,.46) 0%, rgba(3,28,15,.12) 48%, transparent 70%);
  --hero-disc: rgba(3,28,15,.28);
  --hero-cta-bg: #ffffff;
  --hero-cta-fg: #0c5e39;
  --dd-ring: color-mix(in srgb, var(--primary) 62%, #ffffff);
  --dd-hero-glow: color-mix(in srgb, var(--dd-ring) 55%, transparent);
  --dd-hero-bg: radial-gradient(1200px 200px at 88% -40%, var(--dd-hero-glow), transparent 60%), linear-gradient(120deg, var(--primary-d), var(--primary));
  --dd-hero-go-fg: var(--primary-d);
  --dd-go-bg: var(--primary-d);
  --dd-go-fg: #ffffff;
  --dd-grad: linear-gradient(135deg, var(--primary), var(--primary-d));
  --onb-hero-bg: linear-gradient(160deg, var(--primary) 0%, var(--primary-d) 100%);
  --onb-road: rgba(3,28,15,.22);
  --onb-overlay: rgba(6,22,14,.62);
  --glow: 0 12px 30px rgba(47,168,115,.20);
  --bg-glow: radial-gradient(900px 420px at 12% -8%, rgba(31,143,99,.12), transparent 60%), radial-gradient(800px 400px at 100% 0%, rgba(124,92,255,.12), transparent 55%);
  --shadow: 0 12px 28px rgba(0,0,0,.40), 0 2px 6px rgba(0,0,0,.26);
  --shadow-lg: 0 16px 42px rgba(0,0,0,.48);
  --t-paedagogik: #6d5ef0;
  --t-recht: #d6455d;
  --t-technik: #0e9f9f;
  --t-verkehrsverhalten: #e8821e;
  --t-unterrichtsmaterial: #2f9e44;
  --c-beispiel: #2f9e44;
  --bar-ok: #2f9e44;
  --prio-green: #37b24d;
  --success: #16a34a;
  --sev-low: #2e9e5b;
  --sev-low-bg: rgba(46,158,91,.15);
  --diff-add-bg: rgba(34,180,115,.22);
  --diff-add-fg: #6ee7b7;
  --theme-color: #1f8f63;
  --favicon: #34b277;
  --brand-link: #0f8a4f;
  --brand-btn: #0f8a4f;
  --brand-btn-fg: #ffffff;
  --st-text-2: #c9ddcf;
  --st-ink: #45bd88;
  --st-focus: #5fd29e;
  --st-btn-bg: #2fa873;
  --st-btn-bg-h: #3dbb84;
  --st-btn-fg: #05140c;
  --st-soft: #133222;
  --st-soft-2: #13261c;
  --st-raise: #1d2c24;
  --st-well: #263b30;
  --st-divider: #2e463a;
  --st-sheet: #22342a;
  --st-amber: #e0900f;
  --st-logo: #2fa873;
  --st-co-merke: #6d5ef0;
  --st-co-bsp: #2f9e44;
  --st-co-pr: #0e7490;
  --st-recht-ink: #ff9eac;
  --st-paed-ink: #bdb3ff;
  --st-bsp-ink: #8fdc9c;
  --st-pr-ink: #7fd3e3;
  --st-line: color-mix(in srgb, var(--text) 14%, var(--surface));
  --st-shade: 20,60,38;
  --st-deep: 3,36,21;
  --st-road: rgba(4,38,23,.24);
  --st-stage-bg: radial-gradient(110% 70% at 90% -10%, rgba(255,255,255,.26), transparent 55%), linear-gradient(158deg, var(--sky1), var(--sky2));
  --st-body-bg: radial-gradient(900px 480px at 8% -6%, color-mix(in srgb, var(--primary) 11%, transparent), transparent 62%), radial-gradient(760px 420px at 100% 0%, color-mix(in srgb, var(--t-paedagogik) 8%, transparent), transparent 58%), var(--bg);
  --st-shadow-sm: 0 1px 2px rgba(0,0,0,.30), 0 6px 16px rgba(0,0,0,.24);
  --st-shadow-lg: 0 24px 54px rgba(0,0,0,.50), 0 4px 12px rgba(0,0,0,.30);
  --st-glow: 0 10px 26px rgba(47,168,115,.22);
  --st-tint: 14%;
  --fahri-body-1: #fffefb;
  --fahri-body-2: #f5f8f3;
  --fahri-body-3: #e7efe8;
  --fahri-stroke: #d6e2d8;
  --fahri-glass-1: #cbeeda;
  --fahri-glass-2: #8ec9a8;
  --fahri-eye-1: #188c5a;
  --fahri-eye-2: #083a25;
  --fahri-shade: #0b3b26;
  --fahri-dash: #0c5e39;
  --fahri-mouth: #0b4d31;
  --fahri-wheel: #16241c;
  --fahri-tire: #28402f;
  --fahri-hub: #cfe9da;
  --band-bg: initial;
  --band-scrim: initial;
  --band-icon-mix: 0%;
  --dd-bar-mix: 100%;
  --link: var(--acc-ink);
  --fab-bg: var(--primary-d);
  --fab-fg: var(--on-primary);
  --sn-logo-bg: var(--dd-grad);
  --sn-logo-shadow: 0 3px 10px color-mix(in srgb, var(--primary) 40%, transparent);
  --hero-line: transparent;
  --nav-ic-filter: none;
  --mm-base: 0;
  --placeholder: initial;
  --legal-link: var(--muted);
  --diagram-mix: 9%;
  --diagram-line-mix: 22%;
  --st-hl: var(--st-ink);
  --c-merke: #6d5ef0;
  --c-pruefung: #0e7490;
  --fahri-cheek: #ffb0b0;
  --mode-ic-filter: none;
  --icon-soft-filter: none;
  --tag-mix: 0%;
  --dd-goal: var(--primary);
  --dd-s3-mix: 84%;
  --hd-go-bg: var(--primary);
  --hd-go-fg: var(--on-primary);
  --hd-fab-shadow: initial;
}
