/* Acessibilidade (auditoria WCAG 2.1 AA de 10/11/2026). Carregado por último.
   1.4.3 Contraste: os textos secundários do Nexus (--nx-ink-3 #7f8d90 e --nx-ink-4 #a3aeb0) davam 3,4:1 e 2,3:1 sobre branco;
   aqui, só dentro do Controle de Qualidade, passam de 4,5:1 em todos os fundos claros. O mesmo para o tom de atenção. */
.cq-pagina { --nx-ink-3: #5c6a6d; --nx-ink-4: #626f72; --nx-warn: #8a621c; }
[data-theme=dark] .cq-pagina, .cq-pagina[data-theme=dark] { --nx-ink-3: #93a9ae; --nx-ink-4: #8299a0; --nx-warn: #e2b75d; }
/* Mapa de calor e degraus: texto legível sobre as cores fortes, nos dois temas. */
.st-calor__c--3 { color: #4a1408; }
[data-theme=dark] .st-calor__c--2 { background: #85603f; color: #fff; }
[data-theme=dark] .st-calor__c--3 { background: #9a4630; color: #fff; }
[data-theme=dark] .gq-degraus i.on { color: #0c1f24; }
.gq-degraus i { color: var(--nx-ink-3); }
/* Fichas (papel, cores fixas): cinzas mais escuros. */
.cq-ficha .cq-logo--vazio, .cq-ficha .cq-logo--vazio small, .f2-pe, .f2-parecer-final small, .f2-tile b small, .f2-status, .f2-cab__cli .cq-logo--vazio { color: #4f6672; }
.f2-pill, .f2-item > i, .f2-pill--vazio { color: #3f5560; }
.f2-pill--ok, .f2-item--ok > i { color: #1d6b3e; } .f2-pill--crit, .f2-item--crit > i { color: #a12a20; } .f2-pill--warn, .f2-item--warn > i { color: #7a4f00; } .f2-pill--info, .f2-item--info > i { color: #0f6361; }
.cq-cfg-assin__ver .cq-mu { color: #4f6672; }
.cq-logo small { opacity: 1; }
.f2-linha header .f2-pill--ok, .f2-bloco header .f2-pill--ok, header > .f2-pill--ok { color: #1d6b3e; }
.f2-linha header .f2-pill--crit, header > .f2-pill--crit { color: #a12a20; }

/* Tela de erro da partida (partida.js) */
.cq-partida { display: grid; gap: 10px; justify-items: center; max-width: 560px; margin: 12vh auto 0; padding: 32px 28px; border: 1px solid var(--nx-line); border-radius: 18px; background: var(--nx-surface); text-align: center; }
.cq-partida > .pi { color: var(--nx-crit); font-size: 30px; }
.cq-partida h1 { margin: 0; font-size: 20px; }
.cq-partida p { margin: 0; color: var(--nx-ink-2); font-size: 13.5px; line-height: 1.6; }

/* 2.4.1 Pular para o conteúdo: aparece ao receber o foco pelo teclado. */
.cq-pular { position: fixed; top: 8px; left: 8px; z-index: 300; padding: 10px 16px; border: 0; border-radius: 10px; background: #0b2230; color: #fff; font: inherit; font-size: 13px; font-weight: 700; transform: translateY(-160%); transition: transform 0.15s; }
.cq-pular:focus { transform: none; outline: 3px solid #2bb8b2; outline-offset: 2px; }
#app:focus { outline: none; }
/* 2.4.7 Foco visível no "Ver como" (o seletor fica invisível por cima do cartão). */
.cq-rail__quem:focus-within { outline: 2px solid var(--nx-teal-300, #6fd6d1); outline-offset: 2px; }
/* 1.4.1 Texto só para leitor de tela (a situação do indicador não pode depender só da cor do ponto). */
.cq-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; margin: -1px; padding: 0; border: 0; clip: rect(0 0 0 0); white-space: nowrap; }

/* Segunda passada (10/11/2026, noite): o que entrou depois da primeira auditoria, medido no pior ponto de cada degradê.
   1.4.3 Botão principal e avatar: letra branca sobre o teal claro dava 3,1:1 (2,1:1 no escuro). Teal 600→700: 4,8:1 ou mais. */
:root:not([data-theme=dark]) .cq-pagina .nx-btn--primary { background: linear-gradient(135deg, var(--nx-teal-600), var(--nx-teal-700)); color: #fff; }
:root:not([data-theme=dark]) .cq-pagina .nx-btn--primary:hover:not(:disabled) { background: linear-gradient(135deg, var(--nx-teal-700), var(--nx-teal-600)); }
.cq-pagina .cq-avatar { background: linear-gradient(135deg, var(--nx-teal-600), var(--nx-teal-700)); color: #fff; }
[data-theme=dark] .pl-vista--on b { background: rgba(0, 0, 0, 0.3); }
/* Faixas escuras (ficha, Gestão, setor, placar): os textos de apoio eram calculados para a ponta escura do degradê e
   caíam para 3:1 na ponta clara. Agora passam de 4,5:1 nas duas pontas. */
.f2-cab__tit small, .gq-hero__txt > small, .st-hero__txt > small, .iq-placar__cab small { color: #c9f0ec; }
.f2-cab__tit span, .gq-hero__txt p, .st-hero__volta, .st-hero__lado label, .iq-placar__cab span, .iq-leg, .iq-placar__lado small, .iq-placar__foco > small, .iq-placar__foco p { color: #e2ecee; }
.iq-anel .iq-anel__de { fill: #e2ecee; }
.gq-hero .cq-logo--escuro.cq-logo--vazio, .st-hero .cq-logo--escuro.cq-logo--vazio { color: #fff; }
/* Texto em teal: o teal 600 dava 3,1 a 3,5:1 sobre os fundos escuros e 4,0 a 4,4:1 sobre os fundos tingidos do claro.
   O tom de informação do Nexus já muda com o tema (teal 700 no claro, teal claro no escuro). */
.cq-pagina .cq-faixa-cliente:not(.cq-faixa-cliente--ficticio) .cq-faixa-cliente__txt small, .cq-pagina .gq-rel__capa > small, .cq-pagina .eq-decl__texto b[data-eq-vivo],
.cq-pagina .eq-fora summary, .cq-pagina .eq-acesso__cartao > small, .cq-pagina .pl-regra__item small, .cq-pagina .st-pr > summary code, .cq-pagina .st-modelo__cab small,
.cq-pagina .st-iso a:not(.st-doc), .cq-pagina .cq-kv a, .cq-pagina .gq-aviso a, .cq-pagina .cq-mu a, .cq-pagina .cq-nota a, .cq-pagina .gs-fases th, .cq-pagina .pt-escolhidos,
.cq-pagina .pt-previa > header small, .cq-pagina .mk-link, .cq-pagina .mk-gaveta__sob, .cq-pagina .mk-topo__sob, .cq-pagina .mk-bloco-titulo a, .cq-pagina .nx-phead__eyebrow { color: var(--nx-info); }
/* 2.1.1 Planilhas: o campo de arquivo ficava escondido (sem foco pelo teclado). Agora recebe foco e a área mostra o contorno. */
.pt-solta:focus-within { outline: 3px solid var(--nx-teal-300, #6fd6d1); outline-offset: 2px; }
/* 2.5.8 Alvos de clique com 24 px de altura no mínimo. */
.st-doc { display: inline-flex; align-items: center; min-height: 24px; }
.st-hero__volta { min-height: 24px; }
.st-calor tbody th a, .gs-tab tbody th a { min-height: 24px; align-items: center; }
/* Linha de "nada por aqui" não é clicável: sem o cursor de mão. */
.st-confs tbody tr:not([data-st-conf]), .st-achados tbody tr:not([data-st-achado]) { cursor: default; }
