const UI_TEXT_DE = { appName: 'Twitch VOD Manager', static: { navVods: 'Twitch VODs', navClips: 'Twitch Clips', navCutter: 'Video schneiden', navMerge: 'Videos zusammenfugen', navSettings: 'Einstellungen', queueTitle: 'Warteschlange', retryFailed: 'Wiederholen', retryFailedHint: 'Nur fehlgeschlagene Downloads erneut starten', healthUnknown: 'System: Unbekannt', healthGood: 'System: Stabil', healthWarn: 'System: Warnung', healthBad: 'System: Problem', clearQueue: 'Leeren', refresh: 'Aktualisieren', streamerPlaceholder: 'Streamer hinzufugen...', clipsHeading: 'Twitch Clip-Download', clipsInfoTitle: 'Info', clipsInfoText: 'Unterstutzte Formate:\n- https://clips.twitch.tv/ClipName\n- https://www.twitch.tv/streamer/clip/ClipName\n\nClips werden im Download-Ordner unter "Clips/StreamerName/" gespeichert.', cutterSelectTitle: 'Video auswahlen', cutterBrowse: 'Durchsuchen', mergeTitle: 'Videos zusammenfugen', mergeDesc: 'Wahle mehrere Videos aus, um sie zu einem Video zusammenzufugen. Die Reihenfolge kann geandert werden.', mergeAdd: '+ Videos hinzufugen', designTitle: 'Design', themeLabel: 'Theme', languageLabel: 'Sprache', languageDe: 'Deutsch', languageEn: 'Englisch', apiTitle: 'Twitch API', clientIdLabel: 'Client ID', clientSecretLabel: 'Client Secret', saveSettings: 'Speichern & Verbinden', downloadSettingsTitle: 'Download-Einstellungen', storageLabel: 'Speicherort', openFolder: 'Offnen', modeLabel: 'Download-Modus', modeFull: 'Ganzes VOD', modeParts: 'In Teile splitten', partMinutesLabel: 'Teil-Lange (Minuten)', performanceModeLabel: 'Performance-Profil', performanceModeStability: 'Max Stabilitat', performanceModeBalanced: 'Ausgewogen', performanceModeSpeed: 'Max Geschwindigkeit', smartSchedulerLabel: 'Smart Queue Scheduler aktivieren', duplicatePreventionLabel: 'Duplikate in Queue verhindern', persistQueueLabel: 'Queue zwischen App-Starts speichern', metadataCacheMinutesLabel: 'Metadata-Cache (Minuten)', filenameTemplatesTitle: 'Dateinamen-Templates', vodTemplateLabel: 'VOD-Template', partsTemplateLabel: 'VOD-Teile-Template', defaultClipTemplateLabel: 'Clip-Template', filenameTemplateHint: 'Platzhalter: {title} {id} {channel} {date} {part} {part_padded} {trim_start} {trim_end} {trim_length} {date_custom="yyyy-MM-dd"}', vodTemplatePlaceholder: '{title}.mp4', partsTemplatePlaceholder: '{date}_Part{part_padded}.mp4', defaultClipTemplatePlaceholder: '{date}_{part}.mp4', templateLintOk: 'Template-Check: OK', templateLintWarn: 'Unbekannte Platzhalter', templateGuideButton: 'Template Guide', templateGuideTitle: 'Dateinamen-Template Guide', templateGuideIntro: 'Nutze Platzhalter fur Dateinamen und teste dein Muster mit einer Live-Vorschau.', templateGuideTemplateLabel: 'Template', templateGuideOutputLabel: 'Live-Vorschau', templateGuideVarsTitle: 'Verfugbare Platzhalter', templateGuideVarCol: 'Platzhalter', templateGuideDescCol: 'Beschreibung', templateGuideExampleCol: 'Beispiel', templateGuideUseVod: 'VOD-Template nutzen', templateGuideUseParts: 'Teile-Template nutzen', templateGuideUseClip: 'Clip-Template nutzen', templateGuideClose: 'Schliessen', templateGuideContextVod: 'Kontext: Beispiel fur kompletten VOD-Download', templateGuideContextParts: 'Kontext: Beispiel fur VOD-Teil', templateGuideContextClip: 'Kontext: Beispiel fur Clip-Zuschnitt', templateGuideContextClipLive: 'Kontext: Aktuelle Auswahl im Clip-Dialog', runtimeMetricsTitle: 'Runtime Metrics', runtimeMetricsRefresh: 'Aktualisieren', runtimeMetricsExport: 'Export JSON', runtimeMetricsAutoRefresh: 'Auto-Refresh', runtimeMetricsLoading: 'Metriken werden geladen...', runtimeMetricsError: 'Runtime-Metriken konnten nicht geladen werden.', runtimeMetricsExportDone: 'Runtime-Metriken wurden exportiert.', runtimeMetricsExportCancelled: 'Export der Runtime-Metriken abgebrochen.', runtimeMetricsExportFailed: 'Export der Runtime-Metriken fehlgeschlagen.', runtimeMetricQueue: 'Queue', runtimeMetricMode: 'Modus', runtimeMetricRetries: 'Retries', runtimeMetricIntegrity: 'Integritatsfehler', runtimeMetricCache: 'Cache', runtimeMetricBandwidth: 'Bandbreite', runtimeMetricDownloads: 'Downloads', runtimeMetricActive: 'Aktiver Job', runtimeMetricLastError: 'Letzte Fehlerklasse', runtimeMetricUpdated: 'Aktualisiert', updateTitle: 'Updates', checkUpdates: 'Nach Updates suchen', preflightTitle: 'System-Check', preflightRun: 'Check ausfuhren', preflightFix: 'Auto-Fix Tools', preflightEmpty: 'Noch kein Check ausgefuhrt.', preflightChecking: 'Prufe...', preflightFixing: 'Fixe...', preflightReady: 'Alles bereit.', preflightInternet: 'Internet', preflightStreamlink: 'Streamlink', preflightFfmpeg: 'FFmpeg', preflightFfprobe: 'FFprobe', preflightPath: 'Download-Pfad', debugLogTitle: 'Live Debug-Log', refreshLog: 'Aktualisieren', autoRefresh: 'Auto-Refresh', notConnected: 'Nicht verbunden' }, status: { noLogin: 'Ohne Login (Public Modus)', connecting: 'Verbinde...', connected: 'Verbunden', connectFailedPublic: 'Verbindung fehlgeschlagen - Public Modus aktiv' }, tabs: { vods: 'VODs', clips: 'Clips', cutter: 'Video schneiden', merge: 'Videos zusammenfugen', settings: 'Einstellungen' }, queue: { empty: 'Keine Downloads in der Warteschlange', start: 'Start', stop: 'Pausieren', resume: 'Fortsetzen', statusDone: 'Abgeschlossen', statusFailed: 'Fehlgeschlagen', statusRunning: 'Laeuft', statusPaused: 'Pausiert', statusWaiting: 'Wartet', progressError: 'Fehler', progressReady: 'Bereit', progressLoading: 'Lade...', readyToDownload: 'Bereit zum Download', started: 'Download gestartet', done: 'Fertig', failed: 'Download fehlgeschlagen', speed: 'Geschwindigkeit', eta: 'Restzeit', part: 'Teil', emptyAlert: 'Die Warteschlange ist leer. Fuge zuerst ein VOD oder einen Clip hinzu.', duplicateSkipped: 'Dieser Eintrag ist bereits aktiv in der Warteschlange.' }, vods: { noneTitle: 'Keine VODs', noneText: 'Wahle einen Streamer aus der Liste.', loading: 'Lade VODs...', notFound: 'Streamer nicht gefunden', noResultsTitle: 'Keine VODs gefunden', noResultsText: 'Dieser Streamer hat keine VODs.', untitled: 'Unbenanntes VOD', views: 'Aufrufe', addQueue: '+ Warteschlange' }, clips: { dialogTitle: 'Clip zuschneiden', invalidDuration: 'Ungultig!', endBeforeStart: 'Endzeit muss grosser als Startzeit sein!', outOfRange: 'Zeit ausserhalb des VOD-Bereichs!', enterUrl: 'Bitte URL eingeben', loadingButton: 'Lade...', loadingStatus: 'Download laeuft...', downloadButton: 'Clip herunterladen', success: 'Download erfolgreich!', errorPrefix: 'Fehler: ', unknownError: 'Unbekannter Fehler', formatSimple: '(Standard)', formatTimestamp: '(mit Zeitstempel)', formatTemplate: '(benutzerdefiniert)', templateEmpty: 'Das Template darf im benutzerdefinierten Modus nicht leer sein.', templatePlaceholder: '{date}_{part}.mp4', templateHelp: 'Platzhalter: {title} {id} {channel} {date} {part} {part_padded} {trim_start} {trim_end} {trim_length} {date_custom="yyyy-MM-dd"}' }, cutter: { videoInfoFailed: 'Konnte Video-Informationen nicht lesen. FFprobe installiert?', previewLoading: 'Lade Vorschau...', previewUnavailable: 'Vorschau nicht verfugbar', cutting: 'Schneidet...', cut: 'Schneiden', cutSuccess: 'Video erfolgreich geschnitten!', cutFailed: 'Fehler beim Schneiden des Videos.' }, merge: { empty: 'Keine Videos ausgewahlt', merging: 'Zusammenfugen...', merge: 'Zusammenfugen', success: 'Videos erfolgreich zusammengefugt!', failed: 'Fehler beim Zusammenfugen der Videos.' }, updates: { bannerDefault: 'Neue Version verfugbar!', latest: 'Du hast die neueste Version!', checking: 'Suche nach Updates...', checkInProgress: 'Update-Prufung lauft bereits.', readyToInstall: 'Update ist bereit zur Installation.', checkFailed: 'Update-Prufung fehlgeschlagen.', downloading: 'Wird heruntergeladen...', downloadInProgress: 'Update-Download lauft bereits.', downloadFailed: 'Update-Download fehlgeschlagen.', available: 'verfugbar!', downloadNow: 'Jetzt herunterladen', downloadLabel: 'Download', ready: 'bereit zur Installation!', installNow: 'Jetzt installieren & neu starten', modalAvailableTitle: 'Update verfugbar', modalAvailableMessage: 'Version {version} ist verfugbar. Jetzt herunterladen?', modalReadyTitle: 'Update bereit', modalReadyMessage: 'Version {version} wurde heruntergeladen. Jetzt installieren und neu starten?', modalDismiss: 'Nein', modalDownloadConfirm: 'Ja, herunterladen', modalInstallConfirm: 'Ja, installieren', changelogLabel: 'Changelog', showChangelog: 'Changelog anzeigen', hideChangelog: 'Changelog ausblenden', noChangelog: 'Kein Changelog verfugbar.', releasedLabel: 'Release' } } as const;