import type { Dict } from '../types';
import { en } from './en';

export const de: Dict = {
  ...en,
  'homeHero.addMenu': 'Kontext hinzufügen',
  'homeHero.addPlugin': 'Plugin hinzufügen',
  'homeHero.addConnectors': 'Konnektoren hinzufügen',
  'homeHero.addMcp': 'MCP-Server hinzufügen',
  'homeHero.noPlugins': 'Keine installierten Plugins',
  'homeHero.noMcp': 'Keine MCP-Server',
  'homeHero.noConnectors': 'Keine verbundenen Konnektoren',
  'chat.amrCard.switchTitle': 'Modellaufruf fehlgeschlagen — dieser Lauf ist pausiert',
  'chat.amrCard.switchBody': 'Wechsle zum offiziellen AMR-Modelldienst von Open Design — kein API-Key-Setup nötig. Nach Anmeldung, Autorisierung und Aufladung wird dieser Lauf automatisch wiederholt.',
  'chat.amrCard.chipOfficial': 'Offizielles Hosting',
  'chat.amrCard.chipNoKey': 'Kein API-Key',
  'chat.amrCard.chipAutoRetry': 'Auto-Wiederholung nach Anmeldung',
  'chat.amrCard.switchCta': 'Zu AMR wechseln und wiederholen',
  'chat.amrError.authMessage': 'Dein AMR-Konto ist noch nicht autorisiert. Autorisiere es, und dieser Lauf wird automatisch wiederholt.',
  'chat.amrError.balanceMessage': 'Dein AMR-Guthaben ist aufgebraucht. Lade auf, um diesen Lauf fortzusetzen.',
  'chat.amrError.authorizeCta': 'Autorisieren und wiederholen',
  'chat.amrError.rechargeCta': 'AMR aufladen',
  'chat.antigravityError.launchTerminalCta': 'Sign in via terminal',
  'chat.antigravityError.launchSwitchModelCta': 'Switch model in terminal',
  'plugins.actions.copyInstallCommand': 'Installationsbefehl kopieren',
  'plugins.actions.copyPluginId': 'Plugin-ID kopieren',
  'plugins.actions.copyReadmeBadge': 'README-Badge kopieren',
  'plugins.actions.openSourceGithub': 'Quelle auf GitHub öffnen',
  'plugins.actions.openSource': 'Quelle öffnen',
  'plugins.actions.openHomepage': 'Homepage öffnen',
  'plugins.actions.openMarketplace': 'Im Marktplatz öffnen',
  'workingDirPicker.title': "Folder",
  'workingDirPicker.homeTitle': "Choose where this project should live",
  'workingDirPicker.processing': "Processing…",
  'workingDirPicker.select': "Choose working directory",
  'workingDirPicker.clearAria': "Clear working directory",
  'workingDirPicker.replaceFailed': "Could not replace working directory",
  'workingDirPicker.unavailable': "Folder picker is unavailable in this build. Run the desktop app to pick a folder.",
  'workingDirPicker.openUnavailable': "Open this project in the desktop app to show the folder.",
  'workingDirPicker.openFailed': "Could not show this folder",
  'workingDirPicker.showInFileManager': "Show in file manager",
  'workingDirPicker.replace': "Replace directory…",
  'workingDirPicker.recent': "Recent directories",
  'handoff.toTarget': 'Hand off to {target}',
  'handoff.action': 'Hand off',
  'handoff.fallbackTitle': 'No editors found on $PATH - opens in {target}',
  'handoff.chooseTargetAria': 'Choose hand-off target',
  'handoff.notInstalled': 'Not installed',
  'handoff.notDetectedTitle': '{target} - not detected on $PATH',
  'homeHero.promptExamples': "Beispiele",
  'homeHero.footer.designSystem': "Stil",
  'homeHero.footer.autoDesignSystem': "Auto",
  'homeHero.footer.autoDesignSystemSummary': "Wählt automatisch das passende Designsystem und den visuellen Stil für den aktuellen Prompt.",
  'homeHero.footer.ratio': "Format",
  'homeHero.footer.duration': "Dauer",
  'homeHero.footer.resolution': "Auflösung",
  'homeHero.footer.speakerNotes': "Notes",
  'homeHero.footer.noSpeakerNotes': "Keine Notizen",
  'homeHero.footer.availableCount': "{n} available",
  'homeHero.footer.noMatches': "No matches",
  'homeHero.moreShortcuts': "Mehr",
  'common.cancel': 'Abbrechen',
  'home.openExistingProject': "Vorhandenes Projekt öffnen",
  'home.openExistingProjectOpening': "Wird geöffnet...",
  'home.chooseFolderSubtitle': "Wähle einen Ordner von deinem Laufwerk.",
  'common.save': 'Speichern',
  'common.close': 'Schließen',
  'common.clear': 'Leeren',
  'common.delete': 'Löschen',
  'common.rename': 'Umbenennen',
  'common.edit': 'Bearbeiten',
  'common.preview': 'Vorschau',
  'common.share': 'Teilen',
  'common.search': 'Suchen',
  'common.searchEllipsis': 'Suchen…',
  'common.loading': 'Wird geladen…',
  'common.all': 'Alle',
  'common.none': 'Keine',
  'common.default': 'Standard',
  'common.installed': 'installiert',
  'common.notInstalled': 'nicht installiert',
  'common.active': 'aktiv',
  'common.offline': 'offline',
  'common.selected': 'ausgewählt',
  'common.create': 'Erstellen',
  'common.openPreview': 'Vorschau öffnen',
  'common.exitFullscreen': 'Vollbild verlassen',
  'common.fullscreen': 'Vollbild',
  'common.openInNewTab': 'In neuem Tab öffnen',
  'common.exportPdf': 'Als PDF exportieren',
  'common.exportZip': 'Als .zip herunterladen',
  'common.exportHtml': 'Als eigenständiges HTML exportieren',
  'common.exportImage': 'Als Bild exportieren',
  'common.exportImageFailed': 'Bildaufnahme fehlgeschlagen. Bitte versuchen Sie es erneut oder verwenden Sie das Screenshot-Tool Ihres Browsers.',
  'common.justNow': 'gerade eben',
  'common.minutesAgo': 'vor {n} Min.',
  'common.hoursAgo': 'vor {n} Std.',
  'common.daysAgo': 'vor {n} T.',
  'common.weeksAgo': 'vor {n} Wo.',
  'common.now': 'jetzt',
  'common.minutesShort': '{n} Min.',
  'common.hoursShort': '{n} Std.',
  'common.daysShort': '{n} T.',
  'common.untitled': 'Ohne Titel',

  'app.brand': 'Open Design',
  'app.brandPill': 'Forschungsvorschau',
  'app.brandSubtitle': 'von Nexu Labs',
  'app.welcomeLoading': 'Workspace wird geladen…',

  'settings.welcomeKicker': "",
  'settings.welcomeTitle': "Welcome",
  'settings.welcomeSubtitle': "",
  'settings.onboardingCreateTitle': 'Start from a brief',
  'settings.onboardingCreateBody':
    'Describe the site, app, deck, image, or video you want. Open Design will create a project and keep the work editable.',
  'settings.onboardingMemoryTitle': 'Save working context',
  'settings.onboardingMemoryBody':
    'Add preferences, project facts, and recurring rules so future chats pick up the right context.',
  'settings.onboardingSystemsTitle': 'Bring your design system',
  'settings.onboardingSystemsBody':
    'Pick or create a brand system so generated work follows real colors, typography, and product language.',
  'settings.onboardingExecutionTitle': 'Choose how generation runs',
  'settings.onboardingExecutionBody':
    'Official CLI with one-click setup and ready-to-use defaults. Use one key to choose from many models with better pricing.',
  'settings.onboardingAmrCloudBenefitOfficial': 'Offiziell empfohlen',
  'settings.onboardingAmrCloudBenefitReady': 'Ohne Deployment',
  'settings.onboardingAmrCloudBenefitModels': 'Unterstützt Claude Opus 4.8',
  'settings.onboardingAmrCloudBenefitPricing': 'SOTA Harness',
  'settings.onboardingAmrCloudUpcomingLabel': 'Demnächst',
  'settings.onboardingAmrCloudUpcomingImageVideo': 'Bild und Video',
  'settings.onboardingAmrCloudUpcomingSkills': 'Viele Skills',
  'settings.onboardingAmrCloudUpcomingRouting': 'Smart Routing',
  'settings.onboardingAmrModelSourceLabel': 'AMR CLI',
  'settings.onboardingAmrCloudAuthorizeAction': 'AMR autorisieren',
  'settings.onboardingAmrCloudAuthorizedAction': 'Autorisiert',
  'settings.onboardingStepConnect': "Connect",
  'settings.onboardingStepDesignSystem': "Design system",
  'settings.onboardingStepProfile': "About you",
  'settings.onboardingConnectTitle': "Choose a runtime",
  'settings.onboardingConnectBody': "",
  'settings.onboardingRecommended': "Recommended",
  'settings.onboardingLocalTitle': "Local coding agent",
  'settings.onboardingLocalBody': "Use an installed CLI such as Claude Code, Codex, Cursor, Gemini, or OpenCode.",
  'settings.onboardingLocalAction': "Open CLI settings",
  'settings.onboardingCliScanHint': "This usually takes 5-10 seconds.",
  'settings.onboardingByokTitle': "Bring your own key",
  'settings.onboardingByokBody': "Use your own model provider credentials.",
  'settings.onboardingByokAction': "Open BYOK settings",
  'settings.onboardingDesignTitle': "Design system",
  'settings.onboardingDesignBody': "Generate once, reuse everywhere.",
  'settings.onboardingDesignIntroGenerateTitle': "Generate from existing work",
  'settings.onboardingDesignIntroGenerateBody': "Upload your design system from GitHub or local code repositories, Figma files, images, and other content assets.",
  'settings.onboardingDesignIntroReuseTitle': "Reuse in future work",
  'settings.onboardingDesignIntroReuseBody': "Future prototypes, slides, and other content can reference your existing fonts, spacing, logo style, and color tone.",
  'settings.onboardingDesignIntroSkipTitle': "Optional for now",
  'settings.onboardingDesignIntroSkipBody': "Skip this step if you want to start without generating a design system.",
  'settings.onboardingGithubTitle': "Import from GitHub",
  'settings.onboardingGithubBody': "Use a frontend repository.",
  'settings.onboardingUploadTitle': "Upload local files",
  'settings.onboardingUploadBody': "Add project files, screenshots, CSS, docs, or assets.",
  'settings.onboardingPromptTitle': "Generate from prompt",
  'settings.onboardingPromptBody': "Describe the product or brand.",
  'settings.onboardingProfileTitle': "About you",
  'settings.onboardingProfileBody': "Optional details for better defaults.",
  'settings.onboardingRoleLabel': "Your role",
  'settings.onboardingOrgSizeLabel': "Organization size",
  'settings.onboardingUseCaseLabel': "Use case",
  'settings.onboardingSourceLabel': "Where did you hear about us?",
  'settings.onboardingSelectPlaceholder': "Select one",
  'settings.onboardingSelectMultiplePlaceholder': "Select one or more",
  'settings.onboardingOrgSolo': "Solo / personal (1)",
  'settings.onboardingOrgTeam': "Small team (2-10)",
  'settings.onboardingOrgStartup': "Startup / SMB (11-50)",
  'settings.onboardingOrgGrowth': "Growth company (51-200)",
  'settings.onboardingOrgMidMarket': "Mid-market (201-1000)",
  'settings.onboardingOrgEnterprise': "Enterprise (1000+)",
  'settings.onboardingRolePm': "📋 Product manager",
  'settings.onboardingRoleDesigner': "🎨 Designer",
  'settings.onboardingRoleEngineer': "💻 Engineer",
  'settings.onboardingRoleMarketing': "📣 Marketing",
  'settings.onboardingRoleGrowth': "📈 Growth",
  'settings.onboardingRoleOps': "⚙️ Operations",
  'settings.onboardingRoleFounder': "🚀 Founder / executive",
  'settings.onboardingRoleStudent': "🎓 Student / educator",
  'settings.onboardingRoleOther': "✨ Other",
  'settings.onboardingUseProduct': "🎨 Product design",
  'settings.onboardingUseDesignSystem': "🧩 Design system",
  'settings.onboardingUsePrototype': "📱 Prototype / app UI",
  'settings.onboardingUseLanding': "🌐 Landing pages",
  'settings.onboardingUseAds': "📣 Ads / social content",
  'settings.onboardingUseDashboard': "📊 Dashboards / internal tools",
  'settings.onboardingUseDeck': "🖥️ Presentation / deck",
  'settings.onboardingUseMarketing': "📈 Marketing / growth",
  'settings.onboardingUseEngineering': "🤝 Engineering handoff",
  'settings.onboardingUseAgency': "💼 Agency / client work",
  'settings.onboardingSourceGithub': "🐙 GitHub",
  'settings.onboardingSourceFriend': "👥 Friend or coworker",
  'settings.onboardingSourceSocial': "📱 Social media",
  'settings.onboardingSourceProductHunt': "🅿️ Product Hunt",
  'settings.onboardingSourceCommunity': "💬 Design / AI community",
  'settings.onboardingSourceYoutube': "▶️ YouTube",
  'settings.onboardingSourceBlog': "📰 Blog or newsletter",
  'settings.onboardingSourceAiTool': "✨ AI tool recommendation",
  'settings.onboardingSourceSearch': "🔍 Search",
  'settings.onboardingSourceEvent': "🎤 Event or community",
  'settings.onboardingBack': "Back",
  'settings.onboardingContinue': "Continue",
  'settings.onboardingFinish': "Finish setup",
  'settings.onboardingSkip': "Skip for now",
  'settings.kicker': 'Einstellungen',
  'settings.title': 'Ausführungsmodus',
  'settings.subtitle': 'Wählen Sie zwischen lokaler CLI und BYOK.',
  'settings.modeAria': 'Ausführungsmodus',
  'settings.protocolAria': 'API-Protokoll',
  'settings.modeDaemon': 'Lokale CLI',
  'settings.modeDaemonHelp': 'Über eine Code-Agent-CLI auf Ihrem Rechner ausführen',
  'settings.modeDaemonOffline': 'Daemon läuft nicht',
  'settings.modeDaemonOfflineMeta': 'Daemon offline',
  'settings.modeDaemonInstalledMeta': '{count} installiert',
  'settings.modeApi': 'API-Anbieter',
  'settings.modeApiMeta': 'BYOK',
  'settings.codeAgent': 'Code-Agent',
  'settings.codeAgentHint':
    'Durch Scannen Ihres PATH erkannt. Wählen Sie die CLI, über die Generierungen laufen sollen.',
  'settings.rescan': '↻ Neu scannen',
  'settings.rescanTitle': 'PATH erneut scannen',
  'settings.rescanRunning': 'Scannen...',
  'settings.rescanSuccess': 'Scan abgeschlossen. {count} verfuegbar.',
  'settings.designSystemRenameFailed': 'Umbenennen fehlgeschlagen. Pruefen Sie den Daemon und versuchen Sie es erneut.',
  'settings.rescanFailed': 'Scan fehlgeschlagen. Pruefen Sie den Daemon und versuchen Sie es erneut.',
  'settings.test': 'Test',
  'settings.testTitle': 'Sende einen winzigen Testprompt, um die Verbindung zu pruefen',
  'settings.testRunning': 'Verbindung wird geprueft…',
  'settings.byokReadyToTest': 'Bereit zum Testen',
  'settings.testCancel': 'Abbrechen',
  'settings.testSuccessApi': 'Verbunden. Antwort in {ms} ms — \'{sample}\'',
  'settings.testSuccessCli': '{agentName} antwortete in {ms} ms — \'{sample}\'',
  'settings.testAuthFailed': 'Authentifizierung fehlgeschlagen. Pruefen Sie Ihren API-Schluessel.',
  'settings.testForbidden': 'Zugriff verweigert. Pruefen Sie Konto, Region oder Organisation.',
  'settings.testNotFoundModel': 'Modell \'{model}\' an diesem Endpunkt nicht gefunden.',
  'settings.testInvalidModelId': 'Modell-ID \'{model}\' ist ungueltig. Benutzerdefinierte IDs muessen mit einem Buchstaben oder einer Zahl beginnen und duerfen keine Leerzeichen enthalten.',
  'settings.testInvalidBaseUrl': 'Base URL ist ungueltig oder nicht erreichbar.',
  'settings.testRateLimited': 'Anbieter hat den Test ratenbegrenzt. Konfiguration sieht gueltig aus.',
  'settings.testUpstream': 'Anbieter antwortete mit {status}. Versuchen Sie es gleich erneut.',
  'settings.testTimeout': 'Test abgebrochen nach {ms} ms.',
  'settings.testAgentMissing': '{agentName} ist nicht installiert oder nicht im PATH.',
  'settings.testAgentSpawn': '{agentName} konnte nicht gestartet werden: {detail}.',
  'settings.testUnknown': 'Test fehlgeschlagen: {detail}',
  'settings.agentInstall.install': 'Installieren',
  'settings.agentInstall.docs': 'Doku',
  'settings.agentInstall.pathHint':
    'Wenn Sie eine CLI mit npm oder Homebrew installiert haben und sie weiterhin als nicht installiert angezeigt wird, stellen Sie sicher, dass das Bin-Verzeichnis der CLI im PATH enthalten ist, den der Open-Design-Daemon erbt (Terminal und GUI-Apps koennen sich unter macOS unterscheiden). Siehe QUICKSTART.md (Abschnitt "Local agent CLI and PATH").',
  'settings.agentInstall.stepOpenLinks': 'Oeffnen Sie Installieren oder Doku fuer den gewuenschten Agenten.',
  'settings.agentInstall.stepAuth':
    'Authentifizieren Sie sich mit der Anbieter-CLI (anmelden oder API-Zugangsdaten setzen), bevor Sie zu Open Design zurueckkehren.',
  'settings.agentInstall.stepRescan': 'Klicken Sie in diesem Bereich auf Neu scannen.',
  'settings.agentInstall.stepSelect': 'Waehlen Sie die Agent-Karte aus, sobald sie als installiert angezeigt wird.',
  'settings.noAgentsDetected':
    'Noch keine Agents erkannt. Installieren Sie Claude Code, Codex, Devin for Terminal, Gemini CLI, OpenCode, Cursor Agent, Qwen oder GitHub Copilot CLI und klicken Sie dann auf Neu scannen.',
  'settings.agentInstalledGroup': 'Ihre CLIs ({count})',
  'settings.agentInstallGroup': 'Zur Installation verfügbar ({count})',
  'settings.agentAuthRequired': 'Authentifizierung erforderlich',
  'settings.agentAuthUnknown': 'Authentifizierungsstatus unbekannt',
  'settings.amrLogin': 'Sign in',
  'settings.amrLogout': 'Sign out',
  'settings.amrLoggingIn': 'Signing in…',
  'settings.amrLoggingOut': 'Signing out…',
  'settings.amrLoggedInAs': 'Signed in as {email}',
  'settings.amrLoggedInWithPlan': 'Signed in as {email} · {plan}',
  'settings.amrLoggedInPill': 'Signed in',
  'settings.amrNotLoggedIn': 'Not signed in',
  'settings.amrCloud': 'Open Design AMR',
  'settings.amrAuthorize': 'Authorize',
  'settings.amrBenefitOfficial': 'Officially maintained',
  'settings.amrBenefitLowerPrice': 'Lower price',
  'settings.amrBenefitManyModels': 'Many models',
  'settings.amrPromoBonus': 'Limited bonus: +100%',
  'settings.amrSignInToContinue': 'Sign in to continue',
  'settings.amrSignIn': 'Sign in',
  'settings.amrSignedIn': 'Signed in',
  'settings.amrNotSignedIn': 'Not signed in',
  'settings.amrSigningIn': 'Signing in…',
  'settings.amrCancelSignIn': 'Cancel sign-in',
  'settings.amrAccountStatus': 'AMR account status',
  'settings.amrConsole': 'AMR Console',
  'settings.amrLoginErrorCompact': 'AMR sign-in failed.',
  'settings.apiSection': 'Anthropic API',
  'settings.quickFillProvider': 'Anbieter schnell ausfüllen',
  'settings.customProvider': 'Benutzerdefinierter Anbieter',
  'settings.providerPreset': 'Gateway-Voreinstellung',
  'settings.protocolGroupProtocols': 'Protokolle',
  'settings.protocolGroupGateways': 'Gateways',
  'settings.apiKey': 'API-Key',
  'settings.showKey': 'Key anzeigen',
  'settings.hideKey': 'Key ausblenden',
  'settings.show': 'Anzeigen',
  'settings.hide': 'Ausblenden',
  'settings.model': 'Modell',
  'settings.suggestedModelsHint':
    'Dies sind vorgeschlagene Modelle für dieses Protokoll. Ihr Anbieter kann andere Modelle unterstützen.',
  'settings.baseUrl': 'Base URL',
  'settings.baseUrlInvalid': 'Öffentliche http://- oder https://-URL verwenden.',
  'settings.baseUrlCustomize': 'Anpassen',
  'settings.baseUrlDefaultHint': 'Standard-Endpunkt. Normalerweise muss dies nicht geändert werden.',
  'settings.azureBaseUrlPlaceholder': 'https://my-resource.openai.azure.com',
  'settings.azureBaseUrlHint': 'Find this in Azure portal → your resource → Endpoint.',
  'settings.azureDeploymentModel': 'Deployment-Name',
  'settings.azureCustomDeploymentName': 'Custom deployment name',
  'settings.azureDeploymentModelHint':
    'Fuer Azure OpenAI wird dieses Feld als Deployment-Name in /openai/deployments/<model> verwendet. Geben Sie den in Azure angelegten Deployment-Namen ein.',
  'settings.apiVersion': 'API-Version',
  'settings.byokImageModel': 'Bilderzeugungsmodell',
  'settings.byokVideoModel': 'Videoerzeugungsmodell',
  'settings.byokVideoI2vHint': 'Bild-zu-Video-Modell: Referenzbild erforderlich (sonst wird automatisch das neueste Projektbild verwendet)',
  'settings.byokSpeechModel': 'Sprachsynthese-Modell',
  'settings.byokSpeechVoice': 'Stimme',
  'settings.byokModelDefaultOption': 'Standard',
  'settings.maxTokens': 'Max. Tokens (optional)',
  'settings.maxTokensHint':
    'Obergrenze für die Antwortlänge. Jedes Modell hat einen abgestimmten Standardwert (im Platzhalter sichtbar); leer lassen, um ihn zu verwenden, oder eine Zahl eingeben, um ihn zu überschreiben.',
  'settings.apiHint': 'Anfragen werden über den lokalen Daemon-Proxy an die festgelegte Base URL gesendet. Der Schlüssel wird nur in diesem Browser gespeichert und mit Provider-Anfragen gesendet.',
  'settings.skipForNow': 'Vorerst überspringen',
  'settings.getStarted': 'Loslegen',
  'settings.envConfigure': 'Ausführungsmodus',
  'settings.localCli': 'Lokale CLI',
  'settings.anthropicApi': 'Anthropic API',
  'settings.noAgentSelected': 'kein Agent ausgewählt',
  'settings.language': 'Sprache',
  'settings.languageHint': 'Wechseln Sie die Sprache der Oberfläche. Wird in diesem Browser gespeichert.',
  'settings.appearance': 'Erscheinungsbild',
  'settings.appearanceHint': 'Hell, dunkel oder Systemeinstellung übernehmen.',
  'settings.themeSystem': 'System',
  'settings.themeLight': 'Hell',
  'settings.themeDark': 'Dunkel',
  'settings.agentModelHead': 'Modell für:',
  'settings.modelPicker': 'Modell',
  'settings.modelSourceLive': 'Live aus der CLI',
  'settings.modelSourceFallback': 'Integrierte Liste',
  'settings.reasoningPicker': 'Reasoning-Aufwand',
  'settings.modelPickerHint':
    'Wird aus der CLI geladen, wenn sie einen `models`-Befehl anbietet. „Standard“ überlässt die Auswahl der CLI-Konfiguration; mit „Benutzerdefiniert…“ können Sie jede von der CLI akzeptierte Modell-ID eingeben.',
  'settings.modelPickerLiveHint':
    'Modelle wurden aus der installierten CLI aktualisiert. Standard verwendet weiterhin die CLI-Konfiguration.',
  'settings.modelPickerLiveCatalogOnlyHint':
    'Modelle wurden aus der installierten CLI aktualisiert.',
  'settings.modelPickerFallbackHint':
    'Integrierte Standardwerte werden angezeigt. Klicken Sie auf Neu scannen, um Live-Modelle aus der CLI abzurufen.',
  'settings.cliEnvTitle': 'CLI config locations',
  'settings.cliEnvHint':
    'Set non-secret config directories for packaged app runs and agent detection.',
  'settings.cliEnvClaudeConfigDir': 'Claude Code config directory',
  'settings.cliEnvClaudeBaseUrl': 'Claude proxy base URL',
  'settings.cliEnvClaudeApiKey': 'Claude proxy API key',
  'settings.cliEnvCodexHome': 'Codex home',
  'settings.cliEnvCodexBin': 'Codex executable path',
  'settings.cliEnvCodexBaseUrl': 'Codex/OpenAI proxy base URL',
  'settings.cliEnvCodexApiKey': 'Codex/OpenAI proxy API key',
  'settings.modelCustom': 'Benutzerdefiniert (unten eingeben)…',
  'settings.modelCustomLabel': 'Benutzerdefinierte Modell-ID',
  'settings.modelCustomPlaceholder': 'z. B. anthropic/claude-sonnet-4-6',
  'settings.mediaProviders': 'Medienanbieter',
  'settings.mediaProvidersHint':
    'API-Keys für Bild-, Video- und Audiogenerierung. Lokal gespeichert und mit dem lokalen Daemon synchronisiert.',
  'settings.mcpServerTitle': 'MCP-Server',
  'settings.mcpServerHint': 'Stelle Open Design als MCP-Server für deinen Coding-Agent bereit.',
  'settings.externalMcpTitle': 'Externes MCP',
  'settings.externalMcpHint': 'MCP-Tools aus externen Diensten hinzufügen (Higgsfield, GitHub, …).',
  'settings.mediaProviderApiKey': 'API-Key',
  'settings.mediaProviderBaseUrl': 'Base URL',
  'settings.mediaProviderConfigured': 'Konfiguriert',
  'settings.mediaProviderUnset': 'Nicht gesetzt',
  'settings.mediaProviderClear': 'Leeren',
  'settings.mediaProviderClearConfirm': 'Gespeicherte {name}-Einstellungen löschen? Du musst sie erneut eingeben, um {name} zu nutzen.',
  'settings.mediaProviderPlaceholder': 'API-Key einfügen',
  'settings.mediaProviderBaseUrlPlaceholder': 'Standard-Base-URL überschreiben',
  'settings.mediaProviderReload': 'Vom lokalen Daemon neu laden',
  'settings.mediaProviderReloadError': 'Die Einstellungen der Medienanbieter konnten nicht vom lokalen Daemon neu geladen werden.',
  'settings.mediaProviderReloadSuccess': 'Die Einstellungen der Medienanbieter wurden vom lokalen Daemon neu geladen.',
  'settings.mediaProviderLoadError': 'Die Einstellungen der Medienanbieter konnten nicht vom lokalen Daemon geladen werden. Vorerst werden die im Browser gespeicherten Einstellungen verwendet.',
  'settings.mediaProviderComingSoonHint': 'Wir verfolgen diese für die Roadmap; der Daemon liefert noch keinen Client, daher gibt es nichts zu konfigurieren.',
  'settings.privacy': 'Privacy',
  'settings.privacyHint': 'What data is shared with the Open Design team',
  'settings.privacyConsentKicker': 'Help us improve Open Design',
  'settings.privacyConsentLead': 'Open Design can share usage data with our team to help us improve. This includes:',
  'settings.privacyConsentFooter': 'You can change either of these any time in Settings → Privacy. We never upload the contents of your generated artifact files.',
  'settings.privacyConsentShare': 'Share usage data',
  'settings.privacyConsentDecline': "Don't share",
  'settings.privacyConsentAccept': 'I get it',
  'settings.privacyConsentBannerFooter':
    'Data sharing is on by default. You can turn it off any time in Settings → Privacy. We never upload the contents of your generated artifact files.',
  'settings.privacyConsentPolicyLink': 'Read the privacy policy',
  'settings.privacyMetrics': 'Anonymous metrics',
  'settings.privacyMetricsHint': 'Run counts, token usage, error rate, duration. No prompts, no project data.',
  'settings.privacyContent': 'Conversation content',
  'settings.privacyContentHint': "Your prompts and the assistant's responses (truncated 8 KB / 16 KB). API keys, tokens, JWTs, emails, IPs, and credit-card numbers are stripped automatically before send.",
  'settings.privacyArtifacts': 'Project artifacts manifest',
  'settings.privacyArtifactsHint': 'Filenames, types, sizes of generated files. File contents are never sent.',
  'settings.privacyInstallationId': 'Anonymous ID',
  'settings.privacyOptedOut': 'opted out',
  'settings.privacyDataDeletion': 'Delete my data',
  'settings.privacyDataDeletionHint': 'Rotates your anonymous ID and stops sending. Existing traces age out under our retention policy.',
  'settings.about': 'Info',
  'settings.aboutHint': 'Version und Laufzeitdetails',
  'settings.appVersion': 'Version',
  'settings.appChannel': 'Kanal',
  'settings.appRuntime': 'Laufzeit',
  'settings.appPlatform': 'Plattform',
  'settings.appArchitecture': 'Architektur',
  'settings.runtimePackaged': 'Paketierte App',
  'settings.runtimeDevelopment': 'Entwicklung',
  'settings.versionUnavailable': 'Versionsdetails sind nicht verfügbar, solange der Daemon offline ist.',
  'settings.installLatest': 'Neueste Version installieren',
  'settings.alreadyLatest': 'Sie verwenden die neueste Version',

  'entry.tabDesigns': 'Designs',
  'entry.tabTemplates': 'Vorlagen',
  'entry.tabDesignSystems': 'Designsysteme',
  'entry.openSettingsTitle': 'Einstellungen',
  'entry.openSettingsAria': 'Einstellungen öffnen',
  'entry.resizeAria': 'Seitenleiste skalieren',
  'entry.loadingWorkspace': 'Workspace wird geladen…',
  'entry.useEverywhereTitle': 'Überall verwenden',
  'entry.useEverywhereAria': 'Anleitung „Überall verwenden“ öffnen (CLI, MCP, HTTP, Skills)',
  'entry.navExpand': 'Seitenleiste einblenden',
  'entry.navCollapse': 'Seitenleiste ausblenden',
  'entry.navNewProject': 'Neues Projekt',
  'entry.navHome': 'Start',
  'entry.navProjects': 'Projekte',
  'entry.navDesignSystems': 'Design-Systeme',
  'entry.helpAria': 'Hilfe',
  'entry.helpMenuAria': 'Hilfemenü',
  'entry.helpGetHelp': 'Hilfe auf GitHub',
  'entry.helpSubmitFeature': 'Feature vorschlagen',
  'entry.helpWhatsNew': 'Neuigkeiten',
  'entry.helpDownloadDesktop': 'Desktop-App herunterladen',
  'entry.githubStarLabel': 'Star',
  'entry.githubStarTitle': 'Klicken, um uns auf GitHub einen Stern zu geben',
  'entry.githubStarAria': 'Open Design auf GitHub einen Stern geben',
  'entry.tabImageTemplates': 'Bildvorlagen',
  'entry.tabVideoTemplates': 'Videovorlagen',
  'promptTemplates.searchPlaceholder': 'Templates suchen…',
  'promptTemplates.countLabel': '{n} Ergebnisse',
  'promptTemplates.emptyImage': 'Noch keine Bild-Prompt-Templates installiert.',
  'promptTemplates.emptyVideo': 'Noch keine Video-Prompt-Templates installiert.',
  'promptTemplates.emptyNoMatch': 'Keine Templates passen zu Ihrer Suche.',
  'promptTemplates.attributionFooter': 'Aus öffentlichen Prompt-Bibliotheken adaptiert. Jede Karte verlinkt zum ursprünglichen Autor.',
  'promptTemplates.openPreviewTitle': 'Prompt und Vorschau öffnen',
  'promptTemplates.sourcePrefix': 'Quelle:',
  'promptTemplates.fetchError': 'Dieser Template-Inhalt konnte nicht geladen werden.',
  'promptTemplates.promptLabel': 'Prompt-Text',
  'promptTemplates.copyPrompt': 'Prompt kopieren',
  'promptTemplates.copyDone': 'Kopiert!',
  'promptTemplates.modelHint': 'Vorgeschlagenes Modell: {model}',
  'promptTemplates.openSource': 'Original anzeigen',
  'promptTemplates.openFullscreen': 'Vollbildvorschau öffnen',
  'promptTemplates.closeFullscreen': 'Vollbildvorschau schließen',
  'promptTemplates.allSources': 'Alle Quellen',
  'promptTemplates.sourceFilterAria': 'Nach Quelle filtern',
  'promptTemplates.retry': 'Erneut versuchen',

  'newproj.tabPrototype': 'Prototyp',
  'newproj.tabDeck': 'Slide Deck',
  'newproj.tabTemplate': 'Aus Template',
  'newproj.tabMedia': 'Medien',
  'newproj.tabOther': 'Andere',
  'newproj.titlePrototype': 'Neuer Prototyp',
  'newproj.titleDeck': 'Neues Slide Deck',
  'newproj.titleTemplate': 'Mit Template starten',
  'newproj.titleImage': 'Neues Bild',
  'newproj.titleVideo': 'Neues Video',
  'newproj.titleAudio': 'Neues Audio',
  'newproj.titleMedia': 'Neue Medien',
  'newproj.titleOther': 'Neues Projekt',
  'newproj.namePlaceholder': 'Projektname',
  'newproj.fidelityLabel': 'Detailgrad',
  'newproj.fidelityWireframe': 'Wireframe',
  'newproj.fidelityHigh': 'High Fidelity',
  'newproj.toggleSpeakerNotes': 'Sprechernotizen verwenden',
  'newproj.toggleSpeakerNotesHint': 'Weniger Text auf Slides — Gesprächspunkte in Notizen halten.',
  'newproj.toggleAnimations': 'Animationen einbeziehen',
  'newproj.toggleAnimationsHint':
    'Bewegung (Einstiege, Hover, Übergänge) zusätzlich zum Template hinzufügen.',
  'newproj.templateLabel': 'Template',
  'newproj.noTemplatesTitle': 'Noch keine Templates',
  'newproj.noTemplatesBody':
    'Öffnen Sie ein Projekt und nutzen Sie dann das Teilen-Menü im File Viewer, um es in ein Template umzuwandeln. Templates erscheinen hier.',
  'newproj.savedTemplate': 'Gespeichertes Template',
  'newproj.fileSingular': 'Datei',
  'newproj.filePlural': 'Dateien',
  'newproj.create': 'Erstellen',
  'newproj.locationLabel': 'Speichern unter',
  'newproj.locationDefault': 'Open Design-Projekte',
  'newproj.locationExternalBase': 'Externe Basis',
  'newproj.createFromTemplate': 'Aus Template erstellen',
  'newproj.createDisabledTitle':
    'Speichern Sie zuerst ein Projekt als Template (Teilen-Menü in einem beliebigen Projekt).',
  'newproj.importClaudeZip': 'Claude Design ZIP importieren',
  'newproj.importClaudeZipTitle': 'Einen Claude Design .zip-Export importieren',
  'newproj.importingClaudeZip': 'Import läuft…',
  'newproj.privacyFooter': 'Standardmäßig können nur Sie Ihr Projekt sehen.',
  'newproj.designSystem': 'Designsystem',
  'newproj.dsNoneFreeform': 'Keines — frei',
  'newproj.dsNoneSubtitleEmpty': 'Keine System-Tokens, eigene Palette wählen',
  'newproj.dsNoneSubtitleSelected': 'System-Tokens überspringen. Der Agent wählt eine eigene Palette.',
  'newproj.dsCategoryFallback': 'Designsystem',
  'newproj.dsSearch': 'Designsysteme suchen…',
  'newproj.dsModeAria': 'Auswahlmodus',
  'newproj.dsModeSingle': 'Einzeln',
  'newproj.dsModeMulti': 'Mehrfach',
  'newproj.dsNoneTitle': 'Keines — frei',
  'newproj.dsNoneSub': 'System-Tokens überspringen. Der Agent wählt eine eigene Palette.',
  'newproj.dsEmpty': 'Keine Designsysteme passen zu „{query}“.',
  'newproj.dsFootSingular': 'dient nur als Inspiration.',
  'newproj.dsFootPlural': 'dienen nur als Inspiration.',
  'newproj.dsFootClear': 'Leeren',
  'newproj.dsBadgeDefault': 'STANDARD',
  'newproj.dsPrimaryFallback': 'Primär',
  'newproj.surfaceImage': 'Bild',
  'newproj.surfaceVideo': 'Video',
  'newproj.surfaceAudio': 'Audio',
  'newproj.modelLabel': 'Modell',
  'newproj.modelSearch': 'Modelle suchen…',
  'newproj.modelEmpty': 'Keine passenden Modelle.',
  'newproj.modelRecommended': 'Empfohlen',
  'newproj.modelMissingTitle': 'Modell auswählen',
  'newproj.modelMissingSub': 'Wähle ein Modell für diese Oberfläche.',
  'newproj.aspectLabel': 'Format',
  'newproj.videoLengthLabel': 'Länge',
  'newproj.videoLengthSeconds': '{n}s',
  'newproj.audioKindLabel': 'Audiotyp',
  'newproj.audioKindMusic': 'Musik',
  'newproj.audioKindSpeech': 'Sprache / TTS',
  'newproj.audioKindSfx': 'SFX',
  'newproj.audioDurationLabel': 'Dauer',
  'newproj.audioDurationSeconds': '{n}s',
  'newproj.voiceLabel': 'Stimme',
  'newproj.voicePlaceholder': 'Provider-Voice-ID, optional',
  'newproj.promptTemplateLabel': 'Referenzvorlage',
  'newproj.promptTemplateNoneTitle': 'Keine — eigene schreiben',
  'newproj.promptTemplateNoneSub': 'Galerie überspringen und eigenes Briefing verfassen',
  'newproj.promptTemplateRefSub': 'Referenzvorlage',
  'newproj.promptTemplateSearch': 'Vorlagen suchen…',
  'newproj.promptTemplateEmpty': 'Für dieses Format sind noch keine Vorlagen installiert.',
  'newproj.promptTemplateBodyLabel': 'Prompt (kann angepasst werden)',
  'newproj.promptTemplateOptimizeHint':
    'Beliebig editierbar — deine Änderungen fließen in das Agenten-Briefing ein.',
  'newproj.promptTemplateBodyEmpty':
    'Leerer Body — der Agent erhält keine Vorlagenreferenz.',
  'newproj.deleteTemplateTitle': 'Template löschen',
  'newproj.deleteTemplateConfirm': '„{name}" löschen? Dies kann nicht rückgängig gemacht werden.',
  'newproj.deleteTemplateConfirmCta': 'Template löschen',
  'newproj.deleteTemplateError':
    'Dieses Template konnte nicht gelöscht werden. Bitte erneut versuchen.',

  'designs.subRecent': 'Aktuell',
  'designs.subYours': 'Ihre Designs',
  'designs.filterAria': 'Projekte filtern',
  'designs.searchPlaceholder': 'Suchen…',
  'designs.emptyNoProjects': 'Noch keine Projekte.',
  'designs.emptyNoMatch': 'Keine Projekte passen zu Ihrer Suche.',
  'designs.deleteTitle': 'Projekt löschen',
  'designs.deleteConfirm': '„{name}“ löschen?',
  'designs.cardFreeform': 'frei',
  'designs.status.notStarted': 'Nicht gestartet',
  'designs.status.queued': 'In Warteschlange',
  'designs.status.running': 'Läuft',
  'designs.status.awaitingInput': 'Eingabe nötig',
  'designs.status.succeeded': 'Abgeschlossen',
  'designs.status.published': 'Veröffentlicht',
  'designs.status.failed': 'Fehlgeschlagen',
  'designs.status.canceled': 'Abgebrochen',
  'designs.viewToggleAria': 'Ansichtsmodus',
  'designs.viewGrid': 'Rasteransicht',
  'designs.viewKanban': 'Board-Ansicht',
  'designs.kanbanEmptyColumn': 'Keine Designs',
  'designs.deleteAria': 'Projekt {name} löschen',
  'designs.menuMore': 'More actions',
  'designs.menuRename': 'Rename',
  'designs.menuDelete': 'Delete',
  'designs.renamePrompt': 'New name for "{name}"',
  'designs.selectMode': 'Select',
  'designs.cancelSelect': 'Cancel',
  'designs.deleteSelected': 'Delete selected',
  'designs.selectedCount': '{n} selected',
  'designs.deleteSelectedConfirm': 'Delete {n} project(s)?',
  'designs.deleteSelectedSuccess': '{n} project(s) deleted successfully.',
  'designs.deleteSelectedPartial': 'Deleted {deleted} project(s); {failed} failed.',
  'designs.tagPrototype': 'Prototype',
  'designs.tagLiveArtifact': 'Live Artifact',
  'designs.tagSlide': 'Slide',
  'designs.tagMedia': 'Media',
  'designs.renameTitle': 'Rename project',
  'designs.renameSave': 'OK',
  'designs.renameCancel': 'Cancel',

  'examples.typeLabel': 'Typ',
  'examples.surfaceLabel': 'Oberfläche',
  'examples.surfaceWeb': 'Web',
  'examples.surfaceImage': 'Bild',
  'examples.surfaceVideo': 'Video',
  'examples.surfaceAudio': 'Audio',
  'examples.scenarioLabel': 'Szenario',
  'examples.modeAll': 'Alle',
  'examples.modePrototypeDesktop': 'Prototypen · Desktop',
  'examples.modePrototypeMobile': 'Prototypen · Mobil',
  'examples.modeDeck': 'Folien',
  'examples.modeDocument': 'Dokumente & Templates',
  'examples.modeOrbit': 'Orbit',
  'examples.modeLive': 'Live',
  'examples.scenarioGeneral': 'Allgemein',
  'examples.scenarioEngineering': 'Engineering',
  'examples.scenarioProduct': 'Produkt',
  'examples.scenarioDesign': 'Design',
  'examples.scenarioMarketing': 'Marketing',
  'examples.scenarioSales': 'Vertrieb',
  'examples.scenarioFinance': 'Finanzen',
  'examples.scenarioHr': 'Personal',
  'examples.scenarioOperations': 'Betrieb',
  'examples.scenarioSupport': 'Support',
  'examples.scenarioLegal': 'Recht',
  'examples.scenarioEducation': 'Bildung',
  'examples.scenarioPersonal': 'Persönlich',
  'examples.emptyNoSkills': 'Keine Skills verfügbar. Läuft der Daemon?',
  'examples.searchPlaceholder': 'Beispiele suchen…',
  'examples.searchAria': 'Beispiele nach Namen suchen',
  'examples.emptyNoMatch': 'Keine Beispiele passen zu diesen Filtern.',
  'examples.openPreview': '⤢ Vorschau öffnen',
  'examples.loadingPreview': 'Vorschau wird geladen…',
  'examples.hoverPreview': 'Für Vorschau hovern',
  'examples.usePrompt': 'Diesen Prompt verwenden',
  'examples.previewModalTitle': 'Vollständige Vorschau öffnen (Modal)',
  'examples.shareTitle': 'Dieses Beispiel teilen',
  'examples.shareLoadFirst': 'Zuerst hovern, um die Vorschau zu laden',
  'examples.unavailablePlaceholder': 'Keine mitgelieferte {kind}-Vorschau — öffnen für mehr Infos',
  'examples.shareUnavailable': 'Keine mitgelieferte {kind}-Vorschau zum Teilen',
  'examples.shareMenu': 'Teilen ▾',
  'examples.exportPdfAllSlides': 'Als PDF exportieren (alle Slides)',
  'examples.exportPptxLocked': 'Als PPTX exportieren… (zuerst Template öffnen)',
  'examples.tagSlideDeck': 'Foliendeck',
  'examples.tagTemplate': 'Template',
  'examples.tagDesignSystem': 'Designsystem',
  'examples.tagMobilePrototype': 'Mobiler Prototyp',
  'examples.tagDesktopPrototype': 'Desktop-Prototyp',
  'examples.tagImage': 'Bild',
  'examples.tagVideo': 'Video',
  'examples.tagAudio': 'Audio',
  'examples.previewLabel': 'Vorschau',

  'ds.surfaceLabel': 'Oberfläche',
  'ds.surfaceWeb': 'Web',
  'ds.surfaceImage': 'Bild',
  'ds.surfaceVideo': 'Video',
  'ds.surfaceAudio': 'Audio',
  'ds.searchPlaceholder': 'Designsysteme suchen…',
  'ds.emptyNoMatch': 'Keine Designsysteme passen zu Ihrer Suche.',
  'ds.badgeDefault': 'STANDARD',
  'ds.preview': 'Vorschau',
  'ds.previewTitle': 'Designsystem-Vorschau',
  'ds.categoryAll': 'Alle',
  'ds.categoryUncategorized': 'Nicht kategorisiert',
  'ds.showcase': 'Showcase',
  'ds.tokens': 'Tokens',
  'ds.specToggle': 'DESIGN.md',
  'ds.specLoading': 'DESIGN.md wird geladen…',

  'avatar.title': 'Konto & Einstellungen',
  'avatar.localCli': 'Lokale CLI',
  'avatar.anthropicApi': 'Anthropic API',
  'avatar.useLocal': 'Lokale CLI verwenden',
  'avatar.useApi': 'API · BYOK verwenden',
  'avatar.codeAgent': 'Code-Agent',
  'avatar.rescan': 'PATH neu scannen',
  'avatar.amrConsole': 'AMR account',
  'avatar.amrConsoleMeta': 'Balance & recharge',
  'avatar.settings': 'Einstellungen',
  'avatar.backToProjects': 'Zurück zu Projekten',
  'avatar.metaActive': 'aktiv',
  'avatar.metaOffline': 'offline',
  'avatar.metaSelected': 'ausgewählt',
  'avatar.noAgentSelected': 'kein Agent ausgewählt',
  'avatar.modelSection': 'Modell',
  'avatar.modelLabel': 'Modell',
  'avatar.reasoningLabel': 'Reasoning',
  'avatar.customSuffix': '(benutzerdefiniert)',

  'inlineSwitcher.chipTitle': 'CLI / Modell wechseln',
  'inlineSwitcher.chipCli': 'Lokales CLI',
  'inlineSwitcher.chipByok': 'BYOK',
  'inlineSwitcher.modelDefault': 'Standard',
  'inlineSwitcher.noAgent': 'kein Agent',
  'inlineSwitcher.modeLabel': 'Modus',
  'inlineSwitcher.agentLabel': 'Agent',
  'inlineSwitcher.providerLabel': 'Anbieter',
  'inlineSwitcher.modelLabel': 'Modell',
  'inlineSwitcher.useCli': 'Lokales CLI verwenden',
  'inlineSwitcher.useByok': 'Eigenen API-Schlüssel verwenden',
  'inlineSwitcher.daemonOffline': 'Daemon offline — Einstellungen öffnen',
  'inlineSwitcher.noAgentsDetected': 'Kein CLI im PATH gefunden',
  'inlineSwitcher.openSettingsForModel': 'Anbieter in den Einstellungen konfigurieren',
  'inlineSwitcher.missingApiKey': 'API-Schlüssel fehlt — in den Einstellungen ergänzen.',
  'inlineSwitcher.openFullSettings': 'Ausführungseinstellungen öffnen',
  'inlineSwitcher.customSuffix': '(benutzerdefiniert)',

  'project.backToProjects': 'Zurück zu Projekten',
  'project.metaFreeform': 'frei',
  'project.resizeChatPanel': 'Größe des Chat-Bereichs ändern',
  'project.instructionsActive': 'Aktiv – in jeder Nachricht enthalten',
  'chat.tabChat': 'Chat',
  'chat.tabComments': 'Kommentare',
  'chat.commentsSoon': 'Kommentare — demnächst',
  'chat.comments.attached': 'Attached to chat',
  'chat.comments.emptyAttached': 'No comments attached.',
  'chat.comments.saved': 'Saved comments',
  'chat.comments.emptySaved': 'No saved comments.',
  'chat.comments.add': 'Add',
  'chat.comments.addAll': 'Add all',
  'chat.comments.remove': 'Remove',
  'chat.comments.placeholder': 'Comment on this element…',
  'chat.comments.addSend': 'Add & send',
  'chat.comments.updateSend': 'Update & send',
  'chat.comments.removeAttachment': 'Remove comment attachment',
  'chat.comments.removeAttachmentAria': 'Remove comment attachment for {name}',
  'chat.comments.comment': 'Kommentar',
  'chat.comments.sendToChat': 'An Chat senden',
  'chat.comments.sending': 'Wird gesendet…',
  'chat.comments.edit': 'Bearbeiten',
  'chat.comments.select': 'Auswählen',
  'chat.comments.selectAll': 'Alle auswählen',
  'chat.comments.deselect': 'Abwählen',
  'chat.comments.nSelected': '{n} ausgewählt',
  'chat.comments.pin': 'Pin',
  'chat.comments.addNote': 'Notiz hinzufügen',
  'chat.comments.savedToast': 'Kommentar gespeichert',
  'chat.comments.pinSavedToast': 'Pin gespeichert',
  'chat.comments.pinAtCoords': 'bei {x}, {y}',
  'chat.comments.capturedItems': '{n} erfasste Elemente',
  'chat.comments.clear': 'Löschen',
  'chat.comments.targetImage': 'Image',
  'chat.comments.targetControl': 'Control',
  'chat.comments.targetLink': 'Link',
  'chat.comments.targetText': 'Text',
  'chat.comments.targetSection': 'Section',
  'chat.comments.targetPage': 'Page',
  'chat.comments.targetArea': 'Area',
  'chat.annotationNotePlaceholder': 'Add a note for this mark',
  'chat.annotationAttachImage': 'Bild anhängen',
  'chat.annotationAttachedImages': 'Angehängte Bilder',
  'chat.annotationAttachedRemove': 'Letztes Bild entfernen',
  'chat.annotationAddToInput': 'Add to input',
  'chat.annotationAddingToInput': 'Adding...',
  'chat.annotationQueue': 'Queue',
  'chat.annotationQueueing': 'Queueing...',
  'chat.annotationSending': 'Sending...',
  'chat.annotationSendDisabledReason': 'A task is currently running',
  'chat.annotationPreviewMissing': 'Could not capture the preview. Please try again.',
  'chat.annotationPreviewMissingInk': 'Could not capture the preview. Try again to avoid sending only ink.',
  'chat.annotationTimeout': 'Annotation send timed out. Please try again.',
  'chat.annotationFailed': 'Annotation send failed. Please try again.',
  'chat.annotationProjectCreateFailed': 'Could not create a project, so the annotation was not sent.',
  'chat.annotationUploadFailed': 'Attachment upload failed. Please try again.',
  'chat.inspect.noEditableTargets': 'This page has no editable elements yet.',
  'chat.inspect.noCommentTargets': 'This page has no commentable elements yet.',
  'chat.inspect.editHint': 'Click an element in the canvas to edit its styles.',
  'chat.inspect.commentHint': 'Click an element in the canvas to add a comment.',
  'chat.conversationsTitle': 'Konversationen',
  'chat.conversationsAria': 'Konversationsverlauf',
  'chat.newConversation': 'Neue Konversation',
  'chat.newConversationsTitle': 'Neue Konversation',
  'chat.conversationsHeading': 'Konversationen',
  'chat.new': 'Neu',
  'chat.emptyConversations': 'Noch keine Konversationen.',
  'chat.deleteConversation': 'Konversation löschen',
  'chat.renameConversationLabel': '„{title}“ umbenennen',
  'chat.deleteConversationConfirm':
    '„{title}“ löschen? Dadurch werden die Nachrichten entfernt.',
  'chat.untitledConversation': 'Konversation ohne Titel',
  'chat.forkedConversationTitle': '{title} Fork',
  'chat.forkConversationFailed': 'Diese Konversation konnte nicht geforkt werden.',
  'chat.startTitle': 'Konversation starten',
  'chat.startHint': "Beschreiben Sie, was Sie generieren möchten, oder starten Sie mit einem dieser Beispiele:",
  'chat.fillInputTitle': 'Klicken, um die Eingabe zu füllen',
  'chat.jumpToLatest': 'Zur neuesten springen',
  'chat.scrollToLatest': 'Zur neuesten scrollen',
  'chat.you': 'Sie',
  'chat.openFile': '{name} öffnen',
  'chat.copyPrompt': 'Prompt kopieren',
  'chat.copyDone': 'Kopiert!',
  'chat.composerPlaceholder': "Beschreiben Sie, was Sie generieren möchten…",
  'chat.activeFileEditingLabel': "Bearbeiten",
  'chat.activeFilePlaceholder': "Bitte Open Design, {file} zu ändern...",
  'chat.designArtifactsShowMore': "{count} weitere Designdateien anzeigen",
  'chat.mode.chat.label': 'Ask',
  'chat.mode.chat.title': 'Ask-Modus',

  'chat.mode.chat.summary': 'Für schnelle Antworten, Überarbeitungen, Planung und Diskussion, ohne automatisch ein Design-Artefakt zu erstellen.',
  'chat.mode.chat.solves': 'Nutze ihn, um Ideen zu klären, Prompts zu verbessern, Optionen zu vergleichen oder bestehende Arbeit zu besprechen.',
  'chat.mode.chat.query1': 'Fasse diesen Entwurf zusammen und zeige Lücken auf.',
  'chat.mode.chat.query2': 'Hilf mir, die beste Struktur für diese Landingpage zu wählen.',
  'chat.mode.chat.query3': 'Prüfe dieses Design und schlage konkrete Verbesserungen vor.',
  'chat.mode.design.label': 'Design Agent',
  'chat.mode.design.title': 'Design-Agent-Modus',
  'chat.mode.design.summary': 'Zum Erstellen oder Ändern konkreter Design-Ergebnisse wie Seiten, Prototypen, Live-Artefakte, Folien, Bilder, Videos, HyperFrames, Audio, Dashboards und Projektdateien.',
  'chat.mode.design.solves': 'Nutze ihn, wenn Open Design Dateien erzeugen, den Workspace aktualisieren oder ein Briefing in multimodale Ergebnisse verwandeln soll.',
  'chat.mode.design.query1': 'Erstelle aus diesem Briefing eine Produktlaunch-Landingpage und einen HyperFrames-Prototyp.',
  'chat.mode.design.query2': 'Erstelle ein Investoren-Deck mit 10 Folien und Sprechernotizen.',
  'chat.mode.design.query3': 'Entwickle Bild-, Video- und Audioideen für diese Kampagne.',
  'chat.mode.cardBestFor': 'Geeignet für',
  'chat.mode.cardTry': 'Beispielfragen',
  'chat.composerHint': "⌘/Ctrl + Enter zum Senden · Ziel, Inhalt, Stil und Format angeben",
  'chat.cliSettingsTitle': 'CLI- & Modelleinstellungen',
  'chat.cliSettingsAria': 'CLI- und Modelleinstellungen öffnen',
  'chat.attachTitle': 'Dateien anhängen (oder einfügen / ablegen)',
  'chat.attachAria': 'Dateien anhängen',
  'chat.importTitle': 'Quellen importieren (demnächst)',
  'chat.importLabel': 'Importieren',
  'chat.importComingSoon': 'Demnächst',
  'chat.importSoon': 'Bald',
  'chat.importFig': '.fig-Datei hochladen',
  'chat.importGitHub': 'GitHub verbinden',
  'chat.importWeb': 'Webelement erfassen',
  'chat.importFolder': 'Code-Ordner verknüpfen',
  'chat.importSkills': 'Skills und Designsysteme',
  'chat.importProject': 'Reference another project',
  'chat.importDesignSystemHeader': 'Designsystem auswählen',
  'chat.importDesignSystemBack': 'Zurück',
  'chat.importDesignSystemSearch': 'Designsysteme suchen…',
  'chat.importDesignSystemEmpty': 'Keine Designsysteme passen zu "{query}"',
  'chat.importDesignSystemNone': 'Keines — frei',
  'chat.importDesignSystemNoneSub': "In dieser Runde an kein System binden",
  'chat.importDesignSystemActive': 'Aktiv',
  'chat.importDesignSystemSwitched': 'Designsystem zu {title} gewechselt',
  'chat.importDesignSystemFailed': "Designsystem konnte nicht gewechselt werden. Bitte erneut versuchen.",
  'chat.importDesignSystemLoadFailed': 'Designsysteme konnten nicht geladen werden.',
  'chat.linkedFolderRemoveAria': 'Verknüpften Ordner {path} entfernen',
  'chat.linkedFolderNotFound': 'Ordner existiert nicht',
  'chat.linkedFolderAlready': 'Dieser Ordner ist bereits verknüpft',
  'chat.linkedFolderPickError': 'Ordnerauswahl konnte nicht geöffnet werden',
  'chat.queuedHeader': 'Queued',
  'chat.queuedToSend': 'to Send',
  'chat.queuedEditQueuedTaskAria': 'Edit queued task',
  'chat.queuedSave': 'Save',
  'chat.queuedCancel': 'Cancel',
  'chat.queuedReorder': 'Drag to reorder',
  'chat.queuedEdit': 'Edit',
  'chat.queuedMore': 'more queued',
  'chat.queuedFollowUpFallback': 'Queued follow-up',
  'chat.send': 'Senden',
  'chat.stop': 'Stoppen',
  'chat.removeAria': '{name} entfernen',
  'chat.example1Title': 'Editorial Pitch Deck',
  'chat.example1Tag': 'Magazin',
  'chat.example1Prompt':
    'Ein 10-Slide-Editorial-Pitch-Deck für ein Designstudio, das eine Seed-Runde aufnimmt — Swiss-Grid-Layout, übergroße Serif-Headlines mit markanten Initialen, Monospace-Abschnittsnummern, großzügiger Negativraum und Full-Bleed-Fotoslides im Wechsel mit textlastigen Slides. Cover, Vision, Markt, Produkt, Traction, Team, Ask, Kontakt.',
  'chat.example2Title': 'SaaS-Analytics-Dashboard',
  'chat.example2Tag': 'Daten',
  'chat.example2Prompt':
    'Ein dichtes Analytics-Dashboard für ein Developer-Tools-SaaS — KPI-Leiste mit Week-over-Week-Deltas, zwei gestapelte Liniendiagramme (MRR und aktive Workspaces), eine Welt-Heatmap der Nutzung, ein Kohorten-Retention-Raster, eine Top-Customers-Bestenliste und ein Echtzeit-Event-Feed. Dark Theme, tabellarische Monospace-Ziffern, Sparkline-Akzente.',
  'chat.example3Title': 'Annual Report Long-Scroll',
  'chat.example3Tag': 'Editorial',
  'chat.example3Prompt':
    'Ein interaktiver Annual Report für eine Klima-Non-Profit-Organisation — Long-Scroll-Editorial-Layout mit großen Pull-Quote-Blöcken, Datenvisualisierungen (gestapelte Balken, animierte Counter, Choropleth-Karte der Projektstandorte), Fotobrechern, Spenderwand und finalem Call-to-Action. Moderne Serifenschrift für Body, Sans-Serif-Chartlabels, erdige Papierpalette.',

  'preview.shareMenu': 'Teilen',
  'preview.exportMenu': 'Export',
  'preview.shareTemplateBadge': 'Template',
  'preview.shareToX': 'X / Twitter',
  'preview.shareToReddit': 'Reddit',
  'preview.shareToFacebook': 'Facebook',
  'preview.shareToLinkedIn': 'LinkedIn',
  'preview.shareToInstagram': 'Instagram',
  'preview.shareToXiaohongshu': '小红书',
  'preview.copyTemplateLink': 'Copy template link',
  'preview.copyShareText': 'Copy share text',
  'preview.shareSocialGroup': 'Share to social',
  'preview.shareCopyGroup': 'Copy',
  'preview.shareExportGroup': 'Export files',
  'preview.shareCopied': 'Copied',
  'preview.shareCopyFailed': 'Copy failed',
  'preview.shareTextDefault': 'Open Design template: {title}',
  'preview.openInNewTab': 'In neuem Tab öffnen',
  'preview.exit': '⤓ Beenden',
  'preview.fullscreen': '⤢ Vollbild',
  'preview.closeTitle': 'Schließen (Esc)',
  'preview.loading': '{label} wird geladen…',
  'preview.errorTitle': 'Beispiel konnte nicht geladen werden.',
  'preview.errorBody': 'Das Beispiel-HTML konnte nicht abgerufen werden. Stelle sicher, dass Open Design läuft, und versuche es erneut.',
  'preview.retry': 'Erneut versuchen',
  'preview.unavailableTitle': 'Für {noun} ist keine Vorschau verfügbar.',
  'preview.unavailableBody': 'Führe den Prompt im Chat aus, um {kind}-Output zu erzeugen.',
  'preview.nounSkill': 'diesen Skill',
  'preview.nounPlugin': 'dieses Plugin',
  'preview.nounTemplate': 'diese Vorlage',
  'preview.showSidebar': '{label} einblenden',
  'preview.hideSidebar': '{label} ausblenden',

  'misc.savedTemplate': 'Gespeichertes Template',
  'misc.primary': 'Primär',
  'misc.designSystem': 'Designsystem',

  'workspace.designFiles': 'Design-Dateien',
  'workspace.focusMode': 'Focus workspace',
  'workspace.showChat': 'Show chat',
  'workspace.closeTab': 'Tab schließen',
  'workspace.deleteFileConfirm': '„{name}“ aus dem Projektordner löschen?',
  'workspace.deleteSelectedFilesConfirm': '{n} ausgewählte Datei(en) aus dem Projektordner löschen?',
  'workspace.deleteSelectedFilesPartial': '{n} Datei(en) konnten nicht gelöscht werden.',
  'workspace.openFromDesignFiles': 'Datei öffnen aus',
  'workspace.designFilesLink': 'Design-Dateien',
  'workspace.loadingSketch': 'Sketch wird geladen…',
  'workspace.newTab': 'Neuer Tab',
  'workspace.searchFilesPlaceholder': 'Dateien suchen…',
  'workspace.openFile': 'Datei öffnen',
  'workspace.noFilesMatch': 'Keine passenden Dateien',
  'workspace.allFiles': 'Alle',
  'workspace.createNew': 'Neu erstellen',
  'workspace.tabOpen': 'Geöffnet',
  'workspace.newSideChat': 'Neuer Seiten-Chat',
  'workspace.newSideChatDescription': 'Einen kontextbezogenen Chat in einem neuen Tab öffnen',
  'workspace.sideChatContextBanner': 'Kontext der aktuellen Unterhaltung übernommen',
  'workspace.sideChatDefaultTitle': 'Seiten-Chat',
  'workspace.newTerminal': 'Neues Terminal',
  'workspace.newTerminalDescription': 'Eine Shell im Projektverzeichnis in einem neuen Tab öffnen',
  'workspace.newBrowser': 'Neuer Browser',
  'workspace.newBrowserDescription': 'Einen integrierten Browser-Tab für Referenzseiten und Browser-Aufgaben öffnen',
  'workspace.terminalStarting': 'Terminal wird gestartet…',
  'workspace.terminalStartingDescription': 'Projektshell wird vorbereitet. Das dauert normalerweise nur ein paar Sekunden.',
  'workspace.terminalSessionEnded': 'Sitzung beendet',
  'workspace.terminalReconnecting': 'Verbindung wird wiederhergestellt…',
  'workspace.terminalStartFailed': 'Terminalsitzung konnte nicht gestartet werden',
  'workspace.terminalRestart': 'Neu starten',
  'designFiles.title': 'Design-Dateien',
  'designFiles.upload': 'Dateien hochladen',
  'designFiles.pasteText': 'Als Textdatei einfügen',
  'designFiles.newSketch': 'Neuer Sketch',
  'designFiles.empty': 'Kreationen erscheinen hier',
  'designFiles.refresh': 'Aktualisieren',
  'designFiles.delete': 'Löschen',
  'designFiles.searchPlaceholder': 'Dateien suchen…',
  'designFiles.up': 'Nach oben',
  'designFiles.back': 'Zurück',
  'designFiles.crumbs': 'Projekt',
  'designFiles.rowMenu': 'Zeilenmenü',
  'designFiles.openInTab': 'In Tab öffnen',
  'designFiles.download': 'Herunterladen',
  'designFiles.downloadSelected': '{n} als ZIP herunterladen',
  'designFiles.deleteSelected': '{n} löschen',
  'designFiles.clearSelection': 'Auswahl aufheben',
  'designFiles.selectPage': 'Alle auf dieser Seite auswählen',
  'designFiles.selectAll': 'Alle auswählen',
  'designFiles.dropTitle': '⤓ Dateien hier ablegen',
  'designFiles.dropDesc':
    'Bilder, Docs, Referenzen oder Ordner — der Agent nutzt sie als Kontext.',
  'designFiles.upload.title': 'Dateien hochladen',
  'designFiles.paste.title': 'Text als Datei einfügen',
  'designFiles.upload.label': 'Hochladen',
  'designFiles.paste.label': 'Einfügen',
  'designFiles.previewOpen': 'Öffnen',
  'designFiles.previewClose': 'Vorschau schließen',
  'designFiles.modified': 'Geändert {time} · {size}',
  'designFiles.weeksAgo': 'vor {n} W.',
  'designFiles.groupBy': 'Gruppieren nach',
  'designFiles.groupByKind': 'Typ',
  'designFiles.groupByModified': 'Geändert',
  'designFiles.expandGroup': 'Erweitern',
  'designFiles.collapseGroup': 'Einklappen',
  'designFiles.sectionPages': 'Seiten',
  'designFiles.sectionScripts': 'Skripte',
  'designFiles.sectionImages': 'Bilder',
  'designFiles.sectionSketches': 'Sketches',
  'designFiles.sectionOther': 'Andere',
  'designFiles.modifiedToday': 'Heute',
  'designFiles.modifiedYesterday': 'Gestern',
  'designFiles.modifiedPrevious7Days': 'Letzte 7 Tage',
  'designFiles.modifiedPrevious30Days': 'Letzte 30 Tage',
  'designFiles.modifiedOlder': 'Älter',
  'designFiles.showMore': '+{n} weitere anzeigen',
  'designFiles.kindHtml': 'HTML-Seite',
  'designFiles.kindImage': 'Bild',
  'designFiles.kindSketch': 'Sketch',
  'designFiles.kindText': 'Text',
  'designFiles.kindCode': 'Skript',
  'designFiles.kindPdf': 'PDF',
  'designFiles.kindDocument': 'Dokument',
  'designFiles.kindPresentation': 'Präsentation',
  'designFiles.kindSpreadsheet': 'Tabellenblatt',
  'designFiles.kindBinary': 'Binärdatei',
  'designFiles.kindFolder': 'Ordner',
  'designFiles.folderCount': '{n} Dateien',
  'designFiles.newFolderTitle': 'Neuer Ordner',
  'designFiles.newFolderLabel': 'Ordnername',
  'designFiles.moveTitle': 'In Ordner verschieben',
  'designFiles.moveLabel': 'Zielordner',
  'designFiles.moveRoot': 'Projektstamm',
  'designFiles.moveNewFolder': 'Neuer Ordner…',
  'designFiles.move': 'Verschieben',
  'designFiles.copyPath': 'Pfad kopieren',
  'designFiles.copiedPath': 'Pfad kopiert',
  'designFiles.deleteFolderConfirm': 'Ordner „{name}“ und seinen gesamten Inhalt löschen?',
  'designFiles.folderCreated': 'Ordner „{name}“ erstellt',
  'designFiles.folderDeleted': 'Ordner „{name}“ gelöscht',
  'designFiles.filesMoved': '{n} nach {dest} verschoben',
  'designFiles.colName': 'Name',
  'designFiles.colKind': 'Art',
  'designFiles.colModified': 'Geändert',
  'designFiles.perPage': 'Anzeigen',
  'designFiles.all': 'Alle',
  'designFiles.prev': 'Zurück',
  'designFiles.next': 'Weiter',
  'designFiles.jumpToPage': 'Gehe zu Seite',
  'designFiles.pageInfo': '{start}–{end} von {total}',
  'designFiles.sectionFolders': 'Folders',
  'designFiles.sectionStylesheets': 'Stylesheets',
  'designFiles.sectionDocuments': 'Documents',
  'designFiles.kindStylesheet': 'Stylesheet',
  'designFiles.modifiedExt': 'Modified {time} · {size} · {ext}',
  'designFiles.usefulInfoLabel': 'Useful info',
  'designFiles.usefulInfoTip': 'Double-click any file to open it in a full tab.',
  'quickSwitcher.placeholder': 'Datei öffnen…',
  'quickSwitcher.empty': 'Keine Dateien in diesem Projekt',
  'quickSwitcher.noMatches': 'Keine Treffer',
  'quickSwitcher.navigate': 'navigieren',
  'quickSwitcher.open': 'öffnen',
  'quickSwitcher.close': 'schließen',
  'pasteDialog.title': 'Text einfügen',
  'pasteDialog.hint': 'Wird im Projektordner gespeichert. Wählen Sie einen beliebigen Namen.',
  'pasteDialog.fileNameLabel': 'Dateiname',
  'pasteDialog.namePlaceholder': 'notes.txt',
  'pasteDialog.contentLabel': 'Inhalt',
  'pasteDialog.contentPlaceholder': 'Beliebigen Text einfügen…',
  'pasteDialog.save': 'Speichern',
  'pasteDialog.cancel': 'Abbrechen',
  'sketch.save': 'Sketch speichern',
  'sketch.cancel': 'Abbrechen',
  'sketch.saving': 'Speichern…',
  'sketch.saved': 'Gespeichert',
  'sketch.tooltipDirty': 'Ungespeicherte Änderungen',
  'sketch.tooltipClean': 'Gespeichert',
  'fileViewer.empty': 'Wählen Sie eine Datei zur Ansicht aus.',
  'fileViewer.loading': 'Wird geladen…',
  'fileViewer.exportPptx': 'Als PPTX exportieren',
  'fileViewer.openInNewTab': 'In neuem Tab öffnen',
  'fileViewer.copyPath': 'Pfad kopieren',
  'fileViewer.copied': 'Kopiert!',
  'fileViewer.share': 'Teilen',
  'fileViewer.binaryMeta': 'Binärdatei · {size}',
  'fileViewer.binaryNote':
    'Binärdatei ({size} Bytes). Laden Sie sie herunter oder öffnen Sie sie von der Festplatte, um sie zu prüfen.',
  'fileViewer.pdfMeta': 'PDF · {size}',
  'fileViewer.documentMeta': 'Dokument',
  'fileViewer.presentationMeta': 'Präsentation',
  'fileViewer.spreadsheetMeta': 'Tabellenblatt',
  'fileViewer.previewUnavailable': 'Vorschau nicht verfügbar. Laden Sie die Datei herunter oder öffnen Sie sie zur Prüfung.',
  'fileViewer.download': 'Herunterladen',
  'fileViewer.open': 'Öffnen',
  'fileViewer.imageMeta': 'Bild · {size}',
  'fileViewer.reactMeta': 'React-Komponente · {size}',
  'fileViewer.sketchMeta': 'Sketch · {size}',
  'fileViewer.markdownStreamingMeta': 'Streaming-Vorschau…',
  'fileViewer.markdownErrorMeta': 'Vorschau ist möglicherweise unvollständig (Generierungsfehler).',
  'fileViewer.markdownStreamingStatus': 'Streaming… zeige partielles Markdown.',
  'fileViewer.markdownErrorStatus': 'Generierungsfehler. Zeige letzten verfügbaren Inhalt.',
  'fileViewer.videoMeta': 'Video · {size}',
  'fileViewer.audioMeta': 'Audio · {size}',
  'fileViewer.reload': 'Neu laden',
  'fileViewer.reloadDisk': 'Von Festplatte neu laden',
  'fileViewer.copy': 'Kopieren',
  'fileViewer.copyTitle': 'Dateiinhalte kopieren',
  'fileViewer.saveDisabled': 'Speichern (Read-only-Viewer)',
  'fileViewer.save': 'Speichern',
  'fileViewer.preview': 'Vorschau',
  'fileViewer.source': 'Quelle',
  'fileViewer.tweaks': 'Tweaks',
  'fileViewer.tweaksUnavailable': 'Kein Tweaks-Panel in diesem Artefakt',
  'fileViewer.jsxModuleTitle': 'Keine eigenständige Vorschau',
  'fileViewer.jsxModuleBody': 'Diese Datei ist ein Komponentenmodul, das von einer anderen Seite geladen wird.',
  'fileViewer.jsxModuleCta': 'Öffne die Seite, die es rendert:',
  'fileViewer.comment': 'Kommentieren',
  'fileViewer.edit': 'Bearbeiten',
  'fileViewer.draw': 'Zeichnen',
  'fileViewer.mark': 'Markieren',
  'fileViewer.markTool': 'Markierungswerkzeug',
  'fileViewer.boxSelect': 'Bereich auswählen',
  'fileViewer.screenshot': 'Screenshot',
  'manualEdit.layers': "Layers",
  'manualEdit.editableCount': "{count} editable",
  'manualEdit.hiddenBadge': "Hidden",
  'manualEdit.title': "Manual editor",
  'manualEdit.fallbackTitle': 'Edit',
  'manualEdit.movePanel': 'Move edit panel',
  'manualEdit.editParams': 'Parameter bearbeiten',
  'manualEdit.closePanel': 'Close edit panel',
  'manualEdit.selectLayer': "Select a layer",
  'manualEdit.empty': "Click an element in the preview or choose a layer.",
  'manualEdit.noEditableLayers': "No editable layers found.",
  'manualEdit.noClass': "no class",
  'manualEdit.tabsAria': "Manual edit tabs",
  'manualEdit.tabContent': "Content",
  'manualEdit.tabStyle': "Style",
  'manualEdit.tabAttributes': "Attributes",
  'manualEdit.tabHtml': "Html",
  'manualEdit.tabSource': "Source",
  'manualEdit.attributesJson': "Attributes JSON",
  'manualEdit.selectedHtml': "Selected element HTML",
  'manualEdit.fullSource': "Full artifact source",
  'manualEdit.applyContent': "Apply Content",
  'manualEdit.applyStyle': "Apply Style",
  'manualEdit.applyAttributes': "Apply Attributes",
  'manualEdit.applyHtml': "Apply HTML",
  'manualEdit.applySource': "Apply Source",
  'manualEdit.invalidAttributes': "Invalid attributes JSON.",
  'manualEdit.changes': "Changes",
  'manualEdit.undo': "Undo",
  'manualEdit.redo': "Redo",
  'manualEdit.noChanges': "No manual edits yet.",
  'manualEdit.imageUrl': "Image URL",
  'manualEdit.altText': "Alt text",
  'manualEdit.label': "Label",
  'manualEdit.text': "Text",
  'manualEdit.href': "Href",
  'manualEdit.textColor': "Text color",
  'manualEdit.background': "Background",
  'manualEdit.fontSize': "Font size",
  'manualEdit.weight': "Weight",
  'manualEdit.align': "Align",
  'manualEdit.padding': "Padding",
  'manualEdit.margin': "Margin",
  'manualEdit.radius': "Radius",
  'manualEdit.border': "Border",
  'manualEdit.width': "Width",
  'manualEdit.minHeight': "Min height",
  'fileViewer.zoomOut': 'Verkleinern',
  'fileViewer.zoomIn': 'Vergrößern',
  'fileViewer.resetZoom': 'Zoom zurücksetzen',
  'fileViewer.viewportAria': 'Preview viewport',
  'fileViewer.viewportDesktop': 'Desktop',
  'fileViewer.viewportDesktopTitle': 'Full-width desktop preview',
  'fileViewer.viewportTablet': 'Tablet',
  'fileViewer.viewportTabletTitle': 'Tablet preview at 820 × 1180 (modern portrait baseline)',
  'fileViewer.viewportMobile': 'Mobile',
  'fileViewer.viewportMobileTitle': 'Mobile preview at 390 × 844',
  'fileViewer.reloadAria': 'Neu laden',
  'fileViewer.previousSlide': 'Vorherige Slide',
  'fileViewer.nextSlide': 'Nächste Slide',
  'fileViewer.slideNavAria': 'Slide-Navigation',
  'fileViewer.present': 'Präsentieren',
  'fileViewer.presentInTab': 'In diesem Tab',
  'fileViewer.presentFullscreen': 'Vollbild',
  'fileViewer.presentNewTab': 'Neuer Tab',
  'fileViewer.exitPresentation': 'Präsentation beenden',
  'fileViewer.shareLabel': "Teilen",
  'fileViewer.shareMenuShareLink': 'TEILEN',
  'fileViewer.shareMenuPublishOnline': 'ONLINE VERÖFFENTLICHEN',
  'fileViewer.shareMenuDownload': 'HERUNTERLADEN',
  'fileViewer.shareMenuPresentation': 'Präsentation',
  'fileViewer.shareMenuSourceFiles': 'Quelldateien',
  'fileViewer.shareMenuSave': 'SPEICHERN',
  'fileViewer.copyShareLink': 'Teillink kopieren',
  'fileViewer.openSharePage': 'Teileseite öffnen',
  'fileViewer.shareLinkRequiresDeploy': 'Erst online veröffentlichen, um einen Link zu erhalten',
  'fileViewer.shareLinkPublishGuide': 'Oben online veröffentlichen, um Teilen zu aktivieren ↑',
  'fileViewer.shareAfterGenerationComplete': 'Teilen nach Abschluss der Generierung',
  'fileViewer.copyProviderLink': 'Copy {provider} link',
  'fileViewer.copyCloudflareLink': 'Copy Cloudflare link',
  'fileViewer.screenshotCopying': 'Copying screenshot...',
  'fileViewer.screenshotCopied': 'Screenshot copied to clipboard',
  'fileViewer.screenshotClipboardDenied': 'Browser blocked clipboard access',
  'fileViewer.screenshotPreviewLoading': 'Preview is still loading. Try again in a moment.',
  'fileViewer.screenshotCaptureFailed': 'Could not capture the preview. Please try again.',
  'fileViewer.exportPdf': 'Als PDF exportieren',
  'fileViewer.exportPdfAllSlides': 'Als PDF exportieren (alle Slides)',
  'fileViewer.exportPptxBusy': 'Warten Sie, bis der aktuelle Turn abgeschlossen ist.',
  'fileViewer.exportPptxHint':
    'Senden Sie eine Anfrage an den Agent, um dieses Design in PPTX umzuwandeln.',
  'fileViewer.exportPptxNa': 'PPTX-Export ist hier nicht verfügbar.',
  'fileViewer.exportZip': 'Als .zip herunterladen',
  'fileViewer.exportHtml': 'Als eigenständiges HTML exportieren',
  'fileViewer.exportMd': 'Als Markdown exportieren',
  'fileViewer.exportImage': 'Als Bild exportieren',
  'fileViewer.exportImageFailed': 'Bildaufnahme fehlgeschlagen. Bitte versuchen Sie es erneut oder verwenden Sie das Screenshot-Tool Ihres Browsers.',
  'fileViewer.exportImageModalSubtitle': 'Wählen Sie ein Format und laden Sie dann die aktuelle Vorschau als Bild herunter.',
  'fileViewer.exportImageFormatLabel': 'Format',
  'fileViewer.exportImageSaving': 'Bild wird gespeichert…',
  'fileViewer.exportImageSaved': 'Bild gespeichert',
  'fileViewer.exportImageDownloadStarted': 'Download gestartet',
  'fileViewer.exportImageDownloadDetails': '{filename} befindet sich in den Browser-Downloads, falls kein Speichern-unter-Dialog erschienen ist.',
  'fileViewer.exportJsx': 'Als JSX exportieren',
  'fileViewer.exportReactHtml': 'Vorschau als HTML exportieren',
  'fileViewer.exportStarted': 'Export started',
  'fileViewer.saveAsTemplate': 'Als Template speichern…',
  'fileViewer.savingTemplate': 'Template wird gespeichert…',
  'fileViewer.savedTemplate': 'Als „{name}“ gespeichert',
  'fileViewer.savedTemplateFail': 'Template konnte nicht gespeichert werden — bitte erneut versuchen.',
  'fileViewer.templateNamePrompt': 'Template-Name',
  'fileViewer.templateNameDefault': 'Template ohne Titel',
  'fileViewer.templateDescPrompt':
    'Kurze Beschreibung (optional — was macht dieses Template nützlich?)',
  'fileViewer.deployToVercel': 'Auf Vercel deployen',
  'fileViewer.redeployToVercel': 'Erneut deployen',
  'fileViewer.deployingToVercel': 'Deployment auf Vercel…',
  'fileViewer.deployProviderLabel': 'Anbieter',
  'fileViewer.vercelProvider': 'Vercel',
  'fileViewer.cloudflarePagesProvider': 'Cloudflare Pages',
  'fileViewer.deployToProvider': 'Auf {provider} deployen',
  'fileViewer.redeployToProvider': 'Erneut auf {provider} deployen',
  'fileViewer.deployingToProvider': 'Deployment auf {provider}…',
  'fileViewer.preparingPublicLink': 'Öffentlicher Link wird vorbereitet…',
  'fileViewer.copyDeployLink': 'Link kopieren',
    'fileViewer.deployModalTitle': 'Bereitstellen',
  'fileViewer.deployModalSubtitle': 'Verwende das Konto des gewählten Anbieters, um diese HTML-Vorschau zu deployen.',
  'fileViewer.vercelToken': 'Vercel Token',
  'fileViewer.vercelTokenGetLink': 'Vercel Token abrufen',
  'fileViewer.vercelTokenPlaceholder': 'Vercel Token einfügen',
  'fileViewer.vercelTokenReuseHint': 'Gespeicherter Token wird verwendet. Gib einen neuen Token ein, um ihn zu ersetzen.',
  'fileViewer.vercelTokenRequired': 'Gib zuerst einen Vercel Token ein und speichere ihn.',
  'fileViewer.cloudflareApiToken': 'Cloudflare API-Token',
  'fileViewer.cloudflareApiTokenGetLink': 'API-Token abrufen',
  'fileViewer.cloudflareApiTokenPlaceholder': 'Cloudflare API-Token einfügen',
  'fileViewer.cloudflareApiTokenReuseHint': 'Der gespeicherte Cloudflare API-Token wird verwendet. Gib einen neuen Token ein, um ihn zu ersetzen.',
  'fileViewer.cloudflareApiTokenRequired': 'Gib zuerst einen Cloudflare API-Token ein und speichere ihn.',
  'fileViewer.cloudflareApiTokenScopeHint': 'Wähle beim Erstellen des API-Tokens Pages Edit; benutzerdefinierte Domains benötigen Zone Read / DNS Edit.',
  'fileViewer.vercelTeamId': 'Team-ID',
  'fileViewer.vercelTeamSlug': 'Team-Slug',
  'fileViewer.cloudflareAccountId': 'Account-ID',
  'fileViewer.cloudflareAccountIdHint': 'Die Account-ID findest du im Cloudflare-Dashboard.',
  'fileViewer.cloudflareAccountIdRequired': 'Gib zuerst eine Cloudflare Account ID ein und speichere sie.',
  'fileViewer.cloudflareZoneLabel': 'Domain',
  'fileViewer.cloudflareZonePlaceholder': 'Save Cloudflare settings to load domains',
  'fileViewer.cloudflareZoneRequired': 'Select a Cloudflare domain first.',
  'fileViewer.cloudflareZonesLoading': 'Loading Cloudflare domains…',
  'fileViewer.cloudflareZonesRefresh': 'Refresh domains',
  'fileViewer.cloudflareZonesLoadFailed': 'Could not load Cloudflare domains.',
  'fileViewer.cloudflareZonesEmpty': 'No active full Cloudflare domains were found for this account.',
  'fileViewer.cloudflareDomainPrefixLabel': 'Subdomain prefix',
  'fileViewer.cloudflareDomainPrefixPlaceholder': 'demo',
  'fileViewer.cloudflareDomainPrefixInvalid': 'Use one DNS label only: lowercase letters, numbers, and hyphens.',
  'fileViewer.cloudflareHostnamePreview': 'Custom domain preview: {hostname}',
  'fileViewer.cloudflareCustomDomainHint': 'Optional: benutzerdefinierte Domain verbinden. Wenn das leer bleibt, wird trotzdem ein pages.dev-Link erstellt.',
  'fileViewer.cloudflarePagesDevLinkLabel': 'pages.dev URL',
  'fileViewer.cloudflareCustomDomainLinkLabel': 'Custom domain',
  'fileViewer.optional': 'Optional',
  'fileViewer.vercelPreviewOnly': 'Deployments sind derzeit nur Preview-Deployments.',
  'fileViewer.cloudflarePagesPreviewHint': 'Cloudflare Pages nutzt Direct Upload.',
  'fileViewer.savingConfig': 'Speichern…',
  'fileViewer.deployConfigSaveFailed': 'Vercel-Einstellungen konnten nicht gespeichert werden.',
  'fileViewer.deployFailed': 'Deployment fehlgeschlagen. Prüfe die Vercel-Einstellungen und versuche es erneut.',
  'fileViewer.deployProviderConfigSaveFailed': '{provider}-Einstellungen konnten nicht gespeichert werden.',
  'fileViewer.deployProviderFailed': '{provider}-Deployment fehlgeschlagen. Prüfe die Einstellungen und versuche es erneut.',
  'fileViewer.deployResultLabel': 'Deployment-URL',
  'fileViewer.deployLinkReady': 'Bereit',
  'fileViewer.deploySuccessToast': 'Deployment erfolgreich hochgeladen',
  'fileViewer.deploySuccessToastDetails': '{provider} · {url}',
  'fileViewer.deployLinkPreparingLabel': 'Öffentlicher Link ausstehend',
  'fileViewer.deployLinkDelayed': 'Die Seite wurde deployt. Der Anbieter bereitet den öffentlichen Link noch vor.',
  'fileViewer.deployLinkFailed': 'Benutzerdefinierte Domain fehlgeschlagen',
  'fileViewer.deployLinkProtectedLabel': 'Deployment-Schutz aktiviert',
  'fileViewer.deployLinkProtected': 'Die Seite wurde deployt, aber dieser Vorschau-Link erfordert eine Anmeldung. Deaktiviere Deployment Protection oder nutze eine eigene Domain.',
  'fileViewer.retryLink': 'Jetzt erneut versuchen',

  'questionForm.submit': 'Absenden',
  'questionForm.skip': 'Überspringen',
  'questionForm.locked': 'Beantwortet',

  'conv.switch': 'Konversation wechseln',
  'conv.label': 'Konversation',
  'conv.heading': 'Konversationen',
  'conv.new': '+ Neu',
  'conv.empty': 'Noch keine Konversationen.',
  'conv.untitled': 'Konversation ohne Titel',
  'conv.renameTooltip': 'Doppelklicken zum Umbenennen',
  'conv.delete': 'Konversation löschen',
  'conv.deleteConfirm': '„{title}“ löschen? Dadurch werden die Nachrichten entfernt.',

  'agentPicker.label': 'Agent',
  'agentPicker.modeChoose': 'Ausführungsmodus wählen',
  'agentPicker.localCli': 'Lokale CLI',
  'agentPicker.daemonOff': 'Daemon aus',
  'agentPicker.byok': 'API · BYOK',
  'agentPicker.selectAgent': 'Erkannte Code-Agent-CLI auswählen',
  'agentPicker.noAgents': 'keine Agents im PATH',
  'agentPicker.notInstalled': 'nicht installiert',
  'agentPicker.rescan': 'Lokalen PATH erneut nach Agents scannen',

  'tool.openInTab': '{name} in einem Tab öffnen',
  'tool.open': 'öffnen',
  'tool.todos': 'Todos',
  'tool.askQuestion': 'Frage',
  'tool.askQuestionSubmit': 'Senden',
  'tool.askQuestionPending': 'Warte auf deine Antwort',
  'tool.askQuestionAnswered': 'Beantwortet',
  'tool.todosExpand': 'Aufgaben einblenden',
  'tool.todosCollapse': 'Aufgaben ausblenden',
  'tool.todosDone': 'Fertig',
  'tool.todosDismiss': 'Aufgabenliste schließen',
  'tool.write': 'Write',
  'tool.edit': 'Edit',
  'tool.read': 'Read',
  'tool.bash': 'Bash',
  'tool.glob': 'Glob',
  'tool.grep': 'Grep',
  'tool.fetch': 'Fetch',
  'tool.search': 'Search',
  'tool.lines': '{n} Zeilen',
  'tool.changeSingular': 'Änderung',
  'tool.changePlural': 'Änderungen',
  'tool.in': 'in {path}',
  'tool.hide': 'ausblenden',
  'tool.output': 'Ausgabe',
  'tool.running': 'läuft…',
  'tool.error': 'Fehler',
  'tool.done': 'fertig',

  'assistant.role': 'Assistent',
  'assistant.workingLabel': 'Arbeitet',
  'assistant.doneLabel': 'Fertig',
  'assistant.copyMarkdown': 'Antwort-Markdown kopieren',
  'assistant.forkConversation': 'Ab hier forken',
  'assistant.forkingConversation': 'Fork wird erstellt…',
  'assistant.feedbackPrompt': 'Feedback',
  'assistant.feedbackPositive': 'Hilfreich',
  'assistant.feedbackNegative': 'Nicht hilfreich',
  'assistant.feedbackReasonTitle': 'Tell us why',
  'assistant.feedbackReasonPositiveMatched': 'Understood my request',
  'assistant.feedbackReasonPositiveVisual': 'Looks good',
  'assistant.feedbackReasonPositiveUseful': 'Useful structure',
  'assistant.feedbackReasonPositiveEasy': 'Easy to keep editing',
  'assistant.feedbackReasonPositiveDesignSystem': 'Followed the design system',
  'assistant.feedbackReasonNegativeMissed': 'Missed my request',
  'assistant.feedbackReasonNegativeVisual': 'Visual quality needs work',
  'assistant.feedbackReasonNegativeIncomplete': 'Incomplete output',
  'assistant.feedbackReasonNegativeHard': 'Hard to use',
  'assistant.feedbackReasonNegativeDesignSystem': 'Did not follow the design system',
  'assistant.feedbackReasonOther': 'Other',
  'assistant.feedbackReasonPlaceholder': 'Add a short note...',
  'assistant.feedbackReasonSubmit': 'Submit',
  'assistant.emptyResponseLabel': 'No output',
  'assistant.emptyResponseMessage': 'The provider ended the request without returning text or an artifact. Try another model or provider, check quota, or retry.',
  'assistant.unfinishedLabel': 'Mit unerledigter Arbeit gestoppt',
  'assistant.unfinishedSummary': '{n} Aufgabe(n) offen',
  'assistant.unfinishedMore': '+{n} weitere',
  'assistant.continueRemaining': 'Offene Aufgaben fortsetzen',
  'assistant.outTokens': '{n} ausgehend',
  'assistant.producedFiles': 'Dateien aus diesem Turn',
  'assistant.openFile': 'Öffnen',
  'assistant.downloadFile': 'Herunterladen',
  'nextStep.title': 'Nächster Schritt',
  'nextStep.share': 'Teilen',
  'nextStep.chipJoiner': ', ',
  'nextStep.chipPolishVisual': 'Hochwertiger gestalten',
  'nextStep.chipBrand': 'Markenstil verstärken',
  'nextStep.chipConcise': 'Texte straffen',
  'nextStep.chipSecondVersion': 'Zweite Version erstellen',
  'assistant.thinking': 'Denkt',
  'assistant.thought': 'Gedacht',
  'assistant.thoughtFor': 'Nachgedacht ({s}s)',
  'assistant.systemReminder': 'Systemhinweis',
  'assistant.possiblePromptInjection': 'Mögliche Prompt-Injektion',
  'assistant.waitingFirstOutput': 'Warte auf erste Ausgabe',
  'assistant.statusBootingAgent': 'Agent wird gestartet',
  'assistant.statusPreparing': 'Preparing...',
  'assistant.statusStarting': 'Startet',
  'assistant.statusRequesting': 'Anfrage wird gesendet',
  'assistant.statusThinking': 'Denkt',
  'assistant.statusStreaming': 'Streamt',
  'assistant.slowHint':
    'Dauert länger als üblich. Das Formular erscheint normalerweise nach 5–10 s — Sie können Stoppen und umformulieren.',
  'assistant.verbEditing': 'Bearbeitet',
  'assistant.verbWriting': 'Schreibt',
  'assistant.verbReading': 'Liest',
  'assistant.verbSearching': 'Sucht',
  'assistant.verbRunning': 'Führt aus',
  'assistant.verbTodos': 'Todos',
  'assistant.verbFetching': 'Holt',
  'assistant.verbCalling': 'Ruft auf',

  'qf.answered': 'beantwortet',
  'qf.choose': 'Auswählen…',
  'qf.required': 'erforderlich',
  'qf.lockedSubmitted':
    'Antworten gesendet — der Agent nutzt sie für den Rest der Sitzung.',
  'qf.lockedPrev': 'Dieses Formular stammt aus einem vorherigen Turn.',
  'qf.hint':
    'Wählen Sie, was passt. Überspringen Sie optionale Felder, die Ihnen egal sind — der Agent nutzt sinnvolle Standards.',
  'qf.submitDefault': 'Antworten senden',
  'qf.submitDisabledTitle': 'Füllen Sie zuerst die erforderlichen Felder aus',
  'qf.submitTitle': 'Antworten senden',
  'qf.cardSelected': 'ausgewählt',
  'qf.cardRefs': 'Refs:',
  'qf.cardSampleText': 'Franz jagt im komplett verwahrlosten Taxi quer durch Bayern · 0123',
  'questions.tabLabel': 'Questions',
  'questions.banner': 'Mind if I ask a couple of quick questions?',
  'questions.continue': 'Continue',
  'questions.generating': 'Generating questions…',
  'questions.skipAll': 'Skip all',
  'questions.autoSkipHint': 'Auto-continues when the timer ends',

  'sketch.toolSelect': 'Auswählen (no-op)',
  'sketch.toolPen': 'Stift',
  'sketch.toolText': 'Text',
  'sketch.toolRect': 'Rechteck',
  'sketch.toolArrow': 'Pfeil',
  'sketch.toolEraser': 'Radierer',
  'sketch.color': 'Farbe',
  'sketch.strokeSize': 'Strichstärke',
  'sketch.undo': 'Rückgängig',
  'sketch.clear': 'Leeren',
  'sketch.close': 'Schließen',
  'sketch.closeConfirm': 'Skizze schließen und ungespeicherte Änderungen verwerfen?',
  'sketch.textPrompt': 'Text:',
  'sketch.textModalTitle': 'Text hinzufügen',

  'critiqueTheater.userFacingName': 'Design-Jury',
  'critiqueTheater.roleDesigner': 'Designer',
  'critiqueTheater.roleCritic': 'Kritiker',
  'critiqueTheater.roleBrand': 'Marke',
  'critiqueTheater.roleA11y': 'Barrierefreiheit',
  'critiqueTheater.roleCopy': 'Text',
  'critiqueTheater.roundLabel': 'Runde {n} von {m}',
  'critiqueTheater.mustFix': '{n} Pflichtkorrekturen',
  'critiqueTheater.composite': 'Gesamtscore',
  'critiqueTheater.threshold': 'Schwelle',
  'critiqueTheater.consensus': 'Konsens',
  'critiqueTheater.interrupt': 'Abbrechen',
  'critiqueTheater.interrupting': 'Wird abgebrochen…',
  'critiqueTheater.interrupted': 'Abgebrochen',
  'critiqueTheater.interruptedSummary': 'In Runde {round} abgebrochen · bester Gesamtscore {composite}',
  'critiqueTheater.degradedHeading': 'Jury für diesen Lauf offline',
  'critiqueTheater.degradedReasonMalformed': 'Ungültige Jury-Ausgabe (Parser hat den Block abgelehnt).',
  'critiqueTheater.degradedReasonOversize': 'Jury-Ausgabe hat das sichere Byte-Budget überschritten.',
  'critiqueTheater.degradedReasonAdapter': 'Adapter {adapter} unterstützt das Critique-Protokoll nicht.',
  'critiqueTheater.degradedReasonProtocol': 'Adapter {adapter} verwendet eine nicht unterstützte Protokollversion.',
  'critiqueTheater.degradedReasonMissingArtifact': 'Der Lauf endete ohne ein finales Artefakt.',
  'critiqueTheater.replay': 'Wiedergabe',
  'critiqueTheater.replaySpeed': 'Wiedergabegeschwindigkeit',
  'critiqueTheater.readOnly': 'Nur lesen',
  'critiqueTheater.shippedSummary': 'In Runde {round} freigegeben · Gesamtscore {composite}',
  'critiqueTheater.shippedBadge': 'Freigegeben',
  'critiqueTheater.belowThresholdBadge': 'Unter der Schwelle',
  'critiqueTheater.timedOutBadge': 'Zeitüberschreitung',
  'critiqueTheater.failedHeading': 'Lauf fehlgeschlagen',
  'critiqueTheater.failedReasonCliExit': 'Agent-CLI hat vor Ende der Jury mit einem Fehler beendet.',
  'critiqueTheater.failedReasonPerRoundTimeout': 'Eine Runde hat ihr Zeitbudget überschritten.',
  'critiqueTheater.failedReasonTotalTimeout': 'Der gesamte Lauf hat sein Zeitbudget überschritten.',
  'critiqueTheater.failedReasonOrchestrator': 'Interner Orchestrierungsfehler.',
  'critiqueTheater.transcriptEmpty': 'Noch keine Wiedergabe verfügbar. Starte eine Jury, um eine aufzuzeichnen.',
  'critiqueTheater.transcriptLoading': 'Wiedergabe wird geladen…',
  'critiqueTheater.transcriptError': 'Wiedergabe konnte nicht geladen werden: {error}',
  'critiqueTheater.replaySpeedPaused': 'Pausiert',
  'critiqueTheater.replaySpeedInstant': 'Sofort',
  'critiqueTheater.replaySpeedLive': 'Live',
  'critiqueTheater.replaySpeedFast': 'Schnell',
  'critiqueTheater.settingsNav': 'Design Jury',
  'critiqueTheater.settingsNavHint': 'Fünf-Panel-Review für deine Agent-Runs',
  'critiqueTheater.settingsEnabledLabel': 'Design Jury während Agent-Runs anzeigen',
  'critiqueTheater.settingsEnabledDescription':
    'Aktiviert, läuft während jeder Agent-Generierung eine Fünf-Panel-Review mit, die das Ergebnis vor der Auslieferung bewertet. Du kannst jederzeit unterbrechen.',
  'critiqueTheater.settingsEnabledProjectHint':
    'Für dieses Projekt gespeichert. Neue Runs in diesem Projekt laufen serverseitig durch die Design Jury.',
  'critiqueTheater.settingsEnabledNoProjectHint':
    'Öffne ein Projekt, damit dies serverseitig persistiert. Bis dahin ändert sich nur die Browser-Voreinstellung.',

  'pet.title': 'Haustiere',
  'pet.tabBuiltIn': 'Vorgegeben',
  'pet.tabBuiltInHint': 'Mit Open Design gebündelte Begleiter — auswählen und adoptieren.',
  'pet.builtInEmpty': 'Eingebaute Pets sind gerade nicht verfügbar. Aktualisiere den Community-Tab, sobald der Daemon wieder online ist.',
  'pet.tabCustom': 'Eigenes',
  'pet.tabCustomHint': 'Eigener Name, Glyph, Farbe oder Sprite.',
  'pet.tabCommunity': 'Community',
  'pet.tabCommunityHint': 'Von Codex geschlüpfte Pets — adoptieren oder neue generieren.',
  'pet.tabsAria': 'Pet-Quelle',
  'pet.subtitle': 'Adoptiere ein kleines Maskottchen, das über deinem Workspace schwebt.',
  'pet.navTitle': 'Haustiere',
  'pet.navHint': 'Adoptieren oder anpassen',
  'pet.adopt': 'Adoptieren',
  'pet.adoptedBadge': 'Adoptiert',
  'pet.adoptCallout': 'Ein Haustier adoptieren',
  'pet.changePet': 'Haustier wechseln',
  'pet.wake': 'Wecken',
  'pet.tuck': 'Verstecken',
  'pet.wakeTitle': 'Haustier wecken — Overlay anzeigen.',
  'pet.tuckTitle': 'Haustier verstecken — Overlay ausblenden.',
  'pet.settingsTitle': 'Haustier-Einstellungen öffnen',
  'pet.useCustom': 'Mein Haustier verwenden',
  'pet.customTitle': 'Selbst gestalten',
  'pet.customHint': 'Wähle Name, Symbol und Akzentfarbe — das Overlay aktualisiert sich live.',
  'pet.customGreetingPlaceholder': 'Eine Begrüßung von deinem Haustier…',
  'pet.fieldName': 'Name',
  'pet.fieldGlyph': 'Symbol',
  'pet.fieldGlyphHint': 'Ein einzelnes Emoji passt am besten (z. B. 🐝, 🦄, 🐢).',
  'pet.fieldGreeting': 'Begrüßung',
  'pet.fieldAccent': 'Akzentfarbe',
  'pet.fieldAccentCustom': 'Eigene Farbe',
  'pet.fieldAccentDefault': 'Standard-Akzentfarbe',
  'pet.overlayAria': 'Haustier-Begleiter',
  'pet.spriteAria': '{name} — zum Bewegen ziehen, zum Plaudern klicken',
  'pet.spriteTitle': 'Hallo von {name}! Klick zum Plaudern.',
  'pet.composerTitle': 'Haustiere — wecken, verstecken oder auswählen',
  'pet.composerMenuTitle': 'Haustiere',
  'pet.composerMenuHint': 'Tipp: tippe /pet zum Umschalten',
  'pet.composerOpenSettings': 'Haustiere verwalten',
  'pet.welcomeTeaserTitle': 'Adoptiere ein Haustier',
  'pet.welcomeTeaserBody': 'Ein kleiner schwebender Begleiter für deinen Workspace.',
  'pet.welcomeTeaserCta': 'Eines wählen',
  'pet.imageUpload': 'Sprite hochladen',
  'pet.imageReplace': 'Sprite ersetzen',
  'pet.imageRemove': 'Emoji verwenden',
  'pet.imageHintIdle': 'PNG, JPG, WebP, GIF oder SVG. Spritesheet? Lade einen horizontalen Streifen hoch und setze die Frame-Anzahl.',
  'pet.imageHintActive': 'Dein Sprite wird angezeigt. Setze Frames > 1, um einen horizontalen Spritesheet zu animieren.',
  'pet.fieldFrames': 'Frames',
  'pet.fieldFramesHint': '1 = statisch. > 1 = horizontaler Spritesheet.',
  'pet.fieldFps': 'Geschwindigkeit (fps)',
  'pet.fieldFpsHint': 'Wie schnell die Frames durchlaufen.',
  'pet.atlasImport': 'Codex-Sprite importieren',
  'pet.atlasImportTitle': 'Importiere ein hatch-pet 8x9 / 192x208 Atlas (PNG oder WebP).',
  'pet.atlasPickerTitle': 'Animationszeile wählen',
  'pet.atlasPickerHint': 'Codex-Pets bringen 9 Animationszeilen mit. Standardmäßig behalten wir den ganzen Atlas, damit das Pet bei Hover, Drag-Richtung und langer Untätigkeit die Reihen wechselt. Du kannst es auch auf eine Schleife festlegen.',
  'pet.atlasCancel': 'Atlas verwerfen',
  'pet.atlasAdopt': 'Auf diese Zeile festlegen',
  'pet.atlasAdoptFull': 'Ganzen Atlas verwenden (animiert)',
  'pet.atlasAdoptFullTitle': 'Alle Zeilen behalten, damit das Pet auf Hover, Drag-Richtung und lange Untätigkeit reagiert.',
  'pet.atlasAdoptRowTitle': 'Nur die markierte Zeile als einzelne Endlosschleife herausschneiden.',
  'pet.atlasActiveHint': 'Animierter Atlas aktiv — das Pet wählt anhand deiner Interaktion (Hover, Drag, Untätigkeit) eine Zeile aus.',
  'pet.atlasRow.idle': 'Idle',
  'pet.atlasRow.running-right': 'Lauf rechts',
  'pet.atlasRow.running-left': 'Lauf links',
  'pet.atlasRow.waving': 'Winken',
  'pet.atlasRow.jumping': 'Springen',
  'pet.atlasRow.failed': 'Gescheitert',
  'pet.atlasRow.waiting': 'Warten',
  'pet.atlasRow.running': 'Laufen',
  'pet.atlasRow.review': 'Prüfen',
  'pet.hatchTitle': 'Neues Pet mit KI ausbrüten',
  'pet.hatchHint': 'Nutze das mitgelieferte hatch-pet-Skill im Chat, um ein Codex-Spritesheet zu erzeugen, und importiere es danach hier.',
  'pet.hatchConcept': 'Pet-Konzept (optional)',
  'pet.hatchConceptPlaceholder': 'z. B. ein winziger Pixel-Shiba im kuscheligen Pulli',
  'pet.hatchCopy': 'Prompt kopieren',
  'pet.hatchCopied': 'Kopiert!',
  'pet.hatchFoot': 'Sobald das Skill dein Pet gespeichert hat, kommst du zurück und wählst „Codex-Sprite importieren".',
  'pet.slashPopoverAria': 'Slash-Befehle',
  'pet.slashPopoverTitle': 'Befehle',
  'pet.slashPopoverHint': '↑↓ navigieren · enter auswählen · esc schließen',
  'pet.slashPet': 'Pet umschalten, adoptieren oder Einstellungen öffnen.',
  'pet.slashPetWake': 'Schwebende Pet-Anzeige aufwecken.',
  'pet.slashPetTuck': 'Pet vorerst wegstecken.',
  'pet.slashHatch': 'Codex-Pet mit dem hatch-pet-Skill erzeugen.',
  'pet.slashHatchArg': '<Konzept>',
  'pet.slashSearch': 'Suche im Web über den OD-Research-Befehl.',
  'pet.slashSearchArg': '<Suchanfrage>',
  'pet.codexTitle': 'Kürzlich ausgebrütet',
  'pet.codexSubtitle': 'Vom hatch-pet-Skill gepackte Pets erscheinen hier zur Ein-Klick-Adoption.',
  'pet.codexSubtitleWithDir': 'Suche in {dir} nach hatch-pet-Paketen.',
  'pet.codexEmpty': 'Noch keine ausgebrüteten Pets. Tippe /hatch im Chat, um eines zu erzeugen.',
  'pet.codexLoading': 'Suche nach ausgebrüteten Pets…',
  'pet.codexRefresh': 'Aktualisieren',
  'pet.codexAdopt': 'Adoptieren',
  'pet.codexAdopting': 'Adoptiere…',
  'pet.communitySync': 'Community-Pets herunterladen',
  'pet.communitySyncing': 'Lade…',
  'pet.communitySyncTitle': 'Synchronisiere die neuesten Pets aus Codex Pet Share + j20 Hatchery nach ~/.codex/pets/.',
  'pet.communitySyncDone': '{wrote} neue Pets synchronisiert ({total} insgesamt).',
  'pet.communitySyncFailed': 'Sync fehlgeschlagen: {error}',
  'pet.codexBundled': 'Mitgeliefert',
  'pet.codexBundledTitle': 'Wird mit Open Design ausgeliefert — kein Download nötig.',

  'settings.notifications': 'Benachrichtigungen',
  'settings.notificationsHint': 'Ton und Desktop-Benachrichtigung beim Abschluss von Aufgaben',
  'settings.notifyCompletionSound': 'Abschluss-Ton',
  'settings.notifyCompletionSoundHint': 'Wird abgespielt, wenn eine Runde endet. Standardmäßig aus.',
  'settings.notifySuccessSound': 'Erfolgs-Ton',
  'settings.notifyFailureSound': 'Fehler-Ton',
  'settings.notifyDesktop': 'Desktop-Benachrichtigung',
  'settings.notifyDesktopHint': 'Wird gesendet, wenn das Fenster nicht im Vordergrund ist.',
  'settings.notifyDesktopBlocked': 'Vom Browser blockiert. Bitte in den Website-Einstellungen erlauben.',
  'settings.notifyDesktopUnsupported': 'Desktop-Benachrichtigungen werden in dieser Umgebung nicht unterstützt.',
  'settings.notifyTest': 'Test senden',
  'settings.notifyTestSent': 'Testbenachrichtigung gesendet. Wenn kein Banner erscheint, Browser- und Systembenachrichtigungen prüfen.',
  'settings.notifyTestFailed': 'Benachrichtigungsaufruf fehlgeschlagen. Browser- und Systembenachrichtigungen prüfen.',
  'settings.notifySoundDing': 'Ding',
  'settings.notifySoundChime': 'Glockenspiel',
  'settings.notifySoundTwoToneUp': 'Zweiton aufwärts',
  'settings.notifySoundPluck': 'Zupfen',
  'settings.notifySoundBuzz': 'Summen',
  'settings.notifySoundTwoToneDown': 'Zweiton abwärts',
  'settings.notifySoundThud': 'Dumpfer Schlag',
  'settings.skills': 'Skills',
  'settings.skillsHint': 'Funktionale Skills, die der Agent während einer Aufgabe aufrufen kann',
  'settings.skillsNew': 'Neuer Skill',
  'settings.skillsEmpty': 'Wähle links einen Skill aus oder erstelle einen neuen.',
  'settings.skillsEdit': 'Bearbeiten',
  'settings.skillsDelete': 'Löschen',
  'settings.skillsDeleteConfirm': 'Löschen bestätigen',
  'settings.skillsName': 'Name',
  'settings.skillsTriggers': 'Trigger (Komma- oder zeilengetrennt)',
  'settings.skillsDescription': 'Beschreibung',
  'settings.skillsBody': 'SKILL.md-Inhalt',
  'settings.skillsCreate': 'Erstellen',
  'settings.skillsSave': 'Speichern',
  'settings.skillsSaving': 'Speichern…',
  'settings.skillsFiles': 'Dateien',
    'settings.skillsNoFiles': 'Keine Dateien in diesem Skill-Ordner.',
  'settings.skillsNameRequired': 'Skill-Name ist erforderlich.',
  'settings.skillsBodyRequired': 'Skill-Inhalt ist erforderlich.',
  'settings.designSystems': 'Design-Systeme',
  'settings.designSystemsHint': 'Verfügbare Design-Systeme durchsuchen und umschalten',
  'settings.designSystemsInstalled': 'Installiert',
  'settings.designSystemsAdd': 'Design-System hinzufügen',
  'settings.designSystemsHiddenCount': '{count} in der Home-Galerie ausgeblendet',
  'settings.designSystemsShowAll': 'Alle anzeigen',
  'settings.designSystemsShowHidden': 'Ausgeblendete anzeigen',
  'settings.designSystemsSource': 'Quelle',
  'settings.designSystemsSourceLocal': 'Lokal',
  'settings.designSystemsSourceGithub': 'GitHub',
  'settings.designSystemsSourceShadcn': 'shadcn',
  'settings.designSystemsShadcnReference': 'shadcn-Registry-Referenz',
  'settings.designSystemsImportShadcn': 'Aus shadcn importieren',
  'settings.designSystemsStructure': 'Struktur',
  'settings.designSystemsModeHybrid': 'Hybrid',
  'settings.designSystemsModeNormalized': 'Normalisiert',
  'settings.designSystemsModeVerbatim': 'Unverändert',
  'settings.designSystemsCraft': 'Craft',
  'settings.designSystemsCraftColor': 'Farbe',
  'settings.designSystemsCraftAccessibility': 'Barrierefreiheit',
  'settings.designSystemsGithubUrl': 'GitHub-URL',
  'settings.designSystemsProjectPath': 'Projektpfad',
  'settings.designSystemsImportGithub': 'Aus GitHub importieren',
  'settings.designSystemsImportProject': 'Aus Projekt importieren',
  'settings.designSystemsImportedStatus': '{title} importiert',
  'settings.designSystemsViewImported': 'Importiertes Design-System anzeigen',
  'settings.designSystemsCategory': 'Kategorie',
  'settings.designSystemsAllCategories': 'Alle Kategorien',
  'settings.designSystemsShowInHomeGallery': 'In Home-Galerie anzeigen',
  'settings.projectLocations': 'Projektorte',
  'settings.projectLocationsHint': 'Workspace-Speicherorte',
  'settings.projectLocationsDescription': 'Füge Arbeitsbasen hinzu, die mehrere Open Design-Projektordner enthalten können. Neue Projekte werden als Ordner in der ausgewählten Basis gespeichert.',
  'settings.projectLocationsSaveError': 'Projektorte konnten nicht gespeichert werden. Prüfe, ob jeder Pfad ein zugänglicher Ordner ist.',
  'settings.projectLocationsSaved': 'Projektorte gespeichert.',
  'settings.projectLocationsScanError': 'Projektorte konnten nicht gescannt werden.',
  'settings.projectLocationsScanComplete': 'Scan abgeschlossen: {imported} importiert, {existing} bereits registriert.',
  'settings.projectLocationsNoFolderSelected': 'Kein Ordner ausgewählt.',
  'settings.projectLocationsDuplicate': 'Diese Arbeitsbasis wurde bereits hinzugefügt.',
  'settings.projectLocationsWorkBaseMeta': 'Arbeitsbasis · Projekte werden hier als Unterordner erstellt',
  'settings.projectLocationsAddFolder': 'Ordner hinzufügen…',
  'settings.projectLocationsDefaultBadge': 'Standardort',
  'settings.projectLocationsMakeDefault': 'Als Standard festlegen',
  'settings.projectLocationsDefaultSaved': 'Standard-Projektort aktualisiert.',
  'settings.librarySkills': 'Fähigkeiten',
  'settings.libraryDesignSystems': 'Designsysteme',
  'settings.librarySearch': 'Suchen...',
  'settings.libraryAll': 'Alle',
  'settings.libraryPreview': 'Vorschau',
  'settings.libraryPreviewClose': 'Schließen',
  'settings.libraryLoading': 'Laden...',
  'settings.libraryNoResults': 'Keine Elemente entsprechen Ihrer Suche.',
  'settings.libraryEnabled': 'Aktiviert',
  'settings.libraryDisabled': 'Deaktiviert',
  'settings.connectorsNavHint': 'Externe Systemverbindungen',
  'settings.connectorsHint': 'Verwalte Connector- und Tool-Anbieter-Einstellungen für dieses Gerät.',
  'settings.connectorsComposioApiKey': 'Composio-API-Schlüssel',
  'settings.connectorsSavedTitle': 'Im lokalen Daemon gespeichert',
  'settings.connectorsSavedWithTail': 'Gespeichert · ••••{tail}',
  'settings.connectorsSaved': 'Gespeichert',
  'settings.connectorsGetApiKey': 'API-Schlüssel abrufen',
  'settings.connectorsReplaceKeyPlaceholder': 'Neuen Schlüssel einfügen, um den gespeicherten zu ersetzen',
  'settings.connectorsApiKeyPlaceholder': 'Composio-API-Schlüssel einfügen',
  'settings.connectorsClear': 'Löschen',
  'settings.connectorsClearConfirmTitle': 'Gespeicherten Composio-API-Schlüssel löschen?',
  'settings.connectorsClearConfirmBody': 'Beim Entfernen des Schlüssels werden alle Composio-Connectors dieses Workspaces getrennt. Verknüpfte Konten, OAuth-Freigaben und Tool-Zugriffe werden allesamt entfernt.',
  'settings.connectorsClearConfirmContinue': 'Weiter',
  'settings.connectorsClearFinalTitle': 'Damit werden alle Connectors getrennt',
  'settings.connectorsClearFinalBody': 'Dieser Schritt lässt sich nicht rückgängig machen. Nach dem Einfügen eines neuen Schlüssels musst du jede Integration neu verbinden.',
  'settings.connectorsClearFinalConfirm': 'Schlüssel löschen & trennen',
  'settings.connectorsClearArming': 'Einen Moment\u2026',
  'settings.connectorsClearCancel': 'Abbrechen',
  'settings.connectorsSaveKey': "Key speichern",
  'settings.connectorsSaveKeyTitle': "Diesen Key an den lokalen Daemon senden",
  'settings.connectorsKeySaving': "Speichere…",
  'settings.connectorsKeySaved': "Gespeichert ✓",
  'settings.connectorsKeyError': "Key konnte nicht gespeichert werden. Prüfe, ob der lokale Daemon läuft, und versuche es erneut.",
  'settings.connectorsHelpSaved': 'Dein Schlüssel entsperrt den Katalog unten und bleibt im lokalen Daemon. Füge einen neuen Schlüssel ein, um ihn zu ersetzen, oder lösche ihn.',
  'settings.connectorsHelpUnsaved': "Ungespeicherte Änderungen — klicke auf „Key speichern“, um diesen Schlüssel im lokalen Daemon abzulegen und den Katalog unten freizuschalten.",
  'settings.connectorsHelpEmpty': 'Füge einen Schlüssel hinzu, um den Katalog unten zu entsperren. Schlüssel werden lokal im Daemon gespeichert und nie über Umgebungsvariablen gesendet.',
  'settings.connectorsLoadingSavedKey': 'Im lokalen Daemon wird nach einem gespeicherten Schlüssel gesucht…',
  'settings.autosaveSaving': "Speichere…",
  'settings.autosaveSaved': "Alle Änderungen gespeichert",
  'settings.autosaveError': "Änderungen konnten nicht gespeichert werden. Der lokale Daemon ist möglicherweise offline.",
  'settings.libraryToggleLabel': 'Umschalten',
  // Memory (auto-extracted personalization saved as on-disk markdown)
  'settings.memory': 'Speicher',
  'settings.memoryHint': 'Persönliche Fakten, automatisch aus Chats extrahiert',
  'settings.memoryDescription': 'Aus Chats extrahierte Fakten zu deinen Präferenzen, gespeichert als Markdown-Dateien und in jeden Chat eingespielt.',
  'settings.memoryEnabled': 'Aktiviert',
  'settings.memoryDisabled': 'Deaktiviert',
  'settings.memoryEnableLabel': 'Speicher-Injektion aktivieren',
  'settings.memoryDisabledBanner': 'Der Speicher ist derzeit AUS. Bestehende Fakten bleiben auf der Festplatte, werden aber nicht in neue Chats eingespielt.',
  'settings.memoryNew': 'Neuer Eintrag',
  'settings.memoryEdit': 'Bearbeiten',
  'settings.memoryDelete': 'Löschen',
  'settings.memoryPreview': 'Vorschau',
  'settings.memoryEmpty': 'Noch keine Erinnerungen.',
  'settings.memoryEmptyHintZh': '记住: 用户偏好深色主题',
  'settings.memoryEmptyHintEn': 'I prefer dark mode',
  'settings.memoryName': 'Name',
  'settings.memoryDesc': 'Einzeilige Beschreibung',
  'settings.memoryBody': 'Inhalt (Markdown unterstützt)',
  'settings.memoryBodyHint': 'Regel zuerst, dann Zeilen Why und How to apply.',
  'settings.memoryStartersLabel': 'Need a starting point? Click to fill the form:',
  'settings.memoryStarterUserName': 'My role',
  'settings.memoryStarterUserDesc': 'I am a frontend engineer working on a SaaS design tool',
  'settings.memoryStarterUserBody': '- Role: senior frontend engineer\n- Stack: React, TypeScript, Vite\n- Domain: design / collaboration tools\n- Timezone: GMT+8 (Asia/Shanghai)\n\nWhen to apply: any chat — frame examples around web frontend.',
  'settings.memoryStarterFeedbackName': 'UI preferences',
  'settings.memoryStarterFeedbackDesc': 'Dark mode, large body text, low information density',
  'settings.memoryStarterFeedbackBody': '- Theme: dark by default\n- Body text: ≥ 18px\n- Information density: prefer whitespace, fewer items per screen\n\nWhy: less eye strain during long sessions.\nWhen to apply: whenever you generate UI, web pages, or slides.',
  'settings.memoryStarterProjectName': 'Current project',
  'settings.memoryStarterProjectDesc': 'Open Design v0.5 — chat-driven design editor',
  'settings.memoryStarterProjectBody': '- Goal: ship the chat-driven editor this quarter\n- Priorities: streaming render, local multimodal, offline-first\n- Stack: Next.js 16, Express daemon, SQLite\n\nWhen to apply: in any conversation about this project.',
  'settings.memorySaveHint': 'Not auto-saved — click Create / Save to apply.',
  'settings.memoryIndexSaveHint': 'Edits to the index are not auto-saved — click Save index to apply.',
  'settings.memoryIndexUnsaved': 'Unsaved changes',
  'settings.memoryFlashCreated': '✓ Memory created',
  'settings.memoryFlashSaved': '✓ Memory saved',
  'settings.memoryFlashDeleted': '✓ Memory deleted',
  'settings.memoryFlashIndexSaved': '✓ Index saved',
  'settings.memoryFlashPathCopied': '✓ Pfad kopiert',
  'settings.memoryNameLabel': 'Title',
  'settings.memoryTypeLabel': 'Type',
  'settings.memoryDescLabel': 'Description',
  'settings.memoryBodyLabel': 'Content',
  'settings.memoryTypeUser': 'Benutzer',
  'settings.memoryTypeFeedback': 'Feedback',
  'settings.memoryTypeProject': 'Projekt',
  'settings.memoryTypeReference': 'Referenz',
  'settings.memoryIndex': 'MEMORY.md (Index)',
  'settings.memoryIndexSave': 'Index speichern',
  'settings.memoryIndexReset': 'Zurücksetzen',
  'settings.memoryToastChanged': 'Speicher aktualisiert',
  'settings.memoryToastClickHint': 'Anzeigen',
  'settings.memoryAll': 'Alle',
  'settings.memoryExtractions': 'Extraction history',
  'settings.memoryExtractionsHint': 'Recent LLM-backed extraction attempts. Heuristic regex extraction always runs first; LLM extraction runs in the background after each turn.',
  'settings.memoryExtractionsEmpty': 'No extractions yet. The next chat turn will populate this list.',
  'settings.memoryExtractionsRefresh': 'Refresh',
  'settings.memoryExtractionsRefreshing': 'Refreshing…',
  'settings.memoryExtractionPhaseRunning': 'Running…',
  'settings.memoryExtractionPhaseSuccess': 'Success',
  'settings.memoryExtractionPhaseSkipped': 'Skipped',
  'settings.memoryExtractionPhaseFailed': 'Failed',
  'settings.memoryExtractionSkipNoProvider': 'No API key configured for LLM memory extraction.',
  'settings.memoryExtractionSkipDisabled': 'Memory is disabled.',
  'settings.memoryExtractionSkipEmpty': 'Empty user message — nothing to extract.',
  'settings.memoryExtractionSkipNoMatch': 'No regex pattern matched this turn.',
  'settings.memoryExtractionKindHeuristic': 'regex',
  'settings.memoryExtractionKindLlm': 'LLM',
  'settings.memoryExtractionProviderEnv': 'env',
  'settings.memoryExtractionProviderMediaConfig': 'media settings',
  'settings.memoryExtractionProposed': 'proposed',
  'settings.memoryExtractionWritten': 'written',
  'settings.memoryExtractionDuration': 'in',
  'settings.memoryNoProviderBannerTitle': 'LLM memory extraction is not running',
  'settings.memoryNoProviderBannerBody': 'No API key found for the memory extractor. Add an OpenAI key under Media providers, or set ANTHROPIC_API_KEY / OPENAI_API_KEY in the environment, to enable LLM-driven extraction. Heuristic regex extraction is still active.',
  'settings.memoryExtractionProviderOverride': 'memory settings',
  'settings.memoryExtractionDelete': 'Delete',
  'settings.memoryExtractionsClear': 'Clear',
  'settings.memoryExtractionsClearTitle': 'Clear all extraction history',
  'settings.libraryInstall': 'Installieren',
  'settings.libraryInstallGithub': 'GitHub',
  'settings.libraryInstallLocal': 'Lokaler Pfad',
  'settings.libraryInstallUrl': 'https://github.com/owner/repo',
  'settings.libraryInstallPath': '/path/to/skill-folder',
  'settings.libraryInstallButton': 'Installieren',
  'settings.libraryUninstall': 'Deinstallieren',
  'settings.libraryBuiltIn': 'Integriert',
  'settings.libraryInstalled': 'Installiert',
  'notify.successTitle': 'Aufgabe abgeschlossen',
  'notify.failureTitle': 'Aufgabe fehlgeschlagen',
  'notify.successBody': 'Eine Runde ist abgeschlossen.',
  'notify.failureBody': 'Die Aufgabe wurde mit einem Fehler beendet.',
  'updater.available': 'Update verfügbar',
  'updater.availableBody': 'Open Design {version} ist verfügbar. Es wird heruntergeladen, bevor der Installer geöffnet werden kann.',
  'updater.checking': 'Suche nach Updates',
  'updater.download': 'Update herunterladen',
  'updater.downloading': 'Update wird heruntergeladen',
  'updater.downloadingPercent': 'Update wird heruntergeladen {percent}%',
  'updater.done': 'Fertig',
  'updater.failed': 'Update fehlgeschlagen',
  'updater.installerOpenBody': 'Der Installer ist geöffnet. Open Design wird beendet, damit Sie das Update abschließen können.',
  'updater.installerOpened': 'Installer geöffnet',
  'updater.later': 'Später',
  'updater.openFailedFallback': 'Der Installer konnte nicht geöffnet werden.',
  'updater.openInstaller': 'Update installieren',
  'updater.opening': 'Installer wird geöffnet...',
  'updater.quitButton': 'Open Design beenden',
  'updater.quitFailedBody': 'Der Installer ist geöffnet, aber Open Design konnte nicht beendet werden. Beenden Sie Open Design, bevor Sie die App ersetzen.',
  'updater.quitFailedTitle': 'Beenden fehlgeschlagen',
  'updater.quitting': 'Wird beendet...',
  'updater.ready': 'Update bereit',
  'updater.readyGeneric': 'Eine neue Version ist bereit. Open Design wird geschlossen und der Installer geöffnet.',
  'updater.readyVersion': 'Open Design {version} ist bereit. Open Design wird geschlossen und der Installer geöffnet.',
  'updater.upToDate': 'Sie verwenden bereits die neueste Version.',
  'settings.memoryModelInlineLabel': 'Memory model',
  'settings.memoryModelInlineSameAsChat': 'Same as chat',
  'settings.memoryModelInlineSameAsChatWithModel': 'Same as chat ({model})',
  'settings.memoryModelInlineSameAsChatWithProvider': 'Same as chat ({provider})',
  'settings.memoryModelInlineHintCli': 'Optional. The memory extractor uses an env-var or media-providers API key on this provider; pinning a model here just overrides the auto-pick.',
  'settings.memoryModelInlineHintCliConstrained': 'Optional. Memory will call {provider}; needs an env-var or media-providers API key for that provider, or pick a model below to override.',
  'settings.memoryModelInlineHintByok': 'Optional. Reuses your chat API key on the same provider — picking a different (usually cheaper) model only changes the request body.',
  'settings.memoryModelInlineFlashSaved': 'Saved',
  'settings.memoryModelInlineFlashCleared': 'Cleared',
  'settings.orbit.eyebrow': 'Automatisierung',
  'settings.orbit.title': 'Orbit',
  'settings.orbit.navHint': 'Tägliche Connector-Zusammenfassung',
  'settings.orbit.lede': 'Connector-Aktivität nach Zeitplan sammeln und das Ergebnis als aktualisierbares live artifact veröffentlichen.',
  'settings.orbit.statusOnTitle': 'Geplante tägliche Läufe sind aktiv',
  'settings.orbit.statusOffTitle': 'Geplante tägliche Läufe sind deaktiviert',
  'settings.orbit.statusActive': 'Aktiv',
  'settings.orbit.statusOff': 'Aus',
  'settings.orbit.runTitle': 'Einen Orbit-Lauf starten und die Live-Konversation öffnen',
  'settings.orbit.running': 'Läuft…',
  'settings.orbit.runOpen': 'Jetzt ausführen',
  'settings.orbit.dailySummaryTitle': 'Tägliche Zusammenfassung',
  'settings.orbit.dailySummarySub': 'Wird einmal pro Tag zur geplanten lokalen Zeit ausgeführt.',
  'settings.orbit.on': 'Ein',
  'settings.orbit.off': 'Aus',
  'settings.orbit.runTimeTitle': 'Ausführungszeit',
  'settings.orbit.runTimeSub': 'Standard 08:00. Speichern, um den Daemon-Zeitplan anzuwenden.',
  'settings.orbit.runTimeAria': 'Tägliche Orbit-Ausführungszeit',
  'settings.orbit.nextRun': 'Nächster Lauf',
  'settings.orbit.nextRunScheduledAfterSave': 'Nach dem Speichern geplant',
  'settings.orbit.schedule': 'Zeitplan',
  'settings.orbit.pausedManualOnly': 'Pausiert — nur manuelle Läufe',
  'settings.orbit.templateTitle': 'Prompt-Vorlage',
  'settings.orbit.templateMissing': 'Vorlage {id} ist nicht installiert.',
  'settings.orbit.templateMissingOption': '{id} (fehlt)',
  'settings.orbit.templateMissingInstall': 'Installiere eine Orbit-Skill, um den Prompt zu steuern.',
  'settings.orbit.templateMissingPickAnother': 'Wähle eine andere Vorlage aus dem Dropdown.',
  'settings.orbit.templateResetTitle': 'Auf {id} zurücksetzen',
  'settings.orbit.templateReset': 'Zurücksetzen',
  'settings.orbit.templateHelp': 'Steuere Orbit mit einer Skill — der Beispiel-Prompt der ausgewählten Vorlage wird in jeden Orbit-Lauf eingefügt, damit Zusammenfassungen dieser Vorlagenform folgen.',
  'settings.orbit.templateAria': 'Orbit-Prompt-Vorlage',
  'settings.orbit.templatesLoading': 'Vorlagen werden geladen…',
  'settings.orbit.templatesOptgroup': 'Orbit-Skill-Vorlagen',
  'settings.orbit.lastRun': 'Letzter Lauf',
  'settings.orbit.triggerManual': 'Manuell',
  'settings.orbit.triggerScheduled': 'Geplant',
  'settings.orbit.meterAria': '{succeeded} erfolgreich, {skipped} übersprungen, {failed} fehlgeschlagen von {checked} geprüft',
  'settings.orbit.countChecked': 'Geprüft',
  'settings.orbit.countSucceeded': 'Erfolgreich',
  'settings.orbit.countSkipped': 'Übersprungen',
  'settings.orbit.countFailed': 'Fehlgeschlagen',
  'settings.orbit.runError': 'Orbit konnte nicht ausgeführt werden. Stelle sicher, dass der lokale Daemon läuft und Connectors konfiguriert sind.',
  'settings.orbit.gateAriaLabel': "Connectors werden für Orbit benötigt",
  'settings.orbit.gateEyebrow': "Einrichtung erforderlich",
  'settings.orbit.gateTitle': "Verbinde ein Tool, um Orbit zu nutzen",
  'settings.orbit.gateBody': "Orbit fasst die Aktivität deiner Connectors zusammen. Du hast noch nichts verbunden — füge mindestens eine Integration hinzu, damit Orbit etwas zu berichten hat.",
  'settings.orbit.gateBodyNoKey': "Orbit fasst die Aktivität deiner Connectors zusammen, und Connectors laufen über Composio. Trage einen Composio-API-Key unter Connectors ein, um den Katalog freizuschalten und deine erste Integration zu wählen.",
  'settings.orbit.gateAction': "Connectors öffnen",
  'settings.orbit.gateActionNoKey': "Composio konfigurieren",
  'settings.orbit.gateLoading': "Connectors werden geprüft…",
  'settings.orbit.controlsLockedBadge': "Gesperrt",
  'settings.orbit.controlsLockedHint': "Verbinde ein Tool, um Zeitplan und Vorlage von Orbit freizuschalten.",
  'settings.orbit.artifactKickerLive': 'live artifact',
  'settings.orbit.artifactKickerLegacy': 'Legacy-Zusammenfassung',
  'settings.orbit.artifactTitle': 'Tägliche Orbit-Aktivitätszusammenfassung',
  'settings.orbit.artifactMetaLive': 'Aktualisierbares HTML-Artefakt, erzeugt aus Connector-Aktivität.',
  'settings.orbit.artifactMetaLegacy': 'Erzeugt, bevor live artifact-Unterstützung aktiviert wurde — führe Orbit erneut aus, um eines zu veröffentlichen.',
  'settings.orbit.copyMarkdownTitle': 'Markdown-Zusammenfassung in die Zwischenablage kopieren',
  'settings.orbit.copied': 'Kopiert',
  'settings.orbit.copy': 'Kopieren',
  'settings.orbit.openArtifact': 'Artefakt öffnen',
  'settings.orbit.sourceMarkdown': 'Quell-Markdown',
  'liveArtifact.viewer.tabPreview': 'Vorschau',
  'liveArtifact.viewer.tabCode': 'Code',
  'liveArtifact.viewer.tabData': 'Daten',
  'liveArtifact.viewer.tabRefreshHistory': 'Aktualisierungsverlauf',
  'liveArtifact.viewer.dataEmpty': 'Kein data.json-Cache verfügbar.',
  'liveArtifact.viewer.code.templateHeading': 'Vorlagen-HTML',
  'liveArtifact.viewer.code.renderedHeading': 'Gerendertes HTML',
  'liveArtifact.viewer.code.templateHelp': 'Die bearbeitbare Vorlage, die mit data.json zum Erzeugen der Vorschau verwendet wird.',
  'liveArtifact.viewer.code.renderedHelp': 'Die erzeugte index.html, die derzeit von der Vorschau geladen wird.',
  'liveArtifact.viewer.code.variantAria': 'Code-Variante',
  'liveArtifact.viewer.code.variantTemplate': 'Vorlage',
  'liveArtifact.viewer.code.variantRendered': 'Gerendert',
  'liveArtifact.viewer.code.loading': 'Code wird geladen…',
  'liveArtifact.viewer.code.unavailable': 'Code ist noch nicht verfügbar.',
  'liveArtifact.viewer.code.empty': 'Diese Codedatei ist leer.',
  // Diagnostics export
  'diagnostics.exportTitle': 'Diagnose exportieren',
  'diagnostics.exportButton': 'Diagnose exportieren',
  'diagnostics.exportHint': 'Bündelt die aktuellen App-Logs und Geräteinformationen in ein Zip-Archiv, das du mit dem Team teilen kannst.',
  'diagnostics.exporting': 'Exportiere…',
  'diagnostics.exportSuccess': 'Diagnose gespeichert: {path}',
  'diagnostics.exportFailed': 'Diagnose-Export fehlgeschlagen: {message}',
  'generationPreview.title': 'Wird generiert…',
  'generationPreview.failedTitle': 'Generierung fehlgeschlagen',
  'generationPreview.failedFallback': 'Etwas ist schiefgelaufen. Bitte versuche es erneut.',
  'generationPreview.footnote': 'Dauert normalerweise 2–5 Minuten',
  'generationPreview.stepUnderstand': 'Anforderungen verstehen',
  'generationPreview.stepGenerate': 'Seite generieren',
  'generationPreview.stepPrepare': 'Vorschau vorbereiten',
  'generationPreview.retry': 'Erneut versuchen',
  'generationPreview.awaitingTitle': 'Warten auf deine Eingabe',
  'generationPreview.awaitingLead': 'Beantworte ein paar kurze Fragen im Chat, um fortzufahren.',
  'generationPreview.stoppedTitle': 'Generierung pausiert',
  'generationPreview.stoppedLead': 'Setze die verbleibenden Schritte im Chat links fort.',
  'generationPreview.reasonAuth': 'Anmeldung oder Autorisierung abgelaufen',
  'generationPreview.reasonRateLimited': 'Zu viele Anfragen',
  'generationPreview.reasonService': 'Generierungsdienst nicht verfügbar',
  'generationPreview.reasonBalance': 'Kontoguthaben aufgebraucht',
};
