/* Design tokens: moonlit grove with bioluminescent cyan accents */

:root {
  /* Color palette grounded in the actual artwork pixels */
  --color-bg-deep: #041211;
  --color-bg-dark: #061716;
  --color-bg-mid: #0a2120;
  --color-bg-card: #0f2d2b;
  
  --color-surface-dark: #163937;
  --color-surface-mid: #1a4745;
  --color-surface-light: #275956;
  
  --color-text-primary: #e8fffe;
  --color-text-muted: #a0d8d5;
  --color-text-soft: #6fa8a5;
  
  --color-accent-cyan: #b7f6fb;
  --color-accent-glow: #7de8ef;
  --color-accent-teal: #3a7974;
  --color-accent-dark: #264d4a;
  
  --color-disabled-bg: #2a2a2a;
  --color-disabled-text: #a0a0a0;
  
  /* Typography: system font stack with serif display option */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
  
  /* Font sizes (mobile-first base) */
  --text-xs: 0.75rem;      /* 12px */
  --text-sm: 0.875rem;     /* 14px */
  --text-base: 1rem;       /* 16px */
  --text-lg: 1.125rem;     /* 18px */
  --text-xl: 1.25rem;      /* 20px */
  --text-2xl: 1.5rem;      /* 24px */
  --text-3xl: 1.875rem;    /* 30px */
  --text-4xl: 2.25rem;     /* 36px */
  --text-5xl: 3rem;        /* 48px */
  
  /* Spacing scale */
  --space-xs: 0.5rem;      /* 8px */
  --space-sm: 0.75rem;     /* 12px */
  --space-md: 1rem;        /* 16px */
  --space-lg: 1.5rem;      /* 24px */
  --space-xl: 2rem;        /* 32px */
  --space-2xl: 3rem;       /* 48px */
  --space-3xl: 4rem;       /* 64px */
  --space-4xl: 6rem;       /* 96px */
  
  /* Layout */
  --wrap-width: 1280px;
  --wrap-narrow: 900px;
  --header-height: 60px;
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --border-radius-lg: 12px;
  --border-radius-xl: 16px;
  
  /* Transitions */
  --ease-out: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1);
  --duration-fast: 180ms;
  --duration-base: 300ms;
  --duration-slow: 500ms;
  
  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.2);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.3);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.4);
  --shadow-hard: 4px 4px 0 rgba(0, 0, 0, 0.6);
  --shadow-glow: 0 0 24px rgba(183, 246, 251, 0.4);
}

@media (min-width: 768px) {
  :root {
    --header-height: 72px;
    --text-3xl: 2.25rem;    /* 36px */
    --text-4xl: 3rem;       /* 48px */
    --text-5xl: 4rem;       /* 64px */
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --duration-fast: 0ms;
    --duration-base: 0ms;
    --duration-slow: 0ms;
  }
}
