{
 "url": "https://hoxe.vigo.org/",
 "elementos_analizados": 2985,
 "resumen": {
  "alta": 2,
  "media": 1,
  "baja": 2
 },
 "hallazgos": [
  {
   "severidad": "alta",
   "criterio": "4.1.2 Nombre, función, valor",
   "hallazgo": "1 <a> sin nombre accesible (sin texto, aria-label ni title).",
   "remediacion": "El nombre accesible llega del texto interno, aria-label, title o de una imagen interna con alt. Un control vacío es invisible para lectores de pantalla."
  },
  {
   "severidad": "alta",
   "criterio": "3.3.2 Etiquetas o instrucciones",
   "hallazgo": "1 campos de formulario sin <label> asociado ni nombre accesible.",
   "remediacion": "Asocia <label for=\"id\"> al campo (o envuélvelo), o usa aria-label. Aplica a input, select y textarea.",
   "ejemplos": [
    "select name=(sin name)"
   ]
  },
  {
   "severidad": "media",
   "criterio": "4.1.2 Nombre, función, valor",
   "hallazgo": "1 <iframe> sin title accesible.",
   "remediacion": "Añade title descriptivo al iframe (lo anuncian los lectores al llegar a él).",
   "ejemplos": [
    ""
   ]
  },
  {
   "severidad": "baja",
   "criterio": "1.3.1 Información y relaciones",
   "hallazgo": "20 <h1> en la página (máximo recomendado: 1).",
   "remediacion": "Conserva un solo h1 (título de la página) y baja el resto un nivel."
  },
  {
   "severidad": "baja",
   "criterio": "4.1.2 Nombre, función, valor",
   "hallazgo": "1 ids duplicados; pueden romper asociaciones label-for y aria-labelledby.",
   "remediacion": "Haz únicos los ids: los <label for> y aria-labelledby apuntan solo al primero."
  }
 ],
 "limites": "Automatización ≈ un tercio de WCAG: esto es un filtro exprés, no sustituye revisión manual (teclado, lector de pantalla, contraste real, refrán de auditoría)."
}
