/* ==========================================================================
   COGNITRIA — design tokens da identidade oficial (03/07/2026)
   FONTE ÚNICA de cor/tipo/raio: template nenhum escreve hex de marca na mão.
   Tríade: Humano = NAVY · Fontes = CINZA · IA = LARANJA.
   ========================================================================== */
:root {
  /* paleta oficial (do board da marca) */
  --cg-navy: #0D1B2A;          /* conhecimento humano · texto forte · primária */
  --cg-laranja: #FF7A00;       /* IA Cognitria · acento/CTA (texto em navy!) */
  --cg-fundo: #F2F4F7;         /* fundo claro */
  --cg-cinza: #6B7280;         /* fontes confiáveis · texto secundário */
  --cg-branco: #FFFFFF;

  /* complementos derivados (tints p/ UI; mantêm contraste AA) */
  --cg-navy-suave: #E8EDF4;    /* fundo de chip/hover navy */
  --cg-laranja-suave: #FFF3E8; /* fundo de destaque/grifo */
  --cg-laranja-escuro: #C2410C;/* texto laranja legível sobre claro */
  --cg-borda: #E3E7ED;

  /* estados honestos (funcionais — uso restrito a status) */
  --cg-verificado: #0A7F5C;    --cg-verificado-bg: #E6F7F0;
  --cg-atencao: #9A5B00;       --cg-atencao-bg: #FFF6E6;   /* OCR: nunca vermelho */
  --cg-erro: #B3261E;          --cg-erro-bg: #FDECEC;
  --cg-ausente: #6B7280;       /* "não consta" = cinza itálico, NUNCA erro */

  /* tipografia oficial: Poppins títulos/destaques · Inter corpo · mono localizadores */
  --cg-fonte-titulo: 'Poppins', system-ui, sans-serif;
  --cg-fonte-corpo: 'Inter', system-ui, sans-serif;
  --cg-fonte-mono: 'IBM Plex Mono', ui-monospace, monospace;

  /* espaçamento/raio (escala 4px; cards 12, pílulas 999) */
  --cg-raio: 12px;
  --cg-raio-pill: 999px;
}

/* ---- TEMA ESCURO dos tokens --cg-* (espelha o design-system). "navy" é o tom
   FORTE (texto/ênfase) -> vira claro no escuro; "branco" é SUPERFÍCIE -> vira
   escuro. Laranja e cinza continuam. Estados honestos mais claros p/ contraste. */
:root[data-theme="dark"]{
  --cg-navy: #E8EDF4;          /* tom forte (texto) -> claro no escuro */
  --cg-laranja: #FF8C1A;
  --cg-fundo: #0B1017;
  --cg-cinza: #8B98AB;
  --cg-branco: #141D29;        /* superfície -> escura */
  --cg-navy-suave: #20304A;
  --cg-laranja-suave: #2A2214;
  --cg-laranja-escuro: #FFB674;
  --cg-borda: #293748;
  --cg-verificado: #3FBF8F;    --cg-verificado-bg: #123024;
  --cg-atencao: #E0A83A;       --cg-atencao-bg: #2A2210;
  --cg-erro: #F0776C;          --cg-erro-bg: #2A1512;
  --cg-ausente: #8B98AB;
}

/* ---- controles do fichamento (Biblioteca) ------------------------------- */
.fich-btn{border:0;cursor:pointer;font:600 .78rem var(--cg-fonte-corpo);
  border-radius:var(--cg-raio-pill);padding:5px 12px;white-space:nowrap}
.fich-btn.fazer{background:var(--cg-navy);color:var(--cg-branco)}
.fich-btn.fazer:hover{background:#16324F}
.fich-btn.ver{background:var(--cg-laranja);color:var(--a-ink)}
.fich-btn.ver:hover{filter:brightness(1.06)}
.fich-btn.erro{background:var(--cg-erro-bg);color:var(--cg-erro)}
.fich-badge{font:600 .72rem var(--cg-fonte-corpo);border-radius:var(--cg-raio-pill);
  padding:4px 10px;white-space:nowrap}
.fich-badge.proc{background:var(--cg-navy-suave);color:var(--cg-navy)}
.fich-badge.sem{background:var(--cg-fundo);color:var(--cg-cinza)}
.fich-refazer{border:0;background:transparent;color:var(--cg-cinza);cursor:pointer;
  font:500 .72rem var(--cg-fonte-corpo);padding:2px 4px;text-decoration:underline}

/* ---- painel da ficha (modal) --------------------------------------------- */
.ficha-overlay{position:fixed;inset:0;background:rgba(13,27,42,.55);display:none;
  align-items:flex-start;justify-content:center;padding:24px 12px;z-index:60;overflow:auto}
.ficha-overlay.aberta{display:flex}
.ficha-painel{background:var(--cg-branco);border-radius:var(--cg-raio);max-width:760px;
  width:100%;padding:22px 26px;font-family:var(--cg-fonte-corpo);color:var(--cg-navy)}
.ficha-painel h2{font:600 1.15rem var(--cg-fonte-titulo);margin:0;color:var(--cg-navy);
  word-break:break-word}
.ficha-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0 4px}
.ficha-tipo{font:600 .72rem var(--cg-fonte-corpo);background:var(--cg-navy-suave);
  color:var(--cg-navy);border-radius:var(--cg-raio-pill);padding:3px 10px;text-transform:capitalize}
.ficha-selo{font:600 .72rem var(--cg-fonte-corpo);background:var(--cg-verificado-bg);
  color:var(--cg-verificado);border-radius:var(--cg-raio-pill);padding:3px 10px}
.ficha-parcial{font:600 .72rem var(--cg-fonte-corpo);background:var(--cg-atencao-bg);
  color:var(--cg-atencao);border-radius:var(--cg-raio-pill);padding:3px 10px}
.ficha-fechar{margin-left:auto;border:0;background:transparent;color:var(--cg-cinza);
  cursor:pointer;font-size:1.25rem;line-height:1;padding:2px 6px}
.ficha-resumo{font-size:.95rem;font-style:italic;color:var(--cg-navy);
  background:var(--cg-fundo);border-left:3px solid var(--cg-laranja);border-radius:0;
  padding:10px 14px;margin:12px 0}
.ficha-sec{margin-top:14px}
.ficha-sec h3{font:600 .78rem var(--cg-fonte-titulo);letter-spacing:.05em;
  text-transform:uppercase;color:var(--cg-cinza);margin:0 0 6px}
.ficha-sec ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.ficha-sec li{font-size:.88rem;line-height:1.55;color:var(--cg-navy)}
.ficha-ressalvas{background:var(--cg-laranja-suave);border-radius:var(--cg-raio);
  padding:10px 14px}
.ficha-dado{background:var(--cg-laranja-suave);color:var(--cg-laranja-escuro);
  border-radius:4px;padding:0 4px;font-weight:600}
.chip-pag{font:500 .72rem var(--cg-fonte-mono);background:var(--cg-navy-suave);
  color:var(--cg-navy);border:0;border-radius:4px;padding:2px 7px;cursor:pointer;
  margin-left:6px;vertical-align:1px}
.chip-pag:hover{background:var(--cg-navy);color:var(--cg-branco)}
.chip-pag.morto{cursor:default;background:var(--cg-fundo);color:var(--cg-cinza)}
.chip-ocr{font:600 .68rem var(--cg-fonte-corpo);background:var(--cg-atencao-bg);
  color:var(--cg-atencao);border-radius:var(--cg-raio-pill);padding:1px 8px;margin-left:6px}
.ficha-ausente{color:var(--cg-ausente);font-style:italic}
.ficha-rodape{display:flex;gap:12px;align-items:center;margin-top:18px;
  border-top:1px solid var(--cg-borda);padding-top:12px;font-size:.8rem;color:var(--cg-cinza)}
/* prova da página dentro do painel */
.ficha-prova{display:none;text-align:center}
.ficha-prova.aberta{display:block}
.ficha-prova img{max-width:100%;border:1px solid var(--cg-borda);border-radius:8px}
.ficha-voltar{border:0;background:var(--cg-navy);color:var(--cg-branco);cursor:pointer;
  font:600 .8rem var(--cg-fonte-corpo);border-radius:var(--cg-raio-pill);
  padding:7px 16px;margin-bottom:12px}
