/* Copiado de ~/Sites/cosmos5-design-system/tokens/cores.css em 03/09/2026.
   NAO EDITAR AQUI. O dono deste arquivo e o design system da Cosmos, e este
   e um espelho com data. Copia, e nao referencia, porque o SOAS nao busca
   aparencia em tempo de execucao num repositorio que ele nao controla.
   Quando o design system mudar, a diferenca aparece porque a data esta aqui.

   ESTE E O UNICO LUGAR onde os tokens moram. O build copia daqui para
   console/time/ds/, que e a saida publicada. Token em dois lugares e como
   a divergencia entra, entao nao existe copia em console/ds/. */

:root{
  /* ═══════════ O CAMPO ═══════════
     O azul não é detalhe, é o chão. Uma peça é AZUL ou é PAPEL. */
  --campo-azul:#1B2CE0;      /* Azul 1760 elétrico — campo principal */
  --campo-azul-fundo:#1424B8; /* variação de profundidade dentro do campo */
  --campo-papel:#F2EFE6;     /* papel — campo invertido */
  --campo-tinta:#101018;     /* tinta quase-preta — campo de exceção (cinema, capa) */

  /* ═══════════ A TINTA ═══════════ */
  --tinta-papel:#F2EFE6;     /* tipo sobre azul */
  --tinta-escura:#101018;    /* tipo sobre papel */
  --tinta-azul:#141B4D;      /* Azul 1760 profundo — tipo sobre papel, alternativa */

  /* ═══════════ OPACIDADES CANÔNICAS ═══════════ */
  --sobre-azul-100:#F2EFE6;
  --sobre-azul-92:rgba(242,239,230,.92); /* centro 6,42:1 · órbita 4,79:1 — piso de órbita */
  --sobre-azul-80:rgba(242,239,230,.80); /* centro 5,22:1 — só no campo do centro */
  --sobre-azul-45:rgba(242,239,230,.45); /* linha e vazio de barra — NUNCA texto */
  --sobre-azul-28:rgba(242,239,230,.28); /* só linha e vazio de barra — nunca texto */
  /* ═══ REGRA DE FAIXA — o alfa NÃO transfere entre campos ═══
     A folga de contraste do campo define quantos níveis de texto existem nele.
     · Campo do centro (#1B2CE0, folga 7,36): TRÊS níveis — 100% / .92 / .80.
     · Campo de órbita (folga 5,4): DOIS níveis — 100% / .92. O .80 reprova lá (3,9:1).
     Abaixo de .92 em órbita, e abaixo de .80 no centro, nenhum alfa carrega texto:
     só fio, hachura e vazio de barra. Hierarquia extra vem de tamanho, peso ou família. */
  --sobre-azul-14:rgba(242,239,230,.14);
  --sobre-papel-100:#101018;
  --sobre-papel-80:rgba(16,16,24,.8);
  --sobre-papel-60:rgba(16,16,24,.6); /* 4,7:1 */
  --sobre-papel-45:rgba(16,16,24,.45); /* linha — nunca texto */

  /* Tinta AZUL sobre placa de papel. Mesma faixa curta: .75 é o piso de texto. */
  --azul-sobre-papel-100:#1B2CE0;
  --azul-sobre-papel-80:rgba(27,44,224,.8); /* 5,1:1 */
  --azul-sobre-papel-75:rgba(27,44,224,.75); /* 4,6:1 — piso */
  --azul-sobre-papel-45:rgba(27,44,224,.45); /* fio e hachura — nunca texto */
  --sobre-papel-28:rgba(16,16,24,.28);
  --sobre-papel-14:rgba(16,16,24,.14);

  /* ═══════════ ALIASES ═══════════ */
  --fundo-pagina:var(--campo-azul);
  --fundo-bloco:var(--campo-azul-fundo);
  --fundo-inverso:var(--campo-papel);
  --texto-primario:var(--sobre-azul-100);
  --texto-secundario:var(--sobre-azul-92); /* 6,42:1 no centro */
  --texto-terciario:var(--sobre-azul-80);  /* 5,22:1 — piso do centro. Não existe em órbita. */
  --linha-forte:var(--sobre-azul-100);
  --linha-media:var(--sobre-azul-28);
  --linha-tenue:var(--sobre-azul-14);
  --foco-anel:var(--sobre-azul-100);

  /* ═══════════ ESTADO — sem pílula colorida ═══════════
     O estado é expresso por TRATAMENTO, não por cor de semáforo:
     cheio = confirmado · contorno = em prova · rasurado = reprovado. */
  --estado-cheio-fundo:var(--sobre-azul-100);
  --estado-cheio-tipo:var(--campo-azul);
  --estado-contorno:var(--sobre-azul-100);
  --estado-rasura:var(--sobre-azul-100);
  --rasura-traco:2px;
}

/* ───────── CAMPO PAPEL ───────── */
.papel{
  --fundo-pagina:var(--campo-papel);
  --fundo-bloco:#E7E2D4;
  --fundo-inverso:var(--campo-azul);
  --texto-primario:var(--sobre-papel-100);
  --texto-secundario:var(--sobre-papel-80);
  --texto-terciario:var(--sobre-papel-60);
  --linha-forte:var(--sobre-papel-100);
  --linha-media:var(--sobre-papel-28);
  --linha-tenue:var(--sobre-papel-14);
  --estado-cheio-fundo:var(--sobre-papel-100);
  --estado-cheio-tipo:var(--campo-papel);
  --estado-contorno:var(--sobre-papel-100);
  --estado-rasura:var(--sobre-papel-100);
  --foco-anel:var(--sobre-papel-100);
  background:var(--fundo-pagina);color:var(--texto-primario);
}

/* ───────── CAMPO TINTA (exceção) ───────── */
.tinta{
  --fundo-pagina:var(--campo-tinta);
  --fundo-bloco:#1A1A24;
  --fundo-inverso:var(--campo-azul);
  --texto-primario:var(--campo-papel);
  --texto-secundario:rgba(242,239,230,.8);
  --texto-terciario:rgba(242,239,230,.6);
  --linha-forte:var(--campo-papel);
  --linha-media:rgba(242,239,230,.28);
  --linha-tenue:rgba(242,239,230,.14);
  --estado-cheio-fundo:var(--campo-papel);
  --estado-cheio-tipo:var(--campo-tinta);
  --estado-contorno:var(--campo-papel);
  --estado-rasura:var(--campo-papel);
  background:var(--fundo-pagina);color:var(--texto-primario);
}
