:root {
  --radius: 0.625rem;
  --segment-gap: 1.5rem;
  --body-region-padding-y: 2rem;
  /* Grundschriften explizit gesetzt (identisch zum Tailwind-Standard),
     damit das Grundthema sie aus der Datenbank überschreiben kann. */
  --font-sans:
    ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
    "Noto Color Emoji";
  --font-display:
    ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
    "Noto Color Emoji";
  --body-font-size: 1rem;
  --background: oklch(1 0 0);
  --foreground: oklch(0.129 0.042 264.695);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.129 0.042 264.695);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.129 0.042 264.695);
  --primary: oklch(0.208 0.042 265.755);
  --primary-foreground: oklch(0.984 0.003 247.858);
  --secondary: oklch(0.968 0.007 247.896);
  --secondary-foreground: oklch(0.208 0.042 265.755);
  --muted: oklch(0.968 0.007 247.896);
  --muted-foreground: oklch(0.554 0.046 257.417);
  --accent: oklch(0.968 0.007 247.896);
  --accent-foreground: oklch(0.208 0.042 265.755);
  --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: oklch(0.984 0.003 247.858);
  --border: oklch(0.929 0.013 255.508);
  --input: oklch(0.929 0.013 255.508);
  --ring: oklch(0.704 0.04 256.788);
  --chart-1: oklch(0.646 0.222 41.116);
  --chart-2: oklch(0.6 0.118 184.704);
  --chart-3: oklch(0.398 0.07 227.392);
  --chart-4: oklch(0.828 0.189 84.429);
  --chart-5: oklch(0.769 0.188 70.08);
  --sidebar: oklch(0.984 0.003 247.858);
  --sidebar-foreground: oklch(0.129 0.042 264.695);
  --sidebar-primary: oklch(0.208 0.042 265.755);
  --sidebar-primary-foreground: oklch(0.984 0.003 247.858);
  --sidebar-accent: oklch(0.968 0.007 247.896);
  --sidebar-accent-foreground: oklch(0.208 0.042 265.755);
  --sidebar-border: oklch(0.929 0.013 255.508);
  --sidebar-ring: oklch(0.704 0.04 256.788);
  /* Footer-Surface (MSv1-Parität: dunkle Slate-Fläche, ohne Hex) */
  --footer: oklch(0.27 0.02 270);
  --footer-foreground: oklch(0.984 0.003 247.858);
  --footer-elevated: oklch(0.34 0.012 270);
  --footer-border: oklch(1 0 0 / 12%);
  /* Frontend-Akzent (MSv1-Parität: knalliges Gelb, hsl 45 93% 58%) */
  --frontend-accent: oklch(0.83 0.17 87);
  --frontend-accent-foreground: oklch(0.18 0 0);
  /* Öffentliche Detailseiten installierter Extensions */
  --extension-detail-background: #000000;
  --extension-detail-page-foreground: #ffffff;
  --extension-detail-surface: #ffffff;
  --extension-detail-foreground: #111111;
  --extension-detail-muted-foreground: #5f6368;
  --extension-detail-border: #d9d9d9;
  --extension-detail-max-width: 64rem;
  /* Gemeinsame Kachelrollen für Extension-Listen */
  --extension-list-card-surface: #10131b;
  --extension-list-card-foreground: #ffffff;
  --extension-list-card-muted-foreground: #aebbd0;
  --extension-list-card-border: #313744;
  --extension-list-card-radius: var(--radius);
  --extension-list-max-width: 80rem;
  --extension-list-heading-size: 1.875rem;
  /* CTA-Rollen (semantisch, MSv2) */
  --cta-primary: oklch(0.75 0.22 145); /* Electric Green */
  --cta-primary-foreground: oklch(0.18 0 0); /* fast Schwarz */
  --cta-secondary: oklch(0.18 0 0); /* Schwarz */
  --cta-secondary-foreground: oklch(0.98 0 0);
  --cta-tertiary: var(--accent);
  --cta-tertiary-foreground: var(--accent-foreground);
  --cta-ghost-foreground: oklch(0.18 0 0);
  --cta-ghost-border: oklch(0.18 0 0 / 30%);
}

.dark {
  --background: oklch(0.129 0.042 264.695);
  --foreground: oklch(0.984 0.003 247.858);
  --card: oklch(0.208 0.042 265.755);
  --card-foreground: oklch(0.984 0.003 247.858);
  --popover: oklch(0.208 0.042 265.755);
  --popover-foreground: oklch(0.984 0.003 247.858);
  --primary: oklch(0.929 0.013 255.508);
  --primary-foreground: oklch(0.208 0.042 265.755);
  --secondary: oklch(0.279 0.041 260.031);
  --secondary-foreground: oklch(0.984 0.003 247.858);
  --muted: oklch(0.279 0.041 260.031);
  --muted-foreground: oklch(0.704 0.04 256.788);
  --accent: oklch(0.279 0.041 260.031);
  --accent-foreground: oklch(0.984 0.003 247.858);
  --destructive: oklch(0.704 0.191 22.216);
  --destructive-foreground: oklch(0.129 0.042 264.695);
  --border: oklch(1 0 0 / 10%);
  --input: oklch(1 0 0 / 15%);
  --ring: oklch(0.551 0.027 264.364);
  --chart-1: oklch(0.488 0.243 264.376);
  --chart-2: oklch(0.696 0.17 162.48);
  --chart-3: oklch(0.769 0.188 70.08);
  --chart-4: oklch(0.627 0.265 303.9);
  --chart-5: oklch(0.645 0.246 16.439);
  --sidebar: oklch(0.208 0.042 265.755);
  --sidebar-foreground: oklch(0.984 0.003 247.858);
  --sidebar-primary: oklch(0.488 0.243 264.376);
  --sidebar-primary-foreground: oklch(0.984 0.003 247.858);
  --sidebar-accent: oklch(0.279 0.041 260.031);
  --sidebar-accent-foreground: oklch(0.984 0.003 247.858);
  --sidebar-border: oklch(1 0 0 / 10%);
  --sidebar-ring: oklch(0.551 0.027 264.364);
  --footer: oklch(0.22 0.02 270);
  --footer-foreground: oklch(0.984 0.003 247.858);
  --footer-elevated: oklch(0.3 0.015 270);
  --footer-border: oklch(1 0 0 / 12%);
  --frontend-accent: oklch(0.83 0.17 87);
  --frontend-accent-foreground: oklch(0.18 0 0);
  --cta-primary: oklch(0.75 0.22 145);
  --cta-primary-foreground: oklch(0.18 0 0);
  --cta-secondary: oklch(0.98 0 0);
  --cta-secondary-foreground: oklch(0.18 0 0);
  --cta-tertiary: var(--accent);
  --cta-tertiary-foreground: var(--accent-foreground);
  --cta-ghost-foreground: oklch(0.98 0 0);
  --cta-ghost-border: oklch(1 0 0 / 30%);
}
