{
  "common": {
    "save": "Salvați",
    "cancel": "Anulează",
    "delete": "Ștergeți",
    "loading": "Se încarcă...",
    "error": "A apărut o eroare",
    "success": "Succes",
    "confirm": "esti sigur?",
    "refresh": "Reîmprospătați",
    "close": "Închide",
    "add": "Adăugați",
    "edit": "Editați",
    "search": "Caută",
    "back": "Înapoi",
    "next": "În continuare",
    "submit": "Trimiteți",
    "reset": "Resetați",
    "copy": "Copiere",
    "copied": "Copiat!",
    "enabled": "Activat",
    "disabled": "Dezactivat",
    "active": "Activ",
    "inactive": "Inactiv",
    "noData": "Nu există date disponibile",
    "nothingHere": "Nothing here yet",
    "configure": "Configurați",
    "manage": "Gestionează",
    "name": "Nume",
    "actions": "Acțiuni",
    "status": "Stare",
    "type": "Tip",
    "model": "Model",
    "models": "modele",
    "provider": "Furnizor",
    "account": "Cont",
    "time": "timpul",
    "details": "Detalii",
    "created": "Creat",
    "lastUsed": "Last Refreshed",
    "loadMore": "Încărcați mai multe",
    "noResults": "Nu s-au găsit rezultate",
    "reloadPage": "Reîncărcați pagina",
    "connected": "Conectat",
    "disconnected": "Deconectat",
    "notConfigured": "Neconfigurat",
    "testConnection": "Testează conexiunea",
    "enable": "Activați",
    "disable": "Dezactivați",
    "columns": "Coloane",
    "newest": "Cel mai nou",
    "oldest": "Cel mai vechi",
    "all": "Toate",
    "none": "Niciuna",
    "yes": "Da",
    "no": "Nu",
    "on": "__MISSING__:ON",
    "off": "__MISSING__:OFF",
    "warning": "Avertisment",
    "note": "Notă",
    "free": "Gratuit",
    "skipToContent": "Treci la conținut",
    "maintenanceServerIssues": "Server is experiencing issues. Some features may be unavailable.",
    "maintenanceServerUnreachable": "Server is unreachable. Reconnecting...",
    "accept": "Acceptați",
    "accountId": "ID contului",
    "alias": "Alias",
    "apiKeyId": "ID-ul cheii API",
    "apiKeyName": "Nume cheie API",
    "apiKeySecret": "Secretul cheii API",
    "authorization": "Autorizare",
    "content-type": "Tip de conținut",
    "content-length": "Lungimea conținutului",
    "cookie": "Cookie",
    "file": "Fișier",
    "host": "Gazdă",
    "id": "ID",
    "import": "Import",
    "limit": "Limită",
    "offset": "Offset",
    "open": "Deschide",
    "origin": "Originea",
    "promptTokens": "Jetoane prompte",
    "completionTokens": "Jetoane de finalizare",
    "totalTokens": "Total de jetoane",
    "rawModel": "Model brut",
    "scope": "Domeniul de aplicare",
    "skill": "Îndemânare",
    "sortBy": "Sortare după",
    "sortOrder": "Ordine de sortare",
    "tab": "Tab",
    "text": "Text",
    "textarea": "Textarea",
    "tool": "Instrument",
    "toolId": "ID instrument",
    "web": "Web",
    "whereUsed": "Unde este folosit",
    "whitelist": "Lista albă",
    "blacklist": "Lista neagră",
    "resolve": "Rezolvați",
    "force": "Forța",
    "base64url": "URL Base64",
    "hex": "Hex",
    "range": "Gama",
    "component": "Componentă",
    "redirect_uri": "URI de redirecționare",
    "idempotency-key": "Cheia Idempotnței",
    "error_description": "Descrierea erorii",
    "code": "Cod",
    "compatible": "Compatibil",
    "chat-completions": "Finalizări de chat",
    "oauth": "OAuth",
    "auth_token": "Jeton de autentificare",
    "crypto": "Cripto",
    "hours": "Ore",
    "selfsigned": "Autosemnat",
    "proxy_id": "ID proxy",
    "proxyId": "ID proxy",
    "connectionId": "ID conexiune",
    "resolveConnectionId": "Rezolvați ID-ul conexiunii",
    "resolve_connection_id": "Rezolvați ID-ul conexiunii",
    "scope_id": "ID domeniului",
    "scopeId": "ID domeniului",
    "jwtSecret": "Secretul JWT",
    "keytar": "Keytar",
    "better-sqlite3": "mai bine-sqlite3",
    "undici": "undici",
    "builder-id": "ID constructor",
    "musicDesc": "Descrierea muzicii",
    "musicGeneration": "Generația muzicală",
    "idc": "IDC",
    "cloud-status-changed": "Starea cloudului s-a schimbat",
    "where_used": "Unde este folosit",
    "windowMs": "Fereastra (ms)",
    "social-github": "GitHub",
    "social-google": "Google",
    "TOOL_ALLOWLIST": "Lista de instrumente permise",
    "TOOL_DENYLIST": "Lista de refulare a instrumentelor",
    "Failed to save pricing": "Nu s-a salvat prețul",
    "Failed to reset pricing": "Nu s-a resetat prețul",
    "apikey": "Cheia API",
    "http": "HTTP",
    "goToDashboard": "Go to Dashboard",
    "checkSystemStatus": "Check System Status",
    "selectModel": "Select Model",
    "combos": "Combos",
    "noModelsFound": "No models found",
    "clear": "Clear",
    "done": "Done",
    "errorOccurred": "Error Occurred",
    "comboDeleted": "Combo Deleted",
    "hide": "Hide",
    "creating": "Creating",
    "comboCreated": "Combo Created",
    "swapFormats": "Swap Formats",
    "daysAgo": "Days Ago",
    "retries": "Retries",
    "errorDuringRestore": "Error During Restore",
    "eventsAppearHint": "Events Appear Hint",
    "noLockouts": "No Lockouts",
    "webSearchDesc": "Web Search Desc",
    "audioProvidersHeading": "Audio Providers Heading",
    "cloudAgentProviders": "Furnizori de agenți cloud",
    "minutesAgo": "Minutes Ago",
    "a": "A",
    "liveAutoRefreshing": "Live Auto Refreshing",
    "webSearch": "Web Search",
    "anthropicPrefixPlaceholder": "Anthropic Prefix Placeholder",
    "addModelToCombo": "Add Model To Combo",
    "failedToLoad": "Failed To Load",
    "categoryMedia": "Category Media",
    "enableCloud": "Enable Cloud",
    "expirationBannerExpiringSoon": "Expiration Banner Expiring Soon",
    "retry": "Retry",
    "embeddings": "Embeddings",
    "errorCount": "Error Count",
    "backupReasonManual": "Backup Reason Manual",
    "safeSearchModerate": "Safe Search Moderate",
    "activeLimiters": "Active Limiters",
    "a2aCardTitle": "A2A Card Title",
    "cloudWorkerUnreachable": "Cloud Worker Unreachable",
    "testFailed": "Test Failed",
    "compatibleBaseUrlHint": "Compatible Base Url Hint",
    "usageTracking": "Usage Tracking",
    "disableCloudTitle": "Disable Cloud Title",
    "noConnections": "No Connections",
    "providerHealth": "Provider Health",
    "confirmDbImport": "Confirm Db Import",
    "notAvailableSymbol": "Not Available Symbol",
    "backupsAvailable": "Backups Available",
    "providerAuto": "Provider Auto",
    "newProviderNamePlaceholder": "New Provider Name Placeholder",
    "a2aQuickStartStep2": "A2A Quick Start Step2",
    "ok": "Ok",
    "available": "Available",
    "noBackupYet": "No Backup Yet",
    "more": "More",
    "noCompatibleYet": "No Compatible Yet",
    "multiProvider": "Multi Provider",
    "repairEnvHint": "Repair Env Hint",
    "disablingCloud": "Disabling Cloud",
    "testBench": "Test Bench",
    "valid": "Valid",
    "cloudBenefitShare": "Cloud Benefit Share",
    "mcpCardTitle": "Mcp Card Title",
    "disableConfirm": "Disable Confirm",
    "filters": "Filters",
    "expirationBannerExpiredDesc": "Expiration Banner Expired Desc",
    "saveComboDefaults": "Save Combo Defaults",
    "cloudConnectedVerified": "Cloud Connected Verified",
    "uptime": "Uptime",
    "compatibleProdPlaceholder": "Compatible Prod Placeholder",
    "fallbackChainsTitle": "Fallback Chains Title",
    "oauthLabel": "Oauth Label",
    "a2aCardDescription": "A2A Card Description",
    "okShort": "Ok Short",
    "maintenance": "Maintenance",
    "formatConverter": "Format Converter",
    "zedImportNetworkError": "Zed Import Network Error",
    "apiKeyLabel": "Api Key Label",
    "noModelsForProvider": "No Models For Provider",
    "mcpCardDescription": "Mcp Card Description",
    "apiTypeLabel": "Api Type Label",
    "configuredProvidersLabel": "Configured Providers Label",
    "maxRetriesLabel": "Max Retries Label",
    "title": "Title",
    "output": "Output",
    "prefixHint": "Prefix Hint",
    "skipWizard": "Skip Wizard",
    "failedCount": "Failed Count",
    "confirmDbImportDesc": "Confirm Db Import Desc",
    "entries": "Entries",
    "until": "Until",
    "disableCombo": "Disable Combo",
    "liveMonitorDescriptionPrefix": "Live Monitor Description Prefix",
    "runningCount": "Running Count",
    "noActiveConnectionsInGroup": "No Active Connections In Group",
    "savedSuccessfully": "Saved Successfully",
    "systemStorage": "System Storage",
    "videoDesc": "Video Desc",
    "maxResults": "Max Results",
    "timeRangeMonth": "Time Range Month",
    "testSummary": "Test Summary",
    "failedSetPassword": "Failed Set Password",
    "audio": "Audio",
    "restore": "Restore",
    "disableWarning": "Disable Warning",
    "moderationsDesc": "Moderations Desc",
    "providerHealthStatusAria": "Provider Health Status Aria",
    "modelNamePlaceholder": "Model Name Placeholder",
    "mcpQuickStartStep2": "Mcp Quick Start Step2",
    "quickStart": "Quick Start",
    "fullExportFailedWithError": "Full Export Failed With Error",
    "loadingBackups": "Loading Backups",
    "anthropicBaseUrlPlaceholder": "Anthropic Base Url Placeholder",
    "description": "Description",
    "noProviderFound": "No Provider Found",
    "auto": "Auto",
    "protocolsDescription": "Protocols Description",
    "cloudSessionNote": "Cloud Session Note",
    "advancedSettings": "Advanced Settings",
    "defaultStrategy": "Default Strategy",
    "purgeExpiredLogs": "Purge Expired Logs",
    "justNow": "Just Now",
    "providerTestFailed": "Provider Test Failed",
    "openaiBaseUrlPlaceholder": "Openai Base Url Placeholder",
    "image": "Image",
    "failedCreateChain": "Failed Create Chain",
    "importDatabase": "Import Database",
    "allDataLocal": "All Data Local",
    "sectionTitle": "Section Title",
    "failedToggle": "Failed Toggle",
    "editCombo": "Edit Combo",
    "testResults": "Test Results",
    "searchQuery": "Search Query",
    "addCcCompatible": "Add Cc Compatible",
    "duplicate": "Duplicate",
    "createCombo": "Create Combo",
    "searchTypeWeb": "Search Type Web",
    "addChain": "Add Chain",
    "prefixLabel": "Prefix Label",
    "listModelsDesc": "List Models Desc",
    "databaseSize": "Database Size",
    "chainCreated": "Chain Created",
    "providerTestTimeout": "Provider Test Timeout",
    "routingStrategy": "Routing Strategy",
    "translateAction": "Translate Action",
    "exportFailed": "Export Failed",
    "connectedVerificationPending": "Connected Verification Pending",
    "a2aQuickStartTitle": "A2A Quick Start Title",
    "couldNotTest": "Could Not Test",
    "testAllCompatible": "Test All Compatible",
    "anthropicCompatibleName": "Anthropic Compatible Name",
    "disabling": "Disabling",
    "failedEnable": "Failed Enable",
    "categoryUtility": "Category Utility",
    "customUrlOptional": "Custom Url Optional",
    "localProviders": "Local Providers",
    "comboNamePlaceholder": "Combo Name Placeholder",
    "memoryRss": "Memory Rss",
    "disableProvider": "Disable Provider",
    "welcomeDesc": "Welcome Desc",
    "nameLabel": "Name Label",
    "allOperational": "All Operational",
    "backupNow": "Backup Now",
    "providerMaxRetriesAria": "Provider Max Retries Aria",
    "textToSpeechDesc": "Text To Speech Desc",
    "machineId": "Machine Id",
    "globalProxy": "Global Proxy",
    "hitsMisses": "Hits Misses",
    "testDesc": "Test Desc",
    "chatDesc": "Chat Desc",
    "importSuccess": "Import Success",
    "chat": "Chat",
    "a2aQuickStartStep1": "A2A Quick Start Step1",
    "importFailed": "Import Failed",
    "inputPlaceholder": "Input Placeholder",
    "providerModelsTitle": "Provider Models Title",
    "lastBackup": "Last Backup",
    "yourEndpoint": "Your Endpoint",
    "autoDisableThresholdDesc": "Auto Disable Threshold Desc",
    "rerankDesc": "Rerank Desc",
    "modelsPathPlaceholder": "Models Path Placeholder",
    "noCombosYet": "No Combos Yet",
    "connectedVerificationPendingWithError": "Connected Verification Pending With Error",
    "comboDefaultsGuideHint1": "Combo Defaults Guide Hint1",
    "enableCloudTitle": "Enable Cloud Title",
    "configuredProvidersHint": "Configured Providers Hint",
    "paused": "Paused",
    "llmProviders": "Llm Providers",
    "enableCombo": "Enable Combo",
    "removeProviderOverrideAria": "Remove Provider Override Aria",
    "nodeVersion": "Node Version",
    "openai": "Openai",
    "exportFailedWithError": "Export Failed With Error",
    "proxyConfigured": "Proxy Configured",
    "concurrencyPerModel": "Concurrency Per Model",
    "protocolTasksLabel": "Protocol Tasks Label",
    "oauthProviders": "Oauth Providers",
    "lockedCount": "Locked Count",
    "deleteChainConfirm": "Delete Chain Confirm",
    "recentTranslations": "Recent Translations",
    "zedImportButton": "Zed Import Button",
    "responsesDesc": "Responses Desc",
    "testedCount": "Tested Count",
    "providersCommaSeparatedPlaceholder": "Providers Comma Separated Placeholder",
    "signatureDefaults": "Signature Defaults",
    "errorCreating": "Error Creating",
    "timeRangeYear": "Time Range Year",
    "compatibleLabel": "Compatible Label",
    "cloudDisabledSuccess": "Cloud Disabled Success",
    "deleteConfirm": "Delete Confirm",
    "check": "Check",
    "safeSearch": "Safe Search",
    "protocolLastActivity": "Protocol Last Activity",
    "openMcpDashboard": "Open Mcp Dashboard",
    "testBenchTab": "Test Bench Tab",
    "chatPathLabel": "Chat Path Label",
    "retryDelay": "Retry Delay",
    "errorUpdating": "Error Updating",
    "ideCliIntegrations": "Ide Cli Integrations",
    "imageGeneration": "Image Generation",
    "apiKeyRequired": "Api Key Required",
    "resetAllTitle": "Reset All Title",
    "connectionError": "Connection Error",
    "modelName": "Model Name",
    "apiKeyForCheck": "Api Key For Check",
    "cloudRequestTimeout": "Cloud Request Timeout",
    "showConfiguredOnly": "Show Configured Only",
    "showFreeOnly": "Numai gratuit",
    "addFirstProvider": "Adăugați primul dvs. furnizor",
    "addFirstProviderDesc": "Conectați un furnizor AI pentru a începe să direcționați cererile prin OmniRoute. Puteți folosi furnizori gratuiti, chei API sau conturi OAuth.",
    "learnMore": "Aflați mai multe",
    "includeDomains": "Include Domains",
    "promptCache": "Prompt Cache",
    "cloudConnected": "Cloud Connected",
    "deleteChain": "Delete Chain",
    "chatPathPlaceholder": "Chat Path Placeholder",
    "databasePath": "Database Path",
    "usingLocalServer": "Using Local Server",
    "globalComboConfig": "Global Combo Config",
    "backupFailed": "Backup Failed",
    "tabProtocols": "Tab Protocols",
    "continue": "Continue",
    "categorySearch": "Category Search",
    "rateLimitStatus": "Rate Limit Status",
    "repairEnvSuccess": "Repair Env Success",
    "nameRequired": "Name Required",
    "country": "Country",
    "trackMetricsDesc": "Track Metrics Desc",
    "durationSecondsShort": "Duration Seconds Short",
    "formatConverterDescription": "Format Converter Description",
    "cloudBenefitAccess": "Cloud Benefit Access",
    "maxRetries": "Max Retries",
    "queueTimeout": "Queue Timeout",
    "addProvider": "Add Provider",
    "realtime": "Realtime",
    "totalTranslations": "Total Translations",
    "protocolActiveStreamsLabel": "Protocol Active Streams Label",
    "repairEnv": "Repair Env",
    "modelsCount": "Models Count",
    "viewBackups": "View Backups",
    "responsesApi": "Responses Api",
    "copyComboName": "Copy Combo Name",
    "failures": "Failures",
    "failedUpdate": "Failed Update",
    "imageDesc": "Image Desc",
    "failedCreate": "Failed Create",
    "remainingOfLimit": "Remaining Of Limit",
    "protocolsTitle": "Protocols Title",
    "expirationBannerExpiringSoonDesc": "Expiration Banner Expiring Soon Desc",
    "source": "Source",
    "failed": "Failed",
    "apiKeyMgmt": "Api Key Mgmt",
    "mcpQuickStartStep1": "Mcp Quick Start Step1",
    "runTest": "Run Test",
    "loadingFallbackChains": "Loading Fallback Chains",
    "healthy": "Healthy",
    "version": "Version",
    "saveBlockWeighted": "Save Block Weighted",
    "zedImportNone": "Zed Import None",
    "noBackupsYet": "No Backups Yet",
    "noGlobalProxy": "No Global Proxy",
    "noModels": "No Models",
    "stickyLimit": "Sticky Limit",
    "passedCount": "Passed Count",
    "zedImportFailed": "Zed Import Failed",
    "saving": "Saving",
    "testAll": "Test All",
    "globalProxyDesc": "Global Proxy Desc",
    "latencyP99": "Latency P99",
    "connectingToCloud": "Connecting To Cloud",
    "responses": "Responses",
    "errorDeleting": "Error Deleting",
    "openaiPrefixPlaceholder": "Openai Prefix Placeholder",
    "enterPassword": "Enter Password",
    "openA2aDashboard": "Open A2A Dashboard",
    "enableProvider": "Enable Provider",
    "modeTest": "Mode Test",
    "failedDeleteChain": "Failed Delete Chain",
    "providerDesc": "Provider Desc",
    "templateLoadHint": "Template Load Hint",
    "lastFailure": "Last Failure",
    "moveDown": "Move Down",
    "providerLabel": "Provider Label",
    "clearCacheFailed": "Clear Cache Failed",
    "imagesGenerations": "Images Generations",
    "repairEnvWorking": "Repair Env Working",
    "millisecondsShort": "Milliseconds Short",
    "globalLabel": "Global Label",
    "failuresPlural": "Failures Plural",
    "completionsLegacyDesc": "Completions Legacy Desc",
    "searchProviders": "Search Providers",
    "chatPathHint": "Chat Path Hint",
    "defaultStrategyDesc": "Default Strategy Desc",
    "latencyP95": "Latency P95",
    "textToSpeech": "Text To Speech",
    "searchType": "Search Type",
    "messages": "Messages",
    "aggregatorsGateways": "Aggregators Gateways",
    "comboStrategyAria": "Combo Strategy Aria",
    "input": "Input",
    "testingConnection": "Testing Connection",
    "excludeDomains": "Exclude Domains",
    "webCookieProviders": "Web Cookie Providers",
    "allTestsPassed": "All Tests Passed",
    "openaiCompatibleName": "Openai Compatible Name",
    "warningCostOptimizedPartialPricing": "Warning Cost Optimized Partial Pricing",
    "comboDefaultsGuideTitle": "Combo Defaults Guide Title",
    "hoursAgo": "Hours Ago",
    "notAvailable": "Not Available",
    "skipAndContinue": "Skip And Continue",
    "moderations": "Moderations",
    "proxyConfig": "Proxy Config",
    "upstreamProxyProviders": "Upstream Proxy Providers",
    "exportAll": "Export All",
    "queuedCount": "Queued Count",
    "resetAll": "Reset All",
    "noTranslations": "No Translations",
    "avgLatency": "Avg Latency",
    "throttleStatus": "Throttle Status",
    "backupRetentionDesc": "Backup Retention Desc",
    "noCBData": "No Cb Data",
    "chainDeleted": "Chain Deleted",
    "timeLeft": "Time Left",
    "expirationBannerExpired": "Expiration Banner Expired",
    "language": "Language",
    "invalidFileType": "Invalid File Type",
    "monitoredProviders": "Monitored Providers",
    "errors": "Errors",
    "heap": "Heap",
    "chatCompletions": "Chat Completions",
    "exampleTemplatesHint": "Example Templates Hint",
    "retryDelayLabel": "Retry Delay Label",
    "audioTranscription": "Audio Transcription",
    "fallbackChainsDesc": "Fallback Chains Desc",
    "exampleTemplates": "Example Templates",
    "connectionsCount": "Connections Count",
    "modelsPathLabel": "Models Path Label",
    "activeProvidersHint": "Active Providers Hint",
    "activeLockouts": "Active Lockouts",
    "invalid": "Invalid",
    "skipPassword": "Skip Password",
    "moveUp": "Move Up",
    "timeRange": "Time Range",
    "stickyLimitDesc": "Sticky Limit Desc",
    "cloudBenefitEdge": "Cloud Benefit Edge",
    "custom": "Custom",
    "verifying": "Verifying",
    "baseUrlLabel": "Base Url Label",
    "setPassword": "Set Password",
    "safeSearchStrict": "Safe Search Strict",
    "noChangesSinceBackup": "No Changes Since Backup",
    "modelsPathHint": "Models Path Hint",
    "audioTranscriptions": "Audio Transcriptions",
    "testCombo": "Test Combo",
    "mcpQuickStartTitle": "Mcp Quick Start Title",
    "comboUpdated": "Combo Updated",
    "weighted": "Weighted",
    "providers": "Providers",
    "ccCompatibleLabel": "Cc Compatible Label",
    "noFallbackChainsDesc": "No Fallback Chains Desc",
    "yesImport": "Yes Import",
    "lockoutsAutoRefreshHint": "Lockouts Auto Refresh Hint",
    "tabApis": "Tab Apis",
    "sectionDescription": "Section Description",
    "filter": "Filter",
    "purgeLogsFailed": "Purge Logs Failed",
    "latency": "Latency",
    "testAllOAuth": "Test All O Auth",
    "mcpQuickStartStep3": "Mcp Quick Start Step3",
    "repairEnvFailed": "Repair Env Failed",
    "zedImportHint": "Zed Import Hint",
    "modelsAcrossEndpoints": "Models Across Endpoints",
    "autoDisableBannedAccounts": "Auto Disable Banned Accounts",
    "securityDesc": "Security Desc",
    "listModels": "List Models",
    "backupRestore": "Backup Restore",
    "target": "Target",
    "zedImportSuccess": "Zed Import Success",
    "lastHeaderUpdate": "Last Header Update",
    "categoryCore": "Category Core",
    "noFallbackChains": "No Fallback Chains",
    "noSearchProviders": "No Search Providers",
    "autoBalance": "Auto Balance",
    "noModelsYet": "No Models Yet",
    "signatureFamily": "Signature Family",
    "externalApiCalls": "External Api Calls",
    "providerOverridesDesc": "Provider Overrides Desc",
    "signatureTool": "Signature Tool",
    "connectionFailed": "Connection Failed",
    "activeLimitersPlural": "Active Limiters Plural",
    "doneDesc": "Done Desc",
    "down": "Down",
    "noDataYet": "No Data Yet",
    "activeProviders": "Active Providers",
    "nameInvalid": "Name Invalid",
    "skip": "Skip",
    "createChain": "Create Chain",
    "audioSpeech": "Audio Speech",
    "cacheCleared": "Cache Cleared",
    "searchTypeNews": "Search Type News",
    "durationMillisecondsShort": "Duration Milliseconds Short",
    "addOpenAICompatible": "Add Open Ai Compatible",
    "chatTesterTab": "Chat Tester Tab",
    "queued": "Queued",
    "domainPlaceholder": "Domain Placeholder",
    "durationMinutesShort": "Duration Minutes Short",
    "verifyingConnection": "Verifying Connection",
    "imageProviders": "Image Providers",
    "protocolToolsLabel": "Protocol Tools Label",
    "queryPlaceholder": "Query Placeholder",
    "videoGeneration": "Video Generation",
    "timeRangeWeek": "Time Range Week",
    "limitExhausted": "Limit Exhausted",
    "failedDisable": "Failed Disable",
    "inMemoryNote": "In Memory Note",
    "compatibleHint": "Compatible Hint",
    "errorShort": "Error Short",
    "advancedHint": "Advanced Hint",
    "restoreFailed": "Restore Failed",
    "searchProvidersHeading": "Search Providers Heading",
    "comboName": "Combo Name",
    "autoDisableDescription": "Auto Disable Description",
    "embeddingsDesc": "Embeddings Desc",
    "operational": "Operational",
    "testAllApiKey": "Test All Api Key",
    "backupCreated": "Backup Created",
    "errorDuringImport": "Error During Import",
    "comboDefaultsGuideHint2": "Combo Defaults Guide Hint2",
    "connecting": "Connecting",
    "fillModelAndProviders": "Fill Model And Providers",
    "syncing": "Syncing",
    "resetConfirm": "Reset Confirm",
    "trackMetrics": "Track Metrics",
    "successful": "Successful",
    "recovering": "Recovering",
    "autoDisableThreshold": "Auto Disable Threshold",
    "anthropic": "Anthropic",
    "syncingData": "Syncing Data",
    "cloudBenefitPorts": "Cloud Benefit Ports",
    "compatibleProviders": "Compatible Providers",
    "freeTierProviders": "Furnizori de nivel gratuit",
    "freeTierLabel": "Nivel gratuit disponibil",
    "freeTierProvidersDesc": "Furnizorii cu niveluri gratuite — unii necesită o înregistrare cu cheie API, alții nu au nevoie de acreditări.",
    "clearCache": "Clear Cache",
    "reqs": "Reqs",
    "addAnthropicCompatible": "Add Anthropic Compatible",
    "apiKeyProviders": "Api Key Providers",
    "tabsAria": "Tabs Aria",
    "resetting": "Resetting",
    "millisecondsAbbr": "Milliseconds Abbr",
    "backupReasonPreRestore": "Backup Reason Pre Restore",
    "disableCloud": "Disable Cloud",
    "newProviderNameAria": "New Provider Name Aria",
    "passwordsMismatch": "Passwords Mismatch",
    "a2aQuickStartStep3": "A2A Quick Start Step3",
    "liveMonitorDescriptionSuffix": "Live Monitor Description Suffix",
    "failedAddProvider": "Failed Add Provider",
    "addAtLeastOneProvider": "Add At Least One Provider",
    "reasonSeparator": "Reason Separator",
    "zedImporting": "Zed Importing",
    "confirmPasswordPlaceholder": "Confirm Password Placeholder",
    "whatYouGet": "What You Get",
    "signatureSession": "Signature Session",
    "errorCountNoCode": "Error Count No Code",
    "testing": "Testing",
    "providersCommaSeparated": "Providers Comma Separated",
    "exportDatabase": "Export Database",
    "hitRate": "Hit Rate",
    "completionsLegacy": "Completions Legacy",
    "removeModel": "Remove Model",
    "timeRangeDay": "Time Range Day",
    "cloudRequestFailed": "Cloud Request Failed",
    "updatedAt": "Updated At",
    "monitoredProvidersHint": "Monitored Providers Hint",
    "connectionSuccessful": "Connection Successful",
    "latencyP50": "Latency P50",
    "logsDeleted": "Logs Deleted",
    "chatTester": "Chat Tester",
    "safeSearchOff": "Safe Search Off",
    "nameHint": "Name Hint",
    "debugToggle": "Debug Toggle",
    "embedding": "Embedding",
    "issuesLabel": "Issues Label",
    "optionAny": "Option Any",
    "maxNestingDepth": "Max Nesting Depth",
    "rerank": "Rerank",
    "checking": "Checking",
    "getStarted": "Get Started",
    "restoreSuccess": "Restore Success",
    "issuesDetected": "Issues Detected",
    "signatureCache": "Signature Cache",
    "modelLockouts": "Model Lockouts",
    "usingCloudProxy": "Using Cloud Proxy",
    "loadingHealth": "Loading Health",
    "providerOverrides": "Provider Overrides",
    "audioTranscriptionDesc": "Audio Transcription Desc",
    "learnedFromHeaders": "Learned From Headers",
    "totalRequests": "Total Requests",
    "cloudUnstableNote": "Cloud Unstable Note",
    "gamificationAdmin": "Administrator de gamification",
    "monitorAnomaliesAndHealth": "Monitorizați anomaliile și sănătatea sistemului",
    "flaggedAnomalies": "Anomalii semnalate",
    "noAnomaliesDetected": "Nu au fost detectate anomalii",
    "apiKey": "Cheia API",
    "xpLastHour": "XP (1h)",
    "zScore": "Scorul Z",
    "tokensCommunityServers": "Servere comunitare",
    "tokensServerNamePlaceholder": "Numele serverului",
    "tokensApiKeyPlaceholder": "cheie API",
    "tokensTokenBalance": "Balanța jetoanelor",
    "tokensSendTokens": "Trimiteți jetoane",
    "tokensRecipientApiKeyId": "Codul cheii API al destinatarului",
    "tokensRecipientApiKeyIdPlaceholder": "Introduceți ID-ul cheii API al destinatarului",
    "tokensReasonOptional": "Motiv (opțional)",
    "tokensReasonPlaceholder": "de ex. bonus, recompensă",
    "tokensTransactionHistory": "Istoricul tranzacțiilor",
    "tokensNoTransactionsYet": "Nicio tranzacție încă",
    "tokensInviteCodes": "Coduri de invitație",
    "tokensMaxUses": "Utilizări maxime",
    "tokensRedeemCode": "Valorificați codul",
    "tokensRedeemCodePlaceholder": "Introdu codul de invitație",
    "tokensYourActiveInvites": "Invitațiile tale active",
    "tierCoverageTitle": "Acoperire de nivel",
    "tierCoverageSubtitle": "Furnizori configurați pe nivel alternativ",
    "batchDetailCopyId": "Copiați ID-ul",
    "batchDetailClose": "Închide",
    "batchDetailEndpoint": "Punct final",
    "batchDetailModel": "Model",
    "batchDetailWindow": "Fereastra",
    "batchDetailCreated": "Creat",
    "providerTopologyEmpty": "Niciun furnizor conectat încă",
    "badgeToastUnlocked": "Insigna deblocată!",
    "batchListSearchPlaceholder": "Căutați după ID, punct final, model...",
    "batchListDeleteAllCompletedTitle": "Ștergeți toate loturile finalizate",
    "batchListBatchesTable": "Loturi",
    "changelogViewerLoading": "Se încarcă jurnalul de modificări din GitHub...",
    "profileLoading": "Se încarcă profilul...",
    "profileHowToEarn": "Cum să câștigi",
    "bootstrapBannerDismiss": "Respingeți",
    "batchListDeleteBatchTitle": "Ștergeți lotul și fișierele acestuia",
    "leaderboardYourRank": "Rangul tău",
    "leaderboardLoading": "Se încarcă clasamentul...",
    "batchFileDetailCopyId": "Copiați ID-ul",
    "batchFileDetailClose": "Închide",
    "batchFileDetailFailedToLoad": "Nu s-a putut încărca conținutul fișierului",
    "batchFilesListSearchPlaceholder": "Căutați după ID sau nume de fișier...",
    "batchFilesListFilesTable": "Fișiere",
    "batchPageLoadingMore": "Se încarcă mai multe…",
    "recommended": "__MISSING__:Recommended",
    "batchConceptTitle": "Batch processing",
    "batchConceptSubtitle": "Process thousands of requests asynchronously at ~50% of the cost (24h window). Ideal for evaluations, classification, and embeddings.",
    "batchConceptHowItWorks": "How it works",
    "batchConceptBenefit50pct": "50% discount on input + output tokens",
    "batchConceptAsync24h": "Async with a 24h completion window",
    "batchConceptUseCases": "Best for bulk classification, evaluations, and embeddings",
    "filesConceptTitle": "Batch files",
    "filesConceptSubtitle": "JSONL files used by batches: input requests, results, and errors.",
    "filesConceptInput": "Input — your JSONL with one request per line",
    "filesConceptOutput": "Output — results from completed requests",
    "filesConceptError": "Errors — requests that failed",
    "filesConceptRetention": "Retention: 30 days by default (29 days on Anthropic)",
    "wizardTitle": "New batch",
    "wizardClose": "Close",
    "wizardNext": "Next",
    "wizardBack": "Back",
    "wizardCancel": "Cancel",
    "wizardCreate": "Create batch",
    "wizardCreating": "Creating…",
    "wizardStep1Destination": "Destination",
    "wizardStep2Input": "Input",
    "wizardStep3Validate": "Validate",
    "wizardStep4Cost": "Cost & create",
    "wizardProviderLabel": "Provider",
    "wizardEndpointLabel": "Endpoint",
    "wizardModelLabel": "Model",
    "wizardInputKindJsonl": "JSONL",
    "wizardInputKindCsv": "CSV (we'll convert)",
    "wizardDropOrPick": "Drop a file or click to pick",
    "wizardCsvMappingTitle": "Map CSV columns → request fields",
    "wizardCsvMappingAddField": "Add field",
    "wizardValidationOk": "All lines valid",
    "wizardValidationErrors": "Validation errors",
    "wizardValidationPreview": "Preview (first 5 requests)",
    "wizardValidationSamplingNote": "File is large — validated by sampling (first 1000 + last 100 lines). Full validation runs server-side.",
    "wizardCostSync": "Sync cost",
    "wizardCostBatch": "Batch cost (-50%)",
    "wizardCostSavings": "Savings",
    "wizardCostEstimatedNotice": "Estimated cost — real billing may vary.",
    "wizardErrorUpload": "Failed to upload file. Try again.",
    "wizardErrorCreate": "Failed to create batch. Try again.",
    "wizardEmptyProviders": "Connect a provider with batch support (OpenAI, Anthropic, or Gemini) to create a batch.",
    "uploadModalTitle": "Upload batch file",
    "uploadModalDropOrPick": "Drop a .jsonl file or click to pick",
    "uploadModalUpload": "Upload",
    "uploadModalCancel": "Cancel",
    "uploadModalError": "Upload failed. Try again.",
    "uploadModalSuccess": "Uploaded",
    "uploadModalSizeLimit": "Max 512 MB",
    "batchListNewButton": "New batch",
    "batchListAutoRefresh": "Auto-refresh 30s",
    "batchListCostColumn": "Cost",
    "batchActionCancel": "Cancel",
    "batchActionDownloadOutput": "Download output",
    "batchActionDownloadErrors": "Download errors",
    "batchActionRetry": "Retry failed",
    "batchActionRetryConfirm": "Retry {n} failed request(s)? Final cost depends on actual tokens consumed.",
    "expirationBadgeCritical": "Critical",
    "expirationBadgeWarning": "Soon",
    "expirationBadgeNormal": "Pending",
    "expirationBadgeExpired": "Expired",
    "filesListUploadButton": "Upload",
    "filesListUsedByColumn": "Used by",
    "filesListUsedByNone": "None",
    "filesListDelete": "Delete",
    "filesListDownload": "Download",
    "batchDetailActionCancel": "Cancel batch",
    "batchDetailActionRetry": "Retry failed requests",
    "batchDetailCancelling": "Cancelling…",
    "batchDetailRetrying": "Preparing retry…",
    "batchDetailCancelConfirm": "Cancel this batch? In-progress requests will stop.",
    "batchActionCancelError": "Failed to cancel batch. Try again.",
    "batchActionRetryError": "Failed to retry failed requests. Try again.",
    "batchConceptRetentionNote": "Results and error files are retained for 30 days (Anthropic: 29 days)",
    "filesListUsedByRoleInput": "input",
    "filesListUsedByRoleOutput": "output",
    "filesListUsedByRoleError": "error",
    "batchListProgressPartial": "(partial)",
    "filesListSizeColumn": "Size",
    "batchListProviderColumn": "Provider",
    "batchListProviderUnknown": "—",
    "batchListBatchCreated": "Batch {id} created — refreshing list…",
    "batchListBatchCreatedDismiss": "Dismiss",
    "batchListRefreshing": "Refreshing…",
    "batchListRefresh": "Refresh",
    "uploadFileModalRemove": "Remove",
    "uploadFileModalUploading": "Uploading…",
    "wizardInputReading": "Reading file…",
    "wizardInputReady": "Ready",
    "wizardInputLargeFileLabel": "Large file — sampling validation",
    "wizardInputCsvJsonlReady": "JSONL generated — ready to validate.",
    "wizardInputLargeFileWarning": "Large file detected — validation runs by sampling (first 5 MB + last 100 KB). Full validation happens server-side.",
    "wizardCostWindow24h": "24h completion window",
    "wizardValidationFieldsOk": "required fields valid",
    "batchListProviderOther": "Other",
    "batchListTitle": "Batches",
    "batchListCount": "{count} batches",
    "batchListRemovingCompleted": "Removing…",
    "batchListRemoveCompleted": "Remove completed",
    "batchListTableStatus": "Status",
    "batchListTableId": "ID",
    "batchListTableEndpoint": "Endpoint",
    "batchListTableModel": "Model",
    "batchListTableProgress": "Progress",
    "batchListTableCreated": "Created",
    "batchListTableExpires": "Expires",
    "batchListLoading": "Loading…",
    "batchListEmpty": "No batches found",
    "batchListValidating": "Validating…",
    "batchStatusAll": "All statuses",
    "batchStatusInProgress": "In progress",
    "batchStatusValidating": "Validating",
    "batchStatusFinalizing": "Finalizing",
    "batchStatusCompleted": "Completed",
    "batchStatusFailed": "Failed",
    "batchStatusCancelled": "Cancelled",
    "batchStatusCancelling": "Cancelling",
    "batchStatusExpired": "Expired",
    "batchStatusCompletedWithFailures": "completed with failures",
    "batchStatusInProgressWithFailures": "in progress (with failures)",
    "batchStatusFinalizingWithFailures": "finalizing (with failures)",
    "batchStatusCancelledWithFailures": "cancelled with failures",
    "batchStatusExpiredWithFailures": "expired (partial)",
    "wizardCostEstimating": "Estimating cost…",
    "wizardCostRequests": "Requests",
    "wizardCostInputTok": "input tok",
    "wizardCostOutputTok": "output tok",
    "wizardCostWindow": "Window",
    "wizardDestinationSelectProvider": "Select a provider…",
    "wizardDestinationSelectModel": "Select a model…",
    "wizardDestinationConnectProvider": "Connect a provider"
  },
  "sidebar": {
    "home": "Acasă",
    "dashboard": "Tabloul de bord",
    "providers": "Furnizorii",
    "combos": "Combo-uri",
    "usage": "Utilizare",
    "analytics": "Analytics",
    "costs": "Costuri",
    "health": "Sănătate",
    "proxy": "Proxy",
    "limits": "Limite și cote",
    "cliTools": "Instrumente CLI",
    "media": "Media",
    "settings": "Setări",
    "translator": "Traducător",
    "playground": "Playground",
    "searchTools": "Search Tools",
    "agents": "Agenți",
    "cloudAgents": "Agenți cloud",
    "memory": "Memory",
    "skills": "Skills",
    "omniSkills": "OmniSkills",
    "agentSkills": "Abilități de agent",
    "docs": "Docs",
    "issues": "Probleme",
    "endpoints": "Puncte finale",
    "endpointsSubtitle": "Adresele URL ale conexiunii dvs. AI",
    "apiManager": "Manager API",
    "apiManagerSubtitle": "Gestionați cheile API și accesul",
    "embeddedServices": "__MISSING__:Embedded Services",
    "embeddedServicesSubtitle": "__MISSING__:Manage local proxy services",
    "logs": "Bușteni",
    "webhooks": "Webhook-uri",
    "webhooksSubtitle": "Primiți notificări despre evenimente",
    "combosSubtitle": "Furnizori de grup pentru failover",
    "batchSubtitle": "Procesați cereri multiple",
    "contextCavemanSubtitle": "Compresie promptă",
    "contextRtkSubtitle": "Filtrarea ieșirii",
    "auditLog": "Jurnal de audit",
    "shutdown": "Închidere",
    "restart": "Reporniți",
    "shutdownConfirm": "Închideți OmniRoute?",
    "restartConfirm": "Reporniți OmniRoute?",
    "version": "v{version}",
    "debug": "Depanați",
    "system": "Sistem",
    "help": "Ajutor",
    "primarySection": "Main",
    "cliSection": "CLI",
    "debugSection": "Debug",
    "systemSection": "System",
    "helpSection": "Help",
    "serverDisconnected": "Server deconectat",
    "serverDisconnectedMsg": "Serverul proxy a fost oprit sau repornește.",
    "expandSidebar": "Extinde bara laterală",
    "collapseSidebar": "Restrângeți bara laterală",
    "themes": "Themes",
    "presetColors": "Popular colors",
    "createTheme": "Create theme",
    "chooseColor": "Pick one color",
    "themeCoral": "Coral",
    "themeBlue": "Blue",
    "themeRed": "Red",
    "themeGreen": "Green",
    "themeViolet": "Violet",
    "themeOrange": "Orange",
    "themeCyan": "Cyan",
    "cliToolsShort": "Instrumente",
    "cache": "Cache",
    "cacheShort": "Cache",
    "batch": "Batch Jobs",
    "themeSystem": "Theme System",
    "whitelabelingDesc": "Whitelabeling Desc",
    "switchThemes": "Switch Themes",
    "themeAccentDesc": "Theme Accent Desc",
    "uploadFavicon": "Upload Favicon",
    "themeDark": "Theme Dark",
    "customLogoDesc": "Custom Logo Desc",
    "sidebarVisibilityToggle": "Sidebar Visibility Toggle",
    "themeAccent": "Theme Accent",
    "resetFavicon": "Reset Favicon",
    "whitelabeling": "Whitelabeling",
    "darkMode": "Dark Mode",
    "uploadLogo": "Upload Logo",
    "themeLight": "Theme Light",
    "appName": "App Name",
    "appNameDesc": "App Name Desc",
    "resetLogo": "Reset Logo",
    "customFavicon": "Custom Favicon",
    "hideHealthLogs": "Hide Health Logs",
    "customLogo": "Custom Logo",
    "appearance": "Appearance",
    "themeSelectionAria": "Theme Selection Aria",
    "themeCreate": "Theme Create",
    "customFaviconDesc": "Custom Favicon Desc",
    "logoPreview": "Logo Preview",
    "themeCustom": "Theme Custom",
    "hideHealthLogsDesc": "Hide Health Logs Desc",
    "faviconPreview": "Favicon Preview",
    "changelog": "Changelog",
    "contextSection": "Context & Cache",
    "contextCaveman": "Caveman",
    "contextRtk": "RTK",
    "contextCombos": "Engine Combos",
    "routingSection": "Routing",
    "protocolsSection": "Protocols",
    "agentsAiSection": "Agents & AI",
    "cacheContextSection": "Cache & Context",
    "analyticsSection": "Analytics",
    "costsSection": "Costs",
    "monitoringSection": "Monitoring",
    "auditSecuritySection": "Audit & Security",
    "devtoolsSection": "Dev Tools",
    "configurationSection": "Configuration",
    "aiFeaturesSection": "AI Features",
    "mcp": "MCP",
    "a2a": "A2A",
    "apiEndpoints": "API Endpoints",
    "batchFiles": "Files",
    "analyticsEvals": "Evals",
    "analyticsSearch": "Search",
    "analyticsUtilization": "Utilization",
    "analyticsComboHealth": "Combo Health",
    "analyticsCompression": "Compression",
    "costsBudget": "Budget",
    "costsQuotaShare": "Quota Sharing",
    "costsPricing": "Pricing",
    "logsProxy": "Proxy Logs",
    "logsConsole": "Console",
    "logsActivity": "Activity",
    "auditMcp": "MCP Audit",
    "auditA2a": "Audit A2A",
    "settingsGeneral": "General",
    "settingsAppearance": "Appearance",
    "settingsAi": "AI Settings",
    "settingsSecurity": "Security",
    "settingsFeatureFlags": "Caracteristici Steaguri",
    "settingsAuthz": "__MISSING__:Authz",
    "settingsRouting": "Routing",
    "settingsResilience": "Resilience",
    "settingsAdvanced": "Advanced",
    "omniProxySection": "OmniProxy",
    "quotaTracker": "Provider Quota",
    "providerQuota": "Provider Quota",
    "runtime": "Runtime",
    "consoleLogs": "Console Logs",
    "globalRouting": "Global Routing",
    "mitmProxy": "MITM Proxy",
    "oneProxy": "1Proxy",
    "agenticFeaturesSection": "Agentic Features",
    "otherFeaturesSection": "Other Features",
    "compressionContextGroup": "Compression Context",
    "toolsGroup": "Tools",
    "integrationsGroup": "Integrations",
    "proxyGroup": "Proxy",
    "costsParametersGroup": "Costs Parameters",
    "auditGroup": "Audit",
    "batchGroup": "Batch",
    "homeSubtitle": "Dashboard overview",
    "providersSubtitle": "Manage AI providers",
    "quotaTrackerSubtitle": "Track usage limits",
    "providerQuotaSubtitle": "Track provider usage limits",
    "runtimeSubtitle": "Realtime resilience & sessions",
    "contextCombosSubtitle": "Combine compression engines",
    "cliToolsSubtitle": "Configure CLI runtimes",
    "agentsSubtitle": "Manage local agents",
    "cloudAgentsSubtitle": "Manage cloud-based agents",
    "apiEndpointsSubtitle": "Expose custom endpoints",
    "proxySubtitle": "HTTP proxy settings",
    "mitmProxySubtitle": "MITM interception",
    "oneProxySubtitle": "Public proxy gateway",
    "leaderboard": "Leaderboard",
    "profile": "Profile",
    "tokens": "Tokens",
    "leaderboardSubtitle": "Rankings and achievements",
    "profileSubtitle": "Account and preferences",
    "tokensSubtitle": "Token usage and budgets",
    "usageSubtitle": "Traffic and usage stats",
    "analyticsComboHealthSubtitle": "Combo target reliability",
    "analyticsUtilizationSubtitle": "Provider utilization",
    "costsSubtitle": "Spend breakdown",
    "cacheSubtitle": "Cache hit rates",
    "analyticsCompressionSubtitle": "Token savings stats",
    "analyticsSearchSubtitle": "Search tool analytics",
    "analyticsEvalsSubtitle": "Eval suite results",
    "logsSubtitle": "Application logs",
    "logsProxySubtitle": "Proxy traffic logs",
    "consoleLogsSubtitle": "Console output",
    "logsActivitySubtitle": "User activity log",
    "healthSubtitle": "System health check",
    "costsPricingSubtitle": "Per-model pricing rules",
    "costsBudgetSubtitle": "Budget limits",
    "costsQuotaShareSubtitle": "Share provider quotas across keys",
    "auditLogSubtitle": "Authorization audit",
    "auditMcpSubtitle": "MCP server audit",
    "auditA2aSubtitle": "A2A protocol audit",
    "translatorSubtitle": "Format conversion",
    "playgroundSubtitle": "Test prompts live",
    "searchToolsSubtitle": "Search tool registry",
    "memorySubtitle": "Persistent agent memory",
    "omniSkillsSubtitle": "Sandbox skill registry",
    "agentSkillsSubtitle": "A2A skill registry",
    "mcpSubtitle": "MCP server controls",
    "a2aSubtitle": "A2A protocol server",
    "mediaSubtitle": "Cached media files",
    "batchFilesSubtitle": "Batch input/output files",
    "settingsSubtitle": "All settings",
    "settingsGeneralSubtitle": "App basics",
    "settingsAppearanceSubtitle": "Theme and layout",
    "settingsAiSubtitle": "AI behavior defaults",
    "globalRoutingSubtitle": "Global routing rules",
    "settingsResilienceSubtitle": "Retries and breakers",
    "settingsAdvancedSubtitle": "Power user options",
    "settingsSecuritySubtitle": "Auth and encryption",
    "settingsFeatureFlagsSubtitle": "Comutați capacitățile sistemului",
    "settingsSidebar": "Sidebar",
    "settingsSidebarSubtitle": "Customize sidebar layout",
    "settingsAuthzSubtitle": "__MISSING__:Route inventory and bypass policy",
    "docsSubtitle": "Documentation",
    "issuesSubtitle": "Report a bug",
    "changelogSubtitle": "Release notes"
  },
  "webhooks": {
    "title": "Webhook-uri",
    "description": "Configurați apelurile HTTP pentru evenimentele de sistem.",
    "configuredWebhooks": "Webhook-uri configurate",
    "configuredWebhooksDesc": "Gestionați punctele finale de livrare, evenimentele abonate, starea și trimiterile de testare.",
    "addWebhook": "Adăugați Webhook",
    "editWebhook": "Editați Webhook",
    "name": "Nume",
    "namePlaceholder": "Monitorizarea productiei",
    "unnamedWebhook": "Webhook fără nume",
    "url": "Adresa URL a punctului final",
    "events": "Evenimente",
    "allEvents": "Toate evenimentele",
    "secret": "Secret",
    "secretPlaceholder": "Lăsați necompletat pentru a genera automat un secret",
    "secretEditPlaceholder": "Lăsați necompletat pentru a păstra secretul actual",
    "status": "Stare",
    "active": "Activ",
    "inactive": "Inactiv",
    "errored": "Eroare",
    "total": "Total",
    "lastTriggered": "Ultimul declanșat",
    "actions": "Acțiuni",
    "enabled": "Activat",
    "enabledDesc": "Webhook-urile dezactivate rămân salvate, dar nu primesc livrări.",
    "refresh": "Reîmprospătați",
    "loading": "Se încarcă webhook-urile...",
    "never": "Niciodată",
    "failureCount": "{count, plural, =0 {no failures} one {# failure} other {# failures}}",
    "testWebhook": "Trimiteți testul",
    "testSuccess": "Webhook de testare a fost trimis cu succes.",
    "testFailed": "Testarea webhook-ului a eșuat.",
    "saveSuccess": "Webhook a fost salvat cu succes.",
    "saveFailed": "Nu s-a putut salva webhook.",
    "loadFailed": "Nu s-au încărcat webhook-urile.",
    "delete": "Ștergeți",
    "deleteConfirm": "Sigur doriți să ștergeți acest webhook?",
    "deleteSuccess": "Webhook a fost șters cu succes.",
    "deleteFailed": "Nu s-a putut șterge webhook.",
    "edit": "Editați",
    "enable": "Activați",
    "disable": "Dezactivați",
    "noWebhooks": "Niciun webhook configurat încă.",
    "signatureTitle": "Semnături Webhook",
    "signatureDescription": "Fiecare livrare include un antet X-Webhook-Signature semnat cu HMAC-SHA256 folosind secretul webhook. Verificați semnătura înainte de a avea încredere în sarcina utilă.",
    "wizard": {
      "cancel": "__MISSING__:Cancel",
      "step1Title": "__MISSING__:Select Integration",
      "step2Title": "__MISSING__:Configure Target",
      "step3Title": "__MISSING__:Events & Test",
      "back": "__MISSING__:Back",
      "next": "__MISSING__:Next",
      "finish": "__MISSING__:Finish",
      "step1Desc": "__MISSING__:Select the target integration system for this webhook."
    },
    "howItWorks": {
      "step1": "__MISSING__:Choose an integration provider (e.g. Slack, Discord, custom webhook) and set up the connection details.",
      "step2": "__MISSING__:Configure system events to subscribe to (e.g. completion errors, model fallbacks, or usage limits).",
      "step3": "__MISSING__:Verify the configuration by sending a test payload to make sure the endpoint receives it.",
      "step4": "__MISSING__:Secure your endpoint by validating the X-Webhook-Signature HMAC-SHA256 header using the webhook's secret.",
      "title": "__MISSING__:How Webhooks Work",
      "customOnly": "__MISSING__:Only applicable for custom endpoint integrations.",
      "hmacRecipeTitle": "__MISSING__:HMAC Verification Recipe",
      "hmacRecipe": "__MISSING__:To verify webhook payloads in Node.js, compute the HMAC-SHA256 of the raw request body using your secret key. Compare it to the X-Webhook-Signature header using timingSafeEqual.",
      "timeoutNote": "__MISSING__:Webhook deliveries have a timeout of 10 seconds.",
      "retryNote": "__MISSING__:Failed deliveries are retried up to 5 times with exponential backoff.",
      "docsLink": "__MISSING__:Read the full Webhooks developer guide",
      "hmacRecipePython": "__MISSING__:Python HMAC verification: hmac.new(secret, body, hashlib.sha256).hexdigest()",
      "hmacRecipeBash": "__MISSING__:Bash HMAC verification: echo -n \"$body\" | openssl dgst -sha256 -hmac \"$secret\""
    },
    "deliveries": {
      "title": "__MISSING__:Delivery Logs",
      "loadFailed": "__MISSING__:Failed to load webhook delivery logs.",
      "empty": "__MISSING__:No deliveries recorded yet. Trigger an event or send a test payload.",
      "status": "__MISSING__:Status",
      "event": "__MISSING__:Event",
      "latency": "__MISSING__:Latency",
      "at": "__MISSING__:Sent At"
    },
    "kinds": {
      "comingSoon": "__MISSING__:Coming Soon",
      "slack": "__MISSING__:Slack",
      "slackDesc": "__MISSING__:Post system events directly into a Slack channel",
      "telegram": "__MISSING__:Telegram",
      "telegramDesc": "__MISSING__:Send event messages using a Telegram bot",
      "discord": "__MISSING__:Discord",
      "discordDesc": "__MISSING__:Deliver real-time updates directly to a Discord server",
      "custom": "__MISSING__:Custom Webhook",
      "customDesc": "__MISSING__:Deliver system event payloads to any HTTPS endpoint",
      "email": "__MISSING__:Email Notification",
      "emailDesc": "__MISSING__:Receive summary updates via email",
      "pagerduty": "__MISSING__:PagerDuty",
      "pagerdutyDesc": "__MISSING__:Trigger alerts on PagerDuty for critical system issues",
      "teams": "__MISSING__:Microsoft Teams",
      "teamsDesc": "__MISSING__:Forward system notifications to Microsoft Teams channels"
    },
    "testPayloadSent": "__MISSING__:Test Payload Sent",
    "testResponse": "__MISSING__:Test Response",
    "validateUrl": {
      "checking": "__MISSING__:Checking URL...",
      "ok": "__MISSING__:URL is valid",
      "blockedPrivate": "__MISSING__:URL is a blocked private address",
      "invalidUrl": "__MISSING__:Invalid URL format"
    },
    "custom": {
      "endpointUrl": "__MISSING__:Endpoint URL",
      "endpointUrlPlaceholder": "__MISSING__:https://api.yourdomain.com/webhook",
      "secretKey": "__MISSING__:Secret Key",
      "secretKeyPlaceholder": "__MISSING__:Enter secret key or leave blank to auto-generate",
      "secretKeyHint": "__MISSING__:Used to sign the payload header for authentication."
    },
    "discord": {
      "webhookUrl": "__MISSING__:Discord Webhook URL",
      "webhookUrlPlaceholder": "__MISSING__:https://discord.com/api/webhooks/...",
      "webhookUrlHint": "__MISSING__:The webhook URL copied from your Discord channel integration settings.",
      "tutorial": "__MISSING__:How to create a Discord webhook:"
    },
    "slack": {
      "webhookUrl": "__MISSING__:Slack Webhook URL",
      "webhookUrlPlaceholder": "__MISSING__:https://hooks.slack.com/services/...",
      "webhookUrlHint": "__MISSING__:The webhook URL copied from your Slack Incoming Webhooks integration.",
      "tutorial": "__MISSING__:How to create a Slack webhook:"
    },
    "telegram": {
      "botToken": "__MISSING__:Telegram Bot Token",
      "botTokenPlaceholder": "__MISSING__:123456789:ABCdefGhIJKlmNoPQRsTUVwxyZ",
      "botTokenHint": "__MISSING__:The HTTP API token received from @BotFather when creating your bot.",
      "chatId": "__MISSING__:Telegram Chat ID / Channel",
      "chatIdPlaceholder": "__MISSING__:-100123456789 or @channelname",
      "chatIdHint": "__MISSING__:The unique numerical identifier or public username of the chat/channel.",
      "tutorial": "__MISSING__:How to configure Telegram webhook:"
    }
  },
  "compliance": {
    "auditTitle": "Audit",
    "auditDescription": "Examinați evenimentele de conformitate și apelurile instrumentului MCP dintr-o singură vedere operațională.",
    "complianceTab": "Conformitate",
    "mcpTab": "Audit MCP",
    "title": "Auditul de conformitate",
    "description": "Politica, accesul, furnizorul și evenimentele de securitate înregistrate de jurnalul de audit de conformitate.",
    "eventType": "Tip de eveniment",
    "eventTypePlaceholder": "Filtrați după acțiune sau tip de eveniment",
    "severity": "Severitate",
    "allSeverities": "Toate severitățile",
    "info": "Info",
    "warning": "Avertisment",
    "critical": "Critic",
    "sourceIp": "IP sursă",
    "userOrKey": "Utilizator / Cheie",
    "action": "Acțiune",
    "result": "Rezultat",
    "details": "Detalii",
    "timestamp": "Marca temporală",
    "from": "De la",
    "to": "Pentru a",
    "refresh": "Reîmprospătați",
    "export": "Exportați",
    "clearFilters": "Ștergeți filtrele",
    "loading": "Se încarcă evenimentele de audit...",
    "showing": "Se afișează {count} din {total} evenimente",
    "policyViolation": "Încălcarea politicii",
    "accessDenied": "Acces refuzat",
    "injectionBlocked": "Injecție blocată",
    "noEvents": "Nu au fost înregistrate evenimente de conformitate.",
    "failedFetch": "Nu s-a putut prelua jurnalul de audit de conformitate.",
    "viewDetails": "Vezi detalii",
    "closeDetails": "Închide detalii",
    "notAvailable": "—",
    "system": "sistem",
    "previous": "Anterior",
    "next": "În continuare",
    "mcpAudit": "Audit MCP",
    "mcpAuditDesc": "Intrări de auditare a apelurilor de instrumente înregistrate de serverul MCP.",
    "failedFetchMcpAudit": "Nu s-a putut prelua jurnalul de audit MCP.",
    "tool": "Instrument",
    "toolPlaceholder": "Filtrați după numele instrumentului",
    "duration": "Durata",
    "apiKey": "Cheia API",
    "output": "Ieșire",
    "allResults": "Toate rezultatele",
    "success": "Succes",
    "failure": "Eșec",
    "noMcpEvents": "Nu au fost înregistrate evenimente de audit MCP.",
    "a2aAudit": "Audit A2A",
    "a2aAuditDesc": "Traseul de audit al execuției sarcinilor înregistrat de serverul A2A.",
    "a2aShowingTasks": "Se afișează {count} din {total} sarcini",
    "a2aSkill": "Îndemânare",
    "a2aSkillPlaceholder": "Filtrați după numele aptitudinii",
    "a2aState": "de stat",
    "a2aAllStates": "Toate statele",
    "a2aStateSubmitted": "Trimis",
    "a2aStateWorking": "De lucru",
    "a2aStateCompleted": "Terminat",
    "a2aStateFailed": "A eșuat",
    "a2aStateCancelled": "Anulat",
    "a2aTaskId": "ID-ul sarcinii",
    "a2aEvents": "Evenimente",
    "a2aArtifacts": "Artefacte",
    "a2aNoTasks": "Nu au fost înregistrate sarcini A2A.",
    "a2aLoadingTasks": "Se încarcă sarcini A2A..."
  },
  "themesPage": {
    "title": "Themes",
    "description": "Choose a preset theme or create your own with a single color",
    "presetColors": "Popular colors",
    "customTheme": "Custom theme",
    "customThemeDesc": "Click create theme and pick one color",
    "createTheme": "Create theme",
    "activePreset": "Active theme"
  },
  "header": {
    "logout": "Deconectare",
    "language": "Limba",
    "providers": "Furnizorii",
    "providerDescription": "Gestionați-vă conexiunile furnizorului dvs. de AI",
    "combos": "Combo-uri",
    "comboDescription": "Combo de modele cu rezervă",
    "usage": "Utilizare și analiză",
    "usageDescription": "Monitorizați-vă utilizarea API-ului, consumul de token-uri și jurnalele de solicitări",
    "analytics": "Analytics",
    "analyticsDescription": "Diagrame, tendințe și perspective de evaluare",
    "cliTools": "Instrumente CLI",
    "cliToolsDescription": "Configurați instrumentele CLI",
    "home": "Acasă",
    "homeDescription": "Bun venit la OmniRoute",
    "endpoint": "Endpoints",
    "endpointDescription": "Manage proxy endpoints, MCP, A2A, and API endpoints",
    "mcp": "MCP",
    "mcpDescription": "Model Context Protocol server management and tools",
    "a2a": "A2A",
    "a2aDescription": "Agent-to-Agent protocol tasks and observability",
    "settings": "Setări",
    "settingsDescription": "Gestionați-vă preferințele",
    "openaiCompatible": "Compatibil cu OpenAI",
    "anthropicCompatible": "Compatibil antropic",
    "media": "Media",
    "mediaDescription": "Generate images, videos, and music",
    "themes": "Themes",
    "themesDescription": "Choose a color theme for the whole dashboard panel",
    "costsDescription": "Track spending, analyze trends, and manage your AI budget across all providers",
    "cacheDescription": "Monitor provider prompt cache efficiency and local semantic response reuse.",
    "limitsDescription": "Configure rate limits and quotas per API key and provider",
    "runtimeDescription": "Live runtime observability — circuit breakers, cooldowns, model lockouts, sessions and quota alerts",
    "apiManagerDescription": "Manage API keys and access control for your OmniRoute instance",
    "batchDescription": "Process large volumes of requests asynchronously with batched API calls",
    "contextCavemanDescription": "Rule-based message compression, language packs, analytics and output mode controls.",
    "contextRtkDescription": "Command-aware compression for tool output, terminal logs and build results.",
    "contextCombosDescription": "Define how engines are combined for different routing scenarios.",
    "changelogDescription": "Stay up to date with the latest platform features and announcements.",
    "agentsDescription": "Manage and configure AI agent tools: Codex, Devin, Jules, and custom agents",
    "cloudAgentsDescription": "Orchestrate cloud-based AI agents with live task tracking and plan approval",
    "memoryDescription": "Persistent conversational memory with semantic search and FTS5 full-text indexing",
    "skillsDescription": "Install and manage sandbox skills for automated prompt and tool execution",
    "agentSkillsDescription": "Agent-ready skills catalog with one-click URL copy for AI client integration",
    "translatorDescription": "Translate and test prompts across API formats: OpenAI ↔ Claude ↔ Gemini",
    "playgroundDescription": "Test prompts interactively with live provider responses and format inspection",
    "searchToolsDescription": "Search analytics, provider breakdown, cache hit rates, and cost tracking",
    "logsDescription": "Real-time request logs, error traces, and streaming event inspector",
    "auditDescription": "Compliance audit trail of API key usage, MCP tool calls, and policy events",
    "webhooksDescription": "Configure webhook endpoints to receive real-time event notifications",
    "healthDescription": "System health overview: providers, circuit breakers, rate limits, and database",
    "proxyDescription": "Configure upstream proxy settings for outbound provider connections",
    "apiEndpointsDescription": "Manage custom API endpoint configurations and routing overrides",
    "batchFilesDescription": "Browse and manage batch job output files and results",
    "analyticsEvalsDescription": "Model evaluation results and performance benchmarks",
    "analyticsSearchDescription": "Search query analytics, cache hit rates, and cost tracking",
    "analyticsUtilizationDescription": "Provider utilization metrics and capacity planning",
    "analyticsComboHealthDescription": "Real-time health and performance of combo routing configurations",
    "analyticsCompressionDescription": "Context compression analytics and token savings",
    "costsBudgetDescription": "Budget limits and spending alerts per API key and provider",
    "costsPricingDescription": "Custom pricing configuration for token cost calculations",
    "logsProxyDescription": "Upstream proxy request logs and traffic inspection",
    "logsConsoleDescription": "Application console output and debug logs",
    "logsActivityDescription": "Audit trail of user actions and system events",
    "auditMcpDescription": "MCP tool invocation audit trail and compliance records",
    "auditA2a": "Audit A2A",
    "auditA2aDescription": "Pista de audit pentru execuția sarcinilor A2A, tranziții de stare și înregistrări de invocare a abilităților",
    "settingsGeneralDescription": "Storage, database, and general instance configuration",
    "settingsAppearanceDescription": "Theme, branding, and visual customization",
    "settingsAiDescription": "AI behaviors, thinking budgets, vision, and memory settings",
    "settingsSecurityDescription": "Authentication, authorization, and access control settings",
    "featureFlags": "Caracteristici Steaguri",
    "featureFlagsDescription": "Capacitățile sistemului de control și caracteristicile experimentale",
    "featureFlagsActive": "{count} activ",
    "featureFlagsInactive": "{count} inactiv",
    "featureFlagsOverrides": "{count} DB suprascrie",
    "featureFlagsSearch": "Căutați steaguri...",
    "featureFlagsCategoryAll": "Toate",
    "featureFlagsCategorySecurity": "Securitate",
    "featureFlagsCategoryNetwork": "Rețea",
    "featureFlagsCategoryPolicies": "Politici",
    "featureFlagsCategoryRuntime": "Timp de rulare",
    "featureFlagsCategoryCli": "CLI",
    "featureFlagsCategoryHealth": "Sănătate",
    "featureFlagsSourceDb": "DB",
    "featureFlagsSourceEnv": "ENV",
    "featureFlagsSourceDefault": "DEF",
    "featureFlagsReset": "Resetați",
    "featureFlagsResetAll": "Resetați toate suprascrierile",
    "featureFlagsResetAllConfirm": "Sigur doriți să resetați toate suprascrierile de semnalizare a caracteristicilor? Acest lucru va readuce toate steaguri la valorile lor ENV sau implicite.",
    "featureFlagsRestartRequired": "Este necesar să reporniți pentru a aplica",
    "featureFlagsNoResults": "Niciun steag nu corespunde căutării dvs",
    "featureFlagsSaved": "Steagul actualizat",
    "featureFlagsError": "Nu s-a putut actualiza marcajul",
    "settingsRoutingDescription": "Routing rules, model aliases, combo defaults, and degradation settings",
    "settingsResilienceDescription": "Circuit breaker, retry, and fallback configuration",
    "settingsAdvancedDescription": "Advanced payload rules, request limits, and proxy API settings",
    "mitmProxyDescription": "Configure MITM proxy settings for traffic inspection and debugging",
    "oneProxyDescription": "Configure 1Proxy settings for advanced proxy chaining"
  },
  "home": {
    "quickStart": "Pornire rapidă",
    "quickStartDesc": "Pune-te în funcțiune în 4 pași. Conectați furnizorii, modelele de traseu, monitorizați totul.",
    "fullDocs": "Documente complete",
    "step1Title": "1. Creați cheia API",
    "step1Desc": "Accesați <endpoint>Endpoint</endpoint> -> Chei înregistrate. Generați o cheie pentru fiecare mediu.",
    "step2Title": "2. Conectați furnizorii",
    "step2Desc": "Adăugați conturi în <providers>Providers</providers>. Acceptă OAuth, cheie API și niveluri gratuite.",
    "step3Title": "3. Indicați-vă clientul",
    "step3Desc": "Setați adresa URL de bază la {url} în clientul dvs. IDE sau API.",
    "step4Title": "4. Monitorizați și optimizați",
    "step4Desc": "Urmăriți jetoanele, costurile și erorile în <logs>Request Logs</logs> și <analytics>Analytics</analytics>.",
    "providersOverview": "Prezentare generală a furnizorilor",
    "configuredOf": "{configured} configurat din {total} furnizori disponibili",
    "noModelsAvailable": "Nu există modele disponibile pentru acest furnizor.",
    "noProvidersConfigured": "Niciun furnizor configurat încă",
    "addProvider": "Adăugați un furnizor",
    "configureFirst": "Configurați mai întâi o conexiune în {providers}",
    "configureProvider": "Configurați furnizorul",
    "modelAvailable": "{count} model disponibil",
    "modelsAvailable": "{count} modele disponibile",
    "connectionsActive": "{count} conexiune activă",
    "connectionsActivePlural": "{count} conexiuni active",
    "copyModelName": "Copiați numele modelului",
    "documentation": "Documentare",
    "healthMonitor": "Monitor de sănătate",
    "reportIssue": "Raportați problema",
    "activeError": "{active} activ · {errors} eroare",
    "oauthLabel": "OAuth",
    "apiKeyLabel": "Cheia API",
    "requestsShort": "{count} solicită",
    "providerModelsTitle": "{provider} - Modele",
    "copiedModel": "Copiat: {model}",
    "aliasLabel": "alias",
    "updateNow": "Actualizați acum",
    "updating": "Se actualizează...",
    "updateAvailableDesc": "Este disponibilă o nouă versiune. Faceți clic pentru a actualiza.",
    "updateStarted": "Actualizarea a început...",
    "reloadingPageAutomatically": "Se reîncarcă pagina automat...",
    "providerTopology": "Topologia furnizorului"
  },
  "analytics": {
    "title": "Analytics",
    "usageAnalyticsTitle": "__MISSING__:Usage Analytics",
    "diversityScoreTitle": "Diversitatea furnizorilor",
    "diversityScoreDesc": "__MISSING__:Provider concentration snapshot for the recent traffic window.",
    "diversityShannonEntropy": "__MISSING__:Shannon entropy",
    "diversityWindow": "__MISSING__:Window: {count} reqs · Last {mins} mins",
    "diversityHealthy": "__MISSING__:Healthy Distribution",
    "diversityRiskHigh": "__MISSING__:High Vendor Lock-in Risk",
    "diversityRiskModerate": "__MISSING__:Moderate Distribution",
    "diversityScoreLabel": "__MISSING__:score",
    "diversityHigherExplanation": "__MISSING__:Higher values mean traffic is spread across multiple providers.",
    "diversityNoData": "__MISSING__:No recent usage data available.",
    "chartRequests": "__MISSING__:Requests",
    "chartInput": "__MISSING__:Input",
    "chartOutput": "__MISSING__:Output",
    "chartTotal": "__MISSING__:Total",
    "chartCost": "__MISSING__:Cost",
    "chartShare": "__MISSING__:Share",
    "chartServiceTier": "__MISSING__:Service Tier",
    "chartServiceTierSplit": "__MISSING__:Fast / Standard cost split",
    "chartCostPct": "__MISSING__:{pct}% of cost",
    "chartUsageDetail": "__MISSING__:Usage Detail",
    "chartCacheRead": "__MISSING__:Cache read",
    "chartCostByProvider": "__MISSING__:Cost by Provider",
    "chartNoCostData": "__MISSING__:No cost data",
    "chartModelUsageOverTime": "__MISSING__:Model Usage Over Time",
    "chartNoData": "__MISSING__:No data",
    "chartWeekly": "__MISSING__:Weekly",
    "chartModelBreakdown": "__MISSING__:Model Breakdown",
    "chartModel": "__MISSING__:Model",
    "chartProvider": "__MISSING__:Provider",
    "chartProviderBreakdown": "__MISSING__:Provider Breakdown",
    "filterAllKeys": "__MISSING__:All Keys",
    "filterSearchKeys": "__MISSING__:Search keys…",
    "filterNoKeysMatch": "__MISSING__:No keys match",
    "filterOneKey": "__MISSING__:1 key",
    "filterMultipleKeys": "__MISSING__:{count} keys",
    "rangeToday": "__MISSING__:Today",
    "rangeYesterday": "__MISSING__:Yesterday",
    "rangeLast3Days": "__MISSING__:Last 3 days",
    "rangeThisWeek": "__MISSING__:This week",
    "rangeLast14Days": "__MISSING__:Last 14 days",
    "rangeThisMonth": "__MISSING__:This month",
    "rangeQuickSelect": "__MISSING__:Quick Select",
    "rangeStart": "__MISSING__:Start",
    "rangeEnd": "__MISSING__:End",
    "rangeCancel": "__MISSING__:Cancel",
    "rangeApply": "__MISSING__:Apply",
    "rangeErrorInvalid": "__MISSING__:Start must be before end",
    "period1D": "__MISSING__:1D",
    "period7D": "__MISSING__:7D",
    "period30D": "__MISSING__:30D",
    "period90D": "__MISSING__:90D",
    "periodYTD": "__MISSING__:YTD",
    "periodAll": "__MISSING__:All",
    "totalTokens": "__MISSING__:Total Tokens",
    "inputTokens": "__MISSING__:Input Tokens",
    "outputTokens": "__MISSING__:Output Tokens",
    "estCost": "__MISSING__:Est. Cost",
    "infraTitle": "__MISSING__:Infrastructure",
    "infraAccounts": "__MISSING__:Accounts",
    "infraProviders": "__MISSING__:Providers",
    "infraApiKeys": "__MISSING__:API Keys",
    "infraModels": "__MISSING__:Models",
    "perfTitle": "__MISSING__:Performance",
    "perfAvgTokens": "__MISSING__:Avg Tokens/Req",
    "perfCostReq": "__MISSING__:Cost/Req",
    "perfIoRatio": "__MISSING__:I/O Ratio",
    "perfFastReq": "__MISSING__:Fast Requests",
    "highlightsTitle": "__MISSING__:Highlights",
    "highlightsTopModel": "__MISSING__:Top Model",
    "highlightsTopProvider": "__MISSING__:Top Provider",
    "highlightsBusiestDay": "__MISSING__:Busiest Day",
    "highlightsDiversity": "__MISSING__:Diversity",
    "highlightsFallbackRate": "__MISSING__:Fallback Rate",
    "customRange": "__MISSING__:Custom",
    "overviewDescription": "Monitorizați-vă modelele de utilizare a API-ului, consumul de simboluri, costurile și tendințele activității la toți furnizorii și modelele.",
    "evalsDescription": "Rulați suite de evaluare pentru a testa și valida punctele finale LLM. Comparați calitatea modelului, detectați regresiile și evaluați latența.",
    "overview": "Prezentare generală",
    "evals": "Evaluări",
    "utilization": "Utilizare",
    "utilizationDescription": "Tendințe de utilizare a cotelor furnizorului și urmărirea limitelor de rată",
    "modelStatus": "Stare model",
    "modelStatusCooldown": "Cooldown",
    "modelStatusUnavailable": "Indisponibil",
    "modelStatusError": "Eroare",
    "comboHealth": "Sănătatea Combo-ului",
    "comboHealthDescription": "Cotă la nivel de combo, distribuția utilizării și metricile de performanță",
    "compressionAnalyticsTitle": "Compression Analytics",
    "compressionAnalyticsDescription": "Compression analytics — token savings, mode breakdown, and provider stats.",
    "autoRoutingTotalAutoRequests": "Total de solicitări automate",
    "autoRoutingAvgSelectionScore": "Scorul mediu de selecție",
    "autoRoutingExplorationRate": "Rata de explorare",
    "autoRoutingLkgpHitRate": "Rata de succes LKGP",
    "autoRoutingRequestsByVariant": "Cereri prin Varianta",
    "autoRoutingTopRoutedProviders": "Furnizori de top direcționați",
    "comboHealthWorstQuotaLeft": "Cea mai proasta cotă rămasă",
    "comboHealthUsageSkew": "Înclinare de utilizare",
    "comboHealthSuccessRate": "Rata de succes",
    "comboHealthQuotaHealth": "Sanatatea cotelor",
    "comboHealthRequests": "Cereri",
    "comboHealthTokens": "Jetoane",
    "comboHealthAvgLatency": "Latență medie",
    "comboHealthTotalRequests": "Total cereri",
    "comboHealthExecutionTargets": "Țintele de execuție",
    "comboHealthSuccess": "Succes",
    "comboHealthLatency": "Latența",
    "comboHealthQuota": "Cotă",
    "comboHealthTitle": "Sănătate combinată",
    "comboHealthUnableToLoad": "Nu se poate încărca sănătatea combinației",
    "comboHealthGettingStarted": "Pentru început",
    "compressionAnalyticsTotalRequests": "Total cereri",
    "compressionAnalyticsTokensSaved": "Jetoane salvate",
    "compressionAnalyticsAvgSavings": "Economii medii",
    "compressionAnalyticsAvgDuration": "Durata medie",
    "compressionAnalyticsReceipts": "Chitanțe",
    "compressionAnalyticsFallbacks": "Fallback-uri",
    "compressionAnalyticsPromptTokens": "Jetoane prompte",
    "compressionAnalyticsCompletionTokens": "Jetoane de finalizare",
    "compressionAnalyticsTotalTokens": "Total de jetoane",
    "compressionAnalyticsCacheTokens": "Jetoane din cache",
    "compressionAnalyticsNoDataYet": "Nu există date de compresie încă",
    "searchAnalyticsTotalSearches": "Total căutări",
    "searchAnalyticsCacheHitRate": "Cache Hit Rate",
    "searchAnalyticsTotalCost": "Costul total",
    "searchAnalyticsAvgResponse": "Răspuns mediu",
    "searchAnalyticsNoSearchesYet": "Nicio căutare încă",
    "providerUtilizationTitle": "Utilizarea furnizorului",
    "providerUtilizationFailedToLoad": "Nu s-au încărcat datele de utilizare",
    "providerUtilizationNoData": "Nu sunt disponibile date de utilizare",
    "providerUtilizationGettingStarted": "Pentru început",
    "providerUtilizationLatestSnapshot": "Cel mai recent instantaneu al cotei",
    "providerUtilizationRemainingCapacity": "Capacitatea rămasă"
  },
  "apiManager": {
    "title": "Chei API",
    "createKey": "Creați cheia API",
    "key": "cheie",
    "revokeKey": "Revocați cheia",
    "revokeConfirm": "Sigur doriți să revocați această cheie API?",
    "noKeys": "Încă nu există chei API",
    "noKeysDesc": "Creați prima cheie API pentru a autentifica solicitările către punctul final",
    "keyLabel": "Eticheta cheii",
    "permissions": "Permisiuni",
    "expiresAt": "Expiră",
    "never": "Niciodată",
    "revoke": "Revocați",
    "showKey": "Afișați cheia",
    "hideKey": "Ascunde cheia",
    "copyKey": "Copiați cheia API",
    "allModels": "Toate modelele",
    "selectedModels": "Modele Selectate",
    "readOnly": "Numai citire",
    "fullAccess": "Acces complet",
    "keyManagement": "Managementul cheilor API",
    "keyManagementDesc": "Creați și gestionați cheile API pentru autentificarea solicitărilor către punctul dvs. final",
    "totalKeys": "Total chei",
    "restricted": "Restricţionat",
    "totalRequests": "Total cereri",
    "modelsAvailable": "Modele disponibile",
    "registeredKeys": "Chei înregistrate",
    "keysRegistered": "{count} chei înregistrate",
    "keyRegistered": "{count} cheie înregistrată",
    "keysSecurityNote": "Fiecare cheie izolează urmărirea utilizării și poate fi revocată independent. Cheile sunt mascate după creare pentru securitate.",
    "createFirstKey": "Creați-vă prima cheie",
    "name": "Nume",
    "usage": "Utilizare",
    "created": "Creat",
    "actions": "Acțiuni",
    "reqs": "solicită",
    "neverUsed": "Nu a fost folosit niciodată",
    "deleteConfirm": "Ștergeți această cheie API?",
    "usageTips": "Sfaturi de utilizare",
    "tipAuth": "Folosiți cheile API în antetul de autorizare ca purtător YOUR_KEY",
    "tipSecure": "Cheile sunt afișate o singură dată în timpul creării - stocați-le în siguranță",
    "tipSeparate": "Creați chei separate pentru diferiți clienți sau medii",
    "tipRestrict": "Limitați cheile la anumite modele pentru o mai bună securitate și control al costurilor",
    "keyName": "Nume cheie",
    "keyNamePlaceholder": "de exemplu, cheie de producție, cheie de dezvoltare",
    "keyNameDesc": "Alegeți un nume descriptiv pentru a identifica scopul acestei chei",
    "managementAccessDesc": "Permite acestei chei API să gestioneze configurația OmniRoute.",
    "selfServiceVisibility": "Vizibilitate self-service",
    "selfServiceVisibilityDesc": "Controlează ce poate vedea această cheie despre propria utilizare și cota upstream partajată.",
    "ownUsageVisibility": "Cost propriu și utilizare tokenuri",
    "ownUsageVisibilityDesc": "Permite acestei chei să apeleze endpointul propriu de stare pentru utilizarea în USD, procentul de buget și totalurile de tokenuri.",
    "sharedAccountQuotaVisibility": "Cotă de cont partajată",
    "sharedAccountQuotaVisibilityDesc": "Permite acestei chei să vadă cota contului upstream partajat când este configurată o conexiune explicită.",
    "keyCreated": "Cheia API creată",
    "keyCreatedSuccess": "Cheie creată cu succes!",
    "keyCreatedNote": "Copiați și stocați această cheie acum - nu va fi afișată din nou.",
    "done": "Gata",
    "savePermissions": "Salvare permisiuni",
    "endpointRestrictions": "__MISSING__:Allowed Endpoints",
    "allEndpointsAllowed": "__MISSING__:This key can access all API endpoints.",
    "endpointsRestricted": "__MISSING__:Restricted to {count} endpoint{count, plural, one {} other {s}}.",
    "autoResolve": "Auto-Resolve",
    "autoResolveDesc": "Auto-resolve ambiguous model names to native provider for this API key.",
    "keyActive": "Key Active",
    "keyActiveDesc": "Enable or disable this API key. Disabled keys are immediately rejected with 403.",
    "accessSchedule": "Access Schedule",
    "accessScheduleDesc": "Restrict access to specific hours and days of the week.",
    "scheduleFrom": "From",
    "scheduleUntil": "Until",
    "scheduleDays": "Days",
    "scheduleTimezone": "Timezone",
    "scheduleTimezoneHint": "Use IANA timezone names, e.g. America/New_York, Europe/Berlin",
    "scheduleActive": "Schedule",
    "disabled": "Disabled",
    "daySun": "Sun",
    "dayMon": "Mon",
    "dayTue": "Tue",
    "dayWed": "Wed",
    "dayThu": "Thu",
    "dayFri": "Fri",
    "daySat": "Sat",
    "allowAll": "Permite Toate",
    "restrict": "Restricționați",
    "allowAllInfo": "Această cheie poate accesa toate modelele disponibile.",
    "restrictInfo": "Această cheie poate accesa {selected} din {total} modele.",
    "selected": "{count} selectat",
    "all": "Toate",
    "clear": "Clar",
    "searchModels": "Căutați modele după nume sau furnizor...",
    "noModelsFound": "Nu s-au găsit modele",
    "keyNameRequired": "Numele cheii este obligatoriu",
    "keyNameTooLong": "Numele cheii trebuie să aibă maximum {max} caractere",
    "keyNameInvalid": "Numele cheii poate conține numai litere, cifre, spații, cratime și liniuțe de subliniere",
    "invalidKeyName": "Nume cheie nevalid",
    "failedCreateKey": "Nu s-a putut crea cheia",
    "failedCreateKeyRetry": "Nu s-a putut crea cheia. Vă rugăm să încercați din nou.",
    "invalidKeyId": "ID cheie nevalid",
    "failedDeleteKey": "Cheia nu s-a șters",
    "failedDeleteKeyRetry": "Cheia nu s-a șters. Vă rugăm să încercați din nou.",
    "invalidModelsSelection": "Selecție nevalidă de modele",
    "cannotSelectMoreThanModels": "Nu se pot selecta mai mult de {max} modele",
    "failedUpdatePermissions": "Nu s-au actualizat permisiunile",
    "failedUpdatePermissionsRetry": "Nu s-au actualizat permisiunile. Vă rugăm să încercați din nou.",
    "unknownProvider": "necunoscut",
    "copyMaskedKey": "Copiați cheia mascată",
    "keyOnlyAvailableAtCreation": "Full key available only at creation time — copy it when you first create the key",
    "modelsCount": "{count, plural, one {# model} other {# models}}",
    "lastUsedOn": "Ultima: {date}",
    "editPermissions": "Editați permisiunile",
    "deleteKey": "Șterge cheia",
    "regenerateKey": "Regenerați cheia",
    "regenerateConfirm": "Sigur doriți să regenerați această cheie API? Vechea cheie va fi imediat invalidată.",
    "failedRegenerateKey": "Nu s-a putut regenera cheia API",
    "failedRegenerateKeyRetry": "Nu s-a putut regenera cheia API. Vă rugăm să încercați din nou.",
    "model": "{count} model",
    "models": "{count} modele",
    "permissionsTitle": "Permisiuni: {name}",
    "allowAllDesc": "Această cheie poate accesa toate modelele disponibile.",
    "restrictDesc": "Această cheie poate accesa {selectedCount} din {totalModels} modele.",
    "selectedCount": "{count} selectat",
    "maxActiveSessions": "Sesiuni active maxime",
    "apiManagerCustomRateLimits": "Limite de tarif personalizate",
    "apiManagerCustomRateLimitsDesc": "Înlocuiți limitele globale implicite. Lăsați gol pentru a utiliza valorile implicite.",
    "apiManagerRateLimitRequestsPlaceholder": "Cereri",
    "apiManagerRateLimitReqPer": "solicitat /",
    "apiManagerRateLimitSecondsPlaceholder": "secunde",
    "apiManagerRemoveLimitTitle": "Eliminați limita",
    "apiManagerTimezonePlaceholder": "America/Sao_Paulo",
    "noLogPayloadPrivacy": "Confidențialitate fără jurnal",
    "bannedStatus": "Stare interzisă",
    "managementApiAccess": "Acces API de gestionare",
    "expirationDate": "Data de expirare",
    "managementAccess": "Acces de management",
    "allowedConnections": "Conexiuni permise",
    "searchPlaceholder": "__MISSING__:Search by name or token...",
    "activeOnly": "__MISSING__:Active only",
    "filterStatus": "__MISSING__:STATUS",
    "filterType": "__MISSING__:TYPE",
    "filterAll": "__MISSING__:All",
    "filterStatusActive": "__MISSING__:Active",
    "filterStatusDisabled": "__MISSING__:Disabled",
    "filterStatusBanned": "__MISSING__:Banned",
    "filterStatusExpired": "__MISSING__:Expired",
    "filterTypeStandard": "__MISSING__:Standard",
    "filterTypeManage": "__MISSING__:Manage",
    "filterTypeRestricted": "__MISSING__:Restricted",
    "shownOf": "__MISSING__:{shown} of {total} shown",
    "emptyFilterTitle": "__MISSING__:No keys match your filters",
    "emptyFilterClear": "__MISSING__:Clear filters",
    "endpointRestrictions": "Allowed Endpoints",
    "allEndpointsAllowed": "This key can access all API endpoints.",
    "endpointsRestricted": "Restricted to {count} endpoint{count, plural, one {} other {s}}."
  },
  "auditLog": {
    "title": "Jurnal de audit",
    "searchPlaceholder": "Acțiuni de căutare...",
    "action": "Acțiune",
    "actor": "actor",
    "target": "țintă",
    "ipAddress": "Adresa IP",
    "timestamp": "Marca temporală",
    "noEntries": "Nu au fost găsite intrări de audit",
    "filterByAction": "Filtrați după acțiune...",
    "filterByActor": "Filtrați după actor...",
    "filterEntriesAria": "Filtrați intrările din jurnalul de audit",
    "filterByActionTypeAria": "Filtrați după tipul de acțiune",
    "filterByActorAria": "Filtrați după actor",
    "refreshAuditLogAria": "Actualizează jurnalul de audit",
    "tableAria": "Intrări din jurnalul de audit",
    "failedFetchAuditLog": "Nu s-a putut prelua jurnalul de audit",
    "notAvailable": "—",
    "description": "Acțiuni administrative și evenimente de securitate",
    "showing": "Se afișează {count} intrări (offset {offset})",
    "previous": "Anterior"
  },
  "media": {
    "title": "Studio media",
    "subtitle": "Generează imagini, videoclipuri și muzică",
    "model": "Model",
    "prompt": "Prompt",
    "generate": "Generează",
    "generating": "Generating...",
    "loadingModels": "Loading available models...",
    "noModels": "No models available. Configure providers with media capabilities first.",
    "error": "Generation Failed",
    "result": "Result",
    "imageDescription": "Generate images from text prompts using OpenAI, xAI, Together, Hyperbolic, SD WebUI, ComfyUI and more.",
    "videoDescription": "Create videos with AnimateDiff, Stable Video Diffusion via ComfyUI or SD WebUI.",
    "musicDescription": "Compose music using Stable Audio Open or MusicGen via ComfyUI.",
    "kinds": {
      "embedding": "__MISSING__:Embedding",
      "image": "__MISSING__:Image",
      "imageToText": "__MISSING__:Image to Text",
      "tts": "__MISSING__:Text to Speech",
      "stt": "__MISSING__:Speech to Text",
      "webSearch": "__MISSING__:Web Search",
      "webFetch": "__MISSING__:Web Fetch",
      "video": "__MISSING__:Video",
      "music": "__MISSING__:Music"
    },
    "noProviders": "__MISSING__:No providers configured for this kind yet.",
    "addConnection": "__MISSING__:Add Connection",
    "backToProviders": "__MISSING__:Back to Providers",
    "connections": "__MISSING__:{count} Connections",
    "noConnections": "__MISSING__:No connections yet — add one from the provider page.",
    "loading": "__MISSING__:Loading..."
  },
  "search": {
    "searchQuery": "Search Query",
    "searchResults": "Search Results",
    "cachedResult": "Cached",
    "searchCost": "Cost",
    "searchTools": "Search Tools",
    "searchToolsDesc": "Advanced search testing with provider comparison",
    "compareProviders": "Compare Providers",
    "rerankResults": "Rerank Results",
    "searchHistory": "Search History",
    "urlOverlap": "URL Overlap",
    "noSearchProviders": "No search providers configured. Add providers in Settings.",
    "noRerankModels": "No rerank model available",
    "webSearch": "Web Search",
    "provider": "Provider",
    "searchType": "Search Type",
    "maxResults": "Max Results",
    "filters": "Filters",
    "country": "Country",
    "language": "Language",
    "timeRange": "Time Range",
    "includeDomains": "Include Domains",
    "excludeDomains": "Exclude Domains",
    "safeSearch": "Safe Search",
    "safeSearchOff": "Off",
    "safeSearchModerate": "Moderate",
    "safeSearchStrict": "Strict",
    "queryPlaceholder": "Enter search query...",
    "providerAuto": "auto (cheapest)",
    "searchTypeWeb": "web",
    "searchTypeNews": "news",
    "optionAny": "any",
    "timeRangeDay": "Past day",
    "timeRangeWeek": "Past week",
    "timeRangeMonth": "Past month",
    "timeRangeYear": "Past year",
    "domainPlaceholder": "example.com",
    "requestTimedOut": "Request timed out ({seconds}s)",
    "networkError": "Network error",
    "formatted": "Formatted",
    "rawJson": "JSON",
    "cacheMiss": "cache miss",
    "cacheHit": "cache hit",
    "latency": "Latency",
    "cost": "Cost",
    "results": "Results",
    "rerank": "Rerank",
    "rerankModel": "Rerank Model",
    "positionDelta": "Position Change",
    "emptyState": "Send a search query to see results",
    "copy": "Copiere",
    "resetToDefault": "Resetați la valoarea implicită",
    "tabSearch": "Search",
    "tabScrape": "Scrape",
    "tabCompare": "Compare",
    "modalitiesGuide": "Modalities guide",
    "searchConceptTitle": "Search",
    "searchConceptDesc": "Search = fetches a list of web results (title, URL, snippet, relevance score)",
    "scrapeConceptTitle": "Scrape",
    "scrapeConceptDesc": "Scrape = extracts the full content of a URL (markdown, text or HTML)",
    "compareConceptTitle": "Compare",
    "compareConceptDesc": "Compare = runs the same query across N providers side-by-side to compare latency, cost and result overlap",
    "rerankConceptTitle": "Rerank",
    "rerankConceptDesc": "Rerank = reorders results via LLM to improve relevance based on the query",
    "autoConceptTitle": "Auto (cheapest)",
    "autoConceptDesc": "Auto (cheapest) = automatically picks the cheapest available provider with configured credentials",
    "providerCatalogTitle": "Provider Catalog",
    "kindSearch": "Search",
    "kindFetch": "Fetch/Scrape",
    "statusConfigured": "Configured",
    "statusMissing": "No credential",
    "statusRateLimited": "Rate limited",
    "configureProvider": "Configure in Providers",
    "loadingProviders": "Loading providers…",
    "failedToLoadProviders": "Failed to load providers",
    "costPerQuery": "Cost/query",
    "freeQuota": "Free quota/mo",
    "scrapeUrl": "URL to scrape",
    "scrapeUrlPlaceholder": "https://example.com",
    "scrapeExtract": "Extract",
    "scrapeExtracting": "Extracting…",
    "scrapeFullPage": "Full page",
    "scrapeFormat": "Format",
    "formatMarkdown": "Markdown",
    "formatHtml": "HTML",
    "formatText": "Text",
    "scrapePreview": "Preview",
    "scrapeRaw": "Raw",
    "scrapeContentTruncated": "(truncated, view raw)",
    "scrapeMetadata": "Metadata",
    "scrapeProvider": "Provider",
    "scrapeSize": "Size",
    "compareRun": "Compare",
    "compareRunning": "Comparing…",
    "autoProvider": "Auto (cheapest)",
    "configuredStatus": "Configured",
    "rateLimitedStatus": "Rate limited",
    "noCredential": "No credential",
    "searchTypeLabel": "Type",
    "rerankModelLabel": "Rerank model",
    "noneOption": "None",
    "size": "Size"
  },
  "cliTools": {
    "title": "Instrumente CLI",
    "noActiveProviders": "Nu există furnizori activi",
    "noActiveProvidersDesc": "Vă rugăm să adăugați și conectați mai întâi furnizorii pentru a configura instrumentele CLI.",
    "mapModels": "Modele de hartă",
    "testConnection": "Testează conexiunea",
    "connectionStatus": "Starea conexiunii",
    "configureEndpoint": "Configurați punctul final",
    "instructions": "Instrucțiuni",
    "modelMapping": "Maparea modelului",
    "baseUrl": "Adresa URL de bază",
    "apiKey": "Cheia API",
    "configured": "Configurat",
    "notConfigured": "Neconfigurat",
    "notInstalled": "Neinstalat",
    "custom": "Personalizat",
    "unknown": "Necunoscut",
    "lastSavedAt": "Ultima salvare: {date}",
    "never": "Niciodată",
    "justNow": "tocmai acum",
    "minutesAgoShort": "{count}m în urmă",
    "hoursAgoShort": "acum {count}h",
    "daysAgoShort": "acum {count}d",
    "monthsAgoShort": "{count}lună în urmă",
    "yearsAgoShort": "{count}y în urmă",
    "runtimeCheckFailed": "Verificarea timpului de execuție a eșuat",
    "yourApiKeyPlaceholder": "cheia-api",
    "modelPlaceholder": "provider/model-id",
    "configurationSaved": "Configurația a fost salvată cu succes.",
    "failedToSave": "Nu s-a putut salva configurația.",
    "noApiKeysCreateOne": "Fără chei API - Creați una în pagina Chei",
    "defaultOmnirouteKey": "sk_omniroute (implicit)",
    "selectModel": "Selectați Model",
    "selectModelForAlias": "Selectați modelul pentru {alias}",
    "selectModelForTool": "Selectați modelul pentru {tool}",
    "select": "Selectați",
    "clear": "Clar",
    "comingSoon": "În curând",
    "checkingRuntime": "Se verifică starea de rulare...",
    "guideOnlyIntegration": "Integrare numai cu ghid (nu este necesar un timp de rulare local)",
    "cliRuntimeDetected": "Runtime CLI detectat și gata",
    "cliFoundNotRunnable": "CLI găsit, dar nu poate fi executat{reason}",
    "cliRuntimeNotDetected": "Runtime CLI nu a fost detectat",
    "binary": "Binar",
    "configPath": "Calea de configurare",
    "configPathShort": "Config",
    "failedCheckRuntimeStatus": "Nu s-a putut verifica starea de rulare.",
    "copy": "Copiere",
    "copied": "Copiat",
    "copyConfig": "Copiați config",
    "saveConfig": "Salvați configurația",
    "selectionSaved": "Selecția a fost salvată",
    "guide": "Ghid",
    "detected": "Detectat",
    "notReady": "Nu este gata",
    "active": "Activ",
    "inactive": "Inactiv",
    "startMitm": "Porniți MITM",
    "stopMitm": "Opriți MITM",
    "mitmStarted": "MITM a început cu succes!",
    "mitmStopped": "MITM sa oprit cu succes!",
    "failedStart": "Nu s-a pornit MITM",
    "failedStop": "Nu s-a oprit MITM",
    "saveMappings": "Salvați mapările",
    "mappingsSaved": "Mapări salvate!",
    "failedSaveMappings": "Nu s-au salvat mapările",
    "howItWorks": "Cum funcționează:",
    "antigravityHowWorksDesc": "Antigravitația trimite solicitări către punctul final al Google. MITM le interceptează și le redirecționează către OmniRoute.",
    "antigravityStep1": "1. Porniți MITM pentru a direcționa cererile prin OmniRoute.",
    "antigravityStep2Prefix": "2. Adăugați",
    "antigravityStep2Suffix": "în fișierul hosts ca 127.0.0.1.",
    "antigravityStep3": "3. Deschideți Antigravity și cererile vor fi trimise prin proxy.",
    "mitmHowWorksDesc": "{toolName} sends requests to its provider endpoint. MITM intercepts and redirects them to OmniRoute.",
    "mitmStep1": "1. Start MITM to route requests through OmniRoute.",
    "mitmStep2Prefix": "2. Add",
    "mitmStep2Suffix": "to your hosts file as 127.0.0.1.",
    "mitmStep3": "3. Open {toolName} and requests will be proxied.",
    "sudoPasswordRequiredTitle": "Parola Sudo este necesară",
    "sudoPasswordHint": "Parola de administrator este necesară pentru a modifica setările de fișiere gazdă și proxy de sistem.",
    "enterSudoPassword": "Introdu parola sudo",
    "sudoPasswordRequiredError": "Este necesară parola Sudo.",
    "cancel": "Anulează",
    "confirm": "Confirmați",
    "settingsApplied": "Setările aplicate cu succes!",
    "failedApplySettings": "Nu s-au putut aplica setările",
    "settingsReset": "Setările sunt resetate cu succes!",
    "failedResetSettings": "Nu s-au resetat setările",
    "backupRestored": "Backup restaurat!",
    "failedRestore": "Restabilirea eșuată",
    "checkingCli": "Se verifică {tool} CLI...",
    "cliNotRunnable": "{tool} CLI instalat, dar nu poate fi executat",
    "cliNotInstalled": "{tool} CLI nu este instalat",
    "cliNotDetected": "{tool} CLI nu a fost detectat",
    "cliDetectedReady": "{tool} CLI a fost detectat și gata",
    "cliFoundFailedHealthcheck": "{tool} CLI a fost găsit, dar a eșuat verificarea stării de funcționare{reason}.",
    "installCliPrompt": "Instalați {tool} CLI pentru a utiliza această funcție.",
    "installCodexPrompt": "Instalați Codex CLI pentru a utiliza funcția de aplicare automată.",
    "hide": "Ascunde",
    "howToInstall": "Cum se instalează",
    "installationGuide": "Ghid de instalare",
    "platforms": "macOS / Linux / Windows:",
    "afterInstallationRun": "După instalare, rulați",
    "toVerify": "a verifica.",
    "current": "Curent",
    "baseUrlPlaceholder": "https://.../v1",
    "resetToDefault": "Resetați la valoarea implicită",
    "providerModelPlaceholder": "provider/model-id",
    "apply": "Aplicați",
    "reset": "Resetați",
    "manualConfig": "Configurare manuală",
    "backups": "Backup-uri",
    "configBackups": "Backup-uri de configurare",
    "noBackupsYet": "Încă nu există copii de rezervă. Backup-urile sunt create automat înainte de fiecare Aplicare sau Resetare.",
    "restore": "Restaurați",
    "backupRestoredReloading": "Backup restaurat! Starea reîncărcării...",
    "failedRestoreBackup": "Nu s-a restabilit backupul",
    "applied": "Aplicat!",
    "failed": "A eșuat",
    "resetDone": "Resetați!",
    "omnirouteConfiguredOpenAiCompatible": "OmniRoute este configurat ca furnizor compatibil cu OpenAI",
    "provider": "Furnizor",
    "model": "Model",
    "providers": "Furnizorii",
    "auth": "Auth",
    "noApiKeysAvailable": "Nu există chei API disponibile",
    "usingDefaultOmniroute": "Folosind implicit: sk_omniroute",
    "updateConfig": "Actualizați configurația",
    "applyConfig": "Aplicați Config",
    "noBackupsAvailable": "Nu există copii de rezervă disponibile.",
    "profileSaved": "Profilul „{name}” a fost salvat!",
    "failedSaveProfile": "Nu s-a salvat profilul",
    "profileActivated": "Profil activat!",
    "failedActivateProfile": "Nu s-a activat profilul",
    "profiles": "Profiluri",
    "savedProfiles": "Profiluri salvate",
    "noProfilesYet": "Niciun profil nu a fost salvat încă. Salvați configurația curentă ca profil de mai jos.",
    "activate": "Activați",
    "deleteProfile": "Ștergeți profilul",
    "profileNamePlaceholder": "Numele profilului (de ex., Cont personal)",
    "saveCurrent": "Salvați curent",
    "codexAuthNotePrefix": "Codex folosește",
    "codexAuthNoteMiddle": "cu",
    "codexAuthNoteSuffix": "Faceți clic pe „Aplicați” pentru a configura automat.",
    "claudeManualConfiguration": "Claude CLI - Configurare manuală",
    "codexManualConfiguration": "Codex CLI - Configurare manuală",
    "droidManualConfiguration": "Factory Droid - Configurare manuală",
    "openClawManualConfiguration": "Open Claw - Configurare manuală",
    "clineManualConfiguration": "Configurare manuală a liniei",
    "kiloManualConfiguration": "Configurare manuală a codului Kilo",
    "whenToUseLabel": "Când să utilizați",
    "openToolDocs": "Deschideți documentele instrumentului",
    "toolUseCases": {
      "claude": "Utilizați atunci când doriți fluxuri de lucru puternice de planificare și refactorări lungi cu mai multe fișiere cu Claude Code.",
      "codex": "Utilizați atunci când echipa dvs. este standardizată pe fluxurile OpenAI Codex CLI și pe autentificarea bazată pe profil.",
      "droid": "Utilizați atunci când aveți nevoie de un agent terminal ușor, concentrat pe codificarea rapidă și buclele de execuție a comenzilor.",
      "openclaw": "Utilizați atunci când doriți un agent de codare în stil Open Claw, dar direcționat prin politicile OmniRoute.",
      "cline": "Utilizați atunci când configurați agenți de codare în cadrul editorilor și doriți o configurare ghidată cu modelele OmniRoute.",
      "kilo": "Utilizați atunci când fluxul dvs. de lucru depinde de comenzile Kilo Code și de editările iterative rapide.",
      "cursor": "Utilizați când codați în Cursor și aveți nevoie de modele personalizate compatibile cu OpenAI prin OmniRoute.",
      "continue": "Utilizați atunci când rulați Continue în IDE-uri și aveți nevoie de o configurație portabilă a furnizorului bazată pe JSON.",
      "opencode": "Utilizați atunci când preferați rulările de agent nativ terminal și automatizarea prin script prin OpenCode.",
      "kiro": "Utilizați atunci când integrați Kiro și controlați rutarea modelului central din OmniRoute.",
      "windsurf": "Use when you want an AI-first IDE with Codeium/Windsurf models routed through OmniRoute.",
      "antigravity": "Utilizați atunci când traficul Antigravity/Kiro trebuie interceptat prin MITM și direcționat către OmniRoute.",
      "copilot": "Utilizați atunci când doriți UX în stilul de chat Copilot, în timp ce aplicați cheile și regulile de rutare OmniRoute.",
      "amp": "Use when you want Amp CLI routed through OmniRoute with stable shorthand aliases and OpenAI-compatible setup.",
      "qwen": "Use when you want Qwen Code CLI with OmniRoute-managed provider settings and multi-provider model access.",
      "hermes": "Utilizați atunci când aveți nevoie de un asistent AI nativ pentru terminale ușor pentru sarcini rapide.",
      "hermes-agent": "__MISSING__:Use when you need Hermes Agent (by Nousresearch) with default, delegation, vision and auxiliary models routed through OmniRoute.",
      "custom": "Utilizați pentru implementări de instrumente personalizate sau configurații generice compatibile cu OpenAI."
    },
    "toolDescriptions": {
      "antigravity": "Google Antigravity IDE cu MITM",
      "claude": "Codul antropic Claude CLI",
      "codex": "OpenAI Codex CLI",
      "droid": "Factory Droid AI Assistant",
      "openclaw": "Deschideți Asistentul Claw AI",
      "cline": "CLI Cline AI Coding Assistant",
      "kilo": "Kilo Code AI Assistant CLI",
      "cursor": "Cursor AI Code Editor",
      "continue": "Continuați Asistentul AI",
      "opencode": "OpenCode AI coding agent (Terminal)",
      "kiro": "Amazon Kiro — AI-powered IDE",
      "windsurf": "Windsurf AI Code Editor",
      "copilot": "GitHub Copilot AI Assistant",
      "qwen": "Alibaba Qwen Code CLI",
      "amp": "Sourcegraph Amp coding assistant CLI",
      "hermes": "Hermes AI Terminal Assistant",
      "hermes-agent": "__MISSING__:Hermes Agent (by Nousresearch) - Advanced terminal AI with multi-model support (delegation, vision, compression, etc.)",
      "custom": "Generator de configurații CLI sau SDK generic compatibil cu OpenAI"
    },
    "guides": {
      "cursor": {
        "notes": {
          "0": "Este necesar un cont Cursor Pro pentru a utiliza această funcție.",
          "1": "Cursorul direcționează cererile prin propriul server, astfel încât punctul final local nu este acceptat. Vă rugăm să activați Cloud Endpoint în Setări."
        },
        "steps": {
          "1": {
            "title": "Deschide Setări",
            "desc": "Accesați Setări -> Modele"
          },
          "2": {
            "title": "Activați API-ul OpenAI",
            "desc": "Activați opțiunea „Cheie API OpenAI”."
          },
          "3": {
            "title": "Adresa URL de bază"
          },
          "4": {
            "title": "Cheia API"
          },
          "5": {
            "title": "Adăugați model personalizat",
            "desc": "Faceți clic pe „Vedeți toate modelele” -> „Adăugați modelul personalizat”"
          },
          "6": {
            "title": "Selectați Model"
          }
        }
      },
      "continue": {
        "steps": {
          "1": {
            "title": "Deschideți Config",
            "desc": "Deschideți Continuați fișierul de configurare"
          },
          "2": {
            "title": "Cheia API"
          },
          "3": {
            "title": "Selectați Model"
          },
          "4": {
            "title": "Adăugați configurația modelului",
            "desc": "Adăugați următoarea configurație la matricea dvs. de modele:"
          }
        },
        "notes": {
          "0": "Continuați folosește fișierul de configurare JSON."
        }
      },
      "opencode": {
        "steps": {
          "1": {
            "title": "Install OpenCode",
            "desc": "Install via npm: npm install -g opencode-ai"
          },
          "2": {
            "title": "API Key"
          },
          "3": {
            "title": "Set Base URL",
            "desc": "opencode config set baseUrl {baseUrl}"
          },
          "4": {
            "title": "Select Model"
          },
          "5": {
            "title": "Use Thinking Variant",
            "desc": "For thinking models, run with --variant high/low/max (example command below)."
          }
        },
        "notes": {
          "0": "OpenCode necesită configurarea cheii API.",
          "1": "Setați adresa URL de bază la punctul final OmniRoute."
        }
      },
      "kiro": {
        "steps": {
          "1": {
            "title": "Open Kiro Settings",
            "desc": "Go to Settings → AI Provider"
          },
          "2": {
            "title": "Base URL",
            "desc": "Paste your OmniRoute endpoint URL"
          },
          "3": {
            "title": "API Key"
          },
          "4": {
            "title": "Select Model"
          }
        },
        "notes": {
          "0": "Kiro necesită un cont Amazon."
        }
      },
      "windsurf": {
        "steps": {
          "1": {
            "title": "Open AI Settings",
            "desc": "Click the AI Settings icon in Windsurf or go to Settings"
          },
          "2": {
            "title": "Add Custom Provider",
            "desc": "Select \"Add custom provider\" (OpenAI-compatible)"
          },
          "3": {
            "title": "Base URL",
            "desc": "http://127.0.0.1:20128/v1"
          },
          "4": {
            "title": "API Key",
            "desc": "Select your OmniRoute API key"
          },
          "5": {
            "title": "Select Model",
            "desc": "Choose a model from the dropdown"
          }
        }
      }
    },
    "autoConfiguredTab": "Auto Configured Tab",
    "toolCategoriesDesc": "Tool Categories Desc",
    "allToolsTab": "All Tools Tab",
    "guidedClientsTab": "Guided Clients Tab",
    "mitmClientsTab": "Mitm Clients Tab",
    "customCliTab": "CLI personalizat",
    "toolCategories": "Tool Categories",
    "visibleToolsCount": "{count} instrumente disponibile",
    "customCliBuilderTitle": "Generator CLI compatibil cu OpenAI",
    "customCliBuilderDescription": "Generați variabile de mediu și fragmente JSON pentru orice CLI sau SDK care acceptă o adresă URL de bază compatibilă cu OpenAI, o cheie API și un ID de model.",
    "customCliNoModels": "Conectați cel puțin un furnizor pentru a popula selectorii de model.",
    "customCliNameLabel": "Nume CLI",
    "customCliNamePlaceholder": "de ex. Echipa mea CLI",
    "customCliDefaultModelLabel": "Model implicit",
    "customCliDefaultModelHelp": "Utilizați orice ID de model OmniRoute sau combo. Majoritatea CLI-urilor compatibile cu OpenAI au nevoie doar de adresa URL de bază /v1 plus un șir de model.",
    "customCliKeyHelper": "Pentru instalări locale, OmniRoute poate folosi sk_omniroute. În modul cloud, alegeți una dintre cheile API de gestionare.",
    "customCliAliasMappingsLabel": "Mapări cu alias",
    "customCliAliasMappingsHelp": "Aliasuri de ajutor opționale pentru scripturile wrapper sau fișierele de configurare care doresc nume prescurtate stabile.",
    "customCliAddAlias": "Adăugați alias",
    "customCliNoMappings": "Încă nu există mapări de alias. Adăugați unul dacă scripturile pentru wrapper sau echipă folosesc nume scurte stabile.",
    "customCliAliasPlaceholder": "de ex. revizuire",
    "customCliTargetModelLabel": "Model țintă",
    "customCliEndpointHintLabel": "Cum să conectați punctul final",
    "customCliEndpointHint": "Îndreptați orice client compatibil OpenAI către adresa URL de bază OmniRoute /v1. Punctul final de finalizare a chatului brut este {endpoint}. Utilizați blocul JSON când instrumentul dorește un obiect furnizor sau scriptul env când citește variabilele OPENAI_*.",
    "customCliEnvBlockTitle": "Fragment Env/shell",
    "customCliJsonBlockTitle": "Blocul JSON al furnizorului",
    "copilotConfigGenerator": "Generator de configurare GitHub Copilot",
    "copilotApiKey": "Cheia API",
    "copilotFilterModelsPlaceholder": "Modele de filtre...",
    "copilotMaxInputTokens": "Număr maxim de jetoane de intrare",
    "copilotMaxOutputTokens": "Jetoane de ieșire maximă",
    "copilotToolCalling": "Apelarea instrumentului",
    "copilotPasteInto": "Lipiți în: ",
    "wireApiChatCompletions": "Finalizări de chat (/chat/completions)",
    "wireApiResponses": "API-ul Responses (/responses)"
  },
  "combos": {
    "title": "Combo-uri",
    "description": "Creați combinații de modele cu rutare ponderată și suport alternativ",
    "autoCatalogTitle": "Catalog de rutare automată",
    "autoCatalogTemplateCount": "{count} șabloane",
    "autoCatalogDescription": "Combo auto/* încorporate rezolvate dinamic de la furnizorii conectați. Utilizați oricare dintre aceste ID-uri ca câmp de model - nu este necesară configurarea.",
    "autoCatalogExpand": "Extindeți catalogul de rutare automată",
    "autoCatalogCollapse": "Restrânge catalogul de rutare automată",
    "createCombo": "Creați Combo",
    "editCombo": "Editează Combo",
    "deleteCombo": "Ștergeți Combo",
    "noModels": "Fara modele",
    "noModelsYet": "Nu au fost adăugate modele încă",
    "addModel": "Adăugați modelul",
    "addModelToCombo": "Adăugați modelul la Combo",
    "routingStrategy": "Strategia de rutare",
    "maxRetries": "Reîncercări maxime",
    "timeout": "Timeout (ms)",
    "healthcheck": "Controlul de sănătate",
    "priority": "Prioritate",
    "fallback": "Revenire",
    "roundRobin": "Round Robin",
    "random": "Aleatoriu",
    "leastLatency": "Latență minimă",
    "comboName": "Nume combinat",
    "comboNamePlaceholder": "combo-ul meu",
    "deleteConfirm": "Ștergeți această combinație?",
    "noCombosYet": "Nicio combinație încă",
    "comboCreated": "Combo creat cu succes",
    "comboUpdated": "Combo actualizat cu succes",
    "comboDeleted": "Combo a fost șters",
    "failedCreate": "Nu s-a putut crea combo",
    "failedUpdate": "Nu s-a putut actualiza combo",
    "errorCreating": "Eroare la crearea comboiului",
    "errorUpdating": "Eroare la actualizarea comboiului",
    "errorDeleting": "Eroare la ștergerea combinației",
    "testFailed": "Solicitarea de testare a eșuat",
    "failedToggle": "Combo nu a putut fi comutat",
    "testResults": "Rezultatele testului — {name}",
    "resolvedBy": "Rezolvată de:",
    "more": "+{count} mai mult",
    "reqs": "solicită",
    "success": "succes",
    "proxyConfigured": "Proxy configurat",
    "copyComboName": "Copiați numele combinației",
    "enableCombo": "Activați combo",
    "disableCombo": "Dezactivează combo",
    "testCombo": "Test combo",
    "duplicate": "Duplicat",
    "proxyConfig": "Configurare proxy",
    "nameRequired": "Numele este obligatoriu",
    "nameInvalid": "Doar litere, cifre, -, _, / și . permis",
    "nameHint": "Litere, cifre, -, _, / și . permis",
    "priorityDesc": "Secvenţială alternativă: încearcă mai întâi modelul 1, apoi 2 etc.",
    "weightedDesc": "Distribuie traficul în procente de greutate cu rezervă",
    "roundRobinDesc": "Distribuție circulară: fiecare cerere trece la următorul model în rotație",
    "contextRelay": "Context Relay",
    "contextRelayDesc": "Preserves session continuity with handoff summaries when accounts rotate",
    "randomDesc": "Selectare aleatorie uniformă, apoi revenire la modelele rămase",
    "leastUsedDesc": "Alege modelul cu cele mai puține solicitări, echilibrând sarcina în timp",
    "costOptimizedDesc": "Rute către cel mai ieftin model mai întâi pe baza prețului",
    "resetAware": "Reset-Aware RR",
    "resetAwareDesc": "Echilibrează cota rămasă față de 5 ore și resetări săptămânale, apoi scoruri similare la round-robin",
    "strictRandom": "Strict Random",
    "strictRandomDesc": "Shuffle deck — uses each model once before reshuffling",
    "models": "Modele",
    "autoBalance": "Auto-echilibrare",
    "advancedSettings": "Setări avansate",
    "retryDelay": "Întârziere reîncercare (ms)",
    "concurrencyPerModel": "Concurență / Model",
    "queueTimeout": "Timp de așteptare la coadă (ms)",
    "contextRelayHandoffThreshold": "Handoff Threshold",
    "contextRelayHandoffThresholdHelp": "When quota usage reaches this threshold, OmniRoute generates a structured handoff summary before the active account is exhausted.",
    "contextRelayMaxMessages": "Max Messages For Summary",
    "contextRelayMaxMessagesHelp": "Limits how much recent history is condensed into the relay summary.",
    "contextRelaySummaryModel": "Summary Model",
    "contextRelaySummaryModelHelp": "Optional override model used only for generating the handoff summary. Leave empty to reuse the active combo model.",
    "contextRelayProviderNote": "Context Relay currently generates handoffs for Codex account rotation. Pair it with multiple accounts of the same provider for the best continuity.",
    "advancedHint": "Lăsați gol pentru a utiliza setările implicite globale. Acestea înlocuiesc setările pentru fiecare furnizor.",
    "failoverBeforeRetry": "Failover înainte de a reîncerca",
    "maxSetRetries": "Reîncercări ale seturilor maxime",
    "setRetryDelayMs": "Setați întârzierea reîncercării (ms)",
    "moveUp": "Mișcă-te în sus",
    "moveDown": "Deplasați-vă în jos",
    "removeModel": "Eliminați",
    "saving": "Se salvează...",
    "weighted": "ponderat",
    "leastUsed": "Cel mai puțin folosit",
    "costOpt": "Cost-Opt",
    "strategyGuideTitle": "How to use this strategy",
    "strategyGuideWhen": "When to use",
    "strategyGuideAvoid": "Avoid when",
    "strategyGuideExample": "Example",
    "strategyGuide": {
      "priority": {
        "when": "You have one preferred model and only want fallback on failure.",
        "avoid": "You need request distribution across models.",
        "example": "Primary coding model with cheaper backup for outages."
      },
      "weighted": {
        "when": "You need controlled traffic split across models.",
        "avoid": "You cannot maintain accurate weights over time.",
        "example": "80% stable model + 20% canary model rollout."
      },
      "round-robin": {
        "when": "You want predictable and even distribution.",
        "avoid": "Models differ too much in latency or cost.",
        "example": "Same model on multiple accounts to spread throughput."
      },
      "random": {
        "when": "You want simple distribution with minimal setup.",
        "avoid": "You need strict traffic guarantees.",
        "example": "Quick prototyping with equivalent models."
      },
      "least-used": {
        "when": "You want adaptive balancing based on live demand.",
        "avoid": "Traffic is too low to benefit from usage balancing.",
        "example": "Mixed workloads where one model often gets overloaded."
      },
      "cost-optimized": {
        "when": "Cost reduction is your top priority.",
        "avoid": "Pricing data is missing or outdated.",
        "example": "Background or batch jobs where lower cost is preferred."
      },
      "reset-aware": {
        "when": "Rutați prin mai multe conturi cu telemetrie de cotă și ferestre diferite de resetare.",
        "avoid": "Telemetria cotelor nu este disponibilă pentru majoritatea conturilor.",
        "example": "Preferați o resetare a contului săptămânală de 60% mâine, față de o resetare a contului de 80% mai târziu."
      },
      "strict-random": {
        "when": "Use when you want perfectly even spread — each model used once before repeating.",
        "avoid": "Avoid when models have different quality or latency and order matters.",
        "example": "Example: Multiple accounts of the same model to distribute usage evenly."
      },
      "p2c": {
        "when": "Use when you want low-latency selection using Power-of-Two-Choices algorithm.",
        "avoid": "Avoid for small combos with 2 or fewer models — no benefit over round-robin.",
        "example": "Example: High-throughput inference across 4+ equivalent model endpoints."
      },
      "context-relay": {
        "when": "Use when long sessions must survive account rotation without losing the working context.",
        "avoid": "Avoid when account switching is rare or when you do not want extra summarization requests.",
        "example": "Example: Codex sessions that rotate across multiple accounts near quota exhaustion."
      },
      "fill-first": {
        "when": "Utilizați atunci când doriți să epuizați complet cota unui furnizor înainte de a trece la următorul.",
        "avoid": "Evitați atunci când aveți nevoie de echilibrarea sarcinii la nivel de cerere între furnizori.",
        "example": "Exemplu: utilizați toate creditele Deepgram de 200 USD înainte de a reveni la Groq."
      },
      "auto": {
        "when": "Folosiți atunci când aveți nevoie de rutare a punctajelor cu mai mulți factori bazate pe cost, latență și calitate.",
        "avoid": "Evitați când aveți nevoie de ordine strictă cu prioritate sau persistență istorică.",
        "example": "Exemplu: Echilibrați cererile între modele cu puncte forte diferite."
      },
      "lkgp": {
        "when": "Utilizați atunci când doriți să faceți trasee pe baza ratelor istorice de succes și a performanței.",
        "avoid": "Evitați când datele istorice sunt limitate sau nesigure.",
        "example": "Exemplu: direcționează către modele cu un istoric bun în anumite sarcini."
      },
      "context-optimized": {
        "when": "Utilizați atunci când aveți nevoie să optimizați utilizarea ferestrei de context între modele.",
        "avoid": "Evitați atunci când modelele au lungimi de context similare sau sarcinile sunt simple.",
        "example": "Exemplu: distribuiți conversații lungi între modele cu ferestre de context mai mari."
      }
    },
    "advancedHelp": {
      "maxRetries": "How many retries are attempted before failing a request.",
      "retryDelay": "Initial wait between retries. Higher values reduce burst pressure.",
      "timeout": "Maximum request duration before aborting.",
      "healthcheck": "Skips unhealthy models/providers from routing decisions.",
      "concurrencyPerModel": "Max simultaneous requests allowed per model in round-robin.",
      "queueTimeout": "How long a request can wait in queue before timing out.",
      "failoverBeforeRetry": "Când este activată, orice eroare în amonte declanșează transferarea imediată la următoarea țintă combinată, omitând toate reîncercările și adresele URL de rezervă.",
      "maxSetRetries": "Numărul de ori pentru a reîncerca setul de ținte complet atunci când fiecare țintă eșuează. 0 = nicio reîncercare la nivel de set.",
      "setRetryDelayMs": "Întârziere între încercările de reîncercare la nivel de set, dând timp pentru rezolvare problemelor tranzitorii."
    },
    "templatesTitle": "Quick templates",
    "templatesDescription": "Apply a starting profile, then adjust models and config.",
    "templateApply": "Apply template",
    "templateHighAvailability": "High availability",
    "templateHighAvailabilityDesc": "Priority routing with health checks and safe retries.",
    "templateCostSaver": "Cost saver",
    "templateCostSaverDesc": "Cost-optimized routing for budget-first workloads.",
    "templateBalanced": "Balanced load",
    "templateBalancedDesc": "Least-used routing to spread demand over time.",
    "usageGuideHide": "Hide",
    "usageGuideDontShowAgain": "Don't show again",
    "usageGuideShow": "Show guide",
    "quickTestTitle": "Combo ready to validate",
    "quickTestDescription": "Run a test now to confirm fallback and latency behavior.",
    "testNow": "Test now",
    "pricingCoverage": "Pricing coverage",
    "pricingCoverageHint": "Cost-optimized works best when all combo models have pricing.",
    "pricingAvailable": "Pricing available",
    "pricingMissing": "No pricing",
    "pricingAvailableShort": "priced",
    "pricingMissingShort": "no-price",
    "warningRoundRobinSingleModel": "Round-robin is most useful with at least 2 models.",
    "warningCostOptimizedPartialPricing": "Only {priced} of {total} models have pricing. Routing may be partially cost-aware.",
    "warningCostOptimizedNoPricing": "No pricing data found for this combo. Cost-optimized may route unexpectedly.",
    "filterAll": "All",
    "filterIntelligent": "Intelligent",
    "filterDeterministic": "Deterministic",
    "filterEmptyTitle": "No combos match this strategy filter.",
    "filterEmptyIntelligentDescription": "Create an auto or LKGP combo to populate the intelligent routing dashboard.",
    "filterEmptyDeterministicDescription": "Only auto and LKGP combos exist right now. Switch back to All or create a deterministic combo.",
    "readinessTitle": "Sunteți gata să economisiți?",
    "readinessDescription": "Examinați lista de verificare înainte de a crea sau a actualiza această combinație.",
    "readinessCheckName": "Numele combinației este valid",
    "readinessCheckModels": "Este selectat cel puțin un model",
    "readinessCheckWeights": "Totalul ponderat este 100%",
    "readinessCheckWeightsOptional": "Regula de greutate nu este necesară",
    "readinessCheckPricing": "Datele de preț sunt disponibile",
    "readinessCheckPricingOptional": "Regula de preț nu este necesară",
    "saveBlockedTitle": "Salvarea este blocată până când următoarele elemente sunt remediate:",
    "saveBlockName": "Definiți un nume combinat.",
    "saveBlockModels": "Adăugați cel puțin un model.",
    "saveBlockWeighted": "Setați ponderi la 100% (actual: {total}%).",
    "saveBlockPricing": "Adăugați prețuri pentru cel puțin un model sau alegeți o altă strategie.",
    "recommendationsLabel": "Recommended setup",
    "applyRecommendations": "Apply recommendations",
    "recommendationsUpdated": "Recommendations updated for {strategy}.",
    "recommendationsApplied": "Recommendations applied to this combo.",
    "intelligentPanelTitle": "Intelligent Routing Dashboard",
    "intelligentPanelDesc": "Real-time scoring and health status for this auto-routing combo.",
    "configOnlyStatus": "__MISSING__:Configuration View",
    "configOnlyHint": "__MISSING__:This panel shows routing inputs only. Live breaker state is available on the Health page.",
    "routingInputs": "__MISSING__:Routing Inputs",
    "routingInputsHint": "__MISSING__:Mode pack and weighting stay here; breaker runtime state stays on the Health page.",
    "emailVisibilityHint": "__MISSING__:Account emails here follow the global privacy toggle.",
    "emailVisibilityTooltip": "__MISSING__:Use the eye icon to reveal or hide account emails globally across combos, providers and quota screens.",
    "manualModel": "__MISSING__:Manual model",
    "manualModelInvalid": "__MISSING__:Enter a model as provider/model.",
    "manualModelUnknownProvider": "__MISSING__:Unknown provider prefix.",
    "builderDynamicAccountShort": "__MISSING__:Dynamic account",
    "builderNeedValidName": "__MISSING__:Define a valid combo name before continuing.",
    "statusOverview": "Status Overview",
    "normalOperation": "Normal Operation",
    "allProvidersHealthy": "Providers are reporting healthy routing conditions.",
    "incidentMode": "Incident Mode",
    "highCircuitBreakerRate": "High circuit breaker trip rate detected.",
    "activeModePack": "Active Mode Pack",
    "modePackUpdated": "Mode pack updated to {pack}.",
    "modePackHint": "Switch presets to bias the routing engine without rebuilding the combo.",
    "providerScores": "Provider Scores",
    "allProvidersEvaluated": "No candidate pool configured. All active providers are evaluated at runtime.",
    "excludedProviders": "Excluded Providers",
    "excludedProvidersHint": "Providers with an OPEN circuit breaker are temporarily excluded from routing.",
    "noExcludedProviders": "No providers are currently excluded.",
    "cooldownMinutes": "Cooldown: {minutes}m",
    "builderIntelligentTitle": "Intelligent Routing Configuration",
    "builderIntelligentDesc": "Configure the multi-factor scoring engine for this auto-routing combo.",
    "candidatePoolLabel": "Candidate Pool",
    "candidatePoolHint": "Select which providers this engine should evaluate. Leave empty to use all active providers.",
    "candidatePoolEmpty": "No active providers available yet.",
    "candidatePoolAllProviders": "All providers",
    "modePackLabel": "Mode Pack",
    "routerStrategyLabel": "Router Strategy",
    "strategyRules": "Rules (6-Factor Scoring)",
    "explorationRateLabel": "Exploration Rate",
    "explorationRateHint": "{percent}% of requests can explore non-optimal providers.",
    "budgetCapLabel": "Budget Cap (USD / request)",
    "budgetCapPlaceholder": "No limit",
    "advancedWeightsTitle": "Advanced: Scoring Weights",
    "weightQuota": "Quota",
    "weightHealth": "Health",
    "weightCostInv": "Cost",
    "weightLatencyInv": "Latency",
    "weightTaskFit": "Task Fit",
    "weightStability": "Stability",
    "weightTierPriority": "Tier",
    "reviewIntelligentTitle": "Intelligent Routing Config",
    "strategyRecommendations": {
      "priority": {
        "title": "Fail-safe baseline",
        "description": "Use one primary model and keep fallback chain short and reliable.",
        "tip1": "Put your most reliable model first.",
        "tip2": "Keep 1-2 backup models with similar quality.",
        "tip3": "Use safe retries to absorb transient provider failures."
      },
      "weighted": {
        "title": "Controlled traffic split",
        "description": "Great for canary rollouts and gradual migration between models.",
        "tip1": "Start with conservative split like 90/10.",
        "tip2": "Keep the total at 100% and auto-balance after changes.",
        "tip3": "Monitor success and latency before increasing canary weight."
      },
      "round-robin": {
        "title": "Predictable load sharing",
        "description": "Best when models are equivalent and you need smooth distribution.",
        "tip1": "Use at least 2 models.",
        "tip2": "Set concurrency limits to avoid burst overload.",
        "tip3": "Use queue timeout to fail fast under saturation."
      },
      "random": {
        "title": "Quick spread with low setup",
        "description": "Use when you need simple distribution without strict guarantees.",
        "tip1": "Use models with similar latency profiles.",
        "tip2": "Keep retries enabled to absorb random misses.",
        "tip3": "Prefer this for experimentation, not strict SLAs."
      },
      "least-used": {
        "title": "Adaptive balancing",
        "description": "Routes to less-used models to reduce hotspots over time.",
        "tip1": "Works better under continuous traffic.",
        "tip2": "Combine with health checks for safer balancing.",
        "tip3": "Track per-model usage to validate distribution gains."
      },
      "cost-optimized": {
        "title": "Budget-first routing",
        "description": "Routes to lower-cost models when pricing metadata is available.",
        "tip1": "Ensure pricing coverage for all selected models.",
        "tip2": "Keep a quality fallback for hard prompts.",
        "tip3": "Use for batch/background jobs where cost is the main KPI."
      },
      "reset-aware": {
        "title": "Resetarea conștientă de rotație a contului",
        "description": "Echilibrează cota de furnizor rămasă cu timpul de resetare.",
        "tip1": "Utilizați pași expliciți pentru cont sau rutarea etichetei de cont pentru furnizorii cu telemetrie de cotă.",
        "tip2": "Reglați sesiunea față de greutăți săptămânale atunci când epuizarea pe termen scurt este mai riscantă.",
        "tip3": "Păstrați banda de legătură mică, astfel încât conturile echivalente să se rotească în continuare echitabil."
      },
      "strict-random": {
        "title": "Shuffle deck distribution",
        "description": "Each model is used exactly once per cycle before reshuffling.",
        "tip1": "Use at least 2 models for meaningful distribution.",
        "tip2": "Works best with equivalent-performance models.",
        "tip3": "Ideal for load balancing across multiple API accounts."
      },
      "fill-first": {
        "description": "Furnizorul de evacuare cotele secvenţial înainte de a se retrage.",
        "tip1": "Utilizați pentru rutare bazată pe cote, cu lanțuri alternative clare.",
        "tip2": "Setați cotele cu precizie pentru a evita retragerea prematură.",
        "tip3": "Funcționează cel mai bine cu furnizorii care oferă niveluri gratuite sau grupe de credit.",
        "title": "Epuizarea cotelor"
      },
      "auto": {
        "description": "Traseu bazat pe scor în timp real pentru cost, latență, calitate și sănătate.",
        "tip1": "Lăsați motorul să echilibreze mai mulți factori automat.",
        "tip2": "Monitorizați factorii care determină deciziile de rutare în jurnale.",
        "tip3": "Utilizați pentru sarcini complexe de lucru în care niciun factor nu domină.",
        "title": "Optimizare multifactorială"
      },
      "lkgp": {
        "description": "Traseu bazat pe performanța istorică și modelele de succes.",
        "tip1": "Necesită un istoric de solicitări suficient pentru predicții precise.",
        "tip2": "Bun pentru sarcini de lucru cu modele consecvente de performanță a modelului.",
        "tip3": "Monitorizați precizia predicțiilor și ajustați greutățile după cum este necesar.",
        "title": "Rutare bazată pe istorie"
      },
      "context-optimized": {
        "description": "Optimizați rutarea pe baza utilizării ferestrei de context și a eficienței token-ului.",
        "tip1": "Dirijați conversațiile lungi către modele cu ferestre de context mai mari.",
        "tip2": "Monitorizați utilizarea contextului pentru a evita risipa de simboluri.",
        "tip3": "Cel mai bun pentru IA conversațională care necesită reținere extinsă a contextului.",
        "title": "Optimizarea contextului"
      },
      "context-relay": {
        "description": "Cel mai bine atunci când se așteaptă rotația contului și următorul cont trebuie să moștenească un rezumat simplificat al sarcinilor.",
        "tip1": "Utilizați cu furnizorii care rotesc conturile pentru aceeași familie de modele.",
        "tip2": "Setați pragul de transfer sub limitele stricte ale cotei pentru timpul de generare rezumat.",
        "tip3": "Setați un model de rezumat dedicat doar dacă primarul este prea scump sau instabil.",
        "title": "Prioritate pentru continuitatea sesiunii"
      },
      "p2c": {
        "description": "Rută către furnizorul cu cea mai mică sarcină curentă pe baza valorilor în timp real.",
        "tip1": "Monitorizați valorile de sănătate ale furnizorului pentru o evaluare precisă a sarcinii.",
        "tip2": "Funcționează cel mai bine cu grupuri omogene de furnizori.",
        "tip3": "Reglați sensibilitatea pentru a evita oscilațiile în timpul vârfurilor de trafic.",
        "title": "Puterea a două alegeri"
      }
    },
    "templateFreeStack": "Free Stack ($0)",
    "templateFreeStackDesc": "Round-robin across all free providers: Kiro (Claude), Qoder (5 models), Qwen (4 models), Gemini CLI. Zero cost, never stops coding.",
    "auto": "Auto Combo",
    "autoDesc": "Self-healing smart routing pool (Performance optimized)",
    "lkgp": "LKGP Mode",
    "lkgpDesc": "Last Known Good Provider (Predictable resilience)",
    "wizardGuideTitle": "Getting Started with Combos",
    "wizardGuideDesc": "Create model combos to route AI traffic intelligently",
    "wizardGuideHint": "or click + Create Combo above",
    "createFirstCombo": "Create Your First Combo",
    "wizardStep1Title": "Name Your Combo",
    "wizardStep1Desc": "Give your combo a unique name to identify it in routing rules",
    "wizardStep2Title": "Add Models",
    "wizardStep2Desc": "Select AI models and arrange their fallback priority order",
    "wizardStep3Title": "Choose Strategy",
    "wizardStep3Desc": "Pick how requests are distributed across your models - 13 strategies available",
    "wizardStep4Title": "Review & Save",
    "wizardStep4Desc": "Review your configuration and activate the combo",
    "emailVisibilityStateOn": "On",
    "emailVisibilityStateOff": "Off",
    "reorderHandle": "Drag to reorder",
    "failedReorder": "Failed to reorder models",
    "builderFlowTitle": "Combo Builder Flow",
    "builderStage": {
      "basics": {
        "label": "Basics",
        "description": "Name and starting template"
      },
      "steps": {
        "label": "Steps",
        "description": "Provider, model, and account selection"
      },
      "strategy": {
        "label": "Strategy",
        "description": "Routing behavior and advanced settings"
      },
      "intelligent": {
        "label": "Smart Routing",
        "description": "Auto-routing candidate pool, presets, and scoring"
      },
      "review": {
        "label": "Review",
        "description": "Final validation before saving"
      }
    },
    "builderStageVisited": "Stage completed",
    "builderStageCurrent": "Current stage",
    "builderStagePending": "Pending",
    "builderStageLocked": "Locked — complete previous stage first",
    "builderTitle": "Build a Combo",
    "builderBrowseCatalog": "Browse catalog",
    "builderProvider": "Provider",
    "builderLoadingProviders": "Loading providers...",
    "builderSelectProvider": "Select provider",
    "builderModel": "Model",
    "builderSelectModel": "Select model",
    "builderProviderFirst": "Pick provider first",
    "builderAccount": "Account",
    "builderPreview": "Preview",
    "builderAddStep": "Add step",
    "builderDuplicateExact": "Acest pas exact furnizor/model/cont este deja în combo.",
    "builderComboRef": "Combo Ref",
    "builderAddComboRef": "Add combo reference",
    "builderComboRefStep": "Add combo reference",
    "builderPinnedAccount": "Pinned Account",
    "builderLegacyEntry": "Legacy entry",
    "reviewName": "Name",
    "reviewStrategy": "Strategy",
    "reviewSteps": "Steps",
    "reviewAccounts": "Accounts",
    "reviewProviders": "Providers",
    "reviewComboRefs": "Combo References",
    "reviewAdvanced": "Advanced Settings",
    "reviewAgentFlags": "Agent Flags",
    "reviewSequence": "Model Sequence",
    "reviewNoSteps": "No steps configured",
    "builderStagesDescription": "Finalizați fiecare etapă pentru a defini combinații, a crea pași, a selecta strategia de rutare și a revizui rezultatele.",
    "builderStepsDescription": "Construiți fiecare pas combo în ordine: furnizor, model, apoi cont. Acest lucru permite reutilizarea aceluiași furnizor și model în conturi diferite.",
    "selectProvider": "Selectați Furnizor",
    "selectProviderPlaceholder": "Selectați un furnizor",
    "selectModel": "Selectați Model",
    "selectModelPlaceholder": "Selectați mai întâi un furnizor",
    "selectAccount": "Selectați Cont",
    "selectComboToReference": "Selectați combo pentru referință",
    "comboReference": "Referință combinată",
    "addComboReference": "Adăugați referință combinată",
    "addStepBeforeContinue": "Vă rugăm să adăugați cel puțin un pas înainte de a trece la etapa următoare.",
    "previewNextStep": "Previzualizează următorul pas",
    "autoSelectAccount": "Selectați automat contul în timpul execuției",
    "modePackBalanced": "Echilibrat",
    "modePackBudget": "Buget",
    "modePackPerformance": "Performanță",
    "modePackCustom": "Personalizat",
    "browseLegacyCatalog": "Răsfoiți catalogul combinat vechi",
    "agentFeaturesTitle": "Caracteristicile agentului",
    "agentFeaturesDescription": "Activați funcțiile avansate pentru agenți care utilizează această combinație",
    "agentFeaturesSystemMessageOverride": "Ignorați mesajul de sistem",
    "agentFeaturesSystemMessagePlaceholder": "Esti un asistent expert...",
    "agentFeaturesSystemMessageHint": "Suprascrierea mesajului de sistem pentru agenți",
    "agentFeaturesToolFilterRegex": "/model-regex/",
    "agentFeaturesToolFilterHint": "Filtru de instrumente regex pentru agenți",
    "agentFeaturesContextCacheHint": "Activați memoria cache în context pentru instrumentele agentului",
    "agentFeaturesContextCacheProtection": "Protejați memoria cache de mutațiile instrumentului agent",
    "agentFeaturesContextLength": "Lungimea contextului",
    "agentFeaturesContextLengthPlaceholder": "de ex. 128000",
    "agentFeaturesContextLengthHint": "Definește fereastra de context pentru acest combo în /v1/models.",
    "agentFeaturesContextLengthErrorInteger": "Lungimea contextului trebuie să fie un număr întreg valid",
    "agentFeaturesContextLengthErrorRange": "Lungimea contextului trebuie să fie între 1000 și 2000000",
    "compressionOverride": "Suprascrierea compresiei",
    "modePack": "Pachet de mod"
  },
  "costs": {
    "title": "Costuri",
    "pageDescription": "Urmăriți cheltuielile, analizați tendințele și gestionați-vă bugetul AI pentru toți furnizorii",
    "overview": "Prezentare generală",
    "budget": "Buget",
    "totalCost": "Costul total",
    "breakdown": "Defalcarea costurilor",
    "noData": "Fără date de cost",
    "byModel": "După model",
    "byProvider": "Prin Furnizor",
    "range7d": "7 zile",
    "range30d": "30 de zile",
    "range90d": "90 de zile",
    "rangeAll": "Tot timpul",
    "spend30d": "Spend30D",
    "activeModels": "Active Models",
    "selectedWindow": "Selected Window",
    "activeProviders": "Active Providers",
    "overviewTitle": "Overview Title",
    "spend7d": "Spend7D",
    "avgCostPerRequest": "Avg Cost Per Request",
    "noCostDataDescription": "No Cost Data Description",
    "spendToday": "Spend Today",
    "overviewLoadFailed": "Overview Load Failed",
    "overviewDescription": "Overview Description",
    "providerShare": "Provider Share",
    "topProviders": "Top Providers",
    "costTrend": "Cost Trend",
    "noCostDataTitle": "No Cost Data Title",
    "topModels": "Top Models",
    "requestsInWindow": "Requests In Window",
    "tokenUsage": "Utilizarea jetoanelor",
    "totalTokens": "Total de jetoane",
    "inputTokens": "Jetoane de intrare",
    "outputTokens": "Jetoane de ieșire",
    "inputOutputRatio": "Raport de intrare/ieșire",
    "tokens": "jetoane",
    "routingEfficiency": "Eficiență de rutare",
    "fallbackCount": "Solicitări de rezervă",
    "fallbackRate": "Rata de rezervă",
    "modelCoverage": "Acoperire model",
    "modelCoverageDesc": "% din cereri cu model explicit",
    "outOfRequests": "din {total} solicitări",
    "costByApiKey": "Costul prin cheie API",
    "costByAccount": "Costul pe cont",
    "apiKeyName": "Cheia API",
    "account": "Cont",
    "requests": "Cereri",
    "cost": "Cost",
    "dayStreak": "sira zilei",
    "weeklyUsagePattern": "Model săptămânal de utilizare",
    "activityHeatmap": "Activitate (365 de zile)",
    "less": "Mai puțin",
    "more": "Mai mult",
    "monthlyForecast": "Prognoza lunară",
    "forecastBasis": "Pe baza ultimelor {days} zile",
    "avgDailyCost": "Mediu costul zilnic",
    "daysRemaining": "Au mai rămas {days} zile",
    "periodComparison": "Comparația perioadei",
    "previousPeriod": "Jumătatea anterioară",
    "currentPeriod": "Jumătatea curentă",
    "exportCSV": "Exportați ca CSV",
    "exportJSON": "Exportați ca JSON",
    "legacyFreeLabel": "__MISSING__:Legacy / Free",
    "costExplorerTitle": "Cost Explorer",
    "costExplorerDescription": "Explore spend by provider, model, API key, account, or service tier.",
    "groupProvider": "Provider",
    "groupModel": "Model",
    "groupApiKey": "API Key",
    "groupAccount": "Account",
    "groupServiceTier": "Service Tier",
    "serviceTierFast": "__MISSING__:Fast",
    "serviceTierFlex": "__MISSING__:Flex",
    "serviceTierStandard": "__MISSING__:Standard",
    "serviceTierBreakdownTitle": "__MISSING__:Service Tier",
    "serviceTierBreakdownSubtitle": "__MISSING__:Fast / Flex / Standard split",
    "serviceTierUsageSaved": "__MISSING__:usage saved",
    "serviceTierCostSaved": "__MISSING__:saved",
    "serviceTierCostShareSuffix": "__MISSING__:of cost",
    "dimension": "Dimension",
    "share": "Share",
    "legacyOrFree": "Legacy / Free",
    "filterRows": "Filter rows…",
    "filterCostExplorerRows": "Filter Cost Explorer rows",
    "noMatchingCostRows": "No matching cost rows",
    "noMatchingCostRowsDescription": "Adjust the search text, grouping, or selected time window.",
    "showingCostRows": "Showing {shown} of {total} matching rows.",
    "showingTopCostRows": "Showing {shown} of {total} matching rows (top 50)."
  },
  "endpoint": {
    "title": "API Endpoint",
    "available": "Puncte finale disponibile",
    "cloudProxy": "Cloud Proxy",
    "disableConfirm": "Sigur doriți să dezactivați proxy-ul cloud?",
    "baseUrl": "Adresa URL de bază",
    "apiKeyLabel": "Cheia API",
    "registeredKeys": "Chei înregistrate",
    "chatCompletions": "Finalizări de chat",
    "responses": "Răspunsuri",
    "listModels": "Lista modele",
    "usingCloudProxy": "Folosind Cloud Proxy",
    "usingLocalServer": "Utilizarea serverului local",
    "machineId": "ID mașină: {id}...",
    "disableCloud": "Dezactivați Cloud",
    "enableCloud": "Activați Cloud",
    "modelsAcrossEndpoints": "{models} modele în {endpoints} puncte finale",
    "loadingModels": "Loading available models...",
    "chatDesc": "Chat în flux și non-stream cu toți furnizorii",
    "embeddings": "Înglobări",
    "embeddingsDesc": "Încorporare de text pentru conductele de căutare și RAG",
    "imageGeneration": "Generare de imagini",
    "imageDesc": "Generați imagini din solicitări de text",
    "rerank": "Reclasează",
    "rerankDesc": "Reglați documentele în funcție de relevanța pentru o interogare",
    "audioTranscription": "Transcriere audio",
    "audioTranscriptionDesc": "Transcrie fișiere audio în text (Șoaptă)",
    "textToSpeech": "Text to Speech",
    "textToSpeechDesc": "Transformați textul în vorbire cu sunet natural",
    "musicGeneration": "Music Generation",
    "musicDesc": "Generate music and audio tracks via ComfyUI (Stable Audio, MusicGen)",
    "moderations": "Moderații",
    "moderationsDesc": "Moderarea conținutului și clasificarea siguranței",
    "responsesDesc": "OpenAI Responses API for Codex and advanced agentic workflows",
    "listModelsDesc": "List all available models across all connected providers",
    "settingsApiDesc": "Read and modify OmniRoute configuration via API",
    "settingsApi": "Settings API",
    "categoryCore": "API-uri de Bază",
    "categoryMedia": "Media și Multi-Modal",
    "categorySearch": "Search & Discovery",
    "categoryUtility": "Utilități și Gestionare",
    "webSearch": "Web Search",
    "webSearchDesc": "Unified web search across multiple providers with automatic failover and caching",
    "searchProvider": "Search Provider",
    "searchProviderDesc": "This provider is used for web search via POST /v1/search. No model configuration needed — search providers are ready to use once an API key is connected.",
    "enableCloudTitle": "Activați Cloud Proxy",
    "whatYouGet": "Ce vei primi",
    "cloudBenefitAccess": "Accesați-vă API-ul de oriunde în lume",
    "cloudBenefitShare": "Partajați cu ușurință punctul final cu echipa dvs",
    "cloudBenefitPorts": "Nu este nevoie să deschideți porturi sau să configurați firewall",
    "cloudBenefitEdge": "Rețea de vârf globală rapidă",
    "cloudSessionNote": "Cloud vă va păstra sesiunea de autentificare timp de 1 zi. Dacă nu este utilizat, acesta va fi șters automat.",
    "cloudUnstableNote": "Cloud este în prezent instabil cu Claude Code OAuth în unele cazuri.",
    "cloudConnected": "Cloud Proxy conectat!",
    "connectingToCloud": "Se conectează la cloud...",
    "verifyingConnection": "Se verifică conexiunea...",
    "connecting": "Se conectează...",
    "verifying": "Se verifică...",
    "connected": "Conectat!",
    "disableCloudTitle": "Dezactivați Cloud Proxy",
    "disableWarning": "Toate sesiunile de autentificare vor fi șterse din cloud.",
    "syncingData": "Se sincronizează cele mai recente date...",
    "disablingCloud": "Se dezactivează cloud...",
    "syncing": "Se sincronizează...",
    "disabling": "Se dezactivează...",
    "cloudConnectedVerified": "Cloud Proxy conectat și verificat!",
    "connectedVerificationPending": "Conectat — verificare în așteptare",
    "connectedVerificationPendingWithError": "Conectat — verificare în așteptare: {error}",
    "cloudDisabledSuccess": "Cloud a fost dezactivat cu succes",
    "syncedSuccess": "Sincronizat cu succes",
    "failedDisable": "Nu s-a putut dezactiva cloud",
    "failedEnable": "Nu s-a activat cloud",
    "cloudRequestTimeout": "Timeout cerere cloud",
    "cloudRequestFailed": "Solicitarea cloud a eșuat",
    "cloudWorkerUnreachable": "Nu s-a putut contacta lucrătorul cloud. Asigurați-vă că serviciul cloud rulează (npm run dev în /cloud).",
    "connectionFailed": "Conexiunea a eșuat",
    "syncFailed": "Nu s-au putut sincroniza datele din cloud",
    "cloudflaredTitle": "Cloudflare Quick Tunnel",
    "cloudflaredDescription": "Create a Cloudflare Quick Tunnel for this endpoint to make it accessible from the internet without configuring DNS.",
    "cloudflaredUrlNotice": "Creates a temporary Cloudflare Quick Tunnel. URLs change after restart.",
    "cloudflaredEnable": "Enable Tunnel",
    "cloudflaredInstallAndEnable": "Install & Enable",
    "cloudflaredDisable": "Stop Tunnel",
    "cloudflaredRunning": "Running",
    "cloudflaredStarting": "Starting",
    "cloudflaredStoppedState": "Stopped",
    "cloudflaredNotInstalled": "Not installed",
    "cloudflaredUnsupported": "Unsupported",
    "cloudflaredError": "Error",
    "cloudflaredStarted": "Cloudflare tunnel started",
    "cloudflaredStopped": "Cloudflare tunnel stopped",
    "cloudflaredRequestFailed": "Failed to update Cloudflare tunnel",
    "cloudflaredTemporaryNote": "Quick Tunnel URLs are temporary and will change after restart.",
    "cloudflaredUnsupportedNote": "This platform is not supported for managed installation.",
    "cloudflaredIdleNote": "Create a temporary Cloudflare Quick Tunnel for this endpoint.",
    "cloudflaredLastError": "Last error: {error}",
    "providerModelsTitle": "{provider} — Modele",
    "noModelsForProvider": "Nu există modele disponibile pentru acest furnizor.",
    "chat": "Chat",
    "embedding": "Încorporarea",
    "image": "Imagine",
    "custom": "personalizat",
    "modelsCount": "{count, plural, one {# model} other {# models}}",
    "sectionTitle": "Integration Surface",
    "sectionDescription": "OpenAI-compatible APIs and operational protocol endpoints",
    "tabApis": "OpenAI-compatible APIs",
    "tabProtocols": "Protocols",
    "tabsAria": "Endpoint sections",
    "protocolsTitle": "Protocols",
    "protocolsDescription": "MCP and A2A are first-class endpoints with dedicated observability and controls.",
    "mcpCardTitle": "MCP Server",
    "mcpCardDescription": "Model Context Protocol over stdio",
    "a2aCardTitle": "A2A Server",
    "a2aCardDescription": "Agent2Agent JSON-RPC endpoint",
    "protocolToolsLabel": "Tools",
    "protocolTasksLabel": "Tasks",
    "protocolActiveStreamsLabel": "Active streams",
    "protocolLastActivity": "Last activity",
    "quickStart": "Quick Start",
    "openMcpDashboard": "Open MCP management",
    "openA2aDashboard": "Open A2A management",
    "mcpQuickStartTitle": "MCP Quick Start",
    "mcpQuickStartStep1": "Run the MCP server via `omniroute --mcp`.",
    "mcpQuickStartStep2": "Configure your MCP client to connect over stdio transport.",
    "mcpQuickStartStep3": "Invoke tools such as `omniroute_get_health` and `omniroute_list_combos`.",
    "a2aQuickStartTitle": "A2A Quick Start",
    "a2aQuickStartStep1": "Discover the agent card at `/.well-known/agent.json`.",
    "a2aQuickStartStep2": "Send JSON-RPC requests to `POST /a2a` using `message/send` or `message/stream`.",
    "a2aQuickStartStep3": "Track and control tasks using `tasks/get` and `tasks/cancel`.",
    "completionsLegacy": "Completions (Legacy)",
    "completionsLegacyDesc": "Legacy OpenAI text completions — accepts both prompt string and messages array format",
    "messagesApi": "Mesaje",
    "messagesApiDesc": "Format API Native Anthropic Messages pentru furnizorii compatibili cu Claude",
    "imageEdits": "Editări de imagine",
    "imageEditsDesc": "Editați și modificați imaginile existente cu AI (inpainting, outpainting, variații)",
    "batchApi": "Batch API",
    "batchApiDesc": "Procesați loturi mari de solicitări în mod asincron (compatibil cu OpenAI)",
    "filesApi": "Fișiere API",
    "filesApiDesc": "Încărcați și gestionați fișiere pentru procesarea în lot",
    "videoGeneration": "Video Generation",
    "videoDesc": "Generate videos using AI models like ComfyUI and Stable Video Diffusion.",
    "tailscaleRequestFailed": "Failed to load Tailscale status",
    "tailscaleEnableFailed": "Failed to enable Tailscale Funnel",
    "tailscaleWaitingForLogin": "Complete the Tailscale login in the opened browser tab. OmniRoute will retry automatically.",
    "tailscaleLoginTimedOut": "Timed out waiting for Tailscale login",
    "tailscaleWaitingForFunnel": "Enable Funnel for this device in the opened browser tab. OmniRoute will keep polling.",
    "tailscaleFunnelTimedOut": "Timed out waiting for Tailscale Funnel to be enabled",
    "tailscaleStarted": "Tailscale Funnel enabled",
    "tailscaleDisableFailed": "Failed to disable Tailscale Funnel",
    "tailscaleStopped": "Tailscale Funnel disabled",
    "tailscaleInstallFailed": "Failed to install Tailscale",
    "tailscaleInstallProgress": "Working...",
    "tailscaleInstalled": "Tailscale installed successfully",
    "tailscaleRunning": "Running",
    "tailscaleNeedsLogin": "Needs Login",
    "tailscaleStoppedState": "Stopped",
    "tailscaleNotInstalled": "Not installed",
    "tailscaleUnsupported": "Unsupported",
    "tailscaleError": "Error",
    "tailscaleDisable": "Stop Funnel",
    "tailscaleInstallAndEnable": "Install & Enable",
    "tailscaleLoginAndEnable": "Login & Enable",
    "tailscaleEnable": "Enable Funnel",
    "tailscaleUrlNotice": "Uses your Tailscale .ts.net address. Login and Funnel approval may be required on first use.",
    "tailscaleTitle": "Tailscale Funnel",
    "tailscaleNeedsLoginHint": "Authenticate this machine with Tailscale, then enable Funnel.",
    "tailscaleBinaryPath": "Binary: {path}",
    "tailscaleLastError": "Last error: {error}",
    "tailscaleInstallTitle": "Install Tailscale",
    "tailscaleInstallIntro": "Installs Tailscale on this machine and prepares OmniRoute to enable Funnel.",
    "tailscaleInstallPasswordHint": "On macOS and Linux, sudo may be required for the package install and daemon start.",
    "tailscaleSudoPlaceholder": "Optional sudo password",
    "tailscaleInstalling": "Installing",
    "tailscaleSudoLabel": "Parola Sudo (necesară pe macOS/Linux)",
    "ngrokTitle": "Tunelul ngrok",
    "ngrokRunning": "Alergarea",
    "ngrokStarting": "Începând",
    "ngrokStoppedState": "oprit",
    "ngrokNeedsAuth": "Necesita Auth",
    "ngrokNotInstalled": "Neinstalat",
    "ngrokUnsupported": "Neacceptat",
    "ngrokError": "Eroare",
    "ngrokEnable": "Activați tunelul",
    "ngrokDisable": "Opriți tunelul",
    "ngrokUrlNotice": "Creează un tunel ngrok public.",
    "ngrokAuthTokenLabel": "Authtoken (necesar dacă NGROK_AUTHTOKEN nu este setat)",
    "ngrokAuthTokenPlaceholder": "Introduceți codul de autorizare ngrok",
    "ngrokLastError": "Ultima eroare: {error}",
    "ngrokStarted": "a început tunelul ngrok",
    "ngrokStopped": "tunelul ngrok sa oprit",
    "ngrokRequestFailed": "Nu s-a putut actualiza tunelul ngrok",
    "tokenSaverSubtitle": "Cheltuiți mai puține jetoane pentru fiecare cerere.",
    "tokenSaverToolOutput": "Ieșire instrument",
    "tokenSaverLlmOutput": "Ieșire LLM",
    "tokenSaverInputCompression": "Compresie de intrare",
    "apiEndpointsCatalogUnavailable": "Catalogul API nu este disponibil",
    "apiEndpointsSearchPlaceholder": "Căutați puncte finale...",
    "apiEndpointsRequiresAuth": "Necesită autentificare",
    "apiEndpointsNoMatch": "Niciun punct final nu se potrivește cu filtrul dvs",
    "localServer": "Server local",
    "cloudOmniroute": "Cloud OmniRoute",
    "copyUrl": "Copiați adresa URL",
    "badgeLoopbackTooltip": "__MISSING__:This endpoint is only accessible locally (loopback only)",
    "badgeAlwaysProtectedTooltip": "__MISSING__:This endpoint is always protected and requires authorization",
    "badgeInternalTooltip": "__MISSING__:This is an internal system endpoint",
    "tierAll": "__MISSING__:All",
    "tierAuth": "__MISSING__:Authenticated",
    "tierLoopback": "__MISSING__:Loopback",
    "tierAlwaysProtected": "__MISSING__:Always Protected",
    "tierPublic": "__MISSING__:Public",
    "hideInternal": "__MISSING__:Hide Internal",
    "showInternal": "__MISSING__:Show Internal"
  },
  "endpoints": {
    "tabProxy": "Endpoint Proxy",
    "tabApiEndpoints": "API Endpoints",
    "apiEndpointsTitle": "API Endpoints",
    "apiEndpointsDescription": "Backend API endpoints that can be consumed by other applications and services. This section will list all available REST APIs with documentation and testing capabilities.",
    "comingSoon": "Coming Soon",
    "plannedFeatures": "Planned Features",
    "featureRestApi": "REST API endpoint catalog with interactive documentation",
    "featureWebhooks": "Webhook configuration and event subscriptions",
    "featureSwagger": "OpenAPI / Swagger spec auto-generation",
    "featureAuth": "API key and OAuth scope management per endpoint"
  },
  "mcpDashboard": {
    "loading": "Loading MCP dashboard...",
    "activate": "activate",
    "deactivate": "deactivate",
    "confirmSwitchCombo": "Confirmați {action} combo „{combo}”?",
    "switchComboFailed": "Nu s-a putut comuta starea combo.",
    "switchComboSuccess": "Combo „{combo}” a fost actualizat.",
    "confirmApplyProfile": "Aplicați profilul de rezistență „{profile}”?",
    "applyProfileFailed": "Nu s-a putut aplica profilul de rezistență.",
    "applyProfileSuccess": "S-a aplicat profilul „{profile}”.",
    "confirmResetBreakers": "Resetați toate întreruptoarele?",
    "resetBreakersFailed": "Nu s-au resetat întreruptoarele.",
    "resetBreakersSuccess": "Întrerupătoarele se resetează.",
    "processStatus": "Starea procesului",
    "online": "Online",
    "offline": "Offline",
    "disableLabel": "__MISSING__:Disable {label}",
    "enableLabel": "__MISSING__:Enable {label}",
    "transportMode": "__MISSING__:Transport Mode",
    "transportStdioDesc": "__MISSING__:Local — IDE spawns process via omniroute --mcp",
    "transportSseDesc": "__MISSING__:Remote — Server-Sent Events over HTTP",
    "transportStreamableHttpDesc": "__MISSING__:Remote — Modern bidirectional HTTP",
    "copy": "__MISSING__:Copy",
    "mcpDashboardCopyUrl": "Copiați adresa URL",
    "mcpDisabledTitle": "__MISSING__:MCP is disabled",
    "mcpDisabledDesc": "__MISSING__:Enable MCP above to configure transport mode and view server telemetry.",
    "mcpIntro": "__MISSING__:Model Context Protocol — {tools} tools across {scopes} scopes, {transports} transports (stdio / SSE / Streamable HTTP).",
    "mcpStep1": "__MISSING__:Run via {code}",
    "mcpStep2": "__MISSING__:Configure your MCP client to connect over stdio transport.",
    "mcpStep3": "__MISSING__:Invoke tools like {code1} and {code2}.",
    "pid": "PID",
    "sessionUptime": "Session uptime",
    "lastHeartbeat": "Last heartbeat",
    "activity24h": "Activity (24h)",
    "totalCalls": "Total calls",
    "successRate": "Success rate",
    "avgLatency": "Avg latency",
    "topTools": "Top tools",
    "noToolCalls24h": "No tool calls in the last 24 hours.",
    "runtimeDetails": "Runtime details",
    "transport": "Transport",
    "scopesEnforced": "Scopes enforced",
    "yes": "yes",
    "no": "no",
    "lastCall": "Last call",
    "heartbeatPath": "Heartbeat path",
    "operationalControls": "Operational controls",
    "switchCombo": "Switch combo",
    "inactive": "inactive",
    "active": "active",
    "activateCombo": "Activate combo",
    "deactivateCombo": "Deactivate combo",
    "applyResilienceProfile": "Apply resilience profile",
    "profileAggressive": "aggressive",
    "profileBalanced": "balanced",
    "profileConservative": "conservative",
    "applyProfile": "Apply profile",
    "resetCircuitBreakers": "Reset circuit breakers",
    "resetCircuitBreakersHelp": "Clears current breaker state and failure counters for providers.",
    "resetAllBreakers": "Reset all breakers",
    "toolsAndScopes": "Tools and scopes",
    "tableTool": "Tool",
    "tableScopes": "Scopes",
    "tablePhase": "Phase",
    "tableAudit": "Audit",
    "auditLog": "Audit log",
    "auditSummary": "Calls: {total} | page {page} of {totalPages}",
    "allTools": "All tools",
    "allResults": "All results",
    "success": "Success",
    "failure": "Failure",
    "apiKeyIdPlaceholder": "apiKeyId",
    "loadingAuditEntries": "Loading audit entries...",
    "noAuditEntriesForFilters": "No audit entries found for current filters.",
    "tableTimestamp": "Timestamp",
    "tableDuration": "Duration",
    "tableResult": "Result",
    "tableApiKey": "API key",
    "failed": "failed",
    "previous": "Previous",
    "next": "Next",
    "apiKeyId": "Api Key Id",
    "offset": "Offset",
    "limit": "Limit",
    "tool": "Tool"
  },
  "a2aDashboard": {
    "loading": "Loading A2A dashboard...",
    "confirmCancelTask": "Cancel task {taskId}?",
    "cancelTaskFailed": "Failed to cancel task.",
    "cancelTaskSuccess": "Task {taskId} cancelled.",
    "smokeSendFailed": "message/send smoke test failed.",
    "smokeSendSuccessWithTask": "message/send ok (task {taskId}).",
    "smokeSendSuccess": "message/send ok.",
    "smokeStreamFailed": "message/stream smoke test failed.",
    "smokeStreamSuccessWithTask": "message/stream ok (task {taskId}{stateSuffix}).",
    "smokeStreamNoTaskId": "message/stream finished without task id.",
    "health": "Health",
    "ok": "ok",
    "totalTasks": "Total tasks",
    "activeStreams": "Active streams",
    "lastTask": "Last task",
    "taskStateOverview": "Task state overview",
    "state": {
      "submitted": "submitted",
      "working": "working",
      "completed": "completed",
      "failed": "failed",
      "cancelled": "cancelled"
    },
    "agentCard": "Agent card",
    "agentCardPath": "__MISSING__:/.well-known/agent.json",
    "version": "Version",
    "url": "URL",
    "capabilities": "Capabilities",
    "agentCardNotAvailable": "Agent card not available.",
    "quickValidation": "Quick validation",
    "quickValidationDescription": "Executes smoke calls through the live `/a2a` endpoint.",
    "runMessageSend": "Run message/send",
    "runMessageStream": "Run message/stream",
    "taskManagement": "Task management",
    "taskSummary": "{total} tasks | page {page} of {totalPages}",
    "allStates": "all",
    "allSkills": "all skills",
    "loadingTasks": "Loading tasks...",
    "noTasksForFilters": "No tasks found for current filters.",
    "tableTask": "Task",
    "tableSkill": "Skill",
    "tableState": "State",
    "tableUpdated": "Updated",
    "tableActions": "Actions",
    "view": "View",
    "cancel": "Cancel",
    "previous": "Previous",
    "next": "Next",
    "taskDetail": "Task detail",
    "close": "Close",
    "metadata": "Metadata",
    "events": "Events",
    "artifacts": "Artifacts",
    "tablePhase": "Table Phase",
    "offset": "Offset",
    "limit": "Limit",
    "skill": "Skill",
    "rpcEndpoint": "POST /a2a",
    "rpcMethodSend": "mesaj/trimitere",
    "rpcMethodStream": "mesaj/flux",
    "rpcMethodGet": "sarcini/obține",
    "rpcMethodCancel": "sarcini/anulare",
    "serviceLabel": "A2A",
    "online": "__MISSING__:Online",
    "offline": "__MISSING__:Offline",
    "disableLabel": "__MISSING__:Disable {label}",
    "enableLabel": "__MISSING__:Enable {label}",
    "a2aDisabledTitle": "__MISSING__:A2A is disabled",
    "a2aDisabledDesc": "__MISSING__:Enable A2A above to view task telemetry, agent details, and validation tools.",
    "a2aIntro": "__MISSING__:Agent2Agent JSON-RPC 2.0 endpoint — send tasks, stream responses, cancel in-flight jobs.",
    "a2aStep1": "__MISSING__:Discover the agent card at {code}.",
    "a2aStep2": "__MISSING__:Send JSON-RPC to {code1} using {code2} or {code3}.",
    "a2aStep3": "__MISSING__:Track and cancel tasks with {code1} and {code2}."
  },
  "memory": {
    "title": "Memory Management",
    "description": "View and manage stored memory entries",
    "memories": "Memories",
    "totalEntries": "Total Entries",
    "tokensUsed": "Tokens Used",
    "hitRate": "Hit Rate",
    "loading": "Loading memories...",
    "noMemories": "No memories found",
    "search": "Search memories...",
    "allTypes": "All Types",
    "export": "Export",
    "import": "Import",
    "addMemory": "Add Memory",
    "type": "Type",
    "key": "Key",
    "content": "Content",
    "created": "Created",
    "actions": "Actions",
    "delete": "Delete",
    "factual": "Factual",
    "episodic": "Episodic",
    "procedural": "Procedural",
    "semantic": "Semantic",
    "a": "A",
    "pipelineOk": "Conductă OK ({latencyMs}ms)",
    "pipelineError": "Eroare de conductă",
    "healthUnknown": "Sănătate necunoscută",
    "checkingHealth": "Se verifică…",
    "checkHealth": "Verificați starea de sănătate",
    "pageInfo": "Pagina {page} din {totalPages} ({total} total)",
    "previous": "Anterior",
    "next": "În continuare",
    "cancel": "Anulează",
    "save": "Salvați",
    "keyPlaceholder": "de ex. temă.preferințe.utilizator",
    "contentPlaceholder": "Valoare sau conținut JSON de reținut"
  },
  "skills": {
    "title": "Skills",
    "description": "Manage and monitor AI skills",
    "skillsTab": "Skills",
    "executionsTab": "Executions",
    "sandboxTab": "Sandbox",
    "loading": "Loading skills...",
    "noSkills": "No skills found",
    "noExecutions": "No executions found",
    "enabled": "Enabled",
    "disabled": "Disabled",
    "version": "Version",
    "tableDescription": "Description",
    "skill": "Skill",
    "status": "Status",
    "duration": "Duration",
    "time": "Time",
    "sandboxConfig": "Sandbox Configuration",
    "cpuLimit": "CPU Limit",
    "cpuLimitDesc": "Maximum execution time per skill",
    "memoryLimit": "Memory Limit",
    "memoryLimitDesc": "Maximum memory allocation",
    "timeout": "Timeout",
    "timeoutDesc": "Maximum wait time for response",
    "networkAccess": "Network Access",
    "networkAccessDesc": "Allow outbound network requests",
    "mode": "Mode",
    "q": "Q",
    "filterSkillsPlaceholder": "Filtrați abilitățile după nume, descriere sau etichetă",
    "allModes": "Toate modurile",
    "totalSkills": "__MISSING__:Total Skills",
    "enabledSkills": "__MISSING__:Enabled",
    "totalExecutions": "__MISSING__:Executions",
    "successRate": "__MISSING__:Success Rate",
    "marketplaceTab": "__MISSING__:Marketplace",
    "applyFilters": "__MISSING__:Apply filters",
    "popularDefaultsLabel": "__MISSING__:Popular by default for selected provider:",
    "onMode": "__MISSING__:ON",
    "offMode": "__MISSING__:OFF",
    "autoMode": "__MISSING__:AUTO",
    "installSkillButton": "__MISSING__:Install Skill",
    "installSkillModalTitle": "__MISSING__:Install Skill",
    "installJsonPlaceholder": "__MISSING__:Paste skill manifest JSON here...",
    "installing": "__MISSING__:Installing...",
    "installSuccess": "__MISSING__:Skill installed ({id})",
    "installError": "__MISSING__:Install failed",
    "invalidJson": "__MISSING__:Invalid JSON",
    "searchMarketplacePlaceholder": "__MISSING__:Search skills...",
    "searchMarketplace": "__MISSING__:Search Marketplace",
    "marketplaceEmpty": "__MISSING__:No skills found in marketplace",
    "marketplaceError": "__MISSING__:Search failed",
    "installingFromMarketplace": "__MISSING__:Installing from marketplace...",
    "popularSkills": "__MISSING__:Popular Skills",
    "skillsMarketplace": "Piața de competențe",
    "searching": "__MISSING__:Searching...",
    "pageInfo": "__MISSING__:Page {page} of {totalPages} ({total} total)",
    "previous": "__MISSING__:Previous",
    "next": "__MISSING__:Next",
    "activeProvider": "__MISSING__:Active provider:",
    "changeInSettings": "__MISSING__:Change this in Settings → Memory & Skills.",
    "installs": "__MISSING__:installs",
    "marketplaceSkillsMpHint": "__MISSING__:Configure your SkillsMP API key in Settings to browse the marketplace.",
    "marketplaceSkillsShHint": "__MISSING__:Search the skills.sh open directory to discover and install agent skills.",
    "installSkillModalDesc": "__MISSING__:Paste a skill manifest JSON or upload a .json file.",
    "uploadJson": "__MISSING__:Upload JSON",
    "cancel": "__MISSING__:Cancel",
    "installSkill": "Instalați Skill"
  },
  "health": {
    "title": "Sănătatea sistemului",
    "description": "Monitorizarea în timp real a instanței dvs. OmniRoute",
    "healthy": "Sănătos",
    "degraded": "Degradat",
    "down": "Jos",
    "uptime": "Timp de funcționare",
    "memory": "Memorie",
    "memoryRss": "Memorie (RSS)",
    "heap": "grămada",
    "cpu": "CPU",
    "database": "Baza de date",
    "version": "Versiune",
    "lastCheck": "Ultima verificare",
    "providerHealth": "Sanatatea furnizorului",
    "systemMetrics": "Metrici de sistem",
    "tokenHealth": "Token Health",
    "refreshAll": "Reîmprospătați toate",
    "checkNow": "Verificați acum",
    "loadingHealth": "Se încarcă datele de sănătate...",
    "failedToLoad": "Nu s-au încărcat datele de sănătate: {error}",
    "retry": "Reîncercați",
    "allOperational": "Toate sistemele sunt operaționale",
    "issuesDetected": "Au fost detectate probleme de sistem",
    "updatedAt": "Actualizat {time}",
    "latency": "Latența",
    "latencyP50": "p50",
    "latencyP95": "p95",
    "latencyP99": "p99",
    "millisecondsShort": "{value}ms",
    "notAvailable": "—",
    "totalRequests": "Total cereri",
    "noDataYet": "Nu există date încă",
    "promptCache": "Prompt Cache",
    "entries": "Intrări",
    "hitRate": "Rata de lovituri",
    "hitsMisses": "Hits / Misses",
    "signatureCache": "Cache pentru semnături",
    "signatureDefaults": "Valori implicite",
    "signatureTool": "Instrument",
    "signatureFamily": "Familie",
    "signatureSession": "Sesiune",
    "recovering": "Recuperarea",
    "noCBData": "Nu sunt disponibile date despre întrerupător. Mai întâi faceți niște cereri.",
    "providerHealthStatusAria": "Starea de sănătate a furnizorului",
    "issuesLabel": "Probleme detectate",
    "operational": "Operațional",
    "providers": "Furnizorii",
    "configuredProvidersLabel": "Configurat în tabloul de bord",
    "configuredProvidersHint": "Furnizorii cu acreditări salvate în /dashboard/providers, indiferent de starea de rulare.",
    "activeProviders": "{count} active",
    "activeProvidersHint": "Furnizorii configurați activați în prezent pentru solicitările de rutare.",
    "monitoredProviders": "{count} monitored",
    "monitoredProvidersHint": "Furnizorii sunt urmăriți în prezent de monitoarele de sănătate ale întreruptoarelor.",
    "healthyCount": "{count} sănătos",
    "nodeVersion": "Nodul {version}",
    "failures": "{count} eșec",
    "failuresPlural": "{count} eșecuri",
    "lastFailure": "Ultimul",
    "rateLimitStatus": "Starea limitei ratei",
    "activeLimiters": "{count} limitator activ",
    "activeLimitersPlural": "{count} limitatoare active",
    "queued": "În coadă",
    "queuedCount": "{count} pus în coadă",
    "running": "alergând",
    "runningCount": "{count} rulează",
    "ok": "OK",
    "activeLockouts": "Blocări active",
    "resetConfirm": "Resetați toate întreruptoarele la starea sănătoasă? Acest lucru va șterge toate numărul de eșecuri și va restabili toți furnizorii la starea operațională.",
    "resetAllTitle": "Resetați toate întreruptoarele la starea sănătoasă",
    "resetting": "Se resetează...",
    "resetAll": "Resetați toate",
    "until": "Până la {time}",
    "limitExhausted": "Exhausted",
    "learnedFromHeaders": "Learned from headers",
    "remainingOfLimit": "{remaining}/{limit} remaining",
    "throttleStatus": "Throttle: {value}",
    "lastHeaderUpdate": "Header update: {age}",
    "databaseHealth": "Sănătatea bazei de date",
    "stickyBoundSessions": "Sesiuni stick-bound",
    "sessionsByApiKey": "Sesiuni prin cheie API",
    "noActiveSessionsTracked": "Încă nu au fost urmărite sesiuni active.",
    "noSessionQuotaMonitorsActive": "Nicio monitorizare a cotei de sesiune activă.",
    "gracefulDegradationStatus": "Stare de degradare grațioasă",
    "additionalModels": "+{count} mai multe modele",
    "providerHealthMatrixTitle": "__MISSING__:Provider Health Matrix",
    "providerHealthMatrixDescription": "__MISSING__:Provider × account × model states from breakers, cooldowns, lockouts and logs.",
    "healthMatrixRange": "__MISSING__:Health matrix range",
    "providerFilter": "__MISSING__:Provider filter",
    "onlyIssues": "__MISSING__:Only issues",
    "refresh": "__MISSING__:Refresh",
    "accounts": "__MISSING__:Accounts",
    "models": "__MISSING__:Models",
    "issues": "__MISSING__:Issues",
    "loadingProviderHealthMatrix": "__MISSING__:Loading provider health matrix...",
    "failedProviderHealthMatrix": "__MISSING__:Failed to load Provider Health Matrix: {error}",
    "noProvidersMatchedFilters": "__MISSING__:No providers matched the current filters.",
    "modelPillSummary": "__MISSING__:{requests} req · {successRate} success · {latency} avg",
    "modelLockoutSummary": "__MISSING__:{reason} · {duration} left",
    "locked": "__MISSING__:locked",
    "inferred": "__MISSING__:inferred",
    "inactive": "__MISSING__:Inactive",
    "noConnectionId": "__MISSING__:no connection id",
    "accountModelSummary": "__MISSING__:{connectionId} · {count} models",
    "cooldown": "__MISSING__:cooldown",
    "durationRemaining": "__MISSING__:{duration} remaining",
    "noSyncedModelsOrTraffic": "__MISSING__:No synced models or recent traffic yet.",
    "providerRowSummary": "__MISSING__:{active}/{total} active accounts · {requests} req · {successRate} success · {latency} avg",
    "cooldownCount": "__MISSING__:{count} cooldown",
    "lockoutCount": "__MISSING__:{count} lockouts",
    "issueCount": "__MISSING__:{count} issues",
    "score": "__MISSING__:Score",
    "lastRequest": "__MISSING__:Last request",
    "lastError": "__MISSING__:Last error"
  },
  "telemetry": {
    "title": "Telemetria sistemului",
    "description": "Semnale de solicitare, de rulare, de sesiune și de memorie rulante din acest proces OmniRoute.",
    "uptime": "Timp de funcționare",
    "totalRequests": "Total cereri",
    "avgLatency": "Latență medie",
    "errorRate": "Rata de eroare",
    "activeConnections": "Conexiuni active",
    "memoryUsage": "Utilizarea memoriei",
    "latencyTrend": "Tendință de latență",
    "throughputTrend": "Tendință de debit",
    "memoryTrend": "Tendința memoriei",
    "refresh": "Reîmprospătați",
    "updatedAt": "Actualizat {time}",
    "loadFailed": "Nu s-a încărcat telemetria.",
    "partialData": "Telemetria este parțial disponibilă: {error}"
  },
  "mitm": {
    "title": "MITM Proxy",
    "description": "Proxy transparent pentru interceptarea și rutarea cererilor clienților.",
    "enable": "Activați MITM Proxy",
    "enableDesc": "Porniți sau opriți procesul local de interceptare și anularea DNS.",
    "status": "Stare",
    "running": "Alergarea",
    "stopped": "oprit",
    "start": "Începeți",
    "stop": "Oprește-te",
    "refresh": "Reîmprospătați",
    "port": "Port proxy",
    "apiKey": "Cheie API router",
    "apiKeyPlaceholder": "Opțional; revine la o cheie locală",
    "sudoPassword": "Parola Sudo",
    "cachedPassword": "Memorate în cache pentru acest proces",
    "saveSettings": "Salvați setările",
    "settingsSaved": "Setările MITM au fost salvate.",
    "startedSuccess": "Proxy MITM a început.",
    "stoppedSuccess": "Proxy MITM sa oprit.",
    "saveFailed": "Nu s-au putut actualiza setările MITM.",
    "loadFailed": "Nu s-au încărcat setările MITM.",
    "invalidPort": "Interceptarea MITM transparentă necesită în prezent portul 443.",
    "certificate": "Certificat CA",
    "certificateReady": "Certificatul este disponibil pentru instalarea clientului de încredere.",
    "certificateMissing": "Certificatul nu a fost încă generat.",
    "available": "Disponibil",
    "missing": "Lipsă",
    "downloadCert": "Descărcați certificatul CA",
    "regenerateCert": "Regenerați certificatul",
    "regenerateConfirm": "Acest lucru va invalida încrederea clientului existent. Continua?",
    "regenerateSuccess": "Certificat MITM regenerat.",
    "regenerateFailed": "Nu s-a putut regenera certificatul MITM.",
    "targetRoutes": "Trasee țintă",
    "interceptedRequests": "Cereri interceptate",
    "activeConnections": "Conexiuni active",
    "dnsConfigured": "DNS configurat",
    "pid": "PID",
    "lastIntercept": "Ultima interceptare",
    "target": "țintă",
    "host": "Gazdă",
    "localPort": "Port local",
    "endpoints": "Puncte finale",
    "enabled": "Activat",
    "configured": "Configurat",
    "yes": "Da",
    "no": "Nu",
    "noTargets": "Nu au fost configurate rute țintă."
  },
  "limits": {
    "title": "Limite și cote",
    "rateLimit": "Limită de rată",
    "remaining": "Rămânând",
    "requestsPerMinute": "Cereri/min",
    "tokensPerMinute": "Jetoane/min",
    "dailyLimit": "Limită zilnică"
  },
  "logs": {
    "title": "Bușteni",
    "requestLogs": "Cereți jurnalele",
    "proxyLogs": "Jurnalele proxy",
    "auditLog": "Jurnal de audit",
    "console": "Consolă",
    "auditLogDesc": "Acțiuni administrative și evenimente de securitate",
    "loading": "Se încarcă...",
    "refresh": "Reîmprospătați",
    "filterByAction": "Filtrați după acțiune...",
    "filterByActor": "Filtrați după actor...",
    "filterEntriesAria": "Filtrați intrările din jurnalul de audit",
    "filterByActionTypeAria": "Filtrați după tipul de acțiune",
    "filterByActorAria": "Filtrați după actor",
    "refreshAuditLogAria": "Actualizează jurnalul de audit",
    "tableAria": "Intrări din jurnalul de audit",
    "failedFetchAuditLog": "Nu s-a putut prelua jurnalul de audit",
    "showing": "Se afișează {count} intrări (offset {offset})",
    "search": "Caută",
    "timestamp": "Marca temporală",
    "action": "Acțiune",
    "actor": "actor",
    "target": "țintă",
    "details": "Detalii",
    "ipAddress": "Adresa IP",
    "notAvailable": "—",
    "noEntries": "Nu au fost găsite intrări în jurnalul de audit",
    "previous": "Anterior",
    "next": "În continuare",
    "providerWarningTitle": "Provider Warning Title",
    "viewDetails": "View Details",
    "eventMetadata": "Event Metadata",
    "eventPayload": "Event Payload",
    "requestId": "Request Id",
    "providerWarningDesc": "Provider Warning Desc",
    "a": "A",
    "offset": "Offset",
    "limit": "Limit",
    "status": "Status",
    "resourceType": "Resource Type",
    "totalEntries": "Total Entries",
    "tab": "Tab",
    "auditModalSubtitle": "Audit Modal Subtitle",
    "close": "Close",
    "runningRequests": "Active Requests",
    "runningRequestsDesc": "Real-time view of currently running upstream requests",
    "clearAll": "Ștergeți tot",
    "confirmClearActiveRequests": "Ștergeți toate solicitările active?",
    "model": "Model",
    "provider": "Provider",
    "account": "Account",
    "elapsed": "Elapsed",
    "activeStage": "__MISSING__:Stage",
    "activeStageUnknown": "__MISSING__:Not sent to upstream yet",
    "activeStageRegistered": "__MISSING__:Registered",
    "activeStagePayloadPrepared": "__MISSING__:Payload prepared",
    "activeStageWaitingAccountSlot": "__MISSING__:Waiting for account slot",
    "activeStageWaitingRateLimit": "__MISSING__:Waiting for rate limiter",
    "activeStageRateLimitSlotAcquired": "__MISSING__:Rate limit slot acquired",
    "activeStageSendingToProvider": "__MISSING__:Sending to upstream",
    "activeStageProviderResponseStarted": "__MISSING__:Upstream response started",
    "count": "Count",
    "payloads": "Payloads",
    "viewPayloads": "View",
    "activeCount": "{count} active",
    "clientPayload": "Client Request Payload",
    "upstreamPayload": "Upstream Provider Payload",
    "upstreamNotSentYet": "Not sent to upstream yet",
    "runningRequestDetailMeta": "Account: {account} — Elapsed: {elapsed}",
    "export": "Export",
    "exporting": "Exporting...",
    "exportFailed": "Export failed",
    "timeRange": "Time Range",
    "lastNHours": "Last {hours}",
    "defaultRange": "default",
    "consoleViewer": {
      "fetchFailed": "Failed to fetch logs",
      "copyFailed": "Failed to copy log entry",
      "copyLogEntry": "Copy log entry"
    }
  },
  "onboarding": {
    "welcome": "Bun venit",
    "security": "Securitate",
    "test": "Testează",
    "ready": "Gata!",
    "setPassword": "Setați parola",
    "addProvider": "Adăugați primul dvs. furnizor",
    "getStarted": "Începeți",
    "skip": "Sari peste",
    "skipWizard": "Skip wizard complet",
    "skipPassword": "Omiteți configurarea parolei",
    "skipAndContinue": "Sariți și continuați",
    "passwordLabel": "Parolă",
    "confirmPassword": "Confirmați parola",
    "enterPassword": "Introduceți parola",
    "confirmPasswordPlaceholder": "Confirmați parola",
    "passwordsMismatch": "Parolele nu se potrivesc",
    "setupComplete": "Configurare finalizată!",
    "goToDashboard": "Accesați Tabloul de bord →",
    "welcomeDesc": "OmniRoute este proxy-ul local AI API. Acesta direcționează cererile către mai mulți furnizori de AI cu echilibrare a sarcinii, failover și urmărire a utilizării.",
    "multiProvider": "Multi-furnizor",
    "usageTracking": "Urmărirea utilizării",
    "securityDesc": "Setați o parolă pentru a vă proteja tabloul de bord sau omiteți pentru moment.",
    "providerDesc": "Conectați-vă primul furnizor de AI. Puteți adăuga mai multe mai târziu.",
    "apiKeyRequired": "Cheie API (obligatorie)",
    "customUrlOptional": "Adresă URL personalizată (opțional)",
    "testDesc": "Să verificăm că conexiunea la furnizor funcționează.",
    "runTest": "Rulați Testul de conexiune",
    "testingConnection": "Se testează conexiunea...",
    "connectionSuccessful": "Conexiune reușită! Furnizorul dvs. este pregătit.",
    "noProviderFound": "Nu a fost găsit niciun furnizor. Puteți adăuga unul din tabloul de bord mai târziu.",
    "testFailed": "Testul a eșuat, dar îl puteți configura mai târziu.",
    "couldNotTest": "Nu am putut testa acum. Puteți testa din tabloul de bord.",
    "doneDesc": "Sunteți gata! Instanța dvs. OmniRoute este configurată și pregătită pentru a trimite solicitări AI.",
    "yourEndpoint": "Punctul final:",
    "continue": "Continuă",
    "retry": "Reîncercați",
    "failedSetPassword": "Nu s-a putut seta parola. Încearcă din nou.",
    "failedAddProvider": "Nu s-a putut adăuga furnizorul. Încearcă din nou.",
    "connectionError": "Eroare de conectare. Vă rugăm să încercați din nou.",
    "provider": "Furnizor",
    "apiKeyHelp": "O cheie API este o parolă pentru serviciile AI. Obțineți unul de pe site-ul furnizorului dvs. (de exemplu, platform.openai.com, console.anthropic.com).",
    "tier": {
      "subtitle": "OmniRoute organizează furnizorii în trei niveluri, astfel încât rutarea preferă mai întâi calea cea mai fiabilă și cu cel mai mic cost.",
      "tier1": {
        "label": "Clienți premium",
        "description": "CLI de primă clasă cu fluxuri de autorizare native și modele de raționament."
      },
      "tier2": {
        "label": "Optimizat din punct de vedere al costurilor",
        "description": "Furnizori ieftini, cu debit mare, utilizați pentru traficul de zi cu zi."
      },
      "tier3": {
        "label": "Rezervă și specialitate",
        "description": "Puncte finale găzduite local sau de specialitate utilizate ca alternative."
      },
      "configure": "Configurați furnizorii"
    },
    "tierFlowDiagramAlt": "Diagrama de rezervă pe 3 niveluri OmniRoute",
    "apiKeyMgmt": "Gestiunea cheii API"
  },
  "providers": {
    "title": "Furnizorii",
    "allProviders": "Toți Furnizorii",
    "audioProviders": "Furnizori audio",
    "showFreeOnly": "Numai gratuit",
    "addProvider": "Adăugați furnizorul",
    "addFirstProvider": "Adăugați primul dvs. furnizor",
    "addFirstProviderDesc": "Conectați un furnizor AI pentru a începe să direcționați cererile prin OmniRoute. Puteți folosi furnizori gratuiti, chei API sau conturi OAuth.",
    "learnMore": "Aflați mai multe",
    "editProvider": "Editați furnizorul",
    "deleteProvider": "Ștergeți furnizorul",
    "noProviders": "Nu au fost configurați furnizori",
    "modelAvailability": "Disponibilitatea modelului",
    "accounts": "Conturi",
    "newAccount": "Cont nou",
    "deleteConfirm": "Sigur doriți să ștergeți acest furnizor?",
    "testing": "Testare...",
    "testConnection": "Testează conexiunea",
    "testSuccess": "Conexiune reușită",
    "testFailed": "Conexiunea a eșuat",
    "available": "Disponibil",
    "cooldown": "Cooldown",
    "unavailable": "Indisponibil",
    "unknown": "Necunoscut",
    "oauthLabel": "OAuth",
    "compatibleLabel": "Compatibil",
    "chat": "Chat",
    "responses": "Răspunsuri",
    "messages": "Mesaje",
    "oauthProviders": "Furnizori OAuth",
    "freeProviders": "Furnizori gratuiti",
    "apiKeyProviders": "Furnizori de chei API",
    "compatibleProviders": "Furnizori compatibili cu cheile API",
    "testAll": "Testează toate",
    "testAllOAuth": "Testați toate conexiunile OAuth",
    "testAllFree": "Testați toate conexiunile gratuite",
    "testAllApiKey": "Testați toate conexiunile API Key",
    "testAllCompatible": "Testați toate conexiunile compatibile",
    "connected": "{count} Conectat",
    "errorCount": "{count} Eroare ({code})",
    "errorCountNoCode": "{count} Eroare",
    "warningCount": "{count} Avertisment",
    "noConnections": "Fără conexiuni",
    "expiredBadge": "Expired",
    "expiringSoonBadge": "Expiring Soon",
    "freeTier": "Nivel gratuit",
    "freeTierAvailable": "Nivel gratuit disponibil",
    "hasFreeTooltip": "__MISSING__:Free tier available",
    "noAuthLabel": "__MISSING__:No Auth",
    "noAuthProviders": "__MISSING__:No Auth Providers",
    "upstreamProxyLabel": "__MISSING__:Upstream Proxy",
    "freeAggregated": "__MISSING__:All providers with free tier (also shown in their native category)",
    "deprecated": "Depreciat",
    "deprecatedProvider": "Acest furnizor a fost retras",
    "riskNotice": {
      "title": "__MISSING__:Before continuing",
      "tooltip": "__MISSING__:Provider with usage caveats — click for details",
      "oauth": "__MISSING__:This provider uses your official product session/OAuth, which is not authorized for proxy/router use.\n\nWe don't recommend intensive autonomous agent usage (OpenCloud-style, long multi-step flows, large batches) — the upstream may react by restricting or banning the account.\n\nUse at your own risk.",
      "webCookie": "__MISSING__:This provider authenticates through your web session cookies. The upstream service may invalidate the session at any time, requiring you to log in again. Not recommended for long unattended operations.\n\nUse at your own risk.",
      "deprecated": "__MISSING__:This provider was discontinued by its upstream and may stop working without notice. Existing connections may continue working until the upstream fully removes access. Consider alternatives.",
      "dontShowAgain": "__MISSING__:Don't show this again for this provider",
      "understand": "__MISSING__:I understand, continue",
      "cancel": "__MISSING__:Cancel"
    },
    "disabled": "Dezactivat",
    "enableProvider": "Activați furnizorul",
    "disableProvider": "Dezactivați furnizorul",
    "testResults": "Rezultatele testelor",
    "noCompatibleYet": "Nu a fost adăugat încă niciun furnizor compatibil",
    "compatibleHint": "Utilizați butoanele de mai sus pentru a adăuga puncte finale compatibile OpenAI sau Anthropic",
    "addOpenAICompatible": "Adăugați compatibil OpenAI",
    "addAnthropicCompatible": "Adăugați compatibil antropic",
    "addNewProvider": "Adăugați un furnizor nou",
    "backToProviders": "Înapoi la Furnizori",
    "configureNewProvider": "Configurați un nou furnizor de inteligență artificială pe care să îl utilizați cu aplicațiile dvs.",
    "providerLabel": "Furnizor",
    "selectProvider": "Selectați un furnizor",
    "selectedProvider": "Furnizorul selectat",
    "authMethod": "Metoda de autentificare",
    "apiKeyLabel": "Cheia API",
    "apiKeyRequired": "Cheia API este necesară",
    "selectProviderRequired": "Vă rugăm să selectați un furnizor",
    "enterApiKey": "Introduceți cheia dvs. API",
    "apiKeySecure": "Cheia dvs. API va fi criptată și stocată în siguranță.",
    "oauth2Connect": "Conectați-vă cu OAuth2",
    "oauth2Label": "OAuth2",
    "oauth2Desc": "Conectați-vă contul utilizând autentificarea OAuth2.",
    "displayName": "Nume afișat",
    "displayNamePlaceholder": "de exemplu, API de producție, mediu de dezvoltare",
    "displayNameHint": "Opțional. Un nume prietenos pentru a identifica această configurație.",
    "active": "Activ",
    "activeDescription": "Activați acest furnizor pentru utilizare în aplicațiile dvs",
    "cancel": "Anulează",
    "createProvider": "Creați furnizor",
    "failedCreate": "Nu s-a putut crea furnizorul",
    "errorOccurred": "A apărut o eroare. Vă rugăm să încercați din nou.",
    "modelStatus": "Stare model",
    "showConfiguredOnly": "Configured only",
    "allModelsOperational": "Toate modelele sunt operaționale",
    "modelsWithIssues": "{count} model(e) cu probleme",
    "allModelsNormal": "Toate modelele răspund normal.",
    "cooldownCleared": "Timpul de răcire a fost eliminat pentru {model}",
    "failedClearCooldown": "Nu s-a șters timpul de răcire",
    "loadingAvailability": "Se încarcă disponibilitatea modelului...",
    "clearCooldown": "Clar",
    "clearing": "Se șterge...",
    "until": "Până la {time}",
    "providerTestFailed": "Testul furnizorului a eșuat",
    "providerTestTimeout": "Provider test timed out — too many connections to test at once",
    "modeTest": "{mode} Test",
    "passedCount": "{count} a trecut",
    "failedCount": "{count} a eșuat",
    "testedCount": "{count} testat",
    "millisecondsAbbr": "{value}ms",
    "okShort": "OK",
    "errorShort": "EROARE",
    "noActiveConnectionsInGroup": "Nu s-au găsit conexiuni active pentru acest grup.",
    "allTestsPassed": "Toate testele {total} au trecut",
    "testSummary": "{passed}/{total} a trecut, {failed} a eșuat",
    "nameLabel": "Nume",
    "prefixLabel": "Prefix",
    "baseUrlLabel": "Adresa URL de bază",
    "apiTypeLabel": "Tip API",
    "prefixHint": "Obligatoriu. Prefix unic pentru numele modelelor.",
    "nameHint": "Obligatoriu. O etichetă prietenoasă pentru acest nod.",
    "baseUrlHint": "Obligatoriu.  Adresa URL de bază a API-ului furnizorului.",
    "anthropicPrefixPlaceholder": "ac-prod",
    "openaiPrefixPlaceholder": "oc-prod",
    "anthropicBaseUrlPlaceholder": "https://api.anthropic.com/v1",
    "openaiBaseUrlPlaceholder": "https://api.openai.com/v1",
    "validateConnection": "Validați conexiunea",
    "validating": "Se validează...",
    "connectionValid": "Conexiunea este valabilă!",
    "connectionFailed": "Conexiunea a eșuat. Verificați adresa URL și cheia.",
    "testKeyLabel": "Testați cheia API",
    "testKeyPlaceholder": "sk-... (doar pentru validare)",
    "providerNotFound": "Furnizorul nu a fost găsit",
    "deleteConnectionConfirm": "Ștergeți această conexiune?",
    "batchDeleteSelected": "Delete Selected ({count})",
    "batchDeleteConfirm": "Delete {count} connection(s)? This action cannot be undone.",
    "batchDeleteSuccess": "Deleted {count} connection(s)",
    "batchActivateSelected": "__MISSING__:Activate",
    "batchDeactivateSelected": "__MISSING__:Deactivate",
    "batchRetestSelected": "__MISSING__:Retest",
    "batchActivateSuccess": "__MISSING__:Activated {count} connection(s)",
    "batchDeactivateSuccess": "__MISSING__:Deactivated {count} connection(s)",
    "failedSetAlias": "Nu s-a putut seta aliasul",
    "failedSaveConnection": "Nu s-a putut salva conexiunea",
    "failedSaveConnectionRetry": "Nu s-a putut salva conexiunea. Vă rugăm să încercați din nou.",
    "failedRetestConnection": "Nu s-a retestat conexiunea",
    "deleteCompatibleNodeConfirm": "Ștergeți acest nod {type} compatibil?",
    "anthropicCompatibleDetails": "Detalii compatibile antropice",
    "openaiCompatibleDetails": "Detalii compatibile cu OpenAI",
    "messagesApi": "Messages API",
    "responsesApi": "API de răspunsuri",
    "embeddings": "Embeddings",
    "audioTranscriptions": "Audio Transcriptions",
    "audioSpeech": "Audio Speech",
    "imagesGenerations": "Images Generations",
    "chatCompletions": "Finalizări de chat",
    "importingModels": "Se importă...",
    "importFromModels": "Import din /modele",
    "modelsImported": "{count} models imported",
    "allModelsAlreadyImported": "Toate modelele sunt deja importate",
    "noNewModelsToImport": "Niciun model nou de importat — toate modelele sunt deja în registru sau în lista de modele personalizate",
    "skippingExistingModels": "Se omit {count} modele existente",
    "autoSync": "Sincronizare automată",
    "autoSyncTooltip": "Actualizează automat lista de modele la fiecare 24 de ore (configurabil prin MODEL_SYNC_INTERVAL_HOURS)",
    "autoSyncEnabled": "Sincronizare automată activată — modelele se vor reîmprospăta periodic",
    "autoSyncDisabled": "Sincronizarea automată a fost dezactivată",
    "autoSyncToggleFailed": "Nu s-a putut comuta sincronizarea automată",
    "clearAllModels": "Ștergeți toate modelele",
    "clearAllModelsConfirm": "Sigur doriți să eliminați toate modelele pentru acest furnizor? Acest lucru nu poate fi anulat.",
    "clearAllModelsSuccess": "Toate modelele au fost eliminate",
    "clearAllModelsFailed": "Nu s-au șters modelele",
    "addConnectionToImport": "Adăugați o conexiune pentru a activa importul.",
    "noModelsConfigured": "Nu au fost configurate modele",
    "connectionCount": "{count} conexiuni",
    "fetchingModels": "Se preiau modelele disponibile...",
    "failedFetchModels": "Nu s-au putut prelua modelele",
    "noModelsFound": "Nu s-au găsit modele",
    "importFailed": "Importul nu a reușit",
    "noNewModelsAdded": "Nu au fost adăugate modele noi.",
    "adding": "Se adaugă...",
    "close": "Close",
    "importingModelsTitle": "Importul modelelor",
    "copyModel": "Copiați modelul",
    "filterModels": "Filtrează modelele…",
    "modelsActive": "active",
    "showModel": "Afișează modelul",
    "hideModel": "Ascunde modelul",
    "removeModel": "Eliminați modelul",
    "rateLimitProtected": "Protejat",
    "rateLimitUnprotected": "Neprotejat",
    "enableRateLimitProtection": "Faceți clic pentru a activa protecția limitei ratei",
    "disableRateLimitProtection": "Faceți clic pentru a dezactiva protecția limitei ratei",
    "productionKey": "Cheia de producție",
    "enterNewApiKey": "Introduceți o nouă cheie API",
    "codexApplyModalTitle": "Aplicați la Codex local",
    "codexApplyTargetLabel": "Calea țintă",
    "codexApplyBackupLabel": "Backup-uri",
    "codexApplyWarning": "Aceasta va înlocui auth.json existent. Continua?",
    "codexApplyConfirmCheckbox": "Confirm că vreau să înlocuiesc auth.json existent",
    "codexApply": "Aplicați",
    "bulkTabSingle": "singur",
    "bulkTabBulkAdd": "Adăugați în vrac",
    "bulkAddFormatHint": "O cheie pe linie. Format: nume|apiKey sau doar apiKey (numit automat după index).",
    "bulkValidateKeys": "Validați fiecare cheie înainte de a salva (mai lent)",
    "bulkAddAllKeys": "Adăugați toate cheile",
    "bulkAddedCount": "{count, plural, one {# key added} other {# keys added}}",
    "bulkFailedCount": "{count, plural, one {# failed} other {# failed}}",
    "optional": "Opțional",
    "anthropicCompatibleName": "Compatibil antropic",
    "openaiCompatibleName": "Compatibil cu OpenAI",
    "failedImportModels": "Nu s-au putut importa modele",
    "noModelsReturnedFromEndpoint": "Niciun model nu a fost returnat de la punctul final /models.",
    "importingModelsProgress": "Se importă {current} din {total} modele...",
    "foundModelsStartingImport": "S-au găsit {count} modele. Se începe importul...",
    "importingModelById": "Se importă {modelId}...",
    "importSuccessCount": "Importat cu succes {count, plural, one {# model} other {# models}}!",
    "noNewModelsAddedExisting": "Nu au fost adăugate modele noi (toate există deja).",
    "importDoneCount": "✓ Gata! {count, plural, one {# model imported.} other {# models imported.}}",
    "unexpectedErrorOccurred": "A apărut o eroare neașteptată",
    "connectionCountLabel": "{count, plural, one {# connection} other {# connections}}",
    "messagesPath": "mesaje",
    "responsesPath": "răspunsuri",
    "chatCompletionsPath": "chat/completari",
    "add": "Adăugați",
    "edit": "Editați",
    "delete": "Ștergeți",
    "anthropic": "antropică",
    "openai": "OpenAI",
    "singleConnectionPerCompatible": "Este permisă o singură conexiune pentru fiecare nod compatibil. Adăugați un alt nod dacă aveți nevoie de mai multe conexiuni.",
    "connections": "Conexiuni",
    "providerProxyTitleConfigured": "Proxy furnizor: {host}",
    "configured": "configurat",
    "providerProxyConfigureHint": "Configurați proxy pentru toate conexiunile acestui furnizor",
    "providerProxy": "Proxy de furnizor",
    "repairEnv": "Repair env",
    "repairEnvWorking": "Repairing...",
    "repairEnvHint": "Restore missing OAuth defaults into .env without overwriting existing values.",
    "repairEnvSuccess": "OAuth defaults restored",
    "repairEnvFailed": "Failed to repair .env",
    "noConnectionsYet": "Încă nu există conexiuni",
    "addFirstConnectionHint": "Adăugați prima conexiune pentru a începe",
    "addConnection": "Adăugați o conexiune",
    "availableModels": "Modele disponibile",
    "builtInModels": "Built-in models",
    "builtInModelsHint": "Registry models for this provider. Use the pencil to set compatibility options.",
    "pageAutoRefresh": "Pagina se va reîmprospăta automat...",
    "statusDisabled": "dezactivat",
    "statusConnected": "conectat",
    "statusRuntimeIssue": "problemă de rulare",
    "statusAuthFailed": "auth a eșuat",
    "statusRateLimited": "rata limitată",
    "statusNetworkIssue": "problema rețelei",
    "statusTestUnsupported": "test neacceptat",
    "statusUnavailable": "indisponibil",
    "statusFailed": "a eșuat",
    "statusError": "eroare",
    "oauthAccount": "Cont OAuth",
    "errorTypeRuntime": "Timp de rulare local",
    "errorTypeUpstreamAuth": "Autentificare în amonte",
    "errorTypeMissingCredential": "Lipsește acreditarea",
    "errorTypeRefreshFailed": "Reîmprospătarea a eșuat",
    "errorTypeTokenExpired": "Tokenul a expirat",
    "errorTypeRateLimited": "Tarif limitat",
    "errorTypeUpstreamUnavailable": "În amonte indisponibil",
    "errorTypeNetworkError": "Eroare de rețea",
    "errorTypeTestUnsupported": "Testul nu este acceptat",
    "errorTypeUpstreamError": "Eroare în amonte",
    "proxySourceGlobal": "Global",
    "proxySourceProvider": "Furnizor",
    "proxySourceKey": "cheie",
    "proxyConfiguredBySource": "Proxy ({source}): {host}",
    "autoPriority": "Auto: {priority}",
    "proxy": "Proxy",
    "retestAuthentication": "Retestați autentificarea",
    "retest": "Retestați",
    "disableConnection": "Dezactivați conexiunea",
    "enableConnection": "Activați conexiunea",
    "reauthenticateConnection": "Re-autentificați această conexiune",
    "proxyConfig": "Configurare proxy",
    "aliasExistsAlert": "Aliasul „{alias}” există deja. Vă rugăm să utilizați un alt model sau să editați alias-ul existent.",
    "openRouterAnyModelHint": "OpenRouter acceptă orice model. Adăugați modele și creați aliasuri pentru acces rapid.",
    "modelIdFromOpenRouter": "ID model (de la OpenRouter)",
    "openRouterModelPlaceholder": "antropic/claude-3-opus",
    "customModels": "Modele personalizate",
    "customModelsHint": "Adăugați ID-uri de model care nu sunt în lista implicită. Acestea vor fi disponibile pentru rutare.",
    "normalizeToolCallIdLabel": "Normalize tool call IDs to 9 characters (e.g. Mistral)",
    "preserveDeveloperRoleLabel": "Keep OpenAI Responses developer role (do not map to system)",
    "compatAdjustmentsTitle": "Compatibility",
    "compatButtonLabel": "Compatibility",
    "compatToolIdShort": "Tool ID 9",
    "compatDeveloperShort": "Developer role",
    "compatDoNotPreserveDeveloper": "Do not preserve developer role",
    "compatBadgeNoPreserve": "No preserve",
    "compatProtocolLabel": "Client request protocol",
    "compatProtocolHint": "These options apply when OmniRoute detects this request shape (OpenAI Chat, Responses API, or Anthropic Messages).",
    "compatProtocolOpenAI": "OpenAI Chat Completions",
    "compatProtocolOpenAIResponses": "OpenAI Responses API",
    "compatProtocolClaude": "Anthropic Messages",
    "compatUpstreamHeadersLabel": "Extra upstream headers",
    "compatUpstreamHeadersHint": "High-privilege setting — same trust level as editing provider API credentials; only trusted admins should use it. Merged after OmniRoute adds auth from the provider API key. If a custom header uses the same name as an existing one (e.g. Authorization), your value fully replaces the auto-generated header (including the Bearer token) — the upstream only sees what you typed, not the key from settings. Misconfiguration can cause 401 or broken upstream auth. One row per header (e.g. extra Authentication for some gateways). Hover or focus the value to preview. Saves on blur, outside click, or closing this panel.",
    "compatUpstreamHeaderName": "Header name",
    "compatUpstreamHeaderValue": "Value",
    "compatUpstreamAddRow": "Add header",
    "compatUpstreamRemoveRow": "Remove row",
    "compatBadgeUpstreamHeaders": "Headers",
    "perModelQuotaLabel": "Per Model Quota Label",
    "perModelQuotaDescription": "Per Model Quota Description",
    "perModelQuotaToggle": "Comutare cotă per model",
    "modelId": "ID model",
    "customModelPlaceholder": "de ex. gpt-4.5-turbo",
    "loading": "Se încarcă...",
    "removeCustomModel": "Eliminați modelul personalizat",
    "noCustomModels": "Nu s-au adăugat încă modele personalizate.",
    "allSuggestedAliasesExist": "Toate pseudonimele sugerate există deja. Vă rugăm să alegeți un alt model sau să eliminați aliasurile aflate în conflict.",
    "failedSaveCustomModel": "Nu s-a salvat modelul personalizat",
    "modelAddedSuccess": "Modelul {modelId} a fost adăugat cu succes",
    "failedAddModelTryAgain": "Nu s-a putut adăuga modelul. Vă rugăm să încercați din nou.",
    "failedSaveImportedModel": "Nu s-a salvat modelul importat în baza de date personalizată",
    "failedImportModelsTryAgain": "Nu s-au putut importa modele. Vă rugăm să încercați din nou.",
    "failedRemoveModelFromDatabase": "Nu s-a putut elimina modelul din baza de date",
    "modelRemovedSuccess": "Modelul a fost eliminat cu succes",
    "failedDeleteModelTryAgain": "Nu s-a șters modelul. Vă rugăm să încercați din nou.",
    "compatibleModelsDescription": "Adăugați manual modele compatibile cu {type} sau importați-le din punctul final /models.",
    "anthropicCompatibleModelPlaceholder": "claude-3-opus-20240229",
    "openaiCompatibleModelPlaceholder": "gpt-4o",
    "apiKeyValidationFailed": "Validarea cheii API nu a reușit. Vă rugăm să vă verificați cheia și să încercați din nou.",
    "addProviderApiKeyTitle": "Adăugați {provider} cheia API",
    "checking": "Se verifică...",
    "check": "Verificați",
    "valid": "Valabil",
    "invalid": "Invalid",
    "creating": "Se creează...",
    "validationChecksAnthropicCompatible": "Validarea verifică {provider} prin verificarea cheii API.",
    "validationChecksOpenAiCompatible": "Verificări de validare {provider} prin /models pe adresa URL de bază.",
    "priorityLabel": "Prioritate",
    "saving": "Se salvează...",
    "save": "Salvați",
    "editConnection": "Editați conexiunea",
    "accountName": "Numele contului",
    "email": "E-mail",
    "healthCheckMinutes": "Verificare de sănătate (min)",
    "healthCheckHint": "Interval proactiv de reîmprospătare a simbolului. 0 = dezactivat.",
    "selectAllModels": "Select all",
    "deselectAllModels": "Deselect all",
    "modelsActiveCount": "{active}/{total} active",
    "noModelsMatch": "No models match \"{filter}\"",
    "groupLabel": "Environment",
    "groupPlaceholder": "e.g. eKaizen, Personal",
    "failedTestConnection": "Nu s-a testat conexiunea",
    "failed": "A eșuat",
    "leaveBlankKeepCurrentApiKey": "Lăsați necompletat pentru a păstra cheia API curentă.",
    "editCompatibleTitle": "Editați {type} Compatibil",
    "compatibleBaseUrlHint": "Root URL of your {type}-compatible API. Use Advanced Settings for custom endpoint paths.",
    "apiKeyForCheck": "Cheie API (pentru verificare)",
    "compatibleProdPlaceholder": "{type} Compatibil (Prod)",
    "tokenRefreshed": "Token refreshed successfully",
    "tokenRefreshFailed": "Token refresh failed",
    "applyCodexAuthLocal": "Apply auth",
    "exportCodexAuthFile": "Export auth",
    "applyClaudeAuthLocal": "Aplicați autentificare",
    "exportClaudeAuthFile": "Export aut",
    "importClaudeAuth": "Autentificare import",
    "claudeApplyModalTitle": "Aplicați la codul local Claude",
    "claudeApplyTargetLabel": "Calea țintă",
    "claudeApplyBackupLabel": "Backup-uri",
    "claudeApplyMcpHint": "Starea MCP OAuth existentă va fi păstrată.",
    "claudeApplyWarning": "Aceasta va înlocui secțiunea claudeAiOauth existentă. Continua?",
    "claudeApplyConfirmCheckbox": "Confirm că vreau să înlocuiesc secțiunea claudeAiOauth existentă",
    "claudeApply": "Aplicați",
    "claudeAuthAppliedLocal": "Claude auth aplicat local",
    "claudeAuthApplyFailed": "Nu s-a aplicat local auth Claude",
    "claudeAuthExported": "Fișierul de autentificare Claude a fost exportat",
    "claudeAuthExportFailed": "Nu s-a putut exporta fișierul de autentificare Claude",
    "claudeImportModalTitle": "Import Claude Auth",
    "claudeImportTabSingle": "singur",
    "claudeImportTabBulk": "În vrac",
    "claudeImportTabUpload": "Încărcați fișierul",
    "claudeImportTabPaste": "Lipiți JSON",
    "claudeImportFileLabel": "Alegeți .credentials.json",
    "claudeImportPasteLabel": "Lipiți conținutul JSON",
    "claudeImportEmailLabel": "E-mailul contului",
    "claudeImportNameLabel": "Numele conexiunii (opțional)",
    "claudeImportOverwriteLabel": "Înlocuiți conexiunea existentă dacă contul există deja",
    "claudeImportSubmit": "Import",
    "claudeImportSuccess": "Conexiunea Claude a fost importată cu succes",
    "claudeImportInvalidJson": "Nu s-a putut analiza fișierul ca JSON",
    "claudeImportInvalidShape": "Fișierul nu este un .credentials.json valid",
    "claudeImportDuplicate": "Contul există deja — activați „Înlocuire existent” pentru a suprascrie",
    "claudeImportIdentityUnverified": "Bootstrap nu a putut verifica contul. Activați „Înlocuiți existentul” sau furnizați un e-mail.",
    "claudeImportFailed": "Nu s-a putut importa autentificarea Claude",
    "claudeImportBulkModeUpload": "Încărcați fișiere",
    "claudeImportBulkModePaste": "Lipiți matricea JSON",
    "claudeImportBulkModeZip": "Încărcați ZIP",
    "claudeImportBulkUploadHint": "Aruncă sau ridică până la 50 de fișiere .credentials.json (256 KB fiecare, 10 MB în total).",
    "claudeImportBulkPasteHint": "Lipiți o serie de obiecte: [{ json, name?, email? }, ...]",
    "claudeImportBulkZipHint": "ZIP care conține intrări .json. Max 50 de intrări, 10 MB despachetat.",
    "claudeImportBulkSubmit": "Importă toate",
    "claudeImportBulkSuccess": "Importate {count} conexiuni Claude",
    "claudeImportBulkFailed": "Unele intrări nu au putut fi importate",
    "claudeImportBulkZipExtracting": "Se extrage ZIP...",
    "claudeImportBulkZipError": "Nu s-a extras ZIP",
    "applyGeminiAuthLocal": "Aplicați autentificare",
    "exportGeminiAuthFile": "Export aut",
    "importGeminiAuth": "Autentificare import",
    "geminiApplyModalTitle": "Aplicați la Local Gemini CLI",
    "geminiApplyTargetLabel": "Calea țintă",
    "geminiApplyBackupLabel": "Backup-uri",
    "geminiApplyAccountsHint": "Contul activ google_accounts.json va fi actualizat pentru a se potrivi cu această conexiune.",
    "geminiApplyWarning": "Aceasta va înlocui oauth_creds.json existent și va actualiza google_accounts.json. Continua?",
    "geminiApplyConfirmCheckbox": "Confirm că vreau să înlocuiesc oauth_creds.json existent",
    "geminiApply": "Aplicați",
    "geminiAuthAppliedLocal": "Auth Gemini aplicată local",
    "geminiAuthApplyFailed": "Nu s-a aplicat local aut Gemini",
    "geminiAuthExported": "Fișierul de autentificare Gemini a fost exportat",
    "geminiAuthExportFailed": "Nu s-a putut exporta fișierul de autentificare Gemini",
    "geminiImportModalTitle": "Import Gemini Auth",
    "geminiImportTabSingle": "singur",
    "geminiImportTabBulk": "În vrac",
    "geminiImportTabUpload": "Încărcați fișierul",
    "geminiImportTabPaste": "Lipiți JSON",
    "geminiImportFileLabel": "Alegeți oauth_creds.json",
    "geminiImportPasteLabel": "Lipiți conținutul JSON",
    "geminiImportEmailLabel": "E-mailul contului",
    "geminiImportNameLabel": "Numele conexiunii (opțional)",
    "geminiImportOverwriteLabel": "Înlocuiți conexiunea existentă dacă contul există deja",
    "geminiImportSubmit": "Import",
    "geminiImportSuccess": "Conexiunea Gemeni a fost importată cu succes",
    "geminiImportInvalidJson": "Nu s-a putut analiza fișierul ca JSON",
    "geminiImportInvalidShape": "Fișierul nu este un oauth_creds.json valid",
    "geminiImportDuplicate": "Contul există deja — activați „Înlocuire existent” pentru a suprascrie",
    "geminiImportIdentityUnverified": "Nu s-a putut verifica identitatea din id_token. Activați „Înlocuiți existentul” sau furnizați un e-mail.",
    "geminiImportFailed": "Nu s-a putut importa autentificarea Gemini",
    "geminiImportBulkModeUpload": "Încărcați fișiere",
    "geminiImportBulkModePaste": "Lipiți matricea JSON",
    "geminiImportBulkModeZip": "Încărcați ZIP",
    "geminiImportBulkUploadHint": "Aruncă sau ridică până la 50 de fișiere oauth_creds.json (256 KB fiecare, 10 MB în total).",
    "geminiImportBulkPasteHint": "Lipiți o serie de obiecte: [{ json, name?, email? }, ...]",
    "geminiImportBulkZipHint": "ZIP care conține intrări oauth_creds.json. Max 50 de intrări, 10 MB despachetat.",
    "geminiImportBulkSubmit": "Importă toate",
    "geminiImportBulkSuccess": "Importate {count} conexiuni Gemini",
    "geminiImportBulkFailed": "Unele intrări nu au putut fi importate",
    "geminiImportBulkZipExtracting": "Se extrage ZIP...",
    "geminiImportBulkZipError": "Nu s-a extras ZIP",
    "codexAuthAppliedLocal": "Codex auth.json applied locally",
    "codexAuthApplyFailed": "Failed to apply Codex auth.json locally",
    "codexAuthExported": "Codex auth.json exported",
    "codexAuthExportFailed": "Failed to export Codex auth.json",
    "importCodexAuth": "Autentificare import",
    "codexImportModalTitle": "Import Codex Auth",
    "codexImportTabSingle": "singur",
    "codexImportTabBulk": "În vrac",
    "codexImportTabUpload": "Încărcați fișierul",
    "codexImportTabPaste": "Lipiți JSON",
    "codexImportFileLabel": "Alegeți auth.json",
    "codexImportFileHint": "Selectați fișierul auth.json exportat din Codex sau din OmniRoute.",
    "codexImportPasteLabel": "Lipiți conținutul JSON",
    "codexImportEmailLabel": "E-mailul contului",
    "codexImportEmailHint": "Detectat automat din fișier; editați dacă este necesar.",
    "codexImportNameLabel": "Numele conexiunii (opțional)",
    "codexImportOverwriteLabel": "Înlocuiți conexiunea existentă dacă contul există deja",
    "codexImportSubmit": "Import",
    "codexImportSuccess": "Conexiunea Codex a fost importată cu succes",
    "codexImportInvalidJson": "Nu s-a putut analiza fișierul ca JSON",
    "codexImportInvalidShape": "Fișierul nu este un Codex auth.json valid",
    "codexImportDuplicate": "Contul există deja — activați „Înlocuire existent” pentru a suprascrie",
    "codexImportFailed": "Nu s-a putut importa autentificarea Codex",
    "codexImportDetectedEmail": "Detectat: {email}",
    "codexImportNoEmailDetected": "Nu a fost detectat niciun e-mail în fișier",
    "codexImportBulkModeUpload": "Încărcați fișiere",
    "codexImportBulkModePaste": "Lipiți lista",
    "codexImportBulkModeZip": "Arhiva ZIP",
    "codexImportBulkUploadHint": "Selectați mai multe fișiere .json sau trageți și plasați",
    "codexImportBulkPasteHint": "Matrice JSON [ {...}, {...} ] sau mai multe JSON separate prin --- pe propria linie",
    "codexImportBulkZipHint": "Încărcați un .zip care conține fișiere auth.json (maximum 50 de fișiere, 10 MB)",
    "codexImportBulkSubmit": "Importați {count} conturi",
    "codexImportBulkLimit": "Maxim 50 de fișiere per import",
    "codexImportBulkSuccess": "{count} importat",
    "codexImportBulkFailed": "{count} a eșuat",
    "codexImportBulkZipExtracting": "Se extrage ZIP...",
    "codexImportBulkZipError": "Nu s-a extras ZIP",
    "advancedSettings": "Advanced Settings",
    "chatPathLabel": "Chat Endpoint Path",
    "chatPathPlaceholder": "/chat/completions",
    "chatPathHint": "Custom chat path for providers with non-standard APIs (e.g. /v4/chat/completions)",
    "modelsPathLabel": "Models Endpoint Path",
    "modelsPathPlaceholder": "/models",
    "modelsPathHint": "Custom models path for validation (e.g. /v4/models)",
    "statusDeactivated": "Deactivated (Manual)",
    "statusBanned": "Banned / Sandbox Violation",
    "statusCreditsExhausted": "Insufficient Balance / Quota Exhausted",
    "showEmails": "Show all emails",
    "hideEmails": "Hide all emails",
    "a": "A",
    "accountConcurrencyCapHint": "Account Concurrency Cap Hint",
    "accountConcurrencyCapLabel": "Account Concurrency Cap Label",
    "accountIdHint": "Account Id Hint",
    "accountIdLabel": "Account Id Label",
    "accountIdPlaceholder": "Account Id Placeholder",
    "addAnotherApiKey": "Add another API key or paste multiple keys",
    "addCcCompatible": "Add Cc Compatible",
    "aggregatorsGateways": "Aggregators Gateways",
    "enterpriseCloud": "Enterprise & Cloud",
    "apiFormatLabel": "Api Format Label",
    "apiKeyOptionalHint": "Api Key Optional Hint",
    "apiKeyOptionalLabel": "Api Key Optional Label",
    "apiRegionChina": "Api Region China",
    "apiRegionHint": "Api Region Hint",
    "apiRegionInternational": "Api Region International",
    "apiRegionLabel": "Api Region Label",
    "apikey": "Apikey",
    "audio": "Audio",
    "audioProvidersHeading": "Audio Providers Heading",
    "cloudAgentProviders": "Furnizori de agenți cloud",
    "audioShortLabel": "Audio Short Label",
    "azureOpenAiBaseUrlHint": "Azure Open Ai Base Url Hint",
    "bailianBaseUrlHint": "Bailian Base Url Hint",
    "claudeWebCookieHint": "Open claude.ai → DevTools → Application → Cookies → claude.ai, copy the 'sessionKey' value. Also need cf_clearance, __cf_bm, _cfuvid for Cloudflare.",
    "claudeWebCookiePlaceholder": "sessionKey=sk-ant-...",
    "blackboxWebCookieHint": "Blackbox Web Cookie Hint",
    "blackboxWebCookiePlaceholder": "Blackbox Web Cookie Placeholder",
    "t3ChatWebCookieHint": "Deschideți t3.chat → DevTools → Aplicație → Stocare locală → https://t3.chat, copiați „convex-session-id”. Apoi deschideți DevTools → Network, copiați antetul complet Cookie din orice solicitare de chat. Lipiți ambele valori în câmpurile de mai jos.",
    "t3ChatWebCookiePlaceholder": "convex-session-id=abc123...",
    "blockClaudeExtraUsageDescription": "Block Claude Extra Usage Description",
    "blockClaudeExtraUsageLabel": "Block Claude Extra Usage Label",
    "bulkPasteAdded": "{count, plural, one {1 key added} other {# keys added}}",
    "bulkPasteDuplicatesIgnored": "{count, plural, one {1 duplicate skipped} other {# duplicates skipped}}",
    "bulkPasteHint": "Paste one API key per line. Empty lines are ignored and duplicate keys are skipped.",
    "ccCompatibleBaseUrlHint": "Cc Compatible Base Url Hint",
    "ccCompatibleBaseUrlPlaceholder": "Cc Compatible Base Url Placeholder",
    "ccCompatibleChatPathHint": "Cc Compatible Chat Path Hint",
    "ccCompatibleContext1mDescription": "Cc Compatible Context1M Description",
    "ccCompatibleContext1mLabel": "Cc Compatible Context1M Label",
    "ccCompatibleDetailsTitle": "Cc Compatible Details Title",
    "ccCompatibleLabel": "Cc Compatible Label",
    "ccCompatibleModelsDescription": "Cc Compatible Models Description",
    "ccCompatibleNameHint": "Cc Compatible Name Hint",
    "ccCompatibleNamePlaceholder": "Cc Compatible Name Placeholder",
    "ccCompatiblePrefixHint": "Cc Compatible Prefix Hint",
    "ccCompatiblePrefixPlaceholder": "Cc Compatible Prefix Placeholder",
    "ccCompatibleValidationHint": "Cc Compatible Validation Hint",
    "claudeExtraUsageShort": "Claude Extra Usage Short",
    "claudeExtraUsageToggleTitle": "Claude Extra Usage Toggle Title",
    "codex5hToggleTitle": "Codex5H Toggle Title",
    "codexFastServiceTierDescription": "Use the priority service tier for Codex requests when available.",
    "codexFastServiceTierLabel": "Codex fast service tier",
    "codexWeeklyToggleTitle": "Codex Weekly Toggle Title",
    "compatUpstreamHeaderNamePlaceholder": "Compat Upstream Header Name Placeholder",
    "compatUpstreamHeaderValuePlaceholder": "Compat Upstream Header Value Placeholder",
    "compatible": "Compatible",
    "configuredCount": "Configured Count",
    "consoleApiKeyOracleHint": "Console Api Key Oracle Hint",
    "consoleApiKeyOracleLabel": "Console Api Key Oracle Label",
    "consoleApiKeyOraclePlaceholder": "Console Api Key Oracle Placeholder",
    "cpaModeDisabledTitle": "Cpa Mode Disabled Title",
    "cpaModeEnabledTitle": "Cpa Mode Enabled Title",
    "customUserAgentHint": "Custom User Agent Hint",
    "customUserAgentLabel": "Custom User Agent Label",
    "databricksBaseUrlHint": "Databricks Base Url Hint",
    "defaultThinkingStrengthHint": "Used when a request does not specify reasoning effort.",
    "defaultThinkingStrengthLabel": "Default thinking strength",
    "deleteAllExtraApiKeys": "Delete all",
    "excludedModelsHint": "Excluded Models Hint",
    "excludedModelsLabel": "Excluded Models Label",
    "excludedModelsPlaceholder": "Excluded Models Placeholder",
    "expirationBannerExpired": "Expiration Banner Expired",
    "expirationBannerExpiredDesc": "Expiration Banner Expired Desc",
    "expirationBannerExpiringSoon": "Expiration Banner Expiring Soon",
    "expirationBannerExpiringSoonDesc": "Expiration Banner Expiring Soon Desc",
    "extraApiKeyMasked": "Key {index}: {prefix}••••{suffix}",
    "extraApiKeysHint": "Extra Api Keys Hint",
    "extraApiKeysLabel": "Extra Api Keys Label",
    "apiKeyHealthLabel": "API Key Health",
    "apiKeyStatusActive": "Active",
    "apiKeyStatusWarning": "Warning ({count} failures)",
    "apiKeyStatusInvalid": "Invalid",
    "primaryKey": "Primary Key",
    "apiKeyInvalidAlert": "{count} API key(s) marked as invalid due to authentication failures in connections: {connections}. They will be skipped in rotation. Click to review.",
    "apiKeyInvalidAlertTitle": "API Key Health Alert",
    "apiKeyWarningAlert": "{count} API key(s) in warning state due to elevated failure rate in connections: {connections}. Review to prevent rotation issues.",
    "apiKeyWarningAlertTitle": "API Key Warning",
    "googlePseInfo": "Google Pse Info",
    "geminiCliProjectIdHint": "ID-ul dvs. de proiect Google Cloud. Necesar pentru conturile cu excepții. Introduceți ID-ul dvs. de proiect GCP pentru a-l utiliza cu Gemini CLI.",
    "geminiCliProjectIdLabel": "ID-ul proiectului Google Cloud",
    "geminiCliProjectIdPlaceholder": "my-gcp-project-id",
    "antigravityProjectIdHint": "Suprascriere opțională pentru solicitările Codului Antigravity Cloud. Lăsați necompletat pentru a utiliza proiectul descoperit în timpul Google OAuth.",
    "antigravityClientProfileLabel": "__MISSING__:Client profile",
    "antigravityClientProfileHint": "__MISSING__:Choose which Antigravity client identity OmniRoute presents to the API.",
    "antigravityClientProfileIde": "__MISSING__:IDE",
    "antigravityClientProfileHarness": "__MISSING__:Harness / CLI",
    "codexFastTierActiveChip": "__MISSING__:Codex Fast tier is active",
    "tierFast": "__MISSING__:Fast",
    "antigravityProjectIdLabel": "ID-ul proiectului Google Cloud",
    "antigravityProjectIdPlaceholder": "my-gcp-project-id",
    "grokWebCookieHint": "Grok Web Cookie Hint",
    "grokWebCookiePlaceholder": "Grok Web Cookie Placeholder",
    "herokuBaseUrlHint": "Heroku Base Url Hint",
    "hideEmail": "Hide Email",
    "imageProviders": "Image Providers",
    "videoProviders": "Generare video",
    "embeddingRerankProviders": "Embeddings & Rerank",
    "imagesShortLabel": "Images Short Label",
    "llmProviders": "Llm Providers",
    "localProviderApiKeyOptionalHint": "Local Provider Api Key Optional Hint",
    "localProviderBaseUrlHint": "Local Provider Base Url Hint",
    "localProviders": "Local Providers",
    "maxConcurrentWholeNumberError": "Max Concurrent Whole Number Error",
    "museSparkWebCookieHint": "Muse Spark Web Cookie Hint",
    "museSparkWebCookiePlaceholder": "Muse Spark Web Cookie Placeholder",
    "oauth": "Oauth",
    "openCliTools": "Open Cli Tools",
    "openSettings": "Open Settings",
    "openaiResponsesStoreDescription": "Allow compatible Responses API requests to preserve stored response state.",
    "openaiResponsesStoreLabel": "OpenAI Responses store",
    "perplexitySearchSharedKeyInfo": "Perplexity Search Shared Key Info",
    "perplexityWebCookieHint": "Perplexity Web Cookie Hint",
    "perplexityWebCookiePlaceholder": "Perplexity Web Cookie Placeholder",
    "personalAccessTokenLabel": "Personal Access Token Label",
    "qoderPatHint": "Qoder Pat Hint",
    "qoderPatPlaceholder": "Qoder Pat Placeholder",
    "refreshOauthTokenTitle": "Refresh Oauth Token Title",
    "regionHint": "Region Hint",
    "regionLabel": "Region Label",
    "removeThisKey": "Remove This Key",
    "routingTagsHint": "Routing Tags Hint",
    "routingTagsLabel": "Routing Tags Label",
    "routingTagsPlaceholder": "Routing Tags Placeholder",
    "search": "Search",
    "searchEngineIdHint": "Search Engine Id Hint",
    "searchEngineIdLabel": "Search Engine Id Label",
    "searchEngineIdRequired": "Search Engine Id Required",
    "searchProvider": "Search Provider",
    "searchProviderDesc": "Search Provider Desc",
    "searchProviders": "Căutați furnizori...",
    "searchProvidersHeading": "Search Providers Heading",
    "searxngBaseUrlHint": "Searxng Base Url Hint",
    "searxngInfo": "Searxng Info",
    "sessionCookieLabel": "Session Cookie Label",
    "showEmail": "Show Email",
    "snowflakeBaseUrlHint": "Snowflake Base Url Hint",
    "supportedEndpointAudio": "Supported Endpoint Audio",
    "supportedEndpointChat": "Supported Endpoint Chat",
    "supportedEndpointEmbeddings": "Supported Endpoint Embeddings",
    "supportedEndpointImages": "Supported Endpoint Images",
    "supportedEndpointsLabel": "Supported Endpoints Label",
    "tagGroupHint": "Tag Group Hint",
    "tagGroupLabel": "Tag Group Label",
    "tagGroupPlaceholder": "Tag Group Placeholder",
    "testModel": "Test Model",
    "testingModel": "Testing Model",
    "toggleOffShort": "Toggle Off Short",
    "toggleOnShort": "Toggle On Short",
    "tokenExpiredBadge": "Token Expired Badge",
    "tokenExpiredTitle": "Token Expired Title",
    "tokenExpiresSoonTitle": "Token Expires Soon Title",
    "tokenShort": "Token Short",
    "totalKeysRotating": "{count, plural, one {1 key rotating} other {# keys rotating}}",
    "unhideModel": "Unhide Model",
    "upstreamProxyProviders": "Upstream Proxy Providers",
    "validationModelIdHint": "Validation Model Id Hint",
    "validationModelIdLabel": "Validation Model Id Label",
    "validationModelIdPlaceholder": "Validation Model Id Placeholder",
    "vertexServiceAccountPlaceholder": "Paste your Service Account JSON ({\"type\":\"service_account\",\"project_id\":\"…\",\"client_email\":\"…\",\"private_key\":\"…\"}) or an OAuth access_token",
    "webCookieProviders": "Web Cookie Providers",
    "weeklyShort": "Weekly Short",
    "xiaomiMimoBaseUrlHint": "Xiaomi Mimo Base Url Hint",
    "zedImportButton": "Zed Import Button",
    "zedImportFailed": "Zed Import Failed",
    "zedImportHint": "Zed Import Hint",
    "zedImportNetworkError": "Zed Import Network Error",
    "zedImportNone": "Zed Import None",
    "zedImportSuccess": "Zed Import Success",
    "zedImporting": "Zed Importing",
    "freeTierProviders": "Furnizori de nivel gratuit",
    "freeTierLabel": "Nivel gratuit disponibil",
    "freeTierProvidersDesc": "Furnizorii cu niveluri gratuite — unii necesită o înregistrare cu cheie API, alții nu au nevoie de acreditări.",
    "providerSummaryAll": "Total",
    "ideProviders": "Furnizori IDE",
    "ideProvidersDesc": "Editori cu abonament AI încorporat. Utilizați pagina furnizorului pentru a importa acreditările direct din brelocul IDE.",
    "noIdeProviders": "Niciun furnizor IDE nu se potrivește cu filtrele actuale.",
    "providerDetailFastTierTooltip": "Aplicați în mod implicit nivelul Codex Fast la toate conexiunile Codex",
    "providerDetailFastDefaultLabel": "Implicit rapid",
    "providerDetailBrowserManualConnect": "Browser/conectare manuală",
    "providerDetailAuthUrl": "Adresa URL de autentificare",
    "providerDetailCallbackUrl": "Adresa URL de apel invers",
    "providerDetailValidClaudeCredentialsFile": "Fișier valid de acreditări Claude",
    "providerDetailPathAutoDetectedAllOs": "Calea este detectată automat pe sistemul de operare (Linux/Mac/Windows).",
    "providerDetailMyClaudeAccountPlaceholder": "Contul meu Claude",
    "providerDetailPathAutoDetected": "Calea este detectată automat pe sistemul de operare (Linux/Mac).",
    "webFetch": "__MISSING__:Web Fetch",
    "webFetchTooltip": "__MISSING__:Providers that extract content from web URLs (HTML → Markdown, scrape, screenshot)",
    "webFetchProvidersHeading": "__MISSING__:Web Fetch Providers",
    "compatibleProvidersDesc": "__MISSING__:OpenAI-compatible and Anthropic-compatible endpoints you host or configure. Point any OpenAI SDK to your own URL and route requests here.",
    "oauthProvidersDesc": "__MISSING__:Providers authenticated via OAuth — sign in once and OmniRoute handles token rotation automatically.",
    "webCookieProvidersDesc": "Acești furnizori folosesc sesiuni web de browser, cookie-uri sau jetoane web în loc de chei API. Deschideți un furnizor pentru a adăuga acreditările de sesiune necesare.",
    "apiKeyProvidersDesc": "__MISSING__:Standard API key providers. Add your key once and OmniRoute routes, retries, and rate-limits on your behalf.",
    "noAuthProvidersDesc": "__MISSING__:Open endpoints that require no credentials — ready to use immediately without any sign-up.",
    "upstreamProxyProvidersDesc": "__MISSING__:Route outbound traffic through an upstream proxy before it reaches the provider. Useful for corporate networks or traffic inspection.",
    "webFetchProvidersDesc": "__MISSING__:Providers that fetch and extract content from web URLs. Use them to ground prompts with live web data.",
    "aggregatorsGatewaysDesc": "__MISSING__:Multi-provider aggregators and AI gateways that expose a single unified API across dozens of underlying models.",
    "enterpriseCloudDesc": "__MISSING__:Enterprise-tier and cloud-hosted models with enhanced SLAs, compliance certifications, and dedicated capacity.",
    "cloudAgentProvidersDesc": "__MISSING__:Autonomous cloud agents that execute long-running tasks with plan approval and live status tracking.",
    "localProvidersDesc": "__MISSING__:Self-hosted models running on your own hardware. No data leaves your infrastructure.",
    "searchProvidersDesc": "__MISSING__:Web and document search providers. Attach them to LLM calls for Retrieval-Augmented Generation.",
    "audioProvidersDesc": "__MISSING__:Text-to-speech and speech-to-text providers for voice I/O and audio transcription pipelines.",
    "embeddingRerankProvidersDesc": "__MISSING__:Vector embedding and reranking providers for semantic search, RAG pipelines, and similarity scoring.",
    "imageProvidersDesc": "__MISSING__:Image generation and vision providers — create images from text or analyse existing ones.",
    "videoProvidersDesc": "__MISSING__:Video generation providers. Create short video clips from text prompts or images.",
    "onboardingWizard": "Asistent de integrare a furnizorului",
    "onboardingWizardShort": "Asistent de integrare",
    "onboardingWizardDescription": "Conectați furnizorii de cheie API, compatibili personalizat și OAuth cu validare, persistență și un test de conexiune imediat.",
    "onboardingStepType": "Tip",
    "onboardingStepProvider": "Furnizor",
    "onboardingStepCredentials": "Acreditări",
    "onboardingStepResult": "Rezultat",
    "onboardingTypeApiKeyTitle": "Furnizor de chei API",
    "onboardingTypeApiKeyText": "Utilizați furnizori încorporați precum OpenAI, Anthropic, Gemini, Groq, Azure și multe altele.",
    "onboardingTypeCustomTitle": "Furnizor compatibil personalizat",
    "onboardingTypeCustomText": "Creați un punct final compatibil OpenAI, Anthropic sau Claude Code și adăugați cheia acestuia.",
    "onboardingTypeOAuthTitle": "Furnizorul OAuth",
    "onboardingTypeOAuthText": "Reutilizați fluxurile existente OAuth, codul dispozitivului sau importul local pentru furnizorii de codare.",
    "onboardingChooseOAuthProvider": "Alegeți un furnizor OAuth",
    "onboardingChooseApiKeyProvider": "Alegeți un furnizor de chei API",
    "onboardingChooseProviderDescription": "Selectați un furnizor, apoi expertul vă va ghida prin acreditări și testare.",
    "onboardingChangeType": "Schimbați tipul",
    "onboardingChangeProvider": "Schimbați furnizorul",
    "onboardingSearchProviders": "Căutați furnizori...",
    "onboardingApiKeyOptional": "Cheia API opțională",
    "onboardingProviderConnected": "Furnizorul conectat",
    "onboardingProviderSavedWithWarnings": "Furnizorul a fost salvat cu avertismente",
    "onboardingProviderFinished": "Integrarea furnizorului s-a încheiat",
    "onboardingYourProviderConnection": "Conexiunea cu furnizorul dvs",
    "onboardingTestPassed": "Testul a trecut",
    "onboardingTestFailed": "Testul a eșuat",
    "onboardingOpenProviderDetails": "Deschideți detaliile furnizorului",
    "onboardingTryInPlayground": "Încearcă în locul de joacă",
    "onboardingDefaultConnectionName": "{provider} Principal",
    "onboardingTestingConnection": "Se testează conexiunea furnizorului...",
    "onboardingValidatingCredentials": "Se validează acreditările...",
    "onboardingSavingConnection": "Se salvează conexiunea la furnizor...",
    "onboardingProviderFailed": "Integrarea furnizorului a eșuat",
    "onboardingCreatingCompatibleProvider": "Se creează un furnizor compatibil...",
    "onboardingSavingCompatibleConnection": "Se salvează conexiunea furnizorului compatibil...",
    "onboardingCustomProviderFallbackName": "Furnizor personalizat",
    "onboardingCustomProviderFailed": "Integrarea furnizorului personalizat a eșuat",
    "onboardingLoadingOAuthConnection": "Se încarcă conexiunea OAuth...",
    "onboardingOAuthNoConnectionFound": "OAuth s-a terminat, dar nu a fost găsită nicio conexiune la furnizor.",
    "onboardingOAuthFailed": "Integrarea OAuth a eșuat",
    "onboardingAddProvider": "Adăugați {provider}",
    "onboardingConnectionName": "Numele conexiunii",
    "onboardingApiKeyOptionalLabel": "Cheie API (opțional)",
    "onboardingBaseUrlOverride": "Inlocuire URL de bază",
    "onboardingBaseUrlOverrideHint": "Opțional. Stocat ca providerSpecificData.baseUrl.",
    "onboardingRegion": "Regiunea",
    "onboardingSearchCx": "Căutare CX / ID motor",
    "onboardingProviderSpecificIdPlaceholder": "ID opțional specific furnizorului",
    "onboardingCustomUserAgent": "Agent utilizator personalizat",
    "onboardingWorking": "Lucrează…",
    "onboardingValidateSaveTest": "Validați, salvați și testați",
    "onboardingBack": "Înapoi",
    "onboardingCreateCustomCompatibleProvider": "Creați un furnizor compatibil personalizat",
    "onboardingCreateCustomCompatibleDescription": "Expertul creează mai întâi un nod de furnizor, apoi stochează și testează conexiunea la cheia API.",
    "onboardingProtocol": "Protocol",
    "onboardingOpenAiCompatible": "Compatibil cu OpenAI",
    "onboardingAnthropicCompatible": "Antropic-compatibil",
    "onboardingClaudeCodeCompatible": "Compatibil cu Claude Code",
    "onboardingProviderPrefix": "Prefixul furnizorului",
    "onboardingProviderPrefixHint": "Folosit pentru a genera ID-ul furnizorului gestionat.",
    "onboardingChatPath": "Calea de chat",
    "onboardingModelsPath": "Calea modelelor",
    "onboardingCreateSaveTest": "Creați, salvați și testați",
    "onboardingConnectProvider": "Conectați {provider}",
    "onboardingOAuthFlowDescription": "OmniRoute va deschide fluxul OAuth existent pentru acest furnizor. După conectare, expertul reîncarcă conexiunea salvată și rulează același test de conexiune ca pagina furnizorului.",
    "onboardingStartOAuthFlow": "Porniți fluxul OAuth",
    "passthroughModelsDescription": "{provider} acceptă ID-uri de model native ale furnizorului. Importați din /modele sau adăugați ID-uri personalizate pentru rutare.",
    "bedrockModelsDescription": "Modelele Amazon Bedrock sunt acoperite de regiunea AWS. Importați din /modele sau adăugați ID-uri de model Bedrock activate în regiunea selectată.",
    "bedrockModelPlaceholder": "antropic.claude-sonet-4-6",
    "addProviderSessionCookieTitle": "Adăugați {provider} cookie de sesiune",
    "addProviderWebTokenTitle": "Adăugați {provider} indicativ web",
    "addProviderConnectionTitle": "Adăugați conexiunea {provider}",
    "webTokenCredentialLabel": "Indicativ de sesiune web",
    "webNoAuthCredentialLabel": "Nu sunt necesare acreditări",
    "webCookieCredentialHint": "Modul cookie necesar: {credential}. Inserați valoarea antetului Cookie din propria dvs. sesiune web {provider} conectată. Nu includeți prefixul Cookie:.",
    "webTokenCredentialHint": "Acreditare: {credential}. Inserați valoarea simbolului din propria dvs. sesiune web {provider} conectată sau dintr-un export HAR DevTools dacă furnizorul îl acceptă.",
    "webCookieEditHint": "Lăsați necompletat pentru a păstra cookie-ul de sesiune curentă. Modul cookie necesar: {credential}.",
    "webTokenEditHint": "Lăsați necompletat pentru a păstra simbolul de sesiune web curent. Acreditare: {credential}.",
    "webSessionGuideTitle": "Cum să obțineți acreditările de sesiune",
    "webSessionGuideIntro": "{provider} folosește o sesiune web de browser în loc de o cheie API.",
    "webCookieRequiredCredential": "Modul cookie necesar: {credential}",
    "webTokenRequiredCredential": "Indicativ necesar: {credential}",
    "webSessionGuideStep1": "Conectați-vă la {provider} în browser.",
    "webSessionGuideStep2": "Deschideți instrumentele pentru dezvoltatori de browser și inspectați o solicitare făcută de aplicația web.",
    "webSessionGuideStep3": "Copiați acreditările necesare din domeniul propriu al furnizorului. Pentru cookie-uri, copiați numai valoarea antetului Cookie și omiteți Cookie:.",
    "webSessionGuideStep4": "Lipiți-l aici și verificați conexiunea. Dacă nu mai funcționează, conectați-vă din nou și înlocuiți-l cu o valoare nouă.",
    "webSessionSecurityHint": "Tratați acest lucru ca pe o parolă: poate accesa contul dvs. web conectat până când expiră sau este revocat.",
    "webNoAuthGuideTitle": "Nu sunt necesare acreditări",
    "webNoAuthGuideBody": "{provider} nu are nevoie de o cheie API sau cookie. Salvați conexiunea pentru a utiliza punctul final web gratuit.",
    "webSessionCredentialValidationFailed": "Validarea acreditărilor de sesiune a eșuat. Conectați-vă din nou, copiați o nouă acreditare și încercați din nou.",
    "checkCookie": "Verificați cookie-ul",
    "checkWebToken": "Verificați jetonul"
  },
  "settings": {
    "title": "Setări",
    "general": "general",
    "security": "Securitate",
    "appearance": "Aspectul",
    "routing": "Dirijare",
    "cache": "Cache",
    "resilience": "Reziliență",
    "routingSettingsIntro": "Controlează modul în care solicitările dvs. sunt direcționate, transformate și trimise către furnizorii de inteligență artificială.",
    "routingOpDropParagraphContainsLabel": "__MISSING__:Drop paragraph (contains)",
    "routingOpDropParagraphStartsWithLabel": "__MISSING__:Drop paragraph (starts with)",
    "routingOpReplaceTextLabel": "__MISSING__:Replace text",
    "routingOpReplaceRegexLabel": "__MISSING__:Replace regex",
    "routingOpDropBlockContainsLabel": "__MISSING__:Drop block (contains)",
    "routingOpPrependSystemBlockLabel": "__MISSING__:Prepend system block",
    "routingOpAppendSystemBlockLabel": "__MISSING__:Append system block",
    "routingOpInjectBillingHeaderLabel": "__MISSING__:Inject billing header",
    "routingOpObfuscateWordsLabel": "__MISSING__:Obfuscate words (ZWJ)",
    "routingOpDropParagraphContainsDesc": "__MISSING__:Removes any paragraph (text block split on blank lines) inside the system prompt whose text contains ANY of the listed substrings. Use to strip third-party client fingerprints like 'github.com/anomalyco/opencode' or 'docs.openwebui.com' that Anthropic's classifier flags.",
    "routingOpDropParagraphStartsWithDesc": "__MISSING__:Removes any paragraph that STARTS WITH one of the listed prefixes. Use for identity lines like 'You are OpenCode' or 'You are Open WebUI' that announce the calling client.",
    "routingOpReplaceTextDesc": "__MISSING__:Replaces a literal substring with another literal substring. Use for known trigger phrases — e.g. rewrite 'Here is some useful information about the environment you are running in:' to 'Environment context you are running in:' (an empirically-validated trigger phrase).",
    "routingOpReplaceRegexDesc": "__MISSING__:Replaces text matching a regular expression. Use when you need patterns (character classes, optional whitespace, anchors) instead of literal substrings. A malformed pattern is caught at runtime when the op runs.",
    "routingOpDropBlockContainsDesc": "__MISSING__:Removes ENTIRE system blocks (not just paragraphs) whose text contains any of the listed substrings. Use when a whole block is fingerprint-bearing and you want it gone — e.g. an injected MCP-server description.",
    "routingOpPrependSystemBlockDesc": "__MISSING__:Inserts a new text block at the FRONT of the system array. Use to add the SDK identity 'You are a Claude agent, built on Anthropic's Claude Agent SDK.' that Anthropic's classifier expects.",
    "routingOpAppendSystemBlockDesc": "__MISSING__:Inserts a new text block at the END of the system array. Use for cosmetic additions that don't need to be at position [0].",
    "routingOpInjectBillingHeaderDesc": "__MISSING__:Prepends the special 'x-anthropic-billing-header: cc_version=...; cc_entrypoint=...; cch=...;' text block that Anthropic's classifier validates. Required for CC bridge relay endpoints; for the native claude provider OmniRoute already injects its own billing line so this op is usually redundant there.",
    "routingOpObfuscateWordsDesc": "__MISSING__:Inserts a Zero-Width-Joiner character after the first letter of each listed word, so 'opencode' becomes 'o‍pencode'. Reads identical to humans but bypasses classifier word matches. Targets system blocks, user/assistant messages, and tool descriptions.",
    "routingNeedlesHint": "__MISSING__:List of substrings. A paragraph matches if it contains ANY one of them. Add one per line via 'Add entry'.",
    "routingPrefixesHint": "__MISSING__:List of strings. A paragraph matches if it starts with any one of them (leading whitespace is trimmed before matching).",
    "routingCaseSensitiveHint": "__MISSING__:When ON, 'OpenCode' and 'opencode' are different strings. When OFF (default), the comparison ignores case.",
    "routingMatchLiteralHint": "__MISSING__:Exact literal substring to find. No regex syntax — special chars like . * ? are treated as themselves.",
    "routingReplacementTextHint": "__MISSING__:Replacement string. Leave blank to delete the match. The output preserves surrounding text.",
    "routingAllOccurrencesHint": "__MISSING__:When ON (default), every instance is replaced. When OFF, only the first match is replaced.",
    "routingPatternHint": "__MISSING__:JavaScript regex source. Don't wrap in slashes — just 'foo(.*)bar'. Server rejects patterns that fail to compile.",
    "routingRegexFlagsHint": "__MISSING__:JavaScript regex flags (g = all matches, i = case-insensitive, s = dot matches newline, m = multiline). Default 'g'.",
    "routingBlockTextHint": "__MISSING__:Full text of the new system block. Use a literal string; the system block stores text only.",
    "routingIdempotencyKeyHint": "__MISSING__:Optional. If set, the op skips when a block whose text starts with this key is already present. Prevents double-prepend on retries.",
    "routingBillingEntrypointHint": "__MISSING__:Value injected as 'cc_entrypoint='. Anthropic accepts 'sdk-cli' (Agent SDK), 'cli' (Claude Code CLI), or other documented values.",
    "routingBillingVersionFormatHint": "__MISSING__:How the 3-char build hash after cc_version= is computed. 'ex-machina' = sha256 of CCH_SALT+chars-from-first-user-msg+version (per-message). 'omniroute-daystamp' = sha256 of YYYY-MM-DD+version (stable per-day).",
    "routingBillingCchAlgoHint": "__MISSING__:How the 5-char cch= token is computed. 'sha256-first-user' = sha256 of first user message text. 'xxhash64-body' = body-level signing fills it later. 'static-zero' = literal '00000' placeholder.",
    "routingObfuscateWordsHint": "__MISSING__:Lowercase words to obfuscate. ZWJ insertion is applied case-insensitively, so 'opencode' also matches 'OpenCode' and 'OPENCODE'.",
    "routingObfuscateTargetsHint": "__MISSING__:Which body regions to scan for the words: system blocks, user/assistant messages, and/or tool descriptions.",
    "routingObfuscateTargetsLabel": "__MISSING__:Targets",
    "routingSummarizeDropParagraphContains": "__MISSING__:drop paragraphs containing: {items}",
    "routingSummarizeDropParagraphStartsWith": "__MISSING__:drop paragraphs starting with: {items}",
    "routingSummarizeReplaceText": "__MISSING__:replace \"{match}\" → \"{replacement}\"",
    "routingSummarizeReplaceRegex": "__MISSING__:regex /{pattern}/{flags} → \"{replacement}\"",
    "routingSummarizeDropBlockContains": "__MISSING__:drop blocks containing: {items}",
    "routingSummarizePrependSystemBlock": "__MISSING__:prepend block: \"{text}\"",
    "routingSummarizeAppendSystemBlock": "__MISSING__:append block: \"{text}\"",
    "routingSummarizeInjectBillingHeader": "__MISSING__:inject billing header (entrypoint={entrypoint}, version={versionFormat}, cch={cchAlgo})",
    "routingSummarizeObfuscateWords": "__MISSING__:obfuscate {count} word(s) via ZWJ in {targets}",
    "routingDefaultAutoVariantLKGP": "__MISSING__:Last Known Good Provider",
    "routingDefaultAutoVariantLKGPDesc": "__MISSING__:Last Known Good Provider",
    "routingDefaultAutoVariantCoding": "__MISSING__:Quality-first for code",
    "routingDefaultAutoVariantCodingDesc": "__MISSING__:Quality-first for code",
    "routingDefaultAutoVariantFast": "__MISSING__:Low-latency routing",
    "routingDefaultAutoVariantFastDesc": "__MISSING__:Low-latency routing",
    "routingDefaultAutoVariantCheap": "__MISSING__:Cost-optimized",
    "routingDefaultAutoVariantCheapDesc": "__MISSING__:Cost-optimized",
    "routingDefaultAutoVariantOffline": "__MISSING__:High availability",
    "routingDefaultAutoVariantOfflineDesc": "__MISSING__:High availability",
    "routingDefaultAutoVariantSmart": "__MISSING__:Best discovery (10% explore)",
    "routingDefaultAutoVariantSmartDesc": "__MISSING__:Best discovery (10% explore)",
    "routingOpSummaryCount": "__MISSING__:{count, plural, =0 {no ops} one {# op} other {# ops}}",
    "routingOpEnabled": "__MISSING__:enabled",
    "routingOpDisabled": "__MISSING__:disabled",
    "routingOpStatusSeparator": "__MISSING__: · ",
    "resilienceSettingsIntro": "Reîncercare automată, răcire și rezervă atunci când furnizorii eșuează.",
    "aiSettingsIntro": "Setări specifice AI pentru gândirea bugetului, comportamentul modelului și compresia.",
    "systemPrompt": "Prompt de sistem",
    "thinkingBudget": "Gândirea bugetului",
    "proxy": "Proxy",
    "httpProxy": "HTTP Proxy",
    "1proxy": "1proxy",
    "proxySubTabsAria": "Proxy sections",
    "requestBodyLimitTitle": "Request Body Limit",
    "requestBodyLimitDescription": "Maximum API payload size accepted before a request body is parsed. Dedicated upload routes keep at least their built-in 100 MB limit.",
    "requestBodyLimitInputLabel": "Request body limit in MB",
    "requestBodyLimitEmptyError": "Enter a limit in MB",
    "requestBodyLimitWholeNumberError": "Use a whole number",
    "requestBodyLimitMinimumError": "Minimum is {min} MB",
    "requestBodyLimitMaximumError": "Maximum is {max} MB",
    "requestBodyLimitLoadFailed": "Failed to load request limit settings",
    "requestBodyLimitSaveSuccess": "Request body limit saved",
    "requestBodyLimitSaveFailed": "Failed to save request body limit",
    "requestBodyLimitSaving": "Saving...",
    "requestBodyLimitSave": "Save",
    "requestBodyLimitCurrent": "Current: {value}",
    "mitmProxy": "MITM Proxy",
    "pricing": "Prețuri",
    "storage": "Depozitare",
    "policies": "Politici",
    "ipFilter": "Filtru IP",
    "comboDefaults": "Setări implicite combinate",
    "fallbackChains": "Lanțuri de rezervă",
    "changePassword": "Schimbați parola",
    "enablePassword": "Activați parola",
    "darkMode": "Modul întunecat",
    "lightMode": "Modul de lumină",
    "memoryTitle": "Memory",
    "memoryDesc": "Persistent cross-session conversational memory",
    "memoryEnabled": "Enable Memory",
    "memoryEnabledDesc": "When enabled, OmniRoute will inject relevant past context.",
    "maxTokens": "Max Tokens",
    "retentionDays": "Retention",
    "recent": "Recent",
    "recentDesc": "Chronological window",
    "semantic": "Semantic",
    "semanticDesc": "Vector search",
    "hybrid": "Hybrid",
    "hybridDesc": "Recent + Semantic",
    "skillsTitle": "Skills",
    "skillsDesc": "Tools for models",
    "skillsEnabled": "Enable Skills",
    "skillsEnabledDesc": "Allows agents to trigger functions.",
    "skillsComingSoon": "Skills marketplace coming soon.",
    "memorySkillsTitle": "Memory & Skills",
    "memorySkillsDesc": "Persistent context & capabilities",
    "modelsDevTitle": "Model Database",
    "modelsDevDesc": "Auto-sync pricing, capabilities & specs from models.dev",
    "modelsDevEnabled": "Enable models.dev Sync",
    "modelsDevEnabledDesc": "Fetch model pricing, capabilities, and specs from the open-source models.dev database",
    "modelsDevInterval": "Sync Interval",
    "syncNow": "Sync Now",
    "syncing": "Syncing...",
    "lastSync": "Last sync",
    "never": "Never",
    "justNow": "tocmai acum",
    "modelsDevStats": "Sync Statistics",
    "modelsDevStatsDesc": "Current models.dev data coverage",
    "providers": "Furnizorii",
    "modelsWithPricing": "Models with Pricing",
    "capabilities": "Capabilities",
    "lastSyncCount": "Last Sync Count",
    "lastSyncFull": "Last full sync",
    "modelsDevInfo": "How It Works",
    "modelsDevInfoDesc": "models.dev is an open-source database of AI model specifications maintained by the SST/OpenCode team. It provides pricing, capabilities, context limits, and modalities for 4,000+ models across 100+ providers.",
    "modelsDevInfoResolution": "Pricing resolution order (highest priority first):",
    "modelsDevInfoOrder": "User Override → models.dev → LiteLLM → Hardcoded Default",
    "systemTheme": "Tema sistemului",
    "debugToggle": "Enable Debug Mode",
    "sidebarVisibilityToggle": "Show Sidebar Items",
    "enableCache": "Activați memoria cache",
    "cacheTTL": "Cache TTL",
    "maxCacheSize": "Dimensiunea maximă a memoriei cache",
    "clearCache": "Goliți memoria cache",
    "cacheCleared": "Cache cleared successfully",
    "clearCacheFailed": "Failed to clear cache",
    "cacheHits": "Hits în cache",
    "cacheMisses": "Cache Misses",
    "hitRate": "Rata de lovituri",
    "cacheEntries": "Intrări în cache",
    "cacheSettings": "Cache Settings",
    "semanticCache": "Semantic Cache",
    "maxEntries": "Max Entries",
    "ttlMinutes": "TTL (minutes)",
    "promptCache": "Prompt Cache",
    "strategy": "Strategy",
    "preserveClientCache": "Preserve Client Cache",
    "enabled": "Enabled",
    "loading": "Loading...",
    "saving": "Se salvează...",
    "save": "Save",
    "circuitBreaker": "Întrerupător",
    "retryPolicy": "Reîncercați Politica",
    "maxRetries": "Reîncercări maxime",
    "retryDelay": "Reîncercați Întârziere",
    "timeoutMs": "Timeout (ms)",
    "enableSystemPrompt": "Activați promptul de sistem",
    "systemPromptText": "Text prompt de sistem",
    "autoDisableBannedAccounts": "Auto-Disable Banned Accounts",
    "autoDisableDescription": "Permanently mark provider connections as deactivated if they return specific terminal ban signals (e.g. HTTP 403 'verify your account'). This removes them from the combo rotation.",
    "autoDisableThreshold": "Ban Threshold",
    "autoDisableThresholdDesc": "Consecutive ban signals required before permanent deactivation.",
    "resilienceStructureTitle": "Resilience Structure",
    "resilienceStructureDesc": "Această pagină configurează doar comportamentul. Starea de întrerupere live este afișată pe pagina Sănătate. Reîncercarea specifică combo-ului și controlul slotului round-robin rămân în setările combo.",
    "enableThinking": "Activați gândirea",
    "maxThinkingTokens": "Max Thinking Tokens",
    "enableProxy": "Activați proxy",
    "proxyUrl": "Adresa URL proxy",
    "pricingRates": "Formatul tarifelor de preț",
    "currentPricing": "Prezentare generală a prețurilor actuale",
    "loadingPricing": "Se încarcă datele de preț...",
    "noPricing": "Nu sunt disponibile date de preț",
    "input": "Intrare",
    "output": "Ieșire",
    "cached": "În cache",
    "reasoning": "Raționamentul",
    "cacheCreation": "Creare cache",
    "customPricing": "Prețuri personalizate",
    "databaseSize": "Dimensiunea bazei de date",
    "backupDb": "Backup baze de date",
    "restoreDb": "Restaurați baza de date",
    "exportData": "Exportați date",
    "importData": "Importați date",
    "clearData": "Ștergeți toate datele",
    "clearDataConfirm": "Aceasta va șterge definitiv toate datele. esti sigur?",
    "enableRequestLogs": "Activați jurnalele de solicitări",
    "logRetention": "Păstrarea jurnalelor",
    "ipWhitelist": "Lista albă IP",
    "ipBlacklist": "Lista neagră de IP",
    "addIP": "Adăugați IP",
    "savedSuccessfully": "Setările au fost salvate cu succes",
    "ai": "AI",
    "advanced": "Avansat",
    "localMode": "Mod local — Toate datele stocate pe aparat",
    "settingsSectionsAria": "Secțiunile de setări",
    "switchThemes": "Comutați între temele deschise și cele întunecate",
    "themeSelectionAria": "Selectarea temei",
    "themeLight": "Lumină",
    "themeDark": "Întuneric",
    "themeSystem": "Sistem",
    "endpointTunnelVisibility": "Vizibilitatea tunelului final",
    "endpointTunnelVisibilityDesc": "Ascundeți controalele tunelului din pagina Endpoint fără a schimba starea tunelului.",
    "showCloudflareTunnel": "Cloudflare Quick Tunnel",
    "showCloudflareTunnelDesc": "Afișați comenzile Cloudflare Quick Tunnel pe pagina Endpoint.",
    "showTailscaleFunnel": "Pâlnie Tailscale",
    "showTailscaleFunnelDesc": "Afișați comenzile Tailscale Funnel pe pagina Endpoint.",
    "showNgrokTunnel": "Tunelul ngrok",
    "showNgrokTunnelDesc": "Afișați comenzile ngrok Tunnel pe pagina Endpoint.",
    "sidebarVisibility": "Hide sidebar items",
    "sidebarVisibilityDesc": "Hide any sidebar navigation entry to reduce visual clutter.",
    "sidebarVisibilityHint": "Any sidebar section is hidden automatically when a...",
    "hideHealthLogs": "Ascundeți jurnalele de verificare a stării de sănătate",
    "hideHealthLogsDesc": "Când este ACTIVAT, suprimați mesajele [HealthCheck] din consola serverului",
    "themeAccent": "Culoarea temei",
    "themeAccentDesc": "Alege o culoare presetată sau creează-ți propria temă cu o singură culoare",
    "themeCreate": "Creează temă",
    "themeCustom": "Temă personalizată",
    "themeBlue": "Albastru",
    "themeRed": "Roșu",
    "themeGreen": "Verde",
    "themeViolet": "Violet",
    "themeOrange": "Portocaliu",
    "themeCyan": "Cian",
    "whitelabeling": "Branding",
    "whitelabelingDesc": "Customize the application name and logo",
    "appName": "Application Name",
    "appNameDesc": "Display name shown in sidebar and browser tab",
    "customLogo": "Custom Logo URL",
    "customLogoDesc": "URL to your custom logo image",
    "uploadLogo": "Upload Logo",
    "resetLogo": "Reset to Default",
    "logoPreview": "Preview",
    "customFavicon": "Browser Favicon",
    "customFaviconDesc": "URL to your custom favicon (shown in browser tab)",
    "uploadFavicon": "Upload Favicon",
    "resetFavicon": "Reset Favicon",
    "faviconPreview": "Favicon Preview",
    "flushCache": "Spălați memoria cache",
    "flushing": "Spălare…",
    "size": "Dimensiune",
    "hits": "Hituri",
    "evictions": "Evacuări",
    "loadingCacheStats": "Se încarcă statisticile cache...",
    "globalProxy": "Proxy global",
    "globalProxyDesc": "Configurați un proxy global de ieșire pentru toate apelurile API. Furnizorii individuali, combo-urile și cheile pot suprascrie acest lucru.",
    "noGlobalProxy": "Nu a fost configurat niciun proxy global",
    "globalLabel": "Global",
    "configure": "Configurați",
    "globalSystemPrompt": "Global System Prompt",
    "saved": "Salvat",
    "beforePromptLabel": "__MISSING__:Before Prompt",
    "beforePromptDesc": "__MISSING__:Injected before agent/provider system instructions",
    "beforePromptPlaceholder": "__MISSING__:Instructions inserted before agent/provider prompt...",
    "afterPromptLabel": "__MISSING__:After Prompt",
    "afterPromptDesc": "__MISSING__:Injected after agent/provider system instructions",
    "afterPromptPlaceholder": "__MISSING__:Instructions inserted after agent/provider prompt...",
    "chars": "{count} caractere",
    "thinkingBudgetTitle": "Gândirea bugetului",
    "thinkingBudgetDesc": "Controlați utilizarea simbolurilor de raționament AI pentru toate solicitările",
    "passthrough": "trecere",
    "passthroughDesc": "Fără modificări — clientul controlează bugetul de gândire",
    "auto": "Auto",
    "autoDesc": "Eliminați toate configurațiile de gândire - lăsați furnizorul să decidă",
    "custom": "Personalizat",
    "customDesc": "Setați un buget fix pentru token pentru toate solicitările",
    "adaptive": "Adaptiv",
    "adaptiveDesc": "Scalați bugetul în funcție de complexitatea cererii",
    "effortNone": "Niciunul (0 jetoane)",
    "effortLow": "Scăzut (1K jetoane)",
    "effortMedium": "Mediu (10.000 jetoane)",
    "effortHigh": "Ridicat (128.000 jetoane)",
    "tokenBudget": "Buget simbol",
    "tokens": "jetoane",
    "baseEffortLevel": "Nivelul de efort de bază",
    "adaptiveHint": "Modul adaptiv crește de la acest nivel de bază în funcție de numărul de mesaje, utilizarea instrumentului și lungimea promptului.",
    "requireLogin": "Necesită autentificare",
    "requireLoginDesc": "Când este pornit, tabloul de bord necesită o parolă. Când este OFF, accesați fără autentificare.",
    "currentPassword": "Parola curentă",
    "enterCurrentPassword": "Introduceți parola curentă",
    "newPassword": "Parolă nouă",
    "enterNewPassword": "Introduceți o nouă parolă",
    "confirmPassword": "Confirmați parola nouă",
    "confirmPasswordPlaceholder": "Confirmați noua parolă",
    "passwordsNoMatch": "Parolele nu se potrivesc",
    "passwordUpdated": "Parola a fost actualizată cu succes",
    "failedUpdatePassword": "Nu s-a putut actualiza parola",
    "errorOccurred": "A apărut o eroare",
    "updatePassword": "Actualizați parola",
    "setPassword": "Setați parola",
    "apiEndpointProtection": "API Endpoint Protection",
    "requireAuthModels": "Necesită cheia API pentru /models",
    "requireAuthModelsDesc": "Când este ACTIVAT, punctul final /v1/models returnează 404 pentru solicitările neautentificate. Previne descoperirea modelului de către utilizatori neautorizați.",
    "authModelHeading": "Model de autorizare activ",
    "authModelClient": "Punctele finale ale API-ului client (/v1/*, /chat/*, /responses/*, /codex/*, /messages/*) necesită o cheie API Bearer.",
    "authModelManagement": "Punctele finale de management (/dashboard, /api/*) necesită o sesiune de tablou de bord sau acreditări de management.",
    "authModelPublic": "Numai rutele de conectare, sănătate și bootstrap sunt publice.",
    "bruteForceProtection": "Conectați-vă cu protecție împotriva forței brute",
    "bruteForceProtectionDesc": "Accelerați și blocați /api/auth/login după eșecuri repetate de la același IP.",
    "corsAllowedOrigins": "CORS a permis originile",
    "corsAllowedOriginsDesc": "Listă separată prin virgulă cu originile browserului permise să apeleze acest server. Listă goală = fără acces la browser CORS (de la server la server încă funcționează). Utilizați CORS_ALLOW_ALL=true env var numai pentru dezvoltare.",
    "blockedProviders": "Furnizori blocați",
    "blockedProvidersDesc": "Ascundeți anumiți furnizori din răspunsul /v1/models. Furnizorii blocați nu vor apărea în listele de modele.",
    "providersBlocked": "{count} furnizor(i) blocat(i) de la /modele",
    "blockProviderTitle": "Blocați {provider}",
    "unblockProviderTitle": "Deblocați {provider}",
    "cliFingerprint": "CLI Fingerprint Matching",
    "cliFingerprintDesc": "Match native CLI binary signatures when proxying requests. Reorders headers and body fields to look identical to the official CLI tools. Your proxy IP is preserved.",
    "cliFingerprintEnabled": "{count} provider(s) with CLI fingerprint active",
    "enableFingerprintTitle": "Enable fingerprint for {provider}",
    "disableFingerprintTitle": "Disable fingerprint for {provider}",
    "systemTransforms": "Conducta de transformare a blocurilor de sistem",
    "systemTransformsDesc": "Canalul de transformări comandat de fiecare furnizor aplicat corpului cererii înainte de redirecționare. Acceptă orice ID de furnizor.",
    "systemTransformsAddProvider": "Adăugați furnizorul",
    "systemTransformsAddProviderPlaceholder": "Selectați un furnizor...",
    "systemTransformsAddProviderAllConfigured": "Toți furnizorii sunt deja configurați",
    "systemTransformsRemoveProvider": "Eliminați furnizorul",
    "systemTransformsNoProviders": "Nu au fost configurați furnizori. Adăugați un furnizor pentru a începe.",
    "systemTransformsOpMoveUp": "Mișcă-te în sus",
    "systemTransformsOpMoveDown": "Deplasați-vă în jos",
    "systemTransformsOpDelete": "Șterge op",
    "routingStrategy": "Strategia de rutare",
    "routingAdvancedGuideTitle": "Ghid avansat de rutare",
    "routingAdvancedGuideHint1": "Folosiți Fill First pentru o prioritate previzibilă, Round Robin pentru corectitudine și P2C pentru rezistență la latență.",
    "routingAdvancedGuideHint2": "Dacă furnizorii variază în ceea ce privește calitatea/costul, începeți cu Cost Opt pentru munca de fundal și Least Used pentru uzura echilibrată.",
    "fillFirst": "Umpleți mai întâi",
    "fillFirstDesc": "Utilizați conturile în ordine de prioritate",
    "roundRobin": "Round Robin",
    "roundRobinDesc": "Parcurgeți toate conturile",
    "p2c": "P2C",
    "p2cDesc": "Alegeți 2 la întâmplare, folosiți-l pe cel mai sănătos",
    "random": "Aleatoriu",
    "randomDesc": "Cont aleatoriu pentru fiecare cerere",
    "leastUsed": "Cel mai puțin folosit",
    "leastUsedDesc": "Alegeți contul cel mai puțin utilizat recent",
    "costOpt": "Cost Opt",
    "costOptDesc": "Prefer cel mai ieftin cont disponibil",
    "resetAware": "Reset-Aware RR",
    "resetAwareDesc": "Preferați conturile cu cotă rămasă sănătoasă și resetări mai apropiate",
    "strictRandom": "Strict Random",
    "strictRandomDesc": "Shuffle deck — uses each account once before reshuffling",
    "stickyLimit": "Limită lipicioasă",
    "stickyLimitDesc": "Apeluri pe cont înainte de a comuta",
    "modelAliases": "Aliasuri de model",
    "modelAliasesTitle": "Aliasuri de model",
    "modelAliasesDesc": "Remap model names using exact matches or wildcard patterns.",
    "addCustomAlias": "Adaugă Alias Personalizat",
    "deprecatedModelId": "ID model depreciat",
    "newModelId": "ID model nou",
    "customAliases": "Aliasuri personalizate",
    "builtInAliases": "Aliasuri încorporate",
    "backgroundDegradationTitle": "Degradare sarcini în fundal",
    "backgroundDegradationDesc": "Detectează automat sarcinile în fundal (titluri, rezumate) și redirecționează către modele mai ieftine",
    "enableDegradation": "Activează degradarea sarcinilor în fundal",
    "enableDegradationHint": "Când este activat, sarcinile în fundal precum generarea de titluri și rezumate sunt redirecționate automat către modele mai ieftine",
    "tasksDetected": "Sarcini detectate",
    "degradationMap": "Hartă de degradare a modelelor",
    "premiumModel": "Model premium",
    "cheapModel": "Model ieftin",
    "detectionPatterns": "Modele de detecție",
    "newPattern": "ex: \"generează un titlu\"",
    "aliasPatternPlaceholder": "claude-sonet-*",
    "aliasTargetPlaceholder": "claude-sonet-4-20250514",
    "pattern": "Model",
    "targetModel": "Model țintă",
    "add": "+ Adăugați",
    "session": "Sesiune",
    "sessionDetailsAria": "Detalii sesiune",
    "status": "Stare",
    "authenticated": "Autentificat",
    "guest": "Oaspete",
    "loginTime": "Ora de conectare",
    "sessionAge": "Vârsta sesiunii",
    "browser": "Browser",
    "clearLocalData": "Ștergeți datele locale",
    "logout": "Deconectare",
    "clearLocalDataConfirm": "Ștergeți toate datele locale? Aceasta vă va reseta preferințele.",
    "unknown": "Necunoscut",
    "systemActor": "sistem",
    "ipAccessControl": "Control acces IP",
    "ipAccessControlDesc": "Blocați sau permiteți anumite adrese IP",
    "ipModeDisabled": "Dezactivat",
    "ipModeBlacklist": "Lista neagră",
    "ipModeWhitelist": "Lista albă",
    "ipModeWhitelistPriority": "Prioritate WL",
    "addIpAddress": "Adăugați adresa IP",
    "ipAddressPlaceholder": "192.168.1.0/24 sau 10.0.*.*",
    "block": "+ Blocare",
    "allow": "+ Permite",
    "blocked": "Blocat ({count})",
    "allowed": "Permis ({count})",
    "temporaryBans": "Interdicții temporare ({count})",
    "minLeft": "Au mai rămas {min}m",
    "auditLog": "Jurnal de audit",
    "searchAuditLogs": "Căutați jurnalele de audit...",
    "failedLoadAuditLog": "Nu s-a încărcat jurnalul de audit",
    "noAuditEvents": "Nu au fost găsite evenimente de audit",
    "action": "Acțiune",
    "actor": "actor",
    "details": "Detalii",
    "time": "timpul",
    "fallbackChainsTitle": "Lanțuri de rezervă",
    "fallbackChainsDesc": "Definiți ordinea de rezervă a furnizorului pentru fiecare model",
    "addChain": "+ Adăugați lanț",
    "modelName": "Numele modelului",
    "modelNamePlaceholder": "claude-sonet-4-20250514",
    "providersCommaSeparated": "Furnizori (separați prin virgulă, în ordine de prioritate)",
    "providersCommaSeparatedPlaceholder": "antropic, openai, gemeni",
    "createChain": "Creați lanț",
    "noFallbackChains": "Fără lanțuri de rezervă",
    "noFallbackChainsDesc": "Creați un lanț pentru a defini ordinea de rezervă a furnizorului pentru un model.",
    "loadingFallbackChains": "Se încarcă lanțurile alternative...",
    "deleteChainConfirm": "Ștergeți lanțul alternativ pentru „{model}”?",
    "chainCreated": "Lanț creat pentru {model}",
    "chainDeleted": "Lanțul a fost șters pentru {model}",
    "failedCreateChain": "Nu s-a putut crea lanțul",
    "failedDeleteChain": "Lanțul nu a putut fi șters",
    "deleteChain": "Ștergeți lanțul",
    "fillModelAndProviders": "Vă rugăm să completați numele modelului și furnizorii",
    "addAtLeastOneProvider": "Adăugați cel puțin un furnizor",
    "comboDefaultsTitle": "Setări implicite combinate",
    "comboDefaultsGuideTitle": "Cum să reglați setările implicite de combo",
    "comboDefaultsGuideHint1": "Menține reîncercările scăzute în fluxurile cu latență scăzută; crește timpul de expirare numai pentru sarcini de generație lungă.",
    "comboDefaultsGuideHint2": "Folosiți suprascrierile furnizorului atunci când un furnizor are nevoie de un comportament de timeout/reîncercare diferit față de valorile prestabilite globale.",
    "globalComboConfig": "Configurație globală combo",
    "defaultStrategy": "Strategia implicită",
    "defaultStrategyDesc": "Aplicat combo-urilor noi fără strategie explicită",
    "comboStrategyAria": "Strategie combinată",
    "priority": "Prioritate",
    "weighted": "ponderat",
    "contextRelay": "Context Relay",
    "contextRelayDesc": "Hands off context between providers with automatic summarization",
    "maxRetriesLabel": "Reîncercări maxime",
    "retryDelayLabel": "Întârziere reîncercare (ms)",
    "timeoutLabel": "Timeout (ms)",
    "healthCheck": "Verificare de sănătate",
    "healthCheckDesc": "Verificați prealabil disponibilitatea furnizorului",
    "trackMetrics": "Urmăriți valorile",
    "trackMetricsDesc": "Înregistrați valorile pentru fiecare cerere combinată",
    "providerOverrides": "Suprascrierea furnizorului",
    "providerOverridesDesc": "Suprascrierea timpului de expirare și reîncercări pentru fiecare furnizor. Setările furnizorului înlocuiesc valorile prestabilite globale.",
    "providerMaxRetriesAria": "{provider} max. reîncercări",
    "providerTimeoutAria": "{provider} timeout ms",
    "removeProviderOverrideAria": "Eliminați anularea {provider}",
    "newProviderNamePlaceholder": "de ex. google, deschide...",
    "newProviderNameAria": "Numele furnizorului nou",
    "retries": "reîncercări",
    "ms": "ms",
    "saveComboDefaults": "Salvați setările implicite de combo",
    "maxNestingDepth": "Adâncimea maximă de cuibărire",
    "concurrencyPerModel": "Concurență / Model",
    "queueTimeout": "Timp de așteptare la coadă (ms)",
    "contextRelayHandoffThreshold": "Handoff Threshold",
    "contextRelayMaxMessages": "Max Messages For Summary",
    "contextRelaySummaryModel": "Summary Model",
    "contextRelayProviderNote": "Context Relay currently generates handoffs for Codex accounts and uses these values as global defaults for new or unconfigured combos.",
    "providerProfiles": "Profiluri de furnizor",
    "providerProfilesDesc": "Setări separate de rezistență pentru furnizorii OAuth (bazat pe sesiune) și API Key (contorizat). Furnizorii OAuth au praguri mai stricte din cauza limitelor mai mici ale ratei.",
    "oauthProviders": "Furnizori OAuth",
    "apiKeyProviders": "Furnizori de chei API",
    "transientCooldown": "Răcire tranzitorie",
    "rateLimitCooldown": "Rate de răcire limită",
    "maxBackoffLevel": "Nivel maxim de retragere",
    "cbThreshold": "Pragul CB",
    "cbResetTime": "Timp de resetare CB",
    "rateLimiting": "Limitarea ratei",
    "rateLimitingDesc": "Furnizorii de chei API sunt limitate automat la rate cu valori implicite sigure. Limitele sunt învățate din anteturile de răspuns și se adaptează în timp.",
    "defaultSafetyNet": "Rețea de siguranță implicită",
    "rpm": "RPM",
    "minGap": "Gap min",
    "maxConcurrent": "Concurență maximă",
    "activeLimiters": "Limitatoare active",
    "noActiveLimiters": "Încă nu există limitatoare de rată active.",
    "reservoir": "Rezervor",
    "running": "Alergarea",
    "queued": "În coadă",
    "circuitBreakers": "Întreruptoare",
    "breakerStateClosed": "Închis",
    "breakerStateOpen": "Deschide",
    "breakerStateHalfOpen": "Pe jumătate deschis",
    "tripped": "{count} sa declanșat",
    "healthy": "{count} sănătos",
    "resetAll": "Resetați toate",
    "noCircuitBreakers": "Niciun întrerupător de circuit activ încă. Acestea sunt create automat atunci când cererile trec prin conducta combinată.",
    "failures": "{count} eșec(e)",
    "policiesLocked": "Politici și identificatori blocați",
    "allOperational": "Toate sistemele sunt operaționale — fără blocaje sau întrerupătoare declanșate",
    "loadingPolicies": "Se încarcă politicile...",
    "lockedIdentifiers": "Identificatori blocați",
    "unlockedIdentifier": "Deblocat: {identifier}",
    "sinceDate": "din {date}",
    "forceUnlock": "Deblocare forțată",
    "unlocking": "Se deblochează...",
    "failedUnlock": "Deblocarea eșuată",
    "failedLoadWithStatus": "Nu s-a încărcat: {status}",
    "failedLoadResilience": "Nu s-a încărcat starea de rezistență",
    "saveFailed": "Salvarea nu a reușit",
    "resetFailed": "Resetarea a eșuat",
    "loadingResilience": "Se încarcă starea rezistenței...",
    "retry": "Reîncercați",
    "systemStorage": "Sistem și stocare",
    "allDataLocal": "Toate datele stocate local pe aparatul dvs",
    "databasePath": "Calea bazei de date",
    "exportDatabase": "Exportați baza de date",
    "exportAll": "Exportați toate (.tar.gz)",
    "importDatabase": "Importă baza de date",
    "confirmDbImport": "Confirmați importul bazei de date",
    "confirmDbImportDesc": "Aceasta va înlocui toate datele curente cu conținutul din {file}. O copie de rezervă va fi creată automat înainte de import.",
    "yesImport": "Da, import",
    "lastBackup": "Ultima copie de rezervă",
    "noBackupYet": "Nicio rezervă încă",
    "backupNow": "Faceți backup acum",
    "backupRestore": "Backup și restaurare",
    "viewBackups": "Vizualizați copii de rezervă",
    "hide": "Ascunde",
    "backupRetentionDesc": "Instantaneele bazei de date sunt create automat înainte de restaurare și la fiecare 15 minute când datele se modifică. Reținere: 24 de ore din 24 + 30 de backup-uri zilnice cu rotație inteligentă.",
    "loadingBackups": "Se încarcă copii de rezervă...",
    "noBackupsYet": "Nu există copii de rezervă disponibile încă. Backup-urile vor fi create automat când datele se schimbă.",
    "backupsAvailable": "{count} backup(uri) disponibil(e).",
    "refresh": "Reîmprospătați",
    "confirm": "Confirm?",
    "yes": "Da",
    "no": "Nu",
    "restore": "Restaurați",
    "invalidFileType": "Tip de fișier nevalid. Sunt acceptate numai fișierele .sqlite.",
    "exportFailed": "Exportul nu a reușit",
    "exportFailedWithError": "Export eșuat: {error}",
    "fullExportFailedWithError": "Exportul complet eșuat: {error}",
    "backupCreated": "Backup creat: {file}",
    "restoreSuccess": "Restaurat! {connections} conexiuni, {nodes} noduri, {combos} combo, {apiKeys} chei API.",
    "importSuccess": "Baza de date importată! {connections} conexiuni, {nodes} noduri, {combos} combo, {apiKeys} chei API.",
    "minutesAgo": "{count}m în urmă",
    "hoursAgo": "acum {count}h",
    "daysAgo": "acum {count}d",
    "backupReasonManual": "manual",
    "backupReasonPreRestore": "pre-restaurare",
    "connectionsCount": "{count, plural, one {# connection} other {# connections}}",
    "noChangesSinceBackup": "Nicio modificare de la ultima copie de rezervă",
    "backupFailed": "Copierea de rezervă a eșuat",
    "restoreFailed": "Restaurarea a eșuat",
    "importFailed": "Importul nu a reușit",
    "errorDuringRestore": "A apărut o eroare în timpul restaurării",
    "errorDuringImport": "A apărut o eroare în timpul importului",
    "modelPricing": "Prețul modelului",
    "modelPricingDesc": "Configurați tarifele de cost pe model • Toate tarifele în jetoane $/1M",
    "registry": "Registrul",
    "priced": "Preț",
    "searchProvidersModels": "Căutați furnizori sau modele...",
    "showAll": "Arată toate",
    "noProvidersMatch": "Niciun furnizor nu corespunde căutării dvs.",
    "howPricingWorks": "Cum funcționează prețurile",
    "cacheWrite": "Scriere în cache",
    "unsaved": "nesalvat",
    "resetDefaults": "Resetează setările implicite",
    "saveProvider": "Salvați furnizorul",
    "model": "Model",
    "models": "modele",
    "moreProviders": "{count} mai mulți furnizori",
    "withPricing": "cu prețul configurat",
    "policiesCircuitBreakers": "Politici și întrerupătoare de circuit",
    "activeIssuesDetected": "Au fost detectate probleme active",
    "off": "Oprit",
    "resetPricingConfirm": "Resetați toate prețurile pentru {provider} la valorile prestabilite?",
    "pricingDescInput": "Intrare: jetoane trimise modelului",
    "pricingDescOutput": "Ieșire: jetoane generate",
    "pricingDescCached": "În cache: intrare reutilizată (~50% din rata de intrare)",
    "pricingDescReasoning": "Raționament: jetoane de gândire (se întoarce la Ieșire)",
    "pricingDescCacheWrite": "Scriere în cache: crearea de intrări în cache (revine la Intrare)",
    "pricingDescFormula": "Cost = (input × input_rate) + (output × output_rate) + (cached × cached_rate) per milion de jetoane.",
    "pricingSettingsTitle": "Setări de preț",
    "totalModels": "Total Modele",
    "active": "Activ",
    "costCalculation": "Calculul costurilor",
    "costCalculationDesc": "Costurile sunt calculate pe baza utilizării simbolurilor și a tarifelor de preț configurate pentru fiecare model.",
    "pricingFormat": "Format de preț",
    "pricingFormatDesc": "Toate tarifele sunt în jetoane/1 milion USD (dolari per milion de jetoane).",
    "tokenTypes": "Tipuri de jetoane",
    "inputTokenDesc": "Jetoane standard de prompt",
    "outputTokenDesc": "Jetoane de completare/răspuns",
    "cachedTokenDesc": "Jetoane de intrare stocate în cache (de obicei 50% din rata de intrare)",
    "reasoningTokenDesc": "Indicative speciale de raționament/gândire (retracție la rata de ieșire)",
    "cacheCreationTokenDesc": "Jetoane utilizate pentru a crea intrări în cache (retur la rata de intrare)",
    "customPricingNote": "Puteți suprascrie prețurile implicite pentru anumite modele. Anulările personalizate au prioritate față de prețurile detectate automat.",
    "editPricing": "Editați prețul",
    "viewFullDetails": "Vezi detalii complete",
    "themeCoral": "Coral",
    "adaptiveVolumeRouting": "Adaptive Volume Routing",
    "adaptiveVolumeRoutingDesc": "Scale connections dynamically based on payload volume and throughput pressure.",
    "lkgpToggleTitle": "Last Known Good Provider (LKGP)",
    "lkgpToggleDesc": "When enabled, the router remembers which provider last served a successful response and tries it first on subsequent requests.",
    "clearLkgpCache": "Clear LKGP Cache",
    "lkgpCacheCleared": "LKGP cache cleared successfully",
    "lkgpCacheClearFailed": "Failed to clear LKGP cache",
    "days": "Days",
    "lkgp": "LKGP Mode",
    "lkgpDesc": "Last Known Good Provider (Predictable resilience)",
    "maintenance": "Maintenance",
    "purgeExpiredLogs": "Purge Expired Logs",
    "purgeLogsFailed": "Failed to purge logs",
    "contextOpt": "Context Optimized",
    "contextOptDesc": "Routes based on context window requirements and conversation length",
    "priorityDesc": "Sequential fallback - tries provider 1 first, then provider 2, and so on",
    "weightedDesc": "Distributes traffic by percentage weights across providers",
    "modelRoutingTitle": "Model Routing Rules",
    "modelRoutingDesc": "Automatically route models to specific combos using glob patterns",
    "addRule": "Add Rule",
    "routeToCombo": "Route to Combo",
    "selectCombo": "Select combo...",
    "priorityHint": "Higher = checked first. Use 10+ for specific patterns.",
    "patternHint": "Use * for any chars, ? for single char. Case-insensitive.",
    "noRoutingRules": "No routing rules configured. Requests use the global combo by default.",
    "routingRuleHint": "Add a rule like claude-opus* -> frontier-combo to automatically route requests.",
    "deleteRoutingRule": "Delete this model routing rule?",
    "exactMatchMode": "Exact Match",
    "wildcardPatternMode": "Wildcard Pattern",
    "exactMatchModeDesc": "Use exact aliases for deprecated or renamed model IDs.",
    "wildcardPatternModeDesc": "Use wildcard aliases with * and ? when a family of models should map to one target.",
    "noExactAliasesConfigured": "No exact-match aliases configured.",
    "wildcardRulesTitle": "Wildcard Rules",
    "noWildcardAliasesConfigured": "No wildcard aliases configured.",
    "overview": "Overview",
    "unknownError": "Unknown Error",
    "pricingSourceLiteLLM": "Pricing Source Lite Llm",
    "clearSyncedPricingConfirm": "Clear Synced Pricing Confirm",
    "clearSyncedPricingFailed": "Clear Synced Pricing Failed",
    "pricingSourceUser": "Pricing Source User",
    "pageDescription": "Page Description",
    "pricingSyncStatus": "Pricing Sync Status",
    "whitelist": "Whitelist",
    "syncDisabled": "Sync Disabled",
    "pricingLoadFailed": "Pricing Load Failed",
    "pricingSyncDescription": "Pricing Sync Description",
    "clearSyncedPricingSuccess": "Clear Synced Pricing Success",
    "clearSyncedPricingFailedWithReason": "Prețul nu a fost șters: {reason}",
    "pricingSourceDefault": "Pricing Source Default",
    "pricingSyncSuccess": "Pricing Sync Success",
    "enableSyncError": "Enable Sync Error",
    "syncEnabled": "Sync Enabled",
    "blacklist": "Blacklist",
    "pricingSourceModelsDev": "Pricing Source Models Dev",
    "syncedModels": "Synced Models",
    "budget": "Budget",
    "pricingSyncTitle": "Pricing Sync Title",
    "pricingResetFailedWithReason": "Nu s-a resetat prețul: {reason}",
    "tab": "Tab",
    "pricingSavedProvider": "Prețul salvat pentru {provider}",
    "pricingSyncFailed": "Pricing Sync Failed",
    "pricingSaveFailedWithReason": "Nu s-a salvat prețul: {reason}",
    "pricingResetProvider": "Resetarea prețului pentru {provider}",
    "nextSync": "Next Sync",
    "pricingSyncFailedWithReason": "Sincronizarea prețurilor a eșuat: {reason}",
    "clearSyncedPricing": "Clear Synced Pricing",
    "compressionTitle": "Prompt Compression",
    "compressionDesc": "Reduce token usage by compressing prompts before sending to providers",
    "compressionMode": "Compression Mode",
    "compressionModeOff": "Off",
    "compressionModeOffDesc": "No compression applied",
    "compressionModeLite": "Lite",
    "compressionModeLiteDesc": "Whitespace and blank line reduction",
    "compressionModeStandard": "Standard (Caveman)",
    "compressionModeStandardDesc": "Rule-based compression with 30+ patterns, preserves code blocks and URLs",
    "compressionModeAggressive": "Aggressive",
    "compressionModeAggressiveDesc": "Summarization + tool result compression + progressive aging for maximum savings",
    "compressionModeUltra": "Ultra",
    "compressionModeUltraDesc": "Maximum compression with all techniques including semantic deduplication",
    "compressionAggressiveConfig": "Configurație agresivă a motorului",
    "compressionAggressiveConfigDesc": "Ajustați rezumatul, compresia sculei și pragurile de îmbătrânire",
    "compressionUltraConfig": "Configurație Ultra Engine",
    "compressionUltraConfigDesc": "Ajustați tăierea euristică, retragerea SLM și pragurile per mesaj",
    "compressionUltraRate": "Păstrați rata",
    "compressionUltraMinScore": "Pragul minim de scor",
    "compressionUltraSlmFallback": "Revenire la Agresiv",
    "compressionUltraModelPath": "Calea modelului SLM",
    "compressionSummarizerEnabled": "Activați Summarizer",
    "compressionMaxTokensPerMessage": "Numărul maxim de jetoane per mesaj",
    "compressionMinSavings": "Pragul minim de economii",
    "compressionAgingThresholds": "Praguri de îmbătrânire",
    "compressionAgingThresholdsDesc": "Numărul de mesaje recente păstrate la fiecare nivel de vechime (mai mare = mai păstrat)",
    "compressionToolStrategies": "Strategii de rezultate ale instrumentului",
    "compressionToolStrategiesDesc": "Comutați strategiile de compresie pentru diferite tipuri de rezultate de scule",
    "compressionGeneral": "General Settings",
    "compressionAutoTrigger": "Auto-Trigger Threshold",
    "compressionCacheTTL": "Cache TTL",
    "compressionPreserveSystem": "Preserve System Prompt",
    "compressionCavemanConfig": "Caveman Engine Configuration",
    "compressionCavemanConfigDesc": "Fine-tune the rule-based compression engine",
    "compressionRoles": "Compress Message Roles",
    "compressionRoleUser": "User",
    "compressionRoleAssistant": "Assistant",
    "compressionRoleSystem": "System",
    "compressionMinLength": "Minimum Message Length",
    "compressionSkipRules": "Skip Compression Rules",
    "compressionSkipRulesDesc": "Click rules to skip them during compression",
    "compressionPreservePatterns": "Preserve Patterns",
    "compressionPreservePatternsDesc": "Regex patterns that are never compressed (one per line)",
    "compressionLogTitle": "Compression Log",
    "compressionLogEmpty": "No compressed requests yet. Compression stats will appear here when requests are processed with compression enabled.",
    "minutes": "minute",
    "compressionModeRtk": "RTK",
    "compressionModeRtkDesc": "Command-aware tool output filtering",
    "compressionModeStacked": "Stacked",
    "compressionModeStackedDesc": "RTK tool-output filtering followed by Caveman message compression",
    "qdrantTitle": "Qdrant (Vector memory)",
    "qdrantDesc": "Optional. Indexes semantic memories in an external vector database for faster retrieval.",
    "qdrantStatusActive": "Active",
    "qdrantStatusError": "Error",
    "qdrantStatusDisabled": "Disabled",
    "qdrantEnable": "Enable Qdrant",
    "qdrantEnableDesc": "When enabled, semantic/hybrid strategy can use Qdrant to retrieve memories.",
    "qdrantTesting": "Testing...",
    "qdrantTestConnection": "Test connection",
    "qdrantSaved": "Configuration saved",
    "qdrantSaveError": "Failed to save configuration",
    "qdrantHostHint": "Without port. Example: 127.0.0.1 or http://qdrant",
    "qdrantPort": "Port",
    "qdrantPortHint": "Qdrant default: 6333",
    "qdrantCollectionHint": "Where memory points will be stored.",
    "qdrantEmbeddingModel": "Embedding model",
    "qdrantHelpTitle": "Quick setup help",
    "qdrantHelpQuickTitle": "Quick setup (Qdrant + OpenRouter)",
    "qdrantHelpStep1": "1. Host: Qdrant IP/URL, Port: 6333, Collection: omniroute_memory.",
    "qdrantHelpStep2": "2. If using nvidia/llama-nemotron-embed-vl-1b-v2:free, use collection dimension 2048.",
    "qdrantHelpStep3": "3. Model field: openrouter/nvidia/llama-nemotron-embed-vl-1b-v2:free.",
    "qdrantHelpStep4": "4. Save, test connection, then test search.",
    "qdrantEmbeddingQuickSelect": "Quick select from discovered models...",
    "qdrantEmbeddingInputPlaceholder": "openai/text-embedding-3-small",
    "qdrantEmbeddingHint": "Format: provider/model. The provider credential must be configured.",
    "qdrantApiKeyPlaceholderKeep": "(leave empty to keep current key)",
    "qdrantApiKeyPlaceholderOptional": "(leave empty if not used)",
    "qdrantSaveHint": "Tip: edit host/port/collection/model and click Save. API key is optional.",
    "qdrantSearchTestTitle": "Search test",
    "qdrantSearchTestDesc": "Generates embedding and searches in Qdrant.",
    "qdrantSearchPlaceholder": "Example: user preferences, history, etc",
    "qdrantNoResults": "No results (or Qdrant is not configured).",
    "qdrantCleanupTitle": "Retention and cleanup",
    "qdrantCleanupDesc": "Removes expired and old points based on",
    "searching": "Searching...",
    "cleaning": "Cleaning...",
    "cleanNow": "Clean now",
    "optional": "Opțional",
    "current": "Curent",
    "remove": "Eliminați",
    "search": "Caută",
    "oneproxyTitle": "1 piață proxy gratuită",
    "oneproxyTotalProxies": "Total proxy",
    "oneproxyAvgQuality": "Calitate medie",
    "resilienceScope": "Domeniu de aplicare:",
    "resilienceTrigger": "Declanșator:",
    "resilienceEffect": "Efect:",
    "resilienceRequestQueueTitle": "Request Queue & Rate",
    "resilienceAutoEnableApiKeyProviders": "Auto-enable for API-key providers",
    "resilienceRequestsPerMinute": "Requests per minute",
    "resilienceMinTimeBetweenRequests": "Minimum time between requests",
    "resilienceConcurrentRequests": "Concurrent requests",
    "resilienceMaxQueueWaitTime": "Timp maxim de așteptare la coadă",
    "resilienceBaseCooldown": "Base cooldown",
    "resilienceUseUpstreamRetryHints": "Use upstream retry hints",
    "resilienceDefaultPerProvider": "Default (per provider)",
    "resilienceAlwaysOn": "Always on",
    "resilienceAlwaysOff": "Always off",
    "routingRemoveEntry": "Eliminați intrarea",
    "routingNeedlesSubstrings": "Ace (subșiruri care să se potrivească)",
    "routingCaseSensitive": "Sensibil cu majuscule",
    "routingPrefixes": "Prefixe",
    "routingMatch": "Se potrivește",
    "routingReplacement": "Înlocuire",
    "routingReplaceAllOccurrences": "Înlocuiți toate aparițiile",
    "routingPatternRegex": "Model (regex)",
    "routingFlags": "Steaguri",
    "routingNeedles": "Ace",
    "routingBlockText": "Blocați textul",
    "routingIdempotencyKey": "Cheia de idempotenta",
    "routingEntrypoint": "Punct de intrare",
    "routingVersionFormat": "Formatul versiunii",
    "routingCchAlgorithm": "algoritmul CCH",
    "routingWordsToObfuscate": "Cuvinte de ofuscat (ZWJ introdus după primul caracter)",
    "logsSettingsTitle": "Setări jurnal",
    "detailedLogsLabel": "Jurnalele detaliate sunt activate",
    "detailedLogsDesc": "Activați înregistrarea detaliată a cererilor/răspunsurilor",
    "callLogPipelineLabel": "Jurnalul de apeluri Pipeline",
    "callLogPipelineDesc": "Activați canalul de procesare a jurnalului de apeluri",
    "maxDetailSizeLabel": "Dimensiunea maximă a detaliilor (KB)",
    "maxDetailSizeDesc": "Dimensiunea maximă pentru intrările de jurnal detaliate",
    "ringBufferSizeLabel": "Dimensiunea tamponului de inel",
    "ringBufferSizeDesc": "Dimensiunea tamponului inel pentru bușteni",
    "semanticCacheEnabledLabel": "Cache semantic activat",
    "semanticCacheMaxSizeLabel": "Dimensiunea maximă a memoriei cache semantică",
    "semanticCacheMaxSizeDesc": "Numărul maxim de intrări semantice în cache",
    "semanticCacheTTLLabel": "Cache semantic TTL",
    "promptCacheEnabledLabel": "Prompt Cache activat",
    "promptCacheEnabledDesc": "Activați memorarea în cache promptă",
    "promptCacheStrategyLabel": "Strategie de cache promptă",
    "promptCacheStrategyDesc": "Strategie pentru stocarea rapidă în cache",
    "alwaysPreserveClientCacheLabel": "Păstrați întotdeauna cache-ul clientului",
    "alwaysPreserveClientCacheDesc": "Politica de păstrare a memoriei cache a clientului",
    "logRetentionPolicyTitle": "Politica de păstrare a jurnalelor",
    "resilienceUseUpstream429HintsForBreaker": "Utilizați în amonte 429 indicii (întrerupător)",
    "appearanceLogoPreviewAlt": "Previzualizare logo",
    "appearanceFaviconPreviewAlt": "Previzualizare favicon",
    "oneproxyLastSync": "Ultima sincronizare",
    "oneproxyAllProtocols": "Toate protocoalele",
    "oneproxyCountryCodePlaceholder": "Cod de țară (de exemplu, SUA)",
    "oneproxyMinQualityPlaceholder": "Calitate min",
    "oneproxyLoadingProxies": "Se încarcă proxy-urile...",
    "oneproxyLastSyncLabel": "Ultima sincronizare:",
    "oneproxyProxiesFetched": "Proxy-uri preluate:",
    "oneproxyConsecutiveFailures": "Eșecuri consecutive:",
    "oneproxyErrorLabel": "Eroare:",
    "oneproxyNever": "Niciodată",
    "oneproxySyncStatusTitle": "Stare de sincronizare",
    "oneproxySuccess": "Succes",
    "oneproxyFailed": "A eșuat",
    "routingAntigravitySignatureTitle": "Modul Cache a semnăturii antigravitaționale",
    "routingAntigravitySignatureDesc": "__MISSING__:Control whether OmniRoute reuses only stored Gemini thought signatures or accepts validated client-provided signatures in Antigravity-compatible tool-call flows.",
    "routingAntigravitySignatureEnabledLabel": "__MISSING__:Enabled",
    "routingAntigravitySignatureEnabledDesc": "__MISSING__:Current behavior. Ignore client-provided signatures and keep using the stored OmniRoute flow.",
    "routingAntigravitySignatureBypassLabel": "__MISSING__:Bypass",
    "routingAntigravitySignatureBypassDesc": "__MISSING__:Accept client-provided signatures after lightweight validation and fall back to the stored signature when invalid.",
    "routingAntigravitySignatureBypassStrictLabel": "__MISSING__:Bypass Strict",
    "routingAntigravitySignatureBypassStrictDesc": "__MISSING__:Require full protobuf validation before accepting a client-provided signature.",
    "routingHeaderFingerprintTitle": "Amprenta antet (per furnizor)",
    "routingServerRejectedSave": "⚠ Salvare respinsă de server:",
    "routingAddTransformOp": "Adăugați o transformare op",
    "routingClientCacheControlTitle": "Client Cache Control",
    "routingClientCacheControlDesc": "__MISSING__:Configure whether OmniRoute preserves client-provided cache_control markers",
    "routingClientCacheControlAutoDesc": "__MISSING__:For deterministic Claude-compatible flows, preserve client-provided cache_control as-is. If the request has no cache_control, OmniRoute does not inject any bridge-owned markers for CC-compatible third-party proxy compatibility.",
    "routingClientCacheControlAlwaysLabel": "__MISSING__:Always Preserve",
    "routingClientCacheControlAlwaysDesc": "__MISSING__:Always forward client-provided cache_control headers to upstream providers as-is.",
    "routingClientCacheControlNeverLabel": "__MISSING__:Never Preserve",
    "routingClientCacheControlNeverDesc": "__MISSING__:Always remove client cache_control headers and let OmniRoute manage caching where native provider flows support it.",
    "routingZeroConfigTitle": "Auto-Routing Zero-Config",
    "routingZeroConfigDesc": "__MISSING__:Enable automatic provider selection using the auto/ prefix. When enabled, requests to auto, auto/coding, auto/fast, etc. will dynamically route across all connected providers.",
    "routingDefaultAutoVariant": "Varianta automată implicită",
    "visionBridge": "Podul Viziunii",
    "visionBridgeDesc": "__MISSING__:Run an automatic vision-to-text fallback before routing image requests to text-only models.",
    "visionBridgeEnabledLabel": "__MISSING__:Enabled",
    "visionBridgeEnabledDesc": "__MISSING__:Toggle the pre-call bridge that replaces image parts with extracted text.",
    "visionBridgeModel": "Model de pod",
    "visionBridgeModelPlaceholder": "openai/gpt-4o-mini",
    "visionBridgeModelHint": "__MISSING__:Any OmniRoute model ID that supports vision can be used here.",
    "visionBridgePrompt": "Prompt de pod",
    "visionBridgePromptPlaceholder": "Descrieți această imagine concis.",
    "visionBridgePromptHint": "__MISSING__:Sent to the vision model before the extracted description is injected back into the original request.",
    "visionBridgeTimeoutMs": "Timeout (ms)",
    "visionBridgeMaxImagesPerRequest": "Imagini maxime per cerere",
    "resilienceMaxBackoffSteps": "Max backoff steps",
    "resilienceProviderBreakerTitle": "Circuit Breaker per Provider",
    "resilienceFailureThreshold": "Failure threshold",
    "resilienceResetTimeout": "Resetați timeout",
    "resilienceFailureThresholdLabel": "Pragul de eșec",
    "resilienceResetTimeoutLabel": "Resetați timeout",
    "resilienceConnectionCooldownTitle": "Connection Cooldown",
    "resilienceUseUpstreamRetryHintsLabel": "Folosiți indicii de reîncercare în amonte",
    "resilienceUseUpstream429BreakerLabel": "Utilizați în amonte 429 indicii (întrerupător)",
    "resilienceMaxBackoffStepsLabel": "Pași maximi de retragere",
    "resilienceYes": "Da",
    "resilienceNo": "Nu",
    "resilienceDefault": "Default",
    "storageDatabaseBackupRetention": "Reținerea backupului bazei de date",
    "storagePurgeData": "Curățați datele",
    "retentionQuotaSnapshots": "Instantanee de cotă (zile)",
    "retentionMcpAudit": "Audit MCP (zile)",
    "retentionA2aEvents": "Evenimente A2A (zile)",
    "retentionCallLogs": "Jurnalele de apeluri (zile)",
    "retentionUsageHistory": "Istoricul utilizării (zile)",
    "retentionMemoryEntries": "Intrări de memorie (zile)",
    "storageAutoVacuumMode": "Modul de aspirare automată",
    "storageScheduledVacuum": "Vacuum programat",
    "storageVacuumHour": "Ora de vid (0-23)",
    "storagePageSize": "Dimensiunea paginii (octeți)",
    "storageDatabaseSize": "Dimensiunea bazei de date",
    "storagePageCount": "Număr pagini",
    "storageFreelistCount": "Număr de liste libere",
    "storageLastVacuum": "Ultimul vid",
    "storageLastOptimization": "Ultima optimizare",
    "storageIntegrityCheck": "Verificarea integrității",
    "storageIntegrityOk": "✓ OK",
    "storageIntegrityError": "✗ Eroare",
    "storageUsageTokenBuffer": "Utilizare Token Buffer",
    "compressionSettingsAutoTriggerMode": "Modul de declanșare automată",
    "compressionSettingsMcpDescriptionCompression": "Comprimarea descrierii MCP",
    "compressionSettingsCavemanIntensity": "Intensitatea cavernelor",
    "compressionSettingsCavemanOutputMode": "Modul de ieșire Caveman",
    "compressionSettingsOutputIntensity": "Intensitatea ieșirii",
    "compressionSettingsAutoClarityBypass": "Ocolire automată a clarității",
    "resilienceWaitForCooldown": "Așteptați răcirea",
    "resilienceEnableServerSideWait": "Activați așteptarea pe server",
    "resilienceMaximumRetries": "Numărul maxim de încercări",
    "resilienceMaximumWaitPerRetry": "Așteptare maximă pentru fiecare reîncercare",
    "memorySkillsSkillsmpMarketplace": "SkillsMP Marketplace",
    "memorySkillsFailedToSave": "Salvare eșuată",
    "memorySkillsApiKey": "Cheia API",
    "memorySkillsActiveSkillsProvider": "Furnizor activ de abilități",
    "cliproxyapiFallback": "CLIProxyAPI Fallback",
    "cliproxyapiEnableFallback": "Activați CLIProxyAPI Fallback",
    "cliproxyapiUrl": "URL CLIProxyAPI",
    "cliproxyapiStatus": "Stare CLIProxyAPI",
    "cliproxyapiNotDetected": "Nedetectat",
    "payloadRulesTitle": "Reguli de sarcină utilă",
    "payloadRulesDesc": "__MISSING__:Configure request payload mutations by model and protocol. Changes are persisted in settings and hot reloaded into the runtime immediately after save.",
    "payloadRuleDefaultTitle": "__MISSING__:default",
    "payloadRuleDefaultDesc": "__MISSING__:Applies params only when the target path is missing from the outgoing payload.",
    "payloadRuleOverrideTitle": "__MISSING__:override",
    "payloadRuleOverrideDesc": "__MISSING__:Forces values onto the payload, replacing anything already present at that path.",
    "payloadRuleFilterTitle": "__MISSING__:filter",
    "payloadRuleFilterDesc": "__MISSING__:Removes blocked params from the payload before the upstream request is sent.",
    "payloadRuleDefaultRawTitle": "__MISSING__:defaultRaw",
    "payloadRuleDefaultRawDesc": "__MISSING__:Like default, but string values are parsed as JSON first when possible. The legacy input alias default-raw is also accepted on save.",
    "payloadEditorTitle": "__MISSING__:Editor",
    "payloadEditorDesc": "__MISSING__:Use the runtime schema shape: default, override, filter, defaultRaw. The API also accepts the legacy input key default-raw.",
    "payloadEditorReady": "__MISSING__:Ready",
    "payloadResetInfo": "__MISSING__:Editor reset to the neutral template. Save to apply it.",
    "payloadSaveSuccess": "__MISSING__:Payload rules saved and hot reloaded.",
    "payloadJsonParseError": "__MISSING__:JSON parse error: {error}",
    "payloadMustBeObject": "__MISSING__:Payload rules must be a JSON object.",
    "payloadInvalidJson": "__MISSING__:Invalid JSON payload.",
    "payloadValidJsonRequired": "__MISSING__:Payload rules must be valid JSON before saving.",
    "savePayloadRules": "__MISSING__:Save Payload Rules",
    "requestLimitsTitle": "__MISSING__:Request Limits",
    "requestLimitsDesc": "__MISSING__:Configure global request limits and concurrency guards.",
    "maxRequestSizeLabel": "__MISSING__:Max Request Size (MB)",
    "maxRequestSizeDesc": "__MISSING__:Maximum allowed size for incoming API requests.",
    "maxResponseSizeLabel": "__MISSING__:Max Response Size (MB)",
    "maxResponseSizeDesc": "__MISSING__:Maximum allowed size for outgoing API responses.",
    "maxRequestTokensLabel": "__MISSING__:Max Request Tokens",
    "maxRequestTokensDesc": "__MISSING__:Maximum total tokens allowed in a single request.",
    "maxResponseTokensLabel": "__MISSING__:Max Response Tokens",
    "maxResponseTokensDesc": "__MISSING__:Maximum total tokens allowed in a single response.",
    "modelCooldownsTitle": "Modele în răcire",
    "modelCooldownsEmpty": "Nu există modele în perioada de răcire în acest moment.",
    "codexFastTierTitle": "Codex Fast Tier",
    "codexFastTierDesc": "Injectați global service_tier=priority pentru cererile OpenAI Codex.",
    "codexFastTierHint": "Când este activat, OmniRoute adaugă service_tier=priority la solicitările Codex de ieșire pentru conexiuni care nu specifică deja un nivel. Nivelul prioritar necesită o cheie API OpenAI Enterprise sau calea ChatGPT-auth Codex; alte tipuri de chei vor primi o eroare legată de nivel de la OpenAI. Setările per conexiune de pe pagina furnizorului Codex au prioritate.",
    "codexFastTierSaveError": "Nu s-a putut actualiza setarea Codex Fast Tier",
    "codexFastTierTierLabel": "__MISSING__:Service tier",
    "codexFastTierTierPriority": "__MISSING__:Priority",
    "codexFastTierTierFlex": "__MISSING__:Flex",
    "codexFastTierTierDefault": "__MISSING__:Default",
    "codexFastTierModelsLabel": "__MISSING__:Fast-tier models",
    "codexFastTierModelsHint": "__MISSING__:Only checked models receive service_tier when Fast Tier is enabled.",
    "codexFastTierModelCheckbox": "__MISSING__:Enable Fast Tier for {model}",
    "claudeFastModeTitle": "Claude Fast Mode",
    "claudeFastModeDesc": "Optați solicitările Claude selectate în modul rapid antropic (viteză: „rapid”).",
    "claudeFastModeHint": "Anthropic nu acceptă oficial modul rapid pentru clienții în stil SDK. Când este activat, OmniRoute redirecționează un antet X-CPA-Force-Fast-Mode, astfel încât o versiune CLIProxyAPI asociată să poată opta pentru falsificarea punctului de intrare. Doar modelele Opus enumerate sunt supuse controlului Anthropic la nivelul clientului. Nivelul de abonament, planul Max și soldul creditului în modul rapid sunt încă aplicate pe partea serverului — Anthropic poate returna credite out_of_credit chiar și atunci când comutatorul este activat.",
    "claudeFastModeModelsLabel": "Aplicat modelelor ({count})",
    "claudeFastModeModelCheckbox": "Activați modul rapid pentru {model}",
    "claudeFastModeSaveError": "Nu s-a actualizat setarea Claude Fast Mode",
    "authz": {
      "title": "__MISSING__:Authz Inventory",
      "description": "__MISSING__:5-tier route classification with live bypass policy. Read shows the full taxonomy; mutations re-prompt for the management password.",
      "loading": "__MISSING__:Loading inventory…",
      "loadError": "__MISSING__:Failed to load authz inventory",
      "tier": {
        "LOCAL_ONLY": "__MISSING__:Local only",
        "ALWAYS_PROTECTED": "__MISSING__:Always protected",
        "MANAGEMENT": "__MISSING__:Management",
        "CLIENT_API": "__MISSING__:Client API",
        "PUBLIC": "__MISSING__:Public"
      },
      "bypass": {
        "section": "__MISSING__:Manage-scope bypass",
        "kill_switch": {
          "label": "__MISSING__:Bypass kill-switch",
          "desc": "__MISSING__:Master toggle. When off, no LOCAL_ONLY prefix is reachable from non-loopback regardless of the per-prefix list."
        },
        "prefix": {
          "label": "__MISSING__:Bypassable prefixes",
          "desc": "__MISSING__:LOCAL_ONLY prefixes that manage-scope API keys (or dashboard sessions) may reach from non-loopback hosts.",
          "add": "__MISSING__:Add prefix",
          "placeholder": "__MISSING__:/api/mcp/v2/",
          "empty": "__MISSING__:No prefixes configured. Bypass effectively off."
        },
        "cli_tools_runtime_note": "__MISSING__:Spawn-capable prefix. Compile-time deny; cannot be made bypassable. Shown read-only."
      },
      "password": {
        "prompt": {
          "label": "__MISSING__:Current password",
          "desc": "__MISSING__:Re-confirm to apply security-impacting changes."
        },
        "placeholder": "__MISSING__:Current management password",
        "cancel": "__MISSING__:Cancel",
        "submit": "__MISSING__:Apply"
      },
      "save": "__MISSING__:Save changes",
      "saved": "__MISSING__:Authz settings updated",
      "pending": "__MISSING__:Unsaved changes",
      "badge": {
        "bypassable": "__MISSING__:Bypassable via manage scope",
        "strict": "__MISSING__:Strict loopback",
        "auth_required": "__MISSING__:Auth required",
        "public": "__MISSING__:Public",
        "always_protected": "__MISSING__:Always protected",
        "spawn_capable": "__MISSING__:Spawn-capable"
      },
      "error": {
        "PASSWORD_REQUIRED": "__MISSING__:Current password required to apply these changes.",
        "PASSWORD_MISMATCH": "__MISSING__:Current password is incorrect.",
        "INSUFFICIENT_SCOPE": "__MISSING__:API key lacks the manage scope.",
        "BYPASS_PREFIX_NOT_ALLOWED": "__MISSING__:One or more prefixes target spawn-capable routes and cannot be bypassed.",
        "GENERIC": "__MISSING__:Failed to update authz settings."
      }
    },
    "resilienceBaseCooldownLabel": "Răcire de bază",
    "scopeLabel": "Domeniul de aplicare",
    "triggerLabel": "Trigger",
    "effectLabel": "Efect",
    "statusEnabled": "Activat",
    "statusDisabled": "Dezactivat",
    "resilienceRequestQueueScope": "Pe coada de solicitare",
    "resilienceRequestQueueTrigger": "Înainte de a trimite în amonte",
    "resilienceRequestQueueEffect": "Pune în coadă cererile, limitează concurența și spațiează apelurile",
    "resilienceRequestQueueDesc": "Acest strat controlează doar coada și ritmul. Nu stochează răcirile sau întreruptoarele de circuit deschise.",
    "resilienceAutoEnableApiKeyProvidersDesc": "Activează protecția cozilor în mod implicit pentru conexiunile cheie API active.",
    "resilienceMaxQueueWait": "Timp maxim de așteptare la coadă",
    "resilienceConnectionCooldownScope": "Conexiune individuală",
    "resilienceConnectionCooldownTrigger": "Când o conexiune returnează o eroare tranzitorie în amonte",
    "resilienceConnectionCooldownEffect": "Omite temporar acea conexiune și crește backoff-ul pentru eșecuri repetate",
    "resilienceConnectionCooldownDesc": "Răcirea de bază acoperă defecțiunile tranzitorii ale conexiunii. Când sugestiile de reîncercare din amonte sunt activate, fereastra explicită a furnizorului înlocuiește timpul de răcire local.",
    "resilienceUseUpstreamRetryHintsDesc": "Utilizează valorile de reîncercare după/resetare de la furnizorul din amonte, atunci când sunt disponibile.",
    "resilienceUseUpstream429BreakerHints": "Utilizați 429 de indicii din amonte pentru răcirea întreruptorului",
    "resilienceUseUpstream429BreakerHintsShort": "Utilizați 429 de indicii în amonte",
    "resilienceUseUpstream429BreakerHintsDesc": "Aplicați semnale Retry-After / epuizate de cotă de la 429 de răspunsuri la durata de răcire a întreruptorului. Implicit folosește o politică pentru fiecare furnizor: furnizorii de cloud directe sunt activate implicit; furnizorii reverse-proxy, auto-găzduiți și susținuți de CLI sunt dezactivați implicit. Independent de „Utilizați indicii de reîncercare în amonte”.",
    "resilienceProviderBreakerScope": "Întregul furnizor",
    "resilienceProviderBreakerTrigger": "Eșecuri finale de transport/server după epuizarea conexiunii de rezervă",
    "resilienceProviderBreakerEffect": "Blochează temporar acel furnizor până când expiră timpul de resetare",
    "resilienceProviderBreakerDesc": "Starea de întrerupere live apare numai pe pagina Sănătate. Limitele de rată 429 stabilite pentru conexiune rămân în Conexiune Cooldown și nu declanșează întrerupătorul furnizorului.",
    "resilienceResetTime": "Resetare timp",
    "resilienceWaitForCooldownTitle": "Așteptați răcirea",
    "resilienceWaitForCooldownScope": "Cererea curentă a clientului",
    "resilienceWaitForCooldownTrigger": "Când toate conexiunile candidate se răcesc deja",
    "resilienceWaitForCooldownEffect": "Așteaptă pe server și reîncearcă când expiră prima perioadă de răcire",
    "resilienceWaitForCooldownDesc": "Acest lucru afectează doar cererea curentă. Nu stochează conexiunea sau starea furnizorului.",
    "resilienceEnableServerWait": "Activați așteptarea pe server",
    "resilienceEnableServerWaitDesc": "Când este activat, OmniRoute așteaptă expirarea primei perioade de răcire și reîncearcă automat.",
    "resilienceMaxAttempts": "Încercări maxime",
    "resilienceMaxWaitPerAttempt": "Așteptare maximă pe încercare",
    "forcedFingerprintTitle": "Always enabled for {provider} — required for OAuth account safety; cannot be turned off.",
    "forcedFingerprintBadge": "Required",
    "codexSessionAffinityTitle": "Afinitatea sesiunii Codex",
    "codexSessionAffinityDesc": "Păstrează o conversație Codex pe același cont pentru atâtea secunde. 0 îl dezactivează.",
    "codexSessionAffinityTtl": "TTL de afinitate (secunde)",
    "resetAwareQuotaCacheTitle": "Resetați memoria cache a cotelor",
    "resetAwareQuotaCacheDesc": "Memorează în cache telemetria cotelor numai pentru comenzile în funcție de resetare. Cota preflight protejează în continuare cererile. 0/0 continuă să fie preluat în direct.",
    "resetAwareQuotaCacheTtl": "TTL proaspăt (secunde)",
    "resetAwareQuotaCacheMaxStale": "Învechit maxim (secunde)",
    "qdrantCleanupSuccess": "OK: eliminat {count} punct(e) (reținere: {days} zile)",
    "qdrantCleanupFailed": "Curățarea a eșuat",
    "qdrantCleanupError": "Eroare: {error}",
    "vercelRelaySuccess": "__MISSING__:Vercel Relay deployed successfully",
    "vercelRelayButton": "__MISSING__:Deploy Vercel Relay",
    "vercelRelayModalTitle": "__MISSING__:Deploy Vercel Relay",
    "vercelRelayWarning": "__MISSING__:Warning: A Vercel deployment token is required. This token will only be used to create the serverless relay and will never be stored by OmniRoute.",
    "vercelRelayTokenLabel": "__MISSING__:Vercel Access Token",
    "vercelRelayProjectNameLabel": "__MISSING__:Vercel Project Name",
    "vercelRelayFreeTierNote": "__MISSING__:Relays are lightweight proxy endpoints deployed on Vercel's free tier to bypass local network/region limitations.",
    "vercelRelayDeploying": "__MISSING__:Deploying...",
    "vercelRelayDeploy": "__MISSING__:Deploy",
    "homePinProviderQuotaToHome": "Pin Information to Home Page",
    "homeProviderQuotaLimits": "Provider Quota Limits",
    "homeProviderQuotaLimitsDesc": "Pin the Provider Quota status container (with Refresh All button) to the top of the Home page.",
    "homeQuickStart": "Quick Start",
    "homeQuickStartDesc": "Show the Quick Start panel on the Home page.",
    "homeProviderTopology": "Provider Topology",
    "homeProviderTopologyDesc": "Show the Provider Topology on the Home page."
  },
  "contextRtk": {
    "title": "RTK Engine",
    "description": "Command-aware compression for tool output, terminal logs and build results.",
    "enabled": "Enabled",
    "intensity": "Intensity",
    "intensityMinimal": "Minimal",
    "intensityStandard": "Standard",
    "intensityAggressive": "Aggressive",
    "toolResults": "Tool results",
    "assistantMessages": "Assistant messages",
    "codeBlocks": "Code blocks",
    "filterCatalog": "Catalog de filtrare",
    "filterCatalogDesc": "Filtre de ieșire disponibile în funcție de categorie",
    "guidedConfig": "Configurare",
    "guidedConfigDesc": "Ajustați modul în care RTK filtrează ieșirea terminalului",
    "maxLines": "Max lines",
    "maxChars": "Max chars",
    "deduplicateThreshold": "Deduplicați pragul",
    "customFilters": "Filtre personalizate",
    "detectedType": "Tip detectat",
    "confidence": "Încrederea",
    "beforeAfter": "Înainte/După",
    "trustProjectFilters": "Aveți încredere în filtrele de proiect",
    "rawOutputRetention": "Reținerea producției brute",
    "rawOutputNever": "Niciodată",
    "rawOutputFailures": "Eșecuri",
    "rawOutputAlways": "Întotdeauna",
    "rawOutputMaxBytes": "Octeți maxim de ieșire brută",
    "filterTesting": "Filter Testing",
    "pasteOutput": "Paste tool output to test filtering...",
    "presetHigh": "Agresiv",
    "presetLow": "Lumină",
    "presetMaxChars": "Numărul maxim de caractere de ieșire",
    "presetMaxLines": "Max linii de ieșire",
    "presetMedium": "Standard",
    "run": "Run",
    "result": "Result",
    "previewEmpty": "Run a sample to preview RTK output.",
    "detected": "Detected",
    "masterSwitchOffAlert": "__MISSING__:Token Saver master switch is OFF — these settings will not affect requests until you turn it on from the Endpoint page.",
    "tokensFiltered": "Tokens filtered",
    "filtersActive": "Filters active",
    "requests": "Requests",
    "avgSavings": "Avg savings",
    "simpleMode": "Simplu",
    "advancedMode": "Avansat",
    "searchFilters": "Filtre de căutare...",
    "tooltipDedup": "Cât de agresiv să elimini liniile repetate.",
    "tooltipMaxChars": "Maxim de caractere pe bloc de ieșire.",
    "tooltipMaxLines": "Numărul maxim de linii de păstrat de la ieșirea comenzii. Excesul este trunchiat."
  },
  "contextCombos": {
    "title": "Compression Combos",
    "description": "Define how engines are combined for different routing scenarios.",
    "createCombo": "Create Compression Combo",
    "editCombo": "Edit",
    "deleteCombo": "Delete",
    "deleteConfirm": "Delete this compression combo?",
    "pipeline": "Pipeline",
    "addStep": "Add Step",
    "removeStep": "Remove",
    "name": "Name",
    "descriptionField": "Description",
    "languagePacks": "Language Packs",
    "outputMode": "Output Mode",
    "assignToRouting": "Assign to Routing Combos",
    "noAssignments": "No routing combos available",
    "default": "Default",
    "setAsDefault": "Set as Default",
    "save": "Save",
    "cancel": "Cancel",
    "enabled": "Enabled"
  },
  "contextCaveman": {
    "title": "Caveman Engine",
    "description": "Rule-based message compression, language packs, analytics and output mode controls.",
    "advancedConfig": "Configurare avansată",
    "advancedConfigDesc": "Reglați fin comportamentul compresiei",
    "aggressiveSettings": "Setări agresive",
    "aggressiveSettingsDesc": "Compresie maximă cu potențiale compromisuri de calitate",
    "requests": "Requests",
    "tokensSaved": "Tokens saved",
    "savingsPercent": "Savings %",
    "avgLatency": "Avg latency",
    "languagePacks": "Language Packs",
    "languagePacksDesc": "Enable compression rules for specific languages.",
    "labelAutoTrigger": "Comprimați automat când contextul depășește",
    "labelCompressionRate": "Rezistența la compresiune",
    "labelMaxTokens": "Jetoane țintă per mesaj",
    "labelMinLength": "Lungimea minimă a mesajului",
    "labelMinSavings": "Jetoane minime de salvat",
    "enabled": "Enabled",
    "autoDetect": "Auto-detect language",
    "rulesCount": "{count} rules",
    "inputCompressionTitle": "__MISSING__:Input compression",
    "inputCompressionDesc": "__MISSING__:Rewrite chat history with shorter wording. Reduces input tokens by ~50%.",
    "analyticsTitle": "Compression Analytics",
    "noAnalytics": "No compression analytics yet.",
    "outputMode": "Mod de ieșire",
    "outputModeDesc": "Instructs the LLM to respond in a terse, compact format.",
    "outputModeTitle": "Output Mode",
    "quickSettings": "Setări rapide",
    "quickSettingsDesc": "Setări de bază de compresie pentru a începe",
    "autoClarity": "Auto-Clarity Bypass",
    "bypassConditions": "Bypass conditions",
    "bypassConditionsList": "securitate, ireversibil, clarificare, sensibil la ordine",
    "simpleMode": "Simplu",
    "advancedMode": "Avansat",
    "tooltipAutoTrigger": "Comprimați automat când contextul depășește această dimensiune.",
    "tooltipCompressionRate": "0,0 = niciunul, 1,0 = maxim. 0,5 = echilibrat.",
    "tooltipMaxTokens": "Număr de jetoane țintă după compresie. Mai jos = mai agresiv.",
    "tooltipMinLength": "Mesajele mai scurte decât aceasta nu sunt comprimate. Mai jos = compresie mai mare.",
    "tooltipMinSavings": "Comprimați doar dacă salvează cel puțin atât de multe jetoane.",
    "ultraSettings": "Setări Ultra",
    "ultraSettingsDesc": "Compresie semantică alimentată de SLM",
    "preview": {
      "lite": "Respond concise. Preserve technical terms, code, errors, URLs, and identifiers.",
      "full": "Respond terse and compact. Preserve all technical substance.",
      "ultra": "Respond ultra terse with common technical abbreviations. Preserve exact symbols."
    }
  },
  "translator": {
    "title": "Traducător",
    "metaTitle": "Translator Playground | OmniRoute",
    "metaDescription": "Depanați, testați și vizualizați traducerile în format API între furnizori",
    "playgroundTitle": "Loc de joacă pentru traducător",
    "playground": "Loc de joacă",
    "realtime": "Activitate de traducere în timp real",
    "chatTester": "Tester de chat",
    "testBench": "Banc de testare",
    "liveMonitor": "Monitor live",
    "modeDescriptionPlayground": "Lipiți orice corp de solicitare API și vedeți cum îl traduce OmniRoute între formatele de furnizor (OpenAI ↔ Claude ↔ Gemini ↔ API-ul de răspunsuri)",
    "modeDescriptionChatTester": "Trimiteți cereri reale de chat prin OmniRoute și inspectați întreaga călătorie dus-întors: intrare, cerere tradusă, răspuns furnizor și ieșire tradusă.",
    "modeDescriptionTestBench": "Rulați scenarii predefinite și comparați compatibilitatea între furnizori și modele.",
    "modeDescriptionLiveMonitor": "Urmărește evenimentele de traducere în timp real, pe măsură ce solicitările circulă prin OmniRoute.",
    "modeDescriptionFallback": "Depanați, testați și vizualizați modul în care OmniRoute traduce cererile API între furnizori.",
    "recentTranslations": "Traduceri recente",
    "noTranslations": "Nicio traducere încă",
    "source": "Sursa",
    "target": "țintă",
    "time": "timpul",
    "model": "Model",
    "status": "Stare",
    "latency": "Latența",
    "totalTranslations": "Traduceri totale",
    "successful": "De succes",
    "errors": "Erori",
    "avgLatency": "Latență medie",
    "millisecondsShort": "{value}ms",
    "notAvailableSymbol": "—",
    "liveAutoRefreshing": "Live — Auto-împrospătare",
    "paused": "Întrerupt",
    "eventsAppearHint": "Evenimentele de traducere apar aici pe măsură ce solicitările circulă prin OmniRoute. Utilizați oricare dintre aceste metode pentru a genera evenimente:",
    "chatTesterTab": "Fila Tester de chat",
    "testBenchTab": "Fila Banc de testare",
    "externalApiCalls": "Apeluri API externe",
    "ideCliIntegrations": "Integrari IDE/CLI",
    "inMemoryNote": "Notă: Evenimentele sunt stocate în memorie și resetate atunci când serverul repornește.",
    "ok": "OK",
    "errorShort": "ERR",
    "formatConverter": "Convertor de format",
    "formatConverterDescription": "Lipiți sau introduceți un corp de solicitare JSON. Traducătorul va detecta automat formatul sursă și îl va converti în formatul țintă. Utilizați aceasta pentru a depana modul în care OmniRoute traduce cererile între formate (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).",
    "translationPathHubSpoke": "{source} → OpenAI (intermediar) → {target}",
    "translationPathDirect": "{source} → {target} (traducător direct)",
    "translationPathPassthrough": "Același format - nu este necesară traducerea",
    "openaiIntermediatePanel": "OpenAI Intermediar",
    "autoFeaturesTitle": "Ce face automat OmniRoute",
    "autoFeaturesCount": "8 caracteristici",
    "featureReasoningCache": "Cache de raționament",
    "featureReasoningCacheDesc": "Reinjectează conținutul_raționamentului în cache pentru modelele în modul de gândire (DeepSeek V4, Kimi K2, Qwen) atunci când clienții îl omit din istoricul conversațiilor.",
    "featureSchemaCoercion": "Schema Coerciție",
    "featureSchemaCoercionDesc": "Remediază schemele de instrumente rupte: adaugă proprietăți suplimentare lipsă, igienizează descrierile lungi, normalizează obiectele imbricate.",
    "featureRoleNormalization": "Normalizarea rolurilor",
    "featureRoleNormalizationDesc": "Dezvoltator de hărți → sistem pentru ținte non-OpenAI. Sistem de hărți → utilizator pentru modele care nu acceptă rolul sistemului.",
    "featureToolCallIds": "Normalizarea ID-ului apelului instrumentului",
    "featureToolCallIdsDesc": "Generează ID-uri unice tool_call atunci când lipsesc. Se normalizează la formatul de 9 caractere pentru furnizori precum Mistral.",
    "featureMissingToolResponse": "Injecție cu răspuns la instrument",
    "featureMissingToolResponseDesc": "Injectează mesaje goale tool_result atunci când clienții trimit tool_calls fără răspunsuri corespunzătoare.",
    "featureThinkingBudget": "Gândirea bugetului",
    "featureThinkingBudgetDesc": "Gestionează automat configurația gândirii. Îndepărtează parametrii de gândire atunci când ultimul mesaj nu este de la utilizator.",
    "featureDirectPaths": "Căi de traducere directă",
    "featureDirectPathsDesc": "Unele perechi de formate (Claude→Gemini) au traducători directe care ocolesc hub-ul OpenAI, producând rezultate mai precise.",
    "featureImageMapping": "Maparea dimensiunii imaginii",
    "featureImageMappingDesc": "Traduce convențiile dimensiunilor imaginii între formatele API (de exemplu, nivelurile de detaliu OpenAI → dimensiuni Gemini).",
    "input": "Intrare",
    "output": "Ieșire",
    "auto": "Auto",
    "swapFormats": "Schimbați formatele",
    "translateAction": "Traduceți",
    "clear": "Clar",
    "inputPlaceholder": "Lipiți un corp de solicitare aici sau selectați un șablon de mai jos...",
    "exampleTemplates": "Exemple de șabloane",
    "exampleTemplatesHint": "— Faceți clic pentru a încărca",
    "templateLoadHint": "Șablonul încarcă solicitarea în format {format}. Modificați formatul sursă pentru a încărca într-un alt format.",
    "compatibilityTester": "Tester de compatibilitate",
    "compatibilityReport": "Raport de compatibilitate",
    "testBenchDescription": "Rulați scenarii predefinite (Simple Chat, Tool Calling etc.) pentru a verifica traducerea și compatibilitatea furnizorilor. Selectați un format sursă și un furnizor țintă, apoi rulați toate testele pentru a vedea un procent de compatibilitate. Folosiți acest lucru pentru a afla ce caracteristici funcționează între furnizori.",
    "targetProvider": "Furnizor țintă",
    "runAllTests": "Rulați toate testele",
    "runTest": "Run Test",
    "reRun": "Reluați",
    "running": "Alergare...",
    "passed": "a trecut",
    "failed": "a eșuat",
    "passedIconLabel": "✅ A trecut",
    "chunks": "bucăți",
    "scenarioSimpleChat": "Chat simplu",
    "scenarioToolCalling": "Apelarea instrumentului",
    "scenarioMultiTurn": "Multi-turn",
    "scenarioThinking": "Gândirea",
    "scenarioSystemPrompt": "Prompt de sistem",
    "scenarioStreaming": "Streaming",
    "templateNames": {
      "simple-chat": "Chat simplu",
      "tool-calling": "Apelarea instrumentului",
      "multi-turn": "Multi-turn",
      "thinking": "Gândirea",
      "system-prompt": "Prompt de sistem",
      "streaming": "Streaming",
      "vision": "Viziunea",
      "schema-coercion": "Schema Coerciție"
    },
    "templateDescriptions": {
      "simple-chat": "Mesaj text de bază",
      "tool-calling": "Invocarea funcției/uneltei",
      "multi-turn": "Conversație cu istoria",
      "thinking": "Gândire extinsă / raționament",
      "system-prompt": "Instrucțiuni de sistem complexe",
      "streaming": "Solicitare de streaming SSE",
      "vision": "Cerere multimodală cu intrare de imagine",
      "schema-coercion": "Implementarea schemei de ieșire structurată/JSON"
    },
    "templatePayloads": {
      "simpleChat": {
        "system": "Ești un asistent util.",
        "userGreeting": "Bună ziua! Cum te simți azi?"
      },
      "toolCalling": {
        "userWeather": "Care este vremea în São Paulo?",
        "toolDescription": "Obțineți vremea actuală pentru o locație",
        "cityNameDescription": "Numele orașului"
      },
      "multiTurn": {
        "system": "Sunteți un asistent de codare.",
        "userInitial": "Scrieți o funcție pentru a sorta o matrice în Python.",
        "assistantExample": "Iată o funcție simplă de sortare:\n\n```python\ndef sort_array(arr):\n    return sortat(arr)\n```",
        "userFollowUp": "Acum sortați în ordine descrescătoare."
      },
      "thinking": {
        "question": "Care este suma primelor 100 de numere prime?"
      },
      "systemPrompt": {
        "systemInstruction": "Sunteți un inginer de software senior specializat în sisteme distribuite. Răspundeți concis la întrebări folosind cele mai bune practici din industrie. Furnizați întotdeauna exemple de cod atunci când este relevant. Formatați răspunsurile folosind markdown.",
        "question": "Cum implementez un model de întrerupător?"
      },
      "streaming": {
        "prompt": "Spune-mi o scurtă poveste despre un robot care învață să picteze."
      },
      "vision": {
        "system": "Sunteți un asistent care descrie imaginile cu precizie.",
        "userPrompt": "Ce se arată în această imagine?",
        "imageUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/4/47/PNG_transparency_demonstration_1.png/600px-PNG_transparency_demonstration_1.png"
      },
      "schemaCoercion": {
        "userPrompt": "Căutați vremea pentru Tokyo folosind unități metrice și includeți defalcarea orară.",
        "toolDescription": "Preluați vremea pentru un oraș cu opțiuni structurate.",
        "cityDescription": "Orașul de interogat, de ex. „Tokyo” sau „New York”."
      }
    },
    "openaiCompatibleLabel": "Compatibil cu OpenAI",
    "anthropicCompatibleLabel": "Compatibil antropic",
    "noTemplateForFormat": "Nu există șablon pentru acest format",
    "translationFailed": "Traducerea a eșuat: {error}",
    "pipelineDebugger": "Pipeline Debugger",
    "translationPipeline": "Conducta de traduceri",
    "pipelineVisualization": "Vizualizarea conductei",
    "pipelineVisualizationHint": "Trimiteți un mesaj pentru a vedea cum decurge cererea dvs. prin detectare → traducere → apel de la furnizor.",
    "chatTesterDescription": "Trimiteți mesaje ca un anumit format de client și inspectați fiecare pas al conductei de traducere.",
    "chatTesterFlow": "Solicitare client → Detectare format → Intermediar OpenAI → Format furnizor → Răspuns",
    "clickStepToInspect": "Faceți clic pe orice pas pentru a inspecta datele în acea etapă.",
    "clientFormat": "Format client",
    "provider": "Furnizor",
    "modelPlaceholder": "Selectați sau introduceți un nume de model...",
    "sendMessageToSeePipeline": "Trimiteți un mesaj pentru a vedea canalul de traducere",
    "chatMessageHintPrefix": "Mesajul dvs. va fi formatat ca a",
    "chatMessageHintSuffix": "cerere, tradusă prin conductă și trimisă furnizorului selectat.",
    "youWithFormat": "Tu ({format})",
    "assistant": "Asistent",
    "typeMessage": "Tastați un mesaj...",
    "send": "Trimite",
    "clientRequest": "Solicitarea clientului",
    "clientRequestDescription": "Corpul solicitării pe care l-ar trimite clientul dvs",
    "formatDetected": "Format detectat",
    "formatDetectedDescription": "OmniRoute detectează automat formatul API din structura cererii",
    "openaiIntermediate": "OpenAI Intermediar",
    "openaiIntermediateDescription": "Toate formatele sunt mai întâi normalizate la formatul OpenAI (puntea universală)",
    "providerFormat": "Format de furnizor",
    "providerFormatDescription": "Formatul OpenAI este tradus în formatul nativ al furnizorului",
    "providerResponse": "Răspunsul furnizorului",
    "providerResponseRawDescription": "Răspunsul brut de la API-ul furnizorului",
    "providerResponseSseDescription": "Fluxul SSE brut de la API-ul furnizorului",
    "unexpectedError": "A apărut o eroare neașteptată",
    "error": "Eroare",
    "errorMessage": "Eroare: {message}",
    "requestFailed": "Solicitarea a eșuat",
    "noTextExtracted": "(Niciun text extras)",
    "liveMonitorMemoryNote": "Evenimentele sunt stocate în memorie și se pierd la repornire.",
    "liveMonitorMemoryCapNote": "Maxim 200 de evenimente reținute.",
    "eventSourcesLabel": "Surse evenimente:",
    "eventSourceTranslatorPage": "• Pagina de traducător (Tester de chat, Banc de testare)",
    "eventSourceMainPipeline": "• Conducta de solicitare principală (trafic CLI/IDE/API)",
    "liveMonitorDescriptionPrefix": "Afișează evenimentele de traducere pe măsură ce apelurile API circulă prin OmniRoute. Evenimentele provin din buffer-ul din memorie (resetează la repornire). Utilizați",
    "liveMonitorDescriptionSuffix": ", sau apeluri API externe pentru a genera evenimente.",
    "streamTransformer": "Transformator de flux",
    "modeDescriptionStreamTransformer": "Rulați fluxurile SSE de finalizări de chat prin transformatorul de răspunsuri.",
    "streamTransformerTitle": "Transformator de flux de răspunsuri",
    "streamTransformerDescription": "Lipiți un flux SSE de finalizări de chat, rulați-l prin transformatorul de răspunsuri al OmniRoute și inspectați evenimentele de răspuns emise.* înainte de a conecta un client.",
    "loadTextSample": "Încărcați eșantionul de text",
    "loadToolSample": "Încărcați eșantionul de apel de instrument",
    "transformToResponses": "Transformați-vă în răspunsuri",
    "rawChatSseInput": "Finalizări brute de chat SSE",
    "transformedResponsesSse": "Transformed Responses API SSE",
    "noResultsYet": "Niciun rezultat încă",
    "transformedEvents": "Evenimente transformate",
    "uniqueEventTypes": "Tipuri de evenimente unice",
    "inputLines": "Linii de intrare",
    "outputLines": "Linii de ieșire",
    "transformedEventTimeline": "Cronologia evenimentului transformată",
    "transformerTimelineHint": "Rulați transformatorul pentru a inspecta evenimentele de răspuns emise.output_* în ordine.",
    "eventType": "Tipul evenimentului",
    "eventPreview": "Previzualizare",
    "comboRouted": "Combo direcționat",
    "uniqueEndpoints": "Puncte finale unice",
    "routeDetails": "Detalii traseu",
    "comboBadge": "Combo",
    "routeEndpointLabel": "Punct final",
    "routeConnectionLabel": "Conexiune",
    "scenarioVision": "Vedere (înțelegerea imaginii)",
    "scenarioSchemaCoercion": "Coerciție în schemă (ieșire structurată)",
    "techniques": "Tehnici:"
  },
  "usage": {
    "title": "Utilizare",
    "loggerTab": "Logger",
    "proxyTab": "Proxy",
    "budgetManagement": "Managementul bugetului",
    "budgetSaved": "Limitele bugetare au fost salvate",
    "budgetSaveFailed": "Nu s-a salvat bugetul",
    "loadingBudgetData": "Se încarcă datele bugetare...",
    "noApiKeysTitle": "Fără chei API",
    "noApiKeysDescription": "Adăugați mai întâi cheile API pentru a configura limite de buget.",
    "apiKey": "Cheia API",
    "todaysSpend": "Cheltuielile de azi",
    "thisMonth": "Luna aceasta",
    "setLimits": "Setați limite",
    "dailyLimitUsd": "Limită zilnică (USD)",
    "monthlyLimitUsd": "Limită lunară (USD)",
    "warningThresholdPercent": "Pragul de avertizare (%)",
    "dailyLimitPlaceholder": "de ex. 5.00",
    "monthlyLimitPlaceholder": "de ex. 50.00",
    "warningThresholdPlaceholder": "80",
    "saveLimits": "Salvați limite",
    "budgetOk": "Buget OK — {remaining} rămas",
    "budgetExceeded": "Buget depășit — solicitările pot fi blocate",
    "totalRequests": "Total cereri",
    "noDataYet": "Nu există date încă",
    "latency": "Latența",
    "latencyP50": "p50",
    "latencyP95": "p95",
    "latencyP99": "p99",
    "promptCache": "Prompt Cache",
    "systemHealth": "Sănătatea sistemului",
    "entries": "Intrări",
    "activeCount": "{count} activ",
    "openCircuitBreakersDetected": "Întreruptoare deschise detectate",
    "hitRate": "Rata de lovituri",
    "hitsMisses": "Hits / Misses",
    "circuitBreakers": "Întreruptoare",
    "lockedIPs": "IP-uri blocate",
    "lockoutsAutoRefreshHint": "Blocări ale limitei ratei per model • Reîmprospătare automată 10 secunde",
    "lockedCount": "{count, plural, one {# locked} other {# locked}}",
    "timeLeft": "{time} a rămas",
    "howItWorks": "Cum funcționează",
    "howItWorksSubtitle": "Aflați cum evaluările vă validează răspunsurile LLM",
    "define": "Definiți",
    "defineStepDescription": "Creați cazuri de testare cu solicitări de intrare și criterii de ieșire așteptate, folosind strategii precum conține, expresii regex sau potrivire exactă.",
    "run": "Fugi",
    "runStepDescription": "Execută cazuri de testare împotriva punctelor finale LLM prin OmniRoute. Fiecare caz este trimis ca o cerere API reală.",
    "evaluate": "Evaluează",
    "evaluateStepDescription": "Răspunsurile sunt comparate cu criteriile așteptate. Vedeți succes/eșec pentru fiecare caz cu valori de latență și feedback detaliat.",
    "evalsStrategyContainsLabel": "__MISSING__:Contains",
    "evalsStrategyExactLabel": "__MISSING__:Exact Match",
    "evalsStrategyRegexLabel": "__MISSING__:Regex",
    "evalsStrategyCustomLabel": "__MISSING__:Custom Logic",
    "evalsStrategyContainsDescription": "__MISSING__:Checks if the LLM output contains the expected substring.",
    "evalsStrategyExactDescription": "__MISSING__:Checks if the LLM output exactly matches the expected value.",
    "evalsStrategyRegexDescription": "__MISSING__:Validates the LLM output against a regular expression pattern.",
    "evalsStrategyCustomDescription": "__MISSING__:Custom evaluation logic (configured via JSON).",
    "historyColumnSuiteName": "__MISSING__:Suite Name",
    "historyColumnTarget": "__MISSING__:Target",
    "historyColumnPassRate": "__MISSING__:Pass Rate",
    "historyColumnAvgLatencyMs": "__MISSING__:Avg Latency",
    "historyColumnCreatedAt": "__MISSING__:Executed",
    "evalSuites": "Suite de evaluare",
    "evalSuitesHint": "Faceți clic pe o suită pentru a vedea cazurile de testare, apoi rulați pentru a evalua punctele finale LLM",
    "evalsLoading": "Se încarcă apartamentele de evaluare...",
    "noEvalSuitesFound": "Nu au fost găsite suite Eval",
    "noEvalSuitesDescription": "Suitele de evaluare pot fi definite prin API sau în cod. Ei testează ieșirile modelului în raport cu rezultatele așteptate folosind strategii precum conține, regex, potrivire exactă și funcții personalizate.",
    "columnCase": "Caz",
    "columnStatus": "Stare",
    "columnLatency": "Latența",
    "columnDetails": "Detalii",
    "columnModel": "Model",
    "columnStrategy": "Strategie",
    "columnExpected": "Așteptată",
    "statsSuites": "Suite",
    "statsTestCases": "Cazuri de testare",
    "statsModels": "Modele",
    "statsCoverage": "Acoperire",
    "statsStrategiesCount": "{count} strategii",
    "evaluationStrategies": "Strategii de evaluare",
    "modelsUnderTest": "Modele în curs de testare",
    "searchSuitesPlaceholder": "Căutați apartamente...",
    "passSuffix": "trece",
    "casesCount": "{count, plural, one {# case} other {# cases}}",
    "runEval": "Rulați Eval",
    "runAllSuites": "Run All",
    "runAllRunning": "Alergând toate...",
    "runAllProgress": "Rulează {current}/{total}: {name}",
    "runAllFailedSuites": "{count, plural, one {# suite failed} other {# suites failed}}",
    "runAllCompleted": "A rulat {suites} suite — {passed} a trecut, {failed} a eșuat",
    "runAllCompletedWithFailures": "A rulat {completed} suite; {failedSuites} nu s-a finalizat",
    "runningProgress": "Se rulează {current}/{total}...",
    "passRate": "rata de promovare",
    "summaryBreakdown": "{passed} a trecut · {failed} a eșuat · {total} total",
    "passedIconLabel": "✅ A trecut",
    "failedIconLabel": "❌ A eșuat",
    "resultPassed": "A trecut",
    "resultFailed": "A eșuat",
    "expandResult": "Extindeți detaliile rezultatelor",
    "collapseResult": "Restrângeți detaliile rezultatelor",
    "detailsContains": "Conține: „{term}”",
    "detailsRegex": "Regex: {pattern}",
    "detailsExpected": "Așteptată: „{expected}”",
    "expectedOutputLabel": "Rezultat așteptat",
    "noResultsYet": "Niciun rezultat încă",
    "testCasesCount": "Cazuri de testare ({count})",
    "noTestCasesDefined": "Nu au fost definite cazuri de testare",
    "runEvalHint": "Faceți clic pe „Run Eval” pentru a executa toate cazurile împotriva punctului final LLM. Fiecare test trimite o cerere reală prin OmniRoute.",
    "notifyNoTestCases": "Nu au fost definite cazuri de testare pentru această suită",
    "notifyAllCasesPassed": "Toate {total} cazuri au trecut ✅",
    "notifySomeCasesFailed": "{passed}/{total} a trecut, {failed} a eșuat",
    "notifyEvalRunFailed": "Evaluarea a eșuat",
    "notifyEvalTitle": "Evaluare: {name}",
    "modelEvals": "Evaluări de model",
    "evalsHeroDescription": "Testați și validați punctele finale LLM rulând suite de evaluare predefinite. Fiecare suită conține cazuri de testare care trimit solicitări reale prin OmniRoute și compară răspunsurile cu criteriile așteptate - ajutându-vă să detectați regresiile, să comparați modele și să asigurați calitatea răspunsului între furnizori.",
    "qualityValidation": "Validarea calității",
    "modelComparison": "Comparație de modele",
    "regressionDetection": "Detectarea regresiei",
    "latencyBenchmarks": "Benchmark-uri de latență",
    "modelLockouts": "Blocarea modelelor",
    "noLockouts": "Nu există modele blocate momentan",
    "activeSessions": "Sesiuni active",
    "noSessions": "Fără sesiuni active",
    "sessionsHint": "Sesiunile apar pe măsură ce solicitările circulă prin proxy",
    "sessionsTrackedHint": "Urmărit prin amprenta la cerere • Reîmprospătare automată 5s",
    "session": "Sesiune",
    "age": "Vârsta",
    "requests": "Cereri",
    "connection": "Conexiune",
    "durationMillisecondsShort": "{value}ms",
    "durationSecondsShort": "{value}s",
    "durationMinutesShort": "{value}m",
    "durationHoursShort": "{value}h",
    "reasonSeparator": " - ",
    "notAvailableSymbol": "-",
    "providerLimits": "Limitele furnizorului",
    "noProviders": "Niciun furnizor conectat",
    "connectProvidersForQuota": "Conectați-vă la furnizori cu OAuth pentru a urmări limitele și utilizarea cotelor API.",
    "accountsCount": "{count, plural, one {# account} other {# accounts}}",
    "filteredFromCount": "(filtrat din {count})",
    "autoRefresh": "Reîmprospătare automată",
    "refreshAll": "Reîmprospătați toate",
    "loadingQuotas": "Se încarcă...",
    "account": "Cont",
    "modelQuotas": "Cote model",
    "lastUsed": "Last Refreshed",
    "actions": "Acțiuni",
    "refreshQuota": "Actualizează cota",
    "today": "Astăzi",
    "tomorrow": "Mâine",
    "dayTimeFormat": "{day}, {time}",
    "inDuration": "în {duration}",
    "notApplicable": "N/A",
    "rawPlanWithValue": "Plan brut: {plan}",
    "noPlanFromProvider": "Niciun plan de la furnizor",
    "noQuotaData": "Fără date de cotă",
    "cardExpand": "__MISSING__:Expand",
    "cardCollapse": "__MISSING__:Collapse",
    "moreQuotas": "__MISSING__:+{count} more",
    "ungrouped": "Ungrouped",
    "viewFlat": "Flat",
    "viewByEnvironment": "By Environment",
    "noQuotaDataAvailable": "Nu sunt disponibile date privind cotele",
    "noAccountsForTierFilter": "Nu s-au găsit conturi pentru filtrul de nivel",
    "tierAll": "Toate",
    "tierEnterprise": "Întreprindere",
    "tierTeam": "Echipa",
    "tierBusiness": "Afaceri",
    "tierUltra": "Ultra",
    "tierPro": "Pro",
    "tierPlus": "Plus",
    "tierFree": "Gratuit",
    "tierLite": "__MISSING__:Lite",
    "tierUnknown": "Necunoscut",
    "statTotal": "__MISSING__:Total",
    "statCritical": "__MISSING__:Critical",
    "statAlert": "__MISSING__:Alert",
    "statHealthy": "__MISSING__:Healthy",
    "filterPurchaseTypeLabel": "__MISSING__:Type",
    "filterTierLabel": "__MISSING__:Tier",
    "purchaseAll": "__MISSING__:All",
    "purchaseOauthSub": "__MISSING__:Subscription",
    "purchaseOauthFree": "__MISSING__:OAuth Free",
    "purchaseApiKey": "__MISSING__:API Key",
    "creditsLabel": "__MISSING__:Credits",
    "creditBalanceHint": "__MISSING__:Remaining balance",
    "unlimitedLabel": "__MISSING__:Unlimited",
    "refreshing": "__MISSING__:Refreshing",
    "resetsIn": "__MISSING__:Resets in",
    "editCutoffs": "Editați limitele",
    "forceRefresh": "Actualizează acum",
    "suiteBuilderSaveFailed": "Failed to save suite",
    "clone": "Clonează",
    "exportSuite": "Exportați",
    "importSuite": "Import",
    "suiteExported": "Suita a fost exportată",
    "suiteExportFailed": "Nu s-a putut exporta suita",
    "suiteImportReady": "Importul suită a fost încărcat pentru examinare",
    "suiteImportFailed": "Nu s-a putut importa suita",
    "suiteImportInvalid": "Suita de evaluare JSON nevalidă",
    "suiteBuilderCloneSuffix": "copie",
    "suiteBuilderImportedSuite": "Suită importată",
    "scorecardTitle": "Scorecard",
    "evalApiKey": "API Key",
    "scorecardPassRate": "Pass Rate",
    "targetTypeModel": "Model",
    "actualOutputLabel": "Actual Output",
    "evalTargetHint": "Select a model or combo to evaluate.",
    "suiteBuilderDeleted": "Suite deleted successfully",
    "suiteBuilderCaseCardHint": "Define the input prompt and expected output criteria.",
    "nextResetUtc": "Next reset (UTC)",
    "scorecardHint": "Aggregated pass rates across all evaluation suites.",
    "suiteLatestRunsHint": "Most recent evaluation runs for this suite.",
    "saving": "Saving",
    "suiteBuilderCaseModelLabel": "Model (optional)",
    "evalControlsTitle": "Evaluation Controls",
    "suiteBuilderEditTitle": "Edit Eval Suite",
    "suiteBuilderCaseStrategyLabel": "Validation Strategy",
    "notifySelectDifferentCompareTarget": "Please select a different target for comparison",
    "recentRunsHint": "Showing the most recent evaluation runs. Click a run to see detailed results.",
    "evalCompareHint": "Optionally compare results against a second target.",
    "suiteBuilderCaseInvalid": "This case has validation errors. Please fix before saving.",
    "historyEmpty": "No evaluation history yet",
    "suiteBuilderUpdated": "Suite updated successfully",
    "resetInterval": "Reset Interval",
    "suiteBuilderCreateTitle": "Create Eval Suite",
    "activePeriodSpend": "Active Period Spend",
    "evalApiKeyHint": "Select which API key to use for evaluation requests.",
    "evalCompareOptional": "Compare (optional)",
    "suiteBuilderDeleteFailed": "Failed to delete suite",
    "suiteBuilderCaseSystemPromptPlaceholder": "Optional system instructions...",
    "scorecardCases": "Cases",
    "runCompletedWithScore": "Evaluation completed — {score}% pass rate",
    "suiteBuilderCustomBadge": "Custom",
    "targetSuiteDefaults": "Suite defaults",
    "suiteBuilderDeleteConfirm": "Are you sure you want to delete this suite? This action cannot be undone.",
    "suiteBuilderNameLabel": "Suite Name",
    "scorecardSuites": "Suites",
    "evalCompareTarget": "Compare Target",
    "suiteBuilderCaseModelPlaceholder": "e.g. gpt-4o-mini",
    "evalControlsHint": "Configure your evaluation target and API key, then run suites to validate model quality.",
    "recentRunsTitle": "Recent Runs",
    "suiteBuilderCaseSystemPromptLabel": "System Prompt",
    "suiteBuilderCaseExpectedPlaceholder": "e.g. def fibonacci",
    "suiteBuilderCaseExpectedPlaceholderContains": "de ex. def Fibonacci",
    "suiteBuilderCaseExpectedPlaceholderExact": "Lipiți răspunsul exact așteptat",
    "suiteBuilderCaseExpectedPlaceholderRegex": "de ex. ^\\\\s*\\\\{.*\\\\}\\\\s*$",
    "suiteBuilderCaseExpectedHintRegex": "Utilizați o expresie regulată JavaScript fără a încheia barele oblice.",
    "suiteBuilderNamePlaceholder": "e.g. Coding Quality Suite",
    "suiteBuilderAddCase": "Add Case",
    "cancel": "Cancel",
    "evalTarget": "Target",
    "suiteBuilderCaseNameLabel": "Case Name",
    "weeklyLimitUsd": "Weekly Limit (USD)",
    "suiteBuilderCaseUserPromptPlaceholder": "e.g. Write a fibonacci function in Python",
    "suiteBuilderNameRequired": "Suite name is required",
    "suiteBuilderCaseUserPromptLabel": "User Prompt",
    "daily": "Daily",
    "resultErrorLabel": "Error",
    "suiteBuilderBuiltInBadge": "Built-in",
    "suiteBuilderCaseCardTitle": "Test Case",
    "suiteBuilderDuplicateCase": "Duplicat",
    "weeklyLimitPlaceholder": "e.g. 50.00",
    "suiteBuilderCaseTagsHint": "Comma-separated tags for organizing test cases.",
    "notifyEvalRunFailedWithReason": "Evaluation failed: {reason}",
    "weekly": "Weekly",
    "runEvalRunning": "Running evaluation...",
    "delete": "Delete",
    "resetTimeUtc": "Reset Time (UTC)",
    "evalApiKeyAuto": "Auto (use default)",
    "suiteBuilderDescriptionPlaceholder": "Optional description of what this suite tests...",
    "targetComparisonTitle": "Target Comparison",
    "save": "Save",
    "suiteBuilderCreated": "Suite created successfully",
    "suiteLatestRuns": "Latest Runs",
    "suiteBuilderCaseExpectedLabel": "Expected Value",
    "historyLatency": "Latency",
    "suiteBuilderCaseTagsPlaceholder": "e.g. coding, python",
    "targetTypeCombo": "Combo",
    "scorecardPassed": "Passed",
    "suiteBuilderCaseTagsLabel": "Tags",
    "suiteBuilderNewSuite": "New Suite",
    "notifyEvalLoadFailed": "Failed to load evaluation data",
    "notConfigured": "Not Configured",
    "suiteBuilderCaseNamePlaceholder": "e.g. Python fibonacci test",
    "intervalLabel": "Interval",
    "suiteBuilderCreateAction": "Create Suite",
    "suiteBuilderCasesHint": "Each case sends a prompt and validates the response.",
    "suiteBuilderUpdatedAt": "Updated",
    "errorBadge": "Error",
    "suiteBuilderCasesTitle": "Test Cases",
    "edit": "Edit",
    "monthly": "Monthly",
    "suiteBuilderCasesRequired": "At least one test case is required",
    "weeklyLimitSummary": "Weekly budget limit summary",
    "suiteBuilderDescriptionLabel": "Description",
    "targetComparisonHint": "Side-by-side comparison of evaluation results between targets.",
    "compareCompletedWithScore": "Comparison completed — {score}% pass rate",
    "staleQuotaTooltip": "Last refresh failed — showing cached data",
    "quotaThresholdLabel": "Min a rămas",
    "quotaCutoffsColumnHelp": "Opriți solicitările atunci când cota rămasă scade la acest procent sau mai jos.",
    "quotaCutoffsButtonDefault": "Implicit",
    "quotaCutoffsButtonHelp": "Editați limitele minime de cotă rămase pentru acest cont.",
    "quotaCutoffsButtonDisabled": "Încă nu sunt disponibile ferestre de cotă pentru acest cont.",
    "quotaCutoffsTitle": "Limite de cotă pentru {name} ({provider})",
    "quotaCutoffsExplainer": "Înlocuiți procentul minim de cotă rămas în cazul în care acest cont nu mai este selectat pentru fiecare fereastră de cotă. Lăsați necompletat pentru a moșteni valoarea prestabilită a furnizorului.",
    "quotaCutoffsDefaultHint": "Minim prestabilit rămas: {default}%",
    "quotaCutoffsResetAll": "Resetați toate",
    "quotaCutoffsNoWindows": "Încă nu sunt disponibile ferestre de cotă pentru acest cont.",
    "quotaThresholdInvalid": "Introduceți un număr întreg de la 0 la 100.",
    "budgetKpiToday": "Astăzi",
    "budgetKpiThisMonth": "Luna aceasta",
    "budgetKpiProjEom": "Proiect EOM",
    "budgetKpiBlocked": "Blocat",
    "budgetKpiAtRisk": "La risc",
    "budgetKpiActiveKeys": "Taste active",
    "budgetSearchKeysPlaceholder": "Tastele de căutare...",
    "budgetSortPctUsed": "Sortare: % Utilizat ↓",
    "budgetSortTodayDollar": "Sortare: Astăzi $ ↓",
    "budgetSortMonthDollar": "Sortare: Luna $ ↓",
    "budgetSortNameAZ": "Sortare: Nume (A–Z)",
    "budgetColDailyLim": "Lim zilnic",
    "budgetColMonthlyLim": "Lim. lunar",
    "budgetColUsedPct": "% folosit",
    "budgetLoading": "Se încarcă…",
    "budgetNoKeysMatch": "Nicio cheie nu se potrivește cu filtrele",
    "budgetLinearExtrapolation": "extrapolare liniară",
    "budgetThisMonthSoFar": "Luna aceasta până acum",
    "budgetProjectedEndOfMonth": "Sfârșitul lunii proiectat",
    "budgetByProvider": "de către furnizor",
    "budgetDailyDollar": "Zilnic $",
    "budgetWeeklyDollar": "Săptămânal $",
    "budgetMonthlyDollar": "$ lunar",
    "budgetWarnAtPct": "Avertizați la %",
    "quotaAlerts": "Alerte de cote",
    "quotaTableRefreshing": "⟳ Înviorător...",
    "noSpendLast30Days": "Nicio cheltuială în ultimele 30 de zile",
    "updatedShort": "__MISSING__:Updated",
    "lastRefreshed": "__MISSING__:Last refreshed",
    "providerQuota": "__MISSING__:Provider Quota",
    "providerQuotaHomeHint": "__MISSING__:Live status across connected accounts"
  },
  "modals": {
    "waitingAuth": "În așteptarea autorizației",
    "verificationUrl": "Adresa URL de verificare",
    "yourCode": "Codul dvs",
    "remoteAccess": "Acces de la distanță:",
    "connectedSuccess": "Conectat cu succes!",
    "connectionFailed": "Conexiune a eșuat",
    "chooseAuthMethod": "Alegeți metoda de autentificare:",
    "awsBuilderId": "ID AWS Builder",
    "awsIamIdentity": "Centrul de identitate AWS IAM",
    "googleAccount": "Cont Google",
    "githubAccount": "Cont GitHub",
    "importToken": "Import Token",
    "pasteToken": "Lipiți indicativul de reîmprospătare din Kiro IDE.",
    "awsRegion": "Regiunea AWS",
    "autoDetecting": "Se detectează automat jetoanele...",
    "readingFromCache": "Citirea din memoria cache AWS SSO",
    "readingFromCursor": "Citirea din baza de date Cursor IDE",
    "initializing": "Se inițializează...",
    "pricingConfig": "Configurarea prețurilor",
    "loadingPricing": "Se încarcă datele de preț...",
    "pricingRatesFormat": "Formatul tarifelor de preț",
    "noPricingData": "Nu sunt disponibile date de preț",
    "noModelsFound": "Nu s-au găsit modele"
  },
  "loggers": {
    "allProviders": "Toți Furnizorii",
    "allModels": "Toate modelele",
    "allAccounts": "Toate Conturile",
    "allApiKeys": "Toate cheile API",
    "allTypes": "Toate Tipurile",
    "allLevels": "Toate Nivelurile",
    "modelAZ": "Modelul A-Z",
    "modelZA": "Model Z-A",
    "loadingLogs": "Se încarcă jurnalele...",
    "loadingProxyLogs": "Se încarcă jurnalele proxy...",
    "noLogEntries": "Nu au fost găsite intrări de jurnal",
    "noPayloadData": "Nu există date disponibile pentru această intrare în jurnal.",
    "proxyEvent": "Eveniment proxy",
    "proxy": "Proxy",
    "level": "Nivel",
    "directNative": "Direct (nativ)",
    "combo": "Combo",
    "inputTokens": "eu:",
    "outputTokens": "O:"
  },
  "stats": {
    "usageOverview": "Prezentare generală a utilizării",
    "outputTokens": "Jetoane de ieșire",
    "totalCost": "Costul total",
    "usageByModel": "Utilizare după model",
    "usageByAccount": "Utilizare după Cont",
    "failedToLoad": "Nu s-au încărcat statisticile de utilizare.",
    "tokenHealth": "Token Health",
    "totalOAuth": "OAuth totală",
    "healthy": "Sănătos",
    "warning": "Avertisment",
    "errored": "Eroare",
    "lastCheck": "Ultima verificare",
    "noData": "Fără date",
    "share": "Distribuie",
    "unableToLoad": "Nu se pot încărca valorile sistemului",
    "product": "Produs",
    "resources": "Resurse",
    "company": "Compania"
  },
  "auth": {
    "welcome": "Bun venit",
    "signIn": "Conectați-vă",
    "enterPassword": "Introduceți parola pentru a continua",
    "password": "Parolă",
    "unifiedProxy": "Proxy API AI unificat",
    "unifiedAiApiProxy": "Proxy API AI unificat",
    "unifiedAiApiProxyDesc": "Dirijați cererile către mai mulți furnizori de AI printr-un singur punct final. Echilibrarea încărcăturii, failoverul și urmărirea utilizării încorporate.",
    "passwordNotEnabled": "Protecția prin parolă nu este activată",
    "loading": "Se încarcă...",
    "invalidPassword": "Parolă nevalidă",
    "errorOccurredRetry": "A apărut o eroare. Vă rugăm să încercați din nou.",
    "configureInstance": "Haideți să vă configurați instanța OmniRoute",
    "runOnboardingWizard": "Rulați expertul de onboarding pentru a vă configura parola și pentru a vă conecta primul furnizor de AI.",
    "startOnboarding": "Începeți integrarea",
    "secureYourInstance": "Asigurați-vă instanța",
    "setPasswordDescription": "Setați o parolă pentru a vă proteja tabloul de bord și pentru a vă asigura punctele finale API împotriva accesului neautorizat.",
    "configurePassword": "Configurați parola",
    "continue": "Continuă",
    "windowWillClose": "Această fereastră se va închide automat...",
    "closeTabNow": "Puteți închide această filă acum.",
    "copyUrlManual": "Vă rugăm să copiați adresa URL din bara de adrese și să o inserați în aplicație.",
    "accessDeniedDescription": "Nu aveți permisiunea de a accesa această resursă. Verificați cheia API sau contactați administratorul.",
    "goToDashboard": "Accesați tabloul de bord",
    "featureMultiProviderTitle": "Multi-furnizor",
    "featureMultiProviderDesc": "OpenAI, Anthropic, Google și multe altele",
    "featureLoadBalancingTitle": "Echilibrarea sarcinii",
    "featureLoadBalancingDesc": "Distribuiți cererile în mod inteligent",
    "featureUsageTrackingTitle": "Urmărirea utilizării",
    "featureUsageTrackingDesc": "Monitorizați costurile și jetoanele",
    "resetPassword": "Resetează parola",
    "resetDescription": "Alegeți o metodă pentru a recupera accesul la tabloul de bord",
    "stopServer": "Opriți serverul OmniRoute",
    "processing": "Se procesează...",
    "pleaseWait": "Vă rugăm să așteptați până când completăm autorizarea.",
    "authSuccess": "Autorizare reușită!",
    "copyUrl": "Copiați această adresă URL",
    "accessDenied": "Acces refuzat",
    "methodCliTitle": "Metoda 1: Resetarea CLI",
    "methodCliDescription": "Rulați următoarea comandă pe serverul pe care rulează OmniRoute:",
    "methodCliHint": "Acest lucru vă va solicita să setați o nouă parolă. Serverul trebuie oprit mai întâi.",
    "methodManualTitle": "Metoda 2: Resetare manuală",
    "methodManualDescription": "Ștergeți parola din baza de date și setați una nouă la pornire:",
    "setPasswordInYour": "Setați o nouă parolă în dvs",
    "fileLabelSuffix": "fisier:",
    "newPasswordPlaceholder": "dvs._noua_parolă",
    "deleteSettingsFile": "Ștergeți",
    "orRemovePasswordHashField": "sau eliminați câmpul passwordHash",
    "restartServerWithNewPassword": "Reporniți serverul - va folosi noua parolă",
    "backToLogin": "Înapoi la Logare",
    "forgotPassword": "Ai uitat parola?",
    "defaultPasswordHint": "Default password: CHANGEME (unless INITIAL_PASSWORD was set)",
    "Authorization": "Autorizare",
    "Content-Disposition": "Conținut-Dispoziție",
    "waitingForAuthorization": "Se așteaptă autorizația...",
    "waitingForGoogleAuthorization": "Se așteaptă autorizarea Google...",
    "waitingForOpenAIAuthorization": "Se așteaptă autorizarea OpenAI...",
    "waitingForAntigravityAuthorization": "Se așteaptă autorizația antigravitație...",
    "waitingForQoderAuthorization": "Se așteaptă autorizarea Qoder...",
    "exchangingCodeForTokens": "Se schimbă codul pentru jetoane...",
    "nodeIncompatibleTitle": "Incompatible Node.js Version",
    "nodeIncompatibleDesc": "You are running Node.js {version}, which is outside OmniRoute's supported secure runtime policy. Use a patched Node.js 20.x or 22.x LTS release.",
    "nodeIncompatibleFixLabel": "Fix: install a patched Node.js 22 LTS release",
    "nodeIncompatibleHint": "OmniRoute requires Node.js 20.20.2+ (20.x LTS), 22.22.2+ (22.x LTS) or 24.0.0+ (24.x LTS). Node 24 LTS is recommended."
  },
  "landing": {
    "brandName": "OmniRoute",
    "navigateHome": "Navigați la acasă",
    "toggleMenu": "Comutați meniul",
    "featuresLink": "Caracteristici",
    "docsLink": "Docs",
    "github": "GitHub",
    "versionLive": "v1.0 este acum live",
    "oneEndpoint": "Un punct final pentru",
    "allProviders": "Toți furnizorii de AI",
    "heroDescription": "Proxy AI endpoint cu tablou de bord web - Un port JavaScript al CLIProxyAPI. Funcționează perfect cu Claude Code, OpenAI Codex, Cline, RooCode și alte instrumente CLI.",
    "getStarted": "Începeți",
    "viewOnGithub": "Vizualizați pe GitHub",
    "powerfulFeatures": "Caracteristici puternice",
    "featuresSubtitle": "Tot ce aveți nevoie pentru a vă gestiona infrastructura AI într-un singur loc, construit pentru scară.",
    "featureUnifiedEndpointTitle": "Punct final unificat",
    "featureUnifiedEndpointDesc": "Accesați toți furnizorii printr-o singură adresă URL API standard.",
    "featureEasySetupTitle": "Configurare ușoară",
    "featureEasySetupDesc": "Începeți să rulați în câteva minute cu comanda npx.",
    "featureModelFallbackTitle": "Model de rezervă",
    "featureModelFallbackDesc": "Comutați automat furnizorii în caz de eșec sau latență ridicată.",
    "featureUsageTrackingTitle": "Urmărirea utilizării",
    "featureUsageTrackingDesc": "Analiză detaliată și monitorizare a costurilor pentru toate modelele.",
    "featureOAuthApiKeysTitle": "Chei OAuth și API",
    "featureOAuthApiKeysDesc": "Gestionați în siguranță acreditările într-un singur seif.",
    "featureCloudSyncTitle": "Sincronizare în cloud",
    "featureCloudSyncDesc": "Sincronizați-vă configurațiile pe dispozitive instantaneu.",
    "featureCliSupportTitle": "Suport CLI",
    "featureCliSupportDesc": "Funcționează cu Claude Code, Codex, Cline, Cursor și multe altele.",
    "featureDashboardTitle": "Tabloul de bord",
    "featureDashboardDesc": "Tablou de bord vizual pentru analiza traficului în timp real.",
    "howItWorks": "Cum funcționează OmniRoute",
    "howItWorksDescription": "Datele circulă fără probleme de la aplicația dvs. prin stratul nostru inteligent de rutare către cel mai bun furnizor pentru job.",
    "howItWorksStep1Title": "1. CLI și SDK-uri",
    "howItWorksStep1Description": "Solicitările tale pornesc de la instrumentele tale preferate sau SDK-ul nostru unificat. Doar schimbați adresa URL de bază.",
    "howItWorksStep2Title": "2. OmniRoute Hub",
    "howItWorksStep2Description": "Motorul nostru analizează promptul, verifică starea furnizorului și rutele pentru cea mai mică latență sau cost.",
    "howItWorksStep3Title": "3. Furnizori AI",
    "howItWorksStep3Description": "Solicitarea este îndeplinită instantaneu de OpenAI, Anthropic, Gemini sau altele.",
    "getStartedIn30Seconds": "Începeți în 30 de secunde",
    "getStartedDescription": "Instalați OmniRoute, configurați-vă furnizorii prin intermediul tabloului de bord web și începeți să direcționați cererile AI.",
    "installOmniRoute": "Instalați OmniRoute",
    "installStepDescription": "Rulați comanda npx pentru a porni serverul instantaneu",
    "openDashboard": "Deschideți tabloul de bord",
    "openDashboardStepDescription": "Configurați furnizorii și cheile API prin interfața web",
    "routeRequests": "Cereri de traseu",
    "routeRequestsStepDescription": "Îndreptați instrumentele CLI către {endpoint}",
    "terminal": "terminal",
    "copy": "Copiere",
    "copied": "✓ Copiat",
    "startingOmniRoute": "Se pornește OmniRoute...",
    "serverRunningOnLabel": "Serverul rulează",
    "dashboardLabel": "Tabloul de bord",
    "readyToRoute": "Gata de traseu! ✓",
    "configureProvidersNote": "📝 Configurați furnizorii în tabloul de bord sau utilizați variabile de mediu",
    "dataLocation": "Locația datelor:",
    "dataLocationMacLinux": " macOS/Linux:",
    "dataLocationWindows": " Windows:",
    "product": "Produs",
    "dashboardLink": "Tabloul de bord",
    "changelog": "Jurnalul modificărilor",
    "resources": "Resurse",
    "documentation": "Documentare",
    "npm": "NPM",
    "legal": "Legal",
    "mitLicense": "Licență MIT",
    "footerTagline": "Punctul final unificat pentru generarea AI. Conectați-vă, direcționați și gestionați cu ușurință furnizorii dvs. de AI.",
    "copyright": "© {year} OmniRoute. Toate drepturile rezervate.",
    "flowToolClaudeCode": "Claude Cod",
    "flowToolOpenAICodex": "OpenAI Codex",
    "flowToolCline": "Cline",
    "flowToolCursor": "Cursorul",
    "flowProviderOpenAI": "OpenAI",
    "flowProviderAnthropic": "antropică",
    "flowProviderGemini": "Gemeni",
    "flowProviderGithubCopilot": "Copilotul GitHub",
    "interactiveDiagram": "Diagrama interactivă vizibilă pe desktop",
    "ctaTitle": "Sunteți gata să vă simplificați infrastructura AI?",
    "ctaDescription": "Alăturați-vă dezvoltatorilor care își eficientizează integrările AI cu OmniRoute. Open source și liber pentru a începe.",
    "startFree": "Începe gratuit",
    "readDocumentation": "Citiți documentația"
  },
  "docs": {
    "title": "Documentare",
    "quickStart": "Pornire rapidă",
    "deploymentGuides": "Ghiduri de implementare",
    "features": "Caracteristici",
    "supportedProviders": "Furnizori acceptați",
    "supportedProvidersToc": "Furnizorii",
    "commonUseCases": "Cazuri comune de utilizare",
    "clientCompatibility": "Compatibilitate client",
    "protocolsToc": "Protocols",
    "apiReference": "Referință API",
    "managementApiReference": "Management API Reference",
    "managementApiDescription": "Automation endpoints for proxy registry, scope assignments, and legacy proxy migration.",
    "method": "Metoda",
    "path": "Calea",
    "notes": "Note",
    "modelPrefixes": "Prefixe de model",
    "prefix": "Prefix",
    "troubleshooting": "Depanare",
    "supportsChat": "Acceptă atât punctele finale de chat, cât și cele de răspuns.",
    "oauthAutoRefresh": "Conexiune OAuth cu reîmprospătare automată a simbolului.",
    "fullStreaming": "Suport complet pentru streaming pentru toate modelele.",
    "docsLabel": "Docs",
    "docsHeroDescription": "Gateway AI pentru LLM cu mai mulți furnizori. Un punct final pentru OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor și peste 20 de furnizori.",
    "openDashboard": "Deschideți tabloul de bord",
    "endpointPage": "Pagina finală",
    "github": "GitHub",
    "reportIssue": "Raportați o problemă",
    "onThisPage": "Pe această pagină",
    "documentationVersion": "Documentație - v{version}",
    "quickStartStep1Title": "1. Instalați și rulați",
    "quickStartStep1Prefix": "Fugi",
    "quickStartStep1Middle": "sau clonează din GitHub și rulează",
    "quickStartStep2Title": "2. Creați cheia API",
    "quickStartStep2Text": "Accesați Endpoint -> Chei înregistrate. Generați o cheie pentru fiecare mediu.",
    "quickStartStep3Title": "3. Conectați furnizorii",
    "quickStartStep3Text": "Adăugați conturi de furnizor prin autentificare OAuth, cheie API sau conexiune automată gratuită.",
    "quickStartStep4Title": "4. Setați adresa URL a bazei de clienți",
    "quickStartStep4Prefix": "Îndreptați-vă clientul IDE sau API către",
    "quickStartStep4Suffix": "Utilizați prefixul furnizorului, de exemplu",
    "deploySetupTitle": "Ghid de instalare",
    "deploySetupText": "Instalare pas cu pas, configurare a mediului și prima rulare pentru OmniRoute.",
    "deployElectronTitle": "Electron Desktop",
    "deployElectronText": "Rulați OmniRoute ca aplicație desktop nativă pe Windows, macOS și Linux.",
    "deployDockerTitle": "Docker",
    "deployDockerText": "Implementare containerizată cu Docker Compose; gata pentru stive de producție și Kubernetes.",
    "deployVmTitle": "Mașină virtuală",
    "deployVmText": "Auto-gazdă pe orice VM Linux. Include unitate de sistem, rotație a jurnalelor și instrumente de rezervă.",
    "deployFlyTitle": "Fly.io",
    "deployFlyText": "Implementați pe Fly.io edge runtime cu un fly.toml și o singură comandă de implementare.",
    "deployPwaTitle": "PWA",
    "deployPwaText": "Instalați OmniRoute ca aplicație web progresivă pe browsere Android, iOS și desktop.",
    "deployTermuxTitle": "Termux (Android)",
    "deployTermuxText": "Run OmniRoute headless on Android via Termux. Access the dashboard from your mobile browser.",
    "featureRoutingTitle": "Rutare cu mai mulți furnizori",
    "featureRoutingText": "Dirijați cererile către peste 30 de furnizori de AI printr-un singur punct final compatibil cu OpenAI. Acceptă API-uri de chat, răspunsuri, audio și imagine.",
    "featureCombosTitle": "Combo și echilibrare",
    "featureCombosText": "Creați combinații de modele cu lanțuri de rezervă și strategii de echilibrare: round-robin, prioritare, aleatorii, cel mai puțin utilizate și optimizate pentru costuri.",
    "featureUsageTitle": "Urmărirea utilizării și a costurilor",
    "featureUsageText": "Numărarea jetonelor în timp real, calculul costurilor pe furnizor/model și detalierea utilizării în funcție de cheie API și cont.",
    "featureAnalyticsTitle": "Tabloul de bord Analytics",
    "featureAnalyticsText": "Analiză vizuală cu diagrame pentru solicitări, jetoane, erori, latență, costuri și popularitatea modelului de-a lungul timpului.",
    "featureHealthTitle": "Monitorizarea sănătății",
    "featureHealthText": "Verificări live ale stării de sănătate, starea furnizorului, stările întrerupătoarelor de circuit și detectarea automată a limitei ratei cu retragere exponențială.",
    "featureCliTitle": "Instrumente CLI",
    "featureCliText": "Gestionați configurațiile IDE, exportați/importați copii de siguranță, descoperiți profiluri de codex și configurați setările din tabloul de bord.",
    "featureSecurityTitle": "Securitate și politici",
    "featureSecurityText": "Autentificare cu cheie API, filtrare IP, protectie pentru injectare promptă, politici de domeniu, gestionare a sesiunilor și înregistrare de audit.",
    "featureCloudSyncTitle": "Sincronizare în cloud",
    "featureCloudSyncText": "Sincronizați-vă configurația cu Cloudflare Workers pentru acces de la distanță cu acreditări criptate și failover automat.",
    "providersAcrossConnectionTypes": "{count} furnizori din trei tipuri de conexiune.",
    "manageProviders": "Gestionați furnizorii",
    "providersCount": "{count} furnizori",
    "providerTypeFree": "Nivel gratuit",
    "providerTypeOAuth": "OAuth",
    "providerTypeApiKey": "Cheia API",
    "useCaseSingleEndpointTitle": "Punct final unic pentru mulți furnizori",
    "useCaseSingleEndpointText": "Indicați clienții către o adresă URL de bază și rutați după prefix de model (de exemplu: gh/, cc/, kr/, openai/).",
    "useCaseFallbackTitle": "Fallback și schimbare de model cu combo",
    "useCaseFallbackText": "Creați modele combinate în Dashboard și mențineți stabilă configurația clientului în timp ce furnizorii se rotesc intern.",
    "useCaseUsageVisibilityTitle": "Utilizare, cost și vizibilitate depanare",
    "useCaseUsageVisibilityText": "Urmăriți jetoanele și costul în funcție de furnizor, cont și cheie API în filele Utilizare și Analytics.",
    "clientCherryStudioTitle": "Studioul Cherry",
    "baseUrlLabel": "Adresa URL de bază",
    "chatEndpointLabel": "Punct final de chat",
    "modelRecommendationLabel": "Recomandare model: prefix explicit",
    "clientCodexTitle": "Modele Codex / GitHub Copilot",
    "clientCodexBullet1": "Utilizați ID-uri de model cu",
    "clientCodexBullet2": "Modelele din familia Codex au traseu automat către",
    "clientCodexBullet3": "Modelele non-Codex continuă",
    "clientCursorTitle": "Cursor IDE",
    "clientCursorBullet1": "Utilizați",
    "clientCursorBullet1Suffix": "prefix pentru modelele Cursor.",
    "clientCursorBullet2": "Conexiune OAuth - conectați-vă din pagina Furnizori.",
    "clientClaudeTitle": "Claude Code / Antigravitație",
    "clientClaudeBullet1Prefix": "Utilizați",
    "clientClaudeBullet1Middle": "(Claude) sau",
    "clientClaudeBullet1Suffix": "(antigravitație) prefix.",
    "clientWindsurfTitle": "Windsurf",
    "clientWindsurfBullet1": "Utilizați OmniRoute ca adresă URL de bază compatibilă cu OpenAI și păstrați prefixele explicite ale furnizorului pentru rutarea deterministă.",
    "clientWindsurfBullet2": "Indicați modelele către `/v1/chat/completions` pentru traficul general și păstrați `/v1/responses` pentru fluxurile în stil Codex.",
    "clientWindsurfBullet3": "Utilizați Dashboard -> CLI Tools pentru un ghid gata de configurare Windsurf.",
    "clientClineTitle": "Cline",
    "clientClineBullet1": "Cline funcționează cel mai bine cu prefixe explicite de furnizor/model, astfel încât routerul nu trebuie să ghicească niciodată backend-ul.",
    "clientClineBullet2": "Utilizați „/v1/chat/completions” pentru modele generale și reutilizați aceeași adresă URL de bază OmniRoute în diferite conturi.",
    "clientClineBullet3": "Utilizați tabloul de bord al furnizorilor pentru a valida cheia OAuth/API înainte de a depana problemele de rulare Cline.",
    "clientKimiTitle": "Kimi Coding",
    "clientKimiBullet1": "Utilizați OmniRoute ca o adresă URL de bază stabilă în timp ce rotați conturile sau combinațiile de furnizori de dedesubt.",
    "clientKimiBullet2": "Preferați modelele prefixate în fluxurile de codare, astfel încât back-up și pista de audit să rămână explicite.",
    "clientKimiBullet3": "Utilizați `/v1/responses` atunci când doriți rutare nativă în stil Responses pentru clienții care folosesc instrumente.",
    "protocolsTitle": "Protocols: MCP & A2A",
    "protocolsDescription": "OmniRoute exposes two operational protocols in addition to OpenAI-compatible APIs: MCP for tool execution and A2A for agent-to-agent workflows.",
    "protocolMcpTitle": "MCP (Model Context Protocol)",
    "protocolMcpDesc": "Use MCP over stdio to let clients discover and call OmniRoute tools with audit visibility.",
    "protocolMcpStep1": "Start MCP transport with `omniroute --mcp`.",
    "protocolMcpStep2": "Point your MCP client to stdio transport.",
    "protocolMcpStep3": "Call `omniroute_get_health` and `omniroute_list_combos` to validate connectivity.",
    "protocolA2aTitle": "A2A (Agent2Agent)",
    "protocolA2aDesc": "Use A2A JSON-RPC to submit tasks synchronously or via SSE streaming.",
    "protocolA2aStep1": "Read `/.well-known/agent.json` for agent discovery.",
    "protocolA2aStep2": "Send `message/send` or `message/stream` requests to `POST /a2a`.",
    "protocolA2aStep3": "Manage task lifecycle with `tasks/get` and `tasks/cancel`.",
    "protocolTroubleshootingTitle": "Protocol Troubleshooting",
    "protocolTroubleshooting1": "If MCP status is offline, verify the stdio process is running and heartbeat file is updating.",
    "protocolTroubleshooting2": "If A2A tasks stay in `working`, inspect `/api/a2a/tasks/:id` and stream events for terminal state.",
    "protocolTroubleshooting3": "Use `/dashboard/mcp` and `/dashboard/a2a` for operational controls and audit visibility.",
    "endpointChatNote": "Punct final de chat compatibil cu OpenAI (implicit).",
    "endpointResponsesNote": "Punct final API pentru răspunsuri (Codex, serie o).",
    "endpointModelsNote": "Catalog model pentru toți furnizorii conectați.",
    "endpointAudioNote": "Transcriere audio (Deepgram, AssemblyAI).",
    "endpointSpeechNote": "Generarea text-to-speech (ElevenLabs, OpenAI TTS).",
    "endpointEmbeddingsNote": "Generarea de încorporare a textului (OpenAI, Cohere, Voyage).",
    "endpointImagesNote": "Generarea imaginii (NanoBanana).",
    "endpointRewriteChatNote": "Rescrie ajutor pentru clienți fără /v1.",
    "endpointRewriteResponsesNote": "Rescrie ajutor pentru răspunsuri fără /v1.",
    "endpointRewriteModelsNote": "Rescrierea de ajutor pentru descoperirea modelului fără /v1.",
    "mgmtProxiesListNote": "List saved proxy registry items (supports pagination).",
    "mgmtProxiesCreateNote": "Create a reusable proxy item in the registry.",
    "mgmtProxiesHealthNote": "Get 24h/rolling health metrics per saved proxy from proxy logs.",
    "mgmtProxiesBulkAssignNote": "Assign or clear one proxy across many scope IDs in one request.",
    "mgmtAssignmentsListNote": "List proxy assignments by scope, scope_id, or proxy_id.",
    "mgmtAssignmentsUpdateNote": "Assign or clear proxy for global/provider/account/combo scope.",
    "mgmtLegacyMigrationNote": "Import legacy proxyConfig maps into registry assignments.",
    "modelPrefixesDescriptionStart": "Utilizați prefixul furnizorului înainte de numele modelului pentru a direcționa către un anumit furnizor. Exemplu:",
    "modelPrefixesDescriptionEnd": "rute către GitHub Copilot.",
    "provider": "Furnizor",
    "type": "Tip",
    "troubleshootingModelRouting": "Dacă clientul eșuează cu rutarea modelului, utilizați furnizorul/modelul explicit (de exemplu: gh/gpt-5.1-codex).",
    "troubleshootingAmbiguousModels": "Dacă primiți erori de model ambigue, alegeți un prefix de furnizor în loc de un ID de model simplu.",
    "troubleshootingCodexFamily": "Pentru modelele din familia GitHub Codex, păstrați modelul ca gh/codex-model; routerul selectează/răspunde automat.",
    "troubleshootingTestConnection": "Utilizați Tabloul de bord > Furnizori > Testați conexiunea înainte de a testa de la IDE-uri sau clienți externi.",
    "troubleshootingCircuitBreaker": "Dacă un furnizor arată întrerupătorul deschis, așteptați răcirea sau verificați pagina Sănătate pentru detalii.",
    "troubleshootingOAuth": "Pentru furnizorii OAuth, re-autentificați-vă dacă tokenurile expiră. Verificați indicatorul de stare a cardului furnizorului.",
    "endpointCompletionsNote": "Finalizările moștenite pentru generarea de text.",
    "endpointModerationsNote": "Moderarea conținutului și clasificarea siguranței.",
    "endpointRerankNote": "Reclasificarea documentelor pentru generarea îmbunătățită cu recuperare (Cohere, Jina).",
    "endpointSearchNote": "Căutare web cu 5 furnizori (Serper, Brave, Exa, Tavily, Perplexity).",
    "endpointSearchAnalyticsNote": "Analize și valori pentru solicitările de căutare.",
    "endpointVideoNote": "Generare video (fluxuri de lucru ComfyUI, SD WebUI).",
    "endpointMusicNote": "Generare de muzică prin fluxurile de lucru ComfyUI.",
    "endpointMessagesNote": "Punctul final al mesajelor antropice-native.",
    "endpointCountTokensNote": "Numărați jetoanele pentru o anumită sarcină utilă a mesajului.",
    "endpointFilesNote": "Încărcarea fișierelor pentru intrări multimodale.",
    "endpointBatchesNote": "Procesare în lot pentru solicitările API în bloc.",
    "endpointWsNote": "Punct final WebSocket pentru streaming în timp real.",
    "mgmtProvidersListNote": "Listați toate conexiunile furnizorilor înregistrate.",
    "mgmtProvidersCreateNote": "Creați o nouă conexiune la furnizor.",
    "mgmtProvidersUpdateNote": "Actualizați o conexiune de furnizor existentă.",
    "mgmtProvidersDeleteNote": "Ștergeți o conexiune la furnizor.",
    "mgmtProvidersTestNote": "Testați conectivitatea și autentificarea pentru un furnizor.",
    "mgmtProvidersModelsNote": "Listați modelele disponibile pentru un anumit furnizor.",
    "mgmtSettingsGetNote": "Preluați setările curente ale aplicației.",
    "mgmtSettingsUpdateNote": "Actualizați setările aplicației.",
    "mgmtPayloadRulesGetNote": "Obțineți reguli de transformare a sarcinii utile.",
    "mgmtPayloadRulesUpdateNote": "Actualizați regulile de transformare a sarcinii utile.",
    "mcpToolsTitle": "Instrumente MCP",
    "mcpToolsDescription": "OmniRoute expune instrumentele {count} prin protocolul de context model pentru orchestrarea agenților.",
    "mcpToolsCount": "{count} instrumente",
    "mcpToolsToc": "Instrumente MCP",
    "mcpToolsRoutingTitle": "Rutare și descoperire",
    "mcpToolsRoutingDesc": "Verificări de sănătate, management combo, monitorizare cote, raportare costuri și acces la catalogul modelelor.",
    "mcpToolsOperationsTitle": "Operațiuni și strategie",
    "mcpToolsOperationsDesc": "Simulare de rută, gardieni bugetare, schimbarea strategiei, profiluri de rezistență și valori ale furnizorilor.",
    "mcpToolsCacheTitle": "Managementul cache-ului",
    "mcpToolsCacheDesc": "Vizualizați statisticile memoriei cache și spălați memoria cache semantică sau de semnătură.",
    "mcpToolsCompressionTitle": "Motoare de compresie",
    "mcpToolsCompressionDesc": "Configurați compresia RTK/Brotli, schimbați motoarele și inspectați analiza compresiei prin combo.",
    "mcpToolsOneProxyTitle": "1Proxy / Tuneluri",
    "mcpToolsOneProxyDesc": "Gestionați proxy-urile de ieșire, rotiți IP-urile rezidențiale și inspectați starea proxy-urilor.",
    "mcpToolsMemoryTitle": "Memorie",
    "mcpToolsMemoryDesc": "Căutați, adăugați și ștergeți intrări persistente din memoria conversațională.",
    "mcpToolsSkillsTitle": "Abilități",
    "mcpToolsSkillsDesc": "Listați, activați, executați și monitorizați execuțiile de abilități personalizate.",
    "featureAutoComboTitle": "Combo automat",
    "featureAutoComboText": "Creați automat combinații optimizate pe baza furnizorilor dvs. conectați, a modelelor de utilizare și a capabilităților modelului.",
    "featureSearchTitle": "Căutare pe Web",
    "featureSearchText": "Căutare web integrată cu 5 furnizori (Serper, Brave, Exa, Tavily, Perplexity), inclusiv analize și urmărire a costurilor.",
    "featureMemoryTitle": "Sistem de memorie",
    "featureMemoryText": "Memorie conversațională persistentă cu extragere, injectare, recuperare și rezumare în sesiuni.",
    "featureSkillsTitle": "Cadrul de competențe",
    "featureSkillsText": "Sistem de abilități extensibil cu abilități încorporate și personalizate, execuție sandbox, interceptarea cererilor și injectare de context.",
    "featureAcpTitle": "Comunicarea agentului",
    "featureAcpText": "Registrul Agent Communication Protocol (ACP) pentru gestionarea fluxurilor de lucru de la agent la agent și orchestrarea instrumentelor.",
    "protocolAcpTitle": "ACP (Comunicare agent)",
    "protocolAcpDesc": "Înregistrați și gestionați agenții prin intermediul registrului ACP pentru comunicarea între agenți și partajarea instrumentelor.",
    "protocolAcpStep1": "Navigați la Tabloul de bord → Agenți pentru a vedea agenții ACP înregistrați.",
    "protocolAcpStep2": "Înregistrați noi agenți cu capacități și configurație finală.",
    "protocolAcpStep3": "Utilizați instrumentele CLI pentru a configura canalele de comunicare a agentului."
  },
  "legal": {
    "privacyPolicy": "Politica de confidențialitate",
    "termsOfService": "Termeni și condiții",
    "providerConfigurations": "Configurațiile furnizorului",
    "apiKeys": "Chei API",
    "usageLogs": "Jurnalele de utilizare",
    "applicationSettings": "Setările aplicației",
    "viewExportAnalytics": "Vizualizați și exportați analizele de utilizare",
    "clearHistory": "Ștergeți istoricul utilizării în orice moment",
    "configureRetention": "Configurați politicile de păstrare a jurnalelor",
    "backupRestore": "Faceți backup și restaurați baza de date",
    "privacyMetadataTitle": "Politica de confidențialitate | OmniRoute",
    "privacyMetadataDescription": "Politica de confidențialitate pentru routerul proxy API OmniRoute AI.",
    "termsMetadataTitle": "Termeni și condiții | OmniRoute",
    "termsMetadataDescription": "Termenii și condițiile pentru routerul proxy API OmniRoute AI.",
    "backToHome": "Înapoi acasă",
    "lastUpdated": "Ultima actualizare: {date}",
    "policyLastUpdatedDate": "13 februarie 2026",
    "listSeparator": "-",
    "questionsVisit": "Întrebări? Vizitează-ne",
    "githubRepository": "Depozitul GitHub",
    "privacySection1Title": "1. Local-First Architecture",
    "privacySection1Text": "OmniRoute este proiectat ca o aplicație mai întâi locală. Toate procesarea și stocarea datelor au loc în întregime pe mașina dvs. Nu există un server centralizat care să vă colecteze informațiile.",
    "privacySection2Title": "2. Datele pe care le stocăm",
    "privacyDataStoredIn": "Următoarele date sunt stocate local în",
    "privacyDataProviderConfigurationsDesc": "adrese URL de conexiune, tipuri de furnizori și setări de prioritate",
    "privacyDataApiKeysDesc": "criptat și stocat local pentru autentificare cu furnizorii de AI",
    "privacyDataUsageLogsDesc": "numărul de solicitări, utilizarea token-ului, numele modelelor, marcajele de timp și timpii de răspuns",
    "privacyDataApplicationSettingsDesc": "preferințele temei, strategia de rutare și configurațiile combinate",
    "privacySection3Title": "3. Fără telemetrie",
    "privacySection3Text": "OmniRoute nu colectează telemetrie, analize sau rapoarte de blocare. Nicio dată nu ne sunt trimise nouă sau unei terțe părți. Tiparele dvs. de utilizare, apelurile API și configurațiile rămân în întregime private.",
    "privacySection4Title": "4. Furnizori AI terți",
    "privacySection4Text": "Când efectuați apeluri API prin OmniRoute, solicitările dvs. sunt redirecționate către furnizorii de AI pe care i-ați configurat (de exemplu: OpenAI, Anthropic, Google). Acești furnizori au propriile lor politici de confidențialitate care guvernează modul în care vă gestionează datele. Vă rugăm să revizuiți:",
    "privacyOpenAiPolicy": "Politica de confidențialitate OpenAI",
    "privacyAnthropicPolicy": "Politica de confidențialitate antropică",
    "privacyGooglePolicy": "Politica de confidențialitate Google",
    "privacySection5Title": "5. Cloud Sync (Opțional)",
    "privacySection5Text": "Dacă activați caracteristica opțională de sincronizare în cloud, configurațiile furnizorului și cheile API pot fi transmise la un punct final de cloud configurat. Această funcție este dezactivată în mod implicit și necesită înscriere explicită.",
    "privacySection6Title": "6. Înregistrare",
    "privacyLoggingIntro": "Jurnalele de solicitări pot fi configurate prin setările tabloului de bord. Puteți:",
    "privacySection7Title": "7. Drepturile tale",
    "privacySection7TextStart": "Deoarece toate datele sunt stocate local, aveți control deplin. Vă puteți șterge datele oricând prin eliminarea",
    "privacySection7TextEnd": "director sau folosind funcțiile de backup și restaurare a bazei de date din tabloul de bord.",
    "termsSection1Title": "1. Prezentare generală",
    "termsSection1Text": "OmniRoute este un router proxy API AI care funcționează în întregime pe mașina dumneavoastră. Acesta direcționează cererile către mai mulți furnizori de AI cu echilibrare a sarcinii, failover și urmărire a utilizării.",
    "termsSection2Title": "2. Responsabilitățile utilizatorului",
    "termsResponsibilityApiKeys": "Sunteți singurul responsabil pentru gestionarea propriilor chei și acreditări API pentru furnizorii terți de AI (OpenAI, Anthropic, Google etc.).",
    "termsResponsibilityCompliance": "Trebuie să respectați termenii și condițiile fiecărui furnizor de AI al cărui API îl accesați prin OmniRoute.",
    "termsResponsibilitySecurity": "Sunteți responsabil pentru securitatea instalării locale OmniRoute, inclusiv setarea unei parole și restricționarea accesului la rețea.",
    "termsSection3Title": "3. Cum funcționează",
    "termsSection3Text": "OmniRoute acționează ca un proxy intermediar. Apelurile API trimise către OmniRoute sunt traduse și redirecționate către furnizorii dvs. de AI configurați. OmniRoute nu modifică conținutul solicitărilor sau răspunsurilor dumneavoastră dincolo de traducerea protocolului necesară.",
    "termsSection4Title": "4. Manipularea datelor",
    "termsDataStoredLocally": "Toate datele sunt stocate local pe mașina dvs. într-o bază de date SQLite.",
    "termsNoTransmission": "OmniRoute nu transmite date către servere externe decât dacă activați în mod explicit funcțiile de sincronizare în cloud.",
    "termsDataLocationText": "Jurnalele de utilizare, cheile API și configurația sunt stocate în",
    "termsSection5Title": "5. Exonerare de responsabilitate",
    "termsSection5Text": "OmniRoute este furnizat „ca atare”, fără garanții de niciun fel. Nu suntem responsabili pentru costurile suportate prin utilizarea API-ului, întreruperile serviciilor sau pierderea datelor. Păstrați întotdeauna copii de siguranță ale configurației dvs.",
    "termsSection6Title": "6. Open Source",
    "termsSection6Text": "OmniRoute este un software open-source. Sunteți liber să îl inspectați, să modificați și să îl distribuiți în conformitate cu termenii licenței sale."
  },
  "agents": {
    "title": "CLI Agents",
    "description": "Discover installed CLI agents on your system. Add custom agents for auto-detection.",
    "refresh": "Refresh",
    "installed": "Installed",
    "notFound": "Not Found",
    "builtIn": "Built-in",
    "custom": "Custom",
    "remove": "Remove",
    "addCustomAgent": "Add Custom Agent",
    "addCustomAgentDesc": "Register any CLI tool for detection. It will be scanned automatically on refresh.",
    "agentName": "Agent Name",
    "binaryName": "Binary Name",
    "versionCommand": "Version Command",
    "spawnArgs": "Spawn Args",
    "addAgent": "Add Agent",
    "scanning": "Scanning system for CLI agents...",
    "opencodeIntegration": "OpenCode Integration",
    "opencodeDetected": "opencode {version} detected",
    "opencodeDesc": "Generate a ready-to-use {configFile} with your OmniRoute base URL and all available models — drop it in your project root and run {command}.",
    "downloadConfig": "Download {file}",
    "downloaded": "Downloaded!",
    "setupGuideTitle": "Setup guide",
    "openCliTools": "Open CLI Tools",
    "setupGuideDetectCliTitle": "Detect installed CLIs",
    "setupGuideDetectCliDesc": "Click Refresh after installing or updating a CLI so OmniRoute can rescan binaries and versions.",
    "setupGuideCustomAgentTitle": "Register custom binary",
    "setupGuideCustomAgentDesc": "Use Add Custom Agent when your CLI is not in the built-in list. Provide binary name and version command.",
    "setupGuideCommandMissingTitle": "Fix 'command not found'",
    "setupGuideCommandMissingDesc": "Ensure the CLI command exists in PATH, open a new terminal session, and rerun Refresh.",
    "cliToolsRedirectTitle": "Cli Tools Redirect Title",
    "cliToolsRedirectDesc": "Cli Tools Redirect Desc",
    "spawnArgsPlaceholder": "Spawn Args Placeholder",
    "binaryNamePlaceholder": "Binary Name Placeholder",
    "versionCommandPlaceholder": "Version Command Placeholder",
    "architectureTitle": "Architecture Title",
    "flowLocalBinary": "Flow Local Binary",
    "flowOmniRoute": "Flow Omni Route",
    "agentNamePlaceholder": "Agent Name Placeholder",
    "architectureDescription": "Architecture Description",
    "flowExecute": "Flow Execute",
    "flowSpawn": "Flow Spawn",
    "cliToolsRedirectCta": "Cli Tools Redirect Cta",
    "comparisonTitle": "CLI Tools vs Agent Targets — Care este diferența?",
    "comparisonCliToolsLabel": "Pagina Instrumente CLI",
    "comparisonCliToolsTitle": "IDE-ul dvs. trimite cereri prin OmniRoute",
    "comparisonCliToolsDesc": "Configurați Claude Code, Codex, Cursor și alte IDE-uri pentru a utiliza OmniRoute ca URL de bază API. OmniRoute acționează ca un proxy, direcționând cererile către furnizorii dvs. configurați.",
    "comparisonAgentsLabel": "Această pagină (ținte pentru agenți)",
    "comparisonAgentsTitle": "OmniRoute trimite cereri în instrumentele CLI locale",
    "comparisonAgentsDesc": "OmniRoute poate genera fișiere binare CLI locale (claude, codex, goose) ca backend-uri de execuție. Instrumentul CLI procesează cererea folosind propria sa autentificare și returnează rezultatul.",
    "comparisonSummary": "Pe scurt: CLI Tools = configurați instrumentele pentru a indica OmniRoute. Ținte agent = OmniRoute folosește instrumente ca puncte finale.",
    "agentUseCaseHint": "Poate fi folosit ca țintă de execuție prin protocolul ACP",
    "flowDiagramClient": "Aplicația client",
    "flowDiagramClientDesc": "SDK, API sau serviciu în amonte",
    "flowDiagramOmniRoute": "OmniRoute",
    "flowDiagramOmniRouteDesc": "Primește cererea și selectează ținta",
    "flowDiagramSpawn": "Procesul de apariție",
    "flowDiagramSpawnDesc": "Lansează binarul CLI prin stdio",
    "flowDiagramCli": "Agent CLI",
    "flowDiagramCliDesc": "Procese cu autentificare/model propriu",
    "fingerprintSettingsHint": "Potrivirea amprentei CLI (cereri de deghizare ca instrumente specifice CLI) poate fi configurată în",
    "settingsRoutingLink": "Setări/Routare",
    "openSettings": "Setări",
    "copyRawUrlTitle": "Copiați adresa URL brută în clipboard",
    "copied": "Copiat!",
    "copyUrl": "Copiați adresa URL",
    "startHere": "Începeți de aici",
    "badgeNew": "Nou",
    "viewOnGithub": "Vizualizați pe GitHub",
    "howToUse": "Cum se utilizează",
    "browseAllSkillsOnGithub": "Răsfoiți toate abilitățile pe GitHub",
    "apiSkills": "Abilități API",
    "cliSkills": "Abilități CLI",
    "apiSkillsSubtitle": "__MISSING__:{count} skills — control OmniRoute via REST / HTTP",
    "cliSkillsSubtitle": "__MISSING__:{count} skills — control OmniRoute via the omniroute terminal binary",
    "howToUseStep1": "__MISSING__:Click <bold>{copyUrl}</bold> on the skill you want your agent to know about.",
    "howToUseStep2": "__MISSING__:In your AI agent (Claude, Cursor, Cline…), say:",
    "howToUseStep2Code": "__MISSING__:Use the skill at [pasted-url]",
    "howToUseStep3": "__MISSING__:The agent fetches the SKILL.md and learns OmniRoute's API or CLI — no manual docs needed."
  },
  "cloudAgents": {
    "title": "Agenți cloud",
    "description": "Gestionați agenți de codare autonomi (Jules, Devin, Codex Cloud)",
    "loading": "Se încarcă sarcini...",
    "aboutTitle": "Despre Cloud Agents",
    "aboutDescription": "Agenții cloud sunt asistenți de codare AI la distanță care pot executa sarcini în mod autonom. Aceștia funcționează diferit față de agenții CLI locali - interacționați cu ei prin API-ul OmniRoute.",
    "howItWorksTitle": "Cum funcționează:",
    "howItWorksDesc": "Creați o sarcină → Agentul analizează și propune un plan → Dvs. aprobați → Agentul execută → Rezultate returnate",
    "newTaskTitle": "Creați o sarcină nouă",
    "newTaskDescription": "Începeți o nouă sarcină cu un agent cloud",
    "selectAgent": "Selectați Agent",
    "taskDescription": "Descrierea sarcinii",
    "taskDescriptionPlaceholder": "Descrieți ce doriți să facă agentul...",
    "startTask": "Începeți sarcina",
    "tasks": "Sarcini",
    "taskDetail": "Detaliu sarcină",
    "noTasks": "Nicio sarcină încă. Creați unul pentru a începe.",
    "noTasksTitle": "__MISSING__:No tasks yet",
    "noTasksDesc": "__MISSING__:Create your first task to get started.",
    "tasksTab": "__MISSING__:Tasks",
    "agentsTab": "__MISSING__:Agents",
    "settingsTab": "__MISSING__:Settings",
    "agentsEnabled": "__MISSING__:Enabled",
    "agentsDisabled": "__MISSING__:Disabled",
    "filterAllProviders": "__MISSING__:All Providers",
    "filterAll": "__MISSING__:All",
    "autoRefreshing": "__MISSING__:Auto-refreshing",
    "viewPR": "__MISSING__:View Pull Request",
    "connected": "__MISSING__:Connected",
    "notConnected": "__MISSING__:Not connected",
    "configure": "__MISSING__:Configure",
    "settingsTitle": "__MISSING__:Cloud Agent Settings",
    "settingsDesc": "__MISSING__:Configure local preferences for cloud agents.",
    "settingEnableAgents": "__MISSING__:Enable cloud agents",
    "settingEnableAgentsDesc": "__MISSING__:Allow OmniRoute to orchestrate autonomous coding agents.",
    "settingAutoPR": "__MISSING__:Auto-create PR",
    "settingAutoPRDesc": "__MISSING__:When a task is completed, automatically create a Pull Request with the changes.",
    "settingRequireApproval": "__MISSING__:Require plan approval",
    "settingRequireApprovalDesc": "__MISSING__:Always wait for manual approval before an agent executes a proposed plan.",
    "untitledTask": "Sarcină fără titlu",
    "created": "Creat",
    "conversation": "Conversație",
    "result": "Rezultat",
    "error": "Eroare",
    "planReady": "Plan gata pentru aprobare",
    "approvePlan": "Aprobați planul",
    "rejectPlan": "Respinge & Anulează",
    "sendMessagePlaceholder": "Trimite un mesaj agentului...",
    "cancel": "Anulează",
    "delete": "Ștergeți",
    "selectTaskPrompt": "Selectați o sarcină pentru a vedea detaliile",
    "statusPending": "În așteptare",
    "statusRunning": "Alergarea",
    "statusWaitingApproval": "Se așteaptă aprobarea",
    "statusCompleted": "Terminat",
    "statusFailed": "A eșuat",
    "statusCancelled": "Anulat",
    "repositoryName": "Numele depozitului",
    "repositoryUrl": "Adresa URL a depozitului",
    "branch": "Ramura"
  },
  "templateNames": {
    "simple-chat": "Chat simplu",
    "streaming": "Streaming",
    "system-prompt": "Prompt de sistem",
    "thinking": "Gândirea",
    "tool-calling": "Apelarea instrumentului",
    "multi-turn": "Multi-turn",
    "vision": "Viziunea",
    "schema-coercion": "Schema Coerciție"
  },
  "templateDescriptions": {
    "simple-chat": "Șablon de chat de bază cu mesaj de sistem",
    "streaming": "Șablon pentru răspunsuri în flux",
    "system-prompt": "Șablon cu prompt de sistem personalizat",
    "thinking": "Șablon cu buget de raționament/gândire",
    "tool-calling": "Șablon pentru apelarea instrumentului/funcției",
    "multi-turn": "Șablon pentru conversații în mai multe rânduri",
    "vision": "Șablon multimodal cu intrare de imagine",
    "schema-coercion": "Implementarea schemei de ieșire structurată/JSON"
  },
  "templatePayloads": {
    "simpleChat": {
      "system": "Sunteți un asistent AI util.",
      "userGreeting": "Bună ziua! Cum te pot ajuta azi?"
    },
    "streaming": {
      "prompt": "Scrie o poveste despre"
    },
    "systemPrompt": {
      "question": "Care este sensul vieții?",
      "systemInstruction": "Oferă un răspuns gânditor, filozofic."
    },
    "thinking": {
      "question": "Explicați calculul cuantic"
    },
    "toolCalling": {
      "cityNameDescription": "Numele orașului pentru care să aflați vremea",
      "toolDescription": "Obțineți vremea actuală pentru o locație",
      "userWeather": "Care este vremea în Tokyo?"
    },
    "multiTurn": {
      "system": "Ești un asistent util.",
      "assistantExample": "Aș fi bucuros să te ajut cu asta.",
      "userInitial": "Am nevoie de ajutor cu",
      "userFollowUp": "Puteți detalia asta?"
    }
  },
  "cache": {
    "title": "Cache Management",
    "description": "Monitor and manage semantic response cache, hit rates, and token savings.",
    "refresh": "Refresh",
    "clearAll": "Clear All",
    "memoryEntries": "Memory Entries",
    "memoryEntriesSub": "In-memory LRU",
    "dbEntries": "DB Entries",
    "dbEntriesSub": "Persisted (SQLite)",
    "cacheHits": "Cache Hits",
    "cacheHitsSub": "of {total} total",
    "tokensSaved": "Tokens Saved",
    "tokensSavedSub": "Estimated from hits",
    "hitRate": "Hit Rate",
    "performance": "Cache Performance",
    "autoRefresh": "Auto-refreshes every {seconds}s",
    "hits": "Hits",
    "misses": "Misses",
    "total": "Total",
    "behavior": "Cache Behavior",
    "behaviorDeterministic": "Only non-streaming requests with temperature=0 are cached.",
    "behaviorBypass": "Bypass with header {header}.",
    "behaviorTwoTier": "Two-tier storage: in-memory LRU (fast) + SQLite (persistent across restarts).",
    "behaviorTtl": "Default TTL: 30 minutes. Configure via {envVar}.",
    "idempotency": "Idempotency Layer",
    "activeDedupKeys": "Active Dedup Keys",
    "dedupWindow": "Dedup Window",
    "clearSuccess": "Cache cleared. {count} expired entries removed.",
    "clearError": "Failed to clear cache.",
    "unavailable": "Cache unavailable",
    "unavailableDesc": "Could not fetch cache statistics. Make sure the server is running.",
    "loadingCacheAria": "__MISSING__:Loading cache",
    "promptCache": "Prompt Cache (Provider-Side)",
    "semanticCache": "Semantic Cache",
    "promptCacheSectionDesc": "Shows provider-side prompt caching activity from usage history so you can see where cache control is active and how much input reuse you are getting.",
    "promptTrendDesc": "Hourly request volume, cache coverage, and cache read volume across the last 24 hours.",
    "cachedRequests": "Cached Requests",
    "cachedRequests24h": "Cached Requests (24h)",
    "cacheHitRate": "Cache Hit Rate",
    "cacheRate": "Cache Rate",
    "cacheRateDesc": "of total requests",
    "cachedTokens": "Cached Tokens",
    "cacheCreationTokens": "Cache Creation Tokens",
    "cacheMetrics": "Prompt Cache Metrics",
    "withCacheControl": "With Cache Control",
    "cachedTokensRead": "Cached Tokens (Read)",
    "cacheCreationWrite": "Cache Creation (Write)",
    "cacheReuseRatio": "Cache Reuse Ratio",
    "cacheReuseRatioDesc": "Cached tokens / Total input tokens",
    "estCostSaved": "Est. Cost Saved",
    "lastUpdated": "Last updated",
    "hoursTracked": "hours tracked",
    "busiestHour": "Busiest Hour",
    "peakCacheRate": "Peak Cache Rate",
    "trendHour": "Hour",
    "activityVolume": "Activity",
    "requestsShort": "reqs",
    "inputShort": "In",
    "cachedShort": "Cached",
    "writeShort": "Write",
    "resetting": "Resetting...",
    "resetMetrics": "Reset Metrics",
    "byProvider": "Breakdown by Provider",
    "providerCacheRateDesc": "Each provider exposes total input tokens, cache read tokens, and cache write tokens so you can verify the reuse ratio against raw totals.",
    "provider": "Provider",
    "requests": "Requests",
    "inputTokens": "Input Tokens",
    "cachedTokensCol": "Cached",
    "cacheCreation": "Creation",
    "trend24h": "Cache Trend (24h)",
    "peakCached": "Peak cached",
    "cached": "Cached",
    "overview": "Overview",
    "tableProvider": "__MISSING__:Provider",
    "tableModel": "__MISSING__:Model",
    "performanceTitle": "__MISSING__:Performance",
    "semanticCacheSectionDesc": "OmniRoute's own deterministic response cache. When enabled, repeated non-streaming temperature=0 requests can be served locally without hitting the upstream provider.",
    "semanticCacheDisabledDesc": "Semantic cache is disabled. OmniRoute will skip local response reuse until you turn it back on in Settings.",
    "semanticEntriesDesc": "Persisted semantic cache records currently stored in SQLite. Provider-side prompt cache activity is not listed here.",
    "searchEntries": "Search entries...",
    "search": "Search",
    "loading": "Loading...",
    "entriesLoadError": "Failed to load semantic cache entries.",
    "noEntries": "No cache entries found",
    "noPromptCacheData": "No provider-side prompt cache activity has been recorded yet.",
    "noTrendData": "No prompt cache activity has been recorded over the last 24 hours.",
    "signature": "Signature",
    "model": "Model",
    "created": "Created",
    "expires": "Expires",
    "actions": "Actions",
    "deduplicatedRequests": "Deduplicated Requests",
    "savedCalls": "Saved API Calls",
    "totalProcessed": "Total Requests Processed",
    "disabled": "Disabled",
    "totalRequests": "Total Requests",
    "reasoningCache": "Reluarea raționamentului",
    "reasoningCacheDesc": "Păstrează gândirea modelului pentru fluxurile de apelare a sculelor cu mai multe ture",
    "reasoningEntries": "Intrări active",
    "reasoningReplayRate": "Rata de reluare",
    "reasoningReplays": "Total reluări",
    "reasoningCharsCached": "Caractere stocate în cache",
    "reasoningMisses": "Cache Misses",
    "reasoningByProvider": "Prin Furnizor",
    "reasoningByModel": "După model",
    "reasoningRecentEntries": "Intrări recente",
    "reasoningToolCallId": "ID de apelare instrument",
    "reasoningChars": "Personaje",
    "reasoningAge": "Vârsta",
    "reasoningView": "Vedeți",
    "reasoningDetail": "Conținut de raționament",
    "reasoningBehavior": "Comportament",
    "reasoningBehaviorCapture": "Captează raționamentul_conținut din răspunsurile în flux",
    "reasoningBehaviorReplay": "Se reinjectează la rândul următor când clientul o omite",
    "reasoningBehaviorFallback": "Memoria mai întâi cu SQLite fallback pentru recuperarea în caz de accident",
    "reasoningBehaviorTtl": "TTL: 2 ore | Înregistrări maxime: 2.000 (memorie)",
    "reasoningBehaviorModels": "Suportat: DeepSeek, Kimi, Qwen-Thinking, GLM",
    "reasoningClearAll": "Ștergeți memoria cache de raționament",
    "reasoningClearSuccess": "S-au șters {count} intrările cache de raționament",
    "reasoningClearError": "Nu s-a șters memoria cache a raționamentului",
    "reasoningNoData": "Nicio intrare de raționament nu a fost încă stocată în cache. Intrările apar atunci când modelele de gândire folosesc apelarea instrumentelor.",
    "cachePerformanceRetry": "Reîncercați",
    "cachePerformanceHitRate": "Rata de lovituri",
    "cachePerformanceAvgLatency": "Latență medie (ms)",
    "cachePerformanceP95Latency": "p95 Latență (ms)",
    "retry": "Reîncercați",
    "reasoningAvgChars": "Caractere medie",
    "tableShare": "__MISSING__:Share",
    "justNow": "__MISSING__:just now",
    "minutesAgo": "__MISSING__:{minutes}m ago",
    "hoursAgo": "__MISSING__:{hours}h ago",
    "daysAgo": "__MISSING__:{days}d ago",
    "entries": "Entries"
  },
  "proxyConfigModal": {
    "levelGlobal": "Global",
    "levelProvider": "Furnizor",
    "levelCombo": "Combo",
    "levelKey": "cheie",
    "levelDirect": "Direct (fără proxy)",
    "titleGlobal": "Configurație globală proxy",
    "titleLevel": "{level} Proxy — {label}",
    "loading": "Se încarcă configurația proxy...",
    "inheritingFrom": "Mostenind de la",
    "source": "Sursa",
    "savedProxy": "Proxy salvat",
    "custom": "Personalizat",
    "selectSavedProxyPlaceholder": "Selectați proxy salvat...",
    "proxyType": "Tip proxy",
    "host": "Gazdă",
    "hostPlaceholder": "1.2.3.4 sau proxy.example.com",
    "port": "Port",
    "authOptional": "Autentificare (opțional)",
    "username": "Nume de utilizator",
    "usernamePlaceholder": "Nume de utilizator",
    "password": "Parolă",
    "passwordPlaceholder": "Parolă",
    "connected": "Conectat",
    "ip": "IP:",
    "connectionFailed": "Conexiunea a eșuat",
    "testConnection": "Testați conexiunea",
    "clear": "Clar",
    "cancel": "Anulează",
    "save": "Salvați",
    "errorSelectSavedProxy": "Vă rugăm să selectați mai întâi un proxy salvat.",
    "errorSelectProxyFirst": "Vă rugăm să selectați mai întâi un proxy.",
    "errorProxyNotFound": "Proxy selectat nu a fost găsit.",
    "errorClearSavedProxy": "Nu s-a putut șterge proxy-ul salvat",
    "errorSaveProxy": "Nu s-a putut salva configurația proxy",
    "errorClearProxy": "Nu s-a putut șterge configurația proxy",
    "errorSocks5Hidden": "SOCKS5 este configurat, dar ascuns deoarece NEXT_PUBLIC_ENABLE_SOCKS5_PROXY=false."
  },
  "oauthModal": {
    "title": "Conectați {providerName}",
    "waiting": "În așteptarea autorizației",
    "completeAuthInPopup": "Autorizare completă în pop-up.",
    "popupClosedHint": "Dacă fereastra pop-up s-a închis fără redirecționare înapoi (de exemplu, Qoder), acest dialog va comuta automat la modul de introducere manuală a adresei URL.",
    "popupBlocked": "Popup blocat? Introduceți manual URL-ul",
    "deviceCodeVisitUrl": "Accesați adresa URL de mai jos și introduceți codul:",
    "deviceCodeVerificationUrl": "Adresa URL de verificare",
    "deviceCodeYourCode": "Codul dvs",
    "deviceCodeWaiting": "Se așteaptă autorizația...",
    "googleOAuthWarning": "Acces de la distanță + Google OAuth: acreditările implicite acceptă numai redirecționări către <code>localhost</code>. După autorizare, browserul dvs. va încerca să deschidă <code>localhost</code> — copiați acea adresă URL completă și inserați-o mai jos. Pentru o utilizare completă de la distanță fără acest pas manual, <a>configurați propriile acreditări OAuth</a>.",
    "remoteAccessInfo": "Acces de la distanță: deoarece accesați OmniRoute de la distanță, după autorizare veți vedea o pagină de eroare (localhost nu a fost găsită). Acest lucru este normal - doar copiați adresa URL completă din bara de adrese a browserului și lipiți-o mai jos.",
    "step1OpenUrl": "Pasul 1: deschideți această adresă URL în browser",
    "copy": "Copiere",
    "step2PasteCallback": "Pasul 2: inserați aici adresa URL de apel invers sau codul de autorizare",
    "step2Hint": "După autorizare, inserați adresa URL completă de apel invers. Pentru Claude Code și Cline, puteți, de asemenea, să lipiți direct codul de autentificare, de ex. <code>cod#state</code>.",
    "connect": "Conectați-vă",
    "cancel": "Anulează",
    "success": "Conexiune reușită!",
    "successMessage": "Contul dvs. {providerName} a fost conectat.",
    "done": "Gata",
    "error": "Conexiunea a eșuat",
    "tryAgain": "Încercați din nou"
  },
  "cursorAuthModal": {
    "title": "Conectați Cursor IDE",
    "autoDetecting": "Se detectează automat jetoanele...",
    "readingFromCursor": "Citirea din Cursor IDE sau cursor-agent",
    "tokensAutoDetected": "Jetoanele au fost detectate automat cu succes din Cursor IDE!",
    "cursorNotDetected": "IDE-ul cursorului nu a fost detectat. Vă rugăm să lipiți manual indicativul.",
    "accessToken": "Token de acces",
    "required": "*",
    "accessTokenPlaceholder": "Indicatorul de acces se va completa automat...",
    "machineId": "ID mașină",
    "optional": "(optional)",
    "machineIdPlaceholder": "ID-ul mașinii se va completa automat...",
    "importing": "Se importă...",
    "importToken": "Import Token",
    "cancel": "Anulează",
    "errorAutoDetect": "Nu se pot detecta automat jetoanele",
    "errorAutoDetectFailed": "Jetoanele de detectare automată nu au reușit",
    "errorEnterToken": "Vă rugăm să introduceți simbolul de acces",
    "errorImportFailed": "Importul nu a reușit"
  },
  "pricingModal": {
    "title": "Configurarea prețurilor",
    "loading": "Se încarcă datele de preț...",
    "pricingRatesFormat": "Format tarife de preț",
    "ratesDescription": "Toate tarifele sunt în <strong>dolari per milion de jetoane</strong> ($/1M jetoane). Exemplu: Rata de intrare de 2,50 înseamnă 2,50 USD per 1.000.000 de jetoane de intrare.",
    "model": "Model",
    "input": "Intrare",
    "output": "Ieșire",
    "cached": "În cache",
    "reasoning": "Raționamentul",
    "cacheCreation": "Creare cache",
    "noPricingData": "Nu sunt disponibile date de preț",
    "resetToDefaults": "Resetați la valorile implicite",
    "cancel": "Anulează",
    "saving": "Se salvează...",
    "saveChanges": "Salvați modificările",
    "resetConfirm": "Resetați toate prețurile la valorile implicite? Acest lucru nu poate fi anulat.",
    "errorSaveFailed": "Nu s-a salvat prețul",
    "errorResetFailed": "Nu s-a resetat prețul"
  },
  "proxyRegistry": {
    "title": "Title",
    "description": "Description",
    "importLegacy": "Import Legacy",
    "bulkAssign": "Bulk Assign",
    "addProxy": "Add Proxy",
    "loading": "Loading",
    "noProxies": "No Proxies",
    "tableName": "Table Name",
    "tableEndpoint": "Table Endpoint",
    "tableStatus": "Table Status",
    "tableHealth": "Table Health",
    "tableUsage": "Table Usage",
    "tableActions": "Table Actions",
    "test": "Test",
    "edit": "Edit",
    "delete": "Delete",
    "modalCreateTitle": "Modal Create Title",
    "modalEditTitle": "Modal Edit Title",
    "labelName": "Label Name",
    "labelType": "Tip",
    "labelHost": "Gazdă",
    "labelPort": "Port",
    "labelUsername": "Nume de utilizator",
    "labelPassword": "Parolă",
    "labelRegion": "Regiunea",
    "labelStatus": "Stare",
    "labelNotes": "Note",
    "usernamePlaceholderEdit": "Lăsați necompletat pentru a păstra numele de utilizator actual",
    "passwordPlaceholderEdit": "Lăsați necompletat pentru a păstra parola curentă",
    "statusActive": "Activ",
    "statusInactive": "Inactiv",
    "cancel": "Anulează",
    "save": "Salvați",
    "bulkModalTitle": "Atribuire proxy în bloc",
    "bulkLabelScope": "Domeniul de aplicare",
    "bulkLabelProxy": "Proxy",
    "bulkClearAssignment": "(Ștergeți sarcina)",
    "bulkLabelScopeIds": "ID-urile domeniului (separate prin virgulă sau linie nouă)",
    "bulkScopeIdsPlaceholder": "furnizor-openai,furnizor-antropic",
    "bulkApply": "Aplicați",
    "labelScope": "__MISSING__:Scope",
    "labelProxy": "__MISSING__:Proxy",
    "scopeGlobal": "__MISSING__:global",
    "scopeProvider": "__MISSING__:provider",
    "scopeAccount": "__MISSING__:account",
    "scopeCombo": "__MISSING__:combo",
    "bulkImportErrorMissingName": "Lipsește NAME",
    "bulkImportErrorMissingHost": "Lipsește HOST",
    "bulkImportErrorInvalidPort": "PORT nevalid (trebuie să fie 1-65535)",
    "bulkImportErrorInvalidType": "TYPE nevalid (utilizați http, https sau socks5)",
    "bulkImportErrorInvalidStatus": "STARE nevalidă (utilizați activ sau inactiv)",
    "errorLoadFailed": "Error Load Failed",
    "errorNameHostRequired": "Error Name Host Required",
    "errorSaveFailed": "Error Save Failed",
    "errorDeleteFailed": "Error Delete Failed",
    "errorForceDeleteConfirm": "Error Force Delete Confirm",
    "errorMigrateFailed": "Error Migrate Failed",
    "errorBulkFailed": "Error Bulk Failed",
    "success": "✓",
    "failure": "✗",
    "failed": "Failed",
    "successRate": "{rate}% succes",
    "avgLatency": "{latency}ms în medie",
    "assignmentsCount": "{count} sarcini",
    "noData": "No Data",
    "testSuccess": "✓ {ip}",
    "testLatency": "{latency}ms",
    "testFailure": "✗ {error}",
    "bulkImport": "Import în vrac",
    "bulkImportTitle": "Importați proxy în bloc",
    "bulkImportDescription": "Lipiți profiluri proxy folosind formatul delimitat prin conducte. Un proxy pe linie. Proxy-urile existente (aceeași gazdă + port) vor fi actualizate.",
    "bulkImportParse": "Analizează",
    "bulkImportImport": "Importați {count} proxy",
    "bulkImportImporting": "Se importă...",
    "bulkImportParsed": "{count} proxy-uri analizate",
    "bulkImportSkipped": "{count} linii sărite",
    "bulkImportParseErrors": "{count} erori",
    "bulkImportNoValidEntries": "Nu s-au găsit intrări valide. Verificați formatul și încercați din nou.",
    "bulkImportSuccess": "Import finalizat: {created} creat, {updated} actualizat, {failed} eșuat",
    "bulkImportErrorLine": "Linia {line}: {reason}",
    "bulkImportMaxExceeded": "Maximum 100 de proxy per import",
    "bulkImportPreview": "Previzualizare",
    "clearAssignment": "(sarcina clară)",
    "bulkProxyAssignment": "Atribuire proxy în bloc"
  },
  "playground": {
    "title": "Title",
    "description": "Description",
    "endpoint": "Endpoint",
    "provider": "Provider",
    "model": "Model",
    "accountKey": "Account Key",
    "autoAccounts": "Auto ({count} conturi)",
    "noAccounts": "No Accounts",
    "send": "Send",
    "cancel": "Cancel",
    "audioFile": "Audio File",
    "attachImages": "Attach Images",
    "multipartFormData": "Multipart Form Data",
    "upToImages": "Up To Images",
    "selectAudioFile": "Select Audio File",
    "clearAll": "Clear All",
    "request": "Request",
    "response": "Response",
    "transcription": "Transcription",
    "copy": "Copy",
    "resetToDefault": "Reset To Default",
    "downloadAudio": "Download Audio",
    "copyText": "Copy Text",
    "transcriptionHint": "Transcription Hint",
    "imagesGenerated": "S-au generat {count} imagini",
    "generatedImage": "Imagine generată {index}",
    "save": "Save",
    "endpointOptions": {
      "chat": "Chat",
      "responses": "Responses",
      "images": "Images",
      "embeddings": "Embeddings",
      "speech": "Speech",
      "transcription": "Transcription",
      "video": "Video",
      "music": "Music",
      "rerank": "Rerank",
      "search": "Search"
    },
    "conversationalChat": "Chat conversațional",
    "clearChat": "Ștergeți chatul",
    "typeMessagePlaceholder": "Tastați un mesaj... (Shift+Enter pentru linia nouă)",
    "tabChat": "Chat",
    "tabCompare": "Compare",
    "tabApi": "API",
    "tabBuild": "Build",
    "configPane": "Config",
    "systemPrompt": "System prompt",
    "systemPromptPlaceholder": "You are a helpful assistant.",
    "modelPlaceholder": "e.g. openai/gpt-4o",
    "endpointLabel": "Endpoint",
    "parametersLabel": "Parameters",
    "collapseConfig": "Collapse config pane",
    "expandConfig": "Expand config pane",
    "temperature": "Temperature",
    "maxTokens": "Max tokens",
    "topP": "Top-p",
    "presencePenalty": "Presence penalty",
    "frequencyPenalty": "Frequency penalty",
    "seedPlaceholder": "Random (leave empty)",
    "presetsLabel": "Presets",
    "loadPreset": "Load preset",
    "savePreset": "Save preset",
    "noPresets": "No presets",
    "presetNamePlaceholder": "Preset name",
    "savingPreset": "Saving…",
    "nameRequired": "Name is required",
    "failedToSavePreset": "Failed to save preset",
    "improvePrompt": "Improve prompt",
    "improvingPrompt": "Improving…",
    "improvePromptTitle": "Improve your prompt with AI",
    "setModelFirst": "Set a model first",
    "improveQuotaWarning": "This will consume quota from the model configured in Config.",
    "improveConfirm": "Improve",
    "exportCode": "Export code",
    "exportCodeTitle": "Export Code",
    "noStateToExport": "No playground state available to export.",
    "copyCode": "Copy",
    "copiedCode": "Copied!",
    "addModel": "+ Add model",
    "runAll": "Run all",
    "cancelAll": "Cancel all",
    "maxColumnsReached": "Maximum {max} columns",
    "modelPlaceholderCompare": "Model (Cmd+K)…",
    "ttft": "TTFT",
    "tps": "TPS",
    "metricsDisclaimer": "client-side estimate",
    "tokensLabel": "Tokens",
    "costLabel": "Cost",
    "costEstimated": "(estimated)",
    "toolsLabel": "Tools",
    "addTool": "Add tool",
    "toolNamePlaceholder": "Function name",
    "toolDescPlaceholder": "Description (optional)",
    "toolParamsInvalid": "Parameters must be valid JSON",
    "structuredOutputLabel": "Structured Output",
    "enableJsonMode": "Enable JSON mode",
    "disableJsonMode": "Disable JSON mode",
    "invalidJson": "Invalid JSON",
    "running": "Running…",
    "runLabel": "Run",
    "enterToolResult": "Enter tool result…"
  },
  "miniPlayground": {
    "endpoint": "__MISSING__:Endpoint",
    "apiKey": "__MISSING__:API Key",
    "model": "__MISSING__:Model",
    "voice": "__MISSING__:Voice",
    "speed": "__MISSING__:Speed",
    "input": "__MISSING__:Input",
    "url": "__MISSING__:URL",
    "format": "__MISSING__:Format",
    "depth": "__MISSING__:Depth",
    "copyCurl": "__MISSING__:Copy cURL",
    "copied": "__MISSING__:Copied!",
    "run": "__MISSING__:Run",
    "running": "__MISSING__:Running...",
    "response": "__MISSING__:Response",
    "tunnel": "__MISSING__:Tunnel",
    "send": "__MISSING__:Send",
    "selectKey": "__MISSING__:Select key",
    "testLabel": "__MISSING__:Test",
    "expandTest": "__MISSING__:Expand test",
    "collapseTest": "__MISSING__:Collapse test",
    "revealKey": "__MISSING__:Reveal key",
    "hideKey": "__MISSING__:Hide key",
    "download": "__MISSING__:Download",
    "play": "__MISSING__:Play",
    "query": "__MISSING__:Query",
    "numResults": "__MISSING__:Max results",
    "prompt": "__MISSING__:Prompt",
    "size": "__MISSING__:Size",
    "duration": "__MISSING__:Duration",
    "question": "__MISSING__:Question",
    "audioFile": "__MISSING__:Audio file",
    "noKeysFound": "__MISSING__:No API keys found. Add one in the Keys section.",
    "exampleLabel": "__MISSING__:Example",
    "latency": "__MISSING__:{ms}ms",
    "statsLine": "__MISSING__:{ms}ms · {tokensIn} in / {tokensOut} out tokens"
  },
  "requestLogger": {
    "recording": "Recording",
    "paused": "Paused",
    "pipelineLogsOn": "Pipeline logs on",
    "pipelineLogsOff": "Pipeline logs off",
    "updatingPipelineLogs": "Updating pipeline logs...",
    "updatePipelineFailed": "Failed to update pipeline logging",
    "capturePipeline": "Capture pipeline payloads for new requests",
    "searchPlaceholder": "Search models, providers, accounts, API keys, combos...",
    "allProviders": "All providers",
    "allModels": "All models",
    "allAccounts": "All accounts",
    "allApiKeys": "All API keys",
    "total": "Total",
    "ok": "Success",
    "err": "Error",
    "combo": "Combo",
    "keys": "Keys",
    "shown": "Shown",
    "sortNewest": "Newest",
    "sortOldest": "Oldest",
    "sortTokensDesc": "Tokens ↓",
    "sortTokensAsc": "Tokens ↑",
    "sortDurationDesc": "Duration ↓",
    "sortDurationAsc": "Duration ↑",
    "sortStatusDesc": "Status ↓",
    "sortStatusAsc": "Status ↑",
    "sortModelAsc": "Model A-Z",
    "sortModelDesc": "Model Z-A",
    "sortLogs": "Sort logs",
    "refresh": "Refresh",
    "columnsLabel": "Columns",
    "cacheSem": "SEM",
    "cacheUp": "UP",
    "semantic": "Semantic",
    "upstream": "Upstream",
    "semanticCacheHit": "Semantic cache hit (served by OmniRoute)",
    "upstreamResponse": "Upstream provider response",
    "noApiKey": "No API key",
    "requestedRoutedTitle": "Requested {requested}, routed as {routed}",
    "statusFilters": {
      "all": "All",
      "error": "Errors",
      "success": "Success",
      "combo": "Combo"
    },
    "columns": {
      "status": "Status",
      "cacheSource": "Cache Source",
      "model": "Model",
      "requested": "Requested",
      "provider": "Provider",
      "protocol": "Request Protocol",
      "account": "Account",
      "apiKey": "API Key",
      "combo": "Combo",
      "tokens": "Tokens",
      "compressed": "Compresie",
      "tps": "TPS",
      "duration": "Duration",
      "time": "Time"
    },
    "loadingLogs": "Loading logs...",
    "noLogs": "No logs yet. Make some API calls to see them here.",
    "noMatchingLogs": "No logs matching current filters.",
    "callLogsInfo": "Call logs are also saved as JSON files to {dataDir} and rotated based on {retentionDays} and {maxEntries}."
  },
  "proxyLogger": {
    "filterAll": "All",
    "filterErrors": "Errors",
    "filterSuccess": "Success",
    "filterTimeout": "Timeout",
    "colStatus": "Status",
    "colProxy": "Proxy",
    "colTls": "TLS",
    "colType": "Type",
    "colLevel": "Level",
    "colProvider": "Provider",
    "colTarget": "Target",
    "colLatency": "Latency",
    "colClientIp": "Client IP",
    "colTime": "Time",
    "recording": "Recording",
    "paused": "Paused",
    "searchPlaceholder": "Search host, provider, target, IP...",
    "allTypes": "All Types",
    "allLevels": "All Levels",
    "allProviders": "All Providers",
    "total": "total",
    "ok": "OK",
    "err": "ERR",
    "timeoutShort": "TMO",
    "direct": "direct",
    "newest": "Newest",
    "oldest": "Oldest",
    "latencyDesc": "Latency ↓",
    "latencyAsc": "Latency ↑",
    "refresh": "Refresh",
    "columns": "Columns",
    "loadingProxyLogs": "Loading proxy logs...",
    "noProxyLogs": "No proxy logs yet. Configure proxies and make API calls to see them here.",
    "noMatchingLogs": "No logs match the current filters.",
    "tlsFingerprint": "Chrome 124 TLS Fingerprint"
  },
  "endpointOptions": {
    "speech": "Speech",
    "search": "Search",
    "images": "Images",
    "chat": "Chat",
    "music": "Music",
    "responses": "Responses",
    "rerank": "Rerank",
    "video": "Video",
    "embeddings": "Embeddings",
    "transcription": "Transcription"
  },
  "toolDescriptions": {
    "cline": "Cline",
    "openclaw": "Openclaw",
    "droid": "Droid",
    "codex": "Codex",
    "claude": "Claude",
    "kilo": "Kilo"
  },
  "runtime": {
    "title": "Runtime",
    "description": "Realtime observability — 3-layer resilience + sessions + quota alerts",
    "pause": "Pause",
    "resume": "Resume",
    "refreshNow": "Refresh now",
    "kpiSessions": "Sessions",
    "kpiCircuits": "Circuits",
    "kpiCooldowns": "Cooldowns",
    "kpiLockouts": "Lockouts",
    "hintStickyBound": "{count} sticky-bound",
    "hintRecovering": "{count} recovering",
    "hintAllHealthy": "all healthy",
    "hintOpen": "open",
    "hintConnsCooling": "connections cooling",
    "hintModelsBlocked": "models blocked",
    "resilienceTitle": "3-Layer Resilience",
    "resilienceSubtitle": "Mirrors the documented resilience model",
    "providersHealthy": "{percent}% providers healthy",
    "layer": "Layer {n}",
    "layer1Title": "Provider Circuit Breakers",
    "layer1Desc": "Stop traffic to providers failing at the upstream level",
    "layer2Title": "Connection Cooldowns",
    "layer2Desc": "Skip one bad account/key; other connections keep serving",
    "layer3Title": "Model Lockouts",
    "layer3Desc": "Per-model rate-limit locks; same connection still serves other models",
    "badgeAffectedOf": "{affected} of {total} affected",
    "badgeCooling": "{count} cooling",
    "badgeLocked": "{count} locked",
    "emptyCircuits": "No circuit breakers active yet",
    "emptyCooldowns": "No connection cooldowns active",
    "emptyLockouts": "No model lockouts",
    "moreCooldowns": "+{count} more cooldowns",
    "moreLockouts": "+{count} more lockouts",
    "feedTitle": "Live Feed",
    "feedSubtitle": "Last {count} events",
    "feedFilterAll": "All",
    "feedFilterCircuits": "Circuits",
    "feedFilterCooldowns": "Cooldowns",
    "feedFilterLockouts": "Lockouts",
    "feedFilterSessions": "Sessions",
    "feedFilterQuotas": "Quotas",
    "feedClear": "Clear",
    "feedEmptyWaiting": "Waiting for events... (polled every 5s)",
    "feedEmptyFiltered": "No events match this filter",
    "sessionsTitle": "Active Sessions",
    "sessionsSubtitle": "Sticky-bound request fingerprints (live)",
    "sessionsActive": "{count} active",
    "sessionsEmptyTitle": "No active sessions",
    "sessionsEmptyHint": "Sessions appear as requests flow through the proxy",
    "tblSession": "Session",
    "tblAge": "Age",
    "tblIdle": "Idle",
    "tblReqs": "Reqs",
    "tblBoundTo": "Bound to",
    "topApiKeys": "Top API keys",
    "quotaMonitorsTitle": "Quota Monitors",
    "quotaMonitorsSubtitle": "Live quota state per account window",
    "openQuota": "Open Quota",
    "allQuotasHealthy": "All quotas healthy",
    "statusExhausted": "EXHAUSTED",
    "statusAlerting": "ALERTING",
    "statusError": "ERROR",
    "moreSuffix": "+{count} more"
  },
  "quotaShare": {
    "title": "Quota Sharing",
    "description": "Share provider quotas across API keys with % limits",
    "newPool": "New pool",
    "betaTitle": "Beta — UI preview.",
    "betaDescription": "Configuration is saved in localStorage (not yet persisted on the server). Per-request cap enforcement is not yet wired into the proxy pipeline. This screen lets you design and visualize the quota split; real enforcement will land in a future iteration with DB persistence and upstream call interception.",
    "kpiActivePools": "Active pools",
    "kpiKeysAllocated": "Keys allocated",
    "kpiAvgUnallocated": "Avg unallocated",
    "kpiProvidersWithQuota": "Providers w/ quota",
    "emptyTitle": "No pools configured",
    "emptyDescription": "Create a pool to assign API keys to share a provider's quota window with % allocations.",
    "loading": "Loading…",
    "removePool": "Remove pool",
    "removeConfirm": "Remove this pool?",
    "pool": "Pool",
    "used": "used",
    "allocationsCount": "Allocations ({count})",
    "allocatedFree": "{allocated}% allocated · {free}% free",
    "noAllocations": "No keys allocated yet",
    "capLabel": "cap {value}",
    "notTrackedYet": "(not tracked yet)",
    "policy": "Policy",
    "policyHard": "hard",
    "policySoft": "soft",
    "policyBurst": "burst",
    "policyHardHint": "Block when key exhausts allocation",
    "policySoftHint": "Allow overflow, alert only",
    "policyBurstHint": "Allow burst into free pool",
    "editAllocations": "Edit allocations",
    "newPoolTitle": "New quota pool",
    "providerConnection": "Provider connection (account)",
    "selectConnection": "Select a connection…",
    "noEligibleConnections": "No connections with quota data. Refresh from /dashboard/quota first.",
    "quotaWindow": "Quota window",
    "selectWindow": "Select a window…",
    "alreadyUsedSuffix": "(already used)",
    "windowReset": "Reset",
    "duplicatePoolError": "A pool for this connection + window already exists",
    "cancel": "Cancel",
    "createPool": "Create pool",
    "editTitle": "Edit allocations",
    "noKeysAdded": "No keys allocated. Add one below.",
    "totalLabel": "Total: {percent}%",
    "totalExceeded": "⚠ exceeds 100%",
    "addKey": "+ Add key…",
    "equalSplit": "Equal split",
    "save": "Save allocations",
    "betaPreviewLabel": "Beta — previzualizare UI.",
    "betaConfigSavedPrefix": "Configurația este salvată în",
    "betaConfigSavedSuffix": "(nu a persistat încă pe server). Aplicarea plafonului la cerere nu este încă conectată în conducta proxy. Acest ecran vă permite să proiectați și să vizualizați împărțirea cotei; aplicarea reală va ateriza într-o iterație viitoare cu persistență DB și interceptarea apelului în amonte.",
    "policyLabel": "Politica:",
    "resetIn": "resetează",
    "quotaTotal": "total"
  },
  "plugins": {
    "title": "Plugins",
    "description": "Install and manage plugins for extending OmniRoute functionality",
    "loading": "Loading plugins...",
    "scanning": "Scanning...",
    "scanForPlugins": "Scan for Plugins",
    "noPlugins": "No plugins installed",
    "noPluginsDescription": "Place plugin directories in ~/.omniroute/plugins/ and click Scan.",
    "activate": "Activate",
    "deactivate": "Deactivate",
    "uninstall": "Uninstall",
    "uninstallConfirm": "Uninstall plugin \"{name}\"?",
    "pluginScanComplete": "Plugin scan complete",
    "pluginScanFailed": "Plugin scan failed",
    "activated": "{name} activated",
    "deactivated": "{name} deactivated",
    "activateFailed": "Failed to activate {name}",
    "deactivateFailed": "Failed to deactivate {name}",
    "uninstalled": "{name} uninstalled",
    "uninstallFailed": "Failed to uninstall {name}",
    "configure": "Configure: {name}",
    "configurePlugin": "Configure",
    "noConfigSettings": "This plugin has no configurable settings.",
    "saving": "Saving...",
    "saveConfiguration": "Save Configuration",
    "configurationSaved": "Configuration saved",
    "saveConfigurationFailed": "Failed to save configuration",
    "pluginNotFound": "Plugin not found",
    "version": "Version",
    "author": "Author",
    "description_label": "Description",
    "status": "Status",
    "enabled": "Enabled",
    "disabled": "Disabled",
    "hooks": "Hooks"
  }
}
