/* ── TOKENS DEL SITIO PÚBLICO Y DEL PANEL (revsignlab.com) — docs/41 Fase 1 ───
   Negro puro, blanco nítido y la marca como acento. Variante A (docs/41 Fase 0):
   header y hero en rojo, el resto en negro. Los nombres semánticos siguen a
   shadcn/ui (--background, --foreground, --border, --primary, --ring...) para que
   una persona o un modelo generen pantallas coherentes; los valores son de REVsign.

   Un solo bloque ":root" (lo copia i18n/build-tokens.mjs a lib/tokens.ts para las
   Edge Functions de api/*, que no leen archivos). No hay tema claro: lo público y
   /app/ son solo oscuros. Correr `node i18n/build-tokens.mjs --check` después de
   tocar este archivo. */
:root {
  /* semánticos, oscuro (estándar) */
  --background:         #000000;
  --foreground:         #ffffff;
  --muted-foreground:   #a3a3a3;
  --border:             rgba(255,255,255,.14);
  --border-strong:      rgba(255,255,255,.40);
  --card:               #070707;
  --accent:             rgba(255,255,255,.06);
  --primary:            #ffffff;
  --primary-foreground: #000000;
  --ring:               #ffffff;
  /* radios (docs/41, mockup 041): controles, tarjetas y paneles. Botones y pastillas, 999px. */
  --radius:             10px;
  --radius-card:        16px;
  --radius-panel:       20px;

  /* marca */
  --brand:      #E7243B;
  --brand-soft: #FF5A6E;
  --brand-2:    #FFD23A;

  /* superficie roja de header y hero (variante A): blanco sobre este rojo da 5,1 a 1,
     sobre #E7243B daba 4,46 (debajo de 4,5 de AA). */
  --hero:            #D52133;
  --hero-foreground: #ffffff;

  /* la marca con transparencia: fondo y línea de lo que pide atención (insignias rojas, tarjeta de
     invitación, tarjeta bloqueada) y el velo detrás de modales y cajones. Sobre negro se leen igual
     que el rgba suelto que reemplazan. */
  --brand-wash:        color-mix(in srgb, var(--brand) 8%, transparent);
  --brand-fill:        color-mix(in srgb, var(--brand) 12%, transparent);
  --brand-line:        color-mix(in srgb, var(--brand) 35%, transparent);
  --brand-line-strong: color-mix(in srgb, var(--brand) 50%, transparent);
  --scrim:             color-mix(in srgb, var(--background) 72%, transparent);
  --scrim-soft:        color-mix(in srgb, var(--background) 50%, transparent);

  /* color con sentido: dato, no decoración */
  --ok:     #3fb950;
  --warn:   #c9b45a;
  --danger: #e0862a;

  /* pestaña activa de la barra inferior del Modo CEO (docs/42): el azul de marca */
  --nav-active: var(--info);

  /* azul de datos y amarillo profundo: la serie "descartadas" del gráfico, el veredicto "corresponde",
     la pestaña activa del Modo CEO, y los niveles medios de puntaje del panel. Siguen fijos. */
  --info:         #3B7DEA;
  --brand-2-deep: #F5BE16;

  /* Titulares en sans (docs/41, referencias de UI): --font-heading, Hanken medio con tracking cerrado.
     Zilla Slab queda solo en el wordmark ("REVsign."). */
  --font-heading:  "Hanken Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-wordmark: "Zilla Slab", "Roboto Slab", Georgia, serif;
  --font-sans:    "Hanken Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono:    "Space Mono", "SFMono-Regular", ui-monospace, monospace;

  /* Escala tipográfica única de las landings (docs/002-PLAN-TIPOGRAFIA-LANDINGS). */
  --size-eyebrow: 12px;
  --size-body:    16px;
  --size-title:   18px;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}
