Tokens
5. Acessibilidade — pares auditados
seed-tokens.md v1.23 · §05seção 7 de 1705-acessibilidade-pares-auditados-wcag-2-1-medidos.md · MD5 e99564cfTítulo completo no canon: Acessibilidade — pares auditados (WCAG 2.1, medidos programaticamente em 2026-07-30)
| Par | Razão | Veredicto |
|---|---|---|
| branco sobre turquesa-600 (botão primário) | 4.60 | AA texto normal |
| branco sobre turquesa-700 | 6.32 | AA |
#11B0A0 |
❌ REPROVA em qualquer tamanho — ver a errata abaixo. O 3.22 é o número do turquesa-500 #00A192, transplantado de endereço |
|
turquesa-900 #00352F sobre turquesa-400 #11B0A0 |
4,99 | AA texto normal — é a tinta VIGENTE sobre a marca chapada (v1.15) |
cinza-900 sobre amarelo #FAD61D |
9.70 | AAA |
cinza-900 sobre dourado #F9B11C |
7.48 | AAA |
| cinza-600 (corpo) sobre branco | 4.74 | AA |
| cinza-700 (corpo) sobre branco | 6.55 | AA |
| branco sobre vermelho-600 (botão danger) | 5.19 | AA |
| vermelho-700 sobre vermelho-50 (alerta) | 6.57 | AA |
| azul-800 sobre azul-50 (info) | 8.57 | AAA |
| dourado-800 sobre dourado-50 (warning) | 9.05 | AAA |
| cinza-100 sobre dark-default (texto dark) | 14.16 | AAA |
| turquesa-300 sobre dark-default (ação dark) | 9.32 | AAA |
| turquesa-900 sobre turquesa-300 (texto do botão dark) | 7.39 | AAA |
⚠ ERRATA MEDIDA EM 2026-08-17 — O NÚMERO DESTA REGRA ESTÁ ERRADO, E A REGRA CAI COM ELE#
O parágrafo abaixo fica como HISTÓRICO. O estado vigente é esta errata.
Ele declara que branco (
#FFFFFF) sobresurface-brand(#11B0A0) dá 3,22:1 e conclui que "passa AA-large (≥3.0)", e é sobre essa conclusão que a regra "texto branco somente ≥24px ou ≥19px bold" foi construída. Recalculado pela fórmula da WCAG 2.x (luminância relativa) e medido por pixel em artefato real: o valor é 2,71. Duas medições independentes concordam — o cálculo direto dá 2,74 e a leitura por pixel dovalidacao/contraste-composicao.mjsdá 2,71 (a diferença é o antialias do glifo).ERRATA DA ERRATA (2026-08-17, edição v1.15): o parágrafo acima diz que "o cálculo direto dá 2,74" e explica a diferença pelo antialias do glifo. Não há diferença: o cálculo direto dá
2,7126, isto é 2,71, exatamente o que o pixel lê. O 2,74 nunca existiu, e a explicação do antialias explicava uma diferença inexistente. Recalculado três vezes por implementação independente. Errata dentro de errata — o número certo entrou no lugar certo e um número errado entrou na justificativa.DE ONDE VEIO O 3,22 — e ele NÃO foi inventado (medido em 2026-08-17): 3,22 é o número correto de branco sobre
turquesa-500#00A192(medido3,2243). Ele foi transplantado para oturquesa-400#11B0A0, que é asurface-brand. Este mesmo arquivo usa 3.22 corretamente onde fala de turquesa-500 (a escala de prioridade e a categóricacat-1) e incorretamente onde falava de turquesa-400. O erro é de ENDEREÇO, não de aritmética.Consequência: 2,71 reprova até o piso AA-large de 3,00. Portanto texto branco sobre
surface-brandnão é permitido em NENHUM tamanho — nem em 24px, nem em 19px bold. A regra vigente não é "só grande": é não usar branco ali.Como o defeito apareceu: rodando o
contraste-composicao.mjsnotela-chat.html, alvo em que ele nunca havia sido apontado. Dois textos reprovaram no tema claro —button "Recolher chat"(12px/600) ediv.avatar "RS"(12px/700) —, ambos branco sobre#11B0A0, ambos a 2,71. Ausência de medição não era aprovação: era ausência de medição.A resposta já existe dentro da casa, e ela está no tema ESCURO deste mesmo artefato: lá o mesmo botão usa tinta escura sobre a marca —
#00352Fsobre#11B0A0= 4,99, que passa o piso de texto 4,50. Medido também:#0B3330sobre#11B0A0= 5,06 e#005048sobre#11B0A0= 3,45. Substituto recomendado: tinta escura da rampa turquesa (turquesa-900,#00352F) ou o texto primário claro (#0B3330).✅ DECIDIDO E EXECUTADO em 2026-08-17 (v1.15) — a MR-P1 está FECHADA. O Rafael acatou a recomendação; o conserto foi feito nesta camada, não nos artefatos, e o censo por pixel em 48 artefatos × 2 temas devolve 49 textos assentando sobre a marca chapada e ZERO violando. Como foi feito e por que assim: §5-b abaixo. Registro completo no
validacao/MANIFESTO.md§86. O parágrafo seguinte ficou como histórico:NÃO EXECUTADO — vai a GATE, e o motivo: trocar branco por tinta escura sobre a marca é decisão de identidade visual, não conserto de token: ela muda a aparência de todo botão e selo de marca do acervo, e a regra antiga está referenciada no
marca-seed.md. Pendência MR-P1. Enquanto não houver decisão, os textos brancos sobresurface-brandsão DEFEITO MEDIDO em aberto — o número está aqui e não passa por aprovação por silêncio.
Regra crítica reformulada — SUPERSEDIDA em 2026-08-17 pelo §5-b abaixo, que é o estado VIGENTE. Fica como histórico, e o que está errado nela é o número: 3.22 é o contraste do turquesa-500, não do turquesa-400. (texto original preservado:) a regra antiga "texto branco sobre turquesa apenas em 24px+/bold 19px+" foi auditada: branco sobre #11B0A0 dá 3.22:1, que passa AA-large (≥3.0) mas reprova para texto normal. A regra nova, mais precisa: sobre surface-brand (#11B0A0), texto branco somente ≥24px ou ≥19px bold (mantida, agora com o número que a justifica); qualquer texto funcional/normal sobre fundo turquesa deve usar surface-brand-deep ou o par action-primary (turquesa-600+). O amarelo mantém a regra absoluta: sempre texto escuro (cinza-900), nunca branco.