@elytracms/studio 0.0.82 → 0.0.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/components/builder/blocks-model.js +5 -2
  2. package/dist/components/builder/blocks-model.js.map +1 -1
  3. package/dist/components/builder/canvas-inline-editing.js +1 -1
  4. package/dist/components/builder/canvas-inline-editing.js.map +1 -1
  5. package/dist/components/builder/composition-field-editor.d.ts +48 -0
  6. package/dist/components/builder/composition-field-editor.js +94 -22
  7. package/dist/components/builder/composition-field-editor.js.map +1 -1
  8. package/dist/components/builder/inline-edit.js +3 -2
  9. package/dist/components/builder/inline-edit.js.map +1 -1
  10. package/dist/components/builder/node-factory.d.ts +4 -0
  11. package/dist/components/builder/node-factory.js +14 -9
  12. package/dist/components/builder/node-factory.js.map +1 -1
  13. package/dist/components/cms/cms-composition-validators.d.ts +7 -16
  14. package/dist/components/cms/cms-composition-validators.js +101 -52
  15. package/dist/components/cms/cms-composition-validators.js.map +1 -1
  16. package/dist/components/cms/gate-validation.js +3 -1
  17. package/dist/components/cms/gate-validation.js.map +1 -1
  18. package/dist/components/cms/rich-text/component-embed.d.ts +13 -7
  19. package/dist/components/cms/rich-text/component-embed.js +21 -13
  20. package/dist/components/cms/rich-text/component-embed.js.map +1 -1
  21. package/dist/components/cms/rich-text/editor.d.ts +1 -1
  22. package/dist/components/cms/rich-text/editor.js +2 -2
  23. package/dist/components/cms/rich-text/editor.js.map +1 -1
  24. package/dist/components/cms/rich-text/extensions.d.ts +4 -0
  25. package/dist/components/cms/rich-text/extensions.js +6 -0
  26. package/dist/components/cms/rich-text/extensions.js.map +1 -1
  27. package/dist/components/cms/rich-text/insert.js +1 -1
  28. package/dist/components/cms/rich-text/insert.js.map +1 -1
  29. package/dist/components/cms/rich-text/unknown-node.d.ts +66 -0
  30. package/dist/components/cms/rich-text/unknown-node.js +101 -0
  31. package/dist/components/cms/rich-text/unknown-node.js.map +1 -0
  32. package/dist/components/cms/rich-text/value.d.ts +82 -13
  33. package/dist/components/cms/rich-text/value.js +169 -38
  34. package/dist/components/cms/rich-text/value.js.map +1 -1
  35. package/dist/components/cms/rich-text-preview.js +1 -1
  36. package/dist/components/cms/rich-text-preview.js.map +1 -1
  37. package/dist/lib/ai/rich-text-translate.js +3 -3
  38. package/dist/lib/ai/rich-text-translate.js.map +1 -1
  39. package/dist/lib/i18n/messages.de.js +7 -3
  40. package/dist/lib/i18n/messages.de.js.map +1 -1
  41. package/dist/lib/i18n/messages.en.d.ts +4 -0
  42. package/dist/lib/i18n/messages.en.js +7 -3
  43. package/dist/lib/i18n/messages.en.js.map +1 -1
  44. package/package.json +5 -2
@@ -1 +1 @@
1
- {"version":3,"file":"messages.de.js","sourceRoot":"","sources":["../../../src/lib/i18n/messages.de.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TranslationCatalog } from './messages.en'\n\n/**\n * The engine-shipped **German** studio-chrome catalog (EC-398), importable as\n * `@elytracms/studio/locales/de` and passed by reference into\n * `defineStudio({ i18n: { locales: { de: deMessages } } })` — translations stay\n * code passed directly (EC-241's principle; no registry, no runtime fetch). A\n * consumer overrides individual strings by spreading:\n * `{ ...deMessages, 'some.key': 'eigene Formulierung' }`.\n *\n * Seeded 2026-07-15 as the best-of merge of the two hand-maintained consumer\n * catalogs (Naturkinder wins conflicts) + fresh translations for the keys both\n * lacked (incl. EC-397's sign-in/boot copy). Typed against\n * {@link TranslationCatalog} so an unknown/stale key fails typecheck;\n * `messages.de.test.ts` pins EXACT key parity with the EN source (no missing,\n * no stale, matching `{var}` placeholders) — a new engine string fails the\n * engine build until it is translated here.\n *\n * Sections mirror `messages.en.ts` so the files diff side-by-side.\n *\n * Glossar: Sammlung · Dokument · Feld · Medien · Komponente · Weiterleitung ·\n * Verweis · Version · Entwurf · veröffentlichen · Benutzer · Rolle ·\n * Einstellungen · Bereitstellung.\n */\nexport const deMessages: TranslationCatalog = {\n // ─────────────────────────────────────────────────────────────────────────\n // Common — generic, reused across surfaces\n // ─────────────────────────────────────────────────────────────────────────\n 'common.save': 'Speichern',\n 'common.saving': 'Wird gespeichert…',\n 'common.saveChanges': 'Änderungen speichern',\n 'common.cancel': 'Abbrechen',\n 'common.delete': 'Löschen',\n 'common.remove': 'Entfernen',\n 'common.add': 'Hinzufügen',\n 'common.edit': 'Bearbeiten',\n 'common.close': 'Schließen',\n 'common.copy': 'Kopieren',\n 'common.duplicate': 'Duplizieren',\n 'common.select': 'Auswählen',\n 'common.clear': 'Zurücksetzen',\n 'common.apply': 'Anwenden',\n 'common.upload': 'Hochladen',\n 'common.retry': 'Erneut versuchen',\n 'common.discard': 'Verwerfen',\n 'common.dismiss': 'Schließen',\n 'common.loading': 'Wird geladen…',\n 'common.searchPlaceholder': 'Suchen…',\n 'common.none': 'Keine',\n 'common.required': 'erforderlich',\n 'common.optional': 'optional',\n 'common.yes': 'Ja',\n 'common.no': 'Nein',\n 'common.true': 'wahr',\n 'common.false': 'falsch',\n 'common.backendUnreachable': 'Das Speicher-Backend ist nicht erreichbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Built-in navigation views (the section rail)\n // ─────────────────────────────────────────────────────────────────────────\n 'nav.cms.label': 'Inhalt',\n 'nav.cms.description': 'Sammlungen, Felder und Dokumente modellieren.',\n 'nav.components.label': 'Komponenten',\n 'nav.components.description': 'Registry der Primitive und Projektkomponenten durchsuchen.',\n 'nav.redirects.label': 'Weiterleitungen',\n 'nav.redirects.description': 'URL-Weiterleitungen (301/302) für diese Website erstellen und verwalten.',\n 'nav.assets.label': 'Medien',\n 'nav.assets.description': 'Hochgeladene Medien und Metadaten verwalten.',\n 'nav.users.label': 'Benutzer',\n 'nav.users.description': 'Verwalten, wer Zugriff auf diese Bereitstellung hat, und deren Rolle.',\n 'nav.extensions.label': 'Erweiterungen',\n 'nav.extensions.description': 'Komponenten, Feldtypen, Adapter und Vorlagen aus dem Marktplatz installieren.',\n 'nav.settings.label': 'Einstellungen',\n 'nav.settings.description': 'Projektmetadaten und Sprachen konfigurieren.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Current-user menu (shell header)\n // ─────────────────────────────────────────────────────────────────────────\n 'userMenu.accountMenu': 'Kontomenü',\n 'userMenu.lightMode': 'Heller Modus',\n 'userMenu.darkMode': 'Dunkler Modus',\n 'userMenu.accountSettings': 'Kontoeinstellungen',\n 'userMenu.soon': 'Bald',\n 'userMenu.signOut': 'Abmelden',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Shell — top bar, section rail, boot/error frames, project chrome\n // ─────────────────────────────────────────────────────────────────────────\n 'shell.allProjects': 'Alle Projekte',\n 'shell.breadcrumb.label': 'Brotkrümelnavigation',\n 'shell.nav.label': 'Bereiche',\n 'shell.sidebar.expand': 'Seitenleiste ausklappen',\n 'shell.sidebar.collapse': 'Seitenleiste einklappen',\n 'shell.sidebar.collapseLabel': 'Einklappen',\n 'shell.nav.planned': 'Geplant',\n 'shell.nav.collapseView': '{name} einklappen',\n 'shell.nav.expandView': '{name} ausklappen',\n 'shell.nav.issuesCount': '{count} Sidebar-Probleme',\n 'shell.sectionState.empty.title': 'Noch nichts vorhanden',\n 'shell.sectionState.empty.description': 'Dieser Bereich hat keine Inhalte für das aktive Projekt.',\n 'shell.sectionState.loading.description': 'Der aktuelle Stand dieses Bereichs wird geladen.',\n 'shell.sectionState.error.title': 'Etwas ist schiefgelaufen',\n 'shell.sectionState.error.description':\n 'Dieser Bereich konnte nicht geladen werden. Bitte versuchen Sie es gleich erneut.',\n 'shell.sectionState.unavailable.title': 'Nicht verfügbar',\n 'shell.sectionState.unavailable.description': 'Dieser Bereich ist für das aktive Projekt nicht verfügbar.',\n 'shell.sectionState.planned.title': 'Geplant',\n 'shell.sectionState.planned.description': 'Diese Oberfläche ist geplant und für dieses Projekt noch nicht aktiviert.',\n 'shell.sectionState.badge.empty': 'leer',\n 'shell.sectionState.badge.loading': 'lädt',\n 'shell.sectionState.badge.error': 'Fehler',\n 'shell.sectionState.badge.unavailable': 'nicht verfügbar',\n 'shell.sectionState.badge.planned': 'geplant',\n 'shell.projectNotFound.title': 'Projekt nicht gefunden',\n 'shell.projectNotFound.body':\n 'Dieses Projekt existiert nicht oder wurde gelöscht. Möglicherweise bestand es nur in dieser Sitzung.',\n 'shell.backToProjects': 'Zurück zu den Projekten',\n 'shell.routeNotFound.title': 'Seite nicht gefunden',\n 'shell.routeNotFound.body': 'Diese Studio-URL verweist auf keinen Bereich.',\n 'shell.projectSwitcher.recent': 'Zuletzt verwendet',\n 'shell.projects': 'Projekte',\n 'shell.projectSwitcher.browseAll': 'Alle Projekte durchsuchen',\n 'shell.project.notProvisioned': 'nicht bereitgestellt',\n 'shell.projectList.recent': 'Zuletzt verwendet',\n 'shell.projectList.empty.title': 'Keine Projekte',\n 'shell.projectCard.open': 'Projekt öffnen',\n 'shell.session.loading': 'Projekt wird geladen…',\n 'shell.session.error.title': 'Der gespeicherte Stand dieses Projekts konnte nicht geladen werden',\n 'shell.session.error.body':\n 'Das Studio greift gegenüber einem aktiven Backend niemals auf Beispielinhalte zurück – Ihre Daten sind sicher. Versuchen Sie es erneut, sobald das Backend erreichbar ist.',\n 'shell.workspaceGate.title': 'Workspace-Konfiguration ist ungültig',\n 'shell.workspaceGate.issuesLabel': 'Probleme der Workspace-Konfiguration',\n 'shell.backend.connecting': 'Verbindung zum Backend wird hergestellt…',\n 'shell.backend.notConfigured.title': 'Backend nicht konfiguriert',\n 'shell.backend.unavailable.title': 'Backend nicht verfügbar',\n 'shell.backend.unavailable.body':\n 'Das konfigurierte Convex-Deployment hat nicht geantwortet. Ihre Daten sind im Backend sicher – das Studio wechselt nicht zur lokalen Speicherung.',\n 'shell.backend.retryConnection': 'Verbindung erneut versuchen',\n // EC-258 — the unified deployment-setup boot gate.\n 'shell.deploymentSetup.title': 'Bereitstellung einrichten',\n 'shell.deploymentSetup.checking': 'Bereitstellung wird geprüft…',\n 'shell.deploymentSetup.description':\n 'Das Studio kann erst starten, wenn diese Punkte behoben sind. Korrigieren Sie alle Einträge und laden Sie anschließend neu.',\n 'shell.deploymentSetup.issuesLabel': 'Prüfungen der Bereitstellung',\n 'shell.deploymentSetup.fixLabel': 'Beheben',\n 'shell.deploymentSetup.retry': 'Erneut prüfen',\n // EC-399 — expected deployment env vars (presence only) on the setup screen.\n 'shell.deploymentSetup.envSection': 'Umgebungsvariablen der Bereitstellung',\n 'shell.deploymentSetup.envSectionHint':\n 'Umgebungsvariablen, die diese Bereitstellung erwartet — nur Vorhandensein, Werte werden nie angezeigt. `elytra doctor` prüft sie verlässlich.',\n 'shell.unsavedChanges.title': 'Nicht gespeicherte Änderungen',\n 'shell.unsavedChanges.body':\n 'Sie haben nicht gespeicherte Änderungen. Speichern Sie sie, bevor Sie die Seite verlassen, oder verwerfen Sie sie.',\n 'shell.unsavedChanges.saving': 'Wird gespeichert…',\n 'shell.devLogin.badge': 'Dev-Login',\n 'shell.devLogin.hint':\n 'Automatische Dev-Anmeldung: Das Studio wurde über VITE_ELYTRA_DEV_LOGIN automatisch angemeldet (nur in Entwicklungs-Builds). Entfernen Sie die Variable, um die echte Anmeldung zu testen.',\n 'shell.playground.badge': 'Playground',\n 'shell.playground.hint':\n 'Playground-Modus: Daten liegen im Arbeitsspeicher dieses Geräts und werden beim Neuladen zurückgesetzt. Es wird nichts in einem Backend gespeichert.',\n 'shell.deliveryHealth.dismiss': 'Schließen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Customization issues — the section-rail foot (`NavIssues`)\n // ─────────────────────────────────────────────────────────────────────────\n // EC-478. Jede `{var}` ist ein BEZEICHNER (Eintrags-id, Erweiterungspunkt,\n // Komponenten-/Sammlungs-id) und bleibt bewusst unübersetzt. Fachbegriffe, die\n // im Code stehen (`reuse.component`, `reuse.relationProp`, `studio.config`,\n // Prop, Slot, Block), bleiben ebenfalls unübersetzt — der Entwickler muss sie\n // in seiner Konfiguration wiederfinden.\n // EC-479 — das Projekt deklariert nichts, womit das Studio arbeiten könnte.\n 'customization.issue.noCollections':\n 'Dieses Projekt deklariert keine Inhaltssammlungen. Fügen Sie sie in „{file}“ hinzu — das Studio zeigt Ihr Schema oder keines, niemals Beispielinhalte.',\n 'customization.issue.duplicateOverrideId':\n 'Doppelte Überschreibungs-id „{id}“ für „{point}“ — die spätere wird ignoriert.',\n 'customization.issue.unknownOverrideTarget':\n 'Die Überschreibung „{id}“ für „{point}“ passt zu keinem eingebauten Baustein, den sie ersetzen könnte.',\n 'customization.issue.invalidOverride': 'Die Überschreibung „{id}“ für „{point}“ ist ungültig: {reason}',\n 'customization.issue.reason.rendererNotAComponent': 'der Renderer ist keine Komponente',\n 'customization.issue.reason.viewNoRender': 'die Ansicht hat keine render-Funktion',\n 'customization.issue.reason.viewNoLabel': 'die Ansicht hat keine Beschriftung',\n 'customization.issue.derivedIdBuiltinCollision':\n 'Die Ansicht „{label}“ für „{point}“ leitet die id „{id}“ aus ihrer Beschriftung ab, was der eingebauten Ansicht „{id}“ entspricht — die eingebaute Ansicht bleibt erhalten und diese wird ignoriert. Geben Sie eine explizite id an, um eine eingebaute Ansicht absichtlich zu ersetzen.',\n 'customization.issue.derivedIdCollectionCollision':\n 'Die Ansichts-id „{id}“ für „{point}“ ist mehrdeutig: Sie verbindet die Sammlungen {collections} mit „-“, und eine Sammlung heißt buchstäblich „{joined}“ — deren eigene Ansicht leitet dieselbe id ab. Geben Sie dieser Gruppe eine explizite id.',\n // EC-467 — die Deklaration wiederverwendbarer Elemente (`defineStudio({ reuse })`).\n 'builder.reuse.config.unknownComponent':\n 'Wiederverwendbare Elemente: Die Studio-Konfiguration deklariert reuse.component „{component}“, was keine registrierte Komponente ist. Korrigieren Sie die id oder entfernen Sie den reuse-Block, damit das Studio die Einbettung selbst ermittelt.',\n 'builder.reuse.config.noRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument und kann daher auf kein wiederverwendbares Dokument zeigen. Eine Einbettung benötigt genau ein Relations-Prop mit Kardinalität eins.',\n 'builder.reuse.config.unknownRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument mit dem Namen „{relationProp}“. Ihre Relations-Props sind: {props}.',\n 'builder.reuse.config.ambiguousRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat {count} Relations-Props für ein einzelnes Dokument ({props}) — ergänzen Sie reuse.relationProp, um anzugeben, welches auf das wiederverwendbare Dokument zeigt.',\n 'builder.reuse.config.unknownCollection':\n 'Wiederverwendbare Elemente: „{component}.{relationProp}“ verweist auf die Sammlung „{collection}“, die dieses Projekt nicht definiert.',\n 'builder.reuse.config.noBlocksField':\n 'Wiederverwendbare Elemente: Die Sammlung „{collection}“ hinter „{component}.{relationProp}“ hat kein Block-Feld (Komposition), sodass die Einbettung nichts einbinden kann.',\n 'builder.reuse.config.ambiguousInference':\n 'Wiederverwendbare Elemente: {count} Komponenten haben die Form einer wiederverwendbaren Einbettung ({components}). Ein Projekt hat genau eine wiederverwendbare Einbettung, deshalb rät das Studio nicht — deklarieren Sie sie in studio.config als reuse: { component: \\'<id>\\' }. Bis dahin sind die Wiederverwendungs-Gesten deaktiviert.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Auth / errors\n // ─────────────────────────────────────────────────────────────────────────\n 'auth.signIn': 'Anmelden',\n // EC-397 — the engine sign-in screen (`SignInView`/`SignInScreen`).\n 'auth.signIn.heading': 'Bei {productName} anmelden',\n 'auth.signIn.headingCreate': 'Konto erstellen',\n 'auth.signIn.subtext.continue': 'Weiter zu {project}.',\n 'auth.signIn.subtext.register': 'Registrieren für {project}.',\n 'auth.signIn.subtext.generic': 'Melden Sie sich mit Ihrem Studio-Konto an.',\n 'auth.signIn.emailLabel': 'E-Mail',\n 'auth.signIn.emailPlaceholder': 'name@beispiel.de',\n 'auth.signIn.passwordLabel': 'Passwort',\n 'auth.signIn.submit': 'Anmelden',\n 'auth.signIn.submitCreate': 'Konto erstellen',\n 'auth.signIn.submitting': 'Anmeldung läuft…',\n 'auth.signIn.submittingCreate': 'Konto wird erstellt…',\n 'auth.signIn.toggle.firstTime': 'Zum ersten Mal bei dieser Bereitstellung?',\n 'auth.signIn.toggle.alreadyHave': 'Sie haben bereits ein Konto für diese Bereitstellung?',\n 'auth.signIn.toggle.signIn': 'Anmelden',\n 'auth.signIn.toggle.createAccount': 'Konto erstellen',\n 'auth.signIn.devAccounts.title': 'Playground-Modus — vorbereitete Entwicklungskonten',\n // EC-397 — engine-classified sign-in failures (the EC-362/EC-363 reason\n // codes). Each message MUST stay byte-identical to the auth-adapter copy it\n // localizes: `signInErrorMessageKey` (lib/auth-errors.ts) recognizes a\n // failure by exact EN-message match, so a reworded adapter message simply\n // falls back to the raw English until re-synced here —\n // `lib/auth-errors.test.ts` pins the sync against the real classifier.\n 'auth.signIn.error.invalidCredentials': 'E-Mail-Adresse oder Passwort ist falsch.',\n 'auth.signIn.error.invalidCredentialsSignUp':\n 'Diese E-Mail-Adresse oder dieses Passwort kann nicht verwendet werden (Passwort zu kurz?).',\n 'auth.signIn.error.accountExists': 'Für diese E-Mail-Adresse gibt es bereits ein Konto. Bitte melden Sie sich an.',\n 'auth.signIn.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Sie nicht anmelden: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` für diese Bereitstellung aus und versuchen Sie es erneut. (Die Bereitstellungsprüfung meldet dasselbe.)',\n 'auth.signIn.error.notInvited':\n 'Diese Bereitstellung ist nur auf Einladung zugänglich. Bitten Sie eine Administratorin oder einen Administrator, Ihre E-Mail-Adresse einzuladen, und erstellen Sie dann Ihr Konto.',\n 'auth.signIn.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Anmeldeversuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'auth.signIn.error.serverError':\n 'Anmeldung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.serverErrorSignUp':\n 'Registrierung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.unavailable': 'Die Anmeldung ist derzeit nicht verfügbar.',\n 'auth.signIn.error.playgroundSignUp':\n 'Die Registrierung ist im Playground-Modus nicht verfügbar — verwenden Sie die unten aufgeführten Entwicklungskonten.',\n // EC-397 — root-route boot states (`createStudioRootRoute`).\n 'auth.boot.checkingSession': 'Sitzung wird geprüft…',\n 'error.dismiss': 'Fehler schließen',\n // EC-403 — the blocking session-expired re-auth overlay\n // (`session-expired-overlay.tsx`), raised app-wide when any operation fails\n // the session-expired predicate; re-auth happens in place, no navigation.\n 'error.sessionExpiredTitle': 'Sie wurden abgemeldet',\n 'error.sessionExpired':\n 'Sie wurden abgemeldet, daher werden Ihre letzten Änderungen nicht gespeichert. Melden Sie sich erneut an, um weiterzuarbeiten — Ihre ungespeicherten Änderungen bleiben genau hier erhalten.',\n\n // EC-494 — Betriebs-Fehler, die die Operations-Grenze überqueren. Bezeichner\n // (Operationsnamen, Entitätsarten, Dokumentschlüssel, Feldnamen) bleiben unübersetzt.\n // EC-494 — die Titel der Fehler-Badges im Banner.\n 'operations.errorLabel.validation': 'Konnte nicht gespeichert werden',\n 'operations.errorLabel.not-found': 'Nicht gefunden',\n 'operations.errorLabel.conflict': 'Existiert bereits',\n 'operations.errorLabel.backend-unavailable': 'Verbindungsproblem',\n 'operations.errorLabel.unauthorized': 'Nicht erlaubt',\n 'operations.errorLabel.unknown': 'Etwas ist schiefgelaufen',\n 'operations.error.invalidInput': 'Die Eingabe für „{operation}“ ist ungültig.',\n 'operations.error.notFound': 'Kein {entity} für „{target}“ gefunden.',\n 'operations.error.conflict': '„{target}“ steht im Konflikt mit einem vorhandenen Datensatz.',\n 'operations.error.backendUnavailable': 'Das Persistenz-Backend ist nicht erreichbar.',\n 'operations.error.unauthorized': 'Die Operation „{operation}“ wurde vom Autorisierungs-Hook abgelehnt.',\n 'operations.error.unknown': 'Es ist ein unbekannter Fehler bei der Operation aufgetreten.',\n 'operations.error.documentSchemaViolation': 'Das Dokument „{collection}:{id}“ verletzt das Schema seiner Sammlung.',\n 'operations.error.strictReferencesBlockDelete':\n '„{target}“ kann nicht gelöscht werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockDeleteOne':\n '„{target}“ kann nicht gelöscht werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublish':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublishOne':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n 'operations.errorDetail.andMore': ' und {count} weitere',\n\n // EC-494 — Fehler von Inhaltsabfragen (Filterleiste + Listing-Hinweis im Canvas).\n // „filterable“, „asc“, „desc“, „in“, „empty“ sind Schlüsselwörter aus der Konfiguration\n // und bleiben wörtlich stehen.\n 'content.queryError.nonFilterableField':\n 'Das Feld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.unknownField': 'Das Feld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.unknownCollection': 'Die Sammlung \"{collection}\" ist nicht definiert.',\n 'content.queryError.filterShape':\n 'Der Filter für \"{field}\" muss ein Skalar oder ein Operator-Objekt sein.',\n 'content.queryError.filterNoOperators': 'Der Filter für \"{field}\" enthält keine Operatoren.',\n 'content.queryError.unknownOperator':\n 'Unbekannter Filteroperator \"{operator}\" auf \"{field}\" — das Vokabular ist genau {vocabulary}.',\n 'content.queryError.operatorInRequiresArray':\n 'Der Operator \"in\" auf \"{field}\" erwartet ein Array aus Skalaren.',\n 'content.queryError.operatorRequiresString':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen Zeichenkettenwert.',\n 'content.queryError.operatorEmptyRequiresBoolean':\n 'Der Operator \"empty\" auf \"{field}\" erwartet einen Wahrheitswert (true = ist leer).',\n 'content.queryError.operatorRequiresScalar':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen skalaren Wert.',\n 'content.queryError.sortNotFilterable':\n 'Das Sortierfeld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.sortUnknownField':\n 'Das Sortierfeld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.sortDirection': 'Die Sortierrichtung muss \"asc\" oder \"desc\" sein.',\n 'content.queryError.limitPositiveInteger': 'Das Limit muss eine positive ganze Zahl sein.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — collection list / view bar / filters / cells\n // ─────────────────────────────────────────────────────────────────────────\n // EC-412 — the CMS section landing (`cms-index.tsx`): the collection grid.\n 'cms.index.heading': 'Inhalt',\n 'cms.index.description':\n 'Schemabasierte Sammlungen. Öffnen Sie eine Sammlung, um ihre Dokumente als Tabelle zu durchsuchen und im Detail-Editor zu bearbeiten.',\n 'cms.index.fieldCount.one': '{count} Feld',\n 'cms.index.fieldCount.other': '{count} Felder',\n 'cms.index.singleDocument': 'Einzeldokument',\n 'cms.list.new': 'Neu',\n 'cms.list.newPage': 'Neue Seite',\n 'cms.list.newNamed': 'Neu: {noun}',\n 'cms.list.moreActions': 'Weitere Aktionen',\n 'cms.list.rowActionsColumnLabel': 'Zeilenaktionen',\n 'cms.list.rowActionsLabel': 'Aktionen für {id}',\n 'cms.list.rowAction.open': 'Öffnen',\n 'cms.list.import': 'Importieren…',\n 'cms.list.export': 'Exportieren',\n 'cms.list.forReview': 'Zur Überprüfung',\n 'cms.list.count': '{count} {noun}',\n 'cms.list.countFiltered': '{visible} von {total} {noun}',\n 'cms.list.emptyNone': 'Noch keine {noun}.',\n 'cms.list.emptyFiltered': 'Keine Dokumente entsprechen den Filtern der aktuellen Ansicht.',\n 'cms.list.selectAll': 'Alle Dokumente in der Ansicht auswählen',\n 'cms.list.selectRow': '{title} auswählen',\n 'cms.list.column.title': 'Titel',\n 'cms.list.column.state': 'Status',\n // EC-448 — Icon-Header der fixierten Status-Punkt-Spalte (nur `aria-label`/`title`).\n 'cms.list.column.statusHeader': 'Status',\n 'cms.list.column.url': 'URL',\n // EC-445 — reserved date pseudo-columns (participate in the columns model).\n 'cms.list.column.updatedAt': 'Aktualisiert',\n 'cms.list.column.publishedAt': 'Veröffentlicht',\n // EC-346 — the State column's per-row badge (`DocStateBadge`); was hardcoded\n // English. Distinct keys from `cms.editor.draftState`/`publishedState` (title\n // case, editor header) and `cms.filter.state.*`/`cms.reference.*Badge` (filter\n // builder / reference dialog) — same words, different UI contexts (EC-241).\n 'cms.docState.published': 'veröffentlicht',\n // EC-448 — dritter Dok-Status (veröffentlicht mit unveröffentlichten Änderungen).\n 'cms.docState.changed': 'geändert',\n 'cms.docState.draft': 'Entwurf',\n // EC-479 — ohne Projektsprachen kann keine CMS-Sitzung geöffnet werden.\n 'cms.session.noLocales.title': 'Dieses Projekt deklariert keine Sprachen',\n 'cms.session.noLocales.body':\n 'Fügen Sie Ihrer Projektkonfiguration eine locales-Liste hinzu. Die Standardsprache ist der Schlüssel, unter dem Ihre Inhalte gespeichert werden — das Studio wählt sie deshalb nicht für Sie aus.',\n 'cms.list.view.all': 'Alle Einträge',\n 'cms.list.unknownCollection': 'Unbekannte Sammlung {id}.',\n 'cms.list.import.noId': '(keine ID)',\n 'cms.list.display.ariaLabel': 'Anzeigeoptionen',\n 'cms.list.display.title': 'Anzeige: Layout und Spalten',\n 'cms.list.display.layout': 'Layout',\n 'cms.list.display.flatList': 'Flache Liste',\n 'cms.list.display.pageHierarchy': 'Seitenhierarchie',\n 'cms.list.display.columns': 'Spalten · die erste sichtbare ist der Titel',\n 'cms.list.display.toggleColumn': 'Spalte {field} umschalten',\n 'cms.list.display.titleTag': '(Titel)',\n 'cms.list.display.moveColumnUp': 'Spalte {field} nach oben verschieben',\n 'cms.list.display.moveColumnDown': 'Spalte {field} nach unten verschieben',\n 'cms.list.bulk.count': '{count} ausgewählt',\n 'cms.list.bulk.publish': 'Veröffentlichen',\n 'cms.list.bulk.unpublish': 'Zurückziehen',\n 'cms.list.bulk.noSettableFields': 'Keine filterbaren Skalarfelder zum Setzen.',\n 'cms.list.bulk.setField': 'Feld setzen',\n 'cms.list.bulk.clearSelection': 'Auswahl aufheben',\n // EC-494 — die beiden studio-seitigen Fehlergründe je Eintrag.\n 'cms.list.bulk.error.notInSession': 'Das Dokument ist nicht mehr in der Sitzung.',\n 'cms.list.bulk.error.notValidToPublish':\n 'Das Dokument ist nicht gültig zum Veröffentlichen.',\n 'cms.list.bulk.set.set': 'Setze',\n 'cms.list.bulk.set.to': 'auf',\n 'cms.list.bulk.set.valueAria': 'Wert setzen',\n 'cms.list.bulk.set.apply': 'Auf Auswahl anwenden',\n 'cms.list.bulk.report.verb.setField': '{field} setzen',\n 'cms.list.bulk.report.verb.publish': 'veröffentlichen',\n 'cms.list.bulk.report.verb.unpublish': 'zurückziehen',\n 'cms.list.bulk.report.verb.delete': 'löschen',\n 'cms.list.bulk.report.summary': 'Sammelaktion {action}: {succeeded} erfolgreich',\n 'cms.list.bulk.report.failedSuffix': ', {count} fehlgeschlagen',\n 'cms.list.bulk.report.failedBadge': '{count} fehlgeschlagen',\n 'cms.list.bulk.report.done': 'fertig',\n 'cms.list.bulk.error.invalidSetField': 'Feld-Setzen fehlt Feld/Wert oder das Sammlungsschema.',\n 'cms.filter.button': 'Filter',\n 'cms.filter.summaryMultiple': '{count} Filter',\n 'cms.filter.clearAria': 'Filter löschen',\n 'cms.filter.refineSession': 'Verfeinern · diese Sitzung',\n 'cms.filter.clearAll': 'Alle löschen',\n 'cms.filter.add': 'Filter hinzufügen',\n 'cms.filter.andHint': 'Alle Bedingungen müssen zutreffen (UND)',\n 'cms.filter.fieldAria': 'Filterfeld',\n 'cms.filter.operatorAria': 'Filteroperator',\n 'cms.filter.remove': 'Filter entfernen',\n // EC-494 — die beiden studio-seitigen Klausel-Probleme.\n 'cms.filter.issue.stateOperator': 'Status-Filter unterstützen nur \"eq\" und \"in\".',\n 'cms.filter.issue.stateValue': 'Der Status muss \"draft\" oder \"published\" sein.',\n 'cms.filter.valueAria': 'Filterwert',\n 'cms.filter.valueListPlaceholder': 'Wert, Wert, …',\n 'cms.filter.pickRelation': 'Auswählen…',\n 'cms.filter.state.published': 'veröffentlicht',\n 'cms.filter.state.draft': 'Entwurf',\n // Operator labels (EC-345) — keyed by operator AND field type in `operatorLabelKey`.\n 'cms.filter.op.contains': 'enthält',\n 'cms.filter.op.equals': 'ist gleich',\n 'cms.filter.op.is': 'ist',\n 'cms.filter.op.startsWith': 'beginnt mit',\n 'cms.filter.op.endsWith': 'endet mit',\n 'cms.filter.op.isAnyOf': 'ist einer von',\n 'cms.filter.op.lessThan': 'kleiner als',\n 'cms.filter.op.atMost': 'höchstens',\n 'cms.filter.op.greaterThan': 'größer als',\n 'cms.filter.op.atLeast': 'mindestens',\n 'cms.filter.op.on': 'am',\n 'cms.filter.op.before': 'vor',\n 'cms.filter.op.onOrBefore': 'am oder vor',\n 'cms.filter.op.after': 'nach',\n 'cms.filter.op.onOrAfter': 'am oder nach',\n 'cms.filter.op.isEmpty': 'ist leer',\n 'cms.filter.op.isNotEmpty': 'ist nicht leer',\n 'cms.cell.fallbackTitle': 'Zeigt {source} (Ersatz) — noch keine {requested}-Übersetzung. Zum Übersetzen bearbeiten.',\n 'cms.cell.richText': 'Rich Text',\n 'cms.cell.itemCount.one': '{count} Element',\n 'cms.cell.itemCount.other': '{count} Elemente',\n 'cms.cell.object': 'Objekt',\n 'cms.cell.blockCount.one': '{count} Block',\n 'cms.cell.blockCount.other': '{count} Blöcke',\n 'cms.cell.createsVariantTitle': 'Beim Speichern wird die {locale}-Übersetzung dieses Feldes erstellt.',\n 'cms.cell.newVariant': 'neu',\n 'cms.cell.editAria': '{field} von {title} bearbeiten',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — document detail editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.editor.notFoundTitle': 'Nicht gefunden',\n 'cms.editor.backToList': 'Zurück zu {label}',\n 'cms.editor.publishFailed': 'Veröffentlichung fehlgeschlagen.',\n 'cms.editor.publishFailedReason': 'Veröffentlichung fehlgeschlagen: {error}',\n 'cms.editor.saveFailed': 'Speichern fehlgeschlagen',\n 'cms.editor.unsavedChanges': 'Nicht gespeicherte Änderungen',\n 'cms.editor.saved': 'Gespeichert',\n 'cms.editor.saving': 'Wird gespeichert…',\n // 0.0.42 (round 3): the standalone \"View live\" button is retired — opening the live\n // page now hangs off the header URL row's leaf segment. These strings still drive the\n // leaf's tooltip (open-live target + the published-gating reasons).\n 'cms.editor.openLiveUrl': '{path} öffnen',\n 'cms.editor.loadingLiveUrl': 'Live-URL wird geladen…',\n 'cms.editor.publishToViewLive': 'Veröffentlichen, um die Live-Seite zu sehen',\n 'cms.editor.setFrontendUrlHint': 'frontendUrl in elytra.config.ts setzen, um zu aktivieren',\n 'cms.editor.switchToDraftToPublish': 'Zum Entwurf wechseln, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.one': '{count} Problem beheben, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.other': '{count} Probleme beheben, um zu veröffentlichen',\n 'cms.editor.publishing': 'Wird veröffentlicht…',\n 'cms.editor.publishedState': 'Veröffentlicht',\n 'cms.editor.publish': 'Veröffentlichen',\n 'cms.editor.moreActions': 'Weitere Aktionen',\n 'cms.editor.unpublish': 'Veröffentlichung zurückziehen',\n // 0.0.39 — the Publish button is a split button: primary Publish (stay) + a\n // \"Publish & close\" dropdown item (publish, then return to the list). Replaces the\n // retired EC-316 \"Save & close\" (autosave made a bare \"Save\" meaningless).\n 'cms.editor.publishActions': 'Veröffentlichungsoptionen',\n 'cms.editor.publishAndClose': 'Veröffentlichen & schließen',\n 'cms.editor.saveAndClose': 'Speichern & schließen',\n 'cms.editor.duplicateCreated': 'Duplikat als neuer Entwurf erstellt',\n 'cms.editor.discardDraft': 'Änderungen verwerfen',\n 'cms.editor.discardDraftUpToDateHint':\n 'Der Entwurf entspricht der veröffentlichten Version — es gibt nichts zu verwerfen.',\n 'cms.editor.switchToDraftToDiscard': 'Zum Entwurf wechseln, um Änderungen zu verwerfen',\n 'cms.editor.discardDraftTitle': 'Entwurfsänderungen verwerfen?',\n 'cms.editor.discardDraftDescription':\n 'Dadurch wird der Entwurf auf den aktuell veröffentlichten Inhalt zurückgesetzt. Ihre unveröffentlichten Änderungen werden ersetzt — ein Schnappschuss bleibt im Versionsverlauf erhalten.',\n 'cms.editor.discardDraftConfirm': 'Änderungen verwerfen',\n 'cms.editor.discardingDraft': 'Änderungen werden verworfen…',\n 'cms.editor.draftState': 'Entwurf',\n 'cms.editor.publishToViewPublished': 'Dieses Dokument veröffentlichen, um die veröffentlichte Version zu sehen',\n 'cms.editor.publishedReadOnlyBanner': 'Sie sehen die veröffentlichte Version – schreibgeschützt.',\n 'cms.editor.switchToDraft': 'Zum Entwurf wechseln',\n 'cms.editor.loadingPublishedVersion': 'Veröffentlichte Version wird geladen…',\n 'cms.editor.noPublishedVersion': 'Keine veröffentlichte Version für dieses Dokument gefunden.',\n 'cms.editor.unsavedChangesGuard':\n 'Sie haben nicht gespeicherte Änderungen an diesem Datensatz. Speichern Sie sie vor dem Verlassen oder verwerfen Sie sie.',\n 'cms.editor.publishUnpublishedRefsTitle': 'Mit nicht veröffentlichten Verweisen veröffentlichen?',\n 'cms.editor.publishUnpublishedRefsDescription':\n 'Diese Seite verweist auf Inhalte, die noch nicht veröffentlicht sind – diese Abschnitte bleiben auf der Live-Seite leer, bis Sie sie ebenfalls veröffentlichen.',\n 'cms.editor.publishAlsoHasIssues.one':\n 'Diese Seite hat außerdem {count} weiteres ungelöstes Problem – siehe Tab „Probleme“.',\n 'cms.editor.publishAlsoHasIssues.other':\n 'Diese Seite hat außerdem {count} weitere ungelöste Probleme – siehe Tab „Probleme“.',\n 'cms.editor.publishAnyway': 'Trotzdem veröffentlichen',\n 'cms.editor.readOnlyBadge': 'schreibgeschützt',\n // EC-318 — connected fields: the per-field localization connection affordance that\n // replaces EC-176's passive \"showing EN\" text. Shown only on a localized field in a\n // non-base locale (never on the base locale, non-localized fields, or read-only).\n 'cms.editor.localeFollowsBase': 'Folgt {base}',\n 'cms.editor.localeFollowsHint':\n 'Dieses Feld folgt dem Wert für {base}. Geben Sie eine Übersetzung ein oder übernehmen Sie zunächst eine Kopie aus {base}.',\n 'cms.editor.localeFillFromBase': 'Aus {base} übernehmen',\n 'cms.editor.localeTranslated': 'Übersetzt',\n 'cms.editor.localeTranslatedHint':\n 'Für {locale} übersetzt. Wenn Sie den Text leeren, folgt er wieder dem Wert für {base} — eine absichtlich leere Übersetzung wird nicht unterstützt.',\n 'cms.editor.localeResetToBase': 'Auf {base} zurücksetzen',\n 'cms.editor.localeResetTitle': 'Auf den Wert für {base} zurücksetzen?',\n 'cms.editor.localeResetDescription':\n 'Dadurch wird die Übersetzung dieses Felds für {locale} entfernt. Bis zu einer neuen Übersetzung folgt es wieder dem Wert für {base}.',\n 'cms.editor.localeResetConfirm': 'Auf {base} zurücksetzen',\n 'cms.editor.issuesPane': 'Probleme',\n 'cms.editor.detailsPane': 'Details',\n 'cms.editor.servedAt': 'Ausgeliefert unter {path}',\n 'cms.editor.slugUrlHint':\n 'Die URL wird aus dem Slug (und dem übergeordneten Element) abgeleitet – Slug festlegen, um sie zu definieren.',\n 'cms.editor.embedUnpublishedIssue':\n 'Bindet das wiederverwendbare Element „{title}“ ein, das nicht veröffentlicht ist – es bleibt auf der Live-Seite leer, bis Sie es veröffentlichen.',\n 'cms.editor.embedMissingIssue':\n 'Bindet ein wiederverwendbares Element ein, das nicht mehr existiert („{id}“) – Einbettung korrigieren oder entfernen.',\n 'cms.editor.defaultGroup': 'Felder',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — issues pane (validation)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issues.none': 'Keine Probleme',\n 'cms.issues.satisfied': 'Dieses Dokument entspricht dem Sammlungsschema.',\n // EC-443: value fix — the calque „Zu label“ read as broken German.\n 'cms.issues.goToField': 'Zum Feld „{field}“',\n // EC-443 — issue-card titles (one per CmsIssueCode, see messages.en.ts).\n 'cms.issue.duplicate-collection': 'Doppelte Sammlung',\n 'cms.issue.duplicate-field': 'Doppeltes Feld',\n 'cms.issue.unknown-collection': 'Unbekannte Sammlung',\n 'cms.issue.invalid-collection-config': 'Ungültige Sammlungskonfiguration',\n 'cms.issue.invalid-field-config': 'Ungültige Feldkonfiguration',\n 'cms.issue.reserved-field-name': 'Reservierter Feldname',\n 'cms.issue.missing-required-field': 'Pflichtfeld fehlt',\n 'cms.issue.invalid-field-value': 'Ungültiger Wert',\n 'cms.issue.invalid-field-value.warning': 'Wert prüfen',\n 'cms.issue.unknown-relation-target': 'Fehlende Referenz',\n 'cms.issue.unpublished-relation-target': 'Unveröffentlichte Referenz',\n 'cms.issue.cardinality-violation': 'Falsche Anzahl von Werten',\n 'cms.issue.unknown-asset': 'Fehlende Mediendatei',\n 'cms.issue.duplicate-document': 'Doppelter Eintrag',\n 'cms.issue.unknown-locale': 'Unbekannte Sprache',\n 'cms.issue.missing-localized-value': 'Fehlende Übersetzung',\n 'cms.issue.route-conflict': 'URL-Konflikt',\n 'cms.issue.redirect-loop': 'Weiterleitungsschleife',\n 'cms.issue.unknown-route-target': 'Fehlende Seite',\n 'cms.issue.hierarchy-cycle': 'Schleife in der Seitenhierarchie',\n 'cms.issue.document-nesting-depth': 'Inhalt zu tief verschachtelt',\n 'cms.issue.singleton-document-drift': 'Mehr als ein Dokument',\n 'cms.issue.duplicate-alias': 'Slot doppelt belegt',\n 'cms.issue.unknown-alias': 'Unbekannter Slot',\n 'cms.issue.unfilled-slot': 'Leerer Slot',\n 'cms.issue.custom-validation': 'Validierungsregel',\n 'cms.issue.unaddressable-url': 'Nicht erreichbare URL',\n 'cms.issue.unknown-version': 'Unbekannte Version',\n // EC-443 — issue-card body templates (see messages.en.ts for the fallback contract).\n 'cms.issueBody.missing-required-field': 'Das Pflichtfeld „{field}“ ist nicht ausgefüllt.',\n 'cms.issueBody.missing-localized-value.default':\n 'Das Pflichtfeld „{field}“ hat keinen Wert für die Standardsprache „{locale}“.',\n 'cms.issueBody.missing-localized-value.fallback':\n 'Das Feld „{field}“ hat keinen Wert für „{locale}“ und keinen Fallback.',\n 'cms.issueBody.unknown-asset':\n 'Das Feld „{field}“ verweist auf die unbekannte Mediendatei „{asset}“.',\n 'cms.issueBody.document-nesting-depth.error':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und überschreitet damit das Speicherlimit von {limit} Ebenen – teilen Sie ihn in kleinere verknüpfte Einträge auf.',\n 'cms.issueBody.document-nesting-depth.warning':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und nähert sich dem Speicherlimit von {limit} Ebenen.',\n 'cms.issueBody.hierarchy-cycle':\n 'Dieser Eintrag ist sein eigener Vorfahr – die Kette der übergeordneten Einträge bildet eine Schleife.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS validation issue BODIES (EC-487)\n //\n // EC-443 localized the issue TITLES (`cms.issue.<code>` above); the bodies were\n // still built as English template literals inside `packages/core`, which cannot\n // import this catalog. EC-478 solved that shape for `CustomizationIssue` by having\n // the producer carry a message KEY; these are the same carriage for\n // `CmsValidationIssue`, so the rail foot, the Issues pane and the for-review lane\n // never mix a German title with an English body.\n //\n // The English source is a SECOND copy of what the producer builds — the tie between\n // them is `lib/persona/cms-issue-i18n.test.ts`, which renders every real producer's\n // issue through this catalog and asserts byte-identity. Interpolated values are\n // IDENTIFIERS (field/collection/route/locale ids, patterns, counts) and stay\n // unlocalized in every language.\n //\n // `cms.issueDetail.*` are FRAGMENTS spliced into the sentences above.\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issueMessage.duplicateDocument': 'Doppeltes Dokument „{id}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.fieldDetail': 'Das Feld „{field}“ {detail}.',\n 'cms.issueMessage.fieldReason': 'Feld „{field}“: {reason}',\n 'cms.issueMessage.propDetail': 'Die Eigenschaft „{field}“ {detail}.',\n 'cms.issueMessage.propReason': 'Eigenschaft „{field}“: {reason}',\n 'cms.issueMessage.relationUnknownTargetCollection': 'Das Beziehungsfeld „{field}“ zielt auf die unbekannte Sammlung „{target}“.',\n 'cms.issueMessage.relationSingleValued': 'Das Beziehungsfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.relationNotAReference': 'Das Beziehungsfeld „{field}“ enthält einen Wert, der keine Dokumentreferenz ist.',\n 'cms.issueMessage.relationWrongCollection': 'Das Beziehungsfeld „{field}“ zeigt auf die Sammlung „{got}“, zielt aber auf „{target}“.',\n 'cms.issueMessage.relationMissingDocument': 'Das Beziehungsfeld „{field}“ verweist auf das fehlende Dokument „{id}“ in „{target}“.',\n 'cms.issueMessage.relationUnpublishedDocument': 'Das Beziehungsfeld „{field}“ verweist auf das unveröffentlichte Dokument „{id}“ in „{target}“ — auf der veröffentlichten Website erscheint dort ein Platzhalter.',\n 'cms.issueMessage.assetNoAssetCollection': 'Das Medienfeld „{field}“ benötigt eine Mediensammlung, es ist aber keine registriert.',\n 'cms.issueMessage.assetSingleValued': 'Das Medienfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.assetExpectsId': 'Das Medienfeld „{field}“ erwartet eine Medien-id.',\n 'cms.issueMessage.assetUnknown': 'Das Medienfeld „{field}“ verweist auf das unbekannte Medium „{asset}“.',\n 'cms.issueMessage.requiredFieldMissing': 'Das Pflichtfeld „{field}“ fehlt.',\n 'cms.issueMessage.requiredPropMissing': 'Die Pflichteigenschaft „{field}“ fehlt.',\n 'cms.issueMessage.perLocaleMapValue': 'Das Feld „{field}“ erwartet einen Wert vom Typ „{type}“, enthält aber eine Sprach-Zuordnung (Schlüssel: {keys}) — sprachabhängige Werte liegen im „localized“-Bereich des Dokuments, niemals im Feldwert selbst.',\n 'cms.issueMessage.richTextHoldsArray': 'Das Rich-Text-Feld „{field}“ erwartet eine Zeichenkette oder einen Rich-Text-Wert („{ version, doc }“), enthält aber ein Array.',\n 'cms.issueMessage.richTextHoldsBareDoc': 'Das Rich-Text-Feld „{field}“ erwartet eine Zeichenkette oder einen Rich-Text-Wert („{ version, doc }“), enthält aber ein blankes Rich-Text-Dokument ohne die Hülle „{ version, doc }“.',\n 'cms.issueMessage.richTextHoldsObject': 'Das Rich-Text-Feld „{field}“ erwartet eine Zeichenkette oder einen Rich-Text-Wert („{ version, doc }“), enthält aber ein Objekt mit den Schlüsseln „{keys}“.',\n 'cms.issueMessage.unknownCollectionForDocument': 'Das Dokument „{id}“ verweist auf die unbekannte Sammlung „{collection}“.',\n 'cms.issueMessage.localizedPlainValue': 'Das sprachabhängige Feld „{field}“ enthält einen einfachen Wert im gemeinsamen „values“-Bereich — erwartet werden sprachabhängige Werte unter „localized.<locale>.{field}“. Der einfache Wert dient nur noch als letzte Rückfallebene.',\n 'cms.issueMessage.requiredLocalizedMissingDefault': 'Das sprachabhängige Pflichtfeld „{field}“ fehlt für die Standardsprache „{locale}“.',\n 'cms.issueMessage.localizedNoValueNoFallback': 'Das sprachabhängige Feld „{field}“ hat keinen Wert für die Sprache „{locale}“ und keine Rückfallebene.',\n 'cms.issueMessage.hierarchyCycle': 'Das Dokument „{id}“ ist sein eigener Vorfahre — die Elternkette bildet einen Zyklus.',\n 'cms.issueMessage.nestingDepthError': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und überschreitet damit das Schreib-Limit des Backends von {limit} Ebenen — selbst das Falten der Tiefe beim Speichern rettet ein so tiefes Dokument nicht, der Schreibvorgang kann nicht ausgeführt werden. Teilen Sie es in kleinere verknüpfte Dokumente auf.',\n 'cms.issueMessage.nestingDepthWarning': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und nähert sich damit dem Limit des Backends von {limit} Ebenen. Flachen Sie den tiefsten Pfad ab, bevor er weiter wächst.',\n 'cms.issueMessage.propFilterable': 'Die Komponenten-Eigenschaft „{field}“ deklariert „filterable“, was nur für Dokumentfelder gilt.',\n 'cms.issueMessage.propUnique': 'Die Komponenten-Eigenschaft „{field}“ deklariert „unique“, was nur über die Dokumente einer Sammlung hinweg gilt.',\n 'cms.issueMessage.singletonDrift': 'Das Einzelstück „{collection}“ hat {count} Dokumente — es sollte genau eines haben. Behalten Sie das richtige Dokument und entfernen Sie die übrigen, damit es sich direkt öffnen lässt.',\n 'cms.issueMessage.unknownAlias.one': 'Ein Dokument ist dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.unknownAlias.other': '{count} Dokumente sind dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.duplicateAlias': '{count} Dokumente teilen sich den Alias „{alias}“ in „{collection}“. Jeder Slot darf nur einem Dokument zugewiesen sein — weisen Sie neu zu oder entfernen Sie die Duplikate.',\n 'cms.issueMessage.unfilledSlot': 'Der Slot „{slot}“ von „{collection}“ hat noch kein Dokument. Weisen Sie eines zu, damit Code, der „{slot}“ auflöst, es findet.',\n 'cms.issueMessage.reservedFieldName': 'Der Feldname „{field}“ ist reserviert (der Diskriminator selbstbeschreibender Knoten).',\n 'cms.issueMessage.duplicateSelectOption': 'Doppelte Auswahloption „{option}“ im Feld „{field}“.',\n 'cms.issueMessage.duplicateObjectField': 'Doppeltes Feld „{field}“ im Objektfeld „{parent}“.',\n 'cms.issueMessage.assetCollectionSingleton': 'Die Mediensammlung „{collection}“ kann kein Einzelstück sein.',\n 'cms.issueMessage.unknownPresentationBodyField': 'Die Sammlung „{collection}“ deklariert „{field}“ als Inhaltsfeld der Darstellung, definiert dieses Feld aber nicht.',\n 'cms.issueMessage.duplicateCollectionField': 'Doppeltes Feld „{field}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.duplicateCollectionId': 'Doppelte Sammlungs-id „{collection}“.',\n 'cms.issueMessage.unknownLocale': 'Die Sprache „{locale}“ gehört nicht zum konfigurierten Sprachsatz.',\n 'cms.issueMessage.unknownVersion': 'Für das Dokument „{id}“ ist keine Version {version} aufgezeichnet.',\n 'cms.issueMessage.routeConflict': 'Die Routen „{first}“ und „{second}“ treffen auf dieselben URLs zu (Muster „{pattern}“).',\n 'cms.issueMessage.redirectLoop': 'Die Weiterleitungskette ab „{from}“ bildet eine Schleife (…{chain}).',\n 'cms.issueMessage.allDynamicShadowsMount': 'Die Route „{route}“ („{pattern}“) besteht nur aus dynamischen Segmenten und trifft damit auf JEDE URL mit {depth} Segmenten zu — die Hierarchie-Einhängung „{mountRoute}“ („{mountPattern}“) wird auf dieser Ebene nur dort herangezogen, wo die Route kein Dokument auflöst. Nichts ist dadurch grundsätzlich unerreichbar, aber der Vorrang entscheidet sich dort am INHALT statt an den Routen: {shadowed} werden stillschweigend verdeckt, sobald ein zusammengesetzter Pfad mit {claimed} kollidiert — und keine Seite erfährt davon. Geben Sie der Route ein statisches Präfix („/blog/:slug“), damit sie einen Namensraum beansprucht statt einer ganzen Ebene.',\n 'cms.issueMessage.mountCannotServe': 'Die Hierarchie-Einhängung „{route}“ („{pattern}“) kann niemals ein Dokument ausliefern: {why}. Der Resolver überspringt eine solche Einhängung stillschweigend, deshalb liefert jede URL unter „{space}“ einen 404, ohne dass ein Hinweis erscheint.',\n 'cms.issueMessage.deadCatchAll': 'Die Route „{route}“ („{pattern}“) liefert in beide Richtungen nichts: Sie endet in einem Catch-all, deshalb verwirft sie jeder Router — ihr Präfix enthält aber ein dynamisches Segment ({dynamic}), deshalb wird auch keine Hierarchie-Einhängung daraus gebaut. Das Präfix einer Einhängung muss statisch sein — deklarieren Sie eine Einhängung pro Sprache (`{ pattern: \\'/de/:path*\\', locale: \\'de\\' }`) oder entfernen Sie die Route.',\n 'cms.issueMessage.mountConflict': '{opening} — Einhängungen werden in Deklarationsreihenfolge aufgelöst, nicht nach Spezifität; deshalb beansprucht „{earlier}“ (Sammlung „{earlierCollection}“) dort jede URL, die der eigene Baum auflöst, und Dokumente aus „{laterCollection}“ sind an diesen URLs unerreichbar.',\n 'cms.issueMessage.routeBoundDocumentNotFound': 'Das an die Route gebundene Dokument „{collection}:{id}“ wurde nicht gefunden.',\n 'cms.issueMessage.routeParamNotCaptured': 'Die Route „{route}“ bindet ihr Dokument an den URL-Parameter „:{param}“, den das Muster „{pattern}“ nicht erfasst.',\n 'cms.issueMessage.collectionNotDefined': 'Die Sammlung „{collection}“ ist nicht definiert.',\n 'cms.issueMessage.unaddressableLocaleCollision': 'Keine URL erreicht „{id}“ in der Sprache „{locale}“: die Adresse wäre „{url}“, aber das erste Segment „{segment}“ ist ein deklarierter Sprachcode — die Website liest diese URL daher als Sprache „{segment}“, Pfad „{readPath}“. Benennen Sie dieses Segment um — an diesem Dokument oder an der übergeordneten Seite, zu der es gehört — damit es nicht mit einem Sprachcode kollidiert.',\n 'cms.issueDetail.expectsString': 'erwartet eine Zeichenkette',\n 'cms.issueDetail.expectsRichText': 'erwartet Rich-Text-Inhalt (eine Zeichenkette oder einen Rich-Text-Wert)',\n 'cms.issueDetail.expectsNumber': 'erwartet eine Zahl',\n 'cms.issueDetail.expectsBoolean': 'erwartet einen Wahrheitswert',\n 'cms.issueDetail.expectsIsoDate': 'erwartet ein ISO-8601-Datum (z. B. „2026-09-18“)',\n 'cms.issueDetail.expectsDate': 'erwartet ein Datum (ISO-8601-Zeichenkette oder Epochenzahl)',\n 'cms.issueDetail.valueNotAmongOptions': 'hat den Wert „{value}“, der nicht zu seinen Optionen gehört',\n 'cms.issueDetail.expectsObjectList': 'erwartet eine Liste von Objekten',\n 'cms.issueDetail.expectsObject': 'erwartet ein Objekt',\n 'cms.issueDetail.implausibleYear': 'hat das Jahr {year}, was unbeabsichtigt wirkt (erwartet wird eine vierstellige Jahreszahl)',\n 'cms.issueDetail.dateBoundNotADate': 'deklariert {bound} `{declared}` auf einem Datumsfeld, was kein Datum ist — verwenden Sie eine ISO-8601-Zeichenkette wie „1900-01-01“',\n 'cms.issueDetail.earlierThanMin': 'liegt vor {min}',\n 'cms.issueDetail.laterThanMax': 'liegt nach {max}',\n 'cms.issueDetail.stringBoundOffDate': 'deklariert {bound} „{declared}“ als Zeichenkette, was nur auf einem Datumsfeld sinnvoll ist — verwenden Sie eine Zahl',\n 'cms.issueDetail.shorterThanMinLength': 'ist kürzer als die Mindestlänge {min}',\n 'cms.issueDetail.longerThanMaxLength': 'ist länger als die Höchstlänge {max}',\n 'cms.issueDetail.doesNotMatchPattern': 'entspricht nicht dem Muster {pattern}',\n 'cms.issueDetail.lessThanMin': 'ist kleiner als das Minimum {min}',\n 'cms.issueDetail.greaterThanMax': 'ist größer als das Maximum {max}',\n 'cms.issueDetail.fewerThanMinItems': 'hat weniger als {min} Einträge',\n 'cms.issueDetail.moreThanMaxItems': 'hat mehr als {max} Einträge',\n 'cms.issueDetail.duplicateValue': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits',\n 'cms.issueDetail.duplicateValueForLocale': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits für die Sprache „{locale}“',\n 'cms.issueDetail.singleValuedManyTargets': 'ist einwertig, hat aber {count} Ziele',\n 'cms.issueDetail.notADocumentReference': 'enthält einen Wert, der keine Dokumentreferenz ist',\n 'cms.issueDetail.pointsAtOtherCollection': 'zeigt auf die Sammlung „{got}“, zielt aber auf „{target}“',\n 'cms.issueDetail.expectsAssetIdString': 'erwartet eine Medien-id als Zeichenkette',\n 'cms.issueDetail.shadowedRootDocuments': 'die WURZEL-Dokumente von „{collection}“ unter „{space}“',\n 'cms.issueDetail.shadowedNestedDocuments': '„{collection}“-Dokumente, die {levels} Ebenen unter „{space}“ verschachtelt sind',\n 'cms.issueDetail.claimedBySlug': 'einem Slug aus „{collection}“',\n 'cms.issueDetail.claimedByOwnDocument': 'dem eigenen Dokument der Route',\n 'cms.issueDetail.mountCollectionNotDeclared': 'die Sammlung „{collection}“ ist nicht deklariert',\n 'cms.issueDetail.mountCollectionNotHierarchical': 'die Sammlung „{collection}“ hat keine `parent`-Selbstbeziehung und damit keine verschachtelten Pfade zum Zusammensetzen',\n 'cms.issueDetail.mountsSamePath': 'Die Hierarchie-Einhängungen „{earlier}“ („{earlierPattern}“) und „{later}“ („{laterPattern}“) sind beide unter „{space}“ eingehängt',\n 'cms.issueDetail.mountsNested': 'Die Hierarchie-Einhängung „{later}“ („{laterPattern}“) liegt innerhalb von „{earlier}“ („{earlierPattern}“), das zuerst deklariert ist und ebenfalls „{space}“ vollständig beansprucht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — details pane (slot + sidebar fields)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.details.slot': 'Slot',\n 'cms.details.noSlot': '— Kein Slot —',\n 'cms.details.slotInUse': ' — belegt',\n 'cms.details.slotHint':\n 'Ein stabiler Name, mit dem die Website dieses Dokument findet (z. B. das Hauptmenü), unabhängig davon, welcher genaue Eintrag es ist. Ein Dokument pro Slot.',\n 'cms.details.empty': 'Keine Dokumenteigenschaften festzulegen.',\n // The composed-URL affordance (EC-315 \"hybrid split\") — moved to the detail-editor\n // HEADER under the title in 0.0.42 (round 3); ancestor-document segments link to\n // their editors, static route segments are plain, and the leaf carries the live link.\n 'cms.details.urlCurrent': 'diese Seite',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — import dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.import.title': 'Dokumente importieren',\n 'cms.import.invalidJson': 'Eingabe ist kein gültiges JSON.',\n 'cms.import.imported': '{count} importiert',\n 'cms.import.rejected': '{count} abgelehnt:',\n 'cms.import.confirm': 'Importieren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — versions (compare + pane)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.version.paneLabel': 'Versionen',\n 'cms.version.compare': 'Vergleichen',\n 'cms.version.closeCompare': 'Vergleich schließen',\n 'cms.version.loadingHistory': 'Versionsverlauf wird geladen…',\n // Shown in the lazy boundary while the version-compare chunk loads (EC-322).\n 'cms.version.loadingCompare': 'Vergleich wird geladen…',\n 'cms.version.versionUnavailable': 'Diese Version ist nicht mehr verfügbar. Wählen Sie eine andere zum Vergleichen.',\n 'cms.version.currentDraft': 'Aktueller Entwurf',\n 'cms.version.unsavedEdits': 'nicht gespeicherte Änderungen',\n 'cms.version.baseCaption': 'Basis',\n 'cms.version.compareWithCaption': 'Vergleichen mit',\n 'cms.version.compareNewer': 'Neuere Version vergleichen',\n 'cms.version.compareOlder': 'Ältere Version vergleichen',\n 'cms.version.restoreWholeTitle': 'Gesamtes Dokument auf v{version} wiederherstellen',\n 'cms.version.restoreVersion': 'Version wiederherstellen',\n 'cms.version.noDifferences': 'Keine Unterschiede',\n 'cms.version.changeSummary.one': '{count} Änderung · {unchanged} unverändert',\n 'cms.version.changeSummary.other': '{count} Änderungen · {unchanged} unverändert',\n 'cms.version.comparingPastVersionsHint':\n ' · zwei frühere Versionen werden verglichen – „Vergleichen mit“ auf „Aktueller Entwurf“ setzen, um wiederherzustellen',\n 'cms.version.versionsIdentical': 'Diese beiden Versionen sind identisch.',\n 'cms.version.beforeVersion': 'Vorher · v{version}',\n 'cms.version.afterTarget': 'Nachher · {target}',\n 'cms.version.restoreField': '{field} aus v{version} wiederherstellen',\n 'cms.version.restoreFieldLocale': '{field} ({locale}) aus v{version} wiederherstellen',\n 'cms.version.textUnchanged': 'Text unverändert – Formatierung oder Leerzeichen unterscheiden sich.',\n 'cms.version.restoreBlock': 'Diesen Block aus v{version} wiederherstellen',\n 'cms.version.nestedContentChanged': 'Verschachtelter Inhalt geändert.',\n 'cms.version.blockAdded': 'Block hinzugefügt.',\n 'cms.version.blockRemoved': 'Block entfernt.',\n 'cms.version.emptyValue': 'leer',\n 'cms.version.richText': 'Rich Text',\n 'cms.version.itemCount.one': '{count} Element',\n 'cms.version.itemCount.other': '{count} Elemente',\n 'cms.version.objectValue': 'Objekt',\n 'cms.version.kindNew': 'neu',\n 'cms.version.kindRemoved': 'entfernt',\n 'cms.version.unpublishedChanges': 'Nicht veröffentlichte Änderungen',\n 'cms.version.notPublishedYet': 'Noch nicht veröffentlicht',\n 'cms.version.fixValidationToPublish': 'Validierungsprobleme des Dokuments beheben, um zu veröffentlichen',\n 'cms.version.liveUpToDate': 'Die Live-Version ist aktuell – nichts zu veröffentlichen.',\n 'cms.version.comparingHint':\n 'Vergleich von v{base} → {target}. Klicken Sie auf eine Version, um sie als Basis festzulegen.',\n 'cms.version.noVersionsYet': 'Noch keine veröffentlichten Versionen.',\n 'cms.version.baseBadge': 'Basis',\n 'cms.version.comparedBadge': 'Verglichen',\n 'cms.version.compareWithDraft': 'Diese Version mit dem aktuellen Entwurf vergleichen',\n 'cms.version.compareVersionLabel': 'v{version} vergleichen',\n 'cms.version.rowActionsLabel': 'Aktionen für v{version}',\n 'cms.version.switchToDraftToRestore': 'Zum Entwurf wechseln, um wiederherzustellen',\n 'cms.version.restore': 'Wiederherstellen',\n // EC-199 provenance — a subtle marker on versions recorded from AI-authored content.\n 'cms.version.aiAuthored': 'KI',\n 'cms.version.aiAuthoredTitle': 'Mit dem KI-Assistenten erstellt',\n\n // EC-317 — descriptor lane, unified/side-by-side toggle, truncation, zebra.\n 'cms.version.fieldColumnHeader': 'Feld',\n 'cms.version.viewSideBySide': 'Nebeneinander',\n 'cms.version.viewUnified': 'Zusammengeführt',\n 'cms.version.viewModeAriaLabel': 'Darstellung des Vergleichs',\n 'cms.version.unifiedCaption': 'v{base} → {target}',\n 'cms.version.showMore': 'Mehr anzeigen',\n 'cms.version.showLess': 'Weniger anzeigen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — delete/unpublish reference-confirm dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.reference.documentCount': '{count} Dokumente',\n 'cms.reference.confirmTitle': '{action}: {subject}?',\n 'cms.reference.checking': 'Eingehende Verweise werden geprüft…',\n 'cms.reference.checkUnavailable':\n 'Eingehende Verweise konnten nicht geprüft werden – der Verweisindex ist nicht erreichbar.',\n 'cms.reference.blocked.one':\n 'Blockiert: {count} strikter Verweis verhindert dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.blocked.other':\n 'Blockiert: {count} strikte Verweise verhindern dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.notReferenced': 'Nirgendwo referenziert.',\n 'cms.reference.permanentDelete.one': 'Dadurch wird das Dokument dauerhaft gelöscht.',\n 'cms.reference.permanentDelete.other': 'Dadurch werden die {count} ausgewählten Dokumente dauerhaft gelöscht.',\n 'cms.reference.canProceed':\n 'Sie können {action} – {summary} zeigen dann einen Fallback, bis das behoben ist. Jede davon wird zu einem sichtbaren Validierungsproblem.',\n 'cms.reference.proceedUnavailable':\n 'Fortfahren ist möglich, aber die betroffenen Stellen können derzeit nicht aufgelistet werden.',\n 'cms.reference.proceedAnyway': 'Trotzdem {action}',\n 'cms.reference.verb.unpublish': 'zurückziehen',\n 'cms.reference.verb.delete': 'löschen',\n 'cms.reference.placeCount.one': '{count} Stelle',\n 'cms.reference.placeCount.other': '{count} Stellen',\n 'cms.reference.bulkSummary': '{count} Dokumente sind betroffen; {places}',\n 'cms.reference.atLocation': 'bei',\n 'cms.reference.strictBadge': 'strikt',\n 'cms.reference.draftBadge': 'Entwurf',\n 'cms.reference.publishedBadge': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — field controls / scalar editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.field.rendererCrashed': 'Benutzerdefinierter Renderer abgestürzt — Standardsteuerung wird angezeigt.',\n 'cms.field.noRenderer': 'Kein Feld-Renderer für Steuerung „{control}“ registriert.',\n 'cms.field.itemActions': 'Elementaktionen',\n 'cms.field.moveUp': 'Nach oben',\n 'cms.field.moveDown': 'Nach unten',\n 'cms.field.collapseAll': 'Alle einklappen',\n 'cms.field.expandAll': 'Alle ausklappen',\n 'cms.field.noItems': 'Keine Elemente',\n 'cms.field.dragToReorder': 'Zum Umsortieren ziehen',\n 'cms.field.addItem': 'Element hinzufügen',\n 'cms.field.value': 'Wert',\n 'cms.field.valuePlaceholder': 'Wert',\n 'cms.field.colour': 'Farbe',\n // EC-315 — the smart slug / URL-segment control.\n 'cms.field.slug.regenerate': 'Slug neu erzeugen',\n 'cms.field.slug.taken': 'Wird bereits von „{title}“ verwendet',\n 'cms.field.slug.takenGeneric': 'Dieser Slug wird bereits verwendet.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — relation picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.relation.change': 'Ändern',\n 'cms.relation.openTitle': '{title} öffnen',\n 'cms.relation.pick': 'Auswählen',\n 'cms.relation.pickTitle.one': 'Verknüpftes Dokument auswählen',\n 'cms.relation.pickTitle.many': 'Verknüpfte Dokumente auswählen',\n 'cms.relation.fromCollection': 'Aus {collection}',\n 'cms.relation.selectMultipleHint': 'Mehrfachauswahl',\n 'cms.relation.noDocuments': 'Keine Dokumente in {collection}.',\n 'cms.relation.selectedCount': '{count} ausgewählt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — asset field + asset picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.asset.rejected.one': '„{name}“ übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.rejected.other': '{count} Dateien übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.dropToUpload': 'Zum Hochladen ablegen',\n 'cms.asset.selectOrDrop': 'Bild auswählen oder ablegen',\n 'cms.asset.selectAsset': 'Medien auswählen',\n 'cms.asset.altLabel': 'Alt:',\n 'cms.asset.notSet': 'nicht gesetzt',\n 'cms.asset.imageOptions.title': 'Bildoptionen',\n 'cms.asset.imageOptions.description': 'Fokuspunkt und Metadaten — für jede Verwendung dieses Bildes gemeinsam.',\n 'cms.asset.focalPoint': 'Fokuspunkt',\n 'cms.asset.resetToCentre': 'Auf Mitte zurücksetzen',\n 'cms.asset.focalPointHint': 'Klicken oder ziehen Sie auf das Bild, um den Fokuspunkt für den Zuschnitt festzulegen.',\n 'cms.asset.noMetaFields':\n 'Für die Medien-Sammlung sind keine bearbeitbaren Metadatenfelder deklariert. Fügen Sie Felder (z. B. {code1}, {code2}) im Code hinzu.',\n 'cms.asset.pickTitle': 'Medien auswählen',\n 'cms.asset.pickDescription': 'Aus der Medienbibliothek des Projekts auswählen.',\n 'cms.asset.noProject': 'Die Medienbibliothek benötigt ein Projekt — diese CMS-Sitzung hat keins.',\n 'cms.asset.restoreDialogSize': 'Dialoggröße wiederherstellen',\n 'cms.asset.maximizeDialog': 'Dialog maximieren',\n 'cms.asset.searchPlaceholder': 'Medien suchen…',\n 'cms.asset.loading': 'Medien werden geladen…',\n 'cms.asset.loadError': 'Medien konnten nicht geladen werden.',\n 'cms.asset.noMatches': 'Keine Medien entsprechen Ihrer Suche.',\n 'cms.asset.empty': 'Noch keine Medien — Dateien hier ablegen oder hochladen.',\n 'cms.asset.noAltText': 'Kein Alt-Text',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Assets rail (EC-319: the universal list + grid/list toggle + detail surface)\n // ─────────────────────────────────────────────────────────────────────────\n 'assets.error.loadFailed': 'Medien konnten nicht geladen werden',\n 'assets.loading': 'Medien werden geladen…',\n 'assets.uploads.heading': 'Uploads',\n 'assets.upload.phase.queued': 'in Warteschlange',\n 'assets.upload.phase.preparing': 'wird vorbereitet',\n 'assets.upload.phase.uploading': 'wird hochgeladen',\n 'assets.upload.phase.confirming': 'Metadaten werden gespeichert',\n 'assets.upload.phase.done': 'fertig',\n 'assets.upload.phase.failed': 'fehlgeschlagen',\n 'assets.upload.attempt': 'Versuch {count}',\n 'assets.upload.dismissLabel': 'Upload verwerfen',\n 'assets.viewToggle.groupLabel': 'Listen- oder Rasteransicht',\n 'assets.viewToggle.list': 'Listenansicht',\n 'assets.viewToggle.grid': 'Rasteransicht',\n 'assets.detail.metadataHeading': 'Metadaten',\n 'assets.references.buttonLabel': 'Verweise',\n 'assets.references.title': 'Verwendet von — {name}',\n 'assets.references.description':\n 'Alles, was dieses Medienelement referenziert, mit Direktlinks zum genauen Feld oder Knoten.',\n 'assets.delete.raceError.one':\n 'Das Medienelement wird jetzt an {count} Stelle referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.raceError.other':\n 'Das Medienelement wird jetzt an {count} Stellen referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.title': '{filename} löschen?',\n 'assets.delete.description':\n 'Entfernt die gespeicherten Daten und den Metadatensatz. Dies kann nicht rückgängig gemacht werden.',\n 'assets.delete.checking': 'Verweise werden geprüft…',\n 'assets.delete.inUse.one': 'An {count} Stelle verwendet',\n 'assets.delete.inUse.other': 'An {count} Stellen verwendet',\n 'assets.delete.brokenWarning':\n 'Beim Löschen bleiben diese Verweise defekt — sie erscheinen als Validierungsprobleme.',\n 'assets.delete.noReferences': 'Keine Verweise gefunden. Kann gefahrlos gelöscht werden.',\n 'assets.delete.confirmAnyway': 'Trotzdem löschen',\n 'assets.focalPoint.noPreview':\n 'Keine Bildvorschau — laden Sie ein Bildmedium hoch oder wählen Sie eines aus, um einen Fokuspunkt festzulegen.',\n 'assets.focalPoint.setLabel': 'Fokuspunkt festlegen',\n // Vorschauen erzeugen — EC-400 Thumbnail-Nachrüstung.\n 'assets.generatePreviews.button': 'Vorschauen erzeugen',\n 'assets.generatePreviews.hint':\n 'Vorhandene Bilder auf leichtere Vorschau-Thumbnails herunterskalieren und so Egress sparen. Bereits vorhandene werden übersprungen.',\n 'assets.generatePreviews.running': 'Vorschauen werden erzeugt… {done}/{total}',\n 'assets.generatePreviews.done': '{count} Vorschauen erzeugt',\n 'assets.generatePreviews.none': 'Vorschauen bereits aktuell',\n 'assets.generatePreviews.cancelled': 'Abgebrochen — {count} erzeugt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Users (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'users.checkingAccess': 'Zugriff wird geprüft…',\n 'users.restrictedTitle': 'Nur für Administratoren',\n 'users.restrictedBody':\n 'Zum Verwalten von Benutzern und Rollen ist die Administratorrolle für diese Bereitstellung erforderlich. Bitten Sie einen Administrator, Ihnen Zugriff zu gewähren.',\n 'users.loadFailed': 'Benutzer konnten nicht geladen werden',\n 'users.loading': 'Benutzer werden geladen…',\n // Built-in users rail — its schema labels resolve through the catalog (msgLabel),\n // so a consumer's translation catalog localizes the rail with no per-rail override.\n 'users.rail.label': 'Benutzer',\n 'users.rail.labelSingular': 'Benutzer',\n 'users.field.name.label': 'Name',\n 'users.field.email.label': 'E-Mail',\n 'users.field.role.label': 'Rolle',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Invites (EC-324) — invite-based onboarding, admin action in the users rail\n // ─────────────────────────────────────────────────────────────────────────\n 'invites.invite': 'Benutzer einladen',\n 'invites.pending': 'Ausstehend:',\n 'invites.dialogTitle': 'Benutzer einladen',\n 'invites.dialogBody':\n 'Die Person tritt bei, indem sie mit dieser E-Mail-Adresse ein Konto erstellt. Die offene Registrierung ist geschlossen — nur eingeladene Adressen können sich registrieren.',\n 'invites.emailLabel': 'E-Mail',\n 'invites.roleLabel': 'Rolle',\n 'invites.send': 'Einladung senden',\n 'invites.sending': 'Einladung wird gesendet…',\n 'invites.sent': '{email} wurde eingeladen.',\n 'invites.revoked': 'Die Einladung für {email} wurde widerrufen.',\n 'invites.revokeAria': 'Einladung für {email} widerrufen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Account settings (EC-240 H-tail) — the member's OWN record + credentials\n // ─────────────────────────────────────────────────────────────────────────\n 'account.loading': 'Konto wird geladen…',\n 'account.loadFailed': 'Ihr Konto konnte nicht geladen werden',\n 'account.notMemberTitle': 'Noch kein Zugriff',\n 'account.notMemberBody':\n 'Sie sind angemeldet, gehören dieser Bereitstellung aber noch nicht an. Bitten Sie einen Administrator, Ihnen eine Rolle zuzuweisen.',\n // Account rail schema labels resolve through the catalog (msgLabel), like the users rail.\n 'account.rail.label': 'Konto',\n 'account.rail.labelSingular': 'Konto',\n 'account.field.name.label': 'Name',\n 'account.field.avatar.label': 'Avatar-URL',\n 'account.field.avatar.hint': 'Ein Link zu Ihrem Profilbild.',\n 'account.field.email.label': 'E-Mail',\n 'account.field.role.label': 'Rolle',\n 'account.security.title': 'Anmeldung & Sicherheit',\n 'account.security.method': 'Sie melden sich mit Ihrer E-Mail-Adresse und Ihrem Passwort an.',\n 'account.password.current': 'Aktuelles Passwort',\n 'account.password.new': 'Neues Passwort',\n 'account.password.confirm': 'Neues Passwort bestätigen',\n 'account.password.change': 'Passwort ändern',\n 'account.password.changing': 'Passwort wird geändert…',\n 'account.password.changed': 'Ihr Passwort wurde geändert.',\n 'account.password.mismatch': 'Die neuen Passwörter stimmen nicht überein.',\n // EC-412 — engine-classified change-password failures (mirrors the EC-397\n // sign-in pattern; the EN copy is pinned to the auth-adapter constants).\n 'account.password.error.notSignedIn': 'Sie sind nicht angemeldet.',\n 'account.password.error.currentIncorrect': 'Ihr aktuelles Passwort ist falsch.',\n 'account.password.error.weakPassword': 'Wählen Sie ein stärkeres Passwort (mindestens 8 Zeichen).',\n 'account.password.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Versuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'account.password.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Ihr Passwort nicht ändern: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` aus.',\n 'account.password.error.serverError':\n 'Passwortänderung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'account.password.error.playgroundUnsupported':\n 'Die Passwortänderung ist im Playground-Modus nicht verfügbar.',\n // EC-416 — update-profile failures (not-authenticated reuses notSignedIn above).\n 'account.profile.error.unavailable': 'Die Profilaktualisierung ist derzeit nicht verfügbar.',\n 'account.profile.error.playgroundUnsupported':\n 'Die Profilbearbeitung ist im Playground-Modus nicht verfügbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Redirects (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'redirects.loadFailed': 'Weiterleitungen konnten nicht geladen werden',\n 'redirects.loading': 'Weiterleitungen werden geladen…',\n // Built-in redirects rail — schema labels via the catalog (msgLabel), see above.\n 'redirects.rail.label': 'Weiterleitungen',\n 'redirects.rail.labelSingular': 'Weiterleitung',\n 'redirects.field.from.label': 'Quelle',\n 'redirects.field.to.label': 'Ziel',\n 'redirects.field.permanent.label': 'Dauerhaft (301)',\n 'redirects.field.enabled.label': 'Aktiv',\n\n // ─────────────────────────────────────────────────────────────────────────\n // References panel\n // ─────────────────────────────────────────────────────────────────────────\n 'references.title': 'Verweise',\n 'references.hintOutbound': 'Worauf dieser Eintrag verweist – klicken, um zum Ziel oder zum genauen Feld zu springen.',\n 'references.emptyOutbound': 'Keine ausgehenden Verweise.',\n 'references.usedBy': 'Verwendet von',\n 'references.hintInbound':\n 'Alles, was auf diesen Eintrag verweist – klicken, um zum genauen Feld oder Knoten zu springen.',\n 'references.emptyInbound': 'Nirgendwo verwendet.',\n 'references.loading': 'Verweise werden geladen…',\n 'references.loadFailed': 'Verweise konnten nicht geladen werden',\n 'references.indexUnreachable': 'Der Verweisindex ist nicht erreichbar.',\n 'references.sectionLoadError': 'Dieser Abschnitt konnte nicht geladen werden: {error}',\n 'references.locationPrefix': 'in',\n 'references.badgeDraft': 'Entwurf',\n 'references.badgePublished': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Components registry browser\n // ─────────────────────────────────────────────────────────────────────────\n 'components.detail.notFound.title': 'Komponente nicht gefunden',\n 'components.detail.notFound.body': 'Keine Komponente mit der ID {id} registriert.',\n 'components.detail.notFound.back': 'Zurück zu Komponenten',\n 'components.detail.allComponents': 'Alle Komponenten',\n 'components.detail.designTokens': 'DESIGN-TOKENS',\n 'components.status.valid': 'gültig',\n 'components.status.incompatible': 'inkompatibel',\n 'components.status.invalid': 'ungültig',\n 'components.status.aria': 'Status: {status}',\n 'components.status.description.valid': 'Das Manifest ist registriert und eine Implementierung ist eingebunden.',\n 'components.status.description.incompatible':\n 'Das Manifest ist registriert, aber es ist keine Implementierung verfügbar — der Renderer zeigt einen Fallback.',\n 'components.status.description.invalid': 'Die Registry hat ein strukturiertes Problem für diese Komponente gemeldet.',\n 'components.index.title': 'Komponenten-Registry',\n 'components.index.subtitle':\n 'Durchsuchen Sie die Plattform-Primitive und die Komponenten dieses Projekts. Wählen Sie eine aus, um Manifest, Felder und Vorschau-Fixtures zu inspizieren.',\n 'components.index.stat.total': 'Komponenten',\n 'components.index.stat.totalHint': '{primitives} Primitive · {projects} Projekt',\n 'components.index.stat.valid': 'Gültig',\n 'components.index.stat.needAttention': 'Benötigt Aufmerksamkeit',\n 'components.index.stat.needAttentionHint': '{incompatible} inkompatibel · {invalid} ungültig',\n 'components.index.pickHint':\n 'Wählen Sie eine Komponente aus der Liste, um die Detailansicht zu öffnen — Manifest-Metadaten, den Prop- und Slot-Inspektor und den visuellen Fixture-Runner.',\n 'components.index.byCategory': 'Nach Kategorie',\n 'components.index.guide.title': 'Projektkomponenten registrieren',\n 'components.index.guide.badge': 'Anleitung',\n 'components.index.guide.intro':\n 'Komponenten sind Code und gehören Ihrem Repository. Registrieren Sie ein Manifest mit Eigenschaftsschemata, Standardwerten, Inspektor-Steuerelementen, Slots und Vorschauzuständen. Das Studio kann die Komponente anschließend durchsuchen, prüfen und anzeigen. Diese Anleitungen im Repository erklären die Einzelheiten:',\n 'components.index.guide.doc.authoring':\n 'So deklarieren und registrieren Sie eine Komponente, damit das Studio sie durchsuchen, prüfen und anzeigen kann.',\n 'components.index.guide.doc.fixtures':\n 'Deterministische Vorschauzustände erstellen — die Zustände, die in der Live-Vorschau dieser Ansicht erscheinen.',\n 'components.index.guide.doc.extensibility':\n 'Die Plattform erweitern: eigene Feldtypen, Datenquellen, Export-Ziele und Plugins.',\n 'components.index.guide.namespaceNote':\n 'Projektcode wird im Namensraum project.* registriert; Plattform-Primitive liegen unter base.*.',\n 'components.taxonomy.uncategorized': 'Ohne Kategorie',\n 'components.detail.tab.preview': 'Vorschau',\n 'components.detail.tab.manifest': 'Manifest',\n 'components.preview.reset': 'Zustand zurücksetzen',\n 'components.preview.resetProps': 'Eigenschaften zurücksetzen',\n 'components.preview.edited': 'bearbeitet',\n 'components.preview.incompatibleNote':\n 'Es ist keine Implementierung verbunden — der Renderer zeigt seine Ersatzdarstellung.',\n 'components.preview.serverOnlyTitle': 'Nur serverseitige Komponente',\n 'components.preview.serverOnlyBody':\n 'Diese Komponente kann nicht im Client gerendert werden und daher nicht in der Live-Vorschau laufen. In Ihren Auslieferungs-Frames wird sie weiterhin gerendert.',\n 'components.preview.slotsNote':\n 'Der Slot-Inhalt der Vorschau folgt dem ausgewählten Zustand. Die vollständige Slot-Bearbeitung erfolgt auf der Arbeitsfläche eines Dokuments — übertragen Sie diese Kombination mit „In Dokument verwenden…“ in ein Dokument.',\n 'components.preview.unavailableTitle': 'Vorschau nicht verfügbar',\n 'components.preview.propNeedsDocument':\n 'In einem Dokument bearbeitbar — im Komponenten-Preview fehlt der Workspace-Kontext.',\n 'components.transfer.action': 'In Dokument verwenden…',\n 'components.transfer.title': '„{name}“ in einem Dokument verwenden',\n 'components.transfer.description':\n 'Erstellen Sie einen neuen Entwurf oder fügen Sie die Komponente dem Block-Feld eines vorhandenen Dokuments hinzu und öffnen Sie es anschließend.',\n 'components.transfer.intoField': 'in',\n 'components.transfer.newDocument': 'Neues Dokument in {collection}',\n 'components.transfer.orExisting': 'oder einem vorhandenen Dokument hinzufügen',\n 'components.transfer.noTargets': 'Kein Dokumentfeld kann diese Komponente aufnehmen.',\n 'components.fieldInspector.props': 'Props',\n 'components.fieldInspector.noProps': 'Diese Komponente deklariert keine bearbeitbaren Props.',\n 'components.fieldInspector.slots': 'Slots',\n 'components.fieldInspector.noSlots': 'Diese Komponente hat keine Slots.',\n 'components.fieldInspector.inline': 'inline',\n 'components.fieldInspector.default': 'Standard',\n 'components.fieldInspector.allows': 'erlaubt',\n 'components.fixtureRunner.statesAria': 'Fixture-Zustände',\n 'components.preview.breakpointAria': 'Vorschaubreite',\n 'components.browser.searchPlaceholder': 'Komponenten suchen…',\n 'components.browser.searchAria': 'Komponenten suchen',\n 'components.browser.namespaceAria': 'Nach Namespace filtern',\n 'components.browser.all': 'Alle',\n 'components.browser.primitives': 'Primitive',\n 'components.browser.project': 'Projekt',\n 'components.browser.noMatchQuery': 'Keine Komponenten entsprechen „{query}“.',\n 'components.browser.noMatchFilters': 'Keine Komponenten entsprechen den ausgewählten Filtern.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Extensions (marketplace)\n // ─────────────────────────────────────────────────────────────────────────\n 'extensions.tab.marketplace': 'Marktplatz',\n 'extensions.tab.installed': 'Installiert',\n 'extensions.tab.registered': 'Registriert',\n 'extensions.header.title': 'Erweiterbarkeit',\n 'extensions.header.subtitle':\n 'Komponenten · Feldtypen · Datenquellen · Asset-Speicher · Export-Ziele · Vorlagen · Hooks',\n 'extensions.search.placeholder': 'Erweiterungen suchen…',\n 'extensions.search.aria': 'Erweiterungen suchen',\n 'extensions.token.placeholder': 'Token für private Registry',\n 'extensions.token.unlocked': 'freigeschaltet',\n 'extensions.empty.noMatch.title': 'Keine Erweiterungen gefunden',\n 'extensions.empty.noMatch.body': 'Versuchen Sie einen anderen Suchbegriff.',\n 'extensions.listing.private': 'privat',\n 'extensions.listing.noDescription': 'Keine Beschreibung vorhanden.',\n 'extensions.listing.unknownAuthor': 'Unbekannter Autor',\n 'extensions.action.installed': 'Installiert',\n 'extensions.action.install': 'Installieren',\n 'extensions.error.accessDenied': 'Zugriff verweigert — ein gültiges Token ist erforderlich.',\n 'extensions.error.installFailed': 'Installation fehlgeschlagen.',\n 'extensions.empty.installed.title': 'Noch nichts installiert',\n 'extensions.empty.installed.body':\n 'Installieren Sie eine Erweiterung aus dem Marktplatz, um zu sehen, was sie hier beiträgt.',\n 'extensions.contrib.components': 'Komponenten',\n 'extensions.contrib.fieldTypes': 'Feldtypen',\n 'extensions.contrib.dataSources': 'Datenquellen',\n 'extensions.contrib.assetStorage': 'Asset-Speicher',\n 'extensions.contrib.exportTargets': 'Export-Ziele',\n 'extensions.contrib.templates': 'Vorlagen',\n 'extensions.contrib.hooks': 'Hooks',\n 'extensions.registered.intro':\n 'Aktive Registries auf dem Plugin-Host. Eingebaute Funktionen sind immer vorhanden; das Installieren einer Erweiterung ergänzt sie.',\n 'extensions.registered.components.title': 'Komponenten',\n 'extensions.registered.components.empty': 'Keine Projektkomponenten registriert.',\n 'extensions.registered.fieldTypes.title': 'Feldtypen',\n 'extensions.registered.dataSources.title': 'Datenquellenarten',\n 'extensions.registered.assetStorage.title': 'Asset-Speicher-Backends',\n 'extensions.registered.assetStorage.empty': 'Keine Speicher-Adapter installiert.',\n 'extensions.registered.exportTargets.title': 'Export-Ziele',\n 'extensions.registered.hookPoints.title': 'Hook-Punkte',\n 'extensions.kind.plugin': 'Plugin',\n 'extensions.kind.componentPackage': 'Komponenten',\n 'extensions.kind.fieldType': 'Feldtyp',\n 'extensions.kind.dataSource': 'Datenquelle',\n 'extensions.kind.assetStorage': 'Asset-Speicher',\n 'extensions.kind.exportTarget': 'Export-Ziel',\n 'extensions.kind.template': 'Vorlage',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Settings\n // ─────────────────────────────────────────────────────────────────────────\n 'settings.identity.title': 'Identität',\n 'settings.identity.name': 'Name',\n 'settings.identity.urlKey': 'URL-Schlüssel',\n 'settings.locales.title': 'Sprachen',\n 'settings.locales.configuredCount': '{count} konfiguriert',\n 'settings.locales.configured': 'Konfigurierte Sprachen',\n 'settings.locales.defaultSuffix': ' · Standard',\n 'settings.environments.title': 'Umgebungen & Export',\n 'settings.environments.label': 'Umgebungen',\n 'settings.exportTarget': 'Export-Ziel',\n\n // ─────────────────────────────────────────────────────────────────────────\n // App-views shell\n // ─────────────────────────────────────────────────────────────────────────\n 'appViews.singleton.opening': '{label} wird geöffnet…',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Builder / canvas\n // ─────────────────────────────────────────────────────────────────────────\n // Shown in the lazy boundary while the page-builder canvas chunk loads (EC-322).\n 'builder.canvas.loading': 'Page Builder wird geladen…',\n 'builder.blocksPanel.title': 'Block einfügen',\n 'builder.blocksPanel.addsInto': 'Fügt ein in {destination}.',\n 'builder.blocksPanel.searchPlaceholder': 'Blöcke suchen…',\n 'builder.blocksPanel.searchAria': 'Blöcke suchen',\n 'builder.blocksPanel.layoutHelpers': 'Layout-Helfer',\n 'builder.blocksPanel.noAllowed': 'Keine zulässigen Komponenten gefunden.',\n 'builder.blocksPanel.noMatch': 'Keine Komponenten passen zu „{query}“.',\n 'builder.blocksPanel.insertTileAria': '{title} — {variant} einfügen',\n 'builder.blocksPanel.copyExactAria': 'Exakte Konfiguration kopieren — {title} ({variant})',\n 'builder.blocksPanel.copyExactConfiguration': 'Exakte Konfiguration kopieren',\n 'builder.blocksPanel.previewFailed': 'Vorschau fehlgeschlagen: {error}',\n // EC-439: one tile per component; a 2+-fixture component gets a variants chip + flyout.\n 'builder.blocksPanel.insertComponentAria': '{title} einfügen',\n 'builder.blocksPanel.variantCount': '{count} Varianten',\n 'builder.blocksPanel.variantsAria': '{count} Varianten von {title} anzeigen',\n 'builder.blocksPanel.variantsHeading': 'Varianten',\n 'builder.blocksPanel.variantIssuesHint': 'Einige Varianten haben Validierungsprobleme.',\n 'builder.pageTree.title': 'Seitenstruktur',\n 'builder.pageTree.hiddenByCondition': 'Durch Bedingung ausgeblendet',\n 'builder.pageTree.conditional': 'Bedingt',\n 'builder.pageTree.addChild': 'Unterelement hinzufügen',\n 'builder.pageTree.moreActions': 'Weitere Aktionen',\n 'builder.pageTree.moveUp': 'Nach oben',\n 'builder.pageTree.moveDown': 'Nach unten',\n 'builder.clipboard.paste': 'Einfügen',\n 'builder.clipboard.cut': 'Ausschneiden',\n 'builder.clipboard.writeError': 'Konnte nicht in die Zwischenablage schreiben: {detail}',\n 'builder.clipboard.rootCannotBeCut': 'Das Seiten-Wurzelelement kann nicht ausgeschnitten werden.',\n 'builder.clipboard.copied': '{label} kopiert',\n 'builder.clipboard.cutNotice': '{label} ausgeschnitten',\n 'builder.clipboard.pastedInto': '{summary} · in {destination}',\n 'builder.clipboard.issueComponent': 'Komponente',\n 'builder.clipboard.issueBinding': 'Bindung',\n // EC-494 — Zwischenablage-Fehler aus der Engine plus der studio-seitige Einfüge-Diff.\n 'builder.clipboard.error.corruptJson': 'Der Inhalt der Zwischenablage ist kein gültiges JSON: {detail}',\n 'builder.clipboard.error.notEnvelope':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment-Umschlag.',\n 'builder.clipboard.error.foreignFormat':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment (erwartetes Format \"{expected}\").',\n 'builder.clipboard.error.versionNewer':\n 'Die Fragmentversion {version} ist neuer als von diesem Studio unterstützt (Version {supported}).',\n 'builder.clipboard.error.versionUnsupported':\n 'Die Fragmentversion {version} wird nicht unterstützt (dieses Studio liest Version {supported}).',\n 'builder.clipboard.error.invalidPayload':\n 'Das Fragment der Zwischenablage verletzt das Fragment-Schema.',\n 'builder.clipboard.error.nodeNotFound': 'In der Komposition existiert kein Knoten \"{nodeId}\".',\n 'builder.clipboard.error.fixtureNotFound':\n 'Die Komponente \"{component}\" deklariert kein Fixture namens \"{fixture}\".',\n 'builder.clipboard.issue.unresolvedBinding':\n 'Die Datenquelle \"{sourceId}\" ist in diesem Projekt nicht verfügbar.',\n 'builder.clipboard.issue.missingComponent':\n 'Die Komponente \"{componentId}\" ist in diesem Projekt nicht registriert.',\n 'builder.clipboard.summary.pasted': 'Eingefügt',\n 'builder.clipboard.summary.pastedWith': 'Eingefügt — {parts}',\n 'builder.clipboard.summary.bindingUnresolvedOne': '{count} Bindung nicht aufgelöst',\n 'builder.clipboard.summary.bindingsUnresolved': '{count} Bindungen nicht aufgelöst',\n 'builder.clipboard.summary.componentMissingOne': '{count} Komponente fehlt',\n 'builder.clipboard.summary.componentsMissing': '{count} Komponenten fehlen',\n 'builder.reuse.makeReusable': 'Wiederverwendbar machen',\n 'builder.reuse.detachToCopy': 'Als Kopie loslösen',\n 'builder.reuse.defaultElementName': 'Wiederverwendbares Element',\n 'builder.reuse.madeReusablePublished': '„{name}“ wiederverwendbar gemacht und veröffentlicht.',\n 'builder.reuse.madeReusablePublishFailed':\n '„{name}“ wiederverwendbar gemacht, aber die Veröffentlichung ist fehlgeschlagen — veröffentlichen Sie es aus seinem Dokument.',\n 'builder.reuse.madeReusableDraft':\n '„{name}“ wiederverwendbar gemacht (Entwurf) — veröffentlichen Sie es, um es auf Live-Seiten anzuzeigen.',\n 'builder.reuse.noTargetToDetach': 'Dieses Element hat kein Ziel zum Loslösen.',\n 'builder.reuse.noContentToDetach': 'Das referenzierte Element hat keinen Inhalt zum Loslösen.',\n 'builder.reuse.detachedToCopy': 'Als bearbeitbare Kopie losgelöst — die Live-Verknüpfung ist getrennt.',\n 'builder.reuse.makeReusableDescription':\n 'Verschiebt den ausgewählten Block in ein neues wiederverwendbares Element und bettet es hier ein. Dasselbe Element kann dann auf jeder Seite eingebettet werden. Veröffentlichen Sie es jetzt, um den Abschnitt überall sichtbar zu halten, oder speichern Sie es als Entwurf, um zuerst weiter zu bearbeiten.',\n 'builder.reuse.nameLabel': 'Name',\n 'builder.reuse.namePlaceholder': 'Reservierungs-CTA',\n 'builder.reuse.saveDraft': 'Entwurf speichern',\n 'builder.reuse.publish': 'Veröffentlichen',\n 'builder.inspector.emptySelection':\n 'Wählen Sie ein Element in der Struktur oder auf der Arbeitsfläche, um seine Eigenschaften zu bearbeiten.',\n 'builder.inspector.title': 'Inspektor',\n 'builder.inspector.unknownComponent': 'unbekannte Komponente',\n 'builder.inspector.noManifest':\n 'Für diese Komponente ist kein Manifest registriert, ihre Eigenschaften können nicht bearbeitet werden.',\n 'builder.inspector.props': 'Eigenschaften',\n 'builder.inspector.noEditableProps': 'Keine bearbeitbaren Eigenschaften.',\n 'builder.inspector.slots': 'Slots',\n 'builder.inspector.slotsHint': 'Slot-Elemente in der Seitenstruktur hinzufügen oder umsortieren.',\n 'builder.inspector.propertiesPane': 'Eigenschaften',\n 'builder.inspector.invalidValue':\n 'Der Wert entspricht nicht dem Schema der Eigenschaft — die Arbeitsfläche verwendet den Standardwert.',\n 'builder.inspector.invalidJson': 'Ungültiges JSON',\n 'builder.layout.title': 'Layout',\n 'builder.layout.direction': 'Richtung',\n 'builder.layout.vertical': 'Vertikal',\n 'builder.layout.horizontal': 'Horizontal',\n 'builder.layout.columns': 'Spalten',\n 'builder.layout.columnCount.one': '{count} Spalte',\n 'builder.layout.columnCount.other': '{count} Spalten',\n 'builder.layout.gap': 'Abstand',\n 'builder.layout.alignment': 'Ausrichtung',\n 'builder.layout.onPhones': 'Auf Smartphones',\n 'builder.layout.stack': 'Stapeln',\n 'builder.layout.keepColumns': 'Spalten beibehalten',\n 'builder.layout.gapStep.hairline': 'Haarlinie',\n 'builder.layout.gapStep.extraSmall': 'Sehr klein',\n 'builder.layout.gapStep.small': 'Klein',\n 'builder.layout.gapStep.medium': 'Mittel',\n 'builder.layout.gapStep.large': 'Groß',\n 'builder.layout.gapStep.extraLarge': 'Sehr groß',\n 'builder.layout.gapStep.huge': 'Riesig',\n 'builder.layout.align.start': 'Anfang',\n 'builder.layout.align.center': 'Zentriert',\n 'builder.layout.align.end': 'Ende',\n 'builder.layout.align.stretch': 'Strecken',\n 'builder.canvas.pagePreview': 'Seitenvorschau',\n 'builder.canvas.reusableUnpublishedTitle': 'Dieses wiederverwendbare Element ist noch nicht veröffentlicht',\n 'builder.canvas.reusableMissingTitle': 'Dieses wiederverwendbare Element fehlt',\n 'builder.canvas.reusableUnpublishedHint':\n 'Veröffentlichen Sie es, um es hier und auf Live-Seiten anzuzeigen — oder öffnen Sie es im Eigenschaften-Panel, um weiter zu bearbeiten.',\n 'builder.canvas.reusableMissingHint':\n 'Öffnen Sie das „Element“ der Einbettung im Eigenschaften-Panel, um die Referenz zu korrigieren.',\n 'builder.canvas.listingInvalidTitle': 'Diese Liste kann nicht ausgeführt werden:',\n 'builder.canvas.viewportPreviewAria': '{label} Vorschau',\n 'builder.canvas.viewportWidthTitle': '{label} Breite',\n 'builder.canvas.breakpointsIssueLabel': 'Breakpoints',\n 'builder.canvas.undo': 'Rückgängig',\n 'builder.canvas.redo': 'Wiederholen',\n 'builder.canvas.insert': 'Einfügen',\n // In-canvas \"+\" insertion affordances at block boundaries (EC-405).\n 'builder.canvas.insertBefore': 'Block davor einfügen',\n 'builder.canvas.insertAfter': 'Block danach einfügen',\n 'builder.canvas.insertInto': 'Block darin einfügen',\n 'builder.canvasTheme.legacyNotice':\n 'Die canvas.css dieses Projekts bündelt noch das Studio-Designsystem mit dem Site-Theme (die alte zusammengeführte Form). Richten Sie canvas.css stattdessen auf den eigenen Full-Tailwind-Theme-Einstieg der Site — siehe Theming-Leitfaden (docs/theming.md). Bis dahin funktioniert alles weiter.',\n 'builder.canvasTheme.stylesheetErrorNotice':\n 'Das Canvas-Stylesheet konnte nicht geladen werden — Blöcke werden ungestylt dargestellt. Prüfen Sie den canvas.css-Build des Studios.',\n 'builder.canvasTheme.noThemeTokensNotice':\n 'Das Canvas-Stylesheet definiert keine Theme-Tokens. canvas.css sollte den Full-Tailwind-Theme-Einstieg der Site importieren (siehe docs/theming.md).',\n 'builder.canvasTheme.noStylesheetNotice':\n 'Es ist kein Canvas-Stylesheet konfiguriert — Blöcke werden ungestylt dargestellt. Die App muss eines über setCanvasStylesheetUrl bereitstellen (das create-elytra-Template verdrahtet das).',\n 'builder.spacing.gapAfterChild': 'Abstand nach Element {index}',\n 'builder.richText.toolbarLabel': 'Textformatierung',\n 'builder.richText.linkPlaceholder': 'https://… (leer entfernt)',\n 'builder.richText.linkUrl': 'Link-URL',\n 'builder.richText.set': 'Setzen',\n 'builder.richText.applyLink': 'Link anwenden',\n 'builder.richText.bold': 'Fett',\n 'builder.richText.italic': 'Kursiv',\n 'builder.richText.link': 'Link',\n 'builder.richText.removeLink': 'Link entfernen',\n 'builder.richText.unlink': 'Verknüpfung lösen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS rich-text editor (EC-314) — the TipTap field editor\n // ─────────────────────────────────────────────────────────────────────────\n 'richText.placeholder': 'Schreiben Sie etwas…',\n // Shown in the lazy boundary while the TipTap editor chunk loads (EC-322).\n 'richText.loading': 'Editor wird geladen…',\n 'richText.bold': 'Fett',\n 'richText.italic': 'Kursiv',\n 'richText.underline': 'Unterstrichen',\n 'richText.strike': 'Durchgestrichen',\n 'richText.code': 'Code im Text',\n 'richText.paragraph': 'Absatz',\n 'richText.heading': 'Überschrift {level}',\n 'richText.bulletList': 'Aufzählung',\n 'richText.orderedList': 'Nummerierte Liste',\n 'richText.blockquote': 'Zitat',\n 'richText.codeBlock': 'Codeblock',\n 'richText.horizontalRule': 'Trennlinie',\n 'richText.fontSize.label': 'Schriftgröße',\n 'richText.fontSize.small': 'Klein',\n 'richText.fontSize.normal': 'Normal',\n 'richText.fontSize.large': 'Groß',\n 'richText.fontSize.xlarge': 'Sehr groß',\n 'richText.undo': 'Rückgängig',\n 'richText.redo': 'Wiederholen',\n 'richText.link.add': 'Link',\n 'richText.link.remove': 'Link entfernen',\n 'richText.link.external': 'Externe URL',\n 'richText.link.externalPlaceholder': 'https://…',\n 'richText.link.document': 'Dokument verknüpfen',\n 'richText.link.documentSearch': 'Dokumente suchen…',\n 'richText.link.documentEmpty': 'Keine passenden Dokumente.',\n 'richText.link.apply': 'Anwenden',\n 'richText.image.add': 'Bild',\n 'richText.embed.add': 'Komponente einbetten',\n 'richText.embed.badge': 'Einbettung',\n 'richText.embed.unknown': 'Unbekannte Komponente',\n 'richText.embed.empty': 'Keine Komponenten zum Einbetten verfügbar.',\n 'richText.embed.editProps': 'Einstellungen bearbeiten',\n 'richText.embed.editTitle': '{name} bearbeiten',\n 'richText.embed.noProps': 'Diese Komponente hat keine bearbeitbaren Einstellungen.',\n 'richText.embed.blocksNote': 'Verschachtelte Inhaltsbereiche werden auf der Arbeitsfläche bearbeitet, nicht hier.',\n 'richText.slash.text': 'Text',\n 'richText.slash.empty': 'Keine passenden Blöcke',\n 'richText.slash.componentsGroup': 'Komponenten',\n // EC-388/EC-431 — expand the editing surface (the centered stage for long prose).\n 'richText.expand.expand': 'Editor vergrößern',\n 'richText.expand.collapse': 'Editor verkleinern',\n 'richText.expand.title': 'Rich Text',\n // EC-436 — Titel der vergrößerten Ansicht mit Feldbezeichnung ({field}).\n 'richText.expand.titleWithField': '{field} — Rich Text',\n 'richText.expand.editingInSheet': 'Bearbeitung in der vergrößerten Ansicht — klicken Sie, um zurückzukehren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // EC-199 — AI assistant chat panel + creation flow\n // ─────────────────────────────────────────────────────────────────────────\n 'ai.panel.title': 'Assistent',\n 'ai.panel.toggle': 'KI-Assistenten ein- oder ausblenden',\n 'ai.panel.close': 'Assistenten schließen',\n 'ai.panel.loading': 'Assistent wird geladen…',\n 'ai.panel.working': 'Wird bearbeitet…',\n 'ai.panel.placeholder': 'Bitten Sie den Assistenten, Inhalte zu erstellen…',\n 'ai.panel.send': 'Senden',\n 'ai.panel.emptyTitle': 'Inhalte mit KI erstellen',\n 'ai.panel.emptyHint':\n 'Beschreiben Sie, was Sie erstellen möchten — zum Beispiel: „Schreibe einen Beitrag über unsere neuen Öffnungszeiten.“ Der Assistent erstellt einen Entwurf zur Prüfung.',\n 'ai.panel.unavailable': 'Der Assistent ist in diesem Projekt nicht verfügbar.',\n // EC-334/EC-380 — new-conversation affordance\n 'ai.panel.newConversation': 'Neue Unterhaltung',\n 'ai.step.search': '{collection} durchsucht — {count} gefunden',\n 'ai.step.searchRunning': '{collection} wird durchsucht…',\n 'ai.step.listAssets': 'Medien durchsucht — {count} gefunden',\n 'ai.step.listAssetsRunning': 'Medien werden durchsucht…',\n 'ai.step.getDocument': 'Dokument gelesen',\n 'ai.step.getDocumentRunning': 'Dokument wird gelesen…',\n 'ai.step.drafting': 'Entwurf für {collection} wird erstellt…',\n 'ai.step.translating': '{completed} von {total} werden übersetzt…',\n 'ai.step.translatingDoc': 'Dokument wird übersetzt…',\n 'ai.step.translateNothing': 'Nichts zu übersetzen — alle Sprachen sind bereits ausgefüllt.',\n // EC-378 — the updateFields edit flow\n 'ai.step.updatingDoc': 'Änderungen am Dokument werden vorgeschlagen…',\n 'ai.step.updateNoChange': 'Keine Änderungen nötig — die Werte stimmen bereits überein.',\n 'ai.proposal.title': 'Vorschlag für {collection}',\n 'ai.proposal.reviewHint': 'Prüfen Sie den Entwurf und übernehmen oder verwerfen Sie ihn anschließend.',\n 'ai.proposal.apply': 'Als Entwurf übernehmen',\n 'ai.proposal.discard': 'Verwerfen',\n 'ai.proposal.applied': 'Als Entwurf übernommen',\n 'ai.proposal.discarded': 'Verworfen',\n 'ai.proposal.discardedNote': 'Dieser Vorschlag wurde verworfen.',\n 'ai.proposal.open': 'Dokument öffnen',\n 'ai.proposal.unavailable': 'Dieser Vorschlag kann nicht mehr angezeigt werden.',\n 'ai.proposal.diffBefore': 'Leer',\n 'ai.proposal.diffAfter': 'Vorschlag',\n 'ai.proposal.diffUnified': 'Vorgeschlagener Inhalt',\n // EC-382 — the expandable review surface (a roomy full-height sheet).\n 'ai.proposal.expandReview': 'Prüfansicht erweitern',\n 'ai.proposal.collapseReview': 'Prüfansicht schließen',\n 'ai.error.route': 'Der Assistent ist derzeit nicht verfügbar. Bitte versuchen Sie es erneut.',\n 'ai.error.generic': 'Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut.',\n 'ai.error.applyFailed': 'Der Entwurf konnte nicht übernommen werden.',\n 'ai.error.applyInvalid': 'Der Vorschlag passt nicht mehr zum aktuellen Dokument: {issues}',\n 'ai.error.stepCap':\n 'Der Assistent hat nach {max} Werkzeugschritten angehalten. Senden Sie eine weitere Nachricht, um fortzufahren.',\n // EC-332 — full-document translation (header action + chat tool)\n 'ai.translate.action': 'Dokument übersetzen',\n 'ai.translate.tooltip': 'Leere Übersetzungen mit KI ausfüllen',\n 'ai.translate.dialogTitle': 'Dokument übersetzen',\n 'ai.translate.dialogDescription':\n 'Leere Sprachwerte aus {base} mit KI ausfüllen. Vorhandene Übersetzungen werden nie überschrieben.',\n 'ai.translate.targetsLabel': 'Zielsprachen',\n 'ai.translate.scopeLabel': 'Zu übersetzender Umfang',\n 'ai.translate.fillMissing': 'Nur fehlende Übersetzungen ausfüllen',\n 'ai.translate.retranslateAll': 'Alles neu übersetzen',\n 'ai.translate.retranslateSoon': 'Demnächst',\n 'ai.translate.confirm': 'Übersetzen',\n 'ai.translate.preparing': 'Übersetzung wird vorbereitet…',\n 'ai.translate.progress': '{completed} von {total} werden übersetzt…',\n 'ai.translate.applying': 'Übersetzungen werden gespeichert…',\n 'ai.translate.nothing': 'Alles ist bereits übersetzt — es gibt nichts auszufüllen.',\n 'ai.translate.applied': '{count} Übersetzungen in {locales} Sprachen wurden ausgefüllt.',\n 'ai.translate.cancelled': 'Übersetzung abgebrochen — Teilergebnisse bleiben im Entwurf erhalten.',\n 'ai.translate.failed': 'Übersetzung fehlgeschlagen. Bitte versuchen Sie es erneut.',\n 'ai.translate.close': 'Schließen',\n 'ai.translate.proposalTitle': 'Übersetzung von {collection}',\n 'ai.translate.diffBefore': 'Aktuell',\n 'ai.translate.diffAfter': 'Übersetzt',\n // EC-378 — the update (edit-existing) proposal\n 'ai.update.proposalTitle': 'Änderungen an {collection}',\n 'ai.update.diffBefore': 'Aktuell',\n 'ai.update.diffAfter': 'Vorgeschlagen',\n}\n"]}
1
+ {"version":3,"file":"messages.de.js","sourceRoot":"","sources":["../../../src/lib/i18n/messages.de.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TranslationCatalog } from './messages.en'\n\n/**\n * The engine-shipped **German** studio-chrome catalog (EC-398), importable as\n * `@elytracms/studio/locales/de` and passed by reference into\n * `defineStudio({ i18n: { locales: { de: deMessages } } })` — translations stay\n * code passed directly (EC-241's principle; no registry, no runtime fetch). A\n * consumer overrides individual strings by spreading:\n * `{ ...deMessages, 'some.key': 'eigene Formulierung' }`.\n *\n * Seeded 2026-07-15 as the best-of merge of the two hand-maintained consumer\n * catalogs (Naturkinder wins conflicts) + fresh translations for the keys both\n * lacked (incl. EC-397's sign-in/boot copy). Typed against\n * {@link TranslationCatalog} so an unknown/stale key fails typecheck;\n * `messages.de.test.ts` pins EXACT key parity with the EN source (no missing,\n * no stale, matching `{var}` placeholders) — a new engine string fails the\n * engine build until it is translated here.\n *\n * Sections mirror `messages.en.ts` so the files diff side-by-side.\n *\n * Glossar: Sammlung · Dokument · Feld · Medien · Komponente · Weiterleitung ·\n * Verweis · Version · Entwurf · veröffentlichen · Benutzer · Rolle ·\n * Einstellungen · Bereitstellung.\n */\nexport const deMessages: TranslationCatalog = {\n // ─────────────────────────────────────────────────────────────────────────\n // Common — generic, reused across surfaces\n // ─────────────────────────────────────────────────────────────────────────\n 'common.save': 'Speichern',\n 'common.saving': 'Wird gespeichert…',\n 'common.saveChanges': 'Änderungen speichern',\n 'common.cancel': 'Abbrechen',\n 'common.delete': 'Löschen',\n 'common.remove': 'Entfernen',\n 'common.add': 'Hinzufügen',\n 'common.edit': 'Bearbeiten',\n 'common.close': 'Schließen',\n 'common.copy': 'Kopieren',\n 'common.duplicate': 'Duplizieren',\n 'common.select': 'Auswählen',\n 'common.clear': 'Zurücksetzen',\n 'common.apply': 'Anwenden',\n 'common.upload': 'Hochladen',\n 'common.retry': 'Erneut versuchen',\n 'common.discard': 'Verwerfen',\n 'common.dismiss': 'Schließen',\n 'common.loading': 'Wird geladen…',\n 'common.searchPlaceholder': 'Suchen…',\n 'common.none': 'Keine',\n 'common.required': 'erforderlich',\n 'common.optional': 'optional',\n 'common.yes': 'Ja',\n 'common.no': 'Nein',\n 'common.true': 'wahr',\n 'common.false': 'falsch',\n 'common.backendUnreachable': 'Das Speicher-Backend ist nicht erreichbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Built-in navigation views (the section rail)\n // ─────────────────────────────────────────────────────────────────────────\n 'nav.cms.label': 'Inhalt',\n 'nav.cms.description': 'Sammlungen, Felder und Dokumente modellieren.',\n 'nav.components.label': 'Komponenten',\n 'nav.components.description': 'Registry der Primitive und Projektkomponenten durchsuchen.',\n 'nav.redirects.label': 'Weiterleitungen',\n 'nav.redirects.description': 'URL-Weiterleitungen (301/302) für diese Website erstellen und verwalten.',\n 'nav.assets.label': 'Medien',\n 'nav.assets.description': 'Hochgeladene Medien und Metadaten verwalten.',\n 'nav.users.label': 'Benutzer',\n 'nav.users.description': 'Verwalten, wer Zugriff auf diese Bereitstellung hat, und deren Rolle.',\n 'nav.extensions.label': 'Erweiterungen',\n 'nav.extensions.description': 'Komponenten, Feldtypen, Adapter und Vorlagen aus dem Marktplatz installieren.',\n 'nav.settings.label': 'Einstellungen',\n 'nav.settings.description': 'Projektmetadaten und Sprachen konfigurieren.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Current-user menu (shell header)\n // ─────────────────────────────────────────────────────────────────────────\n 'userMenu.accountMenu': 'Kontomenü',\n 'userMenu.lightMode': 'Heller Modus',\n 'userMenu.darkMode': 'Dunkler Modus',\n 'userMenu.accountSettings': 'Kontoeinstellungen',\n 'userMenu.soon': 'Bald',\n 'userMenu.signOut': 'Abmelden',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Shell — top bar, section rail, boot/error frames, project chrome\n // ─────────────────────────────────────────────────────────────────────────\n 'shell.allProjects': 'Alle Projekte',\n 'shell.breadcrumb.label': 'Brotkrümelnavigation',\n 'shell.nav.label': 'Bereiche',\n 'shell.sidebar.expand': 'Seitenleiste ausklappen',\n 'shell.sidebar.collapse': 'Seitenleiste einklappen',\n 'shell.sidebar.collapseLabel': 'Einklappen',\n 'shell.nav.planned': 'Geplant',\n 'shell.nav.collapseView': '{name} einklappen',\n 'shell.nav.expandView': '{name} ausklappen',\n 'shell.nav.issuesCount': '{count} Sidebar-Probleme',\n 'shell.sectionState.empty.title': 'Noch nichts vorhanden',\n 'shell.sectionState.empty.description': 'Dieser Bereich hat keine Inhalte für das aktive Projekt.',\n 'shell.sectionState.loading.description': 'Der aktuelle Stand dieses Bereichs wird geladen.',\n 'shell.sectionState.error.title': 'Etwas ist schiefgelaufen',\n 'shell.sectionState.error.description':\n 'Dieser Bereich konnte nicht geladen werden. Bitte versuchen Sie es gleich erneut.',\n 'shell.sectionState.unavailable.title': 'Nicht verfügbar',\n 'shell.sectionState.unavailable.description': 'Dieser Bereich ist für das aktive Projekt nicht verfügbar.',\n 'shell.sectionState.planned.title': 'Geplant',\n 'shell.sectionState.planned.description': 'Diese Oberfläche ist geplant und für dieses Projekt noch nicht aktiviert.',\n 'shell.sectionState.badge.empty': 'leer',\n 'shell.sectionState.badge.loading': 'lädt',\n 'shell.sectionState.badge.error': 'Fehler',\n 'shell.sectionState.badge.unavailable': 'nicht verfügbar',\n 'shell.sectionState.badge.planned': 'geplant',\n 'shell.projectNotFound.title': 'Projekt nicht gefunden',\n 'shell.projectNotFound.body':\n 'Dieses Projekt existiert nicht oder wurde gelöscht. Möglicherweise bestand es nur in dieser Sitzung.',\n 'shell.backToProjects': 'Zurück zu den Projekten',\n 'shell.routeNotFound.title': 'Seite nicht gefunden',\n 'shell.routeNotFound.body': 'Diese Studio-URL verweist auf keinen Bereich.',\n 'shell.projectSwitcher.recent': 'Zuletzt verwendet',\n 'shell.projects': 'Projekte',\n 'shell.projectSwitcher.browseAll': 'Alle Projekte durchsuchen',\n 'shell.project.notProvisioned': 'nicht bereitgestellt',\n 'shell.projectList.recent': 'Zuletzt verwendet',\n 'shell.projectList.empty.title': 'Keine Projekte',\n 'shell.projectCard.open': 'Projekt öffnen',\n 'shell.session.loading': 'Projekt wird geladen…',\n 'shell.session.error.title': 'Der gespeicherte Stand dieses Projekts konnte nicht geladen werden',\n 'shell.session.error.body':\n 'Das Studio greift gegenüber einem aktiven Backend niemals auf Beispielinhalte zurück – Ihre Daten sind sicher. Versuchen Sie es erneut, sobald das Backend erreichbar ist.',\n 'shell.workspaceGate.title': 'Workspace-Konfiguration ist ungültig',\n 'shell.workspaceGate.issuesLabel': 'Probleme der Workspace-Konfiguration',\n 'shell.backend.connecting': 'Verbindung zum Backend wird hergestellt…',\n 'shell.backend.notConfigured.title': 'Backend nicht konfiguriert',\n 'shell.backend.unavailable.title': 'Backend nicht verfügbar',\n 'shell.backend.unavailable.body':\n 'Das konfigurierte Convex-Deployment hat nicht geantwortet. Ihre Daten sind im Backend sicher – das Studio wechselt nicht zur lokalen Speicherung.',\n 'shell.backend.retryConnection': 'Verbindung erneut versuchen',\n // EC-258 — the unified deployment-setup boot gate.\n 'shell.deploymentSetup.title': 'Bereitstellung einrichten',\n 'shell.deploymentSetup.checking': 'Bereitstellung wird geprüft…',\n 'shell.deploymentSetup.description':\n 'Das Studio kann erst starten, wenn diese Punkte behoben sind. Korrigieren Sie alle Einträge und laden Sie anschließend neu.',\n 'shell.deploymentSetup.issuesLabel': 'Prüfungen der Bereitstellung',\n 'shell.deploymentSetup.fixLabel': 'Beheben',\n 'shell.deploymentSetup.retry': 'Erneut prüfen',\n // EC-399 — expected deployment env vars (presence only) on the setup screen.\n 'shell.deploymentSetup.envSection': 'Umgebungsvariablen der Bereitstellung',\n 'shell.deploymentSetup.envSectionHint':\n 'Umgebungsvariablen, die diese Bereitstellung erwartet — nur Vorhandensein, Werte werden nie angezeigt. `elytra doctor` prüft sie verlässlich.',\n 'shell.unsavedChanges.title': 'Nicht gespeicherte Änderungen',\n 'shell.unsavedChanges.body':\n 'Sie haben nicht gespeicherte Änderungen. Speichern Sie sie, bevor Sie die Seite verlassen, oder verwerfen Sie sie.',\n 'shell.unsavedChanges.saving': 'Wird gespeichert…',\n 'shell.devLogin.badge': 'Dev-Login',\n 'shell.devLogin.hint':\n 'Automatische Dev-Anmeldung: Das Studio wurde über VITE_ELYTRA_DEV_LOGIN automatisch angemeldet (nur in Entwicklungs-Builds). Entfernen Sie die Variable, um die echte Anmeldung zu testen.',\n 'shell.playground.badge': 'Playground',\n 'shell.playground.hint':\n 'Playground-Modus: Daten liegen im Arbeitsspeicher dieses Geräts und werden beim Neuladen zurückgesetzt. Es wird nichts in einem Backend gespeichert.',\n 'shell.deliveryHealth.dismiss': 'Schließen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Customization issues — the section-rail foot (`NavIssues`)\n // ─────────────────────────────────────────────────────────────────────────\n // EC-478. Jede `{var}` ist ein BEZEICHNER (Eintrags-id, Erweiterungspunkt,\n // Komponenten-/Sammlungs-id) und bleibt bewusst unübersetzt. Fachbegriffe, die\n // im Code stehen (`reuse.component`, `reuse.relationProp`, `studio.config`,\n // Prop, Slot, Block), bleiben ebenfalls unübersetzt — der Entwickler muss sie\n // in seiner Konfiguration wiederfinden.\n // EC-479 — das Projekt deklariert nichts, womit das Studio arbeiten könnte.\n 'customization.issue.noCollections':\n 'Dieses Projekt deklariert keine Inhaltssammlungen. Fügen Sie sie in „{file}“ hinzu — das Studio zeigt Ihr Schema oder keines, niemals Beispielinhalte.',\n 'customization.issue.duplicateOverrideId':\n 'Doppelte Überschreibungs-id „{id}“ für „{point}“ — die spätere wird ignoriert.',\n 'customization.issue.unknownOverrideTarget':\n 'Die Überschreibung „{id}“ für „{point}“ passt zu keinem eingebauten Baustein, den sie ersetzen könnte.',\n 'customization.issue.invalidOverride': 'Die Überschreibung „{id}“ für „{point}“ ist ungültig: {reason}',\n 'customization.issue.reason.rendererNotAComponent': 'der Renderer ist keine Komponente',\n 'customization.issue.reason.viewNoRender': 'die Ansicht hat keine render-Funktion',\n 'customization.issue.reason.viewNoLabel': 'die Ansicht hat keine Beschriftung',\n 'customization.issue.derivedIdBuiltinCollision':\n 'Die Ansicht „{label}“ für „{point}“ leitet die id „{id}“ aus ihrer Beschriftung ab, was der eingebauten Ansicht „{id}“ entspricht — die eingebaute Ansicht bleibt erhalten und diese wird ignoriert. Geben Sie eine explizite id an, um eine eingebaute Ansicht absichtlich zu ersetzen.',\n 'customization.issue.derivedIdCollectionCollision':\n 'Die Ansichts-id „{id}“ für „{point}“ ist mehrdeutig: Sie verbindet die Sammlungen {collections} mit „-“, und eine Sammlung heißt buchstäblich „{joined}“ — deren eigene Ansicht leitet dieselbe id ab. Geben Sie dieser Gruppe eine explizite id.',\n // EC-467 — die Deklaration wiederverwendbarer Elemente (`defineStudio({ reuse })`).\n 'builder.reuse.config.unknownComponent':\n 'Wiederverwendbare Elemente: Die Studio-Konfiguration deklariert reuse.component „{component}“, was keine registrierte Komponente ist. Korrigieren Sie die id oder entfernen Sie den reuse-Block, damit das Studio die Einbettung selbst ermittelt.',\n 'builder.reuse.config.noRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument und kann daher auf kein wiederverwendbares Dokument zeigen. Eine Einbettung benötigt genau ein Relations-Prop mit Kardinalität eins.',\n 'builder.reuse.config.unknownRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument mit dem Namen „{relationProp}“. Ihre Relations-Props sind: {props}.',\n 'builder.reuse.config.ambiguousRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat {count} Relations-Props für ein einzelnes Dokument ({props}) — ergänzen Sie reuse.relationProp, um anzugeben, welches auf das wiederverwendbare Dokument zeigt.',\n 'builder.reuse.config.unknownCollection':\n 'Wiederverwendbare Elemente: „{component}.{relationProp}“ verweist auf die Sammlung „{collection}“, die dieses Projekt nicht definiert.',\n 'builder.reuse.config.noBlocksField':\n 'Wiederverwendbare Elemente: Die Sammlung „{collection}“ hinter „{component}.{relationProp}“ hat kein Block-Feld (Komposition), sodass die Einbettung nichts einbinden kann.',\n 'builder.reuse.config.ambiguousInference':\n 'Wiederverwendbare Elemente: {count} Komponenten haben die Form einer wiederverwendbaren Einbettung ({components}). Ein Projekt hat genau eine wiederverwendbare Einbettung, deshalb rät das Studio nicht — deklarieren Sie sie in studio.config als reuse: { component: \\'<id>\\' }. Bis dahin sind die Wiederverwendungs-Gesten deaktiviert.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Auth / errors\n // ─────────────────────────────────────────────────────────────────────────\n 'auth.signIn': 'Anmelden',\n // EC-397 — the engine sign-in screen (`SignInView`/`SignInScreen`).\n 'auth.signIn.heading': 'Bei {productName} anmelden',\n 'auth.signIn.headingCreate': 'Konto erstellen',\n 'auth.signIn.subtext.continue': 'Weiter zu {project}.',\n 'auth.signIn.subtext.register': 'Registrieren für {project}.',\n 'auth.signIn.subtext.generic': 'Melden Sie sich mit Ihrem Studio-Konto an.',\n 'auth.signIn.emailLabel': 'E-Mail',\n 'auth.signIn.emailPlaceholder': 'name@beispiel.de',\n 'auth.signIn.passwordLabel': 'Passwort',\n 'auth.signIn.submit': 'Anmelden',\n 'auth.signIn.submitCreate': 'Konto erstellen',\n 'auth.signIn.submitting': 'Anmeldung läuft…',\n 'auth.signIn.submittingCreate': 'Konto wird erstellt…',\n 'auth.signIn.toggle.firstTime': 'Zum ersten Mal bei dieser Bereitstellung?',\n 'auth.signIn.toggle.alreadyHave': 'Sie haben bereits ein Konto für diese Bereitstellung?',\n 'auth.signIn.toggle.signIn': 'Anmelden',\n 'auth.signIn.toggle.createAccount': 'Konto erstellen',\n 'auth.signIn.devAccounts.title': 'Playground-Modus — vorbereitete Entwicklungskonten',\n // EC-397 — engine-classified sign-in failures (the EC-362/EC-363 reason\n // codes). Each message MUST stay byte-identical to the auth-adapter copy it\n // localizes: `signInErrorMessageKey` (lib/auth-errors.ts) recognizes a\n // failure by exact EN-message match, so a reworded adapter message simply\n // falls back to the raw English until re-synced here —\n // `lib/auth-errors.test.ts` pins the sync against the real classifier.\n 'auth.signIn.error.invalidCredentials': 'E-Mail-Adresse oder Passwort ist falsch.',\n 'auth.signIn.error.invalidCredentialsSignUp':\n 'Diese E-Mail-Adresse oder dieses Passwort kann nicht verwendet werden (Passwort zu kurz?).',\n 'auth.signIn.error.accountExists': 'Für diese E-Mail-Adresse gibt es bereits ein Konto. Bitte melden Sie sich an.',\n 'auth.signIn.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Sie nicht anmelden: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` für diese Bereitstellung aus und versuchen Sie es erneut. (Die Bereitstellungsprüfung meldet dasselbe.)',\n 'auth.signIn.error.notInvited':\n 'Diese Bereitstellung ist nur auf Einladung zugänglich. Bitten Sie eine Administratorin oder einen Administrator, Ihre E-Mail-Adresse einzuladen, und erstellen Sie dann Ihr Konto.',\n 'auth.signIn.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Anmeldeversuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'auth.signIn.error.serverError':\n 'Anmeldung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.serverErrorSignUp':\n 'Registrierung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.unavailable': 'Die Anmeldung ist derzeit nicht verfügbar.',\n 'auth.signIn.error.playgroundSignUp':\n 'Die Registrierung ist im Playground-Modus nicht verfügbar — verwenden Sie die unten aufgeführten Entwicklungskonten.',\n // EC-397 — root-route boot states (`createStudioRootRoute`).\n 'auth.boot.checkingSession': 'Sitzung wird geprüft…',\n 'error.dismiss': 'Fehler schließen',\n // EC-403 — the blocking session-expired re-auth overlay\n // (`session-expired-overlay.tsx`), raised app-wide when any operation fails\n // the session-expired predicate; re-auth happens in place, no navigation.\n 'error.sessionExpiredTitle': 'Sie wurden abgemeldet',\n 'error.sessionExpired':\n 'Sie wurden abgemeldet, daher werden Ihre letzten Änderungen nicht gespeichert. Melden Sie sich erneut an, um weiterzuarbeiten — Ihre ungespeicherten Änderungen bleiben genau hier erhalten.',\n\n // EC-494 — Betriebs-Fehler, die die Operations-Grenze überqueren. Bezeichner\n // (Operationsnamen, Entitätsarten, Dokumentschlüssel, Feldnamen) bleiben unübersetzt.\n // EC-494 — die Titel der Fehler-Badges im Banner.\n 'operations.errorLabel.validation': 'Konnte nicht gespeichert werden',\n 'operations.errorLabel.not-found': 'Nicht gefunden',\n 'operations.errorLabel.conflict': 'Existiert bereits',\n 'operations.errorLabel.backend-unavailable': 'Verbindungsproblem',\n 'operations.errorLabel.unauthorized': 'Nicht erlaubt',\n 'operations.errorLabel.unknown': 'Etwas ist schiefgelaufen',\n 'operations.error.invalidInput': 'Die Eingabe für „{operation}“ ist ungültig.',\n 'operations.error.notFound': 'Kein {entity} für „{target}“ gefunden.',\n 'operations.error.conflict': '„{target}“ steht im Konflikt mit einem vorhandenen Datensatz.',\n 'operations.error.backendUnavailable': 'Das Persistenz-Backend ist nicht erreichbar.',\n 'operations.error.unauthorized': 'Die Operation „{operation}“ wurde vom Autorisierungs-Hook abgelehnt.',\n 'operations.error.unknown': 'Es ist ein unbekannter Fehler bei der Operation aufgetreten.',\n 'operations.error.documentSchemaViolation': 'Das Dokument „{collection}:{id}“ verletzt das Schema seiner Sammlung.',\n 'operations.error.strictReferencesBlockDelete':\n '„{target}“ kann nicht gelöscht werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockDeleteOne':\n '„{target}“ kann nicht gelöscht werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublish':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublishOne':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n 'operations.errorDetail.andMore': ' und {count} weitere',\n\n // EC-494 — Fehler von Inhaltsabfragen (Filterleiste + Listing-Hinweis im Canvas).\n // „filterable“, „asc“, „desc“, „in“, „empty“ sind Schlüsselwörter aus der Konfiguration\n // und bleiben wörtlich stehen.\n 'content.queryError.nonFilterableField':\n 'Das Feld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.unknownField': 'Das Feld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.unknownCollection': 'Die Sammlung \"{collection}\" ist nicht definiert.',\n 'content.queryError.filterShape':\n 'Der Filter für \"{field}\" muss ein Skalar oder ein Operator-Objekt sein.',\n 'content.queryError.filterNoOperators': 'Der Filter für \"{field}\" enthält keine Operatoren.',\n 'content.queryError.unknownOperator':\n 'Unbekannter Filteroperator \"{operator}\" auf \"{field}\" — das Vokabular ist genau {vocabulary}.',\n 'content.queryError.operatorInRequiresArray':\n 'Der Operator \"in\" auf \"{field}\" erwartet ein Array aus Skalaren.',\n 'content.queryError.operatorRequiresString':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen Zeichenkettenwert.',\n 'content.queryError.operatorEmptyRequiresBoolean':\n 'Der Operator \"empty\" auf \"{field}\" erwartet einen Wahrheitswert (true = ist leer).',\n 'content.queryError.operatorRequiresScalar':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen skalaren Wert.',\n 'content.queryError.sortNotFilterable':\n 'Das Sortierfeld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.sortUnknownField':\n 'Das Sortierfeld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.sortDirection': 'Die Sortierrichtung muss \"asc\" oder \"desc\" sein.',\n 'content.queryError.limitPositiveInteger': 'Das Limit muss eine positive ganze Zahl sein.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — collection list / view bar / filters / cells\n // ─────────────────────────────────────────────────────────────────────────\n // EC-412 — the CMS section landing (`cms-index.tsx`): the collection grid.\n 'cms.index.heading': 'Inhalt',\n 'cms.index.description':\n 'Schemabasierte Sammlungen. Öffnen Sie eine Sammlung, um ihre Dokumente als Tabelle zu durchsuchen und im Detail-Editor zu bearbeiten.',\n 'cms.index.fieldCount.one': '{count} Feld',\n 'cms.index.fieldCount.other': '{count} Felder',\n 'cms.index.singleDocument': 'Einzeldokument',\n 'cms.list.new': 'Neu',\n 'cms.list.newPage': 'Neue Seite',\n 'cms.list.newNamed': 'Neu: {noun}',\n 'cms.list.moreActions': 'Weitere Aktionen',\n 'cms.list.rowActionsColumnLabel': 'Zeilenaktionen',\n 'cms.list.rowActionsLabel': 'Aktionen für {id}',\n 'cms.list.rowAction.open': 'Öffnen',\n 'cms.list.import': 'Importieren…',\n 'cms.list.export': 'Exportieren',\n 'cms.list.forReview': 'Zur Überprüfung',\n 'cms.list.count': '{count} {noun}',\n 'cms.list.countFiltered': '{visible} von {total} {noun}',\n 'cms.list.emptyNone': 'Noch keine {noun}.',\n 'cms.list.emptyFiltered': 'Keine Dokumente entsprechen den Filtern der aktuellen Ansicht.',\n 'cms.list.selectAll': 'Alle Dokumente in der Ansicht auswählen',\n 'cms.list.selectRow': '{title} auswählen',\n 'cms.list.column.title': 'Titel',\n 'cms.list.column.state': 'Status',\n // EC-448 — Icon-Header der fixierten Status-Punkt-Spalte (nur `aria-label`/`title`).\n 'cms.list.column.statusHeader': 'Status',\n 'cms.list.column.url': 'URL',\n // EC-445 — reserved date pseudo-columns (participate in the columns model).\n 'cms.list.column.updatedAt': 'Aktualisiert',\n 'cms.list.column.publishedAt': 'Veröffentlicht',\n // EC-346 — the State column's per-row badge (`DocStateBadge`); was hardcoded\n // English. Distinct keys from `cms.editor.draftState`/`publishedState` (title\n // case, editor header) and `cms.filter.state.*`/`cms.reference.*Badge` (filter\n // builder / reference dialog) — same words, different UI contexts (EC-241).\n 'cms.docState.published': 'veröffentlicht',\n // EC-448 — dritter Dok-Status (veröffentlicht mit unveröffentlichten Änderungen).\n 'cms.docState.changed': 'geändert',\n 'cms.docState.draft': 'Entwurf',\n // EC-479 — ohne Projektsprachen kann keine CMS-Sitzung geöffnet werden.\n 'cms.session.noLocales.title': 'Dieses Projekt deklariert keine Sprachen',\n 'cms.session.noLocales.body':\n 'Fügen Sie Ihrer Projektkonfiguration eine locales-Liste hinzu. Die Standardsprache ist der Schlüssel, unter dem Ihre Inhalte gespeichert werden — das Studio wählt sie deshalb nicht für Sie aus.',\n 'cms.list.view.all': 'Alle Einträge',\n 'cms.list.unknownCollection': 'Unbekannte Sammlung {id}.',\n 'cms.list.import.noId': '(keine ID)',\n 'cms.list.display.ariaLabel': 'Anzeigeoptionen',\n 'cms.list.display.title': 'Anzeige: Layout und Spalten',\n 'cms.list.display.layout': 'Layout',\n 'cms.list.display.flatList': 'Flache Liste',\n 'cms.list.display.pageHierarchy': 'Seitenhierarchie',\n 'cms.list.display.columns': 'Spalten · die erste sichtbare ist der Titel',\n 'cms.list.display.toggleColumn': 'Spalte {field} umschalten',\n 'cms.list.display.titleTag': '(Titel)',\n 'cms.list.display.moveColumnUp': 'Spalte {field} nach oben verschieben',\n 'cms.list.display.moveColumnDown': 'Spalte {field} nach unten verschieben',\n 'cms.list.bulk.count': '{count} ausgewählt',\n 'cms.list.bulk.publish': 'Veröffentlichen',\n 'cms.list.bulk.unpublish': 'Zurückziehen',\n 'cms.list.bulk.noSettableFields': 'Keine filterbaren Skalarfelder zum Setzen.',\n 'cms.list.bulk.setField': 'Feld setzen',\n 'cms.list.bulk.clearSelection': 'Auswahl aufheben',\n // EC-494 — die beiden studio-seitigen Fehlergründe je Eintrag.\n 'cms.list.bulk.error.notInSession': 'Das Dokument ist nicht mehr in der Sitzung.',\n 'cms.list.bulk.error.notValidToPublish':\n 'Das Dokument ist nicht gültig zum Veröffentlichen.',\n 'cms.list.bulk.set.set': 'Setze',\n 'cms.list.bulk.set.to': 'auf',\n 'cms.list.bulk.set.valueAria': 'Wert setzen',\n 'cms.list.bulk.set.apply': 'Auf Auswahl anwenden',\n 'cms.list.bulk.report.verb.setField': '{field} setzen',\n 'cms.list.bulk.report.verb.publish': 'veröffentlichen',\n 'cms.list.bulk.report.verb.unpublish': 'zurückziehen',\n 'cms.list.bulk.report.verb.delete': 'löschen',\n 'cms.list.bulk.report.summary': 'Sammelaktion {action}: {succeeded} erfolgreich',\n 'cms.list.bulk.report.failedSuffix': ', {count} fehlgeschlagen',\n 'cms.list.bulk.report.failedBadge': '{count} fehlgeschlagen',\n 'cms.list.bulk.report.done': 'fertig',\n 'cms.list.bulk.error.invalidSetField': 'Feld-Setzen fehlt Feld/Wert oder das Sammlungsschema.',\n 'cms.filter.button': 'Filter',\n 'cms.filter.summaryMultiple': '{count} Filter',\n 'cms.filter.clearAria': 'Filter löschen',\n 'cms.filter.refineSession': 'Verfeinern · diese Sitzung',\n 'cms.filter.clearAll': 'Alle löschen',\n 'cms.filter.add': 'Filter hinzufügen',\n 'cms.filter.andHint': 'Alle Bedingungen müssen zutreffen (UND)',\n 'cms.filter.fieldAria': 'Filterfeld',\n 'cms.filter.operatorAria': 'Filteroperator',\n 'cms.filter.remove': 'Filter entfernen',\n // EC-494 — die beiden studio-seitigen Klausel-Probleme.\n 'cms.filter.issue.stateOperator': 'Status-Filter unterstützen nur \"eq\" und \"in\".',\n 'cms.filter.issue.stateValue': 'Der Status muss \"draft\" oder \"published\" sein.',\n 'cms.filter.valueAria': 'Filterwert',\n 'cms.filter.valueListPlaceholder': 'Wert, Wert, …',\n 'cms.filter.pickRelation': 'Auswählen…',\n 'cms.filter.state.published': 'veröffentlicht',\n 'cms.filter.state.draft': 'Entwurf',\n // Operator labels (EC-345) — keyed by operator AND field type in `operatorLabelKey`.\n 'cms.filter.op.contains': 'enthält',\n 'cms.filter.op.equals': 'ist gleich',\n 'cms.filter.op.is': 'ist',\n 'cms.filter.op.startsWith': 'beginnt mit',\n 'cms.filter.op.endsWith': 'endet mit',\n 'cms.filter.op.isAnyOf': 'ist einer von',\n 'cms.filter.op.lessThan': 'kleiner als',\n 'cms.filter.op.atMost': 'höchstens',\n 'cms.filter.op.greaterThan': 'größer als',\n 'cms.filter.op.atLeast': 'mindestens',\n 'cms.filter.op.on': 'am',\n 'cms.filter.op.before': 'vor',\n 'cms.filter.op.onOrBefore': 'am oder vor',\n 'cms.filter.op.after': 'nach',\n 'cms.filter.op.onOrAfter': 'am oder nach',\n 'cms.filter.op.isEmpty': 'ist leer',\n 'cms.filter.op.isNotEmpty': 'ist nicht leer',\n 'cms.cell.fallbackTitle': 'Zeigt {source} (Ersatz) — noch keine {requested}-Übersetzung. Zum Übersetzen bearbeiten.',\n 'cms.cell.richText': 'Rich Text',\n 'cms.cell.itemCount.one': '{count} Element',\n 'cms.cell.itemCount.other': '{count} Elemente',\n 'cms.cell.object': 'Objekt',\n 'cms.cell.blockCount.one': '{count} Block',\n 'cms.cell.blockCount.other': '{count} Blöcke',\n 'cms.cell.createsVariantTitle': 'Beim Speichern wird die {locale}-Übersetzung dieses Feldes erstellt.',\n 'cms.cell.newVariant': 'neu',\n 'cms.cell.editAria': '{field} von {title} bearbeiten',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — document detail editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.editor.notFoundTitle': 'Nicht gefunden',\n 'cms.editor.backToList': 'Zurück zu {label}',\n 'cms.editor.publishFailed': 'Veröffentlichung fehlgeschlagen.',\n 'cms.editor.publishFailedReason': 'Veröffentlichung fehlgeschlagen: {error}',\n 'cms.editor.saveFailed': 'Speichern fehlgeschlagen',\n 'cms.editor.unsavedChanges': 'Nicht gespeicherte Änderungen',\n 'cms.editor.saved': 'Gespeichert',\n 'cms.editor.saving': 'Wird gespeichert…',\n // 0.0.42 (round 3): the standalone \"View live\" button is retired — opening the live\n // page now hangs off the header URL row's leaf segment. These strings still drive the\n // leaf's tooltip (open-live target + the published-gating reasons).\n 'cms.editor.openLiveUrl': '{path} öffnen',\n 'cms.editor.loadingLiveUrl': 'Live-URL wird geladen…',\n 'cms.editor.publishToViewLive': 'Veröffentlichen, um die Live-Seite zu sehen',\n 'cms.editor.setFrontendUrlHint': 'frontendUrl in elytra.config.ts setzen, um zu aktivieren',\n 'cms.editor.switchToDraftToPublish': 'Zum Entwurf wechseln, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.one': '{count} Problem beheben, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.other': '{count} Probleme beheben, um zu veröffentlichen',\n 'cms.editor.publishing': 'Wird veröffentlicht…',\n 'cms.editor.publishedState': 'Veröffentlicht',\n 'cms.editor.publish': 'Veröffentlichen',\n 'cms.editor.moreActions': 'Weitere Aktionen',\n 'cms.editor.unpublish': 'Veröffentlichung zurückziehen',\n // 0.0.39 — the Publish button is a split button: primary Publish (stay) + a\n // \"Publish & close\" dropdown item (publish, then return to the list). Replaces the\n // retired EC-316 \"Save & close\" (autosave made a bare \"Save\" meaningless).\n 'cms.editor.publishActions': 'Veröffentlichungsoptionen',\n 'cms.editor.publishAndClose': 'Veröffentlichen & schließen',\n 'cms.editor.saveAndClose': 'Speichern & schließen',\n 'cms.editor.duplicateCreated': 'Duplikat als neuer Entwurf erstellt',\n 'cms.editor.discardDraft': 'Änderungen verwerfen',\n 'cms.editor.discardDraftUpToDateHint':\n 'Der Entwurf entspricht der veröffentlichten Version — es gibt nichts zu verwerfen.',\n 'cms.editor.switchToDraftToDiscard': 'Zum Entwurf wechseln, um Änderungen zu verwerfen',\n 'cms.editor.discardDraftTitle': 'Entwurfsänderungen verwerfen?',\n 'cms.editor.discardDraftDescription':\n 'Dadurch wird der Entwurf auf den aktuell veröffentlichten Inhalt zurückgesetzt. Ihre unveröffentlichten Änderungen werden ersetzt — ein Schnappschuss bleibt im Versionsverlauf erhalten.',\n 'cms.editor.discardDraftConfirm': 'Änderungen verwerfen',\n 'cms.editor.discardingDraft': 'Änderungen werden verworfen…',\n 'cms.editor.draftState': 'Entwurf',\n 'cms.editor.publishToViewPublished': 'Dieses Dokument veröffentlichen, um die veröffentlichte Version zu sehen',\n 'cms.editor.publishedReadOnlyBanner': 'Sie sehen die veröffentlichte Version – schreibgeschützt.',\n 'cms.editor.switchToDraft': 'Zum Entwurf wechseln',\n 'cms.editor.loadingPublishedVersion': 'Veröffentlichte Version wird geladen…',\n 'cms.editor.noPublishedVersion': 'Keine veröffentlichte Version für dieses Dokument gefunden.',\n 'cms.editor.unsavedChangesGuard':\n 'Sie haben nicht gespeicherte Änderungen an diesem Datensatz. Speichern Sie sie vor dem Verlassen oder verwerfen Sie sie.',\n 'cms.editor.publishUnpublishedRefsTitle': 'Mit nicht veröffentlichten Verweisen veröffentlichen?',\n 'cms.editor.publishUnpublishedRefsDescription':\n 'Diese Seite verweist auf Inhalte, die noch nicht veröffentlicht sind – diese Abschnitte bleiben auf der Live-Seite leer, bis Sie sie ebenfalls veröffentlichen.',\n 'cms.editor.publishAlsoHasIssues.one':\n 'Diese Seite hat außerdem {count} weiteres ungelöstes Problem – siehe Tab „Probleme“.',\n 'cms.editor.publishAlsoHasIssues.other':\n 'Diese Seite hat außerdem {count} weitere ungelöste Probleme – siehe Tab „Probleme“.',\n 'cms.editor.publishAnyway': 'Trotzdem veröffentlichen',\n 'cms.editor.readOnlyBadge': 'schreibgeschützt',\n // EC-318 — connected fields: the per-field localization connection affordance that\n // replaces EC-176's passive \"showing EN\" text. Shown only on a localized field in a\n // non-base locale (never on the base locale, non-localized fields, or read-only).\n 'cms.editor.localeFollowsBase': 'Folgt {base}',\n 'cms.editor.localeFollowsHint':\n 'Dieses Feld folgt dem Wert für {base}. Geben Sie eine Übersetzung ein oder übernehmen Sie zunächst eine Kopie aus {base}.',\n 'cms.editor.localeFillFromBase': 'Aus {base} übernehmen',\n 'cms.editor.localeTranslated': 'Übersetzt',\n 'cms.editor.localeTranslatedHint':\n 'Für {locale} übersetzt. Wenn Sie den Text leeren, folgt er wieder dem Wert für {base} — eine absichtlich leere Übersetzung wird nicht unterstützt.',\n 'cms.editor.localeResetToBase': 'Auf {base} zurücksetzen',\n 'cms.editor.localeResetTitle': 'Auf den Wert für {base} zurücksetzen?',\n 'cms.editor.localeResetDescription':\n 'Dadurch wird die Übersetzung dieses Felds für {locale} entfernt. Bis zu einer neuen Übersetzung folgt es wieder dem Wert für {base}.',\n 'cms.editor.localeResetConfirm': 'Auf {base} zurücksetzen',\n 'cms.editor.issuesPane': 'Probleme',\n 'cms.editor.detailsPane': 'Details',\n 'cms.editor.servedAt': 'Ausgeliefert unter {path}',\n 'cms.editor.slugUrlHint':\n 'Die URL wird aus dem Slug (und dem übergeordneten Element) abgeleitet – Slug festlegen, um sie zu definieren.',\n 'cms.editor.embedUnpublishedIssue':\n 'Bindet das wiederverwendbare Element „{title}“ ein, das nicht veröffentlicht ist – es bleibt auf der Live-Seite leer, bis Sie es veröffentlichen.',\n 'cms.editor.embedMissingIssue':\n 'Bindet ein wiederverwendbares Element ein, das nicht mehr existiert („{id}“) – Einbettung korrigieren oder entfernen.',\n 'cms.editor.defaultGroup': 'Felder',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — issues pane (validation)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issues.none': 'Keine Probleme',\n 'cms.issues.satisfied': 'Dieses Dokument entspricht dem Sammlungsschema.',\n // EC-443: value fix — the calque „Zu label“ read as broken German.\n 'cms.issues.goToField': 'Zum Feld „{field}“',\n // EC-443 — issue-card titles (one per CmsIssueCode, see messages.en.ts).\n 'cms.issue.duplicate-collection': 'Doppelte Sammlung',\n 'cms.issue.duplicate-field': 'Doppeltes Feld',\n 'cms.issue.unknown-collection': 'Unbekannte Sammlung',\n 'cms.issue.invalid-collection-config': 'Ungültige Sammlungskonfiguration',\n 'cms.issue.invalid-field-config': 'Ungültige Feldkonfiguration',\n 'cms.issue.reserved-field-name': 'Reservierter Feldname',\n 'cms.issue.missing-required-field': 'Pflichtfeld fehlt',\n 'cms.issue.invalid-field-value': 'Ungültiger Wert',\n 'cms.issue.invalid-field-value.warning': 'Wert prüfen',\n 'cms.issue.unknown-relation-target': 'Fehlende Referenz',\n 'cms.issue.unpublished-relation-target': 'Unveröffentlichte Referenz',\n 'cms.issue.cardinality-violation': 'Falsche Anzahl von Werten',\n 'cms.issue.unknown-asset': 'Fehlende Mediendatei',\n 'cms.issue.duplicate-document': 'Doppelter Eintrag',\n 'cms.issue.unknown-locale': 'Unbekannte Sprache',\n 'cms.issue.missing-localized-value': 'Fehlende Übersetzung',\n 'cms.issue.route-conflict': 'URL-Konflikt',\n 'cms.issue.redirect-loop': 'Weiterleitungsschleife',\n 'cms.issue.unknown-route-target': 'Fehlende Seite',\n 'cms.issue.hierarchy-cycle': 'Schleife in der Seitenhierarchie',\n 'cms.issue.document-nesting-depth': 'Inhalt zu tief verschachtelt',\n 'cms.issue.singleton-document-drift': 'Mehr als ein Dokument',\n 'cms.issue.duplicate-alias': 'Slot doppelt belegt',\n 'cms.issue.unknown-alias': 'Unbekannter Slot',\n 'cms.issue.unfilled-slot': 'Leerer Slot',\n 'cms.issue.custom-validation': 'Validierungsregel',\n 'cms.issue.unaddressable-url': 'Nicht erreichbare URL',\n 'cms.issue.unknown-version': 'Unbekannte Version',\n // EC-443 — issue-card body templates (see messages.en.ts for the fallback contract).\n 'cms.issueBody.missing-required-field': 'Das Pflichtfeld „{field}“ ist nicht ausgefüllt.',\n 'cms.issueBody.missing-localized-value.default':\n 'Das Pflichtfeld „{field}“ hat keinen Wert für die Standardsprache „{locale}“.',\n 'cms.issueBody.missing-localized-value.fallback':\n 'Das Feld „{field}“ hat keinen Wert für „{locale}“ und keinen Fallback.',\n 'cms.issueBody.unknown-asset':\n 'Das Feld „{field}“ verweist auf die unbekannte Mediendatei „{asset}“.',\n 'cms.issueBody.document-nesting-depth.error':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und überschreitet damit das Speicherlimit von {limit} Ebenen – teilen Sie ihn in kleinere verknüpfte Einträge auf.',\n 'cms.issueBody.document-nesting-depth.warning':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und nähert sich dem Speicherlimit von {limit} Ebenen.',\n 'cms.issueBody.hierarchy-cycle':\n 'Dieser Eintrag ist sein eigener Vorfahr – die Kette der übergeordneten Einträge bildet eine Schleife.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS validation issue BODIES (EC-487)\n //\n // EC-443 localized the issue TITLES (`cms.issue.<code>` above); the bodies were\n // still built as English template literals inside `packages/core`, which cannot\n // import this catalog. EC-478 solved that shape for `CustomizationIssue` by having\n // the producer carry a message KEY; these are the same carriage for\n // `CmsValidationIssue`, so the rail foot, the Issues pane and the for-review lane\n // never mix a German title with an English body.\n //\n // The English source is a SECOND copy of what the producer builds — the tie between\n // them is `lib/persona/cms-issue-i18n.test.ts`, which renders every real producer's\n // issue through this catalog and asserts byte-identity. Interpolated values are\n // IDENTIFIERS (field/collection/route/locale ids, patterns, counts) and stay\n // unlocalized in every language.\n //\n // `cms.issueDetail.*` are FRAGMENTS spliced into the sentences above.\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issueMessage.duplicateDocument': 'Doppeltes Dokument „{id}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.fieldDetail': 'Das Feld „{field}“ {detail}.',\n 'cms.issueMessage.fieldReason': 'Feld „{field}“: {reason}',\n 'cms.issueMessage.propDetail': 'Die Eigenschaft „{field}“ {detail}.',\n 'cms.issueMessage.propReason': 'Eigenschaft „{field}“: {reason}',\n 'cms.issueMessage.relationUnknownTargetCollection': 'Das Beziehungsfeld „{field}“ zielt auf die unbekannte Sammlung „{target}“.',\n 'cms.issueMessage.relationSingleValued': 'Das Beziehungsfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.relationNotAReference': 'Das Beziehungsfeld „{field}“ enthält einen Wert, der keine Dokumentreferenz ist.',\n 'cms.issueMessage.relationWrongCollection': 'Das Beziehungsfeld „{field}“ zeigt auf die Sammlung „{got}“, zielt aber auf „{target}“.',\n 'cms.issueMessage.relationMissingDocument': 'Das Beziehungsfeld „{field}“ verweist auf das fehlende Dokument „{id}“ in „{target}“.',\n 'cms.issueMessage.relationUnpublishedDocument': 'Das Beziehungsfeld „{field}“ verweist auf das unveröffentlichte Dokument „{id}“ in „{target}“ — auf der veröffentlichten Website erscheint dort ein Platzhalter.',\n 'cms.issueMessage.assetNoAssetCollection': 'Das Medienfeld „{field}“ benötigt eine Mediensammlung, es ist aber keine registriert.',\n 'cms.issueMessage.assetSingleValued': 'Das Medienfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.assetExpectsId': 'Das Medienfeld „{field}“ erwartet eine Medien-id.',\n 'cms.issueMessage.assetUnknown': 'Das Medienfeld „{field}“ verweist auf das unbekannte Medium „{asset}“.',\n 'cms.issueMessage.requiredFieldMissing': 'Das Pflichtfeld „{field}“ fehlt.',\n 'cms.issueMessage.requiredPropMissing': 'Die Pflichteigenschaft „{field}“ fehlt.',\n 'cms.issueMessage.perLocaleMapValue': 'Das Feld „{field}“ erwartet einen Wert vom Typ „{type}“, enthält aber eine Sprach-Zuordnung (Schlüssel: {keys}) — sprachabhängige Werte liegen im „localized“-Bereich des Dokuments, niemals im Feldwert selbst.',\n 'cms.issueMessage.preConvergenceV1': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (die v1-Hülle „{ version, doc }“) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.preConvergenceBareBlocks': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (eine blanke Komponentenliste) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.preConvergencePlaintext': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (unstrukturierter Alttext) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.richTextHoldsArray': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein Array.',\n 'cms.issueMessage.richTextHoldsBareDoc': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein blankes Rich-Text-Dokument ohne die Hülle „{ version: 2, content }“.',\n 'cms.issueMessage.richTextHoldsObject': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein Objekt mit den Schlüsseln „{keys}“.',\n 'cms.issueMessage.unknownCollectionForDocument': 'Das Dokument „{id}“ verweist auf die unbekannte Sammlung „{collection}“.',\n 'cms.issueMessage.localizedPlainValue': 'Das sprachabhängige Feld „{field}“ enthält einen einfachen Wert im gemeinsamen „values“-Bereich — erwartet werden sprachabhängige Werte unter „localized.<locale>.{field}“. Der einfache Wert dient nur noch als letzte Rückfallebene.',\n 'cms.issueMessage.requiredLocalizedMissingDefault': 'Das sprachabhängige Pflichtfeld „{field}“ fehlt für die Standardsprache „{locale}“.',\n 'cms.issueMessage.localizedNoValueNoFallback': 'Das sprachabhängige Feld „{field}“ hat keinen Wert für die Sprache „{locale}“ und keine Rückfallebene.',\n 'cms.issueMessage.hierarchyCycle': 'Das Dokument „{id}“ ist sein eigener Vorfahre — die Elternkette bildet einen Zyklus.',\n 'cms.issueMessage.nestingDepthError': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und überschreitet damit das Schreib-Limit des Backends von {limit} Ebenen — selbst das Falten der Tiefe beim Speichern rettet ein so tiefes Dokument nicht, der Schreibvorgang kann nicht ausgeführt werden. Teilen Sie es in kleinere verknüpfte Dokumente auf.',\n 'cms.issueMessage.nestingDepthWarning': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und nähert sich damit dem Limit des Backends von {limit} Ebenen. Flachen Sie den tiefsten Pfad ab, bevor er weiter wächst.',\n 'cms.issueMessage.propFilterable': 'Die Komponenten-Eigenschaft „{field}“ deklariert „filterable“, was nur für Dokumentfelder gilt.',\n 'cms.issueMessage.propUnique': 'Die Komponenten-Eigenschaft „{field}“ deklariert „unique“, was nur über die Dokumente einer Sammlung hinweg gilt.',\n 'cms.issueMessage.singletonDrift': 'Das Einzelstück „{collection}“ hat {count} Dokumente — es sollte genau eines haben. Behalten Sie das richtige Dokument und entfernen Sie die übrigen, damit es sich direkt öffnen lässt.',\n 'cms.issueMessage.unknownAlias.one': 'Ein Dokument ist dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.unknownAlias.other': '{count} Dokumente sind dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.duplicateAlias': '{count} Dokumente teilen sich den Alias „{alias}“ in „{collection}“. Jeder Slot darf nur einem Dokument zugewiesen sein — weisen Sie neu zu oder entfernen Sie die Duplikate.',\n 'cms.issueMessage.unfilledSlot': 'Der Slot „{slot}“ von „{collection}“ hat noch kein Dokument. Weisen Sie eines zu, damit Code, der „{slot}“ auflöst, es findet.',\n 'cms.issueMessage.reservedFieldName': 'Der Feldname „{field}“ ist reserviert (der Diskriminator selbstbeschreibender Knoten).',\n 'cms.issueMessage.duplicateSelectOption': 'Doppelte Auswahloption „{option}“ im Feld „{field}“.',\n 'cms.issueMessage.duplicateObjectField': 'Doppeltes Feld „{field}“ im Objektfeld „{parent}“.',\n 'cms.issueMessage.assetCollectionSingleton': 'Die Mediensammlung „{collection}“ kann kein Einzelstück sein.',\n 'cms.issueMessage.unknownPresentationBodyField': 'Die Sammlung „{collection}“ deklariert „{field}“ als Inhaltsfeld der Darstellung, definiert dieses Feld aber nicht.',\n 'cms.issueMessage.duplicateCollectionField': 'Doppeltes Feld „{field}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.duplicateCollectionId': 'Doppelte Sammlungs-id „{collection}“.',\n 'cms.issueMessage.unknownLocale': 'Die Sprache „{locale}“ gehört nicht zum konfigurierten Sprachsatz.',\n 'cms.issueMessage.unknownVersion': 'Für das Dokument „{id}“ ist keine Version {version} aufgezeichnet.',\n 'cms.issueMessage.routeConflict': 'Die Routen „{first}“ und „{second}“ treffen auf dieselben URLs zu (Muster „{pattern}“).',\n 'cms.issueMessage.redirectLoop': 'Die Weiterleitungskette ab „{from}“ bildet eine Schleife (…{chain}).',\n 'cms.issueMessage.allDynamicShadowsMount': 'Die Route „{route}“ („{pattern}“) besteht nur aus dynamischen Segmenten und trifft damit auf JEDE URL mit {depth} Segmenten zu — die Hierarchie-Einhängung „{mountRoute}“ („{mountPattern}“) wird auf dieser Ebene nur dort herangezogen, wo die Route kein Dokument auflöst. Nichts ist dadurch grundsätzlich unerreichbar, aber der Vorrang entscheidet sich dort am INHALT statt an den Routen: {shadowed} werden stillschweigend verdeckt, sobald ein zusammengesetzter Pfad mit {claimed} kollidiert — und keine Seite erfährt davon. Geben Sie der Route ein statisches Präfix („/blog/:slug“), damit sie einen Namensraum beansprucht statt einer ganzen Ebene.',\n 'cms.issueMessage.mountCannotServe': 'Die Hierarchie-Einhängung „{route}“ („{pattern}“) kann niemals ein Dokument ausliefern: {why}. Der Resolver überspringt eine solche Einhängung stillschweigend, deshalb liefert jede URL unter „{space}“ einen 404, ohne dass ein Hinweis erscheint.',\n 'cms.issueMessage.deadCatchAll': 'Die Route „{route}“ („{pattern}“) liefert in beide Richtungen nichts: Sie endet in einem Catch-all, deshalb verwirft sie jeder Router — ihr Präfix enthält aber ein dynamisches Segment ({dynamic}), deshalb wird auch keine Hierarchie-Einhängung daraus gebaut. Das Präfix einer Einhängung muss statisch sein — deklarieren Sie eine Einhängung pro Sprache (`{ pattern: \\'/de/:path*\\', locale: \\'de\\' }`) oder entfernen Sie die Route.',\n 'cms.issueMessage.mountConflict': '{opening} — Einhängungen werden in Deklarationsreihenfolge aufgelöst, nicht nach Spezifität; deshalb beansprucht „{earlier}“ (Sammlung „{earlierCollection}“) dort jede URL, die der eigene Baum auflöst, und Dokumente aus „{laterCollection}“ sind an diesen URLs unerreichbar.',\n 'cms.issueMessage.routeBoundDocumentNotFound': 'Das an die Route gebundene Dokument „{collection}:{id}“ wurde nicht gefunden.',\n 'cms.issueMessage.routeParamNotCaptured': 'Die Route „{route}“ bindet ihr Dokument an den URL-Parameter „:{param}“, den das Muster „{pattern}“ nicht erfasst.',\n 'cms.issueMessage.collectionNotDefined': 'Die Sammlung „{collection}“ ist nicht definiert.',\n 'cms.issueMessage.unaddressableLocaleCollision': 'Keine URL erreicht „{id}“ in der Sprache „{locale}“: die Adresse wäre „{url}“, aber das erste Segment „{segment}“ ist ein deklarierter Sprachcode — die Website liest diese URL daher als Sprache „{segment}“, Pfad „{readPath}“. Benennen Sie dieses Segment um — an diesem Dokument oder an der übergeordneten Seite, zu der es gehört — damit es nicht mit einem Sprachcode kollidiert.',\n 'cms.issueDetail.expectsString': 'erwartet eine Zeichenkette',\n 'cms.issueDetail.expectsRichText': 'erwartet Rich-Text-Inhalt (eine Zeichenkette oder einen Rich-Text-Wert)',\n 'cms.issueDetail.expectsNumber': 'erwartet eine Zahl',\n 'cms.issueDetail.expectsBoolean': 'erwartet einen Wahrheitswert',\n 'cms.issueDetail.expectsIsoDate': 'erwartet ein ISO-8601-Datum (z. B. „2026-09-18“)',\n 'cms.issueDetail.expectsDate': 'erwartet ein Datum (ISO-8601-Zeichenkette oder Epochenzahl)',\n 'cms.issueDetail.valueNotAmongOptions': 'hat den Wert „{value}“, der nicht zu seinen Optionen gehört',\n 'cms.issueDetail.expectsObjectList': 'erwartet eine Liste von Objekten',\n 'cms.issueDetail.expectsObject': 'erwartet ein Objekt',\n 'cms.issueDetail.implausibleYear': 'hat das Jahr {year}, was unbeabsichtigt wirkt (erwartet wird eine vierstellige Jahreszahl)',\n 'cms.issueDetail.dateBoundNotADate': 'deklariert {bound} `{declared}` auf einem Datumsfeld, was kein Datum ist — verwenden Sie eine ISO-8601-Zeichenkette wie „1900-01-01“',\n 'cms.issueDetail.earlierThanMin': 'liegt vor {min}',\n 'cms.issueDetail.laterThanMax': 'liegt nach {max}',\n 'cms.issueDetail.stringBoundOffDate': 'deklariert {bound} „{declared}“ als Zeichenkette, was nur auf einem Datumsfeld sinnvoll ist — verwenden Sie eine Zahl',\n 'cms.issueDetail.shorterThanMinLength': 'ist kürzer als die Mindestlänge {min}',\n 'cms.issueDetail.longerThanMaxLength': 'ist länger als die Höchstlänge {max}',\n 'cms.issueDetail.doesNotMatchPattern': 'entspricht nicht dem Muster {pattern}',\n 'cms.issueDetail.lessThanMin': 'ist kleiner als das Minimum {min}',\n 'cms.issueDetail.greaterThanMax': 'ist größer als das Maximum {max}',\n 'cms.issueDetail.fewerThanMinItems': 'hat weniger als {min} Einträge',\n 'cms.issueDetail.moreThanMaxItems': 'hat mehr als {max} Einträge',\n 'cms.issueDetail.duplicateValue': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits',\n 'cms.issueDetail.duplicateValueForLocale': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits für die Sprache „{locale}“',\n 'cms.issueDetail.singleValuedManyTargets': 'ist einwertig, hat aber {count} Ziele',\n 'cms.issueDetail.notADocumentReference': 'enthält einen Wert, der keine Dokumentreferenz ist',\n 'cms.issueDetail.pointsAtOtherCollection': 'zeigt auf die Sammlung „{got}“, zielt aber auf „{target}“',\n 'cms.issueDetail.expectsAssetIdString': 'erwartet eine Medien-id als Zeichenkette',\n 'cms.issueDetail.shadowedRootDocuments': 'die WURZEL-Dokumente von „{collection}“ unter „{space}“',\n 'cms.issueDetail.shadowedNestedDocuments': '„{collection}“-Dokumente, die {levels} Ebenen unter „{space}“ verschachtelt sind',\n 'cms.issueDetail.claimedBySlug': 'einem Slug aus „{collection}“',\n 'cms.issueDetail.claimedByOwnDocument': 'dem eigenen Dokument der Route',\n 'cms.issueDetail.mountCollectionNotDeclared': 'die Sammlung „{collection}“ ist nicht deklariert',\n 'cms.issueDetail.mountCollectionNotHierarchical': 'die Sammlung „{collection}“ hat keine `parent`-Selbstbeziehung und damit keine verschachtelten Pfade zum Zusammensetzen',\n 'cms.issueDetail.mountsSamePath': 'Die Hierarchie-Einhängungen „{earlier}“ („{earlierPattern}“) und „{later}“ („{laterPattern}“) sind beide unter „{space}“ eingehängt',\n 'cms.issueDetail.mountsNested': 'Die Hierarchie-Einhängung „{later}“ („{laterPattern}“) liegt innerhalb von „{earlier}“ („{earlierPattern}“), das zuerst deklariert ist und ebenfalls „{space}“ vollständig beansprucht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — details pane (slot + sidebar fields)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.details.slot': 'Slot',\n 'cms.details.noSlot': '— Kein Slot —',\n 'cms.details.slotInUse': ' — belegt',\n 'cms.details.slotHint':\n 'Ein stabiler Name, mit dem die Website dieses Dokument findet (z. B. das Hauptmenü), unabhängig davon, welcher genaue Eintrag es ist. Ein Dokument pro Slot.',\n 'cms.details.empty': 'Keine Dokumenteigenschaften festzulegen.',\n // The composed-URL affordance (EC-315 \"hybrid split\") — moved to the detail-editor\n // HEADER under the title in 0.0.42 (round 3); ancestor-document segments link to\n // their editors, static route segments are plain, and the leaf carries the live link.\n 'cms.details.urlCurrent': 'diese Seite',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — import dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.import.title': 'Dokumente importieren',\n 'cms.import.invalidJson': 'Eingabe ist kein gültiges JSON.',\n 'cms.import.imported': '{count} importiert',\n 'cms.import.rejected': '{count} abgelehnt:',\n 'cms.import.confirm': 'Importieren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — versions (compare + pane)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.version.paneLabel': 'Versionen',\n 'cms.version.compare': 'Vergleichen',\n 'cms.version.closeCompare': 'Vergleich schließen',\n 'cms.version.loadingHistory': 'Versionsverlauf wird geladen…',\n // Shown in the lazy boundary while the version-compare chunk loads (EC-322).\n 'cms.version.loadingCompare': 'Vergleich wird geladen…',\n 'cms.version.versionUnavailable': 'Diese Version ist nicht mehr verfügbar. Wählen Sie eine andere zum Vergleichen.',\n 'cms.version.currentDraft': 'Aktueller Entwurf',\n 'cms.version.unsavedEdits': 'nicht gespeicherte Änderungen',\n 'cms.version.baseCaption': 'Basis',\n 'cms.version.compareWithCaption': 'Vergleichen mit',\n 'cms.version.compareNewer': 'Neuere Version vergleichen',\n 'cms.version.compareOlder': 'Ältere Version vergleichen',\n 'cms.version.restoreWholeTitle': 'Gesamtes Dokument auf v{version} wiederherstellen',\n 'cms.version.restoreVersion': 'Version wiederherstellen',\n 'cms.version.noDifferences': 'Keine Unterschiede',\n 'cms.version.changeSummary.one': '{count} Änderung · {unchanged} unverändert',\n 'cms.version.changeSummary.other': '{count} Änderungen · {unchanged} unverändert',\n 'cms.version.comparingPastVersionsHint':\n ' · zwei frühere Versionen werden verglichen – „Vergleichen mit“ auf „Aktueller Entwurf“ setzen, um wiederherzustellen',\n 'cms.version.versionsIdentical': 'Diese beiden Versionen sind identisch.',\n 'cms.version.beforeVersion': 'Vorher · v{version}',\n 'cms.version.afterTarget': 'Nachher · {target}',\n 'cms.version.restoreField': '{field} aus v{version} wiederherstellen',\n 'cms.version.restoreFieldLocale': '{field} ({locale}) aus v{version} wiederherstellen',\n 'cms.version.textUnchanged': 'Text unverändert – Formatierung oder Leerzeichen unterscheiden sich.',\n 'cms.version.restoreBlock': 'Diesen Block aus v{version} wiederherstellen',\n 'cms.version.nestedContentChanged': 'Verschachtelter Inhalt geändert.',\n 'cms.version.blockAdded': 'Block hinzugefügt.',\n 'cms.version.blockRemoved': 'Block entfernt.',\n 'cms.version.emptyValue': 'leer',\n 'cms.version.richText': 'Rich Text',\n 'cms.version.itemCount.one': '{count} Element',\n 'cms.version.itemCount.other': '{count} Elemente',\n 'cms.version.objectValue': 'Objekt',\n 'cms.version.kindNew': 'neu',\n 'cms.version.kindRemoved': 'entfernt',\n 'cms.version.unpublishedChanges': 'Nicht veröffentlichte Änderungen',\n 'cms.version.notPublishedYet': 'Noch nicht veröffentlicht',\n 'cms.version.fixValidationToPublish': 'Validierungsprobleme des Dokuments beheben, um zu veröffentlichen',\n 'cms.version.liveUpToDate': 'Die Live-Version ist aktuell – nichts zu veröffentlichen.',\n 'cms.version.comparingHint':\n 'Vergleich von v{base} → {target}. Klicken Sie auf eine Version, um sie als Basis festzulegen.',\n 'cms.version.noVersionsYet': 'Noch keine veröffentlichten Versionen.',\n 'cms.version.baseBadge': 'Basis',\n 'cms.version.comparedBadge': 'Verglichen',\n 'cms.version.compareWithDraft': 'Diese Version mit dem aktuellen Entwurf vergleichen',\n 'cms.version.compareVersionLabel': 'v{version} vergleichen',\n 'cms.version.rowActionsLabel': 'Aktionen für v{version}',\n 'cms.version.switchToDraftToRestore': 'Zum Entwurf wechseln, um wiederherzustellen',\n 'cms.version.restore': 'Wiederherstellen',\n // EC-199 provenance — a subtle marker on versions recorded from AI-authored content.\n 'cms.version.aiAuthored': 'KI',\n 'cms.version.aiAuthoredTitle': 'Mit dem KI-Assistenten erstellt',\n\n // EC-317 — descriptor lane, unified/side-by-side toggle, truncation, zebra.\n 'cms.version.fieldColumnHeader': 'Feld',\n 'cms.version.viewSideBySide': 'Nebeneinander',\n 'cms.version.viewUnified': 'Zusammengeführt',\n 'cms.version.viewModeAriaLabel': 'Darstellung des Vergleichs',\n 'cms.version.unifiedCaption': 'v{base} → {target}',\n 'cms.version.showMore': 'Mehr anzeigen',\n 'cms.version.showLess': 'Weniger anzeigen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — delete/unpublish reference-confirm dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.reference.documentCount': '{count} Dokumente',\n 'cms.reference.confirmTitle': '{action}: {subject}?',\n 'cms.reference.checking': 'Eingehende Verweise werden geprüft…',\n 'cms.reference.checkUnavailable':\n 'Eingehende Verweise konnten nicht geprüft werden – der Verweisindex ist nicht erreichbar.',\n 'cms.reference.blocked.one':\n 'Blockiert: {count} strikter Verweis verhindert dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.blocked.other':\n 'Blockiert: {count} strikte Verweise verhindern dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.notReferenced': 'Nirgendwo referenziert.',\n 'cms.reference.permanentDelete.one': 'Dadurch wird das Dokument dauerhaft gelöscht.',\n 'cms.reference.permanentDelete.other': 'Dadurch werden die {count} ausgewählten Dokumente dauerhaft gelöscht.',\n 'cms.reference.canProceed':\n 'Sie können {action} – {summary} zeigen dann einen Fallback, bis das behoben ist. Jede davon wird zu einem sichtbaren Validierungsproblem.',\n 'cms.reference.proceedUnavailable':\n 'Fortfahren ist möglich, aber die betroffenen Stellen können derzeit nicht aufgelistet werden.',\n 'cms.reference.proceedAnyway': 'Trotzdem {action}',\n 'cms.reference.verb.unpublish': 'zurückziehen',\n 'cms.reference.verb.delete': 'löschen',\n 'cms.reference.placeCount.one': '{count} Stelle',\n 'cms.reference.placeCount.other': '{count} Stellen',\n 'cms.reference.bulkSummary': '{count} Dokumente sind betroffen; {places}',\n 'cms.reference.atLocation': 'bei',\n 'cms.reference.strictBadge': 'strikt',\n 'cms.reference.draftBadge': 'Entwurf',\n 'cms.reference.publishedBadge': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — field controls / scalar editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.field.rendererCrashed': 'Benutzerdefinierter Renderer abgestürzt — Standardsteuerung wird angezeigt.',\n 'cms.field.noRenderer': 'Kein Feld-Renderer für Steuerung „{control}“ registriert.',\n 'cms.field.itemActions': 'Elementaktionen',\n 'cms.field.moveUp': 'Nach oben',\n 'cms.field.moveDown': 'Nach unten',\n 'cms.field.collapseAll': 'Alle einklappen',\n 'cms.field.expandAll': 'Alle ausklappen',\n 'cms.field.noItems': 'Keine Elemente',\n 'cms.field.dragToReorder': 'Zum Umsortieren ziehen',\n 'cms.field.addItem': 'Element hinzufügen',\n 'cms.field.value': 'Wert',\n 'cms.field.valuePlaceholder': 'Wert',\n 'cms.field.colour': 'Farbe',\n // EC-315 — the smart slug / URL-segment control.\n 'cms.field.slug.regenerate': 'Slug neu erzeugen',\n 'cms.field.slug.taken': 'Wird bereits von „{title}“ verwendet',\n 'cms.field.slug.takenGeneric': 'Dieser Slug wird bereits verwendet.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — relation picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.relation.change': 'Ändern',\n 'cms.relation.openTitle': '{title} öffnen',\n 'cms.relation.pick': 'Auswählen',\n 'cms.relation.pickTitle.one': 'Verknüpftes Dokument auswählen',\n 'cms.relation.pickTitle.many': 'Verknüpfte Dokumente auswählen',\n 'cms.relation.fromCollection': 'Aus {collection}',\n 'cms.relation.selectMultipleHint': 'Mehrfachauswahl',\n 'cms.relation.noDocuments': 'Keine Dokumente in {collection}.',\n 'cms.relation.selectedCount': '{count} ausgewählt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — asset field + asset picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.asset.rejected.one': '„{name}“ übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.rejected.other': '{count} Dateien übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.dropToUpload': 'Zum Hochladen ablegen',\n 'cms.asset.selectOrDrop': 'Bild auswählen oder ablegen',\n 'cms.asset.selectAsset': 'Medien auswählen',\n 'cms.asset.altLabel': 'Alt:',\n 'cms.asset.notSet': 'nicht gesetzt',\n 'cms.asset.imageOptions.title': 'Bildoptionen',\n 'cms.asset.imageOptions.description': 'Fokuspunkt und Metadaten — für jede Verwendung dieses Bildes gemeinsam.',\n 'cms.asset.focalPoint': 'Fokuspunkt',\n 'cms.asset.resetToCentre': 'Auf Mitte zurücksetzen',\n 'cms.asset.focalPointHint': 'Klicken oder ziehen Sie auf das Bild, um den Fokuspunkt für den Zuschnitt festzulegen.',\n 'cms.asset.noMetaFields':\n 'Für die Medien-Sammlung sind keine bearbeitbaren Metadatenfelder deklariert. Fügen Sie Felder (z. B. {code1}, {code2}) im Code hinzu.',\n 'cms.asset.pickTitle': 'Medien auswählen',\n 'cms.asset.pickDescription': 'Aus der Medienbibliothek des Projekts auswählen.',\n 'cms.asset.noProject': 'Die Medienbibliothek benötigt ein Projekt — diese CMS-Sitzung hat keins.',\n 'cms.asset.restoreDialogSize': 'Dialoggröße wiederherstellen',\n 'cms.asset.maximizeDialog': 'Dialog maximieren',\n 'cms.asset.searchPlaceholder': 'Medien suchen…',\n 'cms.asset.loading': 'Medien werden geladen…',\n 'cms.asset.loadError': 'Medien konnten nicht geladen werden.',\n 'cms.asset.noMatches': 'Keine Medien entsprechen Ihrer Suche.',\n 'cms.asset.empty': 'Noch keine Medien — Dateien hier ablegen oder hochladen.',\n 'cms.asset.noAltText': 'Kein Alt-Text',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Assets rail (EC-319: the universal list + grid/list toggle + detail surface)\n // ─────────────────────────────────────────────────────────────────────────\n 'assets.error.loadFailed': 'Medien konnten nicht geladen werden',\n 'assets.loading': 'Medien werden geladen…',\n 'assets.uploads.heading': 'Uploads',\n 'assets.upload.phase.queued': 'in Warteschlange',\n 'assets.upload.phase.preparing': 'wird vorbereitet',\n 'assets.upload.phase.uploading': 'wird hochgeladen',\n 'assets.upload.phase.confirming': 'Metadaten werden gespeichert',\n 'assets.upload.phase.done': 'fertig',\n 'assets.upload.phase.failed': 'fehlgeschlagen',\n 'assets.upload.attempt': 'Versuch {count}',\n 'assets.upload.dismissLabel': 'Upload verwerfen',\n 'assets.viewToggle.groupLabel': 'Listen- oder Rasteransicht',\n 'assets.viewToggle.list': 'Listenansicht',\n 'assets.viewToggle.grid': 'Rasteransicht',\n 'assets.detail.metadataHeading': 'Metadaten',\n 'assets.references.buttonLabel': 'Verweise',\n 'assets.references.title': 'Verwendet von — {name}',\n 'assets.references.description':\n 'Alles, was dieses Medienelement referenziert, mit Direktlinks zum genauen Feld oder Knoten.',\n 'assets.delete.raceError.one':\n 'Das Medienelement wird jetzt an {count} Stelle referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.raceError.other':\n 'Das Medienelement wird jetzt an {count} Stellen referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.title': '{filename} löschen?',\n 'assets.delete.description':\n 'Entfernt die gespeicherten Daten und den Metadatensatz. Dies kann nicht rückgängig gemacht werden.',\n 'assets.delete.checking': 'Verweise werden geprüft…',\n 'assets.delete.inUse.one': 'An {count} Stelle verwendet',\n 'assets.delete.inUse.other': 'An {count} Stellen verwendet',\n 'assets.delete.brokenWarning':\n 'Beim Löschen bleiben diese Verweise defekt — sie erscheinen als Validierungsprobleme.',\n 'assets.delete.noReferences': 'Keine Verweise gefunden. Kann gefahrlos gelöscht werden.',\n 'assets.delete.confirmAnyway': 'Trotzdem löschen',\n 'assets.focalPoint.noPreview':\n 'Keine Bildvorschau — laden Sie ein Bildmedium hoch oder wählen Sie eines aus, um einen Fokuspunkt festzulegen.',\n 'assets.focalPoint.setLabel': 'Fokuspunkt festlegen',\n // Vorschauen erzeugen — EC-400 Thumbnail-Nachrüstung.\n 'assets.generatePreviews.button': 'Vorschauen erzeugen',\n 'assets.generatePreviews.hint':\n 'Vorhandene Bilder auf leichtere Vorschau-Thumbnails herunterskalieren und so Egress sparen. Bereits vorhandene werden übersprungen.',\n 'assets.generatePreviews.running': 'Vorschauen werden erzeugt… {done}/{total}',\n 'assets.generatePreviews.done': '{count} Vorschauen erzeugt',\n 'assets.generatePreviews.none': 'Vorschauen bereits aktuell',\n 'assets.generatePreviews.cancelled': 'Abgebrochen — {count} erzeugt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Users (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'users.checkingAccess': 'Zugriff wird geprüft…',\n 'users.restrictedTitle': 'Nur für Administratoren',\n 'users.restrictedBody':\n 'Zum Verwalten von Benutzern und Rollen ist die Administratorrolle für diese Bereitstellung erforderlich. Bitten Sie einen Administrator, Ihnen Zugriff zu gewähren.',\n 'users.loadFailed': 'Benutzer konnten nicht geladen werden',\n 'users.loading': 'Benutzer werden geladen…',\n // Built-in users rail — its schema labels resolve through the catalog (msgLabel),\n // so a consumer's translation catalog localizes the rail with no per-rail override.\n 'users.rail.label': 'Benutzer',\n 'users.rail.labelSingular': 'Benutzer',\n 'users.field.name.label': 'Name',\n 'users.field.email.label': 'E-Mail',\n 'users.field.role.label': 'Rolle',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Invites (EC-324) — invite-based onboarding, admin action in the users rail\n // ─────────────────────────────────────────────────────────────────────────\n 'invites.invite': 'Benutzer einladen',\n 'invites.pending': 'Ausstehend:',\n 'invites.dialogTitle': 'Benutzer einladen',\n 'invites.dialogBody':\n 'Die Person tritt bei, indem sie mit dieser E-Mail-Adresse ein Konto erstellt. Die offene Registrierung ist geschlossen — nur eingeladene Adressen können sich registrieren.',\n 'invites.emailLabel': 'E-Mail',\n 'invites.roleLabel': 'Rolle',\n 'invites.send': 'Einladung senden',\n 'invites.sending': 'Einladung wird gesendet…',\n 'invites.sent': '{email} wurde eingeladen.',\n 'invites.revoked': 'Die Einladung für {email} wurde widerrufen.',\n 'invites.revokeAria': 'Einladung für {email} widerrufen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Account settings (EC-240 H-tail) — the member's OWN record + credentials\n // ─────────────────────────────────────────────────────────────────────────\n 'account.loading': 'Konto wird geladen…',\n 'account.loadFailed': 'Ihr Konto konnte nicht geladen werden',\n 'account.notMemberTitle': 'Noch kein Zugriff',\n 'account.notMemberBody':\n 'Sie sind angemeldet, gehören dieser Bereitstellung aber noch nicht an. Bitten Sie einen Administrator, Ihnen eine Rolle zuzuweisen.',\n // Account rail schema labels resolve through the catalog (msgLabel), like the users rail.\n 'account.rail.label': 'Konto',\n 'account.rail.labelSingular': 'Konto',\n 'account.field.name.label': 'Name',\n 'account.field.avatar.label': 'Avatar-URL',\n 'account.field.avatar.hint': 'Ein Link zu Ihrem Profilbild.',\n 'account.field.email.label': 'E-Mail',\n 'account.field.role.label': 'Rolle',\n 'account.security.title': 'Anmeldung & Sicherheit',\n 'account.security.method': 'Sie melden sich mit Ihrer E-Mail-Adresse und Ihrem Passwort an.',\n 'account.password.current': 'Aktuelles Passwort',\n 'account.password.new': 'Neues Passwort',\n 'account.password.confirm': 'Neues Passwort bestätigen',\n 'account.password.change': 'Passwort ändern',\n 'account.password.changing': 'Passwort wird geändert…',\n 'account.password.changed': 'Ihr Passwort wurde geändert.',\n 'account.password.mismatch': 'Die neuen Passwörter stimmen nicht überein.',\n // EC-412 — engine-classified change-password failures (mirrors the EC-397\n // sign-in pattern; the EN copy is pinned to the auth-adapter constants).\n 'account.password.error.notSignedIn': 'Sie sind nicht angemeldet.',\n 'account.password.error.currentIncorrect': 'Ihr aktuelles Passwort ist falsch.',\n 'account.password.error.weakPassword': 'Wählen Sie ein stärkeres Passwort (mindestens 8 Zeichen).',\n 'account.password.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Versuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'account.password.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Ihr Passwort nicht ändern: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` aus.',\n 'account.password.error.serverError':\n 'Passwortänderung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'account.password.error.playgroundUnsupported':\n 'Die Passwortänderung ist im Playground-Modus nicht verfügbar.',\n // EC-416 — update-profile failures (not-authenticated reuses notSignedIn above).\n 'account.profile.error.unavailable': 'Die Profilaktualisierung ist derzeit nicht verfügbar.',\n 'account.profile.error.playgroundUnsupported':\n 'Die Profilbearbeitung ist im Playground-Modus nicht verfügbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Redirects (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'redirects.loadFailed': 'Weiterleitungen konnten nicht geladen werden',\n 'redirects.loading': 'Weiterleitungen werden geladen…',\n // Built-in redirects rail — schema labels via the catalog (msgLabel), see above.\n 'redirects.rail.label': 'Weiterleitungen',\n 'redirects.rail.labelSingular': 'Weiterleitung',\n 'redirects.field.from.label': 'Quelle',\n 'redirects.field.to.label': 'Ziel',\n 'redirects.field.permanent.label': 'Dauerhaft (301)',\n 'redirects.field.enabled.label': 'Aktiv',\n\n // ─────────────────────────────────────────────────────────────────────────\n // References panel\n // ─────────────────────────────────────────────────────────────────────────\n 'references.title': 'Verweise',\n 'references.hintOutbound': 'Worauf dieser Eintrag verweist – klicken, um zum Ziel oder zum genauen Feld zu springen.',\n 'references.emptyOutbound': 'Keine ausgehenden Verweise.',\n 'references.usedBy': 'Verwendet von',\n 'references.hintInbound':\n 'Alles, was auf diesen Eintrag verweist – klicken, um zum genauen Feld oder Knoten zu springen.',\n 'references.emptyInbound': 'Nirgendwo verwendet.',\n 'references.loading': 'Verweise werden geladen…',\n 'references.loadFailed': 'Verweise konnten nicht geladen werden',\n 'references.indexUnreachable': 'Der Verweisindex ist nicht erreichbar.',\n 'references.sectionLoadError': 'Dieser Abschnitt konnte nicht geladen werden: {error}',\n 'references.locationPrefix': 'in',\n 'references.badgeDraft': 'Entwurf',\n 'references.badgePublished': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Components registry browser\n // ─────────────────────────────────────────────────────────────────────────\n 'components.detail.notFound.title': 'Komponente nicht gefunden',\n 'components.detail.notFound.body': 'Keine Komponente mit der ID {id} registriert.',\n 'components.detail.notFound.back': 'Zurück zu Komponenten',\n 'components.detail.allComponents': 'Alle Komponenten',\n 'components.detail.designTokens': 'DESIGN-TOKENS',\n 'components.status.valid': 'gültig',\n 'components.status.incompatible': 'inkompatibel',\n 'components.status.invalid': 'ungültig',\n 'components.status.aria': 'Status: {status}',\n 'components.status.description.valid': 'Das Manifest ist registriert und eine Implementierung ist eingebunden.',\n 'components.status.description.incompatible':\n 'Das Manifest ist registriert, aber es ist keine Implementierung verfügbar — der Renderer zeigt einen Fallback.',\n 'components.status.description.invalid': 'Die Registry hat ein strukturiertes Problem für diese Komponente gemeldet.',\n 'components.index.title': 'Komponenten-Registry',\n 'components.index.subtitle':\n 'Durchsuchen Sie die Plattform-Primitive und die Komponenten dieses Projekts. Wählen Sie eine aus, um Manifest, Felder und Vorschau-Fixtures zu inspizieren.',\n 'components.index.stat.total': 'Komponenten',\n 'components.index.stat.totalHint': '{primitives} Primitive · {projects} Projekt',\n 'components.index.stat.valid': 'Gültig',\n 'components.index.stat.needAttention': 'Benötigt Aufmerksamkeit',\n 'components.index.stat.needAttentionHint': '{incompatible} inkompatibel · {invalid} ungültig',\n 'components.index.pickHint':\n 'Wählen Sie eine Komponente aus der Liste, um die Detailansicht zu öffnen — Manifest-Metadaten, den Prop- und Slot-Inspektor und den visuellen Fixture-Runner.',\n 'components.index.byCategory': 'Nach Kategorie',\n 'components.index.guide.title': 'Projektkomponenten registrieren',\n 'components.index.guide.badge': 'Anleitung',\n 'components.index.guide.intro':\n 'Komponenten sind Code und gehören Ihrem Repository. Registrieren Sie ein Manifest mit Eigenschaftsschemata, Standardwerten, Inspektor-Steuerelementen, Slots und Vorschauzuständen. Das Studio kann die Komponente anschließend durchsuchen, prüfen und anzeigen. Diese Anleitungen im Repository erklären die Einzelheiten:',\n 'components.index.guide.doc.authoring':\n 'So deklarieren und registrieren Sie eine Komponente, damit das Studio sie durchsuchen, prüfen und anzeigen kann.',\n 'components.index.guide.doc.fixtures':\n 'Deterministische Vorschauzustände erstellen — die Zustände, die in der Live-Vorschau dieser Ansicht erscheinen.',\n 'components.index.guide.doc.extensibility':\n 'Die Plattform erweitern: eigene Feldtypen, Datenquellen, Export-Ziele und Plugins.',\n 'components.index.guide.namespaceNote':\n 'Projektcode wird im Namensraum project.* registriert; Plattform-Primitive liegen unter base.*.',\n 'components.taxonomy.uncategorized': 'Ohne Kategorie',\n 'components.detail.tab.preview': 'Vorschau',\n 'components.detail.tab.manifest': 'Manifest',\n 'components.preview.reset': 'Zustand zurücksetzen',\n 'components.preview.resetProps': 'Eigenschaften zurücksetzen',\n 'components.preview.edited': 'bearbeitet',\n 'components.preview.incompatibleNote':\n 'Es ist keine Implementierung verbunden — der Renderer zeigt seine Ersatzdarstellung.',\n 'components.preview.serverOnlyTitle': 'Nur serverseitige Komponente',\n 'components.preview.serverOnlyBody':\n 'Diese Komponente kann nicht im Client gerendert werden und daher nicht in der Live-Vorschau laufen. In Ihren Auslieferungs-Frames wird sie weiterhin gerendert.',\n 'components.preview.slotsNote':\n 'Der Slot-Inhalt der Vorschau folgt dem ausgewählten Zustand. Die vollständige Slot-Bearbeitung erfolgt auf der Arbeitsfläche eines Dokuments — übertragen Sie diese Kombination mit „In Dokument verwenden…“ in ein Dokument.',\n 'components.preview.unavailableTitle': 'Vorschau nicht verfügbar',\n 'components.preview.propNeedsDocument':\n 'In einem Dokument bearbeitbar — im Komponenten-Preview fehlt der Workspace-Kontext.',\n 'components.transfer.action': 'In Dokument verwenden…',\n 'components.transfer.title': '„{name}“ in einem Dokument verwenden',\n 'components.transfer.description':\n 'Erstellen Sie einen neuen Entwurf oder fügen Sie die Komponente dem Block-Feld eines vorhandenen Dokuments hinzu und öffnen Sie es anschließend.',\n 'components.transfer.intoField': 'in',\n 'components.transfer.newDocument': 'Neues Dokument in {collection}',\n 'components.transfer.orExisting': 'oder einem vorhandenen Dokument hinzufügen',\n 'components.transfer.noTargets': 'Kein Dokumentfeld kann diese Komponente aufnehmen.',\n 'components.fieldInspector.props': 'Props',\n 'components.fieldInspector.noProps': 'Diese Komponente deklariert keine bearbeitbaren Props.',\n 'components.fieldInspector.slots': 'Slots',\n 'components.fieldInspector.noSlots': 'Diese Komponente hat keine Slots.',\n 'components.fieldInspector.inline': 'inline',\n 'components.fieldInspector.default': 'Standard',\n 'components.fieldInspector.allows': 'erlaubt',\n 'components.fixtureRunner.statesAria': 'Fixture-Zustände',\n 'components.preview.breakpointAria': 'Vorschaubreite',\n 'components.browser.searchPlaceholder': 'Komponenten suchen…',\n 'components.browser.searchAria': 'Komponenten suchen',\n 'components.browser.namespaceAria': 'Nach Namespace filtern',\n 'components.browser.all': 'Alle',\n 'components.browser.primitives': 'Primitive',\n 'components.browser.project': 'Projekt',\n 'components.browser.noMatchQuery': 'Keine Komponenten entsprechen „{query}“.',\n 'components.browser.noMatchFilters': 'Keine Komponenten entsprechen den ausgewählten Filtern.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Extensions (marketplace)\n // ─────────────────────────────────────────────────────────────────────────\n 'extensions.tab.marketplace': 'Marktplatz',\n 'extensions.tab.installed': 'Installiert',\n 'extensions.tab.registered': 'Registriert',\n 'extensions.header.title': 'Erweiterbarkeit',\n 'extensions.header.subtitle':\n 'Komponenten · Feldtypen · Datenquellen · Asset-Speicher · Export-Ziele · Vorlagen · Hooks',\n 'extensions.search.placeholder': 'Erweiterungen suchen…',\n 'extensions.search.aria': 'Erweiterungen suchen',\n 'extensions.token.placeholder': 'Token für private Registry',\n 'extensions.token.unlocked': 'freigeschaltet',\n 'extensions.empty.noMatch.title': 'Keine Erweiterungen gefunden',\n 'extensions.empty.noMatch.body': 'Versuchen Sie einen anderen Suchbegriff.',\n 'extensions.listing.private': 'privat',\n 'extensions.listing.noDescription': 'Keine Beschreibung vorhanden.',\n 'extensions.listing.unknownAuthor': 'Unbekannter Autor',\n 'extensions.action.installed': 'Installiert',\n 'extensions.action.install': 'Installieren',\n 'extensions.error.accessDenied': 'Zugriff verweigert — ein gültiges Token ist erforderlich.',\n 'extensions.error.installFailed': 'Installation fehlgeschlagen.',\n 'extensions.empty.installed.title': 'Noch nichts installiert',\n 'extensions.empty.installed.body':\n 'Installieren Sie eine Erweiterung aus dem Marktplatz, um zu sehen, was sie hier beiträgt.',\n 'extensions.contrib.components': 'Komponenten',\n 'extensions.contrib.fieldTypes': 'Feldtypen',\n 'extensions.contrib.dataSources': 'Datenquellen',\n 'extensions.contrib.assetStorage': 'Asset-Speicher',\n 'extensions.contrib.exportTargets': 'Export-Ziele',\n 'extensions.contrib.templates': 'Vorlagen',\n 'extensions.contrib.hooks': 'Hooks',\n 'extensions.registered.intro':\n 'Aktive Registries auf dem Plugin-Host. Eingebaute Funktionen sind immer vorhanden; das Installieren einer Erweiterung ergänzt sie.',\n 'extensions.registered.components.title': 'Komponenten',\n 'extensions.registered.components.empty': 'Keine Projektkomponenten registriert.',\n 'extensions.registered.fieldTypes.title': 'Feldtypen',\n 'extensions.registered.dataSources.title': 'Datenquellenarten',\n 'extensions.registered.assetStorage.title': 'Asset-Speicher-Backends',\n 'extensions.registered.assetStorage.empty': 'Keine Speicher-Adapter installiert.',\n 'extensions.registered.exportTargets.title': 'Export-Ziele',\n 'extensions.registered.hookPoints.title': 'Hook-Punkte',\n 'extensions.kind.plugin': 'Plugin',\n 'extensions.kind.componentPackage': 'Komponenten',\n 'extensions.kind.fieldType': 'Feldtyp',\n 'extensions.kind.dataSource': 'Datenquelle',\n 'extensions.kind.assetStorage': 'Asset-Speicher',\n 'extensions.kind.exportTarget': 'Export-Ziel',\n 'extensions.kind.template': 'Vorlage',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Settings\n // ─────────────────────────────────────────────────────────────────────────\n 'settings.identity.title': 'Identität',\n 'settings.identity.name': 'Name',\n 'settings.identity.urlKey': 'URL-Schlüssel',\n 'settings.locales.title': 'Sprachen',\n 'settings.locales.configuredCount': '{count} konfiguriert',\n 'settings.locales.configured': 'Konfigurierte Sprachen',\n 'settings.locales.defaultSuffix': ' · Standard',\n 'settings.environments.title': 'Umgebungen & Export',\n 'settings.environments.label': 'Umgebungen',\n 'settings.exportTarget': 'Export-Ziel',\n\n // ─────────────────────────────────────────────────────────────────────────\n // App-views shell\n // ─────────────────────────────────────────────────────────────────────────\n 'appViews.singleton.opening': '{label} wird geöffnet…',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Builder / canvas\n // ─────────────────────────────────────────────────────────────────────────\n // Shown in the lazy boundary while the page-builder canvas chunk loads (EC-322).\n 'builder.canvas.loading': 'Page Builder wird geladen…',\n 'builder.blocksPanel.title': 'Block einfügen',\n 'builder.blocksPanel.addsInto': 'Fügt ein in {destination}.',\n 'builder.blocksPanel.searchPlaceholder': 'Blöcke suchen…',\n 'builder.blocksPanel.searchAria': 'Blöcke suchen',\n 'builder.blocksPanel.layoutHelpers': 'Layout-Helfer',\n 'builder.blocksPanel.noAllowed': 'Keine zulässigen Komponenten gefunden.',\n 'builder.blocksPanel.noMatch': 'Keine Komponenten passen zu „{query}“.',\n 'builder.blocksPanel.insertTileAria': '{title} — {variant} einfügen',\n 'builder.blocksPanel.copyExactAria': 'Exakte Konfiguration kopieren — {title} ({variant})',\n 'builder.blocksPanel.copyExactConfiguration': 'Exakte Konfiguration kopieren',\n 'builder.blocksPanel.previewFailed': 'Vorschau fehlgeschlagen: {error}',\n // EC-439: one tile per component; a 2+-fixture component gets a variants chip + flyout.\n 'builder.blocksPanel.insertComponentAria': '{title} einfügen',\n 'builder.blocksPanel.variantCount': '{count} Varianten',\n 'builder.blocksPanel.variantsAria': '{count} Varianten von {title} anzeigen',\n 'builder.blocksPanel.variantsHeading': 'Varianten',\n 'builder.blocksPanel.variantIssuesHint': 'Einige Varianten haben Validierungsprobleme.',\n 'builder.pageTree.title': 'Seitenstruktur',\n 'builder.pageTree.hiddenByCondition': 'Durch Bedingung ausgeblendet',\n 'builder.pageTree.conditional': 'Bedingt',\n 'builder.pageTree.addChild': 'Unterelement hinzufügen',\n 'builder.pageTree.moreActions': 'Weitere Aktionen',\n 'builder.pageTree.moveUp': 'Nach oben',\n 'builder.pageTree.moveDown': 'Nach unten',\n 'builder.clipboard.paste': 'Einfügen',\n 'builder.clipboard.cut': 'Ausschneiden',\n 'builder.clipboard.writeError': 'Konnte nicht in die Zwischenablage schreiben: {detail}',\n 'builder.clipboard.rootCannotBeCut': 'Das Seiten-Wurzelelement kann nicht ausgeschnitten werden.',\n 'builder.clipboard.copied': '{label} kopiert',\n 'builder.clipboard.cutNotice': '{label} ausgeschnitten',\n 'builder.clipboard.pastedInto': '{summary} · in {destination}',\n 'builder.clipboard.issueComponent': 'Komponente',\n 'builder.clipboard.issueBinding': 'Bindung',\n // EC-494 — Zwischenablage-Fehler aus der Engine plus der studio-seitige Einfüge-Diff.\n 'builder.clipboard.error.corruptJson': 'Der Inhalt der Zwischenablage ist kein gültiges JSON: {detail}',\n 'builder.clipboard.error.notEnvelope':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment-Umschlag.',\n 'builder.clipboard.error.foreignFormat':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment (erwartetes Format \"{expected}\").',\n 'builder.clipboard.error.versionNewer':\n 'Die Fragmentversion {version} ist neuer als von diesem Studio unterstützt (Version {supported}).',\n 'builder.clipboard.error.versionUnsupported':\n 'Die Fragmentversion {version} wird nicht unterstützt (dieses Studio liest Version {supported}).',\n 'builder.clipboard.error.invalidPayload':\n 'Das Fragment der Zwischenablage verletzt das Fragment-Schema.',\n 'builder.clipboard.error.nodeNotFound': 'In der Komposition existiert kein Knoten \"{nodeId}\".',\n 'builder.clipboard.error.fixtureNotFound':\n 'Die Komponente \"{component}\" deklariert kein Fixture namens \"{fixture}\".',\n 'builder.clipboard.issue.unresolvedBinding':\n 'Die Datenquelle \"{sourceId}\" ist in diesem Projekt nicht verfügbar.',\n 'builder.clipboard.issue.missingComponent':\n 'Die Komponente \"{componentId}\" ist in diesem Projekt nicht registriert.',\n 'builder.clipboard.summary.pasted': 'Eingefügt',\n 'builder.clipboard.summary.pastedWith': 'Eingefügt — {parts}',\n 'builder.clipboard.summary.bindingUnresolvedOne': '{count} Bindung nicht aufgelöst',\n 'builder.clipboard.summary.bindingsUnresolved': '{count} Bindungen nicht aufgelöst',\n 'builder.clipboard.summary.componentMissingOne': '{count} Komponente fehlt',\n 'builder.clipboard.summary.componentsMissing': '{count} Komponenten fehlen',\n 'builder.reuse.makeReusable': 'Wiederverwendbar machen',\n 'builder.reuse.detachToCopy': 'Als Kopie loslösen',\n 'builder.reuse.defaultElementName': 'Wiederverwendbares Element',\n 'builder.reuse.madeReusablePublished': '„{name}“ wiederverwendbar gemacht und veröffentlicht.',\n 'builder.reuse.madeReusablePublishFailed':\n '„{name}“ wiederverwendbar gemacht, aber die Veröffentlichung ist fehlgeschlagen — veröffentlichen Sie es aus seinem Dokument.',\n 'builder.reuse.madeReusableDraft':\n '„{name}“ wiederverwendbar gemacht (Entwurf) — veröffentlichen Sie es, um es auf Live-Seiten anzuzeigen.',\n 'builder.reuse.noTargetToDetach': 'Dieses Element hat kein Ziel zum Loslösen.',\n 'builder.reuse.noContentToDetach': 'Das referenzierte Element hat keinen Inhalt zum Loslösen.',\n 'builder.reuse.detachedToCopy': 'Als bearbeitbare Kopie losgelöst — die Live-Verknüpfung ist getrennt.',\n 'builder.reuse.makeReusableDescription':\n 'Verschiebt den ausgewählten Block in ein neues wiederverwendbares Element und bettet es hier ein. Dasselbe Element kann dann auf jeder Seite eingebettet werden. Veröffentlichen Sie es jetzt, um den Abschnitt überall sichtbar zu halten, oder speichern Sie es als Entwurf, um zuerst weiter zu bearbeiten.',\n 'builder.reuse.nameLabel': 'Name',\n 'builder.reuse.namePlaceholder': 'Reservierungs-CTA',\n 'builder.reuse.saveDraft': 'Entwurf speichern',\n 'builder.reuse.publish': 'Veröffentlichen',\n 'builder.inspector.emptySelection':\n 'Wählen Sie ein Element in der Struktur oder auf der Arbeitsfläche, um seine Eigenschaften zu bearbeiten.',\n 'builder.inspector.title': 'Inspektor',\n 'builder.inspector.unknownComponent': 'unbekannte Komponente',\n 'builder.inspector.noManifest':\n 'Für diese Komponente ist kein Manifest registriert, ihre Eigenschaften können nicht bearbeitet werden.',\n 'builder.inspector.props': 'Eigenschaften',\n 'builder.inspector.noEditableProps': 'Keine bearbeitbaren Eigenschaften.',\n 'builder.inspector.slots': 'Slots',\n 'builder.inspector.slotsHint': 'Slot-Elemente in der Seitenstruktur hinzufügen oder umsortieren.',\n 'builder.inspector.propertiesPane': 'Eigenschaften',\n 'builder.inspector.invalidValue':\n 'Der Wert entspricht nicht dem Schema der Eigenschaft — die Arbeitsfläche verwendet den Standardwert.',\n 'builder.inspector.invalidJson': 'Ungültiges JSON',\n 'builder.layout.title': 'Layout',\n 'builder.layout.direction': 'Richtung',\n 'builder.layout.vertical': 'Vertikal',\n 'builder.layout.horizontal': 'Horizontal',\n 'builder.layout.columns': 'Spalten',\n 'builder.layout.columnCount.one': '{count} Spalte',\n 'builder.layout.columnCount.other': '{count} Spalten',\n 'builder.layout.gap': 'Abstand',\n 'builder.layout.alignment': 'Ausrichtung',\n 'builder.layout.onPhones': 'Auf Smartphones',\n 'builder.layout.stack': 'Stapeln',\n 'builder.layout.keepColumns': 'Spalten beibehalten',\n 'builder.layout.gapStep.hairline': 'Haarlinie',\n 'builder.layout.gapStep.extraSmall': 'Sehr klein',\n 'builder.layout.gapStep.small': 'Klein',\n 'builder.layout.gapStep.medium': 'Mittel',\n 'builder.layout.gapStep.large': 'Groß',\n 'builder.layout.gapStep.extraLarge': 'Sehr groß',\n 'builder.layout.gapStep.huge': 'Riesig',\n 'builder.layout.align.start': 'Anfang',\n 'builder.layout.align.center': 'Zentriert',\n 'builder.layout.align.end': 'Ende',\n 'builder.layout.align.stretch': 'Strecken',\n 'builder.canvas.pagePreview': 'Seitenvorschau',\n 'builder.canvas.reusableUnpublishedTitle': 'Dieses wiederverwendbare Element ist noch nicht veröffentlicht',\n 'builder.canvas.reusableMissingTitle': 'Dieses wiederverwendbare Element fehlt',\n 'builder.canvas.reusableUnpublishedHint':\n 'Veröffentlichen Sie es, um es hier und auf Live-Seiten anzuzeigen — oder öffnen Sie es im Eigenschaften-Panel, um weiter zu bearbeiten.',\n 'builder.canvas.reusableMissingHint':\n 'Öffnen Sie das „Element“ der Einbettung im Eigenschaften-Panel, um die Referenz zu korrigieren.',\n 'builder.canvas.listingInvalidTitle': 'Diese Liste kann nicht ausgeführt werden:',\n 'builder.canvas.viewportPreviewAria': '{label} Vorschau',\n 'builder.canvas.viewportWidthTitle': '{label} Breite',\n 'builder.canvas.breakpointsIssueLabel': 'Breakpoints',\n 'builder.canvas.undo': 'Rückgängig',\n 'builder.canvas.redo': 'Wiederholen',\n 'builder.canvas.insert': 'Einfügen',\n // In-canvas \"+\" insertion affordances at block boundaries (EC-405).\n 'builder.canvas.insertBefore': 'Block davor einfügen',\n 'builder.canvas.insertAfter': 'Block danach einfügen',\n 'builder.canvas.insertInto': 'Block darin einfügen',\n 'builder.canvasTheme.legacyNotice':\n 'Die canvas.css dieses Projekts bündelt noch das Studio-Designsystem mit dem Site-Theme (die alte zusammengeführte Form). Richten Sie canvas.css stattdessen auf den eigenen Full-Tailwind-Theme-Einstieg der Site — siehe Theming-Leitfaden (docs/theming.md). Bis dahin funktioniert alles weiter.',\n 'builder.canvasTheme.stylesheetErrorNotice':\n 'Das Canvas-Stylesheet konnte nicht geladen werden — Blöcke werden ungestylt dargestellt. Prüfen Sie den canvas.css-Build des Studios.',\n 'builder.canvasTheme.noThemeTokensNotice':\n 'Das Canvas-Stylesheet definiert keine Theme-Tokens. canvas.css sollte den Full-Tailwind-Theme-Einstieg der Site importieren (siehe docs/theming.md).',\n 'builder.canvasTheme.noStylesheetNotice':\n 'Es ist kein Canvas-Stylesheet konfiguriert — Blöcke werden ungestylt dargestellt. Die App muss eines über setCanvasStylesheetUrl bereitstellen (das create-elytra-Template verdrahtet das).',\n 'builder.spacing.gapAfterChild': 'Abstand nach Element {index}',\n 'builder.richText.toolbarLabel': 'Textformatierung',\n 'builder.richText.linkPlaceholder': 'https://… (leer entfernt)',\n 'builder.richText.linkUrl': 'Link-URL',\n 'builder.richText.set': 'Setzen',\n 'builder.richText.applyLink': 'Link anwenden',\n 'builder.richText.bold': 'Fett',\n 'builder.richText.italic': 'Kursiv',\n 'builder.richText.link': 'Link',\n 'builder.richText.removeLink': 'Link entfernen',\n 'builder.richText.unlink': 'Verknüpfung lösen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS rich-text editor (EC-314) — the TipTap field editor\n // ─────────────────────────────────────────────────────────────────────────\n 'richText.placeholder': 'Schreiben Sie etwas…',\n // Shown in the lazy boundary while the TipTap editor chunk loads (EC-322).\n 'richText.loading': 'Editor wird geladen…',\n 'richText.bold': 'Fett',\n 'richText.italic': 'Kursiv',\n 'richText.underline': 'Unterstrichen',\n 'richText.strike': 'Durchgestrichen',\n 'richText.code': 'Code im Text',\n 'richText.paragraph': 'Absatz',\n 'richText.heading': 'Überschrift {level}',\n 'richText.bulletList': 'Aufzählung',\n 'richText.orderedList': 'Nummerierte Liste',\n 'richText.blockquote': 'Zitat',\n 'richText.codeBlock': 'Codeblock',\n 'richText.horizontalRule': 'Trennlinie',\n 'richText.fontSize.label': 'Schriftgröße',\n 'richText.fontSize.small': 'Klein',\n 'richText.fontSize.normal': 'Normal',\n 'richText.fontSize.large': 'Groß',\n 'richText.fontSize.xlarge': 'Sehr groß',\n 'richText.undo': 'Rückgängig',\n 'richText.redo': 'Wiederholen',\n 'richText.link.add': 'Link',\n 'richText.link.remove': 'Link entfernen',\n 'richText.link.external': 'Externe URL',\n 'richText.link.externalPlaceholder': 'https://…',\n 'richText.link.document': 'Dokument verknüpfen',\n 'richText.link.documentSearch': 'Dokumente suchen…',\n 'richText.link.documentEmpty': 'Keine passenden Dokumente.',\n 'richText.link.apply': 'Anwenden',\n 'richText.image.add': 'Bild',\n 'richText.embed.add': 'Komponente einbetten',\n 'richText.embed.badge': 'Einbettung',\n 'richText.embed.unknown': 'Unbekannte Komponente',\n 'richText.embed.empty': 'Keine Komponenten zum Einbetten verfügbar.',\n 'richText.embed.editProps': 'Einstellungen bearbeiten',\n 'richText.embed.editTitle': '{name} bearbeiten',\n 'richText.embed.noProps': 'Diese Komponente hat keine bearbeitbaren Einstellungen.',\n 'richText.embed.blocksNote': 'Verschachtelte Inhaltsbereiche werden auf der Arbeitsfläche bearbeitet, nicht hier.',\n 'richText.carrier.unknown': 'Unbekannter Inhaltsblock:',\n 'richText.slash.text': 'Text',\n 'richText.slash.empty': 'Keine passenden Blöcke',\n 'richText.slash.componentsGroup': 'Komponenten',\n // EC-388/EC-431 — expand the editing surface (the centered stage for long prose).\n 'richText.expand.expand': 'Editor vergrößern',\n 'richText.expand.collapse': 'Editor verkleinern',\n 'richText.expand.title': 'Rich Text',\n // EC-436 — Titel der vergrößerten Ansicht mit Feldbezeichnung ({field}).\n 'richText.expand.titleWithField': '{field} — Rich Text',\n 'richText.expand.editingInSheet': 'Bearbeitung in der vergrößerten Ansicht — klicken Sie, um zurückzukehren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // EC-199 — AI assistant chat panel + creation flow\n // ─────────────────────────────────────────────────────────────────────────\n 'ai.panel.title': 'Assistent',\n 'ai.panel.toggle': 'KI-Assistenten ein- oder ausblenden',\n 'ai.panel.close': 'Assistenten schließen',\n 'ai.panel.loading': 'Assistent wird geladen…',\n 'ai.panel.working': 'Wird bearbeitet…',\n 'ai.panel.placeholder': 'Bitten Sie den Assistenten, Inhalte zu erstellen…',\n 'ai.panel.send': 'Senden',\n 'ai.panel.emptyTitle': 'Inhalte mit KI erstellen',\n 'ai.panel.emptyHint':\n 'Beschreiben Sie, was Sie erstellen möchten — zum Beispiel: „Schreibe einen Beitrag über unsere neuen Öffnungszeiten.“ Der Assistent erstellt einen Entwurf zur Prüfung.',\n 'ai.panel.unavailable': 'Der Assistent ist in diesem Projekt nicht verfügbar.',\n // EC-334/EC-380 — new-conversation affordance\n 'ai.panel.newConversation': 'Neue Unterhaltung',\n 'ai.step.search': '{collection} durchsucht — {count} gefunden',\n 'ai.step.searchRunning': '{collection} wird durchsucht…',\n 'ai.step.listAssets': 'Medien durchsucht — {count} gefunden',\n 'ai.step.listAssetsRunning': 'Medien werden durchsucht…',\n 'ai.step.getDocument': 'Dokument gelesen',\n 'ai.step.getDocumentRunning': 'Dokument wird gelesen…',\n 'ai.step.drafting': 'Entwurf für {collection} wird erstellt…',\n 'ai.step.translating': '{completed} von {total} werden übersetzt…',\n 'ai.step.translatingDoc': 'Dokument wird übersetzt…',\n 'ai.step.translateNothing': 'Nichts zu übersetzen — alle Sprachen sind bereits ausgefüllt.',\n // EC-378 — the updateFields edit flow\n 'ai.step.updatingDoc': 'Änderungen am Dokument werden vorgeschlagen…',\n 'ai.step.updateNoChange': 'Keine Änderungen nötig — die Werte stimmen bereits überein.',\n 'ai.proposal.title': 'Vorschlag für {collection}',\n 'ai.proposal.reviewHint': 'Prüfen Sie den Entwurf und übernehmen oder verwerfen Sie ihn anschließend.',\n 'ai.proposal.apply': 'Als Entwurf übernehmen',\n 'ai.proposal.discard': 'Verwerfen',\n 'ai.proposal.applied': 'Als Entwurf übernommen',\n 'ai.proposal.discarded': 'Verworfen',\n 'ai.proposal.discardedNote': 'Dieser Vorschlag wurde verworfen.',\n 'ai.proposal.open': 'Dokument öffnen',\n 'ai.proposal.unavailable': 'Dieser Vorschlag kann nicht mehr angezeigt werden.',\n 'ai.proposal.diffBefore': 'Leer',\n 'ai.proposal.diffAfter': 'Vorschlag',\n 'ai.proposal.diffUnified': 'Vorgeschlagener Inhalt',\n // EC-382 — the expandable review surface (a roomy full-height sheet).\n 'ai.proposal.expandReview': 'Prüfansicht erweitern',\n 'ai.proposal.collapseReview': 'Prüfansicht schließen',\n 'ai.error.route': 'Der Assistent ist derzeit nicht verfügbar. Bitte versuchen Sie es erneut.',\n 'ai.error.generic': 'Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut.',\n 'ai.error.applyFailed': 'Der Entwurf konnte nicht übernommen werden.',\n 'ai.error.applyInvalid': 'Der Vorschlag passt nicht mehr zum aktuellen Dokument: {issues}',\n 'ai.error.stepCap':\n 'Der Assistent hat nach {max} Werkzeugschritten angehalten. Senden Sie eine weitere Nachricht, um fortzufahren.',\n // EC-332 — full-document translation (header action + chat tool)\n 'ai.translate.action': 'Dokument übersetzen',\n 'ai.translate.tooltip': 'Leere Übersetzungen mit KI ausfüllen',\n 'ai.translate.dialogTitle': 'Dokument übersetzen',\n 'ai.translate.dialogDescription':\n 'Leere Sprachwerte aus {base} mit KI ausfüllen. Vorhandene Übersetzungen werden nie überschrieben.',\n 'ai.translate.targetsLabel': 'Zielsprachen',\n 'ai.translate.scopeLabel': 'Zu übersetzender Umfang',\n 'ai.translate.fillMissing': 'Nur fehlende Übersetzungen ausfüllen',\n 'ai.translate.retranslateAll': 'Alles neu übersetzen',\n 'ai.translate.retranslateSoon': 'Demnächst',\n 'ai.translate.confirm': 'Übersetzen',\n 'ai.translate.preparing': 'Übersetzung wird vorbereitet…',\n 'ai.translate.progress': '{completed} von {total} werden übersetzt…',\n 'ai.translate.applying': 'Übersetzungen werden gespeichert…',\n 'ai.translate.nothing': 'Alles ist bereits übersetzt — es gibt nichts auszufüllen.',\n 'ai.translate.applied': '{count} Übersetzungen in {locales} Sprachen wurden ausgefüllt.',\n 'ai.translate.cancelled': 'Übersetzung abgebrochen — Teilergebnisse bleiben im Entwurf erhalten.',\n 'ai.translate.failed': 'Übersetzung fehlgeschlagen. Bitte versuchen Sie es erneut.',\n 'ai.translate.close': 'Schließen',\n 'ai.translate.proposalTitle': 'Übersetzung von {collection}',\n 'ai.translate.diffBefore': 'Aktuell',\n 'ai.translate.diffAfter': 'Übersetzt',\n // EC-378 — the update (edit-existing) proposal\n 'ai.update.proposalTitle': 'Änderungen an {collection}',\n 'ai.update.diffBefore': 'Aktuell',\n 'ai.update.diffAfter': 'Vorgeschlagen',\n}\n"]}