/* ═══════════════════════════════════════════════════════════
   TOKENS DE COR — Habitus 360 (fonte única de TODAS as cores)
   Nenhuma cor pode existir fora deste arquivo — o teste
   tests/rodar_testes.sh falha se isso acontecer.
   Overrides por tela preservam valores que já divergiam
   antes do refactor (visual intocado).
   ═══════════════════════════════════════════════════════════ */
:root {
  /* ── tokens semânticos (nomes herdados das telas) ── */
  --laranja: #e8803a;
  --laranja-hover: #d06a28;
  --navy: #f8f8f6;
  --card: #ffffff;
  --card2: #f5f5f3;
  --border: rgba(0,0,0,0.08);
  --border-orange: rgba(232,128,58,0.3);
  --text: #1a1a2e;
  --muted: #7a8295;
  --muted2: #adb5bd;
  --verde: #2e9e5b;
  --vermelho: #dc3545;
  --amarelo: #f6c90e;
  --roxo: #7c5cbf;
  --azul: #1c4e80;
  --azul-p: #0f3560;
  --azul-c: #2d6fa8;
  --glass: rgba(0,0,0,0.02);
  --glass-b: rgba(0,0,0,0.06);
  --border-hover: rgba(232,128,58,0.5);
  --branco: #ffffff;
  --superficie: #ffffff;      /* fundo de card/menu: escurece no tema escuro (--branco não) */
  --texto-suave: rgba(0,0,0,0.4);

  /* ── tokens de valor (cores sem papel semântico ainda) ── */
  --branco-a97: rgba(255,255,255,0.97);
  --preto-a07: rgba(0,0,0,0.07);
  --c-1a1a1a: #1a1a1a;
  --preto-a40: rgba(0,0,0,0.4);
  --preto-a45: rgba(0,0,0,0.45);
  --c-333333: #333333;
  --preto-a03: rgba(0,0,0,0.03);
  --laranja-a06: rgba(232,128,58,0.06);
  --preto-a30: rgba(0,0,0,0.3);
  --c-060c17: #060c17;
  --c-1c4e80-a45: rgba(28,78,128,0.45);
  --c-0f3560-a30: rgba(15,53,96,0.3);
  --laranja-a08: rgba(232,128,58,0.08);
  --c-dc3545-a10: rgba(220,53,69,0.1);
  --c-dc3545-a30: rgba(220,53,69,0.3);
  --preto-a10: rgba(0,0,0,0.1);
  --c-1c4e80-a08: rgba(28,78,128,0.08);
  --preto-a04: rgba(0,0,0,0.04);
  --laranja-a05: rgba(232,128,58,0.05);
  --c-48bb78-a40: rgba(72,187,120,0.4);
  --c-48bb78-a05: rgba(72,187,120,0.05);
  --c-fc8181-a30: rgba(252,129,129,0.3);
  --c-fc8181-a04: rgba(252,129,129,0.04);
  --branco-a60: rgba(255,255,255,0.6);
  --c-48bb78-a12: rgba(72,187,120,0.12);
  --laranja-a12: rgba(232,128,58,0.12);
  --laranja-a10: rgba(232,128,58,0.1);
  --branco-a02: rgba(255,255,255,0.02);
  --c-48bb78-a15: rgba(72,187,120,0.15);
  --c-48bb78-a30: rgba(72,187,120,0.3);
  --c-f6c90e-a15: rgba(246,201,14,0.15);
  --c-f6c90e-a30: rgba(246,201,14,0.3);
  --c-63b3ed-a15: rgba(99,179,237,0.15);
  --c-63b3ed-a30: rgba(99,179,237,0.3);
  --c-1c4e80-a55: rgba(28,78,128,0.55);
  --c-0f3560-a40: rgba(15,53,96,0.4);
  --laranja-a07: rgba(232,128,58,0.07);
  --branco-a05: rgba(255,255,255,0.05);
  --branco-a10: rgba(255,255,255,0.1);
  --laranja-a80: rgba(232,128,58,0.8);
  --laranja-a100: rgba(232,128,58,1);
  --branco-a40: rgba(255,255,255,0.4);
  --branco-a35: rgba(255,255,255,0.35);
  --c-ff9f5c: #ff9f5c;
  --branco-a45: rgba(255,255,255,0.45);
  --laranja-a18: rgba(232,128,58,0.18);
  --laranja-a22: rgba(232,128,58,0.22);
  --branco-a04: rgba(255,255,255,0.04);
  --branco-a08: rgba(255,255,255,0.08);
  --laranja-a30: rgba(232,128,58,0.3);
  --branco-a09: rgba(255,255,255,0.09);
  --branco-a85: rgba(255,255,255,0.85);
  --branco-a25: rgba(255,255,255,0.25);
  --preto-a35: rgba(0,0,0,0.35);
  --c-f07c00: #f07c00;
  --preto-a70: rgba(0,0,0,0.7);
  --laranja-a04: rgba(232,128,58,0.04);
  --c-2e9e5b-a12: rgba(46,158,91,0.12);
  --c-48bb78-a80: rgba(72,187,120,0.8);
  --c-f6c90e-a80: rgba(246,201,14,0.8);
  --laranja-a90: rgba(232,128,58,0.9);
  --laranja-a40: rgba(232,128,58,0.4);
  --laranja-a15: rgba(232,128,58,0.15);
  --c-2e9e5b-a08: rgba(46,158,91,0.08);
  --c-2e9e5b-a20: rgba(46,158,91,0.2);
  --c-2e9e5b-a15: rgba(46,158,91,0.15);
  --branco-a20: rgba(255,255,255,0.2);
  --c-48bb78-a90: rgba(72,187,120,0.9);
  --branco-a07: rgba(255,255,255,0.07);
  --c-2e9e5b-a10: rgba(46,158,91,0.1);
  --laranja-a25: rgba(232,128,58,0.25);
  --branco-a50: rgba(255,255,255,0.5);
  --c-f6c90e-a08: rgba(246,201,14,0.08);
  --c-f6c90e-a95: rgba(246,201,14,0.95);
  --branco-a65: rgba(255,255,255,0.65);
  --branco-a55: rgba(255,255,255,0.55);
  --laranja-a65: rgba(232,128,58,0.65);
  --preto-a05: rgba(0,0,0,0.05);
  --laranja-a00: rgba(232,128,58,0);
  --laranja-a20: rgba(232,128,58,0.2);
  --laranja-a48: rgba(232,128,58,0.48);
  --laranja-a28: rgba(232,128,58,0.28);
  --c-1c4e80-a12: rgba(28,78,128,0.12);
  --c-1c4e80-a20: rgba(28,78,128,0.2);
  --c-7c5cbf-a12: rgba(124,92,191,0.12);
  --c-7c5cbf-a20: rgba(124,92,191,0.2);
  --c-2e9e5b-a30: rgba(46,158,91,0.3);
  --c-7c5cbf-a30: rgba(124,92,191,0.3);
  --c-1c4e80-a30: rgba(28,78,128,0.3);
  --c-cccccc: #cccccc;
  --preto-a15: rgba(0,0,0,0.15);
  --c-0f3560-a08: rgba(15,53,96,0.08);
  --branco-a38: rgba(255,255,255,0.38);
  --c-ff9f5c-a35: rgba(255,159,92,0.35);
  --c-2d6fa8-a20: rgba(45,111,168,0.2);
  --c-fc8181-a12: rgba(252,129,129,0.12);
  --c-fc8181-a28: rgba(252,129,129,0.28);
  --c-48bb78-a28: rgba(72,187,120,0.28);
  --c-f6c90e-a12: rgba(246,201,14,0.12);
  --c-f6c90e-a28: rgba(246,201,14,0.28);
  --c-b794f4-a12: rgba(183,148,244,0.12);
  --c-b794f4-a28: rgba(183,148,244,0.28);
  --branco-a03: rgba(255,255,255,0.03);
  --branco-a06: rgba(255,255,255,0.06);
  --c-fc8181-a70: rgba(252,129,129,0.7);
  --c-48bb78-a70: rgba(72,187,120,0.7);
  --c-f6c90e-a70: rgba(246,201,14,0.7);
  --c-b794f4-a70: rgba(183,148,244,0.7);
  --c-2d6fa8-a18: rgba(45,111,168,0.18);
  --c-2d6fa8-a45: rgba(45,111,168,0.45);
  --c-7fb8e8: #7fb8e8;
  --c-7c5cbf-a40: rgba(124,92,191,0.4);
  --c-2e9e5b-a40: rgba(46,158,91,0.4);
  --c-1c4e80-a40: rgba(28,78,128,0.4);
  --c-b794f4-a15: rgba(183,148,244,0.15);
  --c-fc8181-a15: rgba(252,129,129,0.15);
  --c-1c4e80-a15: rgba(28,78,128,0.15);
  --c-0f3560-a10: rgba(15,53,96,0.1);
  --laranja-a03: rgba(232,128,58,0.03);
  --branco-a15: rgba(255,255,255,0.15);
  --c-b85a20: #b85a20;
  --c-48bb78-a10: rgba(72,187,120,0.1);
  --c-fc8181-a10: rgba(252,129,129,0.1);
  --c-fc8181: #fc8181;
  --branco-a70: rgba(255,255,255,0.7);
  --preto-a50: rgba(0,0,0,0.5);
  --c-1c4e80-a05: rgba(28,78,128,0.05);
  --preto-a08: rgba(0,0,0,0.08);
  --c-1c4e80-a10: rgba(28,78,128,0.1);
  --c-dc3545-a08: rgba(220,53,69,0.08);
  --c-dc3545-a20: rgba(220,53,69,0.2);
  --c-0a0c14-a97: rgba(10,12,20,0.97);
  --branco-a80: rgba(255,255,255,0.8);
  --c-1c4e80-a04: rgba(28,78,128,0.04);
  --preto-a06: rgba(0,0,0,0.06);
  --c-07101e: #07101e;
  --c-0a0f1a: #0a0f1a;
  --c-0a0f1a-a00: rgba(10,15,26,0);
  --c-0a0f1a-a85: rgba(10,15,26,0.85);
  --c-0a0f1a-a100: rgba(10,15,26,1);
  --c-0f1c2e: #0f1c2e;
  --c-6b7a8d: #6b7a8d;
  --c-48bb78-a07: rgba(72,187,120,0.07);
  --c-48bb78-a25: rgba(72,187,120,0.25);
  --c-68d391: #68d391;
  --c-a0aec0: #a0aec0;
  --c-e2e8f0: #e2e8f0;
  --c-1c4e80-a18: rgba(28,78,128,0.18);
  --c-0f3560-a14: rgba(15,53,96,0.14);
  --c-7f1d1d: #7f1d1d;
  --c-991b1b: #991b1b;
  --c-7c2d12: #7c2d12;
  --c-9a3412: #9a3412;
  --c-1f2937: #1f2937;
  --c-374151: #374151;
  --c-14532d: #14532d;
  --c-166534: #166534;
  --c-15803d: #15803d;
  --c-48bb78-a20: rgba(72,187,120,0.2);
  --c-2d6fa8-a25: rgba(45,111,168,0.25);
  --preto-a60: rgba(0,0,0,0.6);
  --c-fc8181-a20: rgba(252,129,129,0.2);
  --c-48bb78-a06: rgba(72,187,120,0.06);
  /* Home v4 (sua-jornada): navy chapado do design aprovado, fixo nos 2 temas */
  --c-0f1b2d: #0f1b2d;
  --c-16263e: #16263e;
  --c-1b2c47: #1b2c47;
  --c-f2f5fa: #f2f5fa;
  --c-9aa8bf: #9aa8bf;
  --c-48bb78: #48bb78;
}

:root[data-tela="checkin30"] {
  --border: rgba(255,255,255,0.07);
  --glass: rgba(255,255,255,0.042);
  --glass-b: rgba(255,255,255,0.08);
  --verde: #48bb78;
  --vermelho: #fc8181;
}

:root[data-tela="jornada"] {
  --amarelo: #d4a017;
  --border-orange: rgba(232,128,58,0.35);
}

:root[data-tela="postreino"] {
  --glass: rgba(255,255,255,0.042);
  --glass-b: rgba(255,255,255,0.08);
  --verde: #48bb78;
}

:root[data-tela="relatorio"] {
  --verde: #48bb78;
  --vermelho: #fc8181;
}

:root[data-tela="trilha"] {
  --border: rgba(0,0,0,0.09);
}

/* ═══════════════════════════════════════════════════════════
   TEMA ESCURO — identidade da marca no escuro (navy #0f1b2d)
   Aplicado via <html data-tema="escuro"> (js/tema.js decide:
   escolha da aluna > preferência do sistema). Este bloco fica
   por último de propósito: vence os overrides por tela.
   Tokens ausentes aqui (sombras --preto-aXX, overlays, alfas
   de laranja/branco) valem para os dois temas.
   ═══════════════════════════════════════════════════════════ */
:root[data-tema="escuro"] {
  /* superfícies e texto */
  --navy: #0f1b2d;
  --card: #16263e;
  --card2: #1b2c47;
  --superficie: #16263e;
  --text: #f2f5fa;
  --muted: #9aa8bf;
  --muted2: #7286a3;
  --texto-suave: rgba(255,255,255,0.45);
  --border: rgba(255,255,255,0.1);
  --border-orange: rgba(232,128,58,0.4);
  --glass: rgba(255,255,255,0.04);
  --glass-b: rgba(255,255,255,0.08);

  /* acentos (tons legíveis sobre navy) */
  --laranja-hover: #f0925a;
  --verde: #48bb78;
  --vermelho: #fc8181;
  --roxo: #b794f4;
  --azul: #7fb8e8;
  --azul-p: #3e6ea8;
  --azul-c: #5f9fd4;

  /* 23/07: fundo "mesh" premium (azul cintilante + preto, pedido do Gabriel
     com base em PAINEL_HERO_v4_premium.html/login_imagem_v3.html) — tokens
     PRÓPRIOS (não reaproveitam --azul/--azul-p/--azul-c acima, que são cor
     de TEXTO/ícone legível; estes são cor de FUNDO/glow, tons diferentes). */
  --ink: #060c17;
  --mesh-azul-a50: rgba(28,78,128,0.5);
  --mesh-azulp-a40: rgba(15,53,96,0.4);
  --mesh-azulc-a15: rgba(45,111,168,0.15);

  /* casca e detalhes estruturais */
  --branco-a97: rgba(15,27,45,0.97);
  --c-1a1a1a: #f2f5fa;
  --c-333333: #c9d3e2;
  --preto-a07: rgba(255,255,255,0.09);
  --preto-a08: rgba(255,255,255,0.12);
  --preto-a10: rgba(255,255,255,0.12);
  --preto-a30: rgba(255,255,255,0.4);
  --preto-a35: rgba(255,255,255,0.45);
  --preto-a50: rgba(255,255,255,0.55);
}
