@layer tokens {
  :root {
    /* Color — neutrals (ADR-011: official brand guide — Carbon/Midnight) */
    --surface-0: #0A0A0A;   /* Carbon — fundo primário */
    --surface-1: #0F172A;   /* Midnight — superfícies/cards */
    --surface-2: color-mix(in srgb, #0F172A 82%, white 18%);
    --text-0: #F5F6F8;      /* texto primário sobre escuro */
    --text-1: #C9CFDB;      /* texto de corpo secundário */
    --text-2: #94A3B8;      /* Steel — texto terciário/legendas */
    --line-subtle: color-mix(in srgb, var(--text-0) 12%, transparent);

    /* Color — identity accent (Electric Blue, guia oficial de marca — ação/destaque) */
    --accent-500: #0066FF;
    /* ADR-011: hover mais escuro que o exemplo do guia (#3384FF), que falha 4.5:1 com texto branco (~3.56:1) */
    --accent-600: #0052CC;
    --on-accent: #FFFFFF;

    /* Color — secondary (link/label blue do guia oficial) */
    --secondary-500: #4C8DFF;
    --secondary-700: #8AB4FF;

    /* Semantic states (exceptions to the 3-family rule, per protocol 17.1) */
    --state-success: oklch(0.7 0.14 150);
    --state-warning: oklch(0.78 0.14 85);
    --state-danger: #E1394A; /* mesmo vermelho de erro usado no guia (seção "Usos Incorretos") */

    /* Typography (ADR-012 revisado: Orbitron é exclusivo do logotipo — nunca usado como token de texto) */
    --font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --font-mono: ui-monospace, 'SFMono-Regular', 'Cascadia Code', Consolas, 'Liberation Mono', monospace;

    --font-size-00: 0.75rem;
    --font-size-0: 0.875rem;
    --font-size-1: 1rem;
    --font-size-2: 1.25rem;
    --font-size-3: clamp(1.35rem, 1.1rem + 1vw, 2rem);
    --font-size-4: clamp(1.8rem, 1.2rem + 2vw, 3.5rem);
    --font-size-5: clamp(2.35rem, 1.35rem + 4.4vw, 6.5rem);

    --leading-tight: 1.1;
    --leading-normal: 1.6;
    --tracking-tight: 0;
    --tracking-wide: 0;

    /* Spatial rhythm — 8px unit */
    --space-1: 0.5rem;   /* 8px */
    --space-2: 1rem;     /* 16px */
    --space-3: 1.5rem;   /* 24px */
    --space-4: 2rem;     /* 32px */
    --space-5: 2.5rem;   /* 40px */
    --space-6: 3rem;     /* 48px */
    --space-8: 4rem;     /* 64px */
    --space-10: 5rem;    /* 80px */
    --space-12: 6rem;    /* 96px */
    --space-16: 8rem;    /* 128px */
    --space-20: 10rem;   /* 160px */

    /* Radius */
    --radius-1: 8px;
    --radius-2: 16px;
    --radius-3: 24px;
    --radius-4: 32px;

    /* Motion */
    --duration-micro: 120ms;
    --duration-short: 200ms;
    --duration-medium: 360ms;
    --duration-long: 640ms;
    --ease-standard: cubic-bezier(0.2, 0.7, 0.2, 1);
    --ease-emphasis: cubic-bezier(0.16, 1, 0.3, 1);

    /* Shadow (light simulation, not outline) */
    --shadow-1:
      0 1px 2px rgb(0 0 0 / 0.24),
      0 8px 24px rgb(0 0 0 / 0.28);
    --shadow-inset-highlight: inset 0 1px 0 rgb(255 255 255 / 0.05);

    /* Grid */
    --content-max: 1200px;
    --gutter: clamp(1.25rem, 2vw + 0.5rem, 3rem);
  }
}
