/* ============================================================
   HUX — tokens.css  (NEUTRO, sem marca)
   ------------------------------------------------------------
   Fundação de design-tokens compartilhada. Reconstruída do zero,
   NÃO copiada do Conecta/g2. Camada base: superfície, texto,
   semânticas e primitivos. As cores de MARCA (accent/ação) e
   fontes vêm do tema (ex.: theme-plataforma.css) — nunca aqui.

   Fonte canônica: resources/css/tokens.css
   Cópia servida:  public/assets/tokens.css (mesmo conteúdo)
   ============================================================ */

/* ── 1. PRIMITIVOS NÃO-TEMÁTICOS ── */
:root {
  /* Espaçamento — escala explícita, base 4px */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;

  /* Raio de borda */
  --radius: 12px;
  --radius-sm: 8px;
  --radius-pill: 20px;

  /* Movimento */
  --trans: all .2s cubic-bezier(.4, 0, .2, 1);

  /* Anel de foco padrão (usa o accent do tema) */
  --focus-ring: 0 0 0 3px var(--accent-soft);

  /* Fontes — contrato; valores reais vêm do tema */
  --font-display: var(--tenant-font-display, system-ui, sans-serif);
  --font-body:    var(--tenant-font-body, system-ui, sans-serif);
  --font-mono:    var(--tenant-font-mono, ui-monospace, monospace);

  /* ACCENT e AÇÃO — parametrizáveis: valores definidos pelo TEMA.
     Declarados aqui só como contrato/documentação (sem valor). */
  /* --accent, --accent-hover, --accent-dark, --accent-soft, --accent-border */
  /* --action, --action-hover, --action-dark, --action-soft, --action-border */
}

/* ── 2. SEMÂNTICAS (tokenizadas — um hex por papel) ── */
:root,
:root[data-theme="dark"] {
  --success: #2FBF71;
  --success-soft: rgba(47, 191, 113, .12);
  --success-border: rgba(47, 191, 113, .30);

  --warning: #F5B301;
  --warning-soft: rgba(245, 179, 1, .12);
  --warning-border: rgba(245, 179, 1, .30);

  --danger: #E8544B;
  --danger-soft: rgba(232, 84, 75, .12);
  --danger-border: rgba(232, 84, 75, .35);

  --info: #4C82F2;
  --info-soft: rgba(76, 130, 242, .12);
  --info-border: rgba(76, 130, 242, .30);
}

/* ── 3. SUPERFÍCIE / TEXTO — TEMA DARK (default) ── */
:root,
:root[data-theme="dark"] {
  --bg:        #0C1018;
  --surface:   #161D2E;
  --surface-2: #1B2438;
  --border:    #263149;
  --text:      #E8ECF5;
  --text-2:    #8B97B3;
  --text-3:    #5B6580;
  --shadow:    0 6px 24px rgba(0, 0, 0, .35);
}

/* ── 4. SUPERFÍCIE / TEXTO — TEMA LIGHT (produto white-label) ── */
:root[data-theme="light"] {
  --bg:        #EEF1F8;
  --surface:   #FFFFFF;
  --surface-2: #F4F6FC;
  --border:    #D8DEF0;
  --text:      #0F2137;
  --text-2:    #4A6080;
  --text-3:    #8FA3BC;
  --shadow:    0 2px 12px rgba(15, 33, 55, .07);

  /* Semânticas com leve reforço de contraste no claro */
  --success: #16A34A; --success-soft: rgba(22, 163, 74, .10); --success-border: rgba(22, 163, 74, .25);
  --warning: #B45309; --warning-soft: rgba(180, 83, 9, .10);  --warning-border: rgba(180, 83, 9, .25);
  --danger:  #DC2626; --danger-soft:  rgba(220, 38, 38, .10); --danger-border:  rgba(220, 38, 38, .25);
  --info:    #2563EB; --info-soft:    rgba(37, 99, 235, .10); --info-border:    rgba(37, 99, 235, .25);
}
