/*
 * Tokens visuais do SGG (identidade Geoterra). Paleta PROVISÓRIA aprovada para aplicação
 * (docs/marca/decisao-identidade-visual.md, 2026-10-11). Modo claro é o padrão; o modo escuro "vidro" só vale nas
 * telas com o botão de tema (dashboard), por data-tema no <html>. Bloco no fim deste arquivo.
 *
 * Toda cor e toda fonte do sistema sai daqui. Telas e outros CSS usam var(--...), nunca hex.
 * tests/test_contraste.py e tests/test_identidade_aplicada.py conferem estes valores e os pares de contraste.
 *
 * Azul claro (#3AB4F2) e cinza (#9BA8B2) ficam abaixo de 3:1 sobre branco. Por isso, sobre fundo branco
 * (gráfico, foco, borda de campo) usam-se as variantes --cor-grafico-*, que atingem 3:1.
 * O azul claro original fica só sobre marinho (texto e contorno do logo).
 */

/* Fontes hospedadas no projeto (sem CDN; CSP font-src 'self'). Fonte variável: cobre regular e negrito.
 * Origem e SHA-256 registrados em docs/marca/decisao-identidade-visual.md. Caminho relativo a este arquivo. */
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/montserrat/Montserrat-wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Roboto";
  src: url("../fonts/roboto/Roboto-wdth-wght.ttf") format("truetype");
  font-weight: 100 900;
  font-stretch: 75% 100%;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: light;

  /* Paleta (PROVISÓRIA, aprovada para aplicação em 2026-10-11) */
  --cor-marinho: #05174F;
  --cor-azul-principal: #0B4FCB;
  --cor-azul-medio: #1F78C8;
  --cor-azul-claro: #3AB4F2;
  --cor-cinza: #9BA8B2;
  --cor-branco: #FFFFFF;

  /* Variantes ESCURAS para sobre branco (gráfico, foco, borda de campo). Contraste sobre #FFFFFF:
   * azul claro 3,71:1 e cinza 3,89:1 (WCAG 1.4.11, mínimo 3:1). Calculado em tests/test_contraste.py. */
  --cor-grafico-azul-claro: #0A8BD4;
  --cor-grafico-cinza: #75838F;

  /* Formas (pedido de 2026-10-11): raios por token. Sem cor nova. Os cartões do tema escuro usam --vidro-raio. */
  --raio-pequeno: 8px;
  --raio-medio: 12px;
  --raio-grande: 18px;
  --raio-pilula: 999px;

  /* Tipografia: fonte hospedada primeiro, depois a pilha do sistema */
  --fonte-titulo: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fonte-corpo: "Roboto", system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
}

/* Tema escuro "vidro" (decisão do responsável, 2026-10-11). Ativo com data-tema="escuro" no <html>.
 * Usa SOMENTE as cores da paleta acima: fundo = marinho; brilhos e bordas = azul médio, azul claro e branco com
 * opacidade. Nenhum tom novo. Os percentuais são tokens (não são cor). Sem hex neste bloco: os testes que contam
 * hex olham só o :root. tests/test_tema_escuro.py confere os pares de contraste e o uso só da paleta. */
:root[data-tema="escuro"] {
  color-scheme: dark;

  --vidro-fundo: var(--cor-marinho);
  --vidro-alfa-cartao: 10%;      /* branco sobre o fundo: cartão translúcido */
  --vidro-alfa-borda: 24%;       /* branco: contorno de 1 px do cartão e divisórias */
  --vidro-alfa-brilho: 20%;      /* azul claro: brilho do canto do cartão (texto por cima continua em AA, ver teste) */
  --vidro-raio: 18px;            /* cantos dos cartões (16 a 24 px) */
  --vidro-sombra: 0 14px 34px -16px color-mix(in srgb, var(--cor-azul-claro) 30%, transparent);
}
