{
  "common": {
    "appName": "Redlight",
    "loading": "Laden...",
    "save": "Speichern",
    "cancel": "Abbrechen",
    "delete": "Löschen",
    "edit": "Bearbeiten",
    "create": "Erstellen",
    "search": "Suchen...",
    "close": "Schließen",
    "confirm": "Bestätigen",
    "back": "Zurück",
    "yes": "Ja",
    "no": "Nein",
    "or": "oder",
    "optional": "Optional",
    "unlimited": "Unbegrenzt",
    "none": "Keiner",
    "offline": "Offline",
    "active": "Aktiv",
    "inactive": "Inaktiv",
    "protected": "Geschützt",
    "live": "Live",
    "error": "Fehler",
    "success": "Erfolg",
    "gridView": "Rasteransicht",
    "listView": "Listenansicht",
    "skipToContent": "Zum Hauptinhalt springen",
    "previous": "Zurück",
    "next": "Weiter"
  },
  "nav": {
    "dashboard": "Dashboard",
    "settings": "Einstellungen",
    "admin": "Administration",
    "appearance": "Darstellung",
    "changeTheme": "Theme ändern",
    "navigation": "Navigation",
    "calendar": "Kalender",
    "federation": "Einladungen",
    "imprint": "Impressum",
    "privacy": "Datenschutz"
  },
  "auth": {
    "login": "Anmelden",
    "register": "Registrieren",
    "logout": "Abmelden",
    "email": "E-Mail",
    "password": "Passwort",
    "name": "Name",
    "welcomeBack": "Willkommen zurück",
    "loginSubtitle": "Melden Sie sich an, um auf Ihre Räume zuzugreifen.",
    "createAccount": "Konto erstellen",
    "registerSubtitle": "Registrieren Sie sich, um Räume zu erstellen und Meetings zu starten.",
    "noAccount": "Noch kein Konto?",
    "hasAccount": "Bereits ein Konto?",
    "signUpNow": "Jetzt registrieren",
    "signInNow": "Jetzt anmelden",
    "backToHome": "← Zurück zur Startseite",
    "emailPlaceholder": "name@beispiel.de",
    "passwordPlaceholder": "••••••••",
    "namePlaceholder": "Max Mustermann",
    "minPassword": "Mindestens 6 Zeichen",
    "confirmPassword": "Passwort bestätigen",
    "repeatPassword": "Passwort wiederholen",
    "passwordMismatch": "Passwörter stimmen nicht überein",
    "passwordTooShort": "Passwort muss mindestens 6 Zeichen lang sein",
    "loginSuccess": "Willkommen zurück!",
    "registerSuccess": "Registrierung erfolgreich",
    "loginFailed": "Anmeldung fehlgeschlagen",
    "registerFailed": "Registrierung fehlgeschlagen",
    "allFieldsRequired": "Alle Felder sind erforderlich",
    "verificationSent": "Verifizierungs-E-Mail wurde gesendet",
    "verificationSentDesc": "Wir haben dir eine E-Mail mit einem Bestätigungslink geschickt. Bitte klicke auf den Link, um dein Konto zu aktivieren.",
    "checkYourEmail": "Prüfe dein Postfach",
    "verifying": "E-Mail wird verifiziert...",
    "verifySuccess": "Deine E-Mail-Adresse wurde erfolgreich bestätigt. Du kannst dich jetzt anmelden.",
    "verifySuccessTitle": "E-Mail bestätigt",
    "verifyFailed": "Verifizierung fehlgeschlagen",
    "verifyFailedTitle": "Verifizierung fehlgeschlagen",
    "verifyTokenMissing": "Kein Verifizierungstoken vorhanden.",
    "emailNotVerified": "E-Mail-Adresse noch nicht verifiziert. Bitte prüfe dein Postfach.",
    "username": "Benutzername",
    "usernamePlaceholder": "z.B. maxmuster",
    "usernameHint": "Nur Buchstaben, Zahlen, _ und - erlaubt (3-30 Zeichen)",
    "displayName": "Anzeigename",
    "displayNamePlaceholder": "Max Mustermann",
    "usernameTaken": "Benutzername ist bereits vergeben",
    "usernameInvalid": "Benutzername darf nur Buchstaben, Zahlen, _ und - enthalten (3-30 Zeichen)",
    "usernameRequired": "Benutzername ist erforderlich",
    "displayNameRequired": "Anzeigename ist erforderlich",
    "emailVerificationBanner": "Deine E-Mail-Adresse wurde noch nicht verifiziert.",
    "emailVerificationResend": "Hier klicken um eine neue Verifizierungsmail zu erhalten",
    "emailVerificationResendCooldown": "Erneut senden in {seconds}s",
    "emailVerificationResendSuccess": "Verifizierungsmail wurde gesendet",
    "emailVerificationResendFailed": "Verifizierungsmail konnte nicht gesendet werden",
    "inviteOnly": "Nur mit Einladung",
    "inviteOnlyDesc": "Die Registrierung ist derzeit eingeschränkt. Sie benötigen einen Einladungslink von einem Administrator, um ein Konto zu erstellen.",
    "orContinueWith": "oder weiter mit",
    "loginWithOAuth": "Anmelden mit {provider}",
    "registerWithOAuth": "Registrieren mit {provider}",
    "backToLogin": "Zurück zum Login",
    "oauthError": "Anmeldung fehlgeschlagen",
    "oauthNoToken": "Kein Authentifizierungstoken erhalten.",
    "oauthLoginFailed": "Anmeldung konnte nicht abgeschlossen werden. Bitte versuche es erneut.",
    "oauthRedirecting": "Du wirst angemeldet...",
    "forgotPassword": "Passwort vergessen?",
    "forgotPasswordTitle": "Passwort zurücksetzen",
    "forgotPasswordSubtitle": "Gib deine E-Mail-Adresse ein. Wir senden dir einen Link zum Zurücksetzen deines Passworts.",
    "forgotPasswordSubmit": "Link senden",
    "forgotPasswordSent": "Wenn ein Konto für diese Adresse existiert, haben wir dir eine E-Mail zum Zurücksetzen des Passworts gesendet.",
    "forgotPasswordSentTitle": "Prüfe dein Postfach",
    "forgotPasswordFailed": "Anfrage konnte nicht gesendet werden. Bitte versuche es erneut.",
    "resetPasswordTitle": "Neues Passwort festlegen",
    "resetPasswordSubtitle": "Wähle ein neues Passwort für dein Konto.",
    "newPassword": "Neues Passwort",
    "resetPasswordSubmit": "Passwort zurücksetzen",
    "resetPasswordSuccess": "Dein Passwort wurde zurückgesetzt. Du kannst dich jetzt anmelden.",
    "resetPasswordSuccessTitle": "Passwort zurückgesetzt",
    "resetPasswordFailed": "Passwort konnte nicht zurückgesetzt werden.",
    "resetTokenMissing": "Kein Token zum Zurücksetzen vorhanden.",
    "passwordMinLength": "Passwort muss mindestens 8 Zeichen lang sein",
    "2fa": {
      "title": "Zwei-Faktor-Authentifizierung",
      "prompt": "Gib den 6-stelligen Code aus deiner Authenticator-App ein.",
      "codeLabel": "Bestätigungscode",
      "verify": "Bestätigen",
      "verifyFailed": "Überprüfung fehlgeschlagen",
      "backToLogin": "← Zurück zum Login"
    }
  },
  "home": {
    "heroTitle": "Selbst gehostetes Frontend für BigBlueButton",
    "heroSubtitle": "Redlight verwaltet Räume, Aufnahmen und Termine für deinen BigBlueButton-Server – mit Federation zwischen Instanzen, CalDAV-Sync und SSO-Anbindung.",
    "getStarted": "Konto erstellen",
    "features": "Funktionen",
    "featureRoomsTitle": "Raumverwaltung",
    "featureRoomsDesc": "Räume mit eigenen Einstellungen, Zugangscodes und geteiltem Zugriff für Kolleginnen und Kollegen.",
    "featureRecordingsTitle": "Aufnahmen",
    "featureRecordingsDesc": "Aufnahmen pro Raum einsehen, veröffentlichen oder löschen.",
    "featureFederationTitle": "Federation",
    "featureFederationDesc": "Nutzer anderer Redlight-Instanzen einladen und instanzübergreifende Einladungen annehmen.",
    "featureCalendarTitle": "Kalender",
    "featureCalendarDesc": "Meetings planen, per CalDAV mit Thunderbird, Apple Calendar oder DAVx⁵ synchronisieren, Erinnerungen erhalten.",
    "featureVideoTitle": "Videokonferenzen",
    "featureVideoDesc": "Meetings direkt über BigBlueButton erstellen, starten und verwalten.",
    "featureAnalyticsTitle": "Learning Analytics",
    "featureAnalyticsDesc": "Teilnahme- und Aktivitätsdaten aus Meetings einsehen und als CSV, Excel oder PDF exportieren.",
    "footer": "© {year} Redlight. Ein Open-Source BigBlueButton Frontend."
  },
  "dashboard": {
    "myRooms": "Meine Räume",
    "roomCount": "{count} Raum erstellt | {count} Räume erstellt",
    "newRoom": "Neuer Raum",
    "noRooms": "Noch keine Räume",
    "noRoomsSubtitle": "Erstellen Sie Ihren ersten Raum, um Meetings zu starten.",
    "createFirst": "Ersten Raum erstellen",
    "createRoom": "Neuen Raum erstellen",
    "roomName": "Raumname",
    "roomNamePlaceholder": "z.B. Team Meeting",
    "roomNameRequired": "Raumname ist erforderlich",
    "welcomeMessage": "Willkommensnachricht",
    "welcomeMessageDefault": "Willkommen im Meeting!",
    "maxParticipants": "Max. Teilnehmer",
    "maxParticipantsHint": "0 = unbegrenzt",
    "accessCode": "Zugangscode",
    "muteOnJoin": "Teilnehmer beim Beitritt stummschalten",
    "allowRecording": "Aufnahme erlauben",
    "roomCreated": "Raum erstellt",
    "roomCreateFailed": "Raum konnte nicht erstellt werden",
    "roomDeleted": "Raum gelöscht",
    "roomDeleteFailed": "Raum konnte nicht gelöscht werden",
    "roomDeleteConfirm": "Raum \"{name}\" wirklich löschen?",
    "loadFailed": "Räume konnten nicht geladen werden",
    "sharedWithMe": "Mit mir geteilt",
    "federatedRooms": "Räume von anderen Instanzen",
    "federatedRoomsSubtitle": "Angenommene Meeting-Einladungen von anderen Redlight-Instanzen. Einstellungen können hier nicht geändert werden."
  },
  "room": {
    "backToDashboard": "Zurück zum Dashboard",
    "start": "Starten",
    "startMeeting": "Meeting starten",
    "join": "Beitreten",
    "end": "Beenden",
    "openDetails": "Details öffnen",
    "overview": "Übersicht",
    "recordings": "Aufnahmen",
    "settings": "Einstellungen",
    "participants": "{count} Teilnehmer",
    "copyLink": "Link kopieren",
    "copyRoomLink": "Raum-Link",
    "copyGuestLink": "Gast-Link",
    "linkCopied": "Link kopiert",
    "meetingDetails": "Meeting-Details",
    "meetingId": "Meeting ID",
    "status": "Status",
    "maxParticipants": "Max. Teilnehmer",
    "accessCode": "Zugangscode",
    "roomSettings": "Raumeinstellungen",
    "mutedOnJoin": "Beim Beitritt stummgeschaltet",
    "micActiveOnJoin": "Mikrofon aktiv beim Beitritt",
    "approvalRequired": "Genehmigung erforderlich",
    "freeJoin": "Freier Beitritt",
    "allModerators": "Alle als Moderator",
    "rolesAssigned": "Rollen werden zugewiesen",
    "recordingAllowed": "Aufnahme erlaubt",
    "recordingDisabled": "Aufnahme deaktiviert",
    "welcomeMsg": "Willkommensnachricht",
    "muteOnJoin": "Beim Beitritt stummschalten",
    "requireApproval": "Moderator-Genehmigung erforderlich",
    "anyoneCanStart": "Jeder kann das Meeting starten",
    "allJoinModerator": "Alle Teilnehmer als Moderator",
    "allowRecording": "Aufnahme erlauben",
    "enableTranscript": "KI-Zusammenfassung / Transkript für Aufnahmen",
    "noAccessCode": "Kein Zugangscode",
    "emptyNoCode": "Leer = kein Code",
    "settingsSaved": "Einstellungen gespeichert",
    "settingsSaveFailed": "Einstellungen konnten nicht gespeichert werden",
    "meetingStarted": "Meeting gestartet",
    "meetingStartFailed": "Meeting konnte nicht gestartet werden",
    "meetingEnded": "Meeting beendet",
    "meetingEndFailed": "Meeting konnte nicht beendet werden",
    "joinFailed": "Beitritt fehlgeschlagen",
    "endConfirm": "Meeting wirklich beenden?",
    "enterAccessCode": "Zugangscode eingeben:",
    "notFound": "Raum nicht gefunden",
    "guestAccessTitle": "Gastzugang",
    "guestAccess": "Gastzugang aktivieren",
    "guestAccessHint": "Ermöglicht nicht angemeldeten Benutzern, dem Meeting beizutreten.",
    "moderatorCode": "Moderator-Code",
    "moderatorCodeHint": "Optionaler Code für Moderator-Rechte",
    "moderatorCodeDesc": "Gäste, die diesen Code eingeben, erhalten Moderator-Rechte.",
    "guestLink": "Gast-Einladungslink",
    "guestLinkCopied": "Gast-Link kopiert",
    "guestJoinTitle": "Meeting beitreten",
    "guestCreatedBy": "Erstellt von",
    "guestMeetingRunning": "Meeting läuft",
    "guestMeetingNotStarted": "Noch nicht gestartet",
    "guestYourName": "Ihr Name",
    "guestNamePlaceholder": "Max Mustermann",
    "guestAccessCode": "Zugangscode",
    "guestAccessCodePlaceholder": "Code eingeben",
    "guestModeratorCode": "Moderator-Code",
    "guestModeratorOptional": "(optional)",
    "guestModeratorPlaceholder": "Nur wenn Sie Moderator sind",
    "guestJoinButton": "Meeting beitreten",
    "guestWaitingMessage": "Das Meeting wurde noch nicht gestartet. Bitte warten Sie, bis der Moderator es startet.",
    "guestWaitingTitle": "Warte auf Meeting-Start...",
    "guestWaitingHint": "Du wirst automatisch beigetreten, sobald das Meeting gestartet wird.",
    "guestCancelWaiting": "Abbrechen",
    "guestMeetingStartedJoining": "Meeting gestartet! Trete jetzt bei...",
    "waitingToJoin": "Warten...",
    "guestAccessDenied": "Zugang nicht möglich",
    "guestNameRequired": "Name ist erforderlich",
    "guestJoinFailed": "Beitritt fehlgeschlagen",
    "guestAccessNotEnabled": "Der Gastzugang ist für diesen Raum nicht aktiviert.",
    "guestWrongAccessCode": "Falscher Zugangscode",
    "guestHasAccount": "Haben Sie ein Konto?",
    "guestSignIn": "Anmelden",
    "guestRoomNotFound": "Raum nicht gefunden",
    "guestRecordingNotice": "Dieses Meeting könnte aufgenommen werden, inkl. Ihrer Audio / Video.",
    "guestRecordingConsent": "Ich bin damit einverstanden, dass dieses Meeting aufgenommen werden kann.",
    "shared": "Geteilt",
    "presentationTitle": "Standard-Präsentation",
    "presentationDesc": "Diese Datei wird beim Start des Meetings automatisch in BBB vorgeladen.",
    "presentationUpload": "Präsentation hochladen",
    "presentationRemove": "Präsentation entfernen",
    "presentationUploaded": "Präsentation hochgeladen",
    "presentationRemoved": "Präsentation entfernt",
    "presentationUploadFailed": "Präsentation konnte nicht hochgeladen werden",
    "presentationRemoveFailed": "Präsentation konnte nicht entfernt werden",
    "presentationAllowedTypes": "PDF, PPT, PPTX, ODP, DOC, DOCX · max. 50 MB",
    "presentationCurrent": "Aktuell:",
    "shareTitle": "Raum teilen",
    "shareDescription": "Teilen Sie diesen Raum mit anderen Benutzern, damit diese ihn in ihrem Dashboard sehen und beitreten k\u00f6nnen.",
    "shareSearchPlaceholder": "Benutzer suchen (Name oder E-Mail)...",
    "shareAdded": "Benutzer hinzugef\u00fcgt",
    "shareRemoved": "Freigabe entfernt",
    "shareFailed": "Freigabe fehlgeschlagen",
    "shareRemove": "Freigabe entfernen",
    "defaultWelcome": "Willkommen zum Meeting!",
    "analytics": "Lernanalyse",
    "enableAnalytics": "Lernanalyse aktivieren",
    "enableAnalyticsHint": "Sammelt Engagement-Daten der Teilnehmer nach jedem Meeting.",
    "analyticsVisibility": "Wer kann die Analyse sehen?",
    "analyticsOwnerOnly": "Nur Raumbesitzer",
    "analyticsSharedUsers": "Alle geteilten Benutzer",
    "analyticsVisibilityHint": "Legt fest, wer die Analysedaten dieses Raums einsehen und exportieren kann."
  },
  "recordings": {
    "title": "Aufnahmen",
    "noRecordings": "Keine Aufnahmen vorhanden",
    "published": "Veröffentlicht",
    "unpublished": "Nicht veröffentlicht",
    "presentation": "Präsentation",
    "deleted": "Aufnahme gelöscht",
    "deleteFailed": "Fehler beim Löschen",
    "deleteConfirm": "Aufnahme wirklich löschen?",
    "publishSuccess": "Aufnahme veröffentlicht",
    "unpublishSuccess": "Aufnahme versteckt",
    "publishFailed": "Fehler beim Aktualisieren",
    "hide": "Verstecken",
    "publish": "Veröffentlichen",
    "loadFailed": "Aufnahmen konnten nicht geladen werden"
  },
  "analytics": {
    "title": "Lernanalyse",
    "noData": "Keine Analysedaten vorhanden",
    "participants": "Teilnehmer",
    "messages": "Nachrichten",
    "expand": "Details anzeigen",
    "collapse": "Details ausblenden",
    "deleteConfirm": "Analysedaten wirklich löschen?",
    "deleted": "Analysedaten gelöscht",
    "deleteFailed": "Fehler beim Löschen",
    "userName": "Name",
    "role": "Rolle",
    "moderator": "Moderator",
    "viewer": "Teilnehmer",
    "talkTime": "Sprechzeit",
    "webcamTime": "Webcam-Zeit",
    "duration": "Dauer",
    "meetingDuration": "Meeting-Dauer",
    "raiseHand": "Handheben",
    "reactions": "Reaktionen",
    "export": "Herunterladen",
    "exportSuccess": "Download gestartet",
    "exportFailed": "Fehler beim Herunterladen"
  },
  "settings": {
    "title": "Einstellungen",
    "subtitle": "Verwalten Sie Ihr Profil und Ihre Einstellungen",
    "profile": "Profil",
    "password": "Passwort",
    "themes": "Themes",
    "language": "Sprache",
    "editProfile": "Profil bearbeiten",
    "avatar": "Profilbild",
    "avatarColor": "Avatar-Farbe",
    "avatarColorHint": "Wird als Fallback verwendet, wenn kein Bild hochgeladen ist.",
    "uploadImage": "Bild hochladen",
    "removeImage": "Bild entfernen",
    "avatarHint": "JPG, PNG, GIF oder WebP. Max. 2 MB.",
    "avatarUploaded": "Profilbild aktualisiert",
    "avatarUploadFailed": "Fehler beim Hochladen",
    "avatarRemoved": "Profilbild entfernt",
    "avatarRemoveFailed": "Fehler beim Entfernen",
    "avatarInvalidType": "Nur Bilddateien sind erlaubt",
    "avatarTooLarge": "Bild darf maximal 2 MB groß sein",
    "changePassword": "Passwort ändern",
    "currentPassword": "Aktuelles Passwort",
    "newPassword": "Neues Passwort",
    "confirmNewPassword": "Neues Passwort bestätigen",
    "profileSaved": "Profil gespeichert",
    "profileSaveFailed": "Fehler beim Speichern",
    "passwordChanged": "Passwort geändert",
    "passwordChangeFailed": "Fehler beim Ändern",
    "passwordMismatch": "Passwörter stimmen nicht überein",
    "selectLanguage": "Sprache auswählen",
    "security": {
      "title": "Sicherheit",
      "subtitle": "Schütze dein Konto mit Zwei-Faktor-Authentifizierung (2FA). Nach der Aktivierung benötigst du sowohl dein Passwort als auch einen Code aus deiner Authenticator-App zum Anmelden.",
      "statusEnabled": "2FA ist aktiviert",
      "statusEnabledDesc": "Dein Konto ist durch Zwei-Faktor-Authentifizierung geschützt.",
      "statusDisabled": "2FA ist nicht aktiviert",
      "statusDisabledDesc": "Aktiviere die Zwei-Faktor-Authentifizierung für zusätzliche Sicherheit.",
      "enable": "2FA aktivieren",
      "disable": "2FA deaktivieren",
      "enabled": "Zwei-Faktor-Authentifizierung aktiviert",
      "disabled": "Zwei-Faktor-Authentifizierung deaktiviert.",
      "enableFailed": "2FA konnte nicht aktiviert werden",
      "disableFailed": "2FA konnte nicht deaktiviert werden",
      "setupFailed": "2FA-Einrichtung konnte nicht gestartet werden",
      "scanQR": "Scanne diesen QR-Code mit deiner Authenticator-App (Google Authenticator, Authy, etc.).",
      "manualKey": "Oder gib diesen Schlüssel manuell ein:",
      "verifyCode": "Gib den Code aus deiner App zur Überprüfung ein",
      "codeLabel": "6-stelliger Code",
      "disableConfirm": "Gib dein Passwort und einen aktuellen 2FA-Code ein, um die Zwei-Faktor-Authentifizierung zu deaktivieren."
    },
    "caldav": {
      "title": "CalDAV",
      "subtitle": "Verbinde deine Kalender-App (z. B. Apple Kalender, Thunderbird, DAVx⁵) über das CalDAV-Protokoll. Verwende deine E-Mail-Adresse und ein App-Token als Passwort.",
      "serverUrl": "Server-URL",
      "username": "Benutzername (E-Mail)",
      "hint": "Gib niemals dein echtes Redlight-Passwort in einer Kalender-App ein. Verwende stattdessen ein App-Token.",
      "newToken": "Neues App-Token generieren",
      "tokenNamePlaceholder": "z. B. \"iPhone\" oder \"Thunderbird\"",
      "generate": "Generieren",
      "existingTokens": "Aktive Tokens",
      "noTokens": "Noch keine Tokens erstellt.",
      "created": "Erstellt",
      "lastUsed": "Zuletzt verwendet",
      "revoke": "Widerrufen",
      "revokeConfirm": "Dieses Token wirklich widerrufen? Alle Kalender-Apps, die dieses Token verwenden, verlieren den Zugriff.",
      "revoked": "Token widerrufen",
      "revokeFailed": "Token konnte nicht widerrufen werden",
      "createFailed": "Token konnte nicht erstellt werden",
      "newTokenCreated": "Token erstellt — jetzt kopieren",
      "newTokenHint": "Dieses Token wird nur einmal angezeigt. Kopiere es und trage es als Passwort in deiner Kalender-App ein.",
      "dismiss": "Ich habe das Token kopiert"
    }
  },
  "themes": {
    "selectTheme": "Theme auswählen",
    "selectThemeSubtitle": "Wähle dein bevorzugtes Farbschema",
    "light": "Hell",
    "dark": "Dunkel"
  },
  "admin": {
    "title": "Administration",
    "userCount": "{count} Benutzer registriert | {count} Benutzer registriert",
    "searchUsers": "Benutzer suchen...",
    "user": "Benutzer",
    "role": "Rolle",
    "rooms": "Räume",
    "registered": "Registriert",
    "actions": "Aktionen",
    "admin": "Admin",
    "makeAdmin": "Zum Admin machen",
    "makeUser": "Zum Benutzer machen",
    "resetPassword": "Passwort zurücksetzen",
    "deleteUser": "Löschen",
    "userActions": "Benutzeraktionen",
    "createUser": "Benutzer erstellen",
    "createUserTitle": "Neuen Benutzer erstellen",
    "userCreated": "Benutzer erstellt",
    "userCreateFailed": "Benutzer konnte nicht erstellt werden",
    "newPasswordLabel": "Neues Passwort",
    "resetPasswordTitle": "Passwort zurücksetzen",
    "noUsersFound": "Keine Benutzer gefunden",
    "roleUpdated": "Rolle aktualisiert",
    "roleUpdateFailed": "Fehler beim Aktualisieren",
    "userDeleted": "Benutzer gelöscht",
    "userDeleteFailed": "Fehler beim Löschen",
    "passwordReset": "Passwort zurückgesetzt",
    "passwordResetFailed": "Fehler beim Zurücksetzen",
    "deleteUserConfirm": "Benutzer \"{name}\" wirklich löschen? Alle Räume werden ebenfalls gelöscht.",
    "brandingTitle": "Branding",
    "brandingDescription": "Logo und App-Name anpassen, die in der Anwendung angezeigt werden.",
    "logoLabel": "Logo",
    "logoUpload": "Logo hochladen",
    "logoChange": "Logo ändern",
    "logoHint": "PNG, JPG, SVG oder WebP. Max. 5 MB.",
    "logoUploaded": "Logo hochgeladen",
    "logoUploadFailed": "Logo konnte nicht hochgeladen werden",
    "logoRemoved": "Logo entfernt",
    "logoRemoveFailed": "Logo konnte nicht entfernt werden",
    "appNameLabel": "App-Name",
    "appNameUpdated": "App-Name aktualisiert",
    "appNameUpdateFailed": "App-Name konnte nicht aktualisiert werden",
    "hideAppNameLabel": "App-Namen ausblenden",
    "hideAppNameHint": "Nur das Logo anzeigen, den App-Namen daneben ausblenden.",
    "hideAppNameFailed": "Einstellung konnte nicht gespeichert werden",
    "defaultThemeLabel": "Standard-Theme",
    "defaultThemeDesc": "Wird für nicht angemeldete Seiten (Gast-Join, Login, Startseite) verwendet, wenn keine persönliche Einstellung gesetzt ist.",
    "defaultThemeSaved": "Standard-Theme gespeichert",
    "defaultThemeUpdateFailed": "Standard-Theme konnte nicht aktualisiert werden",
    "regModeTitle": "Registrierungsmodus",
    "regModeDescription": "Steuern Sie, wie sich neue Benutzer registrieren können. \"Offen\" erlaubt jedem die Anmeldung. \"Nur mit Einladung\" erfordert einen Einladungslink.",
    "regModeOpen": "Offene Registrierung",
    "regModeInvite": "Nur mit Einladung",
    "regModeSaved": "Registrierungsmodus aktualisiert",
    "regModeFailed": "Registrierungsmodus konnte nicht aktualisiert werden",
    "inviteTitle": "Benutzer-Einladungen",
    "inviteDescription": "Laden Sie neue Benutzer per E-Mail ein. Sie erhalten einen Registrierungslink, der 7 Tage gültig ist.",
    "sendInvite": "Einladung senden",
    "inviteSent": "Einladung gesendet",
    "inviteFailed": "Einladung konnte nicht gesendet werden",
    "inviteDeleted": "Einladung gelöscht",
    "inviteDeleteFailed": "Einladung konnte nicht gelöscht werden",
    "inviteLinkCopied": "Einladungslink kopiert",
    "copyInviteLink": "Einladungslink kopieren",
    "inviteExpired": "Abgelaufen",
    "inviteUsedBy": "Verwendet von",
    "inviteExpiresAt": "Läuft ab am",
    "noInvites": "Noch keine Einladungen",
    "legalLinksTitle": "Rechtliche Links",
    "legalLinksDesc": "Impressum- und Datenschutz-Links am unteren Rand der Seitenleiste anzeigen. Leer lassen zum Ausblenden.",
    "imprintUrl": "Impressum-URL",
    "privacyUrl": "Datenschutz-URL",
    "imprintUrlSaved": "Impressum-URL gespeichert",
    "privacyUrlSaved": "Datenschutz-URL gespeichert",
    "imprintUrlFailed": "Impressum-URL konnte nicht gespeichert werden",
    "privacyUrlFailed": "Datenschutz-URL konnte nicht gespeichert werden",
    "oauthTitle": "OAuth / SSO",
    "oauthDescription": "OpenID-Connect-Anbieter verbinden (z. B. Keycloak, Authentik, Google) für Single Sign-On.",
    "oauthIssuer": "Issuer-URL",
    "oauthIssuerHint": "Die OIDC-Issuer-URL, z. B. https://auth.example.com/realms/main",
    "oauthClientId": "Client-ID",
    "oauthClientSecret": "Client-Secret",
    "oauthClientSecretHint": "Leer lassen, um das bestehende Secret beizubehalten",
    "oauthDisplayName": "Button-Beschriftung",
    "oauthDisplayNameHint": "Wird auf der Login-Seite angezeigt, z. B. Firmen-SSO",
    "oauthAutoRegister": "Neue Benutzer automatisch registrieren",
    "oauthAutoRegisterHint": "Erstellt automatisch Konten für Benutzer, die sich zum ersten Mal per OAuth anmelden.",
    "oauthSaved": "OAuth-Konfiguration gespeichert",
    "oauthSaveFailed": "OAuth-Konfiguration konnte nicht gespeichert werden",
    "oauthRemoved": "OAuth-Konfiguration entfernt",
    "oauthRemoveFailed": "OAuth-Konfiguration konnte nicht entfernt werden",
    "oauthRemoveConfirm": "OAuth-Konfiguration wirklich entfernen? Benutzer können sich dann nicht mehr per SSO anmelden.",
    "oauthNotConfigured": "OAuth ist noch nicht konfiguriert.",
    "oauthSave": "OAuth speichern",
    "oauthRemove": "OAuth entfernen",
    "roomsTitle": "Raumverwaltung",
    "roomsDescription": "Alle Räume der Instanz einsehen, verwalten und bei Bedarf löschen.",
    "searchRooms": "Räume suchen...",
    "roomName": "Name",
    "roomOwner": "Besitzer",
    "roomShares": "Geteilt",
    "roomCreated": "Erstellt",
    "roomView": "Raum öffnen",
    "deleteRoom": "Raum löschen",
    "deleteRoomConfirm": "Raum \"{name}\" wirklich löschen? Dies kann nicht rückgängig gemacht werden.",
    "roomDeleted": "Raum gelöscht",
    "roomDeleteFailed": "Raum konnte nicht gelöscht werden",
    "noRoomsFound": "Keine Räume vorhanden",
    "showAllRooms": "Alle {count} Räume anzeigen"
  },
  "notifications": {
    "bell": "Benachrichtigungen",
    "markAllRead": "Alle gelesen",
    "clearAll": "Alle löschen",
    "delete": "Löschen",
    "noNotifications": "Keine Benachrichtigungen",
    "roomShareAdded": "Raum wurde mit dir geteilt",
    "roomShareRemoved": "Raumzugriff wurde entfernt",
    "federationInviteReceived": "Neue Meeting-Einladung"
  },
  "federation": {
    "inbox": "Einladungen",
    "inboxSubtitle": "Meeting-Einladungen von anderen Redlight-Instanzen",
    "inviteTitle": "Remote-Benutzer einladen",
    "inviteSubtitle": "Du kannst entweder einen Benutzer von einer anderen Redlight-Instanz über seine Adresse einladen oder direkt eine E-Mail-Einladung senden. Es kann nur eine Option gleichzeitig verwendet werden.",
    "addressLabel": "Benutzeradresse",
    "addressPlaceholder": "@benutzer@andere-instanz.com",
    "addressHint": "Format: @Benutzername@Domain der Redlight-Instanz",
    "emailLabel": "Per E-Mail einladen",
    "emailPlaceholder": "name@beispiel.de, name2@beispiel.de",
    "emailHint": "Eine oder mehrere E-Mail-Adressen, durch Komma getrennt",
    "messageLabel": "Nachricht (optional)",
    "messagePlaceholder": "Hallo, ich lade dich zu unserem Meeting ein!",
    "send": "Einladung senden",
    "sent": "Einladung gesendet",
    "emailSent": "E-Mail-Einladung(en) gesendet",
    "emailSendFailed": "E-Mail-Einladung konnte nicht gesendet werden",
    "sendFailed": "Einladung konnte nicht gesendet werden",
    "from": "Von",
    "accept": "Annehmen",
    "decline": "Ablehnen",
    "accepted": "Einladung angenommen",
    "declined": "Einladung abgelehnt",
    "acceptFailed": "Fehler beim Annehmen",
    "declineFailed": "Fehler beim Ablehnen",
    "pending": "Ausstehend",
    "previousInvites": "Frühere Einladungen",
    "noInvitations": "Keine Einladungen",
    "noInvitationsSubtitle": "Wenn Sie von einer anderen Redlight-Instanz eingeladen werden, erscheint die Einladung hier.",
    "statusAccepted": "Angenommen",
    "statusDeclined": "Abgelehnt",
    "openLink": "Meeting öffnen",
    "loadFailed": "Einladungen konnten nicht geladen werden",
    "inviteRemote": "Remote einladen",
    "federated": "Fremd-Instanz",
    "readOnlyNotice": "Dieser Raum gehört einer anderen Instanz. Einstellungen können nicht geändert werden.",
    "joinMeeting": "Meeting beitreten",
    "removeRoom": "Raum entfernen",
    "removeRoomConfirm": "Raum wirklich entfernen?",
    "roomRemoved": "Raum entfernt",
    "roomRemoveFailed": "Raum konnte nicht entfernt werden",
    "acceptedSaved": "Einladung angenommen - Raum wurde in deinem Dashboard gespeichert",
    "meetingId": "Meeting ID",
    "maxParticipants": "Max. Teilnehmer",
    "recordingOn": "Aufnahme aktiviert",
    "recordingOff": "Aufnahme deaktiviert",
    "unlimited": "Unbegrenzt",
    "backToDashboard": "Zurück zum Dashboard",
    "participantLimit": "Teilnehmerlimit gesetzt",
    "recordingLabel": "Aufnahme",
    "recordingOnHint": "Meetings in diesem Raum können aufgezeichnet werden",
    "recordingOffHint": "Meetings in diesem Raum werden nicht aufgezeichnet",
    "roomDetails": "Raumdetails",
    "joinUrl": "Beitritts-URL",
    "roomDeleted": "Gelöscht",
    "roomDeletedNotice": "Dieser Raum wurde vom Besitzer auf der Ursprungsinstanz gelöscht und ist nicht mehr verfügbar.",
    "calendarEvent": "Kalendereinladung",
    "calendarAccepted": "Kalender-Event angenommen und in deinen Kalender eingetragen",
    "localCalendarEvent": "Lokale Kalendereinladung",
    "calendarLocalAccepted": "Einladung angenommen - Event wurde in deinen Kalender eingetragen",
    "invitationRemoved": "Einladung entfernt",
    "removeInvitation": "Einladung entfernen"
  },
  "calendar": {
    "title": "Kalender",
    "subtitle": "Meetings planen und verwalten",
    "newEvent": "Neues Event",
    "createEvent": "Event erstellen",
    "editEvent": "Event bearbeiten",
    "eventTitle": "Titel",
    "eventTitlePlaceholder": "z.B. Team Meeting",
    "description": "Beschreibung",
    "descriptionPlaceholder": "Beschreibung hinzufügen...",
    "startTime": "Beginn",
    "endTime": "Ende",
    "linkedRoom": "Verknüpfter Raum",
    "noRoom": "Kein Raum (kein Videomeeting)",
    "linkedRoomHint": "Verknüpfe einen Raum, um die Beitritts-URL automatisch ins Event einzufügen.",
    "reminderLabel": "Erinnerung",
    "reminderNone": "Keine Erinnerung",
    "reminder5": "5 Minuten vorher",
    "reminder15": "15 Minuten vorher",
    "reminder30": "30 Minuten vorher",
    "reminder60": "1 Stunde vorher",
    "reminder120": "2 Stunden vorher",
    "reminder1440": "1 Tag vorher",
    "timezone": "Zeitzone",
    "color": "Farbe",
    "eventCreated": "Event erstellt",
    "eventUpdated": "Event aktualisiert",
    "eventDeleted": "Event gelöscht",
    "saveFailed": "Event konnte nicht gespeichert werden",
    "deleteFailed": "Event konnte nicht gelöscht werden",
    "deleteConfirm": "Dieses Event wirklich löschen?",
    "loadFailed": "Events konnten nicht geladen werden",
    "today": "Heute",
    "month": "Monat",
    "week": "Woche",
    "more": "weitere",
    "mon": "Mo",
    "tue": "Di",
    "wed": "Mi",
    "thu": "Do",
    "fri": "Fr",
    "sat": "Sa",
    "sun": "So",
    "downloadICS": "ICS herunterladen",
    "addToOutlook": "Zu Outlook hinzufügen",
    "addToGoogleCalendar": "Zu Google Kalender",
    "icsDownloaded": "ICS-Datei heruntergeladen",
    "icsFailed": "ICS-Datei konnte nicht heruntergeladen werden",
    "share": "Teilen",
    "shareEvent": "Event teilen",
    "shareAdded": "Benutzer zum Event hinzugefügt",
    "shareRemoved": "Freigabe entfernt",
    "shareFailed": "Event konnte nicht geteilt werden",
    "invitationSent": "Einladung gesendet",
    "invitationCancelled": "Einladung widerrufen",
    "invitationPending": "Einladung ausstehend",
    "pendingInvitations": "Ausstehende Einladungen",
    "accepted": "Angenommen",
    "sendFederated": "Remote einladen",
    "sendFederatedTitle": "Termin-Einladung senden",
    "sendFederatedDesc": "Sende dieses Kalender-Event an einen Benutzer auf einer anderen Redlight-Instanz oder an eine beliebige E-Mail-Adresse. Remote-Empfänger müssen die Einladung zuerst annehmen, bevor das Event in ihrem Kalender erscheint; E-Mail-Empfänger erhalten die Termindetails mit einer .ics-Datei im Anhang.",
    "inviteSection": "Einladungen versenden (optional)",
    "inviteSectionHint": "Lade Personen per E-Mail ein oder sende das Event an einen Benutzer auf einer anderen Redlight-Instanz.",
    "send": "Senden",
    "fedSent": "Kalendereinladung gesendet! Der Empfänger muss diese zuerst annehmen.",
    "fedFailed": "Event konnte nicht an Remote-Instanz gesendet werden",
    "openRoom": "Verknüpften Raum öffnen",
    "organizer": "Organisator",
    "federatedFrom": "Von Remote-Instanz",
    "joinFederatedMeeting": "Remote-Meeting beitreten"
  },
  "email": {
    "greeting": "Hey {name} 👋",
    "viewInvitation": "Einladung anzeigen",
    "invitationFooter": "Öffne den Link oben, um die Einladung anzunehmen oder abzulehnen.",
    "linkHint": "Oder kopiere diesen Link in deinen Browser:",
    "verify": {
      "subject": "{appName} - E-Mail-Adresse bestätigen",
      "intro": "Bitte bestätige deine E-Mail-Adresse, indem du auf den Button klickst:",
      "button": "E-Mail bestätigen",
      "validity": "Dieser Link ist 24 Stunden gültig.",
      "footer": "Falls du dich nicht registriert hast, kannst du diese E-Mail ignorieren."
    },
    "invite": {
      "subject": "{appName} - Du wurdest eingeladen",
      "title": "Du wurdest eingeladen! 🎉",
      "intro": "Du wurdest eingeladen, ein Konto auf {appName} zu erstellen.",
      "prompt": "Klicke auf den Button, um dich zu registrieren:",
      "button": "Konto erstellen",
      "validity": "Dieser Link ist 7 Tage gültig.",
      "footer": "Falls du diese Einladung nicht erwartet hast, kannst du diese E-Mail ignorieren."
    },
    "federationInvite": {
      "subject": "{appName} - Meeting-Einladung von {fromUser}",
      "intro": "Du hast eine Meeting-Einladung von {fromUser} erhalten.",
      "roomLabel": "Raum:"
    },
    "calendarInvite": {
      "subject": "{appName} - Kalendereinladung von {fromUser}",
      "intro": "Du hast eine Kalendereinladung von {fromUser} erhalten."
    },
    "calendarDeleted": {
      "subject": "{appName} - Kalendereintrag abgesagt: {title}",
      "intro": "Der folgende Kalendereintrag wurde vom Organisator ({fromUser}) gelöscht und ist nicht mehr verfügbar:",
      "note": "Der Termin wurde automatisch aus deinem Kalender entfernt.",
      "footer": "Diese Nachricht wurde automatisch von {appName} versendet."
    }
  },
  "notFound": {
    "title": "Seite nicht gefunden",
    "description": "Die Seite, die du suchst, existiert nicht oder wurde verschoben.",
    "goBack": "Zurück",
    "goHome": "Zur Startseite"
  }
}