/* GERADO por ferramentas/gerar-tokens.py a partir de brand/tokens/tokens.json (DTCG 2025.10). NÃO EDITAR À MÃO.
   Para mudar uma cor, uma fonte ou uma medida: PR em brand/tokens/tokens.json e rodar o gerador de novo.
   sha256 do tokens.json: 94c2df8ca38bbd20ed455dbaf56c13e0a562a6bbb9582d2af10cd1e4d147aefe
   Temas: escuro é o padrão (a interface nasce escura); o claro vem de prefers-color-scheme ou de data-theme="light".
   [data-theme] também vale em qualquer elemento (painel de marca sempre escuro, por exemplo). */

:root,
[data-theme="dark"] {
  --ihit-color-background: #160a1e;
  --ihit-color-surface: #211528;
  --ihit-color-surface-raised: #2a1d33;
  --ihit-color-divider: #33263e;
  --ihit-color-text: #ffffff;
  --ihit-color-text-secondary: #b3a8bc;
  --ihit-color-icon-secondary: #b3a8bc;
  --ihit-color-control-border: #857a8f;
  --ihit-color-action: #ff5bd8;
  --ihit-color-on-action: #160a1e;
  --ihit-color-link: #ff5bd8;
  --ihit-color-link-on-raised: #ff5bd8;
  --ihit-color-focus: #ff5bd8;
  --ihit-color-selection: #3b0f36;
  --ihit-color-ai: #ff5bd8;
  --ihit-color-ai-on-raised: #ff5bd8;
  --ihit-color-ai-surface: #3b0f36;
  --ihit-color-success: #3ddc8f;
  --ihit-color-on-success: #160a1e;
  --ihit-color-warning: #ffc24b;
  --ihit-color-on-warning: #160a1e;
  --ihit-color-error: #ff7a66;
  --ihit-color-on-error: #160a1e;
  --ihit-color-info: #84aeff;
  --ihit-color-on-info: #160a1e;
  --ihit-pecas: #ffffff;
  --ihit-ponto: #ff5bd8;
  color-scheme: dark;
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    --ihit-color-background: #ffffff;
    --ihit-color-surface: #f6f2f7;
    --ihit-color-surface-raised: #eee7f0;
    --ihit-color-divider: #e3dae8;
    --ihit-color-text: #160a1e;
    --ihit-color-text-secondary: #675c71;
    --ihit-color-icon-secondary: #4a3f53;
    --ihit-color-control-border: #857a8f;
    --ihit-color-action: #c800a1;
    --ihit-color-on-action: #ffffff;
    --ihit-color-link: #c800a1;
    --ihit-color-link-on-raised: #c0009b;
    --ihit-color-focus: #c800a1;
    --ihit-color-selection: #fdf0fa;
    --ihit-color-ai: #c800a1;
    --ihit-color-ai-on-raised: #c0009b;
    --ihit-color-ai-surface: #fdf0fa;
    --ihit-color-success: #13784a;
    --ihit-color-on-success: #ffffff;
    --ihit-color-warning: #9a5800;
    --ihit-color-on-warning: #ffffff;
    --ihit-color-error: #c4321e;
    --ihit-color-on-error: #ffffff;
    --ihit-color-info: #2456d3;
    --ihit-color-on-info: #ffffff;
    --ihit-pecas: #160a1e;
    --ihit-ponto: #c800a1;
    color-scheme: light;
  }
}

[data-theme="light"] {
  --ihit-color-background: #ffffff;
  --ihit-color-surface: #f6f2f7;
  --ihit-color-surface-raised: #eee7f0;
  --ihit-color-divider: #e3dae8;
  --ihit-color-text: #160a1e;
  --ihit-color-text-secondary: #675c71;
  --ihit-color-icon-secondary: #4a3f53;
  --ihit-color-control-border: #857a8f;
  --ihit-color-action: #c800a1;
  --ihit-color-on-action: #ffffff;
  --ihit-color-link: #c800a1;
  --ihit-color-link-on-raised: #c0009b;
  --ihit-color-focus: #c800a1;
  --ihit-color-selection: #fdf0fa;
  --ihit-color-ai: #c800a1;
  --ihit-color-ai-on-raised: #c0009b;
  --ihit-color-ai-surface: #fdf0fa;
  --ihit-color-success: #13784a;
  --ihit-color-on-success: #ffffff;
  --ihit-color-warning: #9a5800;
  --ihit-color-on-warning: #ffffff;
  --ihit-color-error: #c4321e;
  --ihit-color-on-error: #ffffff;
  --ihit-color-info: #2456d3;
  --ihit-color-on-info: #ffffff;
  --ihit-pecas: #160a1e;
  --ihit-ponto: #c800a1;
  color-scheme: light;
}

:root {
  /* marca */
  --ihit-color-heritage: #42155c;
  --ihit-color-field: #c800a1;
  --ihit-color-on-field: #ffffff;

  /* tipografia */
  --ihit-font-display: Archivo, system-ui, sans-serif;
  --ihit-font-text: "Atkinson Hyperlegible Next", system-ui, sans-serif;
  --ihit-font-mono: "Martian Mono", ui-monospace, monospace;
  --ihit-weight-regular: 400;
  --ihit-weight-medium: 500;
  --ihit-weight-semibold: 600;
  --ihit-weight-bold: 700;
  --ihit-weight-extrabold: 800;
  --ihit-width-display: 125%;
  --ihit-width-title: 112.5%;
  --ihit-width-mono: 100%;
  --ihit-size-label: 0.6875rem;
  --ihit-size-caption: 0.75rem;
  --ihit-size-mono: 0.8125rem;
  --ihit-size-body-sm: 0.875rem;
  --ihit-size-body: 1rem;
  --ihit-size-body-lg: 1.1875rem;
  --ihit-size-title-2: 1.375rem;
  --ihit-size-title-1: 1.75rem;
  --ihit-size-display-2: 2.5rem;
  --ihit-size-display-1: 3.5rem;
  --ihit-leading-tight: 1;
  --ihit-leading-snug: 1.15;
  --ihit-leading-normal: 1.35;
  --ihit-leading-relaxed: 1.5;
  --ihit-leading-code: 1.6;
  --ihit-tracking-label: 1.3px;
  --ihit-tracking-display-1: -0.56px;
  --ihit-tracking-display-2: -0.4px;

  /* raios (o Encontro: arredondado no eixo ↘, vivo no eixo ↗) */
  --ihit-radius-none: 0px;
  --ihit-radius-xs: 4px;
  --ihit-radius-sm: 8px;
  --ihit-radius-md: 12px;
  --ihit-radius-lg: 20px;
  --ihit-radius-xl: 28px;
  --ihit-radius-full: 9999px;
  --ihit-radius-round: 20px;
  --ihit-radius-sharp: 4px;
  --ihit-radius-encounter: var(--ihit-radius-round) var(--ihit-radius-sharp) var(--ihit-radius-round) var(--ihit-radius-sharp);
  --ihit-radius-encounter-mirror: var(--ihit-radius-sharp) var(--ihit-radius-round) var(--ihit-radius-sharp) var(--ihit-radius-round);

  /* espaçamento (grade de 4 px) */
  --ihit-space-0: 0;
  --ihit-space-0-5: 0.125rem;
  --ihit-space-1: 0.25rem;
  --ihit-space-2: 0.5rem;
  --ihit-space-3: 0.75rem;
  --ihit-space-4: 1rem;
  --ihit-space-5: 1.25rem;
  --ihit-space-6: 1.5rem;
  --ihit-space-8: 2rem;
  --ihit-space-10: 2.5rem;
  --ihit-space-12: 3rem;
  --ihit-space-16: 4rem;
  --ihit-space-20: 5rem;

  /* tamanhos */
  --ihit-touch-ios: 44px;
  --ihit-touch-android: 48px;
  --ihit-logo-min-width: 104px;
  --ihit-ai-tag-dot: 7px;

  /* movimento */
  --ihit-duration-fast: 120ms;
  --ihit-duration-beat: 180ms;
  --ihit-duration-base: 240ms;
  --ihit-duration-turn: 360ms;
  --ihit-duration-encounter: 480ms;
  --ihit-duration-volley: 800ms;
  --ihit-duration-think-cycle: 1600ms;
  --ihit-duration-blink: 2400ms;
  --ihit-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ihit-ease-exit: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ihit-ease-enter: cubic-bezier(0.4, 0, 1, 1);
  --ihit-ease-turn: cubic-bezier(0.65, 0, 0.35, 1);
  --ihit-ease-beat: cubic-bezier(0.3, 0, 0.2, 1);
}
