:root {
  color-scheme: dark;

  /* Dark Oneiric — cores semânticas */
  --world-background: #0B0D12;
  --world-background-deep: #07090D;
  --surface-primary: #121621;
  --surface-elevated: #1A2030;
  --surface-recessed: #0E121B;
  --surface-glass: rgba(22, 27, 40, .76);

  --text-primary: #E8E4DC;
  --text-secondary: #AAB2C0;
  --text-faint: #777F8D;
  --text-inverse: #0B0D12;

  --interaction: #8FA3C7;
  --interaction-strong: #B5C5E1;
  --dream-accent: #9B88C9;
  --dream-soft: #B9ACE0;
  --divine: #C6A86A;
  --danger: #D66A72;
  --danger-soft: #F0A5AA;
  --success: #75B79E;
  --success-soft: #A6D8C4;
  --unknown: #777F8D;

  --border-normal: rgba(143, 163, 199, .27);
  --border-quiet: rgba(232, 228, 220, .12);
  --border-anomaly: rgba(155, 136, 201, .58);
  --border-divine: rgba(198, 168, 106, .64);
  --border-danger: rgba(214, 106, 114, .66);
  --border-success: rgba(117, 183, 158, .56);

  --shadow-normal: 0 20px 55px rgba(0, 0, 0, .30);
  --shadow-elevated: 0 28px 90px rgba(0, 0, 0, .42);
  --shadow-nightmare: 18px 28px 70px rgba(0, 0, 0, .52);

  /* Tipografia: voz humana + voz do Pesadelo */
  --font-human: Inter, "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-nightmare: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  --font-mono: "Cascadia Code", "SFMono-Regular", Consolas, Menlo, monospace;

  --type-xs: .75rem;
  --type-sm: .875rem;
  --type-md: 1rem;
  --type-lg: 1.125rem;
  --type-xl: 1.375rem;
  --type-2xl: clamp(1.75rem, 3vw, 2.4rem);
  --type-hero: clamp(2.5rem, 6vw, 5.2rem);

  --leading-tight: 1.08;
  --leading-body: 1.68;
  --leading-narrative: 1.82;

  /* Espaçamento / grid */
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --content-max: 1180px;
  --reading-max: 760px;
  --grid-gap: clamp(14px, 2vw, 24px);

  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;

  /* Movimento semântico */
  --motion-fast: 160ms;
  --motion-normal: 240ms;
  --motion-slow: 520ms;
  --motion-nightmare: 760ms;
  --ease-human: cubic-bezier(.2, .7, .2, 1);
  --ease-dream: cubic-bezier(.16, .8, .3, 1);

  --narrative-reveal-fast: 220ms;
  --narrative-reveal-normal: 440ms;
  --narrative-reveal-slow: 710ms;
  --narrative-pause-short: 240ms;
  --narrative-pause-normal: 560ms;
  --narrative-pause-dramatic: 1200ms;
  --dialogue-reveal: 230ms;
  --nightmare-reveal: 280ms;
  --system-reveal: 180ms;

  --tap-min: 44px;
}

:root[data-text-speed="slow"] {
  --narrative-pause-short: 330ms;
  --narrative-pause-normal: 760ms;
  --narrative-pause-dramatic: 1500ms;
}
:root[data-text-speed="fast"] {
  --narrative-pause-short: 150ms;
  --narrative-pause-normal: 310ms;
  --narrative-pause-dramatic: 700ms;
}
:root[data-text-speed="instant"] {
  --narrative-pause-short: 0ms;
  --narrative-pause-normal: 0ms;
  --narrative-pause-dramatic: 0ms;
  --narrative-reveal-fast: 0ms;
  --narrative-reveal-normal: 0ms;
  --narrative-reveal-slow: 0ms;
}
