{
  "app": {
    "name": "PromptHub",
    "description": "Gestor de Prompts local con control de versiones"
  },
  "filter": {
    "all": "Todo",
    "text": "Texto",
    "image": "Imagen"
  },
  "nav": {
    "allPrompts": "Todos los Prompts",
    "textPrompts": "Prompts de texto",
    "imagePrompts": "Prompts de imagen",
    "favorites": "Favoritos",
    "folders": "Carpetas",
    "tags": "Etiquetas",
    "resources": "Recursos recomendados",
    "installed": "Instaladas",
    "allSkills": "Todas las habilidades",
    "added": "Agregadas",
    "deployed": "Distribuidas",
    "skillLibrary": "Biblioteca de skills",
    "mySkills": "Mis habilidades",
    "projects": "Skills del proyecto",
    "libraryImported": "Desde la biblioteca",
    "platformDeployed": "Distribuidas en la plataforma",
    "distribution": "Distribución",
    "skillStore": "Tienda de habilidades"
  },
  "header": {
    "search": "Buscar Prompt...",
    "new": "Nuevo",
    "settings": "Configuración",
    "topbarWebTitle": "PromptHub Web",
    "searchProjectSkills": "Buscar skills del proyecto...",
    "searchSkill": "Buscar skills...",
    "resultsCount": "{{count}} resultados",
    "noResults": "Sin resultados",
    "prevResult": "Anterior (Shift+Tab)",
    "nextResult": "Siguiente (Tab)",
    "clearSearch": "Limpiar búsqueda"
  },
  "prompt": {
    "title": "Título",
    "description": "Descripción",
    "systemPrompt": "Prompt del sistema",
    "systemPromptEn": "Prompt del sistema (inglés)",
    "userPrompt": "Prompt del usuario",
    "userPromptEn": "Prompt del usuario (inglés)",
    "addEnglishVersion": "Añadir versión en inglés",
    "addLocalizedVersion": "Add Localized Version",
    "alreadyEnglish": "Content is already in English",
    "translateDetectedEnglish": "English detected, translate to current language",
    "removeEnglishVersion": "Ocultar versión en inglés",
    "showChinese": "Chino",
    "showEnglish": "English",
    "showLocalized": "Show Localized",
    "bilingualHint": "Soporte bilingüe para fácil uso y modificación",
    "tags": "Etiquetas",
    "media": "Medios",
    "properties": "Propiedades",
    "basicInfo": "Información básica",
    "moreSettings": "Más ajustes",
    "type": "Prompt Type",
    "typeText": "Text",
    "typeImage": "Image",
    "typeTextDesc": "Test with chat models (e.g., GPT-4)",
    "typeImageDesc": "Test with image models (e.g., DALL-E). Generated images will be saved to preview.",
    "videoNotSupported": "Video generation coming soon!",
    "mismatchText": "Current Prompt is Text type, please configure a Chat Model in settings.",
    "mismatchImage": "Current Prompt is Image type, please configure an Image Model in settings.",
    "notesOptional": "Notas (opcional)",
    "notes": "Notas",
    "notesPlaceholder": "Notas personales sobre este prompt...",
    "source": "Fuente",
    "sourceOptional": "Fuente (opcional)",
    "sourcePlaceholder": "¿Dónde encontraste este prompt? p. ej. URL, libro, etc.",
    "variables": "Variables",
    "preview": "Vista previa",
    "copy": "Copiar Prompt",
    "duplicate": "Crear duplicado",
    "duplicateSuffix": "Copia",
    "filterByTag": "Filtrar por etiqueta",
    "copied": "Copiado",
    "edit": "Editar",
    "delete": "Eliminar",
    "save": "Guardar",
    "cancel": "Cancelar",
    "create": "Crear",
    "noPrompts": "No hay Prompts",
    "addFirst": "Haz clic en \"Nuevo\" para crear tu primer Prompt",
    "resizeListPaneAria": "Redimensionar lista de prompts",
    "selectPrompt": "Selecciona un Prompt",
    "selectPromptDesc": "Selecciona un Prompt de la lista para ver detalles, o haz clic en \"Nuevo\"",
    "variableHint": "Usa {{nombreVariable}} para definir variables",
    "history": "Historial de versiones",
    "historyLoading": "Cargando...",
    "noHistory": "Sin historial de versiones",
    "noHistoryHint": "Las versiones se guardan automáticamente al editar",
    "selectVersion": "Seleccionar versión",
    "selectCompareVersion": "Seleccionar versión para comparar",
    "versionCompare": "Comparar versiones",
    "exitCompare": "Salir de comparación",
    "restoreVersion": "Restaurar esta versión",
    "restoreConfirm": "¿Seguro que desea restaurar a v{{version}}? El contenido actual se sobrescribirá.",
    "currentVersion": "Versión actual",
    "deleteVersionTitle": "Eliminar versión",
    "deleteVersionConfirm": "¿Eliminar la v{{version}}? Esta entrada del historial se perderá permanentemente.",
    "noChanges": "Sin cambios",
    "noContent": "(vacío)",
    "changeNote": "Nota de cambio",
    "aiTest": "Prueba de IA",
    "outputFormat": "Formato de salida",
    "outputFormatText": "Texto",
    "outputFormatJson": "Modo JSON",
    "outputFormatJsonSchema": "JSON Schema",
    "jsonSchemaName": "Nombre del Schema",
    "jsonSchemaContent": "Definición del Schema",
    "jsonSchemaPlaceholder": "Ingrese el JSON Schema, por ej.:\n{\n  \"type\": \"object\",\n  \"properties\": {\n    \"answer\": { \"type\": \"string\" }\n  },\n  \"required\": [\"answer\"]\n}",
    "jsonSchemaInvalid": "JSON Schema inválido",
    "jsonSchemaHint": "Define la estructura JSON de salida, la IA seguirá estrictamente este formato",
    "testing": "Probando...",
    "selectModelsHint": "Selecciona múltiples modelos para comparar respuestas",
    "clearSelection": "Limpiar selección",
    "selectAtLeast2": "Selecciona al menos 2 modelos para comparar",
    "comparing": "Comparando...",
    "compareModels": "Comparar {{count}} modelos",
    "updatedAt": "Actualizado",
    "versionLabel": "Versión {{version}}",
    "confirmDeletePrompt": "¿Estás seguro de eliminar este Prompt?",
    "promptDeleted": "Prompt eliminado",
    "promptDuplicated": "Se creó un duplicado del Prompt",
    "unsavedChanges": "Cambios sin guardar",
    "unsavedChangesMessage": "Tienes cambios sin guardar. ¿Deseas guardarlos?",
    "discardChanges": "Descartar",
    "imageDownloadFailed": "Error al descargar la imagen",
    "imageDownloadFailedMessage": "No se pudo descargar la imagen desde esta URL. Por favor, comprueba el enlace.",
    "aiResponse": "Respuesta de IA",
    "callingAI": "Llamando a IA...",
    "waitingResponse": "Esperando respuesta...",
    "copyResponse": "Copiar respuesta",
    "responseCopied": "Respuesta de IA copiada",
    "viewRaw": "Ver texto sin formato",
    "viewMarkdown": "Renderizar Markdown",
    "createPrompt": "Nuevo Prompt",
    "editPrompt": "Editar Prompt",
    "titleLabel": "Título",
    "titlePlaceholder": "Dale un nombre a tu Prompt",
    "descriptionOptional": "Descripción (opcional)",
    "descriptionPlaceholder": "Describe brevemente el propósito de este Prompt",
    "folderOptional": "Carpeta (opcional)",
    "noFolder": "Sin carpeta",
    "moveTo": "Mover a...",
    "movedToNoFolder": "Se quitó de la carpeta actual",
    "tagsOptional": "Etiquetas (opcional)",
    "selectExistingTags": "Seleccionar etiquetas existentes:",
    "enterTagHint": "Escribe una nueva etiqueta y presiona Enter",
    "addTag": "Añadir",
    "referenceImages": "Imágenes de referencia",
    "uploadImage": "Subir/Pegar/Enlace",
    "uploadVideo": "Subir video",
    "addImageByUrl": "Añadir por URL",
    "enterImageUrl": "Introduce la URL de la imagen",
    "pasteImageHint": "Puedes pegar imágenes directamente",
    "referenceMedia": "Multimedia de referencia",
    "videoLabel": "Vídeo",
    "videoOptional": "Video de previsualización (opcional)",
    "videoHint": "Soporta formatos MP4, WebM, MOV",
    "mediaHint": "Soporta imágenes (PNG/JPG/GIF) y videos (MP4/WebM)",
    "mediaUploadHint": "Formatos soportados: Imágenes JPG/PNG/GIF/WEBP · Videos MP4/WebM/MOV/AVI/MKV · Tiempo límite de descarga URL 30s",
    "previewVideos": "Vista previa de videos",
    "downloadingImage": "Descargando imagen...",
    "downloadTimeout": "Tiempo de descarga de imagen agotado",
    "generating": "Generando...",
    "addToPrompt": "Añadir al Prompt",
    "imageAddedToPrompt": "Imagen añadida al Prompt",
    "aiTestAttachments": "Adjuntos de prueba",
    "aiTestAttachmentHint": "PNG, JPG, WebP o GIF para modelos de chat multimodales. Hasta {{count}}, {{size}} cada una.",
    "aiTestAddImages": "Añadir imágenes",
    "aiTestSelectReferenceImages": "Seleccionar imágenes de referencia existentes",
    "aiTestUploadedReferenceImages": "Imágenes de referencia subidas",
    "aiTestRemoveImage": "Eliminar imagen",
    "aiTestImageLimit": "Se pueden adjuntar hasta {{count}} imágenes",
    "aiTestImageUnsupported": "{{name}} no es un archivo de imagen",
    "aiTestImageTooLarge": "{{name}} supera {{size}}",
    "aiTestImageReadFailed": "No se puede leer la imagen",
    "systemPromptLabel": "System Prompt",
    "systemPromptOptional": "System Prompt (opcional)",
    "systemPromptPlaceholder": "Configura el rol y comportamiento de la IA...",
    "userPromptLabel": "User Prompt",
    "inlineEditSystemPromptAria": "Haz doble clic para editar el prompt del sistema",
    "inlineEditUserPromptAria": "Haz doble clic para editar el prompt del usuario",
    "userPromptPlaceholder": "Escribe tu Prompt, usa {{nombreVariable}} o {{nombreVariable:ejemplo}} para definir variables...",
    "variableTip": "Consejo de variables",
    "variableTipContent": "Usa {{nombreVariable}} o {{nombreVariable:ejemplo}} para definir variables, ej: {{language}} o {{nombreCurso:Informática Básica}}",
    "typeYourPrompt": "Type your prompt here...",
    "enterEnglishSystemPrompt": "Enter English System Prompt...",
    "enterEnglishUserPrompt": "Enter English User Prompt...",
    "translateToEnglish": "Translate to English",
    "translateFromEnglish": "Translate from English",
    "englishGenerated": "English version generated",
    "localizedGenerated": "Localized version generated",
    "noContentToTranslate": "No content to translate",
    "noEnglishContentToTranslate": "No English content to translate",
    "addTagPlaceholder": "Añadir etiqueta...",
    "variablePreview": "Vista previa de variables",
    "copyResult": "Copiar resultado",
    "previewResult": "Vista previa del resultado",
    "inputVariable": "Introduce el valor de {{name}}...",
    "variableInput": "Entrada de variables",
    "fillVariables": "Completa los valores de las siguientes variables",
    "noVariables": "Este Prompt no tiene variables",
    "defaultValue": "Valor predeterminado",
    "exampleValue": "Valor de ejemplo",
    "exampleHint": "Ejemplo",
    "variableName": "Nombre de variable",
    "fromHistory": "Del historial",
    "systemVariables": "Variables del sistema",
    "sortBy": "Ordenar por",
    "sortNewest": "Reciente",
    "sortOldest": "Antiguo",
    "sortTitleAsc": "Título A-Z",
    "sortTitleDesc": "Título Z-A",
    "sortMostUsed": "Más usado",
    "sortLeastUsed": "Menos usado",
    "viewCard": "Vista de tarjetas",
    "viewList": "Vista de lista",
    "viewGallery": "Vista de galería",
    "viewKanban": "Vista Kanban",
    "columns2": "2 columnas",
    "columns3": "3 columnas",
    "columns4": "4 columnas",
    "columns5": "5 Columns",
    "pinnedPrompts": "Prompts fijados",
    "pin": "Fijar",
    "unpin": "Desfijar",
    "expandAll": "Expandir todo",
    "collapseAll": "Contraer todo",
    "unpinAll": "Limpiar todo",
    "usageCount": "Veces usado",
    "createdAt": "Creado",
    "promptCount": "{{count}} en total",
    "actions": "Acciones",
    "columnConfig": "Configuración de columnas",
    "columnConfigHint": "Haga clic para alternar la visibilidad de las columnas",
    "columnDesc": {
      "title": "Nombre/Título del Prompt",
      "userPrompt": "Vista previa del contenido del User Prompt",
      "aiResponse": "Vista previa del contenido de la respuesta de la IA",
      "variables": "Número de variables reemplazables",
      "usageCount": "Estadísticas de copias/uso"
    },
    "pageSize": "Por página",
    "movedToFolder": "Movido a carpeta",
    "dataPathChanged": "Ruta de datos cambiada",
    "batchFavorited": "Añadidos a favoritos",
    "batchMoved": "Movidos en lote",
    "batchDeleted": "Eliminados en lote",
    "addToFavorites": "Añadir a favoritos",
    "removeFromFavorites": "Quitar de favoritos",
    "viewDetail": "Ver detalles",
    "enterValue": "Introducir valor",
    "selected": "{{count}} seleccionados",
    "batchFavorite": "Favoritos en lote",
    "batchMove": "Mover en lote",
    "batchDelete": "Eliminar en lote",
    "confirmBatchDelete": "¿Eliminar estos {{count}} Prompts?"
  },
  "folder": {
    "new": "Nueva carpeta",
    "edit": "Editar carpeta",
    "rename": "Renombrar",
    "delete": "Eliminar",
    "empty": "Sin carpetas",
    "icon": "Icono",
    "name": "Nombre",
    "namePlaceholder": "Introduce el nombre de la carpeta",
    "setPrivate": "Marcar como carpeta privada",
    "privateNeedPassword": "Primero configura la contraseña maestra en Ajustes > Seguridad",
    "privateNeedPasswordInline": "Primero configura la contraseña maestra en \"Ajustes - Seguridad\".",
    "privateHint": "Después de guardar, esta carpeta se almacenará cifrada y requerirá verificación de contraseña.",
    "unlockTitle": "Introduce la contraseña maestra",
    "unlockDesc": "Debes desbloquear la contraseña maestra antes de guardar una carpeta privada",
    "unlockPlaceholder": "Introduce la contraseña maestra",
    "unlocking": "Desbloqueando...",
    "unlockSuccess": "Desbloqueado correctamente",
    "unlockFailed": "No se pudo desbloquear",
    "wrongPassword": "Contraseña incorrecta",
    "deleteTitle": "Eliminar carpeta \"{{name}}\"",
    "containsPrompts": "Esta carpeta contiene {{count}} Prompts",
    "deleteFolderOnly": "Eliminar solo la carpeta",
    "deleteFolderOnlyDesc": "Mantener {{count}} Prompts y moverlos a la raíz",
    "deleteAllContent": "Eliminar todo",
    "deleteAllContentDesc": "Eliminar la carpeta y los {{count}} Prompts dentro",
    "confirmDelete": "Confirmar eliminación",
    "deletedWithPrompts": "Carpeta eliminada junto con {{count}} Prompts",
    "deletedMovedPrompts": "Carpeta eliminada, {{count}} Prompts movidos a la raíz",
    "duplicateTitle": "El nombre de la carpeta ya existe",
    "duplicateDesc": "Ya existe una carpeta llamada \"{{name}}\". ¿Aún quieres crearla?",
    "confirmCreate": "Crear de todos modos",
    "masterPasswordRequired": "Introduce la contraseña maestra",
    "deletePrivateTitle": "Eliminar carpeta privada",
    "deletePrivateDesc": "Esto eliminará la carpeta privada \"{{name}}\" y todo el contenido cifrado. Introduce la contraseña maestra para confirmar.",
    "deleting": "Eliminando...",
    "wrongPasswordCannotDelete": "Contraseña maestra incorrecta, no se puede eliminar",
    "privateUnlockTitle": "Desbloquear carpeta privada",
    "privateUnlockMessage": "La carpeta \"{{name}}\" es privada. Introduce la contraseña maestra para desbloquearla y ver su contenido.",
    "folderDeleted": "Carpeta eliminada",
    "deleteFailed": "Error al eliminar",
    "parentFolder": "Carpeta padre",
    "uncategorized": "Sin categoría",
    "noParent": "Ninguna (Raíz)",
    "noAvailableParents": "No hay carpetas padre disponibles",
    "parentHint": "Máximo {{depth}} niveles de anidamiento"
  },
  "rules": {
    "title": "Rules",
    "sidebarTitle": "Espacio de trabajo de reglas",
    "platformSidebarTitle": "Reglas",
    "sidebarHint": "Gestiona archivos de reglas globales y archivos AGENTS.md de proyectos desde un solo espacio de trabajo.",
    "globalSection": "Reglas globales",
    "projectSection": "Reglas de proyecto",
    "addProjectRuleDirectory": "Agregar directorio de proyecto",
    "addProjectRuleDirectoryHint": "Elige una carpeta de proyecto y PromptHub creará y mantendrá automáticamente un archivo de reglas AGENTS.md dentro de ella para que las herramientas de IA lo lean.",
    "currentProjectBadge": "Actual",
    "editorTitle": "Editor de reglas",
    "editorCanvas": "Contenido de la regla",
    "fileLabel": "Archivo de reglas",
    "pathLabel": "Ruta",
    "diffAdded": "Añadido",
    "diffRemoved": "Eliminado",
    "aiRewriteTitle": "Pedir a la IA que mejore esta regla",
    "aiRewriteHint": "Describe el cambio que quieres. La IA preparará un nuevo borrador para el archivo de reglas seleccionado.",
    "aiRewritePlaceholder": "Ejemplo: añadir requisitos de pruebas, reorganizar secciones o reforzar el tono de las restricciones, manteniendo cuando sea posible los encabezados markdown existentes.",
    "aiRewriteAction": "Mejorar con IA",
    "aiRewriteWorking": "Generando borrador...",
    "aiRewriteDone": "Borrador de IA listo",
    "aiRewriteFailed": "La mejora con IA falló",
    "rescanAction": "Volver a escanear archivos de reglas",
    "rescanShortAction": "Escanear",
    "rescanWorking": "Escaneando...",
    "rescanDone": "Reglas reescaneadas",
    "rescanFailed": "Error al escanear",
    "stopTrackingAction": "Dejar de seguir",
    "draftUnsavedStatus": "El borrador tiene cambios sin guardar",
    "draftSyncedStatus": "El borrador coincide con el archivo guardado",
    "draftEditMode": "Editor de borrador - no se escribe en el archivo hasta guardar",
    "snapshotPreviewMode": "Vista previa de instantánea - solo lectura",
    "saveAndOverwrite": "Guardar y sobrescribir archivo",
    "saveOverwriteHint": "Al guardar se escribe este borrador en el archivo de reglas real.",
    "versionTitle": "Instantáneas de versión",
    "versionHint": "Las instantáneas son historial de solo lectura. Selecciona una para verla y restáurala al borrador si hace falta.",
    "versionPreviewTitle": "Vista previa de la instantánea",
    "versionPreviewReadonly": "El modo de vista previa es de solo lectura.",
    "versionEditingDraft": "Editando el borrador actual",
    "versionBackToDraft": "Volver al borrador",
    "versionRestoreToDraft": "Restaurar al borrador",
    "versionRestoreDone": "La instantánea se restauró al borrador",
    "versionSourceManualSave": "Guardado",
    "versionSourceAiRewrite": "Borrador IA",
    "versionSourceCreate": "Creado",
    "versionEmpty": "Todavía no hay instantáneas. Guardar o reescribir con IA creará historial local.",
    "searchPlaceholder": "Buscar archivos de reglas, plataformas o rutas...",
    "exists": "Existe",
    "notExists": "Se creará al guardar",
    "openLocation": "Abrir ubicación",
    "pathUnknown": "Ruta no disponible",
    "emptyHint": "El contenido de la regla aparecerá aquí.",
    "diffSnapshotHeader": "Instantánea → Borrador actual",
    "diffCurrentDraft": "Borrador actual",
    "editorLineCount": "{{count}} líneas",
    "editorCharCount": "{{count}} caracteres",
    "aiRewriteSummary": "La IA ha generado un nuevo borrador. Revíselo y guárdelo cuando esté listo.",
    "versionCurrentLabel": "Actual",
    "versionDeleteAction": "Eliminar snapshot",
    "versionDeleteConfirmMessage": "¿Está seguro de que desea eliminar este snapshot? Esta acción no se puede deshacer.",
    "versionDeleteDone": "Snapshot eliminado",
    "versionShowMore": "Ver {{count}} más",
    "versionShowLess": "Colapsar"
  },
  "settings": {
    "developer": "Opciones de desarrollador",
    "debugMode": "Modo de depuración",
    "debugModeDesc": "Habilitar depuración de consola (Soporta Ctrl+Shift+I / Cmd+Option+I)",
    "security": "Seguridad",
    "securityStatus": "Estado",
    "masterSet": "Contraseña maestra configurada",
    "masterNotSet": "Contraseña maestra no configurada",
    "unlocked": "Desbloqueado",
    "locked": "Bloqueado",
    "setMaster": "Configurar contraseña maestra (mín. 4 caracteres)",
    "masterPlaceholder": "Introduce la contraseña maestra",
    "masterConfirmPlaceholder": "Confirma la contraseña maestra",
    "setMasterBtn": "Configurar contraseña maestra",
    "unlockTitle": "Desbloquear / Bloquear",
    "unlockPlaceholder": "Introduce la contraseña maestra para desbloquear",
    "unlock": "Desbloquear",
    "lock": "Bloquear",
    "refresh": "Actualizar estado",
    "securityDesc": "La contraseña maestra desbloquea contenido privado. PromptHub solo almacena un hash con sal de la contraseña, nunca la contraseña en texto plano. El contenido privado permanece oculto hasta desbloquearse.",
    "pwdTooShort": "La contraseña maestra debe tener al menos 4 caracteres",
    "pwdMismatch": "Las contraseñas no coinciden",
    "masterSetSuccess": "Contraseña maestra establecida y desbloqueada",
    "masterSetFail": "Error al establecer la contraseña maestra",
    "enterMasterPwd": "Por favor ingrese la contraseña maestra",
    "unlockSuccess": "Desbloqueado con éxito",
    "pwdWrong": "Contraseña incorrecta",
    "unlockFail": "Error al desbloquear",
    "lockSuccess": "Bloqueado",
    "lockFail": "Error al bloquear",
    "enterCurrentPwd": "Por favor ingrese la contraseña maestra actual",
    "newPwdTooShort": "La nueva contraseña debe tener al menos 4 caracteres",
    "currentPwdWrong": "La contraseña maestra actual es incorrecta",
    "changePwdSuccess": "Contraseña maestra cambiada y redesbloqueada",
    "changePwdFail": "Error al cambiar la contraseña",
    "statusFetchFail": "Error al obtener el estado de seguridad",
    "changePwd": "Cambiar contraseña maestra",
    "changePwdBtn": "Cambiar contraseña",
    "oldPwdPlaceholder": "Introduce la contraseña maestra actual",
    "newPwdPlaceholder": "Introduce la nueva contraseña maestra (mín. 4 caracteres)",
    "newPwdConfirmPlaceholder": "Confirma la nueva contraseña maestra",
    "confirmChange": "Confirmar cambio",
    "title": "Configuración",
    "back": "Volver",
    "general": "Configuración de la aplicación",
    "appearance": "Apariencia",
    "data": "Datos y sincronización",
    "platformPreview": "Platform Preview",
    "ai": "Servicios de modelos",
    "language": "Idioma",
    "notifications": "Notificaciones",
    "languageAndRegion": "Idioma y región",
    "about": "Acerca de",
    "startup": "Inicio",
    "launchAtStartup": "Iniciar con el sistema",
    "launchAtStartupDesc": "Ejecutar PromptHub al iniciar el sistema",
    "minimizeOnLaunch": "Minimizar al iniciar",
    "minimizeOnLaunchDesc": "Minimizar a la bandeja del sistema al iniciar",
    "closeAction": "Acción al cerrar",
    "closeActionDesc": "Selecciona qué hacer al cerrar la ventana",
    "askEveryTime": "Preguntar cada vez",
    "closeToTray": "Minimizar a la bandeja",
    "closeApp": "Salir de la aplicación",
    "editor": "Editor",
    "autoSave": "Guardado automático",
    "autoSaveDesc": "Guardar cambios automáticamente al editar",
    "showLineNumbers": "Mostrar números de línea",
    "showLineNumbersDesc": "Mostrar números de línea en el editor",
    "theme": "Tema",
    "themeMode": "Modo de tema",
    "light": "Claro",
    "dark": "Oscuro",
    "system": "Sistema",
    "themeColor": "Color del tema",
    "desktopWorkspace": "Espacio de trabajo del escritorio",
    "homeModules": "Módulos de inicio",
    "homeModulesHint": "Al menos un módulo permanece habilitado para que el inicio de escritorio siempre conserve un espacio accesible.",
    "homeModulesReorderHint": "Arrastra los módulos habilitados para reordenar la barra lateral del inicio de escritorio.",
    "desktopModulePromptsDesc": "Edición de prompts, carpetas, etiquetas y búsqueda",
    "desktopModuleSkillsDesc": "My Skills, proyectos y flujos del store",
    "desktopModuleRulesDesc": "Espacios de reglas globales y de proyecto",
    "backgroundImage": "Imagen de fondo",
    "backgroundImageTitle": "Fondo del escritorio",
    "backgroundImageDesc": "Elige una imagen local y usala como fondo de escritorio, dale a PromptHub una apariencia mas tuya, guarda el archivo real en la biblioteca de imagenes de PromptHub, y conserva en los ajustes solo una referencia para facilitar las copias de seguridad y la migracion.",
    "backgroundImageEmpty": "Aún no se ha seleccionado ninguna imagen de fondo",
    "backgroundImagePreviewAlt": "Vista previa de la imagen de fondo",
    "selectBackgroundImage": "Elegir imagen",
    "changeBackgroundImage": "Cambiar imagen",
    "enableBackgroundImage": "Activar",
    "disableBackgroundImage": "Desactivar",
    "backgroundImageEnabledHint": "La imagen de fondo está activada actualmente en el contenedor de escritorio.",
    "backgroundImageDisabledHint": "La imagen de fondo se conserva, pero ahora está desactivada.",
    "backgroundImageOpacity": "Visibilidad del fondo",
    "backgroundImageBlur": "Intensidad del desenfoque",
    "customColor": "Personalizado",
    "customColorDesc": "Elige cualquier color y aplícalo al tema global",
    "preview": "Vista previa",
    "primary": "Principal",
    "accent": "Acento",
    "neutral": "Neutro",
    "fontSize": "Tamaño de fuente",
    "colorRoyalBlue": "Azul real",
    "colorBlue": "Azul",
    "colorPurple": "Púrpura",
    "colorGreen": "Verde",
    "colorOrange": "Naranja",
    "colorTeal": "Verde azulado",
    "fontSmall": "Pequeño",
    "fontMedium": "Mediano",
    "fontLarge": "Grande",
    "motion": {
      "title": "Animación",
      "desc": "Controla la cantidad de animación en la interfaz de escritorio. \"Estándar\" anula la configuración del sistema \"Reducir movimiento\".",
      "off": "Desactivado",
      "reduced": "Reducido",
      "standard": "Estándar"
    },
    "dataSubmenuBasic": "Ajustes básicos de datos",
    "dataSubmenuCloudBackup": "Ajustes de copia en la nube",
    "syncProviderTitle": "Fuente de sincronización actual",
    "syncProviderDesc": "Puedes habilitar varios destinos de copia de seguridad, pero la sincronización automática solo usa una fuente a la vez para evitar conflictos.",
    "syncProviderManual": "Solo copia manual",
    "syncSourceInactiveDesc": "Este destino sigue disponible para copia de seguridad y restauración manuales, pero la sincronización automática solo se ejecuta para la fuente de sincronización actual.",
    "dataSubmenuImportExport": "Ajustes de importación y exportación",
    "dataPath": "Directorio de datos",
    "dataPathDesc": "Ubicación de almacenamiento de datos de Prompt",
    "openFolder": "Abrir carpeta",
    "openLogs": "Abrir registros",
    "applicationData": "Datos de la aplicación",
    "applicationLogs": "Registros de la aplicación",
    "rulesData": "Directorio de reglas",
    "skillsData": "Directorio de Skills",
    "backupsData": "Directorio de copias de seguridad",
    "cacheData": "Caché de la aplicación",
    "cacheDataDesc": "Caché del proceso de renderizado de Electron, no afecta los datos",
    "clearCache": "Limpiar caché",
    "cacheClearedToast": "Caché limpiado",
    "confirmDataMigration": "¿Está seguro de migrar los datos al nuevo directorio?\n\nLa aplicación debe reiniciarse después de la migración.",
    "existingDataPathTitle": "El directorio de destino ya contiene datos de PromptHub",
    "existingDataPathDesc": "Si este directorio se copió desde otro equipo, elija “Cambiar a este directorio”. “Sobrescribir y migrar” reemplazará los datos de ese directorio con los datos de este equipo.",
    "detectedDataMarkers": "Datos detectados",
    "targetDataSummary": "{{prompts}} prompts, {{folders}} carpetas, {{skills}} habilidades",
    "switchToExistingDataPath": "Cambiar a este directorio",
    "overwriteAndMigrateDataPath": "Sobrescribir y migrar",
    "confirmOverwriteDataPath": "¿Sobrescribir los datos de este directorio con los datos de este equipo? PromptHub creará primero una copia de seguridad del directorio de destino.",
    "dataPathSwitchSuccess": "Directorio de datos cambiado",
    "dataPathOverwriteSuccess": "Datos migrados y copia de seguridad del destino creada",
    "restartRequired": "Por favor reinicie la aplicación",
    "restartNow": "Migración de datos completada. ¿Reiniciar la aplicación ahora?",
    "pendingDataPath": "Cambiará a este directorio después del reinicio:",
    "backup": "Copia de seguridad y restauración",
    "export": "Exportar datos",
    "exportDesc": "Exportar todos los datos a un archivo JSON",
    "selectiveExport": "Exportación selectiva",
    "selectiveExportDesc": "Exporta los datos seleccionados. Luego pueden restaurarse desde la acción de restauración.",
    "fullBackup": "Copia completa / Restaurar",
    "fullBackupDesc": "Para migración: incluye prompts, imágenes, configuración de IA, ajustes y habilidades",
    "upgradeBackups": "Revertir datos",
    "upgradeBackupsDesc": "Puntos de reversión locales creados automáticamente antes de las actualizaciones. Al restaurar se guarda el estado actual como nueva instantánea, luego se revierte y se reinicia automáticamente.",
    "upgradeBackupsLoading": "Cargando copias de actualización...",
    "upgradeBackupsEmpty": "Todavía no se encontraron copias automáticas de actualización.",
    "upgradeBackupsSummary": "{{count}} instantánea(s) de reversión",
    "upgradeBackupsSummaryCollapsed": "Por defecto solo se muestran las {{count}} más recientes",
    "upgradeBackupsSummaryExpanded": "Se está mostrando el historial completo en una lista con desplazamiento",
    "upgradeBackupsSummaryCompact": "Todas las instantáneas caben en la lista compacta",
    "upgradeBackupsShowAll": "Mostrar las {{count}}",
    "upgradeBackupLoadFailed": "No se pudieron cargar las copias de actualización",
    "upgradeBackupRestoreTitle": "Restaurar copia de actualización",
    "upgradeBackupRestoreAction": "Revertir a esta instantánea",
    "upgradeBackupRestoreConfirm": "¿Restaurar la instantánea automática creada el {{createdAt}} ({{from}}{{to}})? PromptHub primero guardará el estado actual como otra copia y luego se reiniciará automáticamente.",
    "upgradeBackupRestoreScheduled": "La copia de actualización se restauró correctamente. PromptHub se reiniciará automáticamente.",
    "upgradeBackupRestoreFailed": "No se pudo restaurar la copia de actualización",
    "upgradeBackupDeleteTitle": "Eliminar copia de actualización",
    "upgradeBackupDeleteConfirm": "¿Eliminar la instantánea automática {{backupId}}? Este historial no se podrá recuperar.",
    "upgradeBackupDeleteSuccess": "Copia de actualización eliminada",
    "upgradeBackupDeleteFailed": "No se pudo eliminar la copia de actualización",
    "upgradeBackupCreatedAt": "Fecha de la instantánea",
    "upgradeBackupItems": "Elementos incluidos",
    "backupCompressed": "Copia comprimida",
    "fullBackupExport": "Copia completa",
    "restore": "Restaurar",
    "exportPrompts": "Prompts",
    "exportFolders": "Carpetas",
    "exportImages": "Medios",
    "exportAiConfig": "Config. IA",
    "exportSettings": "Ajustes",
    "exportVersions": "Historial",
    "exportSkills": "Habilidades",
    "import": "Importar datos",
    "importDesc": "Importar datos desde un archivo JSON",
    "importPreviewTitle": "Revisar resumen de importación",
    "importPreviewFile": "Archivo",
    "importPreviewExportedAt": "Exportado el",
    "importPreviewCounts": "Se importará",
    "importPreviewBackupNotice": "PromptHub creará automáticamente una copia de seguridad local del estado actual antes de importar.",
    "importPreviewSkipped": "Registros no válidos que se omitirán",
    "importConfirmAction": "Respaldar los datos actuales e importar",
    "recoveryScanner": "Recuperación de datos históricos",
    "recoveryScannerTitle": "Recuperación de datos históricos",
    "recoveryScannerDesc": "Busca datos recuperables en directorios antiguos, carpetas manuales o copias de seguridad históricas, y permite seleccionar la fuente a restaurar.",
    "recoveryScanAction": "Escanear ahora",
    "recoveryExtraPaths": "Directorios de escaneo adicionales",
    "recoveryExtraPathsDesc": "Añade carpetas de instalaciones antiguas o directorios de datos copiados para incluirlos en el escaneo de recuperación.",
    "recoveryAddScanDir": "Añadir carpeta",
    "recoveryManualPathPlaceholder": "Pegar o escribir una ruta…",
    "recoveryAddPathBtn": "Añadir",
    "recoveryExtraPathsEmpty": "Todavía no se han añadido directorios de escaneo adicionales.",
    "recoveryScanEmpty": "No se encontraron datos históricos recuperables en las ubicaciones escaneadas.",
    "recoveryScanFailed": "No se pudieron escanear las fuentes de recuperación",
    "manualRecoveryPathExists": "Este directorio de escaneo ya fue añadido.",
    "clear": "Borrar datos",
    "clearDesc": "Eliminar todos los datos locales",
    "clearNeedPassword": "Borrar datos es una operación peligrosa. Configura primero la contraseña maestra en Seguridad",
    "dangerOperation": "Operación peligrosa",
    "enterMasterPassword": "Introduce la contraseña maestra para confirmar",
    "masterPasswordPlaceholder": "Introduce la contraseña maestra",
    "confirmClear": "Confirmar borrado",
    "enterPassword": "Introduce la contraseña maestra",
    "wrongPassword": "Contraseña incorrecta",
    "webdav": "Sincronización WebDAV",
    "webdavSyncMenu": "WebDAV",
    "webdavEnabled": "Habilitar WebDAV",
    "webdavEnabledDesc": "Sincronizar datos con el servidor WebDAV",
    "webdavUrl": "Dirección del servidor",
    "webdavUsername": "Nombre de usuario",
    "webdavPassword": "Contraseña",
    "webdavAutoSync": "Sincronización automática al iniciar",
    "webdavAutoSyncDesc": "Sincronizar automáticamente en ambas direcciones al iniciar (incluye imágenes)",
    "webdavAutoRun": "Ejecución automática",
    "webdavAutoRunDesc": "Sincronizar automáticamente a intervalos. Puede afectar el uso de batería.",
    "selfHostedAutoRun": "Sincronización automática",
    "selfHostedAutoRunDesc": "Mantiene el escritorio y tu espacio PromptHub autoalojado alineados según una programación en segundo plano.",
    "webdavSyncOnStartup": "Ejecutar una vez al iniciar",
    "webdavSyncOnStartupDesc": "Activar sincronización automáticamente después de iniciar",
    "selfHostedSyncOnStartup": "Ejecutar una vez al iniciar",
    "selfHostedSyncOnStartupDesc": "Descarga automáticamente una vez desde tu espacio PromptHub autoalojado después de iniciar el escritorio. Los cambios se aplican en el próximo arranque.",
    "webdavSyncOnSave": "Sincronización al guardar (experimental)",
    "webdavSyncOnSaveDesc": "Intentar sincronizar automáticamente cuando se guardan cambios",
    "webdavSyncOnSaveUnavailableDesc": "Reservado para compatibilidad futura. Guardar datos no activa la sincronización en la versión actual.",
    "every5min": "Cada 5 minutos",
    "every15min": "Cada 15 minutos",
    "every30min": "Cada 30 minutos",
    "every60min": "Cada 60 minutos",
    "startupImmediate": "Ejecutar inmediatamente al iniciar",
    "startupDelay5s": "Ejecutar 5 segundos después de iniciar",
    "startupDelay10s": "Ejecutar 10 segundos después de iniciar",
    "startupDelay30s": "Ejecutar 30 segundos después de iniciar",
    "webdavIncludeImages": "Incluir imágenes",
    "webdavIncludeImagesDesc": "Incluir todos los archivos de imagen al sincronizar. Desactivar para reducir el tamaño del backup y el tiempo de sincronización.",
    "webdavIncrementalSync": "Sincronización incremental",
    "webdavIncrementalSyncDesc": "Solo subir archivos modificados, reduciendo significativamente el uso de ancho de banda. La primera sincronización subirá todos los datos.",
    "webdavEncryption": "Cifrar backup (Experimental)",
    "webdavEncryptionDesc": "Cifrar datos de backup con AES-256. Advertencia: ¡Olvidar la contraseña hará que los datos sean irrecuperables!",
    "webdavEncryptionPassword": "Contraseña de cifrado",
    "webdavEncryptionPasswordPlaceholder": "Introducir contraseña de cifrado (opcional, dejar vacío para omitir)",
    "s3Storage": "Almacenamiento compatible con S3",
    "s3SyncMenu": "Almacenamiento compatible con S3",
    "s3StorageDesc": "Configura un destino de copia de seguridad de almacenamiento de objetos compatible con S3, como AWS S3, Cloudflare R2, OSS o COS.",
    "s3StorageUnavailableDesc": "La sincronización con S3 aún no está disponible en esta versión. La conexión, carga, descarga y sincronización automática permanecen deshabilitadas.",
    "s3Endpoint": "Endpoint API",
    "s3Region": "Región",
    "s3Bucket": "Bucket",
    "s3AccessKeyId": "Access Key ID",
    "s3SecretAccessKey": "Secret Access Key",
    "s3BackupPrefix": "Directorio de copia (opcional)",
    "s3AutoSync": "Sincronización automática",
    "s3AutoSyncDesc": "Elige con qué frecuencia PromptHub debe usar este destino compatible con S3.",
    "selectImageModels": "Seleccionar modelos de imagen",
    "testConnection": "Probar conexión",
    "upload": "Subir",
    "download": "Descargar",
    "dbInfo": "Rutas de datos locales",
    "aiConfig": "Configuración del modelo de IA",
    "provider": "Proveedor de servicio",
    "apiKey": "API Key",
    "apiUrl": "Dirección API",
    "model": "Modelo",
    "selectModel": "Seleccionar modelo preestablecido...",
    "customModel": "O introduce un nombre de modelo personalizado",
    "saveConfig": "Guardar configuración",
    "aiConfigSaved": "Configuración de IA guardada",
    "aiConfigDesc1": "Después de configurar el modelo de IA, puedes probar efectos en la página de detalles del Prompt",
    "aiConfigDesc2": "La API Key se almacena de forma segura localmente, no se sube a ningún servidor",
    "aiConfigDesc3": "Soporta APIs compatibles con formato OpenAI",
    "aiConfigDesc4": "El nombre del modelo se puede introducir manualmente, no limitado a la lista preestablecida",
    "translationMode": "Modo de traducción",
    "translationModeDesc": "Elige cómo la IA traduce el contenido de las habilidades",
    "translationImmersive": "Traducción inmersiva",
    "translationImmersiveDesc": "El texto original y traducido se muestran alternadamente, párrafo por párrafo",
    "translationFull": "Traducción completa",
    "translationFullDesc": "Reemplaza el texto original con el contenido completamente traducido",
    "selectLanguage": "Seleccionar idioma de la interfaz",
    "languageChangeHint": "Después de cambiar el idioma, necesitas actualizar la página.",
    "refreshNow": "Actualizar ahora",
    "enableNotifications": "Habilitar notificaciones",
    "enableNotificationsDesc": "Permitir que la aplicación envíe notificaciones de escritorio",
    "copyNotification": "Notificación de copia exitosa",
    "copyNotificationDesc": "Mostrar notification después de copiar Prompt",
    "behaviorPreferences": "Comportamiento y preferencias",
    "tagFilterMode": "Modo de clic en etiquetas",
    "tagFilterModeDesc": "Elige si hacer clic en una etiqueta reemplaza el filtro actual o la añade a una selección múltiple",
    "tagFilterModeSingle": "Selección única",
    "tagFilterModeMulti": "Selección múltiple",
    "saveNotification": "Notificación de guardado exitoso",
    "saveNotificationDesc": "Mostrar notificación después de guardar cambios",
    "version": "Version",
    "checkUpdate": "Buscar actualizaciones",
    "checking": "Comprobando...",
    "updateAvailable": "Nueva versión disponible",
    "updateAvailableDesc": "Versión {{version}} disponible, ¿descargar?",
    "newVersion": "v{{version}} disponible",
    "macManualInstall": "¡Descarga completada! Debido a las restricciones de firma de macOS, instale manualmente:\n\n1. Abra la carpeta Descargas\n2. Haga doble clic en el instalador DMG\n3. Si ve una advertencia de seguridad, permítalo en Configuración del Sistema > Privacidad y Seguridad\n\nSi instaló a través de Homebrew, simplemente ejecute:\nbrew upgrade --cask prompthub",
    "homebrewUpdateHint": "Esta instalación de PromptHub proviene de Homebrew. Actualícela con Homebrew en lugar de usar el actualizador DMG integrado.",
    "homebrewUpdateRequired": "Esta instalación de PromptHub parece provenir de Homebrew. Ejecute 'brew upgrade --cask prompthub' en lugar de usar el actualizador integrado.",
    "openReleasesPage": "Abrir Releases",
    "openDownloadFolder": "Abrir Descargas",
    "manualDownload": "Descarga manual",
    "manualDownloadHint": "¿Falló la actualización automática? Puede descargar manualmente la última versión:",
    "noUpdate": "Ya tienes la última versión",
    "noUpdateDesc": "La versión actual {{version}} es la más reciente",
    "downloading": "Descargando...",
    "downloadProgress": "Progreso de descarga: {{percent}}%",
    "downloadComplete": "Descarga completada",
    "downloadCompleteDesc": "La nueva versión se ha descargado, ¿instalar ahora?",
    "installRestartHint": "Al instalar, la app se cerrará y se iniciará el instalador.",
    "installNow": "Instalar ahora",
    "installLater": "Instalar después",
    "downloadUpdate": "Descargar actualización",
    "backupBeforeUpgrade": "Crear copia completa",
    "backupDropRestore": "Arrastra para restaurar una copia",
    "backupDropRestoreDesc": "Arrastra aquí un archivo de copia de seguridad de PromptHub para revisarlo y restaurarlo rápidamente.",
    "backupDropRestoreFormats": "Compatible con: .json, .phub.gz, .gz, .zip",
    "backupDropUnsupported": "Suelta un archivo de copia de seguridad de PromptHub (.json, .phub.gz, .gz o .zip).",
    "backupRequiredForUpgrade": "Se requiere una copia manual antes de actualizar desde la app",
    "backupRequiredForUpgradeDesc": "Crea primero una copia manual de la versión actual para desbloquear la instalación. Justo antes de iniciar el instalador, PromptHub seguirá creando una instantánea local automática.",
    "backupOptionalForUpgradeDesc": "Si quieres exportar una copia completa adicional, puedes hacerlo aquí primero. También puedes continuar con la instalación sin esa exportación. PromptHub creará automáticamente una instantánea local justo antes de instalar.",
    "backupMissingForUpgrade": "Se requiere una copia manual de la versión {{version}} antes de instalar. Cuando empiece la instalación, PromptHub también creará una instantánea local automática.",
    "backupReadyForUpgrade": "Copia manual registrada a las {{time}}. La instalación ya está desbloqueada, y PromptHub también creará una instantánea local automática antes de instalar.",
    "backupConfirmUpgrade": "Ya he respaldado los datos relevantes y entiendo que la app se cerrará durante la instalación.",
    "backupConfirmRequired": "Confirma la copia de seguridad antes de continuar con la actualización.",
    "skipVersion": "Omitir esta versión",
    "releaseNotes": "Notas de la versión",
    "autoCheckUpdate": "Buscar actualizaciones automáticamente",
    "autoCheckUpdateDesc": "Buscar nuevas versiones automáticamente al iniciar",
    "tryMirrorSource": "Usar servidor espejo",
    "usingMirrorSource": "Accediendo a través del espejo acelerador...",
    "mirrorSourceDesc": "Los espejos de aceleración son proporcionados por terceros. El contenido suele coincidir con el oficial.",
    "mirrorSourceRisk": "Si está habilitado, la aplicación intentará automáticamente los espejos cuando falle la fuente oficial. Los espejos son generalmente seguros pero no están mantenidos oficialmente. Se recomienda solo si la descarga oficial es lenta.",
    "projectInfo": "Información del proyecto",
    "projectInfoDesc1": "Una caja de herramientas de IA todo en uno para gestionar prompts, skills y activos de agentes",
    "projectInfoDesc2": "Reutiliza prompts, distribuye skills con un clic y gestiona activos de agentes en un solo lugar",
    "projectInfoDesc3": "Con sincronización en la nube, copias de seguridad, control de versiones y privacidad local primero",
    "cliTitle": "CLI",
    "cliShortDesc": "Instala la herramienta de línea de comandos para gestionar prompts y skills desde la terminal.",
    "cliFeatureTitle": "Funciones",
    "cliFeatureDesc": "Una vez instalado, usa el comando prompthub en tu terminal:\n• Crear, editar y buscar prompts\n• Instalar, actualizar y desinstalar skills\n• Gestionar reglas y reglas de proyecto\n• Exportar/importar el espacio de trabajo completo",
    "cliStandaloneDesc": "PromptHub CLI se distribuye como paquete independiente y puede instalarse globalmente sin compilar desde el código fuente.",
    "cliInstallHint": "El instalador usa el tarball de la release actual de GitHub y ejecuta un comando estándar de instalación global con npm o pnpm.",
    "cliInstallStatus": "Estado de instalación",
    "cliCheckingStatus": "Comprobando si el comando `prompthub` está disponible...",
    "cliInstalled": "Instalado",
    "cliInstalledDesc": "El comando `prompthub` está disponible en esta máquina. Versión actual: {{version}}",
    "cliNotInstalled": "No instalado",
    "cliNotInstalledDesc": "El comando `prompthub` todavía no está disponible en esta máquina.",
    "cliCommandLabel": "Comando CLI",
    "cliCommandDesc": "El comando de shell que podrás ejecutar después de instalarlo",
    "cliInstallSourceLabel": "Fuente de instalación",
    "cliInstallSourceDesc": "El tarball de la release de GitHub usado para la instalación con un clic",
    "cliInstallSourcePending": "El tarball de la release actual todavía no está disponible",
    "cliVersionLabel": "Versión",
    "cliPackageManagerLabel": "Gestor de paquetes detectado",
    "cliPackageManagerDesc": "PromptHub prioriza pnpm cuando está disponible; si no, usa npm",
    "cliPackageManagerMissing": "No se detectó pnpm ni npm en el PATH",
    "cliActionsTitle": "Instalar y actualizar",
    "cliInstallWith": "Instalar con {{manager}}",
    "cliRefreshStatus": "Actualizar estado",
    "cliInstallSuccess": "PromptHub CLI se instaló correctamente",
    "cliInstallFailed": "No se pudo instalar PromptHub CLI",
    "cliStatusLoadFailed": "No se pudo cargar el estado de PromptHub CLI",
    "openSource": "Proyecto de código abierto",
    "projectRepository": "Repositorio del proyecto",
    "projectRepositoryDesc": "Ver el código fuente y las versiones de PromptHub en GitHub",
    "communityTitle": "Comunidad",
    "communityDiscord": "Comunidad de Discord",
    "communityDiscordDesc": "Únete a la comunidad de Discord de PromptHub para anuncios y conversaciones",
    "communityQQ": "Grupo de QQ",
    "communityQQDesc": "Primero intenta abrir el grupo de QQ directamente. Si QQ no salta, busca manualmente el número de grupo {{group}} en el cliente",
    "communityQQCopy": "Copiar ID",
    "communityQQCopied": "Número de grupo QQ {{group}} copiado",
    "viewOnGithub": "Ver en GitHub",
    "reportIssue": "Reportar problema",
    "reportIssueDesc": "Enviar problemas o sugerencias en GitHub",
    "author": "Información del autor",
    "contactAuthor": "Contactar al autor",
    "overseas": "Servicios internacionales",
    "domestic": "Servicios nacionales",
    "other": "Otros",
    "description": "Descripción",
    "compareModels": "Prueba de comparación de modelos",
    "enableCompare": "Habilitar modo de comparación",
    "runCompare": "Iniciar prueba de comparación",
    "modelType": "Tipo de modelo",
    "chatModel": "Modelo de chat",
    "imageModel": "Modelo de imagen",
    "imageSize": "Tamaño de imagen",
    "imagePrompt": "Prompt de imagen",
    "imageQuality": "Calidad de imagen",
    "imageStyle": "Estilo de imagen",
    "qualityStandard": "Estándar",
    "qualityHD": "HD",
    "styleVivid": "Vívido",
    "styleNatural": "Natural",
    "testImage": "Probar generación de imagen",
    "configImageModel": "Por favor, configura primero un modelo de imagen",
    "imageGenSuccess": "Imagen generada con éxito",
    "generatedImages": "Imágenes generadas",
    "noImageModel": "No hay modelo de imagen configurado",
    "noImageModelHint": "Por favor, configura primero un modelo de imagen en los ajustes",
    "multiModelCompare": "Comparación de múltiples modelos",
    "chatModels": "Modelos de chat",
    "imageModels": "Modelos de imagen",
    "addChatModel": "Añadir modelo de chat",
    "addImageModel": "Añadir modelo de imagen",
    "editChatModel": "Editar modelo de chat",
    "editImageModel": "Editar modelo de imagen",
    "customName": "Nombre personalizado",
    "customNameOptional": "Nombre personalizado (opcional)",
    "customNamePlaceholder": "Ej: Mi GPT-4o, Para trabajo",
    "providerName": "Proveedor",
    "modelName": "Nombre del modelo",
    "modelNamePlaceholder": "Ej: gpt-4o, deepseek-chat",
    "fetchModels": "Obtener modelos",
    "fillApiFirst": "Primero completa la API Key y la dirección API",
    "modelsLoaded": "{{count}} modelos cargados",
    "noModelsFound": "No se encontraron modelos disponibles",
    "selectModels": "Seleccionar modelos",
    "searchModels": "Buscar ID o nombre del modelo...",
    "totalModels": "{{count}} modelos en total",
    "filteredModels": "{{count}} coincidencias",
    "noModelsMatch": "No hay modelos coincidentes",
    "modelAlreadyAdded": "Ya añadido",
    "endpointPreview": "Vista previa",
    "addedCount": "{{count}} añadidos",
    "addAll": "Añadir todos",
    "apiKeyPlaceholder": "Introduce la API Key",
    "apiUrlPlaceholder": "https://api.example.com/v1",
    "saveChanges": "Guardar cambios",
    "addModel": "Añadir modelo",
    "setDefault": "Establecer como predeterminado",
    "deleteModel": "Eliminar",
    "confirmDelete": "¿Estás seguro de eliminar esta configuración de modelo?",
    "modelAdded": "Modelo añadido",
    "modelUpdated": "Modelo actualizado",
    "autoFillDisabled": "Autocompletado desactivado (#)",
    "apiUrlHint": "Termina con # para desactivar por completo el autocompletado",
    "aiWorkbenchApiUrlGuide": "Introduce solo la URL base del proveedor o la raíz de versión. PromptHub completará automáticamente la ruta final de la petición. Si quieres conservar exactamente la dirección que escribiste, añade # al final y PromptHub dejará de añadir cualquier ruta tanto en la URL guardada como en la vista previa de la petición.",
    "aiWorkbenchApiUrlExamplesLabel": "Ejemplos",
    "aiWorkbenchApiUrlBaseLabel": "Base URL guardada",
    "aiWorkbenchApiUrlRequestLabel": "Vista previa del endpoint solicitado",
    "aiWorkbenchApiUrlDetectedFullEndpoint": "Se detectó una ruta de endpoint completa. PromptHub la normalizará a la URL base al perder foco o guardar.",
    "fillComplete": "Por favor completa la configuración del modelo",
    "noModelsHint": "Después de añadir modelos, puedes hacer pruebas de comparación en la página de detalles del Prompt",
    "testConnectionBtn": "Probar conexión",
    "aiWorkbenchTitle": "Banco de trabajo de modelos IA",
    "aiWorkbenchDescription": "Administra los modelos globales de IA y define el modelo predeterminado para cada escenario.",
    "aiWorkbenchTestDefault": "Probar modelo predeterminado",
    "aiWorkbenchStatusOverview": "Resumen de estado",
    "aiWorkbenchScenarioDefaults": "Modelos predeterminados por escenario",
    "aiWorkbenchEndpoints": "Cuentas / endpoints configurados",
    "aiWorkbenchNoModels": "Todavía no hay modelos configurados. Añade primero un modelo de chat o de imagen.",
    "aiWorkbenchDefaultLabel": "Predeterminado",
    "aiWorkbenchUsingLabel": "Usa",
    "aiWorkbenchTranslationCapability": "Capacidad de traducción",
    "aiWorkbenchEnabled": "Activado",
    "aiWorkbenchPending": "Pendiente",
    "aiWorkbenchNotConfigured": "No configurado",
    "aiWorkbenchUnverified": "Sin verificar",
    "aiWorkbenchConnected": "Conectado",
    "aiWorkbenchModelCount": "{{count}} modelos",
    "aiWorkbenchMissingModelConfig": "Falta una configuración completa del modelo",
    "aiWorkbenchFollowGlobalDefault": "Seguir el predeterminado global de este tipo",
    "aiWorkbenchScenarioQuickAdd": "Análisis de Quick Add",
    "aiWorkbenchScenarioQuickAddDesc": "Analiza la entrada libre y genera un primer borrador de Prompt.",
    "aiWorkbenchScenarioPromptTest": "Prueba de texto del Prompt",
    "aiWorkbenchScenarioPromptTestDesc": "Se usa en la página de detalle del Prompt y en pruebas de IA basadas en texto.",
    "aiWorkbenchScenarioImageTest": "Prueba de imagen del Prompt",
    "aiWorkbenchScenarioImageTestDesc": "Modelo predeterminado para probar Prompts de imagen.",
    "aiWorkbenchScenarioTranslation": "Traducción / edición bilingüe",
    "aiWorkbenchScenarioTranslationDesc": "Se usa en los flujos de traducción de Prompt y Skill.",
    "aiWorkbenchBadgeQuickAdd": "Quick Add predeterminado",
    "aiWorkbenchBadgePromptTest": "Prueba de texto predeterminada",
    "aiWorkbenchBadgeImageTest": "Prueba de imagen predeterminada",
    "aiWorkbenchBadgeTranslation": "Traducción predeterminada",
    "aiWorkbenchLegacyBannerTitle": "Se detectó una configuración heredada de un solo modelo",
    "aiWorkbenchLegacyBannerDesc": "Las funciones de IA existentes siguen funcionando, pero el nuevo banco de trabajo necesita importar esa configuración a la lista multi-modelo.",
    "aiWorkbenchImportLegacy": "Importar configuración heredada",
    "aiWorkbenchLegacyImported": "Configuración heredada importada",
    "aiWorkbenchFetchModelsFailed": "No se pudo cargar la lista de modelos",
    "aiWorkbenchFetchModelsUnsupported": "Este proveedor no devolvió un endpoint compatible para listar modelos. Aun así puedes introducir manualmente el ID del modelo.",
    "aiWorkbenchFetchModelsNetworkError": "No se pudo alcanzar el endpoint de lista de modelos. Revisa la URL de la API, la red, el proxy o la política CORS.",
    "aiWorkbenchFetchModelsAuthError": "La solicitud de lista de modelos fue rechazada. Revisa tu API Key y los permisos del proveedor.",
    "aiWorkbenchFetchModelsEmpty": "El proveedor no devolvió ningún modelo. Si oculta ese endpoint, introduce manualmente el ID del modelo.",
    "aiWorkbenchConnectionNetworkError": "La solicitud falló antes de que el proveedor respondiera. Revisa la URL de la API, la red, el proxy o la política CORS.",
    "aiWorkbenchConnectionAuthError": "El proveedor rechazó esta solicitud. Revisa tu API Key, los permisos de la cuenta y la ruta del endpoint.",
    "aiWorkbenchCorsBlocked": "El navegador bloqueó esta solicitud cross-origin (CORS) hacia {{target}}. Habilita CORS en el proveedor o usa un proxy del lado de la app.",
    "aiWorkbenchCorsBlockedDev": "El navegador bloqueó esta solicitud cross-origin (CORS). La página actual {{origin}} no puede llamar directamente a {{target}}. Habilita CORS en el proveedor o enruta esta solicitud por el proceso principal de Electron.",
    "aiWorkbenchInvalidCustomParams": "Los parámetros personalizados deben ser un objeto JSON con valores de tipo cadena, número o booleano",
    "aiWorkbenchModelDeleted": "Modelo eliminado",
    "aiWorkbenchIncompleteModel": "La configuración de este modelo está incompleta y no se puede probar",
    "aiWorkbenchEndpointNotTestable": "Este endpoint todavía no tiene un modelo completo que se pueda probar",
    "aiWorkbenchEndpointConnected": "Endpoint conectado ({{latency}}ms)",
    "aiWorkbenchEndpointUpdated": "Endpoint actualizado",
    "aiWorkbenchModelTestSuccess": "prueba exitosa",
    "aiWorkbenchModelTestFailed": "prueba fallida",
    "aiWorkbenchNoDefaultModel": "Todavía no hay un modelo predeterminado disponible para probar",
    "aiWorkbenchTypeDefault": "Predeterminado de este tipo",
    "aiWorkbenchAdvancedParamsDesc": "La temperatura, la salida en streaming, el modo de razonamiento y otros parámetros siguen configurándose por modelo.",
    "aiWorkbenchConfigure": "Configurar",
    "aiWorkbenchEditModel": "Editar modelo",
    "aiWorkbenchModelModalSubtitle": "Los cambios guardados se aplican de inmediato y participan en el enrutamiento por escenario.",
    "aiWorkbenchChatParamsDesc": "Configura los parámetros de generación para este modelo de chat.",
    "aiWorkbenchImageParamsDesc": "Configura los parámetros de generación de imágenes para este modelo.",
    "aiWorkbenchTestDraft": "Probar configuración actual",
    "aiWorkbenchEditEndpoint": "Editar endpoint",
    "aiWorkbenchEditEndpointSubtitle": "Actualiza a la vez el provider, la API Key y la URL API de todos los modelos bajo este endpoint.",
    "aiWorkbenchTestAction": "Probar",
    "aiWorkbenchEndpointAddressMissing": "Dirección no configurada",
    "protocol": "Protocolo",
    "protocolOpenAICompatible": "Compatible con OpenAI",
    "protocolGeminiCompatible": "Compatible con Gemini",
    "protocolAnthropicCompatible": "Compatible con Anthropic",
    "advancedParams": "Parámetros avanzados",
    "showAdvancedParams": "Mostrar parámetros avanzados",
    "hideAdvancedParams": "Ocultar parámetros avanzados",
    "temperature": "Temperatura",
    "temperatureDesc": "Controla la aleatoriedad, valores más altos = más aleatorio (0-2)",
    "maxTokens": "Tokens máximos",
    "maxTokensDesc": "Limita el número máximo de tokens de salida",
    "topP": "Top P",
    "topPDesc": "Parámetro de muestreo nuclear, controla la diversidad (0-1)",
    "topK": "Top K",
    "topKDesc": "Limita el número de candidatos por paso",
    "frequencyPenalty": "Penalización de frecuencia",
    "frequencyPenaltyDesc": "Reduce la repetición de palabras (-2 a 2)",
    "presencePenalty": "Penalización de presencia",
    "presencePenaltyDesc": "Fomenta discutir nuevos temas (-2 a 2)",
    "streamOutput": "Salida en streaming",
    "streamOutputDesc": "Mostrar respuesta de IA en tiempo real en lugar de esperar la respuesta completa",
    "enableThinking": "Modo de pensamiento",
    "enableThinkingDesc": "Ver el proceso de razonamiento del modelo (requiere soporte del modelo)",
    "thinkingContent": "Proceso de pensamiento",
    "imageN": "Número de imágenes",
    "imageNDesc": "Número de imágenes a generar a la vez",
    "shortcuts": "Atajos",
    "globalShortcuts": "Atajos globales",
    "shortcutShowApp": "Mostrar/Ocultar aplicación",
    "shortcutShowAppDesc": "Mostrar rápidamente la ventana de la aplicación desde cualquier lugar",
    "shortcutNewPrompt": "Nuevo Prompt",
    "shortcutNewPromptDesc": "Crear rápidamente un nuevo Prompt",
    "shortcutSearch": "Buscar",
    "shortcutSearchDesc": "Abrir rápidamente el cuadro de búsqueda",
    "shortcutSettings": "Abrir configuración",
    "shortcutSettingsDesc": "Abrir rápidamente la página de configuración",
    "shortcutOptions": "Opciones de atajos",
    "shortcutMode": "Modo",
    "shortcutModeGlobal": "Global",
    "shortcutModeLocal": "Local",
    "shortcutModeDesc": "Los atajos globales funcionan en cualquier aplicación. Los atajos locales solo funcionan cuando PromptHub está activo",
    "enableGlobalShortcuts": "Habilitar atajos globales",
    "enableGlobalShortcutsDesc": "Permitir que los atajos funcionen en otras aplicaciones",
    "shortcutTips": "Consejos",
    "shortcutTip1": "Haz clic en el campo de entrada y presiona la combinación de teclas deseada",
    "shortcutTip2": "Los atajos deben incluir una tecla modificadora (Ctrl/Cmd/Alt/Shift) y una tecla normal",
    "shortcutTip3": "Algunos atajos pueden entrar en conflicto con el sistema u otras aplicaciones",
    "notSet": "No establecido",
    "pressKeys": "Presiona las teclas...",
    "clearShortcut": "Borrar atajo",
    "shortcutConflict": "El atajo está en conflicto con \"{{key}}\"",
    "conflictWith": "Conflicto con \"{{key}}\"",
    "shortcutUpdated": "Atajo actualizado",
    "shortcutCleared": "Atajo borrado",
    "customParams": "Parámetros personalizados",
    "addCustomParam": "Añadir parámetro",
    "customParamsDesc": "Añadir parámetros de solicitud personalizados, ej: max_completion_tokens",
    "paramName": "Nombre del parámetro",
    "paramValue": "Valor del parámetro",
    "clipboardImport": "Importación automática del portapapeles",
    "clipboardImportDesc": "Detectar JSON de Prompt en el portapapeles y solicitar importación cuando la ventana esté enfocada",
    "shareJSON": "Compartir como JSON",
    "skill": "Gestión de agentes",
    "platformSkillPaths": "Directorios de destino por plataforma",
    "platformSkillPathsDesc": "Sobrescribe el directorio Skill predeterminado de cada herramienta de IA. Esto afecta el escaneo, la distribución, la desinstalación y la detección del estado de instalación.",
    "platformSkillPathPlaceholder": "Déjalo vacío para usar la ruta predeterminada, por ejemplo ~/.trae-cn/skills",
    "defaultPathLabel": "Ruta predeterminada",
    "resetPlatformSkillPath": "Usar predeterminada",
    "trackRulesPlatform": "Mostrar esta plataforma",
    "platformEnabled": "Habilitada",
    "platformDisabled": "Deshabilitada",
    "extraSkillScanPaths": "Directorios de escaneo extra",
    "extraSkillScanPathsDesc": "Agrega directorios extra de Skills para importación y descubrimiento. No reemplazan los directorios predeterminados de cada plataforma.",
    "customSkillScanPaths": "Rutas de escaneo personalizadas",
    "customSkillScanPathsDesc": "Agregue directorios que contienen sus archivos de habilidades para incluirlos en los escaneos.",
    "customSkillScanPathPlaceholder": "Ingrese ruta, ej: ~/myskills",
    "addPath": "Agregar",
    "noCustomPaths": "No se han agregado rutas personalizadas",
    "skillBackupHint": "Para respaldar y restaurar habilidades, ve al panel \"Datos\" → Copia completa / Restaurar",
    "skillBackupHintLink": "Ir al panel Datos",
    "builtinSkillScanPaths": "Rutas de escaneo integradas (solo lectura)",
    "builtinSkillScanPathsDesc": "Los siguientes directorios de habilidades de herramientas IA son escaneados automáticamente por PromptHub.",
    "githubTokenTitle": "Token de acceso de GitHub",
    "githubTokenDesc": "Opcional. Configura un token de acceso personal de GitHub (clásico o fine-grained) para que las solicitudes del Skill Store usen tu límite autenticado (5 000 req/h) en lugar del límite anónimo de 60 req/h. El token solo se envía a api.github.com y raw.githubusercontent.com.",
    "githubTokenPlaceholder": "ghp_… o github_pat_…",
    "githubTokenShow": "Mostrar token",
    "githubTokenHide": "Ocultar token",
    "githubTokenLearnMore": "Crear un token de acceso personal",
    "githubTokenScopeHint": "Con un token de solo lectura sin ningún scope (para repositorios públicos) es suficiente para el Skill Store.",
    "skillInstallMethod": "Método de instalación de habilidades",
    "skillInstallMethodDesc": "Elija cómo instalar habilidades desde PromptHub hacia plataformas de herramientas IA.",
    "skillInstallSymlink": "Enlace simbólico",
    "skillInstallSymlinkDesc": "Crea un enlace simbólico en el directorio de la plataforma apuntando a la carpeta Skills de PromptHub. Más eficiente para actualizaciones sincronizadas.",
    "skillInstallCopy": "Copiar archivo",
    "skillInstallCopyDesc": "Copia SKILL.md directamente al directorio de la plataforma. Independiente del directorio de PromptHub.",
    "platformDisplayOrder": "Orden de plataformas",
    "platformDisplayOrderDesc": "Controla qué plataformas de agente están habilitadas y el orden en que aparecen en Skills y Rules.",
    "resetPlatformDisplayOrder": "Restablecer",
    "movePlatformUp": "Mover arriba",
    "movePlatformDown": "Mover abajo",
    "addNModels": "Agregar {{count}} modelos",
    "selectedModels": "{{count}} seleccionado(s)",
    "webWorkspace": "Espacio web",
    "webRuntime": "Runtime web",
    "selfHostedWeb": "Web autoalojado",
    "selfHostedSyncMenu": "PromptHub autoalojado",
    "selfHostedWebDesc": "Este espacio corresponde al despliegue autoalojado de PromptHub Web. Conserva la experiencia principal del desktop, pero muestra controles y límites propios del navegador.",
    "webSkillSettingsDesc": "El espacio web autoalojado mantiene el contenido de Skills dentro del mismo conjunto de respaldo, pero no gestiona directorios locales de plataforma, enlaces simbólicos ni flujos de distribución exclusivos del desktop.",
    "webDataPathPlaceholder": "Directorio de datos web autoalojado de PromptHub",
    "webOrigin": "Origen del sitio",
    "browserSession": "Sesión del navegador",
    "browserSessionDesc": "La autenticación y el acceso se gestionan desde esta sesión del navegador, no desde los servicios runtime del desktop.",
    "currentUser": "Usuario actual",
    "connectedClient": "Cliente conectado",
    "connectedClientDesc": "El navegador y el sistema operativo conectados actualmente a este espacio autoalojado de PromptHub.",
    "connectedDevices": "Dispositivos conectados",
    "connectedDevicesDesc": "Clientes de escritorio y navegador que se han conectado recientemente a este espacio autoalojado de PromptHub.",
    "deviceManagement": "Gestión de dispositivos",
    "deviceManagementDesc": "Gestiona clientes conectados, la cadencia de respaldo del desktop y la actualización del Skill Store.",
    "currentDevice": "Dispositivo actual",
    "clientSync": "Sincronización de clientes",
    "deviceSyncCadence": "Cadencia de sincronización de clientes",
    "deviceSyncCadenceDesc": "Define con qué frecuencia los clientes desktop y navegador deben sincronizarse con este espacio autoalojado de PromptHub.",
    "deviceType": "Tipo de dispositivo",
    "deviceTypeDesktop": "Cliente de escritorio",
    "deviceTypeBrowser": "Cliente del navegador",
    "devicePlatform": "Plataforma",
    "deviceVersion": "Versión",
    "deviceLastSeen": "Última actividad",
    "noConnectedDevices": "Todavía no se ha informado de ningún dispositivo conectado.",
    "refreshDevices": "Actualizar",
    "syncCadenceManual": "Solo manual",
    "syncCadence15m": "Cada 15 minutos",
    "syncCadence1h": "Cada hora",
    "syncCadence1d": "Cada día",
    "storeSync": "Sincronización de la tienda",
    "storeAutoSync": "Auto-sync del Skill Store",
    "storeAutoSyncDesc": "Mantén actualizadas automáticamente las fuentes oficiales y conectadas para que web y desktop vean los mismos Skills instalables.",
    "storeSyncCadence": "Cadencia de refresco de la tienda",
    "storeSyncCadenceDesc": "Define con qué frecuencia la app web autoalojada debe refrescar las fuentes de Skills conectadas.",
    "storeSyncHint": "Las fuentes del Skill Store deben mantenerse al día en segundo plano para que web y desktop compartan el mismo catálogo instalable.",
    "registrationMode": "Modo de registro",
    "registrationOpen": "Registro público habilitado",
    "registrationClosed": "Registro público deshabilitado",
    "signOut": "Cerrar sesión",
    "webUpdatesManagedDesc": "Las actualizaciones del web autoalojado se gestionan mediante tu flujo de despliegue. Descarga la nueva versión y vuelve a desplegar el servicio en lugar de usar la actualización integrada del desktop.",
    "selfHostedSyncDesc": "Use su PromptHub Web desplegado como destino de copia de seguridad y fuente de restauración de datos de escritorio sin WebDAV.",
    "webLoginPassword": "Contraseña de inicio de sesión",
    "webLoginPasswordDesc": "Cambia la contraseña usada para iniciar sesión en este espacio web autoalojado.",
    "webPasswordTooShort": "La nueva contraseña debe tener al menos 8 caracteres",
    "webPasswordChangeSuccess": "Contraseña de inicio de sesión cambiada correctamente",
    "webPasswordChangeFailed": "No se pudo cambiar la contraseña de inicio de sesión",
    "webNewLoginPasswordPlaceholder": "Introduce la nueva contraseña (mín. 8 caracteres)",
    "webConfirmLoginPasswordPlaceholder": "Confirma la nueva contraseña",
    "skillSafetyChecks": "Comprobaciones de seguridad de Skills",
    "skillSafetyChecksDesc": "Controla los escaneos automáticos de seguridad para Skills instaladas y las comprobaciones previas a la instalación desde la tienda.",
    "autoScanInstalledSkills": "Escanear automáticamente las Skills instaladas",
    "autoScanInstalledSkillsDesc": "Ejecuta automáticamente un escaneo de seguridad al abrir la página de detalle de una Skill para detectar cambios de alto riesgo.",
    "autoScanStoreSkillsBeforeInstall": "Escaneo de seguridad antes de instalar",
    "autoScanStoreSkillsBeforeInstallDesc": "Desactivado por defecto. Al activarlo, se ejecuta un escaneo de seguridad antes de añadir una Skill desde la tienda y se bloquean las entradas claramente peligrosas.",
    "batchScanInstalledSkills": "Escanear ahora todas las Skills instaladas",
    "batchScanInstalledSkillsDesc": "Ejecuta manualmente un escaneo de seguridad sobre todas las Skills de tu biblioteca para localizar rápidamente contenido de alto riesgo.",
    "batchScanInstalledSkillsResult": "{{total}} Skills comprobadas · bloqueadas {{blocked}} · alto riesgo {{highRisk}} · advertencias {{warn}}",
    "stableChannel": "Canal estable",
    "previewChannel": "Canal de vista previa",
    "joinPreviewChannel": "Canal de vista previa",
    "joinPreviewChannelDesc": "Cuando está activado, la búsqueda de actualizaciones solo usa builds de vista previa / prerelease de GitHub Releases. Las versiones estables se comprueban de nuevo al desactivarlo.",
    "previewChannelWarning": "Las builds de vista previa pueden ser inestables. Haz una copia de seguridad antes de actualizar y úsalas principalmente para probar correcciones.",
    "previewChannelConfirmTitle": "¿Activar actualizaciones de vista previa?",
    "previewChannelConfirmSubtitle": "Las actualizaciones de vista previa son opcionales. Al activarlas, PromptHub solo comprueba builds prerelease y no cambia automáticamente a versiones estables.",
    "previewChannelConfirmRisk": "Las builds de vista previa pueden incluir regresiones, comportamientos incompletos o casos de migración que todavía no se han validado por completo.",
    "previewChannelConfirmBackup": "Antes de activarlas, crea una copia de seguridad manual o una exportación para poder volver atrás con seguridad si algo falla.",
    "previewChannelConfirmConsent": "Desactiva el canal de vista previa para volver a las actualizaciones estables. Si tu versión de vista previa es más reciente que la última estable, PromptHub no bajará de versión automáticamente.",
    "previewChannelConfirmCancel": "Seguir con el canal estable",
    "previewChannelConfirmEnable": "Activar actualizaciones de vista previa",
    "previewChannelActiveDesc": "Versión: {{version}} · Solo actualizaciones de vista previa"
  },
  "import": {
    "clipboardTitle": "Importar Prompt desde el portapapeles",
    "detectedPrompt": "Datos de Prompt detectados",
    "detectedDesc": "El contenido del portapapeles coincide con el formato Prompt. ¿Desea importarlo a su biblioteca?"
  },
  "auth": {
    "loginTitle": "Iniciar sesión en PromptHub",
    "registerTitle": "Crear cuenta",
    "username": "Nombre de usuario",
    "password": "Contraseña",
    "signIn": "Iniciar sesión",
    "register": "Registrarse",
    "needAccount": "¿No tienes cuenta? Regístrate",
    "haveAccount": "¿Ya tienes cuenta? Inicia sesión",
    "loginError": "Nombre de usuario o contraseña incorrectos",
    "registerError": "Error al registrarse",
    "setupBadge": "Configuración inicial",
    "setupTitle": "Configura tu PromptHub autoalojado",
    "setupDescription": "Esta instalación todavía no se ha inicializado. Crea la primera cuenta administradora para habilitar el espacio web.",
    "setupHint": "La primera cuenta se convierte en el administrador local de esta instancia autoalojada. Después de la inicialización, puedes gestionar los datos y la restauración de este espacio desde la configuración y las copias de seguridad.",
    "confirmPassword": "Confirmar contraseña",
    "completeSetup": "Crear administrador",
    "setupPasswordMismatch": "Las dos contraseñas no coinciden.",
    "setupError": "La configuración inicial falló",
    "setupRegistrationLocked": "El registro no está disponible en este momento. Revisa la configuración del servidor."
  },
  "resources": {
    "title": "Recursos recomendados",
    "promptGuides": "Guías de ingeniería de Prompts",
    "agentSkills": "Mejores prácticas de Agent / Skill",
    "openaiGuideDesc": "Guía oficial de prompting de OpenAI",
    "openaiPromptEngineeringDesc": "Estrategias de fiabilidad y patrones de prompting",
    "anthropicGuideDesc": "Guía oficial de Anthropic para prompt engineering",
    "learnPromptingDesc": "Curso gratuito de Prompt engineering",
    "claudeCodeOverviewDesc": "Entrada única a documentación oficial, flujos, hooks y ajustes",
    "openaiAgentsGuideDesc": "Guía práctica de OpenAI para agentes listos para producción",
    "anthropicToolUseDesc": "Patrones de uso de herramientas, guardrails y consejos de implementación",
    "mcpQuickstartDesc": "Inicio rápido del protocolo para tools, skills e integraciones"
  },
  "common": {
    "confirm": "Confirmar",
    "cancel": "Cancelar",
    "save": "Guardar",
    "preview": "Vista previa",
    "content": "Código/Contenido",
    "delete": "Eliminar",
    "edit": "Editar",
    "add": "Añadir",
    "select": "Seleccionar",
    "selected": "Seleccionado",
    "selectAll": "Seleccionar todo",
    "clear": "Limpiar",
    "close": "Cerrar",
    "minimize": "Minimizar",
    "maximize": "Maximizar",
    "expand": "Expandir",
    "collapse": "Colapsar",
    "loading": "Cargando...",
    "saving": "Guardando...",
    "error": "Error",
    "success": "Éxito",
    "optional": "Opcional",
    "back": "Volver",
    "backToTop": "Volver arriba",
    "done": "Hecho",
    "yesterday": "Ayer",
    "daysAgo": " días atrás",
    "off": "Desactivado",
    "upload": "Subir",
    "download": "Descargar",
    "downloadSuccess": "Descarga exitosa",
    "downloadFailed": "Error al descargar",
    "imageLoadFailed": "Error al cargar la imagen",
    "showAll": "Todo",
    "chars": "caracteres",
    "reset": "Restablecer",
    "fullscreen": "Pantalla completa",
    "exitFullscreen": "Salir de pantalla completa",
    "markdownSupported": "Markdown Supported",
    "prompts": "Prompts",
    "skills": "Skills",
    "deselectAll": "Deseleccionar todo",
    "refresh": "Actualizar",
    "refreshing": "Actualizando",
    "enabled": "Activado",
    "disabled": "Desactivado",
    "enable": "Activar",
    "disable": "Desactivar"
  },
  "skill": {
    "title": "Habilidad",
    "name": "Nombre de la habilidad",
    "description": "Descripción",
    "version": "Versión",
    "author": "Autor",
    "tags": "Etiquetas",
    "files": "Archivos",
    "instructions": "Instrucciones (SKILL.md)",
    "instructionsSection": "Instructions",
    "instructionsPlaceholder": "Ingrese instrucciones de la habilidad o contenido SKILL.md...",
    "noInstructions": "No instructions available",
    "mcpConfigSection": "MCP Configuration",
    "metadata": "Metadata",
    "id": "ID",
    "createdAt": "Created At",
    "updatedAt": "Updated At",
    "localStorage": "Local Storage",
    "defaultDescriptionLong": "This is an AI agent skill containing instructions and configurations for specific tasks.",
    "platformIntegration": "Integracion de plataformas",
    "installed": "Installed",
    "clickToInstall": "Click to select",
    "clickToSelect": "Click to select",
    "selectedForInstall": "Pending install",
    "selectAll": "Select All",
    "deselectAll": "Deselect All",
    "selected": "Selected",
    "batchInstall": "Install All",
    "installing": "Installing...",
    "uninstall": "Uninstall",
    "export": "Export",
    "exportSkillMd": "Claude compatible format",
    "exportJson": "Backup/Share format",
    "exportZip": "Archivo completo del repositorio local",
    "edit": "Edit Skill",
    "editing": "Editing",
    "cancel": "Cancel",
    "saveChanges": "Save Changes",
    "copyMd": "Copy MD",
    "copyRaw": "Copy Raw",
    "copied": "Copied",
    "visitRepo": "Visit Skill Repository",
    "updateFailed": "Update failed",
    "allSkills": "All Skills",
    "favorites": "Favorites",
    "create": "Crear habilidad",
    "createTitle": "Crear nueva habilidad",
    "editTitle": "Edit Skill",
    "search": "Search skills...",
    "empty": "No skills yet",
    "emptyDesc": "Create your first AI agent skill",
    "scanLocal": "Escanear local",
    "scanLocalDesc": "Escanear habilidades locales existentes",
    "installFromGithub": "Instalar desde GitHub",
    "galleryView": "Gallery View",
    "listView": "List View",
    "quickInstall": "Install to Platforms",
    "selectPlatforms": "Select platforms to install",
    "installSelected": "Install Selected",
    "noPlatformsDetected": "No platforms detected",
    "allPlatformsInstalled": "Installed on all platforms",
    "alreadyInstalled": "This skill is already installed on all detected platforms",
    "notInstalled": "Not installed",
    "imported": "Imported",
    "deployed": "Distributed",
    "noSkills": "No skills yet",
    "noSkillsHint": "Import skills from Skill Store, scan local environments, or create one manually to get started",
    "noFavorites": "No favorite skills",
    "noFavoritesHint": "Click the star on skill cards to add favorites",
    "noImportedSkills": "No imported skills yet",
    "noImportedSkillsHint": "Tras importar desde Skill Store, un escaneo local, GitHub o una creación manual, aparecerán aquí.",
    "noDeployedSkills": "Aún no hay habilidades distribuidas",
    "noDeployedSkillsHint": "Después de distribuir habilidades a Claude, Cursor u otras plataformas, aparecerán aquí.",
    "pendingDeployment": "Pendiente",
    "noPendingSkills": "No hay habilidades pendientes",
    "noPendingSkillsHint": "Las habilidades que aún no se hayan distribuido a ninguna plataforma aparecerán aquí.",
    "noDistributionSkillsHint": "Import skills first, then install, sync, or uninstall them to Claude, Cursor, and other platforms here.",
    "webSkillLibrary": "Espacio de skills",
    "webLibraryHint": "Crea o importa tus propias skills aquí. La distribución a plataformas y las tiendas de skills solo están disponibles en desktop.",
    "checkPlatformDirs": "Comprobar si Claude Code, Cursor y otras plataformas están instalados",
    "customPathsHint": "Agrega directorios adicionales para escanear (por ejemplo ~/mytools/skills). Haz clic en Reescanear para aplicarlo.",
    "deletePathConfirm": "¿Seguro que quieres eliminar este archivo o carpeta? Esta acción no se puede deshacer.",
    "detailRenderErrorHint": "No se pudo renderizar la vista de detalle. Vuelve a la lista e inténtalo de nuevo.",
    "importTagsOptional": "Opcional: agregar etiquetas durante la importación",
    "orAddCustomPath": "O agrega una ruta personalizada arriba y vuelve a escanear",
    "searchImportPlaceholder": "Buscar por nombre, descripción, etiquetas, plataforma o ruta",
    "unsavedChangesWarning": "Tienes cambios sin guardar. ¿Descartar y cerrar?",
    "webLibrarySubtitle": "Gestiona tu biblioteca personal de Skills en el espacio web autoalojado.",
    "workspaceHint": "Gestiona todas las habilidades importadas en un solo lugar, sin importar de dónde provengan.",
    "protocol": "Protocolo",
    "distributionHint": "Gestiona la instalación, sincronización y desinstalación en las plataformas conectadas.",
    "addPath": "Agregar ruta",
    "addProject": "Agregar proyecto",
    "editProject": "Editar proyecto",
    "projectName": "Nombre del proyecto",
    "projectNamePlaceholder": "Proyecto del espacio de trabajo",
    "projectRootPath": "Ruta raíz del proyecto",
    "projectRootPathPlaceholder": "/path/to/project",
    "projectRootPathFirstHint": "Primero elige la raíz del proyecto. PromptHub puede inferir el nombre del proyecto y empezar a escanear de inmediato.",
    "browseFolder": "Examinar",
    "projectScanPaths": "Rutas de escaneo",
    "projectScanPathPlaceholder": "Directorios adicionales opcionales para escanear",
    "projectScanPathsHint": "PromptHub siempre escanea la raíz del proyecto junto con carpetas predeterminadas como .claude/skills, .agents/skills, skills y .gemini. Agrega rutas extra solo si tu proyecto guarda skills en otros lugares.",
    "projectScanPathsEmpty": "Todavía no hay rutas de escaneo adicionales configuradas. PromptHub seguirá escaneando automáticamente la raíz del proyecto.",
    "projectFormRequired": "El nombre del proyecto y la ruta raíz son obligatorios.",
    "projectRootPathExists": "Esta ruta raíz del proyecto ya está registrada.",
    "projectUpdated": "Proyecto actualizado",
    "projectCreated": "Proyecto agregado",
    "projectCreatedAndScanning": "Proyecto agregado. Escaneando ahora...",
    "projectSaveFailed": "Error al guardar el proyecto",
    "projectScanComplete": "Se escanearon {{count}} skills",
    "projectScanFailed": "No se pudieron escanear los skills del proyecto",
    "projectImportSuccess": "Importado a Mis habilidades",
    "projectsSidebarHint": "Registra directorios de proyecto y gestiona sus habilidades locales.",
    "noProjects": "Todavía no hay proyectos",
    "noProjectsHint": "Agrega una raíz de proyecto para escanear y gestionar skills locales del proyecto.",
    "projectSkillCount": "{{count}} skills",
    "projectImportableCount": "{{count}} importables",
    "projectWorkspaceHint": "Escanea carpetas de skills locales del proyecto, importa las seleccionadas a PromptHub o abre directamente las rutas de origen.",
    "projectLastScan": "Último escaneo",
    "projectDetectedSkills": "Skills detectados",
    "openProjectFolder": "Abrir proyecto",
    "projectNoScanResults": "Todavía no hay skills escaneados",
    "projectNoScanResultsHint": "Ejecuta un escaneo para descubrir archivos SKILL.md dentro de este proyecto y luego decide si importarlos a PromptHub o solo gestionar directamente las rutas de origen.",
    "scanProjectSkills": "Escanear skills del proyecto",
    "projectImportHint": "Primero importa esta habilidad local del proyecto a Mis habilidades. Después podrás distribuirla como cualquier habilidad normal de PromptHub.",
    "projectSearchEmptyHint": "Prueba con otra palabra clave para encontrar skills locales del proyecto.",
    "selectProject": "Seleccionar un proyecto",
    "selectProjectHint": "Elige un proyecto registrado a la izquierda o agrega uno nuevo para empezar a escanear los skills locales del proyecto.",
    "selectProjectSkill": "Seleccionar un skill",
    "selectProjectSkillHint": "Elige un skill local del proyecto para ver su contenido, traducción y archivos con la misma vista de detalle que Mis Skills.",
    "projectDeleted": "Proyecto eliminado",
    "deleteProjectTitle": "Eliminar proyecto",
    "deleteProjectMessage": "¿Quitar el proyecto \"{{name}}\" de PromptHub? Esto solo elimina el registro del espacio de trabajo del proyecto y no borra ningún archivo.",
    "all": "Todas",
    "confirmDelete": "¿Seguro que quieres eliminar la habilidad \"{{name}}\"?",
    "defaultDescription": "Descripción de la habilidad para ayudar a la IA a entender cuándo usarla",
    "icon": "Icono",
    "iconHint": "Sube tu propio icono o elige uno directamente de los preajustes.",
    "presetIcons": "Iconos predefinidos",
    "uploadIcon": "Subir icono",
    "useDefaultIcon": "Usar icono predeterminado",
    "iconBackground": "Fondo del icono",
    "iconBackgroundHint": "Elige un color de fondo más estable para que el icono no parezca flotante en la página de detalle.",
    "useDefaultBackground": "Predeterminado",
    "addFavorite": "Agregar a favoritos",
    "removeFavorite": "Quitar de favoritos",
    "delete": "Eliminar",
    "confirmInstallTitle": "Confirmar instalación",
    "confirmInstallMessage": "Instalar la habilidad en las siguientes plataformas:",
    "confirmUninstallTitle": "Confirmar desinstalación",
    "confirmUninstallMessage": "¿Seguro que quieres desinstalar esta habilidad de {{platform}}?",
    "installSuccess": "Operación completada",
    "installPartialFailure": "Algunas plataformas no pudieron instalarse\n{{details}}",
    "installFailureRow": "{{platform}}: {{reason}}",
    "uninstallSuccess": "Desinstalación completada",
    "aiGenerate": "Generar con IA",
    "generating": "Generando...",
    "configureAiFirst": "Configure primero un modelo de IA en la configuración",
    "aiGenerateHint": "La generación con IA se habilita después de configurar un modelo en la configuración",
    "descriptionRequired": "Ingrese una descripción para la generación con IA",
    "noAiModelConfigured": "Configure primero un modelo de IA en la configuración",
    "generateFailed": "Error al generar",
    "store": "Tienda de skills",
    "storeHint": "Descubre e importa skills desde tiendas oficiales, comunitarias y personalizadas.",
    "searchStore": "Buscar skills...",
    "installedSection": "En Mis habilidades",
    "recommendedSection": "Disponibles para agregar",
    "importedSection": "Imported",
    "availableSection": "Available",
    "install": "Agregar",
    "addToLibrary": "Importar a Mis habilidades",
    "addedToLibrary": "Importado",
    "openInMySkills": "Abrir en Mis habilidades",
    "removeFromLibrary": "Quitar de Mis habilidades",
    "openSkillFolder": "Abrir carpeta",
    "importAndDistribute": "Distribuir",
    "officialStore": "Tienda oficial",
    "communityStore": "Tienda de la comunidad",
    "claudeCodeStore": "Tienda de Claude Code",
    "openaiCodexStore": "Tienda de OpenAI Codex",
    "customStores": "Mis tiendas",
    "communityStoreHint": "Esta sección reunirá fuentes comunitarias de skills de terceros. La entrada ya está lista para conectar un registro comunitario en el siguiente paso.",
    "claudeCodeStoreHint": "Fuente integrada de Claude Code con compatibilidad prioritaria para el repositorio oficial de skills y los índices marketplace.json habituales.",
    "claudeCodeStoreDetail": "Esta fuente integrada está pensada para el ecosistema Claude Code. Primero se centra en el repositorio oficial de skills y los índices marketplace.json, y más adelante podrá convertirse en una tienda remota navegable.",
    "openaiCodexStoreHint": "Fuente integrada de OpenAI Codex con compatibilidad prioritaria para el catálogo curado openai/skills.",
    "openaiCodexStoreDetail": "Esta fuente integrada está pensada para el ecosistema OpenAI Codex. Se centra en el catálogo curado openai/skills y mantiene la compatibilidad con repositorios SKILL.md de tipo directorio.",
    "customStoresHint": "Agrega aquí tus propios endpoints de tienda. Más adelante podrán conectarse manifests o registros remotos.",
    "customStoreEmpty": "Todavia no hay habilidades en esta tienda personalizada",
    "customStoreEmptyHint": "Esta fuente está conectada, pero todavía no se ha cargado ninguna habilidad. Prueba a actualizar arriba a la derecha o abre Editar para revisar la configuración de la fuente.",
    "addStoreSource": "Agregar tienda",
    "storeNamePlaceholder": "Nombre de la tienda",
    "storeUrlPlaceholder": "URL de la tienda / URL del manifest",
    "sourceTypeMarketplace": "Marketplace JSON",
    "sourceTypeGit": "Repositorio Git",
    "sourceTypeLocal": "Directorio local",
    "sourceTypeMarketplaceHint": "Ideal para una URL directa de marketplace.json. PromptHub leerá el índice y cargará las entradas de la tienda desde allí.",
    "sourceTypeGitHint": "Ideal para una URL de GitHub o de repositorio Git. PromptHub detectará carpetas SKILL.md o un índice de tienda dentro del repositorio.",
    "sourceTypeLocalHint": "Ideal para una ruta de carpeta local. PromptHub escaneará las carpetas de skills que contenga.",
    "storeExamples": "Ejemplos",
    "storeExampleMarketplace": "Ejemplo de Marketplace JSON",
    "storeExampleGit": "Ejemplo de repositorio Git",
    "storeExampleLocal": "Ejemplo de directorio local",
    "supportedFormat": "Formatos compatibles",
    "formatDirectoryRepo": "`SKILL.md` directory-style repository",
    "formatIndexStore": "`marketplace.json` index-style store",
    "formatCuratedSubdir": "Curated subdirectory inside a larger Git repository",
    "formatCommunityLeaderboard": "skills.sh community leaderboard",
    "formatSkillDetailPage": "skills.sh skill detail page",
    "exampleSources": "Fuentes de referencia integradas",
    "customStorePendingHint": "Aquí se mostrarán las skills obtenidas de la tienda seleccionada en el siguiente paso. La versión actual se centra en la gestión de fuentes y la jerarquía lateral izquierda.",
    "loadingRemoteStore": "Cargando skills de Claude Code desde la fuente remota...",
    "loadingOpenAiStore": "Cargando skills de OpenAI Codex desde la fuente remota...",
    "remoteStoreLoadFailed": "Error al cargar la tienda remota",
    "storeSourceAdded": "Tienda agregada",
    "storeSourceRequired": "Ingrese tanto el nombre como la URL de la tienda",
    "noCustomStores": "Aún no hay tiendas personalizadas",
    "noCustomStoresHint": "Haga clic en la entrada de puntos «Agregar tienda» en la barra lateral izquierda para conectar sus propias fuentes de habilidades.",
    "loadingCommunityStore": "Cargando lista de habilidades de la comunidad skills.sh...",
    "loadingCustomStore": "Cargando contenido de la tienda personalizada...",
    "remoteStoreRetry": "Reintentar",
    "remoteStoreRateLimitHint": "Se alcanzó el límite de tasa de la API de GitHub. Inténtelo de nuevo en unos minutos o cambie de red y vuelva a intentarlo.",
    "remoteStoreNetworkHint": "No se pudo conectar con GitHub. Compruebe su red actual o cambie de red y vuelva a intentarlo.",
    "remoteStoreInvalidRepoHint": "No se encontró el repositorio o la URL no es válida. Revise la dirección del repositorio de GitHub y vuelva a intentarlo.",
    "invalidGitRepo": "Ingrese una URL de repositorio de GitHub o use una ruta de directorio local",
    "skillsCount": "habilidades",
    "adding": "Agregando...",
    "noResults": "No se encontraron skills",
    "tryDifferentSearch": "Prueba con otra búsqueda o categoría",
    "prerequisites": "Requisitos previos",
    "source": "Fuente",
    "sourceGithubStore": "Importado desde GitHub / Skill Store",
    "sourceGithubRepo": "Importado desde repositorio de GitHub",
    "sourceRemoteStore": "Importado desde tienda remota de skills",
    "sourceRemoteLink": "Importado desde enlace remoto",
    "sourceLocalFolder": "Importado desde carpeta local",
    "sourceClaudeLocalFolder": "Importado desde carpeta local de skills de Claude Code",
    "sourceCursorLocalFolder": "Importado desde carpeta local de skills de Cursor",
    "compatibility": "Compatible con",
    "navigationHint": "La navegación de skills llegará pronto",
    "symlink": "Enlace simbólico",
    "copyMode": "Copiar",
    "symlinkDesc": "Enlace simbólico: crea un enlace simbólico que apunta al archivo de origen. Todas las plataformas comparten la misma fuente; las ediciones se sincronizan al instante, pero se requiere compatibilidad del sistema de archivos.",
    "copyModeDesc": "Copiar: copia el archivo SKILL.md a cada directorio de plataforma. Cada copia es independiente; las ediciones en PromptHub no se sincronizarán automáticamente.",
    "rawContent": "Contenido de SKILL.md",
    "noContent": "Sin contenido",
    "translate": "Traducir con IA",
    "translating": "Traduciendo...",
    "showOriginal": "Mostrar original",
    "showTranslation": "Mostrar traducción",
    "translateSuccess": "Traducción completada",
    "translateFailed": "Error en la traducción",
    "translationOutdatedTitle": "La traduccion guardada esta desactualizada",
    "translationOutdatedMessage": "El archivo SKILL.md de esta skill cambio despues de la ultima traduccion. Volver a traducir ahora?",
    "translationOutdatedBadge": "La traduccion guardada necesita actualizarse",
    "retranslateNow": "Volver a traducir ahora",
    "aiNotConfigured": "Primero configure un modelo de IA en Ajustes",
    "aiNotConfiguredDetailed": "No hay ningun modelo de traduccion con IA utilizable configurado. Configura un modelo de chat en Ajustes o corrige el modelo de traduccion seleccionado.",
    "translateGatewayTimeout": "El servicio de IA agoto el tiempo de espera durante la traduccion. Intentalo de nuevo en un momento o cambia a un endpoint de modelo mas rapido y estable.",
    "translateNetworkError": "La solicitud de traduccion no pudo llegar al servicio de IA. Revisa tu red y el endpoint de la API, y vuelve a intentarlo.",
    "addSkill": "Agregar habilidad",
    "chooseAddMethod": "Elija cómo agregar una nueva habilidad:",
    "aiCreate": "Borrador con IA",
    "aiCreateDesc": "Describe lo que necesitas y la IA preparará un borrador de SKILL.md para revisar",
    "aiCreateHint": "Usa el Skill Creator para redactar un SKILL.md profesional. Puedes revisarlo y editarlo antes de guardar.",
    "aiDescPlaceholder": "Describa qué debe hacer esta habilidad, su propósito y cuándo activarla...",
    "generateAndReview": "Generar y previsualizar",
    "createManually": "Crear manualmente",
    "manualDesc": "Escribir una habilidad desde cero",
    "githubDesc": "Pegue la URL del repositorio de GitHub para instalar",
    "scanLocalTitle": "Escanear habilidades locales",
    "scanLocalHint": "Detecta automáticamente archivos SKILL.md en carpetas gestionadas por PromptHub, Claude, Cursor, Windsurf y otras herramientas de IA.",
    "dropImportTitle": "Arrastra skills para importar",
    "dropImportDesc": "Suelta aqui una carpeta de skill o un archivo llamado SKILL.md para abrir el flujo existente de vista previa e importacion.",
    "dropImportUnsupported": "Solo las carpetas locales o un archivo con el nombre exacto SKILL.md se pueden importar como skills.",
    "dropImportEmpty": "No se encontraron archivos SKILL.md importables en los elementos soltados.",
    "dropImportFailed": "No se pudieron escanear los archivos de skill soltados",
    "nameRequired": "Ingrese un nombre de habilidad",
    "namePlaceholder": "my-skill",
    "githubUrl": "URL del repositorio de GitHub",
    "githubUrlHint": "Usa la URL raíz del repositorio. PromptHub clonará el repo y priorizará SKILL.md; si no existe, usará README.md.",
    "githubConstraintHint": "Por ahora solo se admiten URLs raíz del repositorio, como https://github.com/owner/repo",
    "githubFallbackHint": "Si falta SKILL.md, PromptHub intentará usar README.md. Para reinstalar, por ahora debes eliminar primero la copia anterior.",
    "enterGithubUrl": "Ingrese una URL de GitHub",
    "invalidGithubUrl": "Formato de URL de GitHub no válido",
    "installFailed": "Error al instalar",
    "installReturnedEmpty": "La instalación desde GitHub no devolvió una skill válida",
    "createFailed": "Error al crear",
    "createReturnedEmpty": "La creación no devolvió un resultado de skill válido",
    "noSkillsFound": "No se encontraron nuevos archivos SKILL.md locales.",
    "scanFailed": "Error al escanear: ",
    "skillName": "Nombre de la habilidad",
    "skillDescription": "Descripción de la habilidad",
    "nameHint": "Solo letras minúsculas, números y guiones, ej. my-skill-name",
    "descriptionPlaceholder": "Describa brevemente la función de la habilidad",
    "authorPlaceholder": "Nombre del autor",
    "tagsOptional": "Etiquetas (opcional)",
    "selectExistingTags": "Seleccionar etiquetas existentes:",
    "enterTagHint": "Escribe una nueva etiqueta y presiona Enter",
    "importTags": "Etiquetas de importación",
    "addTag": "Agregar etiqueta",
    "uploadMd": "Subir .md",
    "aiPolish": "Pulir con IA",
    "polishing": "Puliendo...",
    "polishNeedsContent": "Escriba algo de contenido antes de pulir",
    "polishFailed": "Error al pulir el contenido",
    "aiPolishHint": "Pulir contenido según el formato estándar SKILL.md",
    "instructionsHint": "Compatible con formato Markdown para guiar a la IA en el uso de esta habilidad",
    "startScan": "Iniciar escaneo",
    "scanning": "Escaneando...",
    "scanFound": "Se encontraron {{count}} habilidad(es)",
    "rescan": "Volver a escanear",
    "importSelected": "Importar seleccionados",
    "importing": "Importando...",
    "scanImportSummary": "Importadas {{imported}} / {{total}}, omitidas {{skipped}}, fallidas {{failed}}.",
    "allDuplicates": "Todas las habilidades seleccionadas ya existen en su biblioteca.",
    "allAlreadyImported": "All scanned skills already exist in your library.",
    "versionHistory": "Historial de versiones",
    "versionManagement": "Gestion de versiones",
    "currentVersion": "Versión actual",
    "restoreVersion": "Restaurar a esta versión",
    "restoreConfirm": "¿Está seguro de que desea restaurar a v{{version}}? El contenido actual se guardará como una nueva versión.",
    "deleteVersionTitle": "Eliminar snapshot de versión",
    "deleteVersionConfirm": "¿Eliminar la v{{version}}? Esta entrada del historial no se podrá recuperar.",
    "noVersions": "Sin historial de versiones",
    "compareVersions": "Comparar versiones",
    "filesInVersion": "Archivos de la versión",
    "versionNote": "Nota de versión",
    "initialVersion": "Versión inicial",
    "fileEditor": "Editor de archivos",
    "newFile": "Nuevo archivo",
    "newFolder": "Nueva carpeta",
    "deleteFile": "Eliminar archivo",
    "deleteFileConfirm": "¿Está seguro de que desea eliminar este archivo? Esta acción no se puede deshacer.",
    "openInExplorer": "Abrir en el administrador de archivos",
    "unsavedFile": "El archivo tiene cambios sin guardar",
    "fileSaved": "Archivo guardado",
    "noFiles": "No hay archivos locales para esta habilidad",
    "binaryFile": "El archivo binario no se puede editar",
    "enterFileName": "Ingrese el nombre del archivo",
    "enterFolderName": "Ingrese el nombre de la carpeta",
    "createVersion": "Crear versión",
    "versionNotePlaceholder": "Describa los cambios...",
    "versionCreated": "Versión creada",
    "creating": "Creando...",
    "batchTags": "Gestionar etiquetas en lote",
    "batchTagsHint": "Agregar o quitar etiquetas en {{count}} skills seleccionados.",
    "batchTagAffected": "{{count}} skills se actualizarán",
    "batchTagPartialFailure": "Actualización masiva de etiquetas completada: {{updated}} correctos, {{failed}} fallidos",
    "batchTagAddSuccess": "Etiqueta agregada a {{count}} skills",
    "batchTagRemoveSuccess": "Etiqueta eliminada de {{count}} skills",
    "batchManage": "Gestión por lotes",
    "batchDeploy": "Sincronización masiva",
    "selectionMode": "Modo por lotes",
    "selectedCount": "{{count}} seleccionados",
    "detectedPlatforms": "Plataformas detectadas",
    "selectedPlatforms": "{{count}} seleccionado(s)",
    "distributionStats": "{{deployed}} distribuidos / {{total}} en total",
    "progressiveRendering": "Renderizando {{rendered}}/{{total}} por lotes",
    "batchDeployDefaultsHint": "Las plataformas detectadas se seleccionan por defecto. Confirma los destinos antes de iniciar la sincronización masiva.",
    "batchUndeployDefaultsHint": "Solo elimina los skills distribuidos por PromptHub de las plataformas elegidas. Tu repositorio local no se toca.",
    "executionPlan": "Plan de ejecución",
    "noPlatformSelected": "Ninguna plataforma seleccionada",
    "compareAgainst": "Comparar con",
    "compareSummary": "{{from}} -> {{to}}",
    "createSnapshot": "Crear snapshot",
    "snapshot": "Snapshot",
    "snapshotPrompt": "Ingrese una nota para este snapshot",
    "snapshotCreated": "Snapshot de versión creado",
    "snapshotDefaultNote": "Snapshot manual {{timestamp}}",
    "versionTimeline": "Cronología",
    "noVersionHistory": "Aún no hay historial de versiones",
    "noVersionHistoryHint": "Editar SKILL.md o el árbol de archivos creará snapshots automáticamente y aquí podrá restaurarlos.",
    "versionRestoreHint": "Seleccione una versión para restaurar",
    "selectedVersion": "Versión seleccionada",
    "diffView": "Diff",
    "noChanges": "Sin cambios",
    "filesChanged": "{{count}} archivo(s) modificados",
    "expandAll": "Expandir todo",
    "collapseAll": "Colapsar todo",
    "importedBadge": "Ya importado",
    "noLocalRepo": "No se encontró repositorio local",
    "safetyAssessment": "Análisis de seguridad",
    "safetyAssessmentDesc": "Análisis de seguridad con IA del contenido del Skill y su contexto de procedencia.",
    "safetyAssessmentEmpty": "Sin resultados. Haga clic en 'Escanear' para analizar este Skill.",
    "safetyScanning": "Escaneando...",
    "runSafetyAssessment": "Escanear",
    "safetyLevelLabel": "Nivel de riesgo",
    "safetyModalTitle": "Informe de seguridad",
    "safetyRescan": "Reanalizar",
    "safetyFilesChecked": "{{count}} archivo(s) verificado(s)",
    "safetyScanMethod": "Método",
    "safetyScanMethodAI": "Asistido por IA",
    "safetyScanMethodAIDesc": "El análisis con IA revisa el SKILL.md y los archivos relevantes del repositorio con contexto del modelo, por lo que es la señal principal para decidir una instalación.",
    "safetyScore": "Puntuación",
    "safetyScoreDesc": "Puntuación 0–100 (mayor = más seguro). Basado en el nivel de riesgo y el número de hallazgos: bloqueado 0–10, alto riesgo 20–40, precaución 50–70, seguro 80–100.",
    "safetyDimensionTitle": "Dimensiones de puntuación",
    "safetyDimContent": "Patrones de contenido",
    "safetyDimContentDesc": "Revisión por IA de las instrucciones del SKILL.md y de los archivos sospechosos del repositorio para detectar comandos peligrosos, escalada de privilegios, acceso a secretos, prompt injection y exfiltración.",
    "safetyDimSource": "Confianza de la fuente",
    "safetyDimSourceDesc": "Prevalidación de procedencia más revisión contextual con IA para orígenes ausentes, URL inválidas, hosts personalizados y direcciones internas restringidas.",
    "safetyDimRepo": "Estructura del repositorio",
    "safetyDimRepoDesc": "Revisión del árbol del repositorio para scripts ejecutables, binarios empaquetados, archivos de persistencia y otras señales de empaquetado riesgoso que se entregan al análisis con IA.",
    "safetyDimFindings": "{{count}} hallazgo(s)",
    "safetyDimNoFindings": "Sin problemas",
    "safetyScoreFormula": "Fórmula: el nivel de riesgo fija el rango base (bloqueado 0–10 · alto riesgo 20–40 · precaución 50–70 · seguro 80–100), luego cada hallazgo resta puntos dentro de ese rango.",
    "safetyNoFindings": "No se encontraron problemas",
    "safetySeverityHigh": "Alto",
    "safetySeverityWarn": "Advertencia",
    "safetySeverityInfo": "Info",
    "safetyScanTime": "Analizado el",
    "safetyScanBlockedSource": "El análisis de seguridad bloqueó esta fuente porque se resuelve a una dirección interna o restringida.",
    "symlinkHint": "Creates a symlink in the platform directory — lighter updates going forward.",
    "copyHint": "Copies SKILL.md to the platform directory — more compatible.",
    "scanRepository": "Scan Repository",
    "githubNoImportableSkills": "No importable SKILL.md or README.md files were found in this repository.",
    "githubScanFound": "Found {{count}} import option(s)",
    "githubScanHint": "Select one or more skills from this repository before importing.",
    "githubImportSummary": "Imported {{imported}} / {{total}}, skipped {{skipped}}, failed {{failed}}.",
    "safetyLevelSafe": "Safe",
    "safetyLevelWarn": "Needs review",
    "safetyLevelHighRisk": "High risk",
    "safetyLevelBlocked": "Blocked",
    "safetySummarySafe": "No obvious malicious patterns were detected across {{count}} scanned files.",
    "safetySummaryWarn": "{{warn}} warning findings were detected across {{count}} scanned files. Review the source before installing or executing it.",
    "safetySummaryHighRisk": "{{high}} high-risk and {{warn}} warning findings were detected across {{count}} scanned files. Manual review is recommended before proceeding.",
    "safetySummaryBlocked": "Obvious dangerous patterns were detected across {{count}} scanned files. Installation should remain blocked.",
    "securityAudits": "Security Audits",
    "safetyScanFailed": "Safety scan failed",
    "safetyScanBlockedInstall": "Installation blocked due to safety concerns.",
    "safetyHighRiskTitle": "High-Risk Skill Detected",
    "safetyHighRiskConfirm": "This skill has been flagged as high risk. Are you sure you want to proceed?",
    "addAnyway": "Add Anyway",
    "confirmDeleteTitle": "Confirm Delete",
    "confirmDeleteSingle": "Are you sure you want to delete skill \"{{name}}\"?",
    "confirmDeleteMultiple": "Are you sure you want to delete {{count}} selected skills?",
    "deleteHint": "Only removes from the PromptHub library. Source files are preserved and platform installations will be uninstalled.",
    "refreshTranslation": "Refresh Translation",
    "editMetadata": "Edit Skill Metadata",
    "batchAction": "Action Mode",
    "batchDeployFailed": "Batch deploy completed with {{failed}} failures out of {{total}} targets.",
    "batchDeployFailureList": "Failed Targets",
    "batchDeployHint": "Deploy {{count}} skill(s) to selected platforms.",
    "batchUndeploy": "Batch Uninstall from Platforms",
    "batchUndeployHint": "Removes corresponding skills from selected platform directories. Your local PromptHub repo is not affected.",
    "noDetectedPlatforms": "No syncable platform directories detected.",
    "customPaths": "Custom scan paths",
    "detailRenderError": "This skill cannot be opened right now",
    "existingTags": "Existing tags",
    "exportFailed": "Export failed",
    "githubStars": "GitHub Stars",
    "hideOptionalTags": "Hide optional tags",
    "importFailed": "Failed to import skills",
    "installMethod": "Install Method",
    "loadFailed": "Load failed",
    "nameInvalid": "Invalid name format (only lowercase letters, numbers, and hyphens)",
    "nameTooLong": "Name must not exceed 64 characters",
    "openFileEditor": "Open File Editor",
    "openLocalSource": "Open Local Skill Folder",
    "openRemoteSource": "Open Source Link",
    "operation": "Operation",
    "pathPlaceholder": "~/path/to/skills",
    "previewRenderError": "Skill preview cannot be rendered right now",
    "previewRenderErrorHint": "The skill content or metadata format has a compatibility issue, but it won't crash the entire detail page. You can retry later or switch to the file view to inspect the raw content.",
    "instructionsManagedInFiles": "Instructions are managed in the file editor",
    "instructionsManagedInFilesHint": "SKILL.md and other files should be edited in the file editor. This form is for metadata only (name, description, author, tags).",
    "removeTag": "Remove tag",
    "restore": "Restore",
    "restoring": "Restoring...",
    "scanPreview": "Scan Preview",
    "scanPreviewStats": "Total: {{total}} · Imported: {{imported}} · Importable: {{importable}} · Selected: {{selected}}",
    "scanStatsImportable": "Importable",
    "scanStatsImported": "Imported",
    "scanStatsSelected": "Selected",
    "scanStatsTotal": "Total",
    "selectedSkills": "Selected Skills",
    "showOptionalTags": "Add tags when needed",
    "skillContent": "Skill Content",
    "skills": "skills",
    "storePage": "Store Page",
    "storePathPlaceholder": "Local directory path",
    "storeSourceHttpsRequired": "Store URL must use HTTPS",
    "storeSourceInvalidUrl": "Invalid store URL format",
    "storeSourceType": "Store Type",
    "syncSummary": "Sync Summary",
    "syncing": "Syncing",
    "syncingProgress": "Syncing {{current}}/{{total}}...",
    "tag": "Tag",
    "targetPlatforms": "Target Platforms",
    "totalTargets": "Total Targets",
    "translateRefreshed": "Translation refreshed",
    "weeklyInstalls": "Weekly Installs",
    "safetyFinding": {
      "shell-pipe-exec": "Detected pipe-to-shell execution",
      "dangerous-delete": "Detected destructive delete command",
      "encoded-powershell": "Detected encoded PowerShell execution",
      "encoded-shell-bootstrap": "Detected encoded payload decoded and executed immediately",
      "privilege-escalation": "Requests elevated privileges",
      "system-persistence": "Touches persistence or system service mechanisms",
      "secret-access": "Reads secret-bearing paths",
      "security-bypass": "Suggests bypassing approvals or sandboxing",
      "network-exfil": "Contains possible credential exfiltration behavior",
      "exec-bit": "Modifies executable permissions",
      "network-bootstrap": "Downloads remote resources",
      "env-mutation": "Mutates shell environment or startup files",
      "untrusted-source-host": "Source host is not a known trusted marketplace host",
      "external-audits": "Marketplace exposes external security audit metadata",
      "internal-source": "Source resolves to a local or internal address",
      "unknown-source": "Source provenance is missing",
      "invalid-source-url": "Source URL is invalid",
      "insecure-source-url": "Source URL is not HTTPS",
      "persistence-file": "Repository contains workflow or persistence-related files",
      "high-risk-binary": "Repository contains high-risk executable artifacts",
      "script-file": "Repository contains executable scripts"
    },
    "updateAvailable": "Actualización disponible",
    "updateConflict": "Los cambios locales entran en conflicto con la actualización de la tienda",
    "localModified": "Cambios locales detectados",
    "upToDate": "Ya está actualizado",
    "updateCheckFailed": "Error al buscar actualizaciones",
    "updateSuccess": "Actualizado",
    "checkingUpdate": "Comprobando...",
    "checkUpdate": "Buscar actualización",
    "updating": "Actualizando...",
    "update": "Actualizar",
    "overwriteLocalChanges": "Sobrescribir cambios locales",
    "platformWorkbench": {
      "badge": "Future Workspace Preview",
      "heroTitle": "From Prompt + Skill manager to an AI operations workspace",
      "heroDesc": "This prototype explores how PromptHub could grow into a unified platform for prompts, skills, agents, MCP integrations and execution history without forcing everything into the current two-mode shell.",
      "heroStatObjects": "Managed objects",
      "heroStatObjectsHint": "Prompt · Skill · Agent · MCP",
      "heroStatLayers": "Platform layers",
      "heroStatLayersHint": "Assets · Connections · Runs",
      "heroStatGoal": "Goal",
      "heroStatGoalValue": "Clearer IA",
      "heroStatGoalHint": "Scale without UI entropy",
      "sidebarTitle": "Platform map",
      "sidebarFootTitle": "Design signal",
      "sidebarFootDesc": "Main navigation shifts from object count to domain structure: assets, automations, integrations and operations.",
      "libraryLabel": "Library",
      "libraryEyebrow": "Assets",
      "libraryTitle": "Prompts, skills and reusable building blocks",
      "libraryDesc": "Content assets and reusable capabilities live in the same workspace, but remain clearly typed and searchable.",
      "agentsLabel": "Agents",
      "agentsEyebrow": "Automation",
      "agentsTitle": "Agents become first-class managed units",
      "agentsDesc": "Agents should sit beside skills, with explicit runtime, ownership and safety metadata instead of being hidden inside loose prompt conventions.",
      "mcpLabel": "MCP & Integrations",
      "mcpEyebrow": "Connections",
      "mcpTitle": "External tools are managed as connections, not content",
      "mcpDesc": "MCP servers, model gateways and sync endpoints belong in a dedicated integration surface with health, auth and environment context.",
      "operationsLabel": "Operations",
      "operationsEyebrow": "Runs",
      "operationsTitle": "Execution becomes observable and reviewable",
      "operationsDesc": "Once Prompt, Skill, Agent and MCP all coexist, users need a unified surface for runs, failures, audits and release readiness.",
      "summaryReady": "Ready",
      "summaryNeedsReview": "Needs review",
      "summaryShared": "Shared",
      "summaryActive": "Active",
      "summaryQueued": "Queued",
      "summaryGuarded": "Guarded",
      "summaryConnected": "Connected",
      "summaryAttention": "Attention",
      "summaryEnvironments": "Environments",
      "summaryRuns": "Runs today",
      "summaryFailures": "Failures",
      "summaryRecovered": "Recovered",
      "lanePrompts": "Prompts",
      "lanePromptsHint": "Writing assets, templates, snippets",
      "laneSkills": "Skills",
      "laneSkillsHint": "Reusable capability packages and project skills",
      "laneResources": "Resources",
      "laneResourcesHint": "Reference docs, context packs, imported files",
      "laneResearch": "Research agents",
      "laneResearchHint": "Discovery, synthesis and evaluation loops",
      "laneCoding": "Coding agents",
      "laneCodingHint": "Implementation, refactor and test execution",
      "laneOps": "Ops agents",
      "laneOpsHint": "Release, monitoring and support workflows",
      "laneMcpServers": "MCP servers",
      "laneMcpServersHint": "Tool adapters, execution endpoints, repo bridges",
      "laneProviders": "Providers",
      "laneProvidersHint": "AI gateways, inference vendors, fallback chains",
      "laneSync": "Sync targets",
      "laneSyncHint": "Backups, publishing targets and workspace mirrors",
      "laneRuns": "Execution runs",
      "laneRunsHint": "Recent tasks, jobs and automated sequences",
      "laneAudit": "Audits",
      "laneAuditHint": "Security checks, publish reviews and quality gates",
      "laneReleases": "Releases",
      "laneReleasesHint": "Version plans, rollout state and rollback safety",
      "statusPublished": "Published",
      "statusDraft": "Draft",
      "statusReady": "Ready",
      "statusHealthy": "Healthy",
      "statusExperiment": "Experiment",
      "statusMonitored": "Monitored",
      "statusStable": "Stable",
      "statusSyncing": "Syncing",
      "statusAtRisk": "At risk",
      "statusNeedsReview": "Needs review",
      "statusOnline": "Online",
      "actionOpenSkill": "Open skill",
      "actionOpenPrompt": "Open prompt pack",
      "actionOpenTemplate": "Open template",
      "actionOpenAgent": "Open agent",
      "actionInspectAgent": "Inspect workflow",
      "actionReviewRuns": "Review runs",
      "actionOpenConnection": "Open connection",
      "actionViewHealth": "View health",
      "actionInspectSource": "Inspect source",
      "actionOpenBoard": "Open board",
      "actionReviewQueue": "Review queue",
      "actionOpenTimeline": "Open timeline",
      "actionCompare": "Compare model",
      "searchPlaceholder": "Search resources, capabilities or integrations...",
      "filter": "Filter",
      "emptySearch": "No prototype items match the current search.",
      "items": "items",
      "contextTitle": "Context panel",
      "metaType": "Type",
      "metaStatus": "Status",
      "metaOwner": "Owner",
      "metaUpdated": "Updated",
      "whyTitle": "Why this matters",
      "whyLibrary": "Prompts and skills can still feel familiar, but they no longer need to shoulder every future object type in the product.",
      "whyAgents": "Agents deserve their own lifecycle, observability and guardrails instead of being buried as prompt conventions or skill metadata hacks.",
      "whyMcp": "MCP and provider configuration is operational infrastructure. Treating it as a connection surface keeps auth, health and environment concerns explicit.",
      "whyOperations": "As the platform grows, users need a home for runs, audits and release status that cuts across every resource type.",
      "noteTitle": "Prototype note",
      "noteDesc": "This page is intentionally driven by mock structure. The goal is to preview a scalable navigation and workspace shape before migrating the real Prompt / Skill shell."
    }
  },
  "error": {
    "sha512Desc": "SHA512 checksum mismatch.\nThis is usually caused by CDN cache inconsistencies or network issues.\nThe file may have been downloaded successfully. You can try to install it manually."
  },
  "toast": {
    "selfHostedSyncConnectionSuccess": "Conexión correcta. El espacio remoto contiene actualmente {{prompts}} prompts, {{folders}} carpetas, {{rules}} reglas y {{skills}} habilidades.",
    "selfHostedSyncPushSuccess": "Se subieron {{prompts}} prompts, {{folders}} carpetas, {{rules}} reglas y {{skills}} habilidades a PromptHub Web.",
    "selfHostedSyncPullSuccess": "Se restauraron {{prompts}} prompts, {{folders}} carpetas, {{rules}} reglas y {{skills}} habilidades desde PromptHub Web."
  },
  "closeDialog": {
    "title": "Cerrar ventana",
    "message": "¿Cómo deseas cerrar?",
    "minimizeToTray": "Minimizar a la bandeja",
    "exitApp": "Salir de la aplicación",
    "rememberChoice": "Recordar mi elección"
  },
  "quickAdd": {
    "title": "Añadir rápido",
    "manualAdd": "Añadir manualmente",
    "manualAddDesc": "Completar manualmente los detalles del Prompt",
    "desc": "Pegue contenido para análisis y categorización de IA",
    "generateEntry": "Generar con IA",
    "generateEntryDesc": "Describe tu objetivo y deja que la IA redacte un Prompt",
    "quickAddDesc": "Pegue un Prompt, la IA lo analiza y categoriza",
    "smartFolder": "Clasificación inteligente",
    "needConfig": "Se requiere IA",
    "noAiConfig": "Servicio de IA no configurado",
    "noAiConfigDesc": "Configura un proveedor de IA en ajustes para usar el análisis inteligente.",
    "tokenWarning": "El análisis con IA consumirá algunos tokens",
    "pastePrompt": "Pega tu Prompt",
    "placeholder": "Pega aquí el contenido de tu Prompt...",
    "modeLabel": "Modo de creación",
    "modeAnalyze": "Analizar contenido existente",
    "modeAnalyzeDesc": "Pega un Prompt existente y deja que la IA extraiga título, etiquetas y carpeta",
    "modeGenerate": "Generar Prompt con IA",
    "modeGenerateDesc": "Describe tu objetivo y deja que la IA genere un borrador de Prompt listo para guardar",
    "generatePromptRequest": "Describe el Prompt que quieres",
    "generatePlaceholder": "Por ejemplo: crea un Prompt para escribir títulos de Xiaohongshu con un tono joven y muy de internet, y entrega 10 opciones.",
    "generateAndCreate": "Generar y crear",
    "analyzing": "Analizando...",
    "analyzeWithAi": "Analizar con IA",
    "parseError": "No se pudo interpretar la respuesta de la IA",
    "analysisFailed": "Falló el análisis con IA",
    "analysisResult": "Resultado del análisis de IA",
    "suggestedFolder": "Carpeta sugerida",
    "create": "Crear"
  },
  "recovery": {
    "title": "Datos recuperables disponibles",
    "description": "Encontramos una o más fuentes recuperables. Revise las cantidades, la fecha y la vista previa antes de elegir qué origen restaurar.",
    "sourceLabel": "Datos encontrados en:",
    "promptCount": "{{count}} prompts",
    "folderCount": "{{count}} carpetas",
    "skillCount": "{{count}} habilidades",
    "dbSize": "Tamaño de la base de datos: {{size}}",
    "recover": "Recuperar datos",
    "recoverSelected": "Restaurar origen seleccionado",
    "dismiss": "Empezar de cero",
    "recovering": "Recuperando datos...",
    "success": "¡Datos recuperados con éxito! La aplicación se reiniciará.",
    "restarting": "La aplicación se está reiniciando...",
    "failed": "Error en la recuperación: {{error}}",
    "overwriteWarning": "Su biblioteca actual tiene {{count}} prompt(s). La recuperación reemplazará sus datos existentes con la copia de seguridad seleccionada. Sus datos actuales se respaldarán automáticamente antes de continuar.",
    "confirmDismiss": "¿Está seguro de que desea comenzar con una base de datos vacía? Sus datos antiguos permanecerán en la ubicación original y podrán recuperarse manualmente más tarde.",
    "sourcesTitle": "Fuentes de recuperación",
    "sourcesDescription": "Elija la fuente que más se parezca a sus datos reales.",
    "sourceCount": "{{count}} fuentes",
    "previewTitle": "Vista previa",
    "previewLoading": "Cargando vista previa...",
    "previewEmpty": "Todavía no hay elementos de vista previa para esta fuente.",
    "previewUnavailable": "La vista previa no está disponible para esta fuente.",
    "previewTruncated": "La vista previa está truncada. Restaure la fuente para ver todos los elementos.",
    "sourceType": {
      "current-residual": "Residuos del directorio actual",
      "external-user-data": "Directorio de datos anterior",
      "upgrade-backup": "Copia automática de actualización",
      "standalone-db-backup": "Copia independiente de base de datos"
    },
    "dataSource": {
      "sqlite": "SQLite",
      "workspace": "Archivos del espacio de trabajo",
      "browser-storage": "Almacenamiento del navegador",
      "skills": "Habilidades",
      "legacy-layout": "Diseño heredado"
    },
    "previewKind": {
      "prompt": "Prompt",
      "folder": "Carpeta",
      "skill": "Habilidad"
    },
    "skillsOnly": "Solo contiene habilidades"
  }
}
