Oferecer contraste mínimo entre plano de fundo e primeiro plano
Texto deve ter contraste mínimo de 4,5:1 contra o fundo (3:1 para texto grande — acima de 18pt normal ou 14pt negrito). Componentes de interface precisam de 3:1.
/* ❌ Contraste insuficiente */
/* Texto cinza claro sobre branco: ~2.9:1 */
.legenda { color: #999999; background: #ffffff; }
/* Placeholder de input: ~1.9:1 */
input::placeholder { color: #cccccc; }
/* Link sobre fundo azul claro: ~2.1:1 */
.link-card { color: #0066cc; background: #e8f4ff; }/* ✓ Contraste AAA/AA conforme */
/* Texto: 7:1 (AAA) */
.legenda { color: #595959; background: #ffffff; }
/* Placeholder: 4.6:1 (AA) */
input::placeholder { color: #767676; }
/* Link: 4.8:1 (AA) */
.link-card { color: #0048B6; background: #f0f7ff; }
/* Botão primário: 4.9:1 */
.btn-primary {
color: #ffffff;
background: #0048B6; /* branco sobre azul */
}Use o WebAIM Contrast Checker (webaim.org/resources/contrastchecker) ou a extensão Colour Contrast Analyser da TPGi. Texto decorativo e logotipos estão isentos. Teste estados hover/focus também.