{
  "alert": {
    "memory_high": "Memoria alta",
    "load_high": "Carga alta",
    "disk_high": "Disco alto"
  },
  "loadFailed": "No se pudieron cargar las métricas",
  "projectUsageFailed": "No se pudo cargar el uso del proyecto",
  "procListFailed": "Error en la lista de procesos",
  "streamEnded": "Transmisión finalizada ({{reason}})",
  "streamOpenFailed": "No se pudo abrir la transmisión",
  "signalFailed": "Señal fallida",
  "detailFailed": "No se pudieron cargar los detalles",
  "alertCount": "{{count}} alerta(s)",
  "attention": "necesita atencion",
  "normal": "OK",
  "disk": "Disco",
  "alerts": "Alertas",
  "auto5s": "5 automáticos",
  "hostSettings": "Configuración del anfitrión",
  "loading": "Cargando métricas…",
  "tabs": {
    "overview": "Descripción general",
    "live": "Procesos en vivo",
    "disk": "Disco",
    "projectUsage": "Uso del proyecto",
    "alerts": "Alertas"
  },
  "load": "Carga",
  "load1m": "Carga 1m",
  "uptime": "tiempo de actividad",
  "filterCpu5": "≥5 % de CPU",
  "filterMem5": "≥5% de memoria",
  "signalHint": "Seleccione un proceso, luego envíe TERM o KILL.",
  "signalFromRow": "Seleccione este proceso para TERM / KILL",
  "selectForSignal": "Seleccionar",
  "forceKillTitleNamed": "¿MATAR PID {{pid}} ({{cmd}})?",
  "sendSigTitleNamed": "¿Enviar TERM a PID {{pid}} ({{cmd}})?",
  "min1": "1 metro",
  "min5": "5m",
  "min15": "15m",
  "loadHint": "Relativo a {{cpus}} CPU; por encima de 1,0× puede hacer cola.",
  "memory": "Memoria",
  "total": "Total",
  "available": "Disponible",
  "mainDisk": "Disco raíz",
  "path": "Camino",
  "diskReadFail": "No se pudo leer el disco",
  "viewAllMounts": "Ver todos los soportes {{count}} →",
  "nAlerts": "{{count}} alertas",
  "details": "Detalles",
  "noThresholdAlerts": "Sin alertas de umbral de memoria/carga/disco",
  "projectDisk": "Disco de proyecto (real du)",
  "viewAllProjectUsage": "Ver todo el uso del proyecto →",
  "loadProjectDisk": "Cargar el uso del disco del proyecto (real du) →",
  "followSse": "Seguir (SSE)",
  "interval": "Intervalo",
  "sort": "Clasificar",
  "rows": "Filas",
  "onceQuery": "consulta de una sola vez",
  "procSearchPh": "Buscar PID / USUARIO / COMANDO",
  "procSearchAria": "Procesos de búsqueda",
  "filterAll": "Todo",
  "filterMine": "No sistema",
  "selectedN": "{{count}} seleccionado",
  "showOf": "· mostrando {{shown}}/{{total}}",
  "topLoading": "Cargando resumen superior... (/proc/stat muestra dual)",
  "topAria": "resumen superior",
  "perCore": "Por núcleo",
  "noPerCore": "Sin datos por núcleo",
  "uptimeDays": "{{d}} días, {{h}}:{{m}}",
  "used": "Usado",
  "free": "Gratis",
  "signal": "Señal",
  "kill": "Matar",
  "send": "Enviar",
  "procDetail": "Detalle del proceso",
  "refreshProc": "Actualizar procesos",
  "noProcs": "Sin procesos",
  "noProcsFilter": "Ningún proceso coincide con los filtros",
  "mounts": "monturas",
  "fs": "Sistema de archivos",
  "mount": "Montar",
  "size": "Tamaño",
  "usage": "Uso",
  "project": "Proyecto",
  "quota": "Cuota",
  "ratio": "Compartir",
  "unlimited": "Ilimitado",
  "noProjects": "Aún no hay proyectos",
  "noProjectsDesc": "Cree un proyecto para ver el uso real del hogar aquí",
  "usageNote": "Uso del du local (no estimado). La cuota es un límite flexible del plano de control; La cuota establecida rígida necesita aplicarse al host.",
  "thresholdAlerts": "Alertas de umbral",
  "alertsBuiltinOnly": "Umbrales de CPU/memoria/disco integrados únicamente. Sin correo electrónico, webhook ni canal Slack.",
  "lastEvaluated": "Última comprobación",
  "alertsOkTitle": "Todo claro",
  "alertsOkDesc": "No hay alertas de umbral de memoria/carga/disco.",
  "cpu": "CPU",
  "command": "Dominio",
  "user": "Usuario",
  "clearSelection": "Borrar selección",
  "batchSignal": "señal por lotes",
  "liveHint": "Lista de procesos en vivo (SSE o encuesta). Las señales necesitan root + YSK_EXECUTE.",
  "signalTo": "Señal {{sig}} → PID {{pid}}",
  "procAlive": "El proceso sigue vivo (kill -0 ok)",
  "procGone": "Proceso finalizado",
  "procTable": "Procesos ({{count}}{{more}})",
  "procTableDesc": "lista ps · seleccione TERM/KILL (necesita YSK_EXECUTE)",
  "selectAllAria": "Seleccionar todo filtrado",
  "selectPidAria": "Seleccione PID {{pid}}",
  "controlPlane": "Plano de control",
  "controlPlaneNoSignal": "El proceso del plano de control no se puede señalizar",
  "protectedPid": "PID 1 / init / systemd no se puede señalar desde el panel",
  "sigTermTitle": "Enviar SIGTERM (pedir al proceso que salga)",
  "sigKillTitle": "Enviar SIGKILL (muerte forzada, no se puede capturar)",
  "batchTerm": "TERM",
  "batchKill": "KILL",
  "rawTopLabel": "Tapa cruda (sin traducir)",
  "followSseLabel": "Seguir (transmisión en vivo)",
  "alertsReadOnly": "Umbrales de CPU/memoria/disco integrados únicamente. Sin correo electrónico, webhook ni canal Slack.",
  "alertsGoNotifications": "Abrir centro de notificaciones",
  "lastCheck": "último control",
  "rawTopHint": "Salida superior (1) sin traducir",
  "detailShort": "Información",
  "procUnavailable": "No se pudieron obtener los procesos",
  "noProcData": "Aún no hay datos del proceso",
  "noProcFilter": "Ningún proceso coincide con los filtros",
  "clickOnceOrFollow": "Ejecute una consulta única o habilite el seguimiento",
  "liveFootnote": "Como SSH top: /proc/stat muestra dual para %Cpu (por núcleo = top “1”), Mem/Swap, Tareas; tabla de procesos de ps. No es un PTY interactivo. Matar necesita YSK_EXECUTE; El PID 1 y el plano de control están protegidos de forma predeterminada.",
  "forceKillTitle": "Forzar la eliminación de PID {{pid}} (SIGKILL)",
  "sendSigTitle": "Enviar SIG{{sig}} a PID {{pid}}",
  "forceKillDesc": "No se puede atrapar; puede perder datos. Comando: {{cmd}}",
  "termDesc": "El proceso puede limpiarse y salir. Comando: {{cmd}}",
  "forceKillBtn": "Fuerza matar",
  "sendTermBtn": "Enviar PLAZO",
  "procPidTitle": "PID de proceso {{pid}}",
  "readingProc": "Lectura/proceso…",
  "applyRenice": "aplicar renice",
  "reniceHint": "-20 más alto · 19 más bajo (necesita EJECUTAR)",
  "noData": "Sin datos",
  "shareOfMeasured": "{{pct}}% de lo medido",
  "mountsTitle": "Montajes de disco ({{count}})",
  "mountsDesc": "Real df -P -B1 (tmpfs filtrado)",
  "noMounts": "Sin lista de montaje",
  "noMountsDesc": "df no disponible o filtrado. El disco raíz aún está en Descripción general.",
  "seeProjectUsage": "El uso del hogar del proyecto está en la pestaña Uso del proyecto (real du · {{size}})",
  "measuringDu": "Medición de viviendas de proyecto (du)…",
  "projectUsageTitle": "Uso del disco del proyecto ({{count}})",
  "projectUsageDesc": "Real du · total {{total}} · {{at}}",
  "projectUsageDescEmpty": "Ejecute du en cada proyecto home_dir",
  "remeasure": "Volver a medir",
  "usageNoteFull": "Uso del du local (no estimado). La cuota es un límite flexible del plano de control; La cuota establecida rígida necesita aplicarse al host.",
  "sseNeedLogin": "No iniciado sesión; no puedo abrir SSE",
  "sseSessionExpired": "No iniciado sesión o la sesión expiró; no puedo abrir SSE",
  "sseHttpError": "transmitir HTTP {{status}}",
  "colFilesystem": "Sistema de archivos",
  "colMount": "Montar",
  "colSize": "Tamaño",
  "colUsed": "Usado",
  "colAvail": "Disponible",
  "colUsePct": "Usado %",
  "colHome": "Hogar",
  "usageNoteLink": "Cuota flexible del plano de control. Aplique límites estrictos en la pestaña Aislamiento del proyecto.",
  "shareNoQuotaHint": "Sin cuota, la proporción no es un porcentaje. Fíjela en la pestaña Aislamiento del proyecto.",
  "setQuotaLink": "Fijar cuota",
  "unusualHome": "Ruta inusual",
  "unusualHomeHint": "No es una casa de proyecto /home/…. El aislamiento canónico es /home/ysk-server-{id}."
}
