/* ============================================================================
   Ciclo 197 (revisão de 2026-10-07, bloco C) — os TOKENS da casa num só sítio.
   A app (/app), a montra pública (/simulador) e a página da empresa (/) carregam
   este ficheiro ANTES do estilo; os documentos gerados (proposta, dossier,
   desenho técnico) leem a cor da marca daqui pelo marca.cor() — nunca um hex
   repetido noutro sítio. Mudar uma cor = mudar esta linha.

   A MARCA (#8A2E30 — o vermelho do logótipo oficial, 8,35:1 sobre branco) usa-se
   com PARCIMÓNIA e nos MESMOS sítios em todos os suportes: a cor do browser
   (theme-color e manifesto), o acento do Painel (a casa), o filete e o título da
   proposta, os títulos de secção do dossier e do desenho técnico, e o botão
   principal da página pública. As MADEIRAS são o ambiente (acento de cada
   secção, veio no topo); as cores FUNCIONAIS são estados (--ok/--meio/--mau —
   o erro e o «Sair» continuam em --mau, distinto da marca).
   ========================================================================== */

/* Ciclo 198 — as fontes da casa: IBM Plex Sans (o texto) e IBM Plex Serif (os títulos), da IBM, sob a SIL Open Font
   License 1.1 (web/fontes/LICENSE.txt). Servidas daqui, da mesma origem: o CSP não muda (default-src 'self') e nenhum
   pedido sai para terceiros. Só o regular e o seminegrito de cada: o 500 desenha-se no regular e o 700 no seminegrito
   (os intervalos de font-weight abaixo, sem negrito sintético); o itálico é o oblíquo do browser. Sem as fontes (uma
   máquina sem rede à primeira visita), o texto aparece logo nas de reserva de --sans/--serif (font-display:swap). */
@font-face { font-family:"IBM Plex Sans"; font-style:normal; font-weight:400 500; font-display:swap;
  src:url("fontes/IBMPlexSans-Regular.woff2") format("woff2"); }
@font-face { font-family:"IBM Plex Sans"; font-style:normal; font-weight:600 700; font-display:swap;
  src:url("fontes/IBMPlexSans-SemiBold.woff2") format("woff2"); }
@font-face { font-family:"IBM Plex Serif"; font-style:normal; font-weight:400 500; font-display:swap;
  src:url("fontes/IBMPlexSerif-Regular.woff2") format("woff2"); }
@font-face { font-family:"IBM Plex Serif"; font-style:normal; font-weight:600 700; font-display:swap;
  src:url("fontes/IBMPlexSerif-SemiBold.woff2") format("woff2"); }

:root {
  /* marca (logótipo oficial, 2026-09-09) — Ciclo 197 */
  --marca:#8A2E30; --marca-escura:#6e2426; --marca-bg:#f7ecec;
  /* tinta e papel */
  --ink:#2b241a; --sub:#6f6455; --linha:#e5ddce; --suave:#f3eee4;
  --papel:#f7f4ee; --branco:#fffefb;
  /* madeiras */
  --madeira:#8a6d4a; --carvalho:#5f4a30; --mel:#c9a878;
  /* cor funcional (estados) — escurecidas p/ contraste AA (WCAG 4.5:1) como
     texto sobre branco; os fundos *-bg mantêm a identidade Madeira */
  --ok:#316744; --ok-bg:#e7f2ea; --meio:#7c5e1c; --meio-bg:#f7efda;
  --mau:#a03f2e; --mau-bg:#f9e8e4;
  /* neutro para "pendente/a conciliar" (contorno, não texto) */
  --neutro:#7a8fa3;
  /* contornos de campos (≥3:1 sobre branco — WCAG 1.4.11) e placeholders
     (≥4,5:1 — o placeholder é lido como texto) */
  --campo-borda:#9a8f7f; --placeholder:#7d7264;
  /* acento da secção ativa (cada secção sobrepõe) */
  --acc:var(--madeira);
  /* geometria e profundidade */
  --raio:14px; --raio-s:10px;
  /* Ciclo 180 (Fase F) — tokens de LARGURA: os `style={{maxWidth:320}}` do JSX passaram a pedir isto (os campos
     curtos --campo-*, os painéis e formulários --larg-*); a 480 px os painéis ocupam a largura toda (ver o fim do
     ficheiro). A ESCALA de breakpoints da app, uma só: 480 (telemóvel ao alto), 768 (telemóvel ao baixo e tablet ao
     alto — barra inferior, janelas inteiras), 1024 (tablet ao baixo — os cartões estreitos crescem), 1440 (ecrã
     largo — o conteúdo passa de 1200 para 1400 px). A página pública (web/inicio.html) usa a mesma escala. */
  --campo-xs:56px; --campo-s:72px; --campo-m:88px; --campo-l:96px; --campo-xl:120px;
  --larg-xs:150px; --larg-s:260px; --larg-m:320px; --larg-l:350px; --larg-xl:380px; --larg-xxl:440px; --larg-3xl:560px;
  --sombra-s:0 1px 2px rgba(43,36,26,.05), 0 2px 8px rgba(43,36,26,.05);
  --sombra-m:0 3px 8px rgba(43,36,26,.08), 0 14px 32px rgba(43,36,26,.10);
  /* as fontes da casa à frente (C198), as do sistema de reserva */
  --serif:"IBM Plex Serif", Georgia, "Times New Roman", serif;
  --sans:"IBM Plex Sans", "Segoe UI", system-ui, -apple-system, Helvetica, Arial, sans-serif;
  /* DES-26: tema claro declarado — impede o "modo escuro automático" do
     Chrome Android de escurecer à força o papel quente da app */
  color-scheme:only light;}
