/* Design tokens: the single source of visual truth. Light + dark via tokens. */
:root {
  /* Brand — Merian-Schule palette: grey-green top, red bottom */
  --c-top: #c75048; /* header / hero */
  --c-bottom: #808277; /* footer */
  --c-brand: #c75048; /* interactive accent: links, buttons, titles */
  --c-brand-strong: #a83d36; /* hover / pressed */
  --c-brand-soft: #f6e6e4;
  --c-accent: #808277;
  /* Fixed call-to-action red (stays solid in both light & dark, unlike --c-brand
     which is lightened for dark surfaces). */
  --c-cta: #c75048;
  --c-cta-hover: #a83d36;

  /* Availability (reused from the catalog's own status colors) */
  --c-available: #009f6b;
  --c-unavailable: #e23b3b;
  --c-reserved: #e0a400;
  --c-ordered: #e0a400;

  /* Surfaces & text */
  --c-bg: #f6f8fa;
  --c-surface: #ffffff;
  --c-surface-2: #eef2f5;
  --c-border: #d8e0e6;
  --c-text: #1a2630;
  --c-text-muted: #5b6b78;
  --c-text-inv: #ffffff;

  /* Spacing scale (8px base) */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;
  --sp-8: 64px;

  /* Radius / shadow */
  --radius: 10px;
  --radius-sm: 6px;
  --radius-lg: 16px;
  --shadow-1: 0 1px 2px rgba(16, 38, 54, 0.06), 0 1px 3px rgba(16, 38, 54, 0.08);
  --shadow-2: 0 4px 12px rgba(16, 38, 54, 0.1), 0 2px 4px rgba(16, 38, 54, 0.06);

  /* Type */
  --font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fs-sm: 0.85rem;
  --fs-base: 1rem;
  --fs-lg: clamp(1.1rem, 0.9rem + 0.6vw, 1.35rem);
  --fs-xl: clamp(1.5rem, 1.1rem + 1.6vw, 2.4rem);

  --maxw: 1180px;
  --header-h: 60px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --c-brand: #e8786f; /* lighter red stays legible on dark surfaces */
    --c-brand-strong: #c75048;
    --c-brand-soft: #3a2422;
    --c-bg: #0f171c;
    --c-surface: #18242b;
    --c-surface-2: #1f2e37;
    --c-border: #2c3f4a;
    --c-text: #e6edf2;
    --c-text-muted: #9fb0bc;
    --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow-2: 0 6px 18px rgba(0, 0, 0, 0.5);
  }
}
