/* Erzeugt aus design/tokens.json (npm run tokens) – nicht von Hand bearbeiten. */
:root {
  color-scheme: light;
  --c-bg: #f4f8fd;
  --c-bg-top: #f9fbff;
  --c-surface: rgba(255,255,255,0.84);
  --c-surface-solid: #ffffff;
  --c-surface-sunken: #eef3fb;
  --c-text: #0f172a;
  --c-ink: #0b1b3a;
  --c-muted: #5f6f87;
  --c-line: rgba(37,99,235,0.12);
  --c-line-strong: rgba(37,99,235,0.28);
  --c-primary: #2563eb;
  --c-primary2: #06b6d4;
  --c-on-primary: #ffffff;
  --c-primary-soft: rgba(37,99,235,0.08);
  --c-accent-soft: rgba(6,182,212,0.12);
  --c-neutral-soft: rgba(15,23,42,0.05);
  --c-danger: #dc2626;
  --c-danger-soft: rgba(220,38,38,0.08);
  --c-success: #16a34a;
  --c-success-soft: rgba(22,163,74,0.10);
  --c-warning: #f59e0b;
  --c-warning-soft: rgba(245,158,11,0.14);
  --c-info: #0ea5e9;
  --c-glow-primary: rgba(37,99,235,0.18);
  --c-glow-accent: rgba(6,182,212,0.16);
  --c-scrim: rgba(11,27,58,0.40);
  --c-bar-bg: rgba(249,251,255,0.86);
  --c-primary-fill: #2563eb;
  --c-accent-text: #0e7490;
  --c-success-text: #15803d;
  --c-danger-text: #dc2626;
  --c-figure-bg: #ffffff;
  --shadow-sm: 0 8px 20px rgba(37,99,235,0.06);
  --shadow-md: 0 16px 44px rgba(37,99,235,0.10);
  --shadow-lg: 0 22px 48px rgba(37,99,235,0.14);
  --shadow-button: 0 14px 30px rgba(37,99,235,0.28);
  --gradient-brand: linear-gradient(135deg, #2563eb, #0891b2);
  --gradient-brand-text: linear-gradient(90deg, #2563eb, #0891b2);
  --font-display: 'Plus Jakarta Sans Variable', 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-body: 'Inter Variable', 'Inter', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono Variable', 'JetBrains Mono', ui-monospace, monospace;
  --type-display-size: 2rem;
  --type-display-line: 1.1;
  --type-display-weight: 800;
  --type-display-tracking: -0.03em;
  --type-display-family: var(--font-display);
  --type-title-size: 1.5rem;
  --type-title-line: 1.15;
  --type-title-weight: 800;
  --type-title-tracking: -0.02em;
  --type-title-family: var(--font-display);
  --type-heading-size: 1.1875rem;
  --type-heading-line: 1.25;
  --type-heading-weight: 700;
  --type-heading-tracking: -0.01em;
  --type-heading-family: var(--font-display);
  --type-subhead-size: 1rem;
  --type-subhead-line: 1.35;
  --type-subhead-weight: 700;
  --type-subhead-tracking: 0em;
  --type-subhead-family: var(--font-display);
  --type-body-size: 1rem;
  --type-body-line: 1.6;
  --type-body-weight: 400;
  --type-body-tracking: 0em;
  --type-body-family: var(--font-body);
  --type-body-strong-size: 1rem;
  --type-body-strong-line: 1.5;
  --type-body-strong-weight: 600;
  --type-body-strong-tracking: 0em;
  --type-body-strong-family: var(--font-body);
  --type-small-size: 0.875rem;
  --type-small-line: 1.5;
  --type-small-weight: 500;
  --type-small-tracking: 0em;
  --type-small-family: var(--font-body);
  --type-caption-size: 0.78125rem;
  --type-caption-line: 1.4;
  --type-caption-weight: 600;
  --type-caption-tracking: 0em;
  --type-caption-family: var(--font-body);
  --type-tag-size: 0.75rem;
  --type-tag-line: 1.3;
  --type-tag-weight: 600;
  --type-tag-tracking: 0.06em;
  --type-tag-family: var(--font-mono);
  --type-button-size: 1rem;
  --type-button-line: 1.2;
  --type-button-weight: 700;
  --type-button-tracking: 0em;
  --type-button-family: var(--font-body);
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 32px;
  --space-8: 40px;
  --space-9: 56px;
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius-md: 14px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-2xl: 28px;
  --radius-pill: 999px;
  --size-touch: 48px;
  --size-tabbar: 64px;
  --size-appbar: 56px;
  --size-icon-sm: 20px;
  --size-icon: 24px;
  --size-max-content: 720px;
  --motion-fast: 150ms;
  --motion-base: 180ms;
  --motion-slow: 320ms;
  --motion-easing: cubic-bezier(0.2, 0, 0, 1);
  --motion-lift: -2px;
  --motion-press: 0.98;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --c-bg: #0a1224;
  --c-bg-top: #0d1730;
  --c-surface: rgba(17,29,56,0.84);
  --c-surface-solid: #111d38;
  --c-surface-sunken: #0d1730;
  --c-text: #e7eefb;
  --c-ink: #f5f8ff;
  --c-muted: #9aa9c2;
  --c-line: rgba(96,165,250,0.16);
  --c-line-strong: rgba(96,165,250,0.36);
  --c-primary: #60a5fa;
  --c-primary2: #06b6d4;
  --c-on-primary: #ffffff;
  --c-primary-soft: rgba(96,165,250,0.12);
  --c-accent-soft: rgba(6,182,212,0.16);
  --c-neutral-soft: rgba(231,238,251,0.06);
  --c-danger: #f87171;
  --c-danger-soft: rgba(248,113,113,0.12);
  --c-success: #4ade80;
  --c-success-soft: rgba(74,222,128,0.12);
  --c-warning: #fbbf24;
  --c-warning-soft: rgba(251,191,36,0.14);
  --c-info: #38bdf8;
  --c-glow-primary: rgba(37,99,235,0.28);
  --c-glow-accent: rgba(6,182,212,0.20);
  --c-scrim: rgba(0,0,0,0.55);
  --c-bar-bg: rgba(13,23,48,0.88);
  --c-primary-fill: #2563eb;
  --c-accent-text: #22d3ee;
  --c-success-text: #4ade80;
  --c-danger-text: #f87171;
  --c-figure-bg: #e8eef7;
  --shadow-sm: 0 8px 20px rgba(0,0,0,0.30);
  --shadow-md: 0 16px 44px rgba(0,0,0,0.38);
  --shadow-lg: 0 22px 48px rgba(0,0,0,0.45);
  --shadow-button: 0 14px 30px rgba(37,99,235,0.35);
  --gradient-brand: linear-gradient(135deg, #2563eb, #0891b2);
  --gradient-brand-text: linear-gradient(90deg, #60a5fa, #06b6d4);
}
