/*
 * BeppoAI — TOKENS COMPARTIDOS app ↔ landing (ADR-0011: un design system, un archivo físico).
 * v2 · 2026-09-29. Fuente de valores: este archivo. Contraparte de diseño:
 * `_stack/design-tokens-beppoai-fuente.json` (GENERADO desde este archivo) y
 * `BeppoAI Design System 2.0.dc.html` en Claude Design. docs/design-system.md se regenera desde aquí.
 *
 * Reglas anti-drift:
 *  01 Lima SOLO significa IA/acción/selección/siguiente paso — dosificado, nunca decorativo.
 *  03 Semánticos ≠ acento: info=humano · warning=pendiente · destructive=error/límite.
 *  04 Dark = operación · Paper = documentos y light.
 *  Nunca: rounded-full en todo · glows · glass/bento · sombras fuera de overlay y focus-ring.
 */
:root {
  /* ── Charcoal ───────────────────────────────────────────────────────── */
  --bp-charcoal-0: #0a0f0d;
  --bp-charcoal-1: #131b17;
  --bp-charcoal-2: #1b2521;

  /* ── Tinta ──────────────────────────────────────────────────────────── */
  --bp-ink: #e8f0ec;
  --bp-ink-2: #c3cfc9;
  --bp-ink-muted: #98a69f;
  /* Cuarto nivel de tinta ("apagado" del brief de onboarding self-serve): mono de metadatos, pies y
     placeholders. ⚠️ Mide 4.3:1 sobre charcoal-0 y 3.9:1 sobre charcoal-1 — NO llega a AA 4.5 para
     texto normal, así que es para metadato NO esencial (timestamps, taglines, pies). Copy que el dueño
     tiene que poder leer va en --bp-ink-muted (7.6:1). Fijado por verify:carril-diseno.
     🔴 DS 2.0 había colapsado esta nota a una línea y se llevaba los dos ratios, el "no llega a AA" y
     el qué-usar-en-su-lugar. El canario la exige entera a propósito: un token que no llega a AA sin su
     razón al lado es el que alguien usa para un precio o un estado. */
  --bp-ink-dim: #6c7a73;
  --bp-hairline: oklch(1 0 0 / 12%);

  /* ── Lima ───────────────────────────────────────────────────────────── */
  --bp-lima: #b5f23d;
  --bp-lima-claro: #c6f95e;
  --bp-lima-ink: #17240a;

  /* ── Semánticos ─────────────────────────────────────────────────────── */
  --bp-info: #3da5ff;
  --bp-info-ink: #04121f;
  --bp-warning: #f5b32c;
  --bp-warning-strong: #e0920a;
  --bp-warning-ink: #241400;
  --bp-destructive: #ff5a5a;
  --bp-chip-alpha-bg: 12%;
  --bp-chip-alpha-border: 28%;

  /* ── Densidad ───────────────────────────────────────────────────────── */
  --bp-density-ops: 1rem;
  --bp-density-aire: 1.5rem;

  /* ── Radios ─────────────────────────────────────────────────────────── */
  --bp-radius: 0.625rem;

  /* ── Tipografía ─────────────────────────────────────────────────────── */
  --bp-font-sans: 'Space Grotesk', system-ui, sans-serif;
  --bp-font-mono: 'JetBrains Mono', monospace;
  --bp-text-display: 3rem;
  --bp-text-h2: 2rem;
  --bp-text-h3: 1.25rem;
  --bp-text-body: 1rem;
  --bp-text-micro: 0.8125rem;
  --bp-weight-display: 700;
  --bp-weight-body: 400;
  --bp-weight-micro: 500;

  /* ══════════════════════════════════════════════════════════════════════
     v2 (2026-09-29) — adiciones de la auditoría DS 2.0. Ningún valor previo cambia.
     Capa 0 · filosofía: confianza atmosférica · comodidad emocional · worldbuilding sutil ·
     progresión visible · verdad operacional · autoridad explícita · compañía sobria.
     D2: el lima se DOSIFICA, no se atenúa: un foco dominante por viewport; nunca fondo de
     sección larga salvo el CTA; lima = acción, IA activa o siguiente paso.
     ══════════════════════════════════════════════════════════════════════ */

  /* ── Marca ──────────────────────────────────────────────────────────── */
  --bp-logo-box: #111310;                /* caja rx116 del mark · tinta sobre papel. NO superficie de UI */

  /* ── Papel (D1: documentos impresos = tema light de operación) ──────── */
  --bp-paper: #f3f6ee;                   /* arena */
  --bp-paper-1: #ffffff;                 /* tarjeta sobre papel */
  --bp-paper-2: #e9eee6;                 /* hover / selección suave sobre papel */
  --bp-ink-on-paper: #111310;            /* 17.4:1 */
  --bp-ink-muted-on-paper: #66716b;      /* 5.1:1 sobre arena */
  --bp-hairline-on-paper: #dde2df;
  --bp-lima-on-paper: #7faf1e;           /* lima como TEXTO sobre claro (4.6:1). Nunca --bp-lima como texto aquí */
  --bp-info-on-paper: #1c74bf;
  --bp-warning-on-paper: #a66a05;
  --bp-destructive-on-paper: #c43a3a;

  /* ── Elevación: las DOS únicas sombras permitidas (D3) ──────────────── */
  --bp-shadow-overlay: 0 24px 60px oklch(0 0 0 / 55%);              /* sheets, modales, popover flotante */
  --bp-focus-ring: 0 0 0 4px color-mix(in oklch, var(--bp-lima) 7%, transparent);

  /* ── Motion (fuente; globals.css @theme debe leer estos) ────────────── */
  --bp-duration-instant: 80ms;           /* press, tick de estado, toggle */
  --bp-duration-fast: 140ms;             /* hover, focus · DEFAULT */
  --bp-duration-base: 220ms;             /* burbuja, chips, popovers */
  --bp-duration-slow: 360ms;             /* sheets, paneles, skeleton */
  --bp-ease-snappy: cubic-bezier(0.2, 0, 0, 1);

  /* ── Mundo (D4: Beppo + muro; pixel-art y audio quedan fuera) ───────── */
  --bp-wall-tile: 480px;                 /* muro de oficios; nunca < 360px */
  --bp-wall-opacity: 1;                  /* .bg-doodle-soft = 0.5 */
}
