/* Especificacao_Tokens_Paleta_Tela_26-09-2026.md - fonte ÚNICA de tokens de
   cor pra todo o painel (14 páginas, cada uma tinha seu próprio :root
   antes desta migração). Carregado via <link> ESTÁTICO no <head> de cada
   página, ANTES de qualquer <style> local - evita FOUC (flash sem cor):
   um <style> injetado por JS (ver injetarEstiloCabecalhoPainel em
   shared-header.js) só rodaria DEPOIS do <style> local já ter sido
   parseado pelo browser, tarde demais pra quem usa var(--azul) etc desde
   o primeiro parse.

   9 tokens canônicos da paleta de TELA (--azul.. --ambar) + neutros/status
   (inalterados neste lote) + tokens "extras" que só existiam numa página
   (sem equivalente canônico, migrados com o valor atual) + aliases
   temporários (--blue/--navy/--teal/--pink/--pink-bg/--teal-bg/--gold/
   --tm-.../--v-...) pra que as 399+ ocorrências de var(--navy) etc continuem
   funcionando sem precisar trocar cada uma agora - a troca por grep é o
   PRÓXIMO lote (ver "Observações gerais" da spec). NUNCA usar os aliases
   em código novo.

   Achados durante a migração (grep de divergência entre as 14 páginas,
   além do que a spec já diagnosticou):
   - --pink-bg/--teal-bg tinham valores levemente diferentes em index.html
     (#FCEAF3/#E3F6F0) vs as demais páginas que os usam (#FDE7F1/#E0F5F6,
     iguais aos canônicos --rosa-pastel/--turq-pastel). Viram alias DIRETO
     dos canônicos (como a spec exemplifica) - index.html converge pro tom
     majoritário, pequena correção de consistência.
   - --green-txt/--red-bg/--red-txt/--amber-txt/--gray-bg no ESCURO tinham
     2 valores diferentes coexistindo (5 páginas mais antigas - index,
     relatorios, relatorio, calendario, redefinir-senha - vs 7 páginas mais
     recentes - propostas, vendas, financeiro, clientes, criar-usuario,
     nova-venda, atualizar-venda). Nenhum dos dois grupos é "o errado";
     escolhido o valor do grupo maior (7 páginas) como único, por ser o
     mais recentemente adotado no histórico do projeto.
   - vendas.html:236-237 (.destaque-receita) já usava #0E5F52/#6FCF8C fixo
     pra cor de receita (não capturado nas "29 ocorrências" da spec, que
     listava só as 5 cores de impressão #186CA8/#24A8B4/#F054A8/#FCCC0C/
     #0C447C) - migrado pra var(--receita) também, mesmo espírito da spec.
   - criar-usuario.html já tinha um --azul/--turq/--rosa/--receita PRÓPRIO
     (criado ad-hoc na emenda de Alocação de Meta, 26/09/2026, ANTES desta
     spec existir - ver comentário "TODO-TOKENS" que already antecipava
     esta migração) com valores ligeiramente diferentes dos canônicos
     agora oficiais - os canônicos desta spec prevalecem.
   - --v-turq-txt, --v-rosa-txt, --v-rosa-bg (viagens.html) e --tm-rosa-txt
     (termometro.html/relatorios.html) são PRÓXIMOS dos tokens canônicos
     mas não idênticos - mantidos como tokens PRÓPRIOS (não viram alias),
     pra não alterar sutilmente um contraste já validado sem pedido
     explícito. Só viram alias os tokens que a spec pediu por nome
     (--tm-azul/--tm-azul-esc/--tm-turq/--tm-rosa/--tm-verde) ou que já
     batiam exatamente no valor (--pink-bg/--teal-bg, acima). */

:root {
  color-scheme: light;

  /* ---- 9 tokens canônicos (Especificacao_Tokens_Paleta_Tela_26-09-2026, tabela) ---- */
  --azul: #1F5FA8; --azul-esc: #184B87; --turq: #2BABBE; --turq-txt: #16707C;
  --turq-pastel: #E0F5F6; --rosa: #F35FAC; --rosa-pastel: #FDE7F1;
  --receita: #0E5F52; --ambar: #E8A317;

  /* ---- Padrão Clean (specs/30-09-2026/Padrao_Clean, §1/§2/§3/§4/§6) -
     decisão do Bruno 30/09: o azul #1F5FA8 vale pro SISTEMA TODO (--azul
     acima, era #276DB1). --azul-solido = fundo sólido com texto branco
     (aba ativa, cabeçalho de popup, botão primário) - no claro é igual a
     --azul; no escuro fica mais fechado que --azul (que clareia pra ser
     legível como TEXTO sobre fundo escuro) pra manter o branco por cima
     com contraste >= 4,5:1. Todo #276db1 que estava fixo no CSS do painel
     virou var(--azul-solido). Documentos do CLIENTE (contrato, roteiro,
     proposta pública, autocadastro, card) continuam na cor de MARCA da
     agência - não são "sistema".
     --texto-principal (#2A3B52, azul-ardósia) substitui o preto (--txt,
     --neutro-texto, --v-texto, --tm-texto apontam pra ele). Cores de valor
     semânticas: --valor-receita (a receber/receita), --valor-pagar (a
     pagar/negativo), --valor-total (resultado), --valor-vazio (não
     conferido/vazio) - nunca preto em valor monetário. ---- */
  --azul-solido: #1F5FA8; --azul-solido-esc: #184B87; /* hover/ativo de fundo sólido (texto branco) */
  --texto-principal: #2A3B52;
  --valor-receita: #1E7A5C; --valor-pagar: #B4461C; --valor-total: var(--azul); --valor-vazio: #8A96A3;
  --fundo-conteudo: #F6F8FA;       /* fundo da área de conteúdo / cabeçalho de tabela / linha total */
  --card-fundo: #FFFFFF; --card-borda: #E3E8EF;
  --rotulo: #556477;               /* rótulo de campo e cabeçalho de tabela */
  --texto-apoio: #6B7888;          /* data do log, estado vazio */
  --placeholder: #8A96A3;
  --obrigatorio: #C73838;
  --erro-borda: #D14343;
  --foco-campo: #2F6FB5;
  --campo-leitura-bg: #FAFBFC; --campo-leitura-txt: #556477;
  --linha-tabela: #EEF1F5;
  --borda-rodape: #D5DCE5;         /* separador dos totais fixos no rodapé (§6) */
  --acao-remover: #B8C0CA;         /* "×" cinza de linha (vermelho só no hover) */
  --destaque-total-bg: #EEF4FB; --destaque-total-txt: #1F5FA8;
  --topo-popup: #2F5E9E;           /* faixa do cabeçalho de popup nos mockups */
  --dropzone-borda: #C9D3DE;       /* tracejado da área de anexos */
  --pill-azul-bg: #EEF4FB; --pill-azul-txt: #1F5FA8;
  --pill-verde-bg: #E8F5F1; --pill-verde-txt: #1E7A5C;
  --pill-ambar-bg: #FFF4E0; --pill-ambar-txt: #8A5A12;
  --pill-vermelho-bg: #FDECEC; --pill-vermelho-txt: #B4461C;
  /* ---- Relatórios v2 (specs/30-09-2026/Relatorios_v2, A4/A5/§6 da barra) -
     paleta de GRÁFICO (principal, comparativo, mês aberto, secundária,
     negativo, heatmap de 5 tons de azul), selo "Over" lilás e cores dos
     segmentos do Ranking que não têm token semântico próprio. ---- */
  --graf-principal: #1F5FA8; --graf-comparativo: #D6E0EB; --graf-mes-aberto: #B8CFE6;
  --graf-secundaria: #24A8B4; --graf-negativo: #B4461C; --graf-neutro: #8A96A3; --graf-destaque: #F35FAC;
  --graf-heat-1: #E8F0F9; --graf-heat-2: #B8CFE6; --graf-heat-3: #7FA7D3; --graf-heat-4: #4A80BF; --graf-heat-5: #1F5FA8;
  --pill-lilas-bg: #EFE7F7; --pill-lilas-txt: #6B3FA0;
  --seg-esfriando: #D08A1E; --seg-documentacao: #7A4FA0;
  --radius-card: 12px; --radius-subcard: 10px; --radius-botao: 8px;
  --altura-botao: 36px; --gap-subcard: 10px; --gap-card: 16px;

  /* ---- Especificacao_Viagens_Redesign_27-09-2026.md, Item 1 - tokens
     tipográficos globais (Inter, escala fixa, 700/800 deixam de existir
     em código novo). Não redefinidos no tema escuro (tamanho/peso/família
     não mudam por tema, só cor). viagens.html é o primeiro consumidor
     (carrega a fonte via Google Fonts); demais telas migram em lotes
     próprios, por isso o fallback do stack já cobre quem ainda não
     carregou a Inter (cai pro system-ui/Segoe UI local, sem quebrar). ---- */
  --font-base: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --fs-xs: 11px; --fs-sm: 12px; --fs-md: 13px; --fs-lg: 15px;
  --fs-xl: 18px; --fs-2xl: 24px;
  --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600;

  /* ---- Especificacao_Financeiro_Ajustes_27-09-2026.md, item 11/12 -
     tokens aditivos (não substituem nenhuma cláusula da paleta canônica
     acima). --rosa-acao é EXCEÇÃO DE ESCOPO FECHADO (só Salvar/Liquidar no
     modal de lançamento de SAÍDA do Financeiro) - #f35fac (--rosa) com
     texto branco tem contraste ~3,0:1 (abaixo do WCAG AA 4,5:1);
     #C2317A tem ~5,6:1 - mesma cor nos 2 temas de propósito (o contraste
     foi calculado pra este valor exato, variar por tema quebraria a
     garantia de acessibilidade). --nota-bg/--nota-borda são o novo "amarelo
     nota" (Observações do Financeiro, bloco Observações de Pessoas -
     revoga o rosa pastel ali -, cada nota de venda_observacoes). ---- */
  --rosa-acao: #C2317A;
  --nota-bg: #FFF8D6; --nota-borda: #F2DC8A;

  /* ---- Especificacao_Vendas_Lote_Completo_27-09-2026.md, seção 2 - "chip
     de pessoa" (Pagante/Intermediário/Aprovador/Solicitante/Fornecedor/
     passageiros - regra transversal, achada faltando pela auditoria de
     27/09). Valores exatos do mockup aprovado (mockup_venda_modal.html,
     --chip/--ini) - --chip-pessoa-ini-bg é cor NEUTRA (não azul), diferente
     do círculo de iniciais já existente em .popover-pessoa-avatar (que é
     outro componente, não reaproveitável 1:1 aqui). Não reaproveita
     --blue-bg (já tem outros usos/hover em várias telas). ---- */
  --chip-pessoa-bg: #F1F5FA; --chip-pessoa-ini-bg: #DFE7F1;

  /* ---- Neutros e status (inalterados - já consistentes entre as 14
     páginas no tema claro, ver achados acima só sobre o escuro) ---- */
  --gray: #6B6B6B; --gray-bg: #F1F1F1; --gray-line: #E3E3E3; --line: #E3E3E3;
  --green-bg: #E2EFDA; --green-txt: #1F7A34; --amber-bg: #FFF3D6; --amber-txt: #9A6B12;
  --red-bg: #FBEAE3; --red-txt: #B5460F; --blue-bg: #E3F0FC;

  /* ---- Aditivo_Financeiro_Ajustes_27-09-2026.md, itens 14/15/16/17 - a
     spec referencia var(--txt)/var(--txt2)/var(--borda)/var(--fundo) com
     hex exatos que NÃO batem com nenhum token existente (--txt2 #6B7280 é
     mais azulado que --gray #6B6B6B; --borda #D9DEE5 é mais claro que
     --line #E3E3E3) - tokens novos, não aliases, pra não alterar sutilmente
     contraste já validado em telas que já usam --gray/--line hoje. --txt é
     a cor de texto padrão do corpo (já hardcoded em cada página, ex.
     financeiro.html "body{color:#1A1A1A}" / escuro "#E7EAEE" - vira token
     pra poder ser usada em var() por componentes novos). --fundo é o fundo
     da página (mesmo padrão, hoje hardcoded #F4F6F8/#1C232B). */
  --txt: var(--texto-principal); --txt2: #6B7280; --borda: #D9DEE5; --fundo: #F4F6F8;

  /* ---- Especificacao_Pessoas_Busca_26-09-2026.md, seção 6 - tokens de
     lista com zebra (novos, primeiro uso: clientes.html). --foco é o mesmo
     valor de --azul (mockup validado usa a cor de marca pro contorno de
     :focus-visible); --linha-hover usa color-mix (já usado em
     shared-header.js/cadastro.html) pra derivar do --turq canônico em vez
     de fixar um rgba() solto. ---- */
  --linha-alternada: #F4F8FC; --linha-hover: color-mix(in srgb, var(--turq) 12%, transparent); --foco: var(--azul);

  /* ---- Especificacao_Termometro_Enxuto_27-09-2026.md, seção 10 - tokens
     do redesign do Termômetro (card de Contexto + badges de seta de
     tendência). ---- */
  --azul-pastel: #E8F1FA; --azul-pastel-borda: #C9DDF1;
  --seta-alta-bg: #E3F0EC; --seta-baixa-bg: #FDE7F1;

  /* ---- Especificacao_Agenda_Redesign_27-09-2026.md, Item 10 - "cinzas
     legados (#6b6b6b, #262e38, #3d4a58) por tokens neutros". Escala neutra
     do redesign (valores do mockup_agenda.html) + superfícies; genérica de
     propósito (não é "da Agenda"), próximas telas redesenhadas reaproveitam. */
  --neutro-texto: var(--texto-principal); --neutro-texto-2: #52606D; --neutro-texto-3: #6B7785; --neutro-texto-4: #9AA5B1;
  --neutro-borda: #D9DEE4; --neutro-borda-2: #E6E9ED; --neutro-linha: #EEF0F3; --neutro-desabilitado: #C3CAD2;
  --superficie: #FFFFFF; --superficie-2: #FAFBFC; --superficie-sel: #F7FAFD; --fundo-pagina: #F4F6F9;
  --azul-chip-bg: #EEF4FA; --azul-chip-txt: #1D4F80; --rosa-txt-apoio: #B0306F;
  --sombreamento-overlay: rgba(31, 41, 51, .35);
  --texto-sobre-cor: #FFFFFF; /* texto sobre fundo de marca (botão primário, pílula de hoje, header de popup) */

  /* ---- Extras sem equivalente canônico - migrados com o valor atual ---- */
  --gold-bg: #FFF6D6;
  --cruzeiro-bg: #E1F2ED; --chip-bg: #EDE9FE; --carro-bg: #E6F4E8;
  --onibus-bg: #FDF0DF; --ingressos-bg: #E8EAF6;
  /* calendario.html - compromissos manuais */
  --manual-bg: #E3F0FC; --manual-txt: var(--azul);
  /* propostas.html - selo "Aguardando Consultor" (texto sobre --rosa-pastel) */
  --pink-txt: #C0248F;
  /* viagens.html - tokens próprios, próximos dos canônicos mas não idênticos */
  --v-turq-esc: #1c8e9e; --v-turq-txt: #06363c; --v-rosa-txt: #b8126b; --v-rosa-bg: #fde6f2;
  --v-fundo: #f4f7fb; --v-texto: var(--texto-principal); --v-cinza: #56657a; --v-cinza2: #6a778a;
  --v-linha: #e1e6ee; --v-linha2: #dde3ec; --v-linha3: #eef2f7;
  /* termometro.html / relatorios.html (seção Relatório mensal) */
  --tm-rosa-txt: #a3246a; --tm-fundo: #f4f7fb; --tm-texto: var(--texto-principal); --tm-cinza: #56657a;
  --tm-linha: #e1e6ee; --tm-card: #fff;

  /* ---- ALIASES TEMPORÁRIOS - dívida técnica consciente (spec, seção
     "Aliases temporários"). NÃO usar em código novo; próximo lote troca
     as ~600 ocorrências por grep e remove estas linhas. ---- */
  --blue: var(--azul); --navy: var(--azul-esc); --teal: var(--turq);
  --pink: var(--rosa); --pink-bg: var(--rosa-pastel); --teal-bg: var(--turq-pastel);
  --gold: var(--ambar);
  --rc-cor-comissao: var(--azul); --rc-cor-over: var(--amber-txt);
  --tm-azul: var(--azul); --tm-azul-esc: var(--azul-esc); --tm-turq: var(--turq);
  --tm-turq-txt: var(--turq-txt); --tm-rosa: var(--rosa); --tm-rosa-bg: var(--rosa-pastel);
  --tm-verde: var(--receita); --tm-verde-bg: var(--green-bg);
  --v-azul: var(--azul); --v-azul-esc: var(--azul-esc); --v-turq: var(--turq);
  --v-rosa: var(--rosa);
}

html[data-tema="escuro"] {
  color-scheme: dark;

  --azul: #529AE0; --azul-esc: #6FA8E8; --turq: #3FC6D2; --turq-txt: #3FC6D2;
  --turq-pastel: #123B41; --rosa: #E87CBE; --rosa-pastel: #3D1A2D;
  --receita: #4CC168; --ambar: #E0A83D;

  /* ---- Padrão Clean - tema escuro DERIVADO (a spec não traz; decisão 2
     do Bruno). Contraste conferido (WCAG): --azul #529AE0 sobre #262E38
     4,6:1; branco sobre --azul-solido #2F6FB5 5,2:1; --rotulo sobre
     superfície #262E38 6,5:1; --placeholder 3,8:1 (só placeholder/vazio);
     cada pill >= 6,5:1 (texto sobre o próprio fundo). ---- */
  --azul-solido: #2F6FB5; --azul-solido-esc: #245A96;
  --texto-principal: #E7EAEE;
  --valor-receita: #5CC49A; --valor-pagar: #F0917A; --valor-total: var(--azul); --valor-vazio: #7B8794;
  --fundo-conteudo: #1C232B;
  --card-fundo: #262E38; --card-borda: #36424F;
  --rotulo: #A9B4C2;
  --texto-apoio: #9AA5B1;
  --placeholder: #7B8794;
  --obrigatorio: #F28B82;
  --erro-borda: #F28B82;
  --foco-campo: #6FA8E8;
  --campo-leitura-bg: #232A33; --campo-leitura-txt: #A9B4C2;
  --linha-tabela: #313A46;
  --borda-rodape: #3D4A58;
  --acao-remover: #6B7785;
  --destaque-total-bg: #1D3A57; --destaque-total-txt: #9CC8F0;
  --topo-popup: #24497A;
  --dropzone-borda: #4A5868;
  --pill-azul-bg: #1D3A57; --pill-azul-txt: #9CC8F0;
  --pill-verde-bg: #14332C; --pill-verde-txt: #6FCF9F;
  --pill-ambar-bg: #3A2F14; --pill-ambar-txt: #E8C160;
  --pill-vermelho-bg: #3A1F1A; --pill-vermelho-txt: #F0917A;

  /* Relatórios v2 - paleta de gráfico no escuro (mesma ordem de contraste:
     principal claro sobre o card #262E38, comparativo/mês aberto escuros). */
  --graf-principal: #529AE0; --graf-comparativo: #3A4756; --graf-mes-aberto: #2F5279;
  --graf-secundaria: #3FC6D2; --graf-negativo: #F0917A; --graf-neutro: #7B8794; --graf-destaque: #E87CBE;
  --graf-heat-1: #22303F; --graf-heat-2: #26476B; --graf-heat-3: #2F6497; --graf-heat-4: #3F80C2; --graf-heat-5: #6FA8E8;
  --pill-lilas-bg: #2C2650; --pill-lilas-txt: #C9B5EE;
  --seg-esfriando: #E0A83D; --seg-documentacao: #B194D9;

  /* Item 11/12 - mesma cor de --rosa-acao nos 2 temas (ver nota no bloco
     claro); --nota-bg/--nota-borda escurecidos, mesmo padrão já usado em
     --amber-bg/--amber-txt acima pro par claro/escuro. */
  --rosa-acao: #C2317A;
  --nota-bg: #3D3419; --nota-borda: #6B5A28;

  /* Chip de pessoa (Vendas) - mesmo tom já usado em .d2881-dd-lista/
     .popover-pessoa no tema escuro deste sistema, pra não introduzir mais
     uma superfície de cor nova. */
  --chip-pessoa-bg: #1E2530; --chip-pessoa-ini-bg: #2E3742;

  /* Neutros/status - valor do grupo maior (7 páginas), ver nota no topo do arquivo */
  --gray: #9AA3AE; --gray-bg: #2E3742; --gray-line: #3D4A58; --line: #3D4A58;
  --green-bg: #1F3327; --green-txt: #6FCF8C; --amber-bg: #3A2F14; --amber-txt: #E8C160;
  --red-bg: #3A1F1A; --red-txt: #F0917A; --blue-bg: #253A4E;

  /* Itens 14/15/16/17 (ver par claro acima) - mesmo valor já usado em
     "html[data-tema=escuro] body{color:#E7EAEE}"/--gray escuro/--line
     escuro nas páginas que já tem tema escuro, pra --txt/--txt2/--borda
     renderizarem com o mesmo contraste que o resto do escuro já usa. */
  --txt: #E7EAEE; --txt2: #9AA3AE; --borda: #3D4A58; --fundo: #1C232B;

  --linha-alternada: #28323D; --linha-hover: color-mix(in srgb, var(--turq) 12%, transparent); --foco: var(--azul);

  --azul-pastel: #17324D; --azul-pastel-borda: #2A4A6B;
  --seta-alta-bg: #14332C; --seta-baixa-bg: #3D1A2D;

  /* Neutros do redesign (Agenda Item 10) - mesma hierarquia no escuro. */
  --neutro-texto: #E7EAEE; --neutro-texto-2: #C3CAD2; --neutro-texto-3: #9AA5B1; --neutro-texto-4: #7B8794;
  --neutro-borda: #3D4A58; --neutro-borda-2: #36424F; --neutro-linha: #313A46; --neutro-desabilitado: #52606D;
  --superficie: #262E38; --superficie-2: #232A33; --superficie-sel: #22303F; --fundo-pagina: #1C232B;
  --azul-chip-bg: #1D3A57; --azul-chip-txt: #9CC8F0; --rosa-txt-apoio: #F0A8D6;
  --sombreamento-overlay: rgba(0, 0, 0, .5);
  --texto-sobre-cor: #FFFFFF;

  --gold-bg: #3A2F14;
  --cruzeiro-bg: #16332C; --chip-bg: #2C2650; --carro-bg: #1F3323;
  --onibus-bg: #3A2C14; --ingressos-bg: #262A4A;
  --manual-bg: #1D3A57; --manual-txt: #6FB3EE;
  --pink-txt: #F0A8D6;
  --v-turq-esc: #3FC6D2; --v-turq-txt: #3FC6D2; --v-rosa-txt: #E87CBE; --v-rosa-bg: #3D1A2D;
  --v-fundo: #232a33; --v-texto: #e8eef5; --v-cinza: #9AA3AE; --v-cinza2: #9AA3AE;
  --v-linha: #3D4A58; --v-linha2: #3D4A58; --v-linha3: #3D4A58;
  --tm-rosa-txt: #E87CBE; --tm-fundo: #232a33; --tm-texto: #e8eef5; --tm-cinza: #9AA3AE;
  --tm-linha: #3D4A58; --tm-card: #2E3742;

  --blue: var(--azul); --navy: var(--azul-esc); --teal: var(--turq);
  --pink: var(--rosa); --pink-bg: var(--rosa-pastel); --teal-bg: var(--turq-pastel);
  --gold: var(--ambar);
  --rc-cor-comissao: var(--azul); --rc-cor-over: var(--amber-txt);
  --tm-azul: var(--azul); --tm-azul-esc: var(--azul-esc); --tm-turq: var(--turq);
  --tm-turq-txt: var(--turq-txt); --tm-rosa: var(--rosa); --tm-rosa-bg: var(--rosa-pastel);
  --tm-verde: var(--receita); --tm-verde-bg: var(--green-bg);
  --v-azul: var(--azul); --v-azul-esc: var(--azul-esc); --v-turq: var(--turq);
  --v-rosa: var(--rosa);
}
