{
    "appName": { "message": "CinePlex" },
    "appDescription": { "message": "Sucht auf Plex-Servern nach Inhalten und zeigt sie in der Benutzeroberfläche an" },
    "appTagline": { "message": "Filme, Serien & Musik" },
    "appLocaleCode": { "message": "de-DE" },
    "toggleNavigation": { "message": "Navigation umschalten" },
    "searchPlaceholder": { "message": "Suche nach Filmen oder Serien..." },
    "openMusicPlayer": { "message": "Musik-Player öffnen" },
    "settings": { "message": "Einstellungen" },
    "navMovies": { "message": "Filme" },
    "navSeries": { "message": "Serien" },
    "navProviders": { "message": "Anbieter" },
    "navPhotos": { "message": "Fotos" },
    "navStats": { "message": "Statistiken" },
    "navFavorites": { "message": "Favoriten" },
    "navHistory": { "message": "Verlauf" },
    "navRecommendations": { "message": "Empfehlungen" },
    "navMusic": { "message": "Musik" },
    "heroWelcome": { "message": "" },
    "heroSubtitle": { "message": "Entdecke Tausende von Filmen und Serien." },
    "addStream": { "message": "Stream hinzufügen" },
    "moreInfo": { "message": "Mehr Infos" },
    "popularMovies": { "message": "Beliebte Filme" },
    "allGenres": { "message": "Alle Genres" },
    "allYears": { "message": "Alle Jahre" },
    "sortPopular": { "message": "Am beliebtesten" },
    "sortTopRated": { "message": "Am besten bewertet" },
    "sortRecent": { "message": "Neueste" },
    "loadMore": { "message": "Mehr laden" },
    "photosBreadcrumbHome": { "message": "Alben" },
    "selectServer": { "message": "Einen Server auswählen" },
    "loading": { "message": "Lädt..." },
    "loadingLibraries": { "message": "Bibliotheken werden geladen..." },
    "photosEmptyState": { "message": "Keine Alben oder Fotos gefunden." },
    "photosEmptyStateSub": { "message": "Bitte wähle einen Server aus oder stelle sicher, dass du eine Fotobibliothek in Plex hast." },
    "statsTitle": { "message": "Bibliotheksstatistiken" },
    "statsAllTokens": { "message": "Alle Tokens" },
    "statsAnalyzing": { "message": "Analysiere deine Bibliothek..." },
    "statsActiveTokens": { "message": "Aktive Tokens" },
    "statsServersFound": { "message": "Gefundene Server" },
    "statsUniqueMovies": { "message": "Einzigartige Filme" },
    "statsUniqueSeries": { "message": "Einzigartige Serien" },
    "statsUniqueArtists": { "message": "Einzigartige Künstler" },
    "statsTokenServers": { "message": "Server des Tokens" },
    "statsChartMoviesByGenre": { "message": "Inhalt nach Genre (Filme)" },
    "statsChartSeriesByGenre": { "message": "Inhalt nach Genre (Serien)" },
    "statsChartByDecade": { "message": "Inhalt nach Jahrzehnt" },
    "recommendationsTitle": { "message": "Empfehlungen für dich" },
    "historyTitle": { "message": "Wiedergabeverlauf" },
    "clearHistory": { "message": "Alles löschen" },
    "consoleTitle": { "message": "Plex Scan-Konsole" },
    "footerCredit": { "message": "Eine Oberfläche für dein Plex-Universum." },
    "backButton": { "message": "Zurück" },
    "closeTrailer": { "message": "Trailer schließen" },
    "close": { "message": "Schließen" },
    "photoViewer": { "message": "Fotoanzeige" },
    "previous": { "message": "Zurück" },
    "next": { "message": "Weiter" },
    "notificationTemplateText": { "message": "Benachrichtigung" },
    "settingsTitleFull": { "message": "Einstellungen und Konfiguration" },
    "settingsTabGeneral": { "message": "Allgemein" },
    "settingsTabPlex": { "message": "Plex" },
    "settingsTabJellyfin": { "message": "Jellyfin" },
    "settingsTabPhpGen": { "message": "PHP-Generator" },
    "settingsTabData": { "message": "Daten" },
    "settingsApiServer": { "message": "API- und Serverkonfiguration" },
    "settingsTmdbApiLabel": { "message": "TMDB API-Schlüssel (Optional)" },
    "settingsTmdbApiPlaceholder": { "message": "Verwendet den Standardschlüssel, wenn leer gelassen" },
    "openaiApiKey": { "message": "OpenAI API-Schlüssel" },
    "settingsTmdbLangLabel": { "message": "Sprache für TMDB & UI" },
    "settingsRegionLabel": { "message": "Region für Anbieter" },
    "allRegions": { "message": "Alle Regionen" },
    "loadingRegions": { "message": "Regionen werden geladen..." },
    "errorLoadingRegions": { "message": "Fehler beim Laden der Regionen" },
    "settingsPhpUrlLabel": { "message": "Server-URL zum Hinzufügen von Streams" },
    "settingsPhpUrlPlaceholder": { "message": "https://dein-server.com/pfad/zum/script.php" },
    "settingsInterface": { "message": "Oberfläche" },
    "settingsLightTheme": { "message": "Heller Modus" },
    "settingsShowHero": { "message": "Willkommensbereich \"Hero\" anzeigen" },
    "settingsScanContent": { "message": "Inhaltsscan" },
    "settingsScanDesc": { "message": "Wähle aus, was gescannt werden soll, und drücke die Taste." },
    "settingsScanMovies": { "message": "Filme" },
    "settingsScanShows": { "message": "Serien" },
    "settingsScanArtists": { "message": "Musik" },
    "settingsScanPhotos": { "message": "Fotos" },
    "settingsSelectAll": { "message": "Alles auswählen" },
    "settingsStartScan": { "message": "Scan starten" },
    "settingsPlexTokens": { "message": "Plex-Tokens" },
    "settingsPlexTokensDesc": { "message": "Bearbeite die Liste der Plex-Tokens (JSON-Format)." },
    "settingsSaveTokens": { "message": "Tokens speichern" },
    "settingsJellyfinTitle": { "message": "Jellyfin-Einstellungen" },
    "settingsJellyfinDesc": { "message": "Füge die Daten deines Jellyfin-Servers hinzu, um dessen Inhalt zu scannen." },
    "jellyfinUrlLabel": { "message": "Jellyfin Server-URL" },
    "jellyfinUserLabel": { "message": "Benutzername" },
    "jellyfinPassLabel": { "message": "Passwort" },
    "jellyfinConnectAndScan": { "message": "Verbinden und Scannen" },
    "settingsPhpGenTitle": { "message": "PHP-Server-Skript-Generator" },
    "settingsPhpFileOptions": { "message": "Dateioptionen" },
    "settingsPhpSavePathLabel": { "message": "Speicherpfad auf dem Server" },
    "settingsPhpSavePathPlaceholder": { "message": "Bsp: /var/www/html/listen (leer für denselben Ordner)" },
    "settingsPhpFilenameLabel": { "message": "Dateiname" },
    "settingsPhpFileAction": { "message": "Dateiaktion" },
    "settingsPhpActionAppend": { "message": "An das Ende der Datei anhängen (kumulativ)" },
    "settingsPhpActionOverwrite": { "message": "Datei überschreiben (neu beginnen)" },
    "settingsPhpSecurity": { "message": "Sicherheit (Optional)" },
    "settingsPhpUseSecretKey": { "message": "Geheimschlüssel verwenden (Empfohlen)" },
    "settingsPhpSecretKeyPlaceholder": { "message": "Gib einen sicheren Geheimschlüssel ein" },
    "settingsPhpGeneratedCode": { "message": "Generierter Code" },
    "settingsPhpGeneratedPlaceholder": { "message": "Der generierte PHP-Code wird hier angezeigt." },
    "settingsGenerateScript": { "message": "Skript generieren" },
    "settingsCopyScript": { "message": "Skript kopieren" },
    "settingsDataManagement": { "message": "Lokale Datenbankverwaltung" },
    "settingsImportDb": { "message": "DB aus Datei importieren" },
    "settingsExportDb": { "message": "DB in Datei exportieren" },
    "settingsClearContent": { "message": "Lokale Inhaltsdaten löschen" },
    "settingsClearContentDesc": { "message": "Diese Aktion löscht Filme, Serien und Musik aus der lokalen Datenbank, hat aber keine Auswirkungen auf deine Favoriten oder Einstellungen." },
    "settingsClose": { "message": "Schließen" },
    "settingsSave": { "message": "Einstellungen speichern" },
    "musicSidenavTitle": { "message": "Plex Musik" },
    "musicAllServers": { "message": "Alle Server" },
    "musicSearchArtistPlaceholder": { "message": "Künstler suchen..." },
    "musicSearchDiscographyPlaceholder": { "message": "In Diskografie suchen..." },
    "musicNothingPlaying": { "message": "Nichts wird abgespielt" },
    "musicSelectSong": { "message": "Wähle ein Lied" },
    "musicToStart": { "message": "um die Wiedergabe zu starten" },
    "miniplayerDownloadSong": { "message": "Lied herunterladen" },
    "miniplayerDownloadAlbum": { "message": "M3U-Album herunterladen" },
    "miniplayerVolume": { "message": "Lautstärke" },
    "miniplayerShuffle": { "message": "Zufall" },
    "miniplayerEqualizer": { "message": "Equalizer" },
    "miniplayerOpenList": { "message": "Liste öffnen" },
    "eqTitle": { "message": "Grafischer Equalizer" },
    "eqPresetsLabel": { "message": "Voreinstellungen" },
    "eqPresetFlat": { "message": "Flach" },
    "eqPresetRock": { "message": "Rock" },
    "eqPresetPop": { "message": "Pop" },
    "eqPresetJazz": { "message": "Jazz" },
    "eqPresetClassical": { "message": "Klassik" },
    "eqPresetBassBoost": { "message": "Bass-Boost" },
    "eqPreampLabel": { "message": "Vorverstärker" },
    "infoModalTitle": { "message": "Information" },
    "infoModalFieldTitle": { "message": "Titel:" },
    "infoModalFieldArtist": { "message": "Künstler:" },
    "infoModalFieldAlbum": { "message": "Album:" },
    "infoModalFieldSong": { "message": "Lied:" },
    "infoModalFieldYear": { "message": "Jahr:" },
    "infoModalFieldGenre": { "message": "Genre:" },
    "lang_en": { "message": "Englisch" },
    "lang_es": { "message": "Spanisch" },
    "lang_fr": { "message": "Französisch" },
    "lang_de": { "message": "Deutsch" },
    "lang_it": { "message": "Italienisch" },
    "lang_pt": { "message": "Portugiesisch" },
    "essentialFeaturesNotSupported": { "message": "Dein Browser unterstützt wesentliche Funktionen nicht." },
    "dbAccessError": { "message": "Fehler beim Zugriff auf die lokale Datenbank." },
    "dbUpdateNeeded": { "message": "Die Datenbank muss aktualisiert werden, bitte lade die Seite neu." },
    "dbBlocked": { "message": "Bitte schließe andere Tabs dieser Anwendung, um fortzufahren." },
    "deletingContentData": { "message": "Lokale Inhaltsdaten werden gelöscht..." },
    "noContentDataToDelete": { "message": "Keine Inhaltsdaten zum Löschen." },
    "contentDataDeleted": { "message": "Inhaltsdaten aus IndexedDB gelöscht." },
    "errorDeletingData": { "message": "Fehler beim Löschen der Daten: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aceEditorNotAvailable": { "message": "Texteditor nicht verfügbar." },
    "errorLoadingTokens": { "message": "Fehler beim Laden der Tokens in den Editor." },
    "errorLoadingTokensMessage": { "message": "Fehler beim Laden der Tokens: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aceEditorNotAvailableToSave": { "message": "Editor zum Speichern nicht verfügbar." },
    "invalidJsonFormat": { "message": "Ungültiges JSON-Format. Muss { \"tokens\": [...] } sein" },
    "tokensSaved": { "message": "Tokens erfolgreich gespeichert." },
    "errorSavingTokens": { "message": "Fehler beim Speichern der Tokens: $message$", "placeholders": { "message": { "content": "$1" } } },
    "dbNotAvailable": { "message": "IndexedDB ist nicht verfügbar." },
    "dbExported": { "message": "Datenbank erfolgreich exportiert." },
    "errorExportingDb": { "message": "Fehler beim Exportieren der Datenbank: $message$", "placeholders": { "message": { "content": "$1" } } },
    "invalidJsonFile": { "message": "Die Datei enthält kein gültiges JSON-Objekt." },
    "noDataToImport": { "message": "Die Datei enthält keine Daten für die aktuellen DB-Abschnitte." },
    "dbImported": { "message": "Datenbank erfolgreich importiert." },
    "errorImportingDb": { "message": "Fehler beim Importieren der Datenbank: $message$", "placeholders": { "message": { "content": "$1" } } },
    "updatingView": { "message": "Ansicht wird mit neuen Daten aktualisiert..." },
    "confirmClearContent": { "message": "Bist du sicher, dass du die lokalen Inhaltsdaten (Filme, Serien, Musik usw.) löschen möchtest? Favoriten und Einstellungen werden NICHT gelöscht." },
    "trailerNotFound": { "message": "Für diesen Titel wurde kein Trailer gefunden." },
    "confirmClearHistory": { "message": "Bist du sicher, dass du deinen gesamten Wiedergabeverlauf löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden." },
    "historyCleared": { "message": "Wiedergabeverlauf gelöscht." },
    "historyItemDeleted": { "message": "Eintrag aus dem Verlauf gelöscht." },
    "errorGeneratingScript": { "message": "Generiere zuerst ein Skript, um es kopieren zu können." },
    "scriptCopied": { "message": "PHP-Skript in die Zwischenablage kopiert." },
    "errorCopyingScript": { "message": "Fehler beim Kopieren des Skripts." },
    "scriptGenerated": { "message": "PHP-Skript generiert." },
    "errorLoadingAlbum": { "message": "Fehler beim Laden des Albums: $message$", "placeholders": { "message": { "content": "$1" } } },
    "noPhotoServerSelected": { "message": "Fehler: Es wurde kein Fotoserver ausgewählt." },
    "loadingGenres": { "message": "Lade Genres..." },
    "errorLoadingGenres": { "message": "Fehler beim Laden" },
    "noContentFound": { "message": "Keine Ergebnisse gefunden." },
    "couldNotLoadContent": { "message": "Inhalt konnte nicht geladen werden." },
    "noFavorites": { "message": "Du hast noch keine Favoriten." },
    "errorLoadingFavorites": { "message": "Fehler beim Laden der Favoriten." },
    "historyEmpty": { "message": "Dein Verlauf ist leer." },
    "historyEmptySub": { "message": "Durchsuche und schaue Inhalte an, damit sie hier erscheinen." },
    "errorGeneratingRecommendations": { "message": "Fehler beim Erstellen von Empfehlungen." },
    "noRecommendations": { "message": "Wir müssen dich besser kennenlernen, um dir Empfehlungen geben zu können!" },
    "errorGeneratingStats": { "message": "Fehler beim Erstellen von Statistiken." },
    "noServersForToken": { "message": "Keine zugehörigen Server für dieses Token gefunden." },
    "searchingActorContent": { "message": "Suche nach Inhalten von $actorName$", "placeholders": { "actorName": { "content": "$1" } } },
    "errorLoadingActorContent": { "message": "Inhalt für $actorName$ konnte nicht geladen werden.", "placeholders": { "actorName": { "content": "$1" } } },
    "errorAddingStream": { "message": "Fehler beim Hinzufügen von Stream(s): $message$", "placeholders": { "message": { "content": "$1" } } },
    "phpUrlNotConfigured": { "message": "Die PHP-Server-URL ist nicht konfiguriert. Bitte richte sie in den Einstellungen ein." },
    "searchingStreams": { "message": "Suche nach Streams für \"$title$\"", "placeholders": { "title": { "content": "$1" } } },
    "sendingStreams": { "message": "Sende $count$ Stream(s) an den Server...", "placeholders": { "count": { "content": "$1" } } },
    "streamAddedSuccess": { "message": "Stream(s) erfolgreich hinzugefügt." },
    "generatingM3U": { "message": "Generiere M3U für \"$title$\"", "placeholders": { "title": { "content": "$1" } } },
    "m3uDownloaded": { "message": "\"\"$title$\" heruntergeladen.", "placeholders": { "title": { "content": "$1" } } },
    "errorGeneratingM3U": { "message": "Fehler beim Generieren der M3U: $message$", "placeholders": { "message": { "content": "$1" } } },
    "settingsSavedSuccess": { "message": "Einstellungen erfolgreich gespeichert." },
    "errorSavingSettings": { "message": "Fehler beim Speichern der Einstellungen in der Datenbank." },
    "languageChangeReload": { "message": "Sprache geändert. Die Anwendung wird jetzt neu geladen." },
    "addedToFavorites": { "message": "Zu Favoriten hinzugefügt." },
    "removedFromFavorites": { "message": "Aus Favoriten entfernen." },
    "plexScanInProgress": { "message": "Plex-Scan läuft bereits." },
    "plexScanStarting": { "message": "Starte Plex-Scan..." },
    "noPlexTokens": { "message": "Keine Plex-Tokens konfiguriert." },
    "clearingSections": { "message": "Lösche Abschnitte: $sections$", "placeholders": { "sections": { "content": "$1" } } },
    "sectionsCleared": { "message": "Abschnitte gelöscht." },
    "tokenFoundServers": { "message": "Token $token$... hat $count$ Server gefunden.", "placeholders": { "token": { "content": "$1" }, "count": { "content": "$2" } } },
    "errorProcessingToken": { "message": "Fehler bei der Verarbeitung von Token $token$...: $message$", "placeholders": { "token": { "content": "$1" }, "message": { "content": "$2" } } },
    "initialScanPhaseComplete": { "message": "Initiale Scan-Phase abgeschlossen." },
    "retryPhaseFinished": { "message": "Wiederholungsphase abgeschlossen." },
    "plexScanFinished": { "message": "Scan abgeschlossen. Aktualisiere Inhalte..." },
    "plexScanFatalError": { "message": "FATALER FEHLER: $message$", "placeholders": { "message": { "content": "$1" } } },
    "errorDuringScan": { "message": "Fehler während des Scans: $message$", "placeholders": { "message": { "content": "$1" } } },
    "scanCancelled": { "message": "Scan vom Benutzer abgebrochen." },
    "scanCancelledInfo": { "message": "Scan abgebrochen." },
    "retyingSection": { "message": "Wiederhole Abschnitt \"$title$\"", "placeholders": { "title": { "content": "$1" } } },
    "retrySuccess": { "message": "[ERFOLG] Wiederholung von \"$title$\" abgeschlossen.", "placeholders": { "title": { "content": "$1" } } },
    "retryError": { "message": "[FINALER FEHLER] Wiederholung für \"$title$\" fehlgeschlagen: $message$", "placeholders": { "title": { "content": "$1" }, "message": { "content": "$2" } } },
    "noRetriesPending": { "message": "Keine ausstehenden Wiederholungen." },
    "startingRetryPhase": { "message": "Starte Wiederholungsphase für $count$ Abschnitte...", "placeholders": { "count": { "content": "$1" } } },
    "retryPhaseCancelled": { "message": "Wiederholungsphase abgebrochen." },
    "errorInitializingMusicPlayer": { "message": "Fehler beim Initialisieren des Musik-Players." },
    "criticalErrorLoadingMusic": { "message": "Kritischer Fehler beim Laden der Musikdaten." },
    "errorLoadingArtists": { "message": "Fehler beim Laden der Künstler." },
    "dbUnavailableError": { "message": "Fehler: Datenbank nicht verfügbar." },
    "updatingMusicData": { "message": "Aktualisiere Musikdaten..." },
    "musicDataUpdated": { "message": "Musikdaten aktualisiert." },
    "errorFetchingArtistSongs": { "message": "Fehler beim Abrufen der Lieder des Künstlers." },
    "errorLoadingSongs": { "message": "Fehler beim Laden der Lieder." },
    "noArtistsFound": { "message": "Keine Künstler gefunden." },
    "artistsCounter": { "message": "$start$-$end$ von $total$", "placeholders": { "start": { "content": "$1" }, "end": { "content": "$2" }, "total": { "content": "$3" } } },
    "artistsCounterSingle": { "message": "$total$ Künstler", "placeholders": { "total": { "content": "$1" } } },
    "artistsCounterLoading": { "message": "Lädt..." },
    "noSongsFound": { "message": "Keine Lieder gefunden." },
    "shuffleOn": { "message": "Zufallsmodus aktiviert." },
    "shuffleOff": { "message": "Zufallsmodus deaktiviert." },
    "downloadingSong": { "message": "Starte Download von \"$title$\"", "placeholders": { "title": { "content": "$1" } } },
    "songDownloaded": { "message": "\"\"$title$\" heruntergeladen.", "placeholders": { "title": { "content": "$1" } } },
    "errorDownloadingSong": { "message": "Fehler beim Herunterladen von \"$title$\"", "placeholders": { "title": { "content": "$1" } } },
    "generatingAlbumM3U": { "message": "Generiere M3U für \"$artist$\"", "placeholders": { "artist": { "content": "$1" } } },
    "albumM3UGenerated": { "message": "M3U für Album \"$artist$\" generiert.", "placeholders": { "artist": { "content": "$1" } } },
    "playbackError": { "message": "Wiedergabefehler" },
    "errorLabel": { "message": "Fehler" },
    "reloadingPage": { "message": "Seite wird neu geladen..." },
    "viewed": { "message": "Gesehen" },
    "local": { "message": "Lokal" },
    "topRatedSort": {"message": "Bestbewertet"},
    "recentSort": {"message": "Neueste"},
    "popularSort": {"message": "Beliebte"},
    "moviesSectionTitle": {"message": "Filme"},
    "seriesSectionTitle": {"message": "Serien"},
    "searchResultsFor": {"message": "Ergebnisse für \"$query$\"", "placeholders": {"query": {"content": "$1"}}},
    "contentFrom": {"message": "Inhalt von $actor$", "placeholders": {"actor": {"content": "$1"}}},
    "explore": {"message": "Entdecken"},
    "noGenre": {"message": "Unkategorisiert"},
    "synopsis": {"message": "Zusammenfassung"},
    "noSynopsis": {"message": "Keine Zusammenfassung verfügbar."},
    "director": {"message": "Regisseur:"},
    "writer": {"message": "Autor:"},
    "viewOnImdb": {"message": "Auf IMDb ansehen"},
    "watchTrailer": {"message": "Trailer ansehen"},
    "addToFavorites": {"message": "Zu Favoriten hinzufügen"},
    "removeFromFavorites": {"message": "Aus Favoriten entfernen"},
    "notAvailable": {"message": "Nicht verfügbar"},
    "mainCast": {"message": "Hauptbesetzung"},
    "seasonsAndEpisodes": {"message": "Staffeln & Episoden"},
    "similarContent": {"message": "Ähnlicher Inhalt"},
    "episodesCount": {"message": "$count$ Episoden", "placeholders": {"count": {"content": "$1"}}},
    "seasonsCount": {"message": "$count$ Staffeln", "placeholders": {"count": {"content": "$1"}}},
    "runtimeMinutes": {"message": "$count$ Min.", "placeholders": {"count": {"content": "$1"}}},
    "noTrailerFound": {"message": "Für diesen Titel wurde kein Trailer gefunden."},    "fatalInitError": {"message": "Fataler Initialisierungsfehler"},
    "fatalInitErrorSub": {"message": "Die Anwendung konnte nicht geladen werden."},
    "invalidStreamInfo": {"message": "Ungültige Information."},
    "dbUnavailableForStreams": {"message": "Lokale Datenbank nicht verfügbar."},
    "noPlexServersForStreams": {"message": "Keine Plex-Server."},
    "notFoundOnServers": {"message": "\"query$\" auf Servern nicht gefunden.", "placeholders": {"query": {"content": "$1"}}},
    "relativeTime_justNow": { "message": "Gerade eben" },
    "relativeTime_minutesAgo": { "message": "Vor $count$ Minuten", "placeholders": { "count": { "content": "$1" } } },
    "relativeTime_hoursAgo": { "message": "Vor $count$ Stunden", "placeholders": { "count": { "content": "$1" } } },
    "relativeTime_yesterday": { "message": "Gestern" },
    "relativeTime_daysAgo": { "message": "Vor $count$ Tagen", "placeholders": { "count": { "content": "$1" } } },
    "errorLoadingDetails": { "message": "Fehler beim Laden der Details" },
    "errorLoadingLocalContent": { "message": "Fehler beim Laden lokaler Inhalte." },
    "errorServerResponse": { "message": "Nicht erfolgreiche Antwort vom Server." },
    "errorPlexApi": { "message": "Fehler $status$ von der Plex-API.", "placeholders": { "status": { "content": "$1" } } },
    "errorParsingPlexXml": { "message": "Fehler beim Parsen von Plex-XML." },
    "untitled": { "message": "Ohne Titel" },
    "itemCount": { "message": "$count$ Elemente", "placeholders": { "count": { "content": "$1" } } },
    "noPhotoServers": { "message": "Keine Foto-Server" },
    "jellyfinScanInProgress": { "message": "Jellyfin-Scan läuft bereits." },
    "jellyfinScanning": { "message": "Scanne Jellyfin..." },
    "jellyfinMissingCredentials": { "message": "Bitte vervollständige die Jellyfin-URL und den Benutzernamen." },
    "jellyfinConnecting": { "message": "Verbinde mit Jellyfin unter: $url$", "placeholders": { "url": { "content": "$1" } } },
    "jellyfinAuthFailed": { "message": "Jellyfin-Authentifizierung fehlgeschlagen: $message$", "placeholders": { "message": { "content": "$1" } } },
    "jellyfinAuthSuccess": { "message": "Jellyfin-Authentifizierung erfolgreich." },
    "jellyfinFetchingLibraries": { "message": "Bibliotheken werden abgerufen..." },
    "jellyfinFetchFailed": { "message": "Fehler beim Abrufen der Bibliotheken: $message$", "placeholders": { "message": { "content": "$1" } } },
    "jellyfinNoMediaLibraries": { "message": "Keine Film- oder Serienbibliotheken auf Jellyfin gefunden." },
    "jellyfinLibrariesFound": { "message": "$count$ Medienbibliothek(en) gefunden.", "placeholders": { "count": { "content": "$1" } } },
    "jellyfinLibraryScanSuccess": { "message": "[Erfolg] '$libraryName gescannt, $count$ Titel hinzugefügt.", "placeholders": { "libraryName": { "content": "$1" }, "count": { "content": "$2" } } },
    "jellyfinLibraryScanFailed": { "message": "Fehler beim Scannen der Bibliothek '$libraryName.", "placeholders": { "libraryName": { "content": "$1" } } },
    "jellyfinScanSuccess": { "message": "Jellyfin-Scan abgeschlossen. $movies$ Filme und $series$ Serien hinzugefügt.", "placeholders": { "movies": { "content": "$1" }, "series": { "content": "$2" } } },
    "noJellyfinCredentials": { "message": "Jellyfin-Anmeldeinformationen nicht konfiguriert." },
    "notFoundOnJellyfin": { "message": "\"query$\" auf Jellyfin nicht gefunden.", "placeholders": { "query": { "content": "$1" } } },
    "notFoundOnAnyServer": { "message": "\"query$\" auf keinem Server gefunden.", "placeholders": { "query": { "content": "$1" } } },
    "localOnPlex": { "message": "Auf Plex" },
    "searchOnPlex": { "message": "Auf Plex suchen" },
    "jellyfinTitle": { "message": "Jellyfin-Inhalt" },
    "noJellyfinContent": { "message": "Kein Jellyfin-Inhalt gefunden." },
    "noJellyfinContentSub": { "message": "Stelle sicher, dass du deinen Jellyfin-Server in den Einstellungen gescannt hast." },
    "activityViewerTitle": { "message": "Server-Aktivitätsanzeige" },
    "activitySelectServer": { "message": "Wählen Sie einen Server aus" },
    "activityCheckBtn": { "message": "Aktualisieren" },
    "activityNoSessions": { "message": "Keine aktiven Sitzungen auf diesem Server." },
    "activitySessionUser": { "message": "Benutzer" },
    "activitySessionDevice": { "message": "Gerät" },
    "activitySessionContent": { "message": "Inhalt" },
    "activitySessionState": { "message": "Status" },
    "activitySessionIdentifier": { "message": "Client-Kennung" },
    "activityCopyID": { "message": "ID kopieren" },
    "activityError": { "message": "Serveraktivität konnte nicht abgerufen werden." },
    "activityCopied": { "message": "Kennung in die Zwischenablage kopiert!" },
    "activityCopyError": { "message": "Fehler beim Kopieren der Kennung." },
    "noProvidersFound": { "message": "Keine Anbieter gefunden." },
    "availableOnPlex": { "message": "Auf Plex verfügbar" },
    "navM3uGenerator": { "message": "M3U-Generator" },
    "m3uGeneratorTitle": { "message": "M3U-Wiedergabelisten-Generator" },
    "selectAServer": { "message": "Wählen Sie einen Server aus..." },
    "downloadM3u": { "message": "M3U herunterladen" },
    "m3uGenerator": { "message": "M3U-Generator" },
    "selectServer": { "message": "Server auswählen" },
    "selectLibraries": { "message": "Bibliotheken auswählen" },
    "howToUse": { "message": "Anleitung" },
    "m3uInstruction1": { "message": "Wählen Sie einen Server aus der Liste aus." },
    "m3uInstruction2": { "message": "Wählen Sie eine oder mehrere Bibliotheken aus, die Sie einschließen möchten." },
    "m3uInstruction3": { "message": "Klicken Sie auf die Download-Schaltfläche." },
    "m3uInstruction4": { "message": "Importieren Sie die .m3u-Datei in Ihren kompatiblen Player." },
    "settingsRegionLabel": { "message": "Region für die Inhaltsentdeckung" },
    "allRegions": { "message": "Alle Regionen" },
    "chatOpen": { "message": "Chat öffnen" },
    "chatTitle": { "message": "KI-Assistent" },
    "chatClose": { "message": "X" },
    "chatPlaceholder": { "message": "Nachricht eingeben..." },
    "chatSend": { "message": "➤" },
    "chatGptError": { "message": "Entschuldigung, ich konnte keine Antwort erhalten. Bitte versuchen Sie es erneut." },
    "chatWelcome": { "message": "Willkommen! Ich bin Ihr CinePlex-Assistent. Fragen Sie mich nach Filmen, Serien oder allem, was Sie sonst noch wissen möchten." },
    "chatApiKeyMissing": { "message": "Der OpenAI-API-Schlüssel ist nicht festgelegt. Bitte konfigurieren Sie ihn in den Erweiterungseinstellungen." },
    "chatApiInvalidResponse": { "message": "Die API hat eine ungültige Antwort zurückgegeben. Bitte versuchen Sie es erneut." },
    "chatApiError": { "message": "Fehler bei der Kommunikation mit dem KI-Assistenten" },
    "downloadAll": { "message": "Alles herunterladen" },
    "download": { "message": "Herunterladen" },
    "aiToolSearchLibraryDesc": { "message": "Durchsucht die Plex-Bibliothek nach Filmen oder Serien." },
    "aiToolSearchLibraryQueryDesc": { "message": "Der zu suchende Titel." },
    "aiToolSearchLibraryTypeDesc": { "message": "Die Art des zu suchenden Inhalts (Film oder Serie)." },
    "aiToolNavigateToPageDesc": { "message": "Navigiert zu einer bestimmten Seite in der Anwendung." },
    "aiToolNavigateToPagePageDesc": { "message": "Die Seite, zu der navigiert werden soll." },
    "aiToolGetUserStatsDesc": { "message": "Ruft Benutzerstatistiken ab." },
    "aiToolShowItemDetailsDesc": { "message": "Zeigt die Details eines Films oder einer Serie an." },
    "aiToolShowItemDetailsTitleDesc": { "message": "Der Titel des Films oder der Serie." },
    "aiToolShowItemDetailsTypeDesc": { "message": "Die Art des Inhalts (Film oder Serie)." },
    "aiToolAddToPlaylistDesc": { "message": "Fügt einen Film oder eine Serie zur Wiedergabeliste hinzu." },
    "aiToolAddToPlaylistTitleDesc": { "message": "Der Titel des Films oder der Serie." },
    "aiToolAddToPlaylistTypeDesc": { "message": "Die Art des Inhalts (Film oder Serie)." },
    "aiToolDownloadPlaylistDesc": { "message": "Lädt die Wiedergabeliste für einen Film oder eine Serie herunter." },
    "aiToolDownloadPlaylistTitleDesc": { "message": "Der Titel des Films oder der Serie." },
    "aiToolDownloadPlaylistTypeDesc": { "message": "Die Art des Inhalts (Film oder Serie)." },
    "aiToolToggleFavoriteDesc": { "message": "Fügt einen Film oder eine Serie zu den Favoriten hinzu oder entfernt sie daraus." },
    "aiToolToggleFavoriteTitleDesc": { "message": "Der Titel des Films oder der Serie." },
    "aiToolToggleFavoriteTypeDesc": { "message": "Die Art des Inhalts (Film oder Serie)." },
    "aiToolGetRecommendationsDesc": { "message": "Ruft Empfehlungen für den Benutzer ab." },
    "aiToolApplyFiltersDesc": { "message": "Wendet Filter auf die aktuelle Ansicht an." },
    "aiToolApplyFiltersTypeDesc": { "message": "Die Art des zu filternden Inhalts (Film oder Serie)." },
    "aiToolApplyFiltersGenreDesc": { "message": "Das zu filternde Genre." },
    "aiToolApplyFiltersYearDesc": { "message": "Das zu filternde Jahr." },
    "aiToolApplyFiltersSortDesc": { "message": "Die Reihenfolge, in der die Ergebnisse sortiert werden sollen." },
    "aiToolPlayMusicByArtistDesc": { "message": "Spielt Musik von einem bestimmten Künstler ab." },
    "aiToolPlayMusicByArtistNameDesc": { "message": "Der Name des Künstlers." },
    "aiToolClearChatHistoryDesc": { "message": "Löscht den Chat-Verlauf." },
    "aiToolDeleteDatabaseDesc": { "message": "Löscht die Datenbank der Erweiterung." },
    "aiToolUpdateAllTokensDesc": { "message": "Aktualisiert alle Plex-Token." },
    "aiToolAddPlexTokenDesc": { "message": "Fügt einen neuen Plex-Token hinzu." },
    "aiToolAddPlexTokenTokenDesc": { "message": "Der hinzuzufügende Plex-Token." },
    "aiToolChangeRegionDesc": { "message": "Ändert die Region für die Inhaltsentdeckung." },
    "aiToolChangeRegionRegionDesc": { "message": "Der zweibuchstabige Regionscode (z. B. US, ES, FR)." },
    "aiToolClearAllFavoritesDesc": { "message": "Löscht alle Benutzerfavoriten." },
    "aiToolClearRecommendationsViewDesc": { "message": "Löscht die Empfehlungsansicht." },
    "aiToolFavoritesCleared": { "message": "Favoriten gelöscht." },
    "aiToolFavoritesClearError": { "message": "Fehler beim Löschen der Favoriten: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aiToolRecommendationsCleared": { "message": "Empfehlungen gelöscht." },
    "aiToolRecommendationsClearError": { "message": "Fehler beim Löschen der Empfehlungen: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aiToolDatabaseDeleted": { "message": "Datenbank gelöscht. Die Seite wird jetzt neu geladen." },
    "aiToolDatabaseDeleteError": { "message": "Fehler beim Löschen der Datenbank: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aiToolDatabaseDeleteBlocked": { "message": "Das Löschen der Datenbank ist blockiert. Bitte schließen Sie andere Tabs der Anwendung." },
    "aiToolUpdateAllTokensSuccess": { "message": "Alle Token wurden erfolgreich aktualisiert." },
    "aiToolUpdateAllTokensError": { "message": "Fehler beim Aktualisieren der Token: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aiToolAddPlexTokenSuccess": { "message": "Plex-Token erfolgreich hinzugefügt." },
    "aiToolAddPlexTokenError": { "message": "Fehler beim Hinzufügen des Plex-Tokens: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aiToolChangeRegionSuccess": { "message": "Region auf $region$ geändert. Inhalt wird aktualisiert.", "placeholders": { "region": { "content": "$1" } } },
    "aiToolChangeRegionError": { "message": "Fehler beim Ändern der Region: $message$", "placeholders": { "message": { "content": "$1" } } },
    "aiSystemPrompt_v2": { "message": "Sie sind ein erfahrener Film- und Serienassistent namens CinePlex. Ihre Hauptfunktion ist es, Benutzern bei der Interaktion mit ihrer Medienbibliothek und der Entdeckung von Inhalten zu helfen. Befolgen Sie diese Regeln: 1. Wenn ein Benutzer nach einer Liste oder Empfehlung fragt (z. B. 'nennen Sie mir 5 Horrorfilme', 'die besten Science-Fiction-Serien'), MÜSSEN Sie Ihr eigenes Wissen verwenden, um die Liste zu erstellen und sie in einem nummerierten oder Aufzählungsformat darzustellen. VERWENDEN Sie KEINE Werkzeuge für diese anfängliche Entdeckungsaufgabe. 2. Nachdem Sie die Liste präsentiert haben, wenn der Benutzer Sie bittet, sie herunterzuladen, zu überprüfen oder eine M3U zu erstellen, DANN und nur dann, verwenden Sie das Werkzeug 'generate_m3u_from_titles_list' und übergeben Sie ihm die Titel, die Sie gerade erwähnt haben. 3. Für jede andere Aktion wie das Navigieren in der App, das Abrufen von Statistiken oder die Suche nach einem BESTIMMTEN TITEL in der Bibliothek des Benutzers, verwenden Sie die entsprechenden Werkzeuge. Seien Sie prägnant, freundlich und effizient." },
    "aiToolSearchLibraryDesc_v2": { "message": "Die Liste der zu verarbeitenden Titel ist leer." },
    "aiToolM3UNoLocalMatches": { "message": "Anscheinend haben Sie keinen der Titel aus dieser Liste auf Ihren lokalen Servern." },
    "aiToolGenerateM3UTypeDesc": { "message": "Der zu suchende Inhaltstyp: 'movie' oder 'series'." },
    "aiToolGenerateM3UFilenameDesc": { "message": "Ein benutzerdefinierter Dateiname für die heruntergeladene M3U-Wiedergabeliste." },
    "aiToolGenerateM3USuccess": { "message": "Verstanden! Ich erstelle eine M3U-Wiedergabeliste mit $1 Elementen. Der Download sollte in Kürze beginnen.", "placeholders": { "1": { "content": "$1" } } },
    "aiSystemPrompt_v3": { "message": "Sie sind ein erfahrener Film- und Serienassistent namens CinePlex. Ihre Hauptfunktion ist es, Benutzern dabei zu helfen, Inhalte zu entdecken und mit ihrer Bibliothek zu interagieren. Befolgen Sie diese Regeln strikt: 1. **BEHAUPTEN** Sie **NIEMALS**, eine Aktion ausgeführt zu haben, wenn Sie dafür kein Werkzeug verwendet haben. Sagen Sie zum Beispiel nicht 'Ich habe X heruntergeladen', wenn Sie das Download-Werkzeug nicht verwendet haben. 2. Bei Anfragen nach Empfehlungen oder Listen (z. B. 'gib mir 5 Horrorfilme') verwenden Sie Ihr eigenes Wissen, um die Liste zu erstellen. Präsentieren Sie sie in einem nummerierten oder Aufzählungsformat. Nachdem Sie die Liste angezeigt haben, fragen Sie den Benutzer proaktiv, ob er möchte, dass Sie die Verfügbarkeit auf seinen lokalen Servern überprüfen und eine M3U-Datei erstellen. 3. **NUR** wenn der Benutzer bestätigt, dass er die Liste überprüfen oder herunterladen möchte, verwenden Sie das Werkzeug `check_and_download_titles_list`. Verwenden Sie es nicht ohne ausdrückliche Bestätigung. 4. Für alle anderen Aktionen wie das Navigieren, das Abrufen von Statistiken oder die Suche nach einem bestimmten Titel verwenden Sie die entsprechenden Werkzeuge. Seien Sie immer prägnant, freundlich und effizient." },
    "aiToolCheckAndDownloadDesc": { "message": "Überprüft eine Liste von Film- oder Serientiteln mit den lokalen Servern des Benutzers und generiert und lädt bei Übereinstimmungen eine M3U-Wiedergabelistendatei herunter." },
    "aiToolGenerateM3UFromTitlesTitlesDesc": { "message": "Eine Liste von Film- oder Serientiteln zum Überprüfen und Herunterladen." },
    "aiToolM3UNoTitlesProvided": { "message": "Bitte geben Sie eine Liste von Titeln an, um die Wiedergabeliste zu erstellen." },
    "aiToolM3UCheckingTitles": { "message": "Überprüfe die Titel auf deinen lokalen Servern..." },
    "aiToolM3UNoLocalMatchesForDownload": { "message": "Ich konnte keinen der Filme oder Serien aus der Liste auf deinen lokalen Servern finden." },
    "aiToolM3UDownloadStarted": { "message": "Fertig! Ich habe $1 der $2 Titel auf deinen Servern gefunden und den Download der M3U-Wiedergabeliste gestartet.", "placeholders": { "1": { "content": "$1" }, "2": { "content": "$2" } } }
}