{
  "cat": {
    "core": "Plano de control",
    "security": "Permisos y seguridad",
    "binaries": "software del sistema",
    "hosting": "Tiempos de ejecución",
    "dns": "DNS",
    "email": "Correo electrónico",
    "isolation": "Aislamiento del proyecto",
    "ops": "operaciones"
  },
  "level": {
    "ready": "Listo",
    "degraded": "Degradado",
    "missing": "Desaparecido",
    "unknown": "Desconocido"
  },
  "severity": {
    "critical": "Crítico",
    "recommended": "Recomendado",
    "optional": "Opcional"
  },
  "fix": "Arreglar",
  "passed": "Aprobar",
  "checkFailed": "Error en la comprobación de preparación",
  "gatePass": "Puerta pasada · {{pct}}%",
  "gateFail": "No listo · {{pct}}%",
  "gateBlocked": "No aprobado · {{n}} faltante",
  "executeOn": "En",
  "executeOff": "Apagado",
  "blockers": "Bloqueadores",
  "blockersHint": "Los bloqueos son el subconjunto crítico de Faltantes, no comprobaciones extra.",
  "requireAdminTotp": "Requiere política de administrador 2FA",
  "listenBind": "escuchar dirección",
  "item": {
    "admin2fa": "Administrador de dos factores"
  },
  "dataDirPerms": "permisos del directorio de datos del panel",
  "mode750": "modo 750",
  "totalChecks": "Todos los cheques",
  "totalChecksHint": "Listo + degradado + faltante = este total. Los bloqueadores son el subconjunto crítico que falta.",
  "probing": "Sondeo…",
  "reprobe": "Volver a sondear",
  "exportReport": "Informe de exportación",
  "exportStarted": "Descargando {{name}}",
  "firstBlocker": "Arreglar el primer bloqueador",
  "viewRecommended": "Ver recomendado",
  "loadingProbe": "Sondeando las capacidades del host...",
  "priorityTab": "Correcciones prioritarias",
  "checklistTab": "Lista de verificación completa",
  "summaryTab": "Resumen y atajos",
  "priorityTitle": "Correcciones prioritarias",
  "prioritySub": "Manejar en orden; volver a sondear después de eliminar los bloqueadores",
  "nItems": "{{count}} artículos",
  "noHardBlockers": "Sin bloqueadores duros",
  "noHardBlockersTitle": "Sin bloqueadores duros",
  "prodGate": "Puerta de producción",
  "gatePassed": "aprobado",
  "gateMaybePerm": "aún puede fallar debido a los permisos",
  "viewDegradedHint": "Revisar recomendaciones degradadas (correo, DNS, tiempos de ejecución opcionales).",
  "viewDegraded": "Ver degradado",
  "fullChecklist": "Lista de verificación completa",
  "showing": "Mostrando {{shown}} / {{total}}",
  "filterAria": "Filtro de estado",
  "all": "Todo",
  "category": "Categoría",
  "allCategories": "Todas las categorias",
  "searchPh": "Título, detalle, identificación, sugerencia de corrección...",
  "quickCatAria": "Categorías rápidas",
  "noMatchTitle": "No hay elementos coincidentes",
  "noMatchDesc": "Borrar búsqueda o cambiar filtros.",
  "resetFilters": "Restablecer filtros",
  "summary": "Resumen",
  "shortcuts": "Atajos",
  "opsShortcutsAria": "Atajos de operaciones",
  "scHost": "Configuración del anfitrión",
  "scHostD": "nombre de host · potencia · NTP",
  "scUnit": "Unidad de plano de control",
  "scUnitD": "instalar/habilitar systemd",
  "scServices": "Matriz de servicios",
  "scServicesD": "nginx · base de datos · ciclo de vida",
  "scMetrics": "Métricas de host",
  "scMetricsD": "cargar · memoria · alertas",
  "scProtection": "Centro de defensa",
  "scProtectionD": "respuesta · UFW · fail2ban",
  "policyNote": "Política: el PTR de correo, el puerto 25 y el DNS del registrador nunca se reclaman automáticamente como completos. HTTP 503 = informe no listo pero completo (no es un éxito falso).",
  "notProbedTitle": "Aún no investigado",
  "notProbedDesc": "Haga clic en \"Volver a sondear\" para iniciar una verificación de preparación de solo lectura.",
  "runCheck": "Ejecutar verificación de preparación",
  "reportFormatError": "Formato de informe de preparación no válido",
  "checkFailedHttp": "La verificación de preparación falló ({{status}})",
  "itemAdminPassword": "Seguridad de la contraseña de administrador",
  "itemAdminPasswordWeak": "{{count}} administrador(s) marcado(s) must_change_password/bootstrap inseguro: cambio antes de la producción",
  "itemAdminPasswordOk": "Sin indicador de arranque/contraseña débil en las cuentas de administrador",
  "itemAdminPasswordFix": "Cambiar contraseña de administrador (Seguridad/Usuarios)",
  "itemListenBind": "Enlace de escucha del plano de control",
  "itemListenBindPublic": "La escucha puede ser pública (0.0.0.0/::). Prefiera 127.0.0.1 + proxy inverso/firewall.",
  "itemListenBindLoopback": "Prefiere enlace loopback (predeterminado 127.0.0.1)",
  "itemDataDirPerms": "permisos de directorio de datos",
  "itemDataDirWorldW": "chmod 750 (o 700) directorio de datos; chown al usuario del panel",
  "itemDataDirOtherR": "Prefiera chmod 750 dataDir para que otros usuarios no puedan leer el JSON del plano de control",
  "itemRustToolchain": "Cadena de herramientas oxidada",
  "itemWebBuildFix": "Haga clic en \"Reparar ahora\" para crear la interfaz de usuario web (requiere monorepo en este host) o ejecute: pnpm --filter ysk-server-web build",
  "itemWebBuildManual": "No hay monorepo ni SPA empaquetado en este host; la solución con un solo clic no está disponible. En una máquina con fuente: pnpm --filter ysk-server-web build, luego copie apps/web/dist/* en dataDir/web (por ejemplo, /var/lib/ysk-server/web), o configure YSK_WEB_ROOT y reinicie.",
  "itemStateStore": "Almacén de estado del plano de control",
  "itemStateStoreSqliteHint": "Opcional: YSK_STORE=sqlite para el almacén de documentos WAL",
  "itemBackupFreshness": "Última ejecución de copia de seguridad completa",
  "itemBackupNone": "No se registró ningún last_backup_run: ejecute la copia de seguridad completa o programe",
  "itemBackupFix": "copia de seguridad del servidor ysk todo · programa de copia de seguridad --instalar",
  "itemFleetSessions": "Sesiones de agentes de flota",
  "itemFleetNone": "Opcional para host único; multi-edge necesita ejecución de agente + latido",
  "itemFleetNoHb": "Sesiones registradas pero sin latidos: iniciar el agente de borde",
  "itemPdnsutil": "pdnsutil (PowerDNS)",
  "apachePort80Title": "Apache vs publico :80",
  "apachePort80Detail": "Apache escucha en :80 y Nginx no está en HTTP público: entra en conflicto con la topología de Nginx como borde.",
  "apachePort80Both": "Tanto Apache como Nginx aparecen en :80: vuelva a vincular Apache a 127.0.0.1:8080.",
  "apachePort80Ok": "Apache se está ejecutando pero no es propietario exclusivo de public :80 (topología correcta).",
  "apachePort80Fix": "Instalar ayudantes de reenlace existen; deshabilite Apache vhosts en 80 o verifique con ss -lntp después de recargar.",
  "fixNow": "Arreglar ahora",
  "fixFailed": "La solución falló",
  "fixDone": "Permisos de dataDir reforzados (chmod 750)",
  "fixDoneWebUi": "UI web construida/instalada",
  "rootLabel": "Superusuario",
  "techDetails": "Detalles técnicos",
  "missingOwner": "No hay propietario de panel asignado (atribución de cuota de paquete)",
  "notOsProvisioned": "Usuario/casa del sistema operativo aún no aprovisionado",
  "isolationPendingOs": "Igual que el estado del proyecto: usuario del sistema operativo pendiente. Abra el aislamiento para aprovisionar al usuario del sistema y al hogar.",
  "ondrejNone": "No se detectaron fuentes PHP de Ondrej Launchpad",
  "ondrejFound": "Se encontraron fuentes heredadas de ondrej/php que entran en conflicto con packages.sury.org: {{paths}}",
  "ondrejTitle": "Fuente PHP apt (residual ondrej)",
  "systemctlActive": "El servicio está funcionando",
  "systemctlStatus": "Estado del servicio: {{status}}",
  "binInPath": "{{bin}} en RUTA",
  "leftoverApache": "Sitio predeterminado sobrante de Apache",
  "leftoverVsftpd": "unidad vsftpd falló",
  "leftoverCli": "CLI sobrante obsoleta",
  "leftoverNginx": "Falta el comodín Nginx",
  "leftoverDovecot": "Dovecot TLS apunta al certificado faltante",
  "leftoverOther": "Restos de hostia",
  "leftoverApply": "Aplicar sobrantes",
  "isolationOwnerDegrades": "La falta deowner_user_id afecta la atribución de cuota de paquete: el estado está degradado, no listo."
}
