GET https://www.nfok.work/reset-password

Forms

  • reset_password_request_form
    • email
    • _token

reset_password_request_form

Form type:
"App\Form\ResetPasswordRequestFormType"

Errors

This form has no errors.

Default Data

Property Value
Model Format same as normalized format
Normalized Format
null
View Format same as normalized format

Submitted Data

This form was not submitted.

Passed Options

Option Passed Value Resolved Value
translator
App\Service\DatabaseTranslator {#266
  -cache: [
    "de|messages|backend.builder.ResetPasswordRequestFormType.message" => "Bitte E-Mail eintragen"
    "de|messages|frontend.global.adresses.phonenumber" => "000 / 000000"
    "de|messages|frontend.global.adresses.email" => "nfokwork@gmail.com"
    "de|messages|frontend.shop_auth.password_reset.request.meta_title" => "Passwort zurücksetzen - Shop"
    "de|messages|frontend.navigation.customer.login" => "Shop anmelden"
    "de|messages|frontend.navigation.customer.help" => "Hilfe"
    "de|messages|frontend.navigation.locale.label" => "Sprache"
    "de|messages|frontend.shop.actions.cart_short" => "Warenkorb"
    "de|messages|frontend.cart.empty.title" => "Ihr Warenkorb ist leer"
    "de|messages|frontend.cart.table.remove" => "Entfernen"
    "de|messages|frontend.cart.summary.subtotal" => "Zwischensumme"
    "de|messages|frontend.cart.summary.included_vat" => "enthaltene MwSt. (19%)"
    "de|messages|frontend.cart.actions.checkout" => "Zur Kasse"
    "de|messages|frontend.shop.actions.add_error" => "Fehler beim Hinzufügen zum Warenkorb"
    "de|messages|frontend.navigation.actions.open_sidebar" => "Seitenleiste öffnen"
    "de|messages|frontend.shop_auth.password_reset.request.page_title" => "Passwort zurücksetzen"
    "de|messages|frontend.menu.home" => "Startseite"
    "de|messages|frontend.menu.shop" => "Shop"
    "de|messages|frontend.shop_auth.password_reset.request.breadcrumb_current" => "Passwort zurücksetzen"
    "de|messages|frontend.shop_auth.password_reset.request.intro_title" => "Passwort vergessen?"
    "de|messages|frontend.shop_auth.password_reset.request.intro_text" => "Fordern Sie einen sicheren Link zum Zurücksetzen Ihres Passworts an."
    "de|messages|frontend.shop_auth.password_reset.request.fields.email" => "E-Mail-Adresse"
    "de|messages|frontend.shop_auth.password_reset.request.fields.email_placeholder" => "name@beispiel.de"
    "de|messages|name@beispiel.de" => "name@beispiel.de"
    "de|messages|frontend.shop_auth.password_reset.request.help_text" => "Geben Sie Ihre E-Mail-Adresse ein. Wenn ein Konto dazu existiert, senden wir Ihnen einen Link zum Zurücksetzen Ihres Passworts."
    "de|messages|frontend.shop_auth.password_reset.request.actions.submit" => "Link zum Zurücksetzen senden"
    "de|messages|frontend.shop_auth.password_reset.request.back_notice" => "Sie kennen Ihr Passwort doch noch?"
    "de|messages|frontend.shop_auth.password_reset.request.actions.back_to_login" => "Zurück zum Login"
  ]
  -databaseCache: [
    "de|messages" => [
      "admin.ab_tests.actions.back" => "Zurück"
      "admin.ab_tests.actions.cancel" => "Abbrechen"
      "admin.ab_tests.actions.close" => "Schließen"
      "admin.ab_tests.actions.create" => "Anlegen"
      "admin.ab_tests.actions.details" => "Details"
      "admin.ab_tests.actions.end" => "Beenden"
      "admin.ab_tests.actions.help" => "Hilfe"
      "admin.ab_tests.actions.pause" => "Pausieren"
      "admin.ab_tests.actions.save_variant" => "Variante %variant% speichern"
      "admin.ab_tests.actions.set_winner" => "Gewinner setzen"
      "admin.ab_tests.actions.start" => "Starten"
      "admin.ab_tests.actions.to_module" => "Zum Modul"
      "admin.ab_tests.confirm.end_button" => "Beenden"
      "admin.ab_tests.confirm.end_text" => "Experiment wirklich beenden? Diese Aktion kann nicht rückgängig gemacht werden."
      "admin.ab_tests.confirm.winner_button" => "Gewinner setzen"
      "admin.ab_tests.confirm.winner_text" => "Gewinner setzen und Experiment beenden?"
      "admin.ab_tests.detail.active_label" => "Aktiv"
      "admin.ab_tests.detail.change_status" => "Status ändern:"
      "admin.ab_tests.detail.columns.active" => "Aktiv"
      "admin.ab_tests.detail.columns.clicks" => "Klicks"
      "admin.ab_tests.detail.columns.ctr" => "CTR"
      "admin.ab_tests.detail.columns.variant" => "Variante"
      "admin.ab_tests.detail.columns.views" => "Aufrufe"
      "admin.ab_tests.detail.columns.winner" => "Gewinner?"
      "admin.ab_tests.detail.content_label" => "HTML-Inhalt der Variante %variant%"
      "admin.ab_tests.detail.content_placeholder" => "HTML für Variante %variant%..."
      "admin.ab_tests.detail.inactive_label" => "Inaktiv"
      "admin.ab_tests.detail.info_title" => "Experiment-Info"
      "admin.ab_tests.detail.no_variants" => "Noch keine Varianten angelegt. Füge Variante A, B oder C unten hinzu."
      "admin.ab_tests.detail.page_prefix" => "Experiment"
      "admin.ab_tests.detail.performance_title" => "Varianten & Performance"
      "admin.ab_tests.detail.rows.content_block" => "Content Block"
      "admin.ab_tests.detail.rows.created" => "Erstellt"
      "admin.ab_tests.detail.rows.description" => "Beschreibung"
      "admin.ab_tests.detail.rows.ended" => "Beendet"
      "admin.ab_tests.detail.rows.started" => "Gestartet"
      "admin.ab_tests.detail.rows.winner" => "Gewinner"
      "admin.ab_tests.detail.select_variant" => "Variante wählen"
      "admin.ab_tests.detail.set_winner_title" => "Gewinner festlegen:"
      "admin.ab_tests.detail.stats_summary" => "Aufrufe: %views% | Klicks: %clicks%"
      "admin.ab_tests.detail.variant_label" => "Variante %variant%"
      "admin.ab_tests.detail.variant_panel_edit" => "Variante %variant% bearbeiten"
      "admin.ab_tests.detail.variant_panel_new" => "Variante %variant% neu anlegen"
      "admin.ab_tests.detail.winner_badge" => "Gewinner"
      "admin.ab_tests.help_index.card_subtitle" => "Experimente, Varianten, Gewinner, Tracking"
      "admin.ab_tests.help_index.card_title" => "A/B-Tests"
      "admin.ab_tests.help.navigation_title" => "Navigation"
      "admin.ab_tests.help.navigation.api" => "API-Endpunkte"
      "admin.ab_tests.help.navigation.concept" => "Konzept"
      "admin.ab_tests.help.navigation.create" => "Experiment anlegen"
      "admin.ab_tests.help.navigation.fields" => "Feldreferenz"
      "admin.ab_tests.help.navigation.lifecycle" => "Status-Lifecycle"
      "admin.ab_tests.help.navigation.tracking" => "Event-Tracking"
      "admin.ab_tests.help.navigation.variants" => "Varianten bearbeiten"
      "admin.ab_tests.help.navigation.winner" => "Gewinner festlegen"
      "admin.ab_tests.help.sections.api.rows.create" => "Neues Experiment anlegen"
      "admin.ab_tests.help.sections.api.rows.detail" => "Experiment-Detail"
      "admin.ab_tests.help.sections.api.rows.list" => "Experiment-Liste"
      "admin.ab_tests.help.sections.api.rows.save_variant" => "Variante speichern"
      "admin.ab_tests.help.sections.api.rows.status" => "Status ändern"
      "admin.ab_tests.help.sections.api.rows.track" => "Event tracken (Frontend)"
      "admin.ab_tests.help.sections.api.rows.winner" => "Gewinner festlegen"
      "admin.ab_tests.help.sections.api.table.function" => "Funktion"
      "admin.ab_tests.help.sections.api.table.method" => "Methode"
      "admin.ab_tests.help.sections.api.table.url" => "URL"
      "admin.ab_tests.help.sections.api.title" => "API-Endpunkte"
      "admin.ab_tests.help.sections.concept.cards.metrics_text" => "Tracking von <code>view</code>-Events (Seitenaufrufe) und <code>click</code>-Events (Interaktionen)."
      "admin.ab_tests.help.sections.concept.cards.metrics_title" => "Metriken"
      "admin.ab_tests.help.sections.concept.cards.variants_text" => "Bis zu drei Varianten pro Experiment. Jeder Besucher sieht konsistent dieselbe Variante."
      "admin.ab_tests.help.sections.concept.cards.variants_title" => "Varianten A/B/C"
      "admin.ab_tests.help.sections.concept.intro" => "A/B-Tests ermöglichen es, verschiedene Versionen von <strong>Content-Blöcken</strong>, z.B. Banner, CTAs oder Produktbeschreibungen, gegeneinander zu testen und die Performance zu messen."
      "admin.ab_tests.help.sections.concept.permissions_label" => "Berechtigungen:"
      "admin.ab_tests.help.sections.concept.title" => "A/B-Test: Konzept"
      "admin.ab_tests.help.sections.create.steps.click_new" => "Im A/B-Test-Modul auf <kbd>+ Neues Experiment</kbd> klicken"
      "admin.ab_tests.help.sections.create.steps.content_block" => "Den Ziel-<strong>Content Block</strong> aus der Liste auswählen; der angezeigte Block-Key zeigt, wo der Test im Frontend ausgespielt wird"
      "admin.ab_tests.help.sections.create.steps.description" => "<strong>Beschreibung</strong>: Hypothese oder Testbeschreibung"
      "admin.ab_tests.help.sections.create.steps.fill_variants" => "Varianten im Bereich „Varianten & Performance“ befüllen"
      "admin.ab_tests.help.sections.create.steps.save_draft" => "Speichern → Das Experiment startet im Status <code>draft</code>"
      "admin.ab_tests.help.sections.create.steps.set_running" => "Status auf <code>running</code> setzen → Der Test ist live"
      "admin.ab_tests.help.sections.create.steps.title" => "<strong>Titel</strong>: Interner Name des Experiments"
      "admin.ab_tests.help.sections.create.title" => "Experiment anlegen"
      "admin.ab_tests.help.sections.create.warning" => "Teste nur Blöcke, deren Block-Key im Frontend tatsächlich gerendert wird. Ohne passende Einbindung wird kein Traffic verteilt."
      "admin.ab_tests.help.sections.fields.rows.content_block" => "Verknüpfter Content Block als Relation zu ContentBlock"
      "admin.ab_tests.help.sections.fields.rows.description" => "Hypothese oder Testbeschreibung"
      "admin.ab_tests.help.sections.fields.rows.ended_at" => "Ende des Tests"
      "admin.ab_tests.help.sections.fields.rows.started_at" => "Start des Tests"
      "admin.ab_tests.help.sections.fields.rows.status" => "draft / running / paused / ended"
      "admin.ab_tests.help.sections.fields.rows.title" => "Experiment-Name (intern)"
      "admin.ab_tests.help.sections.fields.rows.winner" => "Gewinner-Variante: A / B / C"
      "admin.ab_tests.help.sections.fields.table.description" => "Beschreibung"
      "admin.ab_tests.help.sections.fields.table.field" => "Feld"
      "admin.ab_tests.help.sections.fields.table.type" => "Typ"
      "admin.ab_tests.help.sections.fields.title" => "Feldreferenz: AbExperiment"
      "admin.ab_tests.help.sections.fields.types.boolean" => "Boolean"
      "admin.ab_tests.help.sections.fields.types.datetime" => "Datum/Zeit"
      "admin.ab_tests.help.sections.fields.types.enum" => "Enum"
      "admin.ab_tests.help.sections.fields.types.enum_nullable" => "Enum (nullable)"
      "admin.ab_tests.help.sections.fields.types.integer" => "Integer"
      "admin.ab_tests.help.sections.fields.types.relation" => "Relation"
      "admin.ab_tests.help.sections.fields.types.text" => "Text"
      "admin.ab_tests.help.sections.fields.variant_rows.active" => "Variante nimmt Traffic an"
      "admin.ab_tests.help.sections.fields.variant_rows.clicks" => "Anzahl click-Events"
      "admin.ab_tests.help.sections.fields.variant_rows.content" => "HTML-Inhalt der Variante"
      "admin.ab_tests.help.sections.fields.variant_rows.variant" => "A / B / C"
      "admin.ab_tests.help.sections.fields.variant_rows.views" => "Anzahl view-Events"
      "admin.ab_tests.help.sections.fields.variant_title" => "ContentBlockVariant:"
      "admin.ab_tests.help.sections.lifecycle.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/status</code>"
      "admin.ab_tests.help.sections.lifecycle.body" => "<strong>Body:</strong> <code>{"status": "running"}</code>"
      "admin.ab_tests.help.sections.lifecycle.rows.draft.meaning" => "In Vorbereitung, kein Traffic"
      "admin.ab_tests.help.sections.lifecycle.rows.draft.transition" => "→ running"
      "admin.ab_tests.help.sections.lifecycle.rows.ended.meaning" => "Test beendet, Gewinner kann markiert werden"
      "admin.ab_tests.help.sections.lifecycle.rows.ended.transition" => "→ (Endstatus)"
      "admin.ab_tests.help.sections.lifecycle.rows.paused.meaning" => "Pausiert, kein neuer Traffic"
      "admin.ab_tests.help.sections.lifecycle.rows.paused.transition" => "→ running / ended"
      "admin.ab_tests.help.sections.lifecycle.rows.running.meaning" => "Test aktiv, Traffic wird verteilt"
      "admin.ab_tests.help.sections.lifecycle.rows.running.transition" => "→ paused / ended"
      "admin.ab_tests.help.sections.lifecycle.table.meaning" => "Bedeutung"
      "admin.ab_tests.help.sections.lifecycle.table.status" => "Status"
      "admin.ab_tests.help.sections.lifecycle.table.transition" => "Übergang zu"
      "admin.ab_tests.help.sections.lifecycle.title" => "Status-Lifecycle"
      "admin.ab_tests.help.sections.tracking.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/api/track</code>"
      "admin.ab_tests.help.sections.tracking.body_label" => "<strong>Body:</strong>"
      "admin.ab_tests.help.sections.tracking.intro" => "Für Auswertungen müssen Frontend-Events gesendet werden:"
      "admin.ab_tests.help.sections.tracking.note" => "Das Tracking im Frontend sendet automatisch <code>view</code>-Events beim Laden und <code>click</code>-Events bei Klicks auf CTAs innerhalb des Blocks."
      "admin.ab_tests.help.sections.tracking.payload" => """
        {\n
          "blockId": 42,\n
          "variant": "B",\n
          "event": "view"   // alternativ "click"\n
        }\n
        """
      "admin.ab_tests.help.sections.tracking.title" => "Event-Tracking"
      "admin.ab_tests.help.sections.variants.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/variant/save</code>"
      "admin.ab_tests.help.sections.variants.body" => "<strong>Body:</strong> <code>{"variant": "A", "content": "..."}</code>"
      "admin.ab_tests.help.sections.variants.info" => "Variante <strong>A</strong> ist die Kontrollvariante. Variante <strong>B</strong> und <strong>C</strong> sind die Testkandidaten."
      "admin.ab_tests.help.sections.variants.items.active" => "Gespeicherte Varianten werden im aktuellen Workflow automatisch aktiv gesetzt"
      "admin.ab_tests.help.sections.variants.items.content" => "<code>content</code>: HTML- oder Text-Inhalt der Variante"
      "admin.ab_tests.help.sections.variants.items.limit" => "Jedes Experiment hat bis zu drei Varianten: <strong>A</strong>, <strong>B</strong>, <strong>C</strong>"
      "admin.ab_tests.help.sections.variants.items.traffic" => "Nur aktive Varianten erhalten Traffic; inaktive Varianten werden nie angezeigt"
      "admin.ab_tests.help.sections.variants.title" => "Varianten bearbeiten (A/B/C)"
      "admin.ab_tests.help.sections.winner.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/winner</code>"
      "admin.ab_tests.help.sections.winner.body" => "<strong>Body:</strong> <code>{"variant": "B"}</code>"
      "admin.ab_tests.help.sections.winner.intro" => "Nach dem Beenden eines Tests wird die gewinnende Variante festgelegt:"
      "admin.ab_tests.help.sections.winner.steps.apply" => "Die Gewinnervariante wird nur im Experiment markiert. Die Übernahme in den produktiven Content erfolgt anschließend bewusst manuell."
      "admin.ab_tests.help.sections.winner.steps.choose" => "<kbd>Gewinner: Variante X</kbd> auswählen"
      "admin.ab_tests.help.sections.winner.steps.compare" => "Statistiken der Varianten vergleichen, z.B. CTR und Conversions"
      "admin.ab_tests.help.sections.winner.steps.end" => "Status auf <code>ended</code> setzen"
      "admin.ab_tests.help.sections.winner.title" => "Gewinner festlegen"
      "admin.ab_tests.help.title" => "Hilfe: A/B-Tests"
      "admin.ab_tests.index.columns.action" => "Aktion"
      "admin.ab_tests.index.columns.content_block" => "Content Block"
      "admin.ab_tests.index.columns.ended" => "Beendet"
      "admin.ab_tests.index.columns.started" => "Gestartet"
      "admin.ab_tests.index.columns.status" => "Status"
      "admin.ab_tests.index.columns.title" => "Titel"
      "admin.ab_tests.index.columns.winner" => "Gewinner"
      "admin.ab_tests.index.empty" => "Noch keine Experimente vorhanden."
      "admin.ab_tests.index.help_title" => "Hilfe zu diesem Modul"
      "admin.ab_tests.index.list_title" => "Alle Experimente"
      "admin.ab_tests.index.modal.content_block_label" => "Content Block"
      "admin.ab_tests.index.modal.description_label" => "Beschreibung"
      "admin.ab_tests.index.modal.description_placeholder" => "Optional"
      "admin.ab_tests.index.modal.select_placeholder" => "-- Bitte wählen --"
      "admin.ab_tests.index.modal.title" => "Neues A/B-Experiment"
      "admin.ab_tests.index.modal.title_label" => "Titel"
      "admin.ab_tests.index.modal.title_placeholder" => "z.B. Hero-Banner Sept."
      "admin.ab_tests.index.new_experiment" => "Neues Experiment"
      "admin.ab_tests.index.page_title" => "A/B-Tests"
      "admin.ab_tests.index.winner_badge" => "Variante %variant%"
      "admin.ab_tests.notifications.block_not_found" => "Content Block nicht gefunden."
      "admin.ab_tests.notifications.experiment_created" => "Experiment "%title%" wurde angelegt."
      "admin.ab_tests.notifications.invalid_required_fields" => "Content Block und Titel sind Pflichtfelder."
      "admin.ab_tests.notifications.invalid_status" => "Ungültiger Status."
      "admin.ab_tests.notifications.invalid_variant" => "Ungültige Variante."
      "admin.ab_tests.notifications.status_updated" => "Status aktualisiert."
      "admin.ab_tests.notifications.variant_not_found" => "Variante nicht gefunden."
      "admin.ab_tests.notifications.variant_saved" => "Variante %variant% wurde gespeichert."
      "admin.ab_tests.notifications.winner_set" => "Variante %variant% wurde als Gewinner gesetzt. Das Experiment wurde beendet."
      "admin.ab_tests.status.draft" => "Entwurf"
      "admin.ab_tests.status.ended" => "Beendet"
      "admin.ab_tests.status.paused" => "Pausiert"
      "admin.ab_tests.status.running" => "Aktiv"
      "admin.alerts.actions.acknowledge" => "Bestätigen"
      "admin.alerts.actions.cancel" => "Abbrechen"
      "admin.alerts.actions.clear_selection" => "Auswahl aufheben"
      "admin.alerts.actions.close" => "Schließen"
      "admin.alerts.actions.create" => "Erstellen"
      "admin.alerts.actions.detail" => "Detail"
      "admin.alerts.actions.help" => "Hilfe"
      "admin.alerts.actions.load_more" => "Weitere laden"
      "admin.alerts.actions.refresh" => "Aktualisieren"
      "admin.alerts.actions.resolve" => "Lösen"
      "admin.alerts.actions.test_alert" => "Test-Hinweis"
      "admin.alerts.badges.critical" => "kritisch"
      "admin.alerts.badges.info" => "Info"
      "admin.alerts.badges.status_acknowledged" => "bestätigt"
      "admin.alerts.badges.status_open" => "offen"
      "admin.alerts.badges.status_resolved" => "gelöst"
      "admin.alerts.badges.warning" => "Warnung"
      "admin.alerts.detail_modal.body_placeholder" => "Details werden beim nächsten vollständigen Ausbau einer Einzel-Detail-API angezeigt. Nutze die Tabelle für Quick-Actions."
      "admin.alerts.detail_modal.id_label" => "Alert-ID:"
      "admin.alerts.detail_modal.loading" => "Lade…"
      "admin.alerts.detail_modal.title" => "Alert-Details"
      "admin.alerts.filters.all_severities" => "Alle Schweregrade"
      "admin.alerts.filters.severity_critical" => "Kritisch"
      "admin.alerts.filters.severity_info" => "Info"
      "admin.alerts.filters.severity_warning" => "Warnung"
      "admin.alerts.filters.status_all" => "Alle"
      "admin.alerts.filters.status_open" => "Offen"
      "admin.alerts.filters.status_resolved" => "Gelöst"
      "admin.alerts.filters.status_unacknowledged" => "Nicht bestätigt"
      "admin.alerts.heading" => "Hinweis-Postfach"
      "admin.alerts.help.actions_panel.acknowledge_flag" => "<code>acknowledged</code> wird auf <code>true</code> gesetzt"
      "admin.alerts.help.actions_panel.acknowledge_hidden" => "Alert verschwindet aus „Neue Alerts“-Ansicht"
      "admin.alerts.help.actions_panel.acknowledge_intro" => "„Ich habe diesen Alert gesehen und arbeite daran.“"
      "admin.alerts.help.actions_panel.acknowledge_open" => "Alert bleibt offen (nicht gelöst)"
      "admin.alerts.help.actions_panel.acknowledge_title" => "Bestätigen"
      "admin.alerts.help.actions_panel.resolve_done" => "Alert wird als abgeschlossen markiert"
      "admin.alerts.help.actions_panel.resolve_intro" => "„Problem ist behoben.“"
      "admin.alerts.help.actions_panel.resolve_tab" => "Alert wechselt in Tab „Gelöste Alerts“"
      "admin.alerts.help.actions_panel.resolve_timestamp" => "<code>resolvedAt</code> wird gesetzt"
      "admin.alerts.help.actions_panel.resolve_title" => "Lösen"
      "admin.alerts.help.actions_panel.title" => "Bestätigen vs. Lösen"
      "admin.alerts.help.api.acknowledge_desc" => "Alert bestätigen"
      "admin.alerts.help.api.bulk_desc" => "Bulk-Aktion"
      "admin.alerts.help.api.list_desc" => "Alert-Liste (JSON)"
      "admin.alerts.help.api.page_desc" => "Alert-Verwaltungsseite"
      "admin.alerts.help.api.resolve_desc" => "Alert als gelöst markieren"
      "admin.alerts.help.api.table.function" => "Funktion"
      "admin.alerts.help.api.table.method" => "Methode"
      "admin.alerts.help.api.table.parameters" => "Parameter"
      "admin.alerts.help.api.test_desc" => "Test-Hinweis erzeugen"
      "admin.alerts.help.api.title" => "API-Endpunkte"
      "admin.alerts.help.back" => "Zurück"
      "admin.alerts.help.bulk.actions_label" => "Mögliche actions:"
      "admin.alerts.help.bulk.api_label" => "API:"
      "admin.alerts.help.bulk.body_label" => "Body:"
      "admin.alerts.help.bulk.intro" => "Mehrere Alerts gleichzeitig bearbeiten"
      "admin.alerts.help.bulk.step1" => "Alerts in der Liste auswählen (Checkbox)"
      "admin.alerts.help.bulk.step2" => "Aktion wählen: <kbd>Alle bestätigen</kbd> oder <kbd>Alle lösen</kbd>"
      "admin.alerts.help.bulk.step3" => "Bestätigen"
      "admin.alerts.help.bulk.title" => "Bulk-Aktionen"
      "admin.alerts.help.fields.acknowledged_desc" => "Wurde der Alert bestätigt?"
      "admin.alerts.help.fields.context_desc" => "Zusätzliche technische Kontextdaten"
      "admin.alerts.help.fields.created_desc" => "Alert-Erstellungszeitpunkt"
      "admin.alerts.help.fields.id" => "Alert-ID"
      "admin.alerts.help.fields.message_desc" => "Beschreibungstext des Alerts"
      "admin.alerts.help.fields.product_desc" => "Betroffenes Produkt (bei stock-Alerts)"
      "admin.alerts.help.fields.resolved_desc" => "Zeitstempel der Lösung"
      "admin.alerts.help.fields.severity_desc" => "Dringlichkeit: critical / warning / info"
      "admin.alerts.help.fields.table.description" => "Beschreibung"
      "admin.alerts.help.fields.table.field" => "Feld"
      "admin.alerts.help.fields.table.type" => "Typ"
      "admin.alerts.help.fields.title" => "Feldreferenz: AlertLog"
      "admin.alerts.help.fields.type_desc" => "Alert-Typ (low_stock, payment_failed, etc.)"
      "admin.alerts.help.navigation.actions" => "Bestätigen & Lösen"
      "admin.alerts.help.navigation.api" => "API-Endpunkte"
      "admin.alerts.help.navigation.bulk" => "Bulk-Aktionen"
      "admin.alerts.help.navigation.fields" => "Feldreferenz"
      "admin.alerts.help.navigation.overview" => "Überblick"
      "admin.alerts.help.navigation.severity" => "Severity-Stufen"
      "admin.alerts.help.navigation.test_hint" => "Test-Hinweis"
      "admin.alerts.help.navigation.title" => "Navigation"
      "admin.alerts.help.navigation.types" => "Alert-Typen"
      "admin.alerts.help.open_module" => "Zum Modul"
      "admin.alerts.help.overview.automatic_title" => "Automatisch erkannte Probleme"
      "admin.alerts.help.overview.description" => "Das <strong>Alert-System</strong> überwacht kritische Shop-Ereignisse und benachrichtigt Admins. Alerts werden in der Regel automatisch durch Import-, Feed- und Pricing-Prozesse erzeugt. Zusätzlich kann im Modul ein <strong>Test-Hinweis</strong> angelegt werden, um Anzeige und Benachrichtigung gezielt zu prüfen."
      "admin.alerts.help.overview.high_returns" => "Hohe Retourenrate"
      "admin.alerts.help.overview.low_stock" => "Niedriger Lagerbestand"
      "admin.alerts.help.overview.manage" => "Bearbeiten"
      "admin.alerts.help.overview.payment_failed" => "Zahlungsausfälle (Stripe/PayPal-Fehler)"
      "admin.alerts.help.overview.permissions_title" => "Berechtigung:"
      "admin.alerts.help.overview.stuck_orders" => "Bestellungen ohne Statusupdate > X Tage"
      "admin.alerts.help.overview.system_errors" => "Systemfehler / Exception-Logs"
      "admin.alerts.help.overview.title" => "Alerts: Überblick"
      "admin.alerts.help.overview.view" => "Anzeigen"
      "admin.alerts.help.severity.colors.blue" => "Blau"
      "admin.alerts.help.severity.colors.orange" => "Orange"
      "admin.alerts.help.severity.colors.red" => "Rot"
      "admin.alerts.help.severity.critical.action" => "Sofort"
      "admin.alerts.help.severity.critical.meaning" => "Sofortiger Handlungsbedarf, Shop-Funktion beeinträchtigt"
      "admin.alerts.help.severity.info.action" => "Bei Gelegenheit"
      "admin.alerts.help.severity.info.meaning" => "Hinweis, kein sofortiger Handlungsbedarf"
      "admin.alerts.help.severity.table.action_needed" => "Handlungsbedarf"
      "admin.alerts.help.severity.table.color" => "Farbe"
      "admin.alerts.help.severity.table.level" => "Stufe"
      "admin.alerts.help.severity.table.meaning" => "Bedeutung"
      "admin.alerts.help.severity.title" => "Severity-Stufen"
      "admin.alerts.help.severity.warning.action" => "Heute"
      "admin.alerts.help.severity.warning.meaning" => "Problem erkannt, noch keine kritische Auswirkung"
      "admin.alerts.help.test_hint.available_for" => "Verfügbar für Benutzer mit <code>ROLE_ADMIN_ALERT_MANAGE</code>"
      "admin.alerts.help.test_hint.creates_type" => "Erzeugt einen Alert vom Typ <code>manual_test</code>"
      "admin.alerts.help.test_hint.intro" => "Mit der Schaltfläche <kbd>Test-Hinweis</kbd> im Modul kann ein gezielter Prüfeintrag erzeugt werden. Das ist hilfreich, wenn die Liste leer ist und geprüft werden soll, ob Speicherung, Anzeige und globale Admin-Benachrichtigung korrekt funktionieren."
      "admin.alerts.help.test_hint.supports_severities" => "Unterstützt die Schweregrade <code>critical</code>, <code>warning</code> und <code>info</code>"
      "admin.alerts.help.test_hint.title" => "Test-Hinweis"
      "admin.alerts.help.title" => "Hilfe: System-Alerts"
      "admin.alerts.help.types.high_return_rate.description" => "Hohe Retourenrate"
      "admin.alerts.help.types.high_return_rate.trigger" => "RMA/Order-Verhältnis überschritten"
      "admin.alerts.help.types.low_stock.description" => "Niedriger Lagerbestand"
      "admin.alerts.help.types.low_stock.trigger" => "Produkt unter Mindestbestand"
      "admin.alerts.help.types.manual_test.description" => "Manueller Test-Hinweis"
      "admin.alerts.help.types.manual_test.trigger" => "Schaltfläche „Test-Hinweis“ im Alerts-Modul"
      "admin.alerts.help.types.order_stuck.description" => "Hängende Bestellung"
      "admin.alerts.help.types.order_stuck.trigger" => "Status unverändert > Schwellenwert"
      "admin.alerts.help.types.out_of_stock.description" => "Produkt ausverkauft"
      "admin.alerts.help.types.out_of_stock.trigger" => "Bestand = 0"
      "admin.alerts.help.types.payment_failed.description" => "Zahlungsfehler"
      "admin.alerts.help.types.payment_failed.trigger" => "Webhook von Stripe/PayPal"
      "admin.alerts.help.types.system_error.description" => "Systemfehler"
      "admin.alerts.help.types.system_error.trigger" => "Exception im Error-Log"
      "admin.alerts.help.types.table.description" => "Beschreibung"
      "admin.alerts.help.types.table.trigger" => "Auslöser"
      "admin.alerts.help.types.table.type" => "Typ"
      "admin.alerts.help.types.title" => "Alert-Typen"
      "admin.alerts.notifications.create_failed" => "Test-Hinweis konnte nicht erstellt werden."
      "admin.alerts.notifications.create_success" => "Test-Hinweis wurde erstellt."
      "admin.alerts.notifications.invalid_action" => "Ungültige Aktion."
      "admin.alerts.notifications.invalid_severity" => "Ungültiger Schweregrad."
      "admin.alerts.notifications.not_found" => "Hinweis nicht gefunden."
      "admin.alerts.page_title" => "Hinweis-Postfach"
      "admin.alerts.summary.count_label" => "%total% gesamt, Seite %page%/%pages%"
      "admin.alerts.summary.critical" => "Kritisch"
      "admin.alerts.summary.empty" => "Keine Hinweise gefunden."
      "admin.alerts.summary.heading" => "Hinweise"
      "admin.alerts.summary.info" => "Info"
      "admin.alerts.summary.loading" => "Lade…"
      "admin.alerts.summary.selected_suffix" => "ausgewählt"
      "admin.alerts.summary.total_open" => "Gesamt offen"
      "admin.alerts.summary.warning" => "Warnung"
      "admin.alerts.table.actions" => "Aktionen"
      "admin.alerts.table.message" => "Nachricht"
      "admin.alerts.table.no_product" => ""
      "admin.alerts.table.product" => "Produkt"
      "admin.alerts.table.severity" => "Schwere"
      "admin.alerts.table.status" => "Status"
      "admin.alerts.table.time" => "Zeit"
      "admin.alerts.table.type" => "Typ"
      "admin.alerts.test_message.critical" => "Manuell erzeugter Test-Hinweis: Kritisches Problem prüfen."
      "admin.alerts.test_message.info" => "Manuell erzeugter Test-Hinweis: Informationsmeldung prüfen."
      "admin.alerts.test_message.warning" => "Manuell erzeugter Test-Hinweis: Warnung prüfen."
      "admin.alerts.test_modal.description" => "Es wird ein manuell erzeugter Test-Hinweis angelegt, damit die Liste und die globale Admin-Benachrichtigung direkt geprüft werden können."
      "admin.alerts.test_modal.severity_label" => "Schweregrad"
      "admin.alerts.test_modal.title" => "Test-Hinweis erstellen"
      "admin.analytics.help_index.card_subtitle" => "Umsatz, Produkte, Funnel und Export"
      "admin.analytics.help_index.card_title" => "Analytics Cockpit"
      "admin.analytics.help_index.table_description" => "Umsatz, Charts, Funnel, Segmente und CSV-Export"
      "admin.analytics.help_index.table_label" => "Analytics"
      "admin.analytics.help.actions.back" => "Zurück"
      "admin.analytics.help.actions.module" => "Zum Modul"
      "admin.analytics.help.navigation.api" => "API-Endpunkte"
      "admin.analytics.help.navigation.dashboard" => "Dashboard"
      "admin.analytics.help.navigation.export" => "CSV-Export"
      "admin.analytics.help.navigation.interactions" => "Interaktions-Log"
      "admin.analytics.help.navigation.overview" => "Überblick"
      "admin.analytics.help.navigation.title" => "Navigation"
      "admin.analytics.help.page_title" => "Hilfe: Analytics Cockpit"
      "admin.analytics.help.sections.api.headers.function" => "Funktion"
      "admin.analytics.help.sections.api.headers.method" => "Methode"
      "admin.analytics.help.sections.api.headers.parameters" => "Parameter"
      "admin.analytics.help.sections.api.headers.url" => "URL"
      "admin.analytics.help.sections.api.rows.customers" => "Neue Kunden pro Tag"
      "admin.analytics.help.sections.api.rows.dashboard" => "Dashboard-Seite"
      "admin.analytics.help.sections.api.rows.export" => "CSV-Export der aktuellen Analytics-Daten"
      "admin.analytics.help.sections.api.rows.funnel" => "Funnel- und Conversion-Kennzahlen"
      "admin.analytics.help.sections.api.rows.interactions_acquisition" => "Herkunft nach Direkt, Suche, Social und Referral"
      "admin.analytics.help.sections.api.rows.interactions_event_details" => "Detailansicht pro Event mit Konto, Fehlerursache, Login-Feldern, IP, Browser, Land, Route, Pfad und Payload"
      "admin.analytics.help.sections.api.rows.interactions_summary" => "KPI-Zusammenfassung für Interaktionsdaten"
      "admin.analytics.help.sections.api.rows.interactions_technology" => "Browser-, Betriebssystem-, Geräte- und Länderverteilung"
      "admin.analytics.help.sections.api.rows.interactions_visitors" => "Besucherprofile auf Benutzer-, Session- und IP-Basis"
      "admin.analytics.help.sections.api.rows.revenue" => "Täglicher Umsatz und Bestellungen"
      "admin.analytics.help.sections.api.rows.segments" => "Segmentvergleich nach Quelle, Kategorie und Hersteller"
      "admin.analytics.help.sections.api.rows.summary" => "KPI-, Produkt- und Import-Zusammenfassung"
      "admin.analytics.help.sections.api.rows.top_products" => "Meistverkaufte Produkte"
      "admin.analytics.help.sections.api.title" => "API-Endpunkte"
      "admin.analytics.help.sections.dashboard.headers.block" => "Baustein"
      "admin.analytics.help.sections.dashboard.headers.description" => "Beschreibung"
      "admin.analytics.help.sections.dashboard.headers.source" => "Quelle"
      "admin.analytics.help.sections.dashboard.rows.customers_chart.block" => "Neukunden-Chart"
      "admin.analytics.help.sections.dashboard.rows.customers_chart.description" => "Zeigt neue Kunden pro Tag im gewählten Zeitraum."
      "admin.analytics.help.sections.dashboard.rows.funnel.block" => "Conversion Funnel"
      "admin.analytics.help.sections.dashboard.rows.funnel.description" => "Verdichtet Cart- und Checkout-Kennzahlen inklusive Conversion- und Abbruchraten."
      "admin.analytics.help.sections.dashboard.rows.import_overview.block" => "Import-Übersicht"
      "admin.analytics.help.sections.dashboard.rows.import_overview.description" => "Zeigt Importanzahl, Erfolgsquote und den letzten Importzeitpunkt."
      "admin.analytics.help.sections.dashboard.rows.kpis.block" => "KPI-Tiles"
      "admin.analytics.help.sections.dashboard.rows.kpis.description" => "Zeigen Gesamtumsatz, Umsatz im aktiven Zeitraum, Bestellungen, Ø Bestellwert, Kunden und aktive Produkte."
      "admin.analytics.help.sections.dashboard.rows.period_selector.block" => "Zeitraum und Reload"
      "admin.analytics.help.sections.dashboard.rows.period_selector.description" => "Schaltet zwischen 7, 30 und 90 Tagen um und lädt alle Widgets neu."
      "admin.analytics.help.sections.dashboard.rows.product_status.block" => "Produkt-Status"
      "admin.analytics.help.sections.dashboard.rows.product_status.description" => "Listet Gesamtbestand, aktive Produkte, niedrigen Bestand, Ausverkäufe und Durchschnittspreis."
      "admin.analytics.help.sections.dashboard.rows.revenue_chart.block" => "Umsatz-Chart"
      "admin.analytics.help.sections.dashboard.rows.revenue_chart.description" => "Stellt Umsatz und Bestellungen pro Tag im gewählten Zeitraum dar."
      "admin.analytics.help.sections.dashboard.rows.segments.block" => "Segmente"
      "admin.analytics.help.sections.dashboard.rows.segments.description" => "Vergleicht Quelle, Kategorie und Hersteller anhand Units, Umsatz und Deckungsbeitrag."
      "admin.analytics.help.sections.dashboard.rows.top_products.block" => "Top-Produkte"
      "admin.analytics.help.sections.dashboard.rows.top_products.description" => "Rangliste der meistverkauften Produkte mit Menge und Umsatz."
      "admin.analytics.help.sections.dashboard.title" => "Dashboard-Bausteine"
      "admin.analytics.help.sections.export.headers.content" => "Inhalt"
      "admin.analytics.help.sections.export.headers.type" => "type-Parameter"
      "admin.analytics.help.sections.export.intro" => "Der CSV-Export nutzt den aktuell gewählten Zeitraum für Umsatz- und Kundenexporte. Produkt-Exporte ziehen immer die Top-Produkte."
      "admin.analytics.help.sections.export.rows.customers" => "Neue Kunden pro Tag für den aktiven Zeitraum."
      "admin.analytics.help.sections.export.rows.products" => "Top-Produkte mit Verkaufsmenge und Umsatz."
      "admin.analytics.help.sections.export.rows.revenue" => "Tägliche Umsatz- und Bestellzahlen für den aktiven Zeitraum."
      "admin.analytics.help.sections.export.title" => "CSV-Export"
      "admin.analytics.help.sections.interactions.headers.block" => "Baustein"
      "admin.analytics.help.sections.interactions.headers.description" => "Beschreibung"
      "admin.analytics.help.sections.interactions.headers.source" => "Quelle"
      "admin.analytics.help.sections.interactions.intro" => "Das Interaktions-Log erfasst Seitenaufrufe, UI-Events, Login-Erfolge, Login-Fehlschläge und Fehler systemweit inklusive Besucherprofilen, IP-/Session-Bezug, Referrer, Browser, Betriebssystem, Geräten und Ländern."
      "admin.analytics.help.sections.interactions.rows.capture.block" => "Event-Erfassung"
      "admin.analytics.help.sections.interactions.rows.capture.description" => "Sammelt Frontend-Interaktionen sowie Request/Exception-Events aus Backend und Frontend inklusive IP, Session, Referrer, Browser, Betriebssystem, Gerät und Land (GeoLite2 falls vorhanden)."
      "admin.analytics.help.sections.interactions.rows.cleanup.block" => "Retention-Cleanup"
      "admin.analytics.help.sections.interactions.rows.cleanup.description" => "Bereinigt alte Datensätze anhand der definierten Aufbewahrungsregeln."
      "admin.analytics.help.sections.interactions.rows.page.block" => "Interaktionsseite"
      "admin.analytics.help.sections.interactions.rows.page.description" => "Zeigt KPIs, Top-Seiten, Top-Events, Statuscodes und aktuelle Fehler im gewählten Zeitraum. Top-Events lassen sich per Detailansicht bis auf Konto, Fehlerursache, Login-Felder, IP, Browser, Land, Route, Pfad und Payload aufklappen. Für öffentliche IPs steht ein XS-Button zum Kopieren eines Sperrbefehls bereit."
      "admin.analytics.help.sections.interactions.rows.profiles.block" => "Besucherprofile"
      "admin.analytics.help.sections.interactions.rows.profiles.description" => "Verdichtet Nutzer nach Benutzerkennung, Session und IP zu auswertbaren Besucherprofilen mit Einstiegs-/Ausstiegspfaden, aktiver Zeit und Conversion-Hinweisen."
      "admin.analytics.help.sections.interactions.rows.sources.block" => "Herkunft & Technik"
      "admin.analytics.help.sections.interactions.rows.sources.description" => "Zeigt Direktaufrufe, Suchmaschinen, Social, Referral, Browser, Betriebssysteme, Geräte und Länder."
      "admin.analytics.help.sections.interactions.title" => "Interaktions-Log (Frontend & Backend)"
      "admin.analytics.help.sections.overview.ajax" => "Alle Inhalte werden per AJAX geladen. Der Zeitraumsschalter oben rechts aktualisiert Dashboard, Charts, Funnel und Segmente gemeinsam."
      "admin.analytics.help.sections.overview.lead" => "Das Analytics Cockpit bündelt Umsatz, Kunden, Produkt- und Funnel-Daten in einer read-only Dashboard-Ansicht mit JSON-Endpunkten."
      "admin.analytics.help.sections.overview.permissions_label" => "Berechtigung:"
      "admin.analytics.help.sections.overview.title" => "Überblick"
      "admin.analytics.index.actions.export" => "CSV-Export"
      "admin.analytics.index.actions.help" => "Hilfe"
      "admin.analytics.index.actions.help_title" => "Hilfe zu diesem Modul"
      "admin.analytics.index.actions.interactions" => "Interaktions-Log"
      "admin.analytics.index.actions.refresh_title" => "Daten neu laden"
      "admin.analytics.index.api_errors_title" => "API-Fehler im Cockpit"
      "admin.analytics.index.charts.customers_dataset" => "Neue Kunden"
      "admin.analytics.index.charts.customers_title" => "Neue Kunden"
      "admin.analytics.index.charts.orders_dataset" => "Bestellungen"
      "admin.analytics.index.charts.revenue_dataset" => "Umsatz (€)"
      "admin.analytics.index.charts.revenue_title" => "Umsatz-Verlauf"
      "admin.analytics.index.empty" => "Keine Daten"
      "admin.analytics.index.errors.network_parsing" => "Netzwerk/Parsing"
      "admin.analytics.index.errors.request_failed" => "Anfrage fehlgeschlagen"
      "admin.analytics.index.errors.unknown" => "Unbekannter Fehler"
      "admin.analytics.index.export.customers" => "Neukunden (aktiver Zeitraum)"
      "admin.analytics.index.export.products" => "Top-Produkte"
      "admin.analytics.index.export.revenue" => "Umsatz (aktiver Zeitraum)"
      "admin.analytics.index.funnel.rows.abandonment_rate" => "Abbruchrate"
      "admin.analytics.index.funnel.rows.cart_conversion" => "Cart-Conversion"
      "admin.analytics.index.funnel.rows.carts_abandoned" => "Abgebrochene Carts"
      "admin.analytics.index.funnel.rows.carts_converted" => "Konvertierte Carts"
      "admin.analytics.index.funnel.rows.carts_total" => "Carts gesamt"
      "admin.analytics.index.funnel.rows.carts_with_value" => "Carts mit Wert"
      "admin.analytics.index.funnel.rows.checkout_conversion" => "Checkout-Conversion"
      "admin.analytics.index.funnel.rows.orders" => "Bestellungen"
      "admin.analytics.index.funnel.title" => "Conversion Funnel"
      "admin.analytics.index.import_overview.rows.created" => "Produkte erstellt"
      "admin.analytics.index.import_overview.rows.failed" => "Fehlgeschlagen"
      "admin.analytics.index.import_overview.rows.last_import" => "Letzter Import"
      "admin.analytics.index.import_overview.rows.success" => "Erfolgreich"
      "admin.analytics.index.import_overview.rows.total" => "Importe gesamt"
      "admin.analytics.index.import_overview.rows.updated" => "Produkte aktualisiert"
      "admin.analytics.index.import_overview.title" => "Import-Übersicht"
      "admin.analytics.index.kpis.active_products" => "Produkte aktiv"
      "admin.analytics.index.kpis.avg_order" => "Ø Bestellwert"
      "admin.analytics.index.kpis.customers" => "Kunden"
      "admin.analytics.index.kpis.orders" => "Bestellungen"
      "admin.analytics.index.kpis.period_revenue" => "Umsatz"
      "admin.analytics.index.kpis.total_revenue" => "Umsatz gesamt"
      "admin.analytics.index.load_failed" => "Daten konnten nicht geladen werden"
      "admin.analytics.index.loading" => "Lädt..."
      "admin.analytics.index.no_data_export" => "Keine Daten vorhanden"
      "admin.analytics.index.page_title" => "Analytics Cockpit"
      "admin.analytics.index.periods.day_30" => "30 Tage"
      "admin.analytics.index.periods.day_7" => "7 Tage"
      "admin.analytics.index.periods.day_90" => "90 Tage"
      "admin.analytics.index.periods.label" => "%days% Tage"
      "admin.analytics.index.product_status.rows.active" => "Aktiv"
      "admin.analytics.index.product_status.rows.avg_price" => "Ø Preis"
      "admin.analytics.index.product_status.rows.inactive" => "Inaktiv"
      "admin.analytics.index.product_status.rows.low_stock" => "Niedriger Bestand (≤5)"
      "admin.analytics.index.product_status.rows.out_of_stock" => "Ausverkauft"
      "admin.analytics.index.product_status.rows.total" => "Gesamt"
      "admin.analytics.index.product_status.title" => "Produkt-Status"
      "admin.analytics.index.segments.headers.category" => "Kategorie"
      "admin.analytics.index.segments.headers.manufacturer" => "Hersteller"
      "admin.analytics.index.segments.headers.margin" => "DB"
      "admin.analytics.index.segments.headers.margin_rate" => "DB %"
      "admin.analytics.index.segments.headers.revenue" => "Umsatz"
      "admin.analytics.index.segments.headers.source" => "Quelle"
      "admin.analytics.index.segments.headers.units" => "Units"
      "admin.analytics.index.segments.title" => "Segmentierung: Quelle / Kategorie / Hersteller"
      "admin.analytics.index.top_products.headers.product" => "Produkt"
      "admin.analytics.index.top_products.headers.rank" => "#"
      "admin.analytics.index.top_products.headers.revenue" => "Umsatz"
      "admin.analytics.index.top_products.headers.sold" => "Verkauft"
      "admin.analytics.index.top_products.title" => "Top-Produkte nach Verkäufen"
      "admin.analytics.index.values.not_available" => ""
      "admin.analytics.interactions.acquisition.headers.label" => "Detail"
      "admin.analytics.interactions.acquisition.headers.sessions" => "Sessions"
      "admin.analytics.interactions.acquisition.headers.source" => "Quelle"
      "admin.analytics.interactions.acquisition.headers.views" => "Aufrufe"
      "admin.analytics.interactions.acquisition.headers.visitors" => "Besucher"
      "admin.analytics.interactions.actions.cockpit" => "Zum Analytics-Cockpit"
      "admin.analytics.interactions.actions.help" => "Hilfe"
      "admin.analytics.interactions.actions.refresh" => "Daten neu laden"
      "admin.analytics.interactions.areas.all" => "Alle Bereiche"
      "admin.analytics.interactions.areas.backend" => "Backend"
      "admin.analytics.interactions.areas.frontend" => "Frontend"
      "admin.analytics.interactions.event_detail.actions.block_ip" => "IP sperren"
      "admin.analytics.interactions.event_detail.actions.block_ip_confirm" => "Sperrbefehl für IP %ip% in die Zwischenablage kopieren?"
      "admin.analytics.interactions.event_detail.actions.block_ip_copied" => "Sperrbefehl kopiert: %cmd%"
      "admin.analytics.interactions.event_detail.actions.block_ip_copy_failed" => "Kopieren fehlgeschlagen. Befehl: %cmd%"
      "admin.analytics.interactions.event_detail.close" => "Schließen"
      "admin.analytics.interactions.event_detail.failure_types.account_unverified" => "Konto nicht verifiziert"
      "admin.analytics.interactions.event_detail.failure_types.authentication_failed" => "Authentifizierung fehlgeschlagen"
      "admin.analytics.interactions.event_detail.failure_types.csrf_token_invalid" => "CSRF-Token ungültig"
      "admin.analytics.interactions.event_detail.failure_types.invalid_credentials" => "Ungültige Zugangsdaten"
      "admin.analytics.interactions.event_detail.failure_types.missing_identifier" => "Login-Konto fehlt"
      "admin.analytics.interactions.event_detail.failure_types.missing_password" => "Passwort fehlt"
      "admin.analytics.interactions.event_detail.failure_types.rate_limited" => "Rate-Limit aktiv"
      "admin.analytics.interactions.event_detail.headers.account" => "Konto / Versuch"
      "admin.analytics.interactions.event_detail.headers.action" => "Aktion"
      "admin.analytics.interactions.event_detail.headers.credential_meta" => "Login-Felder"
      "admin.analytics.interactions.event_detail.headers.failure_reason" => "Fehlerursache"
      "admin.analytics.interactions.event_detail.headers.ip_country" => "IP / Land"
      "admin.analytics.interactions.event_detail.headers.path" => "Methode / Route / Pfad"
      "admin.analytics.interactions.event_detail.headers.payload" => "Payload / Details"
      "admin.analytics.interactions.event_detail.headers.source" => "Quelle"
      "admin.analytics.interactions.event_detail.headers.status" => "Status"
      "admin.analytics.interactions.event_detail.headers.tech" => "Browser / System / Gerät"
      "admin.analytics.interactions.event_detail.headers.when" => "Zeitpunkt"
      "admin.analytics.interactions.event_detail.meta.password_provided_no" => "Passwort: nein"
      "admin.analytics.interactions.event_detail.meta.password_provided_yes" => "Passwort: ja"
      "admin.analytics.interactions.event_detail.no_payload" => "Keine Zusatzdaten"
      "admin.analytics.interactions.event_detail.summary.count" => "Vorkommen"
      "admin.analytics.interactions.event_detail.summary.first_seen" => "Erstes Auftreten"
      "admin.analytics.interactions.event_detail.summary.ips" => "IPs"
      "admin.analytics.interactions.event_detail.summary.last_seen" => "Letztes Auftreten"
      "admin.analytics.interactions.event_detail.summary.users" => "Nutzer"
      "admin.analytics.interactions.event_detail.summary.visitors" => "Besucher"
      "admin.analytics.interactions.event_detail.title" => "Event-Details"
      "admin.analytics.interactions.event_detail.title_prefix" => "Event-Details"
      "admin.analytics.interactions.filters.area" => "Bereich"
      "admin.analytics.interactions.kpis.errors" => "Fehler-Events"
      "admin.analytics.interactions.kpis.page_views" => "Seitenaufrufe"
      "admin.analytics.interactions.kpis.total_events" => "Events gesamt"
      "admin.analytics.interactions.kpis.unique_sessions" => "Eindeutige Sessions"
      "admin.analytics.interactions.kpis.unique_visitors" => "Eindeutige Besucher"
      "admin.analytics.interactions.loading" => "Lädt..."
      "admin.analytics.interactions.no_data" => "Keine Daten"
      "admin.analytics.interactions.page_title" => "Interaktions-Log & Nutzungsanalyse"
      "admin.analytics.interactions.periods.day_30" => "30 Tage"
      "admin.analytics.interactions.periods.day_7" => "7 Tage"
      "admin.analytics.interactions.periods.day_90" => "90 Tage"
      "admin.analytics.interactions.quality.avg_duration" => "Ø Request-Dauer"
      "admin.analytics.interactions.quality.backend_events" => "Backend-Events"
      "admin.analytics.interactions.quality.bot_events" => "Bot-Events"
      "admin.analytics.interactions.quality.direct_visits" => "Direkte Einstiege"
      "admin.analytics.interactions.quality.frontend_events" => "Frontend-Events"
      "admin.analytics.interactions.quality.referral_visits" => "Referral-Einstiege"
      "admin.analytics.interactions.quality.search_visits" => "Suchmaschinen-Einstiege"
      "admin.analytics.interactions.quality.social_visits" => "Social-Einstiege"
      "admin.analytics.interactions.quality.unique_ips" => "Eindeutige IPs"
      "admin.analytics.interactions.quality.unique_sessions" => "Eindeutige Sessions"
      "admin.analytics.interactions.quality.unique_users" => "Eindeutige Nutzer"
      "admin.analytics.interactions.recent_errors.headers.area" => "Bereich"
      "admin.analytics.interactions.recent_errors.headers.country" => "Land"
      "admin.analytics.interactions.recent_errors.headers.event" => "Event"
      "admin.analytics.interactions.recent_errors.headers.ip" => "IP"
      "admin.analytics.interactions.recent_errors.headers.path" => "Pfad"
      "admin.analytics.interactions.recent_errors.headers.source" => "Quelle"
      "admin.analytics.interactions.recent_errors.headers.status" => "Status"
      "admin.analytics.interactions.recent_errors.headers.tech" => "Technik"
      "admin.analytics.interactions.recent_errors.headers.visitor" => "Besucher"
      "admin.analytics.interactions.recent_errors.headers.when" => "Zeitpunkt"
      "admin.analytics.interactions.request_failed" => "Anfrage fehlgeschlagen"
      "admin.analytics.interactions.sections.acquisition" => "Herkunft & Einstiege"
      "admin.analytics.interactions.sections.quality" => "Qualitätsindikatoren"
      "admin.analytics.interactions.sections.recent_errors" => "Letzte Fehler"
      "admin.analytics.interactions.sections.status_codes" => "HTTP Statuscodes"
      "admin.analytics.interactions.sections.technology" => "Technik & Länder"
      "admin.analytics.interactions.sections.top_events" => "Top Interaktionen"
      "admin.analytics.interactions.sections.top_pages" => "Top Seiten"
      "admin.analytics.interactions.sections.views_chart" => "Seitenaufrufe im Zeitverlauf"
      "admin.analytics.interactions.sections.visitors" => "Besucherprofile"
      "admin.analytics.interactions.sources.direct" => "Direkt"
      "admin.analytics.interactions.sources.internal" => "Intern"
      "admin.analytics.interactions.sources.referral" => "Referral"
      "admin.analytics.interactions.sources.search" => "Suchmaschine"
      "admin.analytics.interactions.sources.social" => "Social"
      "admin.analytics.interactions.sources.unknown" => "Unbekannt"
      "admin.analytics.interactions.status_codes.headers.code" => "Statuscode"
      "admin.analytics.interactions.status_codes.headers.count" => "Anzahl"
      "admin.analytics.interactions.technology.browsers" => "Browser"
      "admin.analytics.interactions.technology.countries" => "Länder"
      "admin.analytics.interactions.technology.devices" => "Geräte"
      "admin.analytics.interactions.technology.headers.label" => "Kategorie"
      "admin.analytics.interactions.technology.headers.views" => "Aufrufe"
      "admin.analytics.interactions.technology.headers.visitors" => "Besucher"
      "admin.analytics.interactions.technology.operating_systems" => "Betriebssysteme"
      "admin.analytics.interactions.top_events.actions.details" => "Details"
      "admin.analytics.interactions.top_events.headers.actions" => "Aktion"
      "admin.analytics.interactions.top_events.headers.count" => "Anzahl"
      "admin.analytics.interactions.top_events.headers.event_name" => "Event"
      "admin.analytics.interactions.top_events.headers.ips" => "IPs"
      "admin.analytics.interactions.top_events.headers.last_seen" => "Letztes Auftreten"
      "admin.analytics.interactions.top_events.headers.users" => "Nutzer"
      "admin.analytics.interactions.top_pages.headers.avg_duration" => "Ø Dauer"
      "admin.analytics.interactions.top_pages.headers.path" => "Pfad"
      "admin.analytics.interactions.top_pages.headers.sessions" => "Sessions"
      "admin.analytics.interactions.top_pages.headers.views" => "Aufrufe"
      "admin.analytics.interactions.top_pages.headers.visitors" => "Besucher"
      "admin.analytics.interactions.units.ms" => "ms"
      "admin.analytics.interactions.units.percent" => "%"
      "admin.analytics.interactions.units.sec" => "s"
      "admin.analytics.interactions.visitors.headers.active_time" => "Aktive Zeit"
      "admin.analytics.interactions.visitors.headers.conversion_rate" => "Conversion-Rate"
      "admin.analytics.interactions.visitors.headers.conversions" => "Conversion-Hits"
      "admin.analytics.interactions.visitors.headers.country" => "Land"
      "admin.analytics.interactions.visitors.headers.events" => "Events"
      "admin.analytics.interactions.visitors.headers.first_seen" => "Erste Aktivität"
      "admin.analytics.interactions.visitors.headers.ip" => "IP"
      "admin.analytics.interactions.visitors.headers.last_seen" => "Letzte Aktivität"
      "admin.analytics.interactions.visitors.headers.pages" => "Seitenaufrufe"
      "admin.analytics.interactions.visitors.headers.paths" => "Einstieg -> Letzte Seite"
      "admin.analytics.interactions.visitors.headers.sessions" => "Sessions"
      "admin.analytics.interactions.visitors.headers.source" => "Quelle"
      "admin.analytics.interactions.visitors.headers.tech" => "Technik"
      "admin.analytics.interactions.visitors.headers.user" => "Benutzer"
      "admin.analytics.interactions.visitors.headers.visitor" => "Besucher-Key"
      "admin.analytics.nav.cockpit" => "Cockpit"
      "admin.analytics.nav.group" => "Analytics"
      "admin.apartment.form.create_title" => "Neue Wohnung"
      "admin.apartment.form.edit_title" => "Wohnung bearbeiten"
      "admin.apartment.form.fields.active" => "Aktiv"
      "admin.apartment.form.fields.capacity" => "Kapazität (Personen)"
      "admin.apartment.form.fields.color" => "Farbe im Kalender"
      "admin.apartment.form.fields.description" => "Beschreibung"
      "admin.apartment.form.fields.name" => "Name"
      "admin.apartment.form.list_title" => "Wohnungen"
      "admin.apartment.list.columns.actions" => "Aktionen"
      "admin.apartment.list.columns.active" => "Aktiv"
      "admin.apartment.list.columns.capacity" => "Kapazität"
      "admin.apartment.list.columns.color" => "Farbe"
      "admin.apartment.list.columns.created" => "Erstellt"
      "admin.apartment.list.columns.description" => "Beschreibung"
      "admin.apartment.list.columns.name" => "Name"
      "admin.apartment.list.create" => "Neue Wohnung"
      "admin.apartment.list.delete_message" => "Wohnung "%name%" wirklich löschen?"
      "admin.apartment.list.empty" => "Keine Wohnungen vorhanden."
      "admin.apartment.list.panel_title" => "Wohnungsliste"
      "admin.apartment.list.subtitle" => "Ferienwohnungen und Einheiten verwalten."
      "admin.apartment.list.title" => "Wohnungen"
      "admin.apartment.list.values.no" => "Nein"
      "admin.apartment.list.values.yes" => "Ja"
      "admin.apartment.notifications.created" => "Wohnung wurde angelegt."
      "admin.apartment.notifications.deleted" => "Wohnung wurde gelöscht."
      "admin.apartment.notifications.updated" => "Wohnung wurde gespeichert."
      "admin.b2b.help_index.card_subtitle" => "Gruppen, Sonderpreise und Freigaben"
      "admin.b2b.help_index.card_title" => "B2B-Verwaltung"
      "admin.b2b.help_index.table_description" => "Kundengruppen, Gruppenpreise und Genehmigungen"
      "admin.b2b.help_index.table_label" => "B2B"
      "admin.b2b.help.actions.back" => "Zurück"
      "admin.b2b.help.actions.module" => "Zum Modul"
      "admin.b2b.help.api.rows.group_edit" => "Bestehende Kundengruppe aktualisieren."
      "admin.b2b.help.api.rows.group_new" => "Neue Kundengruppe anlegen."
      "admin.b2b.help.api.rows.index" => "B2B-Übersicht mit Gruppen, Preisen, Anfragen und Bestellungen."
      "admin.b2b.help.api.rows.order_approve" => "Bestellung freigeben."
      "admin.b2b.help.api.rows.order_reject" => "Bestellung ablehnen."
      "admin.b2b.help.api.rows.price_delete" => "Gruppenpreis löschen."
      "admin.b2b.help.api.rows.price_save" => "Gruppenpreis speichern oder überschreiben."
      "admin.b2b.help.api.rows.quote_status" => "Status einer Angebotsanfrage setzen."
      "admin.b2b.help.api.table.function" => "Funktion"
      "admin.b2b.help.api.table.method" => "Methode"
      "admin.b2b.help.api.table.url" => "URL"
      "admin.b2b.help.api.title" => "API-Endpunkte"
      "admin.b2b.help.fields.customer_group.rows.created_at" => "Zeitpunkt der Gruppenerstellung."
      "admin.b2b.help.fields.customer_group.rows.default_net_view" => "Steuert, ob Kunden der Gruppe standardmäßig Nettopreise sehen."
      "admin.b2b.help.fields.customer_group.rows.discount_percent" => "Standardrabatt in Prozent mit Begrenzung auf 0 bis 90."
      "admin.b2b.help.fields.customer_group.rows.is_active" => "Aktiviert oder deaktiviert die Gruppe."
      "admin.b2b.help.fields.customer_group.rows.name" => "Eindeutiger Name der Kundengruppe."
      "admin.b2b.help.fields.customer_group.title" => "CustomerGroup"
      "admin.b2b.help.fields.product_group_price.rows.customer_group" => "Verknüpft die Preisüberschreibung mit einer Kundengruppe."
      "admin.b2b.help.fields.product_group_price.rows.price" => "Gespeicherter Gruppenpreis für diese Produkt-Gruppen-Kombination."
      "admin.b2b.help.fields.product_group_price.rows.product" => "Verknüpft die Preisüberschreibung mit einem Produkt."
      "admin.b2b.help.fields.product_group_price.rows.updated_at" => "Wird bei jeder Preisänderung aktualisiert."
      "admin.b2b.help.fields.product_group_price.title" => "ProductGroupPrice"
      "admin.b2b.help.fields.quote_request.rows.company_name" => "Firmenname des Anfragenden."
      "admin.b2b.help.fields.quote_request.rows.contact_name" => "Name der Kontaktperson."
      "admin.b2b.help.fields.quote_request.rows.created_at" => "Eingangszeitpunkt der Anfrage."
      "admin.b2b.help.fields.quote_request.rows.email" => "E-Mail-Adresse für Rückfragen und Zuordnung."
      "admin.b2b.help.fields.quote_request.rows.message" => "Freitext der Anfrage."
      "admin.b2b.help.fields.quote_request.rows.phone" => "Optionale Telefonnummer."
      "admin.b2b.help.fields.quote_request.rows.requested_group" => "Optional gewünschte Ziel-Kundengruppe."
      "admin.b2b.help.fields.quote_request.rows.status" => "Aktueller Bearbeitungsstatus der Anfrage."
      "admin.b2b.help.fields.quote_request.rows.updated_at" => "Zeitpunkt der letzten Statusänderung."
      "admin.b2b.help.fields.quote_request.title" => "B2BQuoteRequest"
      "admin.b2b.help.fields.table.description" => "Beschreibung"
      "admin.b2b.help.fields.table.field" => "Feld"
      "admin.b2b.help.fields.table.type" => "Typ"
      "admin.b2b.help.fields.title" => "Feldreferenz"
      "admin.b2b.help.fields.types.boolean" => "Boolean"
      "admin.b2b.help.fields.types.datetime" => "Datum/Zeit"
      "admin.b2b.help.fields.types.decimal" => "Dezimal"
      "admin.b2b.help.fields.types.relation" => "Relation"
      "admin.b2b.help.fields.types.text" => "Text"
      "admin.b2b.help.groups.assignment_field" => "im Feld"
      "admin.b2b.help.groups.assignment_label" => "Kunden einer Gruppe zuweisen:"
      "admin.b2b.help.groups.assignment_text" => "Im Modul Shop-Benutzer unter"
      "admin.b2b.help.groups.note" => "Der Gruppenrabatt ist der Standard für diese Gruppe. Produktspezifische Gruppenpreise überschreiben ihn."
      "admin.b2b.help.groups.steps_title" => "Schritt für Schritt: Kundengruppe anlegen"
      "admin.b2b.help.groups.steps.five" => "Gruppe speichern und anschließend bei Bedarf Kunden zuordnen."
      "admin.b2b.help.groups.steps.four" => "Optional defaultNetView aktivieren, damit Kunden Nettopreise sehen."
      "admin.b2b.help.groups.steps.one" => "Im Modul B2B die Aktion "Neue Kundengruppe" verwenden."
      "admin.b2b.help.groups.steps.three" => "discountPercent als Standardrabatt in Prozent festlegen."
      "admin.b2b.help.groups.steps.two" => "Name der Gruppe eintragen, zum Beispiel Händler Premium."
      "admin.b2b.help.groups.title" => "Kundengruppen verwalten"
      "admin.b2b.help.navigation.api" => "API-Endpunkte"
      "admin.b2b.help.navigation.fields" => "Feldreferenz"
      "admin.b2b.help.navigation.groups" => "Kundengruppen"
      "admin.b2b.help.navigation.orders" => "Bestellfreigaben"
      "admin.b2b.help.navigation.overview" => "Überblick"
      "admin.b2b.help.navigation.prices" => "Gruppenpreise"
      "admin.b2b.help.navigation.quotes" => "Angebotsanfragen"
      "admin.b2b.help.navigation.title" => "Navigation"
      "admin.b2b.help.navigation.workflow" => "Workflow"
      "admin.b2b.help.orders.approve_label" => "Freigeben:"
      "admin.b2b.help.orders.approve_text" => "setzt den Status auf approved und füllt approvedBy sowie approvedAt."
      "admin.b2b.help.orders.intro" => "Offene B2B-Bestellungen erscheinen mit dem Status pending und können im Admin freigegeben oder abgelehnt werden."
      "admin.b2b.help.orders.reject_label" => "Ablehnen:"
      "admin.b2b.help.orders.reject_text" => "setzt den Status auf rejected und dokumentiert ebenfalls den Bearbeitungszeitpunkt."
      "admin.b2b.help.orders.title" => "Bestell-Freigabe"
      "admin.b2b.help.overview.cards.groups_text" => "Rabattstufen und Nettoansicht für unterschiedliche B2B-Segmente."
      "admin.b2b.help.overview.cards.groups_title" => "Kundengruppen"
      "admin.b2b.help.overview.cards.prices_text" => "Produktspezifische Sonderpreise pro Kundengruppe."
      "admin.b2b.help.overview.cards.prices_title" => "Gruppenpreise"
      "admin.b2b.help.overview.cards.workflow_text" => "Angebotsanfragen prüfen und Bestellungen freigeben oder ablehnen."
      "admin.b2b.help.overview.cards.workflow_title" => "Anfragen & Freigaben"
      "admin.b2b.help.overview.intro" => "Das B2B-Modul erweitert den Shop um Geschäftskunden-Funktionen und bündelt Gruppenverwaltung, Sonderpreise sowie Freigaben in einer Oberfläche."
      "admin.b2b.help.overview.permission_label" => "Berechtigung:"
      "admin.b2b.help.overview.title" => "B2B-System: Überblick"
      "admin.b2b.help.page_title" => "Hilfe: B2B-Verwaltung"
      "admin.b2b.help.prices.intro" => "Gruppenpreise überschreiben den allgemeinen Gruppenrabatt für ein konkretes Produkt und eine konkrete Kundengruppe."
      "admin.b2b.help.prices.priority" => "Priorität: Gruppenpreis pro Produkt vor Gruppenrabatt vor Standard-Produktpreis."
      "admin.b2b.help.prices.steps.five" => "Bestehende Preisüberschreibungen lassen sich darunter prüfen und löschen."
      "admin.b2b.help.prices.steps.four" => "Speichern, damit der Preis für alle Mitglieder dieser Gruppe gilt."
      "admin.b2b.help.prices.steps.one" => "Im Bereich "Gruppenpreis setzen" zuerst ein Produkt suchen oder auswählen."
      "admin.b2b.help.prices.steps.three" => "Den Zielpreis als Bruttopreis eintragen."
      "admin.b2b.help.prices.steps.two" => "Danach die gewünschte Kundengruppe auswählen."
      "admin.b2b.help.prices.title" => "Produktspezifische Gruppenpreise"
      "admin.b2b.help.quotes.intro" => "B2B-Kunden können über den Shop Angebotsanfragen senden. Im Admin können diese Anfragen geprüft und in einen Zielstatus gesetzt werden."
      "admin.b2b.help.quotes.params_label" => "Parameter:"
      "admin.b2b.help.quotes.params_text" => "als Zielstatus der Anfrage."
      "admin.b2b.help.quotes.route_label" => "Route:"
      "admin.b2b.help.quotes.rows.approved.action" => "Kunde kann weiter im B2B-Prozess geführt werden."
      "admin.b2b.help.quotes.rows.approved.meaning" => "Anfrage freigegeben."
      "admin.b2b.help.quotes.rows.in_review.action" => "Genehmigen oder ablehnen."
      "admin.b2b.help.quotes.rows.in_review.meaning" => "Die Anfrage wird aktuell bearbeitet."
      "admin.b2b.help.quotes.rows.open.action" => "Zur Prüfung übernehmen."
      "admin.b2b.help.quotes.rows.open.meaning" => "Neu eingegangen und noch nicht geprüft."
      "admin.b2b.help.quotes.rows.rejected.action" => "Kunde bleibt ohne B2B-Freigabe."
      "admin.b2b.help.quotes.rows.rejected.meaning" => "Anfrage abgelehnt."
      "admin.b2b.help.quotes.table.admin_action" => "Admin-Aktion"
      "admin.b2b.help.quotes.table.meaning" => "Bedeutung"
      "admin.b2b.help.quotes.table.status" => "Status"
      "admin.b2b.help.quotes.title" => "Angebotsanfragen"
      "admin.b2b.help.workflow.intro" => "Typischer Ablauf im B2B-Modul von der Anfrage bis zur Bestellentscheidung:"
      "admin.b2b.help.workflow.steps.four" => "Offene Bestellungen prüfen und freigeben oder ablehnen."
      "admin.b2b.help.workflow.steps.one" => "Kundengruppe definieren und Standardrabatt konfigurieren."
      "admin.b2b.help.workflow.steps.three" => "Angebotsanfragen sichten und den B2B-Status des Kunden aktualisieren."
      "admin.b2b.help.workflow.steps.two" => "Bei Bedarf produktbezogene Gruppenpreise ergänzen."
      "admin.b2b.help.workflow.title" => "Workflow"
      "admin.b2b.index.approval_orders.actions.approve" => "Freigeben"
      "admin.b2b.index.approval_orders.actions.reject" => "Ablehnen"
      "admin.b2b.index.approval_orders.table.action" => "Aktion"
      "admin.b2b.index.approval_orders.table.customer" => "Kunde"
      "admin.b2b.index.approval_orders.table.empty" => "Keine offenen Freigaben."
      "admin.b2b.index.approval_orders.table.id" => "ID"
      "admin.b2b.index.approval_orders.table.total" => "Gesamt"
      "admin.b2b.index.approval_orders.title" => "Bestellfreigaben"
      "admin.b2b.index.approval_orders.values.none" => "-"
      "admin.b2b.index.common.cancel" => "Abbrechen"
      "admin.b2b.index.common.delete" => "Löschen"
      "admin.b2b.index.common.save" => "Speichern"
      "admin.b2b.index.delete_modal.title" => "Löschen bestätigen"
      "admin.b2b.index.existing_prices.delete_confirm" => "Gruppenpreis für "%product%" wirklich löschen?"
      "admin.b2b.index.existing_prices.table.action" => "Aktion"
      "admin.b2b.index.existing_prices.table.empty" => "Noch keine Gruppenpreise vorhanden."
      "admin.b2b.index.existing_prices.table.group" => "Kundengruppe"
      "admin.b2b.index.existing_prices.table.id" => "#"
      "admin.b2b.index.existing_prices.table.price" => "Preis (Brutto)"
      "admin.b2b.index.existing_prices.table.product" => "Produkt"
      "admin.b2b.index.existing_prices.table.updated" => "Zuletzt geändert"
      "admin.b2b.index.existing_prices.title" => "Bestehende Gruppenpreise"
      "admin.b2b.index.groups.create.active" => "Aktiv"
      "admin.b2b.index.groups.create.default_net_view" => "Netto-Default"
      "admin.b2b.index.groups.create.discount_placeholder" => "Rabatt %"
      "admin.b2b.index.groups.create.name_placeholder" => "Gruppenname"
      "admin.b2b.index.groups.create.submit" => "Anlegen"
      "admin.b2b.index.groups.table.action" => "Aktion"
      "admin.b2b.index.groups.table.discount" => "Rabatt"
      "admin.b2b.index.groups.table.empty" => "Keine Gruppen vorhanden."
      "admin.b2b.index.groups.table.name" => "Name"
      "admin.b2b.index.groups.table.net" => "Netto"
      "admin.b2b.index.groups.table.status" => "Status"
      "admin.b2b.index.groups.title" => "Kundengruppen"
      "admin.b2b.index.page_subtitle" => "Kundengruppen, Sonderpreise und Freigaben an einem Ort."
      "admin.b2b.index.page_title" => "B2B-Verwaltung"
      "admin.b2b.index.price_override.fields.group" => "Gruppe"
      "admin.b2b.index.price_override.fields.price" => "Preis (Brutto)"
      "admin.b2b.index.price_override.fields.product" => "Produkt"
      "admin.b2b.index.price_override.placeholders.group" => "Bitte wählen"
      "admin.b2b.index.price_override.placeholders.product" => "-- Produkt suchen / wählen --"
      "admin.b2b.index.price_override.title" => "Gruppenpreis setzen"
      "admin.b2b.index.quotes.actions.approve" => "Genehmigen"
      "admin.b2b.index.quotes.actions.reject" => "Ablehnen"
      "admin.b2b.index.quotes.actions.review" => "Prüfen"
      "admin.b2b.index.quotes.status.approved" => "Genehmigt"
      "admin.b2b.index.quotes.status.cancelled" => "Storniert"
      "admin.b2b.index.quotes.status.in_review" => "In Prüfung"
      "admin.b2b.index.quotes.status.open" => "Neu"
      "admin.b2b.index.quotes.status.rejected" => "Abgelehnt"
      "admin.b2b.index.quotes.table.action" => "Aktion"
      "admin.b2b.index.quotes.table.company" => "Firma"
      "admin.b2b.index.quotes.table.contact" => "Kontakt"
      "admin.b2b.index.quotes.table.empty" => "Keine Anfragen."
      "admin.b2b.index.quotes.table.requested_group" => "Gewünschte Gruppe"
      "admin.b2b.index.quotes.table.status" => "Status"
      "admin.b2b.index.quotes.title" => "Angebotsanfragen"
      "admin.b2b.index.quotes.values.none" => "Keine Auswahl"
      "admin.b2b.index.toolbar.create_group" => "Neue Kundengruppe"
      "admin.b2b.index.toolbar.help" => "Hilfe"
      "admin.b2b.nav.menu" => "B2B"
      "admin.b2b.nav.submenu" => "Kundengruppen & Freigaben"
      "admin.b2b.notifications.group_created" => "Kundengruppe wurde angelegt."
      "admin.b2b.notifications.group_updated" => "Kundengruppe wurde aktualisiert."
      "admin.b2b.notifications.invalid_status" => "Ungültiger Status."
      "admin.b2b.notifications.missing_product_or_group" => "Produkt oder Gruppe nicht gefunden."
      "admin.b2b.notifications.order_approved" => "Bestellung wurde freigegeben."
      "admin.b2b.notifications.order_rejected" => "Bestellung wurde abgelehnt."
      "admin.b2b.notifications.price_deleted" => "Gruppenpreis wurde gelöscht."
      "admin.b2b.notifications.price_saved" => "Gruppenpreis gespeichert."
      "admin.b2b.notifications.quote_status_updated" => "Anfrage-Status wurde aktualisiert."
      "admin.booking.form.create_title" => "Neue Buchung"
      "admin.booking.form.edit_title" => "Buchung bearbeiten"
      "admin.booking.form.fields.apartment" => "Wohnung"
      "admin.booking.form.fields.apartment_placeholder" => "Wohnung wählen..."
      "admin.booking.form.fields.end" => "Abreise"
      "admin.booking.form.fields.guest_email" => "E-Mail"
      "admin.booking.form.fields.guest_name" => "Gastname"
      "admin.booking.form.fields.guest_phone" => "Telefon"
      "admin.booking.form.fields.notes" => "Notizen"
      "admin.booking.form.fields.price" => "Preis"
      "admin.booking.form.fields.start" => "Anreise"
      "admin.booking.form.fields.status" => "Status"
      "admin.booking.form.fields.status_cancelled" => "Storniert"
      "admin.booking.form.fields.status_confirmed" => "Bestätigt"
      "admin.booking.form.fields.status_pending" => "Ausstehend"
      "admin.booking.form.fields.title" => "Titel"
      "admin.booking.form.list_title" => "Buchungen"
      "admin.booking.list.columns.actions" => "Aktionen"
      "admin.booking.list.columns.apartment" => "Wohnung"
      "admin.booking.list.columns.arrival" => "Anreise"
      "admin.booking.list.columns.departure" => "Abreise"
      "admin.booking.list.columns.guest_name" => "Gastname"
      "admin.booking.list.create" => "Neue Buchung"
      "admin.booking.list.delete_message" => "Buchung von "%guest%" wirklich löschen?"
      "admin.booking.list.empty" => "Keine Buchungen vorhanden."
      "admin.booking.list.panel_title" => "Buchungsliste"
      "admin.booking.list.subtitle" => "Gästebuchungen und Belegungszeiten verwalten."
      "admin.booking.list.title" => "Buchungen"
      "admin.booking.notifications.created" => "Buchung wurde angelegt."
      "admin.booking.notifications.deleted" => "Buchung wurde gelöscht."
      "admin.booking.notifications.updated" => "Buchung wurde gespeichert."
      "admin.calendar.actions.manage_apartments" => "Wohnungen verwalten"
      "admin.calendar.actions.manage_bookings" => "Buchungen verwalten"
      "admin.calendar.errors.apartment_not_found" => "Wohnung nicht gefunden"
      "admin.calendar.errors.delete_confirm" => "Buchung wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden."
      "admin.calendar.errors.generic" => "Fehler: %message%"
      "admin.calendar.errors.invalid_date_range" => "Abreise muss nach Anreise liegen."
      "admin.calendar.errors.invalid_token" => "Ungültiger Token"
      "admin.calendar.errors.load_failed" => "Fehler beim Laden:"
      "admin.calendar.errors.move_failed" => "Fehler beim Verschieben: %message%"
      "admin.calendar.errors.overlap" => "Zeitraum überschneidet sich mit einer bestehenden Buchung."
      "admin.calendar.errors.required_fields" => "Bitte alle Pflichtfelder ausfüllen."
      "admin.calendar.errors.resize_failed" => "Fehler beim Ändern: %message%"
      "admin.calendar.errors.server_error" => "Serverfehler"
      "admin.calendar.modal.edit_title" => "Buchung bearbeiten"
      "admin.calendar.modal.guest_name_placeholder" => "Gastname eingeben"
      "admin.calendar.modal.new_title" => "Neue Buchung"
      "admin.calendar.modal.notes_placeholder" => "Interne Notizen..."
      "admin.calendar.modal.title" => "Buchung"
      "admin.calendar.modal.title_hint" => "optional, Standard: Gastname"
      "admin.calendar.modal.title_placeholder" => "Buchungstitel"
      "admin.calendar.navigation.next_month" => "Nächster Monat"
      "admin.calendar.navigation.previous_month" => "Vorheriger Monat"
      "admin.calendar.navigation.today" => "Heute"
      "admin.calendar.notifications.moved" => "Buchung wurde verschoben."
      "admin.calendar.page.heading" => "Buchungsplan Wohnungen"
      "admin.calendar.page.subtitle" => "Interaktiver Belegungsplan für Buchungen und Wohnungen."
      "admin.calendar.page.title" => "Kalender"
      "admin.cart_intelligence.help_index.card_subtitle" => "Abbrüche, Cross-Sell und Up-Sell-Regeln"
      "admin.cart_intelligence.help_index.card_title" => "Cart Intelligence"
      "admin.cart_intelligence.help_index.table_description" => "Abgebrochene Warenkörbe, KPIs und Cross-Sell-Regeln"
      "admin.cart_intelligence.help_index.table_label" => "Cart Intelligence"
      "admin.cart_intelligence.help.abandoned.api_label" => "API:"
      "admin.cart_intelligence.help.abandoned.intro" => "Die Dashboard-Liste zeigt verlassene Warenkörbe inklusive Kunde oder Session, Warenkorbwert, Alter, Zahlungsart und Status."
      "admin.cart_intelligence.help.abandoned.list_title" => "Anzeige in der Liste:"
      "admin.cart_intelligence.help.abandoned.points.four" => "Zahlungsart und technischer Status"
      "admin.cart_intelligence.help.abandoned.points.one" => "Kunde oder Session-ID"
      "admin.cart_intelligence.help.abandoned.points.three" => "Zeit seit der letzten Aktivität"
      "admin.cart_intelligence.help.abandoned.points.two" => "Warenkorbwert in EUR"
      "admin.cart_intelligence.help.abandoned.title" => "Abgebrochene Warenkörbe"
      "admin.cart_intelligence.help.actions.back" => "Zurück"
      "admin.cart_intelligence.help.actions.module" => "Zum Modul"
      "admin.cart_intelligence.help.api.rows.abandoned" => "Abgebrochene Warenkörbe als JSON"
      "admin.cart_intelligence.help.api.rows.edit" => "Regel bearbeiten"
      "admin.cart_intelligence.help.api.rows.index" => "Cart-Intelligence-Dashboard"
      "admin.cart_intelligence.help.api.rows.new" => "Neue Regel anlegen"
      "admin.cart_intelligence.help.api.rows.rules" => "Regelliste und Quick-Edits"
      "admin.cart_intelligence.help.api.rows.stats" => "Performance-Ansicht für Regeln"
      "admin.cart_intelligence.help.api.rows.summary" => "KPI-Zusammenfassung"
      "admin.cart_intelligence.help.api.rows.top_products" => "Top-Produkte aus abgebrochenen Warenkörben"
      "admin.cart_intelligence.help.api.table.function" => "Funktion"
      "admin.cart_intelligence.help.api.table.method" => "Methode"
      "admin.cart_intelligence.help.api.table.url" => "URL"
      "admin.cart_intelligence.help.api.title" => "API-Endpunkte"
      "admin.cart_intelligence.help.fields.rows.active" => "Aktivstatus der Regel"
      "admin.cart_intelligence.help.fields.rows.discount_percent" => "Optionaler Rabatt auf das Zielprodukt"
      "admin.cart_intelligence.help.fields.rows.min_cart_value" => "Mindest-Warenkorbwert für die Anzeige"
      "admin.cart_intelligence.help.fields.rows.priority" => "Anzeigepriorität (höher = weiter oben)"
      "admin.cart_intelligence.help.fields.rows.source_product" => "Quellprodukt, das die Empfehlung auslöst"
      "admin.cart_intelligence.help.fields.rows.target_product" => "Empfohlenes Zielprodukt"
      "admin.cart_intelligence.help.fields.rows.type" => "cross_sell / up_sell / bundle"
      "admin.cart_intelligence.help.fields.rows.valid_until" => "Optionales Ablaufdatum"
      "admin.cart_intelligence.help.fields.table.description" => "Beschreibung"
      "admin.cart_intelligence.help.fields.table.field" => "Feld"
      "admin.cart_intelligence.help.fields.table.type" => "Typ"
      "admin.cart_intelligence.help.fields.title" => "Feldreferenz: CrossSellRule"
      "admin.cart_intelligence.help.fields.types.boolean" => "Boolean"
      "admin.cart_intelligence.help.fields.types.date" => "Datum"
      "admin.cart_intelligence.help.fields.types.decimal" => "Dezimal"
      "admin.cart_intelligence.help.fields.types.enum" => "Enum"
      "admin.cart_intelligence.help.fields.types.integer" => "Integer"
      "admin.cart_intelligence.help.fields.types.relation" => "Relation"
      "admin.cart_intelligence.help.navigation.abandoned" => "Abgebrochene Warenkörbe"
      "admin.cart_intelligence.help.navigation.api" => "API-Endpunkte"
      "admin.cart_intelligence.help.navigation.fields" => "Feldreferenz"
      "admin.cart_intelligence.help.navigation.overview" => "Überblick"
      "admin.cart_intelligence.help.navigation.rules" => "Cross-Sell-Regeln"
      "admin.cart_intelligence.help.navigation.stats" => "Performance-Stats"
      "admin.cart_intelligence.help.navigation.title" => "Navigation"
      "admin.cart_intelligence.help.navigation.types" => "Regel-Typen"
      "admin.cart_intelligence.help.overview.cards.abandoned.subtitle" => "Warenkörbe ohne Bestellabschluss"
      "admin.cart_intelligence.help.overview.cards.abandoned.title" => "Abgebrochene Warenkörbe"
      "admin.cart_intelligence.help.overview.cards.revenue.subtitle" => "Wert aller abgebrochenen Körbe"
      "admin.cart_intelligence.help.overview.cards.revenue.title" => "Verlorener Umsatz"
      "admin.cart_intelligence.help.overview.cards.top.subtitle" => "Häufig abgelegte Produkte ohne Kauf"
      "admin.cart_intelligence.help.overview.cards.top.title" => "Top-Warenkorb-Produkte"
      "admin.cart_intelligence.help.overview.intro" => "Das Modul analysiert Warenkörbe, zeigt Abbrüche und verwaltet Cross-Sell- sowie Up-Sell-Regeln."
      "admin.cart_intelligence.help.overview.permissions_title" => "Berechtigungen:"
      "admin.cart_intelligence.help.overview.title" => "Cart Intelligence: Überblick"
      "admin.cart_intelligence.help.page_title" => "Hilfe: Cart Intelligence & Cross-Sells"
      "admin.cart_intelligence.help.rules.intro" => "Regeln definieren, welche Produkte im Warenkorb oder im Produktkontext als Empfehlung angezeigt werden."
      "admin.cart_intelligence.help.rules.steps.five" => "Optional Mindest-Warenkorbwert, Rabatt und Gültigkeit setzen."
      "admin.cart_intelligence.help.rules.steps.four" => "Typ cross_sell, up_sell oder bundle festlegen."
      "admin.cart_intelligence.help.rules.steps.one" => "In Cart Intelligence → Cross-Sell-Regeln auf „Neue Regel“ klicken."
      "admin.cart_intelligence.help.rules.steps.seven" => "Regel aktivieren und speichern."
      "admin.cart_intelligence.help.rules.steps.six" => "Priorität pflegen."
      "admin.cart_intelligence.help.rules.steps.three" => "Zielprodukt auswählen."
      "admin.cart_intelligence.help.rules.steps.two" => "Quellprodukt auswählen."
      "admin.cart_intelligence.help.rules.title" => "Cross-Sell-Regeln erstellen"
      "admin.cart_intelligence.help.stats.intro" => "Die Statistikansicht zeigt, welche Regeln aktuell die höchste Conversion-Wirkung erzielen."
      "admin.cart_intelligence.help.stats.metrics.four" => "Conv. Rate: Verhältnis zwischen Sichtbarkeit und Erfolg"
      "admin.cart_intelligence.help.stats.metrics.one" => "Shown: Häufigkeit der Einblendung"
      "admin.cart_intelligence.help.stats.metrics.three" => "Added: Hinzufügungen oder Konversionen nach Anzeige"
      "admin.cart_intelligence.help.stats.metrics.two" => "Viewed: Betrachtungen der Empfehlung"
      "admin.cart_intelligence.help.stats.title" => "Performance-Statistiken"
      "admin.cart_intelligence.help.types.rows.bundle.description" => "Produktpaket mit optionalem Kombivorteil."
      "admin.cart_intelligence.help.types.rows.bundle.label" => "Bundle-Empfehlung"
      "admin.cart_intelligence.help.types.rows.bundle.position" => "Checkout / Produktseite"
      "admin.cart_intelligence.help.types.rows.cross_sell.description" => "Ergänzende Produkte zum Hauptprodukt."
      "admin.cart_intelligence.help.types.rows.cross_sell.label" => "Cross-Selling"
      "admin.cart_intelligence.help.types.rows.cross_sell.position" => "Warenkorb-Seite"
      "admin.cart_intelligence.help.types.rows.up_sell.description" => "Höherwertige Alternative zum gewählten Produkt."
      "admin.cart_intelligence.help.types.rows.up_sell.label" => "Up-Selling"
      "admin.cart_intelligence.help.types.rows.up_sell.position" => "Produktdetail-Seite"
      "admin.cart_intelligence.help.types.table.description" => "Beschreibung"
      "admin.cart_intelligence.help.types.table.label" => "Bezeichnung"
      "admin.cart_intelligence.help.types.table.position" => "Anzeige-Position"
      "admin.cart_intelligence.help.types.table.type" => "Typ"
      "admin.cart_intelligence.help.types.title" => "Regel-Typen"
      "admin.cart_intelligence.index.abandoned.empty" => "Keine verlassenen Warenkörbe - super!"
      "admin.cart_intelligence.index.abandoned.guest" => "Gast"
      "admin.cart_intelligence.index.abandoned.headers.customer" => "Kunde / Session"
      "admin.cart_intelligence.index.abandoned.headers.id" => "#"
      "admin.cart_intelligence.index.abandoned.headers.payment" => "Zahlung"
      "admin.cart_intelligence.index.abandoned.headers.since" => "Verlassen seit"
      "admin.cart_intelligence.index.abandoned.headers.status" => "Status"
      "admin.cart_intelligence.index.abandoned.headers.value" => "Warenkorbwert"
      "admin.cart_intelligence.index.abandoned.loading" => "Lädt..."
      "admin.cart_intelligence.index.abandoned.pagination" => "Seite %page%/%pages% (%total% Carts)"
      "admin.cart_intelligence.index.abandoned.title" => "Verlassene Carts"
      "admin.cart_intelligence.index.abandoned.total_suffix" => "(%total% gesamt)"
      "admin.cart_intelligence.index.actions.help" => "Hilfe"
      "admin.cart_intelligence.index.actions.refresh" => "Aktualisieren"
      "admin.cart_intelligence.index.errors.abandoned_load_failed" => "Die Liste verlassener Carts konnte nicht geladen werden."
      "admin.cart_intelligence.index.errors.summary_load_failed" => "Die KPI-Zusammenfassung konnte nicht geladen werden."
      "admin.cart_intelligence.index.errors.top_products_load_failed" => "Die Top-Produkte konnten nicht geladen werden."
      "admin.cart_intelligence.index.help_title" => "Hilfe zu diesem Modul"
      "admin.cart_intelligence.index.kpi.abandoned" => "Verlassen"
      "admin.cart_intelligence.index.kpi.open" => "Offen"
      "admin.cart_intelligence.index.kpi.rate" => "Abbruchrate"
      "admin.cart_intelligence.index.kpi.revenue_7d" => "Umsatz 7 Tage"
      "admin.cart_intelligence.index.kpi.risk" => "Umsatzrisiko"
      "admin.cart_intelligence.index.kpi.total" => "Carts gesamt"
      "admin.cart_intelligence.index.page_title" => "Cart Intelligence"
      "admin.cart_intelligence.index.status_breakdown.empty" => "Keine Daten"
      "admin.cart_intelligence.index.status_breakdown.loading" => "Lädt..."
      "admin.cart_intelligence.index.status_breakdown.title" => "Status-Verteilung"
      "admin.cart_intelligence.index.statuses.cancelled" => "Storniert"
      "admin.cart_intelligence.index.statuses.open" => "Offen"
      "admin.cart_intelligence.index.statuses.paid" => "Bezahlt"
      "admin.cart_intelligence.index.statuses.pending" => "Ausstehend"
      "admin.cart_intelligence.index.top_products.empty" => "Keine Daten"
      "admin.cart_intelligence.index.top_products.headers.carts" => "Carts"
      "admin.cart_intelligence.index.top_products.headers.product" => "Produkt"
      "admin.cart_intelligence.index.top_products.headers.value" => "Wert"
      "admin.cart_intelligence.index.top_products.loading" => "Lädt..."
      "admin.cart_intelligence.index.top_products.title" => "Top abgebrochene Produkte"
      "admin.cart_intelligence.nav.dashboard" => "Abbrüche & KPIs"
      "admin.cart_intelligence.nav.menu" => "Cart Intelligence"
      "admin.cart_intelligence.nav.rules" => "Cross-Sell-Regeln"
      "admin.cart_intelligence.nav.stats" => "Performance"
      "admin.cart_intelligence.notifications.invalid_product_selection" => "Ungültige Produktauswahl."
      "admin.cart_intelligence.notifications.invalid_request" => "Ungültige Anfrage."
      "admin.cart_intelligence.notifications.product_not_found" => "Produkt wurde nicht gefunden."
      "admin.cart_intelligence.notifications.rule_deleted" => "Regel wurde gelöscht."
      "admin.cart_intelligence.notifications.rule_not_found" => "Regel wurde nicht gefunden."
      "admin.cart_intelligence.notifications.rule_save_failed" => "Fehler beim Speichern der Regel: %message%"
      "admin.cart_intelligence.notifications.rule_saved" => "Regel wurde gespeichert."
      "admin.cart_intelligence.notifications.rule_updated" => "Regel wurde aktualisiert."
      "admin.cart_intelligence.notifications.status_updated" => "Status wurde aktualisiert."
      "admin.cart_intelligence.rule_form.actions.back" => "Zurück"
      "admin.cart_intelligence.rule_form.actions.save" => "Speichern"
      "admin.cart_intelligence.rule_form.hints.discount_percent" => "Optionaler Rabatt, falls beide Produkte gekauft werden."
      "admin.cart_intelligence.rule_form.hints.min_cart_value" => "EUR - Regel gilt ab diesem Betrag."
      "admin.cart_intelligence.rule_form.hints.priority" => "Höhere Werte = häufiger angezeigt."
      "admin.cart_intelligence.rule_form.hints.source" => "Produkt im Warenkorb, für das Empfehlungen angezeigt werden."
      "admin.cart_intelligence.rule_form.hints.target" => "Empfohlenes Zielprodukt."
      "admin.cart_intelligence.rule_form.hints.valid_until" => "Leer = unbegrenzt gültig."
      "admin.cart_intelligence.rule_form.labels.active" => "Regel ist aktiv"
      "admin.cart_intelligence.rule_form.labels.discount_percent" => "Bundle-Rabatt (%)"
      "admin.cart_intelligence.rule_form.labels.min_cart_value" => "Minimaler Warenkorbwert"
      "admin.cart_intelligence.rule_form.labels.priority" => "Priorität (0-100)"
      "admin.cart_intelligence.rule_form.labels.source" => "Von Produkt (Quelle) *"
      "admin.cart_intelligence.rule_form.labels.target" => "Zu Produkt (Ziel) *"
      "admin.cart_intelligence.rule_form.labels.type" => "Regeltyp *"
      "admin.cart_intelligence.rule_form.labels.valid_until" => "Gültig bis"
      "admin.cart_intelligence.rule_form.meta_title_edit" => "Cross-Sell-Regel bearbeiten"
      "admin.cart_intelligence.rule_form.meta_title_new" => "Cross-Sell-Regel erstellen"
      "admin.cart_intelligence.rule_form.page_title_edit" => "Regel bearbeiten"
      "admin.cart_intelligence.rule_form.page_title_new" => "Neue Cross-Sell-Regel"
      "admin.cart_intelligence.rule_form.placeholders.select_product" => "-- Produkt wählen --"
      "admin.cart_intelligence.rules.actions.create_link" => "Neue Regel erstellen"
      "admin.cart_intelligence.rules.actions.delete" => "Löschen"
      "admin.cart_intelligence.rules.actions.delete_confirm" => "Regel wirklich löschen?"
      "admin.cart_intelligence.rules.actions.edit" => "Bearbeiten"
      "admin.cart_intelligence.rules.actions.new" => "Neue Regel"
      "admin.cart_intelligence.rules.actions.save_priority" => "OK"
      "admin.cart_intelligence.rules.actions.stats" => "Statistiken"
      "admin.cart_intelligence.rules.actions.toggle_active" => "Aktivieren"
      "admin.cart_intelligence.rules.actions.toggle_inactive" => "Deaktivieren"
      "admin.cart_intelligence.rules.empty" => "Keine Regeln definiert."
      "admin.cart_intelligence.rules.headers.actions" => "Aktionen"
      "admin.cart_intelligence.rules.headers.priority" => "Priorität"
      "admin.cart_intelligence.rules.headers.source" => "Von Produkt"
      "admin.cart_intelligence.rules.headers.status" => "Status"
      "admin.cart_intelligence.rules.headers.target" => "Zu Produkt"
      "admin.cart_intelligence.rules.headers.type" => "Typ"
      "admin.cart_intelligence.rules.labels.price" => "%value% EUR"
      "admin.cart_intelligence.rules.labels.sku" => "SKU: %value%"
      "admin.cart_intelligence.rules.meta_title" => "Cross-Sell-Regeln"
      "admin.cart_intelligence.rules.page_title" => "Cross-Sell / Up-Sell Regeln"
      "admin.cart_intelligence.rules.stats.active_rules" => "aktive Regeln"
      "admin.cart_intelligence.rules.stats.all_rules" => "alle Regeln"
      "admin.cart_intelligence.rules.stats.bundle" => "Bundles"
      "admin.cart_intelligence.rules.stats.cross_sell" => "Cross-Sell"
      "admin.cart_intelligence.rules.stats.total" => "Gesamt"
      "admin.cart_intelligence.rules.stats.up_sell" => "Up-Sell"
      "admin.cart_intelligence.stats.actions.back" => "Zu Regeln"
      "admin.cart_intelligence.stats.empty" => "Keine Statistiken verfügbar. Erstellen Sie Regeln und warten Sie auf Besucher."
      "admin.cart_intelligence.stats.headers.added" => "Added"
      "admin.cart_intelligence.stats.headers.from_to" => "Von → Zu Produkt"
      "admin.cart_intelligence.stats.headers.rate" => "Conv. Rate"
      "admin.cart_intelligence.stats.headers.shown" => "Shown"
      "admin.cart_intelligence.stats.headers.type" => "Typ"
      "admin.cart_intelligence.stats.headers.viewed" => "Viewed"
      "admin.cart_intelligence.stats.info_text" => "Zeigt, welche Regeln am häufigsten tatsächlich zu Käufen führen, damit Sie Ihre Regeln optimieren können."
      "admin.cart_intelligence.stats.info_title" => "Performance-Metriken:"
      "admin.cart_intelligence.stats.meta_title" => "Cross-Sell-Statistiken"
      "admin.cart_intelligence.stats.page_title" => "Cross-Sell Performance"
      "admin.cart_intelligence.types.bundle" => "Bundle"
      "admin.cart_intelligence.types.cross_sell" => "Cross-Sell"
      "admin.cart_intelligence.types.unknown" => "Unbekannt"
      "admin.cart_intelligence.types.up_sell" => "Up-Sell"
      "admin.cart.detail.actions.customer" => "Kunde"
      "admin.cart.detail.actions.edit" => "Bearbeiten"
      "admin.cart.detail.actions.help" => "Hilfe"
      "admin.cart.detail.actions.overview" => "Übersicht"
      "admin.cart.detail.actions.pickup_ready" => "Bereit zur Abholung melden"
      "admin.cart.detail.actions.shipment" => "Sendung"
      "admin.cart.detail.actions.shop_user" => "Shop-User"
      "admin.cart.detail.fields.address" => "Adresse"
      "admin.cart.detail.fields.address_validation" => "Adressprüfung"
      "admin.cart.detail.fields.address_validation_message" => "Prüfhinweis"
      "admin.cart.detail.fields.address_validation_source" => "Prüfquelle"
      "admin.cart.detail.fields.billing_address" => "Rechnungsadresse"
      "admin.cart.detail.fields.billing_address_validation" => "Adressprüfung Rechnung"
      "admin.cart.detail.fields.billing_address_validation_message" => "Prüfhinweis Rechnung"
      "admin.cart.detail.fields.billing_address_validation_source" => "Prüfquelle Rechnung"
      "admin.cart.detail.fields.billing_city_zip" => "PLZ / Ort Rechnung"
      "admin.cart.detail.fields.billing_country" => "Land Rechnung"
      "admin.cart.detail.fields.billing_email" => "E-Mail Rechnung"
      "admin.cart.detail.fields.billing_heading" => "Rechnungsadresse"
      "admin.cart.detail.fields.billing_phone" => "Telefon Rechnung"
      "admin.cart.detail.fields.billing_recipient" => "Rechnungsempfänger"
      "admin.cart.detail.fields.carrier" => "Versanddienst"
      "admin.cart.detail.fields.city_zip" => "PLZ / Ort"
      "admin.cart.detail.fields.country" => "Land"
      "admin.cart.detail.fields.created_at" => "Erstellt"
      "admin.cart.detail.fields.customer_id" => "Kunden-ID"
      "admin.cart.detail.fields.email" => "E-Mail"
      "admin.cart.detail.fields.fulfillment_type" => "Lieferart"
      "admin.cart.detail.fields.name" => "Name"
      "admin.cart.detail.fields.payment_intent" => "PaymentIntent"
      "admin.cart.detail.fields.payment_method" => "Zahlungsart"
      "admin.cart.detail.fields.phone" => "Telefon"
      "admin.cart.detail.fields.pickup_notified_at" => "Bereitmeldung gesendet"
      "admin.cart.detail.fields.pickup_ready_at" => "Bereit seit"
      "admin.cart.detail.fields.pickup_status" => "Abholstatus"
      "admin.cart.detail.fields.product" => "Produkt"
      "admin.cart.detail.fields.quantity" => "Menge"
      "admin.cart.detail.fields.recipient" => "Empfänger"
      "admin.cart.detail.fields.shipment_status" => "Versandstatus"
      "admin.cart.detail.fields.shipped_at" => "Versendet am"
      "admin.cart.detail.fields.shop_user" => "Shop-User"
      "admin.cart.detail.fields.status" => "Status"
      "admin.cart.detail.fields.status_code" => "Statuscode"
      "admin.cart.detail.fields.stripe_status" => "Stripe Status"
      "admin.cart.detail.fields.subtotal_gross" => "Zwischensumme (brutto)"
      "admin.cart.detail.fields.total" => "Gesamt"
      "admin.cart.detail.fields.tracking_number" => "Sendungsnummer"
      "admin.cart.detail.fields.unit_price_gross" => "Einzelpreis (brutto)"
      "admin.cart.detail.fields.updated_at" => "Geändert"
      "admin.cart.detail.links.call" => "Anrufen"
      "admin.cart.detail.links.customer_edit" => "Kunde bearbeiten"
      "admin.cart.detail.links.email" => "E-Mail"
      "admin.cart.detail.links.maps" => "Adresse in Maps"
      "admin.cart.detail.links.shipment_edit" => "Sendung bearbeiten"
      "admin.cart.detail.meta_title" => "Bestellung #%id%"
      "admin.cart.detail.page_subtitle" => "Alle relevanten Kauf-, Zahlungs- und Versandinformationen auf einen Blick."
      "admin.cart.detail.page_title" => "Bestellung #%id%"
      "admin.cart.detail.sections.admin_comment" => "Admin-Kommentar"
      "admin.cart.detail.sections.customer" => "Kunde"
      "admin.cart.detail.sections.items" => "Bestellpositionen"
      "admin.cart.detail.sections.order" => "Bestellung"
      "admin.cart.detail.sections.shipping" => "Lieferung & Versand"
      "admin.cart.detail.totals.gross" => "Gesamt brutto"
      "admin.cart.detail.totals.net" => "Summe netto"
      "admin.cart.detail.totals.vat_included" => "zzgl. MwSt. 19% (im Preis enthalten)"
      "admin.cart.detail.validation_source.external" => "Extern"
      "admin.cart.detail.validation_source.local" => "Lokal"
      "admin.cart.detail.validation_source.manual" => "Manuell"
      "admin.cart.detail.validation_status.invalid" => "Ungültig"
      "admin.cart.detail.validation_status.review_pending" => "Manuelle Prüfung nötig"
      "admin.cart.detail.validation_status.verified" => "Bestätigt"
      "admin.cart.detail.values.no_comment" => "Kein Kommentar hinterlegt."
      "admin.cart.detail.values.no_items" => "Keine Positionen gefunden."
      "admin.cart.edit.actions.cancel" => "Abbrechen"
      "admin.cart.edit.actions.detail" => "Details"
      "admin.cart.edit.actions.help" => "Hilfe"
      "admin.cart.edit.actions.overview" => "Übersicht"
      "admin.cart.edit.actions.save" => "Speichern"
      "admin.cart.edit.fields.admin_comment" => "Admin-Kommentar"
      "admin.cart.edit.fields.carrier" => "Versanddienst"
      "admin.cart.edit.fields.order_status" => "Bestellstatus"
      "admin.cart.edit.fields.pickup_ready_at" => "Bereit seit"
      "admin.cart.edit.fields.pickup_status" => "Abholstatus"
      "admin.cart.edit.fields.send_pickup_ready_notification" => "Bereitmeldung jetzt per E-Mail senden"
      "admin.cart.edit.fields.shipment_status" => "Versandstatus"
      "admin.cart.edit.fields.shipped_at" => "Versendet am"
      "admin.cart.edit.fields.system_status" => "Systemstatus"
      "admin.cart.edit.fields.tracking_number" => "Sendungsnummer"
      "admin.cart.edit.help.pickup_notified_at" => "Letzte Bereitmeldung: %date%"
      "admin.cart.edit.help.pickup_status" => "Setze „Bereit zur Abholung“, sobald die Bestellung vorbereitet ist. Die E-Mail informiert den Kunden direkt."
      "admin.cart.edit.meta_title" => "Bestellung #%id% bearbeiten"
      "admin.cart.edit.page_subtitle" => "Status, Versanddaten und interne Notiz zentral pflegen."
      "admin.cart.edit.page_title" => "Bestellung #%id% bearbeiten"
      "admin.cart.edit.panel_title" => "Bearbeitungsformular"
      "admin.cart.edit.placeholders.tracking_number" => "Vorhandene Nummer wählen oder neu eingeben"
      "admin.cart.edit.sections.pickup" => "Abholung im Geschäft"
      "admin.cart.edit.sections.shipping" => "Versand"
      "admin.cart.edit.values.not_set" => "Nicht gesetzt"
      "admin.cart.edit.values.select_carrier" => "Bitte wählen"
      "admin.cart.errors.not_found" => "Warenkorb nicht gefunden."
      "admin.cart.fulfillment.pickup" => "Abholung im Geschäft"
      "admin.cart.fulfillment.shipping" => "Versand"
      "admin.cart.help_index.card_description" => "Bestellverwaltung, Status, Versand"
      "admin.cart.help_index.card_title" => "Bestellungen & Warenkörbe"
      "admin.cart.help_index.table_description" => "Bestellverwaltung, Status, Details"
      "admin.cart.help_index.table_label" => "Bestellungen"
      "admin.cart.help.actions.back" => "Zurück"
      "admin.cart.help.actions.module" => "Zum Modul"
      "admin.cart.help.api.rows.delete" => "Bestellung löschen"
      "admin.cart.help.api.rows.detail" => "Bestelldetails"
      "admin.cart.help.api.rows.edit" => "Bestellung bearbeiten"
      "admin.cart.help.api.rows.list" => "Bestellliste"
      "admin.cart.help.api.table.function" => "Funktion"
      "admin.cart.help.api.table.method" => "Methode"
      "admin.cart.help.api.table.url" => "URL"
      "admin.cart.help.api.title" => "API-Endpunkte"
      "admin.cart.help.detail.intro" => "Die Detailansicht bündelt alle kaufrelevanten Informationen an einem Ort."
      "admin.cart.help.detail.points.comment" => "Interner Admin-Kommentar separat am Ende der Seite."
      "admin.cart.help.detail.points.customer" => "Direkte Sprünge zu Kunde und verknüpftem Shop-User."
      "admin.cart.help.detail.points.items" => "Bestellpositionen inklusive Netto-, MwSt.- und Bruttosummen."
      "admin.cart.help.detail.points.order" => "Bestellblock mit Status, Zahlungsart, Stripe-Status und PaymentIntent."
      "admin.cart.help.detail.points.shipping" => "Liefer- und Rechnungsadresse inklusive Validierungsstatus, Versanddienst, Sendungsnummer, Versandstatus und Abholinformationen."
      "admin.cart.help.detail.title" => "Bestelldetails"
      "admin.cart.help.fields.rows.admin_comment" => "Interner Kommentar für das Backoffice."
      "admin.cart.help.fields.rows.billing_snapshot" => "Snapshot der Rechnungsadresse zum Bestellzeitpunkt inklusive Land und Prüfstatus."
      "admin.cart.help.fields.rows.created_at" => "Zeitpunkt der Erstellung."
      "admin.cart.help.fields.rows.customer" => "Verknüpfter Kunde inklusive Shop-User-Bezug."
      "admin.cart.help.fields.rows.fulfillment_type" => "Lieferart der Bestellung, also Versand oder Abholung im Geschäft."
      "admin.cart.help.fields.rows.id" => "Interne Bestell-ID."
      "admin.cart.help.fields.rows.order_status" => "Fachlicher Bestellstatus für den weiteren Workflow."
      "admin.cart.help.fields.rows.payment" => "Gespeicherte Zahlungsart."
      "admin.cart.help.fields.rows.payment_intent" => "Stripe PaymentIntent-ID."
      "admin.cart.help.fields.rows.pickup_notified_at" => "Zeitpunkt der letzten Bereitmeldung per E-Mail."
      "admin.cart.help.fields.rows.pickup_ready_at" => "Zeitpunkt, ab dem die Bestellung im Geschäft bereitliegt."
      "admin.cart.help.fields.rows.pickup_status" => "Aktueller Abholstatus: Vorbereitung, bereit zur Abholung oder abgeholt."
      "admin.cart.help.fields.rows.shipping_snapshot" => "Snapshot der Lieferadresse zum Bestellzeitpunkt inklusive Land und Prüfstatus."
      "admin.cart.help.fields.rows.status" => "Technischer Cart-Status."
      "admin.cart.help.fields.rows.stripe_status" => "Technischer Stripe-Status."
      "admin.cart.help.fields.rows.total" => "Gesamtbetrag des Carts."
      "admin.cart.help.fields.rows.updated_at" => "Zeitpunkt der letzten Änderung."
      "admin.cart.help.fields.table.description" => "Beschreibung"
      "admin.cart.help.fields.table.field" => "Feld"
      "admin.cart.help.fields.title" => "Feldreferenz: Bestellung (Cart)"
      "admin.cart.help.navigation.api" => "API-Endpunkte"
      "admin.cart.help.navigation.detail" => "Bestelldetails"
      "admin.cart.help.navigation.fields" => "Feldreferenz"
      "admin.cart.help.navigation.overview" => "Übersicht"
      "admin.cart.help.navigation.payment" => "Zahlungsmethoden"
      "admin.cart.help.navigation.shipping" => "Versand & Lieferung"
      "admin.cart.help.navigation.status" => "Bestellstatus"
      "admin.cart.help.navigation.title" => "Navigation"
      "admin.cart.help.overview.filters_title" => "Filtermöglichkeiten"
      "admin.cart.help.overview.filters.date_range" => "Nach Zeitraum über Von/Bis filtern."
      "admin.cart.help.overview.filters.payment" => "Die Zahlungsart wird direkt in der Liste angezeigt."
      "admin.cart.help.overview.filters.status" => "Nach Status (offen, bestellt, Adressprüfung ausstehend, bereit zur Abholung, abgeholt, storniert) filtern."
      "admin.cart.help.overview.intro" => "Die Bestellverwaltung erreichst du unter /admin/cart. Die Liste zeigt Status, Kunde, Gesamtbetrag, Zahlungsart und Erstellungsdatum."
      "admin.cart.help.overview.note" => "Im System werden Warenkörbe und Bestellungen in derselben Tabelle cart verwaltet. Offene Carts und abgeschlossene Bestellungen unterscheiden sich über status und orderStatus."
      "admin.cart.help.overview.title" => "Bestellübersicht"
      "admin.cart.help.page_title" => "Hilfe: Bestellungen & Warenkörbe"
      "admin.cart.help.payment.note" => "Die Detailansicht zeigt die im Cart gespeicherte Zahlungsart und technische Stripe-Informationen."
      "admin.cart.help.payment.rows.bank_transfer" => "Manuelle Überweisung."
      "admin.cart.help.payment.rows.invoice" => "Kann in Bestandsdaten oder manuellen Prozessen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
      "admin.cart.help.payment.rows.paypal" => "Kann in Bestandsdaten oder Altbestellungen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
      "admin.cart.help.payment.rows.prepayment" => "Kann in Bestandsdaten oder manuellen Prozessen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
      "admin.cart.help.payment.rows.sepa" => "SEPA-Lastschriftverfahren."
      "admin.cart.help.payment.rows.stripe" => "Zeigt zusätzlich Stripe-Status und PaymentIntent in der Detailansicht."
      "admin.cart.help.payment.table.description" => "Hinweis"
      "admin.cart.help.payment.table.method" => "Methode"
      "admin.cart.help.payment.title" => "Zahlungsmethoden"
      "admin.cart.help.shipping.intro" => "Versanddaten lassen sich direkt in der Bearbeitungsansicht der Bestellung pflegen."
      "admin.cart.help.shipping.note" => "Wenn bereits eine Shipment-Entität existiert, führt die Detailansicht direkt zur Sendungsbearbeitung. Bei Abholung bleiben Kontakt- und Rechnungsdaten Pflicht, Versandkosten werden nicht berechnet."
      "admin.cart.help.shipping.points.carrier" => "Versanddienst aus bestehenden Versandmethoden wählen."
      "admin.cart.help.shipping.points.pickup" => "Bei Abholbestellungen ersetzt der Abholstatus die Versanddaten. Über „Bereit zur Abholung melden“ wird der Status gesetzt und eine Kundenmail gesendet."
      "admin.cart.help.shipping.points.shipped_at" => "Versanddatum und Uhrzeit dokumentieren."
      "admin.cart.help.shipping.points.status" => "Shipment-Status von Angelegt bis Zugestellt setzen."
      "admin.cart.help.shipping.points.tracking" => "Sendungsnummer aus vorhandenen Nummern wählen oder neu eintragen."
      "admin.cart.help.shipping.title" => "Versand & Lieferung"
      "admin.cart.help.status.order_title" => "Bestellstatus"
      "admin.cart.help.status.order.address_review_pending" => "Die Bestellung ist erfasst, wird aber vor Versand wegen unklarer Adressdaten manuell geprüft."
      "admin.cart.help.status.order.cancelled" => "Bestellung wurde storniert."
      "admin.cart.help.status.order.completed" => "Vorgang ist fachlich abgeschlossen."
      "admin.cart.help.status.order.delivered" => "Sendung wurde zugestellt."
      "admin.cart.help.status.order.paid" => "Zahlung ist eingegangen."
      "admin.cart.help.status.order.payment_failed" => "Die Stripe-Zahlung ist fehlgeschlagen oder benötigt eine neue Zahlungsquelle."
      "admin.cart.help.status.order.payment_pending" => "Stripe hat die Zahlung registriert, aber noch nicht final bestätigt."
      "admin.cart.help.status.order.picked_up" => "Die Bestellung wurde im Geschäft abgeholt."
      "admin.cart.help.status.order.pickup_ready" => "Die Abholbestellung ist vorbereitet und der Kunde kann benachrichtigt werden."
      "admin.cart.help.status.order.processing" => "Bestellung wird intern bearbeitet."
      "admin.cart.help.status.order.refunded" => "Zahlung wurde ganz oder teilweise erstattet."
      "admin.cart.help.status.order.shipped" => "Sendung wurde versendet."
      "admin.cart.help.status.system_title" => "Systemstatus"
      "admin.cart.help.status.system.cancelled" => "Bestellung oder Cart wurde storniert."
      "admin.cart.help.status.system.open" => "Offener Warenkorb ohne abgeschlossene Bestellung."
      "admin.cart.help.status.system.ordered" => "Bestellung ist angelegt und erscheint in der Bestellübersicht."
      "admin.cart.help.status.title" => "Bestellstatus-Workflow"
      "admin.cart.list.actions.delete" => "Löschen"
      "admin.cart.list.actions.detail" => "Details"
      "admin.cart.list.actions.edit" => "Bearbeiten"
      "admin.cart.list.actions.filter" => "Filtern"
      "admin.cart.list.actions.help" => "Hilfe"
      "admin.cart.list.delete_confirm" => "Bestellung #%id% wirklich löschen?"
      "admin.cart.list.filters.all_statuses" => "Alle Status"
      "admin.cart.list.filters.from" => "Von"
      "admin.cart.list.filters.status" => "Status"
      "admin.cart.list.filters.to" => "Bis"
      "admin.cart.list.headers.actions" => "Aktionen"
      "admin.cart.list.headers.created" => "Erstellt"
      "admin.cart.list.headers.customer" => "Kunde"
      "admin.cart.list.headers.id" => "ID"
      "admin.cart.list.headers.payment" => "Zahlung"
      "admin.cart.list.headers.status" => "Status"
      "admin.cart.list.headers.total" => "Total"
      "admin.cart.list.list_count" => "%count% Einträge"
      "admin.cart.list.list_title" => "Bestellliste"
      "admin.cart.list.meta_title" => "Bestellungen"
      "admin.cart.list.page_subtitle" => "Überwache Bestellstatus, Zahlart und Zeiträume an einem Ort."
      "admin.cart.list.page_title" => "Bestellungen"
      "admin.cart.list.values.empty" => "Keine Bestellungen gefunden."
      "admin.cart.notifications.deleted" => "Warenkorb wurde gelöscht."
      "admin.cart.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.cart.notifications.not_found" => "Warenkorb wurde nicht gefunden."
      "admin.cart.notifications.pickup_not_available" => "Diese Bestellung ist keine Abholbestellung."
      "admin.cart.notifications.pickup_ready_mail_failed" => "Die Bereitmeldung konnte nicht per E-Mail gesendet werden."
      "admin.cart.notifications.pickup_ready_mail_sent" => "Die Bereitmeldung wurde per E-Mail gesendet."
      "admin.cart.notifications.pickup_ready_no_email" => "Die Bereitmeldung konnte nicht gesendet werden, weil keine Kunden-E-Mail hinterlegt ist."
      "admin.cart.notifications.saved" => "Warenkorb wurde gespeichert."
      "admin.cart.payment_methods.bank_transfer" => "Überweisung"
      "admin.cart.payment_methods.cash" => "Barzahlung"
      "admin.cart.payment_methods.invoice" => "Rechnung"
      "admin.cart.payment_methods.paypal" => "PayPal"
      "admin.cart.payment_methods.prepayment" => "Vorkasse"
      "admin.cart.payment_methods.sepa" => "SEPA-Lastschrift"
      "admin.cart.payment_methods.stripe" => "Kreditkarte (Stripe)"
      "admin.cart.pickup_status.collected" => "Abgeholt"
      "admin.cart.pickup_status.pending" => "Abholung wird vorbereitet"
      "admin.cart.pickup_status.ready" => "Bereit zur Abholung"
      "admin.cart.shipment_status.created" => "Angelegt"
      "admin.cart.shipment_status.delivered" => "Zugestellt"
      "admin.cart.shipment_status.exception" => "Problemfall"
      "admin.cart.shipment_status.in_transit" => "In Zustellung"
      "admin.cart.shipment_status.label_created" => "Label erstellt"
      "admin.cart.shipment_status.lost" => "Verloren"
      "admin.cart.shipment_status.out_for_delivery" => "In Auslieferung"
      "admin.cart.shipment_status.returned" => "Retoure"
      "admin.cart.status.address_review_pending" => "Adressprüfung ausstehend"
      "admin.cart.status.cancelled" => "Storniert"
      "admin.cart.status.completed" => "Abgeschlossen"
      "admin.cart.status.delivered" => "Geliefert"
      "admin.cart.status.open" => "Offen"
      "admin.cart.status.ordered" => "Bestellt"
      "admin.cart.status.paid" => "Bezahlt"
      "admin.cart.status.picked_up" => "Abgeholt"
      "admin.cart.status.pickup_ready" => "Bereit zur Abholung"
      "admin.cart.status.processing" => "In Bearbeitung"
      "admin.cart.status.shipped" => "Versendet"
      "admin.cart.stripe_status.canceled" => "Abgebrochen"
      "admin.cart.stripe_status.processing" => "In Verarbeitung"
      "admin.cart.stripe_status.requires_action" => "Kundenauthentifizierung erforderlich"
      "admin.cart.stripe_status.requires_capture" => "Autorisierung vorhanden"
      "admin.cart.stripe_status.requires_confirmation" => "Bestätigung ausstehend"
      "admin.cart.stripe_status.requires_payment_method" => "Zahlungsmethode erforderlich"
      "admin.cart.stripe_status.succeeded" => "Erfolgreich bezahlt"
      "admin.configurable_product.form.actions.add_option" => "Option hinzufügen"
      "admin.configurable_product.form.actions.add_value" => "Wert hinzufügen"
      "admin.configurable_product.form.actions.back" => "Zurück"
      "admin.configurable_product.form.actions.cancel" => "Abbrechen"
      "admin.configurable_product.form.actions.help" => "Produkthilfe"
      "admin.configurable_product.form.actions.remove_option" => "Option entfernen"
      "admin.configurable_product.form.actions.remove_value" => "Wert entfernen"
      "admin.configurable_product.form.actions.save" => "Speichern"
      "admin.configurable_product.form.fields.option_name" => "Optionsname"
      "admin.configurable_product.form.fields.options" => "Optionen"
      "admin.configurable_product.form.fields.price_delta" => "Aufpreis"
      "admin.configurable_product.form.fields.product" => "Produkt"
      "admin.configurable_product.form.fields.value" => "Wert"
      "admin.configurable_product.form.fields.values" => "Werte"
      "admin.configurable_product.form.meta_title_edit" => "Konfigurator-Produkt bearbeiten"
      "admin.configurable_product.form.meta_title_new" => "Neues Konfigurator-Produkt"
      "admin.configurable_product.form.page_subtitle" => "Verknüpfe Optionen und Preisaufschläge pro Wert."
      "admin.configurable_product.form.page_title_edit" => "Konfigurator-Produkt bearbeiten"
      "admin.configurable_product.form.page_title_new" => "Neues Konfigurator-Produkt"
      "admin.configurable_product.form.panel_title" => "Formular"
      "admin.configurable_product.form.placeholders.price_delta" => "Aufpreis"
      "admin.configurable_product.form.placeholders.value" => "Wert"
      "admin.configurable_product.form.sections.options" => "Optionen"
      "admin.configurable_product.form.sections.values" => "Werte"
      "admin.configurable_product.index.actions.delete" => "Löschen"
      "admin.configurable_product.index.actions.edit" => "Bearbeiten"
      "admin.configurable_product.index.actions.help" => "Produkthilfe"
      "admin.configurable_product.index.actions.new" => "Neues Konfigurator-Produkt"
      "admin.configurable_product.index.delete_confirm" => "Konfigurator-Produkt "%name%" wirklich löschen?"
      "admin.configurable_product.index.headers.actions" => "Aktionen"
      "admin.configurable_product.index.headers.id" => "ID"
      "admin.configurable_product.index.headers.options" => "Optionen"
      "admin.configurable_product.index.headers.product" => "Produkt"
      "admin.configurable_product.index.list_count" => "%count% Einträge"
      "admin.configurable_product.index.list_title" => "Konfigurator-Produktliste"
      "admin.configurable_product.index.meta_title" => "Konfigurator-Produkte"
      "admin.configurable_product.index.page_subtitle" => "Produkte mit konfigurierbaren Optionen und Preisaufschlägen verwalten."
      "admin.configurable_product.index.page_title" => "Konfigurator-Produkte"
      "admin.configurable_product.index.values.empty" => "Keine Konfigurator-Produkte gefunden."
      "admin.configurable_product.notifications.created" => "Konfigurator-Produkt wurde angelegt."
      "admin.configurable_product.notifications.deleted" => "Konfigurator-Produkt wurde gelöscht."
      "admin.configurable_product.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.configurable_product.notifications.updated" => "Konfigurator-Produkt wurde gespeichert."
      "admin.content.api.errors.block_not_found" => "Content-Block wurde nicht gefunden."
      "admin.content.api.errors.required_fields" => "blockKey und name sind Pflichtfelder."
      "admin.content.errors.block_not_found" => "Content-Block wurde nicht gefunden."
      "admin.content.form.actions.cancel" => "Abbrechen"
      "admin.content.form.actions.save" => "Speichern"
      "admin.content.form.back" => "Zurück zur Liste"
      "admin.content.form.help" => "Hilfe"
      "admin.content.form.hints.json" => "Bei Typ JSON muss der Inhalt valides JSON sein."
      "admin.content.form.hints.locale" => "Leer lassen für sprachunabhängige Blöcke."
      "admin.content.form.labels.active" => "Aktiv"
      "admin.content.form.labels.block_key" => "Key"
      "admin.content.form.labels.content" => "Inhalt"
      "admin.content.form.labels.locale" => "Locale"
      "admin.content.form.labels.name" => "Name"
      "admin.content.form.labels.type" => "Typ"
      "admin.content.form.page_title_edit" => "Content-Block bearbeiten"
      "admin.content.form.page_title_new" => "Neuer Content-Block"
      "admin.content.form.panel_title_edit" => "Bearbeiten"
      "admin.content.form.panel_title_new" => "Anlegen"
      "admin.content.form.placeholders.block_key" => "homepage.hero.teaser"
      "admin.content.form.placeholders.locale" => "de"
      "admin.content.form.placeholders.name" => "Beschreibender Name"
      "admin.content.help_index.card_subtitle" => "Block-CRUD, Typen und A/B-Verknüpfung"
      "admin.content.help_index.card_title" => "Content-Blöcke"
      "admin.content.help_index.table_description" => "Dynamische Inhaltsblöcke für Frontend und Page Builder"
      "admin.content.help_index.table_label" => "Content-Blöcke"
      "admin.content.help.abtest.intro" => "A/B-Experimente referenzieren einen bestehenden Content-Block per Relation. Varianten werden nicht über blockKey, sondern über die Blockauswahl im A/B-Test-Modul gepflegt."
      "admin.content.help.abtest.note" => "Die A/B-Verknüpfung arbeitet blockbasiert. blockKey dient der Template-Einbindung, nicht der A/B-Zuordnung."
      "admin.content.help.abtest.steps.one" => "Im A/B-Test-Modul einen bestehenden aktiven Content-Block aus der Dropdown-Liste wählen."
      "admin.content.help.abtest.steps.three" => "Gewinner und Teststatus werden im Experiment gespeichert; der Basis-Block bleibt separat im Content-Modul editierbar."
      "admin.content.help.abtest.steps.two" => "Varianten A bis C für genau diesen Block pflegen und den Teststatus steuern."
      "admin.content.help.abtest.title" => "Verknüpfung mit A/B-Tests"
      "admin.content.help.actions.back" => "Zurück"
      "admin.content.help.actions.module" => "Zum Modul"
      "admin.content.help.api.rows.create" => "Legt einen neuen Content-Block per API an."
      "admin.content.help.api.rows.delete" => "Löscht einen Block dauerhaft."
      "admin.content.help.api.rows.get" => "Gibt die Details eines Blocks als JSON zurück."
      "admin.content.help.api.rows.index" => "Öffnet die Content-Block-Übersicht."
      "admin.content.help.api.rows.list" => "Liefert die gefilterte Liste der Blocks als JSON."
      "admin.content.help.api.rows.summary" => "Liefert KPI-Zahlen nach Typ."
      "admin.content.help.api.rows.toggle" => "Schaltet den Aktiv-Status um."
      "admin.content.help.api.rows.update" => "Aktualisiert einen bestehenden Block."
      "admin.content.help.api.table.function" => "Funktion"
      "admin.content.help.api.table.method" => "Methode"
      "admin.content.help.api.table.url" => "URL"
      "admin.content.help.api.title" => "API-Endpunkte"
      "admin.content.help.create.note" => "Der blockKey muss exakt mit der Einbindung im Template übereinstimmen, zum Beispiel"
      "admin.content.help.create.steps.five" => "Optional locale setzen, wenn der Block sprachspezifisch gepflegt werden soll."
      "admin.content.help.create.steps.four" => "Typ passend zum Ausgabeverhalten wählen: html, markdown, json oder text."
      "admin.content.help.create.steps.one" => "Im Modul Content-Blöcke auf "Neuer Block" klicken."
      "admin.content.help.create.steps.seven" => "Block aktivieren und speichern."
      "admin.content.help.create.steps.six" => "Inhalt im Textbereich pflegen und bei JSON auf valides Format achten."
      "admin.content.help.create.steps.three" => "Einen verständlichen Namen für die Admin-Liste hinterlegen."
      "admin.content.help.create.steps.two" => "blockKey als stabilen Integrationsschlüssel vergeben, zum Beispiel homepage.hero.teaser."
      "admin.content.help.create.title" => "Content-Block anlegen"
      "admin.content.help.fields.rows.active" => "Steuert, ob der Block aktiv verwendet wird."
      "admin.content.help.fields.rows.block_key" => "Eindeutiger Schlüssel für Twig- und Page-Builder-Integration."
      "admin.content.help.fields.rows.content" => "Gespeicherter Blockinhalt."
      "admin.content.help.fields.rows.created_at" => "Zeitpunkt der Erstellung."
      "admin.content.help.fields.rows.locale" => "Optionale Sprachvariante, leer = sprachunabhängig."
      "admin.content.help.fields.rows.name" => "Anzeigename in Admin-Listen und Auswahldialogen."
      "admin.content.help.fields.rows.type" => "Ausgabeart html, markdown, json oder text."
      "admin.content.help.fields.rows.updated_at" => "Zeitpunkt der letzten Änderung."
      "admin.content.help.fields.table.description" => "Beschreibung"
      "admin.content.help.fields.table.field" => "Feld"
      "admin.content.help.fields.table.type" => "Typ"
      "admin.content.help.fields.title" => "Feldreferenz: ContentBlock"
      "admin.content.help.fields.types.boolean" => "Boolean"
      "admin.content.help.fields.types.datetime" => "Datum / Zeit"
      "admin.content.help.fields.types.long_text" => "Langer Text"
      "admin.content.help.fields.types.text" => "Text"
      "admin.content.help.fields.types.unique_text" => "Text (eindeutig)"
      "admin.content.help.navigation.abtest" => "A/B-Test-Verknüpfung"
      "admin.content.help.navigation.api" => "API-Endpunkte"
      "admin.content.help.navigation.create" => "Block anlegen"
      "admin.content.help.navigation.fields" => "Feldreferenz"
      "admin.content.help.navigation.overview" => "Überblick"
      "admin.content.help.navigation.title" => "Navigation"
      "admin.content.help.navigation.toggle" => "Aktivieren/Deaktivieren"
      "admin.content.help.navigation.types" => "Block-Typen"
      "admin.content.help.overview.examples_title" => "Anwendungsbeispiele:"
      "admin.content.help.overview.examples.campaign" => "Saisonale Kampagneninhalte"
      "admin.content.help.overview.examples.checkout" => "Checkout- und Service-Hinweise"
      "admin.content.help.overview.examples.footer" => "Footer-Texte und rechtliche Hinweise"
      "admin.content.help.overview.examples.hero" => "Hero-Banner auf der Startseite"
      "admin.content.help.overview.examples.promo" => "Promotion-Texte auf Kategorie- und Landingpages"
      "admin.content.help.overview.intro" => "Content-Blöcke sind dynamische Inhaltsbausteine, die über blockKey im Twig-Frontend oder als content_block-Element im Page Builder eingebunden werden. Inhalte lassen sich dadurch ohne Codeänderung pflegen."
      "admin.content.help.overview.permissions_title" => "Berechtigungen:"
      "admin.content.help.overview.title" => "Content-Blöcke: Überblick"
      "admin.content.help.page_title" => "Hilfe: Content-Blöcke"
      "admin.content.help.toggle.api_label" => "API:"
      "admin.content.help.toggle.intro" => "Der Aktiv-Status lässt sich direkt in der Listenansicht umschalten, ohne einen Block zu löschen."
      "admin.content.help.toggle.points.one" => "Aktive Blöcke stehen für Twig und Page Builder zur Verfügung."
      "admin.content.help.toggle.points.three" => "Das ist nützlich für vorbereitete Kampagnen oder temporär pausierte Inhalte."
      "admin.content.help.toggle.points.two" => "Inaktive Blöcke bleiben gespeichert, werden aber nicht regulär ausgegeben."
      "admin.content.help.toggle.title" => "Block aktivieren oder deaktivieren"
      "admin.content.help.types.rows.html.editor" => "Mehrzeiliges Textfeld mit HTML-Eingabe."
      "admin.content.help.types.rows.html.use" => "Direkter HTML-Inhalt für frei formatierte Ausgaben."
      "admin.content.help.types.rows.json.editor" => "Mehrzeiliges Textfeld mit JSON-Validierung beim Speichern."
      "admin.content.help.types.rows.json.use" => "Strukturierte Daten, zum Beispiel Konfigurationen oder mehrteilige Inhalte."
      "admin.content.help.types.rows.markdown.editor" => "Mehrzeiliges Textfeld für Markdown."
      "admin.content.help.types.rows.markdown.use" => "Markdown-Inhalte, die im Frontend zu HTML gerendert werden."
      "admin.content.help.types.rows.text.editor" => "Mehrzeiliges Textfeld für Rohtext."
      "admin.content.help.types.rows.text.use" => "Einfacher Text, der im Frontend escaped und mit Zeilenumbrüchen ausgegeben wird."
      "admin.content.help.types.table.editor" => "Editor"
      "admin.content.help.types.table.type" => "Typ"
      "admin.content.help.types.table.use" => "Verwendung"
      "admin.content.help.types.title" => "Block-Typen"
      "admin.content.help.types.warning" => "Es gibt im aktuellen Modul keinen Twig-Typ. Die vier unterstützten Typen sind html, markdown, json und text."
      "admin.content.index.actions.confirm" => "Bestätigen"
      "admin.content.index.actions.delete" => "Löschen"
      "admin.content.index.actions.edit" => "Bearbeiten"
      "admin.content.index.filters.all_status" => "Alle Status"
      "admin.content.index.filters.all_types" => "Alle Typen"
      "admin.content.index.filters.search_placeholder" => "Nach Key oder Name suchen"
      "admin.content.index.help_title" => "Hilfe zu Content-Blöcken"
      "admin.content.index.kpi.total" => "Gesamt"
      "admin.content.index.list.empty" => "Keine Content-Blöcke für den aktuellen Filter gefunden."
      "admin.content.index.list.headers.actions" => "Aktionen"
      "admin.content.index.list.headers.active" => "Aktiv"
      "admin.content.index.list.headers.key" => "Key"
      "admin.content.index.list.headers.locale" => "Locale"
      "admin.content.index.list.headers.name" => "Name"
      "admin.content.index.list.headers.size" => "Größe"
      "admin.content.index.list.headers.type" => "Typ"
      "admin.content.index.list.headers.updated" => "Geändert"
      "admin.content.index.list.load_error" => "Beim Laden der Content-Blöcke ist ein Fehler aufgetreten."
      "admin.content.index.list.loading" => "Content-Blöcke werden geladen..."
      "admin.content.index.list.pagination" => "Zeige %shown% von %total% Blöcken (Seite %page%/%pages%)"
      "admin.content.index.list.title" => "Blockliste"
      "admin.content.index.list.values.none" => ""
      "admin.content.index.notices.delete_confirm" => "Soll dieser Content-Block wirklich gelöscht werden?"
      "admin.content.index.notices.delete_failed" => "Der Content-Block konnte nicht gelöscht werden."
      "admin.content.index.notices.delete_success" => "Content-Block wurde gelöscht."
      "admin.content.index.notices.summary_load_failed" => "Die KPI-Zusammenfassung konnte nicht geladen werden."
      "admin.content.index.notices.toggle_disabled" => "Content-Block wurde deaktiviert."
      "admin.content.index.notices.toggle_enabled" => "Content-Block wurde aktiviert."
      "admin.content.index.notices.toggle_failed" => "Der Status des Content-Blocks konnte nicht geändert werden."
      "admin.content.index.page_subtitle" => "Zentrale Pflege dynamischer Inhaltsblöcke für Frontend, Page Builder und Experimente."
      "admin.content.index.page_title" => "Content-Block-Verwaltung"
      "admin.content.index.toolbar.help" => "Hilfe"
      "admin.content.index.toolbar.new" => "Neuer Block"
      "admin.content.meta.title" => "Content-Blöcke"
      "admin.content.nav.menu" => "Content-Blöcke"
      "admin.content.nav.submenu" => "Übersicht"
      "admin.content.notifications.created" => "Content-Block wurde angelegt."
      "admin.content.notifications.invalid_json" => "Ungültiges JSON: %message%"
      "admin.content.notifications.required_fields" => "Key und Name sind Pflichtfelder."
      "admin.content.notifications.updated" => "Content-Block wurde gespeichert."
      "admin.content.status.active" => "Aktiv"
      "admin.content.status.inactive" => "Inaktiv"
      "admin.content.types.html" => "HTML"
      "admin.content.types.json" => "JSON"
      "admin.content.types.markdown" => "Markdown"
      "admin.content.types.text" => "Text"
      "admin.coupons.actions.activate" => "Aktivieren"
      "admin.coupons.actions.back" => "Zurück"
      "admin.coupons.actions.back_to_list" => "Zurück zur Liste"
      "admin.coupons.actions.cancel" => "Abbrechen"
      "admin.coupons.actions.close" => "Schließen"
      "admin.coupons.actions.deactivate" => "Deaktivieren"
      "admin.coupons.actions.delete" => "Löschen"
      "admin.coupons.actions.edit" => "Bearbeiten"
      "admin.coupons.actions.filter" => "Filtern"
      "admin.coupons.actions.help" => "Hilfe"
      "admin.coupons.actions.new" => "Neuer Gutschein"
      "admin.coupons.actions.save" => "Speichern"
      "admin.coupons.actions.to_module" => "Zum Modul"
      "admin.coupons.form.code_help" => "Eindeutiger Code; wird automatisch in Großbuchstaben gespeichert."
      "admin.coupons.form.code_label" => "Code"
      "admin.coupons.form.code_placeholder" => "z. B. SUMMER20"
      "admin.coupons.form.edit_page_title" => "Gutschein bearbeiten"
      "admin.coupons.form.edit_panel_title" => "Gutschein bearbeiten"
      "admin.coupons.form.max_uses_help" => "Das Limit gilt pro userKey, nicht global pro Gutschein-Code."
      "admin.coupons.form.max_uses_label" => "Max. Einlösungen pro Benutzer"
      "admin.coupons.form.max_uses_placeholder" => "leer = unbegrenzt"
      "admin.coupons.form.min_order_label" => "Min. Bestellwert (€)"
      "admin.coupons.form.min_order_placeholder" => "leer = kein Minimum"
      "admin.coupons.form.name_label" => "Bezeichnung"
      "admin.coupons.form.name_placeholder" => "z. B. Sommeraktion 2026"
      "admin.coupons.form.new_page_title" => "Neuer Gutschein"
      "admin.coupons.form.new_panel_title" => "Gutschein anlegen"
      "admin.coupons.form.status_active" => "Aktiv"
      "admin.coupons.form.status_label" => "Status"
      "admin.coupons.form.type_label" => "Typ"
      "admin.coupons.form.valid_from_label" => "Gültig von"
      "admin.coupons.form.valid_until_label" => "Gültig bis"
      "admin.coupons.form.value_label_fixed" => "Wert (€)"
      "admin.coupons.form.value_label_percent" => "Wert (%)"
      "admin.coupons.help_index.card_subtitle" => "CRUD, Typen, Limits, API"
      "admin.coupons.help_index.card_title" => "Gutscheine & Rabatte"
      "admin.coupons.help_index.table_description" => "Gutschein-CRUD, Limits und Aktivierung"
      "admin.coupons.help_index.table_label" => "Gutscheine"
      "admin.coupons.help.navigation_title" => "Navigation"
      "admin.coupons.help.navigation.api" => "API-Endpunkte"
      "admin.coupons.help.navigation.create" => "Gutschein erstellen"
      "admin.coupons.help.navigation.fields" => "Feldreferenz"
      "admin.coupons.help.navigation.overview" => "Überblick"
      "admin.coupons.help.navigation.redeem" => "Einlösung im Shop"
      "admin.coupons.help.navigation.types" => "Gutschein-Typen"
      "admin.coupons.help.sections.api.rows.create" => "Neuen Gutschein anlegen"
      "admin.coupons.help.sections.api.rows.delete" => "Gutschein löschen"
      "admin.coupons.help.sections.api.rows.edit" => "Gutschein bearbeiten"
      "admin.coupons.help.sections.api.rows.list" => "Gutschein-Liste mit Filtern"
      "admin.coupons.help.sections.api.rows.toggle" => "Aktivieren oder deaktivieren"
      "admin.coupons.help.sections.api.rows.validate" => "Frontend: Code validieren"
      "admin.coupons.help.sections.api.table.function" => "Funktion"
      "admin.coupons.help.sections.api.table.method" => "Methode"
      "admin.coupons.help.sections.api.table.url" => "URL"
      "admin.coupons.help.sections.api.title" => "API-Endpunkte"
      "admin.coupons.help.sections.create.steps.code" => "Einen eindeutigen <strong>Code</strong> wählen, z. B. <code>SOMMER20</code>; Duplikate werden beim Speichern blockiert."
      "admin.coupons.help.sections.create.steps.open" => "Zu <strong>Gutscheine → + Neuer Gutschein</strong> oder direkt zu <code>/admin/coupons/new</code> wechseln."
      "admin.coupons.help.sections.create.steps.rules" => "Rahmenbedingungen wie Mindestbestellwert, Gültigkeitszeitraum und Limit pro Benutzer festlegen."
      "admin.coupons.help.sections.create.steps.save" => "Mit <kbd>Speichern</kbd> sichern; aktive Gutscheine sind sofort verfügbar."
      "admin.coupons.help.sections.create.steps.type" => "Den <strong>Typ</strong> auswählen: Prozent, Festbetrag oder Gratis-Versand."
      "admin.coupons.help.sections.create.title" => "Gutschein erstellen"
      "admin.coupons.help.sections.create.warning" => "Codes werden normalisiert und in Großbuchstaben gespeichert."
      "admin.coupons.help.sections.fields.required_no" => "Nein"
      "admin.coupons.help.sections.fields.required_yes" => "Ja"
      "admin.coupons.help.sections.fields.rows.code" => "Der eindeutige Gutscheincode."
      "admin.coupons.help.sections.fields.rows.created_at" => "Anlagezeitpunkt des Gutscheins."
      "admin.coupons.help.sections.fields.rows.is_active" => "Aktiviert oder deaktiviert; kann in der Liste umgeschaltet werden."
      "admin.coupons.help.sections.fields.rows.max_uses" => "Maximale Einlösungen pro Benutzer über userKey; leer = unbegrenzt."
      "admin.coupons.help.sections.fields.rows.min_order_amount" => "Mindestbestellwert für die Einlösung."
      "admin.coupons.help.sections.fields.rows.name" => "Interne Bezeichnung für Liste und Formular."
      "admin.coupons.help.sections.fields.rows.type" => "percent / fixed / free_shipping."
      "admin.coupons.help.sections.fields.rows.used_count" => "Bisherige Gesamteinlösungen über alle Benutzer."
      "admin.coupons.help.sections.fields.rows.valid_from" => "Gültig ab diesem Datum."
      "admin.coupons.help.sections.fields.rows.valid_until" => "Gültig bis zu diesem Datum; leer = unbegrenzt."
      "admin.coupons.help.sections.fields.rows.value" => "Rabattwert; bei free_shipping technisch vorhanden, aber fachlich ohne Wirkung."
      "admin.coupons.help.sections.fields.table.description" => "Beschreibung"
      "admin.coupons.help.sections.fields.table.field" => "Feld"
      "admin.coupons.help.sections.fields.table.required" => "Pflicht"
      "admin.coupons.help.sections.fields.table.type" => "Typ"
      "admin.coupons.help.sections.fields.title" => "Feldreferenz: Coupon"
      "admin.coupons.help.sections.fields.types.boolean" => "Boolean"
      "admin.coupons.help.sections.fields.types.date" => "Datum/Zeit"
      "admin.coupons.help.sections.fields.types.enum" => "Enum"
      "admin.coupons.help.sections.fields.types.float" => "Dezimal"
      "admin.coupons.help.sections.fields.types.integer" => "Integer"
      "admin.coupons.help.sections.fields.types.text" => "Text"
      "admin.coupons.help.sections.fields.usage_text" => "Pro Benutzer und Gutschein wird in <code>coupon_usage</code> genau ein Datensatz mit <code>coupon_id</code>, <code>user_key</code>, <code>used_count</code>, <code>created_at</code> und <code>updated_at</code> geführt."
      "admin.coupons.help.sections.fields.usage_title" => "CouponUsage (Einlösungsprotokoll)"
      "admin.coupons.help.sections.overview.intro" => "Das Gutschein-Modul ermöglicht das Erstellen und Verwalten von Rabattcodes für den Shop. Kunden geben den Code im Checkout ein und erhalten den passenden Rabatt oder Gratis-Versand."
      "admin.coupons.help.sections.overview.permissions_label" => "Berechtigungen:"
      "admin.coupons.help.sections.overview.permissions_text" => "<code>ROLE_ADMIN_COUPON_MANAGE</code> auf Klassen-Ebene plus granular <code>LIST</code>, <code>ADD</code>, <code>EDIT</code> und <code>DELETE</code>."
      "admin.coupons.help.sections.overview.title" => "Überblick"
      "admin.coupons.help.sections.redeem.bullets.params" => "Body-Felder: <code>code</code>, <code>orderTotal</code> und optional <code>userKey</code>."
      "admin.coupons.help.sections.redeem.bullets.response" => "Antwort: <code>valid</code>, <code>discount</code>, <code>newTotal</code>, optional <code>error</code> und <code>coupon</code>."
      "admin.coupons.help.sections.redeem.bullets.route" => "API-Route: <code>POST /api/coupon/validate</code> (ApiCouponController)."
      "admin.coupons.help.sections.redeem.bullets.storage" => "Die eigentliche Einlösung erhöht <code>coupon.usedCount</code> und den zugehörigen Eintrag in <code>coupon_usage</code>."
      "admin.coupons.help.sections.redeem.intro" => "Kunden können Gutscheincodes im <strong>Checkout</strong> eingeben. Die Validierung läuft über die öffentliche Coupon-API."
      "admin.coupons.help.sections.redeem.title" => "Einlösung im Shop"
      "admin.coupons.help.sections.types.rows.fixed.effect" => "Fester Euro-Betrag wird vom Bestellwert abgezogen."
      "admin.coupons.help.sections.types.rows.fixed.example" => "-10,00 €"
      "admin.coupons.help.sections.types.rows.fixed.value" => "Betrag in €, z. B. 10.00"
      "admin.coupons.help.sections.types.rows.free_shipping.effect" => "Versandkosten werden extern auf 0 gesetzt."
      "admin.coupons.help.sections.types.rows.free_shipping.example" => "Gratis-Versand"
      "admin.coupons.help.sections.types.rows.free_shipping.value" => "-"
      "admin.coupons.help.sections.types.rows.percent.effect" => "Rabatt auf den Warenkorbwert."
      "admin.coupons.help.sections.types.rows.percent.example" => "20 % Rabatt"
      "admin.coupons.help.sections.types.rows.percent.value" => "Prozentzahl, z. B. 20"
      "admin.coupons.help.sections.types.table.effect" => "Wirkung"
      "admin.coupons.help.sections.types.table.example" => "Beispiel"
      "admin.coupons.help.sections.types.table.type" => "Typ"
      "admin.coupons.help.sections.types.table.value" => "Wert"
      "admin.coupons.help.sections.types.title" => "Gutschein-Typen"
      "admin.coupons.help.title" => "Hilfe: Gutscheine & Rabatte"
      "admin.coupons.index.api.endpoint_label" => "Endpoint:"
      "admin.coupons.index.api.required_fields_label" => "Pflichtfelder:"
      "admin.coupons.index.api.response_label" => "Antwort:"
      "admin.coupons.index.api.title" => "API-Endpunkt (Kassen-Integration)"
      "admin.coupons.index.api.user_limit_label" => "Bei Benutzerlimit:"
      "admin.coupons.index.api.user_limit_text" => "mitsenden, z. B. Kunden-ID oder E-Mail-Hash"
      "admin.coupons.index.columns.actions" => "Aktionen"
      "admin.coupons.index.columns.code" => "Code"
      "admin.coupons.index.columns.min_order_amount" => "Min. Bestellwert"
      "admin.coupons.index.columns.name" => "Name"
      "admin.coupons.index.columns.status" => "Status"
      "admin.coupons.index.columns.type" => "Typ"
      "admin.coupons.index.columns.usage" => "Nutzung"
      "admin.coupons.index.columns.validity" => "Gültigkeit"
      "admin.coupons.index.columns.value" => "Wert"
      "admin.coupons.index.delete_confirm" => "Gutschein "%code%" wirklich löschen?"
      "admin.coupons.index.empty" => "Keine Gutscheine gefunden."
      "admin.coupons.index.filters.all_status" => "Alle Status"
      "admin.coupons.index.filters.all_types" => "Alle Typen"
      "admin.coupons.index.filters.search_placeholder" => "Code, Name ..."
      "admin.coupons.index.help_title" => "Hilfe zu diesem Modul"
      "admin.coupons.index.invalid_hint" => "Abgelaufen oder Nutzungslimit erreicht"
      "admin.coupons.index.kpi.active" => "Aktiv"
      "admin.coupons.index.kpi.expiring_soon" => "Laufen bald ab"
      "admin.coupons.index.kpi.total" => "Gutscheine gesamt"
      "admin.coupons.index.kpi.total_redemptions" => "Einlösungen gesamt"
      "admin.coupons.index.list_count" => "%count% Einträge"
      "admin.coupons.index.list_title" => "Gutscheine"
      "admin.coupons.index.min_order_from" => "ab %amount% €"
      "admin.coupons.index.modal.title" => "Löschen bestätigen"
      "admin.coupons.index.page_title" => "Gutscheine & Rabatte"
      "admin.coupons.index.usage_limit" => "Limit/User: %count%"
      "admin.coupons.index.usage_total" => "Gesamt: %count%"
      "admin.coupons.index.usage_unlimited" => "Limit/User: unbegrenzt"
      "admin.coupons.index.valid_from" => "Von: %date%"
      "admin.coupons.index.valid_until" => "Bis: %date%"
      "admin.coupons.index.validity_unlimited" => "Unbegrenzt"
      "admin.coupons.index.value_not_applicable" => "-"
      "admin.coupons.nav.menu" => "Gutscheine"
      "admin.coupons.nav.submenu" => "Gutschein-Manager"
      "admin.coupons.notifications.activated" => "Gutschein "%code%" wurde aktiviert."
      "admin.coupons.notifications.code_empty" => "Der Code darf nicht leer sein."
      "admin.coupons.notifications.code_exists" => "Dieser Code existiert bereits."
      "admin.coupons.notifications.created" => "Gutschein "%code%" wurde angelegt."
      "admin.coupons.notifications.csrf_invalid" => "Ungültiges CSRF-Token."
      "admin.coupons.notifications.deactivated" => "Gutschein "%code%" wurde deaktiviert."
      "admin.coupons.notifications.deleted" => "Gutschein "%code%" wurde gelöscht."
      "admin.coupons.notifications.updated" => "Gutschein "%code%" wurde gespeichert."
      "admin.coupons.status.active" => "Aktiv"
      "admin.coupons.status.inactive" => "Inaktiv"
      "admin.coupons.types.fixed" => "Festbetrag (€)"
      "admin.coupons.types.free_shipping" => "Gratis-Versand"
      "admin.coupons.types.percent" => "Prozent (%)"
      "admin.customer.form.create_title" => "Shop-Kunde anlegen"
      "admin.customer.form.edit_title" => "Shop-Kunde bearbeiten"
      "admin.customer.form.fields.address" => "Adresse"
      "admin.customer.form.fields.city" => "Stadt"
      "admin.customer.form.fields.email" => "E-Mail"
      "admin.customer.form.fields.name" => "Name"
      "admin.customer.form.fields.phone" => "Telefon"
      "admin.customer.form.fields.wishlist" => "Wunschliste"
      "admin.customer.form.fields.zip" => "PLZ"
      "admin.customer.form.panel_title" => "Formular"
      "admin.customer.form.subtitle" => "Stammdaten und Kontaktdaten zentral pflegen."
      "admin.customer.list.columns.actions" => "Aktionen"
      "admin.customer.list.columns.address" => "Adresse"
      "admin.customer.list.columns.city" => "Stadt"
      "admin.customer.list.columns.email" => "E-Mail"
      "admin.customer.list.columns.id" => "ID"
      "admin.customer.list.columns.name" => "Name"
      "admin.customer.list.columns.phone" => "Telefon"
      "admin.customer.list.columns.wishlist" => "Wunschliste"
      "admin.customer.list.columns.zip" => "PLZ"
      "admin.customer.list.create" => "Shop-Kunde anlegen"
      "admin.customer.list.delete_message" => "Kunde "%name%" wirklich löschen?"
      "admin.customer.list.empty" => "Keine Shop-Kunden vorhanden."
      "admin.customer.list.panel_title" => "Shop-Kundenliste"
      "admin.customer.list.subtitle" => "Verwalte Shop-Kundenstammdaten und Kontaktinformationen."
      "admin.customer.list.title" => "Shop-Kunden"
      "admin.customer.notifications.created" => "Kunde wurde angelegt."
      "admin.customer.notifications.deleted" => "Kunde wurde gelöscht."
      "admin.customer.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.customer.notifications.updated" => "Kunde wurde gespeichert."
      "admin.dashboard_phase1.alerts.acknowledge" => "Quittieren"
      "admin.dashboard_phase1.alerts.action_acknowledge" => "quittieren"
      "admin.dashboard_phase1.alerts.action_resolve" => "lösen"
      "admin.dashboard_phase1.alerts.all_severities" => "Alle Severities"
      "admin.dashboard_phase1.alerts.bulk_confirm" => "%count% Hinweis(e) wirklich %action%?"
      "admin.dashboard_phase1.alerts.bulk_failed" => "Bulk-Aktion fehlgeschlagen."
      "admin.dashboard_phase1.alerts.bulk.acknowledge_all" => "Alle quittieren"
      "admin.dashboard_phase1.alerts.bulk.clear_selection" => "Auswahl aufheben"
      "admin.dashboard_phase1.alerts.bulk.resolve_all" => "Alle lösen"
      "admin.dashboard_phase1.alerts.bulk.selected" => "ausgewählt"
      "admin.dashboard_phase1.alerts.none" => "✅ Keine ungelösten Hinweise."
      "admin.dashboard_phase1.alerts.product_label" => "Produkt: %name%"
      "admin.dashboard_phase1.alerts.resolve" => "Lösen"
      "admin.dashboard_phase1.alerts.select_all" => "Alle auswählen"
      "admin.dashboard_phase1.alerts.unresolved_title" => "Ungelöste Alerts"
      "admin.dashboard_phase1.common.refresh" => "Aktualisieren"
      "admin.dashboard_phase1.digest.api_failed" => "Digest API fehlgeschlagen"
      "admin.dashboard_phase1.digest.failed" => "Tagesübersicht konnte nicht gesendet werden."
      "admin.dashboard_phase1.digest.sent" => "Tagesübersicht gesendet: %delivered%/%total% Zustellungen erfolgreich."
      "admin.dashboard_phase1.digest.skipped" => "Tagesübersicht wurde übersprungen."
      "admin.dashboard_phase1.feeds.back_to_management" => "Zur Feed-Verwaltung"
      "admin.dashboard_phase1.feeds.description" => "Google XML, Meta CSV, Idealo CSV, Geizhals CSV inklusive B2C/B2B Profilen"
      "admin.dashboard_phase1.feeds.headers.channel" => "Kanal"
      "admin.dashboard_phase1.feeds.headers.items" => "Items"
      "admin.dashboard_phase1.feeds.headers.profile" => "Profil"
      "admin.dashboard_phase1.feeds.headers.source" => "Quelle"
      "admin.dashboard_phase1.feeds.headers.time" => "Zeit"
      "admin.dashboard_phase1.feeds.label" => "Kanal-Feeds:"
      "admin.dashboard_phase1.feeds.latest_exports_title" => "Letzte Feed-Exporte"
      "admin.dashboard_phase1.feeds.latest_runs" => "Letzte Runs:"
      "admin.dashboard_phase1.feeds.maintenance_completed" => "Feed-Wartung abgeschlossen: ok=%healthy%, veraltet=%stale%, fehlend=%missing%"
      "admin.dashboard_phase1.feeds.maintenance_confirm" => "Feed-Wartung jetzt starten? Es werden alle Feed-Dateien neu generiert."
      "admin.dashboard_phase1.feeds.maintenance_failed" => "Feed-Wartung fehlgeschlagen."
      "admin.dashboard_phase1.feeds.management" => "Feed Verwaltung"
      "admin.dashboard_phase1.feeds.no_exports" => "Noch keine Feed-Exporte protokolliert."
      "admin.dashboard_phase1.feeds.run_maintenance" => "Feed Maintenance starten"
      "admin.dashboard_phase1.imports.all_sources" => "Alle Quellen"
      "admin.dashboard_phase1.imports.all_statuses" => "Alle Status"
      "admin.dashboard_phase1.imports.changed_fields" => "Geänderte Felder (%count% gesamt, max. 20 angezeigt):"
      "admin.dashboard_phase1.imports.headers.changed" => "Geändert"
      "admin.dashboard_phase1.imports.headers.created" => "Erstellt"
      "admin.dashboard_phase1.imports.headers.date" => "Datum"
      "admin.dashboard_phase1.imports.headers.duration" => "Dauer (s)"
      "admin.dashboard_phase1.imports.headers.errors" => "Fehler"
      "admin.dashboard_phase1.imports.headers.field" => "Feld"
      "admin.dashboard_phase1.imports.headers.message" => "Meldung"
      "admin.dashboard_phase1.imports.headers.new" => "Neu"
      "admin.dashboard_phase1.imports.headers.note" => "Notiz"
      "admin.dashboard_phase1.imports.headers.old" => "Alt"
      "admin.dashboard_phase1.imports.headers.record" => "Datensatz"
      "admin.dashboard_phase1.imports.headers.source" => "Quelle"
      "admin.dashboard_phase1.imports.headers.status" => "Status"
      "admin.dashboard_phase1.imports.headers.time" => "Zeit"
      "admin.dashboard_phase1.imports.load_details_failed" => "Fehler beim Laden der Details."
      "admin.dashboard_phase1.imports.no_details" => "Keine weiteren Details vorhanden."
      "admin.dashboard_phase1.imports.title" => "Import-Historie (Letzte 20)"
      "admin.dashboard_phase1.meta.title" => "Phase-1-Monitoring-Dashboard"
      "admin.dashboard_phase1.page.title" => "Monitoring & Datenqualität"
      "admin.dashboard_phase1.pricing.active_guards" => "aktive Guards"
      "admin.dashboard_phase1.pricing.active_rules" => "aktive Regeln"
      "admin.dashboard_phase1.pricing.daily_digest" => "Daily Digest senden"
      "admin.dashboard_phase1.pricing.dry_run_completed" => "Preis-Testlauf abgeschlossen: %changed% von %checked% Produkten wurden angepasst."
      "admin.dashboard_phase1.pricing.dry_run_failed" => "Preis-Testlauf fehlgeschlagen."
      "admin.dashboard_phase1.pricing.label" => "Pricing Engine:"
      "admin.dashboard_phase1.pricing.live_apply_completed" => "Preis-Live-Ausführung abgeschlossen: %changed% von %checked% Produkten angepasst."
      "admin.dashboard_phase1.pricing.live_apply_failed" => "Preis-Live-Ausführung fehlgeschlagen."
      "admin.dashboard_phase1.pricing.live_confirm" => "Live-Ausführung wirklich starten? Es werden SpecialPrice-Werte aktualisiert."
      "admin.dashboard_phase1.pricing.management" => "Pricing Verwaltung"
      "admin.dashboard_phase1.pricing.total_rules" => "gesamt"
      "admin.dashboard_phase1.quality.all_good" => "✅ Alle Produkte haben gute Qualität!"
      "admin.dashboard_phase1.quality.all_levels" => "Alle Level"
      "admin.dashboard_phase1.quality.confirm_recalculate" => "Qualitäts-Scores für alle Produkte neu berechnen?"
      "admin.dashboard_phase1.quality.critical_issues_title" => "Kritische Mängel"
      "admin.dashboard_phase1.quality.distribution_title" => "Qualitäts-Verteilung"
      "admin.dashboard_phase1.quality.edit" => "Bearbeiten"
      "admin.dashboard_phase1.quality.labels.critical" => "Kritisch"
      "admin.dashboard_phase1.quality.labels.excellent" => "Ausgezeichnet"
      "admin.dashboard_phase1.quality.labels.good" => "Gut"
      "admin.dashboard_phase1.quality.labels.high" => "Hoch"
      "admin.dashboard_phase1.quality.labels.medium" => "Mittel"
      "admin.dashboard_phase1.quality.low_quality_title" => "Produkte mit niedriger Qualität (<%minScore%)"
      "admin.dashboard_phase1.quality.min_score_title" => "Min Score"
      "admin.dashboard_phase1.quality.recalculate" => "Neu berechnen"
      "admin.dashboard_phase1.quality.recalculate_failed" => "Fehler beim Neuberechnen!"
      "admin.dashboard_phase1.quality.recalculated" => "✅ %count% Produkte neu bewertet!"
      "admin.dashboard_phase1.quality.search_placeholder" => "Produkt suchen..."
      "admin.dashboard_phase1.seo.api_failed" => "SEO API fehlgeschlagen"
      "admin.dashboard_phase1.seo.apply_completed" => "%mode%: %updatedCategories% Kategorien aktualisiert, %createdSeoMeta% SEO-Meta neu angelegt."
      "admin.dashboard_phase1.seo.automation_failed" => "SEO-Automatisierung fehlgeschlagen"
      "admin.dashboard_phase1.seo.category_description_template" => "Kategorie Description-Template"
      "admin.dashboard_phase1.seo.category_title_template" => "Kategorie Titel-Template"
      "admin.dashboard_phase1.seo.empty_value" => "leer"
      "admin.dashboard_phase1.seo.issue_headers.canonical_current" => "Canonical aktuell"
      "admin.dashboard_phase1.seo.issue_headers.canonical_expected" => "Canonical erwartet"
      "admin.dashboard_phase1.seo.issue_headers.category" => "Kategorie"
      "admin.dashboard_phase1.seo.issue_headers.redirect_suggestion" => "301-Vorschlag"
      "admin.dashboard_phase1.seo.live_confirm" => "Live-Ausführung starten? SEO-Meta-Daten werden dauerhaft aktualisiert."
      "admin.dashboard_phase1.seo.mode_live_apply" => "Live-Ausführung"
      "admin.dashboard_phase1.seo.mode_test_run" => "Testlauf"
      "admin.dashboard_phase1.seo.no_issues" => "Keine SEO-Auffälligkeiten in den Top-Treffern gefunden."
      "admin.dashboard_phase1.seo.preview_load_failed" => "SEO-Preview konnte nicht geladen werden."
      "admin.dashboard_phase1.seo.redirect_queue_title" => "301 Redirect Queue"
      "admin.dashboard_phase1.seo.redirect_queue.headers.action" => "Aktion"
      "admin.dashboard_phase1.seo.redirect_queue.headers.from" => "From"
      "admin.dashboard_phase1.seo.redirect_queue.headers.reason" => "Reason"
      "admin.dashboard_phase1.seo.redirect_queue.headers.source" => "Quelle"
      "admin.dashboard_phase1.seo.redirect_queue.headers.to" => "To"
      "admin.dashboard_phase1.seo.redirect_queue.load_failed" => "Redirect Queue konnte nicht geladen werden."
      "admin.dashboard_phase1.seo.redirect_queue.mark_done" => "Erledigt"
      "admin.dashboard_phase1.seo.redirect_queue.mark_done_alert_failed" => "Redirect-Warteschlangen-Eintrag konnte nicht als erledigt markiert werden."
      "admin.dashboard_phase1.seo.redirect_queue.mark_done_failed" => "Als erledigt markieren fehlgeschlagen"
      "admin.dashboard_phase1.seo.redirect_queue.none" => "Keine offenen Redirect-Empfehlungen."
      "admin.dashboard_phase1.seo.redirect_queue.refresh_failed" => "Redirect Queue refresh fehlgeschlagen"
      "admin.dashboard_phase1.seo.refresh_preview" => "Preview aktualisieren"
      "admin.dashboard_phase1.seo.refresh_queue" => "Queue refreshen"
      "admin.dashboard_phase1.seo.save_failed" => "SEO-Vorlagen konnten nicht gespeichert werden."
      "admin.dashboard_phase1.seo.save_success" => "SEO-Vorlagen wurden gespeichert."
      "admin.dashboard_phase1.seo.save_templates" => "Templates speichern"
      "admin.dashboard_phase1.seo.summary.canonical_updates" => "Canonical-Aktualisierungen"
      "admin.dashboard_phase1.seo.summary.checked_categories" => "Geprüfte Kategorien"
      "admin.dashboard_phase1.seo.summary.duplicate_product_slugs" => "Doppelte Produkt-Slugs"
      "admin.dashboard_phase1.seo.summary.redirect_suggestions" => "Redirect-Empfehlungen"
      "admin.dashboard_phase1.seo.title" => "SEO Automation 2.0"
      "admin.dashboard_phase1.summary.critical.hint" => "Ungelöst"
      "admin.dashboard_phase1.summary.critical.title" => "Kritische Alerts"
      "admin.dashboard_phase1.summary.import.hint" => "Status"
      "admin.dashboard_phase1.summary.import.title" => "Letzter Import"
      "admin.dashboard_phase1.summary.quality.hint" => "Durchschnitt"
      "admin.dashboard_phase1.summary.quality.title" => "Qualitäts-Score"
      "admin.dashboard_phase1.summary.warning.hint" => "In den letzten 24h"
      "admin.dashboard_phase1.summary.warning.title" => "Warnungen"
      "admin.dashboard_phase1.suspicious.acknowledge" => "Quittieren"
      "admin.dashboard_phase1.suspicious.acknowledge_alert_failed" => "Hinweis konnte nicht quittiert werden."
      "admin.dashboard_phase1.suspicious.acknowledge_failed" => "Quittieren fehlgeschlagen"
      "admin.dashboard_phase1.suspicious.headers.action" => "Aktion"
      "admin.dashboard_phase1.suspicious.headers.date" => "Datum"
      "admin.dashboard_phase1.suspicious.headers.message" => "Meldung"
      "admin.dashboard_phase1.suspicious.headers.product" => "Produkt"
      "admin.dashboard_phase1.suspicious.headers.source" => "Quelle"
      "admin.dashboard_phase1.suspicious.headers.status" => "Status"
      "admin.dashboard_phase1.suspicious.load_failed" => "Fehler beim Laden der Preis-Schutzdaten."
      "admin.dashboard_phase1.suspicious.no_recent_prices" => "✅ Keine auffälligen Preise in den letzten Treffern."
      "admin.dashboard_phase1.suspicious.open_cases_hint" => "Ungelöste unplausible Preise"
      "admin.dashboard_phase1.suspicious.open_cases_title" => "Preis-Schutzfälle (offen)"
      "admin.dashboard_phase1.suspicious.recent_title" => "Letzte Suspicious-Preis-Treffer"
      "admin.dashboard_phase1.suspicious.resolve" => "Lösen"
      "admin.dashboard_phase1.suspicious.resolve_alert_failed" => "Hinweis konnte nicht abgeschlossen werden."
      "admin.dashboard_phase1.suspicious.resolve_failed" => "Abschließen fehlgeschlagen"
      "admin.dashboard_phase1.suspicious.source_filter.all" => "Alle Quellen"
      "admin.dashboard_phase1.suspicious.source_filter.import" => "Import"
      "admin.dashboard_phase1.suspicious.source_filter.pricing" => "Pricing"
      "admin.dashboard_phase1.suspicious.status_filter.all" => "Alle"
      "admin.dashboard_phase1.suspicious.status_filter.open" => "Nur offen"
      "admin.dashboard_phase1.tabs.alerts" => "Alerts (Echtzeit)"
      "admin.dashboard_phase1.tabs.imports" => "Import-Historie"
      "admin.dashboard_phase1.tabs.quality" => "Datenqualität"
      "admin.dashboard.api.errors.import_log_not_found" => "Import-Protokoll wurde nicht gefunden."
      "admin.dashboard.catalog.descriptions.calendar_mini" => "Mini-Kalender mit Buchungsdichte, Anreisen und Abreisen pro Tag."
      "admin.dashboard.catalog.descriptions.quick_links" => "Persönliche Schnelllinks mit integrierter Verwaltung."
      "admin.dashboard.catalog.descriptions.recent_orders" => "Die zuletzt eingegangenen Bestellungen."
      "admin.dashboard.catalog.descriptions.stats_bookings" => "Aktive Aufenthalte, heutige Anreisen und Buchungen der nächsten sieben Tage."
      "admin.dashboard.catalog.descriptions.stats_customers" => "Kundenzahl gesamt und neue Kunden diesen Monat."
      "admin.dashboard.catalog.descriptions.stats_products" => "Aktive Produkte, Niedrigbestand und ausverkaufte Artikel im Überblick."
      "admin.dashboard.catalog.descriptions.stats_revenue" => "Umsatz aus konvertierten Shop-Bestellungen mit korrekter Zeitbasis über den Bestellstatus."
      "admin.dashboard.catalog.descriptions.support_tickets" => "Offene Support-Tickets und aktueller Status."
      "admin.dashboard.catalog.descriptions.todo" => "Persistente persönliche Aufgabenliste für Admins."
      "admin.dashboard.catalog.descriptions.upcoming_bookings" => "Tabelle der nächsten anstehenden Buchungen."
      "admin.dashboard.catalog.descriptions.welcome" => "Willkommens-Banner mit Datum und Nutzername."
      "admin.dashboard.live.booking_table.apartment" => "Wohnung"
      "admin.dashboard.live.booking_table.arrival" => "Anreise"
      "admin.dashboard.live.booking_table.departure" => "Abreise"
      "admin.dashboard.live.booking_table.empty" => "Keine kommenden Buchungen."
      "admin.dashboard.live.booking_table.guest" => "Gast"
      "admin.dashboard.live.booking_table.open_apartment" => "Apartment"
      "admin.dashboard.live.booking_table.open_booking" => "Buchung"
      "admin.dashboard.live.booking_table.status" => "Status"
      "admin.dashboard.live.common.open_module" => "Modul öffnen"
      "admin.dashboard.live.order_table.customer" => "Kunde"
      "admin.dashboard.live.order_table.date" => "Datum"
      "admin.dashboard.live.order_table.edit_order" => "Bearbeiten"
      "admin.dashboard.live.order_table.empty" => "Keine Bestellungen."
      "admin.dashboard.live.order_table.number" => "Bestellung"
      "admin.dashboard.live.order_table.open_order" => "Details"
      "admin.dashboard.live.order_table.status" => "Status"
      "admin.dashboard.live.order_table.total" => "Gesamt"
      "admin.dashboard.live.order_table.unknown_customer" => "Kunde unbekannt"
      "admin.dashboard.live.stats.bookings_active_now" => "Aktiv vor Ort"
      "admin.dashboard.live.stats.bookings_arrivals_today" => "Anreisen heute"
      "admin.dashboard.live.stats.bookings_sub" => "%confirmed% bestätigt · %today% heute"
      "admin.dashboard.live.stats.bookings_total" => "Buchungen gesamt"
      "admin.dashboard.live.stats.bookings_upcoming_week" => "Nächste 7 Tage"
      "admin.dashboard.live.stats.customers_new_month" => "Neu im Monat"
      "admin.dashboard.live.stats.customers_total" => "Kunden gesamt"
      "admin.dashboard.live.stats.open_tickets" => "Offene Tickets"
      "admin.dashboard.live.stats.products_active" => "Aktiv"
      "admin.dashboard.live.stats.products_low_stock" => "Niedrigbestand"
      "admin.dashboard.live.stats.products_out_of_stock" => "Ausverkauft"
      "admin.dashboard.live.stats.products_total" => "Produkte gesamt"
      "admin.dashboard.live.stats.revenue_avg_order" => "Ø Bestellwert"
      "admin.dashboard.live.stats.revenue_last_30_days" => "Letzte 30 Tage"
      "admin.dashboard.live.stats.revenue_month" => "Umsatz im Monat"
      "admin.dashboard.live.stats.revenue_orders" => "Bestellungen"
      "admin.dashboard.live.stats.revenue_total" => "Gesamtumsatz"
      "admin.dashboard.live.support_tickets.empty" => "Keine Tickets vorhanden."
      "admin.dashboard.live.support_tickets.open_ticket" => "Ticket"
      "admin.dashboard.live.support_tickets.related_order" => "Warenkorb"
      "admin.dashboard.modal.active_badge" => "Aktiv"
      "admin.dashboard.modal.active_hint" => "Dieses Widget ist bereits aktiv. Du kannst es trotzdem erneut hinzufügen."
      "admin.dashboard.modal.add" => "Hinzufügen"
      "admin.dashboard.modal.cancel" => "Abbrechen"
      "admin.dashboard.modal.footer_info" => "Aktive Widgets können erneut hinzugefügt werden."
      "admin.dashboard.modal.search_placeholder" => "Widget suchen ..."
      "admin.dashboard.modal.size_label" => "Größe wählen:"
      "admin.dashboard.modal.subtitle" => "Widget auswählen und zum Dashboard hinzufügen"
      "admin.dashboard.modal.title" => "Widget-Bibliothek"
      "admin.dashboard.page.add_widget" => "Widget hinzufügen"
      "admin.dashboard.page.help" => "Hilfe"
      "admin.dashboard.page.help_title" => "Hilfe & Dokumentation"
      "admin.dashboard.page.layout_saved" => "Gespeichert"
      "admin.dashboard.page.title" => "Dashboard"
      "admin.dashboard.page.toggle_fixed" => "Fest"
      "admin.dashboard.page.toggle_movable" => "Bewegbar"
      "admin.dashboard.sizes.full" => "Voll (1/1)"
      "admin.dashboard.sizes.large" => "Groß (2/3)"
      "admin.dashboard.sizes.medium" => "Mittel (1/2)"
      "admin.dashboard.sizes.short_full" => "Voll"
      "admin.dashboard.sizes.short_large" => "Groß"
      "admin.dashboard.sizes.short_medium" => "Mittel"
      "admin.dashboard.sizes.short_small" => "Klein"
      "admin.dashboard.sizes.small" => "Klein (1/3)"
      "admin.dashboard.statuses.cancelled" => "Storniert"
      "admin.dashboard.statuses.completed" => "Abgeschlossen"
      "admin.dashboard.statuses.confirmed" => "Bestätigt"
      "admin.dashboard.statuses.delivered" => "Geliefert"
      "admin.dashboard.statuses.open" => "Offen"
      "admin.dashboard.statuses.ordered" => "Bestellt"
      "admin.dashboard.statuses.paid" => "Bezahlt"
      "admin.dashboard.statuses.pending" => "Ausstehend"
      "admin.dashboard.statuses.processing" => "In Bearbeitung"
      "admin.dashboard.statuses.shipped" => "Versendet"
      "admin.dashboard.widget_actions.delete" => "Entfernen"
      "admin.dashboard.widget_actions.delete_confirm" => "Widget wirklich entfernen?"
      "admin.dashboard.widgets.calendar_mini.current_month" => "Aktueller Monat"
      "admin.dashboard.widgets.calendar_mini.legend.arrivals" => "Anreise"
      "admin.dashboard.widgets.calendar_mini.legend.bookings" => "Belegt"
      "admin.dashboard.widgets.calendar_mini.legend.departures" => "Abreise"
      "admin.dashboard.widgets.calendar_mini.open_calendar" => "Buchungskalender öffnen"
      "admin.dashboard.widgets.calendar_mini.to_calendar" => "Zum Kalender"
      "admin.dashboard.widgets.calendar_mini.weekdays.fri" => "Fr"
      "admin.dashboard.widgets.calendar_mini.weekdays.mon" => "Mo"
      "admin.dashboard.widgets.calendar_mini.weekdays.sat" => "Sa"
      "admin.dashboard.widgets.calendar_mini.weekdays.sun" => "So"
      "admin.dashboard.widgets.calendar_mini.weekdays.thu" => "Do"
      "admin.dashboard.widgets.calendar_mini.weekdays.tue" => "Di"
      "admin.dashboard.widgets.calendar_mini.weekdays.wed" => "Mi"
      "admin.dashboard.widgets.labels.calendar_mini" => "Kalenderübersicht"
      "admin.dashboard.widgets.labels.quick_links" => "Schnelllinks"
      "admin.dashboard.widgets.labels.recent_orders" => "Letzte Bestellungen"
      "admin.dashboard.widgets.labels.stats_bookings" => "Buchungen (Statistik)"
      "admin.dashboard.widgets.labels.stats_customers" => "Kunden (Statistik)"
      "admin.dashboard.widgets.labels.stats_products" => "Produkte (Statistik)"
      "admin.dashboard.widgets.labels.stats_revenue" => "Umsatz (Statistik)"
      "admin.dashboard.widgets.labels.support_tickets" => "Support-Tickets"
      "admin.dashboard.widgets.labels.todo" => "Aufgabenliste"
      "admin.dashboard.widgets.labels.upcoming_bookings" => "Kommende Buchungen"
      "admin.dashboard.widgets.labels.welcome" => "Willkommens-Banner"
      "admin.dashboard.widgets.quick_links.add" => "Link hinzufügen"
      "admin.dashboard.widgets.quick_links.calendar" => "Kalender"
      "admin.dashboard.widgets.quick_links.cancel" => "Abbrechen"
      "admin.dashboard.widgets.quick_links.dashboard" => "Dashboard"
      "admin.dashboard.widgets.quick_links.empty" => "Noch keine Schnelllinks hinterlegt."
      "admin.dashboard.widgets.quick_links.helper" => "Interne Ziele beginnen mit /. Externe Links mit https://."
      "admin.dashboard.widgets.quick_links.icon_placeholder" => "Iconklasse, z. B. fa-calendar"
      "admin.dashboard.widgets.quick_links.label_placeholder" => "Bezeichnung"
      "admin.dashboard.widgets.quick_links.manage" => "Links bearbeiten"
      "admin.dashboard.widgets.quick_links.manage_widgets" => "Widgets verwalten"
      "admin.dashboard.widgets.quick_links.save" => "Links speichern"
      "admin.dashboard.widgets.quick_links.url_placeholder" => "Ziel-URL"
      "admin.dashboard.widgets.todo.add" => "Aufgabe hinzufügen"
      "admin.dashboard.widgets.todo.check_bookings" => "Neue Buchungen prüfen"
      "admin.dashboard.widgets.todo.empty" => "Keine Aufgaben vorhanden."
      "admin.dashboard.widgets.todo.helper" => "Aufgaben werden direkt im Dashboard gespeichert."
      "admin.dashboard.widgets.todo.input_placeholder" => "Neue Aufgabe notieren ..."
      "admin.dashboard.widgets.todo.plan_newsletter" => "Newsletter-Kampagne planen"
      "admin.dashboard.widgets.todo.update_product_images" => "Produktbilder aktualisieren"
      "admin.dashboard.widgets.welcome.greeting" => "Willkommen, %name%!"
      "admin.dashboard.widgets.welcome.today_is" => "Heute ist %date%"
      "admin.feed.config.category_map_placeholder" => "Leuchten=Haus & Garten > Beleuchtung"
      "admin.feed.config.fields.b2b_discount" => "B2B-Rabatt %"
      "admin.feed.config.fields.category_map" => "Kategorie-Mapping (je Zeile: Quelle=Ziel)"
      "admin.feed.config.fields.geizhals_adjustment" => "Geizhals-Anpassung %"
      "admin.feed.config.fields.geizhals_title_max" => "Geizhals-Titel max."
      "admin.feed.config.fields.google_adjustment" => "Google-Anpassung %"
      "admin.feed.config.fields.google_title_max" => "Google-Titel max."
      "admin.feed.config.fields.idealo_adjustment" => "Idealo-Anpassung %"
      "admin.feed.config.fields.idealo_title_max" => "Idealo-Titel max."
      "admin.feed.config.fields.meta_adjustment" => "Meta-Anpassung %"
      "admin.feed.config.fields.meta_title_max" => "Meta-Titel max."
      "admin.feed.config.hint" => "Negative Kanalwerte senken, positive Werte erhöhen den Kanalpreis. Titel werden pro Kanal automatisch gekürzt. Kategorie-Mapping arbeitet auf Teilstring-Basis."
      "admin.feed.config.reload" => "Neu laden"
      "admin.feed.config.title" => "Preisprofil-Konfiguration"
      "admin.feed.controls.channel" => "Kanal"
      "admin.feed.controls.channels.geizhals" => "Geizhals (CSV)"
      "admin.feed.controls.channels.google" => "Google Shopping (XML)"
      "admin.feed.controls.channels.idealo" => "Idealo (CSV)"
      "admin.feed.controls.channels.meta" => "Meta Catalog (CSV)"
      "admin.feed.controls.download" => "Feed herunterladen"
      "admin.feed.controls.limit" => "Limit"
      "admin.feed.controls.load_preview" => "Vorschau laden"
      "admin.feed.controls.profile" => "Preisprofil"
      "admin.feed.heading" => "Product Feed Hub"
      "admin.feed.health.check" => "Prüfen"
      "admin.feed.health.checked_at" => "Letzte Prüfung: %time% | Grenzwert: %hours%h"
      "admin.feed.health.checking" => "Prüfe Feed-Frische mit Grenzwert %hours%h ..."
      "admin.feed.health.columns.age" => "Alter (h)"
      "admin.feed.health.columns.channel" => "Kanal"
      "admin.feed.health.columns.items" => "Einträge"
      "admin.feed.health.columns.profile" => "Profil"
      "admin.feed.health.columns.source" => "Quelle"
      "admin.feed.health.columns.status" => "Status"
      "admin.feed.health.columns.time" => "Zeit"
      "admin.feed.health.empty" => "Noch keine Prüfung ausgeführt."
      "admin.feed.health.loading" => "Health-Daten werden geladen ..."
      "admin.feed.health.no_rows" => "Keine Health-Daten vorhanden."
      "admin.feed.health.statuses.healthy" => "Healthy"
      "admin.feed.health.statuses.missing" => "Missing"
      "admin.feed.health.statuses.stale" => "Stale"
      "admin.feed.health.title" => "Feed Health"
      "admin.feed.maintenance.empty" => "Noch kein Lauf ausgeführt."
      "admin.feed.maintenance.failed" => "Maintenance fehlgeschlagen."
      "admin.feed.maintenance.run" => "Alle Feeds neu generieren + Health prüfen"
      "admin.feed.maintenance.running" => "Maintenance läuft ..."
      "admin.feed.maintenance.success" => "Maintenance abgeschlossen: %count% Feed-Dateien generiert, Health healthy=%healthy%, stale=%stale%, missing=%missing%."
      "admin.feed.maintenance.title" => "One-Click-Maintenance"
      "admin.feed.notifications.config_save_failed" => "Feed-Konfiguration konnte nicht gespeichert werden."
      "admin.feed.notifications.config_saved" => "Feed-Konfiguration gespeichert."
      "admin.feed.page_title" => "Feed-Exporte"
      "admin.feed.preview.columns.b2b_price" => "B2B-Preis"
      "admin.feed.preview.columns.current_price_b2c" => "Aktueller Preis (B2C)"
      "admin.feed.preview.columns.geizhals_price" => "Geizhals-Preis"
      "admin.feed.preview.columns.google_price" => "Google-Preis"
      "admin.feed.preview.columns.id" => "ID"
      "admin.feed.preview.columns.idealo_price" => "Idealo-Preis"
      "admin.feed.preview.columns.link" => "Link"
      "admin.feed.preview.columns.meta_price" => "Meta-Preis"
      "admin.feed.preview.columns.title" => "Titel"
      "admin.feed.preview.empty" => "Noch keine Daten geladen."
      "admin.feed.preview.no_rows" => "Keine passenden Produkte."
      "admin.feed.preview.product_link" => "Produkt"
      "admin.feed.preview.title" => "Vorschau"
      "admin.feed.runs.columns.channel" => "Kanal"
      "admin.feed.runs.columns.format" => "Format"
      "admin.feed.runs.columns.items" => "Einträge"
      "admin.feed.runs.columns.profile" => "Profil"
      "admin.feed.runs.columns.source" => "Quelle"
      "admin.feed.runs.columns.target" => "Ziel"
      "admin.feed.runs.columns.time" => "Zeit"
      "admin.feed.runs.empty" => "Noch keine Runs geladen."
      "admin.feed.runs.no_rows" => "Keine Export-Runs vorhanden."
      "admin.feed.runs.refresh" => "Aktualisieren"
      "admin.feed.runs.title" => "Letzte Export-Runs"
      "admin.feed.subtitle" => "Google-, Meta-, Idealo- und Geizhals-Feeds zentral verwalten."
      "admin.feed.summary.preview_count" => "Einträge in der Vorschau"
      "admin.feed.summary.public_urls" => "Öffentliche Feed-URLs:"
      "admin.help.cms.actions.back" => "Zurück"
      "admin.help.cms.actions.module" => "Zum Modul"
      "admin.help.cms.navigation.items_html" => """
        <li class="mb-1"><a href="#seiten"><i class="fa fa-file-text"></i> Seiten (Pages)</a></li>\n
        <li class="mb-1"><a href="#builder-v2"><i class="fa fa-magic"></i> Page Builder v2</a></li>\n
        <li class="mb-1"><a href="#menues"><i class="fa fa-bars"></i> Menüs</a></li>\n
        <li class="mb-1"><a href="#slider"><i class="fa fa-picture-o"></i> Slider</a></li>\n
        <li class="mb-1"><a href="#widgets"><i class="fa fa-puzzle-piece"></i> Widgets</a></li>\n
        <li class="mb-1"><a href="#felder"><i class="fa fa-th-list"></i> Feldreferenz</a></li>\n
        <li class="mb-1"><a href="#rollen"><i class="fa fa-lock"></i> Rollen</a></li>
        """
      "admin.help.cms.navigation.title" => "Navigation"
      "admin.help.cms.page_title" => "Hilfe: CMS – Seiten, Menüs & Slider"
      "admin.help.cms.sections.builder.body_html" => """
        <p>Seiteninhalte werden im CMS über den Builder gepflegt. Der klassische <code>content</code>-Editor ist im Formular nicht mehr vorgesehen.</p>\n
        <h5>Workflow (Entwurf -> Veröffentlichung):</h5>\n
        <ol>\n
          <li>Seite öffnen: <code>/admin/page/edit/{id}</code></li>\n
          <li>Status im Bereich <strong>Seite</strong> setzen: <strong>Entwurf</strong> oder <strong>Öffentlich</strong></li>\n
          <li>Im Tab <strong>Builder</strong> auf <strong>Abschnitt hinzufügen</strong> klicken - ein Modal öffnet sich mit allen Typen</li>\n
          <li>Abschnitt auswählen, im rechten Editor konfigurieren</li>\n
          <li>Entwurf speichern</li>\n
          <li>Mit <strong>Veröffentlichen</strong> den Live-Stand aktualisieren</li>\n
        </ol>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-bullhorn"></i>\n
          <strong>Wichtig:</strong> Ein gespeicherter Entwurf ist <strong>nicht öffentlich</strong>.\n
          Öffentlich sichtbar ist nur der veröffentlichte Stand. Mit <strong>Offline schalten</strong> wird die Seite wieder aus dem Frontend entfernt.\n
        </div>\n
        <h5>Verbesserte UX (v2.1):</h5>\n
        <ul>\n
          <li><strong>Dropdowns statt ID-Eingabe:</strong> Content-Block, Widget und Kategorie werden direkt per Dropdown aus dem System gewählt - keine IDs mehr notieren!</li>\n
          <li><strong>Bild-Upload:</strong> Bei Bild-Feldern (Hero, Bild+Text) kann eine Datei direkt hochgeladen werden (JPG/PNG/GIF/WebP, max. 5 MB). Alternativ URL manuell eingeben.</li>\n
          <li><strong>Bildposition:</strong> Links/Rechts per Dropdown wählbar</li>\n
          <li><strong>CTA-Variante:</strong> Primär/Dunkel/Hell per Dropdown</li>\n
          <li><strong>Newsletter-Abschnitt:</strong> Neuer Inline-Anmeldeblock mit Variante, Platzhalter und Hinweistext, fest angebunden an das vorhandene Newsletter-Abo</li>\n
          <li><strong>Kennzahlen-Abschnitt:</strong> AppStrap-inspirierte Counter-Karten mit Wert, Suffix, Label und optionalem Bildhintergrund</li>\n
          <li><strong>Beispielvorlagen:</strong> Für alle Abschnittstypen stehen eingebaute Beispielvorlagen direkt im Builder bereit</li>\n
          <li><strong>Status im Formular:</strong> Bereits beim Anlegen/Bearbeiten wird direkt zwischen <code>Entwurf</code> und <code>Öffentlich</code> gewählt</li>\n
        </ul>\n
        <h5>Abschnittstypen:</h5>\n
        <ul>\n
          <li><strong>Inhalt:</strong> <code>hero</code>, <code>text</code>, <code>image_text</code>, <code>cta_banner</code>, <code>newsletter</code>, <code>counter_cards</code>, <code>faq</code></li>\n
          <li><strong>Erweitert:</strong> <code>testimonials</code>, <code>pricing_table</code>, <code>icon_list</code>, <code>video</code></li>\n
          <li><strong>Einbindungen:</strong> <code>content_block</code> (Dropdown), <code>widget</code> (Dropdown), <code>product_grid</code> (Kategorie per Dropdown)</li>\n
          <li><strong>Sonstiges:</strong> <code>spacer</code>, <code>legacy_html</code></li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-lightbulb-o"></i>\n
          <strong>Produkt-Grid Tipp:</strong> Bei <code>Anzahl Produkte = 1</code> rendert das Frontend eine Angebotsansicht mit großem Bild, Produktinfos, Warenkorb-/Wunschlisten-Buttons und B2B-Aktionen.\n
        </div>\n
        <h5>Sichtbarkeit pro Abschnitt:</h5>\n
        <ul>\n
          <li>Zielgruppe: <code>all</code>, <code>guests</code>, <code>logged_in</code></li>\n
          <li>Zeitfenster: sichtbar ab/bis</li>\n
          <li>Serverseitig ausgewertet beim Rendern</li>\n
        </ul>\n
        <h5>Revisionen:</h5>\n
        <ul>\n
          <li>Beim Anlegen, Speichern und Veröffentlichen wird automatisch ein Snapshot erstellt</li>\n
          <li>Aufruf: <code>/admin/page/{id}/revisions</code></li>\n
          <li>Funktionen: Wiederherstellen und Löschen</li>\n
          <li>Aufbewahrung: maximal 50 Revisionen je Seite</li>\n
        </ul>\n
        <h5>Abschnittsvorlagen:</h5>\n
        <ul>\n
          <li>Verwaltung: <code>/admin/section-templates</code></li>\n
          <li>Im Builder direkt einfügen</li>\n
          <li>Aktuellen Abschnitt als Vorlage speichern</li>\n
        </ul>\n
        <h5>Bild-Upload API:</h5>\n
        <div class="alert alert-info">\n
          <i class="fa fa-upload"></i> <code>POST /admin/page/api/upload-image</code> - Datei als <code>multipart/form-data</code> mit Feld <code>image</code>. Antwort: <code>{"url": "/uploads/pages/..."}</code>.<br>\n
          Bilder werden in <code>public/uploads/pages/</code> gespeichert.\n
        </div>
        """
      "admin.help.cms.sections.builder.title" => "Page Builder v2"
      "admin.help.cms.sections.fields.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Feld</th><th>Typ</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>title</code></td><td>Text</td><td>Seitentitel (H1 + Browser-Tab)</td></tr>\n
            <tr><td><code>slug</code></td><td>Text (unique)</td><td>URL-Pfad nach /page/</td></tr>\n
            <tr><td><code>content</code></td><td>HTML</td><td>Legacy-Datenbestand (nicht mehr im Formular gepflegt)</td></tr>\n
            <tr><td><code>pageTemplate</code></td><td>Text</td><td>Template-Auswahl der Seite</td></tr>\n
            <tr><td><code>builderSections</code></td><td>JSON</td><td>Aktueller Entwurf des Builders</td></tr>\n
            <tr><td><code>publishedSections</code></td><td>JSON</td><td>Live-Stand der zuletzt veröffentlichten Version</td></tr>\n
            <tr><td><code>isPublished</code></td><td>Boolean</td><td>Veröffentlichungsstatus</td></tr>\n
            <tr><td><code>publishedAt</code></td><td>DateTime</td><td>Zeitpunkt der Veröffentlichung</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.cms.sections.fields.title" => "Feldreferenz: Page"
      "admin.help.cms.sections.menus.body_html" => """
        <p>Das Menü-System verwaltet die Navigation des Shops.</p>\n
        <div class="row">\n
          <div class="col-md-6">\n
            <h5>Hauptnavigation (Header):</h5>\n
            <ul>\n
              <li>Modul: <code>/admin/menu</code></li>\n
              <li>Shop-Hauptmenü oben</li>\n
              <li>Drag-and-Drop-Sortierung (<code>admin_menu_order</code>)</li>\n
            </ul>\n
          </div>\n
          <div class="col-md-6">\n
            <h5>Footer-Navigation:</h5>\n
            <ul>\n
              <li>Modul: <code>/admin/footer-menu</code></li>\n
              <li>Oberes Footer-Menü für Service- und Inhaltsgruppen</li>\n
              <li>Untere Legal-Leiste für Impressum, Datenschutz, AGB, Widerruf und weitere Pflichtseiten</li>\n
              <li>Berechtigung: <code>ROLE_ADMIN_FOOTER_MENU_MANAGE</code></li>\n
            </ul>\n
          </div>\n
        </div>\n
        <div class="row mt-2">\n
          <div class="col-md-6">\n
            <h5>Shop-Menü:</h5>\n
            <ul>\n
              <li>Modul: <code>/admin/shop-menu</code></li>\n
              <li>Berechtigung: <code>ROLE_ADMIN_SHOP_MENU_MANAGE</code></li>\n
            </ul>\n
          </div>\n
        </div>\n
        <h5>Menü-Eintrag anlegen:</h5>\n
        <ul>\n
          <li><code>label</code>: Anzeigename</li>\n
          <li><code>url</code> oder <code>route</code>: Ziel-URL oder Symfony-Route</li>\n
          <li><code>sortOrder</code>: Reihenfolge</li>\n
          <li><code>isActive</code>: Sichtbarkeit</li>\n
        </ul>
        """
      "admin.help.cms.sections.menus.title" => "Menüs verwalten"
      "admin.help.cms.sections.pages.body_html" => """
        <p>Statische Seiten (Impressum, AGB, Datenschutz, Über uns, etc.) werden über das Seiten-Modul verwaltet.</p>\n
        <ol>\n
          <li><strong>CMS -> Seiten -> + Neue Seite</strong></li>\n
          <li><strong>Titel</strong> eingeben</li>\n
          <li><strong>Slug</strong>: URL-freundlicher Bezeichner (z.B. <code>agb</code> -> erreichbar unter <code>/agb</code>)</li>\n
          <li><strong>Builder</strong>: Inhalte modular über den Tab <code>Builder</code> pflegen</li>\n
          <li>Optional: SEO-Titel und Meta-Description</li>\n
          <li><strong>Footer-Platzierung</strong>: Oberes Footer-Menü für Service-Spalten oder untere Legal-Leiste für rechtliche Pflichtseiten wählen</li>\n
          <li>Seite speichern und veröffentlichen</li>\n
        </ol>\n
        <h5>Spezielle System-Seiten:</h5>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Slug</th><th>Inhalt</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>impressum</code></td><td>Impressum</td></tr>\n
            <tr><td><code>agb</code></td><td>Allgemeine Geschäftsbedingungen</td></tr>\n
            <tr><td><code>datenschutzerklaerung</code></td><td>Datenschutzerklärung</td></tr>\n
            <tr><td><code>widerrufsbelehrung</code></td><td>Widerrufsbelehrung</td></tr>\n
            <tr><td><code>zahlungsarten</code></td><td>Zahlungsarten</td></tr>\n
            <tr><td><code>versandrichtlinien</code></td><td>Versandrichtlinien</td></tr>\n
            <tr><td><code>batteriegesetz</code></td><td>Batteriegesetz</td></tr>\n
          </tbody>\n
        </table>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Impressum und Datenschutz können als veröffentlichte Page-Builder-Seiten mit den Slugs <code>impressum</code> und <code>datenschutzerklaerung</code> gepflegt werden. Solange keine veröffentlichte Seite existiert, greift der alte Fallback-Inhalt.\n
        </div>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-exclamation-triangle"></i> Seiten-Slugs nicht nachträglich ändern - Links aus externen Quellen und SEO-Rankings gehen verloren.\n
        </div>
        """
      "admin.help.cms.sections.pages.title" => "Seiten (Pages) verwalten"
      "admin.help.cms.sections.permissions.body_html" => """
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Modul</th><th>Berechtigung</th></tr></thead>\n
          <tbody>\n
            <tr><td>Seiten</td><td><code>ROLE_ADMIN_PAGE_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Seiten veröffentlichen</td><td><code>ROLE_ADMIN_PAGE_PUBLISH</code></td></tr>\n
            <tr><td>Seiten-Revisionen</td><td><code>ROLE_ADMIN_PAGE_REVISIONS</code></td></tr>\n
            <tr><td>Abschnittsvorlagen</td><td><code>ROLE_ADMIN_SECTION_TEMPLATES</code></td></tr>\n
            <tr><td>Hauptmenü</td><td><code>ROLE_ADMIN_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Footer-Menü</td><td><code>ROLE_ADMIN_FOOTER_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Shop-Menü</td><td><code>ROLE_ADMIN_SHOP_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Slider</td><td><code>ROLE_ADMIN_SLIDER_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code></td></tr>\n
            <tr><td>Widgets</td><td><code>ROLE_ADMIN_WIDGET_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code></td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.cms.sections.permissions.title" => "Berechtigungen"
      "admin.help.cms.sections.slider.body_html" => """
        <p>Das Slider-Modul arbeitet mit einem kuratierten NFOK-Layout-Katalog. Ein Slide besteht aus Layout, optionalem Kurzlabel, Überschrift, Text, template-spezifischen Zusatzinhalten, optionalem Bild, Grundfarbe und CTA.</p>\n
        <ol>\n
          <li><strong>CMS -> Slider -> + Neuer Slide</strong></li>\n
          <li><strong>Slider-Layout</strong> auswählen, z. B. Service Hero, Commerce Hero, Produktfokus oder Automation Flow</li>\n
          <li>Optionales <strong>Kurzlabel</strong> pflegen, wenn das gewählte Layout dieses Feld im Frontend ausgibt und oberhalb der Überschrift ein kleiner Hinweistext erscheinen soll</li>\n
          <li><strong>Überschrift</strong> und optionalen Begleittext eingeben</li>\n
          <li><strong>Template-Inhalte (JSON)</strong> pflegen, wenn das Layout zusätzliche Karten, Kennzahlen, Schritte, Produktboxen oder Referenzdaten ausgibt</li>\n
          <li><strong>Bild</strong> hochladen (empfohlen: breite Hero-Grafik ab 1600px Breite)</li>\n
          <li>Optional: <strong>Button-Text</strong> und <strong>Button-URL</strong></li>\n
          <li>Auf der gewünschten Seite <strong>Slider anzeigen</strong> aktivieren und dieselbe <strong>Slider-Variante</strong> wählen</li>\n
          <li>Speichern, veröffentlichen und im Frontend prüfen</li>\n
        </ol>\n
        <h5>Layout-Empfehlungen:</h5>\n
        <ul>\n
          <li><strong>NFOK Service Hero:</strong> ruhiger Haupt-Hero für Startseite, Leistungen, CMS, Beratung und NFOK.WORK-Positionierung</li>\n
          <li><strong>Commerce Hero:</strong> helle Shop-Bühne für Aktionen, Kategorien, Produktwelten, saisonale Kampagnen und direkte Kaufimpulse</li>\n
          <li><strong>Produktfokus:</strong> starke Produkt- oder Systemvorstellung mit Bildfokus, klarer CTA-Fläche und konzentrierter Botschaft</li>\n
          <li><strong>Feature Stack:</strong> strukturierte Präsentation für Module, Funktionen, technische Leistungsbausteine und mehrere Nutzenargumente</li>\n
          <li><strong>Trust & Kennzahlen:</strong> zentrierter Vertrauens-Hero für Kennzahlen, Betriebssicherheit, Verlässlichkeit, Datenschutz und Qualitätsversprechen</li>\n
          <li><strong>Technical Dark:</strong> dunkles technisches Layout für APIs, Backend, Integrationen, Datenimporte, Schnittstellen und Architekturthemen</li>\n
          <li><strong>Editorial Minimal:</strong> reduziertes Textlayout für klare Aussagen, Leitgedanken, Ankündigungen ohne Bilddominanz und ruhige redaktionelle Einstiege</li>\n
          <li><strong>Automation Flow:</strong> Prozess- und Workflow-Layout für Automatisierung, Jobs, Importketten, Systemlogik und wiederkehrende Abläufe</li>\n
          <li><strong>Case Study:</strong> Referenz-Layout für Projektergebnisse, Kundenstories, Vorher-Nachher-Erfolge und konkrete Umsetzungsbeispiele</li>\n
          <li><strong>Announcement Strip:</strong> kompakter Hinweis-Slider für Releases, Wartungshinweise, Aktionen, kurze News und zeitkritische Meldungen</li>\n
        </ul>\n
        <p>Alle sichtbaren Inhalte wie Kurzlabel, Überschrift, Text, Button, Modul-Karten, Kennzahlen, Prozess-Schritte und Hintergrundfarbe werden pro Slide gepflegt. Layouts dürfen keine festen Frontend-Texte erzwingen. Felder, die ein Layout nicht rendert, werden im Admin ausgeblendet.</p>\n
        <h5>Animation:</h5>\n
        <ul>\n
          <li>NFOK-Layouts nutzen dezente Einlaufanimationen für Kurzlabel, Überschrift, Text, CTA, Bild und Zusatzmodule.</li>\n
          <li>Die Animationen bleiben ruhig und professionell und respektieren reduzierte Bewegung in den Systemeinstellungen.</li>\n
          <li>Legacy Slider 1 bis 3 bleiben aus Kompatibilitätsgründen im alten Verhalten.</li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-lock"></i> <strong>Berechtigungen:</strong>\n
          <code>ROLE_ADMIN_SLIDER_LIST</code> /\n
          <code>ROLE_ADMIN_SLIDER_ADD</code> /\n
          <code>ROLE_ADMIN_SLIDER_EDIT</code> /\n
          <code>ROLE_ADMIN_SLIDER_DELETE</code>\n
        </div>
        """
      "admin.help.cms.sections.slider.title" => "Slider verwalten"
      "admin.help.cms.sections.widgets.body_html" => """
        <p>Widgets sind dynamische Seitenblöcke, die in verschiedenen Bereichen des Layouts erscheinen können.</p>\n
        <ul>\n
          <li>Modul: <code>/admin/widget</code></li>\n
          <li>Berechtigung: <code>ROLE_ADMIN_WIDGET_*</code></li>\n
          <li>Typen: Banner, Textblock, Newsletter-Anmeldung, Kategorie-Showcase</li>\n
          <li>Über <code>blockKey</code> in Templates eingebunden (ähnlich wie Content-Blöcke)</li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Für flexible, nicht-Widget-basierte Inhaltsbereiche -> <a href="/admin/help/content">Content-Blöcke verwenden</a>.\n
        </div>
        """
      "admin.help.cms.sections.widgets.title" => "Widgets"
      "admin.help.dashboard.actions.back" => "Zurück zur Übersicht"
      "admin.help.dashboard.actions.module" => "Zum Dashboard"
      "admin.help.dashboard.navigation.items_html" => """
        <li class="mb-1"><a href="#overview"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#widgets"><i class="fa fa-th-large"></i> Widgets & Links</a></li>\n
        <li class="mb-1"><a href="#metrics"><i class="fa fa-line-chart"></i> Kennzahlen & Berechnung</a></li>\n
        <li class="mb-1"><a href="#customization"><i class="fa fa-sliders"></i> Anpassung & Speicherung</a></li>
        """
      "admin.help.dashboard.navigation.title" => "Navigation"
      "admin.help.dashboard.page_title" => "Hilfe: Dashboard & Widgets"
      "admin.help.dashboard.sections.customization.body_html" => """
        <ul>\n
          <li><strong>Widget hinzufügen:</strong> Öffnet die Bibliothek mit Suche, Beschreibung und Größenwahl.</li>\n
          <li><strong>Fest/Bewegbar:</strong> Der Button rechts oben schaltet das Verschieben des Grids um. Im Modus <em>Fest</em> ist die Reihenfolge geschützt, im Modus <em>Bewegbar</em> kann per Drag & Drop sortiert werden.</li>\n
          <li><strong>Layout speichern:</strong> Reihenfolge, Breite und Widget-Konfiguration werden pro Backend-User gespeichert.</li>\n
          <li><strong>Schnelllinks & To-dos:</strong> Diese Inhalte sind Teil der Widget-Konfiguration und bleiben nach Reload oder erneutem Login erhalten.</li>\n
        </ul>
        """
      "admin.help.dashboard.sections.customization.title" => "Anpassung & Speicherung"
      "admin.help.dashboard.sections.metrics.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Widget</th><th>Berechnung</th><th>Modullink</th></tr></thead>\n
          <tbody>\n
            <tr><td>Buchungen</td><td>Zeigt aktuelle Aufenthalte, heutige Anreisen und die nächsten sieben Tage statt einer bloßen Gesamtanzahl.</td><td>Kalendermodul</td></tr>\n
            <tr><td>Umsatz</td><td>Berechnet aus konvertierten Warenkörben; offene und stornierte Vorgänge werden ausgeschlossen, Zeitbasis ist die letzte relevante Aktualisierung.</td><td>Analytics-Modul</td></tr>\n
            <tr><td>Produkte</td><td>Zeigt Gesamtzahl, aktive Produkte, Niedrigbestand und ausverkaufte Artikel.</td><td>Shop-Produkte oder Analytics</td></tr>\n
            <tr><td>Kunden</td><td>Gesamtkunden und Neuzugänge des laufenden Monats.</td><td>Kundenverwaltung</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.dashboard.sections.metrics.title" => "Kennzahlen & Berechnung"
      "admin.help.dashboard.sections.overview.body_html" => """
        <p>Das Dashboard unter <code>/admin</code> ist die persönliche Startseite für Backend-User mit <code>ROLE_ADMIN_DASHBOARD_LIST</code>. Widgets können hinzugefügt, in der Breite angepasst, verschoben und pro Benutzer gespeichert werden.</p>\n
        <div class="alert alert-info"><i class="fa fa-refresh"></i> Die Statistik-Widgets laden ihre Live-Daten automatisch nach und aktualisieren sich regelmäßig ohne Seitenwechsel.</div>\n
        <div class="alert alert-success"><i class="fa fa-link"></i> Listen-Widgets verlinken jetzt direkt auf Datensätze wie Buchungen, Apartments, Tickets und Bestellungen.</div>
        """
      "admin.help.dashboard.sections.overview.title" => "Überblick"
      "admin.help.dashboard.sections.widgets.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Widget</th><th>Inhalt</th><th>Direktaktionen</th></tr></thead>\n
          <tbody>\n
            <tr><td>Kalenderübersicht</td><td>Mini-Kalender mit Tagesfeldern, Belegungen, Anreisen und Abreisen für den aktuellen Monat.</td><td>Jeder Tag verlinkt direkt in den Kalender, zusätzlich gibt es den Modul-Link.</td></tr>\n
            <tr><td>Kommende Buchungen</td><td>Nächste Buchungen mit Gast, Zeitraum und Status.</td><td>Link zur Buchung und zum zugehörigen Apartment.</td></tr>\n
            <tr><td>Letzte Bestellungen</td><td>Aktuelle Shop-Bestellungen auf Basis konvertierter Warenkörbe.</td><td>Direkt zu Details und Bearbeitung der Bestellung.</td></tr>\n
            <tr><td>Support-Tickets</td><td>Offene Tickets mit Status und Bezug.</td><td>Direkt zum Ticket, optional zum verknüpften Warenkorb.</td></tr>\n
            <tr><td>Schnelllinks</td><td>Persönliche Links zu internen oder externen Zielen.</td><td>Links direkt im Widget pflegen, hinzufügen, entfernen und speichern.</td></tr>\n
            <tr><td>Aufgabenliste</td><td>Persönliche To-do-Liste statt statischem Platzhalter.</td><td>Aufgaben anlegen, abhaken und löschen, Änderungen werden gespeichert.</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.dashboard.sections.widgets.title" => "Widgets & Links"
      "admin.help.feeds.actions.back" => "Zurück"
      "admin.help.feeds.actions.module" => "Zum Modul"
      "admin.help.feeds.navigation.items_html" => """
        <li class="mb-1"><a href="#ueberblick"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#google-shopping"><i class="fa fa-google"></i> Google Shopping Feed</a></li>\n
        <li class="mb-1"><a href="#facebook"><i class="fa fa-facebook"></i> Facebook/Meta Feed</a></li>\n
        <li class="mb-1"><a href="#custom"><i class="fa fa-cog"></i> Custom-Feeds</a></li>\n
        <li class="mb-1"><a href="#export-log"><i class="fa fa-history"></i> Export-Log</a></li>\n
        <li class="mb-1"><a href="#health"><i class="fa fa-heartbeat"></i> Feed-Health</a></li>\n
        <li class="mb-1"><a href="#urls"><i class="fa fa-link"></i> Feed-URLs</a></li>
        """
      "admin.help.feeds.navigation.title" => "Navigation"
      "admin.help.feeds.page_title" => "Hilfe: Produkt-Feeds"
      "admin.help.feeds.sections.custom.body_html" => """
        <p>Weitere Export-Formate für Preisvergleichsportale:</p>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Feed</th><th>Format</th><th>URL</th></tr></thead>\n
          <tbody>\n
            <tr><td>Idealo</td><td>CSV</td><td><code>/feeds/idealo.csv</code></td></tr>\n
            <tr><td>Billiger.de</td><td>CSV</td><td><code>/feeds/billiger.csv</code></td></tr>\n
            <tr><td>Kelkoo</td><td>XML</td><td><code>/feeds/kelkoo.xml</code></td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.feeds.sections.custom.title" => "Custom-Feeds"
      "admin.help.feeds.sections.export_log.body_html" => """
        <p>Im Admin werden alle Feed-Generierungen protokolliert:</p>\n
        <ul>\n
          <li>Zeitstempel der letzten Generierung</li>\n
          <li>Anzahl exportierter Produkte</li>\n
          <li>Fehler (z.B. fehlende Pflichtfelder)</li>\n
          <li>Dateigröße des generierten Feeds</li>\n
        </ul>\n
        <p>Exporte mit Fehlern werden <strong>nicht</strong> veröffentlicht - der vorherige gültige Feed bleibt aktiv.</p>
        """
      "admin.help.feeds.sections.export_log.title" => "Feed-Export-Log"
      "admin.help.feeds.sections.facebook.body_html" => """
        <p>Für Facebook/Instagram Shopping wird ein <strong>CSV-Feed</strong> im Meta-Format generiert.</p>\n
        <ul>\n
          <li>Felder: id, title, description, availability, condition, price, link, image_link, brand</li>\n
          <li>Täglich automatisch aktualisiert</li>\n
          <li>URL: <code>/feeds/facebook.csv</code></li>\n
        </ul>
        """
      "admin.help.feeds.sections.facebook.title" => "Facebook/Meta Catalog Feed"
      "admin.help.feeds.sections.google_shopping.body_html" => """
        <p>Der Google Shopping Feed wird im <strong>XML-Format</strong> (Google Merchant Center Spezifikation) generiert.</p>\n
        <h5>Enthaltene Felder:</h5>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Google-Feld</th><th>Quelle</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>g:id</code></td><td>Produkt-ID</td></tr>\n
            <tr><td><code>title</code></td><td><code>product.name</code></td></tr>\n
            <tr><td><code>description</code></td><td><code>product.shortDescription</code> oder <code>product.description</code></td></tr>\n
            <tr><td><code>link</code></td><td>Absolute URL zur Produktseite</td></tr>\n
            <tr><td><code>image_link</code></td><td>Primäres Produktbild</td></tr>\n
            <tr><td><code>price</code></td><td><code>product.price</code> (inkl. MwSt.)</td></tr>\n
            <tr><td><code>sale_price</code></td><td><code>product.specialPrice</code> (wenn gesetzt)</td></tr>\n
            <tr><td><code>availability</code></td><td>in stock / out of stock basierend auf <code>stock</code></td></tr>\n
            <tr><td><code>brand</code></td><td><code>product.manufacturer</code> oder Fallback <code>NFOK</code></td></tr>\n
            <tr><td><code>gtin / mpn</code></td><td><code>product.ean</code> / <code>product.sku</code></td></tr>\n
            <tr><td><code>google_product_category</code></td><td>Aus Kategorie-Mapping</td></tr>\n
          </tbody>\n
        </table>\n
        <h5>Voraussetzungen für Google Shopping:</h5>\n
        <ul>\n
          <li>Produkt muss <code>isActive = true</code> haben</li>\n
          <li>Mindestens ein Produktbild muss vorhanden sein</li>\n
          <li>Preis muss gesetzt sein</li>\n
          <li>EAN/GTIN sollte für bessere Qualität gesetzt sein</li>\n
        </ul>
        """
      "admin.help.feeds.sections.google_shopping.title" => "Google Shopping Feed"
      "admin.help.feeds.sections.health.body_html" => """
        <p>Auf der Feed-Übersichtsseite werden Qualitätskennzahlen angezeigt:</p>\n
        <ul>\n
          <li><strong>Ausgeschlossene Produkte</strong>: Fehlende Pflichtfelder (Bild, Preis, EAN)</li>\n
          <li><strong>Letzte erfolgreiche Generierung</strong>: Zeitstempel</li>\n
          <li><strong>Anteil mit EAN</strong>: Besser für Google Shopping (&gt;80% empfohlen)</li>\n
        </ul>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-exclamation-triangle"></i> Wenn &lt;50% der Produkte im Feed landen, Google Shopping Konto prüfen und Produktdaten ergänzen.\n
        </div>
        """
      "admin.help.feeds.sections.health.title" => "Feed-Health"
      "admin.help.feeds.sections.overview.body_html" => """
        <p>Das <strong>Feed-Modul</strong> generiert Produktdaten-Exporte für externe Plattformen wie Google Shopping, Facebook/Meta und weitere Preisvergleichs-Portale.</p>\n
        <div class="alert alert-info">\n
          <i class="fa fa-refresh"></i> Feeds werden automatisch per <strong>Cron-Job</strong> täglich aktualisiert. Eine manuelle Regenerierung ist über den Admin-Bereich möglich.\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-lock"></i> <strong>Berechtigung:</strong> <code>ROLE_ADMIN_FEED_MANAGE</code>\n
        </div>\n
        <p>Öffentliche Feed-URLs sind unter <strong>/feeds/*</strong> erreichbar (kein Login nötig).</p>
        """
      "admin.help.feeds.sections.overview.title" => "Feeds: Überblick"
      "admin.help.feeds.sections.urls.body_html" => """
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Feed</th><th>URL</th><th>Format</th><th>Aktualisierung</th></tr></thead>\n
          <tbody>\n
            <tr><td>Google Shopping</td><td><code>/feeds/google.xml</code></td><td>XML (RSS 2.0)</td><td>täglich 03:00</td></tr>\n
            <tr><td>Facebook Catalog</td><td><code>/feeds/facebook.csv</code></td><td>CSV</td><td>täglich 03:30</td></tr>\n
            <tr><td>Idealo</td><td><code>/feeds/idealo.csv</code></td><td>CSV</td><td>täglich 04:00</td></tr>\n
          </tbody>\n
        </table>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Die URLs können direkt in den jeweiligen Ad-Plattformen (Google Merchant Center, Meta Business Manager) eingetragen werden.\n
        </div>
        """
      "admin.help.feeds.sections.urls.title" => "Feed-URLs (Öffentlich)"
      "admin.help.index.cards.alerts.description" => "Severity, Acknowledge, Bulk-Actions"
      "admin.help.index.cards.alerts.title" => "System-Alerts"
      "admin.help.index.cards.cms.description" => "Page Builder v2, Revisionen, Vorlagen, Slider, Widgets"
      "admin.help.index.cards.cms.title" => "CMS (Seiten, Menüs, Widgets)"
      "admin.help.index.cards.dashboard.description" => "Live-Kennzahlen, Kalender, Schnelllinks und persönliche Startseite"
      "admin.help.index.cards.dashboard.title" => "Dashboard & Widgets"
      "admin.help.index.cards.feeds.description" => "Google Shopping, CSV-Export"
      "admin.help.index.cards.feeds.title" => "Produkt-Feeds"
      "admin.help.index.cards.media.description" => "Uploads, SEO-Dateinamen, Alt-Texte und Bildverwendung"
      "admin.help.index.cards.media.title" => "Media Center"
      "admin.help.index.cards.products.description" => "Anlegen, bearbeiten, Wave-Daten, Bilder, Bulk-Delete"
      "admin.help.index.cards.products.title" => "Produkte & Kategorien"
      "admin.help.index.cards.roles.description" => "Alle ROLE_ADMIN_* Berechtigungen"
      "admin.help.index.cards.roles.title" => "Rollen & Rechte"
      "admin.help.index.intro.description" => "Hier findest du ausführliche Anleitungen, Feldreferenzen und API-Dokumentation für alle Backend-Module. Nutze die Kacheln unten oder die Seitennavigation für den direkten Einstieg."
      "admin.help.index.intro.title" => "Willkommen im Admin-Hilfecenter."
      "admin.help.index.page_heading" => "Admin-Dokumentation & Hilfe"
      "admin.help.index.page_subtitle" => "Vollständige Referenz aller Backend-Module"
      "admin.help.index.page_title" => "Admin-Dokumentation & Hilfe"
      "admin.help.index.reference.headers.function" => "Funktion"
      "admin.help.index.reference.headers.module" => "Modul"
      "admin.help.index.reference.headers.role" => "Benötigte Rolle"
      "admin.help.index.reference.headers.url" => "URL"
      "admin.help.index.reference.rows.abtests.description" => "Inhalts-Experimente"
      "admin.help.index.reference.rows.abtests.label" => "A/B-Tests"
      "admin.help.index.reference.rows.alerts.description" => "System-Warnmeldungen"
      "admin.help.index.reference.rows.alerts.label" => "Alerts"
      "admin.help.index.reference.rows.cms.description" => "Page Builder v2, Revisionen, Abschnittsvorlagen, Widgets, Menüs"
      "admin.help.index.reference.rows.cms.label" => "CMS"
      "admin.help.index.reference.rows.dashboard.description" => "Personalisierte Startseite mit Live-Widgets und Direktlinks"
      "admin.help.index.reference.rows.dashboard.label" => "Dashboard"
      "admin.help.index.reference.rows.feeds.description" => "Google Shopping Feed"
      "admin.help.index.reference.rows.feeds.label" => "Feeds"
      "admin.help.index.reference.rows.import.description" => "Crawler, SQL-Import, Logs"
      "admin.help.index.reference.rows.import.label" => "Import"
      "admin.help.index.reference.rows.media.description" => "Zentrale Medienbibliothek mit Upload, Metadaten, Nutzungsscan und geschütztem Löschen"
      "admin.help.index.reference.rows.media.label" => "Media Center"
      "admin.help.index.reference.rows.products.description" => "Produkt- und Kategorie-CRUD"
      "admin.help.index.reference.rows.products.label" => "Produkte & Kategorien"
      "admin.help.index.reference.rows.roles.description" => "Rollen- & Rechtevergabe"
      "admin.help.index.reference.rows.roles.label" => "Rollen"
      "admin.help.index.reference.title" => "Schnellreferenz: Alle Admin-Module"
      "admin.help.media.actions.back" => "Zurück zur Übersicht"
      "admin.help.media.actions.module" => "Zum Media Center"
      "admin.help.media.navigation.items_html" => """
        <li class="mb-1"><a href="#ueberblick"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#upload"><i class="fa fa-upload"></i> Upload & Verzeichnisse</a></li>\n
        <li class="mb-1"><a href="#seo"><i class="fa fa-search"></i> SEO-Dateinamen & Alt-Texte</a></li>\n
        <li class="mb-1"><a href="#verwendung"><i class="fa fa-link"></i> Aktuelle Verwendung</a></li>\n
        <li class="mb-1"><a href="#loeschen"><i class="fa fa-trash"></i> Löschen & Schutzlogik</a></li>\n
        <li class="mb-1"><a href="#rollen"><i class="fa fa-lock"></i> Rollen</a></li>
        """
      "admin.help.media.navigation.title" => "Navigation"
      "admin.help.media.page_title" => "Hilfe: Media Center"
      "admin.help.media.sections.delete.body_html" => """
        <p>Medien mit aktiver Verwendung können nicht gelöscht werden. Erst wenn der Nutzungsscan keine Fundstelle mehr meldet, erscheint die Löschaktion. Das schützt Produktseiten, Slider und Page-Builder-Inhalte vor kaputten Bildern.</p>\n
        <div class="alert alert-warning"><i class="fa fa-lock"></i> Umbenennen ist erlaubt, weil bekannte Referenzen automatisch auf den neuen Pfad aktualisiert werden.</div>
        """
      "admin.help.media.sections.delete.title" => "Löschen & Schutzlogik"
      "admin.help.media.sections.overview.body_html" => """
        <p>Das Media Center unter <code>/admin/media</code> ist die zentrale Medienbibliothek für Backend-Uploads. Es indexiert erlaubte Upload-Verzeichnisse, zeigt technische Bilddaten und verbindet Dateien mit Metadaten wie Titel, Alt-Text und Beschreibung.</p>\n
        <div class="alert alert-info"><i class="fa fa-picture-o"></i> Angezeigt werden allgemeine Bilder, Produktbilder, Page-Builder-Bilder, Shop-Dateien, Sliderbilder und Theme-Assets unter <code>public/uploads</code>.</div>
        """
      "admin.help.media.sections.overview.title" => "Überblick"
      "admin.help.media.sections.permissions.body_html" => """
        <table class="table table-bordered table-sm">\n
          <tbody>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_LIST</code></td><td>Medienbibliothek anzeigen</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_ADD</code></td><td>Dateien hochladen</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_EDIT</code></td><td>Metadaten und SEO-Dateinamen bearbeiten</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_DELETE</code></td><td>Ungenutzte Dateien löschen</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_MANAGE</code></td><td>Index-Scan und Verwaltungsaktionen</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.media.sections.permissions.title" => "Rollen"
      "admin.help.media.sections.seo.body_html" => """
        <p>Im Detailformular kann der sichtbare Dateiname ohne Endung gepflegt werden. Beim Speichern normalisiert das System den Namen zu einem URL-freundlichen Slug, behält die Dateiendung bei und aktualisiert bekannte Referenzen.</p>\n
        <ul>\n
          <li><strong>Alt-Text:</strong> Für Bilder empfohlen, weil er Barrierefreiheit, Produktsuche und SEO unterstützt.</li>\n
          <li><strong>Titel:</strong> Interner Anzeigename für die Verwaltung.</li>\n
          <li><strong>Beschreibung:</strong> Für Lizenz-, Copyright- oder Pflegehinweise nutzbar.</li>\n
        </ul>
        """
      "admin.help.media.sections.seo.title" => "SEO-Dateinamen & Alt-Texte"
      "admin.help.media.sections.upload.body_html" => """
        <ul>\n
          <li><strong>Upload:</strong> Dateien werden in ein bewusst erlaubtes Zielverzeichnis gespeichert; Pfad-Ausbrüche und unbekannte Ziele werden blockiert.</li>\n
          <li><strong>Scan:</strong> Der Button <em>Verzeichnisse scannen</em> gleicht Dateisystem und Medienindex ab und entfernt veraltete Indexeinträge.</li>\n
          <li><strong>Dateitypen:</strong> Bilder, PDF, Text/CSV, Office-Dateien und ZIP-Archive sind vorgesehen. Ausführbare Dateien werden nicht als Media-Upload akzeptiert.</li>\n
          <li><strong>Größe:</strong> Uploads sind auf 20 MB je Datei begrenzt.</li>\n
        </ul>
        """
      "admin.help.media.sections.upload.title" => "Upload & Verzeichnisse"
      "admin.help.media.sections.usage.body_html" => """
        <p>Die Spalte <strong>Verwendung</strong> zeigt, ob ein Medium aktuell in bekannten Modulen genutzt wird. Die Detailseite listet die Fundstellen mit Direktlink, wenn das Ziel eine Admin-Route besitzt.</p>\n
        <table class="table table-bordered table-sm">\n
          <thead><tr><th>Quelle</th><th>Erkennung</th></tr></thead>\n
          <tbody>\n
            <tr><td>Produkte</td><td><code>ProductImage.imageName</code></td></tr>\n
            <tr><td>Slider</td><td>Gespeicherter Bildpfad</td></tr>\n
            <tr><td>Seiten/Page Builder</td><td>Bildpfade in Entwurf und veröffentlichten Abschnitten</td></tr>\n
            <tr><td>Blog</td><td>Beitragsbild</td></tr>\n
            <tr><td>SEO</td><td>Open-Graph-Bild</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.media.sections.usage.title" => "Aktuelle Verwendung"
      "admin.help.products.actions.back" => "Zurück zur Übersicht"
      "admin.help.products.actions.module" => "Zum Modul"
      "admin.help.products.navigation.items_html" => """
        <li class="mb-1"><a href="#produkte-uebersicht"><i class="fa fa-list-ul"></i> Produkt-Übersicht</a></li>\n
        <li class="mb-1"><a href="#produkt-anlegen"><i class="fa fa-plus"></i> Produkt anlegen</a></li>\n
        <li class="mb-1"><a href="#wave-produktdaten-holer"><i class="fa fa-download"></i> Wave Produktdaten holen</a></li>\n
        <li class="mb-1"><a href="#produkt-felder"><i class="fa fa-th-list"></i> Alle Felder (Referenz)</a></li>\n
        <li class="mb-1"><a href="#medien"><i class="fa fa-image"></i> Medien &amp; Uploads</a></li>\n
        <li class="mb-1"><a href="#bulk"><i class="fa fa-pencil"></i> Massenbearbeitung &amp; Bulk-Aktionen</a></li>\n
        <li class="mb-1"><a href="#kategorien"><i class="fa fa-folder"></i> Kategorien</a></li>\n
        <li class="mb-1"><a href="#konfigurierbar"><i class="fa fa-sliders"></i> Produkt-Konfigurationen</a></li>\n
        <li class="mb-1"><a href="#api"><i class="fa fa-code"></i> API-Endpunkte</a></li>
        """
      "admin.help.products.navigation.title" => "Navigation"
      "admin.help.products.page_title" => "Hilfe: Produkte & Kategorien"
      "admin.help.products.sections.api.body_html" => """
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Methode</th><th>URL</th><th>Funktion</th></tr></thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/produkte</code></td><td>Liste aller Produkte</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/produkt/neu</code></td><td>Neues Produkt anlegen</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/produkt/bearbeiten/{id}</code></td><td>Produkt bearbeiten</td></tr>\n
            <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/produkt/wave-lookup?ean={ean}&amp;articleNumber={sku}</code></td><td>Wave-Produktdaten per EAN oder Wave-Art.-Nr. für die Formular-Vorbefüllung laden (AJAX)</td></tr>\n
            <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/produkt/loeschen/{id}</code></td><td>Einzelnes Produkt löschen</td></tr>\n
            <tr><td><span class="badge badge-warning">POST</span></td><td><code>/admin/shop/produkte/bulk-edit</code></td><td>Ausgewählte Produkte gemeinsam bearbeiten</td></tr>\n
            <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/produkte/bulk-delete</code></td><td>Mehrere Produkte löschen</td></tr>\n
            <tr><td><span class="badge badge-danger">DELETE</span></td><td><code>/admin/shop/bild-loeschen/{id}</code></td><td>Einzelnes Bild löschen (AJAX)</td></tr>\n
            <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/kategorien</code></td><td>Liste aller Kategorien</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/kategorie/neu</code></td><td>Neue Kategorie anlegen</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/kategorie/bearbeiten/{id}</code></td><td>Kategorie bearbeiten</td></tr>\n
            <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/kategorie/loeschen/{id}</code></td><td>Kategorie löschen</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.products.sections.api.title" => "API-Endpunkte"
      "admin.help.products.sections.bulk.body_html" => """
        <h5>Schnell-/Massenbearbeitung</h5>\n
        <ol>\n
          <li>Checkboxen in der Produktliste anklicken (oder "Alle auswählen").</li>\n
          <li>Button <kbd>Massenbearbeitung</kbd> öffnen.</li>\n
          <li>Im Modal nur die Felder aktivieren, die wirklich geändert werden sollen. Nicht aktivierte Felder bleiben unverändert.</li>\n
          <li>Unterstützte Felder: Produktname, Kategorie, Lagerbestand, Versandart, Lieferzeit, Abholung, Nur Abholung, Preis setzen oder erhöhen/senken, Freitext 1/2, Hersteller, Veröffentlichung/Entwurf und Kaufbar/Bestellbar.</li>\n
          <li><kbd>Änderungen anwenden</kbd> speichert die Werte für alle ausgewählten Produkte.</li>\n
        </ol>\n
        <p><strong>API-Route Massenbearbeitung:</strong> <code>POST /admin/shop/produkte/bulk-edit</code><br>\n
        <strong>Parameter:</strong> <code>selected[]</code>, <code>bulk_fields[]</code>, <code>bulk[...]</code> + CSRF-Token <code>_token</code></p>\n
        <h5>Bulk-Delete</h5>\n
        <ol>\n
          <li>Checkboxen in der Produktliste anklicken (oder "Alle auswählen").</li>\n
          <li>Button <kbd>Ausgewählte löschen</kbd> anklicken.</li>\n
          <li>Bestätigungsdialog (Bootstrap Modal) erscheint - bestätigen.</li>\n
          <li>System prüft: Produkte in offenen Bestellungen werden <strong>übersprungen</strong> (Fehlermeldung im Flash-Bag).</li>\n
        </ol>\n
        <p><strong>API-Route Bulk-Delete:</strong> <code>POST /admin/shop/produkte/bulk-delete</code><br>\n
        <strong>Parameter:</strong> <code>selected[] = [id1, id2, ...]</code> + CSRF-Token <code>_token</code></p>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-exclamation-triangle"></i> Produktname und Preis sind bewusst als aktivierbare Felder ausgeführt: Sie werden nur geändert, wenn die jeweilige Checkbox im Modal gesetzt ist.\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Über den Toolbar-Button <strong>Alle löschbaren löschen</strong> kannst du zusätzlich alle Produkte in einem Schritt entfernen, die <em>nicht</em> in Bestellungen referenziert sind. Bestellgeschützte Produkte bleiben automatisch erhalten.\n
        </div>\n
        <div class="alert alert-secondary">\n
          <i class="fa fa-eye-slash"></i> Bestellgeschützte Produkte kannst du in der Produktliste jetzt direkt über den Sichtbarkeits-Button aktivieren/deaktivieren, statt sie zu löschen.\n
        </div>
        """
      "admin.help.products.sections.bulk.title" => "Massenbearbeitung & Bulk-Aktionen"
      "admin.help.products.sections.categories.body_html" => """
        <p>Kategorien erreichst du unter <code>/admin/shop/kategorien</code>. Sie bilden die Navigationsstruktur des Shops.</p>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Feld</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>name</code></td><td>Kategorie-Name (erscheint im Menü und in Breadcrumbs)</td></tr>\n
            <tr><td><code>slug</code></td><td>URL-Segment der Kategorie-Seite</td></tr>\n
            <tr><td><code>parent</code></td><td>Übergeordnete Kategorie für Hierarchie (Unterkategorien)</td></tr>\n
            <tr><td><code>description</code></td><td>Beschreibung (erscheint oben auf der Kategorie-Seite)</td></tr>\n
            <tr><td><code>image</code></td><td>Kategorie-Bild (Vorschau auf Kategorie-Kacheln)</td></tr>\n
            <tr><td><code>seoMeta</code></td><td>SEO-Metadaten für die Kategorie-Seite</td></tr>\n
            <tr><td><code>isActive</code></td><td>Kategorie im Shop sichtbar</td></tr>\n
            <tr><td><code>sortOrder</code></td><td>Reihenfolge in der Navigation</td></tr>\n
          </tbody>\n
        </table>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Kategorien lassen sich beliebig tief verschachteln. Im Shop-Menü wird der Baum automatisch aus der Parent-Relation aufgebaut.\n
        </div>
        """
      "admin.help.products.sections.categories.title" => "Kategorien verwalten"
      "admin.help.products.sections.configurable.body_html" => """
        <p>Für individuelle Computer und System-Builds ist der gruppenbasierte PC-/System-Konfigurator unter <code>/admin/product-configurator/</code> das Hauptmodul. Der optionsbasierte Editor unter <code>/admin/configurable-product/</code> bleibt nur für einfache Varianten wie Farbe, Größe oder Material bestehen.</p>\n
        <ul>\n
          <li><strong>PC-/System-Konfigurator (Hauptpfad):</strong> Ein Basisprodukt mit Gruppen von auswählbaren Artikeln, z. B. CPU, RAM, GPU oder SSD (Entities: <code>ProductConfigurator</code>, <code>ConfiguratorGroup</code>, <code>ConfiguratorGroupProduct</code>)</li>\n
          <li><strong>Varianten-Editor:</strong> Ein Basisprodukt mit einfachen Optionen wie Farbe, Größe oder Material (Entities: <code>ConfigurableProduct</code>, <code>ProductOption</code>, <code>ProductOptionValue</code>)</li>\n
          <li><strong>Suchbare Produktauswahl:</strong> Beide Builder nutzen im Admin eine suchbare Produktauswahl, damit große Kataloge schneller gepflegt werden können.</li>\n
          <li><strong>Tier-Preise:</strong> Mengenrabatte (Entity: <code>ProductTierPrice</code>)</li>\n
        </ul>\n
        <p>Empfohlene Reihenfolge für Rechner: zuerst das Basis-System festlegen, dann Komponenten-Gruppen anlegen und anschließend die konkreten Produkte zuordnen. Den Varianten-Editor nur für einfache Auswahlfelder verwenden.</p>
        """
      "admin.help.products.sections.configurable.title" => "Produkt-Konfigurationen"
      "admin.help.products.sections.create.body_html" => """
        <ol>\n
          <li class="mb-2">Navigiere zu <strong>Shop -> Produkte -> + Neues Produkt</strong> oder rufe <code>/admin/shop/produkt/neu</code> auf.</li>\n
          <li class="mb-2">Trage im Abschnitt <strong>EAN & Wave</strong> eine <strong>EAN/GTIN</strong> oder, falls keine EAN vorhanden ist, die <strong>Wave-Art.-Nr.</strong> im Feld Artikelnummer ein und klicke auf <kbd>Daten von Wave laden</kbd>, wenn Stammdaten von Wave Distribution übernommen werden sollen.</li>\n
          <li class="mb-2">Prüfe die übernommenen Felder und ergänze alle Pflichtfelder, insbesondere den <strong>Preis</strong>, da Wave aktuell keinen öffentlichen Verkaufspreis liefert.</li>\n
          <li class="mb-2">Lade mindestens ein <strong>Produktbild</strong> hoch oder aktiviere im Wave-Bereich die Bildübernahme, damit die erkannten Wave-Produktbilder beim Speichern automatisch importiert werden.</li>\n
          <li class="mb-2">Ordne das Produkt optional einer <strong>Kategorie</strong> zu oder bestätige die vorgeschlagene lokale Kategorie, damit es in Navigation, Filtern und Feeds sauber einsortiert ist.</li>\n
          <li class="mb-2">Optional: SEO-Metadaten im Abschnitt <strong>SEO</strong> prüfen. Canonical-URLs werden aus Shop-Domain und Slug vorbelegt, können aber manuell angepasst werden.</li>\n
          <li class="mb-2">Klicke <kbd>Speichern</kbd>. Sichtbarkeit und Kaufbarkeit steuerst du rechts über <strong>Produkt veröffentlichen</strong> und <strong>Kaufbar / Bestellbar</strong>; der Lagerbestand steuert zusätzlich die Kaufaktion.</li>\n
        </ol>\n
        <div class="alert alert-success">\n
          <i class="fa fa-lightbulb-o"></i> <strong>Tipp:</strong> Slug wird automatisch aus dem Produktnamen generiert. Er kann manuell angepasst werden (URL-freundlich, kleingeschrieben, Bindestriche statt Leerzeichen).\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Die Wave-Vorbefüllung kann jetzt die erkannten Produktbilder aus der Wave-Galerie beim Speichern importieren. Externe Canonical-/OG-URLs werden weiterhin bewusst nicht übernommen.\n
        </div>
        """
      "admin.help.products.sections.create.title" => "Schritt-für-Schritt: Produkt anlegen"
      "admin.help.products.sections.fields.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Feld</th><th>Typ</th><th>Pflicht</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>name</code></td><td>Text</td><td><span class="badge badge-danger">Ja</span></td><td>Produktname, erscheint im Shop und in Bestellungen</td></tr>\n
            <tr><td><code>slug</code></td><td>Text</td><td><span class="badge badge-danger">Ja</span></td><td>URL-Bezeichner (auto-generiert), z.B. <code>mein-produkt</code></td></tr>\n
            <tr><td><code>category</code></td><td>Relation</td><td><span class="badge badge-secondary">Nein</span></td><td>Zugehörige Kategorie; empfohlen für Navigation, Filter und Feed-Zuordnung</td></tr>\n
            <tr><td><code>label</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Optionales Produktlabel für besondere Kennzeichnungen</td></tr>\n
            <tr><td><code>tags</code></td><td>Text/Liste</td><td><span class="badge badge-secondary">Nein</span></td><td>Schlagwörter, kommagetrennt gepflegt</td></tr>\n
            <tr><td><code>ean</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>EAN/GTIN/Barcode; primäre Suche für Wave-Vorbefüllung</td></tr>\n
            <tr><td><code>manufacturer</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Hersteller/Marke; wird auch für Produkt-Feeds genutzt</td></tr>\n
            <tr><td><code>sku</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Artikelnummer; dient ohne EAN als Wave-Art.-Nr. für die Vorbefüllung</td></tr>\n
            <tr><td><code>shortDescription</code></td><td>HTML/Richtext</td><td><span class="badge badge-secondary">Nein</span></td><td>Kurzbeschreibung für Listen, Teaser und Feeds</td></tr>\n
            <tr><td><code>description</code></td><td>HTML/Richtext</td><td><span class="badge badge-secondary">Nein</span></td><td>Ausführliche Produktbeschreibung (Summernote-Editor)</td></tr>\n
            <tr><td><code>price</code></td><td>Geldbetrag</td><td><span class="badge badge-danger">Ja</span></td><td>Bruttopreis in Euro (z.B. <code>19.99</code>)</td></tr>\n
            <tr><td><code>specialPrice</code></td><td>Geldbetrag</td><td><span class="badge badge-secondary">Nein</span></td><td>Sonderpreis; wird verwendet, wenn gefüllt und größer 0</td></tr>\n
            <tr><td><code>uvp</code></td><td>Geldbetrag</td><td><span class="badge badge-secondary">Nein</span></td><td>Unverbindliche Preisempfehlung/Vergleichspreis</td></tr>\n
            <tr><td><code>mwst</code></td><td>Auswahl</td><td><span class="badge badge-secondary">Nein</span></td><td>MwSt.-Satz aus den verfügbaren Steuersätzen</td></tr>\n
            <tr><td><code>stock</code></td><td>Integer</td><td><span class="badge badge-secondary">Nein</span></td><td>Lagerbestand, Standardwert 1, Mindestwert 0</td></tr>\n
            <tr><td><code>shippingMethod</code></td><td>Relation</td><td><span class="badge badge-secondary">Nein</span></td><td>Versandart; kann die Lieferzeit automatisch vorbelegen</td></tr>\n
            <tr><td><code>pickupAvailable</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td>Aktiviert Abholung im Geschäft als zusätzliche Lieferart für dieses Produkt</td></tr>\n
            <tr><td><code>pickupOnly</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td>Erlaubt ausschließlich Abholung im Geschäft; Versand wird im Checkout für dieses Produkt gesperrt</td></tr>\n
            <tr><td><code>pickupNote</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Interner Hinweis zur Abholung, etwa Lagerort oder Vorbereitungsschritt</td></tr>\n
            <tr><td><code>deliveryTime</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Lieferzeit, z.B. <code>1-3 Werktage</code></td></tr>\n
            <tr><td><code>weight</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Gewicht für Versand und technische Daten</td></tr>\n
            <tr><td><code>length</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Länge des Produkts oder Pakets</td></tr>\n
            <tr><td><code>width</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Breite des Produkts oder Pakets</td></tr>\n
            <tr><td><code>height</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Höhe des Produkts oder Pakets</td></tr>\n
            <tr><td><code>material</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Materialangabe, falls relevant</td></tr>\n
            <tr><td><code>countryOfOrigin</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Herkunftsland</td></tr>\n
            <tr><td><code>custom1</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Freies Zusatzfeld 1</td></tr>\n
            <tr><td><code>custom2</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Freies Zusatzfeld 2</td></tr>\n
            <tr><td><code>isActive</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td><strong>Produkt veröffentlichen</strong>: steuert die Shop-Sichtbarkeit</td></tr>\n
            <tr><td><code>available</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td><strong>Kaufbar / Bestellbar</strong>: manuelle Sperre für die Kaufbarkeit</td></tr>\n
            <tr><td><code>images</code></td><td>Upload</td><td><span class="badge badge-secondary">Nein</span></td><td>Produktbilder: JPG, JPEG, PNG, GIF, WebP, AVIF bis 8 MB je Datei</td></tr>\n
            <tr><td><code>downloads</code></td><td>Upload</td><td><span class="badge badge-secondary">Nein</span></td><td>Digitale Downloads: PDF, ZIP, CSV, TXT, Office-Dateien bis 20 MB je Datei</td></tr>\n
            <tr><td><code>videoUrl</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Externe Video-URL für Produktmedien</td></tr>\n
            <tr><td><code>seoMeta.metaTitle</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Seitentitel</td></tr>\n
            <tr><td><code>seoMeta.metaDescription</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Meta-Beschreibung</td></tr>\n
            <tr><td><code>seoMeta.metaKeywords</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Keywords</td></tr>\n
            <tr><td><code>seoMeta.ogTitle</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Titel</td></tr>\n
            <tr><td><code>seoMeta.ogDescription</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Beschreibung</td></tr>\n
            <tr><td><code>seoMeta.ogImage</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Bild-URL</td></tr>\n
            <tr><td><code>seoMeta.canonical</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Canonical-URL, wird aus Shop-Domain und Slug vorbelegt</td></tr>\n
            <tr><td><code>seoMeta.next</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Optionale Next-URL</td></tr>\n
            <tr><td><code>seoMeta.metaRobots</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Robots-Angabe, z.B. <code>index,follow</code></td></tr>\n
            <tr><td><code>seoMeta.ogLocale</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Locale</td></tr>\n
            <tr><td><code>seoMeta.ogType</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Typ</td></tr>\n
            <tr><td><code>seoMeta.ogUrl</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-URL</td></tr>\n
            <tr><td><code>seoMeta.ogSiteName</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Site-Name</td></tr>\n
            <tr><td><code>seoMeta.articleModifiedTime</code></td><td>Datum/Zeit</td><td><span class="badge badge-secondary">Nein</span></td><td>Zeitpunkt der letzten inhaltlichen Änderung</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.products.sections.fields.title" => "Feldreferenz: Produkt"
      "admin.help.products.sections.images.body_html" => """
        <p>Im Produktformular verwaltest du Bilder, Downloads und Video-URL im Abschnitt <strong>Medien</strong>. Links liegt der Bereich <strong>Uploads &amp; Einbindungen</strong>, rechts die aktuelle Galerie.</p>\n
        <ul>\n
          <li>Erlaubte Bildformate: <strong>JPG, JPEG, PNG, GIF, WebP, AVIF</strong></li>\n
          <li>Maximale Bildgröße: <strong>8 MB</strong> pro Datei</li>\n
          <li>Downloads: <strong>PDF, ZIP, CSV, TXT, DOC, DOCX, XLS, XLSX, PPT, PPTX</strong> bis <strong>20 MB</strong> pro Datei</li>\n
          <li>Video-URL: externe Video- oder Einbindungs-URL für die Produktdarstellung</li>\n
          <li>Bilder werden in <code>public/uploads/products/</code> gespeichert</li>\n
          <li>Einzelnes Bild löschen: Button <kbd><i class="fa fa-times"></i></kbd> neben dem Bild (AJAX, ohne Seiten-Reload)</li>\n
          <li>API-Route: <code>DELETE /admin/shop/bild-loeschen/{id}</code></li>\n
          <li>Erstes Bild = Hauptbild in Listen- und Detailansicht</li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Beim Löschen einzelner Bilder und beim Löschen eines Produkts werden der Datenbankeintrag und die zugehörige Datei im Upload-Ordner entfernt, sofern die Datei dort vorhanden ist.\n
        </div>
        """
      "admin.help.products.sections.images.title" => "Medien & Uploads verwalten"
      "admin.help.products.sections.overview.body_html" => """
        <p>Die Produktliste erreichst du unter <code>/admin/shop/produkte</code>. Sie zeigt alle Produkte in einer kompakten Arbeitsansicht mit Bild, Stammdaten, Preis/Lager, Versand/Abholung, Status und Metadaten.</p>\n
        <div class="row">\n
          <div class="col-md-6">\n
            <h5>Funktionen in der Liste:</h5>\n
            <ul>\n
              <li><strong>Suchen:</strong> Volltextsuche über Name und SKU</li>\n
              <li><strong>Filtern:</strong> Nach Kategorie, Lagerbestand</li>\n
              <li><strong>Sortieren:</strong> Per Klick auf Spaltenköpfe</li>\n
              <li><strong>Bearbeiten:</strong> Button <kbd><i class="fa fa-edit"></i></kbd> in der Zeile</li>\n
              <li><strong>Löschen:</strong> Button <kbd><i class="fa fa-trash"></i></kbd> (mit Bestätigungsdialog)</li>\n
              <li><strong>Massenbearbeitung:</strong> Checkboxen auswählen, Button <kbd>Massenbearbeitung</kbd> öffnen und nur die Felder aktivieren, die gemeinsam überschrieben werden sollen</li>\n
              <li><strong>Bulk-Delete:</strong> Checkboxen auswählen -> Button "Ausgewählte löschen"</li>\n
              <li><strong>Alle löschbaren löschen:</strong> Toolbar-Aktion für alle Produkte ohne Bestellreferenz</li>\n
            </ul>\n
          </div>\n
          <div class="col-md-6">\n
            <div class="alert alert-warning">\n
              <i class="fa fa-exclamation-triangle"></i> <strong>Hinweis:</strong> Produkte, die in Bestellungen referenziert werden, können <em>nicht</em> gelöscht werden. Der Bulk-Delete prüft dies automatisch.\n
            </div>\n
            <div class="alert alert-info">\n
              <i class="fa fa-lock"></i> <strong>Berechtigung:</strong> <code>ROLE_ADMIN_SHOP_MANAGE</code> für Lesen; <code>ROLE_ADMIN_SHOP_ADD/EDIT/DELETE</code> für Schreiben.\n
            </div>\n
          </div>\n
        </div>
        """
      "admin.help.products.sections.overview.title" => "Produkt-Übersicht"
      "admin.help.products.sections.wave.body_html" => """
        <p>Der <strong>Wave Produktdaten Holer</strong> sitzt direkt im Produktformular unter <code>/admin/shop/produkt/neu</code> und <code>/admin/shop/produkt/bearbeiten/{id}</code> im Abschnitt <strong>EAN & Wave</strong>. Er füllt neue oder bestehende Produkte per AJAX mit Daten von Wave Distribution vor.</p>\n
        <div class="row">\n
          <div class="col-md-6">\n
            <h5>Suchlogik</h5>\n
            <ul>\n
              <li><strong>Primär:</strong> Suche über EAN/GTIN/Barcode.</li>\n
              <li><strong>Fallback:</strong> Wenn keine EAN eingetragen ist, wird die Artikelnummer als Wave-Art.-Nr. verwendet.</li>\n
              <li><strong>Endpoint:</strong> <code>GET /admin/shop/produkt/wave-lookup?ean={ean}&amp;articleNumber={sku}</code></li>\n
              <li><strong>Berechtigung:</strong> <code>ROLE_ADMIN_SHOP_MANAGE</code>, <code>ROLE_ADMIN_SHOP_ADD</code> oder <code>ROLE_ADMIN_SHOP_EDIT</code>.</li>\n
            </ul>\n
          </div>\n
          <div class="col-md-6">\n
            <h5>Übernommene Daten</h5>\n
            <ul>\n
              <li>Name, Hersteller, Artikelnummer, Beschreibung und Kurzbeschreibung.</li>\n
              <li>Kategoriehinweis mit Abgleich auf lokale Kategorien.</li>\n
              <li>Textbasierte SEO-Daten wie Meta Title, Meta Description und Keywords.</li>\n
              <li>Technische Daten wie EAN, Gewicht, Maße, Material und Herkunftsland, soweit Wave sie liefert.</li>\n
            </ul>\n
          </div>\n
        </div>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-euro"></i> <strong>Preis bleibt unverändert:</strong> Der Verkaufspreis wird absichtlich nicht überschrieben. Wenn Wave keinen öffentlichen Preis liefert, erscheint ein Hinweis und der vorhandene Preis bleibt stehen.\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-image"></i> <strong>Bilder:</strong> Gefundene Wave-Bilder werden erst beim Speichern importiert, wenn die Option <em>Produktbilder beim Speichern importieren</em> aktiv ist. Die Vorschau zeigt nur die vorgemerkten Bilder.\n
        </div>\n
        <div class="alert alert-secondary">\n
          <i class="fa fa-link"></i> Externe Canonical- und OG-URLs werden nicht direkt übernommen. Das Produktformular hält SEO-URLs unter der eigenen Shop-Domain.\n
        </div>
        """
      "admin.help.products.sections.wave.title" => "Wave Produktdaten holen"
      "admin.import.actions.close" => "Schließen"
      "admin.import.actions.delete" => "Löschen"
      "admin.import.actions.details" => "Details"
      "admin.import.actions.help" => "Hilfe"
      "admin.import.actions.import_log" => "Import-Log"
      "admin.import.actions.log" => "Log"
      "admin.import.actions.promote" => "Live setzen"
      "admin.import.actions.promote_to_live" => "Dry-Run live setzen"
      "admin.import.actions.refresh" => "Aktualisieren"
      "admin.import.actions.refresh_file_list" => "Dateiliste aktualisieren"
      "admin.import.actions.replace_texts" => "Texte ersetzen"
      "admin.import.actions.retry" => "Erneut starten"
      "admin.import.actions.retry_mark" => "Erneut starten"
      "admin.import.actions.save_notes" => "Notizen speichern"
      "admin.import.actions.start" => "Starten"
      "admin.import.actions.start_selected_sql_import" => "SQL-Import starten"
      "admin.import.actions.stop" => "Stoppen"
      "admin.import.api.not_found" => "Eintrag nicht gefunden."
      "admin.import.api.promote_only_dry_run" => "Nur Dry-Run-Einträge können live gesetzt werden."
      "admin.import.api.retry_only_failed" => "Nur fehlgeschlagene Importe können erneut gestartet werden."
      "admin.import.booking_csv.actions.add_mapping" => "Hinzufügen"
      "admin.import.booking_csv.actions.back_to_import" => "Zum CSV-Import"
      "admin.import.booking_csv.actions.cancel" => "Abbrechen"
      "admin.import.booking_csv.actions.manage_mappings" => "Zimmertyp-Mapping verwalten"
      "admin.import.booking_csv.actions.preview" => "Vorschau anzeigen"
      "admin.import.booking_csv.actions.run_import" => "Jetzt importieren"
      "admin.import.booking_csv.actions.save_mappings" => "Mappings speichern"
      "admin.import.booking_csv.index.alerts.configure_now" => "Jetzt konfigurieren"
      "admin.import.booking_csv.index.alerts.no_mappings" => "Es sind noch keine Zimmertyp-Mappings konfiguriert."
      "admin.import.booking_csv.index.alerts.review_mappings" => "Mappings prüfen"
      "admin.import.booking_csv.index.alerts.unmapped_count" => "%count% Zimmertyp(en) ohne zugeordnete Wohnungen."
      "admin.import.booking_csv.index.file_label" => "CSV-Datei (Semikolon-getrennt, UTF-8)"
      "admin.import.booking_csv.index.intro" => "Lade die CSV-Exportdatei von Booking.com hoch. Alle bisherigen Booking.com-Buchungen werden ersetzt."
      "admin.import.booking_csv.index.panel_title" => "Buchungen importieren"
      "admin.import.booking_csv.index.subtitle" => "Importiere Buchungen strukturiert per CSV und prüfe sie vor dem Einspielen."
      "admin.import.booking_csv.index.title" => "Booking.com CSV-Import"
      "admin.import.booking_csv.mappings.delete_confirm" => "Mapping "%name%" wirklich löschen?"
      "admin.import.booking_csv.mappings.empty" => "Noch keine Mappings angelegt."
      "admin.import.booking_csv.mappings.existing_title" => "Bestehende Mappings"
      "admin.import.booking_csv.mappings.hint" => "Tipp: Name exakt aus der CSV-Spalte Art der Wohneinheit übernehmen, z.B. Double Room - Main Building."
      "admin.import.booking_csv.mappings.new_placeholder" => "Booking.com Zimmertyp (exakt)"
      "admin.import.booking_csv.mappings.new_title" => "Neuen Zimmertyp anlegen"
      "admin.import.booking_csv.mappings.subtitle" => "Booking.com Zimmertypen sauber auf lokale Wohnungen abbilden."
      "admin.import.booking_csv.mappings.table.action" => "Aktion"
      "admin.import.booking_csv.mappings.table.apartments" => "Zugeordnete Wohnungen"
      "admin.import.booking_csv.mappings.table.room_type" => "Booking.com Zimmertyp"
      "admin.import.booking_csv.mappings.title" => "Zimmertyp-Mapping"
      "admin.import.booking_csv.preview.execute_confirm_text" => "%count% Buchungen importieren und bestehende ersetzen?"
      "admin.import.booking_csv.preview.execute_description" => "%count% Buchungen werden importiert. Alle bestehenden Booking.com-Buchungen werden vorher gelöscht."
      "admin.import.booking_csv.preview.execute_title" => "Import durchführen"
      "admin.import.booking_csv.preview.file_label" => "CSV-Datei nochmals auswählen"
      "admin.import.booking_csv.preview.line_label" => "Zeile %line%"
      "admin.import.booking_csv.preview.no_apartment" => "- %reason%"
      "admin.import.booking_csv.preview.parse_errors_title" => "Fehler beim Parsen"
      "admin.import.booking_csv.preview.skipped_description" => "Kein Mapping oder kein freies Apartment gefunden."
      "admin.import.booking_csv.preview.skipped_title" => "Übersprungene Zeilen (%count%)"
      "admin.import.booking_csv.preview.stats.imported" => "Werden importiert"
      "admin.import.booking_csv.preview.stats.skipped" => "Übersprungen"
      "admin.import.booking_csv.preview.stats.total" => "Gesamt"
      "admin.import.booking_csv.preview.status.cancelled" => "Storniert"
      "admin.import.booking_csv.preview.status.confirmed" => "Bestätigt"
      "admin.import.booking_csv.preview.subtitle" => "Prüfe die CSV-Zeilen vor dem endgültigen Einspielen."
      "admin.import.booking_csv.preview.table.apartment" => "Wohnung (zugewiesen)"
      "admin.import.booking_csv.preview.table.arrival" => "Anreise"
      "admin.import.booking_csv.preview.table.departure" => "Abreise"
      "admin.import.booking_csv.preview.table.external_id" => "Ext.-ID"
      "admin.import.booking_csv.preview.table.guest_name" => "Gastname"
      "admin.import.booking_csv.preview.table.price" => "Preis"
      "admin.import.booking_csv.preview.table.room_type" => "Zimmertyp (CSV)"
      "admin.import.booking_csv.preview.table.status" => "Status"
      "admin.import.booking_csv.preview.title" => "Import-Vorschau"
      "admin.import.confirm.delete_button" => "Endgültig löschen"
      "admin.import.confirm.delete_text" => "Soll dieser Import-Log wirklich gelöscht werden?"
      "admin.import.confirm.promote_button" => "Live setzen"
      "admin.import.confirm.promote_text" => "Soll dieser Dry-Run jetzt live ausgeführt werden?"
      "admin.import.confirm.replace_text_button" => "Ersetzen ausführen"
      "admin.import.confirm.replace_text_text" => "Soll die Such-/Ersetzen-Operation jetzt auf die ausgewählten Crawler-Texte angewendet werden?"
      "admin.import.confirm.retry_button" => "Erneut starten"
      "admin.import.confirm.retry_text" => "Soll dieser fehlgeschlagene Import erneut gestartet werden?"
      "admin.import.confirm.sql_import_button" => "SQL-Import starten"
      "admin.import.confirm.sql_import_text" => "Soll der ausgewählte SQL-Import jetzt gestartet werden?"
      "admin.import.confirm.stop_crawler_button" => "Crawler stoppen"
      "admin.import.confirm.stop_crawler_text" => "Soll der laufende Crawler-Prozess gestoppt werden?"
      "admin.import.detail.completed" => "Abgeschlossen"
      "admin.import.detail.created" => "Neu"
      "admin.import.detail.deleted" => "Gelöscht"
      "admin.import.detail.duration" => "Dauer"
      "admin.import.detail.errors" => "Fehler"
      "admin.import.detail.source" => "Quelle"
      "admin.import.detail.started" => "Gestartet"
      "admin.import.detail.status" => "Status"
      "admin.import.detail.total_records" => "Datensätze gesamt"
      "admin.import.detail.updated" => "Aktualisiert"
      "admin.import.errors.chrome_binary_missing" => "Kein Chrome-Binary gefunden. Bitte installiere Chrome oder Chromium auf dem Server oder führe folgenden Befehl aus: PUPPETEER_CACHE_DIR=%cache_dir% npx puppeteer browsers install chrome."
      "admin.import.errors.console_missing" => "Die Symfony-Konsole wurde nicht gefunden."
      "admin.import.errors.crawler_already_running" => "Der ausgewählte Crawler läuft bereits mit PID %pid%."
      "admin.import.errors.crawler_script_missing" => "Das Crawler-Skript %script% wurde nicht gefunden."
      "admin.import.errors.crawler_start_failed" => "Der Crawler konnte nicht gestartet werden."
      "admin.import.errors.csv_header_unreadable" => "CSV-Header konnte nicht gelesen werden."
      "admin.import.errors.file_open_failed" => "Datei konnte nicht geöffnet werden."
      "admin.import.errors.invalid_date" => "Zeile %line%: Ungültiges Datum (%start% / %end%)"
      "admin.import.errors.invalid_file_path" => "Der angegebene Dateipfad ist ungültig."
      "admin.import.errors.invalid_sql_file" => "Es sind nur SQL-Dateien erlaubt."
      "admin.import.errors.missing_mapping" => "Kein Mapping für "%type%""
      "admin.import.errors.no_available_apartment" => "Kein freies Apartment für "%type%" (%start%-%end%)"
      "admin.import.errors.no_running_crawler" => "Für diesen Crawler läuft aktuell kein Prozess."
      "admin.import.errors.no_sql_file_found" => "Keine SQL-Datei für den Import gefunden."
      "admin.import.errors.node_unavailable" => "Node.js ist auf dem Server nicht verfügbar."
      "admin.import.errors.node_version_unsupported" => "Der Crawler benötigt Node.js >= %required%. Gefunden: %found%."
      "admin.import.errors.php_binary_missing" => "Das PHP-Binary ist auf dem Server nicht verfügbar."
      "admin.import.errors.preview_file_invalid" => "Die Vorschau-Datei enthält kein gültiges JSON."
      "admin.import.errors.preview_file_missing" => "Die Vorschau-Datei %file% wurde nicht gefunden."
      "admin.import.errors.preview_sql_generation_failed" => "Die SQL-Datei konnte aus der Vorschau nicht erzeugt werden."
      "admin.import.errors.replace_identical_values" => "Such- und Ersetzen-Wert dürfen nicht identisch sein."
      "admin.import.errors.replace_invalid_scope" => "Der ausgewählte Ersetzungsbereich ist ungültig."
      "admin.import.errors.replace_search_required" => "Bitte gib einen Suchbegriff für die Textersetzung ein."
      "admin.import.errors.sql_file_missing" => "Die SQL-Datei %file% wurde nicht gefunden."
      "admin.import.errors.sql_import_already_running" => "Ein SQL-Import läuft bereits mit PID %pid%."
      "admin.import.errors.sql_import_start_failed" => "Der SQL-Import konnte nicht gestartet werden."
      "admin.import.errors.unknown_crawler" => "Unbekannter Crawler: %key%."
      "admin.import.filters.all_statuses" => "Alle Status"
      "admin.import.filters.source_placeholder" => "Quelle filtern"
      "admin.import.galaxus.modal.add_search_rule" => "Regel hinzufügen"
      "admin.import.galaxus.modal.captcha_note" => "Falls Galaxus eine Captcha-Seite ausliefert, stoppt der Crawler ohne Umgehungsversuch und schreibt den Hinweis ins Log."
      "admin.import.galaxus.modal.category_label" => "Kategorie-Labels"
      "admin.import.galaxus.modal.category_label_placeholder" => """
        RAM\n
        Mainboards\n
        PC-Netzteile
        """
      "admin.import.galaxus.modal.category_labels_help" => "Optional eine Beschriftung pro URL-Zeile in gleicher Reihenfolge. Leer lassen, um die Kategorie automatisch aus Galaxus zu übernehmen."
      "admin.import.galaxus.modal.category_urls" => "Kategorie-URLs"
      "admin.import.galaxus.modal.category_urls_help" => "Eine Galaxus-Kategorie pro Zeile. Der Crawler sammelt Produktkarten aus den Listenansichten; fehlerhafte Kategorien werden nach Wiederholungen übersprungen und im Log vermerkt."
      "admin.import.galaxus.modal.description" => "Starte einen getrennten Galaxus-Lauf. Die Produkte werden vor dem Import als bearbeitbare Vorschau gespeichert."
      "admin.import.galaxus.modal.detail_fetch" => "Detailseiten abrufen"
      "admin.import.galaxus.modal.detail_fetch_help" => "Optional aktivieren; bei Captcha wird automatisch auf Listendaten zurückgefallen."
      "admin.import.galaxus.modal.import_delivery_time" => "Lieferzeit importieren"
      "admin.import.galaxus.modal.import_images" => "Bilder importieren"
      "admin.import.galaxus.modal.import_specifications" => "Spezifikationen importieren"
      "admin.import.galaxus.modal.import_specifications_help" => "Holt technische Daten von der Detailseite und hängt sie als bereinigte Tabelle an die Produktbeschreibung an. Externe Links werden zu Text, damit der SQL-Import quellenneutral bleibt."
      "admin.import.galaxus.modal.keep_one_rule" => "Mindestens eine Such-/Ersetzen-Zeile bleibt sichtbar."
      "admin.import.galaxus.modal.max_products" => "Limit je Kategorie"
      "admin.import.galaxus.modal.options_invalid" => "Bitte prüfe Kategorie-URLs, Limit und Preisänderung."
      "admin.import.galaxus.modal.price_mode" => "Preisänderung"
      "admin.import.galaxus.modal.price_modes.amount" => "Betrag"
      "admin.import.galaxus.modal.price_modes.percent" => "Prozent"
      "admin.import.galaxus.modal.price_value" => "Wert (+/-)"
      "admin.import.galaxus.modal.remove_rule" => "Regel entfernen"
      "admin.import.galaxus.modal.replace_placeholder" => "Ersetzen durch"
      "admin.import.galaxus.modal.search_placeholder" => "Suchen nach"
      "admin.import.galaxus.modal.search_replace" => "Suchen/Ersetzen"
      "admin.import.galaxus.modal.search_replace_help" => "Leere Suchfelder werden ignoriert. Ein leerer Ersetzen-Wert entfernt den gefundenen Text."
      "admin.import.galaxus.modal.start" => "Galaxus-Crawler starten"
      "admin.import.galaxus.modal.title" => "Galaxus-Crawler starten"
      "admin.import.galaxus.modal.yes_import" => "Ja"
      "admin.import.galaxus.preview.actions.generate_sql" => "SQL aus Vorschau erzeugen"
      "admin.import.galaxus.preview.actions.load" => "Vorschau laden"
      "admin.import.galaxus.preview.actions.save" => "Vorschau speichern"
      "admin.import.galaxus.preview.description" => "Prüfe die gecrawlten Galaxus-Produkte oder eine schnelle Shell-Referenzdatei vor dem Import. Änderungen werden in der Vorschau gespeichert und danach als SQL-Datei erzeugt."
      "admin.import.galaxus.preview.empty" => "Keine Galaxus-Vorschau geladen."
      "admin.import.galaxus.preview.file_label" => "Vorschau-/Referenzdatei"
      "admin.import.galaxus.preview.filters.all" => "Alle Produkte"
      "admin.import.galaxus.preview.filters.category" => "Kategorie suchen"
      "admin.import.galaxus.preview.filters.category_placeholder" => "Kategoriepfad"
      "admin.import.galaxus.preview.filters.clear" => "Zurücksetzen"
      "admin.import.galaxus.preview.filters.count" => "%visible% von %total% Produkten sichtbar"
      "admin.import.galaxus.preview.filters.import_status" => "Import-Status"
      "admin.import.galaxus.preview.filters.only_import" => "Nur Import"
      "admin.import.galaxus.preview.filters.only_skip" => "Nur überspringen"
      "admin.import.galaxus.preview.filters.search" => "Produktsuche"
      "admin.import.galaxus.preview.filters.search_placeholder" => "Name, SKU, Hersteller, Beschreibung"
      "admin.import.galaxus.preview.messages.list_load_failed" => "Die Vorschau-Dateiliste konnte nicht geladen werden."
      "admin.import.galaxus.preview.messages.load_failed" => "Vorschau konnte nicht geladen werden: %error%"
      "admin.import.galaxus.preview.messages.no_files" => "Keine Galaxus-Vorschauen vorhanden."
      "admin.import.galaxus.preview.messages.no_preview_selected" => "Bitte wähle zuerst eine Vorschau aus."
      "admin.import.galaxus.preview.messages.save_failed" => "Vorschau konnte nicht gespeichert werden: %error%"
      "admin.import.galaxus.preview.messages.saved" => "Vorschau wurde gespeichert."
      "admin.import.galaxus.preview.messages.sql_failed" => "SQL-Erzeugung fehlgeschlagen: %error%"
      "admin.import.galaxus.preview.messages.sql_generated" => "SQL-Datei wurde erzeugt: %file%"
      "admin.import.galaxus.preview.meta" => "%count% Produkte · Erstellt: %created% · Datei: %file%"
      "admin.import.galaxus.preview.reference_missing_delivery_warning" => "%count% Referenzprodukt(e) enthalten keine Lieferzeit."
      "admin.import.galaxus.preview.reference_missing_price_warning" => "%count% Referenzprodukt(e) enthalten keinen Preis."
      "admin.import.galaxus.preview.reference_review_warning" => "Diese Shell-Referenz wurde schnell aus Galaxus-Detailseiten erzeugt. Bitte Preise, Lieferzeiten und Import-Haken vor der SQL-Erzeugung prüfen."
      "admin.import.galaxus.preview.select_placeholder" => "Bitte Vorschau oder Referenz auswählen"
      "admin.import.galaxus.preview.spec_summary" => "Technische Daten: %groups% Gruppen / %rows% Zeilen"
      "admin.import.galaxus.preview.sql_meta" => "SQL: %file%"
      "admin.import.galaxus.preview.table.category" => "Kategoriepfad"
      "admin.import.galaxus.preview.table.delivery_time" => "Lieferzeit"
      "admin.import.galaxus.preview.table.description" => "Beschreibung"
      "admin.import.galaxus.preview.table.import" => "Import"
      "admin.import.galaxus.preview.table.manufacturer" => "Hersteller"
      "admin.import.galaxus.preview.table.name" => "Name"
      "admin.import.galaxus.preview.table.price" => "Preis"
      "admin.import.galaxus.preview.table.raw_data" => "Alle Daten"
      "admin.import.galaxus.preview.table.sku" => "SKU"
      "admin.import.galaxus.preview.table.stock" => "Lager"
      "admin.import.galaxus.preview.types.preview" => "Vorschau"
      "admin.import.galaxus.preview.types.reference" => "Referenz"
      "admin.import.galaxus.preview.warning_prefix" => "Hinweis:"
      "admin.import.help_index.card_subtitle" => "Logs, Live-Setzen, SQL-Import, Crawler-Steuerung"
      "admin.import.help_index.card_title" => "Import & Crawler"
      "admin.import.help.back" => "Zurück"
      "admin.import.help.navigation.api" => "API-Endpunkte"
      "admin.import.help.navigation.crawler" => "Crawler-Steuerung"
      "admin.import.help.navigation.fields" => "Feldreferenz"
      "admin.import.help.navigation.galaxus" => "Galaxus-Vorschau"
      "admin.import.help.navigation.import_log" => "Import-Log Workflow"
      "admin.import.help.navigation.overview" => "Überblick"
      "admin.import.help.navigation.promote" => "Dry-Run → Live"
      "admin.import.help.navigation.sql" => "SQL-Import"
      "admin.import.help.navigation.text_replace" => "Text-Ersetzen"
      "admin.import.help.navigation.title" => "Navigation"
      "admin.import.help.page_title" => "Hilfe: Daten-Import"
      "admin.import.help.sections.api.rows.crawler_log" => "Crawler-Log abrufen"
      "admin.import.help.sections.api.rows.crawler_start" => "Crawler starten"
      "admin.import.help.sections.api.rows.crawler_stop" => "Crawler stoppen"
      "admin.import.help.sections.api.rows.crawler_text_replace" => "Crawler-Texte global suchen/ersetzen"
      "admin.import.help.sections.api.rows.delete" => "Import-Log löschen"
      "admin.import.help.sections.api.rows.notes" => "Notizen hinzufügen"
      "admin.import.help.sections.api.rows.overview" => "Import-Übersicht"
      "admin.import.help.sections.api.rows.preview_detail" => "Crawler-Vorschau laden"
      "admin.import.help.sections.api.rows.preview_files" => "Crawler-Vorschauen auflisten"
      "admin.import.help.sections.api.rows.preview_save" => "Bearbeitete Crawler-Vorschau speichern"
      "admin.import.help.sections.api.rows.preview_sql" => "SQL aus Crawler-Vorschau erzeugen"
      "admin.import.help.sections.api.rows.promote" => "Dry-Run zu Live befördern"
      "admin.import.help.sections.api.rows.retry" => "Fehlgeschlagenen Import wiederholen"
      "admin.import.help.sections.api.rows.sql_files" => "SQL-Dateien auflisten"
      "admin.import.help.sections.api.rows.sql_start" => "SQL-Import starten"
      "admin.import.help.sections.api.table.function" => "Funktion"
      "admin.import.help.sections.api.table.method" => "Methode"
      "admin.import.help.sections.api.table.url" => "URL"
      "admin.import.help.sections.api.title" => "API-Endpunkte"
      "admin.import.help.sections.crawler.available_title" => "Verfügbare Crawler:"
      "admin.import.help.sections.crawler.available.galaxus" => "<code>crawler_galaxus.js</code> – Galaxus-Kategorieseiten mit editierbarer Importvorschau"
      "admin.import.help.sections.crawler.available.wave" => "<code>crawler_wave.js</code> – Wave Produktkatalog mit konfigurierbarem Start-Modal"
      "admin.import.help.sections.crawler.available.wede_soft" => "<code>crawler_wede-soft.js</code> – Wede-Soft Produktkatalog"
      "admin.import.help.sections.crawler.intro" => "Crawler können direkt aus dem Admin gestartet und gestoppt werden:"
      "admin.import.help.sections.crawler.steps.max_products" => "Bei Wave/Galaxus werden Limit und weitere Laufzeitoptionen im Start-Modal gepflegt."
      "admin.import.help.sections.crawler.steps.select" => "In <strong>Import → Crawler</strong> den gewünschten Crawler auswählen"
      "admin.import.help.sections.crawler.steps.start" => "<kbd><i class="fa fa-play"></i> Crawler starten</kbd> startet den Node.js-Prozess im Hintergrund"
      "admin.import.help.sections.crawler.steps.stop" => "<kbd><i class="fa fa-stop"></i> Crawler stoppen</kbd> beendet den laufenden Prozess"
      "admin.import.help.sections.crawler.steps.watch" => "Fortschritt im Live-Log beobachten."
      "admin.import.help.sections.crawler.steps.wave_modal" => "Für Wave zusätzlich Start-URL, Login-Fallback-URLs und optionale Login-Selektoren im Modal setzen. Zugangsdaten bleiben in der lokalen ENV-Datei."
      "admin.import.help.sections.crawler.title" => "Crawler-Steuerung"
      "admin.import.help.sections.crawler.warning" => "Crawler laufen im Hintergrund. Ein Server-Neustart beendet alle laufenden Crawler."
      "admin.import.help.sections.fields.rows.created_at" => "Startzeit des Import-Laufs"
      "admin.import.help.sections.fields.rows.error_count" => "Anzahl erkannter Fehler"
      "admin.import.help.sections.fields.rows.filename" => "Name der SQL-Datei oder Crawler-Bezeichnung"
      "admin.import.help.sections.fields.rows.log" => "Detailliertes Import-Protokoll"
      "admin.import.help.sections.fields.rows.notes" => "Interne Admin-Notizen zum Import"
      "admin.import.help.sections.fields.rows.products_imported" => "Anzahl erfolgreich importierter Produkte"
      "admin.import.help.sections.fields.rows.products_skipped" => "Übersprungene Produkte, z.B. Duplikate"
      "admin.import.help.sections.fields.rows.source" => "Crawler-Bezeichnung oder importierter SQL-Dateiname"
      "admin.import.help.sections.fields.rows.status" => "pending / dry_run / live / failed"
      "admin.import.help.sections.fields.table.description" => "Beschreibung"
      "admin.import.help.sections.fields.table.field" => "Feld"
      "admin.import.help.sections.fields.table.type" => "Typ"
      "admin.import.help.sections.fields.title" => "Feldreferenz: ImportLog"
      "admin.import.help.sections.fields.types.datetime" => "Datum/Zeit"
      "admin.import.help.sections.fields.types.enum" => "Enum"
      "admin.import.help.sections.fields.types.integer" => "Integer"
      "admin.import.help.sections.fields.types.text" => "Text"
      "admin.import.help.sections.fields.types.text_json" => "Text (JSON)"
      "admin.import.help.sections.galaxus.intro" => "Der Galaxus-Crawler arbeitet dateibasiert: Er liest eine oder mehrere Kategorieseiten, speichert eine JSON-Vorschau und erzeugt daraus eine SQL-Datei für den manuellen Import."
      "admin.import.help.sections.galaxus.options.categories" => "Kategorie-URLs: eine URL pro Zeile, z.B. <code>https://www.galaxus.de/de/s1/sector/it-multimedia-1</code>. Kategorie-Labels können optional in gleicher Reihenfolge je URL-Zeile angegeben werden; leere Label-Zeilen übernehmen die von Galaxus erkannte Kategorie. Kategorien mit HTTP2-/Netzwerkfehlern werden wiederholt und danach übersprungen, ohne den gesamten Lauf abzubrechen."
      "admin.import.help.sections.galaxus.options.delivery" => "Lieferzeit importieren kann abgeschaltet werden, wenn Galaxus nur ungenaue Verfügbarkeiten liefert."
      "admin.import.help.sections.galaxus.options.images" => "Bilder importieren lädt alle gefundenen Produktbilder nach <code>public/uploads/products</code> und bindet sie mit ihrer Reihenfolge als Produktgalerie ein."
      "admin.import.help.sections.galaxus.options.limit" => "Limit begrenzt die Anzahl der Produkte je Kategorie-URL. Der Crawler nutzt bevorzugt die Galaxus-GraphQL-Cursorliste und kann dadurch deutlich mehr als die initial sichtbaren 24 Produkte laden; der Browser-Scroll mit <strong>Mehr anzeigen</strong> bleibt als Fallback erhalten."
      "admin.import.help.sections.galaxus.options.price" => "Preisänderung unterstützt feste Beträge und Prozentwerte; negative Werte reduzieren den Preis."
      "admin.import.help.sections.galaxus.options.reference" => "Der Shell-Referenzsammler <code>tools/galaxus-reference-collector.sh</code> kann vorab Produktname, Artikelnummer, EAN, Kategorie und Bild-URLs als JSONL unter <code>var/crawlers/galaxus_reference</code> speichern. Diese Referenzdateien erscheinen in der Galaxus-Vorschau-Auswahl und können dort als bearbeitbare Vorschau gespeichert werden. Der Galaxus-Crawler nutzt automatisch die neueste Referenzdatei oder explizit <code>GALAXUS_REFERENCE_FILE</code>."
      "admin.import.help.sections.galaxus.options.replace" => "Suchen/Ersetzen bereinigt alle importrelevanten Textfelder bereits vor der Vorschau, inklusive Kategoriepfad, Artikelnummer, Hersteller, EAN, Tags und SEO-Texten."
      "admin.import.help.sections.galaxus.options.specifications" => "Spezifikationen importieren liest technische Daten von der Detailseite, ignoriert Release-Datum, Verkaufsrang, Lieferumfang, Herkunft, freiwilligen Klimabeitrag, rechtliche Hinweise und Verpackungsdimensionen, entfernt externe Links und erzeugt quellenneutrales HTML für den SQL-Import."
      "admin.import.help.sections.galaxus.preview" => "Nach dem Crawlerlauf eine Vorschau-Datei bewusst auswählen, Import-Haken und Produktwerte prüfen, Rohdaten je Zeile kontrollieren, speichern und anschließend SQL erzeugen. Erst danach die erzeugte SQL-Datei im SQL-Import manuell starten."
      "admin.import.help.sections.galaxus.title" => "Galaxus-Crawler mit Vorschau"
      "admin.import.help.sections.import_log.intro" => "Jeder Import wird in einem <strong>ImportLog</strong>-Datensatz protokolliert:"
      "admin.import.help.sections.import_log.rows.dry_run.meaning" => "Test-Import ohne Datenbankänderungen"
      "admin.import.help.sections.import_log.rows.dry_run.next" => "Prüfen, dann live setzen"
      "admin.import.help.sections.import_log.rows.failed.meaning" => "Import fehlgeschlagen"
      "admin.import.help.sections.import_log.rows.failed.next" => "Erneut starten oder Fehler beheben"
      "admin.import.help.sections.import_log.rows.live.meaning" => "Produktiv eingespielt"
      "admin.import.help.sections.import_log.rows.live.next" => "Fertig"
      "admin.import.help.sections.import_log.rows.pending.meaning" => "Import in Warteschlange"
      "admin.import.help.sections.import_log.rows.pending.next" => "Automatisch verarbeitet"
      "admin.import.help.sections.import_log.sources_title" => "Import-Quellen (<code>source</code>):"
      "admin.import.help.sections.import_log.sources.crawler" => "<code>crawler</code> – Von einem der Crawler-Skripte"
      "admin.import.help.sections.import_log.sources.manual" => "<code>manual</code> – Manuell initiiert"
      "admin.import.help.sections.import_log.sources.sql" => "<code>import_products_*.sql</code> – der tatsächliche SQL-Dateiname des gestarteten Imports"
      "admin.import.help.sections.import_log.table.meaning" => "Bedeutung"
      "admin.import.help.sections.import_log.table.next_step" => "Nächster Schritt"
      "admin.import.help.sections.import_log.table.status" => "Status"
      "admin.import.help.sections.import_log.title" => "Import-Log Workflow"
      "admin.import.help.sections.overview.cards.crawler.text" => "Node.js-Scraper für externe Shops"
      "admin.import.help.sections.overview.cards.crawler.title" => "Crawler"
      "admin.import.help.sections.overview.cards.promote.text" => "Zweistufiger sicherer Import"
      "admin.import.help.sections.overview.cards.promote.title" => "Dry-Run → Live"
      "admin.import.help.sections.overview.cards.sql.text" => "Direkte SQL-Datei einspielen"
      "admin.import.help.sections.overview.cards.sql.title" => "SQL-Import"
      "admin.import.help.sections.overview.intro" => "Das Import-Modul bietet drei Wege, Produktdaten in den Shop einzuspielen:"
      "admin.import.help.sections.overview.permissions_label" => "Berechtigungen:"
      "admin.import.help.sections.overview.title" => "Import-System: Überblick"
      "admin.import.help.sections.promote.api" => "<strong>API:</strong> <code>POST /admin/import-control/{id}/promote</code>"
      "admin.import.help.sections.promote.intro" => "Der <strong>zweistufige Import-Prozess</strong> schützt vor ungewollten Datenänderungen:"
      "admin.import.help.sections.promote.notes_text" => "<code>POST /admin/import-control/{id}/notes</code> fügt interne Notizen zu einem Import-Lauf hinzu."
      "admin.import.help.sections.promote.notes_title" => "Notizen"
      "admin.import.help.sections.promote.retry_text" => "<code>POST /admin/import-control/{id}/retry</code> startet einen fehlgeschlagenen Import erneut."
      "admin.import.help.sections.promote.retry_title" => "Retry bei Fehlern"
      "admin.import.help.sections.promote.steps.dry_run" => "<strong>Dry-Run</strong>: Der Import wird simuliert, alle Änderungen werden protokolliert, aber nicht gespeichert"
      "admin.import.help.sections.promote.steps.promote" => "<kbd><i class="fa fa-arrow-up"></i> Live setzen</kbd> führt den Import produktiv aus."
      "admin.import.help.sections.promote.steps.review" => "Ein Admin prüft die Vorschau, z.B. Produktanzahl, neue Kategorien und Preisänderungen."
      "admin.import.help.sections.promote.title" => "Dry-Run → Live (Promote)"
      "admin.import.help.sections.sql.api_title" => "API:"
      "admin.import.help.sections.sql.api.files" => "<code>GET /admin/import-control/sql/files</code> listet verfügbare SQL-Dateien auf"
      "admin.import.help.sections.sql.api.log" => "<code>GET /admin/import-control/sql/log</code> ruft das Import-Log ab"
      "admin.import.help.sections.sql.api.start" => "<code>POST /admin/import-control/sql/start</code> startet den SQL-Import"
      "admin.import.help.sections.sql.api.status" => "<code>GET /admin/import-control/sql/status</code> ruft den aktuellen Status ab"
      "admin.import.help.sections.sql.steps.dry_run" => "<kbd>Dry-Run starten</kbd> zeigt eine sichere Vorschau der Änderungen"
      "admin.import.help.sections.sql.steps.files_appear" => "In <strong>Import → SQL-Import</strong> erscheinen verfügbare Dateien automatisch"
      "admin.import.help.sections.sql.steps.live" => "<kbd>Live einspielen</kbd> führt den Import nach Prüfung der Vorschau produktiv aus"
      "admin.import.help.sections.sql.steps.log_entry" => "Ein Import-Log-Eintrag wird erstellt."
      "admin.import.help.sections.sql.steps.place_file" => "SQL-Datei in das Verzeichnis <code>sql/</code> legen"
      "admin.import.help.sections.sql.steps.select_file" => "Datei auswählen"
      "admin.import.help.sections.sql.title" => "SQL-Import"
      "admin.import.help.sections.text_replace.intro" => "Mit der Zusatzmaske im Import-Modul lassen sich importierte Crawler-Texte nachträglich bereinigen, zum Beispiel alte Markenbegriffe in Produkt- und SEO-Daten."
      "admin.import.help.sections.text_replace.note" => "Die Ersetzung arbeitet aktuell auf Produkttexten inklusive Slug, SKU, EAN, Video-URL und Tags, SEO-Metadaten und importierten Systemeinstellungen. Treffer werden unabhängig von Groß-/Kleinschreibung ersetzt."
      "admin.import.help.sections.text_replace.steps.confirm" => "Die Operation über den Admin-Bestätigungsdialog auslösen."
      "admin.import.help.sections.text_replace.steps.replace" => "Optional den neuen Zieltext im Feld <strong>Ersetzen durch</strong> eintragen. Ein leerer Wert entfernt den Suchtext."
      "admin.import.help.sections.text_replace.steps.scope" => "Den Bereich auswählen: alle Crawler-Texte, nur Produkte, nur SEO oder nur Einstellungen."
      "admin.import.help.sections.text_replace.steps.search" => "Im Feld <strong>Suchen nach</strong> den Altbegriff eingeben, z.B. <code>Wede Soft</code>."
      "admin.import.help.sections.text_replace.title" => "Text-Ersetzen für Crawler-Inhalte"
      "admin.import.help.to_module" => "Zum Modul"
      "admin.import.kpi.dry_run" => "Dry-Run"
      "admin.import.kpi.failed" => "Fehlgeschlagen"
      "admin.import.kpi.pending" => "Wartend"
      "admin.import.kpi.running" => "Laufend"
      "admin.import.kpi.success" => "Erfolgreich"
      "admin.import.kpi.total" => "Importe gesamt"
      "admin.import.messages.crawler_start_failed" => "Crawler-Start fehlgeschlagen."
      "admin.import.messages.crawler_started" => "Crawler wurde gestartet."
      "admin.import.messages.crawler_status_load_failed" => "Crawler-Status konnte nicht geladen werden."
      "admin.import.messages.crawler_stop_failed" => "Crawler-Stopp fehlgeschlagen."
      "admin.import.messages.crawler_stopped" => "Crawler wurde gestoppt."
      "admin.import.messages.dry_flag" => "Dry-Run"
      "admin.import.messages.duration_seconds" => "%seconds% s"
      "admin.import.messages.file_list_load_failed" => "Die SQL-Dateiliste konnte nicht geladen werden."
      "admin.import.messages.import_live_set" => "Import wurde live gesetzt."
      "admin.import.messages.import_log_deleted" => "Import-Log wurde gelöscht."
      "admin.import.messages.import_retry_marked" => "Import wurde zum erneuten Start markiert."
      "admin.import.messages.invalid_crawler_api" => "Ungültige Antwort der Crawler-API."
      "admin.import.messages.loading" => "Lädt"
      "admin.import.messages.loading_ellipsis" => "Lädt…"
      "admin.import.messages.meta_file" => "Datei: %value%"
      "admin.import.messages.meta_last_start" => "Letzter Start: %value%"
      "admin.import.messages.meta_log" => "Log: %value%"
      "admin.import.messages.no_crawlers_found" => "Keine Crawler gefunden."
      "admin.import.messages.no_diff_data" => "Für diesen Lauf liegen keine Diff-Daten vor."
      "admin.import.messages.no_entries_found" => "Keine Einträge gefunden."
      "admin.import.messages.no_errors" => "Keine Fehler vorhanden."
      "admin.import.messages.no_log_output" => "Keine Log-Ausgabe vorhanden."
      "admin.import.messages.no_sql_file_selected" => "Bitte wähle zuerst eine SQL-Datei aus."
      "admin.import.messages.no_sql_snapshots" => "Keine SQL-Snapshots vorhanden."
      "admin.import.messages.notes_placeholder" => "Interne Notizen für diesen Import-Lauf"
      "admin.import.messages.notes_saved" => "Notizen wurden gespeichert."
      "admin.import.messages.page_info" => "Seite %page% von %pages% · %total% Einträge"
      "admin.import.messages.promote_failed" => "Live-Setzen fehlgeschlagen."
      "admin.import.messages.replace_no_changes" => "Es wurden keine passenden Crawler-Texte für „%search%“ gefunden."
      "admin.import.messages.replace_success" => "Textersetzung abgeschlossen: %records% Datensätze geändert, %fields% Felder aktualisiert (Produkte: %products%, SEO: %seo%, Einstellungen: %settings%)."
      "admin.import.messages.retry_failed" => "Erneuter Start fehlgeschlagen."
      "admin.import.messages.running_with_elapsed" => "Läuft seit %elapsed%"
      "admin.import.messages.sql_import_completed" => "SQL-Import abgeschlossen."
      "admin.import.messages.sql_import_completed_details" => "SQL-Import abgeschlossen: %created% Produkte importiert, %errors% Fehler."
      "admin.import.messages.sql_import_completed_failed" => "SQL-Import fehlgeschlagen: %created% Produkte importiert, %errors% Fehler. Bitte Import-Log prüfen."
      "admin.import.messages.sql_import_failed" => "SQL-Import fehlgeschlagen."
      "admin.import.messages.sql_import_started" => "SQL-Import wurde gestartet."
      "admin.import.modals.crawler_log_title" => "Crawler-Log"
      "admin.import.modals.detail_title" => "Import-Details"
      "admin.import.modals.sql_import_log_title" => "SQL-Import-Log"
      "admin.import.modals.tabs.diff" => "Diff"
      "admin.import.modals.tabs.errors" => "Fehler"
      "admin.import.modals.tabs.notes" => "Notizen"
      "admin.import.modals.tabs.overview" => "Überblick"
      "admin.import.notifications.import_completed" => "%imported% Buchungen importiert, %skipped% übersprungen."
      "admin.import.notifications.mapping_deleted" => "Mapping gelöscht."
      "admin.import.notifications.mappings_saved" => "Mappings gespeichert."
      "admin.import.notifications.no_file_uploaded" => "Keine Datei hochgeladen."
      "admin.import.page.subtitle" => "Crawler, SQL-Importe und Laufhistorie zentral überwachen und steuern."
      "admin.import.page.title" => "Import Control Center"
      "admin.import.prompts.max_products" => "Maximale Produktanzahl (leer = unbegrenzt)"
      "admin.import.sections.crawler_execution" => "Crawler-Ausführung"
      "admin.import.sections.galaxus_preview" => "Galaxus-Vorschau"
      "admin.import.sections.import_runs" => "Import-Läufe"
      "admin.import.sections.sql_import" => "SQL-Import"
      "admin.import.sections.text_replace" => "Text-Ersetzen"
      "admin.import.sql.description" => "Wähle eine SQL-Datei aus dem Verzeichnis <code>sql/</code> und starte den Import mit vollständigem Protokoll direkt aus dem Backend."
      "admin.import.sql.file_label" => "SQL-Datei"
      "admin.import.status.dry_run" => "Dry-Run"
      "admin.import.status.failed" => "Fehlgeschlagen"
      "admin.import.status.idle" => "Bereit"
      "admin.import.status.pending" => "Wartend"
      "admin.import.status.running" => "Läuft"
      "admin.import.status.success" => "Erfolgreich"
      "admin.import.table.actions" => "Aktionen"
      "admin.import.table.crawler" => "Crawler"
      "admin.import.table.created" => "Neu"
      "admin.import.table.duration" => "Dauer"
      "admin.import.table.errors" => "Fehler"
      "admin.import.table.field" => "Feld"
      "admin.import.table.last_started" => "Zuletzt gestartet"
      "admin.import.table.log_size" => "Log-Größe"
      "admin.import.table.new" => "Neu"
      "admin.import.table.old" => "Alt"
      "admin.import.table.reference" => "Referenz"
      "admin.import.table.script" => "Skript"
      "admin.import.table.source" => "Quelle"
      "admin.import.table.started" => "Gestartet"
      "admin.import.table.status" => "Status"
      "admin.import.table.total" => "Gesamt"
      "admin.import.table.updated" => "Aktualisiert"
      "admin.import.text_replace.description" => "Bereinigt importierte Crawler-Texte direkt in Produkt-, SEO- und Einstellungsdaten. Sinnvoll für alte Markenbegriffe oder Legacy-Domainreste aus früheren Wede-Importen."
      "admin.import.text_replace.help" => "Die Ersetzung arbeitet case-insensitive auf den ausgewählten Crawler-Textbereichen. Ein leerer Ersetzen-Wert entfernt den Suchtext vollständig."
      "admin.import.text_replace.replace_label" => "Ersetzen durch"
      "admin.import.text_replace.scope_label" => "Bereich"
      "admin.import.text_replace.scopes.all" => "Alle Crawler-Texte"
      "admin.import.text_replace.scopes.product" => "Nur Produkttexte"
      "admin.import.text_replace.scopes.seo" => "Nur SEO-Texte"
      "admin.import.text_replace.scopes.settings" => "Nur importierte Einstellungen"
      "admin.import.text_replace.search_label" => "Suchen nach"
      "admin.import.wave.modal.add_search_rule" => "Suchen/Ersetzen-Regel hinzufügen"
      "admin.import.wave.modal.alternative_category" => "Alternative Kategorie"
      "admin.import.wave.modal.alternative_category_help" => "Optional: Erzwingt den Kategoriepfad für alle Produkte, z.B. Hardware > RAM."
      "admin.import.wave.modal.alternative_category_placeholder" => "Hardware > PC-Komponenten > Arbeitsspeicher"
      "admin.import.wave.modal.description" => "Starte den Wave-Crawler mit Laufzeitoptionen aus dem Admin. Zugangsdaten und Login-URL bleiben in der lokalen ENV-Datei."
      "admin.import.wave.modal.fulfillment_mode" => "Verkaufsmodus"
      "admin.import.wave.modal.fulfillment_modes.online_only" => "Nur Online"
      "admin.import.wave.modal.fulfillment_modes.pickup_available" => "Abholung im Geschäft anbieten"
      "admin.import.wave.modal.fulfillment_modes.pickup_only" => "Nur Abholung im Geschäft"
      "admin.import.wave.modal.import_images" => "Bilder importieren"
      "admin.import.wave.modal.keep_one_rule" => "Mindestens eine Regelzeile bleibt erhalten."
      "admin.import.wave.modal.login_enabled" => "Login vor Crawl ausführen"
      "admin.import.wave.modal.login_password_selector" => "Passwort-Selektor (optional)"
      "admin.import.wave.modal.login_submit_selector" => "Submit-Selektor (optional)"
      "admin.import.wave.modal.login_success_selector" => "Login-Erfolgsselektor (optional)"
      "admin.import.wave.modal.login_success_selector_help" => "Optionales CSS-Selektor-Muster für ein Element, das nach erfolgreichem Login sichtbar ist."
      "admin.import.wave.modal.login_url_candidates" => "Alternative Login-URLs (optional)"
      "admin.import.wave.modal.login_url_candidates_help" => "Eine URL pro Zeile. Wird genutzt, falls die primäre Login-URL nicht erreichbar ist."
      "admin.import.wave.modal.login_user_selector" => "Benutzerfeld-Selektor (optional)"
      "admin.import.wave.modal.max_products" => "Maximale Produktanzahl"
      "admin.import.wave.modal.options_invalid" => "Bitte prüfe Start-URL und Produktlimit."
      "admin.import.wave.modal.price_mode" => "Preisanpassung"
      "admin.import.wave.modal.price_modes.amount" => "Fixer Betrag"
      "admin.import.wave.modal.price_modes.percent" => "Prozent"
      "admin.import.wave.modal.price_value" => "Preisanpassungswert"
      "admin.import.wave.modal.remove_rule" => "Regel entfernen"
      "admin.import.wave.modal.replace_placeholder" => "Ersetzen durch"
      "admin.import.wave.modal.search_placeholder" => "Suchen nach"
      "admin.import.wave.modal.search_replace" => "Suchen/Ersetzen-Regeln"
      "admin.import.wave.modal.search_replace_help" => "Wird auf Produktname, Beschreibung, Hersteller und Label angewendet."
      "admin.import.wave.modal.skip_without_description" => "Produkte ohne Beschreibung überspringen"
      "admin.import.wave.modal.skip_without_image" => "Produkte ohne Bild überspringen"
      "admin.import.wave.modal.start" => "Wave-Crawler starten"
      "admin.import.wave.modal.start_url" => "Start-Kategorie-URL"
      "admin.import.wave.modal.start_url_help" => "Von dieser Wave-Kategorieseite startet die Produkterfassung."
      "admin.import.wave.modal.title" => "Wave-Crawler starten"
      "admin.import.wave.modal.yes_import" => "Ja, anwenden"
      "admin.import.wave.modal.yes_skip" => "Ja, überspringen"
      "admin.legacy.blog.actions.delete_confirm" => "Möchten Sie den Blogbeitrag "%title%" wirklich löschen?"
      "admin.legacy.blog.errors.not_found" => "Blogbeitrag nicht gefunden."
      "admin.legacy.blog.form.actions.save" => "Beitrag speichern"
      "admin.legacy.blog.form.actions.show_history" => "Historie anzeigen"
      "admin.legacy.blog.form.fields.active" => "Aktiv?"
      "admin.legacy.blog.form.fields.author" => "Autor"
      "admin.legacy.blog.form.fields.author_placeholder" => "Autor auswählen"
      "admin.legacy.blog.form.fields.categories" => "Kategorien"
      "admin.legacy.blog.form.fields.content" => "Inhalt"
      "admin.legacy.blog.form.fields.current_image" => "Aktuelles Bild"
      "admin.legacy.blog.form.fields.image" => "Bild"
      "admin.legacy.blog.form.fields.image_placeholder" => "Bild auswählen"
      "admin.legacy.blog.form.fields.published_at" => "Veröffentlichungsdatum"
      "admin.legacy.blog.form.fields.title" => "Titel"
      "admin.legacy.blog.form.titles.edit" => "Blogbeitrag bearbeiten"
      "admin.legacy.blog.form.titles.new" => "Blogbeitrag anlegen"
      "admin.legacy.blog.form.validation.image_format" => "Bitte ein JPG- oder PNG-Bild verwenden."
      "admin.legacy.blog.modal.cancel" => "Abbrechen"
      "admin.legacy.blog.modal.confirm" => "Löschen"
      "admin.legacy.blog.modal.default_name" => "diesen Blogbeitrag"
      "admin.legacy.blog.modal.title" => "Blogbeitrag löschen"
      "admin.legacy.blog.notifications.created" => "Blogbeitrag wurde angelegt."
      "admin.legacy.blog.notifications.updated" => "Blogbeitrag wurde gespeichert."
      "admin.legacy.blog.page_subtitle" => "Verwalte Blogbeiträge, Veröffentlichungsdaten und Sichtbarkeit."
      "admin.legacy.blog.page_title" => "Blog"
      "admin.legacy.blog.table.created" => "Erstellt"
      "admin.legacy.blog.table.delete" => "Löschen"
      "admin.legacy.blog.table.edit" => "Bearbeiten"
      "admin.legacy.blog.table.preview" => "Vorschau"
      "admin.legacy.blog.table.published_at" => "Veröffentlichungsdatum"
      "admin.legacy.blog.table.status" => "Status"
      "admin.legacy.blog.table.title" => "Blog-Liste"
      "admin.legacy.blog.table.title_column" => "Titel"
      "admin.legacy.categories.actions.new" => "Neue Kategorie"
      "admin.legacy.categories.bulk.hint" => "Wähle zuerst ein oder mehrere Elemente aus."
      "admin.legacy.categories.bulk.validation" => "Bitte wähle mindestens eine Kategorie für die Gruppenaktion aus."
      "admin.legacy.categories.errors.not_found" => "Kategorie nicht gefunden."
      "admin.legacy.categories.form.actions.back_to_list" => "Zurück zur Kategorienliste"
      "admin.legacy.categories.form.actions.save" => "Kategorie speichern"
      "admin.legacy.categories.form.fields.name" => "Name"
      "admin.legacy.categories.form.fields.parent" => "Übergeordnete Kategorie"
      "admin.legacy.categories.form.panel_title" => "Kategorie-Daten"
      "admin.legacy.categories.form.subtitle" => "Pflege Name, Struktur und Sichtbarkeit deiner Blog-Kategorie in einer klaren Formularansicht."
      "admin.legacy.categories.form.titles.edit" => "Blog-Kategorie bearbeiten"
      "admin.legacy.categories.form.titles.new" => "Blog-Kategorie anlegen"
      "admin.legacy.categories.list_count" => "%count% Einträge"
      "admin.legacy.categories.modal.cancel" => "Abbrechen"
      "admin.legacy.categories.modal.confirm" => "Löschen"
      "admin.legacy.categories.modal.default_name" => "diese Kategorie"
      "admin.legacy.categories.modal.delete_confirm" => "Möchtest du die Kategorie "%name%" wirklich löschen?"
      "admin.legacy.categories.modal.title" => "Kategorie löschen"
      "admin.legacy.categories.notifications.created" => "Kategorie wurde angelegt."
      "admin.legacy.categories.notifications.updated" => "Kategorie wurde gespeichert."
      "admin.legacy.categories.page_subtitle" => "Blog-Kategorien strukturiert verwalten und die Sichtbarkeit steuern."
      "admin.legacy.categories.page_title" => "Kategorien"
      "admin.legacy.categories.panel_title" => "Kategorienliste"
      "admin.legacy.categories.table.empty" => "Keine Kategorien vorhanden."
      "admin.legacy.categories.table.name" => "Name"
      "admin.legacy.categories.table.parent" => "Sub-Kategorie von"
      "admin.legacy.faq.actions.new" => "Neue FAQ"
      "admin.legacy.faq.bulk.hint" => "Wähle zuerst ein oder mehrere FAQ-Einträge aus."
      "admin.legacy.faq.bulk.validation" => "Bitte wähle mindestens einen FAQ-Eintrag für die Gruppenaktion aus."
      "admin.legacy.faq.form.fields.answer" => "Antwort"
      "admin.legacy.faq.form.fields.question" => "Frage"
      "admin.legacy.faq.form.panel_title" => "FAQ-Inhalt"
      "admin.legacy.faq.form.subtitle" => "Verwalte Frage und Antwort in einer modernen Eingabemaske für deine Wissensdatenbank."
      "admin.legacy.faq.form.titles.edit" => "FAQ bearbeiten"
      "admin.legacy.faq.form.titles.new" => "Neue FAQ"
      "admin.legacy.faq.list_count" => "%count% Einträge"
      "admin.legacy.faq.modal.cancel" => "Abbrechen"
      "admin.legacy.faq.modal.confirm" => "Löschen"
      "admin.legacy.faq.modal.default_name" => "diesen Eintrag"
      "admin.legacy.faq.modal.delete_confirm" => "Möchtest du den FAQ-Eintrag "%name%" wirklich löschen?"
      "admin.legacy.faq.modal.title" => "FAQ-Eintrag löschen"
      "admin.legacy.faq.notifications.created" => "FAQ wurde angelegt."
      "admin.legacy.faq.notifications.updated" => "FAQ wurde gespeichert."
      "admin.legacy.faq.page_subtitle" => "Fragen und Antworten strukturiert pflegen und den Veröffentlichungsstatus steuern."
      "admin.legacy.faq.page_title" => "FAQ"
      "admin.legacy.faq.panel_title" => "FAQ-Liste"
      "admin.legacy.faq.table.answer" => "Antwort"
      "admin.legacy.faq.table.empty" => "Keine FAQ-Einträge vorhanden."
      "admin.legacy.faq.table.question" => "Frage"
      "admin.legacy.general.help_title" => "Hilfe zu diesem Modul"
      "admin.legacy.general.notifications.initialized" => "Allgemeine Einstellungen wurden initial angelegt."
      "admin.legacy.general.notifications.saved" => "Allgemeine Einstellungen wurden gespeichert."
      "admin.legacy.general.page_title" => "Allgemeine Einstellungen"
      "admin.legacy.general.section_title" => "Allgemeine Einstellungen"
      "admin.legacy.shop_categories.actions.delete_now" => "Jetzt löschen"
      "admin.legacy.shop_categories.actions.new" => "Neue Kategorie"
      "admin.legacy.shop_categories.bulk.cancel" => "Abbrechen"
      "admin.legacy.shop_categories.bulk.delete_confirm" => "Möchtest du die ausgewählten Kategorien wirklich löschen? Zugehörige Produkte werden danach keiner Kategorie mehr zugeordnet."
      "admin.legacy.shop_categories.bulk.delete_selected" => "Ausgewählte löschen"
      "admin.legacy.shop_categories.bulk.description" => "Diese Aktion entfernt die ausgewählten Kategorien."
      "admin.legacy.shop_categories.bulk.selected_count" => "%count% ausgewählt"
      "admin.legacy.shop_categories.modal.cancel" => "Abbrechen"
      "admin.legacy.shop_categories.modal.delete_confirm" => "Möchtest du die Kategorie "%name%" wirklich löschen?"
      "admin.legacy.shop_categories.modal.title" => "Löschen bestätigen"
      "admin.legacy.shop_categories.page_subtitle" => "Verwalte Struktur, SEO und Zuordnung deines Shop-Katalogs."
      "admin.legacy.shop_categories.page_title" => "Kategorien"
      "admin.legacy.shop_categories.panel_title" => "Kategorienliste"
      "admin.legacy.shop_categories.table.actions" => "Aktionen"
      "admin.legacy.shop_categories.table.meta_description" => "Meta Description"
      "admin.legacy.shop_categories.table.meta_title" => "Meta Title"
      "admin.legacy.shop_categories.table.name" => "Name"
      "admin.legacy.shop_categories.table.parent" => "Übergeordnet"
      "admin.legacy.shop_categories.table.select_all" => "Alle auswählen"
      "admin.legacy.shop_categories.table.slug" => "Slug"
      "admin.mail_templates.actions.edit" => "Bearbeiten"
      "admin.mail_templates.categories.accounts" => "Kontomails"
      "admin.mail_templates.categories.operations" => "Interne Benachrichtigungen"
      "admin.mail_templates.categories.orders" => "Bestellmails"
      "admin.mail_templates.categories.returns" => "Retouren"
      "admin.mail_templates.errors.not_found" => "Die angeforderte Mailvorlage wurde nicht gefunden."
      "admin.mail_templates.form.actions.back" => "Zur Übersicht"
      "admin.mail_templates.form.actions.cancel" => "Abbrechen"
      "admin.mail_templates.form.actions.help" => "Hilfe"
      "admin.mail_templates.form.actions.preview" => "Vorschau rendern"
      "admin.mail_templates.form.actions.reset" => "Auf Standard zurücksetzen"
      "admin.mail_templates.form.actions.reset_confirm" => "Override entfernen"
      "admin.mail_templates.form.actions.save" => "Override speichern"
      "admin.mail_templates.form.actions.send_test" => "Testmail senden"
      "admin.mail_templates.form.actions.subscriptions" => "Betreiber-Abos"
      "admin.mail_templates.form.flash.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
      "admin.mail_templates.form.flash.invalid_test_recipient" => "Bitte eine gültige E-Mail-Adresse für den Testversand angeben."
      "admin.mail_templates.form.flash.preview_rendered" => "Die Vorschau wurde erfolgreich aktualisiert."
      "admin.mail_templates.form.flash.reset" => "Der Override wurde entfernt. Der versionierte Standard ist wieder aktiv."
      "admin.mail_templates.form.flash.saved" => "Die Mailvorlage wurde gespeichert."
      "admin.mail_templates.form.flash.saved_as_default" => "Die Eingabe entspricht dem Standard. Ein vorhandener Override wurde entfernt."
      "admin.mail_templates.form.flash.test_sent" => "Die Testmail wurde an %email% versendet."
      "admin.mail_templates.form.help.html" => "Der HTML-Teil ist Pflicht und wird automatisch in das zentrale Mail-Layout eingebettet."
      "admin.mail_templates.form.help.subject" => "Twig-Ausdrücke sind erlaubt, zum Beispiel {{ orderNumber }} oder {{ shopName }}."
      "admin.mail_templates.form.help.test" => "Der Testversand verwendet den Beispiel-Kontext aus der rechten Spalte."
      "admin.mail_templates.form.help.text" => "Optional. Wenn das Feld leer bleibt, wird der Textteil automatisch aus dem HTML-Inhalt erzeugt."
      "admin.mail_templates.form.labels.category" => "Bereich"
      "admin.mail_templates.form.labels.description" => "Beschreibung"
      "admin.mail_templates.form.labels.html" => "HTML-Inhalt"
      "admin.mail_templates.form.labels.html_default" => "Standard-HTML"
      "admin.mail_templates.form.labels.locale" => "Sprache"
      "admin.mail_templates.form.labels.status" => "Status"
      "admin.mail_templates.form.labels.subject" => "Betreff-Template"
      "admin.mail_templates.form.labels.subject_default" => "Standard-Betreff"
      "admin.mail_templates.form.labels.template_key" => "Template-Key"
      "admin.mail_templates.form.labels.test_recipient" => "Testempfänger"
      "admin.mail_templates.form.labels.text" => "Text-Inhalt"
      "admin.mail_templates.form.labels.text_default" => "Standard-Text"
      "admin.mail_templates.form.labels.updated_at" => "Letzte Anpassung"
      "admin.mail_templates.form.labels.variable" => "Variable"
      "admin.mail_templates.form.modals.reset_body" => "Der gespeicherte Override für %template% (%locale%) wird gelöscht. Danach ist wieder der versionierte Standard aktiv."
      "admin.mail_templates.form.modals.reset_title" => "Override entfernen?"
      "admin.mail_templates.form.page_title" => "Mailvorlage bearbeiten"
      "admin.mail_templates.form.panels.defaults" => "Versionierter Standard"
      "admin.mail_templates.form.panels.editor" => "Editor"
      "admin.mail_templates.form.panels.metadata" => "Vorlageninfo"
      "admin.mail_templates.form.panels.preview" => "Live-Vorschau"
      "admin.mail_templates.form.panels.sample_context" => "Beispiel-Kontext"
      "admin.mail_templates.form.panels.variables" => "Verfügbare Variablen"
      "admin.mail_templates.form.preview.html" => "HTML-Vorschau"
      "admin.mail_templates.form.preview.subject" => "Gerenderter Betreff"
      "admin.mail_templates.form.preview.text" => "Text-Vorschau"
      "admin.mail_templates.form.preview.unavailable" => "Die Vorschau konnte nicht erzeugt werden. Bitte Eingaben und Twig-Syntax prüfen."
      "admin.mail_templates.form.values.default_active" => "Versionierter Standard aktiv"
      "admin.mail_templates.help_index.card_subtitle" => "Vorlagen, Vorschau, Testversand und Betreiber-Abos zentral pflegen"
      "admin.mail_templates.help_index.card_title" => "Mailvorlagen"
      "admin.mail_templates.help.actions.back" => "Zurück zur Übersicht"
      "admin.mail_templates.help.actions.module" => "Zum Modul"
      "admin.mail_templates.help.navigation.items_html" => """
        <li class="mb-1"><a href="#overview"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#workflow"><i class="fa fa-pencil"></i> Bearbeitungsablauf</a></li>\n
        <li class="mb-1"><a href="#variables"><i class="fa fa-code"></i> Variablen & Twig</a></li>\n
        <li class="mb-1"><a href="#subscriptions"><i class="fa fa-bell"></i> Betreiber-Abos</a></li>\n
        <li class="mb-1"><a href="#permissions"><i class="fa fa-lock"></i> Rollen & Rechte</a></li>
        """
      "admin.mail_templates.help.navigation.title" => "Navigation"
      "admin.mail_templates.help.page_title" => "Hilfe: Mailvorlagen"
      "admin.mail_templates.help.sections.overview.body_html" => """
        <p>Das Modul <code>/admin/mail-templates</code> bündelt alle editierbaren Systemmails an einer Stelle. Jede Vorlage besitzt einen versionierten Standard aus dem Code und optional einen sprachspezifischen Override in der Datenbank.</p>\n
        <div class="alert alert-info"><i class="fa fa-lightbulb-o"></i> Änderungen an Betreff, HTML und Text werden sofort für neue Bestell-, Konto-, Retouren- und interne Betreiber-Mails verwendet, ohne dass der Code selbst angepasst werden muss.</div>\n
        <div class="alert alert-success"><i class="fa fa-history"></i> Wenn ein Override entfernt wird, fällt das System automatisch wieder auf den versionierten Standard zurück.</div>
        """
      "admin.mail_templates.help.sections.overview.title" => "Überblick"
      "admin.mail_templates.help.sections.permissions.body_html" => """
        <div class="alert alert-info"><i class="fa fa-lock"></i> Für dieses Modul gelten die Rollen <code>ROLE_ADMIN_MAIL_TEMPLATE_LIST</code>, <code>ROLE_ADMIN_MAIL_TEMPLATE_EDIT</code> und <code>ROLE_ADMIN_MAIL_TEMPLATE_DELETE</code>.</div>\n
        <ul>\n
          <li><strong>LIST:</strong> Zugriff auf Übersicht und Navigation.</li>\n
          <li><strong>EDIT:</strong> Bearbeiten, Vorschau, Testversand und Pflege der Betreiber-Abos.</li>\n
          <li><strong>DELETE:</strong> Zurücksetzen eines Overrides auf den Standard.</li>\n
        </ul>
        """
      "admin.mail_templates.help.sections.permissions.title" => "Rollen & Rechte"
      "admin.mail_templates.help.sections.subscriptions.body_html" => """
        <p>Über <code>/admin/mail-templates/subscriptions</code> steuern Sie, welche internen Ereignisse zusätzlich an aktive Backend-Admins zugestellt werden.</p>\n
        <div class="alert alert-info"><i class="fa fa-bell"></i> Die Standard-Admin-Adresse aus den Systemeinstellungen bleibt als Fallback aktiv. Persönliche Abos ergänzen den Verteiler nur um weitere Empfänger.</div>\n
        <ul>\n
          <li>Interne Bestellbenachrichtigungen</li>\n
          <li>Neue Shop-Registrierungen und Verifizierungen</li>\n
          <li>Neue Kontaktanfragen und täglicher Kontaktformular-Report</li>\n
          <li>Neue Support-Tickets aus dem Kundenkonto</li>\n
          <li>Neue B2B-Anfragen</li>\n
          <li>Neue Produktbewertungen und Produktfragen</li>\n
          <li>Neue RMA-Anfragen</li>\n
        </ul>
        """
      "admin.mail_templates.help.sections.subscriptions.title" => "Betreiber-Abos"
      "admin.mail_templates.help.sections.variables.body_html" => """
        <p>Im Editor stehen sowohl globale Variablen wie <code>shopName</code> und <code>supportEmail</code> als auch vorlagenspezifische Variablen wie <code>orderNumber</code>, <code>statusLabel</code> oder <code>rmaNumber</code> zur Verfügung.</p>\n
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Beispiel</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>{{ customerName }}</code></td><td>Gibt den Kundennamen direkt aus.</td></tr>\n
            <tr><td><code>{% if hasDiscount %}...{% endif %}</code></td><td>Bedingte Bereiche können mit Twig flexibel ein- und ausgeblendet werden.</td></tr>\n
            <tr><td><code>{{ totalFormatted }}</code></td><td>Formatierten Geldwert inklusive Währung ausgeben.</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.mail_templates.help.sections.variables.title" => "Variablen & Twig"
      "admin.mail_templates.help.sections.workflow.body_html" => """
        <ol>\n
          <li>Vorlage und Sprache in der Übersicht auswählen.</li>\n
          <li>Betreff, HTML und optionalen Text anpassen.</li>\n
          <li>Über <strong>Vorschau rendern</strong> das Ergebnis mit Beispiel-Daten prüfen.</li>\n
          <li>Optional eine Testmail an eine interne Adresse senden.</li>\n
          <li>Mit <strong>Override speichern</strong> den Datenbank-Override aktivieren.</li>\n
        </ol>\n
        <div class="alert alert-warning"><i class="fa fa-exclamation-triangle"></i> Ein leerer oder syntaktisch fehlerhafter Twig-Ausdruck blockiert die Vorschau und den Speichervorgang, damit keine defekten Mails produktiv versendet werden.</div>
        """
      "admin.mail_templates.help.sections.workflow.title" => "Bearbeitungsablauf"
      "admin.mail_templates.index.filters.all_locales" => "Alle Sprachen"
      "admin.mail_templates.index.filters.all_status" => "Alle Status"
      "admin.mail_templates.index.filters.apply" => "Filtern"
      "admin.mail_templates.index.filters.locale" => "Sprache"
      "admin.mail_templates.index.filters.reset" => "Zurücksetzen"
      "admin.mail_templates.index.filters.search" => "Suche"
      "admin.mail_templates.index.filters.search_placeholder" => "Nach Key, Titel, Betreff oder Beschreibung suchen"
      "admin.mail_templates.index.filters.status" => "Status"
      "admin.mail_templates.index.list.default_updated" => "Versionierter Standard"
      "admin.mail_templates.index.list.empty" => "Für die aktuelle Filterung wurden keine Mailvorlagen gefunden."
      "admin.mail_templates.index.list.headers.actions" => "Aktionen"
      "admin.mail_templates.index.list.headers.category" => "Bereich"
      "admin.mail_templates.index.list.headers.locale" => "Sprache"
      "admin.mail_templates.index.list.headers.status" => "Status"
      "admin.mail_templates.index.list.headers.subject" => "Standard-Betreff"
      "admin.mail_templates.index.list.headers.template" => "Vorlage"
      "admin.mail_templates.index.list.headers.updated" => "Zuletzt geändert"
      "admin.mail_templates.index.list.title" => "Verfügbare Mailvorlagen"
      "admin.mail_templates.index.list.variable_count" => "Variablen: %count%"
      "admin.mail_templates.index.meta_title" => "Mailvorlagen"
      "admin.mail_templates.index.page_subtitle" => "Versionierte Standardmails mit editierbaren Overrides pro Sprache und Anwendungsfall."
      "admin.mail_templates.index.page_title" => "Mailvorlagen"
      "admin.mail_templates.index.summary.categories" => "Bereiche"
      "admin.mail_templates.index.summary.defaults" => "Standards"
      "admin.mail_templates.index.summary.overridden" => "Overrides"
      "admin.mail_templates.index.summary.total" => "Vorlagen"
      "admin.mail_templates.index.toolbar.help" => "Hilfe"
      "admin.mail_templates.index.toolbar.primary" => "Vorlage öffnen"
      "admin.mail_templates.index.toolbar.subscriptions" => "Benachrichtigungen"
      "admin.mail_templates.locales.de" => "Deutsch"
      "admin.mail_templates.locales.en" => "Englisch"
      "admin.mail_templates.status.default" => "Standard"
      "admin.mail_templates.status.overridden" => "Override aktiv"
      "admin.mail_templates.subscriptions.actions.save" => "Abos speichern"
      "admin.mail_templates.subscriptions.empty" => "Es wurden keine aktiven Admin-Benutzer oder internen Mail-Ereignisse für die Abo-Verwaltung gefunden."
      "admin.mail_templates.subscriptions.flash.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
      "admin.mail_templates.subscriptions.flash.saved" => "Die Betreiber-Abos wurden gespeichert."
      "admin.mail_templates.subscriptions.headers.active" => "Aktive Abos"
      "admin.mail_templates.subscriptions.headers.user" => "Admin"
      "admin.mail_templates.subscriptions.intro" => "Die zentrale Admin-Adresse aus den Systemeinstellungen bleibt als Fallback aktiv. Persönliche Abos erweitern den Verteiler um weitere Betreiber."
      "admin.mail_templates.subscriptions.meta_title" => "Mail-Benachrichtigungen"
      "admin.mail_templates.subscriptions.page_subtitle" => "Steuert, welche internen Mail-Ereignisse zusätzlich an aktive Backend-Admins verteilt werden."
      "admin.mail_templates.subscriptions.page_title" => "Betreiber-Benachrichtigungen"
      "admin.mail_templates.subscriptions.panels.matrix" => "Abo-Matrix"
      "admin.mail_templates.subscriptions.summary.admins" => "Admin-Benutzer"
      "admin.mail_templates.subscriptions.summary.enabled_links" => "Aktive Abos"
      "admin.mail_templates.subscriptions.summary.subscribed_admins" => "Admins mit Abo"
      "admin.mail_templates.subscriptions.summary.templates" => "Interne Events"
      "admin.mail_templates.subscriptions.toolbar.back" => "Zur Vorlagenübersicht"
      "admin.mail_templates.subscriptions.toolbar.help" => "Hilfe"
      "admin.mail_templates.templates.admin_order_notification.description" => "Benachrichtigung an das interne Admin-/Operations-Postfach."
      "admin.mail_templates.templates.admin_order_notification.label" => "Interne Bestellbenachrichtigung"
      "admin.mail_templates.templates.admin_shop_registration_notification.description" => "Betreiber-Mail bei neu angelegten Shop-Konten."
      "admin.mail_templates.templates.admin_shop_registration_notification.label" => "Interne Registrierungsbenachrichtigung"
      "admin.mail_templates.templates.admin_shop_registration_verified.description" => "Betreiber-Mail, sobald ein Shop-Konto per Double-Opt-In aktiviert wurde."
      "admin.mail_templates.templates.admin_shop_registration_verified.label" => "Interne Verifizierungsbestätigung"
      "admin.mail_templates.templates.b2b_quote_request_submitted.description" => "Betreiber-Mail bei neu eingereichter oder aktualisierter B2B-Anfrage."
      "admin.mail_templates.templates.b2b_quote_request_submitted.label" => "Neue B2B-Anfrage"
      "admin.mail_templates.templates.contact_daily_report.description" => "Tägliche interne Zusammenfassung neuer Kontaktanfragen."
      "admin.mail_templates.templates.contact_daily_report.label" => "Kontaktformular-Report"
      "admin.mail_templates.templates.contact_form_submission.description" => "Sofortige Betreiber-Mail bei neuer Kontaktformular-Anfrage."
      "admin.mail_templates.templates.contact_form_submission.label" => "Neue Kontaktanfrage"
      "admin.mail_templates.templates.order_confirmation.description" => "Kundenmail direkt nach erfolgreichem Checkout."
      "admin.mail_templates.templates.order_confirmation.label" => "Bestellbestätigung"
      "admin.mail_templates.templates.order_status_update.description" => "Flexible Statusmail für Bestellungen."
      "admin.mail_templates.templates.order_status_update.label" => "Bestellstatus-Update"
      "admin.mail_templates.templates.password_reset_request.description" => "Systemmail für Reset-Links und Passwort-Neuvergabe."
      "admin.mail_templates.templates.password_reset_request.label" => "Passwort zurücksetzen"
      "admin.mail_templates.templates.pickup_ready_notification.description" => "Kundenmail, sobald eine Abholbestellung im Geschäft bereitliegt."
      "admin.mail_templates.templates.pickup_ready_notification.label" => "Bereit zur Abholung"
      "admin.mail_templates.templates.product_question_submitted.description" => "Betreiber-Mail bei neuer Produktfrage zur Moderation."
      "admin.mail_templates.templates.product_question_submitted.label" => "Neue Produktfrage"
      "admin.mail_templates.templates.review_submitted.description" => "Betreiber-Mail bei neuer Bewertung zur Moderation."
      "admin.mail_templates.templates.review_submitted.label" => "Neue Produktbewertung"
      "admin.mail_templates.templates.rma_confirmation.description" => "Eingangsbestätigung für neu angelegte Retourenanträge."
      "admin.mail_templates.templates.rma_confirmation.label" => "Retourenbestätigung"
      "admin.mail_templates.templates.rma_request_created.description" => "Betreiber-Mail bei neu eingegangener RMA-Anfrage."
      "admin.mail_templates.templates.rma_request_created.label" => "Neue Retoure"
      "admin.mail_templates.templates.rma_status_update.description" => "Status- und Erstattungsupdates für bestehende Retouren."
      "admin.mail_templates.templates.rma_status_update.label" => "Retourenstatus-Update"
      "admin.mail_templates.templates.shipping_notification.description" => "Update an Kunden, sobald die Bestellung versandbereit ist."
      "admin.mail_templates.templates.shipping_notification.label" => "Versandbenachrichtigung"
      "admin.mail_templates.templates.shop_email_verification.description" => "Double-Opt-In-Mail zur Aktivierung neuer Shop-Konten."
      "admin.mail_templates.templates.shop_email_verification.label" => "E-Mail-Bestätigung"
      "admin.mail_templates.templates.shop_registration_confirmation.description" => "Willkommens- und Freischaltmail nach erfolgreicher E-Mail-Bestätigung."
      "admin.mail_templates.templates.shop_registration_confirmation.label" => "Registrierungsbestätigung"
      "admin.mail_templates.templates.support_ticket_created.description" => "Betreiber-Mail bei neuem Support-Ticket aus dem Shop-Konto."
      "admin.mail_templates.templates.support_ticket_created.label" => "Neues Support-Ticket"
      "admin.mail_templates.variables.author_name" => "Name des Autors einer Bewertung oder Produktfrage."
      "admin.mail_templates.variables.company_name" => "Firmenname einer B2B-Anfrage."
      "admin.mail_templates.variables.contact_name" => "Name des B2B-Ansprechpartners."
      "admin.mail_templates.variables.contact_request_count" => "Anzahl neuer Kontaktanfragen im Reportzeitraum."
      "admin.mail_templates.variables.current_year" => "Aktuelles Jahr für Footer und Copyright."
      "admin.mail_templates.variables.customer_email" => "E-Mail-Adresse des Kunden."
      "admin.mail_templates.variables.customer_name" => "Name des Kunden oder des Ansprechpartners."
      "admin.mail_templates.variables.customer_phone" => "Telefonnummer des Kunden oder Ansprechpartners."
      "admin.mail_templates.variables.decided_at_formatted" => "Formatierter Zeitpunkt der Entscheidung."
      "admin.mail_templates.variables.discount_formatted" => "Formatierter Rabattbetrag inklusive Währung."
      "admin.mail_templates.variables.expires_in_hours" => "Gültigkeitsdauer des Reset-Links in Stunden."
      "admin.mail_templates.variables.fulfillment_type_label" => "Lesbare Lieferart, also Versand oder Abholung im Geschäft."
      "admin.mail_templates.variables.has_decided_at" => "Boolescher Schalter, ob eine Entscheidung vorliegt."
      "admin.mail_templates.variables.has_discount" => "Boolescher Schalter, ob ein Rabatt vorhanden ist."
      "admin.mail_templates.variables.has_refund_amount" => "Boolescher Schalter, ob ein Erstattungsbetrag vorhanden ist."
      "admin.mail_templates.variables.has_return_tracking_code" => "Boolescher Schalter, ob ein Tracking-Code vorhanden ist."
      "admin.mail_templates.variables.is_pickup" => "Boolescher Schalter, ob es sich um eine Abholbestellung handelt."
      "admin.mail_templates.variables.login_url" => "Direkter Login-Link zum Shop-Konto."
      "admin.mail_templates.variables.message_body" => "Vollständiger Nachrichtentext einer Betreiber-Anfrage."
      "admin.mail_templates.variables.order_number" => "Bestellnummer bzw. Checkout-Referenz."
      "admin.mail_templates.variables.order_reference" => "Referenz auf eine zugehörige Bestellung oder Anfrage."
      "admin.mail_templates.variables.payment" => "Gewählte Zahlungsart."
      "admin.mail_templates.variables.pickup_status_label" => "Lesbarer Abholstatus der Bestellung."
      "admin.mail_templates.variables.product_name" => "Betroffenes Produkt."
      "admin.mail_templates.variables.quantity" => "Anzahl der betroffenen Artikel."
      "admin.mail_templates.variables.question_body" => "Fragetext einer Produktfrage."
      "admin.mail_templates.variables.reason_label" => "Lesbarer Retourengrund."
      "admin.mail_templates.variables.recipient_name" => "Name des eigentlichen Empfängers der Mail."
      "admin.mail_templates.variables.refund_amount_formatted" => "Formatierter Erstattungsbetrag."
      "admin.mail_templates.variables.registered_at_formatted" => "Formatierter Registrierungszeitpunkt eines neuen Shop-Kontos."
      "admin.mail_templates.variables.report_date_label" => "Datums- oder Zeitraumlabel des Reports."
      "admin.mail_templates.variables.requested_at_formatted" => "Formatierter Zeitpunkt des Antragseingangs."
      "admin.mail_templates.variables.requested_group_name" => "Angefragte B2B-Kundengruppe."
      "admin.mail_templates.variables.reset_url" => "Kompletter Reset-Link inklusive Token."
      "admin.mail_templates.variables.return_tracking_code" => "Tracking-Code einer Rücksendung."
      "admin.mail_templates.variables.review_body" => "Inhalt einer Produktbewertung."
      "admin.mail_templates.variables.review_rating" => "Sternebewertung einer Produktbewertung."
      "admin.mail_templates.variables.review_title" => "Titel einer Produktbewertung."
      "admin.mail_templates.variables.rma_number" => "Retouren- bzw. RMA-Nummer."
      "admin.mail_templates.variables.sender_email" => "E-Mail-Adresse des Absenders einer Kontaktanfrage."
      "admin.mail_templates.variables.sender_name" => "Name des Absenders einer Kontaktanfrage."
      "admin.mail_templates.variables.sender_phone" => "Telefonnummer des Absenders einer Kontaktanfrage."
      "admin.mail_templates.variables.shipping_cost_formatted" => "Formatierte Versandkosten inklusive Währung."
      "admin.mail_templates.variables.shipping_method" => "Gewählte Versandart."
      "admin.mail_templates.variables.shop_name" => "Anzeigename des Shops aus den Systemeinstellungen."
      "admin.mail_templates.variables.status_label" => "Lesbarer Status für Bestellung oder Retoure."
      "admin.mail_templates.variables.submitted_at_formatted" => "Formatierter Einreichungszeitpunkt einer Betreiber-Anfrage."
      "admin.mail_templates.variables.subtotal_formatted" => "Formatierte Zwischensumme vor Versand und Rabatten."
      "admin.mail_templates.variables.support_email" => "Standard-Absender- bzw. Support-E-Mail aus den Systemeinstellungen."
      "admin.mail_templates.variables.ticket_source_label" => "Lesbare Herkunft eines Support-Tickets."
      "admin.mail_templates.variables.ticket_subject" => "Betreff eines Support-Tickets."
      "admin.mail_templates.variables.total_formatted" => "Formatierte Gesamtsumme inklusive Währung."
      "admin.mail_templates.variables.verification_url" => "Kompletter Double-Opt-In-Link zur E-Mail-Bestätigung."
      "admin.mail_templates.variables.verified_at_formatted" => "Formatierter Zeitpunkt der Konto-Bestätigung."
      "admin.media.actions.delete" => "Löschen"
      "admin.media.actions.edit" => "Bearbeiten"
      "admin.media.actions.filter" => "Filtern"
      "admin.media.actions.help" => "Hilfe"
      "admin.media.actions.open" => "Öffnen"
      "admin.media.actions.open_usage" => "Zum Eintrag"
      "admin.media.actions.save" => "Speichern"
      "admin.media.actions.scan" => "Verzeichnisse scannen"
      "admin.media.actions.upload" => "Hochladen"
      "admin.media.delete.blocked" => "Löschen ist gesperrt, weil diese Datei noch an %count% Stelle(n) verwendet wird."
      "admin.media.delete.modal_body" => "Soll die Datei "%file%" wirklich dauerhaft gelöscht werden?"
      "admin.media.delete.modal_title" => "Medium löschen"
      "admin.media.delete.title" => "Löschen"
      "admin.media.directories.images" => "Allgemeine Bilder"
      "admin.media.directories.page_builder_products" => "Page-Builder Produktbilder"
      "admin.media.directories.pages" => "Page-Builder Seitenbilder"
      "admin.media.directories.products" => "Produktbilder"
      "admin.media.directories.shop" => "Shop-Dateien"
      "admin.media.directories.sliders" => "Sliderbilder"
      "admin.media.directories.themes" => "Theme-Assets"
      "admin.media.edit.meta_title" => "Medium bearbeiten: %file%"
      "admin.media.edit.metadata" => "Metadaten & SEO"
      "admin.media.edit.page_title" => "Medium bearbeiten"
      "admin.media.edit.preview" => "Vorschau & technische Daten"
      "admin.media.filters.all_directories" => "Alle Verzeichnisse"
      "admin.media.filters.all_types" => "Alle Typen"
      "admin.media.filters.all_usage" => "Alle Verwendungen"
      "admin.media.filters.files" => "Nur Dateien"
      "admin.media.filters.images" => "Nur Bilder"
      "admin.media.filters.search_placeholder" => "Dateiname, Titel, Alt-Text oder Beschreibung suchen"
      "admin.media.filters.title" => "Filter"
      "admin.media.filters.unused" => "Nur ungenutzte Medien"
      "admin.media.filters.used" => "Nur verwendete Medien"
      "admin.media.form.alt_help" => "Beschreibt den Bildinhalt für Barrierefreiheit, Suche und SEO. Für reine Dateien optional."
      "admin.media.form.alt_text" => "Alt-Text"
      "admin.media.form.description" => "Beschreibung / Lizenzhinweis"
      "admin.media.form.filename_help" => "Ohne Dateiendung eintragen. Beim Speichern wird der Name URL-freundlich normalisiert und bekannte Referenzen werden aktualisiert."
      "admin.media.form.seo_filename" => "SEO-Dateiname"
      "admin.media.form.title" => "Titel"
      "admin.media.index.empty" => "Keine Medien gefunden. Lade eine Datei hoch oder starte den Scan."
      "admin.media.index.list_title" => "Medienbibliothek"
      "admin.media.index.meta_title" => "Media Center"
      "admin.media.index.page_subtitle" => "Uploads zentral verwalten, SEO-Dateinamen pflegen und Bildverwendungen prüfen."
      "admin.media.index.page_title" => "Media Center"
      "admin.media.notifications.access_denied" => "Du hast keine Berechtigung für das Media Center."
      "admin.media.notifications.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
      "admin.media.notifications.deleted" => "Die Datei wurde gelöscht."
      "admin.media.notifications.renamed" => "Die Datei wurde in "%file%" umbenannt. Aktualisierte Referenzen: %references%."
      "admin.media.notifications.scan_finished" => "Scan abgeschlossen: %indexed% Datei(en) geprüft, %removed% veraltete Indexeinträge entfernt."
      "admin.media.notifications.updated" => "Die Medien-Metadaten wurden gespeichert."
      "admin.media.notifications.upload_missing" => "Bitte wähle eine Datei für den Upload aus."
      "admin.media.notifications.uploaded" => "Die Datei "%file%" wurde hochgeladen."
      "admin.media.summary.files" => "Dateien"
      "admin.media.summary.images" => "Bilder"
      "admin.media.summary.total" => "Gesamt"
      "admin.media.summary.unused" => "Ungenutzt"
      "admin.media.summary.used" => "Verwendet"
      "admin.media.table.actions" => "Aktionen"
      "admin.media.table.alt" => "Alt"
      "admin.media.table.dimensions" => "Abmessungen"
      "admin.media.table.directory" => "Verzeichnis"
      "admin.media.table.file" => "Datei"
      "admin.media.table.hash" => "SHA-256"
      "admin.media.table.mime" => "MIME-Typ"
      "admin.media.table.preview" => "Vorschau"
      "admin.media.table.size" => "Größe"
      "admin.media.table.updated" => "Aktualisiert"
      "admin.media.table.usage" => "Verwendung"
      "admin.media.upload.directory" => "Zielverzeichnis"
      "admin.media.upload.file" => "Datei"
      "admin.media.upload.filename" => "SEO-Dateiname optional"
      "admin.media.upload.filename_placeholder" => "z. B. gaming-pc-frontansicht"
      "admin.media.upload.title" => "Neue Datei hochladen"
      "admin.media.usage.empty" => "Dieses Medium wird aktuell in keinem bekannten Modul verwendet."
      "admin.media.usage.no" => "Nein"
      "admin.media.usage.title" => "Aktuelle Verwendung (%count%)"
      "admin.media.usage.types.blog" => "Blog"
      "admin.media.usage.types.page" => "Seite"
      "admin.media.usage.types.product" => "Produkt"
      "admin.media.usage.types.seo" => "SEO"
      "admin.media.usage.types.slider" => "Slider"
      "admin.media.usage.yes" => "Ja (%count%)"
      "admin.menu.footer.actions.new_page" => "Neue Footer-Seite anlegen"
      "admin.menu.footer.info" => "Footer-Menüpunkte können per Drag & Drop verschoben werden. Änderungen werden automatisch gespeichert."
      "admin.menu.footer.list_count" => "%count% Wurzeleinträge"
      "admin.menu.footer.list_title" => "Footer-Navigation"
      "admin.menu.footer.meta_title" => "Footer-Menüverwaltung"
      "admin.menu.footer.notifications.invalid_data" => "Ungültige Menüdaten."
      "admin.menu.footer.notifications.save_failed" => "Footer-Menü konnte nicht gespeichert werden."
      "admin.menu.footer.notifications.saved" => "Footer-Menü wurde aktualisiert."
      "admin.menu.footer.page_subtitle" => "Pflege die Footer-Navigation per Drag & Drop und bearbeite Seiten direkt aus dem Baum."
      "admin.menu.footer.page_title" => "Footer-Menü"
      "admin.menu.main.actions.new_page" => "Neue Seite anlegen"
      "admin.menu.main.info" => "Menüpunkte können per Drag & Drop verschoben werden. Änderungen werden automatisch gespeichert."
      "admin.menu.main.list_count" => "%count% Wurzeleinträge"
      "admin.menu.main.list_title" => "Navigation"
      "admin.menu.main.meta_title" => "Menüverwaltung"
      "admin.menu.main.notifications.invalid_data" => "Ungültige Menüdaten."
      "admin.menu.main.notifications.save_failed" => "Menü konnte nicht gespeichert werden."
      "admin.menu.main.notifications.saved" => "Menü wurde aktualisiert."
      "admin.menu.main.page_subtitle" => "Ordne die Header-Navigation per Drag & Drop und springe direkt in die Seitenbearbeitung."
      "admin.menu.main.page_title" => "Hauptmenü"
      "admin.menu.shared.actions.delete" => "Löschen"
      "admin.menu.shared.actions.edit" => "Bearbeiten"
      "admin.menu.shared.actions.help" => "CMS-Hilfe"
      "admin.menu.shared.page_delete_confirm" => "Seite "%name%" wirklich löschen?"
      "admin.menu.shop.actions.reset" => "Zurücksetzen"
      "admin.menu.shop.info" => "Kategorien per Drag & Drop sortieren. Änderungen werden automatisch gespeichert."
      "admin.menu.shop.list_count" => "%count% Wurzelkategorien"
      "admin.menu.shop.list_title" => "Kategoriebaum"
      "admin.menu.shop.meta_title" => "Shop-Menüverwaltung"
      "admin.menu.shop.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.menu.shop.notifications.invalid_data" => "Ungültige Daten."
      "admin.menu.shop.notifications.reset" => "Shop-Menü wurde zurückgesetzt."
      "admin.menu.shop.notifications.reset_confirm" => "Shop-Menü wirklich auf Standard zurücksetzen?"
      "admin.menu.shop.notifications.save_failed" => "Shop-Menü konnte nicht gespeichert werden."
      "admin.menu.shop.notifications.saved" => "Shop-Menü wurde aktualisiert."
      "admin.menu.shop.page_subtitle" => "Sortiere Kategorien für die Shop-Navigation per Drag & Drop."
      "admin.menu.shop.page_title" => "Shop-Menü"
      "admin.navigation.blog.menu" => "Blog"
      "admin.navigation.blog.new" => "Blogbeitrag anlegen"
      "admin.navigation.booking.apartments" => "Wohnungen"
      "admin.navigation.booking.bookings" => "Buchungen"
      "admin.navigation.booking.calendar" => "Kalender"
      "admin.navigation.booking.csv_import" => "CSV-Import"
      "admin.navigation.booking.menu" => "Buchungsplan"
      "admin.navigation.booking.room_mapping" => "Zimmertyp-Mapping"
      "admin.navigation.categories.blog_categories" => "Blog-Kategorien"
      "admin.navigation.categories.menu" => "Kategorien"
      "admin.navigation.common.activate_action" => "Aktivieren"
      "admin.navigation.common.active" => "Aktiv"
      "admin.navigation.common.back" => "Zurück"
      "admin.navigation.common.cancel" => "Abbrechen"
      "admin.navigation.common.close_alerts" => "Alle Hinweise schließen"
      "admin.navigation.common.confirm" => "Bestätigen"
      "admin.navigation.common.deactivate_action" => "Deaktivieren"
      "admin.navigation.common.delete" => "Löschen"
      "admin.navigation.common.delete_blocked" => "Dieser Eintrag kann nicht gelöscht werden."
      "admin.navigation.common.delete_confirm_generic" => "Möchten Sie diesen Eintrag wirklich löschen?"
      "admin.navigation.common.edit" => "Bearbeiten"
      "admin.navigation.common.error" => "Fehler"
      "admin.navigation.common.execute" => "Ausführen"
      "admin.navigation.common.fullscreen" => "Vollbild"
      "admin.navigation.common.group_action" => "Gruppenaktion"
      "admin.navigation.common.help" => "Hilfe"
      "admin.navigation.common.inactive" => "Inaktiv"
      "admin.navigation.common.info" => "Info"
      "admin.navigation.common.new" => "Neu anlegen"
      "admin.navigation.common.overview" => "Übersicht"
      "admin.navigation.common.save" => "Speichern"
      "admin.navigation.common.success" => "Erfolg"
      "admin.navigation.common.warning" => "Warnung"
      "admin.navigation.frontend.content_blocks" => "Content-Blöcke"
      "admin.navigation.frontend.footer" => "Footer"
      "admin.navigation.frontend.header" => "Header"
      "admin.navigation.frontend.media_center" => "Media Center"
      "admin.navigation.frontend.menu" => "Frontend"
      "admin.navigation.frontend.menu_group" => "Menü"
      "admin.navigation.frontend.pages" => "Seiten"
      "admin.navigation.frontend.shop" => "Shop"
      "admin.navigation.frontend.slider" => "Slider"
      "admin.navigation.frontend.widgets" => "Widgets"
      "admin.navigation.groups.booking_hospitality" => "Buchungen & Unterkunft"
      "admin.navigation.groups.catalog" => "Produkte & Katalog"
      "admin.navigation.groups.commerce" => "Commerce"
      "admin.navigation.groups.content" => "Content"
      "admin.navigation.groups.dashboard" => "Dashboard"
      "admin.navigation.groups.editorial" => "Redaktion"
      "admin.navigation.groups.import_data" => "Import & Datenpflege"
      "admin.navigation.groups.layout" => "Navigation & Layout"
      "admin.navigation.groups.marketing_seo" => "Marketing & SEO"
      "admin.navigation.groups.orders_customers" => "Bestellungen & Kunden"
      "admin.navigation.groups.pages" => "Seiten"
      "admin.navigation.groups.pricing_actions" => "Preise & Aktionen"
      "admin.navigation.groups.reviews_feeds" => "Bewertungen & Feeds"
      "admin.navigation.groups.settings" => "Einstellungen"
      "admin.navigation.groups.shipping_returns" => "Versand & Retouren"
      "admin.navigation.groups.system" => "System"
      "admin.navigation.groups.users_rights" => "Benutzer & Rechte"
      "admin.navigation.help.menu" => "Hilfe & Dokumentation"
      "admin.navigation.home" => "Dashboard"
      "admin.navigation.locale.label" => "Sprache"
      "admin.navigation.profile.change_password" => "Mein Passwort ändern"
      "admin.navigation.profile.logout" => "Abmelden"
      "admin.navigation.profile.welcome" => "Willkommen"
      "admin.navigation.settings.ecommerce" => "E-Commerce"
      "admin.navigation.settings.faq" => "FAQ"
      "admin.navigation.settings.imprint" => "Impressum"
      "admin.navigation.settings.mail_templates" => "Mailvorlagen"
      "admin.navigation.settings.menu" => "Einstellungen"
      "admin.navigation.settings.privacy" => "Datenschutz"
      "admin.navigation.settings.system" => "System"
      "admin.navigation.settings.translations" => "Übersetzungen"
      "admin.navigation.shop.alerts.inbox" => "Alert-Inbox"
      "admin.navigation.shop.alerts.menu" => "Alerts"
      "admin.navigation.shop.categories" => "Kategorien"
      "admin.navigation.shop.category_new" => "Kategorie anlegen"
      "admin.navigation.shop.configurator_new" => "Konfiguration anlegen"
      "admin.navigation.shop.customers.menu" => "Shop-Kunden"
      "admin.navigation.shop.customers.new" => "Kunde anlegen"
      "admin.navigation.shop.customers.newsletter" => "Newsletter"
      "admin.navigation.shop.customers.support_tickets" => "Support-Tickets"
      "admin.navigation.shop.feeds.hub" => "Feed-Hub"
      "admin.navigation.shop.feeds.menu" => "Feed-Exporte"
      "admin.navigation.shop.import_control.center" => "Kontrollzentrum"
      "admin.navigation.shop.import_control.menu" => "Import-Steuerung"
      "admin.navigation.shop.menu" => "Shop"
      "admin.navigation.shop.orders" => "Bestellungen"
      "admin.navigation.shop.pricing.manage" => "Verwaltung"
      "admin.navigation.shop.pricing.menu" => "Pricing Engine"
      "admin.navigation.shop.pricing.monitoring" => "Monitoring-Dashboard"
      "admin.navigation.shop.product_new" => "Produkt anlegen"
      "admin.navigation.shop.products" => "Produkte"
      "admin.navigation.shop.reviews.menu" => "Bewertungen"
      "admin.navigation.shop.reviews.moderation" => "Moderation"
      "admin.navigation.shop.reviews.product_qa" => "Produkt Q&A"
      "admin.navigation.users.menu" => "Benutzer"
      "admin.navigation.users.profiles" => "Profile"
      "admin.newsletter.form.create_title" => "Newsletter-Abonnent anlegen"
      "admin.newsletter.form.edit_title" => "Newsletter-Abonnent bearbeiten"
      "admin.newsletter.form.fields.confirmed" => "Bestätigt"
      "admin.newsletter.form.fields.email" => "E-Mail"
      "admin.newsletter.form.fields.subscribed_at" => "Anmeldedatum"
      "admin.newsletter.form.hints.email" => "Direkt eingeben oder unten per Shop-User-Suche auswählen (ab 3 Zeichen)."
      "admin.newsletter.form.hints.shop_user_search" => "Auswahl übernimmt die E-Mail automatisch in das Feld oben."
      "admin.newsletter.form.js.apply_date" => "Übernehmen"
      "admin.newsletter.form.js.clear_date" => "Leeren"
      "admin.newsletter.form.labels.shop_user_search" => "Shop-User suchen"
      "admin.newsletter.form.panel_title" => "Formular"
      "admin.newsletter.form.placeholders.email" => "name@beispiel.de"
      "admin.newsletter.form.placeholders.shop_user_search" => "Shop-User per E-Mail suchen ..."
      "admin.newsletter.form.placeholders.subscribed_at" => "JJJJ-MM-TT HH:MM"
      "admin.newsletter.form.subtitle" => "Verwalte Empfänger, Bestätigung und Anmeldedatum."
      "admin.newsletter.list.columns.actions" => "Aktionen"
      "admin.newsletter.list.columns.confirmed" => "Bestätigt"
      "admin.newsletter.list.columns.email" => "E-Mail"
      "admin.newsletter.list.columns.id" => "ID"
      "admin.newsletter.list.columns.subscribed_at" => "Datum"
      "admin.newsletter.list.create" => "Abonnent anlegen"
      "admin.newsletter.list.delete_message" => "Newsletter-Abonnent "%email%" wirklich löschen?"
      "admin.newsletter.list.empty" => "Keine Newsletter-Abonnenten vorhanden."
      "admin.newsletter.list.panel_title" => "Abonnentenliste"
      "admin.newsletter.list.subtitle" => "Übersicht über alle Newsletter-Anmeldungen und Bestätigungsstatus."
      "admin.newsletter.list.title" => "Newsletter-Abonnenten"
      "admin.newsletter.list.values.no" => "Nein"
      "admin.newsletter.list.values.yes" => "Ja"
      "admin.newsletter.notifications.created" => "Newsletter-Abonnent wurde angelegt."
      "admin.newsletter.notifications.deleted" => "Newsletter-Abonnent wurde gelöscht."
      "admin.newsletter.notifications.duplicate_email" => "Diese E-Mail ist bereits als Newsletter-Abonnent eingetragen."
      "admin.newsletter.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.newsletter.notifications.updated" => "Newsletter-Abonnent wurde gespeichert."
      "admin.page.builder.color_labels.accent.black" => "Schwarz"
      "admin.page.builder.color_labels.accent.blue" => "Blau"
      "admin.page.builder.color_labels.accent.graphite" => "Graphit"
      "admin.page.builder.color_labels.accent.green" => "Grün"
      "admin.page.builder.color_labels.accent.orange" => "Orange"
      "admin.page.builder.color_labels.accent.red" => "Rot"
      "admin.page.builder.color_labels.accent.teal" => "Petrol"
      "admin.page.builder.color_labels.accent.violet" => "Violett"
      "admin.page.builder.color_labels.background.anthracite" => "Anthrazit"
      "admin.page.builder.color_labels.background.lavender" => "Lavendel"
      "admin.page.builder.color_labels.background.light_gray" => "Hellgrau"
      "admin.page.builder.color_labels.background.mint" => "Mint"
      "admin.page.builder.color_labels.background.rose" => "Rose"
      "admin.page.builder.color_labels.background.sand" => "Sand"
      "admin.page.builder.color_labels.background.sky" => "Himmel"
      "admin.page.builder.color_labels.background.white" => "Weiß"
      "admin.page.builder.color_labels.custom" => "Eigene Farbe"
      "admin.page.builder.color_labels.default" => "Standard"
      "admin.page.builder.color_labels.empty_accent" => "Standard-Blau"
      "admin.page.builder.color_labels.special_hide" => "Sonderwert verbergen"
      "admin.page.builder.color_labels.special_placeholder" => "Nur falls du bewusst einen Sonderwert brauchst"
      "admin.page.builder.color_labels.special_show" => "Sonderwert eingeben"
      "admin.page.builder.defaults.counter_cards_label" => "Zufriedene Kunden"
      "admin.page.builder.defaults.counter_cards_subtitle" => "Drei starke Kennzahlen im Überblick"
      "admin.page.builder.defaults.counter_cards_suffix" => "k"
      "admin.page.builder.defaults.counter_cards_title" => "Zahlen, die Vertrauen schaffen"
      "admin.page.builder.defaults.counter_cards_value" => "898"
      "admin.page.builder.defaults.faq_answer" => "Antwort."
      "admin.page.builder.defaults.faq_heading" => "Häufige Fragen"
      "admin.page.builder.defaults.faq_question" => "Frage?"
      "admin.page.builder.defaults.hero_heading" => "Neue Hero-Überschrift"
      "admin.page.builder.defaults.icon_list_text" => "Beschreibung"
      "admin.page.builder.defaults.icon_list_title" => "Vorteil 1"
      "admin.page.builder.defaults.newsletter_button" => "Anmelden"
      "admin.page.builder.defaults.newsletter_heading" => "Newsletter abonnieren"
      "admin.page.builder.defaults.newsletter_note" => "Kein Spam. Nur relevante Updates."
      "admin.page.builder.defaults.newsletter_placeholder" => "Ihre E-Mail-Adresse"
      "admin.page.builder.defaults.newsletter_text" => "Aktionen, neue Produkte und exklusive Hinweise direkt ins Postfach."
      "admin.page.builder.defaults.pricing_cta" => "Jetzt starten"
      "admin.page.builder.defaults.pricing_feature" => "Feature 1"
      "admin.page.builder.defaults.pricing_name" => "Starter"
      "admin.page.builder.defaults.pricing_period" => "/ Monat"
      "admin.page.builder.defaults.pricing_price" => "9 EUR"
      "admin.page.builder.defaults.product_grid_heading" => "Empfohlene Produkte"
      "admin.page.builder.defaults.testimonials_name" => "Max Mustermann"
      "admin.page.builder.defaults.testimonials_role" => "Kunde"
      "admin.page.builder.defaults.testimonials_text" => "Toller Service!"
      "admin.page.builder.defaults.text_html" => "<p>Neuer Textabschnitt</p>"
      "admin.page.builder.draft_badge" => "Entwurf"
      "admin.page.builder.fields.avatar" => "Avatar"
      "admin.page.builder.fields.background_color" => "Hintergrundfarbe"
      "admin.page.builder.fields.background_image" => "Hintergrundbild"
      "admin.page.builder.fields.button_label" => "Button-Beschriftung"
      "admin.page.builder.fields.button_url" => "Button-URL"
      "admin.page.builder.fields.caption" => "Bildunterschrift"
      "admin.page.builder.fields.category_optional" => "Kategorie (optional)"
      "admin.page.builder.fields.columns" => "Spalten (1-4)"
      "admin.page.builder.fields.content" => "Inhalt"
      "admin.page.builder.fields.content_block_select" => "Content-Block auswählen"
      "admin.page.builder.fields.counter_label" => "Label"
      "admin.page.builder.fields.counter_suffix" => "Suffix"
      "admin.page.builder.fields.counter_value" => "Wert"
      "admin.page.builder.fields.cta_text" => "Button-Text"
      "admin.page.builder.fields.description_text" => "Beschreibungstext"
      "admin.page.builder.fields.email_placeholder" => "E-Mail-Platzhalter"
      "admin.page.builder.fields.entries" => "Einträge"
      "admin.page.builder.fields.eyebrow" => "Eyebrow-Text"
      "admin.page.builder.fields.faq_items" => "FAQ-Einträge"
      "admin.page.builder.fields.features" => "Leistungsmerkmale"
      "admin.page.builder.fields.heading" => "Überschrift"
      "admin.page.builder.fields.height_px" => "Höhe in px"
      "admin.page.builder.fields.highlighted" => "Empfohlen"
      "admin.page.builder.fields.html_content" => "HTML-Inhalt"
      "admin.page.builder.fields.icon" => "Icon"
      "admin.page.builder.fields.icon_color" => "Icon-Farbe"
      "admin.page.builder.fields.image" => "Bild"
      "admin.page.builder.fields.image_alt" => "Bild-Alternativtext"
      "admin.page.builder.fields.image_position" => "Bildposition"
      "admin.page.builder.fields.name" => "Name"
      "admin.page.builder.fields.note" => "Hinweistext"
      "admin.page.builder.fields.period" => "Zeitraum"
      "admin.page.builder.fields.price" => "Preis"
      "admin.page.builder.fields.price_boxes" => "Preisboxen"
      "admin.page.builder.fields.product_limit" => "Anzahl Produkte (1-24, 1 = Angebotsansicht)"
      "admin.page.builder.fields.products_optional" => "Gezielte Produkte (optional)"
      "admin.page.builder.fields.quote" => "Zitat"
      "admin.page.builder.fields.role" => "Rolle / Funktion"
      "admin.page.builder.fields.stars" => "Sterne"
      "admin.page.builder.fields.subtitle" => "Untertitel"
      "admin.page.builder.fields.text" => "Text"
      "admin.page.builder.fields.title" => "Titel"
      "admin.page.builder.fields.variant" => "Variante"
      "admin.page.builder.fields.video_link" => "Video-Link"
      "admin.page.builder.fields.widget_select" => "Widget auswählen"
      "admin.page.builder.groups.advanced" => "Erweitert"
      "admin.page.builder.groups.content" => "Inhalt"
      "admin.page.builder.groups.embeds" => "Einbindungen"
      "admin.page.builder.groups.misc" => "Sonstiges"
      "admin.page.builder.help.feature_per_line" => "Ein Merkmal pro Zeile."
      "admin.page.builder.help.icon_picker" => "Ein Icon anklicken. Nur bei Bedarf ein eigenes Icon eintragen."
      "admin.page.builder.help.image_optional" => "Optional: Bild hochladen oder URL eintragen."
      "admin.page.builder.help.video_link" => "Unterstützt YouTube, Vimeo sowie direkte MP4-, WebM- oder OGG-Dateien."
      "admin.page.builder.icon_labels.custom" => "Eigenes Icon"
      "admin.page.builder.icon_labels.custom_placeholder" => "Nur falls du ein spezielles Icon brauchst"
      "admin.page.builder.icon_labels.presets.bolt" => "Blitz"
      "admin.page.builder.icon_labels.presets.check" => "Haken"
      "admin.page.builder.icon_labels.presets.gift" => "Geschenk"
      "admin.page.builder.icon_labels.presets.globe" => "Welt"
      "admin.page.builder.icon_labels.presets.heart" => "Herz"
      "admin.page.builder.icon_labels.presets.leaf" => "Blatt"
      "admin.page.builder.icon_labels.presets.lock" => "Schloss"
      "admin.page.builder.icon_labels.presets.phone" => "Telefon"
      "admin.page.builder.icon_labels.presets.shield" => "Schild"
      "admin.page.builder.icon_labels.presets.star" => "Stern"
      "admin.page.builder.icon_labels.presets.thumbs_up" => "Daumen"
      "admin.page.builder.icon_labels.presets.truck" => "Lieferung"
      "admin.page.builder.modal.close" => "Schließen"
      "admin.page.builder.modal.title" => "Abschnitt auswählen"
      "admin.page.builder.options.cta_variant.dark" => "Dunkel"
      "admin.page.builder.options.cta_variant.light" => "Hell"
      "admin.page.builder.options.cta_variant.primary" => "Primär (blau)"
      "admin.page.builder.options.image_position.left" => "Links"
      "admin.page.builder.options.image_position.right" => "Rechts"
      "admin.page.builder.options.newsletter_variant.dark" => "Dunkel"
      "admin.page.builder.options.newsletter_variant.light" => "Hell"
      "admin.page.builder.options.newsletter_variant.primary" => "Primär"
      "admin.page.builder.options.stars.five" => "5 Sterne"
      "admin.page.builder.options.stars.four" => "4 Sterne"
      "admin.page.builder.options.stars.one" => "1 Stern"
      "admin.page.builder.options.stars.three" => "3 Sterne"
      "admin.page.builder.options.stars.two" => "2 Sterne"
      "admin.page.builder.panel_title" => "Page Builder"
      "admin.page.builder.runtime.add_item" => "Eintrag hinzufügen"
      "admin.page.builder.runtime.add_video_hint" => "Füge einen YouTube-, Vimeo- oder direkten Videolink ein."
      "admin.page.builder.runtime.block_prefix" => "Block #%id%"
      "admin.page.builder.runtime.count" => "%count% Elemente"
      "admin.page.builder.runtime.delete" => "Löschen"
      "admin.page.builder.runtime.duplicate" => "Duplizieren"
      "admin.page.builder.runtime.empty_entries" => "Noch keine Einträge angelegt."
      "admin.page.builder.runtime.empty_sections" => "Noch keine Abschnitte – füge einen hinzu!"
      "admin.page.builder.runtime.error_prefix" => "Fehler: "
      "admin.page.builder.runtime.error_unknown" => "Unbekannt"
      "admin.page.builder.runtime.file_detected" => "Videodatei erkannt"
      "admin.page.builder.runtime.file_hint" => "Das Frontend verwendet den Link als direkt eingebundene Videodatei."
      "admin.page.builder.runtime.full_width" => "Volle Seitenbreite"
      "admin.page.builder.runtime.full_width_hint" => "kein Container, randlos"
      "admin.page.builder.runtime.image_url_placeholder" => "oder Bild-URL eingeben …"
      "admin.page.builder.runtime.item_label" => "Eintrag"
      "admin.page.builder.runtime.move_down" => "Nach unten"
      "admin.page.builder.runtime.move_up" => "Nach oben"
      "admin.page.builder.runtime.multi_select_hint" => "Leer lassen = alle Produkte nach Kategorie/Limit laden"
      "admin.page.builder.runtime.no_video_preview" => "Noch keine Vorschau"
      "admin.page.builder.runtime.no_video_selected" => "Noch kein Video ausgewählt"
      "admin.page.builder.runtime.placeholder_or_add" => "oder neuen hinzufügen"
      "admin.page.builder.runtime.placeholder_select_section" => "Abschnitt links auswählen"
      "admin.page.builder.runtime.preview_alt" => "Vorschau"
      "admin.page.builder.runtime.remove" => "Entfernen"
      "admin.page.builder.runtime.remove_image" => "Bild entfernen"
      "admin.page.builder.runtime.remove_image_title" => "Bild entfernen"
      "admin.page.builder.runtime.select_none" => "– Keine Auswahl (alle Produkte) –"
      "admin.page.builder.runtime.select_products_placeholder" => "Produkte suchen und auswählen …"
      "admin.page.builder.runtime.select_prompt" => "– Bitte wählen –"
      "admin.page.builder.runtime.template_prompt" => "Name für die neue Vorlage:"
      "admin.page.builder.runtime.template_save_failed" => "Fehler beim Speichern der Vorlage."
      "admin.page.builder.runtime.template_saved" => "Vorlage "%name%" gespeichert!"
      "admin.page.builder.runtime.unknown_type" => "Unbekannter Typ: %type%"
      "admin.page.builder.runtime.unknown_video" => "Link nicht sicher erkannt"
      "admin.page.builder.runtime.unknown_video_hint" => "Nutze am besten einen YouTube-, Vimeo- oder direkten MP4/WebM-Link."
      "admin.page.builder.runtime.unknown_video_preview" => "Für diesen Link kann aktuell keine Vorschau erzeugt werden."
      "admin.page.builder.runtime.upload_error_prefix" => "Upload-Fehler: "
      "admin.page.builder.runtime.upload_failed" => "Upload fehlgeschlagen. Bitte erneut versuchen."
      "admin.page.builder.runtime.upload_image" => "Bild hochladen"
      "admin.page.builder.runtime.upload_in_progress" => "Wird hochgeladen …"
      "admin.page.builder.runtime.video_placeholder" => "https://youtu.be/... oder https://vimeo.com/..."
      "admin.page.builder.runtime.vimeo_detected" => "Vimeo erkannt"
      "admin.page.builder.runtime.vimeo_hint" => "Der Link wird im Frontend als eingebettetes Vimeo-Video dargestellt."
      "admin.page.builder.runtime.vimeo_preview_title" => "Vimeo-Vorschau"
      "admin.page.builder.runtime.visibility_limited" => "Sichtbarkeit eingeschränkt"
      "admin.page.builder.runtime.widget_prefix" => "Widget #%id%"
      "admin.page.builder.runtime.youtube_detected" => "YouTube erkannt"
      "admin.page.builder.runtime.youtube_hint" => "Der Link wird im Frontend als eingebettetes YouTube-Video dargestellt."
      "admin.page.builder.runtime.youtube_preview_title" => "YouTube-Vorschau"
      "admin.page.builder.section_labels.content_block" => "Content-Block"
      "admin.page.builder.section_labels.counter_cards" => "Kennzahlen"
      "admin.page.builder.section_labels.cta_banner" => "CTA-Banner"
      "admin.page.builder.section_labels.faq" => "FAQ"
      "admin.page.builder.section_labels.hero" => "Hero"
      "admin.page.builder.section_labels.icon_list" => "Icon-Liste"
      "admin.page.builder.section_labels.image_text" => "Bild + Text"
      "admin.page.builder.section_labels.legacy_html" => "Legacy HTML"
      "admin.page.builder.section_labels.newsletter" => "Newsletter"
      "admin.page.builder.section_labels.pricing_table" => "Preistabelle"
      "admin.page.builder.section_labels.product_grid" => "Produkt-Grid"
      "admin.page.builder.section_labels.spacer" => "Abstand"
      "admin.page.builder.section_labels.testimonials" => "Testimonials"
      "admin.page.builder.section_labels.text" => "Text"
      "admin.page.builder.section_labels.video" => "Video"
      "admin.page.builder.section_labels.widget" => "Widget"
      "admin.page.builder.section_meta.counter_cards.add" => "Kennzahl hinzufügen"
      "admin.page.builder.section_meta.counter_cards.empty" => "Noch keine Kennzahlen angelegt."
      "admin.page.builder.section_meta.counter_cards.item_label" => "Kennzahl"
      "admin.page.builder.section_meta.faq.add" => "Frage hinzufügen"
      "admin.page.builder.section_meta.faq.empty" => "Noch keine Fragen angelegt."
      "admin.page.builder.section_meta.faq.item_label" => "FAQ"
      "admin.page.builder.section_meta.icon_list.add" => "Eintrag hinzufügen"
      "admin.page.builder.section_meta.icon_list.empty" => "Noch keine Einträge angelegt."
      "admin.page.builder.section_meta.icon_list.item_label" => "Eintrag"
      "admin.page.builder.section_meta.pricing_table.add" => "Preisspalte hinzufügen"
      "admin.page.builder.section_meta.pricing_table.empty" => "Noch keine Preisboxen angelegt."
      "admin.page.builder.section_meta.pricing_table.item_label" => "Preisspalte"
      "admin.page.builder.section_meta.testimonials.add" => "Testimonial hinzufügen"
      "admin.page.builder.section_meta.testimonials.empty" => "Noch keine Testimonials angelegt."
      "admin.page.builder.section_meta.testimonials.item_label" => "Testimonial"
      "admin.page.builder.sidebar.title" => "Abschnitte"
      "admin.page.builder.templates.built_in.content_block.name" => "Beispiel: Content-Block"
      "admin.page.builder.templates.built_in.content_block.preview_note" => "Nach dem Einfügen bitte Content-Block auswählen"
      "admin.page.builder.templates.built_in.counter_cards.name" => "Beispiel: Kennzahlen"
      "admin.page.builder.templates.built_in.counter_cards.preview_note" => "AppStrap-inspirierte Kennzahlenkarten mit optionalem Bildhintergrund"
      "admin.page.builder.templates.built_in.cta_banner.name" => "Beispiel: CTA-Banner"
      "admin.page.builder.templates.built_in.cta_banner.preview_note" => "Konversionsstarker Call-to-Action"
      "admin.page.builder.templates.built_in.faq.name" => "Beispiel: FAQ"
      "admin.page.builder.templates.built_in.faq.preview_note" => "FAQ mit zwei Beispielpunkten"
      "admin.page.builder.templates.built_in.hero.name" => "Beispiel: Hero"
      "admin.page.builder.templates.built_in.hero.preview_note" => "Vorgefertigtes Hero-Beispiel"
      "admin.page.builder.templates.built_in.icon_list.name" => "Beispiel: Icon-Liste"
      "admin.page.builder.templates.built_in.icon_list.preview_note" => "Icon-Liste mit drei Vorteilen"
      "admin.page.builder.templates.built_in.image_text.name" => "Beispiel: Bild + Text"
      "admin.page.builder.templates.built_in.image_text.preview_note" => "Bild bitte nach dem Einfügen auswählen"
      "admin.page.builder.templates.built_in.legacy_html.name" => "Beispiel: Legacy HTML"
      "admin.page.builder.templates.built_in.legacy_html.preview_note" => "Für Altdaten oder Spezialmarkup"
      "admin.page.builder.templates.built_in.newsletter.name" => "Beispiel: Newsletter"
      "admin.page.builder.templates.built_in.newsletter.preview_note" => "Inline-Anmeldeblock ist direkt an das vorhandene Newsletter-Abo angebunden"
      "admin.page.builder.templates.built_in.pricing_table.name" => "Beispiel: Preistabelle"
      "admin.page.builder.templates.built_in.pricing_table.preview_note" => "Zwei Preisstufen als Beispiel"
      "admin.page.builder.templates.built_in.product_grid.name" => "Beispiel: Produkt-Grid"
      "admin.page.builder.templates.built_in.product_grid.preview_note" => "Shop-Kartenansicht mit Beispielüberschrift"
      "admin.page.builder.templates.built_in.spacer.name" => "Beispiel: Abstand"
      "admin.page.builder.templates.built_in.spacer.preview_note" => "Zwischenraum für Layout-Trennung"
      "admin.page.builder.templates.built_in.testimonials.name" => "Beispiel: Testimonials"
      "admin.page.builder.templates.built_in.testimonials.preview_note" => "Testimonials mit Beispielbewertungen"
      "admin.page.builder.templates.built_in.text.name" => "Beispiel: Textblock"
      "admin.page.builder.templates.built_in.text.preview_note" => "Einfacher redaktioneller Textabschnitt"
      "admin.page.builder.templates.built_in.video.name" => "Beispiel: Video"
      "admin.page.builder.templates.built_in.video.preview_note" => "Video-Sektion mit Beispiel-URL"
      "admin.page.builder.templates.built_in.widget.name" => "Beispiel: Widget"
      "admin.page.builder.templates.built_in.widget.preview_note" => "Nach dem Einfügen bitte Widget auswählen"
      "admin.page.builder.templates.errors.invalid_data" => "Ungültige Daten"
      "admin.page.builder.toggle_labels.active" => "Aktiv"
      "admin.page.builder.toggle_labels.highlighted" => "Diese Preisbox hervorheben"
      "admin.page.builder.toolbar.add_section" => "Abschnitt hinzufügen"
      "admin.page.builder.toolbar.insert" => "Einfügen"
      "admin.page.builder.toolbar.insert_title" => "Vorlage einfügen"
      "admin.page.builder.toolbar.template_placeholder" => "– Vorlage wählen –"
      "admin.page.builder.upload.errors.directory_not_writable" => "Upload-Verzeichnis ist nicht beschreibbar."
      "admin.page.builder.upload.errors.file_too_large" => "Datei zu groß (max. 5 MB)."
      "admin.page.builder.upload.errors.invalid_type" => "Ungültiger Dateityp. Erlaubt: JPG, PNG, GIF, WebP."
      "admin.page.builder.upload.errors.no_file" => "Keine Datei übermittelt."
      "admin.page.builder.upload.errors.save_failed" => "Bild konnte nicht gespeichert werden."
      "admin.page.builder.visibility.actions.apply" => "Übernehmen"
      "admin.page.builder.visibility.actions.apply_done" => "Übernommen"
      "admin.page.builder.visibility.actions.save_template" => "Als Vorlage speichern"
      "admin.page.builder.visibility.actions.save_template_title" => "Abschnitt als Vorlage speichern"
      "admin.page.builder.visibility.audience.all" => "Alle Besucher"
      "admin.page.builder.visibility.audience.guests" => "Nur Gäste (nicht eingeloggt)"
      "admin.page.builder.visibility.audience.logged_in" => "Nur eingeloggte Kunden"
      "admin.page.builder.visibility.fields.audience" => "Zielgruppe"
      "admin.page.builder.visibility.fields.from" => "Sichtbar ab"
      "admin.page.builder.visibility.fields.to" => "Sichtbar bis"
      "admin.page.builder.visibility.title" => "Sichtbarkeit & Zeitplanung"
      "admin.page.edit.actions.back" => "Zurück"
      "admin.page.edit.actions.publish" => "Veröffentlichen"
      "admin.page.edit.actions.restore" => "Stand wiederherstellen"
      "admin.page.edit.actions.save_draft" => "Entwurf speichern"
      "admin.page.edit.actions.save_public" => "Öffentliche Seite speichern"
      "admin.page.edit.actions.unpublish" => "Offline schalten"
      "admin.page.edit.meta_title" => "Seite bearbeiten"
      "admin.page.edit.page_title" => "Seite bearbeiten"
      "admin.page.edit.restore_title" => "Letzten veröffentlichten Stand wiederherstellen"
      "admin.page.edit.status.draft" => "Entwurf"
      "admin.page.edit.status.published" => "Veröffentlicht"
      "admin.page.edit.status.published_at" => "Veröffentlicht: %date%"
      "admin.page.edit.tabs.builder" => "Seite & Builder"
      "admin.page.edit.tabs.revisions" => "Revisionen"
      "admin.page.edit.tabs.revisions_title" => "Revisionsverlauf anzeigen"
      "admin.page.edit.tabs.seo" => "SEO"
      "admin.page.errors.not_found" => "Seite nicht gefunden"
      "admin.page.errors.revision_not_found" => "Revision nicht gefunden"
      "admin.page.form.choices.footer_placements.legal" => "Untere Legal-Leiste"
      "admin.page.form.choices.footer_placements.main" => "Oberes Footer-Menü"
      "admin.page.form.choices.footer_placements.none" => "Nicht im Footer anzeigen"
      "admin.page.form.choices.slider_types.nfok_announcement_strip" => "Announcement Strip"
      "admin.page.form.choices.slider_types.nfok_automation_flow" => "Automation Flow"
      "admin.page.form.choices.slider_types.nfok_case_study" => "Case Study"
      "admin.page.form.choices.slider_types.nfok_commerce_hero" => "Commerce Hero"
      "admin.page.form.choices.slider_types.nfok_editorial_minimal" => "Editorial Minimal"
      "admin.page.form.choices.slider_types.nfok_feature_stack" => "Feature Stack"
      "admin.page.form.choices.slider_types.nfok_product_focus" => "Produktfokus"
      "admin.page.form.choices.slider_types.nfok_service_hero" => "NFOK Service Hero"
      "admin.page.form.choices.slider_types.nfok_technical_dark" => "Technical Dark"
      "admin.page.form.choices.slider_types.nfok_trust_metrics" => "Trust & Kennzahlen"
      "admin.page.form.choices.slider_types.none" => "Kein Slider"
      "admin.page.form.choices.slider_types.slider1" => "Legacy Slider 1"
      "admin.page.form.choices.slider_types.slider2" => "Legacy Slider 2"
      "admin.page.form.choices.slider_types.slider3" => "Legacy Slider 3"
      "admin.page.form.choices.statuses.draft" => "Entwurf (nicht öffentlich)"
      "admin.page.form.choices.statuses.published" => "Öffentlich (live sichtbar)"
      "admin.page.form.choices.templates.compact" => "Kompakt"
      "admin.page.form.choices.templates.default" => "Standard"
      "admin.page.form.choices.templates.landing" => "Landingpage"
      "admin.page.form.fields.answer" => "Antwort"
      "admin.page.form.fields.footer_placement" => "Footer-Platzierung"
      "admin.page.form.fields.is_footer_menu" => "Im Footer-Menü anzeigen"
      "admin.page.form.fields.page_template" => "Seiten-Template"
      "admin.page.form.fields.question" => "Frage"
      "admin.page.form.fields.show_in_menu" => "In Menü anzeigen"
      "admin.page.form.fields.slider_enabled" => "Slider anzeigen"
      "admin.page.form.fields.slider_type" => "Slider-Variante"
      "admin.page.form.fields.slug" => "Slug"
      "admin.page.form.fields.status" => "Status"
      "admin.page.form.fields.title" => "Titel"
      "admin.page.home.actions.delete_title" => "Löschen"
      "admin.page.home.actions.edit_title" => "Bearbeiten"
      "admin.page.home.actions.help" => "Hilfe"
      "admin.page.home.actions.help_title" => "Hilfe zu diesem Modul"
      "admin.page.home.actions.new" => "Seite anlegen"
      "admin.page.home.actions.publish_title" => "Veröffentlichen"
      "admin.page.home.actions.show_title" => "Anzeigen"
      "admin.page.home.actions.unpublish_title" => "Offline schalten"
      "admin.page.home.delete_modal.body" => "Möchten Sie die Seite %title% wirklich löschen?"
      "admin.page.home.delete_modal.cancel" => "Abbrechen"
      "admin.page.home.delete_modal.confirm" => "Löschen"
      "admin.page.home.delete_modal.title" => "Löschen bestätigen"
      "admin.page.home.headers.actions" => "Aktionen"
      "admin.page.home.headers.footer_placement" => "Footer"
      "admin.page.home.headers.id" => "ID"
      "admin.page.home.headers.published_at" => "Veröffentlicht am"
      "admin.page.home.headers.status" => "Status"
      "admin.page.home.headers.template" => "Template"
      "admin.page.home.headers.title" => "Titel"
      "admin.page.home.headers.url" => "URL"
      "admin.page.home.list_title" => "Seitenliste"
      "admin.page.home.meta_title" => "Seitenverwaltung"
      "admin.page.home.page_subtitle" => "Entwürfe, Veröffentlichungen und Builder-Templates zentral verwalten."
      "admin.page.home.page_title" => "Seitenverwaltung"
      "admin.page.home.status.draft" => "Entwurf"
      "admin.page.home.status.published" => "Veröffentlicht"
      "admin.page.home.values.empty" => "Keine Seiten gefunden."
      "admin.page.new.actions.back" => "Zurück"
      "admin.page.new.actions.save_draft" => "Entwurf anlegen"
      "admin.page.new.actions.save_public" => "Öffentliche Seite anlegen"
      "admin.page.new.meta_title" => "Neue Seite"
      "admin.page.new.page_title" => "Neue Seite anlegen"
      "admin.page.new.tabs.builder" => "Seite & Builder"
      "admin.page.new.tabs.seo" => "SEO"
      "admin.page.notifications.created" => "Seite wurde angelegt."
      "admin.page.notifications.deleted" => "Seite wurde gelöscht."
      "admin.page.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.page.notifications.no_published_version" => "Keine veröffentlichte Version vorhanden."
      "admin.page.notifications.published" => "Seite wurde veröffentlicht. Revision gespeichert."
      "admin.page.notifications.restored_published" => "Entwurf wurde auf die letzte veröffentlichte Version zurückgesetzt."
      "admin.page.notifications.unpublished" => "Seite wurde offline geschaltet. Entwurf bleibt erhalten."
      "admin.page.notifications.updated" => "Seite wurde gespeichert."
      "admin.page.revisions.actions.back" => "Zurück zum Editor"
      "admin.page.revisions.actions.delete_title" => "Revision löschen"
      "admin.page.revisions.actions.restore" => "Wiederherstellen"
      "admin.page.revisions.actions.restore_title" => "Als Entwurf wiederherstellen"
      "admin.page.revisions.delete_modal.body" => "Revision %title% vom %date% wirklich löschen?"
      "admin.page.revisions.delete_modal.cancel" => "Abbrechen"
      "admin.page.revisions.delete_modal.confirm" => "Löschen"
      "admin.page.revisions.delete_modal.title" => "Revision löschen"
      "admin.page.revisions.empty" => "Noch keine Revisionen vorhanden. Revisionen werden automatisch beim Anlegen, Speichern und Veröffentlichen erstellt."
      "admin.page.revisions.headers.actions" => "Aktionen"
      "admin.page.revisions.headers.created_at" => "Erstellt am"
      "admin.page.revisions.headers.created_by" => "Erstellt von"
      "admin.page.revisions.headers.id" => "ID"
      "admin.page.revisions.headers.label" => "Bezeichnung"
      "admin.page.revisions.headers.sections" => "Abschnitte"
      "admin.page.revisions.labels.created" => "Anlage %date%"
      "admin.page.revisions.labels.published" => "Veröffentlichung %date%"
      "admin.page.revisions.labels.updated" => "Bearbeitung %date%"
      "admin.page.revisions.list_title" => "Gespeicherte Revisionen (%count%)"
      "admin.page.revisions.meta_title" => "Revisionsverlauf – %title%"
      "admin.page.revisions.notifications.deleted" => "Revision wurde gelöscht."
      "admin.page.revisions.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.page.revisions.notifications.restored" => "Entwurf wurde auf Revision vom %date% zurückgesetzt."
      "admin.page.revisions.page_title" => "Revisionsverlauf"
      "admin.pricing.actions.apply" => "Anwenden"
      "admin.pricing.actions.back" => "Zurück"
      "admin.pricing.actions.cancel" => "Abbrechen"
      "admin.pricing.actions.close" => "Schließen"
      "admin.pricing.actions.delete" => "Löschen"
      "admin.pricing.actions.help" => "Hilfe"
      "admin.pricing.actions.new_guard" => "Neue Schutzregel"
      "admin.pricing.actions.new_rule" => "Neue Preisregel"
      "admin.pricing.actions.refresh" => "Aktualisieren"
      "admin.pricing.actions.save" => "Speichern"
      "admin.pricing.actions.to_module" => "Zum Modul"
      "admin.pricing.actions.toggle" => "Aktivieren oder deaktivieren"
      "admin.pricing.api.errors.guard_name_required" => "Ein Name für die Schutzregel ist erforderlich."
      "admin.pricing.api.errors.import_rows_array" => "Die Zeilen müssen als Array übergeben werden."
      "admin.pricing.api.errors.rule_name_required" => "Ein Regelname ist erforderlich."
      "admin.pricing.api.errors.tier_fields_required" => "Produkt, Mindestmenge und Preis sind erforderlich."
      "admin.pricing.common.no_value" => "-"
      "admin.pricing.guard_scopes.all" => "Alle Produkte"
      "admin.pricing.guard_scopes.category" => "Kategorie"
      "admin.pricing.guard_scopes.manufacturer" => "Hersteller"
      "admin.pricing.help_index.card_subtitle" => "Preisregeln, Guards, Staffelpreise"
      "admin.pricing.help_index.card_title" => "Dynamische Preisgestaltung"
      "admin.pricing.help_index.table_description" => "Preisregeln, Schutzregeln und Staffelpreise"
      "admin.pricing.help_index.table_label" => "Preisgestaltung"
      "admin.pricing.help.navigation_title" => "Navigation"
      "admin.pricing.help.navigation.api" => "API-Endpunkte"
      "admin.pricing.help.navigation.apply" => "Regeln anwenden"
      "admin.pricing.help.navigation.competitors" => "Wettbewerberpreise"
      "admin.pricing.help.navigation.guard_fields" => "Feldreferenz Guard"
      "admin.pricing.help.navigation.guards" => "Schutzregeln"
      "admin.pricing.help.navigation.overview" => "Überblick"
      "admin.pricing.help.navigation.rule_fields" => "Feldreferenz Preisregel"
      "admin.pricing.help.navigation.rules" => "Preisregeln"
      "admin.pricing.help.navigation.tiers" => "Staffelpreise"
      "admin.pricing.help.required_no" => "Nein"
      "admin.pricing.help.required_yes" => "Ja"
      "admin.pricing.help.sections.api.rows.apply" => "Regeln im Modus dry oder live anwenden"
      "admin.pricing.help.sections.api.rows.competitors_import" => "Mitbewerber-Snapshots importieren"
      "admin.pricing.help.sections.api.rows.competitors_snapshots" => "Letzte Mitbewerber-Snapshots laden"
      "admin.pricing.help.sections.api.rows.competitors_summary" => "Mitbewerber-Zusammenfassung laden"
      "admin.pricing.help.sections.api.rows.guard_create" => "Neue Schutzregel anlegen"
      "admin.pricing.help.sections.api.rows.guard_delete" => "Schutzregel löschen"
      "admin.pricing.help.sections.api.rows.guard_toggle" => "Schutzregel aktivieren oder deaktivieren"
      "admin.pricing.help.sections.api.rows.index" => "Übersicht mit Regeln, Guards und Zusatzbereichen"
      "admin.pricing.help.sections.api.rows.rule_create" => "Neue Preisregel anlegen"
      "admin.pricing.help.sections.api.rows.rule_delete" => "Preisregel löschen"
      "admin.pricing.help.sections.api.rows.rule_toggle" => "Preisregel aktivieren oder deaktivieren"
      "admin.pricing.help.sections.api.rows.tiers_delete" => "Staffelpreis löschen"
      "admin.pricing.help.sections.api.rows.tiers_list" => "Staffelpreise laden"
      "admin.pricing.help.sections.api.rows.tiers_upsert" => "Staffelpreis anlegen oder aktualisieren"
      "admin.pricing.help.sections.api.table.function" => "Funktion"
      "admin.pricing.help.sections.api.table.method" => "Methode"
      "admin.pricing.help.sections.api.table.url" => "URL"
      "admin.pricing.help.sections.api.title" => "API-Endpunkte"
      "admin.pricing.help.sections.apply.dry_bullets.affected_products" => "Zeigt, welche Produkte betroffen wären."
      "admin.pricing.help.sections.apply.dry_bullets.guard_effects" => "Zeigt, welche Schutzregeln eingreifen würden."
      "admin.pricing.help.sections.apply.dry_bullets.no_live_effect" => "Hat keine direkte Auswirkung auf den Live-Shop."
      "admin.pricing.help.sections.apply.dry_bullets.price_delta" => "Vergleicht alten und neuen Preis."
      "admin.pricing.help.sections.apply.dry_intro" => "Simuliert die Regelanwendung ohne Datenbankänderung."
      "admin.pricing.help.sections.apply.dry_title" => "Dry-Run"
      "admin.pricing.help.sections.apply.live_bullets.dry_first" => "Empfehlung: immer zuerst Dry-Run ausführen."
      "admin.pricing.help.sections.apply.live_bullets.immediate" => "Wirkt sofort auf den Live-Shop."
      "admin.pricing.help.sections.apply.live_bullets.not_automatic" => "Ist nicht automatisch rückgängig zu machen."
      "admin.pricing.help.sections.apply.live_bullets.special_price" => "Aktualisiert den in Pricing verwendeten <code>specialPrice</code>-Pfad über die Service-Logik."
      "admin.pricing.help.sections.apply.live_intro" => "Wendet die aktiven Regeln dauerhaft an."
      "admin.pricing.help.sections.apply.live_title" => "Live-Anwendung"
      "admin.pricing.help.sections.apply.parameters" => "<strong>Parameter:</strong> <code>mode</code> = <code>dry</code> oder <code>live</code>, <code>limit</code> = optionale Produktanzahl pro Durchlauf."
      "admin.pricing.help.sections.apply.title" => "Regeln anwenden"
      "admin.pricing.help.sections.competitors.bullets.data_points" => "Snapshots speichern Wettbewerber, Preis, SKU, Lagerstatus, URL und Erfassungszeitpunkt."
      "admin.pricing.help.sections.competitors.bullets.import" => "Der Import erfolgt über <code>/admin/api/pricing/competitors/import</code>."
      "admin.pricing.help.sections.competitors.bullets.snapshots" => "Die rechte Tabelle zeigt die letzten importierten Snapshots mit Produktbezug."
      "admin.pricing.help.sections.competitors.bullets.summary" => "Die Zusammenfassung gruppiert Daten der letzten 30 Tage pro Wettbewerber."
      "admin.pricing.help.sections.competitors.intro" => "Der Bereich beobachtet externe Preis-Snapshots und macht Trends für die Preissteuerung sichtbar."
      "admin.pricing.help.sections.competitors.title" => "Wettbewerberpreise"
      "admin.pricing.help.sections.guard_fields.rows.is_active" => "Aktiviert oder deaktiviert die Schutzregel."
      "admin.pricing.help.sections.guard_fields.rows.max_discount_percent" => "Maximal zulässiger Gesamtrabatt in Prozent."
      "admin.pricing.help.sections.guard_fields.rows.min_final_price" => "Unterschreitet der Endpreis diesen Wert, greift der Guard ein."
      "admin.pricing.help.sections.guard_fields.rows.name" => "Interner Name der Schutzregel."
      "admin.pricing.help.sections.guard_fields.rows.notes" => "Interne Notiz."
      "admin.pricing.help.sections.guard_fields.rows.priority" => "Höhere Zahl = frühere Prüfung."
      "admin.pricing.help.sections.guard_fields.rows.scope_type" => "all, category oder manufacturer."
      "admin.pricing.help.sections.guard_fields.rows.scope_value" => "ID oder Bezeichner des gewählten Geltungsbereichs."
      "admin.pricing.help.sections.guard_fields.rows.starts_ends_at" => "Optionaler zeitlicher Gültigkeitsbereich."
      "admin.pricing.help.sections.guard_fields.title" => "Feldreferenz: PricingGuardRule"
      "admin.pricing.help.sections.guards.description" => "Schutzregeln prüfen den <strong>berechneten Endpreis</strong> und begrenzen unerwünschte Ergebnisse nach der eigentlichen Preisregel-Anwendung."
      "admin.pricing.help.sections.guards.steps_title" => "Schritt-für-Schritt: Neue Schutzregel"
      "admin.pricing.help.sections.guards.steps.activate" => "Die Schutzregel aktivieren."
      "admin.pricing.help.sections.guards.steps.max_discount" => "<code>maxDiscountPercent</code> für den maximalen Rabatt setzen."
      "admin.pricing.help.sections.guards.steps.min_price" => "<code>minFinalPrice</code> für den absoluten Mindestpreis setzen."
      "admin.pricing.help.sections.guards.steps.open" => "Im rechten Formularbereich eine neue Schutzregel erfassen."
      "admin.pricing.help.sections.guards.steps.scope" => "Denselben Geltungsbereich wie die zugehörigen Preisregeln wählen."
      "admin.pricing.help.sections.guards.title" => "Schutzregeln (PricingGuardRule)"
      "admin.pricing.help.sections.guards.warning" => "<strong>Wichtig:</strong> Guards arbeiten auf dem Endpreis, nicht auf dem Basispreis."
      "admin.pricing.help.sections.overview.competitor_layer_text" => "Zeigt Wettbewerber-Snapshots und Zusammenfassungen für externe Preisbeobachtung."
      "admin.pricing.help.sections.overview.competitor_layer_title" => "Wettbewerber-Snapshots"
      "admin.pricing.help.sections.overview.guard_layer_text" => "Begrenzt unerwünschte Ergebnisse mit Mindestpreis- und Rabattgrenzen."
      "admin.pricing.help.sections.overview.guard_layer_title" => "Schutzregeln"
      "admin.pricing.help.sections.overview.intro" => "Das Modul <strong>Dynamische Preisgestaltung</strong> kombiniert Preisregeln, Schutzregeln, Staffelpreise und Wettbewerberdaten in einer zentralen Admin-Oberfläche."
      "admin.pricing.help.sections.overview.priority_note" => "<strong>Priorität:</strong> Regeln und Guards werden in absteigender Priorität verarbeitet. Höhere Zahl = frühere Ausführung. <strong>stopOnMatch</strong> beendet die weitere Regelkette nach dem ersten Treffer."
      "admin.pricing.help.sections.overview.rule_layer_text" => "Definiert, wie sich Preise verändern: prozentual erhöhen, prozentual senken oder fest überschreiben."
      "admin.pricing.help.sections.overview.rule_layer_title" => "Preisregeln"
      "admin.pricing.help.sections.overview.tier_layer_text" => "Verwaltet mengen- und gruppenabhängige Staffelpreise pro Produkt."
      "admin.pricing.help.sections.overview.tier_layer_title" => "Staffelpreise"
      "admin.pricing.help.sections.overview.title" => "Überblick: Das Preisgestaltungs-System"
      "admin.pricing.help.sections.rule_fields.rows.ends_at" => "Ende des Gültigkeitszeitraums."
      "admin.pricing.help.sections.rule_fields.rows.is_active" => "Regel aktiv oder inaktiv; Standard im Modul ist aktiv."
      "admin.pricing.help.sections.rule_fields.rows.max_base_price" => "Optionaler maximaler Basispreis für die Anwendung."
      "admin.pricing.help.sections.rule_fields.rows.min_base_price" => "Optionaler minimaler Basispreis für die Anwendung."
      "admin.pricing.help.sections.rule_fields.rows.name" => "Interner Name der Preisregel."
      "admin.pricing.help.sections.rule_fields.rows.notes" => "Interne Notiz zur Regel."
      "admin.pricing.help.sections.rule_fields.rows.priority" => "Höhere Zahl = frühere Verarbeitung."
      "admin.pricing.help.sections.rule_fields.rows.rule_type" => "Art der Preisanpassung."
      "admin.pricing.help.sections.rule_fields.rows.scope_type" => "all, category, manufacturer oder tag."
      "admin.pricing.help.sections.rule_fields.rows.scope_value" => "Wert oder ID des gewählten Geltungsbereichs."
      "admin.pricing.help.sections.rule_fields.rows.starts_at" => "Start des Gültigkeitszeitraums."
      "admin.pricing.help.sections.rule_fields.rows.stop_on_match" => "Beendet die weitere Regelkette nach einem Treffer."
      "admin.pricing.help.sections.rule_fields.rows.value" => "Wert der Preisänderung in Prozent oder als fixer Preis."
      "admin.pricing.help.sections.rule_fields.title" => "Feldreferenz: PricingRule"
      "admin.pricing.help.sections.rules.scope_rows.all.effect" => "Alle Produkte im Shop."
      "admin.pricing.help.sections.rules.scope_rows.all.value" => "leer"
      "admin.pricing.help.sections.rules.scope_rows.category.effect" => "Alle Produkte einer Kategorie."
      "admin.pricing.help.sections.rules.scope_rows.category.value" => "Kategorie-ID oder Bezeichner"
      "admin.pricing.help.sections.rules.scope_rows.manufacturer.effect" => "Alle Produkte eines Herstellers."
      "admin.pricing.help.sections.rules.scope_rows.manufacturer.value" => "Herstellername oder Kennung"
      "admin.pricing.help.sections.rules.scope_rows.tag.effect" => "Alle Produkte mit einem bestimmten Tag."
      "admin.pricing.help.sections.rules.scope_rows.tag.value" => "Tag-Name"
      "admin.pricing.help.sections.rules.scope_table.applies_to" => "Gilt für"
      "admin.pricing.help.sections.rules.scopes_title" => "Geltungsbereiche (scopeType)"
      "admin.pricing.help.sections.rules.steps_title" => "Schritt-für-Schritt: Neue Preisregel"
      "admin.pricing.help.sections.rules.steps.constraints" => "Optional Mindest-/Maximal-Basispreis, Gültigkeitszeitraum und stopOnMatch setzen."
      "admin.pricing.help.sections.rules.steps.open" => "Im linken Formularbereich eine neue Preisregel erfassen."
      "admin.pricing.help.sections.rules.steps.scope" => "Geltungsbereich über scopeType und optional scopeValue festlegen."
      "admin.pricing.help.sections.rules.steps.test" => "Vor dem Live-Lauf zuerst einen Dry-Run ausführen."
      "admin.pricing.help.sections.rules.steps.type" => "Einen Regeltyp auswählen."
      "admin.pricing.help.sections.rules.steps.value" => "Den numerischen Regelwert und die Priorität setzen."
      "admin.pricing.help.sections.rules.title" => "Preisregeln anlegen und verwalten"
      "admin.pricing.help.sections.rules.type_rows.fixed_override.effect" => "Setzt einen absoluten Zielpreis."
      "admin.pricing.help.sections.rules.type_rows.fixed_override.example" => "Produkt X kostet immer 9,99 €"
      "admin.pricing.help.sections.rules.type_rows.percent_decrease.effect" => "Senkt den Preis prozentual."
      "admin.pricing.help.sections.rules.type_rows.percent_decrease.example" => "-10 % auf saisonale Produkte"
      "admin.pricing.help.sections.rules.type_rows.percent_increase.effect" => "Erhöht den Preis prozentual."
      "admin.pricing.help.sections.rules.type_rows.percent_increase.example" => "+15 % auf ausgewählte Sortimente"
      "admin.pricing.help.sections.rules.type_table.effect" => "Wirkung"
      "admin.pricing.help.sections.rules.type_table.example" => "Beispiel"
      "admin.pricing.help.sections.rules.types_title" => "Verfügbare Regeltypen"
      "admin.pricing.help.sections.tiers.bullets.api" => "Das Formular arbeitet gegen <code>/admin/api/pricing/tiers</code>."
      "admin.pricing.help.sections.tiers.bullets.group" => "Optional kann eine aktive Kundengruppe als Einschränkung hinterlegt werden."
      "admin.pricing.help.sections.tiers.bullets.price" => "Der gespeicherte Preis ist ein fixer Staffelpreis pro Mindestmenge."
      "admin.pricing.help.sections.tiers.bullets.product" => "Staffelpreise werden immer einem konkreten Produkt zugeordnet."
      "admin.pricing.help.sections.tiers.bullets.quantity" => "Ab einer Mindestmenge greift der definierte Preis."
      "admin.pricing.help.sections.tiers.intro" => "Der Staffelpreis-Bereich ergänzt die dynamischen Regeln um feste Mengenpreise pro Produkt."
      "admin.pricing.help.sections.tiers.title" => "Staffelpreise"
      "admin.pricing.help.table.description" => "Beschreibung"
      "admin.pricing.help.table.field" => "Feld"
      "admin.pricing.help.table.required" => "Pflicht"
      "admin.pricing.help.table.type" => "Typ"
      "admin.pricing.help.title" => "Hilfe: Dynamische Preisgestaltung"
      "admin.pricing.help.types.boolean" => "Boolean"
      "admin.pricing.help.types.datetime" => "Datum/Zeit"
      "admin.pricing.help.types.enum" => "Enum"
      "admin.pricing.help.types.float" => "Dezimal"
      "admin.pricing.help.types.integer" => "Integer"
      "admin.pricing.help.types.text" => "Text"
      "admin.pricing.index.apply.dry_button" => "Dry-Run ausführen"
      "admin.pricing.index.apply.limit_label" => "Produktlimit (optional)"
      "admin.pricing.index.apply.limit_placeholder" => "z. B. 100"
      "admin.pricing.index.apply.live_button" => "Live-Apply ausführen"
      "admin.pricing.index.apply.live_confirm" => "Live-Apply wirklich starten? Der Pricing-Run aktualisiert gespeicherte Preiswerte."
      "admin.pricing.index.apply.live_confirm_label" => "Live-Apply starten"
      "admin.pricing.index.apply.title" => "Anwenden"
      "admin.pricing.index.competitors.in_stock_no" => "nein"
      "admin.pricing.index.competitors.in_stock_yes" => "ja"
      "admin.pricing.index.competitors.loading" => "Lade…"
      "admin.pricing.index.competitors.section_title" => "Wettbewerber-Preise"
      "admin.pricing.index.competitors.snapshots_columns.captured_at" => "Erfasst"
      "admin.pricing.index.competitors.snapshots_columns.competitor" => "Wettbewerber"
      "admin.pricing.index.competitors.snapshots_columns.in_stock" => "Lagernd"
      "admin.pricing.index.competitors.snapshots_columns.price" => "Preis"
      "admin.pricing.index.competitors.snapshots_columns.product" => "Produkt"
      "admin.pricing.index.competitors.snapshots_columns.sku" => "SKU"
      "admin.pricing.index.competitors.snapshots_empty" => "Keine Snapshots vorhanden."
      "admin.pricing.index.competitors.snapshots_load_failed" => "Snapshots konnten nicht geladen werden."
      "admin.pricing.index.competitors.snapshots_title" => "Letzte Snapshots"
      "admin.pricing.index.competitors.summary_columns.avg_price" => "Ø Preis"
      "admin.pricing.index.competitors.summary_columns.competitor" => "Wettbewerber"
      "admin.pricing.index.competitors.summary_columns.last_seen" => "Zuletzt"
      "admin.pricing.index.competitors.summary_columns.snapshots" => "Snapshots"
      "admin.pricing.index.competitors.summary_empty" => "Keine Daten vorhanden."
      "admin.pricing.index.competitors.summary_load_failed" => "Zusammenfassung konnte nicht geladen werden."
      "admin.pricing.index.competitors.summary_title" => "Zusammenfassung (letzte 30 Tage)"
      "admin.pricing.index.guard_form.active_label" => "Aktiv"
      "admin.pricing.index.guard_form.end_label" => "Ende"
      "admin.pricing.index.guard_form.max_discount_percent_placeholder" => "Max. Rabatt %"
      "admin.pricing.index.guard_form.min_final_price_placeholder" => "Min. finaler Preis"
      "admin.pricing.index.guard_form.name_placeholder" => "Name der Schutzregel"
      "admin.pricing.index.guard_form.notes_placeholder" => "Interne Notiz"
      "admin.pricing.index.guard_form.priority_placeholder" => "Priorität"
      "admin.pricing.index.guard_form.scope_value_placeholder" => "Scope-Wert"
      "admin.pricing.index.guard_form.start_label" => "Start"
      "admin.pricing.index.guard_form.submit" => "Schutzregel erstellen"
      "admin.pricing.index.guard_form.title" => "Neue Schutzregel"
      "admin.pricing.index.guards_table.columns.actions" => "Aktionen"
      "admin.pricing.index.guards_table.columns.max_discount_percent" => "Max. Rabatt %"
      "admin.pricing.index.guards_table.columns.min_final_price" => "Min. Preis"
      "admin.pricing.index.guards_table.columns.name" => "Name"
      "admin.pricing.index.guards_table.columns.priority" => "Prio"
      "admin.pricing.index.guards_table.columns.scope" => "Scope"
      "admin.pricing.index.guards_table.columns.status" => "Status"
      "admin.pricing.index.guards_table.delete_confirm" => "Schutzregel "%name%" wirklich löschen?"
      "admin.pricing.index.guards_table.empty" => "Keine Schutzregeln vorhanden."
      "admin.pricing.index.guards_table.title" => "Schutzregeln"
      "admin.pricing.index.history.columns.changed" => "Geändert"
      "admin.pricing.index.history.columns.checked" => "Geprüft"
      "admin.pricing.index.history.columns.created_at" => "Zeitpunkt"
      "admin.pricing.index.history.columns.guards" => "Guards"
      "admin.pricing.index.history.columns.id" => "ID"
      "admin.pricing.index.history.columns.mode" => "Modus"
      "admin.pricing.index.history.columns.rules" => "Regeln"
      "admin.pricing.index.history.empty" => "Noch keine Runs vorhanden."
      "admin.pricing.index.history.modes.dry" => "Dry-Run"
      "admin.pricing.index.history.modes.live" => "Live"
      "admin.pricing.index.history.title" => "Pricing-Run-Historie"
      "admin.pricing.index.page_title" => "Dynamische Preisgestaltung"
      "admin.pricing.index.rule_form.active_label" => "Aktiv"
      "admin.pricing.index.rule_form.end_label" => "Ende"
      "admin.pricing.index.rule_form.max_base_price_placeholder" => "Max. Basispreis"
      "admin.pricing.index.rule_form.min_base_price_placeholder" => "Min. Basispreis"
      "admin.pricing.index.rule_form.name_placeholder" => "Name der Preisregel"
      "admin.pricing.index.rule_form.notes_placeholder" => "Interne Notiz"
      "admin.pricing.index.rule_form.priority_placeholder" => "Priorität"
      "admin.pricing.index.rule_form.scope_value_placeholder" => "Scope-Wert (z. B. Kategorie-ID oder Hersteller)"
      "admin.pricing.index.rule_form.start_label" => "Start"
      "admin.pricing.index.rule_form.stop_on_match_label" => "Weitere Regeln nach Treffer stoppen"
      "admin.pricing.index.rule_form.submit" => "Preisregel erstellen"
      "admin.pricing.index.rule_form.title" => "Neue Preisregel"
      "admin.pricing.index.rule_form.value_placeholder" => "Wert"
      "admin.pricing.index.rules_table.columns.actions" => "Aktionen"
      "admin.pricing.index.rules_table.columns.name" => "Name"
      "admin.pricing.index.rules_table.columns.priority" => "Prio"
      "admin.pricing.index.rules_table.columns.scope" => "Scope"
      "admin.pricing.index.rules_table.columns.status" => "Status"
      "admin.pricing.index.rules_table.columns.type" => "Typ"
      "admin.pricing.index.rules_table.columns.value" => "Wert"
      "admin.pricing.index.rules_table.delete_confirm" => "Preisregel "%name%" wirklich löschen?"
      "admin.pricing.index.rules_table.empty" => "Keine Preisregeln vorhanden."
      "admin.pricing.index.rules_table.title" => "Preisregeln"
      "admin.pricing.index.stats.active_guards" => "Aktive Guards"
      "admin.pricing.index.stats.active_rules" => "Aktive Regeln"
      "admin.pricing.index.stats.total_guards" => "Guards gesamt"
      "admin.pricing.index.stats.total_rules" => "Regeln gesamt"
      "admin.pricing.index.subtitle" => "Regeln, Schutzlogik, Staffelpreise und Wettbewerberdaten in einer Oberfläche."
      "admin.pricing.index.tiers.active_label" => "Aktiv"
      "admin.pricing.index.tiers.all_groups" => "Alle Gruppen"
      "admin.pricing.index.tiers.columns.actions" => "Aktionen"
      "admin.pricing.index.tiers.columns.group" => "Gruppe"
      "admin.pricing.index.tiers.columns.min_quantity" => "Ab Menge"
      "admin.pricing.index.tiers.columns.price" => "Preis"
      "admin.pricing.index.tiers.columns.product" => "Produkt"
      "admin.pricing.index.tiers.columns.status" => "Status"
      "admin.pricing.index.tiers.delete_confirm" => "Staffelpreis wirklich löschen?"
      "admin.pricing.index.tiers.empty" => "Keine Staffelpreise vorhanden."
      "admin.pricing.index.tiers.form_title" => "Staffelpreis anlegen oder aktualisieren"
      "admin.pricing.index.tiers.group_label" => "Kundengruppe (optional)"
      "admin.pricing.index.tiers.load_failed" => "Staffelpreise konnten nicht geladen werden."
      "admin.pricing.index.tiers.loading" => "Lade…"
      "admin.pricing.index.tiers.min_quantity_label" => "Mindestmenge"
      "admin.pricing.index.tiers.min_quantity_placeholder" => "z. B. 10"
      "admin.pricing.index.tiers.notification_delete_failed" => "Staffelpreis konnte nicht gelöscht werden."
      "admin.pricing.index.tiers.notification_deleted" => "Staffelpreis wurde gelöscht."
      "admin.pricing.index.tiers.notification_invalid_input" => "Bitte Produkt, Mindestmenge und gültigen Preis eingeben."
      "admin.pricing.index.tiers.notification_save_failed" => "Fehler beim Speichern"
      "admin.pricing.index.tiers.notification_saved" => "Staffelpreis wurde gespeichert."
      "admin.pricing.index.tiers.price_label" => "Staffelpreis (Brutto €)"
      "admin.pricing.index.tiers.price_placeholder" => "z. B. 8.50"
      "admin.pricing.index.tiers.product_label" => "Produkt"
      "admin.pricing.index.tiers.product_placeholder" => "-- Produkt suchen --"
      "admin.pricing.index.tiers.section_title" => "Staffelpreise"
      "admin.pricing.index.tiers.table_title" => "Bestehende Staffelpreise"
      "admin.pricing.modal.title" => "Löschen bestätigen"
      "admin.pricing.nav.menu" => "Preisgestaltung"
      "admin.pricing.nav.monitoring" => "Monitoring-Dashboard"
      "admin.pricing.nav.submenu" => "Verwaltung"
      "admin.pricing.notifications.apply_completed" => "Pricing %mode%: %changed%/%checked% Produkte geändert (Regeln: %rules%, Guards: %guards%)."
      "admin.pricing.notifications.apply_mode_dry" => "Dry-Run"
      "admin.pricing.notifications.apply_mode_live" => "Live"
      "admin.pricing.notifications.guard_created" => "Schutzregel wurde erstellt."
      "admin.pricing.notifications.guard_deleted" => "Schutzregel wurde gelöscht."
      "admin.pricing.notifications.guard_name_required" => "Ein Name für die Schutzregel ist erforderlich."
      "admin.pricing.notifications.guard_toggled" => "Schutzregel wurde umgeschaltet."
      "admin.pricing.notifications.rule_created" => "Preisregel wurde erstellt."
      "admin.pricing.notifications.rule_deleted" => "Preisregel wurde gelöscht."
      "admin.pricing.notifications.rule_name_required" => "Ein Regelname ist erforderlich."
      "admin.pricing.notifications.rule_toggled" => "Preisregel wurde umgeschaltet."
      "admin.pricing.rule_scopes.all" => "Alle"
      "admin.pricing.rule_scopes.category" => "Kategorie"
      "admin.pricing.rule_scopes.manufacturer" => "Hersteller"
      "admin.pricing.rule_scopes.tag" => "Tag"
      "admin.pricing.rule_types.fixed_override" => "Fixpreis"
      "admin.pricing.rule_types.percent_decrease" => "Prozent senken"
      "admin.pricing.rule_types.percent_increase" => "Prozent erhöhen"
      "admin.pricing.status.active" => "aktiv"
      "admin.pricing.status.inactive" => "inaktiv"
      "admin.product_configurator.context.body" => "Nutze dieses Modul für CPU-, RAM-, GPU-, SSD- und Zubehör-Gruppen. Das alte /admin/configurable-product-Modul ist nur noch für einfache Varianten gedacht."
      "admin.product_configurator.context.cta_new" => "Neuen PC-/System-Konfigurator anlegen"
      "admin.product_configurator.context.cta_variant" => "Einfachen Varianten-Editor öffnen"
      "admin.product_configurator.context.title" => "Hauptpfad für individuelle Computer"
      "admin.product_configurator.form.actions.add_group" => "Komponenten-Gruppe hinzufügen"
      "admin.product_configurator.form.actions.add_product" => "Komponente hinzufügen"
      "admin.product_configurator.form.actions.back" => "Zurück"
      "admin.product_configurator.form.actions.cancel" => "Abbrechen"
      "admin.product_configurator.form.actions.help" => "Produkthilfe"
      "admin.product_configurator.form.actions.remove_group" => "Gruppe entfernen"
      "admin.product_configurator.form.actions.remove_product" => "Komponente entfernen"
      "admin.product_configurator.form.actions.save" => "Speichern"
      "admin.product_configurator.form.badges.group" => "Systemgruppe"
      "admin.product_configurator.form.cards.base_text" => "Lege das Hauptprodukt fest, aus dem der konfigurierbare Rechner oder Build entsteht."
      "admin.product_configurator.form.cards.base_title" => "Basis-System auswählen"
      "admin.product_configurator.form.cards.group_text" => "Jede Gruppe bildet einen echten Entscheidungsschritt im System-Build."
      "admin.product_configurator.form.cards.group_title" => "Komponenten-Gruppe aufbauen"
      "admin.product_configurator.form.empty.groups" => "Noch keine Komponenten-Gruppen angelegt. Starte z. B. mit CPU, RAM, GPU oder SSD."
      "admin.product_configurator.form.empty.products" => "Diese Gruppe enthält noch keine Komponenten. Füge passende Artikel hinzu."
      "admin.product_configurator.form.fields.base_product" => "Basis-System / Basis-Produkt"
      "admin.product_configurator.form.fields.group_name" => "Gruppenname"
      "admin.product_configurator.form.fields.groups" => "Komponenten-Gruppen"
      "admin.product_configurator.form.fields.price_reduction" => "Preisreduzierung"
      "admin.product_configurator.form.fields.product" => "Komponente"
      "admin.product_configurator.form.fields.product_collection" => "Komponenten"
      "admin.product_configurator.form.guide.items.base" => "Wähle zuerst das Basis-System aus. Es bildet die Hauptposition des konfigurierten Produkts."
      "admin.product_configurator.form.guide.items.group" => "Lege dann pro Auswahlstufe eine Komponenten-Gruppe an, z. B. CPU, RAM, GPU, SSD oder Zubehör."
      "admin.product_configurator.form.guide.items.products" => "Ordne jeder Gruppe nur Komponenten zu, die fachlich zusammengehören und später kompatibel geprüft werden können."
      "admin.product_configurator.form.guide.subtitle" => "Dies ist der Hauptpfad für individuelle Computer und andere System-Builds."
      "admin.product_configurator.form.guide.title" => "System-Build-Schnellhilfe"
      "admin.product_configurator.form.meta_title_edit" => "PC-/System-Konfigurator bearbeiten"
      "admin.product_configurator.form.meta_title_new" => "Neuer PC-/System-Konfigurator"
      "admin.product_configurator.form.notes.builder" => "Jede Gruppe bündelt austauschbare oder kombinierbare Komponenten, die zusammen eine konfigurierte Hauptposition bilden."
      "admin.product_configurator.form.notes.group_name" => "Kurz und klar benennen, z. B. CPU, RAM, GPU oder SSD."
      "admin.product_configurator.form.notes.product_search" => "Suche in großen Produktlisten nach Name oder SKU."
      "admin.product_configurator.form.notes.products" => "Ordne hier die Produkte zu, die der Kunde in dieser Gruppe wählen kann. Optional kannst du pro Komponente eine Preisreduzierung nur für diesen Konfigurator hinterlegen."
      "admin.product_configurator.form.page_subtitle" => "Baue individuelle Computer über Basisprodukt und Komponenten-Gruppen."
      "admin.product_configurator.form.page_title_edit" => "PC-/System-Konfigurator bearbeiten"
      "admin.product_configurator.form.page_title_new" => "Neuer PC-/System-Konfigurator"
      "admin.product_configurator.form.panel_title" => "Formular"
      "admin.product_configurator.form.placeholders.base_product" => "Basis-System auswählen"
      "admin.product_configurator.form.placeholders.group_name" => "z. B. CPU, RAM, GPU oder SSD"
      "admin.product_configurator.form.placeholders.price_reduction" => "0,00"
      "admin.product_configurator.form.placeholders.product" => "Komponente auswählen"
      "admin.product_configurator.form.sections.base" => "Basis-System"
      "admin.product_configurator.form.sections.builder" => "Komponenten-Builder"
      "admin.product_configurator.form.sections.groups" => "Komponenten-Gruppen"
      "admin.product_configurator.form.sections.guide" => "Build-Workflow"
      "admin.product_configurator.form.sections.products" => "Komponenten"
      "admin.product_configurator.index.actions.delete" => "Löschen"
      "admin.product_configurator.index.actions.edit" => "Bearbeiten"
      "admin.product_configurator.index.actions.help" => "Produkthilfe"
      "admin.product_configurator.index.actions.new" => "Neuer PC-/System-Konfigurator"
      "admin.product_configurator.index.delete_confirm" => "System-Konfigurator "%name%" wirklich löschen?"
      "admin.product_configurator.index.headers.actions" => "Aktionen"
      "admin.product_configurator.index.headers.base_product" => "Basis-Produkt"
      "admin.product_configurator.index.headers.groups" => "Gruppen"
      "admin.product_configurator.index.headers.id" => "ID"
      "admin.product_configurator.index.list_count" => "%count% Einträge"
      "admin.product_configurator.index.list_title" => "PC-/System-Konfiguratoren"
      "admin.product_configurator.index.meta_title" => "PC-/System-Konfigurator"
      "admin.product_configurator.index.page_subtitle" => "Hauptmodul für individuelle Computer, Workstations und Komponenten-Builds."
      "admin.product_configurator.index.page_title" => "Alle PC-/System-Konfiguratoren"
      "admin.product_configurator.index.values.empty" => "Keine PC-/System-Konfiguratoren vorhanden."
      "admin.product_configurator.index.values.no_groups" => "Keine Gruppen"
      "admin.product_configurator.notifications.created" => "System-Konfigurator wurde angelegt."
      "admin.product_configurator.notifications.deleted" => "System-Konfigurator wurde gelöscht."
      "admin.product_configurator.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.product_configurator.notifications.updated" => "System-Konfigurator wurde gespeichert."
      "admin.reviews.api.errors.bulk_missing_fields" => "IDs und Status sind erforderlich."
      "admin.reviews.api.errors.review_not_found" => "Bewertung wurde nicht gefunden."
      "admin.reviews.api.validation.invalid_status" => "Ungültiger Status."
      "admin.reviews.help_index.card_subtitle" => "Moderation, Featured und Produktfragen"
      "admin.reviews.help_index.card_title" => "Bewertungen & Q&A"
      "admin.reviews.help_index.table_description" => "Moderation, Featured und Produktfragen"
      "admin.reviews.help_index.table_label" => "Bewertungen & Q&A"
      "admin.reviews.help.actions.back" => "Zurück"
      "admin.reviews.help.actions.module" => "Zum Modul"
      "admin.reviews.help.api.rows.bulk" => "Moderiert mehrere Bewertungen in einem Request."
      "admin.reviews.help.api.rows.delete" => "Löscht eine Bewertung dauerhaft."
      "admin.reviews.help.api.rows.featured" => "Schaltet das featured-Flag einer Bewertung um."
      "admin.reviews.help.api.rows.index" => "Öffnet die Verwaltungsseite für Bewertungen."
      "admin.reviews.help.api.rows.list" => "Gibt die gefilterte Bewertungsliste inklusive Metadaten zurück."
      "admin.reviews.help.api.rows.moderate" => "Setzt den Status einer Bewertung und optional eine Admin-Notiz."
      "admin.reviews.help.api.rows.qa_answer" => "Speichert eine Antwort und setzt den Status auf answered."
      "admin.reviews.help.api.rows.qa_index" => "Öffnet die Admin-Liste für Produktfragen."
      "admin.reviews.help.api.rows.qa_reject" => "Lehnt eine Frage ab und setzt den Status auf rejected."
      "admin.reviews.help.api.rows.summary" => "Liefert die KPI-Zusammenfassung für pending, approved, rejected und spam."
      "admin.reviews.help.api.table.function" => "Funktion"
      "admin.reviews.help.api.table.method" => "Methode"
      "admin.reviews.help.api.table.url" => "URL"
      "admin.reviews.help.api.title" => "API-Endpunkte"
      "admin.reviews.help.bulk.api_note" => "API-Beispiel:"
      "admin.reviews.help.bulk.intro" => "Mehrere Bewertungen lassen sich direkt aus der Listenansicht gemeinsam verarbeiten."
      "admin.reviews.help.bulk.steps.one" => "Gewünschte Bewertungen per Checkbox markieren."
      "admin.reviews.help.bulk.steps.three" => "Die Aktion über den zentralen Admin-Bestätigungsdialog bestätigen."
      "admin.reviews.help.bulk.steps.two" => "Bulk-Aktion für Freigabe, Ablehnung oder Spam wählen."
      "admin.reviews.help.bulk.title" => "Bulk-Moderation"
      "admin.reviews.help.featured.intro" => "Featured-Reviews können im Frontend prominenter platziert oder für besondere Bereiche hervorgehoben werden."
      "admin.reviews.help.featured.points.one" => "Der Stern-Button toggelt das featured-Flag direkt in der Listenansicht."
      "admin.reviews.help.featured.points.three" => "Das Flag ergänzt die normale Moderation, ersetzt sie aber nicht."
      "admin.reviews.help.featured.points.two" => "Die API dafür ist POST /admin/reviews/api/{id}/featured."
      "admin.reviews.help.featured.title" => "Featured-Bewertungen"
      "admin.reviews.help.fields.question.rows.answer" => "Antworttext des Admins."
      "admin.reviews.help.fields.question.rows.answered_at" => "Zeitpunkt der Beantwortung."
      "admin.reviews.help.fields.question.rows.author_email" => "Optional angegebene E-Mail-Adresse."
      "admin.reviews.help.fields.question.rows.author_name" => "Name der fragenden Person."
      "admin.reviews.help.fields.question.rows.created_at" => "Zeitpunkt der Fragestellung."
      "admin.reviews.help.fields.question.rows.product" => "Referenz auf das betreffende Produkt."
      "admin.reviews.help.fields.question.rows.question" => "Vom Kunden eingereichte Frage."
      "admin.reviews.help.fields.question.rows.status" => "Status pending, answered oder rejected."
      "admin.reviews.help.fields.question.title" => "ProductQuestion"
      "admin.reviews.help.fields.review.rows.admin_note" => "Interne Moderationsnotiz, nicht für Kunden sichtbar."
      "admin.reviews.help.fields.review.rows.author_email" => "Optional hinterlegte E-Mail-Adresse."
      "admin.reviews.help.fields.review.rows.author_name" => "Anzeigename des Bewertenden."
      "admin.reviews.help.fields.review.rows.body" => "Freitextinhalt der Bewertung."
      "admin.reviews.help.fields.review.rows.created_at" => "Zeitpunkt der Erstellung."
      "admin.reviews.help.fields.review.rows.customer" => "Optional verknüpfter Shop-Kunde."
      "admin.reviews.help.fields.review.rows.featured" => "Markiert die Bewertung als hervorgehoben."
      "admin.reviews.help.fields.review.rows.moderated_at" => "Zeitpunkt der letzten Moderation."
      "admin.reviews.help.fields.review.rows.product" => "Referenz auf das bewertete Produkt."
      "admin.reviews.help.fields.review.rows.rating" => "Sternebewertung von 1 bis 5."
      "admin.reviews.help.fields.review.rows.status" => "Moderationsstatus pending, approved, rejected oder spam."
      "admin.reviews.help.fields.review.rows.title" => "Kurzer Titel der Bewertung."
      "admin.reviews.help.fields.review.rows.verified_purchase" => "Kennzeichnet Bewertungen aus einem verifizierten Kauf."
      "admin.reviews.help.fields.review.title" => "ProductReview"
      "admin.reviews.help.fields.table.description" => "Beschreibung"
      "admin.reviews.help.fields.table.field" => "Feld"
      "admin.reviews.help.fields.table.type" => "Typ"
      "admin.reviews.help.fields.title" => "Feldreferenz"
      "admin.reviews.help.fields.types.boolean" => "Boolean"
      "admin.reviews.help.fields.types.datetime" => "Datum / Zeit"
      "admin.reviews.help.fields.types.integer" => "Integer"
      "admin.reviews.help.fields.types.relation" => "Relation"
      "admin.reviews.help.fields.types.text" => "Text"
      "admin.reviews.help.navigation.api" => "API-Endpunkte"
      "admin.reviews.help.navigation.bulk" => "Bulk-Aktionen"
      "admin.reviews.help.navigation.featured" => "Featured-Bewertungen"
      "admin.reviews.help.navigation.fields" => "Feldreferenz"
      "admin.reviews.help.navigation.overview" => "Überblick"
      "admin.reviews.help.navigation.qa" => "Produktfragen (Q&A)"
      "admin.reviews.help.navigation.reviews" => "Bewertungen moderieren"
      "admin.reviews.help.navigation.title" => "Navigation"
      "admin.reviews.help.overview.cards.featured_text" => "Hebe ausgewählte Bewertungen hervor und nutze sie gezielt im Frontend."
      "admin.reviews.help.overview.cards.featured_title" => "Featured"
      "admin.reviews.help.overview.cards.moderation_text" => "Prüfe neue Bewertungen, setze Status und hinterlege interne Notizen."
      "admin.reviews.help.overview.cards.moderation_title" => "Moderation"
      "admin.reviews.help.overview.cards.qa_text" => "Beantworte offene Kundenfragen direkt unter /admin/reviews/qa."
      "admin.reviews.help.overview.cards.qa_title" => "Produktfragen"
      "admin.reviews.help.overview.intro" => "Das Modul bündelt die Moderation von Produktbewertungen und Produktfragen. Bewertungen bleiben bis zur Freigabe unsichtbar, und Fragen werden direkt über den Admin beantwortet oder abgelehnt."
      "admin.reviews.help.overview.permissions_title" => "Berechtigungen:"
      "admin.reviews.help.overview.permissions.qa_manage" => "Produktfragen anzeigen, beantworten und ablehnen"
      "admin.reviews.help.overview.permissions.review_delete" => "Bewertungen löschen"
      "admin.reviews.help.overview.permissions.review_edit" => "Featured-Status umschalten"
      "admin.reviews.help.overview.permissions.review_list" => "Bewertungen anzeigen"
      "admin.reviews.help.overview.permissions.review_manage" => "Bewertungen moderieren und Bulk-Aktionen ausführen"
      "admin.reviews.help.overview.title" => "Bewertungs- und Q&A-System: Überblick"
      "admin.reviews.help.page_title" => "Hilfe: Bewertungen & Produktfragen"
      "admin.reviews.help.qa.intro" => "Produktfragen werden über /admin/reviews/qa verwaltet. Jede Frage referenziert ein Produkt und kann beantwortet oder abgelehnt werden."
      "admin.reviews.help.qa.status_title" => "Q&A-Statusmodell"
      "admin.reviews.help.qa.status.answered" => "Frage wurde beantwortet; answeredAt enthält den Bearbeitungszeitpunkt."
      "admin.reviews.help.qa.status.pending" => "Frage ist neu eingegangen und wartet auf Bearbeitung."
      "admin.reviews.help.qa.status.rejected" => "Frage wurde abgelehnt und wird nicht weiter genutzt."
      "admin.reviews.help.qa.steps.one" => "Offene Frage prüfen und den Produktkontext kontrollieren."
      "admin.reviews.help.qa.steps.three" => "Ungeeignete oder irrelevante Fragen ablehnen."
      "admin.reviews.help.qa.steps.two" => "Antwort direkt im Formular hinterlegen und speichern."
      "admin.reviews.help.qa.title" => "Produktfragen & Antworten (Q&A)"
      "admin.reviews.help.reviews.filter_note" => "Die Liste filtert nach Status und durchsucht Produktname, Autor und Bewertungstext."
      "admin.reviews.help.reviews.intro" => "Neue Bewertungen starten im Status pending. Erst nach einer Freigabe erscheinen sie im Shop."
      "admin.reviews.help.reviews.status_title" => "Statusmodell"
      "admin.reviews.help.reviews.status.approved" => "Bewertung ist freigegeben und kann öffentlich angezeigt werden."
      "admin.reviews.help.reviews.status.pending" => "Bewertung wartet auf Prüfung und ist im Shop nicht sichtbar."
      "admin.reviews.help.reviews.status.rejected" => "Bewertung wurde verworfen, bleibt aber intern nachvollziehbar."
      "admin.reviews.help.reviews.status.spam" => "Bewertung wurde als Spam markiert und aus regulären Freigabeprozessen entfernt."
      "admin.reviews.help.reviews.steps.four" => "Bei Ablehnungen optional eine interne Admin-Notiz erfassen."
      "admin.reviews.help.reviews.steps.one" => "Statusfilter und Suche eingrenzen, um die relevanten Bewertungen schnell zu finden."
      "admin.reviews.help.reviews.steps.three" => "Bewertung freigeben, ablehnen oder als Spam markieren."
      "admin.reviews.help.reviews.steps.two" => "Inhalt, Sternebewertung, Autor und Kaufverifizierung prüfen."
      "admin.reviews.help.reviews.title" => "Bewertungen moderieren"
      "admin.reviews.index.actions.approve" => "Freigeben"
      "admin.reviews.index.actions.confirm" => "Bestätigen"
      "admin.reviews.index.actions.delete" => "Löschen"
      "admin.reviews.index.actions.reject" => "Ablehnen"
      "admin.reviews.index.actions.spam" => "Spam markieren"
      "admin.reviews.index.actions.toggle_featured" => "Featured umschalten"
      "admin.reviews.index.bulk.approve" => "Freigeben"
      "admin.reviews.index.bulk.clear" => "Auswahl aufheben"
      "admin.reviews.index.bulk.confirm" => "%count% Bewertung(en) auf "%status%" setzen?"
      "admin.reviews.index.bulk.reject" => "Ablehnen"
      "admin.reviews.index.bulk.selected" => "ausgewählt"
      "admin.reviews.index.bulk.spam" => "Als Spam markieren"
      "admin.reviews.index.filters.all_status" => "Alle Status"
      "admin.reviews.index.filters.help" => "Hilfe"
      "admin.reviews.index.filters.refresh" => "Aktualisieren"
      "admin.reviews.index.filters.search_placeholder" => "Nach Produkt, Autor oder Text suchen"
      "admin.reviews.index.help_title" => "Hilfe zu Bewertungen und Produktfragen"
      "admin.reviews.index.kpi.approved" => "Freigegeben"
      "admin.reviews.index.kpi.pending" => "Wartend"
      "admin.reviews.index.kpi.rejected" => "Abgelehnt"
      "admin.reviews.index.kpi.spam" => "Spam"
      "admin.reviews.index.list.badges.featured" => "Featured"
      "admin.reviews.index.list.badges.verified_purchase" => "Verifizierter Kauf"
      "admin.reviews.index.list.empty" => "Für diesen Filter wurden keine Bewertungen gefunden."
      "admin.reviews.index.list.headers.actions" => "Aktionen"
      "admin.reviews.index.list.headers.author" => "Autor"
      "admin.reviews.index.list.headers.content" => "Inhalt"
      "admin.reviews.index.list.headers.date" => "Datum"
      "admin.reviews.index.list.headers.product" => "Produkt"
      "admin.reviews.index.list.headers.rating" => "Bewertung"
      "admin.reviews.index.list.headers.status" => "Status"
      "admin.reviews.index.list.load_error" => "Beim Laden der Bewertungen ist ein Fehler aufgetreten."
      "admin.reviews.index.list.loading" => "Bewertungen werden geladen..."
      "admin.reviews.index.list.title" => "Bewertungsliste"
      "admin.reviews.index.list.values.no_email" => "Keine E-Mail"
      "admin.reviews.index.modals.note.cancel" => "Abbrechen"
      "admin.reviews.index.modals.note.placeholder" => "Interne Notiz (optional)"
      "admin.reviews.index.modals.note.save" => "Speichern & Moderieren"
      "admin.reviews.index.modals.note.title" => "Admin-Notiz speichern"
      "admin.reviews.index.notices.bulk_failed" => "Die Bulk-Aktion ist fehlgeschlagen."
      "admin.reviews.index.notices.bulk_success" => "%count% Bewertung(en) wurden aktualisiert."
      "admin.reviews.index.notices.delete_confirm" => "Soll diese Bewertung wirklich gelöscht werden?"
      "admin.reviews.index.notices.delete_failed" => "Die Bewertung konnte nicht gelöscht werden."
      "admin.reviews.index.notices.delete_success" => "Bewertung wurde gelöscht."
      "admin.reviews.index.notices.featured_disabled" => "Featured-Markierung wurde entfernt."
      "admin.reviews.index.notices.featured_enabled" => "Bewertung wurde als Featured markiert."
      "admin.reviews.index.notices.featured_failed" => "Featured-Status konnte nicht geändert werden."
      "admin.reviews.index.notices.moderation_failed" => "Die Moderationsaktion ist fehlgeschlagen."
      "admin.reviews.index.notices.moderation_saved" => "Bewertung wurde auf "%status%" gesetzt."
      "admin.reviews.index.page_subtitle" => "Moderation, Bulk-Aktionen und Featured-Reviews in einer Oberfläche."
      "admin.reviews.index.page_title" => "Bewertungsmoderation"
      "admin.reviews.meta.title" => "Bewertungen & Q&A"
      "admin.reviews.nav.menu" => "Bewertungen"
      "admin.reviews.nav.submenu_qa" => "Produkt Q&A"
      "admin.reviews.nav.submenu_reviews" => "Moderation"
      "admin.reviews.qa.index.actions.answer" => "Antwort speichern"
      "admin.reviews.qa.index.actions.reject" => "Ablehnen"
      "admin.reviews.qa.index.actions.reject_confirm" => "Diese Frage wirklich ablehnen?"
      "admin.reviews.qa.index.answer.existing_label" => "Vorhandene Antwort"
      "admin.reviews.qa.index.answer.placeholder" => "Antworttext"
      "admin.reviews.qa.index.page_subtitle" => "Kundenfragen beantworten und ungeeignete Inhalte direkt im Backend moderieren."
      "admin.reviews.qa.index.page_title" => "Produkt Q&A Moderation"
      "admin.reviews.qa.index.panel_title" => "Fragen"
      "admin.reviews.qa.index.table.empty" => "Keine Fragen vorhanden."
      "admin.reviews.qa.index.table.headers.actions" => "Aktionen"
      "admin.reviews.qa.index.table.headers.product" => "Produkt"
      "admin.reviews.qa.index.table.headers.question" => "Frage & Antwort"
      "admin.reviews.qa.index.table.headers.status" => "Status"
      "admin.reviews.qa.index.toolbar.help" => "Hilfe"
      "admin.reviews.qa.meta.title" => "Produkt Q&A Moderation"
      "admin.reviews.qa.notifications.answer_required" => "Die Antwort darf nicht leer sein."
      "admin.reviews.qa.notifications.answered" => "Die Frage wurde beantwortet."
      "admin.reviews.qa.notifications.rejected" => "Die Frage wurde abgelehnt."
      "admin.reviews.qa.status.answered" => "Beantwortet"
      "admin.reviews.qa.status.pending" => "Wartend"
      "admin.reviews.qa.status.rejected" => "Abgelehnt"
      "admin.reviews.status.approved" => "Freigegeben"
      "admin.reviews.status.pending" => "Wartend"
      "admin.reviews.status.rejected" => "Abgelehnt"
      "admin.reviews.status.spam" => "Spam"
      "admin.rma.api.errors.customer_not_found" => "Kunde nicht gefunden."
      "admin.rma.api.errors.not_found" => "Eintrag nicht gefunden."
      "admin.rma.api.errors.rma_not_found" => "RMA nicht gefunden."
      "admin.rma.api.validation.customer_not_found" => "Der gewählte Shop-Kunde existiert nicht."
      "admin.rma.api.validation.invalid_status" => "Ungültiger Status."
      "admin.rma.api.validation.product_not_found" => "Das gewählte Produkt existiert nicht."
      "admin.rma.api.validation.product_not_purchased" => "Das gewählte Produkt gehört nicht zu den Bestellungen des gewählten Shop-Kunden."
      "admin.rma.help_index.card_subtitle" => "Anlegen, Status, Analyse, Labels"
      "admin.rma.help_index.card_title" => "Retouren (RMA)"
      "admin.rma.help_index.table_description" => "Retourenverwaltung mit Status- und Analytikfunktionen"
      "admin.rma.help_index.table_label" => "RMA / Retouren"
      "admin.rma.help.actions.back" => "Zurück"
      "admin.rma.help.actions.module" => "Zum Modul"
      "admin.rma.help.analytics.api_label" => "API:"
      "admin.rma.help.analytics.intro" => "Der Analytics-Bereich zeigt Gründe, Statusverteilung und durchschnittliche Bearbeitungsdauer im gewählten Zeitraum."
      "admin.rma.help.analytics.items.avg_processing" => "Durchschnittliche Bearbeitungsdauer pro Grund, sofern entschieden"
      "admin.rma.help.analytics.items.reasons" => "Retourengründe mit Anzahl und Prozentanteil"
      "admin.rma.help.analytics.items.statuses" => "Statusverteilung im Zeitraum"
      "admin.rma.help.analytics.title" => "Analyse & KPIs"
      "admin.rma.help.api.rows.analytics" => "Analyse-Daten als JSON"
      "admin.rma.help.api.rows.create" => "Neue RMA anlegen"
      "admin.rma.help.api.rows.customer_products" => "Bestellte Produkte eines Shop-Kunden laden"
      "admin.rma.help.api.rows.delete" => "RMA löschen"
      "admin.rma.help.api.rows.index" => "RMA-Verwaltungsseite"
      "admin.rma.help.api.rows.label" => "Druckansicht des Retourenscheins"
      "admin.rma.help.api.rows.list" => "RMA-Liste als JSON mit Filtern"
      "admin.rma.help.api.rows.summary" => "KPI-Zusammenfassung als JSON"
      "admin.rma.help.api.rows.update_status" => "Status aktualisieren"
      "admin.rma.help.api.table.function" => "Funktion"
      "admin.rma.help.api.table.method" => "Methode"
      "admin.rma.help.api.table.url" => "URL"
      "admin.rma.help.api.title" => "API-Endpunkte"
      "admin.rma.help.create.note" => "Die Produktauswahl ist auf Artikel beschränkt, die der gewählte Shop-Kunde bereits gekauft hat."
      "admin.rma.help.create.reasons_title" => "Verfügbare Rückgabegründe:"
      "admin.rma.help.create.steps.five" => "Speichern; der Antrag wird angelegt und eine Bestätigungs-E-Mail wird, falls konfiguriert, versendet."
      "admin.rma.help.create.steps.four" => "Grund, Beschreibung und Menge festlegen."
      "admin.rma.help.create.steps.one" => "Im RMA-Modul auf "Neuer RMA" klicken."
      "admin.rma.help.create.steps.three" => "Ein Produkt aus den bisherigen Bestellungen dieses Kunden auswählen."
      "admin.rma.help.create.steps.two" => "Shop-Kunden auswählen; die E-Mail-Adresse wird automatisch übernommen."
      "admin.rma.help.create.title" => "RMA manuell anlegen (Admin)"
      "admin.rma.help.fields.rows.completed_at" => "Zeitpunkt des Abschlusses."
      "admin.rma.help.fields.rows.customer" => "Verknüpfter Kunde."
      "admin.rma.help.fields.rows.customer_email" => "Gespeicherte E-Mail-Adresse des Kunden."
      "admin.rma.help.fields.rows.customer_name" => "Gespeicherter Anzeigename des Kunden."
      "admin.rma.help.fields.rows.decided_at" => "Zeitpunkt der Genehmigung oder Ablehnung."
      "admin.rma.help.fields.rows.description" => "Freitext-Beschreibung des Kunden oder Admins."
      "admin.rma.help.fields.rows.internal_note" => "Interne Admin-Notiz."
      "admin.rma.help.fields.rows.order" => "Optional verknüpfte Bestellung."
      "admin.rma.help.fields.rows.product" => "Retourniertes Produkt."
      "admin.rma.help.fields.rows.quantity" => "Retourenmenge."
      "admin.rma.help.fields.rows.reason" => "Rückgabegrund."
      "admin.rma.help.fields.rows.refund_amount" => "Erstattungsbetrag in Euro."
      "admin.rma.help.fields.rows.requested_at" => "Zeitpunkt der Antragserstellung."
      "admin.rma.help.fields.rows.return_tracking_code" => "Trackingcode für die Rücksendung."
      "admin.rma.help.fields.rows.rma_number" => "Automatisch generierte RMA-Nummer."
      "admin.rma.help.fields.rows.status" => "Aktueller Status des Antrags."
      "admin.rma.help.fields.table.description" => "Beschreibung"
      "admin.rma.help.fields.table.field" => "Feld"
      "admin.rma.help.fields.table.type" => "Typ"
      "admin.rma.help.fields.title" => "Feldreferenz: RmaRequest"
      "admin.rma.help.fields.types.datetime" => "Datum/Zeit"
      "admin.rma.help.fields.types.decimal" => "Dezimal"
      "admin.rma.help.fields.types.enum" => "Enum"
      "admin.rma.help.fields.types.integer" => "Integer"
      "admin.rma.help.fields.types.relation" => "Relation"
      "admin.rma.help.fields.types.text" => "Text"
      "admin.rma.help.label.intro" => "Für vorhandene RMAs kann eine druckbare Retourenansicht geöffnet werden."
      "admin.rma.help.label.items.one" => "In der RMA-Liste den Druck-Button verwenden."
      "admin.rma.help.label.items.three" => "Enthält RMA-Nummer, Kunden- und Produktdaten, Grund, Tracking und Hinweise zur Rücksendung."
      "admin.rma.help.label.items.two" => "Direkt-URL: /admin/rma/label/{id}"
      "admin.rma.help.label.title" => "Retourenschein drucken"
      "admin.rma.help.navigation.analytics" => "Analyse & KPIs"
      "admin.rma.help.navigation.api" => "API-Endpunkte"
      "admin.rma.help.navigation.create" => "RMA manuell anlegen"
      "admin.rma.help.navigation.fields" => "Feldreferenz"
      "admin.rma.help.navigation.label" => "Retourenschein"
      "admin.rma.help.navigation.overview" => "Überblick"
      "admin.rma.help.navigation.title" => "Navigation"
      "admin.rma.help.navigation.workflow" => "Status-Workflow"
      "admin.rma.help.overview.intro" => "Das RMA-Modul bündelt Retourenanträge aus dem Shop und manuell angelegte Admin-RMAs in einer Oberfläche."
      "admin.rma.help.overview.permissions_label" => "Berechtigungen:"
      "admin.rma.help.overview.permissions.delete" => "Löschen"
      "admin.rma.help.overview.permissions.edit" => "Status ändern"
      "admin.rma.help.overview.permissions.list" => "Anzeigen"
      "admin.rma.help.overview.permissions.manage" => "Erstellen und verwalten"
      "admin.rma.help.overview.tiles_title" => "KPI-Kacheln auf der RMA-Seite:"
      "admin.rma.help.overview.tiles.approved" => "Genehmigte Retouren"
      "admin.rma.help.overview.tiles.completed" => "Abgeschlossene Retouren"
      "admin.rma.help.overview.tiles.in_review" => "Anträge in Prüfung"
      "admin.rma.help.overview.tiles.open" => "Offene Anträge"
      "admin.rma.help.overview.tiles.rejected" => "Abgelehnte Retouren"
      "admin.rma.help.overview.tiles.total" => "Gesamtzahl der RMAs"
      "admin.rma.help.overview.title" => "RMA-System: Überblick"
      "admin.rma.help.page_title" => "Hilfe: Retouren (RMA)"
      "admin.rma.help.workflow.intro" => "Statusänderungen werden über das Modal vorgenommen und können interne Notiz, Erstattungsbetrag und Rücksende-Tracking enthalten."
      "admin.rma.help.workflow.rows.approved.action" => "Retourenschein drucken und Tracking erfassen."
      "admin.rma.help.workflow.rows.approved.meaning" => "Retoure genehmigt."
      "admin.rma.help.workflow.rows.cancelled.action" => "Keine weitere Aktion erforderlich."
      "admin.rma.help.workflow.rows.cancelled.meaning" => "Antrag storniert."
      "admin.rma.help.workflow.rows.completed.action" => "Keine weitere Aktion erforderlich."
      "admin.rma.help.workflow.rows.completed.meaning" => "Vorgang abgeschlossen."
      "admin.rma.help.workflow.rows.in_review.action" => "Entscheidung treffen."
      "admin.rma.help.workflow.rows.in_review.meaning" => "Wird aktuell geprüft."
      "admin.rma.help.workflow.rows.open.action" => "Prüfung starten."
      "admin.rma.help.workflow.rows.open.meaning" => "Neu eingegangen."
      "admin.rma.help.workflow.rows.rejected.action" => "Begründung intern dokumentieren und Statusmail auslösen."
      "admin.rma.help.workflow.rows.rejected.meaning" => "Retoure abgelehnt."
      "admin.rma.help.workflow.table.meaning" => "Bedeutung"
      "admin.rma.help.workflow.table.next_action" => "Folgeaktion"
      "admin.rma.help.workflow.table.status" => "Status"
      "admin.rma.help.workflow.title" => "Status-Workflow"
      "admin.rma.index.analytics.avg_unavailable" => ""
      "admin.rma.index.analytics.days_180" => "Letzte 180 Tage"
      "admin.rma.index.analytics.days_30" => "Letzte 30 Tage"
      "admin.rma.index.analytics.days_365" => "Letztes Jahr"
      "admin.rma.index.analytics.days_90" => "Letzte 90 Tage"
      "admin.rma.index.analytics.days_suffix" => "Tage"
      "admin.rma.index.analytics.error" => "Analytics konnten nicht geladen werden."
      "admin.rma.index.analytics.range_label" => "Zeitraum"
      "admin.rma.index.analytics.reason_table.avg_processing" => "Ø Bearbeitungszeit"
      "admin.rma.index.analytics.reason_table.count" => "Anzahl"
      "admin.rma.index.analytics.reason_table.empty" => "Keine Daten"
      "admin.rma.index.analytics.reason_table.loading" => "Lade…"
      "admin.rma.index.analytics.reason_table.reason" => "Grund"
      "admin.rma.index.analytics.reason_table.share" => "Anteil"
      "admin.rma.index.analytics.status_table.count" => "Anzahl"
      "admin.rma.index.analytics.status_table.empty" => "Keine Daten"
      "admin.rma.index.analytics.status_table.loading" => "Lade…"
      "admin.rma.index.analytics.status_table.status" => "Status"
      "admin.rma.index.analytics.title" => "Retourengrund-Analytik"
      "admin.rma.index.buttons.delete" => "Löschen"
      "admin.rma.index.buttons.print_label" => "Retourenschein drucken"
      "admin.rma.index.buttons.status" => "Status"
      "admin.rma.index.filters.all_status" => "Alle Status"
      "admin.rma.index.filters.help" => "Hilfe"
      "admin.rma.index.filters.new" => "Neuer RMA"
      "admin.rma.index.filters.refresh" => "Aktualisieren"
      "admin.rma.index.filters.search_placeholder" => "RMA-Nr., Kunde, …"
      "admin.rma.index.help_title" => "Hilfe zu diesem Modul"
      "admin.rma.index.kpi.approved" => "Genehmigt"
      "admin.rma.index.kpi.completed" => "Abgeschlossen"
      "admin.rma.index.kpi.in_review" => "In Prüfung"
      "admin.rma.index.kpi.open" => "Offen"
      "admin.rma.index.kpi.rejected" => "Abgelehnt"
      "admin.rma.index.kpi.total" => "Gesamt"
      "admin.rma.index.list.empty" => "Keine Einträge in diesem Filter."
      "admin.rma.index.list.headers.actions" => "Aktionen"
      "admin.rma.index.list.headers.customer" => "Kunde"
      "admin.rma.index.list.headers.product" => "Produkt"
      "admin.rma.index.list.headers.reason" => "Grund"
      "admin.rma.index.list.headers.refund" => "Erstattung"
      "admin.rma.index.list.headers.requested_at" => "Eingegangen"
      "admin.rma.index.list.headers.rma_number" => "RMA-Nr."
      "admin.rma.index.list.headers.status" => "Status"
      "admin.rma.index.list.headers.tracking" => "Tracking"
      "admin.rma.index.list.load_error" => "Fehler beim Laden."
      "admin.rma.index.list.loading" => "Lade…"
      "admin.rma.index.list.title" => "RMA-Anträge"
      "admin.rma.index.modals.confirm.confirm" => "Bestätigen"
      "admin.rma.index.modals.confirm.delete_message" => "RMA-Antrag wirklich löschen?"
      "admin.rma.index.modals.create.cancel" => "Abbrechen"
      "admin.rma.index.modals.create.customer_label" => "Shop-Kunde"
      "admin.rma.index.modals.create.customer_placeholder" => "Bitte Shop-Kunden auswählen"
      "admin.rma.index.modals.create.description_label" => "Beschreibung"
      "admin.rma.index.modals.create.email_label" => "E-Mail"
      "admin.rma.index.modals.create.product_help" => "Nur Produkte aus den Bestellungen dieses Kunden."
      "admin.rma.index.modals.create.product_label" => "Produkt des Shop-Kunden"
      "admin.rma.index.modals.create.product_placeholder_empty" => "Keine bestellten Produkte gefunden"
      "admin.rma.index.modals.create.product_placeholder_error" => "Fehler beim Laden der Produkte"
      "admin.rma.index.modals.create.product_placeholder_initial" => "Bitte zuerst Shop-Kunden auswählen"
      "admin.rma.index.modals.create.product_placeholder_loading" => "Produkte werden geladen..."
      "admin.rma.index.modals.create.product_placeholder_select" => "Produkt auswählen"
      "admin.rma.index.modals.create.quantity_label" => "Menge"
      "admin.rma.index.modals.create.reason_label" => "Grund"
      "admin.rma.index.modals.create.save" => "Erstellen"
      "admin.rma.index.modals.create.title" => "Neuen RMA-Antrag erstellen"
      "admin.rma.index.modals.status.cancel" => "Abbrechen"
      "admin.rma.index.modals.status.note_label" => "Interne Notiz"
      "admin.rma.index.modals.status.note_placeholder" => "Interne Notiz (optional)"
      "admin.rma.index.modals.status.refund_label" => "Erstattungsbetrag (€)"
      "admin.rma.index.modals.status.refund_placeholder" => "Optional"
      "admin.rma.index.modals.status.save" => "Speichern"
      "admin.rma.index.modals.status.status_label" => "Neuer Status"
      "admin.rma.index.modals.status.title" => "RMA-Status aktualisieren"
      "admin.rma.index.modals.status.tracking_label" => "Retourenverfolgungscode"
      "admin.rma.index.modals.status.tracking_placeholder" => "Optional"
      "admin.rma.index.notices.create_failed" => "Erstellen fehlgeschlagen"
      "admin.rma.index.notices.created" => "RMA-Antrag wurde angelegt."
      "admin.rma.index.notices.delete_failed" => "Löschen fehlgeschlagen."
      "admin.rma.index.notices.deleted" => "RMA-Antrag wurde gelöscht."
      "admin.rma.index.notices.products_load_failed" => "Produktliste des Kunden konnte nicht geladen werden."
      "admin.rma.index.notices.select_customer" => "Bitte zuerst einen Shop-Kunden auswählen."
      "admin.rma.index.notices.select_product" => "Bitte ein Produkt des gewählten Shop-Kunden auswählen."
      "admin.rma.index.notices.status_failed" => "Status-Update fehlgeschlagen."
      "admin.rma.index.notices.status_saved" => "RMA-Status wurde gespeichert."
      "admin.rma.index.notices.unexpected_response" => "Unerwartete Antwort"
      "admin.rma.index.page_subtitle" => "Retourenanträge, Statuswechsel und Auswertungen an einem Ort."
      "admin.rma.index.page_title" => "RMA / Retourenportal"
      "admin.rma.index.values.not_available" => ""
      "admin.rma.label.back_link" => "Zurück zur Übersicht"
      "admin.rma.label.customer_title" => "Kundeninformationen"
      "admin.rma.label.description_title" => "Kundenbeschreibung"
      "admin.rma.label.fields.approved_amount" => "Genehmigter Betrag"
      "admin.rma.label.fields.email" => "E-Mail"
      "admin.rma.label.fields.item" => "Artikel"
      "admin.rma.label.fields.name" => "Name"
      "admin.rma.label.fields.order_number" => "Bestellnummer"
      "admin.rma.label.fields.quantity" => "Menge"
      "admin.rma.label.fields.reason" => "Retourengrund"
      "admin.rma.label.fields.sku" => "SKU / Art.-Nr."
      "admin.rma.label.footer.document_created" => "Dokument erstellt"
      "admin.rma.label.footer.pending" => "ausstehend"
      "admin.rma.label.footer.processed_at" => "Bearbeitet am"
      "admin.rma.label.footer.requested_at" => "Retourendatum"
      "admin.rma.label.instructions.steps.four" => "Bewahren Sie den Sendungsnachweis bis zur Bearbeitung Ihrer Retoure auf."
      "admin.rma.label.instructions.steps.one" => "Verpacken Sie den Artikel sicher im Originalkarton oder gleichwertigem Material."
      "admin.rma.label.instructions.steps.three" => "Geben Sie das Paket bei Ihrem Paketdienstleister ab."
      "admin.rma.label.instructions.steps.two" => "Legen Sie diesen Retourenschein dem Paket bei."
      "admin.rma.label.instructions.title" => "Hinweise zur Rücksendung:"
      "admin.rma.label.item_title" => "Artikelinformationen"
      "admin.rma.label.number_label" => "RMA-Nummer"
      "admin.rma.label.print_button" => "Drucken / Als PDF speichern"
      "admin.rma.label.quantity_value" => "%count% Stück"
      "admin.rma.label.refund_title" => "Erstattung"
      "admin.rma.label.sheet_subtitle" => "Bitte diesem Paket beilegen"
      "admin.rma.label.sheet_title" => "RETOURENSCHEIN"
      "admin.rma.label.title" => "Retourenschein %rmaNumber%"
      "admin.rma.label.tracking.barcode_placeholder" => "[ Barcode / QR wird durch Paketdienstleister bereitgestellt ]"
      "admin.rma.label.tracking.missing" => "Noch kein Tracking-Code zugewiesen. Bitte als Retoure ohne Voretikett einliefern."
      "admin.rma.label.tracking.title" => "Rücksende-Tracking"
      "admin.rma.meta.title" => "RMA / Retouren"
      "admin.rma.nav.menu" => "RMA / Retouren"
      "admin.rma.nav.submenu" => "RMA-Anträge"
      "admin.rma.reasons.change_of_mind" => "Meinungsänderung"
      "admin.rma.reasons.defective" => "Defekt"
      "admin.rma.reasons.not_as_described" => "Nicht wie beschrieben"
      "admin.rma.reasons.other" => "Sonstiges"
      "admin.rma.reasons.wrong_item" => "Falscher Artikel"
      "admin.rma.status.approved" => "Genehmigt"
      "admin.rma.status.cancelled" => "Storniert"
      "admin.rma.status.completed" => "Abgeschlossen"
      "admin.rma.status.in_review" => "In Prüfung"
      "admin.rma.status.open" => "Offen"
      "admin.rma.status.rejected" => "Abgelehnt"
      "admin.roles.actions.back" => "Zurück"
      "admin.roles.actions.back_to_profile_list" => "Zurück zur Profilliste"
      "admin.roles.actions.cancel" => "Abbrechen"
      "admin.roles.actions.delete" => "Löschen"
      "admin.roles.actions.edit" => "Bearbeiten"
      "admin.roles.actions.execute" => "Ausführen"
      "admin.roles.actions.help" => "Hilfe"
      "admin.roles.actions.new_profile" => "Neues Profil"
      "admin.roles.actions.save_profile" => "Profil speichern"
      "admin.roles.form.action_labels.access" => "Modulzugriff"
      "admin.roles.form.action_labels.activate" => "Aktivieren"
      "admin.roles.form.action_labels.add" => "Neu anlegen"
      "admin.roles.form.action_labels.api" => "API-Zugriff"
      "admin.roles.form.action_labels.audit" => "Audit sehen"
      "admin.roles.form.action_labels.base" => "Bereich öffnen"
      "admin.roles.form.action_labels.delete" => "Löschen"
      "admin.roles.form.action_labels.edit" => "Bearbeiten"
      "admin.roles.form.action_labels.import" => "Importieren"
      "admin.roles.form.action_labels.list" => "Übersicht sehen"
      "admin.roles.form.action_labels.manage" => "Alles verwalten"
      "admin.roles.form.action_labels.map" => "Mapping bearbeiten"
      "admin.roles.form.action_labels.preview" => "Preview öffnen"
      "admin.roles.form.action_labels.publish" => "Veröffentlichen"
      "admin.roles.form.action_labels.revisions" => "Versionen sehen"
      "admin.roles.form.action_labels.rollback" => "Rollback ausführen"
      "admin.roles.form.action_labels.run" => "Ausführen"
      "admin.roles.form.action_labels.view" => "Details sehen"
      "admin.roles.form.basics_subtitle" => "Benenne das Profil so, dass sein Einsatzzweck später in der Benutzerverwaltung sofort erkennbar ist."
      "admin.roles.form.basics_title" => "Profil-Basisdaten"
      "admin.roles.form.clear_all" => "Alle abwählen"
      "admin.roles.form.clear_group" => "Alle in dieser Gruppe abwählen"
      "admin.roles.form.collapse_all" => "Alle schließen"
      "admin.roles.form.create_title" => "Rollenprofil anlegen"
      "admin.roles.form.critical_permission" => "Weitreichende Berechtigung"
      "admin.roles.form.edit_title" => "Rollenprofil bearbeiten"
      "admin.roles.form.expand_all" => "Alle öffnen"
      "admin.roles.form.filter_placeholder" => "Modul oder Aktion filtern…"
      "admin.roles.form.modules.account" => "Eigenes Konto"
      "admin.roles.form.modules.alerts" => "Alerts"
      "admin.roles.form.modules.analytics" => "Analytics & Dashboard"
      "admin.roles.form.modules.booking_hospitality" => "Buchungen & Unterkunft"
      "admin.roles.form.modules.catalog" => "Produkte & Katalog"
      "admin.roles.form.modules.editorial" => "Redaktion"
      "admin.roles.form.modules.experiments" => "Experimente"
      "admin.roles.form.modules.import_data" => "Import & Datenpflege"
      "admin.roles.form.modules.layout" => "Navigation & Layout"
      "admin.roles.form.modules.orders_customers" => "Bestellungen & Kunden"
      "admin.roles.form.modules.other" => "Nicht zugeordnete Gruppe"
      "admin.roles.form.modules.pages" => "Seiten"
      "admin.roles.form.modules.pricing_actions" => "Preise & Aktionen"
      "admin.roles.form.modules.reviews_feeds" => "Bewertungen & Feeds"
      "admin.roles.form.modules.seo" => "SEO & FAQ"
      "admin.roles.form.modules.settings" => "Einstellungen"
      "admin.roles.form.modules.shipping_returns" => "Versand & Retouren"
      "admin.roles.form.modules.themes" => "Themes"
      "admin.roles.form.modules.users_rights" => "Benutzer & Rechte"
      "admin.roles.form.name_help" => "Der Profilname ist intern sichtbar und sollte die Aufgabe des Profils klar beschreiben."
      "admin.roles.form.name_placeholder" => "z.B. Content-Manager, Shop-Admin, Support"
      "admin.roles.form.no_filter_results" => "Keine Berechtigungen für den aktuellen Filter gefunden."
      "admin.roles.form.no_roles_available" => "Keine Rollen verfügbar."
      "admin.roles.form.permissions_subtitle" => "Die Bereiche folgen der neuen Admin-Sidebar, damit Auswahl und spätere Navigation zusammenpassen."
      "admin.roles.form.permissions_title" => "Berechtigungen"
      "admin.roles.form.presets_subtitle" => "Starte mit einer typischen Rechteauswahl und passe sie anschließend manuell an."
      "admin.roles.form.presets_title" => "Vorlage wählen"
      "admin.roles.form.presets.content.text" => "Seiten, Navigation, Layout-Bausteine und Redaktion pflegen."
      "admin.roles.form.presets.content.title" => "Content-Manager"
      "admin.roles.form.presets.marketing.text" => "Analytics, SEO, Feeds, Aktionen und Experimente steuern."
      "admin.roles.form.presets.marketing.title" => "Marketing & SEO"
      "admin.roles.form.presets.readonly.text" => "Leserechte und Hilfezugriff als sichere Ausgangsbasis."
      "admin.roles.form.presets.readonly.title" => "Nur Lesen"
      "admin.roles.form.presets.shop.text" => "Katalog, Bestellungen, Kunden, Preise und Versand betreuen."
      "admin.roles.form.presets.shop.title" => "Shop-Verwaltung"
      "admin.roles.form.presets.support.text" => "Kunden, Bestellungen, Tickets und Retouren bearbeiten."
      "admin.roles.form.presets.support.title" => "Support"
      "admin.roles.form.presets.system.text" => "Benutzer, Profile, Einstellungen und Übersetzungen verwalten."
      "admin.roles.form.presets.system.title" => "System-Admin"
      "admin.roles.form.profile_name" => "Profilname"
      "admin.roles.form.role_labels.ab_test" => "A/B-Tests"
      "admin.roles.form.role_labels.account_password" => "Eigenes Passwort"
      "admin.roles.form.role_labels.alert" => "Alerts"
      "admin.roles.form.role_labels.analytics" => "Analytics"
      "admin.roles.form.role_labels.apartment" => "Unterkünfte"
      "admin.roles.form.role_labels.b2b" => "B2B"
      "admin.roles.form.role_labels.blog" => "Blog"
      "admin.roles.form.role_labels.booking" => "Buchungen"
      "admin.roles.form.role_labels.calendar" => "Kalender"
      "admin.roles.form.role_labels.cart" => "Warenkorb"
      "admin.roles.form.role_labels.cart_cross_sell" => "Cross-Sells"
      "admin.roles.form.role_labels.cart_intelligence" => "Warenkorb-Analyse"
      "admin.roles.form.role_labels.category" => "Kategorien"
      "admin.roles.form.role_labels.configurable_product" => "Varianten"
      "admin.roles.form.role_labels.contact" => "Kontaktanfragen"
      "admin.roles.form.role_labels.content_block" => "Content-Blöcke"
      "admin.roles.form.role_labels.coupon" => "Gutscheine"
      "admin.roles.form.role_labels.customer" => "Kunden"
      "admin.roles.form.role_labels.dashboard" => "Dashboard"
      "admin.roles.form.role_labels.dashboard_api" => "Dashboard-API"
      "admin.roles.form.role_labels.dashboard_widget" => "Dashboard-Widgets"
      "admin.roles.form.role_labels.data_protection" => "Datenschutz"
      "admin.roles.form.role_labels.faq" => "FAQ"
      "admin.roles.form.role_labels.feed" => "Feeds"
      "admin.roles.form.role_labels.feed_api" => "Feed-API"
      "admin.roles.form.role_labels.footer_menu" => "Footer-Navigation"
      "admin.roles.form.role_labels.help" => "Admin-Hilfe"
      "admin.roles.form.role_labels.hotel_access" => "Hotel-Menüs"
      "admin.roles.form.role_labels.hotel_content" => "Unterkunftsinhalte"
      "admin.roles.form.role_labels.import" => "Produktimport"
      "admin.roles.form.role_labels.import_control" => "Import-Steuerung"
      "admin.roles.form.role_labels.imprint" => "Impressum"
      "admin.roles.form.role_labels.mail_template" => "Mail-Templates"
      "admin.roles.form.role_labels.menu" => "Hauptnavigation"
      "admin.roles.form.role_labels.newsletter" => "Newsletter"
      "admin.roles.form.role_labels.order" => "Bestellungen"
      "admin.roles.form.role_labels.page" => "Seiten"
      "admin.roles.form.role_labels.pricing" => "Preisregeln"
      "admin.roles.form.role_labels.pricing_api" => "Preis-API"
      "admin.roles.form.role_labels.product" => "Produktverwaltung"
      "admin.roles.form.role_labels.product_configurator" => "Produkt-Konfigurator"
      "admin.roles.form.role_labels.product_qa" => "Produktfragen"
      "admin.roles.form.role_labels.profile" => "Rollenprofile"
      "admin.roles.form.role_labels.return_request" => "Rücksendeanfragen"
      "admin.roles.form.role_labels.review" => "Bewertungen"
      "admin.roles.form.role_labels.rma" => "Retouren"
      "admin.roles.form.role_labels.section_templates" => "Abschnittsvorlagen"
      "admin.roles.form.role_labels.seo_faq" => "SEO-FAQ"
      "admin.roles.form.role_labels.shipment" => "Sendungen"
      "admin.roles.form.role_labels.shipping_method" => "Versandarten"
      "admin.roles.form.role_labels.shipping_zone" => "Versandzonen"
      "admin.roles.form.role_labels.shop" => "Produkte"
      "admin.roles.form.role_labels.shop_menu" => "Shop-Navigation"
      "admin.roles.form.role_labels.shop_user" => "Shop-Benutzer"
      "admin.roles.form.role_labels.slider" => "Slider"
      "admin.roles.form.role_labels.superuser" => "Superuser"
      "admin.roles.form.role_labels.support_ticket" => "Support-Tickets"
      "admin.roles.form.role_labels.system_config" => "Systemkonfiguration"
      "admin.roles.form.role_labels.system_panel" => "System-Panel"
      "admin.roles.form.role_labels.system_setting" => "Einstellungen"
      "admin.roles.form.role_labels.theme" => "Theme-Modul"
      "admin.roles.form.role_labels.translation" => "Übersetzungen"
      "admin.roles.form.role_labels.user" => "Admin-Benutzer"
      "admin.roles.form.role_labels.widget" => "Widgets"
      "admin.roles.form.sections.commerce" => "Commerce"
      "admin.roles.form.sections.content" => "Content"
      "admin.roles.form.sections.marketing_seo" => "Marketing & SEO"
      "admin.roles.form.sections.other" => "Weitere Rollen"
      "admin.roles.form.sections.system" => "System"
      "admin.roles.form.select_all" => "Alle auswählen"
      "admin.roles.form.select_group" => "Alle in dieser Gruppe auswählen"
      "admin.roles.form.select_one_permission" => "Bitte wähle mindestens eine Berechtigung aus."
      "admin.roles.form.select_visible" => "Sichtbare auswählen"
      "admin.roles.form.selected_permissions" => "Ausgewählte Berechtigungen"
      "admin.roles.form.show_selected" => "Nur ausgewählte"
      "admin.roles.form.subtitle" => "Stelle ein Berechtigungspaket für Backend-Benutzer zusammen und prüfe die Auswahl vor dem Speichern."
      "admin.roles.form.summary_areas" => "Betroffene Bereiche"
      "admin.roles.form.summary_critical" => "Kritische Rechte"
      "admin.roles.form.summary_hint" => "Kritische Rechte umfassen Löschen, Verwalten, Ausführen, Veröffentlichen, Aktivieren, Rollback sowie Benutzer-, Profil- und Systemzugriffe."
      "admin.roles.form.summary_name_placeholder" => "Noch kein Profilname"
      "admin.roles.form.summary_no_area" => "Noch keine Auswahl"
      "admin.roles.form.summary_selected" => "Ausgewählte Rechte"
      "admin.roles.form.summary_title" => "Auswahl prüfen"
      "admin.roles.help.admin_users_title" => "Admin-Benutzer-Rollen"
      "admin.roles.help.analytics_title" => "Analytics & Tools"
      "admin.roles.help.assignment_steps.step1" => "Admin-Benutzer → Benutzer auswählen → Bearbeiten"
      "admin.roles.help.assignment_steps.step2" => "Im Tab Rollen die gewünschten Rollen anklicken"
      "admin.roles.help.assignment_steps.step3" => "Speichern – Änderungen gelten sofort"
      "admin.roles.help.assignment_title" => "Rollen vergeben"
      "admin.roles.help.cards.list" => "Nur Anzeigen"
      "admin.roles.help.cards.manage" => "Vollzugriff im Modul"
      "admin.roles.help.cards.superuser" => "Vollzugriff auf alles"
      "admin.roles.help.columns.admin_page" => "Admin-Seite"
      "admin.roles.help.columns.description" => "Beschreibung"
      "admin.roles.help.columns.module" => "Modul"
      "admin.roles.help.columns.role" => "Rolle"
      "admin.roles.help.columns.roles" => "Rollen"
      "admin.roles.help.concept_intro" => "Das Berechtigungssystem basiert auf RBAC (Role-Based Access Control). Jede Aktion im Backend ist durch eine spezifische Rolle abgesichert."
      "admin.roles.help.concept_title" => "Rollen-Konzept"
      "admin.roles.help.content_title" => "Content-Module"
      "admin.roles.help.navigation_title" => "Navigation"
      "admin.roles.help.navigation.admin_users" => "Benutzer-Rollen"
      "admin.roles.help.navigation.analytics" => "Analytics & Tools"
      "admin.roles.help.navigation.assignment" => "Rollen vergeben"
      "admin.roles.help.navigation.concept" => "Konzept"
      "admin.roles.help.navigation.content" => "Content-Module"
      "admin.roles.help.navigation.profile_builder" => "Rollenprofil-Assistent"
      "admin.roles.help.navigation.shop" => "Shop-Module"
      "admin.roles.help.navigation.superuser" => "Superuser"
      "admin.roles.help.navigation.system" => "System-Rollen"
      "admin.roles.help.open_profiles" => "Profile öffnen"
      "admin.roles.help.profile_builder_intro" => "Das Profilformular ist nach denselben Arbeitsbereichen wie die Admin-Sidebar aufgebaut. Vorlagen setzen typische Startauswahlen, die anschließend fein angepasst werden können."
      "admin.roles.help.profile_builder_points.critical" => "Kritische Rechte sollten nur vergeben werden, wenn Löschen, Verwalten, Ausführen, Aktivieren, Rollback oder Systemzugriff wirklich benötigt wird."
      "admin.roles.help.profile_builder_points.presets" => "Vorlagen sind nur Startpunkte und überschreiben die Auswahl, solange nicht gespeichert wurde."
      "admin.roles.help.profile_builder_points.summary" => "Die Zusammenfassung zeigt Profilname, Anzahl der Rechte, kritische Rechte und betroffene Bereiche."
      "admin.roles.help.profile_builder_title" => "Rollenprofile anlegen"
      "admin.roles.help.relogin_warning" => "Benutzer müssen sich neu einloggen, damit neue Rollen wirksam werden. Die Session hält die alten Rollen bis zum Logout."
      "admin.roles.help.rows.ab_tests" => "A/B-Tests"
      "admin.roles.help.rows.admin_profiles" => "Admin-Benutzer-Profile verwalten"
      "admin.roles.help.rows.admin_users" => "Admin-Benutzer verwalten (die Admin-Backend-Logins)"
      "admin.roles.help.rows.alerts" => "System-Alerts"
      "admin.roles.help.rows.analytics" => "Analytics Cockpit"
      "admin.roles.help.rows.b2b" => "B2B"
      "admin.roles.help.rows.blog" => "Blog"
      "admin.roles.help.rows.cart" => "Warenkorb"
      "admin.roles.help.rows.cart_intelligence" => "Cart Intelligence"
      "admin.roles.help.rows.configurable_products" => "Varianten-Editor"
      "admin.roles.help.rows.content_blocks" => "Content-Blöcke"
      "admin.roles.help.rows.coupons" => "Gutscheine"
      "admin.roles.help.rows.cross_sell" => "Cross-Sells"
      "admin.roles.help.rows.customers" => "Kunden"
      "admin.roles.help.rows.dashboard" => "Dashboard anzeigen/verwalten"
      "admin.roles.help.rows.dashboard_api" => "Dashboard-API ausführen"
      "admin.roles.help.rows.feeds" => "Feeds"
      "admin.roles.help.rows.footer_menu" => "Footer-Menü"
      "admin.roles.help.rows.help_center" => "Admin-Hilfe-Bereich anzeigen"
      "admin.roles.help.rows.import" => "Import"
      "admin.roles.help.rows.main_menu" => "Hauptmenü"
      "admin.roles.help.rows.orders" => "Bestellungen"
      "admin.roles.help.rows.pages" => "Seiten (CMS)"
      "admin.roles.help.rows.pricing" => "Preisregeln"
      "admin.roles.help.rows.product_configurator" => "PC-/System-Konfigurator"
      "admin.roles.help.rows.product_qa" => "Produkt-Q&A"
      "admin.roles.help.rows.products" => "Produkte"
      "admin.roles.help.rows.reviews" => "Bewertungen"
      "admin.roles.help.rows.rma" => "Retouren (RMA)"
      "admin.roles.help.rows.seo_faq" => "SEO FAQs"
      "admin.roles.help.rows.shipments" => "Sendungen"
      "admin.roles.help.rows.shipping_methods" => "Versand (Methoden)"
      "admin.roles.help.rows.shipping_zones" => "Versand (Zonen)"
      "admin.roles.help.rows.shop_menu" => "Shop-Menü"
      "admin.roles.help.rows.shop_users" => "Shop-Benutzer"
      "admin.roles.help.rows.slider" => "Slider"
      "admin.roles.help.rows.system_config" => "Erweiterte System-Konfiguration"
      "admin.roles.help.rows.system_panel" => "System-Panel anzeigen"
      "admin.roles.help.rows.system_settings" => "System-Einstellungen verwalten"
      "admin.roles.help.rows.themes" => "Theme-Modul"
      "admin.roles.help.rows.translations" => "Übersetzungen verwalten"
      "admin.roles.help.rows.widgets" => "Widgets"
      "admin.roles.help.shop_title" => "Shop-Module"
      "admin.roles.help.suffixes_label" => "Suffixe:"
      "admin.roles.help.suffixes.add" => "anlegen"
      "admin.roles.help.suffixes.delete" => "löschen"
      "admin.roles.help.suffixes.edit" => "bearbeiten"
      "admin.roles.help.suffixes.list" => "anzeigen"
      "admin.roles.help.suffixes.manage" => "alles"
      "admin.roles.help.suffixes.run" => "ausführen"
      "admin.roles.help.suffixes.view" => "Detailansicht"
      "admin.roles.help.superuser_description" => "Vollzugriff auf alle Module, keine weiteren Rollen nötig"
      "admin.roles.help.superuser_title" => "Superuser-Rolle"
      "admin.roles.help.superuser_warning" => "ROLE_SUPERUSER sollte nur einem einzigen technischen Hauptadmin zugewiesen werden."
      "admin.roles.help.system_title" => "System-Rollen"
      "admin.roles.help.tip_label" => "Tipp:"
      "admin.roles.help.tip_text" => "Für einen Shop-Manager empfohlene Rollen-Kombination:"
      "admin.roles.help.title" => "Hilfe: Rollen & Berechtigungen"
      "admin.roles.notifications.generic_error" => "Es ist ein Fehler aufgetreten. Bitte aktualisieren Sie die Seite und versuchen Sie es erneut."
      "admin.roles.notifications.profile_created" => "Profil wurde angelegt."
      "admin.roles.notifications.profile_not_found" => "Profil nicht gefunden."
      "admin.roles.notifications.profile_saved" => "Profil wurde gespeichert."
      "admin.roles.profile_list.bulk_activate" => "Aktivieren"
      "admin.roles.profile_list.bulk_deactivate" => "Deaktivieren"
      "admin.roles.profile_list.bulk_delete" => "Löschen"
      "admin.roles.profile_list.bulk_hint" => "Wähle zuerst ein oder mehrere Profile in der Tabelle aus."
      "admin.roles.profile_list.bulk_placeholder" => "Gruppenaktion auswählen"
      "admin.roles.profile_list.bulk_select_one" => "Bitte wähle mindestens ein Profil für die Gruppenaktion aus."
      "admin.roles.profile_list.column_delete" => "Löschen"
      "admin.roles.profile_list.column_edit" => "Bearbeiten"
      "admin.roles.profile_list.column_name" => "Profilname"
      "admin.roles.profile_list.column_status" => "Status"
      "admin.roles.profile_list.delete_modal_body" => "Möchtest du das Profil "%label%" wirklich löschen?"
      "admin.roles.profile_list.delete_modal_title" => "Profil löschen"
      "admin.roles.profile_list.empty" => "Keine Profile vorhanden."
      "admin.roles.profile_list.overview_count" => "%count% Einträge"
      "admin.roles.profile_list.overview_title" => "Profilübersicht"
      "admin.roles.profile_list.page_title" => "Profile"
      "admin.roles.profile_list.status_active" => "Aktiv"
      "admin.roles.profile_list.status_inactive" => "Inaktiv"
      "admin.roles.profile_list.subtitle" => "Rollenprofile zentral verwalten, aktivieren und zu Benutzerkonten zuweisen."
      "admin.roles.profile_list.title" => "Profile"
      "admin.seo.categories.actions.manage" => "FAQs verwalten"
      "admin.seo.categories.actions.seed" => "Vorschläge als ausstehend"
      "admin.seo.categories.category_id" => "ID: %id%"
      "admin.seo.categories.empty" => "Keine Kategorien gefunden."
      "admin.seo.categories.headers.actions" => "Aktionen"
      "admin.seo.categories.headers.archived" => "Archiviert"
      "admin.seo.categories.headers.category" => "Kategorie"
      "admin.seo.categories.headers.pending" => "Ausstehend"
      "admin.seo.categories.headers.published" => "Veröffentlicht"
      "admin.seo.categories.headers.total" => "Gesamt"
      "admin.seo.categories.meta_title" => "SEO FAQ Kategorien"
      "admin.seo.categories.page_subtitle" => "Direkter Einstieg pro Kategorie und schneller Import von FAQ-Vorschlägen als pending."
      "admin.seo.categories.page_title" => "FAQ-Kategorien (%count%)"
      "admin.seo.categories.panel_title" => "Kategorieübersicht"
      "admin.seo.categories.toolbar.help" => "Hilfe"
      "admin.seo.categories.toolbar.pending" => "Ausstehende FAQs"
      "admin.seo.category.actions.archive" => "Archivieren"
      "admin.seo.category.actions.delete" => "Löschen"
      "admin.seo.category.actions.edit" => "Bearbeiten"
      "admin.seo.category.actions.publish" => "Veröffentlichen"
      "admin.seo.category.actions.save_order" => "Reihenfolge speichern"
      "admin.seo.category.confirms.archive" => "Diesen FAQ-Eintrag wirklich archivieren?"
      "admin.seo.category.confirms.delete" => "FAQ-Eintrag wirklich löschen?"
      "admin.seo.category.form.answer" => "Antwort *"
      "admin.seo.category.form.answer_hint" => "Detaillierte Antwort zum Thema"
      "admin.seo.category.form.option_pending" => "Ausstehend (Moderation)"
      "admin.seo.category.form.option_published" => "Sofort veröffentlichen"
      "admin.seo.category.form.question" => "Frage *"
      "admin.seo.category.form.question_hint" => "Maximal 500 Zeichen"
      "admin.seo.category.form.reset" => "Zurücksetzen"
      "admin.seo.category.form.save" => "FAQ speichern"
      "admin.seo.category.form.status" => "Status"
      "admin.seo.category.meta_title" => "FAQs für %name%"
      "admin.seo.category.page_title" => "FAQs für %name%"
      "admin.seo.category.pending.created" => "Erstellt am %date%"
      "admin.seo.category.pending.empty" => "Keine ausstehenden FAQs."
      "admin.seo.category.pending.missing_answer" => "Noch keine Antwort hinterlegt. Bitte zuerst bearbeiten."
      "admin.seo.category.publish_disabled_title" => "Bitte zuerst eine Antwort eintragen"
      "admin.seo.category.published.date" => "Veröffentlicht am %date%"
      "admin.seo.category.published.empty" => "Keine veröffentlichten FAQs."
      "admin.seo.category.tabs.new" => "Neue FAQ"
      "admin.seo.category.tabs.pending" => "Ausstehend (%count%)"
      "admin.seo.category.tabs.published" => "Veröffentlicht"
      "admin.seo.errors.category_not_found" => "Kategorie wurde nicht gefunden."
      "admin.seo.help_index.card_subtitle" => "Kategorie-FAQs, KI-Vorschläge und interne Links"
      "admin.seo.help_index.card_title" => "SEO & FAQ"
      "admin.seo.help_index.table_description" => "Kategorie-FAQs, Pending-Inbox und interne Linkvorschläge"
      "admin.seo.help_index.table_label" => "SEO & FAQ"
      "admin.seo.help.actions.back" => "Zurück"
      "admin.seo.help.actions.module" => "Zum Modul"
      "admin.seo.help.ai.api_label" => "API:"
      "admin.seo.help.ai.intro" => "Für jede Kategorie können automatisiert neue FAQ-Vorschläge erzeugt werden."
      "admin.seo.help.ai.steps.five" => "Anschließend manuell prüfen und gezielt veröffentlichen."
      "admin.seo.help.ai.steps.four" => "Neue Einträge landen zunächst im Status pending."
      "admin.seo.help.ai.steps.one" => "Kategorie in der FAQ-Übersicht öffnen."
      "admin.seo.help.ai.steps.three" => "Das System analysiert die Kategorie und erzeugt neue Vorschläge, sofern noch keine Dubletten vorhanden sind."
      "admin.seo.help.ai.steps.two" => "Aktion „Vorschläge als pending“ auslösen."
      "admin.seo.help.ai.title" => "KI-FAQ-Vorschläge generieren"
      "admin.seo.help.ai.warning" => "KI-Vorschläge sollten vor der Veröffentlichung immer redaktionell geprüft werden."
      "admin.seo.help.api.rows.categories" => "Alle Kategorien mit FAQ-Anzahlen"
      "admin.seo.help.api.rows.category" => "FAQs einer Kategorie anzeigen"
      "admin.seo.help.api.rows.delete_pending" => "Pending-FAQ löschen"
      "admin.seo.help.api.rows.links" => "Interne Link-Vorschläge für eine Kategorie"
      "admin.seo.help.api.rows.pending" => "Ausstehende FAQs (Pending-Inbox)"
      "admin.seo.help.api.rows.save" => "FAQ anlegen oder bearbeiten"
      "admin.seo.help.api.rows.seed" => "KI-Vorschläge generieren"
      "admin.seo.help.api.table.function" => "Funktion"
      "admin.seo.help.api.table.method" => "Methode"
      "admin.seo.help.api.table.url" => "URL"
      "admin.seo.help.api.title" => "API-Endpunkte"
      "admin.seo.help.faq.intro" => "FAQs werden pro Kategorie gepflegt und erscheinen auf der Kategorieseite als strukturierter FAQ-Abschnitt inklusive Schema.org-Auszeichnung."
      "admin.seo.help.faq.status_table.archived_meaning" => "Ausgeblendet, aber erhalten"
      "admin.seo.help.faq.status_table.archived_visibility" => "Nicht sichtbar"
      "admin.seo.help.faq.status_table.meaning" => "Bedeutung"
      "admin.seo.help.faq.status_table.pending_meaning" => "Vorschlag oder Entwurf, noch nicht freigegeben"
      "admin.seo.help.faq.status_table.pending_visibility" => "Nicht sichtbar"
      "admin.seo.help.faq.status_table.published_meaning" => "Aktive FAQ auf der Kategorieseite"
      "admin.seo.help.faq.status_table.published_visibility" => "Sichtbar im Frontend"
      "admin.seo.help.faq.status_table.status" => "Status"
      "admin.seo.help.faq.status_table.visibility" => "Sichtbarkeit"
      "admin.seo.help.faq.statuses_title" => "FAQ-Status:"
      "admin.seo.help.faq.steps_title" => "Schritt-für-Schritt: FAQ anlegen"
      "admin.seo.help.faq.steps.five" => "Speichern und Eintrag bei Bedarf später bearbeiten, archivieren oder löschen."
      "admin.seo.help.faq.steps.four" => "Status auf pending oder published setzen."
      "admin.seo.help.faq.steps.one" => "SEO → FAQ-Kategorien öffnen."
      "admin.seo.help.faq.steps.six" => "Veröffentlichte FAQs können zusätzlich per Drag-and-Drop sortiert und gespeichert werden."
      "admin.seo.help.faq.steps.three" => "Im Tab „Neue FAQ“ Frage und Antwort erfassen."
      "admin.seo.help.faq.steps.two" => "Kategorie aus der Liste auswählen."
      "admin.seo.help.faq.title" => "Kategorie-FAQs erstellen und verwalten"
      "admin.seo.help.fields.rows.answer" => "Antwortinhalt der FAQ"
      "admin.seo.help.fields.rows.category" => "Verknüpfte Produktkategorie"
      "admin.seo.help.fields.rows.created_at" => "Erstellungsdatum"
      "admin.seo.help.fields.rows.question" => "FAQ-Frage (erscheint auch als Schema.org FAQPage)"
      "admin.seo.help.fields.rows.sort_order" => "Reihenfolge auf der Seite"
      "admin.seo.help.fields.rows.status" => "pending / published / archived"
      "admin.seo.help.fields.table.description" => "Beschreibung"
      "admin.seo.help.fields.table.field" => "Feld"
      "admin.seo.help.fields.table.type" => "Typ"
      "admin.seo.help.fields.title" => "Feldreferenz: CategoryFaq"
      "admin.seo.help.fields.types.datetime" => "Datum / Zeit"
      "admin.seo.help.fields.types.enum" => "Enum"
      "admin.seo.help.fields.types.html_text" => "Text (HTML erlaubt)"
      "admin.seo.help.fields.types.integer" => "Integer"
      "admin.seo.help.fields.types.relation" => "Relation"
      "admin.seo.help.fields.types.text" => "Text"
      "admin.seo.help.links.intro" => "Der interne Link-Assistent liefert Vorschläge für verwandte Kategorien und hilft beim Aufbau einer sauberen internen Linkstruktur."
      "admin.seo.help.links.points.four" => "Unterstützt die redaktionelle Pflege thematisch passender Querverlinkungen."
      "admin.seo.help.links.points.one" => "Aufruf über /admin/seo/links/{categoryId}."
      "admin.seo.help.links.points.three" => "Bewertet die Relevanz gestuft und liefert direkt kopierbare URLs."
      "admin.seo.help.links.points.two" => "Typisiert Vorschläge als Parent, Sibling oder Verwandt."
      "admin.seo.help.links.title" => "Interne Links (Link-Assistent)"
      "admin.seo.help.meta.intro" => "Für Produkte und Kategorien stehen SEO-Metadaten in den jeweiligen Bearbeitungsformularen zur Verfügung."
      "admin.seo.help.meta.rows.description_field" => "Produkt-Edit / Kategorie-Edit"
      "admin.seo.help.meta.rows.description_length" => "150-160 Zeichen"
      "admin.seo.help.meta.rows.slug_field" => "Produkt-Edit (automatisch generiert)"
      "admin.seo.help.meta.rows.slug_length" => "URL-freundlich, keine Sonderzeichen"
      "admin.seo.help.meta.rows.title_field" => "Produkt-Edit / Kategorie-Edit"
      "admin.seo.help.meta.rows.title_length" => "50-60 Zeichen"
      "admin.seo.help.meta.table.editable" => "Wo editierbar"
      "admin.seo.help.meta.table.field" => "Feld"
      "admin.seo.help.meta.table.length" => "Empfohlene Länge"
      "admin.seo.help.meta.title" => "SEO-Meta-Felder"
      "admin.seo.help.navigation.ai" => "KI-FAQ-Vorschläge"
      "admin.seo.help.navigation.api" => "API-Endpunkte"
      "admin.seo.help.navigation.faq" => "Kategorie-FAQs"
      "admin.seo.help.navigation.fields" => "Feldreferenz"
      "admin.seo.help.navigation.links" => "Interne Links"
      "admin.seo.help.navigation.meta" => "SEO-Meta-Felder"
      "admin.seo.help.navigation.overview" => "Überblick"
      "admin.seo.help.navigation.pending" => "Ausstehende FAQs"
      "admin.seo.help.navigation.title" => "Navigation"
      "admin.seo.help.overview.cards.ai.subtitle" => "Automatisch generierte FAQ-Entwürfe"
      "admin.seo.help.overview.cards.ai.title" => "KI-Vorschläge"
      "admin.seo.help.overview.cards.faq.subtitle" => "FAQ-Abschnitte auf Kategorie-Seiten"
      "admin.seo.help.overview.cards.faq.title" => "Kategorie-FAQs"
      "admin.seo.help.overview.cards.links.subtitle" => "Verlinkungen zwischen thematisch passenden Kategorien"
      "admin.seo.help.overview.cards.links.title" => "Interne Links"
      "admin.seo.help.overview.intro" => "Das SEO-Modul bündelt Werkzeuge für Kategorie-FAQs, Pending-Moderation, KI-gestützte FAQ-Vorschläge und interne Linkempfehlungen."
      "admin.seo.help.overview.permissions_title" => "Berechtigungen:"
      "admin.seo.help.overview.title" => "SEO-Tools: Überblick"
      "admin.seo.help.page_title" => "Hilfe: SEO-Tools"
      "admin.seo.help.pending.intro" => "Alle FAQs im Status pending erscheinen gesammelt unter /admin/seo/faq/pending."
      "admin.seo.help.pending.points.one" => "Einträge können direkt zur Kategorie geöffnet und dort ergänzt oder veröffentlicht werden."
      "admin.seo.help.pending.points.three" => "Die Inbox eignet sich für tägliche redaktionelle Moderation neuer KI- oder Entwurfsinhalte."
      "admin.seo.help.pending.points.two" => "Löschen aus der Inbox entfernt den FAQ-Eintrag dauerhaft."
      "admin.seo.help.pending.title" => "Ausstehende FAQs (Pending-Inbox)"
      "admin.seo.links.actions.back_category" => "Zur Kategorie"
      "admin.seo.links.actions.copy" => "Kopieren"
      "admin.seo.links.actions.manage_faq" => "FAQs verwalten"
      "admin.seo.links.empty" => "Keine Link-Vorschläge verfügbar."
      "admin.seo.links.guidelines.four" => "Hierarchie respektieren - Parent-Links vor Sibling-Links"
      "admin.seo.links.guidelines.one" => "1-3 interne Links pro Seite - zu viele Links verwirren Besucher"
      "admin.seo.links.guidelines.three" => "Wichtige Seiten zuerst - verlinken Sie zu den verkaufs- oder konversionsstärksten Kategorien"
      "admin.seo.links.guidelines.title" => "Richtlinien für interne Links:"
      "admin.seo.links.guidelines.two" => "Relevante Anchor-Texte - vermeiden Sie "hier" oder "mehr", nutzen Sie beschreibende Texte"
      "admin.seo.links.intro" => "Diese Seite sollte auf folgende verwandte Kategorien verlinken, um die interne Linkstruktur zu verbessern:"
      "admin.seo.links.js.copy_failed" => "Link konnte nicht kopiert werden."
      "admin.seo.links.js.copy_success" => "Link wurde kopiert."
      "admin.seo.links.meta_title" => "Interne Links - %name%"
      "admin.seo.links.page_title" => "Interne Link-Vorschläge für %name%"
      "admin.seo.links.relevance.high" => "Hoch"
      "admin.seo.links.relevance.medium" => "Mittel"
      "admin.seo.links.type.cousin" => "Verwandt"
      "admin.seo.links.type.parent" => "Elternkategorie"
      "admin.seo.links.type.sibling" => "Geschwister"
      "admin.seo.nav.faq_categories" => "FAQ-Kategorien"
      "admin.seo.nav.menu" => "SEO & FAQ"
      "admin.seo.nav.pending" => "Ausstehende FAQs"
      "admin.seo.notifications.faq_archived" => "FAQ wurde archiviert."
      "admin.seo.notifications.faq_deleted" => "FAQ wurde gelöscht."
      "admin.seo.notifications.faq_not_found" => "FAQ wurde nicht gefunden."
      "admin.seo.notifications.faq_publish_failed" => "FAQ konnte nicht veröffentlicht werden. Bitte zuerst eine echte Antwort eintragen."
      "admin.seo.notifications.faq_published" => "FAQ wurde veröffentlicht."
      "admin.seo.notifications.faq_saved" => "FAQ wurde gespeichert."
      "admin.seo.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.seo.notifications.invalid_csrf_retry" => "Ungültiges CSRF-Token. Bitte erneut versuchen."
      "admin.seo.notifications.order_updated" => "Reihenfolge wurde aktualisiert."
      "admin.seo.notifications.question_answer_required" => "Frage und Antwort sind erforderlich."
      "admin.seo.notifications.reorder_failed" => "Fehler beim Sortieren: %message%"
      "admin.seo.notifications.save_failed" => "Fehler beim Speichern: %message%"
      "admin.seo.notifications.suggestions_created" => "%count% FAQ-Vorschläge für "%name%" als ausstehend angelegt."
      "admin.seo.notifications.suggestions_none" => "Keine neuen Vorschläge für "%name%" angelegt (bereits vorhanden oder keine Vorschläge verfügbar)."
      "admin.seo.pending.actions.delete" => "Löschen"
      "admin.seo.pending.actions.edit" => "Bearbeiten"
      "admin.seo.pending.delete_confirm" => "FAQ "%question%" wirklich löschen?"
      "admin.seo.pending.empty" => "Keine ausstehenden FAQs."
      "admin.seo.pending.headers.actions" => "Aktionen"
      "admin.seo.pending.headers.category" => "Kategorie"
      "admin.seo.pending.headers.created" => "Erstellt"
      "admin.seo.pending.headers.question" => "Frage"
      "admin.seo.pending.meta_title" => "Ausstehende FAQs"
      "admin.seo.pending.page_subtitle" => "Prüfe offene FAQ-Einträge vor Veröffentlichung."
      "admin.seo.pending.page_title" => "Ausstehende FAQs (%count%)"
      "admin.seo.pending.panel_title" => "Pending-FAQ-Liste"
      "admin.seo.pending.toolbar.categories" => "FAQ-Kategorien"
      "admin.settings.form.actions.back" => "Zurück"
      "admin.settings.form.actions.cancel" => "Abbrechen"
      "admin.settings.form.actions.help" => "Modulhilfe"
      "admin.settings.form.actions.save" => "Speichern"
      "admin.settings.form.choices.scopes.backend" => "Backend"
      "admin.settings.form.choices.scopes.frontend" => "Frontend"
      "admin.settings.form.choices.scopes.global" => "Global"
      "admin.settings.form.choices.types.bool" => "Boolean"
      "admin.settings.form.choices.types.float" => "Dezimalzahl"
      "admin.settings.form.choices.types.int" => "Integer"
      "admin.settings.form.choices.types.string" => "String"
      "admin.settings.form.choices.types.text" => "Text"
      "admin.settings.form.description_locked_help" => "Bei vordefinierten System-Einstellungen wird die sichtbare Beschreibung über Übersetzungen gepflegt und ist hier schreibgeschützt."
      "admin.settings.form.fields.description" => "Beschreibung"
      "admin.settings.form.fields.scope" => "Bereich"
      "admin.settings.form.fields.settings_key" => "Einstellungs-Schlüssel"
      "admin.settings.form.fields.type" => "Typ"
      "admin.settings.form.fields.value" => "Wert"
      "admin.settings.form.meta_title_edit" => "Einstellung bearbeiten"
      "admin.settings.form.meta_title_new" => "Neue System-Einstellung"
      "admin.settings.form.page_subtitle_edit" => "Aktualisiere den Eintrag %key%."
      "admin.settings.form.page_subtitle_new" => "Lege Schlüssel, Wert, Typ und Scope zentral an."
      "admin.settings.form.page_title_edit" => "Einstellung bearbeiten"
      "admin.settings.form.page_title_new" => "Neue System-Einstellung"
      "admin.settings.form.panel_title" => "Formular"
      "admin.settings.help_index.card_description" => "Liste, Panel, Zahlungen, Versand und SEO"
      "admin.settings.help_index.card_title" => "System-Einstellungen"
      "admin.settings.help_index.table_description" => "Systemweite Parameter, Panel-Konfiguration und technische Einstellungen"
      "admin.settings.help_index.table_label" => "Einstellungen"
      "admin.settings.help.actions.back" => "Zurück"
      "admin.settings.help.actions.list" => "Zur Liste"
      "admin.settings.help.actions.panel" => "Zum Panel"
      "admin.settings.help.navigation.categories" => "Kategorien"
      "admin.settings.help.navigation.keys" => "Wichtige Schlüssel"
      "admin.settings.help.navigation.overview" => "Überblick"
      "admin.settings.help.navigation.routes" => "Routen"
      "admin.settings.help.navigation.security" => "Sicherheit"
      "admin.settings.help.navigation.split" => "Liste und Panel"
      "admin.settings.help.navigation.title" => "Navigation"
      "admin.settings.help.page_title" => "Hilfe: System-Einstellungen"
      "admin.settings.help.sections.categories.headers.category" => "Kategorie"
      "admin.settings.help.sections.categories.headers.description" => "Beschreibung"
      "admin.settings.help.sections.categories.title" => "Kategorien im Panel"
      "admin.settings.help.sections.keys.headers.description" => "Beschreibung"
      "admin.settings.help.sections.keys.headers.key" => "Schlüssel"
      "admin.settings.help.sections.keys.rows.address_validation_external_enabled" => "Aktiviert eine zusätzliche externe Adressprüfung über einen konfigurierbaren Endpoint."
      "admin.settings.help.sections.keys.rows.address_validation_external_timeout" => "Maximale Wartezeit in Sekunden für die externe Adressprüfung."
      "admin.settings.help.sections.keys.rows.address_validation_external_token" => "Optionaler Bearer-Token für die Authentifizierung am externen Adressprüfservice."
      "admin.settings.help.sections.keys.rows.address_validation_external_url" => "HTTPS-URL des externen Adressprüfservices."
      "admin.settings.help.sections.keys.rows.newsletter_enabled" => "Aktiviert die Newsletter-Funktion im Shop."
      "admin.settings.help.sections.keys.rows.paypal_client_id" => "Vorbereiteter API-Schlüssel für eine spätere PayPal-Integration; aktuell ohne Live-Verdrahtung im Checkout."
      "admin.settings.help.sections.keys.rows.recaptcha_admin_login_enabled" => "Schaltet die zusätzliche Sicherheitsprüfung auf /admin/login ein."
      "admin.settings.help.sections.keys.rows.recaptcha_admin_login_variant" => "Wählt Checkbox oder Invisible für den Admin-Login."
      "admin.settings.help.sections.keys.rows.recaptcha_enabled" => "Master-Schalter für Google reCAPTCHA im Projekt."
      "admin.settings.help.sections.keys.rows.recaptcha_language" => "Optionale Sprache für das Widget; leer folgt der aktuellen Anfrage."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_enabled" => "Aktiviert reCAPTCHA für Registrierung, Reset, Resend, Kontakt, B2B und Support."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_secret_key" => "Optionaler eigener Secret-Key für Public-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_site_key" => "Optionaler eigener Site-Key für Public-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_variant" => "Wählt Checkbox oder Invisible für Public- und Shop-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_secret_key" => "Geheimer Server-Schlüssel für den Admin-Login und als Fallback für Public-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_site_key" => "Öffentlicher Schlüssel für den Admin-Login und als Fallback für Public-Formulare."
      "admin.settings.help.sections.keys.rows.shipping_flat_rate" => "Versandpauschale pro Bestellung."
      "admin.settings.help.sections.keys.rows.shop_currency" => "Standardwährung des Shops."
      "admin.settings.help.sections.keys.rows.shop_email" => "Zentrale Kontakt- und Absenderadresse."
      "admin.settings.help.sections.keys.rows.shop_meta_title" => "Standard-Meta-Titel für Shop- und Übersichtsseiten."
      "admin.settings.help.sections.keys.rows.shop_name" => "Name des Shops für Titel, E-Mails und Frontend-Ausgaben."
      "admin.settings.help.sections.keys.rows.stripe_enabled" => "Schaltet Stripe im Checkout an oder aus."
      "admin.settings.help.sections.keys.title" => "Wichtige Schlüssel"
      "admin.settings.help.sections.overview.lead" => "System-Einstellungen sind zentrale Schlüssel-Wert-Paare in der Datenbank und steuern Shop-Verhalten, Zahlungsarten, Benachrichtigungen und SEO ohne Codeänderung."
      "admin.settings.help.sections.overview.permissions_label" => "Berechtigungen:"
      "admin.settings.help.sections.overview.title" => "Überblick"
      "admin.settings.help.sections.overview.warning" => "Geheimnisse und API-Schlüssel nur in der Datenbank pflegen und niemals im Code oder in Versionierung ablegen."
      "admin.settings.help.sections.routes.headers.function" => "Funktion"
      "admin.settings.help.sections.routes.headers.method" => "Methode"
      "admin.settings.help.sections.routes.headers.url" => "URL"
      "admin.settings.help.sections.routes.rows.create" => "Neue technische Einstellung anlegen"
      "admin.settings.help.sections.routes.rows.delete" => "Bestehende Einstellung löschen"
      "admin.settings.help.sections.routes.rows.edit" => "Bestehende Einstellung bearbeiten"
      "admin.settings.help.sections.routes.rows.list" => "Alle System-Einstellungen als CRUD-Liste anzeigen"
      "admin.settings.help.sections.routes.rows.panel" => "Vordefinierte System-Einstellungen im Panel anzeigen"
      "admin.settings.help.sections.routes.title" => "Routen und Aktionen"
      "admin.settings.help.sections.security.image_hint" => "Logo- und Favicon-Uploads werden im Shop-Upload-Verzeichnis gespeichert und können im Panel direkt ersetzt werden."
      "admin.settings.help.sections.security.password_hint" => "Passwortfelder überschreiben bestehende Werte nur, wenn ein neuer Wert eingetragen wird."
      "admin.settings.help.sections.security.scope_hint" => "Die technische Scope-Information bleibt in der Listenansicht sichtbar, das Panel ist auf operative Shop-Konfiguration optimiert."
      "admin.settings.help.sections.security.secret_warning" => "Zugangsdaten und API-Schlüssel nur für berechtigte Admins zugänglich machen und produktive Werte nicht in Screenshots oder Tickets kopieren."
      "admin.settings.help.sections.security.title" => "Sicherheit und Pflege"
      "admin.settings.help.sections.split.autosave_label" => "Autosave:"
      "admin.settings.help.sections.split.autosave_text" => "Range-Slider speichern ihre Werte sofort per AJAX, alle anderen Felder beim Formular-Submit."
      "admin.settings.help.sections.split.list_label" => "Liste:"
      "admin.settings.help.sections.split.list_text" => "Die Listenansicht unter /admin/settings eignet sich für CRUD, technische Kontrolle und einzelne Schlüssel."
      "admin.settings.help.sections.split.panel_label" => "Panel:"
      "admin.settings.help.sections.split.panel_text" => "Das Panel unter /admin/system-settings bündelt die wichtigsten Shop-Parameter nach Kategorien und zeigt passende Eingabetypen."
      "admin.settings.help.sections.split.title" => "Liste und Panel"
      "admin.settings.index.actions.delete" => "Löschen"
      "admin.settings.index.actions.edit" => "Bearbeiten"
      "admin.settings.index.actions.help" => "Modulhilfe"
      "admin.settings.index.actions.new" => "Neue Einstellung"
      "admin.settings.index.actions.panel" => "Einstellungs-Panel"
      "admin.settings.index.delete_confirm" => "Einstellung "%key%" wirklich löschen?"
      "admin.settings.index.headers.actions" => "Aktionen"
      "admin.settings.index.headers.description" => "Beschreibung"
      "admin.settings.index.headers.id" => "ID"
      "admin.settings.index.headers.key" => "Key"
      "admin.settings.index.headers.scope" => "Bereich"
      "admin.settings.index.headers.type" => "Typ"
      "admin.settings.index.headers.value" => "Wert"
      "admin.settings.index.list_count" => "%count% Einträge"
      "admin.settings.index.list_title" => "System-Einstellungen"
      "admin.settings.index.meta_title" => "System-Einstellungen"
      "admin.settings.index.page_subtitle" => "Verwalte Schlüssel, Werte, Typen und Gültigkeitsbereiche zentral."
      "admin.settings.index.page_title" => "System-Einstellungen"
      "admin.settings.index.values.empty" => "Keine Einstellungen vorhanden."
      "admin.settings.notifications.created" => "Einstellung wurde angelegt."
      "admin.settings.notifications.deleted" => "Einstellung wurde gelöscht."
      "admin.settings.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.settings.notifications.updated" => "Einstellung wurde gespeichert."
      "admin.settings.panel.actions.help" => "Modulhilfe"
      "admin.settings.panel.actions.list" => "Zur Liste"
      "admin.settings.panel.actions.save" => "Einstellungen speichern"
      "admin.settings.panel.autosave_hint" => "Range-Slider werden sofort automatisch gespeichert."
      "admin.settings.panel.fields.address_validation_external_enabled.description" => "Schaltet zusätzlich zur lokalen Plausibilitätsprüfung einen externen Adressprüf-Endpoint frei."
      "admin.settings.panel.fields.address_validation_external_enabled.label" => "Externe Adressprüfung aktiv"
      "admin.settings.panel.fields.address_validation_external_timeout.description" => "Maximale Wartezeit in Sekunden für externe Adressprüfungen."
      "admin.settings.panel.fields.address_validation_external_timeout.label" => "Timeout externe Adressprüfung"
      "admin.settings.panel.fields.address_validation_external_token.description" => "Optionaler Bearer-Token für den externen Adressprüf-Endpoint."
      "admin.settings.panel.fields.address_validation_external_token.label" => "Token externe Adressprüfung"
      "admin.settings.panel.fields.address_validation_external_url.description" => "HTTPS-URL eines externen Services für Adressvalidierung und -normalisierung."
      "admin.settings.panel.fields.address_validation_external_url.label" => "Endpoint externe Adressprüfung"
      "admin.settings.panel.fields.blog_offline_message.description" => "Hinweistext für den deaktivierten Blog."
      "admin.settings.panel.fields.blog_offline_message.label" => "Offline-Hinweis Blog"
      "admin.settings.panel.fields.blog_status.description" => "Aktiviert oder deaktiviert den Blog im Frontend."
      "admin.settings.panel.fields.blog_status.label" => "Blog online"
      "admin.settings.panel.fields.cart_session_lifetime.description" => "Legt fest, wie lange ein Warenkorb ohne Aktivität gespeichert bleibt."
      "admin.settings.panel.fields.cart_session_lifetime.label" => "Warenkorb-Sitzung in Minuten"
      "admin.settings.panel.fields.data_protection_offline_message.description" => "Nachricht bei deaktivierter Datenschutzseite."
      "admin.settings.panel.fields.data_protection_offline_message.label" => "Offline-Hinweis Datenschutz"
      "admin.settings.panel.fields.data_protection_status.description" => "Steuert, ob die Datenschutzseite erreichbar ist."
      "admin.settings.panel.fields.data_protection_status.label" => "Datenschutz online"
      "admin.settings.panel.fields.imprint_offline_message.description" => "Nachricht bei deaktivierter Impressumsseite."
      "admin.settings.panel.fields.imprint_offline_message.label" => "Offline-Hinweis Impressum"
      "admin.settings.panel.fields.imprint_status.description" => "Steuert, ob die Impressumsseite erreichbar ist."
      "admin.settings.panel.fields.imprint_status.label" => "Impressum online"
      "admin.settings.panel.fields.invoice_enabled.description" => "Vorbereitungsflag für einen späteren Rechnungspfad; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.invoice_enabled.label" => "Rechnung aktiv"
      "admin.settings.panel.fields.klarna_enabled.description" => "Vorbereitungsflag für eine spätere Klarna-Integration; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.klarna_enabled.label" => "Klarna aktiv"
      "admin.settings.panel.fields.newsletter_enabled.description" => "Aktiviert oder deaktiviert die Newsletter-Funktion."
      "admin.settings.panel.fields.newsletter_enabled.label" => "Newsletter aktiv"
      "admin.settings.panel.fields.order_email_admin.description" => "Empfängeradresse für interne Bestellbenachrichtigungen."
      "admin.settings.panel.fields.order_email_admin.label" => "Admin-E-Mail für Bestellungen"
      "admin.settings.panel.fields.order_email_notification.description" => "Steuert, ob bei neuen Bestellungen Benachrichtigungen versendet werden."
      "admin.settings.panel.fields.order_email_notification.label" => "Bestellbenachrichtigungen aktiv"
      "admin.settings.panel.fields.paypal_client_id.description" => "Client-ID für eine spätere PayPal-Integration; derzeit ohne aktive Checkout-Verdrahtung."
      "admin.settings.panel.fields.paypal_client_id.label" => "PayPal Client ID"
      "admin.settings.panel.fields.paypal_enabled.description" => "Vorbereitungsflag für eine spätere PayPal-Integration; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.paypal_enabled.label" => "PayPal aktiv"
      "admin.settings.panel.fields.prepayment_enabled.description" => "Vorbereitungsflag für einen späteren Vorkasse-Pfad; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.prepayment_enabled.label" => "Vorkasse aktiv"
      "admin.settings.panel.fields.recaptcha_admin_login_enabled.description" => "Aktiviert auf der Admin-Login-Seite eine zusätzliche Google-reCAPTCHA-Prüfung."
      "admin.settings.panel.fields.recaptcha_admin_login_enabled.label" => "Admin-Login schützen"
      "admin.settings.panel.fields.recaptcha_admin_login_variant.description" => "Wählt Checkbox oder Invisible für den Admin-Login. Passende Google-Keys vorausgesetzt."
      "admin.settings.panel.fields.recaptcha_admin_login_variant.label" => "Admin-Login Variante"
      "admin.settings.panel.fields.recaptcha_enabled.description" => "Master-Schalter für Google reCAPTCHA. Wirkt nur mit vollständig hinterlegten Schlüsseln."
      "admin.settings.panel.fields.recaptcha_enabled.label" => "Google reCAPTCHA aktiv"
      "admin.settings.panel.fields.recaptcha_language.description" => "Leere Auswahl übernimmt automatisch die Sprache der aktuellen Anfrage."
      "admin.settings.panel.fields.recaptcha_language.label" => "Google reCAPTCHA Sprache"
      "admin.settings.panel.fields.recaptcha_public_forms_enabled.description" => "Aktiviert reCAPTCHA für Registrierung, Passwort-Reset, Verify-Resend, Kontakt, B2B und Support."
      "admin.settings.panel.fields.recaptcha_public_forms_enabled.label" => "Public-Formulare schützen"
      "admin.settings.panel.fields.recaptcha_public_forms_secret_key.description" => "Optionaler eigener Secret-Key für die Public-Formulare. Leer verwendet den Admin-/Fallback-Key."
      "admin.settings.panel.fields.recaptcha_public_forms_secret_key.label" => "Public-Formulare Secret-Key"
      "admin.settings.panel.fields.recaptcha_public_forms_site_key.description" => "Optionaler eigener Site-Key für die Public-Formulare. Leer verwendet den Admin-/Fallback-Key."
      "admin.settings.panel.fields.recaptcha_public_forms_site_key.label" => "Public-Formulare Site-Key"
      "admin.settings.panel.fields.recaptcha_public_forms_variant.description" => "Wählt Checkbox oder Invisible für die Public- und Shop-Formulare."
      "admin.settings.panel.fields.recaptcha_public_forms_variant.label" => "Public-Formulare Variante"
      "admin.settings.panel.fields.recaptcha_secret_key.description" => "Geheimer Serverschlüssel für den Admin-Login und als Fallback für Public-Formulare ohne eigene Keys."
      "admin.settings.panel.fields.recaptcha_secret_key.label" => "Google reCAPTCHA Secret-Key (Admin / Fallback)"
      "admin.settings.panel.fields.recaptcha_site_key.description" => "Öffentlicher Schlüssel für den Admin-Login und als Fallback für Public-Formulare ohne eigene Keys."
      "admin.settings.panel.fields.recaptcha_site_key.label" => "Google reCAPTCHA Site-Key (Admin / Fallback)"
      "admin.settings.panel.fields.shipping_flat_rate.description" => "Standard-Versandkostenbetrag pro Bestellung."
      "admin.settings.panel.fields.shipping_flat_rate.label" => "Versandpauschale"
      "admin.settings.panel.fields.shop_address.description" => "Postanschrift des Shops oder Unternehmens."
      "admin.settings.panel.fields.shop_address.label" => "Shop-Adresse"
      "admin.settings.panel.fields.shop_currency.description" => "Standardwährung des Shops als ISO-Code."
      "admin.settings.panel.fields.shop_currency.label" => "Shop-Währung"
      "admin.settings.panel.fields.shop_email.description" => "Zentrale Kontakt- und Absenderadresse des Shops."
      "admin.settings.panel.fields.shop_email.label" => "Shop-E-Mail"
      "admin.settings.panel.fields.shop_favicon.description" => "Browser-Icon des Shops."
      "admin.settings.panel.fields.shop_favicon.label" => "Favicon"
      "admin.settings.panel.fields.shop_free_shipping_threshold.description" => "Bestellwert ab dem kostenloser Versand gilt."
      "admin.settings.panel.fields.shop_free_shipping_threshold.label" => "Schwelle kostenloser Versand"
      "admin.settings.panel.fields.shop_legal_name.description" => "Juristischer Name des Betreibers für Rechtstexte und Dokumente."
      "admin.settings.panel.fields.shop_legal_name.label" => "Rechtlicher Firmenname"
      "admin.settings.panel.fields.shop_logo.description" => "Logo-Datei für Header und Markenauftritt."
      "admin.settings.panel.fields.shop_logo.label" => "Shop-Logo"
      "admin.settings.panel.fields.shop_meta_description.description" => "Standard-Meta-Beschreibung für Shop- und Übersichtsseiten."
      "admin.settings.panel.fields.shop_meta_description.label" => "Meta-Beschreibung"
      "admin.settings.panel.fields.shop_meta_title.description" => "Standard-Meta-Titel für Shop- und Übersichtsseiten."
      "admin.settings.panel.fields.shop_meta_title.label" => "Meta-Titel"
      "admin.settings.panel.fields.shop_min_order_value.description" => "Mindestbetrag, der für eine Bestellung erreicht werden muss."
      "admin.settings.panel.fields.shop_min_order_value.label" => "Mindestbestellwert"
      "admin.settings.panel.fields.shop_name.description" => "Name des Shops für Titel, E-Mails und Frontend-Ausgaben."
      "admin.settings.panel.fields.shop_name.label" => "Shop-Name"
      "admin.settings.panel.fields.shop_offline_message.description" => "Hinweistext, der angezeigt wird, wenn der Shop deaktiviert ist."
      "admin.settings.panel.fields.shop_offline_message.label" => "Offline-Hinweis Shop"
      "admin.settings.panel.fields.shop_phone.description" => "Telefonnummer für Kontakt- und Servicetexte."
      "admin.settings.panel.fields.shop_phone.label" => "Shop-Telefon"
      "admin.settings.panel.fields.shop_product_limit.description" => "Maximale Anzahl von Produkten pro Listing-Seite."
      "admin.settings.panel.fields.shop_product_limit.label" => "Produkte pro Seite"
      "admin.settings.panel.fields.shop_return_days.description" => "Anzahl der Tage für Rückgabe- oder Widerrufsangaben."
      "admin.settings.panel.fields.shop_return_days.label" => "Rückgabefrist in Tagen"
      "admin.settings.panel.fields.shop_status.description" => "Schaltet den gesamten Shop im Frontend ein oder aus."
      "admin.settings.panel.fields.shop_status.label" => "Shop online"
      "admin.settings.panel.fields.shop_tax_id.description" => "Steuerliche Kennung für Impressum und Rechnungen."
      "admin.settings.panel.fields.shop_tax_id.label" => "Steuer-ID"
      "admin.settings.panel.fields.shop_vat_included.description" => "Kennzeichnet, ob Produktpreise bereits die Mehrwertsteuer enthalten."
      "admin.settings.panel.fields.shop_vat_included.label" => "Preise inklusive MwSt."
      "admin.settings.panel.fields.shop_vat_rate.description" => "Standard-Steuersatz in Prozent."
      "admin.settings.panel.fields.shop_vat_rate.label" => "Mehrwertsteuersatz"
      "admin.settings.panel.fields.stripe_enabled.description" => "Aktiviert die Zahlungsart Stripe im Checkout."
      "admin.settings.panel.fields.stripe_enabled.label" => "Stripe aktiv"
      "admin.settings.panel.fields.stripe_public_key.description" => "Öffentlicher Stripe-Schlüssel für Frontend und Checkout."
      "admin.settings.panel.fields.stripe_public_key.label" => "Stripe Public Key"
      "admin.settings.panel.image.preview_alt" => "Vorschau"
      "admin.settings.panel.meta_title" => "Einstellungs-Panel"
      "admin.settings.panel.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.settings.panel.notifications.invalid_csrf_retry" => "Ungültiges CSRF-Token. Bitte erneut versuchen."
      "admin.settings.panel.notifications.saved" => "Einstellungen wurden gespeichert."
      "admin.settings.panel.notifications.unknown_key" => "Unbekannter Schlüssel."
      "admin.settings.panel.page_subtitle" => "Verwalte Shop-Basisdaten, Zahlungen, Benachrichtigungen und SEO zentral."
      "admin.settings.panel.page_title" => "Einstellungs-Panel"
      "admin.settings.panel.panel_title" => "Vordefinierte Einstellungen"
      "admin.settings.panel.password.existing_hint" => "Schlüssel hinterlegt. Feld leer lassen, um den bestehenden Wert zu behalten."
      "admin.settings.panel.password.missing_hint" => "Noch nicht konfiguriert."
      "admin.settings.panel.password.placeholder_existing" => "******** (gespeichert, zum Ändern neu eingeben)"
      "admin.settings.panel.password.placeholder_new" => "Schlüssel eingeben..."
      "admin.settings.panel.payment_runtime_notice" => "Aktuell ist im Live-Checkout nur Stripe freigeschaltet. PayPal, Klarna, Vorkasse und Rechnung bleiben hier bis zur echten Implementierung reine Vorbereitungsfelder."
      "admin.settings.panel.tabs.allgemein.description" => "Shop, rechtliche Seiten und Basisdaten"
      "admin.settings.panel.tabs.allgemein.label" => "Allgemein"
      "admin.settings.panel.tabs.benachrichtigungen.description" => "Bestellmails und Newsletter-Steuerung"
      "admin.settings.panel.tabs.benachrichtigungen.label" => "Benachrichtigungen"
      "admin.settings.panel.tabs.ecommerce.description" => "Preise, Versand, Limits und Rückgaben"
      "admin.settings.panel.tabs.ecommerce.label" => "E-Commerce"
      "admin.settings.panel.tabs.security.description" => "Login-Schutz, reCAPTCHA und sensible Betriebsparameter"
      "admin.settings.panel.tabs.security.label" => "Sicherheit"
      "admin.settings.panel.tabs.seo.description" => "Meta-Titel und Meta-Beschreibungen für den Shop"
      "admin.settings.panel.tabs.seo.label" => "SEO"
      "admin.settings.panel.tabs.zahlungen.description" => "Aktivierung und Zugangsdaten der Zahlungsarten"
      "admin.settings.panel.tabs.zahlungen.label" => "Zahlungen"
      "admin.settings.panel.tooltips.setting_key" => "Schlüssel: %key%"
      "admin.shipping.common.actions.back" => "Zurück"
      "admin.shipping.common.actions.cancel" => "Abbrechen"
      "admin.shipping.common.actions.delete" => "Löschen"
      "admin.shipping.common.actions.edit" => "Bearbeiten"
      "admin.shipping.common.actions.save" => "Speichern"
      "admin.shipping.common.close" => "Schließen"
      "admin.shipping.common.delete_modal_title" => "Löschen bestätigen"
      "admin.shipping.common.form_panel_title" => "Formular"
      "admin.shipping.common.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shipping.common.nav.new" => "Neu anlegen"
      "admin.shipping.common.nav.overview" => "Übersicht"
      "admin.shipping.common.table.actions" => "Aktionen"
      "admin.shipping.common.table.carrier" => "Carrier"
      "admin.shipping.common.table.countries" => "Länder"
      "admin.shipping.common.table.date" => "Datum"
      "admin.shipping.common.table.id" => "ID"
      "admin.shipping.common.table.name" => "Name"
      "admin.shipping.common.table.price" => "Preis"
      "admin.shipping.common.table.reason" => "Grund"
      "admin.shipping.common.table.shipped_at" => "Versanddatum"
      "admin.shipping.common.table.status" => "Status"
      "admin.shipping.common.table.tracking_number" => "Trackingnummer"
      "admin.shipping.common.table.type" => "Typ"
      "admin.shipping.common.table.zone" => "Zone"
      "admin.shipping.method.fields.delivery_time" => "Lieferzeit"
      "admin.shipping.method.fields.description" => "Beschreibung"
      "admin.shipping.method.fields.name" => "Versandart"
      "admin.shipping.method.fields.price" => "Preis"
      "admin.shipping.method.fields.type" => "Typ"
      "admin.shipping.method.fields.zone" => "Versandzone"
      "admin.shipping.method.form.create_title" => "Versandart anlegen"
      "admin.shipping.method.form.edit_title" => "Versandart bearbeiten"
      "admin.shipping.method.form.subtitle" => "Pflege Versandname, Preis und Zonenzuordnung."
      "admin.shipping.method.index.create" => "Versandart anlegen"
      "admin.shipping.method.index.delete_confirm" => "Versandart "%name%" wirklich löschen?"
      "admin.shipping.method.index.panel_title" => "Versandarten Liste"
      "admin.shipping.method.index.subtitle" => "Verwalte Preise und Zonen der verfügbaren Versandmethoden."
      "admin.shipping.method.index.title" => "Versandarten"
      "admin.shipping.method.notifications.created" => "Versandart wurde angelegt."
      "admin.shipping.method.notifications.deleted" => "Versandart wurde gelöscht."
      "admin.shipping.method.notifications.updated" => "Versandart wurde gespeichert."
      "admin.shipping.method.type.pickup" => "Abholung im Geschäft"
      "admin.shipping.method.type.shipping" => "Versand"
      "admin.shipping.nav.method" => "Versandarten"
      "admin.shipping.nav.return_request" => "Retouren"
      "admin.shipping.nav.shipment" => "Sendungsverfolgung"
      "admin.shipping.nav.zone" => "Versandzonen"
      "admin.shipping.return_request.fields.reason" => "Rückgabegrund"
      "admin.shipping.return_request.fields.requested_at" => "Anfragedatum"
      "admin.shipping.return_request.fields.status" => "Status"
      "admin.shipping.return_request.form.create_title" => "Retoure anlegen"
      "admin.shipping.return_request.form.edit_title" => "Retoure bearbeiten"
      "admin.shipping.return_request.form.subtitle" => "Bearbeite Retourengrund, Status und Datum."
      "admin.shipping.return_request.index.create" => "Retoure anlegen"
      "admin.shipping.return_request.index.delete_confirm" => "Retoure #%id% wirklich löschen?"
      "admin.shipping.return_request.index.panel_title" => "Retouren Liste"
      "admin.shipping.return_request.index.subtitle" => "Behalte Gründe, Status und Bearbeitung von Retourenanfragen im Blick."
      "admin.shipping.return_request.index.title" => "Retouren"
      "admin.shipping.return_request.notifications.created" => "Rückgabeanforderung wurde angelegt."
      "admin.shipping.return_request.notifications.deleted" => "Rückgabeanforderung wurde gelöscht."
      "admin.shipping.return_request.notifications.updated" => "Rückgabeanforderung wurde gespeichert."
      "admin.shipping.shipment.fields.carrier" => "Versanddienstleister"
      "admin.shipping.shipment.fields.shipped_at" => "Versanddatum"
      "admin.shipping.shipment.fields.status" => "Status"
      "admin.shipping.shipment.fields.tracking_number" => "Trackingnummer"
      "admin.shipping.shipment.form.create_title" => "Sendung anlegen"
      "admin.shipping.shipment.form.edit_title" => "Sendung bearbeiten"
      "admin.shipping.shipment.form.subtitle" => "Verwalte Trackingnummer, Carrier und Versandstatus."
      "admin.shipping.shipment.index.create" => "Sendung anlegen"
      "admin.shipping.shipment.index.delete_confirm" => "Sendung #%id% wirklich löschen?"
      "admin.shipping.shipment.index.panel_title" => "Sendungen Liste"
      "admin.shipping.shipment.index.subtitle" => "Trackingdaten, Carrier und Status deiner Versandvorgänge zentral verwalten."
      "admin.shipping.shipment.index.title" => "Sendungen"
      "admin.shipping.shipment.notifications.created" => "Sendung wurde angelegt."
      "admin.shipping.shipment.notifications.deleted" => "Sendung wurde gelöscht."
      "admin.shipping.shipment.notifications.updated" => "Sendung wurde gespeichert."
      "admin.shipping.zone.fields.countries" => "Länder (Komma getrennt)"
      "admin.shipping.zone.fields.name" => "Versandzone"
      "admin.shipping.zone.form.create_title" => "Versandzone anlegen"
      "admin.shipping.zone.form.edit_title" => "Versandzone bearbeiten"
      "admin.shipping.zone.form.subtitle" => "Pflege Name und Länderzuordnung einer Versandzone."
      "admin.shipping.zone.index.create" => "Versandzone anlegen"
      "admin.shipping.zone.index.delete_confirm" => "Versandzone "%name%" wirklich löschen?"
      "admin.shipping.zone.index.panel_title" => "Versandzonen Liste"
      "admin.shipping.zone.index.subtitle" => "Verwalte Länderzuordnung und Struktur der Versandzonen."
      "admin.shipping.zone.index.title" => "Versandzonen"
      "admin.shipping.zone.notifications.created" => "Versandzone wurde angelegt."
      "admin.shipping.zone.notifications.deleted" => "Versandzone wurde gelöscht."
      "admin.shipping.zone.notifications.updated" => "Versandzone wurde gespeichert."
      "admin.shop_management.categories.form.create_title" => "Kategorie anlegen"
      "admin.shop_management.categories.form.edit_title" => "Kategorie bearbeiten"
      "admin.shop_management.categories.form.fields.name" => "Name"
      "admin.shop_management.categories.form.fields.parent" => "Übergeordnete Kategorie"
      "admin.shop_management.categories.form.fields.slug" => "URL-Name"
      "admin.shop_management.categories.form.tabs.main" => "Stammdaten"
      "admin.shop_management.categories.form.tabs.seo" => "SEO"
      "admin.shop_management.categories.notifications.bulk_deleted" => "%count% Kategorie(n) wurden gelöscht."
      "admin.shop_management.categories.notifications.created" => "Kategorie wurde angelegt."
      "admin.shop_management.categories.notifications.deleted_named" => "Kategorie „%name%“ wurde gelöscht."
      "admin.shop_management.categories.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shop_management.categories.notifications.no_selection" => "Keine Kategorien ausgewählt."
      "admin.shop_management.categories.notifications.updated" => "Kategorie wurde gespeichert."
      "admin.shop_management.products.form.create_title" => "Produkt anlegen"
      "admin.shop_management.products.form.edit_title" => "Produkt bearbeiten"
      "admin.shop_management.products.form.fields.active" => "Produkt veröffentlichen"
      "admin.shop_management.products.form.fields.available" => "Kaufbar / Bestellbar"
      "admin.shop_management.products.form.fields.category" => "Kategorie"
      "admin.shop_management.products.form.fields.country_of_origin" => "Herkunftsland"
      "admin.shop_management.products.form.fields.custom1" => "Freitext 1"
      "admin.shop_management.products.form.fields.custom2" => "Freitext 2"
      "admin.shop_management.products.form.fields.delivery_time" => "Lieferzeit"
      "admin.shop_management.products.form.fields.description" => "Beschreibung"
      "admin.shop_management.products.form.fields.downloads" => "Downloads"
      "admin.shop_management.products.form.fields.ean" => "EAN/GTIN/Barcode"
      "admin.shop_management.products.form.fields.height" => "Höhe (cm)"
      "admin.shop_management.products.form.fields.label" => "Label im Produktbild"
      "admin.shop_management.products.form.fields.length" => "Länge (cm)"
      "admin.shop_management.products.form.fields.manufacturer" => "Hersteller"
      "admin.shop_management.products.form.fields.material" => "Material"
      "admin.shop_management.products.form.fields.name" => "Produktname"
      "admin.shop_management.products.form.fields.pickup_available" => "Abholung im Geschäft anbieten"
      "admin.shop_management.products.form.fields.pickup_note" => "Abholhinweis"
      "admin.shop_management.products.form.fields.pickup_only" => "Nur Abholung im Geschäft"
      "admin.shop_management.products.form.fields.price" => "Preis"
      "admin.shop_management.products.form.fields.shipping_cost" => "Versandkosten"
      "admin.shop_management.products.form.fields.shipping_method" => "Versandart"
      "admin.shop_management.products.form.fields.short_description" => "Kurzbeschreibung"
      "admin.shop_management.products.form.fields.sku" => "Artikelnummer"
      "admin.shop_management.products.form.fields.slug" => "Seitenname"
      "admin.shop_management.products.form.fields.special_price" => "Sonderpreis"
      "admin.shop_management.products.form.fields.stock" => "Lagerbestand"
      "admin.shop_management.products.form.fields.tags" => "Tags/Schlagwörter (Komma-getrennt)"
      "admin.shop_management.products.form.fields.tags_placeholder" => "z.B. Sommer, Sale, Neu"
      "admin.shop_management.products.form.fields.uvp" => "UVP/Streichpreis"
      "admin.shop_management.products.form.fields.vat" => "MwSt."
      "admin.shop_management.products.form.fields.video_url" => "Video-URL"
      "admin.shop_management.products.form.fields.weight" => "Gewicht (kg)"
      "admin.shop_management.products.form.fields.width" => "Breite (cm)"
      "admin.shop_management.products.form.image_alt" => "Produktbild"
      "admin.shop_management.products.form.image_delete" => "Löschen"
      "admin.shop_management.products.form.image_delete_confirm" => "Bild wirklich löschen?"
      "admin.shop_management.products.form.images_upload_help" => "Mehrere Bilder auswählbar. Bestehende Bilder werden rechts angezeigt."
      "admin.shop_management.products.form.images_upload_label" => "Produktbilder hochladen"
      "admin.shop_management.products.form.layout.aside.actions_title" => "Aktionen"
      "admin.shop_management.products.form.layout.aside.navigation_title" => "Schnellnavigation"
      "admin.shop_management.products.form.layout.aside.summary_title" => "Überblick"
      "admin.shop_management.products.form.layout.cards.attributes" => "Material & Zusatzfelder"
      "admin.shop_management.products.form.layout.cards.dimensions" => "Maße & Gewicht"
      "admin.shop_management.products.form.layout.cards.fulfillment" => "Versand, Bestand & Status"
      "admin.shop_management.products.form.layout.cards.gallery" => "Bestehende Galerie"
      "admin.shop_management.products.form.layout.cards.identifiers" => "Identifikation"
      "admin.shop_management.products.form.layout.cards.pricing" => "Preise & Steuer"
      "admin.shop_management.products.form.layout.cards.status" => "Status & Sichtbarkeit"
      "admin.shop_management.products.form.layout.cards.uploads" => "Uploads & Einbindungen"
      "admin.shop_management.products.form.layout.descriptions.basics" => "Lege die zentralen Shop-Daten fest, die im Listing und auf der Produktseite erscheinen."
      "admin.shop_management.products.form.layout.descriptions.commerce" => "Steuere Preislogik, Bestand, Versandart und Sichtbarkeit in einem zusammenhängenden Block."
      "admin.shop_management.products.form.layout.descriptions.content" => "Pflege Kurztext und ausführliche Beschreibung getrennt für Listen- und Detailansicht."
      "admin.shop_management.products.form.layout.descriptions.import" => "Starte mit EAN, Hersteller und Wave-Import, bevor du die restlichen Produktdaten prüfst."
      "admin.shop_management.products.form.layout.descriptions.media" => "Verwalte Galerie, Uploads und Video an einer Stelle."
      "admin.shop_management.products.form.layout.descriptions.seo" => "Meta-Daten und Open-Graph-Werte für Suchmaschinen und Social Sharing."
      "admin.shop_management.products.form.layout.descriptions.specs" => "Erfasse Maße, Material und interne Zusatzfelder ohne Medien oder SEO dazwischen."
      "admin.shop_management.products.form.layout.sections.basics" => "Stammdaten"
      "admin.shop_management.products.form.layout.sections.commerce" => "Verkauf & Versand"
      "admin.shop_management.products.form.layout.sections.content" => "Inhalte"
      "admin.shop_management.products.form.layout.sections.import" => "EAN & Wave"
      "admin.shop_management.products.form.layout.sections.media" => "Medien & Dateien"
      "admin.shop_management.products.form.layout.sections.seo" => "SEO & Metadaten"
      "admin.shop_management.products.form.layout.sections.specs" => "Technische Daten"
      "admin.shop_management.products.form.layout.subtitle" => "Pflege Stammdaten, Verkauf, Medien und SEO in einer strukturierten Arbeitsansicht."
      "admin.shop_management.products.form.layout.summary.category" => "Kategorie"
      "admin.shop_management.products.form.layout.summary.ean" => "EAN"
      "admin.shop_management.products.form.layout.summary.images" => "Bilder"
      "admin.shop_management.products.form.layout.summary.images_count" => "%count% Bild(er)"
      "admin.shop_management.products.form.layout.summary.no_value" => "Noch offen"
      "admin.shop_management.products.form.layout.summary.sku" => "Artikelnummer"
      "admin.shop_management.products.form.layout.summary.uncategorized" => "Nicht zugeordnet"
      "admin.shop_management.products.form.tabs.gallery" => "Galerie"
      "admin.shop_management.products.form.tabs.inventory" => "Lagerverwaltung"
      "admin.shop_management.products.form.tabs.product" => "Produkt"
      "admin.shop_management.products.form.tabs.seo" => "SEO"
      "admin.shop_management.products.form.wave_prefill.button" => "Daten von Wave laden"
      "admin.shop_management.products.form.wave_prefill.description" => "Lädt anhand der EAN oder, wenn keine EAN eingetragen ist, anhand der Wave-Art.-Nr. aus der Beschreibungsbox Name, Hersteller, SKU, Beschreibung, Kategoriehinweis und textbasierte SEO-Daten von Wave Distribution. Der Preis bleibt unverändert, die erkannten Produktbilder können optional beim Speichern importiert werden."
      "admin.shop_management.products.form.wave_prefill.image_import_toggle" => "Produktbilder beim Speichern importieren"
      "admin.shop_management.products.form.wave_prefill.image_preview_alt" => "Wave-Produktbild Vorschau"
      "admin.shop_management.products.form.wave_prefill.image_preview_title" => "Vorgemerkte Bildvorschau"
      "admin.shop_management.products.form.wave_prefill.invalid_ean" => "Bitte eine gültige EAN oder Wave-Art.-Nr. eingeben."
      "admin.shop_management.products.form.wave_prefill.loading" => "Wave-Daten werden geladen ..."
      "admin.shop_management.products.form.wave_prefill.not_found" => "Zum Suchwert %ean% wurde bei Wave kein passender Artikel gefunden."
      "admin.shop_management.products.form.wave_prefill.note_category_matched" => "Lokale Kategorie erkannt: %category%."
      "admin.shop_management.products.form.wave_prefill.note_category_unmatched" => "Keine lokale Kategorie für "%category%" gefunden. Bitte manuell zuordnen."
      "admin.shop_management.products.form.wave_prefill.note_image_missing" => "Für diesen Artikel wurde kein importierbares Produktbild gefunden."
      "admin.shop_management.products.form.wave_prefill.note_images_ready" => "%count% Produktbild(er) erkannt und werden beim Speichern importiert, solange die Option aktiv bleibt."
      "admin.shop_management.products.form.wave_prefill.note_price_missing" => "Es wurde kein öffentlicher Preis gefunden. Der bestehende Preis bleibt unverändert."
      "admin.shop_management.products.form.wave_prefill.server_error" => "Die Wave-Abfrage ist fehlgeschlagen. Bitte später erneut versuchen."
      "admin.shop_management.products.form.wave_prefill.source_link" => "Quelle bei Wave öffnen"
      "admin.shop_management.products.form.wave_prefill.success" => "Wave-Daten für "%name%" wurden übernommen."
      "admin.shop_management.products.form.wave_prefill.title" => "Wave-Vorbefüllung per EAN oder Wave-Art.-Nr."
      "admin.shop_management.products.list.actions.activate" => "Produkt aktivieren"
      "admin.shop_management.products.list.actions.deactivate" => "Produkt deaktivieren"
      "admin.shop_management.products.list.blocked_count" => "%count% bestellgeschützt"
      "admin.shop_management.products.list.bulk_delete" => "Ausgewählte löschen"
      "admin.shop_management.products.list.bulk_delete_confirm" => "Ausgewählte Produkte wirklich löschen? Diese Aktion ist nicht rückgängig zu machen."
      "admin.shop_management.products.list.bulk_hint" => "Diese Aktion löscht die ausgewählten Produkte dauerhaft."
      "admin.shop_management.products.list.bulk_selected" => "%count% ausgewählt"
      "admin.shop_management.products.list.columns.actions" => "Aktionen"
      "admin.shop_management.products.list.columns.active" => "Sichtbar"
      "admin.shop_management.products.list.columns.available" => "Verfügbar"
      "admin.shop_management.products.list.columns.category" => "Kategorie"
      "admin.shop_management.products.list.columns.meta_title" => "Meta Title"
      "admin.shop_management.products.list.columns.name" => "Name"
      "admin.shop_management.products.list.columns.price" => "Preis"
      "admin.shop_management.products.list.columns.quantity" => "Menge"
      "admin.shop_management.products.list.columns.shipping" => "Versand"
      "admin.shop_management.products.list.create" => "Neues Produkt"
      "admin.shop_management.products.list.deletable_count" => "%count% löschbar"
      "admin.shop_management.products.list.delete_all_deletable" => "Alle löschbaren löschen (%count%)"
      "admin.shop_management.products.list.delete_all_deletable_confirm" => "Wirklich alle %count% löschbaren Produkte löschen? %blocked% bestellgeschützte Produkte bleiben erhalten. Diese Aktion ist nicht rückgängig zu machen."
      "admin.shop_management.products.list.delete_message" => "Produkt "%name%" wirklich löschen?"
      "admin.shop_management.products.list.panel_title" => "Produktliste"
      "admin.shop_management.products.list.subtitle" => "Verwalte Sortiment, Preise, Verfügbarkeit und Metadaten zentral."
      "admin.shop_management.products.list.title" => "Produkte"
      "admin.shop_management.products.list.total_count" => "%count% gesamt"
      "admin.shop_management.products.list.values.active" => "Aktiv"
      "admin.shop_management.products.list.values.inactive" => "Inaktiv"
      "admin.shop_management.products.list.values.no" => "Nein"
      "admin.shop_management.products.list.values.pickup_available" => "Abholung möglich"
      "admin.shop_management.products.list.values.pickup_only" => "Nur Abholung"
      "admin.shop_management.products.list.values.yes" => "Ja"
      "admin.shop_management.products.notifications.activated" => "Produkt "%name%" wurde aktiviert."
      "admin.shop_management.products.notifications.all_blocked" => "Die ausgewählten Produkte sind in Bestellungen enthalten und können nicht gelöscht werden."
      "admin.shop_management.products.notifications.bulk_blocked" => "%count% Produkt(e) wurden übersprungen, da sie in Bestellungen enthalten sind."
      "admin.shop_management.products.notifications.bulk_deleted" => "%count% Produkt(e) wurden gelöscht."
      "admin.shop_management.products.notifications.created" => "Produkt wurde angelegt."
      "admin.shop_management.products.notifications.deactivated" => "Produkt "%name%" wurde deaktiviert."
      "admin.shop_management.products.notifications.delete_all_deletable" => "%count% löschbare Produkt(e) wurden gelöscht."
      "admin.shop_management.products.notifications.delete_blocked" => "Dieses Produkt ist in Bestellungen enthalten und kann nicht gelöscht werden."
      "admin.shop_management.products.notifications.deleted" => "Produkt wurde gelöscht."
      "admin.shop_management.products.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shop_management.products.notifications.name_already_exists" => "Ein Produkt mit dem Namen "%name%" existiert bereits. Bitte einen anderen Namen wählen."
      "admin.shop_management.products.notifications.no_deletable_products" => "Es gibt aktuell keine löschbaren Produkte. Alle vorhandenen Produkte sind in Bestellungen referenziert."
      "admin.shop_management.products.notifications.no_products" => "Es sind keine Produkte vorhanden."
      "admin.shop_management.products.notifications.no_selection" => "Keine Produkte ausgewählt."
      "admin.shop_management.products.notifications.not_found" => "Produkt nicht gefunden."
      "admin.shop_management.products.notifications.updated" => "Produkt wurde gespeichert."
      "admin.shop_management.products.notifications.wave_image_import_failed" => "Mindestens ein Wave-Produktbild konnte nicht importiert werden. Das Produkt wurde nur mit den erfolgreich geladenen Bildern gespeichert."
      "admin.shop_users.form.actions.back" => "Zurück"
      "admin.shop_users.form.actions.cancel" => "Abbrechen"
      "admin.shop_users.form.actions.help" => "Hilfe"
      "admin.shop_users.form.actions.save" => "Speichern"
      "admin.shop_users.form.hints.access" => "Shop-Logins erhalten automatisch die Basisrolle ROLE_SHOP_USER. B2B-Freigaben und Preislogik werden über den verknüpften Kunden und dessen Kundengruppe gesteuert."
      "admin.shop_users.form.hints.customer" => "Wenn ein Kunde ausgewählt wird, verknüpft das System den Login mit dem Kundendatensatz. Bereits vergebene Verknüpfungen werden markiert."
      "admin.shop_users.form.hints.customer_group" => "Die Kundengruppe wird dem verknüpften Shop-Kunden zugewiesen und steuert B2B-Preisfreigaben sowie Rabatte."
      "admin.shop_users.form.hints.no_groups" => "Noch keine Kundengruppen vorhanden."
      "admin.shop_users.form.hints.password" => "Mindestens 8 Zeichen."
      "admin.shop_users.form.labels.customer" => "Shop-Kunde (Customer-Datensatz)"
      "admin.shop_users.form.labels.customer_group" => "Kundengruppe"
      "admin.shop_users.form.labels.email" => "E-Mail-Adresse"
      "admin.shop_users.form.labels.enabled" => "Konto aktiv (Benutzer kann sich einloggen)"
      "admin.shop_users.form.labels.password_edit" => "Neues Passwort"
      "admin.shop_users.form.labels.password_new" => "Passwort"
      "admin.shop_users.form.labels.password_unchanged" => "(leer lassen = unverändert)"
      "admin.shop_users.form.links.create_group" => "Jetzt anlegen"
      "admin.shop_users.form.meta_title_edit" => "Shop-Benutzer bearbeiten"
      "admin.shop_users.form.meta_title_new" => "Shop-Benutzer anlegen"
      "admin.shop_users.form.page_subtitle" => "Login-Konto, Kunden-Verknüpfung und Kundengruppe pflegen."
      "admin.shop_users.form.page_title_edit" => "Shop-Benutzer bearbeiten"
      "admin.shop_users.form.page_title_new" => "Shop-Benutzer anlegen"
      "admin.shop_users.form.placeholders.already_assigned" => "[bereits vergeben]"
      "admin.shop_users.form.placeholders.email" => "kunde@beispiel.de"
      "admin.shop_users.form.placeholders.no_customer" => "— kein Kunde verknüpft —"
      "admin.shop_users.form.placeholders.no_group" => "— keine Gruppe —"
      "admin.shop_users.form.placeholders.password_edit" => "Neues Passwort eingeben..."
      "admin.shop_users.form.placeholders.password_new" => "Mindestens 8 Zeichen"
      "admin.shop_users.form.sections.access" => "Rollen & Berechtigungen"
      "admin.shop_users.form.sections.customer" => "Verknüpfter Shop-Kunde"
      "admin.shop_users.form.sections.customer_group" => "B2B-Kundengruppe"
      "admin.shop_users.form.sections.login" => "Login-Daten"
      "admin.shop_users.form.values.discount_percent" => "(%discount%% Rabatt)"
      "admin.shop_users.help_index.card_subtitle" => "Login-Konten, Kunden-Verknüpfungen und Kundengruppen"
      "admin.shop_users.help_index.card_title" => "Shop-Benutzer"
      "admin.shop_users.help_index.table_description" => "Shop-Logins und verknüpfte Kundendatensätze verwalten"
      "admin.shop_users.help_index.table_label" => "Shop-Benutzer"
      "admin.shop_users.help.access.intro" => "Das Formular pflegt aktuell keine separaten Shop-Rollen. Jeder Shop-Benutzer erhält automatisch ROLE_SHOP_USER als Basiszugang."
      "admin.shop_users.help.access.points.one" => "Direkte Admin-Rollen gehören nie in ein Shop-Konto."
      "admin.shop_users.help.access.points.three" => "Die Anzeige „Basiszugang“ in der Liste bedeutet: keine zusätzlichen direkten Rollen gesetzt."
      "admin.shop_users.help.access.points.two" => "B2B-Freigaben und Preisregeln werden über den verknüpften Customer und dessen Kundengruppe gesteuert."
      "admin.shop_users.help.access.title" => "Rollenmodell im Frontend"
      "admin.shop_users.help.actions.back" => "Zurück"
      "admin.shop_users.help.actions.module" => "Zum Modul"
      "admin.shop_users.help.create.steps.five" => "Optional einen bestehenden Customer-Datensatz verknüpfen."
      "admin.shop_users.help.create.steps.four" => "Das Konto bei Bedarf aktivieren oder gesperrt anlegen."
      "admin.shop_users.help.create.steps.one" => "Im Modul Shop-Benutzer auf „Neu anlegen“ klicken."
      "admin.shop_users.help.create.steps.seven" => "Speichern. Das Passwort wird sicher gehasht abgelegt."
      "admin.shop_users.help.create.steps.six" => "Optional eine Kundengruppe für B2B-Preislogik zuweisen."
      "admin.shop_users.help.create.steps.three" => "Ein Passwort mit mindestens 8 Zeichen vergeben."
      "admin.shop_users.help.create.steps.two" => "Eine eindeutige E-Mail-Adresse als Login eintragen."
      "admin.shop_users.help.create.title" => "Shop-Benutzer anlegen"
      "admin.shop_users.help.fields.rows.created_at" => "Erstellungsdatum des Kontos"
      "admin.shop_users.help.fields.rows.customer_group" => "Kundengruppe am verknüpften Customer-Datensatz"
      "admin.shop_users.help.fields.rows.customer_link" => "Verknüpfung über Customer.shopUser"
      "admin.shop_users.help.fields.rows.email" => "E-Mail-Adresse als Login-Name"
      "admin.shop_users.help.fields.rows.enabled" => "Steuert, ob sich der Benutzer anmelden darf"
      "admin.shop_users.help.fields.rows.password" => "Gehashtes Passwort des Shop-Kontos"
      "admin.shop_users.help.fields.rows.roles" => "Optionale direkte Frontend-Rollen; ROLE_SHOP_USER wird automatisch ergänzt"
      "admin.shop_users.help.fields.table.description" => "Beschreibung"
      "admin.shop_users.help.fields.table.field" => "Feld"
      "admin.shop_users.help.fields.table.type" => "Typ"
      "admin.shop_users.help.fields.title" => "Feldreferenz: ShopUser und Customer-Verknüpfung"
      "admin.shop_users.help.fields.types.boolean" => "Boolean"
      "admin.shop_users.help.fields.types.datetime" => "Datum / Zeit"
      "admin.shop_users.help.fields.types.hashed_text" => "Text (Hash)"
      "admin.shop_users.help.fields.types.json_array" => "JSON-Array"
      "admin.shop_users.help.fields.types.relation" => "Relation"
      "admin.shop_users.help.fields.types.unique_text" => "Text (eindeutig)"
      "admin.shop_users.help.link.intro" => "Ein Shop-Benutzer kann mit einem bestehenden Customer-Datensatz verknüpft werden. Darüber laufen Bestellhistorie, Adressen und Kundengruppe."
      "admin.shop_users.help.link.points.one" => "customer_id verknüpft den Login mit einem vorhandenen Customer-Datensatz."
      "admin.shop_users.help.link.points.three" => "Bereits verknüpfte Kunden sind im Auswahlfeld markiert."
      "admin.shop_users.help.link.points.two" => "customer_group_id wird am verknüpften Customer gepflegt, nicht direkt am ShopUser."
      "admin.shop_users.help.link.title" => "Kunde verknüpfen"
      "admin.shop_users.help.navigation.access" => "Rollenmodell"
      "admin.shop_users.help.navigation.create" => "Benutzer anlegen"
      "admin.shop_users.help.navigation.fields" => "Feldreferenz"
      "admin.shop_users.help.navigation.link" => "Kunde verknüpfen"
      "admin.shop_users.help.navigation.overview" => "Überblick"
      "admin.shop_users.help.navigation.password" => "Passwort ändern"
      "admin.shop_users.help.navigation.separation" => "Backend vs. Frontend"
      "admin.shop_users.help.navigation.title" => "Navigation"
      "admin.shop_users.help.overview.intro" => "Das Modul verwaltet Frontend-Shop-Benutzer für den Kundenlogin. Diese Konten sind strikt von Admin-Benutzern getrennt."
      "admin.shop_users.help.overview.permissions_title" => "Berechtigung:"
      "admin.shop_users.help.overview.separation_text" => "Shop-Benutzer und Admin-Benutzer sind zwei vollständig getrennte Entitäten. Ein Shop-Benutzer erhält keinen Admin-Zugriff."
      "admin.shop_users.help.overview.separation_title" => "Wichtige Trennung:"
      "admin.shop_users.help.overview.title" => "Shop-Benutzer: Überblick"
      "admin.shop_users.help.page_title" => "Hilfe: Shop-Benutzer"
      "admin.shop_users.help.password.points.one" => "Im Bearbeitungsformular ein neues Passwort eintragen und speichern."
      "admin.shop_users.help.password.points.three" => "Das gespeicherte Passwort ist nur als sicherer Hash vorhanden und nicht im Klartext einsehbar."
      "admin.shop_users.help.password.points.two" => "Ein leeres Passwortfeld lässt das bestehende Passwort unverändert."
      "admin.shop_users.help.password.title" => "Passwort ändern"
      "admin.shop_users.help.separation.admin.entity" => "Entity: User"
      "admin.shop_users.help.separation.admin.purpose" => "Für Admin-Bereich und Backoffice-Funktionen"
      "admin.shop_users.help.separation.admin.roles" => "Rollen: ROLE_ADMIN_*"
      "admin.shop_users.help.separation.admin.title" => "Admin-Benutzer"
      "admin.shop_users.help.separation.shop.entity" => "Entity: ShopUser"
      "admin.shop_users.help.separation.shop.purpose" => "Für Frontend-Login und Kundenfunktionen"
      "admin.shop_users.help.separation.shop.roles" => "Basisrolle: ROLE_SHOP_USER"
      "admin.shop_users.help.separation.shop.title" => "Shop-Benutzer"
      "admin.shop_users.help.separation.title" => "Backend vs. Frontend – Strikte Trennung"
      "admin.shop_users.index.actions.delete" => "Löschen"
      "admin.shop_users.index.actions.edit" => "Bearbeiten"
      "admin.shop_users.index.actions.help" => "Hilfe"
      "admin.shop_users.index.actions.new" => "Shop-Benutzer anlegen"
      "admin.shop_users.index.delete_confirm" => "Shop-Benutzer "%email%" wirklich löschen?"
      "admin.shop_users.index.headers.actions" => "Aktionen"
      "admin.shop_users.index.headers.active" => "Aktiv"
      "admin.shop_users.index.headers.created" => "Erstellt"
      "admin.shop_users.index.headers.customer" => "Verknüpfter Kunde"
      "admin.shop_users.index.headers.customer_group" => "Kundengruppe (B2B)"
      "admin.shop_users.index.headers.email" => "E-Mail"
      "admin.shop_users.index.headers.id" => "ID"
      "admin.shop_users.index.headers.roles" => "Rollen"
      "admin.shop_users.index.list_count" => "%count% Einträge"
      "admin.shop_users.index.list_title" => "Shop-Benutzerliste"
      "admin.shop_users.index.meta_title" => "Shop-Benutzer"
      "admin.shop_users.index.page_subtitle" => "Login-Konten für den Shop-Frontend-Bereich verwalten und Kundengruppen zuweisen."
      "admin.shop_users.index.page_title" => "Shop-Benutzer"
      "admin.shop_users.index.values.active" => "Aktiv"
      "admin.shop_users.index.values.base_access" => "Basiszugang"
      "admin.shop_users.index.values.blocked" => "Gesperrt"
      "admin.shop_users.index.values.empty" => "Keine Shop-Benutzer vorhanden."
      "admin.shop_users.index.values.none" => ""
      "admin.shop_users.nav.menu" => "Shop-Benutzer"
      "admin.shop_users.nav.new" => "Neu anlegen"
      "admin.shop_users.nav.overview" => "Übersicht"
      "admin.shop_users.notifications.created" => "Shop-Benutzer wurde angelegt."
      "admin.shop_users.notifications.deleted" => "Shop-Benutzer wurde gelöscht."
      "admin.shop_users.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shop_users.notifications.updated" => "Shop-Benutzer wurde gespeichert."
      "admin.shop_users.validation.email_taken" => "Diese E-Mail-Adresse ist bereits vergeben."
      "admin.shop_users.validation.invalid_email" => "Bitte eine gültige E-Mail-Adresse angeben."
      "admin.shop_users.validation.new_password_too_short" => "Das neue Passwort muss mindestens 8 Zeichen lang sein."
      "admin.shop_users.validation.password_too_short" => "Das Passwort muss mindestens 8 Zeichen lang sein."
      "admin.slider.form.actions.back" => "Zur Übersicht"
      "admin.slider.form.actions.cancel" => "Abbrechen"
      "admin.slider.form.actions.help" => "CMS-Hilfe"
      "admin.slider.form.actions.save" => "Speichern"
      "admin.slider.form.fields.background_color" => "Hintergrundfarbe"
      "admin.slider.form.fields.button_text" => "Button-Text"
      "admin.slider.form.fields.button_url" => "Button-URL"
      "admin.slider.form.fields.headline" => "Überschrift"
      "admin.slider.form.fields.image" => "Bild"
      "admin.slider.form.fields.text" => "Text"
      "admin.slider.form.fields.type" => "Slider-Typ"
      "admin.slider.form.help.background_color" => "Wird genutzt, wenn kein Bild vorhanden ist oder als Grundton unter dem Bild."
      "admin.slider.form.help.button_url" => "Absolute URLs und interne Pfade wie /shop oder /kontakt sind erlaubt."
      "admin.slider.form.help.image" => "Empfohlen: breite Hero-Grafik im Format JPG oder PNG."
      "admin.slider.form.hints.background_color" => "Diese Farbe wird im Slider als Grundton genutzt."
      "admin.slider.form.hints.best_practice_cta" => "CTA-Buttons nur setzen, wenn wirklich ein Ziel verlinkt werden soll."
      "admin.slider.form.hints.best_practice_headline" => "Kurze Headlines funktionieren im Slider deutlich besser."
      "admin.slider.form.hints.best_practice_image" => "Breite Bilder mit ruhigem Fokus wirken im Hero-Bereich am saubersten."
      "admin.slider.form.hints.live_update" => "Änderungen werden direkt im ausgewählten Slider-Typ sichtbar."
      "admin.slider.form.hints.no_image" => "Noch kein Sliderbild vorhanden."
      "admin.slider.form.meta_title_edit" => "Slider-Inhalt bearbeiten"
      "admin.slider.form.meta_title_new" => "Slider-Inhalt anlegen"
      "admin.slider.form.page_subtitle" => "Pflege Bild, Text und Button für einen Frontend-Slider in einem strukturierten Formular."
      "admin.slider.form.page_title_edit" => "Slider-Inhalt bearbeiten"
      "admin.slider.form.page_title_new" => "Slider-Inhalt anlegen"
      "admin.slider.form.placeholders.button_text" => "Jetzt entdecken"
      "admin.slider.form.placeholders.button_url" => "/shop"
      "admin.slider.form.placeholders.headline" => "z. B. Frühbucher-Angebote 2026"
      "admin.slider.form.placeholders.text" => "Kurzer Begleittext für den Slider."
      "admin.slider.form.sections.best_practices" => "Best Practices"
      "admin.slider.form.sections.content_data" => "Inhaltsdaten"
      "admin.slider.form.sections.current_image" => "Aktuelles Bild"
      "admin.slider.form.sections.preview_notes" => "Vorschau & Hinweise"
      "admin.slider.list.actions.delete" => "Löschen"
      "admin.slider.list.actions.edit" => "Bearbeiten"
      "admin.slider.list.actions.help" => "CMS-Hilfe"
      "admin.slider.list.actions.new" => "Neuen Slider anlegen"
      "admin.slider.list.active_homepage" => "Aktive Startseiten-Konfiguration: %type%."
      "admin.slider.list.delete_confirm" => "Slider "%name%" wirklich löschen?"
      "admin.slider.list.empty_section" => "Für %type% existieren aktuell keine Inhalte."
      "admin.slider.list.headers.actions" => "Aktionen"
      "admin.slider.list.headers.color" => "Farbe"
      "admin.slider.list.headers.content" => "Inhalt"
      "admin.slider.list.headers.cta" => "CTA"
      "admin.slider.list.headers.preview" => "Vorschau"
      "admin.slider.list.meta_title" => "Slider-Verwaltung"
      "admin.slider.list.page_subtitle" => "Pflege Headlines, Bilder und CTA-Links für alle drei Frontend-Slider an einem Ort."
      "admin.slider.list.page_title" => "Slider-Verwaltung"
      "admin.slider.list.section_count" => "%count% Einträge"
      "admin.slider.list.stats.active_entries" => "Aktive Einträge"
      "admin.slider.list.stats.total_badge" => "Alle Slider"
      "admin.slider.list.stats.total_label" => "Gesamt"
      "admin.slider.list.values.cta_without_text" => "CTA ohne Text"
      "admin.slider.list.values.no_cta" => "Kein CTA definiert"
      "admin.slider.list.values.no_headline" => "Ohne Überschrift"
      "admin.slider.list.values.no_image" => "Kein Bild hinterlegt"
      "admin.slider.list.values.no_text" => "Kein Begleittext hinterlegt."
      "admin.slider.list.values.no_url" => "Keine URL hinterlegt"
      "admin.slider.notifications.created" => "Slider-Inhalt wurde angelegt."
      "admin.slider.notifications.deleted" => "Slider-Inhalt wurde gelöscht."
      "admin.slider.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.slider.notifications.updated" => "Slider-Inhalt wurde gespeichert."
      "admin.slider.notifications.warning_edit" => "Hinweis: Die Startseite nutzt aktuell %active%. Dieser Eintrag liegt in %target%."
      "admin.slider.notifications.warning_new" => "Hinweis: Die Startseite nutzt aktuell %active%. Dieser neue Eintrag wurde unter %target% gespeichert."
      "admin.slider.types.slider1" => "Slider 1"
      "admin.slider.types.slider2" => "Slider 2"
      "admin.slider.types.slider3" => "Slider 3"
      "admin.support.form.create_title" => "Support-Ticket anlegen"
      "admin.support.form.edit_title" => "Support-Ticket bearbeiten"
      "admin.support.form.fields.created_at" => "Erstellt am"
      "admin.support.form.fields.message" => "Nachricht"
      "admin.support.form.fields.status" => "Status"
      "admin.support.form.fields.subject" => "Betreff"
      "admin.support.form.panel_title" => "Formular"
      "admin.support.form.subtitle" => "Steuere Betreff, Nachricht und Ticketstatus im Service-Team."
      "admin.support.list.columns.actions" => "Aktionen"
      "admin.support.list.columns.created_at" => "Erstellt am"
      "admin.support.list.columns.id" => "ID"
      "admin.support.list.columns.status" => "Status"
      "admin.support.list.columns.subject" => "Betreff"
      "admin.support.list.create" => "Ticket anlegen"
      "admin.support.list.delete_message" => "Support-Ticket "%subject%" wirklich löschen?"
      "admin.support.list.empty" => "Keine Support-Tickets vorhanden."
      "admin.support.list.panel_title" => "Ticketliste"
      "admin.support.list.subtitle" => "Verwalte Kundenanfragen inklusive Status und Bearbeitungsstand."
      "admin.support.list.title" => "Support-Tickets"
      "admin.support.notifications.created" => "Support-Ticket wurde angelegt."
      "admin.support.notifications.deleted" => "Support-Ticket wurde gelöscht."
      "admin.support.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.support.notifications.updated" => "Support-Ticket wurde gespeichert."
      "admin.support.statuses.closed" => "Geschlossen"
      "admin.support.statuses.in_progress" => "In Bearbeitung"
      "admin.support.statuses.open" => "Offen"
      "admin.theme.activation_dialog.blocked" => "Aktivierung blockiert: Mindestens ein harter Check ist offen."
      "admin.theme.activation_dialog.checklist_title" => "Nachvollziehbare Checkliste"
      "admin.theme.activation_dialog.confirm_blocked" => "Aktivierung blockiert"
      "admin.theme.activation_dialog.confirm_ready" => "Aktivieren"
      "admin.theme.activation_dialog.fetch_error" => "Die Aktivierungscheckliste konnte nicht geladen werden. Bitte Seite neu laden und erneut versuchen."
      "admin.theme.activation_dialog.items.critical_assets" => "Kritische Assets lokal vorhanden"
      "admin.theme.activation_dialog.items.duplicate_targets" => "Keine doppelten Mapping-Ziele"
      "admin.theme.activation_dialog.items.external_resources" => "Keine externen Ressourcen ohne lokale Kopie"
      "admin.theme.activation_dialog.items.invalid_mappings" => "Mapping-Ziele sind gültig"
      "admin.theme.activation_dialog.items.javascript" => "JavaScript-Fehlerbudget eingehalten"
      "admin.theme.activation_dialog.items.performance" => "Performance-Budget eingehalten"
      "admin.theme.activation_dialog.items.preview_entry" => "Preview-Einstiegsdatei vorhanden"
      "admin.theme.activation_dialog.items.rendering" => "Theme-Dateien renderbar"
      "admin.theme.activation_dialog.items.required_slots" => "Pflicht-Slots vollständig gemappt"
      "admin.theme.activation_dialog.loading" => "Aktivierungscheck wird geladen..."
      "admin.theme.activation_dialog.no_soft_warnings" => "Keine Soft-Blocker oder Hinweise vorhanden."
      "admin.theme.activation_dialog.preview_entry_missing" => "Keine darstellbare Preview-Einstiegsdatei vorhanden."
      "admin.theme.activation_dialog.ready" => "Alle harten Prüfungen sind grün. Diese Version kann aktiviert werden."
      "admin.theme.activation_dialog.rollback_point" => "Expliziter Rollback-Punkt"
      "admin.theme.activation_dialog.rollback_project" => "Projekt-Theme"
      "admin.theme.activation_dialog.rollback_project_description" => "Vor der Aktivierung ist kein Import-Theme aktiv. Ein Rollback stellt das feste Projekt-Theme wieder her."
      "admin.theme.activation_dialog.rollback_same" => "Diese Version ist bereits aktiv"
      "admin.theme.activation_dialog.rollback_same_description" => "Es wird kein neuer Rollback-Punkt benötigt."
      "admin.theme.activation_dialog.rollback_theme" => "Aktive Import-Version"
      "admin.theme.activation_dialog.soft_blockers_title" => "Soft-Blocker und Hinweise"
      "admin.theme.activation_dialog.soft_warning_label" => "Nicht blockierend, aber vor Live-Schaltung prüfen:"
      "admin.theme.audit.activation_actions.activated" => "Aktiviert"
      "admin.theme.audit.activation_actions.replaced" => "Ersetzt"
      "admin.theme.audit.activation_actions.rollback" => "Rollback"
      "admin.theme.audit.activation_headers.action" => "Ereignis"
      "admin.theme.audit.activation_headers.actor" => "Benutzer"
      "admin.theme.audit.activation_headers.previous" => "Vorherige Version"
      "admin.theme.audit.activation_headers.rollback_of" => "Rollback von"
      "admin.theme.audit.activation_headers.time" => "Zeitpunkt"
      "admin.theme.audit.activation_headers.version" => "Aktivierte Version"
      "admin.theme.audit.activations_empty" => "Für diese Version sind keine Aktivierungsereignisse protokolliert."
      "admin.theme.audit.activations_title" => "Aktivierungshistorie"
      "admin.theme.audit.change_labels.added" => "Neu"
      "admin.theme.audit.change_labels.after" => "Nachher:"
      "admin.theme.audit.change_labels.before" => "Vorher:"
      "admin.theme.audit.change_labels.changed" => "Geändert"
      "admin.theme.audit.change_labels.removed" => "Entfernt"
      "admin.theme.audit.changed_short" => "geändert"
      "admin.theme.audit.context" => "Theme: %theme% | Version: %version%"
      "admin.theme.audit.created_at" => "Erstellt am:"
      "admin.theme.audit.delta_context" => "Vergleich von Version %current% gegen die vorherige Version %baseline%."
      "admin.theme.audit.delta_sections.assets" => "Assets"
      "admin.theme.audit.delta_sections.mappings" => "Mappings"
      "admin.theme.audit.delta_sections.slots" => "Slots"
      "admin.theme.audit.delta_sections.templates" => "Templates"
      "admin.theme.audit.delta_title" => "Delta zwischen Versionen"
      "admin.theme.audit.heading" => "Theme-Audit"
      "admin.theme.audit.import_headers.details" => "Details"
      "admin.theme.audit.import_headers.duration" => "Dauer"
      "admin.theme.audit.import_headers.finished" => "Ende"
      "admin.theme.audit.import_headers.source" => "Quelle"
      "admin.theme.audit.import_headers.started" => "Start"
      "admin.theme.audit.import_headers.status" => "Status"
      "admin.theme.audit.imports_empty" => "Für diese Version sind keine Import-Jobs protokolliert."
      "admin.theme.audit.imports_title" => "Importhistorie"
      "admin.theme.audit.manifest_title" => "Manifest-Zusammenfassung"
      "admin.theme.audit.mapping" => "Mapping"
      "admin.theme.audit.metric_baseline" => "Vorher: %value%"
      "admin.theme.audit.metrics.assetBytes" => "Asset-Größe"
      "admin.theme.audit.metrics.assetTotal" => "Assets"
      "admin.theme.audit.metrics.criticalBytes" => "Kritische Asset-Größe"
      "admin.theme.audit.metrics.cssBytes" => "CSS-Größe"
      "admin.theme.audit.metrics.jsBytes" => "JS-Größe"
      "admin.theme.audit.metrics.mappingCount" => "Mappings"
      "admin.theme.audit.metrics.slotCount" => "Slots"
      "admin.theme.audit.metrics.templateCount" => "Templates"
      "admin.theme.audit.metrics.validMappingCount" => "Gültige Mappings"
      "admin.theme.audit.no_baseline" => "Für diese Version existiert noch keine ältere Version desselben Themes. Der Delta-Vergleich wird angezeigt, sobald mindestens zwei Versionen vorhanden sind."
      "admin.theme.audit.no_baseline_short" => "kein Vergleich"
      "admin.theme.audit.no_section_changes" => "Keine Änderungen in diesem Bereich."
      "admin.theme.audit.page_title" => "Theme-Audit"
      "admin.theme.audit.preview" => "Preview"
      "admin.theme.audit.raw_payload" => "Quellparameter"
      "admin.theme.audit.seconds" => "%seconds% s"
      "admin.theme.audit.stats.activations" => "Audit-Ereignisse"
      "admin.theme.audit.stats.baseline" => "Vergleichsversion"
      "admin.theme.audit.stats.imports" => "Import-Jobs"
      "admin.theme.audit.stats.version" => "Version"
      "admin.theme.audit.updated_at" => "Aktualisiert am:"
      "admin.theme.audit.version_stack_title" => "Versionen dieses Themes"
      "admin.theme.audit.version_title" => "Versionskontext"
      "admin.theme.common.audit" => "Audit"
      "admin.theme.common.back_overview" => "Zur Übersicht"
      "admin.theme.common.cancel" => "Abbrechen"
      "admin.theme.common.display_name" => "Theme-Name"
      "admin.theme.common.help" => "Hilfe"
      "admin.theme.common.html_import" => "HTML-ZIP"
      "admin.theme.common.import_inputs" => "Import-Eingaben"
      "admin.theme.common.import_wizard" => "Import Wizard"
      "admin.theme.common.live_import" => "Live-Abbild"
      "admin.theme.common.upload_limit_hint" => "Aktuelles Server-Upload-Limit: %limit%. Bei HTTP 413 muss zusätzlich das Webserver-Limit (z. B. Nginx client_max_body_size) erhöht werden."
      "admin.theme.common.wordpress_import" => "WordPress-ZIP"
      "admin.theme.controller.access.activate" => "Theme-Aktivierung ist nicht erlaubt."
      "admin.theme.controller.access.activation_checklist" => "Theme-Aktivierungscheck ist nicht erlaubt."
      "admin.theme.controller.access.deactivate" => "Theme-Deaktivierung ist nicht erlaubt."
      "admin.theme.controller.access.delete" => "Theme-Löschung ist nicht erlaubt."
      "admin.theme.controller.access.list" => "Theme-Liste ist nicht erlaubt."
      "admin.theme.controller.access.rollback" => "Theme-Rollback ist nicht erlaubt."
      "admin.theme.controller.csrf_invalid" => "Die Aktion wurde aus Sicherheitsgründen abgebrochen (ungültiger Token)."
      "admin.theme.controller.delete_active_warning" => "Aktive Themes können nicht gelöscht werden. Bitte zuerst das Projekt-Theme wiederherstellen."
      "admin.theme.controller.delete_failed" => "Theme konnte nicht gelöscht werden: %error%"
      "admin.theme.controller.delete_success" => "Theme "%theme%" wurde gelöscht. Entfernte Import-Pfade: %paths%."
      "admin.theme.controller.validation.duplicate_targets" => "Doppelte Ziele"
      "admin.theme.controller.validation.hard_errors" => "Hard-Checks"
      "admin.theme.controller.validation.invalid_mappings" => "Ungültige Mappings"
      "admin.theme.controller.validation.missing_critical_assets" => "Fehlende kritische Assets"
      "admin.theme.controller.validation.missing_required_slots" => "Fehlende Slots"
      "admin.theme.controller.validation.render_errors" => "Render-Fehler"
      "admin.theme.help_index.card_description" => "Frontend-Design, Versionierung und Aktivierung"
      "admin.theme.help_index.card_title" => "Theme-Modul"
      "admin.theme.help_index.table_description" => "Frontend-Theme-Registry, HTML-/Live-/WordPress-Import, Slot-Mapping, Preview und Aktivierung mit Audit."
      "admin.theme.help_index.table_label" => "Theme-Modul"
      "admin.theme.help.implemented_title" => "Was ist bereits umgesetzt?"
      "admin.theme.help.implemented.activation" => "Aktivierung mit Sicherheitsprüfung für Pflicht-Slot-Mappings."
      "admin.theme.help.implemented.activation_dialog" => "Aktivierungsdialog mit serverseitig geladener Checkliste, harten Blockern, Soft-Hinweisen, explizitem Rollback-Punkt und deaktiviertem Bestätigungsbutton bei offenen Hard-Checks."
      "admin.theme.help.implemented.asset_pipeline" => "Asset-Manifest mit lokaler Auslieferung aktiver Theme-Dateien über eine geschützte Theme-Asset-Route."
      "admin.theme.help.implemented.audit" => "Eigene Audit-Detailseite je Theme-Version mit Importhistorie, Aktivierungshistorie und Delta-Vergleich zur vorherigen Version."
      "admin.theme.help.implemented.builder_materialization" => "Live-Import materialisiert Hauptinhalte in native CMS-Bausteine: SliderContent, Widgets, Page-Builder-Abschnitte und editierbare Content-Blöcke."
      "admin.theme.help.implemented.deactivation" => "Projekt-Theme wiederherstellen: Aktive Import-Themes können deaktiviert werden, danach greift wieder das feste Twig-Projekt-Theme."
      "admin.theme.help.implemented.delete" => "Inaktive Import-Themes können inklusive lokaler Import-Dateien gelöscht werden."
      "admin.theme.help.implemented.frontend_runtime" => "Frontend-Integration aktiv: Projekt-Header, Projekt-Footer und Projekt-Menüs bleiben live; importierte Inhalte werden über Content-Blöcke/Page-Builder und lokale Assets eingebunden."
      "admin.theme.help.implemented.html" => "HTML-Theme-Import per ZIP mit Job-Protokoll."
      "admin.theme.help.implemented.import_origin_badges" => "Importierte Slider, Widgets und Content-Blöcke werden in ihren Admin-Listen als Theme-Import gekennzeichnet."
      "admin.theme.help.implemented.import_report_links" => "Importberichte verlinken erzeugte Slider, Widgets und Content-Blöcke direkt in gefilterte Listen und, sofern vorhanden, in die Bearbeitung."
      "admin.theme.help.implemented.import_wizard" => "Import Wizard als führender Einstieg: Quelle wählen, Pflichtangaben validieren, Rohimport ausführen, Analyse-/Normalisierungsbericht erzeugen und direkt den Mapping-Assistenten öffnen."
      "admin.theme.help.implemented.live" => "Live-Website-Abbild per URL (HTML plus Asset-Spiegelung mit Sicherheitslimits; Hauptinhalt wird zusätzlich als Content-Blöcke für den Page Builder vorbereitet)."
      "admin.theme.help.implemented.mapping" => "Mapping-Assistent mit visueller Rechtsklick-Auswahl, Element-Umrandung und Slot-Fragment-Speicherung."
      "admin.theme.help.implemented.mapping_apply" => "One-Click-Übernahme von WordPress-Vorschlägen direkt im Mapping-Assistenten."
      "admin.theme.help.implemented.mapping_visual" => "Im visuellen Mapper zeigt der Rechtsklick Elementdaten, Größe, Selector und Textauszug; die Auswahl wird als eigenes Slot-Fragment gespeichert."
      "admin.theme.help.implemented.model" => "Theme-Datenmodell mit Definitionen, Versionen, Assets, Templates, Slots und Slot-Mappings."
      "admin.theme.help.implemented.overview" => "Admin-Übersicht zur Theme- und Versionsverwaltung."
      "admin.theme.help.implemented.preflight_budgets" => "Preflight-Budgets prüfen JavaScript-Syntaxfehler, externe Ressourcen ohne lokale Kopie, Asset-Anzahl, Gesamtgröße, CSS-/JS-Größe und kritische CSS-/JS-Größe; fehlende optionale Slots erscheinen als Soft-Warnings."
      "admin.theme.help.implemented.preview" => "Preview-Ansicht vor Aktivierung mit Preflight-Status für Pflicht-Slots."
      "admin.theme.help.implemented.preview_history" => "Aktivierungs-Historie in der Preview mit Zeitpunkt, Benutzer und vorheriger Version."
      "admin.theme.help.implemented.preview_live" => "Live-Vorschau mit echter Frontend-Ansicht (iframe + neuer Tab), zusätzlich zur technischen Preflight-Analyse."
      "admin.theme.help.implemented.preview_references" => "Preview-Referenzseiten für Start, CMS-Seite, Produktliste, Produktdetail, Warenkorb und Checkout, jeweils mit der ausgewählten Theme-Version und weiter führendem Projekt-Header/-Menü/-Footer."
      "admin.theme.help.implemented.preview_token" => "Token-gesicherte Preview-Route für freigabefähige Sandbox-Links ohne Admin-Session."
      "admin.theme.help.implemented.qa" => "Erweiterte Hard-Checks für Mapping-Ziele, kritische Assets und darstellbare Preview-Einstiegsdatei."
      "admin.theme.help.implemented.rollback" => "Rollback in einem Schritt auf den vorherigen Aktivierungspunkt oder zurück zum festen Projekt-Theme."
      "admin.theme.help.implemented.wordpress" => "WordPress-Import per ZIP mit Theme-Strukturprüfung über style.css."
      "admin.theme.help.implemented.wordpress_normalization" => "Vertiefte WordPress-Normalisierung mit rekursiver Template-Erkennung (Classic + Block-Theme-Dateien) und optionalen Slots (sidebar, archive_content, search_results, notfound_content)."
      "admin.theme.help.next_title" => "Was kommt als Nächstes?"
      "admin.theme.help.next.sources" => "Nächster Schritt: Theme-Rollen vollständig härten, synchronisieren und Buttons sowie Routen konsequent je Rolle begrenzen."
      "admin.theme.help.page_title" => "Theme-Modul Hilfe"
      "admin.theme.help.rules_title" => "Wichtige Regeln"
      "admin.theme.help.rules.activation_dialog" => "Vor jeder Aktivierung muss die Checkliste im Dialog geladen werden. Der Button bleibt gesperrt, solange harte Blocker wie externe Ressourcen, JS-Fehler oder ungültige Pflicht-Mappings offen sind."
      "admin.theme.help.rules.audit" => "Jede Aktivierung wird mit Zeitstempel und vorheriger Version protokolliert."
      "admin.theme.help.rules.delete_inactive" => "Aktive Import-Themes sind vor dem Löschen geschützt und müssen zuerst deaktiviert werden."
      "admin.theme.help.rules.draft_only" => "Importierte Inhalte auf Zielseiten werden als Entwurf angelegt und erst durch Speichern/Veröffentlichen der Seite live."
      "admin.theme.help.rules.frontend_only" => "Dieses Modul ändert nur Frontend-Themes, nicht das Backend-Design."
      "admin.theme.help.rules.preflight_budgets" => "Aktivierungen werden blockiert, wenn JavaScript-Fehlerbudget, externe Ressourcen ohne lokale Kopie oder Performance-Budgets verletzt sind. Optionale Slots blockieren nicht, werden aber sichtbar als Hinweise geführt."
      "admin.theme.help.rules.project_systems" => "Projekt-Navigation, Footer, Widgets, Slider und Page Builder bleiben die führenden Systeme. Fremd-HTML dient als Importquelle, nicht als starre Live-Seite."
      "admin.theme.help.rules.project_theme" => "Ist kein Import-Theme aktiv, wird automatisch das feste Projekt-Theme aus den normalen site/*-Twig-Templates ausgeliefert."
      "admin.theme.help.rules.valid_slots" => "Aktivierung ist nur erlaubt, wenn Pflicht-Slots valide gemappt sind; Projektmenüs gelten als System-Ziele."
      "admin.theme.help.subtitle" => "Phase 1 bis 5: Registry, Versionierung, HTML-/Live-/WordPress-Import, Mapping, Preview und Aktivierungs-Historie"
      "admin.theme.html.archive_help" => "Erlaubt ist ein HTML/CSS/JS-Theme als ZIP. WordPress-Import folgt als eigene Pipeline."
      "admin.theme.html.archive_label" => "ZIP-Archiv"
      "admin.theme.html.heading" => "HTML-Theme importieren"
      "admin.theme.html.name_placeholder" => "z. B. Modern Retail Frontend"
      "admin.theme.html.page_title" => "HTML-Theme importieren"
      "admin.theme.html.submit" => "Import starten"
      "admin.theme.html.subtitle" => "Phase 2: ZIP importieren, Slots vorbereiten, danach Mapping-Assistent."
      "admin.theme.import_report.actions.edit_block" => "Content-Block #%id% bearbeiten"
      "admin.theme.import_report.actions.edit_page" => "Zielseite bearbeiten"
      "admin.theme.import_report.actions.edit_slider" => "Slider #%id% bearbeiten"
      "admin.theme.import_report.actions.edit_widget" => "Widget #%id% bearbeiten"
      "admin.theme.import_report.actions.open_blocks" => "Content-Blöcke öffnen"
      "admin.theme.import_report.actions.open_sliders" => "Slider öffnen"
      "admin.theme.import_report.actions.open_widgets" => "Widgets öffnen"
      "admin.theme.import_report.analysis.areas.blog_lists" => "Blog-/Newslisten"
      "admin.theme.import_report.analysis.areas.footer" => "Footer"
      "admin.theme.import_report.analysis.areas.forms" => "Formulare"
      "admin.theme.import_report.analysis.areas.header" => "Header"
      "admin.theme.import_report.analysis.areas.hero_slider" => "Hero/Slider"
      "admin.theme.import_report.analysis.areas.main_content" => "Hauptinhalt"
      "admin.theme.import_report.analysis.areas.navigation" => "Navigation"
      "admin.theme.import_report.analysis.areas.product_lists" => "Produktlisten"
      "admin.theme.import_report.analysis.areas.sidebar" => "Sidebar"
      "admin.theme.import_report.analysis.areas.widget_zones" => "Widget-Zonen"
      "admin.theme.import_report.analysis.coverage" => "Bereiche %detected%/%total% · Pflicht %required%/%requiredTotal%"
      "admin.theme.import_report.analysis.title" => "Theme-Analyse"
      "admin.theme.import_report.direct_title" => "Direkt bearbeiten"
      "admin.theme.import_report.items.blocks" => "Content-Blöcke"
      "admin.theme.import_report.items.sliders" => "Slider"
      "admin.theme.import_report.items.widgets" => "Widgets"
      "admin.theme.import_report.mapping_title" => "Import-Ergebnis im CMS"
      "admin.theme.import_report.metrics.blocks" => "Content-Blöcke"
      "admin.theme.import_report.metrics.sections" => "Page-Builder-Abschnitte"
      "admin.theme.import_report.metrics.sliders" => "native Slider"
      "admin.theme.import_report.metrics.widgets" => "Widgets"
      "admin.theme.import_report.no_materialization" => "Für diesen Import wurden keine nativen CMS-Bausteine protokolliert."
      "admin.theme.import_report.normalizer.coverage" => "Partials %partials% · Slots %slots% · Pflicht %required% · Assets %assets%"
      "admin.theme.import_report.normalizer.title" => "CMS-Normalisierung"
      "admin.theme.import_report.page_builder_target" => "Page-Builder-Ziel:"
      "admin.theme.import_report.raw_report" => "Rohbericht anzeigen"
      "admin.theme.import_report.section_types" => "Builder-Abschnitte:"
      "admin.theme.import_report.slider_assigned" => "Slider auf Zielseite vorbereitet"
      "admin.theme.import_report.slider_not_assigned" => "Slider angelegt, nicht automatisch zugewiesen"
      "admin.theme.import_report.slider_type" => "Slider-Typ:"
      "admin.theme.import_report.target_page" => "Zielseite:"
      "admin.theme.import_report.title" => "Erzeugte CMS-Bausteine"
      "admin.theme.index.action_titles.mapping" => "Mapping bearbeiten"
      "admin.theme.index.action_titles.preview" => "Preview öffnen"
      "admin.theme.index.activate" => "Aktivieren"
      "admin.theme.index.active_button" => "Aktiv"
      "admin.theme.index.deactivate" => "Deaktivieren"
      "admin.theme.index.deactivate_modal.body" => "Möchtest du das aktive Import-Theme deaktivieren und wieder das feste Projekt-Theme live schalten?"
      "admin.theme.index.deactivate_modal.confirm" => "Projekt-Theme aktivieren"
      "admin.theme.index.deactivate_modal.confirm_message" => "Import-Theme '%theme%' Version %version% deaktivieren und das feste Projekt-Theme wieder live schalten?"
      "admin.theme.index.deactivate_modal.title" => "Projekt-Theme wiederherstellen"
      "admin.theme.index.delete" => "Löschen"
      "admin.theme.index.delete_modal.body" => "Möchtest du dieses importierte Theme wirklich löschen?"
      "admin.theme.index.delete_modal.confirm" => "Theme löschen"
      "admin.theme.index.delete_modal.confirm_message" => "Theme '%theme%' wirklich löschen?"
      "admin.theme.index.delete_modal.title" => "Theme löschen"
      "admin.theme.index.delete_modal.warning" => "Aktive Themes können nicht gelöscht werden. Beim Löschen werden Datenbankeinträge und lokale Import-Dateien entfernt."
      "admin.theme.index.empty_version" => "kein Stand"
      "admin.theme.index.headers.action" => "Aktion"
      "admin.theme.index.headers.activated_at" => "Aktiviert am"
      "admin.theme.index.headers.active" => "Aktiv"
      "admin.theme.index.headers.slug" => "Slug"
      "admin.theme.index.headers.source" => "Quelle"
      "admin.theme.index.headers.status" => "Status"
      "admin.theme.index.headers.theme" => "Theme"
      "admin.theme.index.headers.version" => "Version"
      "admin.theme.index.heading" => "Theme-Modul"
      "admin.theme.index.html_button" => "HTML-ZIP importieren"
      "admin.theme.index.live_button" => "Live-Website importieren"
      "admin.theme.index.modal.body" => "Möchtest du dieses Theme wirklich aktivieren?"
      "admin.theme.index.modal.close" => "Schließen"
      "admin.theme.index.modal.confirm" => "Aktivieren"
      "admin.theme.index.modal.confirm_message" => "Theme '%theme%' Version %version% wirklich aktivieren?"
      "admin.theme.index.modal.title" => "Theme aktivieren"
      "admin.theme.index.no" => "Nein"
      "admin.theme.index.no_data" => "Noch keine Themes vorhanden. Import kann jetzt über den Button oben gestartet werden."
      "admin.theme.index.no_rights" => "Keine Rechte"
      "admin.theme.index.page_title" => "Theme-Modul"
      "admin.theme.index.project_theme_live" => "Projekt-Theme ist live"
      "admin.theme.index.restore_project_theme" => "Projekt-Theme wiederherstellen"
      "admin.theme.index.rollback" => "Rollback"
      "admin.theme.index.rollback_modal.body" => "Möchtest du auf den letzten Aktivierungspunkt zurückrollen?"
      "admin.theme.index.rollback_modal.confirm" => "Rollback ausführen"
      "admin.theme.index.rollback_modal.confirm_message" => "Rollback für Theme '%theme%' Version %version% ausführen?"
      "admin.theme.index.rollback_modal.note" => "Wenn vorher kein Import-Theme aktiv war, wird automatisch das feste Projekt-Theme wieder live geschaltet."
      "admin.theme.index.rollback_modal.title" => "Theme-Rollback"
      "admin.theme.index.source_labels.html_zip" => "HTML-ZIP"
      "admin.theme.index.source_labels.live_site" => "Live-Abbild"
      "admin.theme.index.source_labels.wordpress_zip" => "WordPress-ZIP"
      "admin.theme.index.status_labels.active" => "aktiv"
      "admin.theme.index.status_labels.archived" => "archiviert"
      "admin.theme.index.status_labels.draft" => "Entwurf"
      "admin.theme.index.status_labels.validated" => "geprüft"
      "admin.theme.index.subtitle" => "Phase 1 bis 5: Registry, HTML-/Live-/WordPress-Import, Mapping, Preview, Aktivierung und Audit."
      "admin.theme.index.table_title" => "Theme-Übersicht"
      "admin.theme.index.wizard_button" => "Import Wizard"
      "admin.theme.index.wordpress_button" => "WordPress-ZIP importieren"
      "admin.theme.index.yes" => "Ja"
      "admin.theme.live.heading" => "Live-Website-Abbild erstellen"
      "admin.theme.live.name_placeholder" => "z. B. Corporate Live Theme"
      "admin.theme.live.page_title" => "Live-Website-Abbild erstellen"
      "admin.theme.live.submit" => "Live-Import starten"
      "admin.theme.live.subtitle" => "Phase 4: HTML, Texte, Styles und Medien der Live-Seite spiegeln und anschließend die Slots zuordnen."
      "admin.theme.live.summary_assets" => "CSS, JavaScript, Bilder und Fonts"
      "admin.theme.live.summary_builder" => "Hauptinhalt wird als Slider, Widgets und Content-Blöcke für den Page Builder vorbereitet"
      "admin.theme.live.summary_html" => "HTML-Struktur und Texte"
      "admin.theme.live.summary_intro" => "Der Import holt das serverseitige HTML-Abbild der Startseite und spiegelt dazu die erkannten Ressourcen."
      "admin.theme.live.summary_limits" => "Maximal 300 Assets mit Größenlimit pro Datei"
      "admin.theme.live.summary_note" => "Kein Browser-Screenshot, sondern ein strukturiertes Seiten-Abbild."
      "admin.theme.live.summary_system_menu" => "Navigation und Footer bleiben Projekt-Menüs aus diesem System"
      "admin.theme.live.summary_theme" => "Die importierte Ausgabe wird als editierbares Theme-Abbild gespeichert"
      "admin.theme.live.summary_title" => "Was wird gespiegelt?"
      "admin.theme.live.target_page_help" => "Optional: Der importierte Hauptinhalt wird als Page-Builder-Entwurf auf dieser Seite angelegt. Live wird erst etwas geändert, wenn die Seite gespeichert/veröffentlicht wird."
      "admin.theme.live.target_page_label" => "Zielseite im Page Builder"
      "admin.theme.live.target_page_placeholder" => "Nur Content-Blöcke anlegen, keine Seite überschreiben"
      "admin.theme.live.url_help" => "Die Startseite wird abgerufen, HTML gespeichert und verlinkte Assets wie CSS, JS, Bilder und Fonts werden gespiegelt."
      "admin.theme.live.url_label" => "Live-URL"
      "admin.theme.live.url_placeholder" => "https://example.com"
      "admin.theme.mapping.apply_slot_recommendation" => "Empfehlung einsetzen"
      "admin.theme.mapping.apply_suggestions" => "Vorschläge übernehmen"
      "admin.theme.mapping.back" => "Zurück"
      "admin.theme.mapping.context" => "Theme: %theme% | Version: %version%"
      "admin.theme.mapping.empty" => "Keine Slots vorhanden."
      "admin.theme.mapping.headers.guidance" => "Orientierung"
      "admin.theme.mapping.headers.mapping_target" => "Zielwert"
      "admin.theme.mapping.headers.mapping_type" => "Zuordnungsart"
      "admin.theme.mapping.headers.required" => "Pflicht"
      "admin.theme.mapping.headers.slot" => "Slot"
      "admin.theme.mapping.headers.status" => "Prüfstatus"
      "admin.theme.mapping.heading" => "Slot-Mapping"
      "admin.theme.mapping.open" => "offen"
      "admin.theme.mapping.optional_badge" => "Optional"
      "admin.theme.mapping.page_title" => "Theme-Mapping"
      "admin.theme.mapping.preview" => "Preview"
      "admin.theme.mapping.quick_targets" => "Quick-Ziele"
      "admin.theme.mapping.quickstart_title" => "Schnellstart"
      "admin.theme.mapping.quickstart.step1" => "Projekt-Menüs für Header und Footer verwenden; importierte Fremd-Navigation nicht live übernehmen."
      "admin.theme.mapping.quickstart.step2" => "Hauptinhalt per visueller Auswahl oder Import-Vorschlag einem bearbeitbaren Content-/Page-Builder-Ziel zuordnen."
      "admin.theme.mapping.quickstart.step3" => "Speichern und auf grüne Validierung achten, bevor die Aktivierung erfolgt."
      "admin.theme.mapping.recommendation.default" => "Empfohlener Startwert"
      "admin.theme.mapping.recommendation.import" => "Ermittelter Vorschlag"
      "admin.theme.mapping.recommendation.project" => "Projekt-System"
      "admin.theme.mapping.recommendation.wordpress" => "Ermittelter Vorschlag"
      "admin.theme.mapping.required_badge" => "Pflicht"
      "admin.theme.mapping.runtime_hint" => "Hinweis: Öffentliche Seiten verwenden weiterhin Projekt-Header, Projekt-Footer und Projekt-Menüs. Importierte Live-Inhalte werden für Vorschau, Mapping und Page-Builder-Übernahme genutzt."
      "admin.theme.mapping.save" => "Mapping speichern"
      "admin.theme.mapping.slot_help.archive_content" => "Listing-/Archivseiten (Kategorie, Tag, Archivübersichten)."
      "admin.theme.mapping.slot_help.default" => "Diesen Slot dem passenden Theme-Bereich zuordnen. Wenn unklar, mit dem empfohlenen Ziel starten."
      "admin.theme.mapping.slot_help.footer" => "Footer-Bereich: Projekt-Footer und Footer-Menü aus dem System verwenden."
      "admin.theme.mapping.slot_help.header" => "Header-Bereich: Projekt-Header mit Logo und Systemnavigation verwenden."
      "admin.theme.mapping.slot_help.main_content" => "Hauptinhalt der Seite (wichtigster Slot für die Frontend-Ansicht)."
      "admin.theme.mapping.slot_help.notfound_content" => "Inhalt für die 404-Seite (nicht gefunden)."
      "admin.theme.mapping.slot_help.search_results" => "Ausgabe der Suchergebnisse."
      "admin.theme.mapping.slot_help.sidebar" => "Seitenspalte für ergänzende Inhalte oder Widgets."
      "admin.theme.mapping.source_preview_help" => "Die automatisch erkannten Bereiche werden hier als Vorschau gezeigt. Mit einem Klick wird der passende Zielwert in den Slot übernommen."
      "admin.theme.mapping.source_preview_title" => "Import-Abbild direkt zuordnen"
      "admin.theme.mapping.source_suggestions_help" => "Diese Zielwerte wurden aus der importierten Theme-Struktur abgeleitet und können direkt übernommen werden."
      "admin.theme.mapping.source_suggestions_title" => "Import-Vorschläge erkannt."
      "admin.theme.mapping.status_duplicates" => "Doppelte Mapping-Ziele:"
      "admin.theme.mapping.status_invalid" => "Ungültige Pflicht-Mappings:"
      "admin.theme.mapping.status_missing" => "Pflicht-Slots fehlen noch:"
      "admin.theme.mapping.status_ok" => "Pflicht-Slots sind gültig. Diese Version kann aktiviert werden."
      "admin.theme.mapping.status_required_empty" => "Pflicht-Slot ohne Ziel."
      "admin.theme.mapping.table_title" => "Mapping-Tabelle"
      "admin.theme.mapping.target_placeholder" => "z. B. site.main_nav oder cms.page.content"
      "admin.theme.mapping.type.cms_block.description" => "Verknüpft den Slot mit bearbeitbaren CMS-Inhalten, Content-Blöcken oder einer Page-Builder-Zielseite."
      "admin.theme.mapping.type.cms_block.label" => "Page-Builder / Content-Block"
      "admin.theme.mapping.type.cms_block.placeholder" => "z. B. cms.page.ueber-uns.builder"
      "admin.theme.mapping.type.custom.description" => "Empfohlen für die aktuelle Frontend-Theme-Integration. Beispiel: wp:header.php oder site.main_content."
      "admin.theme.mapping.type.custom.label" => "Theme-Bereich / Sonderziel"
      "admin.theme.mapping.type.custom.placeholder" => "z. B. wp:header.php oder site.main_content"
      "admin.theme.mapping.type.menu.description" => "Verknüpft den Slot mit der vorhandenen Projekt-Navigation, nicht mit statischer Fremd-Navigation."
      "admin.theme.mapping.type.menu.label" => "Projekt-Menü"
      "admin.theme.mapping.type.menu.placeholder" => "z. B. project.main_menu"
      "admin.theme.mapping.type.static.description" => "Statisches Ziel ohne weitere Auflösung. Nur verwenden, wenn bewusst nötig."
      "admin.theme.mapping.type.static.label" => "Statisch"
      "admin.theme.mapping.type.static.placeholder" => "z. B. static.header"
      "admin.theme.mapping.type.widget.description" => "Verknüpft den Slot mit einem Widget-Bereich."
      "admin.theme.mapping.type.widget.label" => "Widget-Bereich"
      "admin.theme.mapping.type.widget.placeholder" => "z. B. sidebar.primary"
      "admin.theme.mapping.use_this_area" => "Diesen Bereich nutzen"
      "admin.theme.mapping.valid" => "gültig"
      "admin.theme.mapping.visual.active_slot" => "Aktiver Ziel-Slot"
      "admin.theme.mapping.visual.assign" => "Auswahl diesem Slot zuordnen"
      "admin.theme.mapping.visual.empty" => "Noch kein Bereich ausgewählt."
      "admin.theme.mapping.visual.help" => "In der Vorschau ein Element anklicken zum Prüfen oder per Rechtsklick direkt dem aktiven Slot zuordnen. Das Element wird umrandet und als Slot-Fragment gespeichert."
      "admin.theme.mapping.visual.identity" => "ID / Klassen"
      "admin.theme.mapping.visual.selected_slot" => "Ziel-Slot"
      "admin.theme.mapping.visual.selector" => "Selector"
      "admin.theme.mapping.visual.size" => "Größe"
      "admin.theme.mapping.visual.tag" => "Element"
      "admin.theme.mapping.visual.text" => "Textauszug"
      "admin.theme.mapping.visual.title" => "Visuelles Rechtsklick-Mapping"
      "admin.theme.mapping.wordpress_suggestions_help" => "Diese Zielwerte wurden aus den importierten Theme-Dateien abgeleitet und können direkt übernommen werden."
      "admin.theme.mapping.wordpress_suggestions_title" => "WordPress-Vorschläge erkannt."
      "admin.theme.preview.activation_log_empty" => "Für diese Version sind noch keine Aktivierungen protokolliert."
      "admin.theme.preview.activation_log_headers.actor" => "Benutzer"
      "admin.theme.preview.activation_log_headers.previous" => "Vorherige Version"
      "admin.theme.preview.activation_log_headers.time" => "Zeitpunkt"
      "admin.theme.preview.activation_log_title" => "Aktivierungs-Historie"
      "admin.theme.preview.all_green" => "Alle Hard-Checks für diese Version sind grün."
      "admin.theme.preview.asset_critical" => "%count% kritisch"
      "admin.theme.preview.asset_fonts" => "%count% Fonts"
      "admin.theme.preview.asset_images" => "%count% Bilder"
      "admin.theme.preview.asset_total" => "%count% Assets"
      "admin.theme.preview.assets_empty" => "Für diese Version wurden keine lokalen Assets registriert."
      "admin.theme.preview.assets_headers.critical" => "Kritisch"
      "admin.theme.preview.assets_headers.path" => "Pfad"
      "admin.theme.preview.assets_headers.size" => "Größe"
      "admin.theme.preview.assets_headers.type" => "Typ"
      "admin.theme.preview.assets_registered" => "Registrierte Assets:"
      "admin.theme.preview.assets_title" => "Asset-Manifest"
      "admin.theme.preview.budget_assets" => "%count%/%limit% Assets"
      "admin.theme.preview.budget_critical" => "Kritisch %value%/%limit% MiB"
      "admin.theme.preview.budget_css" => "CSS %value%/%limit% MiB"
      "admin.theme.preview.budget_js" => "JS %value%/%limit% MiB"
      "admin.theme.preview.budget_total" => "Gesamt %value%/%limit% MiB"
      "admin.theme.preview.checks_title" => "Aktivierungs-Checks"
      "admin.theme.preview.checksum" => "Checksum:"
      "admin.theme.preview.context" => "Theme: %theme% | Version: %version%"
      "admin.theme.preview.details_title" => "Preflight-Details"
      "admin.theme.preview.device_desktop" => "Desktop"
      "admin.theme.preview.device_mobile" => "Mobil"
      "admin.theme.preview.device_tablet" => "Tablet"
      "admin.theme.preview.device_toolbar" => "Preview-Geräte"
      "admin.theme.preview.duplicate_targets" => "Doppelte Ziele:"
      "admin.theme.preview.external_resource_issues" => "Externe Ressourcen ohne lokale Kopie:"
      "admin.theme.preview.hard_errors" => "Hard-Checks:"
      "admin.theme.preview.heading" => "Theme-Preview"
      "admin.theme.preview.import_jobs_empty" => "Für diese Version ist noch kein Importbericht vorhanden."
      "admin.theme.preview.import_jobs_headers.report" => "Bericht"
      "admin.theme.preview.import_jobs_headers.source" => "Quelle"
      "admin.theme.preview.import_jobs_headers.status" => "Status"
      "admin.theme.preview.import_jobs_headers.time" => "Zeitpunkt"
      "admin.theme.preview.import_jobs_title" => "Import- und Analysebericht"
      "admin.theme.preview.import_status.failed" => "fehlgeschlagen"
      "admin.theme.preview.import_status.partial" => "teilweise"
      "admin.theme.preview.import_status.running" => "läuft"
      "admin.theme.preview.import_status.success" => "erfolgreich"
      "admin.theme.preview.install" => "Install:"
      "admin.theme.preview.invalid_mappings" => "Ungültige Mappings:"
      "admin.theme.preview.javascript_files" => "JS-Dateien"
      "admin.theme.preview.javascript_issues" => "JavaScript-Fehlerbudget:"
      "admin.theme.preview.live_help" => "Diese Vorschau rendert die ausgewählte Theme-Version auf repräsentativen Frontend-Seiten. Projekt-Header, Projekt-Menüs und Projekt-Footer bleiben dabei führend."
      "admin.theme.preview.live_title" => "Live-Vorschau (Frontend-Ansicht)"
      "admin.theme.preview.missing_critical_assets" => "Fehlende kritische Assets:"
      "admin.theme.preview.missing_required_slots" => "Fehlende Pflicht-Slots:"
      "admin.theme.preview.open_frontend_view" => "Frontend-Ansicht"
      "admin.theme.preview.open_new_tab" => "Im neuen Tab öffnen"
      "admin.theme.preview.open_token_preview" => "Token-Preview"
      "admin.theme.preview.open_token_preview_help" => "Öffnet eine signierte Vorschau-URL, die ohne Admin-Session die Sandbox-Preview und lokale Theme-Assets laden kann."
      "admin.theme.preview.optional_slot_warnings" => "Optionale Slot-Hinweise:"
      "admin.theme.preview.page_title" => "Theme-Preview"
      "admin.theme.preview.paths_title" => "Installationspfade"
      "admin.theme.preview.performance_issues" => "Performance-Budget:"
      "admin.theme.preview.preflight_blocked" => "Preflight blockiert: Vor Aktivierung müssen die offenen Punkte behoben werden."
      "admin.theme.preview.preflight_ok" => "Preflight erfolgreich: Diese Version kann aktiviert werden."
      "admin.theme.preview.public_assets" => "Public Assets:"
      "admin.theme.preview.reference_content.cart.cta" => "Zur Kasse"
      "admin.theme.preview.reference_content.cart.item" => "Position %number%"
      "admin.theme.preview.reference_content.cart.subtotal" => "Zwischensumme"
      "admin.theme.preview.reference_content.cart.summary" => "Zusammenfassung"
      "admin.theme.preview.reference_content.cart.title" => "Warenkorb"
      "admin.theme.preview.reference_content.checkout.address" => "Adresse"
      "admin.theme.preview.reference_content.checkout.cta" => "Bestellung prüfen"
      "admin.theme.preview.reference_content.checkout.firstname" => "Vorname"
      "admin.theme.preview.reference_content.checkout.items" => "Artikel"
      "admin.theme.preview.reference_content.checkout.lastname" => "Nachname"
      "admin.theme.preview.reference_content.checkout.shipping" => "Versand"
      "admin.theme.preview.reference_content.checkout.summary" => "Bestellübersicht"
      "admin.theme.preview.reference_content.checkout.title" => "Checkout"
      "admin.theme.preview.reference_content.cms_page.aside_1" => "Navigationsnahe Inhalte"
      "admin.theme.preview.reference_content.cms_page.aside_2" => "Kontakt- und Hinweisflächen"
      "admin.theme.preview.reference_content.cms_page.aside_3" => "Redaktionelle Zusatzboxen"
      "admin.theme.preview.reference_content.cms_page.aside_title" => "Seitenmodule"
      "admin.theme.preview.reference_content.cms_page.body" => "Diese Beispielseite deckt längere Inhalte, Listen und begleitende Sekundärinformationen ab."
      "admin.theme.preview.reference_content.cms_page.kicker" => "CMS-Seite"
      "admin.theme.preview.reference_content.cms_page.lead" => "Text, Sidebar und Content-Flächen prüfen Typografie, Abstände und Lesbarkeit."
      "admin.theme.preview.reference_content.cms_page.title" => "Content-Seite mit redaktionellem Aufbau"
      "admin.theme.preview.reference_content.product_detail.cta" => "In den Warenkorb"
      "admin.theme.preview.reference_content.product_detail.kicker" => "Produktdetail"
      "admin.theme.preview.reference_content.product_detail.text" => "Detailseite mit Galerie, Preis, CTA und beschreibendem Text."
      "admin.theme.preview.reference_content.product_detail.title" => "Professionelles Referenzprodukt"
      "admin.theme.preview.reference_content.product_list.filter_1" => "Software"
      "admin.theme.preview.reference_content.product_list.filter_2" => "Service"
      "admin.theme.preview.reference_content.product_list.filter_3" => "Hardware"
      "admin.theme.preview.reference_content.product_list.filter_title" => "Kategorien"
      "admin.theme.preview.reference_content.product_list.product_text" => "Kurzbeschreibung mit Preis, Karte und Produktbildfläche."
      "admin.theme.preview.reference_content.product_list.product_title" => "Referenzprodukt %number%"
      "admin.theme.preview.reference_content.start.kicker" => "Frontend-Referenz"
      "admin.theme.preview.reference_content.start.text" => "Die Referenz zeigt, wie sich globale Theme-Assets auf die Startseite auswirken."
      "admin.theme.preview.reference_content.start.title" => "Startseite mit aktiver Theme-Version"
      "admin.theme.preview.reference_descriptions.cart" => "Warenkorb-Ansicht"
      "admin.theme.preview.reference_descriptions.checkout" => "Checkout-Ansicht"
      "admin.theme.preview.reference_descriptions.cms_page" => "Content-/Landingpage-Referenz"
      "admin.theme.preview.reference_descriptions.product_detail" => "Shop-Detailansicht"
      "admin.theme.preview.reference_descriptions.product_list" => "Shop-Listenansicht"
      "admin.theme.preview.reference_descriptions.start" => "Startseiten-Referenz"
      "admin.theme.preview.reference_toolbar" => "Preview-Referenzseiten"
      "admin.theme.preview.references.cart" => "Warenkorb"
      "admin.theme.preview.references.checkout" => "Checkout"
      "admin.theme.preview.references.cms_page" => "CMS-Seite"
      "admin.theme.preview.references.product_detail" => "Produktdetail"
      "admin.theme.preview.references.product_list" => "Produktliste"
      "admin.theme.preview.references.source" => "Import-Sandbox"
      "admin.theme.preview.references.start" => "Start"
      "admin.theme.preview.render_errors" => "Render-Fehler:"
      "admin.theme.preview.slug" => "Slug:"
      "admin.theme.preview.soft_warnings" => "Hinweise:"
      "admin.theme.preview.source" => "Quelle:"
      "admin.theme.preview.source_title" => "Theme-Quelle"
      "admin.theme.preview.status" => "Status:"
      "admin.theme.preview.templates_empty" => "Für diese Version wurden noch keine Template-Dateien registriert."
      "admin.theme.preview.templates_headers.key" => "Template-Key"
      "admin.theme.preview.templates_headers.origin" => "Quelle"
      "admin.theme.preview.templates_headers.path" => "Dateipfad"
      "admin.theme.preview.templates_title" => "Erkannte Templates"
      "admin.theme.wizard.display_name_placeholder" => "z. B. Wede Soft Live-Abbild oder Avanta ZIP"
      "admin.theme.wizard.heading" => "Theme Import Wizard"
      "admin.theme.wizard.page_title" => "Theme Import Wizard"
      "admin.theme.wizard.pipeline.analysis" => "Analysebericht"
      "admin.theme.wizard.pipeline.analysis_help" => "Analyzer und Normalizer erzeugen Bericht, Partials, Asset-Manifest, Slots und Mapping-Vorschläge."
      "admin.theme.wizard.pipeline.mapping" => "Mapping-Assistent"
      "admin.theme.wizard.pipeline.mapping_help" => "Nach erfolgreichem Import öffnet der Wizard direkt die Mapping-Seite der neuen Theme-Version."
      "admin.theme.wizard.pipeline.raw_import" => "Rohimport"
      "admin.theme.wizard.pipeline.raw_import_help" => "Connectoren holen HTML, ZIP oder WordPress-Dateien und speichern das unveränderte Quellpaket."
      "admin.theme.wizard.pipeline.validate_source" => "Quelle prüfen"
      "admin.theme.wizard.pipeline.validate_source_help" => "Pflichtfelder, URL-Format, Upload-Limit und Quellstruktur werden vor dem Import geprüft."
      "admin.theme.wizard.sources.html_zip.description" => "Importiert ein HTML/Bootstrap-ZIP, erkennt Einstiegsdateien, Partials und Mapping-Vorschläge."
      "admin.theme.wizard.sources.live_site.description" => "Spiegelt eine echte Website inklusive HTML, Texten, Bildern, Styles, Assets und nativer CMS-Vorbereitung."
      "admin.theme.wizard.sources.wordpress_zip.description" => "Prüft ein WordPress-Theme-ZIP, liest Templates und normalisiert klassische sowie Block-Theme-Strukturen."
      "admin.theme.wizard.steps.pipeline" => "Analyse und Übergabe"
      "admin.theme.wizard.steps.source" => "Quelle wählen"
      "admin.theme.wizard.steps.validate" => "Quelle validieren"
      "admin.theme.wizard.submit" => "Rohimport starten und Mapping öffnen"
      "admin.theme.wizard.subtitle" => "Quelle wählen, Eingaben validieren, Rohimport starten und direkt in Analyse, Normalisierung und Mapping wechseln."
      "admin.theme.wizard.validation.html" => "Das Archiv muss ein ZIP sein. Nach dem Entpacken werden HTML-Einstiege, Assets, Partials und Pflicht-Slots erkannt."
      "admin.theme.wizard.validation.live" => "Die URL wird vor dem Import normalisiert und nur über http/https verarbeitet. Danach folgen Asset-Spiegelung, Analyse, Normalisierung und Mapping."
      "admin.theme.wizard.validation.wordpress" => "Das Archiv muss ein WordPress-Theme-ZIP mit style.css und Theme-Name sein. Danach werden Templates, optionale Slots und Mapping-Ziele vorbereitet."
      "admin.theme.wordpress.archive_help" => "Erwartet wird ein WordPress-Theme-ZIP mit style.css im Wurzelverzeichnis und einem Theme Name Header."
      "admin.theme.wordpress.archive_label" => "WordPress-ZIP"
      "admin.theme.wordpress.heading" => "WordPress-Theme importieren"
      "admin.theme.wordpress.name_placeholder" => "z. B. Magazin Theme"
      "admin.theme.wordpress.page_title" => "WordPress-Theme importieren"
      "admin.theme.wordpress.submit" => "WordPress-Import starten"
      "admin.theme.wordpress.subtitle" => "Phase 5: Theme-ZIP prüfen, WordPress-Struktur übernehmen, danach Mapping-Assistent."
      "admin.translation.actions.back" => "Zurück"
      "admin.translation.actions.cancel" => "Abbrechen"
      "admin.translation.actions.create" => "Übersetzung anlegen"
      "admin.translation.actions.delete" => "Löschen"
      "admin.translation.actions.edit" => "Bearbeiten"
      "admin.translation.actions.help" => "Hilfe"
      "admin.translation.actions.save" => "Speichern"
      "admin.translation.actions.show" => "Anzeigen"
      "admin.translation.form.create_heading" => "Übersetzung anlegen"
      "admin.translation.form.create_page_title" => "Übersetzung anlegen"
      "admin.translation.form.domain" => "Domain"
      "admin.translation.form.domain_help" => "Standardmäßig messages. Nur abweichen, wenn das Modul bewusst eine andere Domain nutzt."
      "admin.translation.form.edit_heading" => "Übersetzung bearbeiten"
      "admin.translation.form.edit_page_title" => "Übersetzung bearbeiten"
      "admin.translation.form.locale" => "Locale"
      "admin.translation.form.locale_help" => "Sprachcode, zum Beispiel de oder en."
      "admin.translation.form.panel_title" => "Formular"
      "admin.translation.form.subtitle" => "Pflege Locale, Domain, Key und Value einheitlich im Katalog."
      "admin.translation.form.translation_key" => "Key"
      "admin.translation.form.translation_key_help" => "Stabiler Schlüssel, zum Beispiel admin.translation.actions.save."
      "admin.translation.form.translation_value" => "Value"
      "admin.translation.form.translation_value_help" => "Sichtbarer Text für die gewählte Sprache."
      "admin.translation.help_index.card_subtitle" => "Locale, Domain, Keys, DB-Katalog"
      "admin.translation.help_index.card_title" => "Übersetzungen"
      "admin.translation.help_index.table_description" => "DB-Übersetzungskatalog verwalten"
      "admin.translation.help_index.table_label" => "Übersetzungen"
      "admin.translation.help.example_label" => "Beispiel:"
      "admin.translation.help.field_column" => "Feld"
      "admin.translation.help.fields_title" => "Felder"
      "admin.translation.help.fields.domain" => "Katalogbereich, standardmäßig <code>messages</code>"
      "admin.translation.help.fields.key" => "Stabiler Schlüssel wie <code>admin.translation.actions.save</code>"
      "admin.translation.help.fields.locale" => "Sprache wie <code>de</code> oder <code>en</code>"
      "admin.translation.help.fields.value" => "Der sichtbare Text für diese Sprache"
      "admin.translation.help.function_column" => "Funktion"
      "admin.translation.help.meaning_column" => "Bedeutung"
      "admin.translation.help.method_column" => "Methode"
      "admin.translation.help.navigation_title" => "Navigation"
      "admin.translation.help.navigation.fields" => "Felder"
      "admin.translation.help.navigation.overview" => "Überblick"
      "admin.translation.help.navigation.routes" => "Routen"
      "admin.translation.help.navigation.rules" => "Regeln"
      "admin.translation.help.navigation.workflow" => "Workflow"
      "admin.translation.help.open_module" => "Zum Modul"
      "admin.translation.help.overview_note" => "Die Oberfläche ist für benutzerseitige Texte gedacht. Technische Kennungen, Action-Namen oder intern ausgewertete Strings gehören nicht in diesen Katalog."
      "admin.translation.help.overview_text" => "Die Übersetzungsverwaltung pflegt den zentralen DB-Katalog für UI-Texte. Ein Eintrag wird immer über <strong>Locale</strong>, <strong>Domain</strong> und <strong>Key</strong> eindeutig bestimmt."
      "admin.translation.help.overview_title" => "Überblick"
      "admin.translation.help.routes_title" => "Routen"
      "admin.translation.help.routes.create" => "Neue Übersetzung anlegen"
      "admin.translation.help.routes.delete" => "Eintrag löschen"
      "admin.translation.help.routes.edit" => "Bestehende Übersetzung bearbeiten"
      "admin.translation.help.routes.list" => "Liste aller Übersetzungen"
      "admin.translation.help.routes.show" => "Detailansicht"
      "admin.translation.help.rules_title" => "Regeln"
      "admin.translation.help.rules.duplicates" => "Neue Einträge mit identischer Kombination werden im Formular blockiert."
      "admin.translation.help.rules.prune_scope" => "Bereinigt werden nur Einträge innerhalb des jeweils synchronisierten Prefixes."
      "admin.translation.help.rules.unique" => "Locale, Domain und Key sind zusammen eindeutig."
      "admin.translation.help.title" => "Hilfe: Übersetzungen"
      "admin.translation.help.workflow_title" => "Workflow"
      "admin.translation.help.workflow.step1" => "Texte modulweise in versionierten YAML-Dateien unter <code>translations/</code> pflegen."
      "admin.translation.help.workflow.step2" => "Per Import-Befehl in die Datenbank synchronisieren."
      "admin.translation.help.workflow.step3" => "Nur den betroffenen Prefix mit <code>--prune-missing</code> bereinigen."
      "admin.translation.index.delete_confirm" => "Übersetzung "%key%" wirklich löschen?"
      "admin.translation.index.delete_modal.title" => "Löschen bestätigen"
      "admin.translation.index.empty" => "Keine Übersetzungen gefunden."
      "admin.translation.index.empty_filtered" => "Keine Übersetzungen für die aktuelle Suche gefunden."
      "admin.translation.index.filters.active" => "Filter aktiv"
      "admin.translation.index.filters.all_domains" => "Alle Domains"
      "admin.translation.index.filters.all_locales" => "Alle Locales"
      "admin.translation.index.filters.domain" => "Domain filtern"
      "admin.translation.index.filters.locale" => "Locale filtern"
      "admin.translation.index.filters.reset" => "Zurücksetzen"
      "admin.translation.index.filters.search" => "Suche"
      "admin.translation.index.filters.submit" => "Anzeigen"
      "admin.translation.index.heading" => "Übersetzungen"
      "admin.translation.index.list_title" => "Übersetzungsliste"
      "admin.translation.index.page_title" => "Übersetzungen"
      "admin.translation.index.pagination.next" => "Weiter"
      "admin.translation.index.pagination.page" => "Seite %page% von %pages%"
      "admin.translation.index.pagination.per_page" => "Einträge pro Seite"
      "admin.translation.index.pagination.previous" => "Zurück"
      "admin.translation.index.pagination.results" => "Zeige %from%-%to% von %total% Einträgen"
      "admin.translation.index.search_placeholder" => "Nach Locale, Domain, Key oder Value suchen"
      "admin.translation.index.subtitle" => "Pflege Locale, Domain, Key und Value zentral im Übersetzungskatalog."
      "admin.translation.notifications.created" => "Übersetzung wurde angelegt."
      "admin.translation.notifications.deleted" => "Übersetzung wurde gelöscht."
      "admin.translation.notifications.duplicate_identity" => "Für diese Kombination aus Locale, Domain und Key existiert bereits ein Eintrag."
      "admin.translation.notifications.updated" => "Übersetzung wurde gespeichert."
      "admin.translation.show.heading" => "Übersetzung anzeigen"
      "admin.translation.show.page_title" => "Übersetzung anzeigen"
      "admin.translation.show.panel_title" => "Details"
      "admin.translation.show.subtitle" => "Detailansicht eines einzelnen Übersetzungseintrags."
      "admin.translation.table.actions" => "Aktionen"
      "admin.translation.table.domain" => "Domain"
      "admin.translation.table.key" => "Key"
      "admin.translation.table.locale" => "Locale"
      "admin.translation.table.value" => "Value"
      "admin.user_management.actions.apply" => "Anwenden"
      "admin.user_management.actions.back" => "Zurück"
      "admin.user_management.actions.help" => "Hilfe"
      "admin.user_management.actions.new_user" => "Neuer Benutzer"
      "admin.user_management.actions.open" => "Öffnen"
      "admin.user_management.email_lookup.backend_user_label" => "Backend-Benutzer"
      "admin.user_management.email_lookup.free" => "E-Mail ist aktuell frei"
      "admin.user_management.email_lookup.hint_label" => "Hinweis"
      "admin.user_management.email_lookup.status_label" => "Status"
      "admin.user_management.email_lookup.taken" => "E-Mail bereits vorhanden"
      "admin.user_management.email_lookup.unavailable" => "E-Mail-Prüfung derzeit nicht verfügbar"
      "admin.user_management.form.change_password_title" => "Passwort ändern"
      "admin.user_management.form.confirm_password" => "Passwort bestätigen"
      "admin.user_management.form.create_title" => "Neuer Benutzer"
      "admin.user_management.form.current_password" => "Aktuelles Passwort"
      "admin.user_management.form.edit_title" => "Benutzer bearbeiten"
      "admin.user_management.form.email_lookup_hint" => "Nach vollständiger Eingabe wird sofort auf vorhandene Backend-Benutzer geprüft."
      "admin.user_management.form.fix_inputs_body" => "Markierte Felder enthalten Fehler."
      "admin.user_management.form.fix_inputs_title" => "Bitte Eingaben korrigieren:"
      "admin.user_management.form.force_password_change" => "Passwort nach der ersten Anmeldung ändern?"
      "admin.user_management.form.legacy_admin" => "Legacy Admin (nur für Altfälle)"
      "admin.user_management.form.new_password" => "Neues Passwort"
      "admin.user_management.form.not_blank" => "Darf nicht leer sein"
      "admin.user_management.form.panel_title" => "Formular"
      "admin.user_management.form.password_mismatch" => "Die neuen Passwörter müssen identisch sein."
      "admin.user_management.form.password_strength" => "Mindestens 8 Zeichen mit Großbuchstabe, Kleinbuchstabe, Zahl und Sonderzeichen verwenden."
      "admin.user_management.form.profile" => "Wählen Sie ein Profil aus *"
      "admin.user_management.form.remove_direct_role" => "Direktrolle entfernen"
      "admin.user_management.form.reset_password_title" => "Passwort zurücksetzen"
      "admin.user_management.form.role" => "Rolle"
      "admin.user_management.form.role_help" => "Feingranulare Berechtigungen kommen aus dem zugewiesenen Profil. Direktrollen nur für Ausnahmen verwenden."
      "admin.user_management.form.role_placeholder" => "Bitte wählen"
      "admin.user_management.form.super_admin_direct" => "Super Admin (direkt)"
      "admin.user_management.help_index.card_subtitle" => "Backend-Logins, Profile, Direktrollen"
      "admin.user_management.help_index.card_title" => "Admin-Benutzer"
      "admin.user_management.help_index.table_description" => "Backend-Benutzer und Rechte verwalten"
      "admin.user_management.help_index.table_label" => "Admin-Benutzer"
      "admin.user_management.help.bulk_title" => "Bulk-Aktionen"
      "admin.user_management.help.bulk.step1" => "Gewünschte Benutzer in der Liste markieren."
      "admin.user_management.help.bulk.step2" => "Gruppenaktion auswählen, zum Beispiel deaktivieren oder löschen."
      "admin.user_management.help.bulk.step3" => "Aktion ausführen und die Rückmeldung prüfen."
      "admin.user_management.help.function_column" => "Funktion"
      "admin.user_management.help.method_column" => "Methode"
      "admin.user_management.help.navigation_title" => "Navigation"
      "admin.user_management.help.navigation.bulk" => "Bulk-Aktionen"
      "admin.user_management.help.navigation.overview" => "Überblick"
      "admin.user_management.help.navigation.passwords" => "Passwörter"
      "admin.user_management.help.navigation.profiles" => "Profile & Rollen"
      "admin.user_management.help.navigation.routes" => "Routen"
      "admin.user_management.help.open_module" => "Zum Modul"
      "admin.user_management.help.overview_text" => "Das Modul verwaltet <strong>Admin-Benutzer</strong> für das Backend. Diese Konten melden sich im Admin an und erhalten ihre Berechtigungen primär über zugewiesene Profile."
      "admin.user_management.help.overview_title" => "Überblick"
      "admin.user_management.help.passwords_title" => "Passwörter"
      "admin.user_management.help.passwords.create" => "Neue Admin-Benutzer setzen ihr Passwort beim Anlegen über das Formular."
      "admin.user_management.help.passwords.initial_change" => "Optional kann eine Passwortänderung nach der ersten Anmeldung erzwungen werden."
      "admin.user_management.help.passwords.reset" => "Bestehende Passwörter können über die Reset-Passwort-Seite neu gesetzt werden."
      "admin.user_management.help.profiles_title" => "Profile & Rollen"
      "admin.user_management.help.profiles.direct_roles" => "Direktrollen sind nur für Ausnahmen gedacht."
      "admin.user_management.help.profiles.legacy_role" => "Die Legacy-Rolle ROLE_ADMIN nur für Altfälle verwenden."
      "admin.user_management.help.profiles.profile_priority" => "Profile steuern die feingranularen Rechte im Backend."
      "admin.user_management.help.routes_title" => "Routen"
      "admin.user_management.help.routes.bulk" => "Gruppenaktion ausführen"
      "admin.user_management.help.routes.create" => "Neuen Benutzer anlegen"
      "admin.user_management.help.routes.edit" => "Bestehenden Benutzer bearbeiten"
      "admin.user_management.help.routes.list" => "Benutzerliste"
      "admin.user_management.help.routes.reset_password" => "Passwort zurücksetzen"
      "admin.user_management.help.separation_note" => "<strong>Strikte Trennung:</strong> Admin-Benutzer und Shop-Benutzer sind getrennte Welten und dürfen nie vermischt werden."
      "admin.user_management.help.title" => "Hilfe: Admin-Benutzer"
      "admin.user_management.list.columns.delete" => "Löschen"
      "admin.user_management.list.columns.edit" => "Bearbeiten"
      "admin.user_management.list.columns.email" => "E-Mail"
      "admin.user_management.list.columns.name" => "Vollständiger Name"
      "admin.user_management.list.columns.status" => "Status"
      "admin.user_management.list.columns.username" => "Benutzername"
      "admin.user_management.list.page_title" => "Benutzer"
      "admin.user_management.list.reset_password" => "Passwort zurücksetzen"
      "admin.user_management.list.subtitle" => "Benutzerkonten, Rollen und Aktivitätsstatus verwalten."
      "admin.user_management.notifications.created" => "Benutzer wurde angelegt."
      "admin.user_management.notifications.current_password_invalid" => "Das aktuelle Passwort ist nicht korrekt."
      "admin.user_management.notifications.fix_errors" => "Bitte markierte Felder prüfen und Eingaben korrigieren."
      "admin.user_management.notifications.password_changed" => "Passwort wurde geändert."
      "admin.user_management.notifications.password_reset_success" => "Passwort wurde geändert."
      "admin.user_management.notifications.updated" => "Benutzer wurde gespeichert."
      "admin.widget.form.actions.back" => "Zurück"
      "admin.widget.form.actions.cancel" => "Abbrechen"
      "admin.widget.form.actions.help" => "CMS-Hilfe"
      "admin.widget.form.actions.save" => "Speichern"
      "admin.widget.form.fields.name" => "Name"
      "admin.widget.form.fields.placeholder" => "Platzhalter"
      "admin.widget.form.fields.template_content" => "Twig-Template-Inhalt"
      "admin.widget.form.help.placeholder" => "Diesen Schlüssel verwendest du im Layout zur Ausgabe des Widgets."
      "admin.widget.form.help.template_content" => "Twig-Markup für die Ausgabe des Widget-Inhalts."
      "admin.widget.form.meta_title_edit" => "Widget bearbeiten"
      "admin.widget.form.meta_title_new" => "Widget anlegen"
      "admin.widget.form.page_subtitle_edit" => "Bearbeite Inhalte und Platzhalter des bestehenden Widgets."
      "admin.widget.form.page_subtitle_new" => "Erstelle neue Inhalte für Widget-Platzhalter im Frontend."
      "admin.widget.form.page_title_edit" => "Widget bearbeiten"
      "admin.widget.form.page_title_new" => "Widget anlegen"
      "admin.widget.form.panel_title" => "Formular"
      "admin.widget.index.actions.delete" => "Löschen"
      "admin.widget.index.actions.edit" => "Bearbeiten"
      "admin.widget.index.actions.help" => "CMS-Hilfe"
      "admin.widget.index.actions.new" => "Neues Widget"
      "admin.widget.index.delete_confirm" => "Widget "%name%" wirklich löschen?"
      "admin.widget.index.headers.actions" => "Aktionen"
      "admin.widget.index.headers.name" => "Name"
      "admin.widget.index.headers.placeholder" => "Platzhalter"
      "admin.widget.index.list_count" => "%count% Einträge"
      "admin.widget.index.list_title" => "Widget-Liste"
      "admin.widget.index.meta_title" => "Widgets"
      "admin.widget.index.page_subtitle" => "Verwalte dynamische Platzhalter-Inhalte für das Frontend."
      "admin.widget.index.page_title" => "Widgets"
      "admin.widget.index.values.empty" => "Keine Widgets vorhanden."
      "admin.widget.notifications.created" => "Widget wurde angelegt."
      "admin.widget.notifications.deleted" => "Widget wurde gelöscht."
      "admin.widget.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.widget.notifications.not_found" => "Widget wurde nicht gefunden."
      "admin.widget.notifications.updated" => "Widget wurde gespeichert."
      "backend.alertMessage.activ" => "aktiviert"
      "backend.alertMessage.create" => "erstellt"
      "backend.alertMessage.deactiv" => "deaktiviert"
      "backend.alertMessage.delete" => "gelöscht"
      "backend.alertMessage.error" => "Fehler"
      "backend.alertMessage.reset" => "zurückgesetzt"
      "backend.alertMessage.send" => "gesendet"
      "backend.alertMessage.success" => "Erfolgreich"
      "backend.alertMessage.update" => "aktualisiert"
      "backend.btnFields.add" => "hinzufügen"
      "backend.btnFields.back" => "zurück"
      "backend.btnFields.cancel" => "abbrechen"
      "backend.btnFields.close" => "schließen"
      "backend.btnFields.delete" => "löschen"
      "backend.btnFields.edit" => "bearbeiten"
      "backend.btnFields.reset" => "zurücksetzen"
      "backend.btnFields.save" => "speichern"
      "backend.btnFields.search" => "suchen"
      "backend.btnFields.send" => "senden"
      "backend.builder.ResetPasswordRequestFormType.message" => "Bitte E-Mail eintragen"
      "backend.errorMessages.changePasswordAfterFirstLogin" => "Passwort nach dem ersten Login ändern"
      "backend.errorMessages.notEmpty" => "Darf nicht leer sein"
      "backend.errorMessages.notFound" => "nicht gefunden"
      "backend.errorMessages.notFoundMessage" => "Die angeforderte Seite wurde nicht gefunden."
      "backend.errorMessages.passwordNotMatch" => "Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchConfirm" => "Die Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchConfirmMessage" => "Die Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchCurrent" => "Das aktuelle Passwort stimmt nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentConfirm" => "Das aktuelle Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentConfirmMessage" => "Das aktuelle Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentMessage" => "Das aktuelle Passwort stimmt nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentNew" => "Das aktuelle Passwort und das neue Passwort dürfen nicht identisch sein"
      "backend.errorMessages.passwordNotMatchCurrentNewMessage" => "Das aktuelle Passwort und das neue Passwort dürfen nicht identisch sein"
      "backend.errorMessages.passwordNotMatchMessage" => "Die Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNew" => "Die neuen Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNewConfirm" => "Das neue Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNewConfirmMessage" => "Das neue Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNewMessage" => "Die neuen Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordVerify" => "Passwort bestätigen"
      "backend.global.an_unexpected_error" => "Ein unerwarteter Fehler ist aufgetreten"
      "backend.global.change_my_password" => "ändere dein Passwort"
      "backend.global.choice_action" => "Auswahl"
      "backend.global.error" => "Fehler"
      "backend.global.leave_impersonate" => "Identitätswechsel verlassen"
      "backend.global.logout" => "Abmelden"
      "backend.global.must_not_be_empty" => "Darf nicht leer sein"
      "backend.global.no_item_selected" => "kein Produkt ausgewählt"
      "backend.global.please_confirm" => "Bitte bestätigen Sie Ihre Aktion?"
      "backend.global.save" => "Speichern"
      "backend.global.success" => "Erfolgreich"
      "backend.global.welcome" => "willkommen"
      "backend.global.you_are_logged" => "Sie sind angemeldet als"
      "backend.inputFieldLabel.address" => "Adresse"
      "backend.inputFieldLabel.aufsichtsbehoerde" => "Aufsichtsbehörde"
      "backend.inputFieldLabel.berufsbezeichnung" => "Berufsbezeichnung"
      "backend.inputFieldLabel.berufsrechtlicheRegelungen" => "Berufsrechtlichen Regelungen"
      "backend.inputFieldLabel.content" => "Inhalt"
      "backend.inputFieldLabel.description" => "Beschreibung"
      "backend.inputFieldLabel.domain" => "Domain"
      "backend.inputFieldLabel.email" => "E-Mail"
      "backend.inputFieldLabel.faxnumber" => "Fax"
      "backend.inputFieldLabel.image" => "Bild"
      "backend.inputFieldLabel.inhaber" => "Inhaber"
      "backend.inputFieldLabel.kammer" => "Kammer"
      "backend.inputFieldLabel.keyword" => "Schlüsselwörter"
      "backend.inputFieldLabel.message" => "Nachricht"
      "backend.inputFieldLabel.metaDescription" => "Meta Beschreibung"
      "backend.inputFieldLabel.metaKeyword" => "Meta Schlüsselwörter"
      "backend.inputFieldLabel.name" => "Name"
      "backend.inputFieldLabel.object" => "Betreff"
      "backend.inputFieldLabel.phonenumber" => "Telefon"
      "backend.inputFieldLabel.rechtsform" => "Rechtsform"
      "backend.inputFieldLabel.surname" => "Nachname"
      "backend.inputFieldLabel.title" => "Titel"
      "backend.inputFieldLabel.ustIdNr" => "USt-IdNr"
      "backend.menu.blog" => "Blog"
      "backend.menu.breakfast" => "Frühstück"
      "backend.menu.categories" => "Kategorien"
      "backend.menu.contact" => "Kontakt"
      "backend.menu.faq" => "FAQ"
      "backend.menu.general" => "Allgemein"
      "backend.menu.history" => "Historie"
      "backend.menu.home" => "Dashbord"
      "backend.menu.hotelRoomPrice" => "Zimmer Preise"
      "backend.menu.inbox" => "Posteingang"
      "backend.menu.manage" => "Verwalten"
      "backend.menu.page" => "Seiten"
      "backend.menu.profil" => "Benutzer profile"
      "backend.menu.roomPriceContent" => "Zimmer Content"
      "backend.menu.service" => "Service"
      "backend.menu.settings" => "Einstellung"
      "backend.menu.story" => "Geschichte"
      "backend.menu.user" => "Benutzer"
      "backend.role.choice_role" => "änderung der Benutzer Rechte"
      "backend.title.blog" => "Blog"
      "backend.title.categories" => "Kategorien"
      "backend.title.contact" => "Kontakt"
      "backend.title.dashboard" => "Dashboard"
      "backend.title.faq" => "FAQ"
      "backend.title.general" => "Allgemein"
      "backend.title.history" => "Historie"
      "backend.title.inbox" => "Posteingang"
      "backend.title.manage" => "Verwalten"
      "backend.title.process" => "Bearbeiten"
      "backend.title.profil" => "Benutzer profile"
      "backend.title.resetPassword" => "Passwort zurücksetzen"
      "backend.title.roomPriceContent" => "Zimmer content"
      "backend.title.settings" => "Einstellungen"
      "backend.title.user" => "Benutzer"
      "backend.user.Activate" => "Aktivieren"
      "backend.user.add_user" => "Benutzer anlegen"
      "backend.user.cancel" => "Abbrechen"
      "backend.user.changed_password" => "Passwort geändert"
      "backend.user.changer_my_password" => "ändere mein Passwort"
      "backend.user.changer_password" => "Passwort ändern"
      "backend.user.confirm_password" => "Passwort wiederholen"
      "backend.user.current_password" => "aktuelles Passwort"
      "backend.user.deactivate" => "Deaktivieren"
      "backend.user.delete" => "Löschen"
      "backend.user.edit_user" => "Benutzer bearbeiten"
      "backend.user.email" => "E-Mail"
      "backend.user.group_actions" => "Auswahl"
      "backend.user.listing" => "Auflistung"
      "backend.user.modifier" => "Bearbeiten"
      "backend.user.modify_user" => "Benutzer bearbeiten"
      "backend.user.name" => "Alias"
      "backend.user.new_passwod_must_be" => "Die neuen Passwörter müssen identisch sein."
      "backend.user.new_password" => "neues Passwort"
      "backend.user.new_user" => "neuen Benutzer anlegen"
      "backend.user.password" => "Passwort"
      "backend.user.register" => "Registrieren"
      "backend.user.remember_password" => "wiederholen Sie Ihr aktuelles Passwort"
      "backend.user.status" => "Status"
      "backend.user.user_listing" => "Auflistung Benutzer"
      "backend.user.username" => "Benutzername"
      "frontend.arrive.train" => "Anfahrt"
      "frontend.arrive.travellers" => "für Bahnreisende"
      "frontend.b2b.quote.actions.activate" => "Aktivieren"
      "frontend.b2b.quote.actions.active" => "Aktiv"
      "frontend.b2b.quote.actions.status_details" => "Statusdetails"
      "frontend.b2b.quote.actions.submit" => "B2B-Antrag senden"
      "frontend.b2b.quote.actions.update_submit" => "Antrag aktualisieren und senden"
      "frontend.b2b.quote.actions.view_status" => "Bearbeitungsstatus ansehen"
      "frontend.b2b.quote.benefits.net_prices.text" => "Einkauf ohne MwSt. bei vorhandener USt-ID"
      "frontend.b2b.quote.benefits.net_prices.title" => "Netto-Preise"
      "frontend.b2b.quote.benefits.personal_support.text" => "Dedizierter Ansprechpartner"
      "frontend.b2b.quote.benefits.personal_support.title" => "Persönliche Betreuung"
      "frontend.b2b.quote.benefits.priority_shipping.text" => "Bevorzugte Bearbeitung Ihrer Aufträge"
      "frontend.b2b.quote.benefits.priority_shipping.title" => "Prioritäts-Versand"
      "frontend.b2b.quote.benefits.quantity_discounts.text" => "Sonderkonditionen ab Staffelmengen"
      "frontend.b2b.quote.benefits.quantity_discounts.title" => "Mengenrabatte"
      "frontend.b2b.quote.edit_mode_notice" => "Sie bearbeiten Ihren bestehenden B2B-Antrag. Mit dem Absenden wird Ihr Antrag aktualisiert und erneut eingereicht."
      "frontend.b2b.quote.errors.address_review" => "Bitte geben Sie eine eindeutige, realistische Firmenadresse an."
      "frontend.b2b.quote.errors.invalid_email" => "Bitte eine gültige E-Mail-Adresse angeben."
      "frontend.b2b.quote.errors.rate_limit" => "Zu viele B2B-Anfragen in kurzer Zeit."
      "frontend.b2b.quote.errors.required" => "Bitte alle Pflichtfelder ausfüllen."
      "frontend.b2b.quote.flashes.cancel_invalid_csrf" => "Ungültige Anfrage. Bitte erneut versuchen."
      "frontend.b2b.quote.flashes.cancelled" => "Ihr B2B-Antrag wurde zurückgezogen. Sie können ihn bei Bedarf später erneut bearbeiten und absenden."
      "frontend.b2b.quote.flashes.existing_request" => "Es existiert bereits eine laufende B2B-Anfrage."
      "frontend.b2b.quote.flashes.group_activated" => "B2B-Kondition wurde aktiviert."
      "frontend.b2b.quote.flashes.group_not_allowed" => "Nur die für Ihr Konto freigegebene B2B-Gruppe kann aktiviert werden."
      "frontend.b2b.quote.flashes.group_not_approved" => "B2B-Konditionen können erst nach genehmigter Anfrage aktiviert werden."
      "frontend.b2b.quote.flashes.no_active_request" => "Es gibt keinen laufenden Antrag, der zurückgezogen werden kann."
      "frontend.b2b.quote.flashes.submitted" => "Anfrage erfolgreich gesendet. Sie können den Bearbeitungsstatus jetzt einsehen."
      "frontend.b2b.quote.flashes.updated" => "Antrag aktualisiert und erneut eingereicht. Sie können den Bearbeitungsstatus jetzt einsehen."
      "frontend.b2b.quote.flashes.view_mode_locked" => "Netto/Brutto-Umschaltung für B2B ist erst nach Freigabe verfügbar."
      "frontend.b2b.quote.form.address" => "Straße und Hausnummer"
      "frontend.b2b.quote.form.address_placeholder" => "Musterstraße 12"
      "frontend.b2b.quote.form.annual_volume.label" => "Erwartetes Jahresvolumen"
      "frontend.b2b.quote.form.annual_volume.options.2000050000" => "20.000 - 50.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.50000100000" => "50.000 - 100.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.500020000" => "5.000 - 20.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.over_100000" => "über 100.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.under_5000" => "unter 5.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.city" => "Ort"
      "frontend.b2b.quote.form.city_placeholder" => "Musterstadt"
      "frontend.b2b.quote.form.company_name" => "Firmenname"
      "frontend.b2b.quote.form.company_name_placeholder" => "Musterfirma GmbH"
      "frontend.b2b.quote.form.company_type.label" => "Unternehmensform"
      "frontend.b2b.quote.form.company_type.options.ag" => "AG"
      "frontend.b2b.quote.form.company_type.options.freelancer" => "Freiberufler/in"
      "frontend.b2b.quote.form.company_type.options.gmbh" => "GmbH"
      "frontend.b2b.quote.form.company_type.options.gmbh_co_kg" => "GmbH & Co. KG"
      "frontend.b2b.quote.form.company_type.options.ohg_kg" => "OHG / KG"
      "frontend.b2b.quote.form.company_type.options.other" => "Sonstiges"
      "frontend.b2b.quote.form.company_type.options.sole_proprietorship" => "Einzelunternehmen"
      "frontend.b2b.quote.form.company_type.options.ug" => "UG (haftungsbeschränkt)"
      "frontend.b2b.quote.form.company_type.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.consent_link" => "Datenschutzerklärung"
      "frontend.b2b.quote.form.consent_prefix" => "Ich habe die"
      "frontend.b2b.quote.form.consent_suffix" => "gelesen und stimme der Verarbeitung meiner Daten zu."
      "frontend.b2b.quote.form.contact_name" => "Ansprechpartner"
      "frontend.b2b.quote.form.contact_name_placeholder" => "Max Mustermann"
      "frontend.b2b.quote.form.country" => "Land"
      "frontend.b2b.quote.form.email" => "E-Mail"
      "frontend.b2b.quote.form.email_placeholder" => "einkauf@meinefirma.de"
      "frontend.b2b.quote.form.industry.label" => "Branche"
      "frontend.b2b.quote.form.industry.options.construction_crafts" => "Baugewerbe / Handwerk"
      "frontend.b2b.quote.form.industry.options.education_nonprofit" => "Bildung / Non-Profit"
      "frontend.b2b.quote.form.industry.options.healthcare" => "Gesundheit / Pflege"
      "frontend.b2b.quote.form.industry.options.hospitality" => "Gastronomie / Hotellerie"
      "frontend.b2b.quote.form.industry.options.industry_production" => "Industrie / Produktion"
      "frontend.b2b.quote.form.industry.options.other" => "Sonstiges"
      "frontend.b2b.quote.form.industry.options.public_sector" => "Öffentliche Verwaltung"
      "frontend.b2b.quote.form.industry.options.services" => "Dienstleistung"
      "frontend.b2b.quote.form.industry.options.trade_wholesale" => "Handel / Großhandel"
      "frontend.b2b.quote.form.industry.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.notes" => "Nachricht / Besondere Anforderungen"
      "frontend.b2b.quote.form.notes_placeholder" => "Welche Produkte interessieren Sie? Gibt es besondere Anforderungen?"
      "frontend.b2b.quote.form.order_frequency.label" => "Bestellfrequenz"
      "frontend.b2b.quote.form.order_frequency.options.monthly" => "Monatlich"
      "frontend.b2b.quote.form.order_frequency.options.on_demand" => "Nach Bedarf"
      "frontend.b2b.quote.form.order_frequency.options.one_time" => "Einmalig / Projektbezogen"
      "frontend.b2b.quote.form.order_frequency.options.weekly" => "Wöchentlich"
      "frontend.b2b.quote.form.order_frequency.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.phone" => "Telefon"
      "frontend.b2b.quote.form.phone_placeholder" => "+49 30 12345678"
      "frontend.b2b.quote.form.position" => "Position / Abteilung"
      "frontend.b2b.quote.form.position_placeholder" => "Einkaufsleiter"
      "frontend.b2b.quote.form.requested_group" => "Gewünschte B2B-Kondition"
      "frontend.b2b.quote.form.requested_group_help" => "Die finale Freigabe erfolgt nach Prüfung durch das Team."
      "frontend.b2b.quote.form.requested_group_placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.vat_id" => "USt-IdNr. (für Netto-Preise)"
      "frontend.b2b.quote.form.vat_id_placeholder" => "DE123456789"
      "frontend.b2b.quote.form.website" => "Website"
      "frontend.b2b.quote.form.website_placeholder" => "https://www.meinefirma.de"
      "frontend.b2b.quote.form.zip" => "PLZ"
      "frontend.b2b.quote.form.zip_placeholder" => "12345"
      "frontend.b2b.quote.hero_title" => "B2B-Registrierung"
      "frontend.b2b.quote.message_labels.address" => "Adresse"
      "frontend.b2b.quote.message_labels.annual_volume" => "Jahresvolumen"
      "frontend.b2b.quote.message_labels.company_type" => "Unternehmensform"
      "frontend.b2b.quote.message_labels.country" => "Land"
      "frontend.b2b.quote.message_labels.industry" => "Branche"
      "frontend.b2b.quote.message_labels.notes_heading" => "Nachricht"
      "frontend.b2b.quote.message_labels.order_frequency" => "Bestellfrequenz"
      "frontend.b2b.quote.message_labels.position" => "Position"
      "frontend.b2b.quote.message_labels.vat_id" => "USt-IdNr."
      "frontend.b2b.quote.message_labels.website" => "Website"
      "frontend.b2b.quote.meta_title" => "B2B-Registrierung und Angebotsanfrage"
      "frontend.b2b.quote.page_subtitle" => "Profitieren Sie von exklusiven Unternehmenskonditionen, individuellen Preisen und persönlichem Ansprechpartner."
      "frontend.b2b.quote.page_title" => "B2B-Zugang beantragen"
      "frontend.b2b.quote.price_view.gross" => "Brutto"
      "frontend.b2b.quote.price_view.net" => "Netto"
      "frontend.b2b.quote.response_time" => "Wir melden uns in der Regel innerhalb von 1-2 Werktagen bei Ihnen."
      "frontend.b2b.quote.sections.company" => "Unternehmensdaten"
      "frontend.b2b.quote.sections.contact" => "Kontaktperson"
      "frontend.b2b.quote.sections.requirements" => "Bedarfsangaben"
      "frontend.b2b.quote.sidebar.call_hours" => "Mo-Fr 9-17 Uhr"
      "frontend.b2b.quote.sidebar.call_title" => "Anruf vereinbaren"
      "frontend.b2b.quote.sidebar.conditions_locked" => "B2B-Konditionen sind aus Sicherheitsgründen erst nach genehmigter Anfrage aktivierbar."
      "frontend.b2b.quote.sidebar.conditions_title" => "B2B-Konditionen"
      "frontend.b2b.quote.sidebar.contact_text" => "Sie möchten lieber direkt sprechen?"
      "frontend.b2b.quote.sidebar.contact_title" => "Persönliche Beratung"
      "frontend.b2b.quote.sidebar.current_group" => "Gruppe:"
      "frontend.b2b.quote.sidebar.current_price_view" => "Aktuelle Preisansicht:"
      "frontend.b2b.quote.sidebar.discount_suffix" => "Rabatt"
      "frontend.b2b.quote.sidebar.email_response" => "Antwort innerhalb von 24h"
      "frontend.b2b.quote.sidebar.email_title" => "E-Mail schreiben"
      "frontend.b2b.quote.sidebar.latest_request" => "Letzter Antrag:"
      "frontend.b2b.quote.sidebar.no_groups" => "Noch keine B2B-Gruppen konfiguriert."
      "frontend.b2b.quote.sidebar.no_request" => "Es liegt noch kein B2B-Antrag vor."
      "frontend.b2b.quote.sidebar.received_at" => "Eingang:"
      "frontend.b2b.quote.sidebar.status_title" => "B2B-Status"
      "frontend.b2b.quote.status.approved" => "Genehmigt"
      "frontend.b2b.quote.status.cancelled" => "Zurückgezogen"
      "frontend.b2b.quote.status.in_review" => "In Prüfung"
      "frontend.b2b.quote.status.open" => "Offen"
      "frontend.b2b.quote.status.rejected" => "Abgelehnt"
      "frontend.b2b.status_page.actions.cancel" => "Antrag zurückziehen"
      "frontend.b2b.status_page.actions.cancel_confirm" => "Möchten Sie Ihren laufenden B2B-Antrag wirklich zurückziehen?"
      "frontend.b2b.status_page.actions.edit" => "Antrag bearbeiten"
      "frontend.b2b.status_page.actions.title" => "Aktionen"
      "frontend.b2b.status_page.actions.view_conditions" => "B2B-Konditionen ansehen"
      "frontend.b2b.status_page.current_request_title" => "Ihr aktueller Antrag"
      "frontend.b2b.status_page.fields.approved_group" => "Freigegebene Gruppe:"
      "frontend.b2b.status_page.fields.company" => "Firma:"
      "frontend.b2b.status_page.fields.contact" => "Ansprechpartner:"
      "frontend.b2b.status_page.fields.email" => "E-Mail:"
      "frontend.b2b.status_page.fields.none_selected" => "Keine Auswahl"
      "frontend.b2b.status_page.fields.requested_condition" => "Gewünschte Kondition:"
      "frontend.b2b.status_page.fields.status" => "Status:"
      "frontend.b2b.status_page.fields.submitted_at" => "Gesendet am:"
      "frontend.b2b.status_page.messages.approved" => "Ihr B2B-Antrag ist freigegeben. Sie können jetzt B2B-Konditionen aktivieren."
      "frontend.b2b.status_page.messages.cancelled" => "Ihr Antrag wurde von Ihnen zurückgezogen. Sie können ihn jederzeit über "Bearbeiten" erneut anpassen und absenden."
      "frontend.b2b.status_page.messages.in_review" => "Ihr Antrag ist in Bearbeitung. Wir melden uns in der Regel innerhalb von 1-2 Werktagen."
      "frontend.b2b.status_page.messages.none" => "Es liegt aktuell kein B2B-Antrag vor."
      "frontend.b2b.status_page.messages.rejected" => "Ihr Antrag wurde abgelehnt. Sie können eine neue Anfrage mit ergänzten Informationen senden."
      "frontend.b2b.status_page.meta_title" => "B2B Bearbeitungsstatus"
      "frontend.b2b.status_page.modal.cancel" => "Abbrechen"
      "frontend.b2b.status_page.modal.confirm" => "Zurückziehen"
      "frontend.b2b.status_page.modal.title" => "Aktion bestätigen"
      "frontend.b2b.status_page.next_steps.step_1" => "Antrag prüfen"
      "frontend.b2b.status_page.next_steps.step_2" => "Freigabe oder Rückfrage"
      "frontend.b2b.status_page.next_steps.step_3" => "B2B-Konditionen aktivieren"
      "frontend.b2b.status_page.next_steps.title" => "Nächste Schritte"
      "frontend.b2b.status_page.subtitle" => "Hier sehen Sie transparent, ob Ihr B2B-Zugang offen, in Prüfung, genehmigt oder abgelehnt ist."
      "frontend.b2b.status_page.title" => "B2B-Antrag: Bearbeitungsstatus"
      "frontend.blog.actions.edit" => "Bearbeiten"
      "frontend.blog.actions.edit_post" => "Beitrag bearbeiten"
      "frontend.blog.actions.read_more" => "Weiterlesen"
      "frontend.blog.detail.published_on" => "Veröffentlicht am %date%"
      "frontend.blog.empty.badge" => "Blog in Vorbereitung"
      "frontend.blog.empty.contact_action" => "Kontakt aufnehmen"
      "frontend.blog.empty.shop_action" => "Zum Shop"
      "frontend.blog.empty.text" => "Bis dahin finden Sie im Shop bereits alle aktuellen Produkte und erreichen uns für Rückfragen direkt über das Kontaktformular."
      "frontend.blog.empty.title" => "Neue Einblicke, Tipps und Produkt-News folgen in Kürze."
      "frontend.blog.label" => "Blog"
      "frontend.blog.meta.description" => "Alle Beiträge aus unserem Blog."
      "frontend.blog.meta.title" => "Blog"
      "frontend.breakfast.text_1" => "Jeder, der in unserem schönen NFOK übernachtet, darf sich am nächsten Tag auf ein außergewöhnlich reichhaltiges Frühstücksbuffet mit höchsten Qualitätsstandards freuen. So gestärkt starten Sie garantiert erfolgreich in Ihren Tag."
      "frontend.breakfast.text_10" => "Unser Angebot an warmen Speisen, auf Wunsch des Gastes, wie zum Beispiel: Spiegeleier"
      "frontend.breakfast.text_11" => "Am Buffet stehen Kaffee, Tee und heiße Schokolade sowie verschiedene Mineralwasser, Säfte und Tee bereit. Um Ihren Aufenthalt noch entspannter zu gestalten, bieten wir Ihnen natürlich auch die Möglichkeit, ein reichhaltiges Frühstück direkt in Ihrem Zimmer einzunehmen."
      "frontend.breakfast.text_12" => "Das reichhaltige Frühstücksbuffet steht Ihnen täglich in der Zeit von Mo.-Fr.: 07:00 bis 10:00 Uhr und Sa.-So.: 08:00 bis 10:00 Uhr."
      "frontend.breakfast.text_13" => "Für weitere Informationen, stehen Ihnen unsere freundlichen Mitarbeitenden an der Hotel- Rezeption zur Verfügung."
      "frontend.breakfast.text_2" => "Wir achten beim Einkauf besonders auf den saisonalen und regionalen Bezug der Produkte für das Frühstücksbuffet."
      "frontend.breakfast.text_3" => "Genießen Sie unser reichhaltiges Frühstücksbuffet im NFOK 35:"
      "frontend.breakfast.text_4" => "reichhaltiges Brot und Brötchenauswahl"
      "frontend.breakfast.text_5" => "Vielfältige Auswahl an Konfitüren, süße und würzige Aufstriche sowie Nutella und Honig"
      "frontend.breakfast.text_6" => "Großartige Wurst- und Käseauswahl"
      "frontend.breakfast.text_7" => "Umfassendes Angebot an Zerealien und Müslis mit Milch"
      "frontend.breakfast.text_8" => "Milchprodukte wie Joghurt- und Quark"
      "frontend.breakfast.text_9" => "Frisches Obst- und Gemüsesalate"
      "frontend.cart.actions.add_to_cart" => "In den Warenkorb"
      "frontend.cart.actions.checkout" => "Zur Kasse"
      "frontend.cart.actions.continue_shopping" => "Weiter einkaufen"
      "frontend.cart.coupon.apply" => "Anwenden"
      "frontend.cart.coupon.error" => "Coupon konnte nicht angewendet werden."
      "frontend.cart.coupon.label" => "Gutscheincode"
      "frontend.cart.coupon.placeholder" => "Code eingeben"
      "frontend.cart.coupon.success" => "Coupon erfolgreich angewendet."
      "frontend.cart.cross_sell.benefit_text" => "%label%-Vorteil:"
      "frontend.cart.cross_sell.default_label" => "Cross-Sell"
      "frontend.cart.empty.cta" => "Zum Shop"
      "frontend.cart.empty.text" => "Stöbern Sie in unserem Sortiment und fügen Sie Produkte hinzu."
      "frontend.cart.empty.title" => "Ihr Warenkorb ist leer"
      "frontend.cart.errors.cart_missing" => "Kein Warenkorb vorhanden."
      "frontend.cart.errors.item_not_found" => "Warenkorb-Position nicht gefunden."
      "frontend.cart.page_title" => "Warenkorb"
      "frontend.cart.recommendations.subtitle" => "Aktive Cross-Sell-, Up-Sell- und Bundle-Regeln aus dem Backend werden hier im Frontend ausgespielt."
      "frontend.cart.recommendations.title" => "Dazu passend"
      "frontend.cart.security_note" => "Sicher & verschlüsselt"
      "frontend.cart.summary.cross_sell_benefit" => "Cross-Sell-Vorteil"
      "frontend.cart.summary.cross_sell_hint" => "Der Cross-Sell-Vorteil ist schon in der Zwischensumme berücksichtigt und wird nicht erneut abgezogen."
      "frontend.cart.summary.discount" => "Rabatt"
      "frontend.cart.summary.discount_with_code" => "Rabatt (%code%)"
      "frontend.cart.summary.grand_total" => "Gesamt"
      "frontend.cart.summary.included_vat" => "enthaltene MwSt. (19%)"
      "frontend.cart.summary.subtotal" => "Zwischensumme"
      "frontend.cart.summary.subtotal_hint" => "Cross-Sell-Vorteile sind in dieser Zwischensumme bereits eingerechnet."
      "frontend.cart.summary.title" => "Zusammenfassung"
      "frontend.cart.summary.total_with_shipping" => "Versandkosten"
      "frontend.cart.table.no_image" => "Kein Bild"
      "frontend.cart.table.price" => "Preis"
      "frontend.cart.table.product" => "Produkt"
      "frontend.cart.table.quantity" => "Menge"
      "frontend.cart.table.remove" => "Entfernen"
      "frontend.cart.table.total" => "Summe"
      "frontend.checkout.address.city_invalid" => "Bitte geben Sie einen realistischen Ort an."
      "frontend.checkout.address.city_required" => "Bitte geben Sie einen Ort an."
      "frontend.checkout.address.country_required" => "Bitte wählen Sie ein Land aus."
      "frontend.checkout.address.country_unavailable" => "Dieses Land ist aktuell nicht für den Versand freigeschaltet."
      "frontend.checkout.address.external_invalid_response" => "Die externe Adressprüfung lieferte keine gültige Antwort."
      "frontend.checkout.address.external_unconfirmed" => "Die Adresse konnte extern nicht bestätigt werden."
      "frontend.checkout.address.external_unreachable" => "Die externe Adressprüfung war nicht erreichbar."
      "frontend.checkout.address.phone_incomplete" => "Die Telefonnummer wirkt unvollständig."
      "frontend.checkout.address.placeholder_address" => "Die Lieferadresse wirkt wie eine Platzhalteradresse."
      "frontend.checkout.address.placeholder_city" => "Der Ort wirkt wie ein Platzhalter."
      "frontend.checkout.address.postal_mismatch_de" => "PLZ und Ort passen in Deutschland nicht zusammen."
      "frontend.checkout.address.postal_unknown_de" => "Die PLZ ist in Deutschland nicht bekannt."
      "frontend.checkout.address.street_invalid" => "Bitte geben Sie eine realistische Straße mit Hausnummer oder Packstations-/Postfachadresse an."
      "frontend.checkout.address.street_required" => "Bitte geben Sie eine Straße mit Hausnummer an."
      "frontend.checkout.address.zip_invalid_country" => "Die PLZ passt nicht zum ausgewählten Land."
      "frontend.checkout.address.zip_required" => "Bitte geben Sie eine PLZ an."
      "frontend.checkout.breadcrumb.current" => "Kasse"
      "frontend.checkout.controller.address_review_warning" => "Ihre Bestellung wurde aufgenommen. Vor dem Versand prüfen wir die angegebene Adresse noch manuell."
      "frontend.checkout.controller.card_assigned" => "Die Kartenzahlung ist bereits einer anderen Bestellung zugeordnet."
      "frontend.checkout.controller.card_unconfirmed" => "Die Kartenzahlung wurde nicht erfolgreich bestätigt. Bitte prüfen Sie Ihre Zahlungsdaten."
      "frontend.checkout.controller.csrf_invalid" => "Ungültige Bestellung. Bitte versuchen Sie es erneut."
      "frontend.checkout.controller.mail_warning" => "Ihre Bestellung wurde aufgenommen, aber die Bestellbestätigung konnte derzeit nicht per E-Mail versendet werden."
      "frontend.checkout.controller.payment_invalid" => "Die gewählte Zahlungsart steht aktuell nicht zur Verfügung."
      "frontend.checkout.controller.payment_required" => "Bitte wählen Sie eine Zahlungsart."
      "frontend.checkout.controller.payment_unavailable" => "Aktuell ist keine verfügbare Zahlungsart konfiguriert."
      "frontend.checkout.controller.pickup_required" => "Mindestens ein Produkt in Ihrem Warenkorb ist nur zur Abholung verfügbar. Bitte wählen Sie Abholung im Geschäft."
      "frontend.checkout.controller.pickup_unavailable" => "Abholung ist für die aktuelle Warenkorb-Zusammenstellung nicht verfügbar."
      "frontend.checkout.controller.shipping_invalid" => "Die gewählte Versandart steht für das ausgewählte Lieferland nicht zur Verfügung."
      "frontend.checkout.controller.shipping_required" => "Bitte wählen Sie eine Versandart."
      "frontend.checkout.controller.shipping_unavailable" => "Für das ausgewählte Lieferland ist aktuell keine Versandart verfügbar."
      "frontend.checkout.coupon.applied" => "Coupon erfolgreich angewendet."
      "frontend.checkout.coupon.apply_error" => "Coupon konnte nicht angewendet werden."
      "frontend.checkout.coupon.code_required" => "Bitte geben Sie einen Gutscheincode ein."
      "frontend.checkout.coupon.empty_cart" => "Ihr Warenkorb ist leer."
      "frontend.checkout.coupon.label" => "Rabatt"
      "frontend.checkout.coupon.label_with_code" => "Rabatt (__CODE__)"
      "frontend.checkout.coupon.request_error" => "Fehler beim Anwenden des Coupons."
      "frontend.checkout.errors.summary_title" => "Bitte prüfen Sie Ihre Angaben."
      "frontend.checkout.fulfillment.pickup" => "Abholung im Geschäft"
      "frontend.checkout.fulfillment.shipping" => "Versand"
      "frontend.checkout.hero.kicker" => "Sicherer Checkout"
      "frontend.checkout.hero.subtitle" => "Adresse prüfen, Versand wählen, sicher bezahlen. Keine überflüssigen Felder, keine verwirrenden Zwischenschritte."
      "frontend.checkout.hero.title" => "Bestellung in wenigen klaren Schritten abschließen"
      "frontend.checkout.hero.trust_aria" => "Checkout Vorteile"
      "frontend.checkout.hero.trust.account" => "Kundendaten werden übernommen"
      "frontend.checkout.hero.trust.security" => "SSL-gesichert"
      "frontend.checkout.hero.trust.speed" => "Schneller Abschluss"
      "frontend.checkout.js.cardholder_fallback" => "Kunde"
      "frontend.checkout.js.stripe_confirm_error" => "Die Zahlung konnte nicht bestätigt werden."
      "frontend.checkout.js.stripe_intent_error" => "Stripe Payment Intent konnte nicht erstellt werden."
      "frontend.checkout.js.stripe_pending" => "Die Zahlung ist noch nicht abgeschlossen. Bitte prüfen Sie die Rückmeldung von Stripe."
      "frontend.checkout.js.stripe_server_error" => "Stripe Server nicht erreichbar."
      "frontend.checkout.js.stripe_unavailable" => "Kreditkartenzahlung ist momentan nicht verfügbar."
      "frontend.checkout.logged_in.text" => "Bekannte Kundendaten wurden für den Checkout vorausgefüllt und können hier noch angepasst werden."
      "frontend.checkout.logged_in.title" => "Sie sind angemeldet."
      "frontend.checkout.login.actions.forgot_password" => "Passwort vergessen?"
      "frontend.checkout.login.actions.register" => "Noch kein Konto? Registrieren"
      "frontend.checkout.login.actions.submit" => "Anmelden"
      "frontend.checkout.login.eyebrow" => "Optional"
      "frontend.checkout.login.fields.email" => "E-Mail"
      "frontend.checkout.login.fields.password" => "Passwort"
      "frontend.checkout.login.text" => "Sie können sich direkt hier einloggen und bleiben danach im Checkout. Alternativ bestellen Sie einfach als Gast weiter."
      "frontend.checkout.login.title" => "Mit Kundenkonto schneller abschließen"
      "frontend.checkout.meta.title" => "Kasse - Shop"
      "frontend.checkout.payment.methods.card.badge" => "Empfohlen"
      "frontend.checkout.payment.methods.card.meta" => "Visa, Mastercard und weitere gängige Karten werden unterstützt."
      "frontend.checkout.payment.methods.card.title" => "Kreditkarte"
      "frontend.checkout.pickup_status.collected" => "Abgeholt"
      "frontend.checkout.pickup_status.pending" => "Abholung wird vorbereitet"
      "frontend.checkout.pickup_status.ready" => "Bereit zur Abholung"
      "frontend.checkout.sections.address.billing_address" => "Rechnungsadresse"
      "frontend.checkout.sections.address.billing_toggle" => "Abweichende Rechnungsadresse angeben"
      "frontend.checkout.sections.address.eyebrow" => "Schritt 1"
      "frontend.checkout.sections.address.fields.address" => "Straße und Hausnummer"
      "frontend.checkout.sections.address.fields.city" => "Stadt"
      "frontend.checkout.sections.address.fields.country" => "Land"
      "frontend.checkout.sections.address.fields.email" => "E-Mail"
      "frontend.checkout.sections.address.fields.name" => "Name"
      "frontend.checkout.sections.address.fields.phone" => "Telefon"
      "frontend.checkout.sections.address.fields.zip" => "PLZ"
      "frontend.checkout.sections.address.shipping_address" => "Lieferadresse"
      "frontend.checkout.sections.address.text" => "Diese Daten verwenden wir für Lieferung, Rückfragen und die Rechnungsstellung. Eine abweichende Rechnungsadresse können Sie separat erfassen. Unklare Adressen werden vor dem Versand manuell geprüft."
      "frontend.checkout.sections.address.title" => "Lieferadresse und Rechnungsadresse"
      "frontend.checkout.sections.payment.card_data_text" => "Geben Sie Ihre Kartendaten ein. Adressdaten werden separat aus dem Formular verwendet."
      "frontend.checkout.sections.payment.card_data_title" => "Kartendaten"
      "frontend.checkout.sections.payment.eyebrow" => "Schritt 3"
      "frontend.checkout.sections.payment.provider" => "Stripe"
      "frontend.checkout.sections.payment.text" => "Verfügbare und live verdrahtete Zahlungsarten für den aktuellen Checkout."
      "frontend.checkout.sections.payment.title" => "Zahlungsart"
      "frontend.checkout.sections.payment.unavailable" => "Aktuell ist keine live verfügbare Zahlungsart konfiguriert."
      "frontend.checkout.sections.shipping.eyebrow" => "Schritt 2"
      "frontend.checkout.sections.shipping.pickup_text" => "Keine Versandkosten. Wir informieren Sie, sobald die Bestellung zur Abholung bereitsteht."
      "frontend.checkout.sections.shipping.pickup_unavailable_items" => "Abholung ist für diese Position(en) nicht verfügbar: %items%."
      "frontend.checkout.sections.shipping.shipping_text" => "Lieferung an die angegebene Adresse mit verfügbarer Versandart."
      "frontend.checkout.sections.shipping.text" => "Wählen Sie Versand oder Abholung. Kontakt- und Rechnungsdaten bleiben für Rückfragen und Rechnung erforderlich."
      "frontend.checkout.sections.shipping.title" => "Lieferart wählen"
      "frontend.checkout.sections.shipping.unavailable" => "Für das ausgewählte Lieferland ist aktuell keine Versandart hinterlegt."
      "frontend.checkout.steps.address" => "Adresse"
      "frontend.checkout.steps.payment" => "Zahlung"
      "frontend.checkout.steps.shipping" => "Versand"
      "frontend.checkout.steps.summary" => "Prüfen"
      "frontend.checkout.summary.back_to_cart" => "Zurück zum Warenkorb"
      "frontend.checkout.summary.count" => "%count% Positionen"
      "frontend.checkout.summary.coupon_apply" => "Anwenden"
      "frontend.checkout.summary.coupon_placeholder" => "Gutscheincode"
      "frontend.checkout.summary.cross_sell_discount" => "Cross-Sell-Vorteil"
      "frontend.checkout.summary.cross_sell_info" => "Der Cross-Sell-Vorteil ist schon in der Zwischensumme berücksichtigt und wird nicht erneut abgezogen."
      "frontend.checkout.summary.discount" => "Rabatt"
      "frontend.checkout.summary.empty" => "Ihr Warenkorb ist leer."
      "frontend.checkout.summary.eyebrow" => "Schritt 4"
      "frontend.checkout.summary.item_discount" => "%label%-Vorteil: -%discount%%"
      "frontend.checkout.summary.legal" => "Mit dem Klick auf den Button schließen Sie die Bestellung verbindlich ab."
      "frontend.checkout.summary.pickup_ready" => "Abholung nach Bereitmeldung"
      "frontend.checkout.summary.secure" => "SSL-verschlüsselte Datenübertragung"
      "frontend.checkout.summary.shipping" => "Versand"
      "frontend.checkout.summary.shipping_method" => "Versandart"
      "frontend.checkout.summary.submit" => "Zahlungspflichtig bestellen"
      "frontend.checkout.summary.subtotal" => "Zwischensumme"
      "frontend.checkout.summary.subtotal_info" => "Cross-Sell-Vorteile sind in dieser Zwischensumme bereits eingerechnet."
      "frontend.checkout.summary.title" => "Bestellung prüfen"
      "frontend.checkout.summary.total" => "Gesamt"
      "frontend.checkout.summary.tracking" => "Lieferung mit Sendungsverfolgung"
      "frontend.checkout.summary.vat" => "Enthaltene MwSt. (19%)"
      "frontend.checkout.validation.address_required" => "Bitte geben Sie eine Lieferadresse an."
      "frontend.checkout.validation.billing_address_required" => "Bitte geben Sie eine Rechnungsadresse an."
      "frontend.checkout.validation.billing_city_required" => "Bitte geben Sie einen Ort für die Rechnungsadresse an."
      "frontend.checkout.validation.billing_email_invalid" => "Bitte geben Sie eine gültige E-Mail-Adresse für die Rechnungsadresse an."
      "frontend.checkout.validation.billing_email_required" => "Bitte geben Sie die E-Mail-Adresse der Rechnungsadresse an."
      "frontend.checkout.validation.billing_name_required" => "Bitte geben Sie den Namen der Rechnungsadresse an."
      "frontend.checkout.validation.billing_zip_required" => "Bitte geben Sie eine PLZ für die Rechnungsadresse an."
      "frontend.checkout.validation.city_required" => "Bitte geben Sie einen Ort an."
      "frontend.checkout.validation.email_invalid" => "Bitte geben Sie eine gültige E-Mail-Adresse an."
      "frontend.checkout.validation.email_required" => "Bitte geben Sie Ihre E-Mail-Adresse an."
      "frontend.checkout.validation.name_required" => "Bitte geben Sie Ihren Namen an."
      "frontend.checkout.validation.zip_required" => "Bitte geben Sie eine PLZ an."
      "frontend.contact_me.info" => "Für Fragen zu unseren Dienstleistungen steht Ihnen nachfolgendes Formular zur Verfügung. Wir werden uns umgehend bei Ihnen melden."
      "frontend.footer.copyright" => "NFOK"
      "frontend.footer.hotel" => "NFOK"
      "frontend.footer.info" => "Ihr Partner für Mediendesigns, Netzwerk- Administration, IT- Beratung/Schulung, Datenbank- Management, IT- Infrastruktur und IT- Projektmanagement."
      "frontend.footer.title" => "„WORK“"
      "frontend.furnishing.living_room.tx1" => "1 Zimmer mit einem Bett und Sitzbereich."
      "frontend.furnishing.living_room.tx2" => "Schreibtisch"
      "frontend.gallery.info" => "Ein Einblick ins NFOK"
      "frontend.global.adresses.call_phonenumber" => "000000000"
      "frontend.global.adresses.city" => "Bremerhaven"
      "frontend.global.adresses.country" => "Bremen"
      "frontend.global.adresses.country_code" => "27570"
      "frontend.global.adresses.email" => "nfokwork@gmail.com"
      "frontend.global.adresses.email_txt" => "E-Mail:"
      "frontend.global.adresses.faxnumber" => "000 / 000000"
      "frontend.global.adresses.faxnumber_txt" => "Telefax:"
      "frontend.global.adresses.phonenumber" => "000 / 000000"
      "frontend.global.adresses.phonenumber_txt" => "Telefon:"
      "frontend.global.adresses.street" => "auf Anfrage!"
      "frontend.global.adresses.website" => "www.nfok.xyz"
      "frontend.global.adresses.website_txt" => "Internet:"
      "frontend.global.current_availability" => "Mo. – Fr.: 09:00 bis 18:00 Uhr"
      "frontend.global.current2_availability" => "Sa. – So.: 09:00 bis 18:00 Uhr"
      "frontend.global.input_field_names.email" => "E-Mail"
      "frontend.global.text_availability" => "Sie erreichen uns von:"
      "frontend.help.account.lead" => "Alles rund um Bestellungen, Wunschliste, Profilpflege und Retouren im Kundenkonto."
      "frontend.help.account.sections.orders.body" => """
        <ul class="help-doc-list">\n
          <li>Unter <strong>Mein Konto &rarr; Bestellungen</strong> siehst du alle bisherigen Aufträge.</li>\n
          <li>Status, Betrag, Datum und Detailansicht sind direkt verfügbar.</li>\n
          <li>Je nach Status kannst du Rechnung laden, erneut bestellen oder stornieren.</li>\n
        </ul>
        """
      "frontend.help.account.sections.orders.eyebrow" => "Bestellungen"
      "frontend.help.account.sections.orders.title" => "Historie und Auftragsdetails"
      "frontend.help.account.sections.profile.body" => """
        <ul class="help-doc-list">\n
          <li>Name, E-Mail-Adresse und weitere Kontodaten lassen sich jederzeit anpassen.</li>\n
          <li>Auch Lieferadresse und Passwort können gepflegt werden.</li>\n
          <li>Gültige Eingaben helfen dabei, Checkout und Serviceprozesse reibungslos zu halten.</li>\n
        </ul>
        """
      "frontend.help.account.sections.profile.eyebrow" => "Profilpflege"
      "frontend.help.account.sections.profile.title" => "Daten und Adresse aktualisieren"
      "frontend.help.account.sections.rma.body" => """
        <ul class="help-doc-list">\n
          <li>Retouren erreichst du über <strong>Mein Konto &rarr; Retouren</strong>.</li>\n
          <li>Es können nur geeignete, bereits gelieferte Bestellungen verwendet werden.</li>\n
          <li>Status und Verlauf jeder Rücksendung bleiben im Kundenkonto sichtbar.</li>\n
        </ul>
        """
      "frontend.help.account.sections.rma.eyebrow" => "Service"
      "frontend.help.account.sections.rma.title" => "Retouren aus dem Konto starten"
      "frontend.help.account.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Bestellungen, Profilpflege und Retouren wurden gemäß aktuellem Konto-Menü dokumentiert.</li>\n
          <li>Verlinkungen aus der Hilfe führen auf die heute vorhandenen Konto-Routen.</li>\n
          <li>Hinweise zu Datenpflege und Folgeprozessen wurden für den aktuellen Checkout-Stand angepasst.</li>\n
        </ul>
        """
      "frontend.help.account.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.account.sections.updated.title" => "Kundenkonto und Service-Bereiche"
      "frontend.help.account.sections.wishlist.body" => """
        <ul class="help-doc-list">\n
          <li>Produkte lassen sich auf der Detailseite merken.</li>\n
          <li>Gespeicherte Artikel kannst du später gesammelt vergleichen.</li>\n
          <li>Aus der Wunschliste lassen sich Produkte direkt wieder in den Warenkorb legen.</li>\n
        </ul>
        """
      "frontend.help.account.sections.wishlist.eyebrow" => "Merkliste"
      "frontend.help.account.sections.wishlist.title" => "Wunschliste für spätere Entscheidungen"
      "frontend.help.account.sidebar.links.dashboard" => "Mein Konto"
      "frontend.help.account.sidebar.links.edit" => "Profil bearbeiten"
      "frontend.help.account.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.account.sidebar.links.overview" => "Mehr Hilfe-Themen"
      "frontend.help.account.sidebar.links.title" => "Zu den wichtigsten Konto-Bereichen"
      "frontend.help.account.sidebar.note.body" => """
        <ul>\n
          <li>Bestellungen, Retouren und Support sind an einem Ort gebündelt.</li>\n
          <li>Gespeicherte Daten beschleunigen den Checkout deutlich.</li>\n
          <li>Der Kundenbereich bleibt auf deutsch und englisch konsistent verlinkt.</li>\n
        </ul>
        """
      "frontend.help.account.sidebar.note.eyebrow" => "Anmeldung lohnt sich"
      "frontend.help.account.sidebar.note.title" => "Warum das Kundenkonto zentral ist"
      "frontend.help.b2b.lead" => "Der Geschäftskundenbereich für Angebotsanfragen, gruppenspezifische Konditionen und B2B-Freischaltung."
      "frontend.help.b2b.sections.access.body" => """
        <ul class="help-doc-list">\n
          <li>B2B richtet sich an gewerbliche Kunden mit freigeschaltetem Konto.</li>\n
          <li>Nach Zuordnung zu einer passenden Gruppe können spezielle Preisregeln sichtbar werden.</li>\n
          <li>Je nach Konfiguration sind Netto-Ansicht und Angebotsanfragen möglich.</li>\n
        </ul>
        """
      "frontend.help.b2b.sections.access.eyebrow" => "Freischaltung"
      "frontend.help.b2b.sections.access.title" => "Was der B2B-Bereich bietet"
      "frontend.help.b2b.sections.request.body" => """
        <ol class="help-doc-list">\n
          <li>Lege die gewünschten Produkte in den Warenkorb.</li>\n
          <li>Öffne den B2B-Quote-Bereich.</li>\n
          <li>Prüfe Positionen und ergänze bei Bedarf eine Notiz.</li>\n
          <li>Sende die Anfrage für die interne Prüfung ab.</li>\n
        </ol>
        """
      "frontend.help.b2b.sections.request.eyebrow" => "Angebot"
      "frontend.help.b2b.sections.request.title" => "Angebotsanfrage absenden"
      "frontend.help.b2b.sections.statuses.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Status</th><th>Bedeutung</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-warning">Offen</span></td><td>Anfrage eingegangen und in Prüfung.</td></tr>\n
            <tr><td><span class="badge badge-success">Genehmigt</span></td><td>Das Angebot ist bestätigt und kann weiterverarbeitet werden.</td></tr>\n
            <tr><td><span class="badge badge-danger">Abgelehnt</span></td><td>Die Anfrage wurde nicht freigegeben.</td></tr>\n
            <tr><td><span class="badge badge-secondary">Storniert</span></td><td>Die Anfrage wurde zurückgezogen.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.b2b.sections.statuses.eyebrow" => "Status"
      "frontend.help.b2b.sections.statuses.title" => "Wie Angebotsanfragen bewertet werden"
      "frontend.help.b2b.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Hilfe beschreibt den aktuellen Ablauf für Angebotsanfragen im B2B-Frontend.</li>\n
          <li>Statuswerte und Freischaltungslogik wurden an den laufenden Prozess angepasst.</li>\n
          <li>Hinweise zu Kontakt und weiteren B2B-Schritten sind auf den heutigen Stand gebracht.</li>\n
        </ul>
        """
      "frontend.help.b2b.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.b2b.sections.updated.title" => "B2B-Quote und Freischaltungslogik"
      "frontend.help.b2b.sidebar.links.contact" => "Kontakt aufnehmen"
      "frontend.help.b2b.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.b2b.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.b2b.sidebar.links.quote" => "Angebotsanfrage stellen"
      "frontend.help.b2b.sidebar.links.title" => "Nächste B2B-Schritte"
      "frontend.help.b2b.sidebar.note.body" => """
        <ul>\n
          <li>Nimm für die Freischaltung direkt Kontakt mit unserem Team auf.</li>\n
          <li>Nach erfolgreicher Prüfung werden passende Kundengruppen und Preisregeln aktiviert.</li>\n
        </ul>
        """
      "frontend.help.b2b.sidebar.note.eyebrow" => "Noch nicht freigeschaltet?"
      "frontend.help.b2b.sidebar.note.title" => "So kommst du in den B2B-Bereich"
      "frontend.help.cart.lead" => "Produkte hinzufügen, Mengen anpassen, Gutscheine anwenden und Favoriten später weiterverwenden."
      "frontend.help.cart.sections.add.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne die Produktseite.</li>\n
          <li>Wähle bei Bedarf Varianten oder Pflichtoptionen.</li>\n
          <li>Klicke auf <strong>In den Warenkorb</strong>. Das Kopfmenü aktualisiert sich direkt ohne Neuladen.</li>\n
          <li>Im Header siehst du Menge und Zwischensumme sofort.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--info">Der Warenkorb arbeitet per AJAX. Du bleibst auf der aktuellen Seite und kannst direkt weiterstöbern.</div>
        """
      "frontend.help.cart.sections.add.eyebrow" => "Schritt 1"
      "frontend.help.cart.sections.add.title" => "Produkt in den Warenkorb legen"
      "frontend.help.cart.sections.coupon.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne den Warenkorb.</li>\n
          <li>Trage deinen Code in das Gutschein-Feld ein.</li>\n
          <li>Klicke auf <strong>Einlösen</strong>.</li>\n
          <li>Der Rabatt wird direkt im Gesamtbetrag berücksichtigt.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--warning">Pro Bestellung ist nur ein Gutschein-Code möglich. Bedingungen wie Mindestbestellwert oder Ablaufdatum bleiben aktiv.</div>
        """
      "frontend.help.cart.sections.coupon.eyebrow" => "Schritt 3"
      "frontend.help.cart.sections.coupon.title" => "Gutschein einlösen"
      "frontend.help.cart.sections.manage.body" => """
        <p>Im Warenkorb kannst du Positionen direkt anpassen oder entfernen.</p>\n
        <ul class="help-doc-list">\n
          <li>Mengen ändern und neu berechnen lassen.</li>\n
          <li>Artikel über das Entfernen-Symbol löschen.</li>\n
          <li>Zwischensumme, Versandkosten und Gesamtbetrag sofort kontrollieren.</li>\n
          <li>Mit einem Klick in den Checkout wechseln.</li>\n
        </ul>
        """
      "frontend.help.cart.sections.manage.eyebrow" => "Schritt 2"
      "frontend.help.cart.sections.manage.title" => "Warenkorb verwalten"
      "frontend.help.cart.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Der Warenkorb arbeitet weiterhin ohne Seitenwechsel per AJAX.</li>\n
          <li>Mengen, Entfernen-Aktionen und Summenaktualisierung laufen direkt in der Cart-Ansicht.</li>\n
          <li>Gutscheinlogik und Übergabe in den Checkout sind auf den aktuellen Ablauf abgestimmt.</li>\n
        </ul>
        """
      "frontend.help.cart.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.cart.sections.updated.title" => "Warenkorb-Modul auf dem neuesten Stand"
      "frontend.help.cart.sidebar.links.cart" => "Zum Warenkorb"
      "frontend.help.cart.sidebar.links.checkout" => "Zur Kasse"
      "frontend.help.cart.sidebar.links.coupons" => "Gutschein-Hilfe"
      "frontend.help.cart.sidebar.links.eyebrow" => "Direkt starten"
      "frontend.help.cart.sidebar.links.title" => "Zu den wichtigsten Warenkorb-Aktionen"
      "frontend.help.cart.sidebar.note.body" => """
        <p>Die Wunschliste ist ideal für Produkte, die du später vergleichen oder gesammelt bestellen willst.</p>\n
        <ul>\n
          <li>Produkte auf der Detailseite merken.</li>\n
          <li>Gespeicherte Artikel später direkt in den Warenkorb legen.</li>\n
          <li>Für die Nutzung musst du als Shop-Kunde eingeloggt sein.</li>\n
        </ul>
        """
      "frontend.help.cart.sidebar.note.eyebrow" => "Merken statt kaufen"
      "frontend.help.cart.sidebar.note.title" => "Wunschliste sinnvoll nutzen"
      "frontend.help.checkout.lead" => "Adresse, Lieferart, Zahlung und Abschluss Schritt für Schritt im aktuellen Checkout-Ablauf."
      "frontend.help.checkout.sections.address.body" => """
        <ul class="help-doc-list">\n
          <li>Gib Name, Straße, Postleitzahl, Ort und Land an.</li>\n
          <li>Optional kannst du eine abweichende Rechnungsadresse nutzen.</li>\n
          <li>Wenn du eingeloggt bist, werden gespeicherte Daten vorausgefüllt.</li>\n
          <li>Fehlende oder unplausible Felder werden direkt validiert.</li>\n
        </ul>
        """
      "frontend.help.checkout.sections.address.eyebrow" => "Schritt 1"
      "frontend.help.checkout.sections.address.title" => "Lieferadresse erfassen"
      "frontend.help.checkout.sections.finish.body" => """
        <ol class="help-doc-list">\n
          <li>Kontrolliere Artikel, Lieferart, Versandkosten und Gesamtbetrag.</li>\n
          <li>Akzeptiere die erforderlichen Hinweise und Bedingungen.</li>\n
          <li>Schließe den Kauf über den finalen Checkout-Button ab.</li>\n
          <li>Nach erfolgreicher Zahlung landest du auf der Bestätigungsseite.</li>\n
        </ol>
        """
      "frontend.help.checkout.sections.finish.eyebrow" => "Schritt 4"
      "frontend.help.checkout.sections.finish.title" => "Bestellung prüfen und abschließen"
      "frontend.help.checkout.sections.payment.body" => """
        <p>Im aktuellen Live-Checkout ist die Kartenzahlung über Stripe aktiv.</p>\n
        <ul class="help-doc-list">\n
          <li>Kreditkartendaten werden im sicheren Zahlungsfenster verarbeitet.</li>\n
          <li>Weitere Zahlarten können später live dazukommen.</li>\n
          <li>Der Checkout zeigt nur Methoden an, die aktuell freigeschaltet sind.</li>\n
        </ul>\n
        <div class="help-doc-callout help-doc-callout--info">Sobald weitere Zahlarten produktiv geschaltet werden, erscheint das direkt im Checkout und auf der Zahlungsarten-Hilfe.</div>
        """
      "frontend.help.checkout.sections.payment.eyebrow" => "Schritt 3"
      "frontend.help.checkout.sections.payment.title" => "Zahlungsart bestätigen"
      "frontend.help.checkout.sections.shipping.body" => """
        <p>Wähle im Checkout entweder Versand an die angegebene Adresse oder Abholung im Geschäft. Die Kosten werden sofort neu berechnet.</p>\n
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Methode</th><th>Orientierung</th><th>Hinweis</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td>Standardversand</td><td>Reguläre Zustellung</td><td>Die exakten Kosten folgen der Shop-Konfiguration.</td></tr>\n
            <tr><td>Expressversand</td><td>Schnellere Lieferung</td><td>Nur sichtbar, wenn im Shop freigeschaltet.</td></tr>\n
            <tr><td>Abholung im Geschäft</td><td>Bereitmeldung per E-Mail</td><td>Versandkosten entfallen. Kontakt- und Rechnungsdaten bleiben für Rückfragen und Rechnung Pflicht.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.checkout.sections.shipping.eyebrow" => "Schritt 2"
      "frontend.help.checkout.sections.shipping.title" => "Versand oder Abholung wählen"
      "frontend.help.checkout.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Adress-, Lieferart- und Zahlungsabschnitt folgen dem aktuell aktiven Checkout-Prozess.</li>\n
          <li>Die Kommunikation zum Bestellabschluss wurde auf den Live-Ablauf vereinheitlicht.</li>\n
          <li>Hinweise für Folgeaktionen (Bestellhistorie, Zahlungsstatus) sind auf den neuesten Stand gebracht.</li>\n
        </ul>
        """
      "frontend.help.checkout.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.checkout.sections.updated.title" => "Checkout-Flow und Bestellabschluss"
      "frontend.help.checkout.sidebar.links.checkout" => "Zur Kasse"
      "frontend.help.checkout.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.checkout.sidebar.links.orders" => "Meine Bestellungen"
      "frontend.help.checkout.sidebar.links.payment" => "Zahlungsarten"
      "frontend.help.checkout.sidebar.links.title" => "Zu den nächsten Checkout-Schritten"
      "frontend.help.checkout.sidebar.note.body" => """
        <ul>\n
          <li>Du erhältst eine Bestellbestätigung per E-Mail.</li>\n
          <li>Die Bestellung erscheint in deinem Kundenkonto.</li>\n
          <li>Versand- und Tracking-Infos oder die Bereitmeldung zur Abholung folgen, sobald der Auftrag weiterbearbeitet wird.</li>\n
        </ul>
        """
      "frontend.help.checkout.sidebar.note.eyebrow" => "Nach dem Kauf"
      "frontend.help.checkout.sidebar.note.title" => "Was anschließend passiert"
      "frontend.help.common.back_to_overview" => "Zur Hilfe-Übersicht"
      "frontend.help.common.browse_topics" => "Themen finden"
      "frontend.help.common.contact" => "Kontakt aufnehmen"
      "frontend.help.common.eyebrow" => "Hilfe-Center"
      "frontend.help.common.meta_suffix" => "Hilfe"
      "frontend.help.common.need_more_help" => "Noch Fragen?"
      "frontend.help.common.open_topic" => "Thema öffnen"
      "frontend.help.common.overview_contact" => "Kontakt"
      "frontend.help.common.overview_eyebrow" => "Service & Orientierung"
      "frontend.help.common.overview_lead" => "Schnelle Antworten, klare Schritte und direkte Links für die wichtigsten Abläufe im Shop."
      "frontend.help.common.overview_meta_title" => "Shop Hilfe & Dokumentation"
      "frontend.help.common.overview_note_text" => "Jedes Thema verbindet aktuelle Shop-Funktionen, direkte Einstiege und verständliche Hinweise zum nächsten Schritt."
      "frontend.help.common.overview_note_title" => "Was dich hier erwartet"
      "frontend.help.common.overview_shop" => "Shop öffnen"
      "frontend.help.common.overview_support_text" => "Wenn du den passenden Bereich schon kennst, springe direkt in den Shop oder nutze unser Kontaktformular."
      "frontend.help.common.overview_support_title" => "Direkt weiter"
      "frontend.help.common.overview_title" => "Hilfe-Center für Shop, Konto und Service"
      "frontend.help.common.overview_topics_lead" => "Wähle den Bereich, in dem du gerade Unterstützung brauchst."
      "frontend.help.common.overview_topics_title" => "Alle Hilfe-Themen"
      "frontend.help.common.quick_access" => "Schnellzugriff"
      "frontend.help.common.quick_summary" => "Kurzüberblick"
      "frontend.help.common.stats.direct" => "Direkte Links"
      "frontend.help.common.stats.direct_label" => "Mit einem Klick in relevante Shop-, Konto- und Servicebereiche."
      "frontend.help.common.stats.localized" => "DE + EN"
      "frontend.help.common.stats.localized_label" => "Alle Seiten sind für deutschsprachige und englische Routen vorbereitet."
      "frontend.help.common.stats.topics" => "11 Themen"
      "frontend.help.common.stats.topics_label" => "Von Warenkorb bis Retouren in einem zentralen Hilfe-Center."
      "frontend.help.common.support_text" => "Nutze die Kontaktseite für individuelle Anliegen oder springe direkt zurück in den Shop."
      "frontend.help.common.support_title" => "Wir zeigen dir den nächsten sinnvollen Schritt."
      "frontend.help.common.to_shop" => "Zum Shop"
      "frontend.help.coupons.lead" => "Gutschein-Codes einlösen, Rabattarten vergleichen und typische Probleme schnell prüfen."
      "frontend.help.coupons.sections.redeem.body" => """
        <ol class="help-doc-list">\n
          <li>Lege die gewünschten Produkte in den Warenkorb.</li>\n
          <li>Öffne den Warenkorb und trage den Code in das Eingabefeld ein.</li>\n
          <li>Bestätige den Code über <strong>Einlösen</strong>.</li>\n
          <li>Der Rabatt erscheint direkt in der aktualisierten Summe.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--info">Pro Bestellung kann nur ein Gutschein-Code gleichzeitig aktiv sein.</div>
        """
      "frontend.help.coupons.sections.redeem.eyebrow" => "Einlösen"
      "frontend.help.coupons.sections.redeem.title" => "So wird ein Gutschein aktiviert"
      "frontend.help.coupons.sections.troubleshooting.body" => """
        <ul class="help-doc-list">\n
          <li>Prüfe Mindestbestellwert und Geltungszeitraum.</li>\n
          <li>Manche Codes gelten nur für bestimmte Produkte oder Kategorien.</li>\n
          <li>Einmal-Codes können nach erfolgreicher Nutzung nicht erneut eingesetzt werden.</li>\n
          <li>Die Eingabe ist nicht case-sensitiv, Bedingungen aber trotzdem verbindlich.</li>\n
        </ul>
        """
      "frontend.help.coupons.sections.troubleshooting.eyebrow" => "Fehlersuche"
      "frontend.help.coupons.sections.troubleshooting.title" => "Wenn der Gutschein nicht funktioniert"
      "frontend.help.coupons.sections.types.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Typ</th><th>Beispiel</th><th>Hinweis</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td>Prozentrabatt</td><td>10% auf passende Produkte</td><td>Wird auf den Warenkorbwert angewendet.</td></tr>\n
            <tr><td>Festbetrag</td><td>5 EUR Rabatt</td><td>Wird direkt vom Gesamtbetrag abgezogen.</td></tr>\n
            <tr><td>Versandvorteil</td><td>Kostenloser Versand</td><td>Kann die Versandkosten reduzieren oder entfernen.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.coupons.sections.types.eyebrow" => "Rabattarten"
      "frontend.help.coupons.sections.types.title" => "Welche Gutschein-Typen es geben kann"
      "frontend.help.coupons.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Einlösen, Rabattarten und Fehlersuche wurden für den aktuellen Checkout-/Cart-Stand überarbeitet.</li>\n
          <li>Hinweise zu Bedingungen wie Mindestbestellwert und Gültigkeit sind deutlicher formuliert.</li>\n
          <li>Die Seite verweist weiterhin direkt auf Warenkorb und Shop für schnelle Prüfung.</li>\n
        </ul>
        """
      "frontend.help.coupons.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.coupons.sections.updated.title" => "Gutschein- und Rabatt-Hilfe überarbeitet"
      "frontend.help.coupons.sidebar.links.cart" => "Zum Warenkorb"
      "frontend.help.coupons.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.coupons.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.coupons.sidebar.links.shop" => "Zum Shop"
      "frontend.help.coupons.sidebar.links.title" => "Zu den passenden Shop-Aktionen"
      "frontend.help.coupons.sidebar.note.body" => """
        <ul>\n
          <li>Sale-Preise können direkt auf der Produktseite erscheinen.</li>\n
          <li>Mengenrabatte greifen automatisch, wenn sie konfiguriert sind.</li>\n
          <li>B2B-Preise werden nach erfolgreichem Login sichtbar.</li>\n
        </ul>
        """
      "frontend.help.coupons.sidebar.note.eyebrow" => "Noch mehr Vorteile"
      "frontend.help.coupons.sidebar.note.title" => "Auch ohne Code gibt es Rabatte"
      "frontend.help.nav.account.summary" => "Bestellungen, Wunschliste, Profil und Retouren in einem Kundenbereich."
      "frontend.help.nav.account.title" => "Mein Konto"
      "frontend.help.nav.b2b.summary" => "Angebotsanfragen, Freischaltung und Statuslogik für Geschäftskunden."
      "frontend.help.nav.b2b.title" => "B2B-Shop"
      "frontend.help.nav.cart.summary" => "Produkte hinzufügen, Mengen anpassen, Gutscheine anwenden und Favoriten für später merken."
      "frontend.help.nav.cart.title" => "Warenkorb & Wunschliste"
      "frontend.help.nav.checkout.summary" => "Adresse, Versand, Zahlung und Bestellabschluss Schritt für Schritt erklärt."
      "frontend.help.nav.checkout.title" => "Checkout & Bestellung"
      "frontend.help.nav.coupons.summary" => "Codes einlösen, Rabattarten verstehen und typische Fehler prüfen."
      "frontend.help.nav.coupons.title" => "Gutscheine & Rabatte"
      "frontend.help.nav.orders.summary" => "Historie, Status, Rechnung und Stornierung klar eingeordnet."
      "frontend.help.nav.orders.title" => "Meine Bestellungen"
      "frontend.help.nav.page.summary" => "Seitentypen, Navigation, Widgets und SEO-Hinweise für das Frontend."
      "frontend.help.nav.page.title" => "Seiten & Anzeigeoptionen"
      "frontend.help.nav.payment.summary" => "Live verfügbare Zahlarten, Sicherheitsniveau und Projektstatus auf einen Blick."
      "frontend.help.nav.payment.title" => "Zahlungsarten"
      "frontend.help.nav.product.summary" => "Suche, Filter, Produktdetails und konfigurierbare Varianten schnell verstehen."
      "frontend.help.nav.product.title" => "Produkte & Kategorien"
      "frontend.help.nav.reviews.summary" => "Produktbewertungen schreiben, Fragen stellen und Moderationsregeln kennen."
      "frontend.help.nav.reviews.title" => "Bewertungen & Fragen"
      "frontend.help.nav.rma.summary" => "Rücksendungen anlegen, Status verfolgen und den Ablauf sauber nachvollziehen."
      "frontend.help.nav.rma.title" => "Retouren & RMA"
      "frontend.help.orders.lead" => "Bestellhistorie verstehen, Status lesen, Rechnungen laden und Stornierungen richtig einschätzen."
      "frontend.help.orders.sections.cancel.body" => """
        <ul class="help-doc-list">\n
          <li>Solange die Bestellung noch nicht versendet wurde, kann eine Stornierung möglich sein.</li>\n
          <li>Die Aktion erscheint direkt in der Bestelldetailseite, wenn der Status es zulässt.</li>\n
          <li>Bereits gelieferte Artikel laufen über %rmaLink%.</li>\n
        </ul>
        """
      "frontend.help.orders.sections.cancel.eyebrow" => "Änderungen"
      "frontend.help.orders.sections.cancel.title" => "Wann eine Stornierung möglich ist"
      "frontend.help.orders.sections.history.body" => """
        <ol class="help-doc-list">\n
          <li>Melde dich im Kundenkonto an.</li>\n
          <li>Wechsle in den Bereich <strong>Bestellungen</strong>.</li>\n
          <li>Dort siehst du Nummer, Datum, Betrag und Status jedes Auftrags.</li>\n
          <li>Die Detailansicht zeigt Positionen, Adresse, Tracking und verfügbare Aktionen.</li>\n
        </ol>
        """
      "frontend.help.orders.sections.history.eyebrow" => "Historie"
      "frontend.help.orders.sections.history.title" => "Bestellungen im Konto aufrufen"
      "frontend.help.orders.sections.invoice.body" => """
        <ul class="help-doc-list">\n
          <li>Öffne die Bestelldetailseite.</li>\n
          <li>Nutze die Aktion für den PDF-Download.</li>\n
          <li>Rechnungen stehen abhängig vom Bestellstatus und der Zahlungsfreigabe bereit.</li>\n
        </ul>
        """
      "frontend.help.orders.sections.invoice.eyebrow" => "Dokumente"
      "frontend.help.orders.sections.invoice.title" => "Rechnung als PDF herunterladen"
      "frontend.help.orders.sections.statuses.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Status</th><th>Bedeutung</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-warning">Offen</span></td><td>Bestellung erfasst, nächste Verarbeitung steht noch aus.</td></tr>\n
            <tr><td><span class="badge badge-info">Bezahlt</span></td><td>Die Zahlung ist bestätigt.</td></tr>\n
            <tr><td><span class="badge badge-primary">In Bearbeitung</span></td><td>Der Auftrag wird intern vorbereitet.</td></tr>\n
            <tr><td><span class="badge badge-success">Versendet</span></td><td>Das Paket ist unterwegs.</td></tr>\n
            <tr><td><span class="badge badge-success">Geliefert</span></td><td>Die Lieferung wurde abgeschlossen.</td></tr>\n
            <tr><td><span class="badge badge-danger">Storniert</span></td><td>Der Auftrag wurde gestoppt.</td></tr>\n
            <tr><td><span class="badge badge-secondary">Erstattet</span></td><td>Eine Erstattung wurde veranlasst.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.orders.sections.statuses.eyebrow" => "Statuswerte"
      "frontend.help.orders.sections.statuses.title" => "Bestellstatus richtig lesen"
      "frontend.help.orders.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Seite ist auf die aktuelle Bestellansicht im Kundenkonto abgestimmt.</li>\n
          <li>Statusbeschreibungen und Hinweise zu Rechnungsdownload wurden aktualisiert.</li>\n
          <li>Abgrenzung zwischen Storno und Retoure ist klarer dokumentiert.</li>\n
        </ul>
        """
      "frontend.help.orders.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.orders.sections.updated.title" => "Bestellhistorie, Status und Rechnungen"
      "frontend.help.orders.sidebar.links.account" => "Mein Konto"
      "frontend.help.orders.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.orders.sidebar.links.payment" => "Zahlungsarten"
      "frontend.help.orders.sidebar.links.rma" => "Retoure einleiten"
      "frontend.help.orders.sidebar.links.title" => "Wichtige Folgeaktionen"
      "frontend.help.orders.sidebar.note.body" => """
        <p><strong>Wo steht die Bestellnummer?</strong><br>In deiner Bestätigungs-E-Mail und in der Bestellliste im Konto.</p>\n
        <p><strong>Wo sehe ich Tracking?</strong><br>Auf der Detailseite, sobald Versanddaten verfügbar sind.</p>
        """
      "frontend.help.orders.sidebar.note.eyebrow" => "Häufige Fragen"
      "frontend.help.orders.sidebar.note.title" => "Wenn du etwas nicht findest"
      "frontend.help.page.lead" => "Wie Inhalte im Frontend strukturiert, sichtbar gemacht und sauber für Navigation und SEO genutzt werden."
      "frontend.help.page.sections.navigation.body" => """
        <ol class="help-doc-list">\n
          <li>Seiten im Backend anlegen und veröffentlichen.</li>\n
          <li>Position im Hauptmenü, oberen Footer-Menü oder in der unteren Legal-Leiste definieren.</li>\n
          <li>Sichtbarkeit pro Bereich sauber steuern.</li>\n
          <li>Slug, Titel und Meta-Daten konsistent halten.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--warning">Rechtliche Shop-Seiten wie AGB, Widerrufsbelehrung, Zahlungsarten, Versandrichtlinien und Batteriegesetz gehören in der Regel in die untere Legal-Leiste.</div>\n
        <div class="help-doc-callout help-doc-callout--info">Menüs werden im Frontend dynamisch aufgebaut. Nach dem Speichern sind Änderungen direkt sichtbar; der Seiteneditor legt dabei automatisch eine Revision an.</div>
        """
      "frontend.help.page.sections.navigation.eyebrow" => "Navigation"
      "frontend.help.page.sections.navigation.title" => "Menüs und Sichtbarkeit"
      "frontend.help.page.sections.seo.body" => """
        <ul class="help-doc-list">\n
          <li>Pflege eindeutige Titel und Meta-Descriptions.</li>\n
          <li>Vermeide doppelte Slugs und doppelte Inhalte.</li>\n
          <li>Für Page-Builder-Bilder sollten sprechende Dateinamen und Alt-Texte im Media Center gepflegt werden.</li>\n
          <li>Interne Verlinkung verbessert Orientierung und Auffindbarkeit.</li>\n
          <li>Prüfe größere Änderungen immer in Vorschau und Live-Ansicht.</li>\n
        </ul>
        """
      "frontend.help.page.sections.seo.eyebrow" => "Qualität"
      "frontend.help.page.sections.seo.title" => "SEO und technische Hinweise"
      "frontend.help.page.sections.types.body" => """
        <ul class="help-doc-list">\n
          <li><strong>Landingpages</strong> für Kampagnen und fokussierte Einstiege.</li>\n
          <li><strong>Kategorie- und Produktseiten</strong> mit dynamischen Shop-Daten.</li>\n
          <li><strong>Statische Seiten</strong> wie Impressum, Datenschutz oder AGB.</li>\n
          <li><strong>Sonderseiten</strong> für Hilfe, Kontakt oder servicebezogene Inhalte.</li>\n
          <li><strong>Cart-Grid-Abschnitte</strong> für flexible Kartenlayouts mit Spalten, Bild und Text.</li>\n
        </ul>
        """
      "frontend.help.page.sections.types.eyebrow" => "Struktur"
      "frontend.help.page.sections.types.title" => "Seitentypen im Überblick"
      "frontend.help.page.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Hilfe deckt die aktuelle Struktur aus Startseite, Landingpages, Shop- und Serviceseiten ab.</li>\n
          <li>Navigations- und Sichtbarkeitshinweise wurden auf den aktuellen Menü- und Footer-Aufbau angepasst.</li>\n
          <li>SEO- und Pflegehinweise orientieren sich an den heute genutzten Frontend-Content-Bausteinen.</li>\n
          <li>Footer-Seiten können getrennt im oberen Footer-Menü oder in der unteren Legal-Leiste platziert werden.</li>\n
          <li>Seiteninhalte können im Backend jetzt mit RichText-Feldern und Media-Center-Bildern gepflegt werden, damit Redakteure mehr Freiheit im Aufbau haben.</li>\n
          <li>Neu: Das Theme-Modul im Admin trennt Frontend-Design sauber vom Backend-Layout und wird in der Seitenpflege berücksichtigt.</li>\n
          <li>Zusätzlich steht ein HTML-Theme-Import mit anschließendem Slot-Mapping bereit, damit neue Layouts kontrolliert eingebunden werden.</li>\n
          <li>Neu: Systemweite Interaktions- und Aufrufstatistiken erfassen Besucher, Sessions, IP-bezogene Nutzungsprofile, Referrer, Geräte, Browser, Betriebssysteme und Länder (inklusive GeoLite2-Lookup, falls vorhanden) für Analyse, Conversion-Bewertung und Fehlerdiagnose im Frontend und Backend.</li>\n
          <li>Top-Interaktionen lassen sich im Admin jetzt bis auf Konto-/Versuchskennung, IP, Land, Browser, Route, Pfad und Payload aufklappen; Login-Erfolge und Login-Fehlschläge werden dabei als eigene Events geführt.</li>\n
        </ul>
        """
      "frontend.help.page.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.page.sections.updated.title" => "Frontend-Seiten, Navigation und Content-Struktur"
      "frontend.help.page.sections.widgets.body" => """
        <ul class="help-doc-list">\n
          <li>Nutze wiederverwendbare Content-Blöcke für wiederkehrende Inhalte.</li>\n
          <li>Setze Slider und Teaser gezielt auf Start- und Landingpages ein.</li>\n
          <li>Arbeite mit klarer Reihenfolge: Hero, Inhalt, CTA.</li>\n
          <li>Teste mobil und Desktop, damit Reihenfolge und Abstände sauber bleiben.</li>\n
        </ul>
        """
      "frontend.help.page.sections.widgets.eyebrow" => "Layout"
      "frontend.help.page.sections.widgets.title" => "Widgets, Blöcke und visuelle Hierarchie"
      "frontend.help.page.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.page.sidebar.links.overview" => "Hilfe-Übersicht"
      "frontend.help.page.sidebar.links.product" => "Produkt-Hilfe"
      "frontend.help.page.sidebar.links.shop" => "Zum Shop"
      "frontend.help.page.sidebar.links.title" => "Nächste Orientierungspunkte"
      "frontend.help.page.sidebar.note.body" => """
        <p><strong>Seite fehlt im Menü?</strong><br>Prüfe den Veröffentlichungsstatus und die Menü-Zuordnung.</p>\n
        <p><strong>Layout wirkt falsch?</strong><br>Kontrolliere Template-Auswahl, Inhaltsblöcke und Reihenfolge.</p>\n
        <p><strong>Seite wird schlecht gefunden?</strong><br>Arbeite an Titel, Description, internen Links und einer klaren Struktur.</p>
        """
      "frontend.help.page.sidebar.note.eyebrow" => "Häufige Fragen"
      "frontend.help.page.sidebar.note.title" => "Worauf du zuerst schauen solltest"
      "frontend.help.payment.lead" => "Der aktuelle Live-Stand der verfügbaren Zahlarten, Sicherheitsmechanismen und nächsten Ausbaustufen."
      "frontend.help.payment.sections.card.body" => """
        <ul class="help-doc-list">\n
          <li>Kreditkartenzahlung ist schnell und sicher im Checkout eingebunden.</li>\n
          <li>Der Zahlungsfluss läuft über Stripe.</li>\n
          <li>Nach erfolgreicher Bestätigung wird die Bestellung direkt weiterverarbeitet.</li>\n
        </ul>
        """
      "frontend.help.payment.sections.card.eyebrow" => "Live"
      "frontend.help.payment.sections.card.title" => "Kartenzahlung über Stripe"
      "frontend.help.payment.sections.other.body" => """
        <ul class="help-doc-list">\n
          <li><strong>PayPal</strong>: vorbereitet, aktuell nicht live.</li>\n
          <li><strong>Klarna</strong>: vorbereitet, aktuell nicht live.</li>\n
          <li><strong>Vorkasse</strong>: möglicher späterer Ausbau.</li>\n
          <li><strong>Rechnung</strong>: erst nach produktiver Freigabe sichtbar.</li>\n
        </ul>\n
        <div class="help-doc-callout help-doc-callout--warning">Die Hilfe spiegelt den aktuellen Live-Zustand. Nicht freigeschaltete Methoden tauchen im Checkout nicht auf.</div>
        """
      "frontend.help.payment.sections.other.eyebrow" => "Projektstatus"
      "frontend.help.payment.sections.other.title" => "Weitere Zahlarten und ihr Status"
      "frontend.help.payment.sections.security.body" => """
        <ul class="help-doc-list">\n
          <li>SSL-verschlüsselte Übertragung im Checkout.</li>\n
          <li>Sichere Zahlungsabwicklung über spezialisierte Anbieter.</li>\n
          <li>Keine unnötige Speicherung sensibler Zahlungsdaten im Shop.</li>\n
        </ul>
        """
      "frontend.help.payment.sections.security.eyebrow" => "Sicherheit"
      "frontend.help.payment.sections.security.title" => "Wie Zahlungen abgesichert werden"
      "frontend.help.payment.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Hilfe spiegelt den aktuell aktiven Live-Zahlungsfluss wider.</li>\n
          <li>Nicht freigeschaltete Methoden bleiben als Statushinweis dokumentiert.</li>\n
          <li>Security-Abschnitt wurde mit Fokus auf Checkout-Realität und klare Erwartung überarbeitet.</li>\n
        </ul>
        """
      "frontend.help.payment.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.payment.sections.updated.title" => "Zahlarten und Sicherheitskommunikation"
      "frontend.help.payment.sidebar.links.checkout" => "Zur Kasse"
      "frontend.help.payment.sidebar.links.checkout_help" => "Checkout-Hilfe"
      "frontend.help.payment.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.payment.sidebar.links.orders" => "Meine Bestellungen"
      "frontend.help.payment.sidebar.links.title" => "Passende nächste Schritte"
      "frontend.help.payment.sidebar.note.body" => "<p>Im Checkout werden nur Zahlarten angezeigt, die aktuell wirklich verfügbar sind. Dadurch bleiben Auswahl und Kommunikation konsistent.</p>"
      "frontend.help.payment.sidebar.note.eyebrow" => "Aktuell wichtig"
      "frontend.help.payment.sidebar.note.title" => "Was du bei Zahlarten erwarten kannst"
      "frontend.help.product.lead" => "Produkte finden, filtern, konfigurieren und alle relevanten Details sauber lesen."
      "frontend.help.product.sections.configurable.body" => """
        <ol class="help-doc-list">\n
          <li>Wähle alle benötigten Optionen wie Größe, Farbe oder Material.</li>\n
          <li>Preis und Verfügbarkeit aktualisieren sich je nach Auswahl.</li>\n
          <li>Pflichtfelder bleiben bis zur korrekten Auswahl markiert.</li>\n
          <li>Erst danach kann das Produkt in den Warenkorb gelegt werden.</li>\n
        </ol>
        """
      "frontend.help.product.sections.configurable.eyebrow" => "Varianten"
      "frontend.help.product.sections.configurable.title" => "Konfigurierbare Produkte verstehen"
      "frontend.help.product.sections.details.body" => """
        <div class="row">\n
          <div class="col-sm-6">\n
            <ul class="help-doc-list">\n
              <li>Galerie und Produktbilder</li>\n
              <li>Name, Preis und Verfügbarkeit</li>\n
              <li>Kurz- und Langbeschreibung</li>\n
              <li>Lieferhinweise, Abholoptionen und Lagerstatus; bei reiner Abholung wird keine Lieferzeit angezeigt</li>\n
            </ul>\n
          </div>\n
          <div class="col-sm-6">\n
            <ul class="help-doc-list">\n
              <li>Artikelnummer und technische Daten</li>\n
              <li>Bewertungen und Fragen</li>\n
              <li>Ähnliche oder passende Produkte</li>\n
              <li>Merken-, Kauf- und Abholhinweise</li>\n
            </ul>\n
          </div>\n
        </div>
        """
      "frontend.help.product.sections.details.eyebrow" => "Produktseite"
      "frontend.help.product.sections.details.title" => "Was du auf der Detailseite findest"
      "frontend.help.product.sections.search.body" => """
        <ul class="help-doc-list">\n
          <li>Nutze die Suche im Header oder direkt im Shop.</li>\n
          <li>Kategorien führen strukturiert durch Sortimente und Unterkategorien.</li>\n
          <li>Filter für Preis, Attribute oder Hersteller lassen sich kombinieren.</li>\n
          <li>Wenn zu wenig Treffer erscheinen, hilft oft ein kürzerer Suchbegriff.</li>\n
        </ul>
        """
      "frontend.help.product.sections.search.eyebrow" => "Orientierung"
      "frontend.help.product.sections.search.title" => "Suche, Kategorien und Filter"
      "frontend.help.product.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Suche, Kategorien und Filter entsprechen dem aktuellen Shop-Frontend.</li>\n
          <li>Produktbilder können in Karten-, Listen- und Warenkorbbereichen direkt zeigen, ob Abholung möglich ist oder der Artikel nur online bestellbar ist.</li>\n
          <li>Bilddateinamen und Alt-Texte werden zentral im Media Center gepflegt, damit Produktbilder suchmaschinenfreundlicher und barriereärmer angezeigt werden können.</li>\n
          <li>Diese Produktbild-Hinweise lassen sich in den System-Einstellungen zentral ein- oder ausblenden.</li>\n
          <li>Konfigurierbare Produkte mit Pflichtoptionen sind in der Hilfe explizit abgedeckt.</li>\n
          <li>Preis-, Verfügbarkeits- und Detailanzeigen wurden an die aktuellen Produkttemplates angepasst.</li>\n
        </ul>
        """
      "frontend.help.product.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.product.sections.updated.title" => "Produktseiten und Varianten-Logik"
      "frontend.help.product.sidebar.links.cart" => "Warenkorb-Hilfe"
      "frontend.help.product.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.product.sidebar.links.reviews" => "Bewertungen & Fragen"
      "frontend.help.product.sidebar.links.shop" => "Zum Shop"
      "frontend.help.product.sidebar.links.title" => "Nächste Einstiege im Shop"
      "frontend.help.product.sidebar.note.body" => """
        <ul>\n
          <li>Standardpreise erscheinen im Shop inklusive gesetzlicher Steuer.</li>\n
          <li>B2B-Kunden können je nach Freischaltung Netto-Preise sehen.</li>\n
          <li>Angebote, Staffelpreise und Verfügbarkeit werden direkt am Produkt angezeigt.</li>\n
        </ul>
        """
      "frontend.help.product.sidebar.note.eyebrow" => "Gut zu wissen"
      "frontend.help.product.sidebar.note.title" => "Preise und Sichtbarkeit"
      "frontend.help.reviews.lead" => "Produkte bewerten, Fragen stellen und die Moderationslogik im Frontend besser verstehen."
      "frontend.help.reviews.sections.questions.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne die Produktseite.</li>\n
          <li>Nutze den Bereich für Fragen und Antworten.</li>\n
          <li>Formuliere die Frage klar und sende sie ab.</li>\n
          <li>Antworten werden nach Freigabe öffentlich sichtbar.</li>\n
        </ol>
        """
      "frontend.help.reviews.sections.questions.eyebrow" => "Q&A"
      "frontend.help.reviews.sections.questions.title" => "Produktfragen einstellen"
      "frontend.help.reviews.sections.review.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne die Produktseite des passenden Artikels.</li>\n
          <li>Wechsle in den Bereich <strong>Bewertungen</strong>.</li>\n
          <li>Wähle Sterne, Titel und Text für deine Rückmeldung.</li>\n
          <li>Nach dem Absenden wird die Bewertung moderiert und später freigeschaltet.</li>\n
        </ol>
        """
      "frontend.help.reviews.sections.review.eyebrow" => "Bewertungen"
      "frontend.help.reviews.sections.review.title" => "So gibst du eine Produktbewertung ab"
      "frontend.help.reviews.sections.rules.body" => """
        <ul class="help-doc-list">\n
          <li>Bewertungen und Fragen sollten sachlich, ehrlich und hilfreich sein.</li>\n
          <li>Persönliche Daten, Beleidigungen und Werbung sind nicht erlaubt.</li>\n
          <li>Vor der Veröffentlichung prüft das Team die Inhalte.</li>\n
        </ul>
        """
      "frontend.help.reviews.sections.rules.eyebrow" => "Qualität"
      "frontend.help.reviews.sections.rules.title" => "Welche Regeln für Inhalte gelten"
      "frontend.help.reviews.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Review- und Q&A-Hinweise wurden auf den aktuellen Moderationsablauf aktualisiert.</li>\n
          <li>Inhaltliche Regeln und Freigabelogik sind jetzt klarer und konsistent dokumentiert.</li>\n
          <li>Direkte Verweise zu Produkt- und Shop-Bereichen bleiben in der Sidebar verlinkt.</li>\n
        </ul>
        """
      "frontend.help.reviews.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.reviews.sections.updated.title" => "Bewertungen, Fragen und Moderation"
      "frontend.help.reviews.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.reviews.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.reviews.sidebar.links.product" => "Produkt-Hilfe"
      "frontend.help.reviews.sidebar.links.shop" => "Zum Shop"
      "frontend.help.reviews.sidebar.links.title" => "Wo du direkt weitermachen kannst"
      "frontend.help.reviews.sidebar.note.body" => """
        <p>Bewertungen und Fragen durchlaufen eine Freigabe. So bleibt die Qualität im Frontend stabil und Missbrauch wird reduziert.</p>\n
        <ul>\n
          <li>Bewertungen erscheinen erst nach Prüfung.</li>\n
          <li>Fragen können vor der Anzeige moderiert werden.</li>\n
        </ul>
        """
      "frontend.help.reviews.sidebar.note.eyebrow" => "Moderation"
      "frontend.help.reviews.sidebar.note.title" => "Warum nicht alles sofort sichtbar ist"
      "frontend.help.rma.lead" => "Rücksendungen sauber anlegen, Begründungen angeben und den Bearbeitungsstatus nachvollziehen."
      "frontend.help.rma.sections.process.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne <strong>Mein Konto &rarr; Retouren</strong>.</li>\n
          <li>Wähle eine geeignete Bestellung und das passende Produkt.</li>\n
          <li>Gib Grund, Beschreibung und Menge an.</li>\n
          <li>Sende die Anfrage ab und beobachte danach den Status im Konto.</li>\n
        </ol>
        """
      "frontend.help.rma.sections.process.eyebrow" => "Ablauf"
      "frontend.help.rma.sections.process.title" => "So läuft die Rücksendung"
      "frontend.help.rma.sections.statuses.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Status</th><th>Bedeutung</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-warning">Offen</span></td><td>Antrag eingereicht und wartet auf Prüfung.</td></tr>\n
            <tr><td><span class="badge badge-info">In Prüfung</span></td><td>Das Team bearbeitet die Anfrage.</td></tr>\n
            <tr><td><span class="badge badge-success">Genehmigt</span></td><td>Rücksendung wurde akzeptiert und die nächsten Schritte folgen.</td></tr>\n
            <tr><td><span class="badge badge-danger">Abgelehnt</span></td><td>Die Anfrage wurde abgelehnt.</td></tr>\n
            <tr><td><span class="badge badge-secondary">Abgeschlossen</span></td><td>Der Vorgang ist vollständig beendet.</td></tr>\n
            <tr><td><span class="badge badge-light border">Storniert</span></td><td>Der Antrag wurde abgebrochen.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.rma.sections.statuses.eyebrow" => "Statuswerte"
      "frontend.help.rma.sections.statuses.title" => "Wie die Bearbeitung angezeigt wird"
      "frontend.help.rma.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Der Ablauf für neue Retouren orientiert sich an den aktuellen Konto-Ansichten.</li>\n
          <li>Statusbeschreibung und typische Folgeaktionen wurden inhaltlich aktualisiert.</li>\n
          <li>Direkte Einstiege zu „Meine Retouren“ und „Neue Retoure“ sind weiterhin integriert.</li>\n
        </ul>
        """
      "frontend.help.rma.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.rma.sections.updated.title" => "Retouren-Workflow und Statusanzeige"
      "frontend.help.rma.sections.when.body" => """
        <ul class="help-doc-list">\n
          <li>Die Bestellung sollte bereits geliefert sein.</li>\n
          <li>Pro Produkt kann nur ein aktiver Retourenvorgang gleichzeitig laufen.</li>\n
          <li>Nach abgelehnten oder stornierten Vorgängen ist später eine neue Anfrage möglich.</li>\n
        </ul>
        """
      "frontend.help.rma.sections.when.eyebrow" => "Voraussetzungen"
      "frontend.help.rma.sections.when.title" => "Wann eine Retoure möglich ist"
      "frontend.help.rma.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.rma.sidebar.links.my_returns" => "Meine Retouren"
      "frontend.help.rma.sidebar.links.new_return" => "Neue Retoure"
      "frontend.help.rma.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.rma.sidebar.links.title" => "In den Retouren-Bereich springen"
      "frontend.help.rma.sidebar.note.body" => """
        <p><strong>Wie lange habe ich Zeit?</strong><br>Die genaue Frist richtet sich nach deinen geltenden Bedingungen und AGB.</p>\n
        <p><strong>Wer trägt die Versandkosten?</strong><br>Bei Defekt oder Falschlieferung wird das individuell im Prozess geklärt.</p>
        """
      "frontend.help.rma.sidebar.note.eyebrow" => "Häufige Fragen"
      "frontend.help.rma.sidebar.note.title" => "Rücksendungen besser einordnen"
      "frontend.hotel.breakfast_buffet" => "Frühstücksbuffet inklusive"
      "frontend.hotel.credit_card" => "Zahlung per EC-Karte/Kreditkarte"
      "frontend.hotel.pets" => "Haustiere willkommen"
      "frontend.hotel.service" => "kostenloses WLAN"
      "frontend.menu.apartments" => "Ferienwohnungen"
      "frontend.menu.arrive" => "Anreise"
      "frontend.menu.bikers_welcome" => "Biker willkommen!"
      "frontend.menu.blog" => "Blog"
      "frontend.menu.breakfast" => "Unser Frühstück"
      "frontend.menu.contact" => "Kontakt"
      "frontend.menu.culture_leisure" => "Kultur & Freizeit"
      "frontend.menu.data_protection" => "Datenschutzerklärung"
      "frontend.menu.dyke_street_62" => "Deichstraße 62"
      "frontend.menu.dyke_street_90" => "Deichstraße 90"
      "frontend.menu.gallery" => "Bildergalerie"
      "frontend.menu.georg_street_30" => "Georgstraße 30"
      "frontend.menu.goethe_street_1" => "Goethestraße 1"
      "frontend.menu.guest_house" => "Gästehaus & Apartments"
      "frontend.menu.guesthouse" => "Gästehaus"
      "frontend.menu.guesthouse_1" => "Einzelzimmer"
      "frontend.menu.guesthouse_2" => "Doppelzimmer"
      "frontend.menu.guesthouse_3" => "3 Personen Apartment"
      "frontend.menu.guesthouse_4" => "4 Personen Apartment"
      "frontend.menu.guesthouse_5" => "5 Personen Apartment"
      "frontend.menu.guesthouse_6" => "6 Personen Apartment"
      "frontend.menu.guesthouse_7" => "7 Personen Apartment"
      "frontend.menu.guesthouse_8" => "8 Personen Apartment"
      "frontend.menu.guesthouse_9" => "9 Personen Apartment"
      "frontend.menu.home" => "Startseite"
      "frontend.menu.imprint" => "Impressum"
      "frontend.menu.information" => "Information"
      "frontend.menu.live_cam" => "Live Cam"
      "frontend.menu.prices" => "& Preise"
      "frontend.menu.privacy" => "Datenschutz"
      "frontend.menu.rooms_prices" => "Zimmer & Preise"
      "frontend.menu.service" => "Unser Service"
      "frontend.menu.shop" => "Shop"
      "frontend.menu.shop.overview" => "Übersicht"
      "frontend.menu.terms" => "AGB"
      "frontend.menu.ulmen_street_29" => "Ulmenstraße 29"
      "frontend.menu.weather" => "Wetter"
      "frontend.navigation.actions.open_sidebar" => "Seitenleiste öffnen"
      "frontend.navigation.customer.account" => "Mein Konto"
      "frontend.navigation.customer.b2b_registration" => "B2B-Registrierung"
      "frontend.navigation.customer.help" => "Hilfe"
      "frontend.navigation.customer.label" => "Shop-Kunde"
      "frontend.navigation.customer.login" => "Shop anmelden"
      "frontend.navigation.customer.logout" => "Shop abmelden"
      "frontend.navigation.locale.label" => "Sprache"
      "frontend.navigation.menu.all_products" => "Alle Produkte"
      "frontend.navigation.menu.category_fallback" => "Kategorie"
      "frontend.page_subtitle.arrive" => "zu NFOK"
      "frontend.page.login.all_rights" => "Alle Rechte vorbehalten."
      "frontend.page.login.already_member" => "Sie haben ein Benutzerkonto?"
      "frontend.page.login.btn_submit" => "Anmelden"
      "frontend.page.login.create_acount" => "Benutzerkonto anlegen"
      "frontend.page.login.domain" => "https://nfok.xyz"
      "frontend.page.login.domain_title" => "NFOK"
      "frontend.page.login.email" => "E-Mail"
      "frontend.page.login.log_in" => "Anmelden"
      "frontend.page.login.lost_your_password" => "Passwort vergessen?"
      "frontend.page.login.new_site" => "kein Benutzerkonto?"
      "frontend.page.login.password" => "Passwort"
      "frontend.page.login.remember_me" => "Erinnere dich an mich"
      "frontend.page.login.subtitle" => "NFOK"
      "frontend.page.login.title" => "NFOK WORK"
      "frontend.page.login.username" => "Benutzername"
      "frontend.page.password_rest.btn_rest_password" => "Passwort erneuern"
      "frontend.page.password_rest.rest_your_password" => "Passwort zurücksetzen"
      "frontend.page.password_rest.title" => "Passwort vergessen"
      "frontend.pagetitle.apartments" => "Ferienwohnungen"
      "frontend.pagetitle.arrive" => "Anreise"
      "frontend.pagetitle.breakfast" => "Frühstück"
      "frontend.pagetitle.contact" => "Kontakt"
      "frontend.pagetitle.contact_me" => "Wir sind hier"
      "frontend.pagetitle.dyke_street_62" => "Deichstraße 62"
      "frontend.pagetitle.dyke_street_90" => "Deichstraße 90"
      "frontend.pagetitle.gallery" => "Bildergalerie"
      "frontend.pagetitle.georg_street_30" => "Georgstraße 30"
      "frontend.pagetitle.goethe_street_1" => "Goethestraße 1"
      "frontend.pagetitle.guest_house" => "Gästehaus"
      "frontend.pagetitle.holiday_house" => "Ferienhaus"
      "frontend.pagetitle.hotel" => "NFOK"
      "frontend.pagetitle.our_and" => "Unser"
      "frontend.pagetitle.rooms_prices" => "Zimmer & Preise"
      "frontend.pagetitle.service" => "Service"
      "frontend.pagetitle.story" => "Geschichte"
      "frontend.pagetitle.title" => "NFOK"
      "frontend.pagetitle.ulmen_street_29" => "Ulmenstraße 29"
      "frontend.rooms_prices.9_room_price" => "ab 160,00 € pro Nacht inkl. Frühstücksbuffet"
      "frontend.rooms_prices.ez_room_price" => "ab 105,00 € pro Nacht inkl. Frühstücksbuffet"
      "frontend.rooms_prices.info_1" => "Die Zimmer verfügen jeweils über Dusche, WC, Haartrockner, Kabel-TV und WLAN. Aufgrund des Denkmalschutzes befindet sich das jeweils eigene Bad von zwei Einzelzimmern neben dem Zimmer."
      "frontend.rooms_prices.info_2" => "Ausstattung: Jede Wohneinheit hat verschiedene Ausstattungen und Aufteilungsvarianten."
      "frontend.rooms_prices.info_3" => "Belegungen: In unserem Gästehaus können wir Ihnen Apartments, Einzelzimmer, Doppelzimmer oder Mehrbettzimmer und Wohnungen mit unterschiedlichen Belegungsmöglichkeiten und Ausstattungen für Einzelpersonen, Paare oder Gästegruppen anbieten. Ob eine Übernachtung oder ein längerfristiger Aufenthalt – beides ist kein Problem. Alle Kategorien können jederzeit als Einzel- oder Doppelzimmer gebucht werden. Haustiere kostenfrei willkommen."
      "frontend.rooms_prices.info_4" => "Wir beraten Sie gerne am Telefon."
      "frontend.rooms_prices.info_5" => "Für offen gebliebene Fragen stehen wir Ihnen gerne zur Verfügung."
      "frontend.rooms_prices.left_img_box_price" => "105,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.left_img_box_subprice" => "98,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.left_img_box_subtitle" => "mit eigenem externen Bad gegenüber vom Zimmer"
      "frontend.rooms_prices.left_img_box_title" => "Einzelzimmer"
      "frontend.rooms_prices.right_img_box_price" => "128,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.right_img_box_subprice" => "110,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.right_img_box_subtitle" => "als Einzelzimmer"
      "frontend.rooms_prices.right_img_box_title" => "Doppelzimmer"
      "frontend.rooms_prices.ulmen_room_price" => "ab 120,00 € pro Nacht"
      "frontend.shop_auth.login.actions.register" => "Jetzt registrieren"
      "frontend.shop_auth.login.actions.resend_confirmation" => "Bestätigungslink erneut senden"
      "frontend.shop_auth.login.actions.reset_password" => "Passwort vergessen?"
      "frontend.shop_auth.login.actions.submit" => "Anmelden"
      "frontend.shop_auth.login.breadcrumb_current" => "Anmelden"
      "frontend.shop_auth.login.fields.password" => "Passwort"
      "frontend.shop_auth.login.fields.password_placeholder" => "••••••••"
      "frontend.shop_auth.login.fields.resend_email_placeholder" => "E-Mail für Bestätigungslink"
      "frontend.shop_auth.login.fields.username" => "E-Mail / Benutzername"
      "frontend.shop_auth.login.fields.username_placeholder" => "name@beispiel.de"
      "frontend.shop_auth.login.intro_text" => "Melden Sie sich mit Ihrem Konto an"
      "frontend.shop_auth.login.intro_title" => "Willkommen zurück"
      "frontend.shop_auth.login.meta_title" => "Anmelden - Shop"
      "frontend.shop_auth.login.missing_confirmation" => "Bestätigungslink nicht mehr vorhanden?"
      "frontend.shop_auth.login.no_account" => "Noch kein Konto?"
      "frontend.shop_auth.login.page_title" => "Anmelden"
      "frontend.shop_auth.password_reset.check_email.actions.back_to_login" => "Zurück zum Login"
      "frontend.shop_auth.password_reset.check_email.actions.retry" => "Erneut versuchen"
      "frontend.shop_auth.password_reset.check_email.breadcrumb_current" => "E-Mail prüfen"
      "frontend.shop_auth.password_reset.check_email.info" => "Falls ein Konto mit dieser E-Mail-Adresse existiert, wurde ein Link zum Zurücksetzen gesendet. Der Link ist etwa %hours% Stunde(n) gültig."
      "frontend.shop_auth.password_reset.check_email.intro_text" => "Prüfen Sie Ihr Postfach für den nächsten Schritt."
      "frontend.shop_auth.password_reset.check_email.intro_title" => "Fast geschafft"
      "frontend.shop_auth.password_reset.check_email.meta_title" => "E-Mail prüfen - Passwort zurücksetzen"
      "frontend.shop_auth.password_reset.check_email.page_title" => "E-Mail prüfen"
      "frontend.shop_auth.password_reset.check_email.retry_notice" => "Keine E-Mail gefunden? Prüfen Sie bitte auch den Spam-Ordner oder fordern Sie einen neuen Link an."
      "frontend.shop_auth.password_reset.request.actions.back_to_login" => "Zurück zum Login"
      "frontend.shop_auth.password_reset.request.actions.submit" => "Link zum Zurücksetzen senden"
      "frontend.shop_auth.password_reset.request.back_notice" => "Sie kennen Ihr Passwort doch noch?"
      "frontend.shop_auth.password_reset.request.breadcrumb_current" => "Passwort zurücksetzen"
      "frontend.shop_auth.password_reset.request.fields.email" => "E-Mail-Adresse"
      "frontend.shop_auth.password_reset.request.fields.email_placeholder" => "name@beispiel.de"
      "frontend.shop_auth.password_reset.request.help_text" => "Geben Sie Ihre E-Mail-Adresse ein. Wenn ein Konto dazu existiert, senden wir Ihnen einen Link zum Zurücksetzen Ihres Passworts."
      "frontend.shop_auth.password_reset.request.intro_text" => "Fordern Sie einen sicheren Link zum Zurücksetzen Ihres Passworts an."
      "frontend.shop_auth.password_reset.request.intro_title" => "Passwort vergessen?"
      "frontend.shop_auth.password_reset.request.meta_title" => "Passwort zurücksetzen - Shop"
      "frontend.shop_auth.password_reset.request.page_title" => "Passwort zurücksetzen"
      "frontend.shop_auth.password_reset.reset.actions.back_to_login" => "Zurück zum Login"
      "frontend.shop_auth.password_reset.reset.actions.submit" => "Neues Passwort speichern"
      "frontend.shop_auth.password_reset.reset.back_notice" => "Sie möchten stattdessen wieder zum Login?"
      "frontend.shop_auth.password_reset.reset.breadcrumb_current" => "Neues Passwort setzen"
      "frontend.shop_auth.password_reset.reset.fields.password" => "Neues Passwort"
      "frontend.shop_auth.password_reset.reset.fields.password_placeholder" => "Mindestens 6 Zeichen"
      "frontend.shop_auth.password_reset.reset.fields.repeat_password" => "Passwort wiederholen"
      "frontend.shop_auth.password_reset.reset.fields.repeat_password_placeholder" => "Passwort erneut eingeben"
      "frontend.shop_auth.password_reset.reset.intro_text" => "Wählen Sie ein neues Passwort für Ihr Shop-Konto."
      "frontend.shop_auth.password_reset.reset.intro_title" => "Neues Passwort vergeben"
      "frontend.shop_auth.password_reset.reset.meta_title" => "Neues Passwort setzen - Shop"
      "frontend.shop_auth.password_reset.reset.page_title" => "Neues Passwort setzen"
      "frontend.shop_auth.register.actions.login" => "Zum Login"
      "frontend.shop_auth.register.actions.submit" => "Konto erstellen"
      "frontend.shop_auth.register.breadcrumb_current" => "Registrieren"
      "frontend.shop_auth.register.confirmation_notice" => "Nach der Registrierung senden wir Ihnen einen Bestätigungslink per E-Mail. Erst danach wird Ihr Shop-Konto freigeschaltet."
      "frontend.shop_auth.register.existing_account" => "Bereits registriert?"
      "frontend.shop_auth.register.fields.email" => "E-Mail-Adresse"
      "frontend.shop_auth.register.fields.email_placeholder" => "name@beispiel.de"
      "frontend.shop_auth.register.fields.name" => "Vollständiger Name"
      "frontend.shop_auth.register.fields.name_placeholder" => "Max Mustermann"
      "frontend.shop_auth.register.fields.password" => "Passwort"
      "frontend.shop_auth.register.fields.password_help" => "Für den Login ist zusätzlich eine Bestätigung Ihrer E-Mail-Adresse erforderlich."
      "frontend.shop_auth.register.fields.password_placeholder" => "Mindestens 8 Zeichen"
      "frontend.shop_auth.register.flashes.created" => "Konto erfolgreich erstellt. Bitte bestätigen Sie jetzt Ihre E-Mail-Adresse, bevor Sie sich anmelden."
      "frontend.shop_auth.register.flashes.email_exists" => "Diese E-Mail-Adresse ist bereits registriert."
      "frontend.shop_auth.register.flashes.invalid_csrf" => "Ungültiges Formular-Token. Bitte versuchen Sie es erneut."
      "frontend.shop_auth.register.flashes.invalid_email" => "Bitte geben Sie eine gültige E-Mail-Adresse ein."
      "frontend.shop_auth.register.flashes.password_too_short" => "Das Passwort muss mindestens 8 Zeichen lang sein."
      "frontend.shop_auth.register.flashes.pending_verification_resent" => "Für diese E-Mail-Adresse besteht bereits eine offene Registrierung. Wir haben einen neuen Bestätigungslink versendet."
      "frontend.shop_auth.register.flashes.rate_limit" => "Zu viele Registrierungsversuche."
      "frontend.shop_auth.register.flashes.required_fields" => "Bitte füllen Sie alle Felder aus."
      "frontend.shop_auth.register.intro_text" => "Registrieren Sie sich kostenlos"
      "frontend.shop_auth.register.intro_title" => "Konto erstellen"
      "frontend.shop_auth.register.meta_title" => "Konto erstellen - Shop"
      "frontend.shop_auth.register.page_title" => "Konto erstellen"
      "frontend.shop_auth.resend.flashes.invalid_csrf" => "Die Anfrage konnte aus Sicherheitsgründen nicht verarbeitet werden."
      "frontend.shop_auth.resend.flashes.invalid_email" => "Bitte geben Sie eine gültige E-Mail-Adresse ein."
      "frontend.shop_auth.resend.flashes.mail_failed" => "Die Bestätigungsmail konnte nicht sofort versendet werden. Bitte verwenden Sie die Funktion zum erneuten Senden auf der Login-Seite."
      "frontend.shop_auth.resend.flashes.rate_limit" => "Zu viele Anfragen für neue Bestätigungslinks."
      "frontend.shop_auth.resend.flashes.sent_if_exists" => "Falls für diese E-Mail-Adresse ein unbestätigtes Shop-Konto existiert, wurde ein neuer Bestätigungslink versendet."
      "frontend.shop_auth.verify.flashes.already_verified" => "Dieses Shop-Konto ist bereits bestätigt und kann direkt genutzt werden."
      "frontend.shop_auth.verify.flashes.expired_resent" => "Der Bestatigungslink war abgelaufen. Wir haben Ihnen automatisch einen neuen Link gesendet."
      "frontend.shop_auth.verify.flashes.invalid_token" => "Der Bestätigungslink ist ungültig oder wurde bereits verwendet."
      "frontend.shop_auth.verify.flashes.verified" => "Ihre E-Mail-Adresse wurde erfolgreich bestätigt. Sie können sich jetzt anmelden."
      "frontend.shop.actions.add_error" => "Fehler beim Hinzufügen zum Warenkorb"
      "frontend.shop.actions.add_to_cart" => "In den Warenkorb"
      "frontend.shop.actions.added" => "Hinzugefügt"
      "frontend.shop.actions.buy" => "Kaufen"
      "frontend.shop.actions.cart_short" => "Warenkorb"
      "frontend.shop.actions.clear_b2b_group" => "B2B-Gruppe zurücksetzen"
      "frontend.shop.actions.loading" => "Lädt..."
      "frontend.shop.actions.request_quote" => "B2B-Angebot anfragen"
      "frontend.shop.actions.watchlist_add" => "Merkliste +"
      "frontend.shop.actions.watchlist_remove" => "Merkliste -"
      "frontend.shop.actions.wishlist" => "Wunschliste"
      "frontend.shop.actions.wishlist_remove" => "Wunschliste entfernen"
      "frontend.shop.category.default_title" => "Kategorie"
      "frontend.shop.confirmation.account" => "Mein Konto"
      "frontend.shop.confirmation.breadcrumb_current" => "Bestätigung"
      "frontend.shop.confirmation.continue_shopping" => "Weiter einkaufen"
      "frontend.shop.confirmation.message" => "Ihre Bestellung wurde erfolgreich aufgenommen. Sie erhalten in Kürze eine Bestätigungs-E-Mail mit allen Details."
      "frontend.shop.confirmation.meta_title" => "Bestellung erfolgreich - Vielen Dank!"
      "frontend.shop.confirmation.page_title" => "Bestellung erfolgreich"
      "frontend.shop.confirmation.title" => "Vielen Dank für Ihre Bestellung!"
      "frontend.shop.errors.category_not_found" => "Kategorie nicht gefunden."
      "frontend.shop.errors.product_not_found" => "Produkt nicht gefunden."
      "frontend.shop.labels.sale_prefix" => "Aktion:"
      "frontend.shop.limit.per_page" => "pro Seite"
      "frontend.shop.limit.products" => "Produkte"
      "frontend.shop.no.product.image" => "Kein Bild"
      "frontend.shop.not.found.products" => "Keine Produkte gefunden."
      "frontend.shop.notifications.product_unavailable" => "Dieses Produkt ist aktuell nicht verfügbar."
      "frontend.shop.overview" => "Übersicht"
      "frontend.shop.product.labels.b2b" => "B2B"
      "frontend.shop.product.labels.gross" => "Brutto"
      "frontend.shop.product.labels.net" => "Netto"
      "frontend.shop.product.labels.price_breakdown" => "Netto: %net% | Brutto: %gross% | MwSt: %vat%%"
      "frontend.shop.product.labels.sku" => "Artikelnummer"
      "frontend.shop.product.labels.special_price" => "Sonderpreis"
      "frontend.shop.product.labels.tags" => "Schlagwörter"
      "frontend.shop.product.labels.uvp" => "UVP"
      "frontend.shop.product.labels.vat_excluded" => "zzgl. MwSt."
      "frontend.shop.product.labels.vat_included" => "inkl. MwSt."
      "frontend.shop.product.manufacturer" => "Hersteller:"
      "frontend.shop.product.pickup.available_text" => "Sie können diesen Artikel im Checkout ohne Versandkosten zur Abholung auswählen."
      "frontend.shop.product.pickup.available_title" => "Abholung im Geschäft möglich"
      "frontend.shop.product.pickup.free_shipping" => "Keine Versandkosten bei Abholung"
      "frontend.shop.product.pickup.label" => "Abholung im Geschäft"
      "frontend.shop.product.pickup.note_label" => "Hinweis zur Abholung"
      "frontend.shop.product.pickup.only_text" => "Dieser Artikel ist ausschließlich zur Abholung verfügbar. Versand wird im Checkout nicht angeboten."
      "frontend.shop.product.pickup.only_title" => "Nur Abholung im Geschäft"
      "frontend.shop.product.pickup.ready_notification" => "Bereitmeldung per E-Mail"
      "frontend.shop.product.question.answer_label" => "Antwort:"
      "frontend.shop.product.question.asked_by" => "<strong>%name%</strong> fragt:"
      "frontend.shop.product.question.default_author" => "Gast"
      "frontend.shop.product.question.email" => "E-Mail (optional)"
      "frontend.shop.product.question.email_placeholder" => "dein@email.de"
      "frontend.shop.product.question.empty" => "Noch keine beantworteten Fragen vorhanden."
      "frontend.shop.product.question.login_notice" => "%login_link_open%Jetzt anmelden%login_link_close%, um eine Frage zu stellen."
      "frontend.shop.product.question.name" => "Name"
      "frontend.shop.product.question.name_placeholder" => "Dein Name"
      "frontend.shop.product.question.question_label" => "Frage"
      "frontend.shop.product.question.required" => "Bitte eine Frage eingeben."
      "frontend.shop.product.question.submit" => "Frage absenden"
      "frontend.shop.product.question.submitted" => "Vielen Dank. Deine Frage wurde zur Moderation eingereicht."
      "frontend.shop.product.question.title" => "Fragen & Antworten"
      "frontend.shop.product.review.controller.anonymous_name" => "Anonym"
      "frontend.shop.product.review.controller.body_required" => "Bitte einen Bewertungstext eingeben."
      "frontend.shop.product.review.controller.csrf_invalid" => "Ungültiges Token. Bitte erneut versuchen."
      "frontend.shop.product.review.controller.guest_name" => "Gast"
      "frontend.shop.product.review.controller.product_not_found" => "Produkt nicht gefunden."
      "frontend.shop.product.review.controller.rating_invalid" => "Ungültige Sternebewertung."
      "frontend.shop.product.review.controller.submitted" => "Vielen Dank für Ihre Bewertung. Sie wird nach Prüfung freigeschaltet."
      "frontend.shop.product.review.count_one" => "%count% Bewertung"
      "frontend.shop.product.review.count_other" => "%count% Bewertungen"
      "frontend.shop.product.review.empty" => "Noch keine Bewertungen vorhanden."
      "frontend.shop.product.review.form.body" => "Bewertung"
      "frontend.shop.product.review.form.body_placeholder" => "Teilen Sie Ihre Erfahrungen mit diesem Produkt…"
      "frontend.shop.product.review.form.email" => "E-Mail (optional, nicht öffentlich)"
      "frontend.shop.product.review.form.email_placeholder" => "ihre@email.de"
      "frontend.shop.product.review.form.heading" => "Bewertung schreiben"
      "frontend.shop.product.review.form.moderation_notice" => "Bewertungen werden nach Prüfung freigeschaltet."
      "frontend.shop.product.review.form.name" => "Name"
      "frontend.shop.product.review.form.name_placeholder" => "Ihr Name"
      "frontend.shop.product.review.form.rating" => "Sterne-Bewertung"
      "frontend.shop.product.review.form.submit" => "Bewertung absenden"
      "frontend.shop.product.review.form.title" => "Titel (optional)"
      "frontend.shop.product.review.form.title_placeholder" => "Kurze Zusammenfassung"
      "frontend.shop.product.review.gate.customer_missing" => "Ihr Shop-Konto ist keinem Kundenprofil zugeordnet."
      "frontend.shop.product.review.gate.login_cta" => "Jetzt anmelden"
      "frontend.shop.product.review.gate.login_required" => "Nur angemeldete Shop-Kunden können bewerten."
      "frontend.shop.product.review.gate.not_allowed" => "Bewertungen sind erst nach erfolgreicher Bestellung und Erhalt des Artikels möglich."
      "frontend.shop.product.review.gate.unavailable" => "Eine Bewertung ist aktuell nicht möglich."
      "frontend.shop.product.review.heading" => "Kundenbewertungen"
      "frontend.shop.product.review.tab" => "Bewertungen"
      "frontend.shop.product.review.verified_purchase" => "Verifizierter Kauf"
      "frontend.shop.product.stock" => "Lagerbestand:"
      "frontend.shop.product.tabs.details" => "Details"
      "frontend.shop.product.tabs.questions" => "Fragen & Antworten"
      "frontend.shop.search.products.placeholder" => "Produkte suchen..."
      "frontend.shop.sidebar.categories" => "Kategorien"
      "frontend.shop.total.found" => "Produkte gefunden."
      "frontend.shop.total.products" => "Produkte"
      "frontend.single_room.with_external_bathroom.title" => "Einzelzimmer mit externem Bad"
      "frontend.slider.img_subtxt_1" => "mehr Text hier"
      "frontend.slider.img_subtxt_2" => "mehr Text hier"
      "frontend.slider.img_subtxt_3" => "mehr Text hier"
      "frontend.slider.img_txt_1" => "" Info Text Hier ""
      "frontend.slider.img_txt_2" => "" Info Text Hier ""
      "frontend.slider.img_txt_3" => "" Info Text Hier ""
    ]
  ]
  -adminDomainCache: []
  -locale: "de"
  -repo: App\Repository\TranslationRepository {#265 …}
  -defaultLocale: "de"
  -projectDir: "/var/www/nfok.xyz"
}
same as passed value

Resolved Options

Option Value
action
""
allow_extra_fields
false
allow_file_upload
false
attr
[]
attr_translation_parameters
[]
auto_initialize
true
block_name
null
block_prefix
null
by_reference
true
compound
true
constraints
[]
csrf_field_name
"_token"
csrf_message
"The CSRF token is invalid. Please try to resubmit the form."
csrf_protection
true
csrf_token_id
null
csrf_token_manager
Symfony\Component\Security\Csrf\CsrfTokenManager {#540
  -generator: Symfony\Component\Security\Csrf\TokenGenerator\UriSafeTokenGenerator {#549 …}
  -storage: Symfony\Component\Security\Csrf\TokenStorage\SessionTokenStorage {#577 …}
  -namespace: Closure() {#539 …}
}
data_class
null
disabled
false
empty_data
Closure(FormInterface $form) {#955
  class: "Symfony\Component\Form\Extension\Core\Type\FormType"
}
error_bubbling
true
error_mapping
[]
extra_fields_message
"This form should not contain extra fields."
form_attr
false
getter
null
help
null
help_attr
[]
help_html
false
help_translation_parameters
[]
inherit_data
false
invalid_message
"This value is not valid."
invalid_message_parameters
[]
is_empty_callback
null
label
null
label_attr
[]
label_format
null
label_html
false
label_translation_parameters
[]
mapped
true
method
"POST"
post_max_size_message
"The uploaded file was too large. Please try to upload a smaller file."
priority
0
property_path
null
required
true
row_attr
[]
setter
null
translation_domain
null
translator
App\Service\DatabaseTranslator {#266
  -cache: [
    "de|messages|backend.builder.ResetPasswordRequestFormType.message" => "Bitte E-Mail eintragen"
    "de|messages|frontend.global.adresses.phonenumber" => "000 / 000000"
    "de|messages|frontend.global.adresses.email" => "nfokwork@gmail.com"
    "de|messages|frontend.shop_auth.password_reset.request.meta_title" => "Passwort zurücksetzen - Shop"
    "de|messages|frontend.navigation.customer.login" => "Shop anmelden"
    "de|messages|frontend.navigation.customer.help" => "Hilfe"
    "de|messages|frontend.navigation.locale.label" => "Sprache"
    "de|messages|frontend.shop.actions.cart_short" => "Warenkorb"
    "de|messages|frontend.cart.empty.title" => "Ihr Warenkorb ist leer"
    "de|messages|frontend.cart.table.remove" => "Entfernen"
    "de|messages|frontend.cart.summary.subtotal" => "Zwischensumme"
    "de|messages|frontend.cart.summary.included_vat" => "enthaltene MwSt. (19%)"
    "de|messages|frontend.cart.actions.checkout" => "Zur Kasse"
    "de|messages|frontend.shop.actions.add_error" => "Fehler beim Hinzufügen zum Warenkorb"
    "de|messages|frontend.navigation.actions.open_sidebar" => "Seitenleiste öffnen"
    "de|messages|frontend.shop_auth.password_reset.request.page_title" => "Passwort zurücksetzen"
    "de|messages|frontend.menu.home" => "Startseite"
    "de|messages|frontend.menu.shop" => "Shop"
    "de|messages|frontend.shop_auth.password_reset.request.breadcrumb_current" => "Passwort zurücksetzen"
    "de|messages|frontend.shop_auth.password_reset.request.intro_title" => "Passwort vergessen?"
    "de|messages|frontend.shop_auth.password_reset.request.intro_text" => "Fordern Sie einen sicheren Link zum Zurücksetzen Ihres Passworts an."
    "de|messages|frontend.shop_auth.password_reset.request.fields.email" => "E-Mail-Adresse"
    "de|messages|frontend.shop_auth.password_reset.request.fields.email_placeholder" => "name@beispiel.de"
    "de|messages|name@beispiel.de" => "name@beispiel.de"
    "de|messages|frontend.shop_auth.password_reset.request.help_text" => "Geben Sie Ihre E-Mail-Adresse ein. Wenn ein Konto dazu existiert, senden wir Ihnen einen Link zum Zurücksetzen Ihres Passworts."
    "de|messages|frontend.shop_auth.password_reset.request.actions.submit" => "Link zum Zurücksetzen senden"
    "de|messages|frontend.shop_auth.password_reset.request.back_notice" => "Sie kennen Ihr Passwort doch noch?"
    "de|messages|frontend.shop_auth.password_reset.request.actions.back_to_login" => "Zurück zum Login"
  ]
  -databaseCache: [
    "de|messages" => [
      "admin.ab_tests.actions.back" => "Zurück"
      "admin.ab_tests.actions.cancel" => "Abbrechen"
      "admin.ab_tests.actions.close" => "Schließen"
      "admin.ab_tests.actions.create" => "Anlegen"
      "admin.ab_tests.actions.details" => "Details"
      "admin.ab_tests.actions.end" => "Beenden"
      "admin.ab_tests.actions.help" => "Hilfe"
      "admin.ab_tests.actions.pause" => "Pausieren"
      "admin.ab_tests.actions.save_variant" => "Variante %variant% speichern"
      "admin.ab_tests.actions.set_winner" => "Gewinner setzen"
      "admin.ab_tests.actions.start" => "Starten"
      "admin.ab_tests.actions.to_module" => "Zum Modul"
      "admin.ab_tests.confirm.end_button" => "Beenden"
      "admin.ab_tests.confirm.end_text" => "Experiment wirklich beenden? Diese Aktion kann nicht rückgängig gemacht werden."
      "admin.ab_tests.confirm.winner_button" => "Gewinner setzen"
      "admin.ab_tests.confirm.winner_text" => "Gewinner setzen und Experiment beenden?"
      "admin.ab_tests.detail.active_label" => "Aktiv"
      "admin.ab_tests.detail.change_status" => "Status ändern:"
      "admin.ab_tests.detail.columns.active" => "Aktiv"
      "admin.ab_tests.detail.columns.clicks" => "Klicks"
      "admin.ab_tests.detail.columns.ctr" => "CTR"
      "admin.ab_tests.detail.columns.variant" => "Variante"
      "admin.ab_tests.detail.columns.views" => "Aufrufe"
      "admin.ab_tests.detail.columns.winner" => "Gewinner?"
      "admin.ab_tests.detail.content_label" => "HTML-Inhalt der Variante %variant%"
      "admin.ab_tests.detail.content_placeholder" => "HTML für Variante %variant%..."
      "admin.ab_tests.detail.inactive_label" => "Inaktiv"
      "admin.ab_tests.detail.info_title" => "Experiment-Info"
      "admin.ab_tests.detail.no_variants" => "Noch keine Varianten angelegt. Füge Variante A, B oder C unten hinzu."
      "admin.ab_tests.detail.page_prefix" => "Experiment"
      "admin.ab_tests.detail.performance_title" => "Varianten & Performance"
      "admin.ab_tests.detail.rows.content_block" => "Content Block"
      "admin.ab_tests.detail.rows.created" => "Erstellt"
      "admin.ab_tests.detail.rows.description" => "Beschreibung"
      "admin.ab_tests.detail.rows.ended" => "Beendet"
      "admin.ab_tests.detail.rows.started" => "Gestartet"
      "admin.ab_tests.detail.rows.winner" => "Gewinner"
      "admin.ab_tests.detail.select_variant" => "Variante wählen"
      "admin.ab_tests.detail.set_winner_title" => "Gewinner festlegen:"
      "admin.ab_tests.detail.stats_summary" => "Aufrufe: %views% | Klicks: %clicks%"
      "admin.ab_tests.detail.variant_label" => "Variante %variant%"
      "admin.ab_tests.detail.variant_panel_edit" => "Variante %variant% bearbeiten"
      "admin.ab_tests.detail.variant_panel_new" => "Variante %variant% neu anlegen"
      "admin.ab_tests.detail.winner_badge" => "Gewinner"
      "admin.ab_tests.help_index.card_subtitle" => "Experimente, Varianten, Gewinner, Tracking"
      "admin.ab_tests.help_index.card_title" => "A/B-Tests"
      "admin.ab_tests.help.navigation_title" => "Navigation"
      "admin.ab_tests.help.navigation.api" => "API-Endpunkte"
      "admin.ab_tests.help.navigation.concept" => "Konzept"
      "admin.ab_tests.help.navigation.create" => "Experiment anlegen"
      "admin.ab_tests.help.navigation.fields" => "Feldreferenz"
      "admin.ab_tests.help.navigation.lifecycle" => "Status-Lifecycle"
      "admin.ab_tests.help.navigation.tracking" => "Event-Tracking"
      "admin.ab_tests.help.navigation.variants" => "Varianten bearbeiten"
      "admin.ab_tests.help.navigation.winner" => "Gewinner festlegen"
      "admin.ab_tests.help.sections.api.rows.create" => "Neues Experiment anlegen"
      "admin.ab_tests.help.sections.api.rows.detail" => "Experiment-Detail"
      "admin.ab_tests.help.sections.api.rows.list" => "Experiment-Liste"
      "admin.ab_tests.help.sections.api.rows.save_variant" => "Variante speichern"
      "admin.ab_tests.help.sections.api.rows.status" => "Status ändern"
      "admin.ab_tests.help.sections.api.rows.track" => "Event tracken (Frontend)"
      "admin.ab_tests.help.sections.api.rows.winner" => "Gewinner festlegen"
      "admin.ab_tests.help.sections.api.table.function" => "Funktion"
      "admin.ab_tests.help.sections.api.table.method" => "Methode"
      "admin.ab_tests.help.sections.api.table.url" => "URL"
      "admin.ab_tests.help.sections.api.title" => "API-Endpunkte"
      "admin.ab_tests.help.sections.concept.cards.metrics_text" => "Tracking von <code>view</code>-Events (Seitenaufrufe) und <code>click</code>-Events (Interaktionen)."
      "admin.ab_tests.help.sections.concept.cards.metrics_title" => "Metriken"
      "admin.ab_tests.help.sections.concept.cards.variants_text" => "Bis zu drei Varianten pro Experiment. Jeder Besucher sieht konsistent dieselbe Variante."
      "admin.ab_tests.help.sections.concept.cards.variants_title" => "Varianten A/B/C"
      "admin.ab_tests.help.sections.concept.intro" => "A/B-Tests ermöglichen es, verschiedene Versionen von <strong>Content-Blöcken</strong>, z.B. Banner, CTAs oder Produktbeschreibungen, gegeneinander zu testen und die Performance zu messen."
      "admin.ab_tests.help.sections.concept.permissions_label" => "Berechtigungen:"
      "admin.ab_tests.help.sections.concept.title" => "A/B-Test: Konzept"
      "admin.ab_tests.help.sections.create.steps.click_new" => "Im A/B-Test-Modul auf <kbd>+ Neues Experiment</kbd> klicken"
      "admin.ab_tests.help.sections.create.steps.content_block" => "Den Ziel-<strong>Content Block</strong> aus der Liste auswählen; der angezeigte Block-Key zeigt, wo der Test im Frontend ausgespielt wird"
      "admin.ab_tests.help.sections.create.steps.description" => "<strong>Beschreibung</strong>: Hypothese oder Testbeschreibung"
      "admin.ab_tests.help.sections.create.steps.fill_variants" => "Varianten im Bereich „Varianten & Performance“ befüllen"
      "admin.ab_tests.help.sections.create.steps.save_draft" => "Speichern → Das Experiment startet im Status <code>draft</code>"
      "admin.ab_tests.help.sections.create.steps.set_running" => "Status auf <code>running</code> setzen → Der Test ist live"
      "admin.ab_tests.help.sections.create.steps.title" => "<strong>Titel</strong>: Interner Name des Experiments"
      "admin.ab_tests.help.sections.create.title" => "Experiment anlegen"
      "admin.ab_tests.help.sections.create.warning" => "Teste nur Blöcke, deren Block-Key im Frontend tatsächlich gerendert wird. Ohne passende Einbindung wird kein Traffic verteilt."
      "admin.ab_tests.help.sections.fields.rows.content_block" => "Verknüpfter Content Block als Relation zu ContentBlock"
      "admin.ab_tests.help.sections.fields.rows.description" => "Hypothese oder Testbeschreibung"
      "admin.ab_tests.help.sections.fields.rows.ended_at" => "Ende des Tests"
      "admin.ab_tests.help.sections.fields.rows.started_at" => "Start des Tests"
      "admin.ab_tests.help.sections.fields.rows.status" => "draft / running / paused / ended"
      "admin.ab_tests.help.sections.fields.rows.title" => "Experiment-Name (intern)"
      "admin.ab_tests.help.sections.fields.rows.winner" => "Gewinner-Variante: A / B / C"
      "admin.ab_tests.help.sections.fields.table.description" => "Beschreibung"
      "admin.ab_tests.help.sections.fields.table.field" => "Feld"
      "admin.ab_tests.help.sections.fields.table.type" => "Typ"
      "admin.ab_tests.help.sections.fields.title" => "Feldreferenz: AbExperiment"
      "admin.ab_tests.help.sections.fields.types.boolean" => "Boolean"
      "admin.ab_tests.help.sections.fields.types.datetime" => "Datum/Zeit"
      "admin.ab_tests.help.sections.fields.types.enum" => "Enum"
      "admin.ab_tests.help.sections.fields.types.enum_nullable" => "Enum (nullable)"
      "admin.ab_tests.help.sections.fields.types.integer" => "Integer"
      "admin.ab_tests.help.sections.fields.types.relation" => "Relation"
      "admin.ab_tests.help.sections.fields.types.text" => "Text"
      "admin.ab_tests.help.sections.fields.variant_rows.active" => "Variante nimmt Traffic an"
      "admin.ab_tests.help.sections.fields.variant_rows.clicks" => "Anzahl click-Events"
      "admin.ab_tests.help.sections.fields.variant_rows.content" => "HTML-Inhalt der Variante"
      "admin.ab_tests.help.sections.fields.variant_rows.variant" => "A / B / C"
      "admin.ab_tests.help.sections.fields.variant_rows.views" => "Anzahl view-Events"
      "admin.ab_tests.help.sections.fields.variant_title" => "ContentBlockVariant:"
      "admin.ab_tests.help.sections.lifecycle.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/status</code>"
      "admin.ab_tests.help.sections.lifecycle.body" => "<strong>Body:</strong> <code>{"status": "running"}</code>"
      "admin.ab_tests.help.sections.lifecycle.rows.draft.meaning" => "In Vorbereitung, kein Traffic"
      "admin.ab_tests.help.sections.lifecycle.rows.draft.transition" => "→ running"
      "admin.ab_tests.help.sections.lifecycle.rows.ended.meaning" => "Test beendet, Gewinner kann markiert werden"
      "admin.ab_tests.help.sections.lifecycle.rows.ended.transition" => "→ (Endstatus)"
      "admin.ab_tests.help.sections.lifecycle.rows.paused.meaning" => "Pausiert, kein neuer Traffic"
      "admin.ab_tests.help.sections.lifecycle.rows.paused.transition" => "→ running / ended"
      "admin.ab_tests.help.sections.lifecycle.rows.running.meaning" => "Test aktiv, Traffic wird verteilt"
      "admin.ab_tests.help.sections.lifecycle.rows.running.transition" => "→ paused / ended"
      "admin.ab_tests.help.sections.lifecycle.table.meaning" => "Bedeutung"
      "admin.ab_tests.help.sections.lifecycle.table.status" => "Status"
      "admin.ab_tests.help.sections.lifecycle.table.transition" => "Übergang zu"
      "admin.ab_tests.help.sections.lifecycle.title" => "Status-Lifecycle"
      "admin.ab_tests.help.sections.tracking.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/api/track</code>"
      "admin.ab_tests.help.sections.tracking.body_label" => "<strong>Body:</strong>"
      "admin.ab_tests.help.sections.tracking.intro" => "Für Auswertungen müssen Frontend-Events gesendet werden:"
      "admin.ab_tests.help.sections.tracking.note" => "Das Tracking im Frontend sendet automatisch <code>view</code>-Events beim Laden und <code>click</code>-Events bei Klicks auf CTAs innerhalb des Blocks."
      "admin.ab_tests.help.sections.tracking.payload" => """
        {\n
          "blockId": 42,\n
          "variant": "B",\n
          "event": "view"   // alternativ "click"\n
        }\n
        """
      "admin.ab_tests.help.sections.tracking.title" => "Event-Tracking"
      "admin.ab_tests.help.sections.variants.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/variant/save</code>"
      "admin.ab_tests.help.sections.variants.body" => "<strong>Body:</strong> <code>{"variant": "A", "content": "..."}</code>"
      "admin.ab_tests.help.sections.variants.info" => "Variante <strong>A</strong> ist die Kontrollvariante. Variante <strong>B</strong> und <strong>C</strong> sind die Testkandidaten."
      "admin.ab_tests.help.sections.variants.items.active" => "Gespeicherte Varianten werden im aktuellen Workflow automatisch aktiv gesetzt"
      "admin.ab_tests.help.sections.variants.items.content" => "<code>content</code>: HTML- oder Text-Inhalt der Variante"
      "admin.ab_tests.help.sections.variants.items.limit" => "Jedes Experiment hat bis zu drei Varianten: <strong>A</strong>, <strong>B</strong>, <strong>C</strong>"
      "admin.ab_tests.help.sections.variants.items.traffic" => "Nur aktive Varianten erhalten Traffic; inaktive Varianten werden nie angezeigt"
      "admin.ab_tests.help.sections.variants.title" => "Varianten bearbeiten (A/B/C)"
      "admin.ab_tests.help.sections.winner.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/winner</code>"
      "admin.ab_tests.help.sections.winner.body" => "<strong>Body:</strong> <code>{"variant": "B"}</code>"
      "admin.ab_tests.help.sections.winner.intro" => "Nach dem Beenden eines Tests wird die gewinnende Variante festgelegt:"
      "admin.ab_tests.help.sections.winner.steps.apply" => "Die Gewinnervariante wird nur im Experiment markiert. Die Übernahme in den produktiven Content erfolgt anschließend bewusst manuell."
      "admin.ab_tests.help.sections.winner.steps.choose" => "<kbd>Gewinner: Variante X</kbd> auswählen"
      "admin.ab_tests.help.sections.winner.steps.compare" => "Statistiken der Varianten vergleichen, z.B. CTR und Conversions"
      "admin.ab_tests.help.sections.winner.steps.end" => "Status auf <code>ended</code> setzen"
      "admin.ab_tests.help.sections.winner.title" => "Gewinner festlegen"
      "admin.ab_tests.help.title" => "Hilfe: A/B-Tests"
      "admin.ab_tests.index.columns.action" => "Aktion"
      "admin.ab_tests.index.columns.content_block" => "Content Block"
      "admin.ab_tests.index.columns.ended" => "Beendet"
      "admin.ab_tests.index.columns.started" => "Gestartet"
      "admin.ab_tests.index.columns.status" => "Status"
      "admin.ab_tests.index.columns.title" => "Titel"
      "admin.ab_tests.index.columns.winner" => "Gewinner"
      "admin.ab_tests.index.empty" => "Noch keine Experimente vorhanden."
      "admin.ab_tests.index.help_title" => "Hilfe zu diesem Modul"
      "admin.ab_tests.index.list_title" => "Alle Experimente"
      "admin.ab_tests.index.modal.content_block_label" => "Content Block"
      "admin.ab_tests.index.modal.description_label" => "Beschreibung"
      "admin.ab_tests.index.modal.description_placeholder" => "Optional"
      "admin.ab_tests.index.modal.select_placeholder" => "-- Bitte wählen --"
      "admin.ab_tests.index.modal.title" => "Neues A/B-Experiment"
      "admin.ab_tests.index.modal.title_label" => "Titel"
      "admin.ab_tests.index.modal.title_placeholder" => "z.B. Hero-Banner Sept."
      "admin.ab_tests.index.new_experiment" => "Neues Experiment"
      "admin.ab_tests.index.page_title" => "A/B-Tests"
      "admin.ab_tests.index.winner_badge" => "Variante %variant%"
      "admin.ab_tests.notifications.block_not_found" => "Content Block nicht gefunden."
      "admin.ab_tests.notifications.experiment_created" => "Experiment "%title%" wurde angelegt."
      "admin.ab_tests.notifications.invalid_required_fields" => "Content Block und Titel sind Pflichtfelder."
      "admin.ab_tests.notifications.invalid_status" => "Ungültiger Status."
      "admin.ab_tests.notifications.invalid_variant" => "Ungültige Variante."
      "admin.ab_tests.notifications.status_updated" => "Status aktualisiert."
      "admin.ab_tests.notifications.variant_not_found" => "Variante nicht gefunden."
      "admin.ab_tests.notifications.variant_saved" => "Variante %variant% wurde gespeichert."
      "admin.ab_tests.notifications.winner_set" => "Variante %variant% wurde als Gewinner gesetzt. Das Experiment wurde beendet."
      "admin.ab_tests.status.draft" => "Entwurf"
      "admin.ab_tests.status.ended" => "Beendet"
      "admin.ab_tests.status.paused" => "Pausiert"
      "admin.ab_tests.status.running" => "Aktiv"
      "admin.alerts.actions.acknowledge" => "Bestätigen"
      "admin.alerts.actions.cancel" => "Abbrechen"
      "admin.alerts.actions.clear_selection" => "Auswahl aufheben"
      "admin.alerts.actions.close" => "Schließen"
      "admin.alerts.actions.create" => "Erstellen"
      "admin.alerts.actions.detail" => "Detail"
      "admin.alerts.actions.help" => "Hilfe"
      "admin.alerts.actions.load_more" => "Weitere laden"
      "admin.alerts.actions.refresh" => "Aktualisieren"
      "admin.alerts.actions.resolve" => "Lösen"
      "admin.alerts.actions.test_alert" => "Test-Hinweis"
      "admin.alerts.badges.critical" => "kritisch"
      "admin.alerts.badges.info" => "Info"
      "admin.alerts.badges.status_acknowledged" => "bestätigt"
      "admin.alerts.badges.status_open" => "offen"
      "admin.alerts.badges.status_resolved" => "gelöst"
      "admin.alerts.badges.warning" => "Warnung"
      "admin.alerts.detail_modal.body_placeholder" => "Details werden beim nächsten vollständigen Ausbau einer Einzel-Detail-API angezeigt. Nutze die Tabelle für Quick-Actions."
      "admin.alerts.detail_modal.id_label" => "Alert-ID:"
      "admin.alerts.detail_modal.loading" => "Lade…"
      "admin.alerts.detail_modal.title" => "Alert-Details"
      "admin.alerts.filters.all_severities" => "Alle Schweregrade"
      "admin.alerts.filters.severity_critical" => "Kritisch"
      "admin.alerts.filters.severity_info" => "Info"
      "admin.alerts.filters.severity_warning" => "Warnung"
      "admin.alerts.filters.status_all" => "Alle"
      "admin.alerts.filters.status_open" => "Offen"
      "admin.alerts.filters.status_resolved" => "Gelöst"
      "admin.alerts.filters.status_unacknowledged" => "Nicht bestätigt"
      "admin.alerts.heading" => "Hinweis-Postfach"
      "admin.alerts.help.actions_panel.acknowledge_flag" => "<code>acknowledged</code> wird auf <code>true</code> gesetzt"
      "admin.alerts.help.actions_panel.acknowledge_hidden" => "Alert verschwindet aus „Neue Alerts“-Ansicht"
      "admin.alerts.help.actions_panel.acknowledge_intro" => "„Ich habe diesen Alert gesehen und arbeite daran.“"
      "admin.alerts.help.actions_panel.acknowledge_open" => "Alert bleibt offen (nicht gelöst)"
      "admin.alerts.help.actions_panel.acknowledge_title" => "Bestätigen"
      "admin.alerts.help.actions_panel.resolve_done" => "Alert wird als abgeschlossen markiert"
      "admin.alerts.help.actions_panel.resolve_intro" => "„Problem ist behoben.“"
      "admin.alerts.help.actions_panel.resolve_tab" => "Alert wechselt in Tab „Gelöste Alerts“"
      "admin.alerts.help.actions_panel.resolve_timestamp" => "<code>resolvedAt</code> wird gesetzt"
      "admin.alerts.help.actions_panel.resolve_title" => "Lösen"
      "admin.alerts.help.actions_panel.title" => "Bestätigen vs. Lösen"
      "admin.alerts.help.api.acknowledge_desc" => "Alert bestätigen"
      "admin.alerts.help.api.bulk_desc" => "Bulk-Aktion"
      "admin.alerts.help.api.list_desc" => "Alert-Liste (JSON)"
      "admin.alerts.help.api.page_desc" => "Alert-Verwaltungsseite"
      "admin.alerts.help.api.resolve_desc" => "Alert als gelöst markieren"
      "admin.alerts.help.api.table.function" => "Funktion"
      "admin.alerts.help.api.table.method" => "Methode"
      "admin.alerts.help.api.table.parameters" => "Parameter"
      "admin.alerts.help.api.test_desc" => "Test-Hinweis erzeugen"
      "admin.alerts.help.api.title" => "API-Endpunkte"
      "admin.alerts.help.back" => "Zurück"
      "admin.alerts.help.bulk.actions_label" => "Mögliche actions:"
      "admin.alerts.help.bulk.api_label" => "API:"
      "admin.alerts.help.bulk.body_label" => "Body:"
      "admin.alerts.help.bulk.intro" => "Mehrere Alerts gleichzeitig bearbeiten"
      "admin.alerts.help.bulk.step1" => "Alerts in der Liste auswählen (Checkbox)"
      "admin.alerts.help.bulk.step2" => "Aktion wählen: <kbd>Alle bestätigen</kbd> oder <kbd>Alle lösen</kbd>"
      "admin.alerts.help.bulk.step3" => "Bestätigen"
      "admin.alerts.help.bulk.title" => "Bulk-Aktionen"
      "admin.alerts.help.fields.acknowledged_desc" => "Wurde der Alert bestätigt?"
      "admin.alerts.help.fields.context_desc" => "Zusätzliche technische Kontextdaten"
      "admin.alerts.help.fields.created_desc" => "Alert-Erstellungszeitpunkt"
      "admin.alerts.help.fields.id" => "Alert-ID"
      "admin.alerts.help.fields.message_desc" => "Beschreibungstext des Alerts"
      "admin.alerts.help.fields.product_desc" => "Betroffenes Produkt (bei stock-Alerts)"
      "admin.alerts.help.fields.resolved_desc" => "Zeitstempel der Lösung"
      "admin.alerts.help.fields.severity_desc" => "Dringlichkeit: critical / warning / info"
      "admin.alerts.help.fields.table.description" => "Beschreibung"
      "admin.alerts.help.fields.table.field" => "Feld"
      "admin.alerts.help.fields.table.type" => "Typ"
      "admin.alerts.help.fields.title" => "Feldreferenz: AlertLog"
      "admin.alerts.help.fields.type_desc" => "Alert-Typ (low_stock, payment_failed, etc.)"
      "admin.alerts.help.navigation.actions" => "Bestätigen & Lösen"
      "admin.alerts.help.navigation.api" => "API-Endpunkte"
      "admin.alerts.help.navigation.bulk" => "Bulk-Aktionen"
      "admin.alerts.help.navigation.fields" => "Feldreferenz"
      "admin.alerts.help.navigation.overview" => "Überblick"
      "admin.alerts.help.navigation.severity" => "Severity-Stufen"
      "admin.alerts.help.navigation.test_hint" => "Test-Hinweis"
      "admin.alerts.help.navigation.title" => "Navigation"
      "admin.alerts.help.navigation.types" => "Alert-Typen"
      "admin.alerts.help.open_module" => "Zum Modul"
      "admin.alerts.help.overview.automatic_title" => "Automatisch erkannte Probleme"
      "admin.alerts.help.overview.description" => "Das <strong>Alert-System</strong> überwacht kritische Shop-Ereignisse und benachrichtigt Admins. Alerts werden in der Regel automatisch durch Import-, Feed- und Pricing-Prozesse erzeugt. Zusätzlich kann im Modul ein <strong>Test-Hinweis</strong> angelegt werden, um Anzeige und Benachrichtigung gezielt zu prüfen."
      "admin.alerts.help.overview.high_returns" => "Hohe Retourenrate"
      "admin.alerts.help.overview.low_stock" => "Niedriger Lagerbestand"
      "admin.alerts.help.overview.manage" => "Bearbeiten"
      "admin.alerts.help.overview.payment_failed" => "Zahlungsausfälle (Stripe/PayPal-Fehler)"
      "admin.alerts.help.overview.permissions_title" => "Berechtigung:"
      "admin.alerts.help.overview.stuck_orders" => "Bestellungen ohne Statusupdate > X Tage"
      "admin.alerts.help.overview.system_errors" => "Systemfehler / Exception-Logs"
      "admin.alerts.help.overview.title" => "Alerts: Überblick"
      "admin.alerts.help.overview.view" => "Anzeigen"
      "admin.alerts.help.severity.colors.blue" => "Blau"
      "admin.alerts.help.severity.colors.orange" => "Orange"
      "admin.alerts.help.severity.colors.red" => "Rot"
      "admin.alerts.help.severity.critical.action" => "Sofort"
      "admin.alerts.help.severity.critical.meaning" => "Sofortiger Handlungsbedarf, Shop-Funktion beeinträchtigt"
      "admin.alerts.help.severity.info.action" => "Bei Gelegenheit"
      "admin.alerts.help.severity.info.meaning" => "Hinweis, kein sofortiger Handlungsbedarf"
      "admin.alerts.help.severity.table.action_needed" => "Handlungsbedarf"
      "admin.alerts.help.severity.table.color" => "Farbe"
      "admin.alerts.help.severity.table.level" => "Stufe"
      "admin.alerts.help.severity.table.meaning" => "Bedeutung"
      "admin.alerts.help.severity.title" => "Severity-Stufen"
      "admin.alerts.help.severity.warning.action" => "Heute"
      "admin.alerts.help.severity.warning.meaning" => "Problem erkannt, noch keine kritische Auswirkung"
      "admin.alerts.help.test_hint.available_for" => "Verfügbar für Benutzer mit <code>ROLE_ADMIN_ALERT_MANAGE</code>"
      "admin.alerts.help.test_hint.creates_type" => "Erzeugt einen Alert vom Typ <code>manual_test</code>"
      "admin.alerts.help.test_hint.intro" => "Mit der Schaltfläche <kbd>Test-Hinweis</kbd> im Modul kann ein gezielter Prüfeintrag erzeugt werden. Das ist hilfreich, wenn die Liste leer ist und geprüft werden soll, ob Speicherung, Anzeige und globale Admin-Benachrichtigung korrekt funktionieren."
      "admin.alerts.help.test_hint.supports_severities" => "Unterstützt die Schweregrade <code>critical</code>, <code>warning</code> und <code>info</code>"
      "admin.alerts.help.test_hint.title" => "Test-Hinweis"
      "admin.alerts.help.title" => "Hilfe: System-Alerts"
      "admin.alerts.help.types.high_return_rate.description" => "Hohe Retourenrate"
      "admin.alerts.help.types.high_return_rate.trigger" => "RMA/Order-Verhältnis überschritten"
      "admin.alerts.help.types.low_stock.description" => "Niedriger Lagerbestand"
      "admin.alerts.help.types.low_stock.trigger" => "Produkt unter Mindestbestand"
      "admin.alerts.help.types.manual_test.description" => "Manueller Test-Hinweis"
      "admin.alerts.help.types.manual_test.trigger" => "Schaltfläche „Test-Hinweis“ im Alerts-Modul"
      "admin.alerts.help.types.order_stuck.description" => "Hängende Bestellung"
      "admin.alerts.help.types.order_stuck.trigger" => "Status unverändert > Schwellenwert"
      "admin.alerts.help.types.out_of_stock.description" => "Produkt ausverkauft"
      "admin.alerts.help.types.out_of_stock.trigger" => "Bestand = 0"
      "admin.alerts.help.types.payment_failed.description" => "Zahlungsfehler"
      "admin.alerts.help.types.payment_failed.trigger" => "Webhook von Stripe/PayPal"
      "admin.alerts.help.types.system_error.description" => "Systemfehler"
      "admin.alerts.help.types.system_error.trigger" => "Exception im Error-Log"
      "admin.alerts.help.types.table.description" => "Beschreibung"
      "admin.alerts.help.types.table.trigger" => "Auslöser"
      "admin.alerts.help.types.table.type" => "Typ"
      "admin.alerts.help.types.title" => "Alert-Typen"
      "admin.alerts.notifications.create_failed" => "Test-Hinweis konnte nicht erstellt werden."
      "admin.alerts.notifications.create_success" => "Test-Hinweis wurde erstellt."
      "admin.alerts.notifications.invalid_action" => "Ungültige Aktion."
      "admin.alerts.notifications.invalid_severity" => "Ungültiger Schweregrad."
      "admin.alerts.notifications.not_found" => "Hinweis nicht gefunden."
      "admin.alerts.page_title" => "Hinweis-Postfach"
      "admin.alerts.summary.count_label" => "%total% gesamt, Seite %page%/%pages%"
      "admin.alerts.summary.critical" => "Kritisch"
      "admin.alerts.summary.empty" => "Keine Hinweise gefunden."
      "admin.alerts.summary.heading" => "Hinweise"
      "admin.alerts.summary.info" => "Info"
      "admin.alerts.summary.loading" => "Lade…"
      "admin.alerts.summary.selected_suffix" => "ausgewählt"
      "admin.alerts.summary.total_open" => "Gesamt offen"
      "admin.alerts.summary.warning" => "Warnung"
      "admin.alerts.table.actions" => "Aktionen"
      "admin.alerts.table.message" => "Nachricht"
      "admin.alerts.table.no_product" => ""
      "admin.alerts.table.product" => "Produkt"
      "admin.alerts.table.severity" => "Schwere"
      "admin.alerts.table.status" => "Status"
      "admin.alerts.table.time" => "Zeit"
      "admin.alerts.table.type" => "Typ"
      "admin.alerts.test_message.critical" => "Manuell erzeugter Test-Hinweis: Kritisches Problem prüfen."
      "admin.alerts.test_message.info" => "Manuell erzeugter Test-Hinweis: Informationsmeldung prüfen."
      "admin.alerts.test_message.warning" => "Manuell erzeugter Test-Hinweis: Warnung prüfen."
      "admin.alerts.test_modal.description" => "Es wird ein manuell erzeugter Test-Hinweis angelegt, damit die Liste und die globale Admin-Benachrichtigung direkt geprüft werden können."
      "admin.alerts.test_modal.severity_label" => "Schweregrad"
      "admin.alerts.test_modal.title" => "Test-Hinweis erstellen"
      "admin.analytics.help_index.card_subtitle" => "Umsatz, Produkte, Funnel und Export"
      "admin.analytics.help_index.card_title" => "Analytics Cockpit"
      "admin.analytics.help_index.table_description" => "Umsatz, Charts, Funnel, Segmente und CSV-Export"
      "admin.analytics.help_index.table_label" => "Analytics"
      "admin.analytics.help.actions.back" => "Zurück"
      "admin.analytics.help.actions.module" => "Zum Modul"
      "admin.analytics.help.navigation.api" => "API-Endpunkte"
      "admin.analytics.help.navigation.dashboard" => "Dashboard"
      "admin.analytics.help.navigation.export" => "CSV-Export"
      "admin.analytics.help.navigation.interactions" => "Interaktions-Log"
      "admin.analytics.help.navigation.overview" => "Überblick"
      "admin.analytics.help.navigation.title" => "Navigation"
      "admin.analytics.help.page_title" => "Hilfe: Analytics Cockpit"
      "admin.analytics.help.sections.api.headers.function" => "Funktion"
      "admin.analytics.help.sections.api.headers.method" => "Methode"
      "admin.analytics.help.sections.api.headers.parameters" => "Parameter"
      "admin.analytics.help.sections.api.headers.url" => "URL"
      "admin.analytics.help.sections.api.rows.customers" => "Neue Kunden pro Tag"
      "admin.analytics.help.sections.api.rows.dashboard" => "Dashboard-Seite"
      "admin.analytics.help.sections.api.rows.export" => "CSV-Export der aktuellen Analytics-Daten"
      "admin.analytics.help.sections.api.rows.funnel" => "Funnel- und Conversion-Kennzahlen"
      "admin.analytics.help.sections.api.rows.interactions_acquisition" => "Herkunft nach Direkt, Suche, Social und Referral"
      "admin.analytics.help.sections.api.rows.interactions_event_details" => "Detailansicht pro Event mit Konto, Fehlerursache, Login-Feldern, IP, Browser, Land, Route, Pfad und Payload"
      "admin.analytics.help.sections.api.rows.interactions_summary" => "KPI-Zusammenfassung für Interaktionsdaten"
      "admin.analytics.help.sections.api.rows.interactions_technology" => "Browser-, Betriebssystem-, Geräte- und Länderverteilung"
      "admin.analytics.help.sections.api.rows.interactions_visitors" => "Besucherprofile auf Benutzer-, Session- und IP-Basis"
      "admin.analytics.help.sections.api.rows.revenue" => "Täglicher Umsatz und Bestellungen"
      "admin.analytics.help.sections.api.rows.segments" => "Segmentvergleich nach Quelle, Kategorie und Hersteller"
      "admin.analytics.help.sections.api.rows.summary" => "KPI-, Produkt- und Import-Zusammenfassung"
      "admin.analytics.help.sections.api.rows.top_products" => "Meistverkaufte Produkte"
      "admin.analytics.help.sections.api.title" => "API-Endpunkte"
      "admin.analytics.help.sections.dashboard.headers.block" => "Baustein"
      "admin.analytics.help.sections.dashboard.headers.description" => "Beschreibung"
      "admin.analytics.help.sections.dashboard.headers.source" => "Quelle"
      "admin.analytics.help.sections.dashboard.rows.customers_chart.block" => "Neukunden-Chart"
      "admin.analytics.help.sections.dashboard.rows.customers_chart.description" => "Zeigt neue Kunden pro Tag im gewählten Zeitraum."
      "admin.analytics.help.sections.dashboard.rows.funnel.block" => "Conversion Funnel"
      "admin.analytics.help.sections.dashboard.rows.funnel.description" => "Verdichtet Cart- und Checkout-Kennzahlen inklusive Conversion- und Abbruchraten."
      "admin.analytics.help.sections.dashboard.rows.import_overview.block" => "Import-Übersicht"
      "admin.analytics.help.sections.dashboard.rows.import_overview.description" => "Zeigt Importanzahl, Erfolgsquote und den letzten Importzeitpunkt."
      "admin.analytics.help.sections.dashboard.rows.kpis.block" => "KPI-Tiles"
      "admin.analytics.help.sections.dashboard.rows.kpis.description" => "Zeigen Gesamtumsatz, Umsatz im aktiven Zeitraum, Bestellungen, Ø Bestellwert, Kunden und aktive Produkte."
      "admin.analytics.help.sections.dashboard.rows.period_selector.block" => "Zeitraum und Reload"
      "admin.analytics.help.sections.dashboard.rows.period_selector.description" => "Schaltet zwischen 7, 30 und 90 Tagen um und lädt alle Widgets neu."
      "admin.analytics.help.sections.dashboard.rows.product_status.block" => "Produkt-Status"
      "admin.analytics.help.sections.dashboard.rows.product_status.description" => "Listet Gesamtbestand, aktive Produkte, niedrigen Bestand, Ausverkäufe und Durchschnittspreis."
      "admin.analytics.help.sections.dashboard.rows.revenue_chart.block" => "Umsatz-Chart"
      "admin.analytics.help.sections.dashboard.rows.revenue_chart.description" => "Stellt Umsatz und Bestellungen pro Tag im gewählten Zeitraum dar."
      "admin.analytics.help.sections.dashboard.rows.segments.block" => "Segmente"
      "admin.analytics.help.sections.dashboard.rows.segments.description" => "Vergleicht Quelle, Kategorie und Hersteller anhand Units, Umsatz und Deckungsbeitrag."
      "admin.analytics.help.sections.dashboard.rows.top_products.block" => "Top-Produkte"
      "admin.analytics.help.sections.dashboard.rows.top_products.description" => "Rangliste der meistverkauften Produkte mit Menge und Umsatz."
      "admin.analytics.help.sections.dashboard.title" => "Dashboard-Bausteine"
      "admin.analytics.help.sections.export.headers.content" => "Inhalt"
      "admin.analytics.help.sections.export.headers.type" => "type-Parameter"
      "admin.analytics.help.sections.export.intro" => "Der CSV-Export nutzt den aktuell gewählten Zeitraum für Umsatz- und Kundenexporte. Produkt-Exporte ziehen immer die Top-Produkte."
      "admin.analytics.help.sections.export.rows.customers" => "Neue Kunden pro Tag für den aktiven Zeitraum."
      "admin.analytics.help.sections.export.rows.products" => "Top-Produkte mit Verkaufsmenge und Umsatz."
      "admin.analytics.help.sections.export.rows.revenue" => "Tägliche Umsatz- und Bestellzahlen für den aktiven Zeitraum."
      "admin.analytics.help.sections.export.title" => "CSV-Export"
      "admin.analytics.help.sections.interactions.headers.block" => "Baustein"
      "admin.analytics.help.sections.interactions.headers.description" => "Beschreibung"
      "admin.analytics.help.sections.interactions.headers.source" => "Quelle"
      "admin.analytics.help.sections.interactions.intro" => "Das Interaktions-Log erfasst Seitenaufrufe, UI-Events, Login-Erfolge, Login-Fehlschläge und Fehler systemweit inklusive Besucherprofilen, IP-/Session-Bezug, Referrer, Browser, Betriebssystem, Geräten und Ländern."
      "admin.analytics.help.sections.interactions.rows.capture.block" => "Event-Erfassung"
      "admin.analytics.help.sections.interactions.rows.capture.description" => "Sammelt Frontend-Interaktionen sowie Request/Exception-Events aus Backend und Frontend inklusive IP, Session, Referrer, Browser, Betriebssystem, Gerät und Land (GeoLite2 falls vorhanden)."
      "admin.analytics.help.sections.interactions.rows.cleanup.block" => "Retention-Cleanup"
      "admin.analytics.help.sections.interactions.rows.cleanup.description" => "Bereinigt alte Datensätze anhand der definierten Aufbewahrungsregeln."
      "admin.analytics.help.sections.interactions.rows.page.block" => "Interaktionsseite"
      "admin.analytics.help.sections.interactions.rows.page.description" => "Zeigt KPIs, Top-Seiten, Top-Events, Statuscodes und aktuelle Fehler im gewählten Zeitraum. Top-Events lassen sich per Detailansicht bis auf Konto, Fehlerursache, Login-Felder, IP, Browser, Land, Route, Pfad und Payload aufklappen. Für öffentliche IPs steht ein XS-Button zum Kopieren eines Sperrbefehls bereit."
      "admin.analytics.help.sections.interactions.rows.profiles.block" => "Besucherprofile"
      "admin.analytics.help.sections.interactions.rows.profiles.description" => "Verdichtet Nutzer nach Benutzerkennung, Session und IP zu auswertbaren Besucherprofilen mit Einstiegs-/Ausstiegspfaden, aktiver Zeit und Conversion-Hinweisen."
      "admin.analytics.help.sections.interactions.rows.sources.block" => "Herkunft & Technik"
      "admin.analytics.help.sections.interactions.rows.sources.description" => "Zeigt Direktaufrufe, Suchmaschinen, Social, Referral, Browser, Betriebssysteme, Geräte und Länder."
      "admin.analytics.help.sections.interactions.title" => "Interaktions-Log (Frontend & Backend)"
      "admin.analytics.help.sections.overview.ajax" => "Alle Inhalte werden per AJAX geladen. Der Zeitraumsschalter oben rechts aktualisiert Dashboard, Charts, Funnel und Segmente gemeinsam."
      "admin.analytics.help.sections.overview.lead" => "Das Analytics Cockpit bündelt Umsatz, Kunden, Produkt- und Funnel-Daten in einer read-only Dashboard-Ansicht mit JSON-Endpunkten."
      "admin.analytics.help.sections.overview.permissions_label" => "Berechtigung:"
      "admin.analytics.help.sections.overview.title" => "Überblick"
      "admin.analytics.index.actions.export" => "CSV-Export"
      "admin.analytics.index.actions.help" => "Hilfe"
      "admin.analytics.index.actions.help_title" => "Hilfe zu diesem Modul"
      "admin.analytics.index.actions.interactions" => "Interaktions-Log"
      "admin.analytics.index.actions.refresh_title" => "Daten neu laden"
      "admin.analytics.index.api_errors_title" => "API-Fehler im Cockpit"
      "admin.analytics.index.charts.customers_dataset" => "Neue Kunden"
      "admin.analytics.index.charts.customers_title" => "Neue Kunden"
      "admin.analytics.index.charts.orders_dataset" => "Bestellungen"
      "admin.analytics.index.charts.revenue_dataset" => "Umsatz (€)"
      "admin.analytics.index.charts.revenue_title" => "Umsatz-Verlauf"
      "admin.analytics.index.empty" => "Keine Daten"
      "admin.analytics.index.errors.network_parsing" => "Netzwerk/Parsing"
      "admin.analytics.index.errors.request_failed" => "Anfrage fehlgeschlagen"
      "admin.analytics.index.errors.unknown" => "Unbekannter Fehler"
      "admin.analytics.index.export.customers" => "Neukunden (aktiver Zeitraum)"
      "admin.analytics.index.export.products" => "Top-Produkte"
      "admin.analytics.index.export.revenue" => "Umsatz (aktiver Zeitraum)"
      "admin.analytics.index.funnel.rows.abandonment_rate" => "Abbruchrate"
      "admin.analytics.index.funnel.rows.cart_conversion" => "Cart-Conversion"
      "admin.analytics.index.funnel.rows.carts_abandoned" => "Abgebrochene Carts"
      "admin.analytics.index.funnel.rows.carts_converted" => "Konvertierte Carts"
      "admin.analytics.index.funnel.rows.carts_total" => "Carts gesamt"
      "admin.analytics.index.funnel.rows.carts_with_value" => "Carts mit Wert"
      "admin.analytics.index.funnel.rows.checkout_conversion" => "Checkout-Conversion"
      "admin.analytics.index.funnel.rows.orders" => "Bestellungen"
      "admin.analytics.index.funnel.title" => "Conversion Funnel"
      "admin.analytics.index.import_overview.rows.created" => "Produkte erstellt"
      "admin.analytics.index.import_overview.rows.failed" => "Fehlgeschlagen"
      "admin.analytics.index.import_overview.rows.last_import" => "Letzter Import"
      "admin.analytics.index.import_overview.rows.success" => "Erfolgreich"
      "admin.analytics.index.import_overview.rows.total" => "Importe gesamt"
      "admin.analytics.index.import_overview.rows.updated" => "Produkte aktualisiert"
      "admin.analytics.index.import_overview.title" => "Import-Übersicht"
      "admin.analytics.index.kpis.active_products" => "Produkte aktiv"
      "admin.analytics.index.kpis.avg_order" => "Ø Bestellwert"
      "admin.analytics.index.kpis.customers" => "Kunden"
      "admin.analytics.index.kpis.orders" => "Bestellungen"
      "admin.analytics.index.kpis.period_revenue" => "Umsatz"
      "admin.analytics.index.kpis.total_revenue" => "Umsatz gesamt"
      "admin.analytics.index.load_failed" => "Daten konnten nicht geladen werden"
      "admin.analytics.index.loading" => "Lädt..."
      "admin.analytics.index.no_data_export" => "Keine Daten vorhanden"
      "admin.analytics.index.page_title" => "Analytics Cockpit"
      "admin.analytics.index.periods.day_30" => "30 Tage"
      "admin.analytics.index.periods.day_7" => "7 Tage"
      "admin.analytics.index.periods.day_90" => "90 Tage"
      "admin.analytics.index.periods.label" => "%days% Tage"
      "admin.analytics.index.product_status.rows.active" => "Aktiv"
      "admin.analytics.index.product_status.rows.avg_price" => "Ø Preis"
      "admin.analytics.index.product_status.rows.inactive" => "Inaktiv"
      "admin.analytics.index.product_status.rows.low_stock" => "Niedriger Bestand (≤5)"
      "admin.analytics.index.product_status.rows.out_of_stock" => "Ausverkauft"
      "admin.analytics.index.product_status.rows.total" => "Gesamt"
      "admin.analytics.index.product_status.title" => "Produkt-Status"
      "admin.analytics.index.segments.headers.category" => "Kategorie"
      "admin.analytics.index.segments.headers.manufacturer" => "Hersteller"
      "admin.analytics.index.segments.headers.margin" => "DB"
      "admin.analytics.index.segments.headers.margin_rate" => "DB %"
      "admin.analytics.index.segments.headers.revenue" => "Umsatz"
      "admin.analytics.index.segments.headers.source" => "Quelle"
      "admin.analytics.index.segments.headers.units" => "Units"
      "admin.analytics.index.segments.title" => "Segmentierung: Quelle / Kategorie / Hersteller"
      "admin.analytics.index.top_products.headers.product" => "Produkt"
      "admin.analytics.index.top_products.headers.rank" => "#"
      "admin.analytics.index.top_products.headers.revenue" => "Umsatz"
      "admin.analytics.index.top_products.headers.sold" => "Verkauft"
      "admin.analytics.index.top_products.title" => "Top-Produkte nach Verkäufen"
      "admin.analytics.index.values.not_available" => ""
      "admin.analytics.interactions.acquisition.headers.label" => "Detail"
      "admin.analytics.interactions.acquisition.headers.sessions" => "Sessions"
      "admin.analytics.interactions.acquisition.headers.source" => "Quelle"
      "admin.analytics.interactions.acquisition.headers.views" => "Aufrufe"
      "admin.analytics.interactions.acquisition.headers.visitors" => "Besucher"
      "admin.analytics.interactions.actions.cockpit" => "Zum Analytics-Cockpit"
      "admin.analytics.interactions.actions.help" => "Hilfe"
      "admin.analytics.interactions.actions.refresh" => "Daten neu laden"
      "admin.analytics.interactions.areas.all" => "Alle Bereiche"
      "admin.analytics.interactions.areas.backend" => "Backend"
      "admin.analytics.interactions.areas.frontend" => "Frontend"
      "admin.analytics.interactions.event_detail.actions.block_ip" => "IP sperren"
      "admin.analytics.interactions.event_detail.actions.block_ip_confirm" => "Sperrbefehl für IP %ip% in die Zwischenablage kopieren?"
      "admin.analytics.interactions.event_detail.actions.block_ip_copied" => "Sperrbefehl kopiert: %cmd%"
      "admin.analytics.interactions.event_detail.actions.block_ip_copy_failed" => "Kopieren fehlgeschlagen. Befehl: %cmd%"
      "admin.analytics.interactions.event_detail.close" => "Schließen"
      "admin.analytics.interactions.event_detail.failure_types.account_unverified" => "Konto nicht verifiziert"
      "admin.analytics.interactions.event_detail.failure_types.authentication_failed" => "Authentifizierung fehlgeschlagen"
      "admin.analytics.interactions.event_detail.failure_types.csrf_token_invalid" => "CSRF-Token ungültig"
      "admin.analytics.interactions.event_detail.failure_types.invalid_credentials" => "Ungültige Zugangsdaten"
      "admin.analytics.interactions.event_detail.failure_types.missing_identifier" => "Login-Konto fehlt"
      "admin.analytics.interactions.event_detail.failure_types.missing_password" => "Passwort fehlt"
      "admin.analytics.interactions.event_detail.failure_types.rate_limited" => "Rate-Limit aktiv"
      "admin.analytics.interactions.event_detail.headers.account" => "Konto / Versuch"
      "admin.analytics.interactions.event_detail.headers.action" => "Aktion"
      "admin.analytics.interactions.event_detail.headers.credential_meta" => "Login-Felder"
      "admin.analytics.interactions.event_detail.headers.failure_reason" => "Fehlerursache"
      "admin.analytics.interactions.event_detail.headers.ip_country" => "IP / Land"
      "admin.analytics.interactions.event_detail.headers.path" => "Methode / Route / Pfad"
      "admin.analytics.interactions.event_detail.headers.payload" => "Payload / Details"
      "admin.analytics.interactions.event_detail.headers.source" => "Quelle"
      "admin.analytics.interactions.event_detail.headers.status" => "Status"
      "admin.analytics.interactions.event_detail.headers.tech" => "Browser / System / Gerät"
      "admin.analytics.interactions.event_detail.headers.when" => "Zeitpunkt"
      "admin.analytics.interactions.event_detail.meta.password_provided_no" => "Passwort: nein"
      "admin.analytics.interactions.event_detail.meta.password_provided_yes" => "Passwort: ja"
      "admin.analytics.interactions.event_detail.no_payload" => "Keine Zusatzdaten"
      "admin.analytics.interactions.event_detail.summary.count" => "Vorkommen"
      "admin.analytics.interactions.event_detail.summary.first_seen" => "Erstes Auftreten"
      "admin.analytics.interactions.event_detail.summary.ips" => "IPs"
      "admin.analytics.interactions.event_detail.summary.last_seen" => "Letztes Auftreten"
      "admin.analytics.interactions.event_detail.summary.users" => "Nutzer"
      "admin.analytics.interactions.event_detail.summary.visitors" => "Besucher"
      "admin.analytics.interactions.event_detail.title" => "Event-Details"
      "admin.analytics.interactions.event_detail.title_prefix" => "Event-Details"
      "admin.analytics.interactions.filters.area" => "Bereich"
      "admin.analytics.interactions.kpis.errors" => "Fehler-Events"
      "admin.analytics.interactions.kpis.page_views" => "Seitenaufrufe"
      "admin.analytics.interactions.kpis.total_events" => "Events gesamt"
      "admin.analytics.interactions.kpis.unique_sessions" => "Eindeutige Sessions"
      "admin.analytics.interactions.kpis.unique_visitors" => "Eindeutige Besucher"
      "admin.analytics.interactions.loading" => "Lädt..."
      "admin.analytics.interactions.no_data" => "Keine Daten"
      "admin.analytics.interactions.page_title" => "Interaktions-Log & Nutzungsanalyse"
      "admin.analytics.interactions.periods.day_30" => "30 Tage"
      "admin.analytics.interactions.periods.day_7" => "7 Tage"
      "admin.analytics.interactions.periods.day_90" => "90 Tage"
      "admin.analytics.interactions.quality.avg_duration" => "Ø Request-Dauer"
      "admin.analytics.interactions.quality.backend_events" => "Backend-Events"
      "admin.analytics.interactions.quality.bot_events" => "Bot-Events"
      "admin.analytics.interactions.quality.direct_visits" => "Direkte Einstiege"
      "admin.analytics.interactions.quality.frontend_events" => "Frontend-Events"
      "admin.analytics.interactions.quality.referral_visits" => "Referral-Einstiege"
      "admin.analytics.interactions.quality.search_visits" => "Suchmaschinen-Einstiege"
      "admin.analytics.interactions.quality.social_visits" => "Social-Einstiege"
      "admin.analytics.interactions.quality.unique_ips" => "Eindeutige IPs"
      "admin.analytics.interactions.quality.unique_sessions" => "Eindeutige Sessions"
      "admin.analytics.interactions.quality.unique_users" => "Eindeutige Nutzer"
      "admin.analytics.interactions.recent_errors.headers.area" => "Bereich"
      "admin.analytics.interactions.recent_errors.headers.country" => "Land"
      "admin.analytics.interactions.recent_errors.headers.event" => "Event"
      "admin.analytics.interactions.recent_errors.headers.ip" => "IP"
      "admin.analytics.interactions.recent_errors.headers.path" => "Pfad"
      "admin.analytics.interactions.recent_errors.headers.source" => "Quelle"
      "admin.analytics.interactions.recent_errors.headers.status" => "Status"
      "admin.analytics.interactions.recent_errors.headers.tech" => "Technik"
      "admin.analytics.interactions.recent_errors.headers.visitor" => "Besucher"
      "admin.analytics.interactions.recent_errors.headers.when" => "Zeitpunkt"
      "admin.analytics.interactions.request_failed" => "Anfrage fehlgeschlagen"
      "admin.analytics.interactions.sections.acquisition" => "Herkunft & Einstiege"
      "admin.analytics.interactions.sections.quality" => "Qualitätsindikatoren"
      "admin.analytics.interactions.sections.recent_errors" => "Letzte Fehler"
      "admin.analytics.interactions.sections.status_codes" => "HTTP Statuscodes"
      "admin.analytics.interactions.sections.technology" => "Technik & Länder"
      "admin.analytics.interactions.sections.top_events" => "Top Interaktionen"
      "admin.analytics.interactions.sections.top_pages" => "Top Seiten"
      "admin.analytics.interactions.sections.views_chart" => "Seitenaufrufe im Zeitverlauf"
      "admin.analytics.interactions.sections.visitors" => "Besucherprofile"
      "admin.analytics.interactions.sources.direct" => "Direkt"
      "admin.analytics.interactions.sources.internal" => "Intern"
      "admin.analytics.interactions.sources.referral" => "Referral"
      "admin.analytics.interactions.sources.search" => "Suchmaschine"
      "admin.analytics.interactions.sources.social" => "Social"
      "admin.analytics.interactions.sources.unknown" => "Unbekannt"
      "admin.analytics.interactions.status_codes.headers.code" => "Statuscode"
      "admin.analytics.interactions.status_codes.headers.count" => "Anzahl"
      "admin.analytics.interactions.technology.browsers" => "Browser"
      "admin.analytics.interactions.technology.countries" => "Länder"
      "admin.analytics.interactions.technology.devices" => "Geräte"
      "admin.analytics.interactions.technology.headers.label" => "Kategorie"
      "admin.analytics.interactions.technology.headers.views" => "Aufrufe"
      "admin.analytics.interactions.technology.headers.visitors" => "Besucher"
      "admin.analytics.interactions.technology.operating_systems" => "Betriebssysteme"
      "admin.analytics.interactions.top_events.actions.details" => "Details"
      "admin.analytics.interactions.top_events.headers.actions" => "Aktion"
      "admin.analytics.interactions.top_events.headers.count" => "Anzahl"
      "admin.analytics.interactions.top_events.headers.event_name" => "Event"
      "admin.analytics.interactions.top_events.headers.ips" => "IPs"
      "admin.analytics.interactions.top_events.headers.last_seen" => "Letztes Auftreten"
      "admin.analytics.interactions.top_events.headers.users" => "Nutzer"
      "admin.analytics.interactions.top_pages.headers.avg_duration" => "Ø Dauer"
      "admin.analytics.interactions.top_pages.headers.path" => "Pfad"
      "admin.analytics.interactions.top_pages.headers.sessions" => "Sessions"
      "admin.analytics.interactions.top_pages.headers.views" => "Aufrufe"
      "admin.analytics.interactions.top_pages.headers.visitors" => "Besucher"
      "admin.analytics.interactions.units.ms" => "ms"
      "admin.analytics.interactions.units.percent" => "%"
      "admin.analytics.interactions.units.sec" => "s"
      "admin.analytics.interactions.visitors.headers.active_time" => "Aktive Zeit"
      "admin.analytics.interactions.visitors.headers.conversion_rate" => "Conversion-Rate"
      "admin.analytics.interactions.visitors.headers.conversions" => "Conversion-Hits"
      "admin.analytics.interactions.visitors.headers.country" => "Land"
      "admin.analytics.interactions.visitors.headers.events" => "Events"
      "admin.analytics.interactions.visitors.headers.first_seen" => "Erste Aktivität"
      "admin.analytics.interactions.visitors.headers.ip" => "IP"
      "admin.analytics.interactions.visitors.headers.last_seen" => "Letzte Aktivität"
      "admin.analytics.interactions.visitors.headers.pages" => "Seitenaufrufe"
      "admin.analytics.interactions.visitors.headers.paths" => "Einstieg -> Letzte Seite"
      "admin.analytics.interactions.visitors.headers.sessions" => "Sessions"
      "admin.analytics.interactions.visitors.headers.source" => "Quelle"
      "admin.analytics.interactions.visitors.headers.tech" => "Technik"
      "admin.analytics.interactions.visitors.headers.user" => "Benutzer"
      "admin.analytics.interactions.visitors.headers.visitor" => "Besucher-Key"
      "admin.analytics.nav.cockpit" => "Cockpit"
      "admin.analytics.nav.group" => "Analytics"
      "admin.apartment.form.create_title" => "Neue Wohnung"
      "admin.apartment.form.edit_title" => "Wohnung bearbeiten"
      "admin.apartment.form.fields.active" => "Aktiv"
      "admin.apartment.form.fields.capacity" => "Kapazität (Personen)"
      "admin.apartment.form.fields.color" => "Farbe im Kalender"
      "admin.apartment.form.fields.description" => "Beschreibung"
      "admin.apartment.form.fields.name" => "Name"
      "admin.apartment.form.list_title" => "Wohnungen"
      "admin.apartment.list.columns.actions" => "Aktionen"
      "admin.apartment.list.columns.active" => "Aktiv"
      "admin.apartment.list.columns.capacity" => "Kapazität"
      "admin.apartment.list.columns.color" => "Farbe"
      "admin.apartment.list.columns.created" => "Erstellt"
      "admin.apartment.list.columns.description" => "Beschreibung"
      "admin.apartment.list.columns.name" => "Name"
      "admin.apartment.list.create" => "Neue Wohnung"
      "admin.apartment.list.delete_message" => "Wohnung "%name%" wirklich löschen?"
      "admin.apartment.list.empty" => "Keine Wohnungen vorhanden."
      "admin.apartment.list.panel_title" => "Wohnungsliste"
      "admin.apartment.list.subtitle" => "Ferienwohnungen und Einheiten verwalten."
      "admin.apartment.list.title" => "Wohnungen"
      "admin.apartment.list.values.no" => "Nein"
      "admin.apartment.list.values.yes" => "Ja"
      "admin.apartment.notifications.created" => "Wohnung wurde angelegt."
      "admin.apartment.notifications.deleted" => "Wohnung wurde gelöscht."
      "admin.apartment.notifications.updated" => "Wohnung wurde gespeichert."
      "admin.b2b.help_index.card_subtitle" => "Gruppen, Sonderpreise und Freigaben"
      "admin.b2b.help_index.card_title" => "B2B-Verwaltung"
      "admin.b2b.help_index.table_description" => "Kundengruppen, Gruppenpreise und Genehmigungen"
      "admin.b2b.help_index.table_label" => "B2B"
      "admin.b2b.help.actions.back" => "Zurück"
      "admin.b2b.help.actions.module" => "Zum Modul"
      "admin.b2b.help.api.rows.group_edit" => "Bestehende Kundengruppe aktualisieren."
      "admin.b2b.help.api.rows.group_new" => "Neue Kundengruppe anlegen."
      "admin.b2b.help.api.rows.index" => "B2B-Übersicht mit Gruppen, Preisen, Anfragen und Bestellungen."
      "admin.b2b.help.api.rows.order_approve" => "Bestellung freigeben."
      "admin.b2b.help.api.rows.order_reject" => "Bestellung ablehnen."
      "admin.b2b.help.api.rows.price_delete" => "Gruppenpreis löschen."
      "admin.b2b.help.api.rows.price_save" => "Gruppenpreis speichern oder überschreiben."
      "admin.b2b.help.api.rows.quote_status" => "Status einer Angebotsanfrage setzen."
      "admin.b2b.help.api.table.function" => "Funktion"
      "admin.b2b.help.api.table.method" => "Methode"
      "admin.b2b.help.api.table.url" => "URL"
      "admin.b2b.help.api.title" => "API-Endpunkte"
      "admin.b2b.help.fields.customer_group.rows.created_at" => "Zeitpunkt der Gruppenerstellung."
      "admin.b2b.help.fields.customer_group.rows.default_net_view" => "Steuert, ob Kunden der Gruppe standardmäßig Nettopreise sehen."
      "admin.b2b.help.fields.customer_group.rows.discount_percent" => "Standardrabatt in Prozent mit Begrenzung auf 0 bis 90."
      "admin.b2b.help.fields.customer_group.rows.is_active" => "Aktiviert oder deaktiviert die Gruppe."
      "admin.b2b.help.fields.customer_group.rows.name" => "Eindeutiger Name der Kundengruppe."
      "admin.b2b.help.fields.customer_group.title" => "CustomerGroup"
      "admin.b2b.help.fields.product_group_price.rows.customer_group" => "Verknüpft die Preisüberschreibung mit einer Kundengruppe."
      "admin.b2b.help.fields.product_group_price.rows.price" => "Gespeicherter Gruppenpreis für diese Produkt-Gruppen-Kombination."
      "admin.b2b.help.fields.product_group_price.rows.product" => "Verknüpft die Preisüberschreibung mit einem Produkt."
      "admin.b2b.help.fields.product_group_price.rows.updated_at" => "Wird bei jeder Preisänderung aktualisiert."
      "admin.b2b.help.fields.product_group_price.title" => "ProductGroupPrice"
      "admin.b2b.help.fields.quote_request.rows.company_name" => "Firmenname des Anfragenden."
      "admin.b2b.help.fields.quote_request.rows.contact_name" => "Name der Kontaktperson."
      "admin.b2b.help.fields.quote_request.rows.created_at" => "Eingangszeitpunkt der Anfrage."
      "admin.b2b.help.fields.quote_request.rows.email" => "E-Mail-Adresse für Rückfragen und Zuordnung."
      "admin.b2b.help.fields.quote_request.rows.message" => "Freitext der Anfrage."
      "admin.b2b.help.fields.quote_request.rows.phone" => "Optionale Telefonnummer."
      "admin.b2b.help.fields.quote_request.rows.requested_group" => "Optional gewünschte Ziel-Kundengruppe."
      "admin.b2b.help.fields.quote_request.rows.status" => "Aktueller Bearbeitungsstatus der Anfrage."
      "admin.b2b.help.fields.quote_request.rows.updated_at" => "Zeitpunkt der letzten Statusänderung."
      "admin.b2b.help.fields.quote_request.title" => "B2BQuoteRequest"
      "admin.b2b.help.fields.table.description" => "Beschreibung"
      "admin.b2b.help.fields.table.field" => "Feld"
      "admin.b2b.help.fields.table.type" => "Typ"
      "admin.b2b.help.fields.title" => "Feldreferenz"
      "admin.b2b.help.fields.types.boolean" => "Boolean"
      "admin.b2b.help.fields.types.datetime" => "Datum/Zeit"
      "admin.b2b.help.fields.types.decimal" => "Dezimal"
      "admin.b2b.help.fields.types.relation" => "Relation"
      "admin.b2b.help.fields.types.text" => "Text"
      "admin.b2b.help.groups.assignment_field" => "im Feld"
      "admin.b2b.help.groups.assignment_label" => "Kunden einer Gruppe zuweisen:"
      "admin.b2b.help.groups.assignment_text" => "Im Modul Shop-Benutzer unter"
      "admin.b2b.help.groups.note" => "Der Gruppenrabatt ist der Standard für diese Gruppe. Produktspezifische Gruppenpreise überschreiben ihn."
      "admin.b2b.help.groups.steps_title" => "Schritt für Schritt: Kundengruppe anlegen"
      "admin.b2b.help.groups.steps.five" => "Gruppe speichern und anschließend bei Bedarf Kunden zuordnen."
      "admin.b2b.help.groups.steps.four" => "Optional defaultNetView aktivieren, damit Kunden Nettopreise sehen."
      "admin.b2b.help.groups.steps.one" => "Im Modul B2B die Aktion "Neue Kundengruppe" verwenden."
      "admin.b2b.help.groups.steps.three" => "discountPercent als Standardrabatt in Prozent festlegen."
      "admin.b2b.help.groups.steps.two" => "Name der Gruppe eintragen, zum Beispiel Händler Premium."
      "admin.b2b.help.groups.title" => "Kundengruppen verwalten"
      "admin.b2b.help.navigation.api" => "API-Endpunkte"
      "admin.b2b.help.navigation.fields" => "Feldreferenz"
      "admin.b2b.help.navigation.groups" => "Kundengruppen"
      "admin.b2b.help.navigation.orders" => "Bestellfreigaben"
      "admin.b2b.help.navigation.overview" => "Überblick"
      "admin.b2b.help.navigation.prices" => "Gruppenpreise"
      "admin.b2b.help.navigation.quotes" => "Angebotsanfragen"
      "admin.b2b.help.navigation.title" => "Navigation"
      "admin.b2b.help.navigation.workflow" => "Workflow"
      "admin.b2b.help.orders.approve_label" => "Freigeben:"
      "admin.b2b.help.orders.approve_text" => "setzt den Status auf approved und füllt approvedBy sowie approvedAt."
      "admin.b2b.help.orders.intro" => "Offene B2B-Bestellungen erscheinen mit dem Status pending und können im Admin freigegeben oder abgelehnt werden."
      "admin.b2b.help.orders.reject_label" => "Ablehnen:"
      "admin.b2b.help.orders.reject_text" => "setzt den Status auf rejected und dokumentiert ebenfalls den Bearbeitungszeitpunkt."
      "admin.b2b.help.orders.title" => "Bestell-Freigabe"
      "admin.b2b.help.overview.cards.groups_text" => "Rabattstufen und Nettoansicht für unterschiedliche B2B-Segmente."
      "admin.b2b.help.overview.cards.groups_title" => "Kundengruppen"
      "admin.b2b.help.overview.cards.prices_text" => "Produktspezifische Sonderpreise pro Kundengruppe."
      "admin.b2b.help.overview.cards.prices_title" => "Gruppenpreise"
      "admin.b2b.help.overview.cards.workflow_text" => "Angebotsanfragen prüfen und Bestellungen freigeben oder ablehnen."
      "admin.b2b.help.overview.cards.workflow_title" => "Anfragen & Freigaben"
      "admin.b2b.help.overview.intro" => "Das B2B-Modul erweitert den Shop um Geschäftskunden-Funktionen und bündelt Gruppenverwaltung, Sonderpreise sowie Freigaben in einer Oberfläche."
      "admin.b2b.help.overview.permission_label" => "Berechtigung:"
      "admin.b2b.help.overview.title" => "B2B-System: Überblick"
      "admin.b2b.help.page_title" => "Hilfe: B2B-Verwaltung"
      "admin.b2b.help.prices.intro" => "Gruppenpreise überschreiben den allgemeinen Gruppenrabatt für ein konkretes Produkt und eine konkrete Kundengruppe."
      "admin.b2b.help.prices.priority" => "Priorität: Gruppenpreis pro Produkt vor Gruppenrabatt vor Standard-Produktpreis."
      "admin.b2b.help.prices.steps.five" => "Bestehende Preisüberschreibungen lassen sich darunter prüfen und löschen."
      "admin.b2b.help.prices.steps.four" => "Speichern, damit der Preis für alle Mitglieder dieser Gruppe gilt."
      "admin.b2b.help.prices.steps.one" => "Im Bereich "Gruppenpreis setzen" zuerst ein Produkt suchen oder auswählen."
      "admin.b2b.help.prices.steps.three" => "Den Zielpreis als Bruttopreis eintragen."
      "admin.b2b.help.prices.steps.two" => "Danach die gewünschte Kundengruppe auswählen."
      "admin.b2b.help.prices.title" => "Produktspezifische Gruppenpreise"
      "admin.b2b.help.quotes.intro" => "B2B-Kunden können über den Shop Angebotsanfragen senden. Im Admin können diese Anfragen geprüft und in einen Zielstatus gesetzt werden."
      "admin.b2b.help.quotes.params_label" => "Parameter:"
      "admin.b2b.help.quotes.params_text" => "als Zielstatus der Anfrage."
      "admin.b2b.help.quotes.route_label" => "Route:"
      "admin.b2b.help.quotes.rows.approved.action" => "Kunde kann weiter im B2B-Prozess geführt werden."
      "admin.b2b.help.quotes.rows.approved.meaning" => "Anfrage freigegeben."
      "admin.b2b.help.quotes.rows.in_review.action" => "Genehmigen oder ablehnen."
      "admin.b2b.help.quotes.rows.in_review.meaning" => "Die Anfrage wird aktuell bearbeitet."
      "admin.b2b.help.quotes.rows.open.action" => "Zur Prüfung übernehmen."
      "admin.b2b.help.quotes.rows.open.meaning" => "Neu eingegangen und noch nicht geprüft."
      "admin.b2b.help.quotes.rows.rejected.action" => "Kunde bleibt ohne B2B-Freigabe."
      "admin.b2b.help.quotes.rows.rejected.meaning" => "Anfrage abgelehnt."
      "admin.b2b.help.quotes.table.admin_action" => "Admin-Aktion"
      "admin.b2b.help.quotes.table.meaning" => "Bedeutung"
      "admin.b2b.help.quotes.table.status" => "Status"
      "admin.b2b.help.quotes.title" => "Angebotsanfragen"
      "admin.b2b.help.workflow.intro" => "Typischer Ablauf im B2B-Modul von der Anfrage bis zur Bestellentscheidung:"
      "admin.b2b.help.workflow.steps.four" => "Offene Bestellungen prüfen und freigeben oder ablehnen."
      "admin.b2b.help.workflow.steps.one" => "Kundengruppe definieren und Standardrabatt konfigurieren."
      "admin.b2b.help.workflow.steps.three" => "Angebotsanfragen sichten und den B2B-Status des Kunden aktualisieren."
      "admin.b2b.help.workflow.steps.two" => "Bei Bedarf produktbezogene Gruppenpreise ergänzen."
      "admin.b2b.help.workflow.title" => "Workflow"
      "admin.b2b.index.approval_orders.actions.approve" => "Freigeben"
      "admin.b2b.index.approval_orders.actions.reject" => "Ablehnen"
      "admin.b2b.index.approval_orders.table.action" => "Aktion"
      "admin.b2b.index.approval_orders.table.customer" => "Kunde"
      "admin.b2b.index.approval_orders.table.empty" => "Keine offenen Freigaben."
      "admin.b2b.index.approval_orders.table.id" => "ID"
      "admin.b2b.index.approval_orders.table.total" => "Gesamt"
      "admin.b2b.index.approval_orders.title" => "Bestellfreigaben"
      "admin.b2b.index.approval_orders.values.none" => "-"
      "admin.b2b.index.common.cancel" => "Abbrechen"
      "admin.b2b.index.common.delete" => "Löschen"
      "admin.b2b.index.common.save" => "Speichern"
      "admin.b2b.index.delete_modal.title" => "Löschen bestätigen"
      "admin.b2b.index.existing_prices.delete_confirm" => "Gruppenpreis für "%product%" wirklich löschen?"
      "admin.b2b.index.existing_prices.table.action" => "Aktion"
      "admin.b2b.index.existing_prices.table.empty" => "Noch keine Gruppenpreise vorhanden."
      "admin.b2b.index.existing_prices.table.group" => "Kundengruppe"
      "admin.b2b.index.existing_prices.table.id" => "#"
      "admin.b2b.index.existing_prices.table.price" => "Preis (Brutto)"
      "admin.b2b.index.existing_prices.table.product" => "Produkt"
      "admin.b2b.index.existing_prices.table.updated" => "Zuletzt geändert"
      "admin.b2b.index.existing_prices.title" => "Bestehende Gruppenpreise"
      "admin.b2b.index.groups.create.active" => "Aktiv"
      "admin.b2b.index.groups.create.default_net_view" => "Netto-Default"
      "admin.b2b.index.groups.create.discount_placeholder" => "Rabatt %"
      "admin.b2b.index.groups.create.name_placeholder" => "Gruppenname"
      "admin.b2b.index.groups.create.submit" => "Anlegen"
      "admin.b2b.index.groups.table.action" => "Aktion"
      "admin.b2b.index.groups.table.discount" => "Rabatt"
      "admin.b2b.index.groups.table.empty" => "Keine Gruppen vorhanden."
      "admin.b2b.index.groups.table.name" => "Name"
      "admin.b2b.index.groups.table.net" => "Netto"
      "admin.b2b.index.groups.table.status" => "Status"
      "admin.b2b.index.groups.title" => "Kundengruppen"
      "admin.b2b.index.page_subtitle" => "Kundengruppen, Sonderpreise und Freigaben an einem Ort."
      "admin.b2b.index.page_title" => "B2B-Verwaltung"
      "admin.b2b.index.price_override.fields.group" => "Gruppe"
      "admin.b2b.index.price_override.fields.price" => "Preis (Brutto)"
      "admin.b2b.index.price_override.fields.product" => "Produkt"
      "admin.b2b.index.price_override.placeholders.group" => "Bitte wählen"
      "admin.b2b.index.price_override.placeholders.product" => "-- Produkt suchen / wählen --"
      "admin.b2b.index.price_override.title" => "Gruppenpreis setzen"
      "admin.b2b.index.quotes.actions.approve" => "Genehmigen"
      "admin.b2b.index.quotes.actions.reject" => "Ablehnen"
      "admin.b2b.index.quotes.actions.review" => "Prüfen"
      "admin.b2b.index.quotes.status.approved" => "Genehmigt"
      "admin.b2b.index.quotes.status.cancelled" => "Storniert"
      "admin.b2b.index.quotes.status.in_review" => "In Prüfung"
      "admin.b2b.index.quotes.status.open" => "Neu"
      "admin.b2b.index.quotes.status.rejected" => "Abgelehnt"
      "admin.b2b.index.quotes.table.action" => "Aktion"
      "admin.b2b.index.quotes.table.company" => "Firma"
      "admin.b2b.index.quotes.table.contact" => "Kontakt"
      "admin.b2b.index.quotes.table.empty" => "Keine Anfragen."
      "admin.b2b.index.quotes.table.requested_group" => "Gewünschte Gruppe"
      "admin.b2b.index.quotes.table.status" => "Status"
      "admin.b2b.index.quotes.title" => "Angebotsanfragen"
      "admin.b2b.index.quotes.values.none" => "Keine Auswahl"
      "admin.b2b.index.toolbar.create_group" => "Neue Kundengruppe"
      "admin.b2b.index.toolbar.help" => "Hilfe"
      "admin.b2b.nav.menu" => "B2B"
      "admin.b2b.nav.submenu" => "Kundengruppen & Freigaben"
      "admin.b2b.notifications.group_created" => "Kundengruppe wurde angelegt."
      "admin.b2b.notifications.group_updated" => "Kundengruppe wurde aktualisiert."
      "admin.b2b.notifications.invalid_status" => "Ungültiger Status."
      "admin.b2b.notifications.missing_product_or_group" => "Produkt oder Gruppe nicht gefunden."
      "admin.b2b.notifications.order_approved" => "Bestellung wurde freigegeben."
      "admin.b2b.notifications.order_rejected" => "Bestellung wurde abgelehnt."
      "admin.b2b.notifications.price_deleted" => "Gruppenpreis wurde gelöscht."
      "admin.b2b.notifications.price_saved" => "Gruppenpreis gespeichert."
      "admin.b2b.notifications.quote_status_updated" => "Anfrage-Status wurde aktualisiert."
      "admin.booking.form.create_title" => "Neue Buchung"
      "admin.booking.form.edit_title" => "Buchung bearbeiten"
      "admin.booking.form.fields.apartment" => "Wohnung"
      "admin.booking.form.fields.apartment_placeholder" => "Wohnung wählen..."
      "admin.booking.form.fields.end" => "Abreise"
      "admin.booking.form.fields.guest_email" => "E-Mail"
      "admin.booking.form.fields.guest_name" => "Gastname"
      "admin.booking.form.fields.guest_phone" => "Telefon"
      "admin.booking.form.fields.notes" => "Notizen"
      "admin.booking.form.fields.price" => "Preis"
      "admin.booking.form.fields.start" => "Anreise"
      "admin.booking.form.fields.status" => "Status"
      "admin.booking.form.fields.status_cancelled" => "Storniert"
      "admin.booking.form.fields.status_confirmed" => "Bestätigt"
      "admin.booking.form.fields.status_pending" => "Ausstehend"
      "admin.booking.form.fields.title" => "Titel"
      "admin.booking.form.list_title" => "Buchungen"
      "admin.booking.list.columns.actions" => "Aktionen"
      "admin.booking.list.columns.apartment" => "Wohnung"
      "admin.booking.list.columns.arrival" => "Anreise"
      "admin.booking.list.columns.departure" => "Abreise"
      "admin.booking.list.columns.guest_name" => "Gastname"
      "admin.booking.list.create" => "Neue Buchung"
      "admin.booking.list.delete_message" => "Buchung von "%guest%" wirklich löschen?"
      "admin.booking.list.empty" => "Keine Buchungen vorhanden."
      "admin.booking.list.panel_title" => "Buchungsliste"
      "admin.booking.list.subtitle" => "Gästebuchungen und Belegungszeiten verwalten."
      "admin.booking.list.title" => "Buchungen"
      "admin.booking.notifications.created" => "Buchung wurde angelegt."
      "admin.booking.notifications.deleted" => "Buchung wurde gelöscht."
      "admin.booking.notifications.updated" => "Buchung wurde gespeichert."
      "admin.calendar.actions.manage_apartments" => "Wohnungen verwalten"
      "admin.calendar.actions.manage_bookings" => "Buchungen verwalten"
      "admin.calendar.errors.apartment_not_found" => "Wohnung nicht gefunden"
      "admin.calendar.errors.delete_confirm" => "Buchung wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden."
      "admin.calendar.errors.generic" => "Fehler: %message%"
      "admin.calendar.errors.invalid_date_range" => "Abreise muss nach Anreise liegen."
      "admin.calendar.errors.invalid_token" => "Ungültiger Token"
      "admin.calendar.errors.load_failed" => "Fehler beim Laden:"
      "admin.calendar.errors.move_failed" => "Fehler beim Verschieben: %message%"
      "admin.calendar.errors.overlap" => "Zeitraum überschneidet sich mit einer bestehenden Buchung."
      "admin.calendar.errors.required_fields" => "Bitte alle Pflichtfelder ausfüllen."
      "admin.calendar.errors.resize_failed" => "Fehler beim Ändern: %message%"
      "admin.calendar.errors.server_error" => "Serverfehler"
      "admin.calendar.modal.edit_title" => "Buchung bearbeiten"
      "admin.calendar.modal.guest_name_placeholder" => "Gastname eingeben"
      "admin.calendar.modal.new_title" => "Neue Buchung"
      "admin.calendar.modal.notes_placeholder" => "Interne Notizen..."
      "admin.calendar.modal.title" => "Buchung"
      "admin.calendar.modal.title_hint" => "optional, Standard: Gastname"
      "admin.calendar.modal.title_placeholder" => "Buchungstitel"
      "admin.calendar.navigation.next_month" => "Nächster Monat"
      "admin.calendar.navigation.previous_month" => "Vorheriger Monat"
      "admin.calendar.navigation.today" => "Heute"
      "admin.calendar.notifications.moved" => "Buchung wurde verschoben."
      "admin.calendar.page.heading" => "Buchungsplan Wohnungen"
      "admin.calendar.page.subtitle" => "Interaktiver Belegungsplan für Buchungen und Wohnungen."
      "admin.calendar.page.title" => "Kalender"
      "admin.cart_intelligence.help_index.card_subtitle" => "Abbrüche, Cross-Sell und Up-Sell-Regeln"
      "admin.cart_intelligence.help_index.card_title" => "Cart Intelligence"
      "admin.cart_intelligence.help_index.table_description" => "Abgebrochene Warenkörbe, KPIs und Cross-Sell-Regeln"
      "admin.cart_intelligence.help_index.table_label" => "Cart Intelligence"
      "admin.cart_intelligence.help.abandoned.api_label" => "API:"
      "admin.cart_intelligence.help.abandoned.intro" => "Die Dashboard-Liste zeigt verlassene Warenkörbe inklusive Kunde oder Session, Warenkorbwert, Alter, Zahlungsart und Status."
      "admin.cart_intelligence.help.abandoned.list_title" => "Anzeige in der Liste:"
      "admin.cart_intelligence.help.abandoned.points.four" => "Zahlungsart und technischer Status"
      "admin.cart_intelligence.help.abandoned.points.one" => "Kunde oder Session-ID"
      "admin.cart_intelligence.help.abandoned.points.three" => "Zeit seit der letzten Aktivität"
      "admin.cart_intelligence.help.abandoned.points.two" => "Warenkorbwert in EUR"
      "admin.cart_intelligence.help.abandoned.title" => "Abgebrochene Warenkörbe"
      "admin.cart_intelligence.help.actions.back" => "Zurück"
      "admin.cart_intelligence.help.actions.module" => "Zum Modul"
      "admin.cart_intelligence.help.api.rows.abandoned" => "Abgebrochene Warenkörbe als JSON"
      "admin.cart_intelligence.help.api.rows.edit" => "Regel bearbeiten"
      "admin.cart_intelligence.help.api.rows.index" => "Cart-Intelligence-Dashboard"
      "admin.cart_intelligence.help.api.rows.new" => "Neue Regel anlegen"
      "admin.cart_intelligence.help.api.rows.rules" => "Regelliste und Quick-Edits"
      "admin.cart_intelligence.help.api.rows.stats" => "Performance-Ansicht für Regeln"
      "admin.cart_intelligence.help.api.rows.summary" => "KPI-Zusammenfassung"
      "admin.cart_intelligence.help.api.rows.top_products" => "Top-Produkte aus abgebrochenen Warenkörben"
      "admin.cart_intelligence.help.api.table.function" => "Funktion"
      "admin.cart_intelligence.help.api.table.method" => "Methode"
      "admin.cart_intelligence.help.api.table.url" => "URL"
      "admin.cart_intelligence.help.api.title" => "API-Endpunkte"
      "admin.cart_intelligence.help.fields.rows.active" => "Aktivstatus der Regel"
      "admin.cart_intelligence.help.fields.rows.discount_percent" => "Optionaler Rabatt auf das Zielprodukt"
      "admin.cart_intelligence.help.fields.rows.min_cart_value" => "Mindest-Warenkorbwert für die Anzeige"
      "admin.cart_intelligence.help.fields.rows.priority" => "Anzeigepriorität (höher = weiter oben)"
      "admin.cart_intelligence.help.fields.rows.source_product" => "Quellprodukt, das die Empfehlung auslöst"
      "admin.cart_intelligence.help.fields.rows.target_product" => "Empfohlenes Zielprodukt"
      "admin.cart_intelligence.help.fields.rows.type" => "cross_sell / up_sell / bundle"
      "admin.cart_intelligence.help.fields.rows.valid_until" => "Optionales Ablaufdatum"
      "admin.cart_intelligence.help.fields.table.description" => "Beschreibung"
      "admin.cart_intelligence.help.fields.table.field" => "Feld"
      "admin.cart_intelligence.help.fields.table.type" => "Typ"
      "admin.cart_intelligence.help.fields.title" => "Feldreferenz: CrossSellRule"
      "admin.cart_intelligence.help.fields.types.boolean" => "Boolean"
      "admin.cart_intelligence.help.fields.types.date" => "Datum"
      "admin.cart_intelligence.help.fields.types.decimal" => "Dezimal"
      "admin.cart_intelligence.help.fields.types.enum" => "Enum"
      "admin.cart_intelligence.help.fields.types.integer" => "Integer"
      "admin.cart_intelligence.help.fields.types.relation" => "Relation"
      "admin.cart_intelligence.help.navigation.abandoned" => "Abgebrochene Warenkörbe"
      "admin.cart_intelligence.help.navigation.api" => "API-Endpunkte"
      "admin.cart_intelligence.help.navigation.fields" => "Feldreferenz"
      "admin.cart_intelligence.help.navigation.overview" => "Überblick"
      "admin.cart_intelligence.help.navigation.rules" => "Cross-Sell-Regeln"
      "admin.cart_intelligence.help.navigation.stats" => "Performance-Stats"
      "admin.cart_intelligence.help.navigation.title" => "Navigation"
      "admin.cart_intelligence.help.navigation.types" => "Regel-Typen"
      "admin.cart_intelligence.help.overview.cards.abandoned.subtitle" => "Warenkörbe ohne Bestellabschluss"
      "admin.cart_intelligence.help.overview.cards.abandoned.title" => "Abgebrochene Warenkörbe"
      "admin.cart_intelligence.help.overview.cards.revenue.subtitle" => "Wert aller abgebrochenen Körbe"
      "admin.cart_intelligence.help.overview.cards.revenue.title" => "Verlorener Umsatz"
      "admin.cart_intelligence.help.overview.cards.top.subtitle" => "Häufig abgelegte Produkte ohne Kauf"
      "admin.cart_intelligence.help.overview.cards.top.title" => "Top-Warenkorb-Produkte"
      "admin.cart_intelligence.help.overview.intro" => "Das Modul analysiert Warenkörbe, zeigt Abbrüche und verwaltet Cross-Sell- sowie Up-Sell-Regeln."
      "admin.cart_intelligence.help.overview.permissions_title" => "Berechtigungen:"
      "admin.cart_intelligence.help.overview.title" => "Cart Intelligence: Überblick"
      "admin.cart_intelligence.help.page_title" => "Hilfe: Cart Intelligence & Cross-Sells"
      "admin.cart_intelligence.help.rules.intro" => "Regeln definieren, welche Produkte im Warenkorb oder im Produktkontext als Empfehlung angezeigt werden."
      "admin.cart_intelligence.help.rules.steps.five" => "Optional Mindest-Warenkorbwert, Rabatt und Gültigkeit setzen."
      "admin.cart_intelligence.help.rules.steps.four" => "Typ cross_sell, up_sell oder bundle festlegen."
      "admin.cart_intelligence.help.rules.steps.one" => "In Cart Intelligence → Cross-Sell-Regeln auf „Neue Regel“ klicken."
      "admin.cart_intelligence.help.rules.steps.seven" => "Regel aktivieren und speichern."
      "admin.cart_intelligence.help.rules.steps.six" => "Priorität pflegen."
      "admin.cart_intelligence.help.rules.steps.three" => "Zielprodukt auswählen."
      "admin.cart_intelligence.help.rules.steps.two" => "Quellprodukt auswählen."
      "admin.cart_intelligence.help.rules.title" => "Cross-Sell-Regeln erstellen"
      "admin.cart_intelligence.help.stats.intro" => "Die Statistikansicht zeigt, welche Regeln aktuell die höchste Conversion-Wirkung erzielen."
      "admin.cart_intelligence.help.stats.metrics.four" => "Conv. Rate: Verhältnis zwischen Sichtbarkeit und Erfolg"
      "admin.cart_intelligence.help.stats.metrics.one" => "Shown: Häufigkeit der Einblendung"
      "admin.cart_intelligence.help.stats.metrics.three" => "Added: Hinzufügungen oder Konversionen nach Anzeige"
      "admin.cart_intelligence.help.stats.metrics.two" => "Viewed: Betrachtungen der Empfehlung"
      "admin.cart_intelligence.help.stats.title" => "Performance-Statistiken"
      "admin.cart_intelligence.help.types.rows.bundle.description" => "Produktpaket mit optionalem Kombivorteil."
      "admin.cart_intelligence.help.types.rows.bundle.label" => "Bundle-Empfehlung"
      "admin.cart_intelligence.help.types.rows.bundle.position" => "Checkout / Produktseite"
      "admin.cart_intelligence.help.types.rows.cross_sell.description" => "Ergänzende Produkte zum Hauptprodukt."
      "admin.cart_intelligence.help.types.rows.cross_sell.label" => "Cross-Selling"
      "admin.cart_intelligence.help.types.rows.cross_sell.position" => "Warenkorb-Seite"
      "admin.cart_intelligence.help.types.rows.up_sell.description" => "Höherwertige Alternative zum gewählten Produkt."
      "admin.cart_intelligence.help.types.rows.up_sell.label" => "Up-Selling"
      "admin.cart_intelligence.help.types.rows.up_sell.position" => "Produktdetail-Seite"
      "admin.cart_intelligence.help.types.table.description" => "Beschreibung"
      "admin.cart_intelligence.help.types.table.label" => "Bezeichnung"
      "admin.cart_intelligence.help.types.table.position" => "Anzeige-Position"
      "admin.cart_intelligence.help.types.table.type" => "Typ"
      "admin.cart_intelligence.help.types.title" => "Regel-Typen"
      "admin.cart_intelligence.index.abandoned.empty" => "Keine verlassenen Warenkörbe - super!"
      "admin.cart_intelligence.index.abandoned.guest" => "Gast"
      "admin.cart_intelligence.index.abandoned.headers.customer" => "Kunde / Session"
      "admin.cart_intelligence.index.abandoned.headers.id" => "#"
      "admin.cart_intelligence.index.abandoned.headers.payment" => "Zahlung"
      "admin.cart_intelligence.index.abandoned.headers.since" => "Verlassen seit"
      "admin.cart_intelligence.index.abandoned.headers.status" => "Status"
      "admin.cart_intelligence.index.abandoned.headers.value" => "Warenkorbwert"
      "admin.cart_intelligence.index.abandoned.loading" => "Lädt..."
      "admin.cart_intelligence.index.abandoned.pagination" => "Seite %page%/%pages% (%total% Carts)"
      "admin.cart_intelligence.index.abandoned.title" => "Verlassene Carts"
      "admin.cart_intelligence.index.abandoned.total_suffix" => "(%total% gesamt)"
      "admin.cart_intelligence.index.actions.help" => "Hilfe"
      "admin.cart_intelligence.index.actions.refresh" => "Aktualisieren"
      "admin.cart_intelligence.index.errors.abandoned_load_failed" => "Die Liste verlassener Carts konnte nicht geladen werden."
      "admin.cart_intelligence.index.errors.summary_load_failed" => "Die KPI-Zusammenfassung konnte nicht geladen werden."
      "admin.cart_intelligence.index.errors.top_products_load_failed" => "Die Top-Produkte konnten nicht geladen werden."
      "admin.cart_intelligence.index.help_title" => "Hilfe zu diesem Modul"
      "admin.cart_intelligence.index.kpi.abandoned" => "Verlassen"
      "admin.cart_intelligence.index.kpi.open" => "Offen"
      "admin.cart_intelligence.index.kpi.rate" => "Abbruchrate"
      "admin.cart_intelligence.index.kpi.revenue_7d" => "Umsatz 7 Tage"
      "admin.cart_intelligence.index.kpi.risk" => "Umsatzrisiko"
      "admin.cart_intelligence.index.kpi.total" => "Carts gesamt"
      "admin.cart_intelligence.index.page_title" => "Cart Intelligence"
      "admin.cart_intelligence.index.status_breakdown.empty" => "Keine Daten"
      "admin.cart_intelligence.index.status_breakdown.loading" => "Lädt..."
      "admin.cart_intelligence.index.status_breakdown.title" => "Status-Verteilung"
      "admin.cart_intelligence.index.statuses.cancelled" => "Storniert"
      "admin.cart_intelligence.index.statuses.open" => "Offen"
      "admin.cart_intelligence.index.statuses.paid" => "Bezahlt"
      "admin.cart_intelligence.index.statuses.pending" => "Ausstehend"
      "admin.cart_intelligence.index.top_products.empty" => "Keine Daten"
      "admin.cart_intelligence.index.top_products.headers.carts" => "Carts"
      "admin.cart_intelligence.index.top_products.headers.product" => "Produkt"
      "admin.cart_intelligence.index.top_products.headers.value" => "Wert"
      "admin.cart_intelligence.index.top_products.loading" => "Lädt..."
      "admin.cart_intelligence.index.top_products.title" => "Top abgebrochene Produkte"
      "admin.cart_intelligence.nav.dashboard" => "Abbrüche & KPIs"
      "admin.cart_intelligence.nav.menu" => "Cart Intelligence"
      "admin.cart_intelligence.nav.rules" => "Cross-Sell-Regeln"
      "admin.cart_intelligence.nav.stats" => "Performance"
      "admin.cart_intelligence.notifications.invalid_product_selection" => "Ungültige Produktauswahl."
      "admin.cart_intelligence.notifications.invalid_request" => "Ungültige Anfrage."
      "admin.cart_intelligence.notifications.product_not_found" => "Produkt wurde nicht gefunden."
      "admin.cart_intelligence.notifications.rule_deleted" => "Regel wurde gelöscht."
      "admin.cart_intelligence.notifications.rule_not_found" => "Regel wurde nicht gefunden."
      "admin.cart_intelligence.notifications.rule_save_failed" => "Fehler beim Speichern der Regel: %message%"
      "admin.cart_intelligence.notifications.rule_saved" => "Regel wurde gespeichert."
      "admin.cart_intelligence.notifications.rule_updated" => "Regel wurde aktualisiert."
      "admin.cart_intelligence.notifications.status_updated" => "Status wurde aktualisiert."
      "admin.cart_intelligence.rule_form.actions.back" => "Zurück"
      "admin.cart_intelligence.rule_form.actions.save" => "Speichern"
      "admin.cart_intelligence.rule_form.hints.discount_percent" => "Optionaler Rabatt, falls beide Produkte gekauft werden."
      "admin.cart_intelligence.rule_form.hints.min_cart_value" => "EUR - Regel gilt ab diesem Betrag."
      "admin.cart_intelligence.rule_form.hints.priority" => "Höhere Werte = häufiger angezeigt."
      "admin.cart_intelligence.rule_form.hints.source" => "Produkt im Warenkorb, für das Empfehlungen angezeigt werden."
      "admin.cart_intelligence.rule_form.hints.target" => "Empfohlenes Zielprodukt."
      "admin.cart_intelligence.rule_form.hints.valid_until" => "Leer = unbegrenzt gültig."
      "admin.cart_intelligence.rule_form.labels.active" => "Regel ist aktiv"
      "admin.cart_intelligence.rule_form.labels.discount_percent" => "Bundle-Rabatt (%)"
      "admin.cart_intelligence.rule_form.labels.min_cart_value" => "Minimaler Warenkorbwert"
      "admin.cart_intelligence.rule_form.labels.priority" => "Priorität (0-100)"
      "admin.cart_intelligence.rule_form.labels.source" => "Von Produkt (Quelle) *"
      "admin.cart_intelligence.rule_form.labels.target" => "Zu Produkt (Ziel) *"
      "admin.cart_intelligence.rule_form.labels.type" => "Regeltyp *"
      "admin.cart_intelligence.rule_form.labels.valid_until" => "Gültig bis"
      "admin.cart_intelligence.rule_form.meta_title_edit" => "Cross-Sell-Regel bearbeiten"
      "admin.cart_intelligence.rule_form.meta_title_new" => "Cross-Sell-Regel erstellen"
      "admin.cart_intelligence.rule_form.page_title_edit" => "Regel bearbeiten"
      "admin.cart_intelligence.rule_form.page_title_new" => "Neue Cross-Sell-Regel"
      "admin.cart_intelligence.rule_form.placeholders.select_product" => "-- Produkt wählen --"
      "admin.cart_intelligence.rules.actions.create_link" => "Neue Regel erstellen"
      "admin.cart_intelligence.rules.actions.delete" => "Löschen"
      "admin.cart_intelligence.rules.actions.delete_confirm" => "Regel wirklich löschen?"
      "admin.cart_intelligence.rules.actions.edit" => "Bearbeiten"
      "admin.cart_intelligence.rules.actions.new" => "Neue Regel"
      "admin.cart_intelligence.rules.actions.save_priority" => "OK"
      "admin.cart_intelligence.rules.actions.stats" => "Statistiken"
      "admin.cart_intelligence.rules.actions.toggle_active" => "Aktivieren"
      "admin.cart_intelligence.rules.actions.toggle_inactive" => "Deaktivieren"
      "admin.cart_intelligence.rules.empty" => "Keine Regeln definiert."
      "admin.cart_intelligence.rules.headers.actions" => "Aktionen"
      "admin.cart_intelligence.rules.headers.priority" => "Priorität"
      "admin.cart_intelligence.rules.headers.source" => "Von Produkt"
      "admin.cart_intelligence.rules.headers.status" => "Status"
      "admin.cart_intelligence.rules.headers.target" => "Zu Produkt"
      "admin.cart_intelligence.rules.headers.type" => "Typ"
      "admin.cart_intelligence.rules.labels.price" => "%value% EUR"
      "admin.cart_intelligence.rules.labels.sku" => "SKU: %value%"
      "admin.cart_intelligence.rules.meta_title" => "Cross-Sell-Regeln"
      "admin.cart_intelligence.rules.page_title" => "Cross-Sell / Up-Sell Regeln"
      "admin.cart_intelligence.rules.stats.active_rules" => "aktive Regeln"
      "admin.cart_intelligence.rules.stats.all_rules" => "alle Regeln"
      "admin.cart_intelligence.rules.stats.bundle" => "Bundles"
      "admin.cart_intelligence.rules.stats.cross_sell" => "Cross-Sell"
      "admin.cart_intelligence.rules.stats.total" => "Gesamt"
      "admin.cart_intelligence.rules.stats.up_sell" => "Up-Sell"
      "admin.cart_intelligence.stats.actions.back" => "Zu Regeln"
      "admin.cart_intelligence.stats.empty" => "Keine Statistiken verfügbar. Erstellen Sie Regeln und warten Sie auf Besucher."
      "admin.cart_intelligence.stats.headers.added" => "Added"
      "admin.cart_intelligence.stats.headers.from_to" => "Von → Zu Produkt"
      "admin.cart_intelligence.stats.headers.rate" => "Conv. Rate"
      "admin.cart_intelligence.stats.headers.shown" => "Shown"
      "admin.cart_intelligence.stats.headers.type" => "Typ"
      "admin.cart_intelligence.stats.headers.viewed" => "Viewed"
      "admin.cart_intelligence.stats.info_text" => "Zeigt, welche Regeln am häufigsten tatsächlich zu Käufen führen, damit Sie Ihre Regeln optimieren können."
      "admin.cart_intelligence.stats.info_title" => "Performance-Metriken:"
      "admin.cart_intelligence.stats.meta_title" => "Cross-Sell-Statistiken"
      "admin.cart_intelligence.stats.page_title" => "Cross-Sell Performance"
      "admin.cart_intelligence.types.bundle" => "Bundle"
      "admin.cart_intelligence.types.cross_sell" => "Cross-Sell"
      "admin.cart_intelligence.types.unknown" => "Unbekannt"
      "admin.cart_intelligence.types.up_sell" => "Up-Sell"
      "admin.cart.detail.actions.customer" => "Kunde"
      "admin.cart.detail.actions.edit" => "Bearbeiten"
      "admin.cart.detail.actions.help" => "Hilfe"
      "admin.cart.detail.actions.overview" => "Übersicht"
      "admin.cart.detail.actions.pickup_ready" => "Bereit zur Abholung melden"
      "admin.cart.detail.actions.shipment" => "Sendung"
      "admin.cart.detail.actions.shop_user" => "Shop-User"
      "admin.cart.detail.fields.address" => "Adresse"
      "admin.cart.detail.fields.address_validation" => "Adressprüfung"
      "admin.cart.detail.fields.address_validation_message" => "Prüfhinweis"
      "admin.cart.detail.fields.address_validation_source" => "Prüfquelle"
      "admin.cart.detail.fields.billing_address" => "Rechnungsadresse"
      "admin.cart.detail.fields.billing_address_validation" => "Adressprüfung Rechnung"
      "admin.cart.detail.fields.billing_address_validation_message" => "Prüfhinweis Rechnung"
      "admin.cart.detail.fields.billing_address_validation_source" => "Prüfquelle Rechnung"
      "admin.cart.detail.fields.billing_city_zip" => "PLZ / Ort Rechnung"
      "admin.cart.detail.fields.billing_country" => "Land Rechnung"
      "admin.cart.detail.fields.billing_email" => "E-Mail Rechnung"
      "admin.cart.detail.fields.billing_heading" => "Rechnungsadresse"
      "admin.cart.detail.fields.billing_phone" => "Telefon Rechnung"
      "admin.cart.detail.fields.billing_recipient" => "Rechnungsempfänger"
      "admin.cart.detail.fields.carrier" => "Versanddienst"
      "admin.cart.detail.fields.city_zip" => "PLZ / Ort"
      "admin.cart.detail.fields.country" => "Land"
      "admin.cart.detail.fields.created_at" => "Erstellt"
      "admin.cart.detail.fields.customer_id" => "Kunden-ID"
      "admin.cart.detail.fields.email" => "E-Mail"
      "admin.cart.detail.fields.fulfillment_type" => "Lieferart"
      "admin.cart.detail.fields.name" => "Name"
      "admin.cart.detail.fields.payment_intent" => "PaymentIntent"
      "admin.cart.detail.fields.payment_method" => "Zahlungsart"
      "admin.cart.detail.fields.phone" => "Telefon"
      "admin.cart.detail.fields.pickup_notified_at" => "Bereitmeldung gesendet"
      "admin.cart.detail.fields.pickup_ready_at" => "Bereit seit"
      "admin.cart.detail.fields.pickup_status" => "Abholstatus"
      "admin.cart.detail.fields.product" => "Produkt"
      "admin.cart.detail.fields.quantity" => "Menge"
      "admin.cart.detail.fields.recipient" => "Empfänger"
      "admin.cart.detail.fields.shipment_status" => "Versandstatus"
      "admin.cart.detail.fields.shipped_at" => "Versendet am"
      "admin.cart.detail.fields.shop_user" => "Shop-User"
      "admin.cart.detail.fields.status" => "Status"
      "admin.cart.detail.fields.status_code" => "Statuscode"
      "admin.cart.detail.fields.stripe_status" => "Stripe Status"
      "admin.cart.detail.fields.subtotal_gross" => "Zwischensumme (brutto)"
      "admin.cart.detail.fields.total" => "Gesamt"
      "admin.cart.detail.fields.tracking_number" => "Sendungsnummer"
      "admin.cart.detail.fields.unit_price_gross" => "Einzelpreis (brutto)"
      "admin.cart.detail.fields.updated_at" => "Geändert"
      "admin.cart.detail.links.call" => "Anrufen"
      "admin.cart.detail.links.customer_edit" => "Kunde bearbeiten"
      "admin.cart.detail.links.email" => "E-Mail"
      "admin.cart.detail.links.maps" => "Adresse in Maps"
      "admin.cart.detail.links.shipment_edit" => "Sendung bearbeiten"
      "admin.cart.detail.meta_title" => "Bestellung #%id%"
      "admin.cart.detail.page_subtitle" => "Alle relevanten Kauf-, Zahlungs- und Versandinformationen auf einen Blick."
      "admin.cart.detail.page_title" => "Bestellung #%id%"
      "admin.cart.detail.sections.admin_comment" => "Admin-Kommentar"
      "admin.cart.detail.sections.customer" => "Kunde"
      "admin.cart.detail.sections.items" => "Bestellpositionen"
      "admin.cart.detail.sections.order" => "Bestellung"
      "admin.cart.detail.sections.shipping" => "Lieferung & Versand"
      "admin.cart.detail.totals.gross" => "Gesamt brutto"
      "admin.cart.detail.totals.net" => "Summe netto"
      "admin.cart.detail.totals.vat_included" => "zzgl. MwSt. 19% (im Preis enthalten)"
      "admin.cart.detail.validation_source.external" => "Extern"
      "admin.cart.detail.validation_source.local" => "Lokal"
      "admin.cart.detail.validation_source.manual" => "Manuell"
      "admin.cart.detail.validation_status.invalid" => "Ungültig"
      "admin.cart.detail.validation_status.review_pending" => "Manuelle Prüfung nötig"
      "admin.cart.detail.validation_status.verified" => "Bestätigt"
      "admin.cart.detail.values.no_comment" => "Kein Kommentar hinterlegt."
      "admin.cart.detail.values.no_items" => "Keine Positionen gefunden."
      "admin.cart.edit.actions.cancel" => "Abbrechen"
      "admin.cart.edit.actions.detail" => "Details"
      "admin.cart.edit.actions.help" => "Hilfe"
      "admin.cart.edit.actions.overview" => "Übersicht"
      "admin.cart.edit.actions.save" => "Speichern"
      "admin.cart.edit.fields.admin_comment" => "Admin-Kommentar"
      "admin.cart.edit.fields.carrier" => "Versanddienst"
      "admin.cart.edit.fields.order_status" => "Bestellstatus"
      "admin.cart.edit.fields.pickup_ready_at" => "Bereit seit"
      "admin.cart.edit.fields.pickup_status" => "Abholstatus"
      "admin.cart.edit.fields.send_pickup_ready_notification" => "Bereitmeldung jetzt per E-Mail senden"
      "admin.cart.edit.fields.shipment_status" => "Versandstatus"
      "admin.cart.edit.fields.shipped_at" => "Versendet am"
      "admin.cart.edit.fields.system_status" => "Systemstatus"
      "admin.cart.edit.fields.tracking_number" => "Sendungsnummer"
      "admin.cart.edit.help.pickup_notified_at" => "Letzte Bereitmeldung: %date%"
      "admin.cart.edit.help.pickup_status" => "Setze „Bereit zur Abholung“, sobald die Bestellung vorbereitet ist. Die E-Mail informiert den Kunden direkt."
      "admin.cart.edit.meta_title" => "Bestellung #%id% bearbeiten"
      "admin.cart.edit.page_subtitle" => "Status, Versanddaten und interne Notiz zentral pflegen."
      "admin.cart.edit.page_title" => "Bestellung #%id% bearbeiten"
      "admin.cart.edit.panel_title" => "Bearbeitungsformular"
      "admin.cart.edit.placeholders.tracking_number" => "Vorhandene Nummer wählen oder neu eingeben"
      "admin.cart.edit.sections.pickup" => "Abholung im Geschäft"
      "admin.cart.edit.sections.shipping" => "Versand"
      "admin.cart.edit.values.not_set" => "Nicht gesetzt"
      "admin.cart.edit.values.select_carrier" => "Bitte wählen"
      "admin.cart.errors.not_found" => "Warenkorb nicht gefunden."
      "admin.cart.fulfillment.pickup" => "Abholung im Geschäft"
      "admin.cart.fulfillment.shipping" => "Versand"
      "admin.cart.help_index.card_description" => "Bestellverwaltung, Status, Versand"
      "admin.cart.help_index.card_title" => "Bestellungen & Warenkörbe"
      "admin.cart.help_index.table_description" => "Bestellverwaltung, Status, Details"
      "admin.cart.help_index.table_label" => "Bestellungen"
      "admin.cart.help.actions.back" => "Zurück"
      "admin.cart.help.actions.module" => "Zum Modul"
      "admin.cart.help.api.rows.delete" => "Bestellung löschen"
      "admin.cart.help.api.rows.detail" => "Bestelldetails"
      "admin.cart.help.api.rows.edit" => "Bestellung bearbeiten"
      "admin.cart.help.api.rows.list" => "Bestellliste"
      "admin.cart.help.api.table.function" => "Funktion"
      "admin.cart.help.api.table.method" => "Methode"
      "admin.cart.help.api.table.url" => "URL"
      "admin.cart.help.api.title" => "API-Endpunkte"
      "admin.cart.help.detail.intro" => "Die Detailansicht bündelt alle kaufrelevanten Informationen an einem Ort."
      "admin.cart.help.detail.points.comment" => "Interner Admin-Kommentar separat am Ende der Seite."
      "admin.cart.help.detail.points.customer" => "Direkte Sprünge zu Kunde und verknüpftem Shop-User."
      "admin.cart.help.detail.points.items" => "Bestellpositionen inklusive Netto-, MwSt.- und Bruttosummen."
      "admin.cart.help.detail.points.order" => "Bestellblock mit Status, Zahlungsart, Stripe-Status und PaymentIntent."
      "admin.cart.help.detail.points.shipping" => "Liefer- und Rechnungsadresse inklusive Validierungsstatus, Versanddienst, Sendungsnummer, Versandstatus und Abholinformationen."
      "admin.cart.help.detail.title" => "Bestelldetails"
      "admin.cart.help.fields.rows.admin_comment" => "Interner Kommentar für das Backoffice."
      "admin.cart.help.fields.rows.billing_snapshot" => "Snapshot der Rechnungsadresse zum Bestellzeitpunkt inklusive Land und Prüfstatus."
      "admin.cart.help.fields.rows.created_at" => "Zeitpunkt der Erstellung."
      "admin.cart.help.fields.rows.customer" => "Verknüpfter Kunde inklusive Shop-User-Bezug."
      "admin.cart.help.fields.rows.fulfillment_type" => "Lieferart der Bestellung, also Versand oder Abholung im Geschäft."
      "admin.cart.help.fields.rows.id" => "Interne Bestell-ID."
      "admin.cart.help.fields.rows.order_status" => "Fachlicher Bestellstatus für den weiteren Workflow."
      "admin.cart.help.fields.rows.payment" => "Gespeicherte Zahlungsart."
      "admin.cart.help.fields.rows.payment_intent" => "Stripe PaymentIntent-ID."
      "admin.cart.help.fields.rows.pickup_notified_at" => "Zeitpunkt der letzten Bereitmeldung per E-Mail."
      "admin.cart.help.fields.rows.pickup_ready_at" => "Zeitpunkt, ab dem die Bestellung im Geschäft bereitliegt."
      "admin.cart.help.fields.rows.pickup_status" => "Aktueller Abholstatus: Vorbereitung, bereit zur Abholung oder abgeholt."
      "admin.cart.help.fields.rows.shipping_snapshot" => "Snapshot der Lieferadresse zum Bestellzeitpunkt inklusive Land und Prüfstatus."
      "admin.cart.help.fields.rows.status" => "Technischer Cart-Status."
      "admin.cart.help.fields.rows.stripe_status" => "Technischer Stripe-Status."
      "admin.cart.help.fields.rows.total" => "Gesamtbetrag des Carts."
      "admin.cart.help.fields.rows.updated_at" => "Zeitpunkt der letzten Änderung."
      "admin.cart.help.fields.table.description" => "Beschreibung"
      "admin.cart.help.fields.table.field" => "Feld"
      "admin.cart.help.fields.title" => "Feldreferenz: Bestellung (Cart)"
      "admin.cart.help.navigation.api" => "API-Endpunkte"
      "admin.cart.help.navigation.detail" => "Bestelldetails"
      "admin.cart.help.navigation.fields" => "Feldreferenz"
      "admin.cart.help.navigation.overview" => "Übersicht"
      "admin.cart.help.navigation.payment" => "Zahlungsmethoden"
      "admin.cart.help.navigation.shipping" => "Versand & Lieferung"
      "admin.cart.help.navigation.status" => "Bestellstatus"
      "admin.cart.help.navigation.title" => "Navigation"
      "admin.cart.help.overview.filters_title" => "Filtermöglichkeiten"
      "admin.cart.help.overview.filters.date_range" => "Nach Zeitraum über Von/Bis filtern."
      "admin.cart.help.overview.filters.payment" => "Die Zahlungsart wird direkt in der Liste angezeigt."
      "admin.cart.help.overview.filters.status" => "Nach Status (offen, bestellt, Adressprüfung ausstehend, bereit zur Abholung, abgeholt, storniert) filtern."
      "admin.cart.help.overview.intro" => "Die Bestellverwaltung erreichst du unter /admin/cart. Die Liste zeigt Status, Kunde, Gesamtbetrag, Zahlungsart und Erstellungsdatum."
      "admin.cart.help.overview.note" => "Im System werden Warenkörbe und Bestellungen in derselben Tabelle cart verwaltet. Offene Carts und abgeschlossene Bestellungen unterscheiden sich über status und orderStatus."
      "admin.cart.help.overview.title" => "Bestellübersicht"
      "admin.cart.help.page_title" => "Hilfe: Bestellungen & Warenkörbe"
      "admin.cart.help.payment.note" => "Die Detailansicht zeigt die im Cart gespeicherte Zahlungsart und technische Stripe-Informationen."
      "admin.cart.help.payment.rows.bank_transfer" => "Manuelle Überweisung."
      "admin.cart.help.payment.rows.invoice" => "Kann in Bestandsdaten oder manuellen Prozessen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
      "admin.cart.help.payment.rows.paypal" => "Kann in Bestandsdaten oder Altbestellungen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
      "admin.cart.help.payment.rows.prepayment" => "Kann in Bestandsdaten oder manuellen Prozessen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
      "admin.cart.help.payment.rows.sepa" => "SEPA-Lastschriftverfahren."
      "admin.cart.help.payment.rows.stripe" => "Zeigt zusätzlich Stripe-Status und PaymentIntent in der Detailansicht."
      "admin.cart.help.payment.table.description" => "Hinweis"
      "admin.cart.help.payment.table.method" => "Methode"
      "admin.cart.help.payment.title" => "Zahlungsmethoden"
      "admin.cart.help.shipping.intro" => "Versanddaten lassen sich direkt in der Bearbeitungsansicht der Bestellung pflegen."
      "admin.cart.help.shipping.note" => "Wenn bereits eine Shipment-Entität existiert, führt die Detailansicht direkt zur Sendungsbearbeitung. Bei Abholung bleiben Kontakt- und Rechnungsdaten Pflicht, Versandkosten werden nicht berechnet."
      "admin.cart.help.shipping.points.carrier" => "Versanddienst aus bestehenden Versandmethoden wählen."
      "admin.cart.help.shipping.points.pickup" => "Bei Abholbestellungen ersetzt der Abholstatus die Versanddaten. Über „Bereit zur Abholung melden“ wird der Status gesetzt und eine Kundenmail gesendet."
      "admin.cart.help.shipping.points.shipped_at" => "Versanddatum und Uhrzeit dokumentieren."
      "admin.cart.help.shipping.points.status" => "Shipment-Status von Angelegt bis Zugestellt setzen."
      "admin.cart.help.shipping.points.tracking" => "Sendungsnummer aus vorhandenen Nummern wählen oder neu eintragen."
      "admin.cart.help.shipping.title" => "Versand & Lieferung"
      "admin.cart.help.status.order_title" => "Bestellstatus"
      "admin.cart.help.status.order.address_review_pending" => "Die Bestellung ist erfasst, wird aber vor Versand wegen unklarer Adressdaten manuell geprüft."
      "admin.cart.help.status.order.cancelled" => "Bestellung wurde storniert."
      "admin.cart.help.status.order.completed" => "Vorgang ist fachlich abgeschlossen."
      "admin.cart.help.status.order.delivered" => "Sendung wurde zugestellt."
      "admin.cart.help.status.order.paid" => "Zahlung ist eingegangen."
      "admin.cart.help.status.order.payment_failed" => "Die Stripe-Zahlung ist fehlgeschlagen oder benötigt eine neue Zahlungsquelle."
      "admin.cart.help.status.order.payment_pending" => "Stripe hat die Zahlung registriert, aber noch nicht final bestätigt."
      "admin.cart.help.status.order.picked_up" => "Die Bestellung wurde im Geschäft abgeholt."
      "admin.cart.help.status.order.pickup_ready" => "Die Abholbestellung ist vorbereitet und der Kunde kann benachrichtigt werden."
      "admin.cart.help.status.order.processing" => "Bestellung wird intern bearbeitet."
      "admin.cart.help.status.order.refunded" => "Zahlung wurde ganz oder teilweise erstattet."
      "admin.cart.help.status.order.shipped" => "Sendung wurde versendet."
      "admin.cart.help.status.system_title" => "Systemstatus"
      "admin.cart.help.status.system.cancelled" => "Bestellung oder Cart wurde storniert."
      "admin.cart.help.status.system.open" => "Offener Warenkorb ohne abgeschlossene Bestellung."
      "admin.cart.help.status.system.ordered" => "Bestellung ist angelegt und erscheint in der Bestellübersicht."
      "admin.cart.help.status.title" => "Bestellstatus-Workflow"
      "admin.cart.list.actions.delete" => "Löschen"
      "admin.cart.list.actions.detail" => "Details"
      "admin.cart.list.actions.edit" => "Bearbeiten"
      "admin.cart.list.actions.filter" => "Filtern"
      "admin.cart.list.actions.help" => "Hilfe"
      "admin.cart.list.delete_confirm" => "Bestellung #%id% wirklich löschen?"
      "admin.cart.list.filters.all_statuses" => "Alle Status"
      "admin.cart.list.filters.from" => "Von"
      "admin.cart.list.filters.status" => "Status"
      "admin.cart.list.filters.to" => "Bis"
      "admin.cart.list.headers.actions" => "Aktionen"
      "admin.cart.list.headers.created" => "Erstellt"
      "admin.cart.list.headers.customer" => "Kunde"
      "admin.cart.list.headers.id" => "ID"
      "admin.cart.list.headers.payment" => "Zahlung"
      "admin.cart.list.headers.status" => "Status"
      "admin.cart.list.headers.total" => "Total"
      "admin.cart.list.list_count" => "%count% Einträge"
      "admin.cart.list.list_title" => "Bestellliste"
      "admin.cart.list.meta_title" => "Bestellungen"
      "admin.cart.list.page_subtitle" => "Überwache Bestellstatus, Zahlart und Zeiträume an einem Ort."
      "admin.cart.list.page_title" => "Bestellungen"
      "admin.cart.list.values.empty" => "Keine Bestellungen gefunden."
      "admin.cart.notifications.deleted" => "Warenkorb wurde gelöscht."
      "admin.cart.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.cart.notifications.not_found" => "Warenkorb wurde nicht gefunden."
      "admin.cart.notifications.pickup_not_available" => "Diese Bestellung ist keine Abholbestellung."
      "admin.cart.notifications.pickup_ready_mail_failed" => "Die Bereitmeldung konnte nicht per E-Mail gesendet werden."
      "admin.cart.notifications.pickup_ready_mail_sent" => "Die Bereitmeldung wurde per E-Mail gesendet."
      "admin.cart.notifications.pickup_ready_no_email" => "Die Bereitmeldung konnte nicht gesendet werden, weil keine Kunden-E-Mail hinterlegt ist."
      "admin.cart.notifications.saved" => "Warenkorb wurde gespeichert."
      "admin.cart.payment_methods.bank_transfer" => "Überweisung"
      "admin.cart.payment_methods.cash" => "Barzahlung"
      "admin.cart.payment_methods.invoice" => "Rechnung"
      "admin.cart.payment_methods.paypal" => "PayPal"
      "admin.cart.payment_methods.prepayment" => "Vorkasse"
      "admin.cart.payment_methods.sepa" => "SEPA-Lastschrift"
      "admin.cart.payment_methods.stripe" => "Kreditkarte (Stripe)"
      "admin.cart.pickup_status.collected" => "Abgeholt"
      "admin.cart.pickup_status.pending" => "Abholung wird vorbereitet"
      "admin.cart.pickup_status.ready" => "Bereit zur Abholung"
      "admin.cart.shipment_status.created" => "Angelegt"
      "admin.cart.shipment_status.delivered" => "Zugestellt"
      "admin.cart.shipment_status.exception" => "Problemfall"
      "admin.cart.shipment_status.in_transit" => "In Zustellung"
      "admin.cart.shipment_status.label_created" => "Label erstellt"
      "admin.cart.shipment_status.lost" => "Verloren"
      "admin.cart.shipment_status.out_for_delivery" => "In Auslieferung"
      "admin.cart.shipment_status.returned" => "Retoure"
      "admin.cart.status.address_review_pending" => "Adressprüfung ausstehend"
      "admin.cart.status.cancelled" => "Storniert"
      "admin.cart.status.completed" => "Abgeschlossen"
      "admin.cart.status.delivered" => "Geliefert"
      "admin.cart.status.open" => "Offen"
      "admin.cart.status.ordered" => "Bestellt"
      "admin.cart.status.paid" => "Bezahlt"
      "admin.cart.status.picked_up" => "Abgeholt"
      "admin.cart.status.pickup_ready" => "Bereit zur Abholung"
      "admin.cart.status.processing" => "In Bearbeitung"
      "admin.cart.status.shipped" => "Versendet"
      "admin.cart.stripe_status.canceled" => "Abgebrochen"
      "admin.cart.stripe_status.processing" => "In Verarbeitung"
      "admin.cart.stripe_status.requires_action" => "Kundenauthentifizierung erforderlich"
      "admin.cart.stripe_status.requires_capture" => "Autorisierung vorhanden"
      "admin.cart.stripe_status.requires_confirmation" => "Bestätigung ausstehend"
      "admin.cart.stripe_status.requires_payment_method" => "Zahlungsmethode erforderlich"
      "admin.cart.stripe_status.succeeded" => "Erfolgreich bezahlt"
      "admin.configurable_product.form.actions.add_option" => "Option hinzufügen"
      "admin.configurable_product.form.actions.add_value" => "Wert hinzufügen"
      "admin.configurable_product.form.actions.back" => "Zurück"
      "admin.configurable_product.form.actions.cancel" => "Abbrechen"
      "admin.configurable_product.form.actions.help" => "Produkthilfe"
      "admin.configurable_product.form.actions.remove_option" => "Option entfernen"
      "admin.configurable_product.form.actions.remove_value" => "Wert entfernen"
      "admin.configurable_product.form.actions.save" => "Speichern"
      "admin.configurable_product.form.fields.option_name" => "Optionsname"
      "admin.configurable_product.form.fields.options" => "Optionen"
      "admin.configurable_product.form.fields.price_delta" => "Aufpreis"
      "admin.configurable_product.form.fields.product" => "Produkt"
      "admin.configurable_product.form.fields.value" => "Wert"
      "admin.configurable_product.form.fields.values" => "Werte"
      "admin.configurable_product.form.meta_title_edit" => "Konfigurator-Produkt bearbeiten"
      "admin.configurable_product.form.meta_title_new" => "Neues Konfigurator-Produkt"
      "admin.configurable_product.form.page_subtitle" => "Verknüpfe Optionen und Preisaufschläge pro Wert."
      "admin.configurable_product.form.page_title_edit" => "Konfigurator-Produkt bearbeiten"
      "admin.configurable_product.form.page_title_new" => "Neues Konfigurator-Produkt"
      "admin.configurable_product.form.panel_title" => "Formular"
      "admin.configurable_product.form.placeholders.price_delta" => "Aufpreis"
      "admin.configurable_product.form.placeholders.value" => "Wert"
      "admin.configurable_product.form.sections.options" => "Optionen"
      "admin.configurable_product.form.sections.values" => "Werte"
      "admin.configurable_product.index.actions.delete" => "Löschen"
      "admin.configurable_product.index.actions.edit" => "Bearbeiten"
      "admin.configurable_product.index.actions.help" => "Produkthilfe"
      "admin.configurable_product.index.actions.new" => "Neues Konfigurator-Produkt"
      "admin.configurable_product.index.delete_confirm" => "Konfigurator-Produkt "%name%" wirklich löschen?"
      "admin.configurable_product.index.headers.actions" => "Aktionen"
      "admin.configurable_product.index.headers.id" => "ID"
      "admin.configurable_product.index.headers.options" => "Optionen"
      "admin.configurable_product.index.headers.product" => "Produkt"
      "admin.configurable_product.index.list_count" => "%count% Einträge"
      "admin.configurable_product.index.list_title" => "Konfigurator-Produktliste"
      "admin.configurable_product.index.meta_title" => "Konfigurator-Produkte"
      "admin.configurable_product.index.page_subtitle" => "Produkte mit konfigurierbaren Optionen und Preisaufschlägen verwalten."
      "admin.configurable_product.index.page_title" => "Konfigurator-Produkte"
      "admin.configurable_product.index.values.empty" => "Keine Konfigurator-Produkte gefunden."
      "admin.configurable_product.notifications.created" => "Konfigurator-Produkt wurde angelegt."
      "admin.configurable_product.notifications.deleted" => "Konfigurator-Produkt wurde gelöscht."
      "admin.configurable_product.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.configurable_product.notifications.updated" => "Konfigurator-Produkt wurde gespeichert."
      "admin.content.api.errors.block_not_found" => "Content-Block wurde nicht gefunden."
      "admin.content.api.errors.required_fields" => "blockKey und name sind Pflichtfelder."
      "admin.content.errors.block_not_found" => "Content-Block wurde nicht gefunden."
      "admin.content.form.actions.cancel" => "Abbrechen"
      "admin.content.form.actions.save" => "Speichern"
      "admin.content.form.back" => "Zurück zur Liste"
      "admin.content.form.help" => "Hilfe"
      "admin.content.form.hints.json" => "Bei Typ JSON muss der Inhalt valides JSON sein."
      "admin.content.form.hints.locale" => "Leer lassen für sprachunabhängige Blöcke."
      "admin.content.form.labels.active" => "Aktiv"
      "admin.content.form.labels.block_key" => "Key"
      "admin.content.form.labels.content" => "Inhalt"
      "admin.content.form.labels.locale" => "Locale"
      "admin.content.form.labels.name" => "Name"
      "admin.content.form.labels.type" => "Typ"
      "admin.content.form.page_title_edit" => "Content-Block bearbeiten"
      "admin.content.form.page_title_new" => "Neuer Content-Block"
      "admin.content.form.panel_title_edit" => "Bearbeiten"
      "admin.content.form.panel_title_new" => "Anlegen"
      "admin.content.form.placeholders.block_key" => "homepage.hero.teaser"
      "admin.content.form.placeholders.locale" => "de"
      "admin.content.form.placeholders.name" => "Beschreibender Name"
      "admin.content.help_index.card_subtitle" => "Block-CRUD, Typen und A/B-Verknüpfung"
      "admin.content.help_index.card_title" => "Content-Blöcke"
      "admin.content.help_index.table_description" => "Dynamische Inhaltsblöcke für Frontend und Page Builder"
      "admin.content.help_index.table_label" => "Content-Blöcke"
      "admin.content.help.abtest.intro" => "A/B-Experimente referenzieren einen bestehenden Content-Block per Relation. Varianten werden nicht über blockKey, sondern über die Blockauswahl im A/B-Test-Modul gepflegt."
      "admin.content.help.abtest.note" => "Die A/B-Verknüpfung arbeitet blockbasiert. blockKey dient der Template-Einbindung, nicht der A/B-Zuordnung."
      "admin.content.help.abtest.steps.one" => "Im A/B-Test-Modul einen bestehenden aktiven Content-Block aus der Dropdown-Liste wählen."
      "admin.content.help.abtest.steps.three" => "Gewinner und Teststatus werden im Experiment gespeichert; der Basis-Block bleibt separat im Content-Modul editierbar."
      "admin.content.help.abtest.steps.two" => "Varianten A bis C für genau diesen Block pflegen und den Teststatus steuern."
      "admin.content.help.abtest.title" => "Verknüpfung mit A/B-Tests"
      "admin.content.help.actions.back" => "Zurück"
      "admin.content.help.actions.module" => "Zum Modul"
      "admin.content.help.api.rows.create" => "Legt einen neuen Content-Block per API an."
      "admin.content.help.api.rows.delete" => "Löscht einen Block dauerhaft."
      "admin.content.help.api.rows.get" => "Gibt die Details eines Blocks als JSON zurück."
      "admin.content.help.api.rows.index" => "Öffnet die Content-Block-Übersicht."
      "admin.content.help.api.rows.list" => "Liefert die gefilterte Liste der Blocks als JSON."
      "admin.content.help.api.rows.summary" => "Liefert KPI-Zahlen nach Typ."
      "admin.content.help.api.rows.toggle" => "Schaltet den Aktiv-Status um."
      "admin.content.help.api.rows.update" => "Aktualisiert einen bestehenden Block."
      "admin.content.help.api.table.function" => "Funktion"
      "admin.content.help.api.table.method" => "Methode"
      "admin.content.help.api.table.url" => "URL"
      "admin.content.help.api.title" => "API-Endpunkte"
      "admin.content.help.create.note" => "Der blockKey muss exakt mit der Einbindung im Template übereinstimmen, zum Beispiel"
      "admin.content.help.create.steps.five" => "Optional locale setzen, wenn der Block sprachspezifisch gepflegt werden soll."
      "admin.content.help.create.steps.four" => "Typ passend zum Ausgabeverhalten wählen: html, markdown, json oder text."
      "admin.content.help.create.steps.one" => "Im Modul Content-Blöcke auf "Neuer Block" klicken."
      "admin.content.help.create.steps.seven" => "Block aktivieren und speichern."
      "admin.content.help.create.steps.six" => "Inhalt im Textbereich pflegen und bei JSON auf valides Format achten."
      "admin.content.help.create.steps.three" => "Einen verständlichen Namen für die Admin-Liste hinterlegen."
      "admin.content.help.create.steps.two" => "blockKey als stabilen Integrationsschlüssel vergeben, zum Beispiel homepage.hero.teaser."
      "admin.content.help.create.title" => "Content-Block anlegen"
      "admin.content.help.fields.rows.active" => "Steuert, ob der Block aktiv verwendet wird."
      "admin.content.help.fields.rows.block_key" => "Eindeutiger Schlüssel für Twig- und Page-Builder-Integration."
      "admin.content.help.fields.rows.content" => "Gespeicherter Blockinhalt."
      "admin.content.help.fields.rows.created_at" => "Zeitpunkt der Erstellung."
      "admin.content.help.fields.rows.locale" => "Optionale Sprachvariante, leer = sprachunabhängig."
      "admin.content.help.fields.rows.name" => "Anzeigename in Admin-Listen und Auswahldialogen."
      "admin.content.help.fields.rows.type" => "Ausgabeart html, markdown, json oder text."
      "admin.content.help.fields.rows.updated_at" => "Zeitpunkt der letzten Änderung."
      "admin.content.help.fields.table.description" => "Beschreibung"
      "admin.content.help.fields.table.field" => "Feld"
      "admin.content.help.fields.table.type" => "Typ"
      "admin.content.help.fields.title" => "Feldreferenz: ContentBlock"
      "admin.content.help.fields.types.boolean" => "Boolean"
      "admin.content.help.fields.types.datetime" => "Datum / Zeit"
      "admin.content.help.fields.types.long_text" => "Langer Text"
      "admin.content.help.fields.types.text" => "Text"
      "admin.content.help.fields.types.unique_text" => "Text (eindeutig)"
      "admin.content.help.navigation.abtest" => "A/B-Test-Verknüpfung"
      "admin.content.help.navigation.api" => "API-Endpunkte"
      "admin.content.help.navigation.create" => "Block anlegen"
      "admin.content.help.navigation.fields" => "Feldreferenz"
      "admin.content.help.navigation.overview" => "Überblick"
      "admin.content.help.navigation.title" => "Navigation"
      "admin.content.help.navigation.toggle" => "Aktivieren/Deaktivieren"
      "admin.content.help.navigation.types" => "Block-Typen"
      "admin.content.help.overview.examples_title" => "Anwendungsbeispiele:"
      "admin.content.help.overview.examples.campaign" => "Saisonale Kampagneninhalte"
      "admin.content.help.overview.examples.checkout" => "Checkout- und Service-Hinweise"
      "admin.content.help.overview.examples.footer" => "Footer-Texte und rechtliche Hinweise"
      "admin.content.help.overview.examples.hero" => "Hero-Banner auf der Startseite"
      "admin.content.help.overview.examples.promo" => "Promotion-Texte auf Kategorie- und Landingpages"
      "admin.content.help.overview.intro" => "Content-Blöcke sind dynamische Inhaltsbausteine, die über blockKey im Twig-Frontend oder als content_block-Element im Page Builder eingebunden werden. Inhalte lassen sich dadurch ohne Codeänderung pflegen."
      "admin.content.help.overview.permissions_title" => "Berechtigungen:"
      "admin.content.help.overview.title" => "Content-Blöcke: Überblick"
      "admin.content.help.page_title" => "Hilfe: Content-Blöcke"
      "admin.content.help.toggle.api_label" => "API:"
      "admin.content.help.toggle.intro" => "Der Aktiv-Status lässt sich direkt in der Listenansicht umschalten, ohne einen Block zu löschen."
      "admin.content.help.toggle.points.one" => "Aktive Blöcke stehen für Twig und Page Builder zur Verfügung."
      "admin.content.help.toggle.points.three" => "Das ist nützlich für vorbereitete Kampagnen oder temporär pausierte Inhalte."
      "admin.content.help.toggle.points.two" => "Inaktive Blöcke bleiben gespeichert, werden aber nicht regulär ausgegeben."
      "admin.content.help.toggle.title" => "Block aktivieren oder deaktivieren"
      "admin.content.help.types.rows.html.editor" => "Mehrzeiliges Textfeld mit HTML-Eingabe."
      "admin.content.help.types.rows.html.use" => "Direkter HTML-Inhalt für frei formatierte Ausgaben."
      "admin.content.help.types.rows.json.editor" => "Mehrzeiliges Textfeld mit JSON-Validierung beim Speichern."
      "admin.content.help.types.rows.json.use" => "Strukturierte Daten, zum Beispiel Konfigurationen oder mehrteilige Inhalte."
      "admin.content.help.types.rows.markdown.editor" => "Mehrzeiliges Textfeld für Markdown."
      "admin.content.help.types.rows.markdown.use" => "Markdown-Inhalte, die im Frontend zu HTML gerendert werden."
      "admin.content.help.types.rows.text.editor" => "Mehrzeiliges Textfeld für Rohtext."
      "admin.content.help.types.rows.text.use" => "Einfacher Text, der im Frontend escaped und mit Zeilenumbrüchen ausgegeben wird."
      "admin.content.help.types.table.editor" => "Editor"
      "admin.content.help.types.table.type" => "Typ"
      "admin.content.help.types.table.use" => "Verwendung"
      "admin.content.help.types.title" => "Block-Typen"
      "admin.content.help.types.warning" => "Es gibt im aktuellen Modul keinen Twig-Typ. Die vier unterstützten Typen sind html, markdown, json und text."
      "admin.content.index.actions.confirm" => "Bestätigen"
      "admin.content.index.actions.delete" => "Löschen"
      "admin.content.index.actions.edit" => "Bearbeiten"
      "admin.content.index.filters.all_status" => "Alle Status"
      "admin.content.index.filters.all_types" => "Alle Typen"
      "admin.content.index.filters.search_placeholder" => "Nach Key oder Name suchen"
      "admin.content.index.help_title" => "Hilfe zu Content-Blöcken"
      "admin.content.index.kpi.total" => "Gesamt"
      "admin.content.index.list.empty" => "Keine Content-Blöcke für den aktuellen Filter gefunden."
      "admin.content.index.list.headers.actions" => "Aktionen"
      "admin.content.index.list.headers.active" => "Aktiv"
      "admin.content.index.list.headers.key" => "Key"
      "admin.content.index.list.headers.locale" => "Locale"
      "admin.content.index.list.headers.name" => "Name"
      "admin.content.index.list.headers.size" => "Größe"
      "admin.content.index.list.headers.type" => "Typ"
      "admin.content.index.list.headers.updated" => "Geändert"
      "admin.content.index.list.load_error" => "Beim Laden der Content-Blöcke ist ein Fehler aufgetreten."
      "admin.content.index.list.loading" => "Content-Blöcke werden geladen..."
      "admin.content.index.list.pagination" => "Zeige %shown% von %total% Blöcken (Seite %page%/%pages%)"
      "admin.content.index.list.title" => "Blockliste"
      "admin.content.index.list.values.none" => ""
      "admin.content.index.notices.delete_confirm" => "Soll dieser Content-Block wirklich gelöscht werden?"
      "admin.content.index.notices.delete_failed" => "Der Content-Block konnte nicht gelöscht werden."
      "admin.content.index.notices.delete_success" => "Content-Block wurde gelöscht."
      "admin.content.index.notices.summary_load_failed" => "Die KPI-Zusammenfassung konnte nicht geladen werden."
      "admin.content.index.notices.toggle_disabled" => "Content-Block wurde deaktiviert."
      "admin.content.index.notices.toggle_enabled" => "Content-Block wurde aktiviert."
      "admin.content.index.notices.toggle_failed" => "Der Status des Content-Blocks konnte nicht geändert werden."
      "admin.content.index.page_subtitle" => "Zentrale Pflege dynamischer Inhaltsblöcke für Frontend, Page Builder und Experimente."
      "admin.content.index.page_title" => "Content-Block-Verwaltung"
      "admin.content.index.toolbar.help" => "Hilfe"
      "admin.content.index.toolbar.new" => "Neuer Block"
      "admin.content.meta.title" => "Content-Blöcke"
      "admin.content.nav.menu" => "Content-Blöcke"
      "admin.content.nav.submenu" => "Übersicht"
      "admin.content.notifications.created" => "Content-Block wurde angelegt."
      "admin.content.notifications.invalid_json" => "Ungültiges JSON: %message%"
      "admin.content.notifications.required_fields" => "Key und Name sind Pflichtfelder."
      "admin.content.notifications.updated" => "Content-Block wurde gespeichert."
      "admin.content.status.active" => "Aktiv"
      "admin.content.status.inactive" => "Inaktiv"
      "admin.content.types.html" => "HTML"
      "admin.content.types.json" => "JSON"
      "admin.content.types.markdown" => "Markdown"
      "admin.content.types.text" => "Text"
      "admin.coupons.actions.activate" => "Aktivieren"
      "admin.coupons.actions.back" => "Zurück"
      "admin.coupons.actions.back_to_list" => "Zurück zur Liste"
      "admin.coupons.actions.cancel" => "Abbrechen"
      "admin.coupons.actions.close" => "Schließen"
      "admin.coupons.actions.deactivate" => "Deaktivieren"
      "admin.coupons.actions.delete" => "Löschen"
      "admin.coupons.actions.edit" => "Bearbeiten"
      "admin.coupons.actions.filter" => "Filtern"
      "admin.coupons.actions.help" => "Hilfe"
      "admin.coupons.actions.new" => "Neuer Gutschein"
      "admin.coupons.actions.save" => "Speichern"
      "admin.coupons.actions.to_module" => "Zum Modul"
      "admin.coupons.form.code_help" => "Eindeutiger Code; wird automatisch in Großbuchstaben gespeichert."
      "admin.coupons.form.code_label" => "Code"
      "admin.coupons.form.code_placeholder" => "z. B. SUMMER20"
      "admin.coupons.form.edit_page_title" => "Gutschein bearbeiten"
      "admin.coupons.form.edit_panel_title" => "Gutschein bearbeiten"
      "admin.coupons.form.max_uses_help" => "Das Limit gilt pro userKey, nicht global pro Gutschein-Code."
      "admin.coupons.form.max_uses_label" => "Max. Einlösungen pro Benutzer"
      "admin.coupons.form.max_uses_placeholder" => "leer = unbegrenzt"
      "admin.coupons.form.min_order_label" => "Min. Bestellwert (€)"
      "admin.coupons.form.min_order_placeholder" => "leer = kein Minimum"
      "admin.coupons.form.name_label" => "Bezeichnung"
      "admin.coupons.form.name_placeholder" => "z. B. Sommeraktion 2026"
      "admin.coupons.form.new_page_title" => "Neuer Gutschein"
      "admin.coupons.form.new_panel_title" => "Gutschein anlegen"
      "admin.coupons.form.status_active" => "Aktiv"
      "admin.coupons.form.status_label" => "Status"
      "admin.coupons.form.type_label" => "Typ"
      "admin.coupons.form.valid_from_label" => "Gültig von"
      "admin.coupons.form.valid_until_label" => "Gültig bis"
      "admin.coupons.form.value_label_fixed" => "Wert (€)"
      "admin.coupons.form.value_label_percent" => "Wert (%)"
      "admin.coupons.help_index.card_subtitle" => "CRUD, Typen, Limits, API"
      "admin.coupons.help_index.card_title" => "Gutscheine & Rabatte"
      "admin.coupons.help_index.table_description" => "Gutschein-CRUD, Limits und Aktivierung"
      "admin.coupons.help_index.table_label" => "Gutscheine"
      "admin.coupons.help.navigation_title" => "Navigation"
      "admin.coupons.help.navigation.api" => "API-Endpunkte"
      "admin.coupons.help.navigation.create" => "Gutschein erstellen"
      "admin.coupons.help.navigation.fields" => "Feldreferenz"
      "admin.coupons.help.navigation.overview" => "Überblick"
      "admin.coupons.help.navigation.redeem" => "Einlösung im Shop"
      "admin.coupons.help.navigation.types" => "Gutschein-Typen"
      "admin.coupons.help.sections.api.rows.create" => "Neuen Gutschein anlegen"
      "admin.coupons.help.sections.api.rows.delete" => "Gutschein löschen"
      "admin.coupons.help.sections.api.rows.edit" => "Gutschein bearbeiten"
      "admin.coupons.help.sections.api.rows.list" => "Gutschein-Liste mit Filtern"
      "admin.coupons.help.sections.api.rows.toggle" => "Aktivieren oder deaktivieren"
      "admin.coupons.help.sections.api.rows.validate" => "Frontend: Code validieren"
      "admin.coupons.help.sections.api.table.function" => "Funktion"
      "admin.coupons.help.sections.api.table.method" => "Methode"
      "admin.coupons.help.sections.api.table.url" => "URL"
      "admin.coupons.help.sections.api.title" => "API-Endpunkte"
      "admin.coupons.help.sections.create.steps.code" => "Einen eindeutigen <strong>Code</strong> wählen, z. B. <code>SOMMER20</code>; Duplikate werden beim Speichern blockiert."
      "admin.coupons.help.sections.create.steps.open" => "Zu <strong>Gutscheine → + Neuer Gutschein</strong> oder direkt zu <code>/admin/coupons/new</code> wechseln."
      "admin.coupons.help.sections.create.steps.rules" => "Rahmenbedingungen wie Mindestbestellwert, Gültigkeitszeitraum und Limit pro Benutzer festlegen."
      "admin.coupons.help.sections.create.steps.save" => "Mit <kbd>Speichern</kbd> sichern; aktive Gutscheine sind sofort verfügbar."
      "admin.coupons.help.sections.create.steps.type" => "Den <strong>Typ</strong> auswählen: Prozent, Festbetrag oder Gratis-Versand."
      "admin.coupons.help.sections.create.title" => "Gutschein erstellen"
      "admin.coupons.help.sections.create.warning" => "Codes werden normalisiert und in Großbuchstaben gespeichert."
      "admin.coupons.help.sections.fields.required_no" => "Nein"
      "admin.coupons.help.sections.fields.required_yes" => "Ja"
      "admin.coupons.help.sections.fields.rows.code" => "Der eindeutige Gutscheincode."
      "admin.coupons.help.sections.fields.rows.created_at" => "Anlagezeitpunkt des Gutscheins."
      "admin.coupons.help.sections.fields.rows.is_active" => "Aktiviert oder deaktiviert; kann in der Liste umgeschaltet werden."
      "admin.coupons.help.sections.fields.rows.max_uses" => "Maximale Einlösungen pro Benutzer über userKey; leer = unbegrenzt."
      "admin.coupons.help.sections.fields.rows.min_order_amount" => "Mindestbestellwert für die Einlösung."
      "admin.coupons.help.sections.fields.rows.name" => "Interne Bezeichnung für Liste und Formular."
      "admin.coupons.help.sections.fields.rows.type" => "percent / fixed / free_shipping."
      "admin.coupons.help.sections.fields.rows.used_count" => "Bisherige Gesamteinlösungen über alle Benutzer."
      "admin.coupons.help.sections.fields.rows.valid_from" => "Gültig ab diesem Datum."
      "admin.coupons.help.sections.fields.rows.valid_until" => "Gültig bis zu diesem Datum; leer = unbegrenzt."
      "admin.coupons.help.sections.fields.rows.value" => "Rabattwert; bei free_shipping technisch vorhanden, aber fachlich ohne Wirkung."
      "admin.coupons.help.sections.fields.table.description" => "Beschreibung"
      "admin.coupons.help.sections.fields.table.field" => "Feld"
      "admin.coupons.help.sections.fields.table.required" => "Pflicht"
      "admin.coupons.help.sections.fields.table.type" => "Typ"
      "admin.coupons.help.sections.fields.title" => "Feldreferenz: Coupon"
      "admin.coupons.help.sections.fields.types.boolean" => "Boolean"
      "admin.coupons.help.sections.fields.types.date" => "Datum/Zeit"
      "admin.coupons.help.sections.fields.types.enum" => "Enum"
      "admin.coupons.help.sections.fields.types.float" => "Dezimal"
      "admin.coupons.help.sections.fields.types.integer" => "Integer"
      "admin.coupons.help.sections.fields.types.text" => "Text"
      "admin.coupons.help.sections.fields.usage_text" => "Pro Benutzer und Gutschein wird in <code>coupon_usage</code> genau ein Datensatz mit <code>coupon_id</code>, <code>user_key</code>, <code>used_count</code>, <code>created_at</code> und <code>updated_at</code> geführt."
      "admin.coupons.help.sections.fields.usage_title" => "CouponUsage (Einlösungsprotokoll)"
      "admin.coupons.help.sections.overview.intro" => "Das Gutschein-Modul ermöglicht das Erstellen und Verwalten von Rabattcodes für den Shop. Kunden geben den Code im Checkout ein und erhalten den passenden Rabatt oder Gratis-Versand."
      "admin.coupons.help.sections.overview.permissions_label" => "Berechtigungen:"
      "admin.coupons.help.sections.overview.permissions_text" => "<code>ROLE_ADMIN_COUPON_MANAGE</code> auf Klassen-Ebene plus granular <code>LIST</code>, <code>ADD</code>, <code>EDIT</code> und <code>DELETE</code>."
      "admin.coupons.help.sections.overview.title" => "Überblick"
      "admin.coupons.help.sections.redeem.bullets.params" => "Body-Felder: <code>code</code>, <code>orderTotal</code> und optional <code>userKey</code>."
      "admin.coupons.help.sections.redeem.bullets.response" => "Antwort: <code>valid</code>, <code>discount</code>, <code>newTotal</code>, optional <code>error</code> und <code>coupon</code>."
      "admin.coupons.help.sections.redeem.bullets.route" => "API-Route: <code>POST /api/coupon/validate</code> (ApiCouponController)."
      "admin.coupons.help.sections.redeem.bullets.storage" => "Die eigentliche Einlösung erhöht <code>coupon.usedCount</code> und den zugehörigen Eintrag in <code>coupon_usage</code>."
      "admin.coupons.help.sections.redeem.intro" => "Kunden können Gutscheincodes im <strong>Checkout</strong> eingeben. Die Validierung läuft über die öffentliche Coupon-API."
      "admin.coupons.help.sections.redeem.title" => "Einlösung im Shop"
      "admin.coupons.help.sections.types.rows.fixed.effect" => "Fester Euro-Betrag wird vom Bestellwert abgezogen."
      "admin.coupons.help.sections.types.rows.fixed.example" => "-10,00 €"
      "admin.coupons.help.sections.types.rows.fixed.value" => "Betrag in €, z. B. 10.00"
      "admin.coupons.help.sections.types.rows.free_shipping.effect" => "Versandkosten werden extern auf 0 gesetzt."
      "admin.coupons.help.sections.types.rows.free_shipping.example" => "Gratis-Versand"
      "admin.coupons.help.sections.types.rows.free_shipping.value" => "-"
      "admin.coupons.help.sections.types.rows.percent.effect" => "Rabatt auf den Warenkorbwert."
      "admin.coupons.help.sections.types.rows.percent.example" => "20 % Rabatt"
      "admin.coupons.help.sections.types.rows.percent.value" => "Prozentzahl, z. B. 20"
      "admin.coupons.help.sections.types.table.effect" => "Wirkung"
      "admin.coupons.help.sections.types.table.example" => "Beispiel"
      "admin.coupons.help.sections.types.table.type" => "Typ"
      "admin.coupons.help.sections.types.table.value" => "Wert"
      "admin.coupons.help.sections.types.title" => "Gutschein-Typen"
      "admin.coupons.help.title" => "Hilfe: Gutscheine & Rabatte"
      "admin.coupons.index.api.endpoint_label" => "Endpoint:"
      "admin.coupons.index.api.required_fields_label" => "Pflichtfelder:"
      "admin.coupons.index.api.response_label" => "Antwort:"
      "admin.coupons.index.api.title" => "API-Endpunkt (Kassen-Integration)"
      "admin.coupons.index.api.user_limit_label" => "Bei Benutzerlimit:"
      "admin.coupons.index.api.user_limit_text" => "mitsenden, z. B. Kunden-ID oder E-Mail-Hash"
      "admin.coupons.index.columns.actions" => "Aktionen"
      "admin.coupons.index.columns.code" => "Code"
      "admin.coupons.index.columns.min_order_amount" => "Min. Bestellwert"
      "admin.coupons.index.columns.name" => "Name"
      "admin.coupons.index.columns.status" => "Status"
      "admin.coupons.index.columns.type" => "Typ"
      "admin.coupons.index.columns.usage" => "Nutzung"
      "admin.coupons.index.columns.validity" => "Gültigkeit"
      "admin.coupons.index.columns.value" => "Wert"
      "admin.coupons.index.delete_confirm" => "Gutschein "%code%" wirklich löschen?"
      "admin.coupons.index.empty" => "Keine Gutscheine gefunden."
      "admin.coupons.index.filters.all_status" => "Alle Status"
      "admin.coupons.index.filters.all_types" => "Alle Typen"
      "admin.coupons.index.filters.search_placeholder" => "Code, Name ..."
      "admin.coupons.index.help_title" => "Hilfe zu diesem Modul"
      "admin.coupons.index.invalid_hint" => "Abgelaufen oder Nutzungslimit erreicht"
      "admin.coupons.index.kpi.active" => "Aktiv"
      "admin.coupons.index.kpi.expiring_soon" => "Laufen bald ab"
      "admin.coupons.index.kpi.total" => "Gutscheine gesamt"
      "admin.coupons.index.kpi.total_redemptions" => "Einlösungen gesamt"
      "admin.coupons.index.list_count" => "%count% Einträge"
      "admin.coupons.index.list_title" => "Gutscheine"
      "admin.coupons.index.min_order_from" => "ab %amount% €"
      "admin.coupons.index.modal.title" => "Löschen bestätigen"
      "admin.coupons.index.page_title" => "Gutscheine & Rabatte"
      "admin.coupons.index.usage_limit" => "Limit/User: %count%"
      "admin.coupons.index.usage_total" => "Gesamt: %count%"
      "admin.coupons.index.usage_unlimited" => "Limit/User: unbegrenzt"
      "admin.coupons.index.valid_from" => "Von: %date%"
      "admin.coupons.index.valid_until" => "Bis: %date%"
      "admin.coupons.index.validity_unlimited" => "Unbegrenzt"
      "admin.coupons.index.value_not_applicable" => "-"
      "admin.coupons.nav.menu" => "Gutscheine"
      "admin.coupons.nav.submenu" => "Gutschein-Manager"
      "admin.coupons.notifications.activated" => "Gutschein "%code%" wurde aktiviert."
      "admin.coupons.notifications.code_empty" => "Der Code darf nicht leer sein."
      "admin.coupons.notifications.code_exists" => "Dieser Code existiert bereits."
      "admin.coupons.notifications.created" => "Gutschein "%code%" wurde angelegt."
      "admin.coupons.notifications.csrf_invalid" => "Ungültiges CSRF-Token."
      "admin.coupons.notifications.deactivated" => "Gutschein "%code%" wurde deaktiviert."
      "admin.coupons.notifications.deleted" => "Gutschein "%code%" wurde gelöscht."
      "admin.coupons.notifications.updated" => "Gutschein "%code%" wurde gespeichert."
      "admin.coupons.status.active" => "Aktiv"
      "admin.coupons.status.inactive" => "Inaktiv"
      "admin.coupons.types.fixed" => "Festbetrag (€)"
      "admin.coupons.types.free_shipping" => "Gratis-Versand"
      "admin.coupons.types.percent" => "Prozent (%)"
      "admin.customer.form.create_title" => "Shop-Kunde anlegen"
      "admin.customer.form.edit_title" => "Shop-Kunde bearbeiten"
      "admin.customer.form.fields.address" => "Adresse"
      "admin.customer.form.fields.city" => "Stadt"
      "admin.customer.form.fields.email" => "E-Mail"
      "admin.customer.form.fields.name" => "Name"
      "admin.customer.form.fields.phone" => "Telefon"
      "admin.customer.form.fields.wishlist" => "Wunschliste"
      "admin.customer.form.fields.zip" => "PLZ"
      "admin.customer.form.panel_title" => "Formular"
      "admin.customer.form.subtitle" => "Stammdaten und Kontaktdaten zentral pflegen."
      "admin.customer.list.columns.actions" => "Aktionen"
      "admin.customer.list.columns.address" => "Adresse"
      "admin.customer.list.columns.city" => "Stadt"
      "admin.customer.list.columns.email" => "E-Mail"
      "admin.customer.list.columns.id" => "ID"
      "admin.customer.list.columns.name" => "Name"
      "admin.customer.list.columns.phone" => "Telefon"
      "admin.customer.list.columns.wishlist" => "Wunschliste"
      "admin.customer.list.columns.zip" => "PLZ"
      "admin.customer.list.create" => "Shop-Kunde anlegen"
      "admin.customer.list.delete_message" => "Kunde "%name%" wirklich löschen?"
      "admin.customer.list.empty" => "Keine Shop-Kunden vorhanden."
      "admin.customer.list.panel_title" => "Shop-Kundenliste"
      "admin.customer.list.subtitle" => "Verwalte Shop-Kundenstammdaten und Kontaktinformationen."
      "admin.customer.list.title" => "Shop-Kunden"
      "admin.customer.notifications.created" => "Kunde wurde angelegt."
      "admin.customer.notifications.deleted" => "Kunde wurde gelöscht."
      "admin.customer.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.customer.notifications.updated" => "Kunde wurde gespeichert."
      "admin.dashboard_phase1.alerts.acknowledge" => "Quittieren"
      "admin.dashboard_phase1.alerts.action_acknowledge" => "quittieren"
      "admin.dashboard_phase1.alerts.action_resolve" => "lösen"
      "admin.dashboard_phase1.alerts.all_severities" => "Alle Severities"
      "admin.dashboard_phase1.alerts.bulk_confirm" => "%count% Hinweis(e) wirklich %action%?"
      "admin.dashboard_phase1.alerts.bulk_failed" => "Bulk-Aktion fehlgeschlagen."
      "admin.dashboard_phase1.alerts.bulk.acknowledge_all" => "Alle quittieren"
      "admin.dashboard_phase1.alerts.bulk.clear_selection" => "Auswahl aufheben"
      "admin.dashboard_phase1.alerts.bulk.resolve_all" => "Alle lösen"
      "admin.dashboard_phase1.alerts.bulk.selected" => "ausgewählt"
      "admin.dashboard_phase1.alerts.none" => "✅ Keine ungelösten Hinweise."
      "admin.dashboard_phase1.alerts.product_label" => "Produkt: %name%"
      "admin.dashboard_phase1.alerts.resolve" => "Lösen"
      "admin.dashboard_phase1.alerts.select_all" => "Alle auswählen"
      "admin.dashboard_phase1.alerts.unresolved_title" => "Ungelöste Alerts"
      "admin.dashboard_phase1.common.refresh" => "Aktualisieren"
      "admin.dashboard_phase1.digest.api_failed" => "Digest API fehlgeschlagen"
      "admin.dashboard_phase1.digest.failed" => "Tagesübersicht konnte nicht gesendet werden."
      "admin.dashboard_phase1.digest.sent" => "Tagesübersicht gesendet: %delivered%/%total% Zustellungen erfolgreich."
      "admin.dashboard_phase1.digest.skipped" => "Tagesübersicht wurde übersprungen."
      "admin.dashboard_phase1.feeds.back_to_management" => "Zur Feed-Verwaltung"
      "admin.dashboard_phase1.feeds.description" => "Google XML, Meta CSV, Idealo CSV, Geizhals CSV inklusive B2C/B2B Profilen"
      "admin.dashboard_phase1.feeds.headers.channel" => "Kanal"
      "admin.dashboard_phase1.feeds.headers.items" => "Items"
      "admin.dashboard_phase1.feeds.headers.profile" => "Profil"
      "admin.dashboard_phase1.feeds.headers.source" => "Quelle"
      "admin.dashboard_phase1.feeds.headers.time" => "Zeit"
      "admin.dashboard_phase1.feeds.label" => "Kanal-Feeds:"
      "admin.dashboard_phase1.feeds.latest_exports_title" => "Letzte Feed-Exporte"
      "admin.dashboard_phase1.feeds.latest_runs" => "Letzte Runs:"
      "admin.dashboard_phase1.feeds.maintenance_completed" => "Feed-Wartung abgeschlossen: ok=%healthy%, veraltet=%stale%, fehlend=%missing%"
      "admin.dashboard_phase1.feeds.maintenance_confirm" => "Feed-Wartung jetzt starten? Es werden alle Feed-Dateien neu generiert."
      "admin.dashboard_phase1.feeds.maintenance_failed" => "Feed-Wartung fehlgeschlagen."
      "admin.dashboard_phase1.feeds.management" => "Feed Verwaltung"
      "admin.dashboard_phase1.feeds.no_exports" => "Noch keine Feed-Exporte protokolliert."
      "admin.dashboard_phase1.feeds.run_maintenance" => "Feed Maintenance starten"
      "admin.dashboard_phase1.imports.all_sources" => "Alle Quellen"
      "admin.dashboard_phase1.imports.all_statuses" => "Alle Status"
      "admin.dashboard_phase1.imports.changed_fields" => "Geänderte Felder (%count% gesamt, max. 20 angezeigt):"
      "admin.dashboard_phase1.imports.headers.changed" => "Geändert"
      "admin.dashboard_phase1.imports.headers.created" => "Erstellt"
      "admin.dashboard_phase1.imports.headers.date" => "Datum"
      "admin.dashboard_phase1.imports.headers.duration" => "Dauer (s)"
      "admin.dashboard_phase1.imports.headers.errors" => "Fehler"
      "admin.dashboard_phase1.imports.headers.field" => "Feld"
      "admin.dashboard_phase1.imports.headers.message" => "Meldung"
      "admin.dashboard_phase1.imports.headers.new" => "Neu"
      "admin.dashboard_phase1.imports.headers.note" => "Notiz"
      "admin.dashboard_phase1.imports.headers.old" => "Alt"
      "admin.dashboard_phase1.imports.headers.record" => "Datensatz"
      "admin.dashboard_phase1.imports.headers.source" => "Quelle"
      "admin.dashboard_phase1.imports.headers.status" => "Status"
      "admin.dashboard_phase1.imports.headers.time" => "Zeit"
      "admin.dashboard_phase1.imports.load_details_failed" => "Fehler beim Laden der Details."
      "admin.dashboard_phase1.imports.no_details" => "Keine weiteren Details vorhanden."
      "admin.dashboard_phase1.imports.title" => "Import-Historie (Letzte 20)"
      "admin.dashboard_phase1.meta.title" => "Phase-1-Monitoring-Dashboard"
      "admin.dashboard_phase1.page.title" => "Monitoring & Datenqualität"
      "admin.dashboard_phase1.pricing.active_guards" => "aktive Guards"
      "admin.dashboard_phase1.pricing.active_rules" => "aktive Regeln"
      "admin.dashboard_phase1.pricing.daily_digest" => "Daily Digest senden"
      "admin.dashboard_phase1.pricing.dry_run_completed" => "Preis-Testlauf abgeschlossen: %changed% von %checked% Produkten wurden angepasst."
      "admin.dashboard_phase1.pricing.dry_run_failed" => "Preis-Testlauf fehlgeschlagen."
      "admin.dashboard_phase1.pricing.label" => "Pricing Engine:"
      "admin.dashboard_phase1.pricing.live_apply_completed" => "Preis-Live-Ausführung abgeschlossen: %changed% von %checked% Produkten angepasst."
      "admin.dashboard_phase1.pricing.live_apply_failed" => "Preis-Live-Ausführung fehlgeschlagen."
      "admin.dashboard_phase1.pricing.live_confirm" => "Live-Ausführung wirklich starten? Es werden SpecialPrice-Werte aktualisiert."
      "admin.dashboard_phase1.pricing.management" => "Pricing Verwaltung"
      "admin.dashboard_phase1.pricing.total_rules" => "gesamt"
      "admin.dashboard_phase1.quality.all_good" => "✅ Alle Produkte haben gute Qualität!"
      "admin.dashboard_phase1.quality.all_levels" => "Alle Level"
      "admin.dashboard_phase1.quality.confirm_recalculate" => "Qualitäts-Scores für alle Produkte neu berechnen?"
      "admin.dashboard_phase1.quality.critical_issues_title" => "Kritische Mängel"
      "admin.dashboard_phase1.quality.distribution_title" => "Qualitäts-Verteilung"
      "admin.dashboard_phase1.quality.edit" => "Bearbeiten"
      "admin.dashboard_phase1.quality.labels.critical" => "Kritisch"
      "admin.dashboard_phase1.quality.labels.excellent" => "Ausgezeichnet"
      "admin.dashboard_phase1.quality.labels.good" => "Gut"
      "admin.dashboard_phase1.quality.labels.high" => "Hoch"
      "admin.dashboard_phase1.quality.labels.medium" => "Mittel"
      "admin.dashboard_phase1.quality.low_quality_title" => "Produkte mit niedriger Qualität (<%minScore%)"
      "admin.dashboard_phase1.quality.min_score_title" => "Min Score"
      "admin.dashboard_phase1.quality.recalculate" => "Neu berechnen"
      "admin.dashboard_phase1.quality.recalculate_failed" => "Fehler beim Neuberechnen!"
      "admin.dashboard_phase1.quality.recalculated" => "✅ %count% Produkte neu bewertet!"
      "admin.dashboard_phase1.quality.search_placeholder" => "Produkt suchen..."
      "admin.dashboard_phase1.seo.api_failed" => "SEO API fehlgeschlagen"
      "admin.dashboard_phase1.seo.apply_completed" => "%mode%: %updatedCategories% Kategorien aktualisiert, %createdSeoMeta% SEO-Meta neu angelegt."
      "admin.dashboard_phase1.seo.automation_failed" => "SEO-Automatisierung fehlgeschlagen"
      "admin.dashboard_phase1.seo.category_description_template" => "Kategorie Description-Template"
      "admin.dashboard_phase1.seo.category_title_template" => "Kategorie Titel-Template"
      "admin.dashboard_phase1.seo.empty_value" => "leer"
      "admin.dashboard_phase1.seo.issue_headers.canonical_current" => "Canonical aktuell"
      "admin.dashboard_phase1.seo.issue_headers.canonical_expected" => "Canonical erwartet"
      "admin.dashboard_phase1.seo.issue_headers.category" => "Kategorie"
      "admin.dashboard_phase1.seo.issue_headers.redirect_suggestion" => "301-Vorschlag"
      "admin.dashboard_phase1.seo.live_confirm" => "Live-Ausführung starten? SEO-Meta-Daten werden dauerhaft aktualisiert."
      "admin.dashboard_phase1.seo.mode_live_apply" => "Live-Ausführung"
      "admin.dashboard_phase1.seo.mode_test_run" => "Testlauf"
      "admin.dashboard_phase1.seo.no_issues" => "Keine SEO-Auffälligkeiten in den Top-Treffern gefunden."
      "admin.dashboard_phase1.seo.preview_load_failed" => "SEO-Preview konnte nicht geladen werden."
      "admin.dashboard_phase1.seo.redirect_queue_title" => "301 Redirect Queue"
      "admin.dashboard_phase1.seo.redirect_queue.headers.action" => "Aktion"
      "admin.dashboard_phase1.seo.redirect_queue.headers.from" => "From"
      "admin.dashboard_phase1.seo.redirect_queue.headers.reason" => "Reason"
      "admin.dashboard_phase1.seo.redirect_queue.headers.source" => "Quelle"
      "admin.dashboard_phase1.seo.redirect_queue.headers.to" => "To"
      "admin.dashboard_phase1.seo.redirect_queue.load_failed" => "Redirect Queue konnte nicht geladen werden."
      "admin.dashboard_phase1.seo.redirect_queue.mark_done" => "Erledigt"
      "admin.dashboard_phase1.seo.redirect_queue.mark_done_alert_failed" => "Redirect-Warteschlangen-Eintrag konnte nicht als erledigt markiert werden."
      "admin.dashboard_phase1.seo.redirect_queue.mark_done_failed" => "Als erledigt markieren fehlgeschlagen"
      "admin.dashboard_phase1.seo.redirect_queue.none" => "Keine offenen Redirect-Empfehlungen."
      "admin.dashboard_phase1.seo.redirect_queue.refresh_failed" => "Redirect Queue refresh fehlgeschlagen"
      "admin.dashboard_phase1.seo.refresh_preview" => "Preview aktualisieren"
      "admin.dashboard_phase1.seo.refresh_queue" => "Queue refreshen"
      "admin.dashboard_phase1.seo.save_failed" => "SEO-Vorlagen konnten nicht gespeichert werden."
      "admin.dashboard_phase1.seo.save_success" => "SEO-Vorlagen wurden gespeichert."
      "admin.dashboard_phase1.seo.save_templates" => "Templates speichern"
      "admin.dashboard_phase1.seo.summary.canonical_updates" => "Canonical-Aktualisierungen"
      "admin.dashboard_phase1.seo.summary.checked_categories" => "Geprüfte Kategorien"
      "admin.dashboard_phase1.seo.summary.duplicate_product_slugs" => "Doppelte Produkt-Slugs"
      "admin.dashboard_phase1.seo.summary.redirect_suggestions" => "Redirect-Empfehlungen"
      "admin.dashboard_phase1.seo.title" => "SEO Automation 2.0"
      "admin.dashboard_phase1.summary.critical.hint" => "Ungelöst"
      "admin.dashboard_phase1.summary.critical.title" => "Kritische Alerts"
      "admin.dashboard_phase1.summary.import.hint" => "Status"
      "admin.dashboard_phase1.summary.import.title" => "Letzter Import"
      "admin.dashboard_phase1.summary.quality.hint" => "Durchschnitt"
      "admin.dashboard_phase1.summary.quality.title" => "Qualitäts-Score"
      "admin.dashboard_phase1.summary.warning.hint" => "In den letzten 24h"
      "admin.dashboard_phase1.summary.warning.title" => "Warnungen"
      "admin.dashboard_phase1.suspicious.acknowledge" => "Quittieren"
      "admin.dashboard_phase1.suspicious.acknowledge_alert_failed" => "Hinweis konnte nicht quittiert werden."
      "admin.dashboard_phase1.suspicious.acknowledge_failed" => "Quittieren fehlgeschlagen"
      "admin.dashboard_phase1.suspicious.headers.action" => "Aktion"
      "admin.dashboard_phase1.suspicious.headers.date" => "Datum"
      "admin.dashboard_phase1.suspicious.headers.message" => "Meldung"
      "admin.dashboard_phase1.suspicious.headers.product" => "Produkt"
      "admin.dashboard_phase1.suspicious.headers.source" => "Quelle"
      "admin.dashboard_phase1.suspicious.headers.status" => "Status"
      "admin.dashboard_phase1.suspicious.load_failed" => "Fehler beim Laden der Preis-Schutzdaten."
      "admin.dashboard_phase1.suspicious.no_recent_prices" => "✅ Keine auffälligen Preise in den letzten Treffern."
      "admin.dashboard_phase1.suspicious.open_cases_hint" => "Ungelöste unplausible Preise"
      "admin.dashboard_phase1.suspicious.open_cases_title" => "Preis-Schutzfälle (offen)"
      "admin.dashboard_phase1.suspicious.recent_title" => "Letzte Suspicious-Preis-Treffer"
      "admin.dashboard_phase1.suspicious.resolve" => "Lösen"
      "admin.dashboard_phase1.suspicious.resolve_alert_failed" => "Hinweis konnte nicht abgeschlossen werden."
      "admin.dashboard_phase1.suspicious.resolve_failed" => "Abschließen fehlgeschlagen"
      "admin.dashboard_phase1.suspicious.source_filter.all" => "Alle Quellen"
      "admin.dashboard_phase1.suspicious.source_filter.import" => "Import"
      "admin.dashboard_phase1.suspicious.source_filter.pricing" => "Pricing"
      "admin.dashboard_phase1.suspicious.status_filter.all" => "Alle"
      "admin.dashboard_phase1.suspicious.status_filter.open" => "Nur offen"
      "admin.dashboard_phase1.tabs.alerts" => "Alerts (Echtzeit)"
      "admin.dashboard_phase1.tabs.imports" => "Import-Historie"
      "admin.dashboard_phase1.tabs.quality" => "Datenqualität"
      "admin.dashboard.api.errors.import_log_not_found" => "Import-Protokoll wurde nicht gefunden."
      "admin.dashboard.catalog.descriptions.calendar_mini" => "Mini-Kalender mit Buchungsdichte, Anreisen und Abreisen pro Tag."
      "admin.dashboard.catalog.descriptions.quick_links" => "Persönliche Schnelllinks mit integrierter Verwaltung."
      "admin.dashboard.catalog.descriptions.recent_orders" => "Die zuletzt eingegangenen Bestellungen."
      "admin.dashboard.catalog.descriptions.stats_bookings" => "Aktive Aufenthalte, heutige Anreisen und Buchungen der nächsten sieben Tage."
      "admin.dashboard.catalog.descriptions.stats_customers" => "Kundenzahl gesamt und neue Kunden diesen Monat."
      "admin.dashboard.catalog.descriptions.stats_products" => "Aktive Produkte, Niedrigbestand und ausverkaufte Artikel im Überblick."
      "admin.dashboard.catalog.descriptions.stats_revenue" => "Umsatz aus konvertierten Shop-Bestellungen mit korrekter Zeitbasis über den Bestellstatus."
      "admin.dashboard.catalog.descriptions.support_tickets" => "Offene Support-Tickets und aktueller Status."
      "admin.dashboard.catalog.descriptions.todo" => "Persistente persönliche Aufgabenliste für Admins."
      "admin.dashboard.catalog.descriptions.upcoming_bookings" => "Tabelle der nächsten anstehenden Buchungen."
      "admin.dashboard.catalog.descriptions.welcome" => "Willkommens-Banner mit Datum und Nutzername."
      "admin.dashboard.live.booking_table.apartment" => "Wohnung"
      "admin.dashboard.live.booking_table.arrival" => "Anreise"
      "admin.dashboard.live.booking_table.departure" => "Abreise"
      "admin.dashboard.live.booking_table.empty" => "Keine kommenden Buchungen."
      "admin.dashboard.live.booking_table.guest" => "Gast"
      "admin.dashboard.live.booking_table.open_apartment" => "Apartment"
      "admin.dashboard.live.booking_table.open_booking" => "Buchung"
      "admin.dashboard.live.booking_table.status" => "Status"
      "admin.dashboard.live.common.open_module" => "Modul öffnen"
      "admin.dashboard.live.order_table.customer" => "Kunde"
      "admin.dashboard.live.order_table.date" => "Datum"
      "admin.dashboard.live.order_table.edit_order" => "Bearbeiten"
      "admin.dashboard.live.order_table.empty" => "Keine Bestellungen."
      "admin.dashboard.live.order_table.number" => "Bestellung"
      "admin.dashboard.live.order_table.open_order" => "Details"
      "admin.dashboard.live.order_table.status" => "Status"
      "admin.dashboard.live.order_table.total" => "Gesamt"
      "admin.dashboard.live.order_table.unknown_customer" => "Kunde unbekannt"
      "admin.dashboard.live.stats.bookings_active_now" => "Aktiv vor Ort"
      "admin.dashboard.live.stats.bookings_arrivals_today" => "Anreisen heute"
      "admin.dashboard.live.stats.bookings_sub" => "%confirmed% bestätigt · %today% heute"
      "admin.dashboard.live.stats.bookings_total" => "Buchungen gesamt"
      "admin.dashboard.live.stats.bookings_upcoming_week" => "Nächste 7 Tage"
      "admin.dashboard.live.stats.customers_new_month" => "Neu im Monat"
      "admin.dashboard.live.stats.customers_total" => "Kunden gesamt"
      "admin.dashboard.live.stats.open_tickets" => "Offene Tickets"
      "admin.dashboard.live.stats.products_active" => "Aktiv"
      "admin.dashboard.live.stats.products_low_stock" => "Niedrigbestand"
      "admin.dashboard.live.stats.products_out_of_stock" => "Ausverkauft"
      "admin.dashboard.live.stats.products_total" => "Produkte gesamt"
      "admin.dashboard.live.stats.revenue_avg_order" => "Ø Bestellwert"
      "admin.dashboard.live.stats.revenue_last_30_days" => "Letzte 30 Tage"
      "admin.dashboard.live.stats.revenue_month" => "Umsatz im Monat"
      "admin.dashboard.live.stats.revenue_orders" => "Bestellungen"
      "admin.dashboard.live.stats.revenue_total" => "Gesamtumsatz"
      "admin.dashboard.live.support_tickets.empty" => "Keine Tickets vorhanden."
      "admin.dashboard.live.support_tickets.open_ticket" => "Ticket"
      "admin.dashboard.live.support_tickets.related_order" => "Warenkorb"
      "admin.dashboard.modal.active_badge" => "Aktiv"
      "admin.dashboard.modal.active_hint" => "Dieses Widget ist bereits aktiv. Du kannst es trotzdem erneut hinzufügen."
      "admin.dashboard.modal.add" => "Hinzufügen"
      "admin.dashboard.modal.cancel" => "Abbrechen"
      "admin.dashboard.modal.footer_info" => "Aktive Widgets können erneut hinzugefügt werden."
      "admin.dashboard.modal.search_placeholder" => "Widget suchen ..."
      "admin.dashboard.modal.size_label" => "Größe wählen:"
      "admin.dashboard.modal.subtitle" => "Widget auswählen und zum Dashboard hinzufügen"
      "admin.dashboard.modal.title" => "Widget-Bibliothek"
      "admin.dashboard.page.add_widget" => "Widget hinzufügen"
      "admin.dashboard.page.help" => "Hilfe"
      "admin.dashboard.page.help_title" => "Hilfe & Dokumentation"
      "admin.dashboard.page.layout_saved" => "Gespeichert"
      "admin.dashboard.page.title" => "Dashboard"
      "admin.dashboard.page.toggle_fixed" => "Fest"
      "admin.dashboard.page.toggle_movable" => "Bewegbar"
      "admin.dashboard.sizes.full" => "Voll (1/1)"
      "admin.dashboard.sizes.large" => "Groß (2/3)"
      "admin.dashboard.sizes.medium" => "Mittel (1/2)"
      "admin.dashboard.sizes.short_full" => "Voll"
      "admin.dashboard.sizes.short_large" => "Groß"
      "admin.dashboard.sizes.short_medium" => "Mittel"
      "admin.dashboard.sizes.short_small" => "Klein"
      "admin.dashboard.sizes.small" => "Klein (1/3)"
      "admin.dashboard.statuses.cancelled" => "Storniert"
      "admin.dashboard.statuses.completed" => "Abgeschlossen"
      "admin.dashboard.statuses.confirmed" => "Bestätigt"
      "admin.dashboard.statuses.delivered" => "Geliefert"
      "admin.dashboard.statuses.open" => "Offen"
      "admin.dashboard.statuses.ordered" => "Bestellt"
      "admin.dashboard.statuses.paid" => "Bezahlt"
      "admin.dashboard.statuses.pending" => "Ausstehend"
      "admin.dashboard.statuses.processing" => "In Bearbeitung"
      "admin.dashboard.statuses.shipped" => "Versendet"
      "admin.dashboard.widget_actions.delete" => "Entfernen"
      "admin.dashboard.widget_actions.delete_confirm" => "Widget wirklich entfernen?"
      "admin.dashboard.widgets.calendar_mini.current_month" => "Aktueller Monat"
      "admin.dashboard.widgets.calendar_mini.legend.arrivals" => "Anreise"
      "admin.dashboard.widgets.calendar_mini.legend.bookings" => "Belegt"
      "admin.dashboard.widgets.calendar_mini.legend.departures" => "Abreise"
      "admin.dashboard.widgets.calendar_mini.open_calendar" => "Buchungskalender öffnen"
      "admin.dashboard.widgets.calendar_mini.to_calendar" => "Zum Kalender"
      "admin.dashboard.widgets.calendar_mini.weekdays.fri" => "Fr"
      "admin.dashboard.widgets.calendar_mini.weekdays.mon" => "Mo"
      "admin.dashboard.widgets.calendar_mini.weekdays.sat" => "Sa"
      "admin.dashboard.widgets.calendar_mini.weekdays.sun" => "So"
      "admin.dashboard.widgets.calendar_mini.weekdays.thu" => "Do"
      "admin.dashboard.widgets.calendar_mini.weekdays.tue" => "Di"
      "admin.dashboard.widgets.calendar_mini.weekdays.wed" => "Mi"
      "admin.dashboard.widgets.labels.calendar_mini" => "Kalenderübersicht"
      "admin.dashboard.widgets.labels.quick_links" => "Schnelllinks"
      "admin.dashboard.widgets.labels.recent_orders" => "Letzte Bestellungen"
      "admin.dashboard.widgets.labels.stats_bookings" => "Buchungen (Statistik)"
      "admin.dashboard.widgets.labels.stats_customers" => "Kunden (Statistik)"
      "admin.dashboard.widgets.labels.stats_products" => "Produkte (Statistik)"
      "admin.dashboard.widgets.labels.stats_revenue" => "Umsatz (Statistik)"
      "admin.dashboard.widgets.labels.support_tickets" => "Support-Tickets"
      "admin.dashboard.widgets.labels.todo" => "Aufgabenliste"
      "admin.dashboard.widgets.labels.upcoming_bookings" => "Kommende Buchungen"
      "admin.dashboard.widgets.labels.welcome" => "Willkommens-Banner"
      "admin.dashboard.widgets.quick_links.add" => "Link hinzufügen"
      "admin.dashboard.widgets.quick_links.calendar" => "Kalender"
      "admin.dashboard.widgets.quick_links.cancel" => "Abbrechen"
      "admin.dashboard.widgets.quick_links.dashboard" => "Dashboard"
      "admin.dashboard.widgets.quick_links.empty" => "Noch keine Schnelllinks hinterlegt."
      "admin.dashboard.widgets.quick_links.helper" => "Interne Ziele beginnen mit /. Externe Links mit https://."
      "admin.dashboard.widgets.quick_links.icon_placeholder" => "Iconklasse, z. B. fa-calendar"
      "admin.dashboard.widgets.quick_links.label_placeholder" => "Bezeichnung"
      "admin.dashboard.widgets.quick_links.manage" => "Links bearbeiten"
      "admin.dashboard.widgets.quick_links.manage_widgets" => "Widgets verwalten"
      "admin.dashboard.widgets.quick_links.save" => "Links speichern"
      "admin.dashboard.widgets.quick_links.url_placeholder" => "Ziel-URL"
      "admin.dashboard.widgets.todo.add" => "Aufgabe hinzufügen"
      "admin.dashboard.widgets.todo.check_bookings" => "Neue Buchungen prüfen"
      "admin.dashboard.widgets.todo.empty" => "Keine Aufgaben vorhanden."
      "admin.dashboard.widgets.todo.helper" => "Aufgaben werden direkt im Dashboard gespeichert."
      "admin.dashboard.widgets.todo.input_placeholder" => "Neue Aufgabe notieren ..."
      "admin.dashboard.widgets.todo.plan_newsletter" => "Newsletter-Kampagne planen"
      "admin.dashboard.widgets.todo.update_product_images" => "Produktbilder aktualisieren"
      "admin.dashboard.widgets.welcome.greeting" => "Willkommen, %name%!"
      "admin.dashboard.widgets.welcome.today_is" => "Heute ist %date%"
      "admin.feed.config.category_map_placeholder" => "Leuchten=Haus & Garten > Beleuchtung"
      "admin.feed.config.fields.b2b_discount" => "B2B-Rabatt %"
      "admin.feed.config.fields.category_map" => "Kategorie-Mapping (je Zeile: Quelle=Ziel)"
      "admin.feed.config.fields.geizhals_adjustment" => "Geizhals-Anpassung %"
      "admin.feed.config.fields.geizhals_title_max" => "Geizhals-Titel max."
      "admin.feed.config.fields.google_adjustment" => "Google-Anpassung %"
      "admin.feed.config.fields.google_title_max" => "Google-Titel max."
      "admin.feed.config.fields.idealo_adjustment" => "Idealo-Anpassung %"
      "admin.feed.config.fields.idealo_title_max" => "Idealo-Titel max."
      "admin.feed.config.fields.meta_adjustment" => "Meta-Anpassung %"
      "admin.feed.config.fields.meta_title_max" => "Meta-Titel max."
      "admin.feed.config.hint" => "Negative Kanalwerte senken, positive Werte erhöhen den Kanalpreis. Titel werden pro Kanal automatisch gekürzt. Kategorie-Mapping arbeitet auf Teilstring-Basis."
      "admin.feed.config.reload" => "Neu laden"
      "admin.feed.config.title" => "Preisprofil-Konfiguration"
      "admin.feed.controls.channel" => "Kanal"
      "admin.feed.controls.channels.geizhals" => "Geizhals (CSV)"
      "admin.feed.controls.channels.google" => "Google Shopping (XML)"
      "admin.feed.controls.channels.idealo" => "Idealo (CSV)"
      "admin.feed.controls.channels.meta" => "Meta Catalog (CSV)"
      "admin.feed.controls.download" => "Feed herunterladen"
      "admin.feed.controls.limit" => "Limit"
      "admin.feed.controls.load_preview" => "Vorschau laden"
      "admin.feed.controls.profile" => "Preisprofil"
      "admin.feed.heading" => "Product Feed Hub"
      "admin.feed.health.check" => "Prüfen"
      "admin.feed.health.checked_at" => "Letzte Prüfung: %time% | Grenzwert: %hours%h"
      "admin.feed.health.checking" => "Prüfe Feed-Frische mit Grenzwert %hours%h ..."
      "admin.feed.health.columns.age" => "Alter (h)"
      "admin.feed.health.columns.channel" => "Kanal"
      "admin.feed.health.columns.items" => "Einträge"
      "admin.feed.health.columns.profile" => "Profil"
      "admin.feed.health.columns.source" => "Quelle"
      "admin.feed.health.columns.status" => "Status"
      "admin.feed.health.columns.time" => "Zeit"
      "admin.feed.health.empty" => "Noch keine Prüfung ausgeführt."
      "admin.feed.health.loading" => "Health-Daten werden geladen ..."
      "admin.feed.health.no_rows" => "Keine Health-Daten vorhanden."
      "admin.feed.health.statuses.healthy" => "Healthy"
      "admin.feed.health.statuses.missing" => "Missing"
      "admin.feed.health.statuses.stale" => "Stale"
      "admin.feed.health.title" => "Feed Health"
      "admin.feed.maintenance.empty" => "Noch kein Lauf ausgeführt."
      "admin.feed.maintenance.failed" => "Maintenance fehlgeschlagen."
      "admin.feed.maintenance.run" => "Alle Feeds neu generieren + Health prüfen"
      "admin.feed.maintenance.running" => "Maintenance läuft ..."
      "admin.feed.maintenance.success" => "Maintenance abgeschlossen: %count% Feed-Dateien generiert, Health healthy=%healthy%, stale=%stale%, missing=%missing%."
      "admin.feed.maintenance.title" => "One-Click-Maintenance"
      "admin.feed.notifications.config_save_failed" => "Feed-Konfiguration konnte nicht gespeichert werden."
      "admin.feed.notifications.config_saved" => "Feed-Konfiguration gespeichert."
      "admin.feed.page_title" => "Feed-Exporte"
      "admin.feed.preview.columns.b2b_price" => "B2B-Preis"
      "admin.feed.preview.columns.current_price_b2c" => "Aktueller Preis (B2C)"
      "admin.feed.preview.columns.geizhals_price" => "Geizhals-Preis"
      "admin.feed.preview.columns.google_price" => "Google-Preis"
      "admin.feed.preview.columns.id" => "ID"
      "admin.feed.preview.columns.idealo_price" => "Idealo-Preis"
      "admin.feed.preview.columns.link" => "Link"
      "admin.feed.preview.columns.meta_price" => "Meta-Preis"
      "admin.feed.preview.columns.title" => "Titel"
      "admin.feed.preview.empty" => "Noch keine Daten geladen."
      "admin.feed.preview.no_rows" => "Keine passenden Produkte."
      "admin.feed.preview.product_link" => "Produkt"
      "admin.feed.preview.title" => "Vorschau"
      "admin.feed.runs.columns.channel" => "Kanal"
      "admin.feed.runs.columns.format" => "Format"
      "admin.feed.runs.columns.items" => "Einträge"
      "admin.feed.runs.columns.profile" => "Profil"
      "admin.feed.runs.columns.source" => "Quelle"
      "admin.feed.runs.columns.target" => "Ziel"
      "admin.feed.runs.columns.time" => "Zeit"
      "admin.feed.runs.empty" => "Noch keine Runs geladen."
      "admin.feed.runs.no_rows" => "Keine Export-Runs vorhanden."
      "admin.feed.runs.refresh" => "Aktualisieren"
      "admin.feed.runs.title" => "Letzte Export-Runs"
      "admin.feed.subtitle" => "Google-, Meta-, Idealo- und Geizhals-Feeds zentral verwalten."
      "admin.feed.summary.preview_count" => "Einträge in der Vorschau"
      "admin.feed.summary.public_urls" => "Öffentliche Feed-URLs:"
      "admin.help.cms.actions.back" => "Zurück"
      "admin.help.cms.actions.module" => "Zum Modul"
      "admin.help.cms.navigation.items_html" => """
        <li class="mb-1"><a href="#seiten"><i class="fa fa-file-text"></i> Seiten (Pages)</a></li>\n
        <li class="mb-1"><a href="#builder-v2"><i class="fa fa-magic"></i> Page Builder v2</a></li>\n
        <li class="mb-1"><a href="#menues"><i class="fa fa-bars"></i> Menüs</a></li>\n
        <li class="mb-1"><a href="#slider"><i class="fa fa-picture-o"></i> Slider</a></li>\n
        <li class="mb-1"><a href="#widgets"><i class="fa fa-puzzle-piece"></i> Widgets</a></li>\n
        <li class="mb-1"><a href="#felder"><i class="fa fa-th-list"></i> Feldreferenz</a></li>\n
        <li class="mb-1"><a href="#rollen"><i class="fa fa-lock"></i> Rollen</a></li>
        """
      "admin.help.cms.navigation.title" => "Navigation"
      "admin.help.cms.page_title" => "Hilfe: CMS – Seiten, Menüs & Slider"
      "admin.help.cms.sections.builder.body_html" => """
        <p>Seiteninhalte werden im CMS über den Builder gepflegt. Der klassische <code>content</code>-Editor ist im Formular nicht mehr vorgesehen.</p>\n
        <h5>Workflow (Entwurf -> Veröffentlichung):</h5>\n
        <ol>\n
          <li>Seite öffnen: <code>/admin/page/edit/{id}</code></li>\n
          <li>Status im Bereich <strong>Seite</strong> setzen: <strong>Entwurf</strong> oder <strong>Öffentlich</strong></li>\n
          <li>Im Tab <strong>Builder</strong> auf <strong>Abschnitt hinzufügen</strong> klicken - ein Modal öffnet sich mit allen Typen</li>\n
          <li>Abschnitt auswählen, im rechten Editor konfigurieren</li>\n
          <li>Entwurf speichern</li>\n
          <li>Mit <strong>Veröffentlichen</strong> den Live-Stand aktualisieren</li>\n
        </ol>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-bullhorn"></i>\n
          <strong>Wichtig:</strong> Ein gespeicherter Entwurf ist <strong>nicht öffentlich</strong>.\n
          Öffentlich sichtbar ist nur der veröffentlichte Stand. Mit <strong>Offline schalten</strong> wird die Seite wieder aus dem Frontend entfernt.\n
        </div>\n
        <h5>Verbesserte UX (v2.1):</h5>\n
        <ul>\n
          <li><strong>Dropdowns statt ID-Eingabe:</strong> Content-Block, Widget und Kategorie werden direkt per Dropdown aus dem System gewählt - keine IDs mehr notieren!</li>\n
          <li><strong>Bild-Upload:</strong> Bei Bild-Feldern (Hero, Bild+Text) kann eine Datei direkt hochgeladen werden (JPG/PNG/GIF/WebP, max. 5 MB). Alternativ URL manuell eingeben.</li>\n
          <li><strong>Bildposition:</strong> Links/Rechts per Dropdown wählbar</li>\n
          <li><strong>CTA-Variante:</strong> Primär/Dunkel/Hell per Dropdown</li>\n
          <li><strong>Newsletter-Abschnitt:</strong> Neuer Inline-Anmeldeblock mit Variante, Platzhalter und Hinweistext, fest angebunden an das vorhandene Newsletter-Abo</li>\n
          <li><strong>Kennzahlen-Abschnitt:</strong> AppStrap-inspirierte Counter-Karten mit Wert, Suffix, Label und optionalem Bildhintergrund</li>\n
          <li><strong>Beispielvorlagen:</strong> Für alle Abschnittstypen stehen eingebaute Beispielvorlagen direkt im Builder bereit</li>\n
          <li><strong>Status im Formular:</strong> Bereits beim Anlegen/Bearbeiten wird direkt zwischen <code>Entwurf</code> und <code>Öffentlich</code> gewählt</li>\n
        </ul>\n
        <h5>Abschnittstypen:</h5>\n
        <ul>\n
          <li><strong>Inhalt:</strong> <code>hero</code>, <code>text</code>, <code>image_text</code>, <code>cta_banner</code>, <code>newsletter</code>, <code>counter_cards</code>, <code>faq</code></li>\n
          <li><strong>Erweitert:</strong> <code>testimonials</code>, <code>pricing_table</code>, <code>icon_list</code>, <code>video</code></li>\n
          <li><strong>Einbindungen:</strong> <code>content_block</code> (Dropdown), <code>widget</code> (Dropdown), <code>product_grid</code> (Kategorie per Dropdown)</li>\n
          <li><strong>Sonstiges:</strong> <code>spacer</code>, <code>legacy_html</code></li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-lightbulb-o"></i>\n
          <strong>Produkt-Grid Tipp:</strong> Bei <code>Anzahl Produkte = 1</code> rendert das Frontend eine Angebotsansicht mit großem Bild, Produktinfos, Warenkorb-/Wunschlisten-Buttons und B2B-Aktionen.\n
        </div>\n
        <h5>Sichtbarkeit pro Abschnitt:</h5>\n
        <ul>\n
          <li>Zielgruppe: <code>all</code>, <code>guests</code>, <code>logged_in</code></li>\n
          <li>Zeitfenster: sichtbar ab/bis</li>\n
          <li>Serverseitig ausgewertet beim Rendern</li>\n
        </ul>\n
        <h5>Revisionen:</h5>\n
        <ul>\n
          <li>Beim Anlegen, Speichern und Veröffentlichen wird automatisch ein Snapshot erstellt</li>\n
          <li>Aufruf: <code>/admin/page/{id}/revisions</code></li>\n
          <li>Funktionen: Wiederherstellen und Löschen</li>\n
          <li>Aufbewahrung: maximal 50 Revisionen je Seite</li>\n
        </ul>\n
        <h5>Abschnittsvorlagen:</h5>\n
        <ul>\n
          <li>Verwaltung: <code>/admin/section-templates</code></li>\n
          <li>Im Builder direkt einfügen</li>\n
          <li>Aktuellen Abschnitt als Vorlage speichern</li>\n
        </ul>\n
        <h5>Bild-Upload API:</h5>\n
        <div class="alert alert-info">\n
          <i class="fa fa-upload"></i> <code>POST /admin/page/api/upload-image</code> - Datei als <code>multipart/form-data</code> mit Feld <code>image</code>. Antwort: <code>{"url": "/uploads/pages/..."}</code>.<br>\n
          Bilder werden in <code>public/uploads/pages/</code> gespeichert.\n
        </div>
        """
      "admin.help.cms.sections.builder.title" => "Page Builder v2"
      "admin.help.cms.sections.fields.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Feld</th><th>Typ</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>title</code></td><td>Text</td><td>Seitentitel (H1 + Browser-Tab)</td></tr>\n
            <tr><td><code>slug</code></td><td>Text (unique)</td><td>URL-Pfad nach /page/</td></tr>\n
            <tr><td><code>content</code></td><td>HTML</td><td>Legacy-Datenbestand (nicht mehr im Formular gepflegt)</td></tr>\n
            <tr><td><code>pageTemplate</code></td><td>Text</td><td>Template-Auswahl der Seite</td></tr>\n
            <tr><td><code>builderSections</code></td><td>JSON</td><td>Aktueller Entwurf des Builders</td></tr>\n
            <tr><td><code>publishedSections</code></td><td>JSON</td><td>Live-Stand der zuletzt veröffentlichten Version</td></tr>\n
            <tr><td><code>isPublished</code></td><td>Boolean</td><td>Veröffentlichungsstatus</td></tr>\n
            <tr><td><code>publishedAt</code></td><td>DateTime</td><td>Zeitpunkt der Veröffentlichung</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.cms.sections.fields.title" => "Feldreferenz: Page"
      "admin.help.cms.sections.menus.body_html" => """
        <p>Das Menü-System verwaltet die Navigation des Shops.</p>\n
        <div class="row">\n
          <div class="col-md-6">\n
            <h5>Hauptnavigation (Header):</h5>\n
            <ul>\n
              <li>Modul: <code>/admin/menu</code></li>\n
              <li>Shop-Hauptmenü oben</li>\n
              <li>Drag-and-Drop-Sortierung (<code>admin_menu_order</code>)</li>\n
            </ul>\n
          </div>\n
          <div class="col-md-6">\n
            <h5>Footer-Navigation:</h5>\n
            <ul>\n
              <li>Modul: <code>/admin/footer-menu</code></li>\n
              <li>Oberes Footer-Menü für Service- und Inhaltsgruppen</li>\n
              <li>Untere Legal-Leiste für Impressum, Datenschutz, AGB, Widerruf und weitere Pflichtseiten</li>\n
              <li>Berechtigung: <code>ROLE_ADMIN_FOOTER_MENU_MANAGE</code></li>\n
            </ul>\n
          </div>\n
        </div>\n
        <div class="row mt-2">\n
          <div class="col-md-6">\n
            <h5>Shop-Menü:</h5>\n
            <ul>\n
              <li>Modul: <code>/admin/shop-menu</code></li>\n
              <li>Berechtigung: <code>ROLE_ADMIN_SHOP_MENU_MANAGE</code></li>\n
            </ul>\n
          </div>\n
        </div>\n
        <h5>Menü-Eintrag anlegen:</h5>\n
        <ul>\n
          <li><code>label</code>: Anzeigename</li>\n
          <li><code>url</code> oder <code>route</code>: Ziel-URL oder Symfony-Route</li>\n
          <li><code>sortOrder</code>: Reihenfolge</li>\n
          <li><code>isActive</code>: Sichtbarkeit</li>\n
        </ul>
        """
      "admin.help.cms.sections.menus.title" => "Menüs verwalten"
      "admin.help.cms.sections.pages.body_html" => """
        <p>Statische Seiten (Impressum, AGB, Datenschutz, Über uns, etc.) werden über das Seiten-Modul verwaltet.</p>\n
        <ol>\n
          <li><strong>CMS -> Seiten -> + Neue Seite</strong></li>\n
          <li><strong>Titel</strong> eingeben</li>\n
          <li><strong>Slug</strong>: URL-freundlicher Bezeichner (z.B. <code>agb</code> -> erreichbar unter <code>/agb</code>)</li>\n
          <li><strong>Builder</strong>: Inhalte modular über den Tab <code>Builder</code> pflegen</li>\n
          <li>Optional: SEO-Titel und Meta-Description</li>\n
          <li><strong>Footer-Platzierung</strong>: Oberes Footer-Menü für Service-Spalten oder untere Legal-Leiste für rechtliche Pflichtseiten wählen</li>\n
          <li>Seite speichern und veröffentlichen</li>\n
        </ol>\n
        <h5>Spezielle System-Seiten:</h5>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Slug</th><th>Inhalt</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>impressum</code></td><td>Impressum</td></tr>\n
            <tr><td><code>agb</code></td><td>Allgemeine Geschäftsbedingungen</td></tr>\n
            <tr><td><code>datenschutzerklaerung</code></td><td>Datenschutzerklärung</td></tr>\n
            <tr><td><code>widerrufsbelehrung</code></td><td>Widerrufsbelehrung</td></tr>\n
            <tr><td><code>zahlungsarten</code></td><td>Zahlungsarten</td></tr>\n
            <tr><td><code>versandrichtlinien</code></td><td>Versandrichtlinien</td></tr>\n
            <tr><td><code>batteriegesetz</code></td><td>Batteriegesetz</td></tr>\n
          </tbody>\n
        </table>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Impressum und Datenschutz können als veröffentlichte Page-Builder-Seiten mit den Slugs <code>impressum</code> und <code>datenschutzerklaerung</code> gepflegt werden. Solange keine veröffentlichte Seite existiert, greift der alte Fallback-Inhalt.\n
        </div>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-exclamation-triangle"></i> Seiten-Slugs nicht nachträglich ändern - Links aus externen Quellen und SEO-Rankings gehen verloren.\n
        </div>
        """
      "admin.help.cms.sections.pages.title" => "Seiten (Pages) verwalten"
      "admin.help.cms.sections.permissions.body_html" => """
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Modul</th><th>Berechtigung</th></tr></thead>\n
          <tbody>\n
            <tr><td>Seiten</td><td><code>ROLE_ADMIN_PAGE_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Seiten veröffentlichen</td><td><code>ROLE_ADMIN_PAGE_PUBLISH</code></td></tr>\n
            <tr><td>Seiten-Revisionen</td><td><code>ROLE_ADMIN_PAGE_REVISIONS</code></td></tr>\n
            <tr><td>Abschnittsvorlagen</td><td><code>ROLE_ADMIN_SECTION_TEMPLATES</code></td></tr>\n
            <tr><td>Hauptmenü</td><td><code>ROLE_ADMIN_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Footer-Menü</td><td><code>ROLE_ADMIN_FOOTER_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Shop-Menü</td><td><code>ROLE_ADMIN_SHOP_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
            <tr><td>Slider</td><td><code>ROLE_ADMIN_SLIDER_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code></td></tr>\n
            <tr><td>Widgets</td><td><code>ROLE_ADMIN_WIDGET_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code></td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.cms.sections.permissions.title" => "Berechtigungen"
      "admin.help.cms.sections.slider.body_html" => """
        <p>Das Slider-Modul arbeitet mit einem kuratierten NFOK-Layout-Katalog. Ein Slide besteht aus Layout, optionalem Kurzlabel, Überschrift, Text, template-spezifischen Zusatzinhalten, optionalem Bild, Grundfarbe und CTA.</p>\n
        <ol>\n
          <li><strong>CMS -> Slider -> + Neuer Slide</strong></li>\n
          <li><strong>Slider-Layout</strong> auswählen, z. B. Service Hero, Commerce Hero, Produktfokus oder Automation Flow</li>\n
          <li>Optionales <strong>Kurzlabel</strong> pflegen, wenn das gewählte Layout dieses Feld im Frontend ausgibt und oberhalb der Überschrift ein kleiner Hinweistext erscheinen soll</li>\n
          <li><strong>Überschrift</strong> und optionalen Begleittext eingeben</li>\n
          <li><strong>Template-Inhalte (JSON)</strong> pflegen, wenn das Layout zusätzliche Karten, Kennzahlen, Schritte, Produktboxen oder Referenzdaten ausgibt</li>\n
          <li><strong>Bild</strong> hochladen (empfohlen: breite Hero-Grafik ab 1600px Breite)</li>\n
          <li>Optional: <strong>Button-Text</strong> und <strong>Button-URL</strong></li>\n
          <li>Auf der gewünschten Seite <strong>Slider anzeigen</strong> aktivieren und dieselbe <strong>Slider-Variante</strong> wählen</li>\n
          <li>Speichern, veröffentlichen und im Frontend prüfen</li>\n
        </ol>\n
        <h5>Layout-Empfehlungen:</h5>\n
        <ul>\n
          <li><strong>NFOK Service Hero:</strong> ruhiger Haupt-Hero für Startseite, Leistungen, CMS, Beratung und NFOK.WORK-Positionierung</li>\n
          <li><strong>Commerce Hero:</strong> helle Shop-Bühne für Aktionen, Kategorien, Produktwelten, saisonale Kampagnen und direkte Kaufimpulse</li>\n
          <li><strong>Produktfokus:</strong> starke Produkt- oder Systemvorstellung mit Bildfokus, klarer CTA-Fläche und konzentrierter Botschaft</li>\n
          <li><strong>Feature Stack:</strong> strukturierte Präsentation für Module, Funktionen, technische Leistungsbausteine und mehrere Nutzenargumente</li>\n
          <li><strong>Trust & Kennzahlen:</strong> zentrierter Vertrauens-Hero für Kennzahlen, Betriebssicherheit, Verlässlichkeit, Datenschutz und Qualitätsversprechen</li>\n
          <li><strong>Technical Dark:</strong> dunkles technisches Layout für APIs, Backend, Integrationen, Datenimporte, Schnittstellen und Architekturthemen</li>\n
          <li><strong>Editorial Minimal:</strong> reduziertes Textlayout für klare Aussagen, Leitgedanken, Ankündigungen ohne Bilddominanz und ruhige redaktionelle Einstiege</li>\n
          <li><strong>Automation Flow:</strong> Prozess- und Workflow-Layout für Automatisierung, Jobs, Importketten, Systemlogik und wiederkehrende Abläufe</li>\n
          <li><strong>Case Study:</strong> Referenz-Layout für Projektergebnisse, Kundenstories, Vorher-Nachher-Erfolge und konkrete Umsetzungsbeispiele</li>\n
          <li><strong>Announcement Strip:</strong> kompakter Hinweis-Slider für Releases, Wartungshinweise, Aktionen, kurze News und zeitkritische Meldungen</li>\n
        </ul>\n
        <p>Alle sichtbaren Inhalte wie Kurzlabel, Überschrift, Text, Button, Modul-Karten, Kennzahlen, Prozess-Schritte und Hintergrundfarbe werden pro Slide gepflegt. Layouts dürfen keine festen Frontend-Texte erzwingen. Felder, die ein Layout nicht rendert, werden im Admin ausgeblendet.</p>\n
        <h5>Animation:</h5>\n
        <ul>\n
          <li>NFOK-Layouts nutzen dezente Einlaufanimationen für Kurzlabel, Überschrift, Text, CTA, Bild und Zusatzmodule.</li>\n
          <li>Die Animationen bleiben ruhig und professionell und respektieren reduzierte Bewegung in den Systemeinstellungen.</li>\n
          <li>Legacy Slider 1 bis 3 bleiben aus Kompatibilitätsgründen im alten Verhalten.</li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-lock"></i> <strong>Berechtigungen:</strong>\n
          <code>ROLE_ADMIN_SLIDER_LIST</code> /\n
          <code>ROLE_ADMIN_SLIDER_ADD</code> /\n
          <code>ROLE_ADMIN_SLIDER_EDIT</code> /\n
          <code>ROLE_ADMIN_SLIDER_DELETE</code>\n
        </div>
        """
      "admin.help.cms.sections.slider.title" => "Slider verwalten"
      "admin.help.cms.sections.widgets.body_html" => """
        <p>Widgets sind dynamische Seitenblöcke, die in verschiedenen Bereichen des Layouts erscheinen können.</p>\n
        <ul>\n
          <li>Modul: <code>/admin/widget</code></li>\n
          <li>Berechtigung: <code>ROLE_ADMIN_WIDGET_*</code></li>\n
          <li>Typen: Banner, Textblock, Newsletter-Anmeldung, Kategorie-Showcase</li>\n
          <li>Über <code>blockKey</code> in Templates eingebunden (ähnlich wie Content-Blöcke)</li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Für flexible, nicht-Widget-basierte Inhaltsbereiche -> <a href="/admin/help/content">Content-Blöcke verwenden</a>.\n
        </div>
        """
      "admin.help.cms.sections.widgets.title" => "Widgets"
      "admin.help.dashboard.actions.back" => "Zurück zur Übersicht"
      "admin.help.dashboard.actions.module" => "Zum Dashboard"
      "admin.help.dashboard.navigation.items_html" => """
        <li class="mb-1"><a href="#overview"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#widgets"><i class="fa fa-th-large"></i> Widgets & Links</a></li>\n
        <li class="mb-1"><a href="#metrics"><i class="fa fa-line-chart"></i> Kennzahlen & Berechnung</a></li>\n
        <li class="mb-1"><a href="#customization"><i class="fa fa-sliders"></i> Anpassung & Speicherung</a></li>
        """
      "admin.help.dashboard.navigation.title" => "Navigation"
      "admin.help.dashboard.page_title" => "Hilfe: Dashboard & Widgets"
      "admin.help.dashboard.sections.customization.body_html" => """
        <ul>\n
          <li><strong>Widget hinzufügen:</strong> Öffnet die Bibliothek mit Suche, Beschreibung und Größenwahl.</li>\n
          <li><strong>Fest/Bewegbar:</strong> Der Button rechts oben schaltet das Verschieben des Grids um. Im Modus <em>Fest</em> ist die Reihenfolge geschützt, im Modus <em>Bewegbar</em> kann per Drag & Drop sortiert werden.</li>\n
          <li><strong>Layout speichern:</strong> Reihenfolge, Breite und Widget-Konfiguration werden pro Backend-User gespeichert.</li>\n
          <li><strong>Schnelllinks & To-dos:</strong> Diese Inhalte sind Teil der Widget-Konfiguration und bleiben nach Reload oder erneutem Login erhalten.</li>\n
        </ul>
        """
      "admin.help.dashboard.sections.customization.title" => "Anpassung & Speicherung"
      "admin.help.dashboard.sections.metrics.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Widget</th><th>Berechnung</th><th>Modullink</th></tr></thead>\n
          <tbody>\n
            <tr><td>Buchungen</td><td>Zeigt aktuelle Aufenthalte, heutige Anreisen und die nächsten sieben Tage statt einer bloßen Gesamtanzahl.</td><td>Kalendermodul</td></tr>\n
            <tr><td>Umsatz</td><td>Berechnet aus konvertierten Warenkörben; offene und stornierte Vorgänge werden ausgeschlossen, Zeitbasis ist die letzte relevante Aktualisierung.</td><td>Analytics-Modul</td></tr>\n
            <tr><td>Produkte</td><td>Zeigt Gesamtzahl, aktive Produkte, Niedrigbestand und ausverkaufte Artikel.</td><td>Shop-Produkte oder Analytics</td></tr>\n
            <tr><td>Kunden</td><td>Gesamtkunden und Neuzugänge des laufenden Monats.</td><td>Kundenverwaltung</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.dashboard.sections.metrics.title" => "Kennzahlen & Berechnung"
      "admin.help.dashboard.sections.overview.body_html" => """
        <p>Das Dashboard unter <code>/admin</code> ist die persönliche Startseite für Backend-User mit <code>ROLE_ADMIN_DASHBOARD_LIST</code>. Widgets können hinzugefügt, in der Breite angepasst, verschoben und pro Benutzer gespeichert werden.</p>\n
        <div class="alert alert-info"><i class="fa fa-refresh"></i> Die Statistik-Widgets laden ihre Live-Daten automatisch nach und aktualisieren sich regelmäßig ohne Seitenwechsel.</div>\n
        <div class="alert alert-success"><i class="fa fa-link"></i> Listen-Widgets verlinken jetzt direkt auf Datensätze wie Buchungen, Apartments, Tickets und Bestellungen.</div>
        """
      "admin.help.dashboard.sections.overview.title" => "Überblick"
      "admin.help.dashboard.sections.widgets.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Widget</th><th>Inhalt</th><th>Direktaktionen</th></tr></thead>\n
          <tbody>\n
            <tr><td>Kalenderübersicht</td><td>Mini-Kalender mit Tagesfeldern, Belegungen, Anreisen und Abreisen für den aktuellen Monat.</td><td>Jeder Tag verlinkt direkt in den Kalender, zusätzlich gibt es den Modul-Link.</td></tr>\n
            <tr><td>Kommende Buchungen</td><td>Nächste Buchungen mit Gast, Zeitraum und Status.</td><td>Link zur Buchung und zum zugehörigen Apartment.</td></tr>\n
            <tr><td>Letzte Bestellungen</td><td>Aktuelle Shop-Bestellungen auf Basis konvertierter Warenkörbe.</td><td>Direkt zu Details und Bearbeitung der Bestellung.</td></tr>\n
            <tr><td>Support-Tickets</td><td>Offene Tickets mit Status und Bezug.</td><td>Direkt zum Ticket, optional zum verknüpften Warenkorb.</td></tr>\n
            <tr><td>Schnelllinks</td><td>Persönliche Links zu internen oder externen Zielen.</td><td>Links direkt im Widget pflegen, hinzufügen, entfernen und speichern.</td></tr>\n
            <tr><td>Aufgabenliste</td><td>Persönliche To-do-Liste statt statischem Platzhalter.</td><td>Aufgaben anlegen, abhaken und löschen, Änderungen werden gespeichert.</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.dashboard.sections.widgets.title" => "Widgets & Links"
      "admin.help.feeds.actions.back" => "Zurück"
      "admin.help.feeds.actions.module" => "Zum Modul"
      "admin.help.feeds.navigation.items_html" => """
        <li class="mb-1"><a href="#ueberblick"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#google-shopping"><i class="fa fa-google"></i> Google Shopping Feed</a></li>\n
        <li class="mb-1"><a href="#facebook"><i class="fa fa-facebook"></i> Facebook/Meta Feed</a></li>\n
        <li class="mb-1"><a href="#custom"><i class="fa fa-cog"></i> Custom-Feeds</a></li>\n
        <li class="mb-1"><a href="#export-log"><i class="fa fa-history"></i> Export-Log</a></li>\n
        <li class="mb-1"><a href="#health"><i class="fa fa-heartbeat"></i> Feed-Health</a></li>\n
        <li class="mb-1"><a href="#urls"><i class="fa fa-link"></i> Feed-URLs</a></li>
        """
      "admin.help.feeds.navigation.title" => "Navigation"
      "admin.help.feeds.page_title" => "Hilfe: Produkt-Feeds"
      "admin.help.feeds.sections.custom.body_html" => """
        <p>Weitere Export-Formate für Preisvergleichsportale:</p>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Feed</th><th>Format</th><th>URL</th></tr></thead>\n
          <tbody>\n
            <tr><td>Idealo</td><td>CSV</td><td><code>/feeds/idealo.csv</code></td></tr>\n
            <tr><td>Billiger.de</td><td>CSV</td><td><code>/feeds/billiger.csv</code></td></tr>\n
            <tr><td>Kelkoo</td><td>XML</td><td><code>/feeds/kelkoo.xml</code></td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.feeds.sections.custom.title" => "Custom-Feeds"
      "admin.help.feeds.sections.export_log.body_html" => """
        <p>Im Admin werden alle Feed-Generierungen protokolliert:</p>\n
        <ul>\n
          <li>Zeitstempel der letzten Generierung</li>\n
          <li>Anzahl exportierter Produkte</li>\n
          <li>Fehler (z.B. fehlende Pflichtfelder)</li>\n
          <li>Dateigröße des generierten Feeds</li>\n
        </ul>\n
        <p>Exporte mit Fehlern werden <strong>nicht</strong> veröffentlicht - der vorherige gültige Feed bleibt aktiv.</p>
        """
      "admin.help.feeds.sections.export_log.title" => "Feed-Export-Log"
      "admin.help.feeds.sections.facebook.body_html" => """
        <p>Für Facebook/Instagram Shopping wird ein <strong>CSV-Feed</strong> im Meta-Format generiert.</p>\n
        <ul>\n
          <li>Felder: id, title, description, availability, condition, price, link, image_link, brand</li>\n
          <li>Täglich automatisch aktualisiert</li>\n
          <li>URL: <code>/feeds/facebook.csv</code></li>\n
        </ul>
        """
      "admin.help.feeds.sections.facebook.title" => "Facebook/Meta Catalog Feed"
      "admin.help.feeds.sections.google_shopping.body_html" => """
        <p>Der Google Shopping Feed wird im <strong>XML-Format</strong> (Google Merchant Center Spezifikation) generiert.</p>\n
        <h5>Enthaltene Felder:</h5>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Google-Feld</th><th>Quelle</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>g:id</code></td><td>Produkt-ID</td></tr>\n
            <tr><td><code>title</code></td><td><code>product.name</code></td></tr>\n
            <tr><td><code>description</code></td><td><code>product.shortDescription</code> oder <code>product.description</code></td></tr>\n
            <tr><td><code>link</code></td><td>Absolute URL zur Produktseite</td></tr>\n
            <tr><td><code>image_link</code></td><td>Primäres Produktbild</td></tr>\n
            <tr><td><code>price</code></td><td><code>product.price</code> (inkl. MwSt.)</td></tr>\n
            <tr><td><code>sale_price</code></td><td><code>product.specialPrice</code> (wenn gesetzt)</td></tr>\n
            <tr><td><code>availability</code></td><td>in stock / out of stock basierend auf <code>stock</code></td></tr>\n
            <tr><td><code>brand</code></td><td><code>product.manufacturer</code> oder Fallback <code>NFOK</code></td></tr>\n
            <tr><td><code>gtin / mpn</code></td><td><code>product.ean</code> / <code>product.sku</code></td></tr>\n
            <tr><td><code>google_product_category</code></td><td>Aus Kategorie-Mapping</td></tr>\n
          </tbody>\n
        </table>\n
        <h5>Voraussetzungen für Google Shopping:</h5>\n
        <ul>\n
          <li>Produkt muss <code>isActive = true</code> haben</li>\n
          <li>Mindestens ein Produktbild muss vorhanden sein</li>\n
          <li>Preis muss gesetzt sein</li>\n
          <li>EAN/GTIN sollte für bessere Qualität gesetzt sein</li>\n
        </ul>
        """
      "admin.help.feeds.sections.google_shopping.title" => "Google Shopping Feed"
      "admin.help.feeds.sections.health.body_html" => """
        <p>Auf der Feed-Übersichtsseite werden Qualitätskennzahlen angezeigt:</p>\n
        <ul>\n
          <li><strong>Ausgeschlossene Produkte</strong>: Fehlende Pflichtfelder (Bild, Preis, EAN)</li>\n
          <li><strong>Letzte erfolgreiche Generierung</strong>: Zeitstempel</li>\n
          <li><strong>Anteil mit EAN</strong>: Besser für Google Shopping (&gt;80% empfohlen)</li>\n
        </ul>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-exclamation-triangle"></i> Wenn &lt;50% der Produkte im Feed landen, Google Shopping Konto prüfen und Produktdaten ergänzen.\n
        </div>
        """
      "admin.help.feeds.sections.health.title" => "Feed-Health"
      "admin.help.feeds.sections.overview.body_html" => """
        <p>Das <strong>Feed-Modul</strong> generiert Produktdaten-Exporte für externe Plattformen wie Google Shopping, Facebook/Meta und weitere Preisvergleichs-Portale.</p>\n
        <div class="alert alert-info">\n
          <i class="fa fa-refresh"></i> Feeds werden automatisch per <strong>Cron-Job</strong> täglich aktualisiert. Eine manuelle Regenerierung ist über den Admin-Bereich möglich.\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-lock"></i> <strong>Berechtigung:</strong> <code>ROLE_ADMIN_FEED_MANAGE</code>\n
        </div>\n
        <p>Öffentliche Feed-URLs sind unter <strong>/feeds/*</strong> erreichbar (kein Login nötig).</p>
        """
      "admin.help.feeds.sections.overview.title" => "Feeds: Überblick"
      "admin.help.feeds.sections.urls.body_html" => """
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Feed</th><th>URL</th><th>Format</th><th>Aktualisierung</th></tr></thead>\n
          <tbody>\n
            <tr><td>Google Shopping</td><td><code>/feeds/google.xml</code></td><td>XML (RSS 2.0)</td><td>täglich 03:00</td></tr>\n
            <tr><td>Facebook Catalog</td><td><code>/feeds/facebook.csv</code></td><td>CSV</td><td>täglich 03:30</td></tr>\n
            <tr><td>Idealo</td><td><code>/feeds/idealo.csv</code></td><td>CSV</td><td>täglich 04:00</td></tr>\n
          </tbody>\n
        </table>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Die URLs können direkt in den jeweiligen Ad-Plattformen (Google Merchant Center, Meta Business Manager) eingetragen werden.\n
        </div>
        """
      "admin.help.feeds.sections.urls.title" => "Feed-URLs (Öffentlich)"
      "admin.help.index.cards.alerts.description" => "Severity, Acknowledge, Bulk-Actions"
      "admin.help.index.cards.alerts.title" => "System-Alerts"
      "admin.help.index.cards.cms.description" => "Page Builder v2, Revisionen, Vorlagen, Slider, Widgets"
      "admin.help.index.cards.cms.title" => "CMS (Seiten, Menüs, Widgets)"
      "admin.help.index.cards.dashboard.description" => "Live-Kennzahlen, Kalender, Schnelllinks und persönliche Startseite"
      "admin.help.index.cards.dashboard.title" => "Dashboard & Widgets"
      "admin.help.index.cards.feeds.description" => "Google Shopping, CSV-Export"
      "admin.help.index.cards.feeds.title" => "Produkt-Feeds"
      "admin.help.index.cards.media.description" => "Uploads, SEO-Dateinamen, Alt-Texte und Bildverwendung"
      "admin.help.index.cards.media.title" => "Media Center"
      "admin.help.index.cards.products.description" => "Anlegen, bearbeiten, Wave-Daten, Bilder, Bulk-Delete"
      "admin.help.index.cards.products.title" => "Produkte & Kategorien"
      "admin.help.index.cards.roles.description" => "Alle ROLE_ADMIN_* Berechtigungen"
      "admin.help.index.cards.roles.title" => "Rollen & Rechte"
      "admin.help.index.intro.description" => "Hier findest du ausführliche Anleitungen, Feldreferenzen und API-Dokumentation für alle Backend-Module. Nutze die Kacheln unten oder die Seitennavigation für den direkten Einstieg."
      "admin.help.index.intro.title" => "Willkommen im Admin-Hilfecenter."
      "admin.help.index.page_heading" => "Admin-Dokumentation & Hilfe"
      "admin.help.index.page_subtitle" => "Vollständige Referenz aller Backend-Module"
      "admin.help.index.page_title" => "Admin-Dokumentation & Hilfe"
      "admin.help.index.reference.headers.function" => "Funktion"
      "admin.help.index.reference.headers.module" => "Modul"
      "admin.help.index.reference.headers.role" => "Benötigte Rolle"
      "admin.help.index.reference.headers.url" => "URL"
      "admin.help.index.reference.rows.abtests.description" => "Inhalts-Experimente"
      "admin.help.index.reference.rows.abtests.label" => "A/B-Tests"
      "admin.help.index.reference.rows.alerts.description" => "System-Warnmeldungen"
      "admin.help.index.reference.rows.alerts.label" => "Alerts"
      "admin.help.index.reference.rows.cms.description" => "Page Builder v2, Revisionen, Abschnittsvorlagen, Widgets, Menüs"
      "admin.help.index.reference.rows.cms.label" => "CMS"
      "admin.help.index.reference.rows.dashboard.description" => "Personalisierte Startseite mit Live-Widgets und Direktlinks"
      "admin.help.index.reference.rows.dashboard.label" => "Dashboard"
      "admin.help.index.reference.rows.feeds.description" => "Google Shopping Feed"
      "admin.help.index.reference.rows.feeds.label" => "Feeds"
      "admin.help.index.reference.rows.import.description" => "Crawler, SQL-Import, Logs"
      "admin.help.index.reference.rows.import.label" => "Import"
      "admin.help.index.reference.rows.media.description" => "Zentrale Medienbibliothek mit Upload, Metadaten, Nutzungsscan und geschütztem Löschen"
      "admin.help.index.reference.rows.media.label" => "Media Center"
      "admin.help.index.reference.rows.products.description" => "Produkt- und Kategorie-CRUD"
      "admin.help.index.reference.rows.products.label" => "Produkte & Kategorien"
      "admin.help.index.reference.rows.roles.description" => "Rollen- & Rechtevergabe"
      "admin.help.index.reference.rows.roles.label" => "Rollen"
      "admin.help.index.reference.title" => "Schnellreferenz: Alle Admin-Module"
      "admin.help.media.actions.back" => "Zurück zur Übersicht"
      "admin.help.media.actions.module" => "Zum Media Center"
      "admin.help.media.navigation.items_html" => """
        <li class="mb-1"><a href="#ueberblick"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#upload"><i class="fa fa-upload"></i> Upload & Verzeichnisse</a></li>\n
        <li class="mb-1"><a href="#seo"><i class="fa fa-search"></i> SEO-Dateinamen & Alt-Texte</a></li>\n
        <li class="mb-1"><a href="#verwendung"><i class="fa fa-link"></i> Aktuelle Verwendung</a></li>\n
        <li class="mb-1"><a href="#loeschen"><i class="fa fa-trash"></i> Löschen & Schutzlogik</a></li>\n
        <li class="mb-1"><a href="#rollen"><i class="fa fa-lock"></i> Rollen</a></li>
        """
      "admin.help.media.navigation.title" => "Navigation"
      "admin.help.media.page_title" => "Hilfe: Media Center"
      "admin.help.media.sections.delete.body_html" => """
        <p>Medien mit aktiver Verwendung können nicht gelöscht werden. Erst wenn der Nutzungsscan keine Fundstelle mehr meldet, erscheint die Löschaktion. Das schützt Produktseiten, Slider und Page-Builder-Inhalte vor kaputten Bildern.</p>\n
        <div class="alert alert-warning"><i class="fa fa-lock"></i> Umbenennen ist erlaubt, weil bekannte Referenzen automatisch auf den neuen Pfad aktualisiert werden.</div>
        """
      "admin.help.media.sections.delete.title" => "Löschen & Schutzlogik"
      "admin.help.media.sections.overview.body_html" => """
        <p>Das Media Center unter <code>/admin/media</code> ist die zentrale Medienbibliothek für Backend-Uploads. Es indexiert erlaubte Upload-Verzeichnisse, zeigt technische Bilddaten und verbindet Dateien mit Metadaten wie Titel, Alt-Text und Beschreibung.</p>\n
        <div class="alert alert-info"><i class="fa fa-picture-o"></i> Angezeigt werden allgemeine Bilder, Produktbilder, Page-Builder-Bilder, Shop-Dateien, Sliderbilder und Theme-Assets unter <code>public/uploads</code>.</div>
        """
      "admin.help.media.sections.overview.title" => "Überblick"
      "admin.help.media.sections.permissions.body_html" => """
        <table class="table table-bordered table-sm">\n
          <tbody>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_LIST</code></td><td>Medienbibliothek anzeigen</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_ADD</code></td><td>Dateien hochladen</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_EDIT</code></td><td>Metadaten und SEO-Dateinamen bearbeiten</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_DELETE</code></td><td>Ungenutzte Dateien löschen</td></tr>\n
            <tr><td><code>ROLE_ADMIN_MEDIA_MANAGE</code></td><td>Index-Scan und Verwaltungsaktionen</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.media.sections.permissions.title" => "Rollen"
      "admin.help.media.sections.seo.body_html" => """
        <p>Im Detailformular kann der sichtbare Dateiname ohne Endung gepflegt werden. Beim Speichern normalisiert das System den Namen zu einem URL-freundlichen Slug, behält die Dateiendung bei und aktualisiert bekannte Referenzen.</p>\n
        <ul>\n
          <li><strong>Alt-Text:</strong> Für Bilder empfohlen, weil er Barrierefreiheit, Produktsuche und SEO unterstützt.</li>\n
          <li><strong>Titel:</strong> Interner Anzeigename für die Verwaltung.</li>\n
          <li><strong>Beschreibung:</strong> Für Lizenz-, Copyright- oder Pflegehinweise nutzbar.</li>\n
        </ul>
        """
      "admin.help.media.sections.seo.title" => "SEO-Dateinamen & Alt-Texte"
      "admin.help.media.sections.upload.body_html" => """
        <ul>\n
          <li><strong>Upload:</strong> Dateien werden in ein bewusst erlaubtes Zielverzeichnis gespeichert; Pfad-Ausbrüche und unbekannte Ziele werden blockiert.</li>\n
          <li><strong>Scan:</strong> Der Button <em>Verzeichnisse scannen</em> gleicht Dateisystem und Medienindex ab und entfernt veraltete Indexeinträge.</li>\n
          <li><strong>Dateitypen:</strong> Bilder, PDF, Text/CSV, Office-Dateien und ZIP-Archive sind vorgesehen. Ausführbare Dateien werden nicht als Media-Upload akzeptiert.</li>\n
          <li><strong>Größe:</strong> Uploads sind auf 20 MB je Datei begrenzt.</li>\n
        </ul>
        """
      "admin.help.media.sections.upload.title" => "Upload & Verzeichnisse"
      "admin.help.media.sections.usage.body_html" => """
        <p>Die Spalte <strong>Verwendung</strong> zeigt, ob ein Medium aktuell in bekannten Modulen genutzt wird. Die Detailseite listet die Fundstellen mit Direktlink, wenn das Ziel eine Admin-Route besitzt.</p>\n
        <table class="table table-bordered table-sm">\n
          <thead><tr><th>Quelle</th><th>Erkennung</th></tr></thead>\n
          <tbody>\n
            <tr><td>Produkte</td><td><code>ProductImage.imageName</code></td></tr>\n
            <tr><td>Slider</td><td>Gespeicherter Bildpfad</td></tr>\n
            <tr><td>Seiten/Page Builder</td><td>Bildpfade in Entwurf und veröffentlichten Abschnitten</td></tr>\n
            <tr><td>Blog</td><td>Beitragsbild</td></tr>\n
            <tr><td>SEO</td><td>Open-Graph-Bild</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.media.sections.usage.title" => "Aktuelle Verwendung"
      "admin.help.products.actions.back" => "Zurück zur Übersicht"
      "admin.help.products.actions.module" => "Zum Modul"
      "admin.help.products.navigation.items_html" => """
        <li class="mb-1"><a href="#produkte-uebersicht"><i class="fa fa-list-ul"></i> Produkt-Übersicht</a></li>\n
        <li class="mb-1"><a href="#produkt-anlegen"><i class="fa fa-plus"></i> Produkt anlegen</a></li>\n
        <li class="mb-1"><a href="#wave-produktdaten-holer"><i class="fa fa-download"></i> Wave Produktdaten holen</a></li>\n
        <li class="mb-1"><a href="#produkt-felder"><i class="fa fa-th-list"></i> Alle Felder (Referenz)</a></li>\n
        <li class="mb-1"><a href="#medien"><i class="fa fa-image"></i> Medien &amp; Uploads</a></li>\n
        <li class="mb-1"><a href="#bulk"><i class="fa fa-pencil"></i> Massenbearbeitung &amp; Bulk-Aktionen</a></li>\n
        <li class="mb-1"><a href="#kategorien"><i class="fa fa-folder"></i> Kategorien</a></li>\n
        <li class="mb-1"><a href="#konfigurierbar"><i class="fa fa-sliders"></i> Produkt-Konfigurationen</a></li>\n
        <li class="mb-1"><a href="#api"><i class="fa fa-code"></i> API-Endpunkte</a></li>
        """
      "admin.help.products.navigation.title" => "Navigation"
      "admin.help.products.page_title" => "Hilfe: Produkte & Kategorien"
      "admin.help.products.sections.api.body_html" => """
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Methode</th><th>URL</th><th>Funktion</th></tr></thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/produkte</code></td><td>Liste aller Produkte</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/produkt/neu</code></td><td>Neues Produkt anlegen</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/produkt/bearbeiten/{id}</code></td><td>Produkt bearbeiten</td></tr>\n
            <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/produkt/wave-lookup?ean={ean}&amp;articleNumber={sku}</code></td><td>Wave-Produktdaten per EAN oder Wave-Art.-Nr. für die Formular-Vorbefüllung laden (AJAX)</td></tr>\n
            <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/produkt/loeschen/{id}</code></td><td>Einzelnes Produkt löschen</td></tr>\n
            <tr><td><span class="badge badge-warning">POST</span></td><td><code>/admin/shop/produkte/bulk-edit</code></td><td>Ausgewählte Produkte gemeinsam bearbeiten</td></tr>\n
            <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/produkte/bulk-delete</code></td><td>Mehrere Produkte löschen</td></tr>\n
            <tr><td><span class="badge badge-danger">DELETE</span></td><td><code>/admin/shop/bild-loeschen/{id}</code></td><td>Einzelnes Bild löschen (AJAX)</td></tr>\n
            <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/kategorien</code></td><td>Liste aller Kategorien</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/kategorie/neu</code></td><td>Neue Kategorie anlegen</td></tr>\n
            <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/kategorie/bearbeiten/{id}</code></td><td>Kategorie bearbeiten</td></tr>\n
            <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/kategorie/loeschen/{id}</code></td><td>Kategorie löschen</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.products.sections.api.title" => "API-Endpunkte"
      "admin.help.products.sections.bulk.body_html" => """
        <h5>Schnell-/Massenbearbeitung</h5>\n
        <ol>\n
          <li>Checkboxen in der Produktliste anklicken (oder "Alle auswählen").</li>\n
          <li>Button <kbd>Massenbearbeitung</kbd> öffnen.</li>\n
          <li>Im Modal nur die Felder aktivieren, die wirklich geändert werden sollen. Nicht aktivierte Felder bleiben unverändert.</li>\n
          <li>Unterstützte Felder: Produktname, Kategorie, Lagerbestand, Versandart, Lieferzeit, Abholung, Nur Abholung, Preis setzen oder erhöhen/senken, Freitext 1/2, Hersteller, Veröffentlichung/Entwurf und Kaufbar/Bestellbar.</li>\n
          <li><kbd>Änderungen anwenden</kbd> speichert die Werte für alle ausgewählten Produkte.</li>\n
        </ol>\n
        <p><strong>API-Route Massenbearbeitung:</strong> <code>POST /admin/shop/produkte/bulk-edit</code><br>\n
        <strong>Parameter:</strong> <code>selected[]</code>, <code>bulk_fields[]</code>, <code>bulk[...]</code> + CSRF-Token <code>_token</code></p>\n
        <h5>Bulk-Delete</h5>\n
        <ol>\n
          <li>Checkboxen in der Produktliste anklicken (oder "Alle auswählen").</li>\n
          <li>Button <kbd>Ausgewählte löschen</kbd> anklicken.</li>\n
          <li>Bestätigungsdialog (Bootstrap Modal) erscheint - bestätigen.</li>\n
          <li>System prüft: Produkte in offenen Bestellungen werden <strong>übersprungen</strong> (Fehlermeldung im Flash-Bag).</li>\n
        </ol>\n
        <p><strong>API-Route Bulk-Delete:</strong> <code>POST /admin/shop/produkte/bulk-delete</code><br>\n
        <strong>Parameter:</strong> <code>selected[] = [id1, id2, ...]</code> + CSRF-Token <code>_token</code></p>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-exclamation-triangle"></i> Produktname und Preis sind bewusst als aktivierbare Felder ausgeführt: Sie werden nur geändert, wenn die jeweilige Checkbox im Modal gesetzt ist.\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Über den Toolbar-Button <strong>Alle löschbaren löschen</strong> kannst du zusätzlich alle Produkte in einem Schritt entfernen, die <em>nicht</em> in Bestellungen referenziert sind. Bestellgeschützte Produkte bleiben automatisch erhalten.\n
        </div>\n
        <div class="alert alert-secondary">\n
          <i class="fa fa-eye-slash"></i> Bestellgeschützte Produkte kannst du in der Produktliste jetzt direkt über den Sichtbarkeits-Button aktivieren/deaktivieren, statt sie zu löschen.\n
        </div>
        """
      "admin.help.products.sections.bulk.title" => "Massenbearbeitung & Bulk-Aktionen"
      "admin.help.products.sections.categories.body_html" => """
        <p>Kategorien erreichst du unter <code>/admin/shop/kategorien</code>. Sie bilden die Navigationsstruktur des Shops.</p>\n
        <table class="table table-bordered table-sm">\n
          <thead class="thead-light"><tr><th>Feld</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>name</code></td><td>Kategorie-Name (erscheint im Menü und in Breadcrumbs)</td></tr>\n
            <tr><td><code>slug</code></td><td>URL-Segment der Kategorie-Seite</td></tr>\n
            <tr><td><code>parent</code></td><td>Übergeordnete Kategorie für Hierarchie (Unterkategorien)</td></tr>\n
            <tr><td><code>description</code></td><td>Beschreibung (erscheint oben auf der Kategorie-Seite)</td></tr>\n
            <tr><td><code>image</code></td><td>Kategorie-Bild (Vorschau auf Kategorie-Kacheln)</td></tr>\n
            <tr><td><code>seoMeta</code></td><td>SEO-Metadaten für die Kategorie-Seite</td></tr>\n
            <tr><td><code>isActive</code></td><td>Kategorie im Shop sichtbar</td></tr>\n
            <tr><td><code>sortOrder</code></td><td>Reihenfolge in der Navigation</td></tr>\n
          </tbody>\n
        </table>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Kategorien lassen sich beliebig tief verschachteln. Im Shop-Menü wird der Baum automatisch aus der Parent-Relation aufgebaut.\n
        </div>
        """
      "admin.help.products.sections.categories.title" => "Kategorien verwalten"
      "admin.help.products.sections.configurable.body_html" => """
        <p>Für individuelle Computer und System-Builds ist der gruppenbasierte PC-/System-Konfigurator unter <code>/admin/product-configurator/</code> das Hauptmodul. Der optionsbasierte Editor unter <code>/admin/configurable-product/</code> bleibt nur für einfache Varianten wie Farbe, Größe oder Material bestehen.</p>\n
        <ul>\n
          <li><strong>PC-/System-Konfigurator (Hauptpfad):</strong> Ein Basisprodukt mit Gruppen von auswählbaren Artikeln, z. B. CPU, RAM, GPU oder SSD (Entities: <code>ProductConfigurator</code>, <code>ConfiguratorGroup</code>, <code>ConfiguratorGroupProduct</code>)</li>\n
          <li><strong>Varianten-Editor:</strong> Ein Basisprodukt mit einfachen Optionen wie Farbe, Größe oder Material (Entities: <code>ConfigurableProduct</code>, <code>ProductOption</code>, <code>ProductOptionValue</code>)</li>\n
          <li><strong>Suchbare Produktauswahl:</strong> Beide Builder nutzen im Admin eine suchbare Produktauswahl, damit große Kataloge schneller gepflegt werden können.</li>\n
          <li><strong>Tier-Preise:</strong> Mengenrabatte (Entity: <code>ProductTierPrice</code>)</li>\n
        </ul>\n
        <p>Empfohlene Reihenfolge für Rechner: zuerst das Basis-System festlegen, dann Komponenten-Gruppen anlegen und anschließend die konkreten Produkte zuordnen. Den Varianten-Editor nur für einfache Auswahlfelder verwenden.</p>
        """
      "admin.help.products.sections.configurable.title" => "Produkt-Konfigurationen"
      "admin.help.products.sections.create.body_html" => """
        <ol>\n
          <li class="mb-2">Navigiere zu <strong>Shop -> Produkte -> + Neues Produkt</strong> oder rufe <code>/admin/shop/produkt/neu</code> auf.</li>\n
          <li class="mb-2">Trage im Abschnitt <strong>EAN & Wave</strong> eine <strong>EAN/GTIN</strong> oder, falls keine EAN vorhanden ist, die <strong>Wave-Art.-Nr.</strong> im Feld Artikelnummer ein und klicke auf <kbd>Daten von Wave laden</kbd>, wenn Stammdaten von Wave Distribution übernommen werden sollen.</li>\n
          <li class="mb-2">Prüfe die übernommenen Felder und ergänze alle Pflichtfelder, insbesondere den <strong>Preis</strong>, da Wave aktuell keinen öffentlichen Verkaufspreis liefert.</li>\n
          <li class="mb-2">Lade mindestens ein <strong>Produktbild</strong> hoch oder aktiviere im Wave-Bereich die Bildübernahme, damit die erkannten Wave-Produktbilder beim Speichern automatisch importiert werden.</li>\n
          <li class="mb-2">Ordne das Produkt optional einer <strong>Kategorie</strong> zu oder bestätige die vorgeschlagene lokale Kategorie, damit es in Navigation, Filtern und Feeds sauber einsortiert ist.</li>\n
          <li class="mb-2">Optional: SEO-Metadaten im Abschnitt <strong>SEO</strong> prüfen. Canonical-URLs werden aus Shop-Domain und Slug vorbelegt, können aber manuell angepasst werden.</li>\n
          <li class="mb-2">Klicke <kbd>Speichern</kbd>. Sichtbarkeit und Kaufbarkeit steuerst du rechts über <strong>Produkt veröffentlichen</strong> und <strong>Kaufbar / Bestellbar</strong>; der Lagerbestand steuert zusätzlich die Kaufaktion.</li>\n
        </ol>\n
        <div class="alert alert-success">\n
          <i class="fa fa-lightbulb-o"></i> <strong>Tipp:</strong> Slug wird automatisch aus dem Produktnamen generiert. Er kann manuell angepasst werden (URL-freundlich, kleingeschrieben, Bindestriche statt Leerzeichen).\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Die Wave-Vorbefüllung kann jetzt die erkannten Produktbilder aus der Wave-Galerie beim Speichern importieren. Externe Canonical-/OG-URLs werden weiterhin bewusst nicht übernommen.\n
        </div>
        """
      "admin.help.products.sections.create.title" => "Schritt-für-Schritt: Produkt anlegen"
      "admin.help.products.sections.fields.body_html" => """
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Feld</th><th>Typ</th><th>Pflicht</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>name</code></td><td>Text</td><td><span class="badge badge-danger">Ja</span></td><td>Produktname, erscheint im Shop und in Bestellungen</td></tr>\n
            <tr><td><code>slug</code></td><td>Text</td><td><span class="badge badge-danger">Ja</span></td><td>URL-Bezeichner (auto-generiert), z.B. <code>mein-produkt</code></td></tr>\n
            <tr><td><code>category</code></td><td>Relation</td><td><span class="badge badge-secondary">Nein</span></td><td>Zugehörige Kategorie; empfohlen für Navigation, Filter und Feed-Zuordnung</td></tr>\n
            <tr><td><code>label</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Optionales Produktlabel für besondere Kennzeichnungen</td></tr>\n
            <tr><td><code>tags</code></td><td>Text/Liste</td><td><span class="badge badge-secondary">Nein</span></td><td>Schlagwörter, kommagetrennt gepflegt</td></tr>\n
            <tr><td><code>ean</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>EAN/GTIN/Barcode; primäre Suche für Wave-Vorbefüllung</td></tr>\n
            <tr><td><code>manufacturer</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Hersteller/Marke; wird auch für Produkt-Feeds genutzt</td></tr>\n
            <tr><td><code>sku</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Artikelnummer; dient ohne EAN als Wave-Art.-Nr. für die Vorbefüllung</td></tr>\n
            <tr><td><code>shortDescription</code></td><td>HTML/Richtext</td><td><span class="badge badge-secondary">Nein</span></td><td>Kurzbeschreibung für Listen, Teaser und Feeds</td></tr>\n
            <tr><td><code>description</code></td><td>HTML/Richtext</td><td><span class="badge badge-secondary">Nein</span></td><td>Ausführliche Produktbeschreibung (Summernote-Editor)</td></tr>\n
            <tr><td><code>price</code></td><td>Geldbetrag</td><td><span class="badge badge-danger">Ja</span></td><td>Bruttopreis in Euro (z.B. <code>19.99</code>)</td></tr>\n
            <tr><td><code>specialPrice</code></td><td>Geldbetrag</td><td><span class="badge badge-secondary">Nein</span></td><td>Sonderpreis; wird verwendet, wenn gefüllt und größer 0</td></tr>\n
            <tr><td><code>uvp</code></td><td>Geldbetrag</td><td><span class="badge badge-secondary">Nein</span></td><td>Unverbindliche Preisempfehlung/Vergleichspreis</td></tr>\n
            <tr><td><code>mwst</code></td><td>Auswahl</td><td><span class="badge badge-secondary">Nein</span></td><td>MwSt.-Satz aus den verfügbaren Steuersätzen</td></tr>\n
            <tr><td><code>stock</code></td><td>Integer</td><td><span class="badge badge-secondary">Nein</span></td><td>Lagerbestand, Standardwert 1, Mindestwert 0</td></tr>\n
            <tr><td><code>shippingMethod</code></td><td>Relation</td><td><span class="badge badge-secondary">Nein</span></td><td>Versandart; kann die Lieferzeit automatisch vorbelegen</td></tr>\n
            <tr><td><code>pickupAvailable</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td>Aktiviert Abholung im Geschäft als zusätzliche Lieferart für dieses Produkt</td></tr>\n
            <tr><td><code>pickupOnly</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td>Erlaubt ausschließlich Abholung im Geschäft; Versand wird im Checkout für dieses Produkt gesperrt</td></tr>\n
            <tr><td><code>pickupNote</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Interner Hinweis zur Abholung, etwa Lagerort oder Vorbereitungsschritt</td></tr>\n
            <tr><td><code>deliveryTime</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Lieferzeit, z.B. <code>1-3 Werktage</code></td></tr>\n
            <tr><td><code>weight</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Gewicht für Versand und technische Daten</td></tr>\n
            <tr><td><code>length</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Länge des Produkts oder Pakets</td></tr>\n
            <tr><td><code>width</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Breite des Produkts oder Pakets</td></tr>\n
            <tr><td><code>height</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Höhe des Produkts oder Pakets</td></tr>\n
            <tr><td><code>material</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Materialangabe, falls relevant</td></tr>\n
            <tr><td><code>countryOfOrigin</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Herkunftsland</td></tr>\n
            <tr><td><code>custom1</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Freies Zusatzfeld 1</td></tr>\n
            <tr><td><code>custom2</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Freies Zusatzfeld 2</td></tr>\n
            <tr><td><code>isActive</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td><strong>Produkt veröffentlichen</strong>: steuert die Shop-Sichtbarkeit</td></tr>\n
            <tr><td><code>available</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td><strong>Kaufbar / Bestellbar</strong>: manuelle Sperre für die Kaufbarkeit</td></tr>\n
            <tr><td><code>images</code></td><td>Upload</td><td><span class="badge badge-secondary">Nein</span></td><td>Produktbilder: JPG, JPEG, PNG, GIF, WebP, AVIF bis 8 MB je Datei</td></tr>\n
            <tr><td><code>downloads</code></td><td>Upload</td><td><span class="badge badge-secondary">Nein</span></td><td>Digitale Downloads: PDF, ZIP, CSV, TXT, Office-Dateien bis 20 MB je Datei</td></tr>\n
            <tr><td><code>videoUrl</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Externe Video-URL für Produktmedien</td></tr>\n
            <tr><td><code>seoMeta.metaTitle</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Seitentitel</td></tr>\n
            <tr><td><code>seoMeta.metaDescription</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Meta-Beschreibung</td></tr>\n
            <tr><td><code>seoMeta.metaKeywords</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Keywords</td></tr>\n
            <tr><td><code>seoMeta.ogTitle</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Titel</td></tr>\n
            <tr><td><code>seoMeta.ogDescription</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Beschreibung</td></tr>\n
            <tr><td><code>seoMeta.ogImage</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Bild-URL</td></tr>\n
            <tr><td><code>seoMeta.canonical</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Canonical-URL, wird aus Shop-Domain und Slug vorbelegt</td></tr>\n
            <tr><td><code>seoMeta.next</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Optionale Next-URL</td></tr>\n
            <tr><td><code>seoMeta.metaRobots</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Robots-Angabe, z.B. <code>index,follow</code></td></tr>\n
            <tr><td><code>seoMeta.ogLocale</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Locale</td></tr>\n
            <tr><td><code>seoMeta.ogType</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Typ</td></tr>\n
            <tr><td><code>seoMeta.ogUrl</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-URL</td></tr>\n
            <tr><td><code>seoMeta.ogSiteName</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Site-Name</td></tr>\n
            <tr><td><code>seoMeta.articleModifiedTime</code></td><td>Datum/Zeit</td><td><span class="badge badge-secondary">Nein</span></td><td>Zeitpunkt der letzten inhaltlichen Änderung</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.help.products.sections.fields.title" => "Feldreferenz: Produkt"
      "admin.help.products.sections.images.body_html" => """
        <p>Im Produktformular verwaltest du Bilder, Downloads und Video-URL im Abschnitt <strong>Medien</strong>. Links liegt der Bereich <strong>Uploads &amp; Einbindungen</strong>, rechts die aktuelle Galerie.</p>\n
        <ul>\n
          <li>Erlaubte Bildformate: <strong>JPG, JPEG, PNG, GIF, WebP, AVIF</strong></li>\n
          <li>Maximale Bildgröße: <strong>8 MB</strong> pro Datei</li>\n
          <li>Downloads: <strong>PDF, ZIP, CSV, TXT, DOC, DOCX, XLS, XLSX, PPT, PPTX</strong> bis <strong>20 MB</strong> pro Datei</li>\n
          <li>Video-URL: externe Video- oder Einbindungs-URL für die Produktdarstellung</li>\n
          <li>Bilder werden in <code>public/uploads/products/</code> gespeichert</li>\n
          <li>Einzelnes Bild löschen: Button <kbd><i class="fa fa-times"></i></kbd> neben dem Bild (AJAX, ohne Seiten-Reload)</li>\n
          <li>API-Route: <code>DELETE /admin/shop/bild-loeschen/{id}</code></li>\n
          <li>Erstes Bild = Hauptbild in Listen- und Detailansicht</li>\n
        </ul>\n
        <div class="alert alert-info">\n
          <i class="fa fa-info-circle"></i> Beim Löschen einzelner Bilder und beim Löschen eines Produkts werden der Datenbankeintrag und die zugehörige Datei im Upload-Ordner entfernt, sofern die Datei dort vorhanden ist.\n
        </div>
        """
      "admin.help.products.sections.images.title" => "Medien & Uploads verwalten"
      "admin.help.products.sections.overview.body_html" => """
        <p>Die Produktliste erreichst du unter <code>/admin/shop/produkte</code>. Sie zeigt alle Produkte in einer kompakten Arbeitsansicht mit Bild, Stammdaten, Preis/Lager, Versand/Abholung, Status und Metadaten.</p>\n
        <div class="row">\n
          <div class="col-md-6">\n
            <h5>Funktionen in der Liste:</h5>\n
            <ul>\n
              <li><strong>Suchen:</strong> Volltextsuche über Name und SKU</li>\n
              <li><strong>Filtern:</strong> Nach Kategorie, Lagerbestand</li>\n
              <li><strong>Sortieren:</strong> Per Klick auf Spaltenköpfe</li>\n
              <li><strong>Bearbeiten:</strong> Button <kbd><i class="fa fa-edit"></i></kbd> in der Zeile</li>\n
              <li><strong>Löschen:</strong> Button <kbd><i class="fa fa-trash"></i></kbd> (mit Bestätigungsdialog)</li>\n
              <li><strong>Massenbearbeitung:</strong> Checkboxen auswählen, Button <kbd>Massenbearbeitung</kbd> öffnen und nur die Felder aktivieren, die gemeinsam überschrieben werden sollen</li>\n
              <li><strong>Bulk-Delete:</strong> Checkboxen auswählen -> Button "Ausgewählte löschen"</li>\n
              <li><strong>Alle löschbaren löschen:</strong> Toolbar-Aktion für alle Produkte ohne Bestellreferenz</li>\n
            </ul>\n
          </div>\n
          <div class="col-md-6">\n
            <div class="alert alert-warning">\n
              <i class="fa fa-exclamation-triangle"></i> <strong>Hinweis:</strong> Produkte, die in Bestellungen referenziert werden, können <em>nicht</em> gelöscht werden. Der Bulk-Delete prüft dies automatisch.\n
            </div>\n
            <div class="alert alert-info">\n
              <i class="fa fa-lock"></i> <strong>Berechtigung:</strong> <code>ROLE_ADMIN_SHOP_MANAGE</code> für Lesen; <code>ROLE_ADMIN_SHOP_ADD/EDIT/DELETE</code> für Schreiben.\n
            </div>\n
          </div>\n
        </div>
        """
      "admin.help.products.sections.overview.title" => "Produkt-Übersicht"
      "admin.help.products.sections.wave.body_html" => """
        <p>Der <strong>Wave Produktdaten Holer</strong> sitzt direkt im Produktformular unter <code>/admin/shop/produkt/neu</code> und <code>/admin/shop/produkt/bearbeiten/{id}</code> im Abschnitt <strong>EAN & Wave</strong>. Er füllt neue oder bestehende Produkte per AJAX mit Daten von Wave Distribution vor.</p>\n
        <div class="row">\n
          <div class="col-md-6">\n
            <h5>Suchlogik</h5>\n
            <ul>\n
              <li><strong>Primär:</strong> Suche über EAN/GTIN/Barcode.</li>\n
              <li><strong>Fallback:</strong> Wenn keine EAN eingetragen ist, wird die Artikelnummer als Wave-Art.-Nr. verwendet.</li>\n
              <li><strong>Endpoint:</strong> <code>GET /admin/shop/produkt/wave-lookup?ean={ean}&amp;articleNumber={sku}</code></li>\n
              <li><strong>Berechtigung:</strong> <code>ROLE_ADMIN_SHOP_MANAGE</code>, <code>ROLE_ADMIN_SHOP_ADD</code> oder <code>ROLE_ADMIN_SHOP_EDIT</code>.</li>\n
            </ul>\n
          </div>\n
          <div class="col-md-6">\n
            <h5>Übernommene Daten</h5>\n
            <ul>\n
              <li>Name, Hersteller, Artikelnummer, Beschreibung und Kurzbeschreibung.</li>\n
              <li>Kategoriehinweis mit Abgleich auf lokale Kategorien.</li>\n
              <li>Textbasierte SEO-Daten wie Meta Title, Meta Description und Keywords.</li>\n
              <li>Technische Daten wie EAN, Gewicht, Maße, Material und Herkunftsland, soweit Wave sie liefert.</li>\n
            </ul>\n
          </div>\n
        </div>\n
        <div class="alert alert-warning">\n
          <i class="fa fa-euro"></i> <strong>Preis bleibt unverändert:</strong> Der Verkaufspreis wird absichtlich nicht überschrieben. Wenn Wave keinen öffentlichen Preis liefert, erscheint ein Hinweis und der vorhandene Preis bleibt stehen.\n
        </div>\n
        <div class="alert alert-info">\n
          <i class="fa fa-image"></i> <strong>Bilder:</strong> Gefundene Wave-Bilder werden erst beim Speichern importiert, wenn die Option <em>Produktbilder beim Speichern importieren</em> aktiv ist. Die Vorschau zeigt nur die vorgemerkten Bilder.\n
        </div>\n
        <div class="alert alert-secondary">\n
          <i class="fa fa-link"></i> Externe Canonical- und OG-URLs werden nicht direkt übernommen. Das Produktformular hält SEO-URLs unter der eigenen Shop-Domain.\n
        </div>
        """
      "admin.help.products.sections.wave.title" => "Wave Produktdaten holen"
      "admin.import.actions.close" => "Schließen"
      "admin.import.actions.delete" => "Löschen"
      "admin.import.actions.details" => "Details"
      "admin.import.actions.help" => "Hilfe"
      "admin.import.actions.import_log" => "Import-Log"
      "admin.import.actions.log" => "Log"
      "admin.import.actions.promote" => "Live setzen"
      "admin.import.actions.promote_to_live" => "Dry-Run live setzen"
      "admin.import.actions.refresh" => "Aktualisieren"
      "admin.import.actions.refresh_file_list" => "Dateiliste aktualisieren"
      "admin.import.actions.replace_texts" => "Texte ersetzen"
      "admin.import.actions.retry" => "Erneut starten"
      "admin.import.actions.retry_mark" => "Erneut starten"
      "admin.import.actions.save_notes" => "Notizen speichern"
      "admin.import.actions.start" => "Starten"
      "admin.import.actions.start_selected_sql_import" => "SQL-Import starten"
      "admin.import.actions.stop" => "Stoppen"
      "admin.import.api.not_found" => "Eintrag nicht gefunden."
      "admin.import.api.promote_only_dry_run" => "Nur Dry-Run-Einträge können live gesetzt werden."
      "admin.import.api.retry_only_failed" => "Nur fehlgeschlagene Importe können erneut gestartet werden."
      "admin.import.booking_csv.actions.add_mapping" => "Hinzufügen"
      "admin.import.booking_csv.actions.back_to_import" => "Zum CSV-Import"
      "admin.import.booking_csv.actions.cancel" => "Abbrechen"
      "admin.import.booking_csv.actions.manage_mappings" => "Zimmertyp-Mapping verwalten"
      "admin.import.booking_csv.actions.preview" => "Vorschau anzeigen"
      "admin.import.booking_csv.actions.run_import" => "Jetzt importieren"
      "admin.import.booking_csv.actions.save_mappings" => "Mappings speichern"
      "admin.import.booking_csv.index.alerts.configure_now" => "Jetzt konfigurieren"
      "admin.import.booking_csv.index.alerts.no_mappings" => "Es sind noch keine Zimmertyp-Mappings konfiguriert."
      "admin.import.booking_csv.index.alerts.review_mappings" => "Mappings prüfen"
      "admin.import.booking_csv.index.alerts.unmapped_count" => "%count% Zimmertyp(en) ohne zugeordnete Wohnungen."
      "admin.import.booking_csv.index.file_label" => "CSV-Datei (Semikolon-getrennt, UTF-8)"
      "admin.import.booking_csv.index.intro" => "Lade die CSV-Exportdatei von Booking.com hoch. Alle bisherigen Booking.com-Buchungen werden ersetzt."
      "admin.import.booking_csv.index.panel_title" => "Buchungen importieren"
      "admin.import.booking_csv.index.subtitle" => "Importiere Buchungen strukturiert per CSV und prüfe sie vor dem Einspielen."
      "admin.import.booking_csv.index.title" => "Booking.com CSV-Import"
      "admin.import.booking_csv.mappings.delete_confirm" => "Mapping "%name%" wirklich löschen?"
      "admin.import.booking_csv.mappings.empty" => "Noch keine Mappings angelegt."
      "admin.import.booking_csv.mappings.existing_title" => "Bestehende Mappings"
      "admin.import.booking_csv.mappings.hint" => "Tipp: Name exakt aus der CSV-Spalte Art der Wohneinheit übernehmen, z.B. Double Room - Main Building."
      "admin.import.booking_csv.mappings.new_placeholder" => "Booking.com Zimmertyp (exakt)"
      "admin.import.booking_csv.mappings.new_title" => "Neuen Zimmertyp anlegen"
      "admin.import.booking_csv.mappings.subtitle" => "Booking.com Zimmertypen sauber auf lokale Wohnungen abbilden."
      "admin.import.booking_csv.mappings.table.action" => "Aktion"
      "admin.import.booking_csv.mappings.table.apartments" => "Zugeordnete Wohnungen"
      "admin.import.booking_csv.mappings.table.room_type" => "Booking.com Zimmertyp"
      "admin.import.booking_csv.mappings.title" => "Zimmertyp-Mapping"
      "admin.import.booking_csv.preview.execute_confirm_text" => "%count% Buchungen importieren und bestehende ersetzen?"
      "admin.import.booking_csv.preview.execute_description" => "%count% Buchungen werden importiert. Alle bestehenden Booking.com-Buchungen werden vorher gelöscht."
      "admin.import.booking_csv.preview.execute_title" => "Import durchführen"
      "admin.import.booking_csv.preview.file_label" => "CSV-Datei nochmals auswählen"
      "admin.import.booking_csv.preview.line_label" => "Zeile %line%"
      "admin.import.booking_csv.preview.no_apartment" => "- %reason%"
      "admin.import.booking_csv.preview.parse_errors_title" => "Fehler beim Parsen"
      "admin.import.booking_csv.preview.skipped_description" => "Kein Mapping oder kein freies Apartment gefunden."
      "admin.import.booking_csv.preview.skipped_title" => "Übersprungene Zeilen (%count%)"
      "admin.import.booking_csv.preview.stats.imported" => "Werden importiert"
      "admin.import.booking_csv.preview.stats.skipped" => "Übersprungen"
      "admin.import.booking_csv.preview.stats.total" => "Gesamt"
      "admin.import.booking_csv.preview.status.cancelled" => "Storniert"
      "admin.import.booking_csv.preview.status.confirmed" => "Bestätigt"
      "admin.import.booking_csv.preview.subtitle" => "Prüfe die CSV-Zeilen vor dem endgültigen Einspielen."
      "admin.import.booking_csv.preview.table.apartment" => "Wohnung (zugewiesen)"
      "admin.import.booking_csv.preview.table.arrival" => "Anreise"
      "admin.import.booking_csv.preview.table.departure" => "Abreise"
      "admin.import.booking_csv.preview.table.external_id" => "Ext.-ID"
      "admin.import.booking_csv.preview.table.guest_name" => "Gastname"
      "admin.import.booking_csv.preview.table.price" => "Preis"
      "admin.import.booking_csv.preview.table.room_type" => "Zimmertyp (CSV)"
      "admin.import.booking_csv.preview.table.status" => "Status"
      "admin.import.booking_csv.preview.title" => "Import-Vorschau"
      "admin.import.confirm.delete_button" => "Endgültig löschen"
      "admin.import.confirm.delete_text" => "Soll dieser Import-Log wirklich gelöscht werden?"
      "admin.import.confirm.promote_button" => "Live setzen"
      "admin.import.confirm.promote_text" => "Soll dieser Dry-Run jetzt live ausgeführt werden?"
      "admin.import.confirm.replace_text_button" => "Ersetzen ausführen"
      "admin.import.confirm.replace_text_text" => "Soll die Such-/Ersetzen-Operation jetzt auf die ausgewählten Crawler-Texte angewendet werden?"
      "admin.import.confirm.retry_button" => "Erneut starten"
      "admin.import.confirm.retry_text" => "Soll dieser fehlgeschlagene Import erneut gestartet werden?"
      "admin.import.confirm.sql_import_button" => "SQL-Import starten"
      "admin.import.confirm.sql_import_text" => "Soll der ausgewählte SQL-Import jetzt gestartet werden?"
      "admin.import.confirm.stop_crawler_button" => "Crawler stoppen"
      "admin.import.confirm.stop_crawler_text" => "Soll der laufende Crawler-Prozess gestoppt werden?"
      "admin.import.detail.completed" => "Abgeschlossen"
      "admin.import.detail.created" => "Neu"
      "admin.import.detail.deleted" => "Gelöscht"
      "admin.import.detail.duration" => "Dauer"
      "admin.import.detail.errors" => "Fehler"
      "admin.import.detail.source" => "Quelle"
      "admin.import.detail.started" => "Gestartet"
      "admin.import.detail.status" => "Status"
      "admin.import.detail.total_records" => "Datensätze gesamt"
      "admin.import.detail.updated" => "Aktualisiert"
      "admin.import.errors.chrome_binary_missing" => "Kein Chrome-Binary gefunden. Bitte installiere Chrome oder Chromium auf dem Server oder führe folgenden Befehl aus: PUPPETEER_CACHE_DIR=%cache_dir% npx puppeteer browsers install chrome."
      "admin.import.errors.console_missing" => "Die Symfony-Konsole wurde nicht gefunden."
      "admin.import.errors.crawler_already_running" => "Der ausgewählte Crawler läuft bereits mit PID %pid%."
      "admin.import.errors.crawler_script_missing" => "Das Crawler-Skript %script% wurde nicht gefunden."
      "admin.import.errors.crawler_start_failed" => "Der Crawler konnte nicht gestartet werden."
      "admin.import.errors.csv_header_unreadable" => "CSV-Header konnte nicht gelesen werden."
      "admin.import.errors.file_open_failed" => "Datei konnte nicht geöffnet werden."
      "admin.import.errors.invalid_date" => "Zeile %line%: Ungültiges Datum (%start% / %end%)"
      "admin.import.errors.invalid_file_path" => "Der angegebene Dateipfad ist ungültig."
      "admin.import.errors.invalid_sql_file" => "Es sind nur SQL-Dateien erlaubt."
      "admin.import.errors.missing_mapping" => "Kein Mapping für "%type%""
      "admin.import.errors.no_available_apartment" => "Kein freies Apartment für "%type%" (%start%-%end%)"
      "admin.import.errors.no_running_crawler" => "Für diesen Crawler läuft aktuell kein Prozess."
      "admin.import.errors.no_sql_file_found" => "Keine SQL-Datei für den Import gefunden."
      "admin.import.errors.node_unavailable" => "Node.js ist auf dem Server nicht verfügbar."
      "admin.import.errors.node_version_unsupported" => "Der Crawler benötigt Node.js >= %required%. Gefunden: %found%."
      "admin.import.errors.php_binary_missing" => "Das PHP-Binary ist auf dem Server nicht verfügbar."
      "admin.import.errors.preview_file_invalid" => "Die Vorschau-Datei enthält kein gültiges JSON."
      "admin.import.errors.preview_file_missing" => "Die Vorschau-Datei %file% wurde nicht gefunden."
      "admin.import.errors.preview_sql_generation_failed" => "Die SQL-Datei konnte aus der Vorschau nicht erzeugt werden."
      "admin.import.errors.replace_identical_values" => "Such- und Ersetzen-Wert dürfen nicht identisch sein."
      "admin.import.errors.replace_invalid_scope" => "Der ausgewählte Ersetzungsbereich ist ungültig."
      "admin.import.errors.replace_search_required" => "Bitte gib einen Suchbegriff für die Textersetzung ein."
      "admin.import.errors.sql_file_missing" => "Die SQL-Datei %file% wurde nicht gefunden."
      "admin.import.errors.sql_import_already_running" => "Ein SQL-Import läuft bereits mit PID %pid%."
      "admin.import.errors.sql_import_start_failed" => "Der SQL-Import konnte nicht gestartet werden."
      "admin.import.errors.unknown_crawler" => "Unbekannter Crawler: %key%."
      "admin.import.filters.all_statuses" => "Alle Status"
      "admin.import.filters.source_placeholder" => "Quelle filtern"
      "admin.import.galaxus.modal.add_search_rule" => "Regel hinzufügen"
      "admin.import.galaxus.modal.captcha_note" => "Falls Galaxus eine Captcha-Seite ausliefert, stoppt der Crawler ohne Umgehungsversuch und schreibt den Hinweis ins Log."
      "admin.import.galaxus.modal.category_label" => "Kategorie-Labels"
      "admin.import.galaxus.modal.category_label_placeholder" => """
        RAM\n
        Mainboards\n
        PC-Netzteile
        """
      "admin.import.galaxus.modal.category_labels_help" => "Optional eine Beschriftung pro URL-Zeile in gleicher Reihenfolge. Leer lassen, um die Kategorie automatisch aus Galaxus zu übernehmen."
      "admin.import.galaxus.modal.category_urls" => "Kategorie-URLs"
      "admin.import.galaxus.modal.category_urls_help" => "Eine Galaxus-Kategorie pro Zeile. Der Crawler sammelt Produktkarten aus den Listenansichten; fehlerhafte Kategorien werden nach Wiederholungen übersprungen und im Log vermerkt."
      "admin.import.galaxus.modal.description" => "Starte einen getrennten Galaxus-Lauf. Die Produkte werden vor dem Import als bearbeitbare Vorschau gespeichert."
      "admin.import.galaxus.modal.detail_fetch" => "Detailseiten abrufen"
      "admin.import.galaxus.modal.detail_fetch_help" => "Optional aktivieren; bei Captcha wird automatisch auf Listendaten zurückgefallen."
      "admin.import.galaxus.modal.import_delivery_time" => "Lieferzeit importieren"
      "admin.import.galaxus.modal.import_images" => "Bilder importieren"
      "admin.import.galaxus.modal.import_specifications" => "Spezifikationen importieren"
      "admin.import.galaxus.modal.import_specifications_help" => "Holt technische Daten von der Detailseite und hängt sie als bereinigte Tabelle an die Produktbeschreibung an. Externe Links werden zu Text, damit der SQL-Import quellenneutral bleibt."
      "admin.import.galaxus.modal.keep_one_rule" => "Mindestens eine Such-/Ersetzen-Zeile bleibt sichtbar."
      "admin.import.galaxus.modal.max_products" => "Limit je Kategorie"
      "admin.import.galaxus.modal.options_invalid" => "Bitte prüfe Kategorie-URLs, Limit und Preisänderung."
      "admin.import.galaxus.modal.price_mode" => "Preisänderung"
      "admin.import.galaxus.modal.price_modes.amount" => "Betrag"
      "admin.import.galaxus.modal.price_modes.percent" => "Prozent"
      "admin.import.galaxus.modal.price_value" => "Wert (+/-)"
      "admin.import.galaxus.modal.remove_rule" => "Regel entfernen"
      "admin.import.galaxus.modal.replace_placeholder" => "Ersetzen durch"
      "admin.import.galaxus.modal.search_placeholder" => "Suchen nach"
      "admin.import.galaxus.modal.search_replace" => "Suchen/Ersetzen"
      "admin.import.galaxus.modal.search_replace_help" => "Leere Suchfelder werden ignoriert. Ein leerer Ersetzen-Wert entfernt den gefundenen Text."
      "admin.import.galaxus.modal.start" => "Galaxus-Crawler starten"
      "admin.import.galaxus.modal.title" => "Galaxus-Crawler starten"
      "admin.import.galaxus.modal.yes_import" => "Ja"
      "admin.import.galaxus.preview.actions.generate_sql" => "SQL aus Vorschau erzeugen"
      "admin.import.galaxus.preview.actions.load" => "Vorschau laden"
      "admin.import.galaxus.preview.actions.save" => "Vorschau speichern"
      "admin.import.galaxus.preview.description" => "Prüfe die gecrawlten Galaxus-Produkte oder eine schnelle Shell-Referenzdatei vor dem Import. Änderungen werden in der Vorschau gespeichert und danach als SQL-Datei erzeugt."
      "admin.import.galaxus.preview.empty" => "Keine Galaxus-Vorschau geladen."
      "admin.import.galaxus.preview.file_label" => "Vorschau-/Referenzdatei"
      "admin.import.galaxus.preview.filters.all" => "Alle Produkte"
      "admin.import.galaxus.preview.filters.category" => "Kategorie suchen"
      "admin.import.galaxus.preview.filters.category_placeholder" => "Kategoriepfad"
      "admin.import.galaxus.preview.filters.clear" => "Zurücksetzen"
      "admin.import.galaxus.preview.filters.count" => "%visible% von %total% Produkten sichtbar"
      "admin.import.galaxus.preview.filters.import_status" => "Import-Status"
      "admin.import.galaxus.preview.filters.only_import" => "Nur Import"
      "admin.import.galaxus.preview.filters.only_skip" => "Nur überspringen"
      "admin.import.galaxus.preview.filters.search" => "Produktsuche"
      "admin.import.galaxus.preview.filters.search_placeholder" => "Name, SKU, Hersteller, Beschreibung"
      "admin.import.galaxus.preview.messages.list_load_failed" => "Die Vorschau-Dateiliste konnte nicht geladen werden."
      "admin.import.galaxus.preview.messages.load_failed" => "Vorschau konnte nicht geladen werden: %error%"
      "admin.import.galaxus.preview.messages.no_files" => "Keine Galaxus-Vorschauen vorhanden."
      "admin.import.galaxus.preview.messages.no_preview_selected" => "Bitte wähle zuerst eine Vorschau aus."
      "admin.import.galaxus.preview.messages.save_failed" => "Vorschau konnte nicht gespeichert werden: %error%"
      "admin.import.galaxus.preview.messages.saved" => "Vorschau wurde gespeichert."
      "admin.import.galaxus.preview.messages.sql_failed" => "SQL-Erzeugung fehlgeschlagen: %error%"
      "admin.import.galaxus.preview.messages.sql_generated" => "SQL-Datei wurde erzeugt: %file%"
      "admin.import.galaxus.preview.meta" => "%count% Produkte · Erstellt: %created% · Datei: %file%"
      "admin.import.galaxus.preview.reference_missing_delivery_warning" => "%count% Referenzprodukt(e) enthalten keine Lieferzeit."
      "admin.import.galaxus.preview.reference_missing_price_warning" => "%count% Referenzprodukt(e) enthalten keinen Preis."
      "admin.import.galaxus.preview.reference_review_warning" => "Diese Shell-Referenz wurde schnell aus Galaxus-Detailseiten erzeugt. Bitte Preise, Lieferzeiten und Import-Haken vor der SQL-Erzeugung prüfen."
      "admin.import.galaxus.preview.select_placeholder" => "Bitte Vorschau oder Referenz auswählen"
      "admin.import.galaxus.preview.spec_summary" => "Technische Daten: %groups% Gruppen / %rows% Zeilen"
      "admin.import.galaxus.preview.sql_meta" => "SQL: %file%"
      "admin.import.galaxus.preview.table.category" => "Kategoriepfad"
      "admin.import.galaxus.preview.table.delivery_time" => "Lieferzeit"
      "admin.import.galaxus.preview.table.description" => "Beschreibung"
      "admin.import.galaxus.preview.table.import" => "Import"
      "admin.import.galaxus.preview.table.manufacturer" => "Hersteller"
      "admin.import.galaxus.preview.table.name" => "Name"
      "admin.import.galaxus.preview.table.price" => "Preis"
      "admin.import.galaxus.preview.table.raw_data" => "Alle Daten"
      "admin.import.galaxus.preview.table.sku" => "SKU"
      "admin.import.galaxus.preview.table.stock" => "Lager"
      "admin.import.galaxus.preview.types.preview" => "Vorschau"
      "admin.import.galaxus.preview.types.reference" => "Referenz"
      "admin.import.galaxus.preview.warning_prefix" => "Hinweis:"
      "admin.import.help_index.card_subtitle" => "Logs, Live-Setzen, SQL-Import, Crawler-Steuerung"
      "admin.import.help_index.card_title" => "Import & Crawler"
      "admin.import.help.back" => "Zurück"
      "admin.import.help.navigation.api" => "API-Endpunkte"
      "admin.import.help.navigation.crawler" => "Crawler-Steuerung"
      "admin.import.help.navigation.fields" => "Feldreferenz"
      "admin.import.help.navigation.galaxus" => "Galaxus-Vorschau"
      "admin.import.help.navigation.import_log" => "Import-Log Workflow"
      "admin.import.help.navigation.overview" => "Überblick"
      "admin.import.help.navigation.promote" => "Dry-Run → Live"
      "admin.import.help.navigation.sql" => "SQL-Import"
      "admin.import.help.navigation.text_replace" => "Text-Ersetzen"
      "admin.import.help.navigation.title" => "Navigation"
      "admin.import.help.page_title" => "Hilfe: Daten-Import"
      "admin.import.help.sections.api.rows.crawler_log" => "Crawler-Log abrufen"
      "admin.import.help.sections.api.rows.crawler_start" => "Crawler starten"
      "admin.import.help.sections.api.rows.crawler_stop" => "Crawler stoppen"
      "admin.import.help.sections.api.rows.crawler_text_replace" => "Crawler-Texte global suchen/ersetzen"
      "admin.import.help.sections.api.rows.delete" => "Import-Log löschen"
      "admin.import.help.sections.api.rows.notes" => "Notizen hinzufügen"
      "admin.import.help.sections.api.rows.overview" => "Import-Übersicht"
      "admin.import.help.sections.api.rows.preview_detail" => "Crawler-Vorschau laden"
      "admin.import.help.sections.api.rows.preview_files" => "Crawler-Vorschauen auflisten"
      "admin.import.help.sections.api.rows.preview_save" => "Bearbeitete Crawler-Vorschau speichern"
      "admin.import.help.sections.api.rows.preview_sql" => "SQL aus Crawler-Vorschau erzeugen"
      "admin.import.help.sections.api.rows.promote" => "Dry-Run zu Live befördern"
      "admin.import.help.sections.api.rows.retry" => "Fehlgeschlagenen Import wiederholen"
      "admin.import.help.sections.api.rows.sql_files" => "SQL-Dateien auflisten"
      "admin.import.help.sections.api.rows.sql_start" => "SQL-Import starten"
      "admin.import.help.sections.api.table.function" => "Funktion"
      "admin.import.help.sections.api.table.method" => "Methode"
      "admin.import.help.sections.api.table.url" => "URL"
      "admin.import.help.sections.api.title" => "API-Endpunkte"
      "admin.import.help.sections.crawler.available_title" => "Verfügbare Crawler:"
      "admin.import.help.sections.crawler.available.galaxus" => "<code>crawler_galaxus.js</code> – Galaxus-Kategorieseiten mit editierbarer Importvorschau"
      "admin.import.help.sections.crawler.available.wave" => "<code>crawler_wave.js</code> – Wave Produktkatalog mit konfigurierbarem Start-Modal"
      "admin.import.help.sections.crawler.available.wede_soft" => "<code>crawler_wede-soft.js</code> – Wede-Soft Produktkatalog"
      "admin.import.help.sections.crawler.intro" => "Crawler können direkt aus dem Admin gestartet und gestoppt werden:"
      "admin.import.help.sections.crawler.steps.max_products" => "Bei Wave/Galaxus werden Limit und weitere Laufzeitoptionen im Start-Modal gepflegt."
      "admin.import.help.sections.crawler.steps.select" => "In <strong>Import → Crawler</strong> den gewünschten Crawler auswählen"
      "admin.import.help.sections.crawler.steps.start" => "<kbd><i class="fa fa-play"></i> Crawler starten</kbd> startet den Node.js-Prozess im Hintergrund"
      "admin.import.help.sections.crawler.steps.stop" => "<kbd><i class="fa fa-stop"></i> Crawler stoppen</kbd> beendet den laufenden Prozess"
      "admin.import.help.sections.crawler.steps.watch" => "Fortschritt im Live-Log beobachten."
      "admin.import.help.sections.crawler.steps.wave_modal" => "Für Wave zusätzlich Start-URL, Login-Fallback-URLs und optionale Login-Selektoren im Modal setzen. Zugangsdaten bleiben in der lokalen ENV-Datei."
      "admin.import.help.sections.crawler.title" => "Crawler-Steuerung"
      "admin.import.help.sections.crawler.warning" => "Crawler laufen im Hintergrund. Ein Server-Neustart beendet alle laufenden Crawler."
      "admin.import.help.sections.fields.rows.created_at" => "Startzeit des Import-Laufs"
      "admin.import.help.sections.fields.rows.error_count" => "Anzahl erkannter Fehler"
      "admin.import.help.sections.fields.rows.filename" => "Name der SQL-Datei oder Crawler-Bezeichnung"
      "admin.import.help.sections.fields.rows.log" => "Detailliertes Import-Protokoll"
      "admin.import.help.sections.fields.rows.notes" => "Interne Admin-Notizen zum Import"
      "admin.import.help.sections.fields.rows.products_imported" => "Anzahl erfolgreich importierter Produkte"
      "admin.import.help.sections.fields.rows.products_skipped" => "Übersprungene Produkte, z.B. Duplikate"
      "admin.import.help.sections.fields.rows.source" => "Crawler-Bezeichnung oder importierter SQL-Dateiname"
      "admin.import.help.sections.fields.rows.status" => "pending / dry_run / live / failed"
      "admin.import.help.sections.fields.table.description" => "Beschreibung"
      "admin.import.help.sections.fields.table.field" => "Feld"
      "admin.import.help.sections.fields.table.type" => "Typ"
      "admin.import.help.sections.fields.title" => "Feldreferenz: ImportLog"
      "admin.import.help.sections.fields.types.datetime" => "Datum/Zeit"
      "admin.import.help.sections.fields.types.enum" => "Enum"
      "admin.import.help.sections.fields.types.integer" => "Integer"
      "admin.import.help.sections.fields.types.text" => "Text"
      "admin.import.help.sections.fields.types.text_json" => "Text (JSON)"
      "admin.import.help.sections.galaxus.intro" => "Der Galaxus-Crawler arbeitet dateibasiert: Er liest eine oder mehrere Kategorieseiten, speichert eine JSON-Vorschau und erzeugt daraus eine SQL-Datei für den manuellen Import."
      "admin.import.help.sections.galaxus.options.categories" => "Kategorie-URLs: eine URL pro Zeile, z.B. <code>https://www.galaxus.de/de/s1/sector/it-multimedia-1</code>. Kategorie-Labels können optional in gleicher Reihenfolge je URL-Zeile angegeben werden; leere Label-Zeilen übernehmen die von Galaxus erkannte Kategorie. Kategorien mit HTTP2-/Netzwerkfehlern werden wiederholt und danach übersprungen, ohne den gesamten Lauf abzubrechen."
      "admin.import.help.sections.galaxus.options.delivery" => "Lieferzeit importieren kann abgeschaltet werden, wenn Galaxus nur ungenaue Verfügbarkeiten liefert."
      "admin.import.help.sections.galaxus.options.images" => "Bilder importieren lädt alle gefundenen Produktbilder nach <code>public/uploads/products</code> und bindet sie mit ihrer Reihenfolge als Produktgalerie ein."
      "admin.import.help.sections.galaxus.options.limit" => "Limit begrenzt die Anzahl der Produkte je Kategorie-URL. Der Crawler nutzt bevorzugt die Galaxus-GraphQL-Cursorliste und kann dadurch deutlich mehr als die initial sichtbaren 24 Produkte laden; der Browser-Scroll mit <strong>Mehr anzeigen</strong> bleibt als Fallback erhalten."
      "admin.import.help.sections.galaxus.options.price" => "Preisänderung unterstützt feste Beträge und Prozentwerte; negative Werte reduzieren den Preis."
      "admin.import.help.sections.galaxus.options.reference" => "Der Shell-Referenzsammler <code>tools/galaxus-reference-collector.sh</code> kann vorab Produktname, Artikelnummer, EAN, Kategorie und Bild-URLs als JSONL unter <code>var/crawlers/galaxus_reference</code> speichern. Diese Referenzdateien erscheinen in der Galaxus-Vorschau-Auswahl und können dort als bearbeitbare Vorschau gespeichert werden. Der Galaxus-Crawler nutzt automatisch die neueste Referenzdatei oder explizit <code>GALAXUS_REFERENCE_FILE</code>."
      "admin.import.help.sections.galaxus.options.replace" => "Suchen/Ersetzen bereinigt alle importrelevanten Textfelder bereits vor der Vorschau, inklusive Kategoriepfad, Artikelnummer, Hersteller, EAN, Tags und SEO-Texten."
      "admin.import.help.sections.galaxus.options.specifications" => "Spezifikationen importieren liest technische Daten von der Detailseite, ignoriert Release-Datum, Verkaufsrang, Lieferumfang, Herkunft, freiwilligen Klimabeitrag, rechtliche Hinweise und Verpackungsdimensionen, entfernt externe Links und erzeugt quellenneutrales HTML für den SQL-Import."
      "admin.import.help.sections.galaxus.preview" => "Nach dem Crawlerlauf eine Vorschau-Datei bewusst auswählen, Import-Haken und Produktwerte prüfen, Rohdaten je Zeile kontrollieren, speichern und anschließend SQL erzeugen. Erst danach die erzeugte SQL-Datei im SQL-Import manuell starten."
      "admin.import.help.sections.galaxus.title" => "Galaxus-Crawler mit Vorschau"
      "admin.import.help.sections.import_log.intro" => "Jeder Import wird in einem <strong>ImportLog</strong>-Datensatz protokolliert:"
      "admin.import.help.sections.import_log.rows.dry_run.meaning" => "Test-Import ohne Datenbankänderungen"
      "admin.import.help.sections.import_log.rows.dry_run.next" => "Prüfen, dann live setzen"
      "admin.import.help.sections.import_log.rows.failed.meaning" => "Import fehlgeschlagen"
      "admin.import.help.sections.import_log.rows.failed.next" => "Erneut starten oder Fehler beheben"
      "admin.import.help.sections.import_log.rows.live.meaning" => "Produktiv eingespielt"
      "admin.import.help.sections.import_log.rows.live.next" => "Fertig"
      "admin.import.help.sections.import_log.rows.pending.meaning" => "Import in Warteschlange"
      "admin.import.help.sections.import_log.rows.pending.next" => "Automatisch verarbeitet"
      "admin.import.help.sections.import_log.sources_title" => "Import-Quellen (<code>source</code>):"
      "admin.import.help.sections.import_log.sources.crawler" => "<code>crawler</code> – Von einem der Crawler-Skripte"
      "admin.import.help.sections.import_log.sources.manual" => "<code>manual</code> – Manuell initiiert"
      "admin.import.help.sections.import_log.sources.sql" => "<code>import_products_*.sql</code> – der tatsächliche SQL-Dateiname des gestarteten Imports"
      "admin.import.help.sections.import_log.table.meaning" => "Bedeutung"
      "admin.import.help.sections.import_log.table.next_step" => "Nächster Schritt"
      "admin.import.help.sections.import_log.table.status" => "Status"
      "admin.import.help.sections.import_log.title" => "Import-Log Workflow"
      "admin.import.help.sections.overview.cards.crawler.text" => "Node.js-Scraper für externe Shops"
      "admin.import.help.sections.overview.cards.crawler.title" => "Crawler"
      "admin.import.help.sections.overview.cards.promote.text" => "Zweistufiger sicherer Import"
      "admin.import.help.sections.overview.cards.promote.title" => "Dry-Run → Live"
      "admin.import.help.sections.overview.cards.sql.text" => "Direkte SQL-Datei einspielen"
      "admin.import.help.sections.overview.cards.sql.title" => "SQL-Import"
      "admin.import.help.sections.overview.intro" => "Das Import-Modul bietet drei Wege, Produktdaten in den Shop einzuspielen:"
      "admin.import.help.sections.overview.permissions_label" => "Berechtigungen:"
      "admin.import.help.sections.overview.title" => "Import-System: Überblick"
      "admin.import.help.sections.promote.api" => "<strong>API:</strong> <code>POST /admin/import-control/{id}/promote</code>"
      "admin.import.help.sections.promote.intro" => "Der <strong>zweistufige Import-Prozess</strong> schützt vor ungewollten Datenänderungen:"
      "admin.import.help.sections.promote.notes_text" => "<code>POST /admin/import-control/{id}/notes</code> fügt interne Notizen zu einem Import-Lauf hinzu."
      "admin.import.help.sections.promote.notes_title" => "Notizen"
      "admin.import.help.sections.promote.retry_text" => "<code>POST /admin/import-control/{id}/retry</code> startet einen fehlgeschlagenen Import erneut."
      "admin.import.help.sections.promote.retry_title" => "Retry bei Fehlern"
      "admin.import.help.sections.promote.steps.dry_run" => "<strong>Dry-Run</strong>: Der Import wird simuliert, alle Änderungen werden protokolliert, aber nicht gespeichert"
      "admin.import.help.sections.promote.steps.promote" => "<kbd><i class="fa fa-arrow-up"></i> Live setzen</kbd> führt den Import produktiv aus."
      "admin.import.help.sections.promote.steps.review" => "Ein Admin prüft die Vorschau, z.B. Produktanzahl, neue Kategorien und Preisänderungen."
      "admin.import.help.sections.promote.title" => "Dry-Run → Live (Promote)"
      "admin.import.help.sections.sql.api_title" => "API:"
      "admin.import.help.sections.sql.api.files" => "<code>GET /admin/import-control/sql/files</code> listet verfügbare SQL-Dateien auf"
      "admin.import.help.sections.sql.api.log" => "<code>GET /admin/import-control/sql/log</code> ruft das Import-Log ab"
      "admin.import.help.sections.sql.api.start" => "<code>POST /admin/import-control/sql/start</code> startet den SQL-Import"
      "admin.import.help.sections.sql.api.status" => "<code>GET /admin/import-control/sql/status</code> ruft den aktuellen Status ab"
      "admin.import.help.sections.sql.steps.dry_run" => "<kbd>Dry-Run starten</kbd> zeigt eine sichere Vorschau der Änderungen"
      "admin.import.help.sections.sql.steps.files_appear" => "In <strong>Import → SQL-Import</strong> erscheinen verfügbare Dateien automatisch"
      "admin.import.help.sections.sql.steps.live" => "<kbd>Live einspielen</kbd> führt den Import nach Prüfung der Vorschau produktiv aus"
      "admin.import.help.sections.sql.steps.log_entry" => "Ein Import-Log-Eintrag wird erstellt."
      "admin.import.help.sections.sql.steps.place_file" => "SQL-Datei in das Verzeichnis <code>sql/</code> legen"
      "admin.import.help.sections.sql.steps.select_file" => "Datei auswählen"
      "admin.import.help.sections.sql.title" => "SQL-Import"
      "admin.import.help.sections.text_replace.intro" => "Mit der Zusatzmaske im Import-Modul lassen sich importierte Crawler-Texte nachträglich bereinigen, zum Beispiel alte Markenbegriffe in Produkt- und SEO-Daten."
      "admin.import.help.sections.text_replace.note" => "Die Ersetzung arbeitet aktuell auf Produkttexten inklusive Slug, SKU, EAN, Video-URL und Tags, SEO-Metadaten und importierten Systemeinstellungen. Treffer werden unabhängig von Groß-/Kleinschreibung ersetzt."
      "admin.import.help.sections.text_replace.steps.confirm" => "Die Operation über den Admin-Bestätigungsdialog auslösen."
      "admin.import.help.sections.text_replace.steps.replace" => "Optional den neuen Zieltext im Feld <strong>Ersetzen durch</strong> eintragen. Ein leerer Wert entfernt den Suchtext."
      "admin.import.help.sections.text_replace.steps.scope" => "Den Bereich auswählen: alle Crawler-Texte, nur Produkte, nur SEO oder nur Einstellungen."
      "admin.import.help.sections.text_replace.steps.search" => "Im Feld <strong>Suchen nach</strong> den Altbegriff eingeben, z.B. <code>Wede Soft</code>."
      "admin.import.help.sections.text_replace.title" => "Text-Ersetzen für Crawler-Inhalte"
      "admin.import.help.to_module" => "Zum Modul"
      "admin.import.kpi.dry_run" => "Dry-Run"
      "admin.import.kpi.failed" => "Fehlgeschlagen"
      "admin.import.kpi.pending" => "Wartend"
      "admin.import.kpi.running" => "Laufend"
      "admin.import.kpi.success" => "Erfolgreich"
      "admin.import.kpi.total" => "Importe gesamt"
      "admin.import.messages.crawler_start_failed" => "Crawler-Start fehlgeschlagen."
      "admin.import.messages.crawler_started" => "Crawler wurde gestartet."
      "admin.import.messages.crawler_status_load_failed" => "Crawler-Status konnte nicht geladen werden."
      "admin.import.messages.crawler_stop_failed" => "Crawler-Stopp fehlgeschlagen."
      "admin.import.messages.crawler_stopped" => "Crawler wurde gestoppt."
      "admin.import.messages.dry_flag" => "Dry-Run"
      "admin.import.messages.duration_seconds" => "%seconds% s"
      "admin.import.messages.file_list_load_failed" => "Die SQL-Dateiliste konnte nicht geladen werden."
      "admin.import.messages.import_live_set" => "Import wurde live gesetzt."
      "admin.import.messages.import_log_deleted" => "Import-Log wurde gelöscht."
      "admin.import.messages.import_retry_marked" => "Import wurde zum erneuten Start markiert."
      "admin.import.messages.invalid_crawler_api" => "Ungültige Antwort der Crawler-API."
      "admin.import.messages.loading" => "Lädt"
      "admin.import.messages.loading_ellipsis" => "Lädt…"
      "admin.import.messages.meta_file" => "Datei: %value%"
      "admin.import.messages.meta_last_start" => "Letzter Start: %value%"
      "admin.import.messages.meta_log" => "Log: %value%"
      "admin.import.messages.no_crawlers_found" => "Keine Crawler gefunden."
      "admin.import.messages.no_diff_data" => "Für diesen Lauf liegen keine Diff-Daten vor."
      "admin.import.messages.no_entries_found" => "Keine Einträge gefunden."
      "admin.import.messages.no_errors" => "Keine Fehler vorhanden."
      "admin.import.messages.no_log_output" => "Keine Log-Ausgabe vorhanden."
      "admin.import.messages.no_sql_file_selected" => "Bitte wähle zuerst eine SQL-Datei aus."
      "admin.import.messages.no_sql_snapshots" => "Keine SQL-Snapshots vorhanden."
      "admin.import.messages.notes_placeholder" => "Interne Notizen für diesen Import-Lauf"
      "admin.import.messages.notes_saved" => "Notizen wurden gespeichert."
      "admin.import.messages.page_info" => "Seite %page% von %pages% · %total% Einträge"
      "admin.import.messages.promote_failed" => "Live-Setzen fehlgeschlagen."
      "admin.import.messages.replace_no_changes" => "Es wurden keine passenden Crawler-Texte für „%search%“ gefunden."
      "admin.import.messages.replace_success" => "Textersetzung abgeschlossen: %records% Datensätze geändert, %fields% Felder aktualisiert (Produkte: %products%, SEO: %seo%, Einstellungen: %settings%)."
      "admin.import.messages.retry_failed" => "Erneuter Start fehlgeschlagen."
      "admin.import.messages.running_with_elapsed" => "Läuft seit %elapsed%"
      "admin.import.messages.sql_import_completed" => "SQL-Import abgeschlossen."
      "admin.import.messages.sql_import_completed_details" => "SQL-Import abgeschlossen: %created% Produkte importiert, %errors% Fehler."
      "admin.import.messages.sql_import_completed_failed" => "SQL-Import fehlgeschlagen: %created% Produkte importiert, %errors% Fehler. Bitte Import-Log prüfen."
      "admin.import.messages.sql_import_failed" => "SQL-Import fehlgeschlagen."
      "admin.import.messages.sql_import_started" => "SQL-Import wurde gestartet."
      "admin.import.modals.crawler_log_title" => "Crawler-Log"
      "admin.import.modals.detail_title" => "Import-Details"
      "admin.import.modals.sql_import_log_title" => "SQL-Import-Log"
      "admin.import.modals.tabs.diff" => "Diff"
      "admin.import.modals.tabs.errors" => "Fehler"
      "admin.import.modals.tabs.notes" => "Notizen"
      "admin.import.modals.tabs.overview" => "Überblick"
      "admin.import.notifications.import_completed" => "%imported% Buchungen importiert, %skipped% übersprungen."
      "admin.import.notifications.mapping_deleted" => "Mapping gelöscht."
      "admin.import.notifications.mappings_saved" => "Mappings gespeichert."
      "admin.import.notifications.no_file_uploaded" => "Keine Datei hochgeladen."
      "admin.import.page.subtitle" => "Crawler, SQL-Importe und Laufhistorie zentral überwachen und steuern."
      "admin.import.page.title" => "Import Control Center"
      "admin.import.prompts.max_products" => "Maximale Produktanzahl (leer = unbegrenzt)"
      "admin.import.sections.crawler_execution" => "Crawler-Ausführung"
      "admin.import.sections.galaxus_preview" => "Galaxus-Vorschau"
      "admin.import.sections.import_runs" => "Import-Läufe"
      "admin.import.sections.sql_import" => "SQL-Import"
      "admin.import.sections.text_replace" => "Text-Ersetzen"
      "admin.import.sql.description" => "Wähle eine SQL-Datei aus dem Verzeichnis <code>sql/</code> und starte den Import mit vollständigem Protokoll direkt aus dem Backend."
      "admin.import.sql.file_label" => "SQL-Datei"
      "admin.import.status.dry_run" => "Dry-Run"
      "admin.import.status.failed" => "Fehlgeschlagen"
      "admin.import.status.idle" => "Bereit"
      "admin.import.status.pending" => "Wartend"
      "admin.import.status.running" => "Läuft"
      "admin.import.status.success" => "Erfolgreich"
      "admin.import.table.actions" => "Aktionen"
      "admin.import.table.crawler" => "Crawler"
      "admin.import.table.created" => "Neu"
      "admin.import.table.duration" => "Dauer"
      "admin.import.table.errors" => "Fehler"
      "admin.import.table.field" => "Feld"
      "admin.import.table.last_started" => "Zuletzt gestartet"
      "admin.import.table.log_size" => "Log-Größe"
      "admin.import.table.new" => "Neu"
      "admin.import.table.old" => "Alt"
      "admin.import.table.reference" => "Referenz"
      "admin.import.table.script" => "Skript"
      "admin.import.table.source" => "Quelle"
      "admin.import.table.started" => "Gestartet"
      "admin.import.table.status" => "Status"
      "admin.import.table.total" => "Gesamt"
      "admin.import.table.updated" => "Aktualisiert"
      "admin.import.text_replace.description" => "Bereinigt importierte Crawler-Texte direkt in Produkt-, SEO- und Einstellungsdaten. Sinnvoll für alte Markenbegriffe oder Legacy-Domainreste aus früheren Wede-Importen."
      "admin.import.text_replace.help" => "Die Ersetzung arbeitet case-insensitive auf den ausgewählten Crawler-Textbereichen. Ein leerer Ersetzen-Wert entfernt den Suchtext vollständig."
      "admin.import.text_replace.replace_label" => "Ersetzen durch"
      "admin.import.text_replace.scope_label" => "Bereich"
      "admin.import.text_replace.scopes.all" => "Alle Crawler-Texte"
      "admin.import.text_replace.scopes.product" => "Nur Produkttexte"
      "admin.import.text_replace.scopes.seo" => "Nur SEO-Texte"
      "admin.import.text_replace.scopes.settings" => "Nur importierte Einstellungen"
      "admin.import.text_replace.search_label" => "Suchen nach"
      "admin.import.wave.modal.add_search_rule" => "Suchen/Ersetzen-Regel hinzufügen"
      "admin.import.wave.modal.alternative_category" => "Alternative Kategorie"
      "admin.import.wave.modal.alternative_category_help" => "Optional: Erzwingt den Kategoriepfad für alle Produkte, z.B. Hardware > RAM."
      "admin.import.wave.modal.alternative_category_placeholder" => "Hardware > PC-Komponenten > Arbeitsspeicher"
      "admin.import.wave.modal.description" => "Starte den Wave-Crawler mit Laufzeitoptionen aus dem Admin. Zugangsdaten und Login-URL bleiben in der lokalen ENV-Datei."
      "admin.import.wave.modal.fulfillment_mode" => "Verkaufsmodus"
      "admin.import.wave.modal.fulfillment_modes.online_only" => "Nur Online"
      "admin.import.wave.modal.fulfillment_modes.pickup_available" => "Abholung im Geschäft anbieten"
      "admin.import.wave.modal.fulfillment_modes.pickup_only" => "Nur Abholung im Geschäft"
      "admin.import.wave.modal.import_images" => "Bilder importieren"
      "admin.import.wave.modal.keep_one_rule" => "Mindestens eine Regelzeile bleibt erhalten."
      "admin.import.wave.modal.login_enabled" => "Login vor Crawl ausführen"
      "admin.import.wave.modal.login_password_selector" => "Passwort-Selektor (optional)"
      "admin.import.wave.modal.login_submit_selector" => "Submit-Selektor (optional)"
      "admin.import.wave.modal.login_success_selector" => "Login-Erfolgsselektor (optional)"
      "admin.import.wave.modal.login_success_selector_help" => "Optionales CSS-Selektor-Muster für ein Element, das nach erfolgreichem Login sichtbar ist."
      "admin.import.wave.modal.login_url_candidates" => "Alternative Login-URLs (optional)"
      "admin.import.wave.modal.login_url_candidates_help" => "Eine URL pro Zeile. Wird genutzt, falls die primäre Login-URL nicht erreichbar ist."
      "admin.import.wave.modal.login_user_selector" => "Benutzerfeld-Selektor (optional)"
      "admin.import.wave.modal.max_products" => "Maximale Produktanzahl"
      "admin.import.wave.modal.options_invalid" => "Bitte prüfe Start-URL und Produktlimit."
      "admin.import.wave.modal.price_mode" => "Preisanpassung"
      "admin.import.wave.modal.price_modes.amount" => "Fixer Betrag"
      "admin.import.wave.modal.price_modes.percent" => "Prozent"
      "admin.import.wave.modal.price_value" => "Preisanpassungswert"
      "admin.import.wave.modal.remove_rule" => "Regel entfernen"
      "admin.import.wave.modal.replace_placeholder" => "Ersetzen durch"
      "admin.import.wave.modal.search_placeholder" => "Suchen nach"
      "admin.import.wave.modal.search_replace" => "Suchen/Ersetzen-Regeln"
      "admin.import.wave.modal.search_replace_help" => "Wird auf Produktname, Beschreibung, Hersteller und Label angewendet."
      "admin.import.wave.modal.skip_without_description" => "Produkte ohne Beschreibung überspringen"
      "admin.import.wave.modal.skip_without_image" => "Produkte ohne Bild überspringen"
      "admin.import.wave.modal.start" => "Wave-Crawler starten"
      "admin.import.wave.modal.start_url" => "Start-Kategorie-URL"
      "admin.import.wave.modal.start_url_help" => "Von dieser Wave-Kategorieseite startet die Produkterfassung."
      "admin.import.wave.modal.title" => "Wave-Crawler starten"
      "admin.import.wave.modal.yes_import" => "Ja, anwenden"
      "admin.import.wave.modal.yes_skip" => "Ja, überspringen"
      "admin.legacy.blog.actions.delete_confirm" => "Möchten Sie den Blogbeitrag "%title%" wirklich löschen?"
      "admin.legacy.blog.errors.not_found" => "Blogbeitrag nicht gefunden."
      "admin.legacy.blog.form.actions.save" => "Beitrag speichern"
      "admin.legacy.blog.form.actions.show_history" => "Historie anzeigen"
      "admin.legacy.blog.form.fields.active" => "Aktiv?"
      "admin.legacy.blog.form.fields.author" => "Autor"
      "admin.legacy.blog.form.fields.author_placeholder" => "Autor auswählen"
      "admin.legacy.blog.form.fields.categories" => "Kategorien"
      "admin.legacy.blog.form.fields.content" => "Inhalt"
      "admin.legacy.blog.form.fields.current_image" => "Aktuelles Bild"
      "admin.legacy.blog.form.fields.image" => "Bild"
      "admin.legacy.blog.form.fields.image_placeholder" => "Bild auswählen"
      "admin.legacy.blog.form.fields.published_at" => "Veröffentlichungsdatum"
      "admin.legacy.blog.form.fields.title" => "Titel"
      "admin.legacy.blog.form.titles.edit" => "Blogbeitrag bearbeiten"
      "admin.legacy.blog.form.titles.new" => "Blogbeitrag anlegen"
      "admin.legacy.blog.form.validation.image_format" => "Bitte ein JPG- oder PNG-Bild verwenden."
      "admin.legacy.blog.modal.cancel" => "Abbrechen"
      "admin.legacy.blog.modal.confirm" => "Löschen"
      "admin.legacy.blog.modal.default_name" => "diesen Blogbeitrag"
      "admin.legacy.blog.modal.title" => "Blogbeitrag löschen"
      "admin.legacy.blog.notifications.created" => "Blogbeitrag wurde angelegt."
      "admin.legacy.blog.notifications.updated" => "Blogbeitrag wurde gespeichert."
      "admin.legacy.blog.page_subtitle" => "Verwalte Blogbeiträge, Veröffentlichungsdaten und Sichtbarkeit."
      "admin.legacy.blog.page_title" => "Blog"
      "admin.legacy.blog.table.created" => "Erstellt"
      "admin.legacy.blog.table.delete" => "Löschen"
      "admin.legacy.blog.table.edit" => "Bearbeiten"
      "admin.legacy.blog.table.preview" => "Vorschau"
      "admin.legacy.blog.table.published_at" => "Veröffentlichungsdatum"
      "admin.legacy.blog.table.status" => "Status"
      "admin.legacy.blog.table.title" => "Blog-Liste"
      "admin.legacy.blog.table.title_column" => "Titel"
      "admin.legacy.categories.actions.new" => "Neue Kategorie"
      "admin.legacy.categories.bulk.hint" => "Wähle zuerst ein oder mehrere Elemente aus."
      "admin.legacy.categories.bulk.validation" => "Bitte wähle mindestens eine Kategorie für die Gruppenaktion aus."
      "admin.legacy.categories.errors.not_found" => "Kategorie nicht gefunden."
      "admin.legacy.categories.form.actions.back_to_list" => "Zurück zur Kategorienliste"
      "admin.legacy.categories.form.actions.save" => "Kategorie speichern"
      "admin.legacy.categories.form.fields.name" => "Name"
      "admin.legacy.categories.form.fields.parent" => "Übergeordnete Kategorie"
      "admin.legacy.categories.form.panel_title" => "Kategorie-Daten"
      "admin.legacy.categories.form.subtitle" => "Pflege Name, Struktur und Sichtbarkeit deiner Blog-Kategorie in einer klaren Formularansicht."
      "admin.legacy.categories.form.titles.edit" => "Blog-Kategorie bearbeiten"
      "admin.legacy.categories.form.titles.new" => "Blog-Kategorie anlegen"
      "admin.legacy.categories.list_count" => "%count% Einträge"
      "admin.legacy.categories.modal.cancel" => "Abbrechen"
      "admin.legacy.categories.modal.confirm" => "Löschen"
      "admin.legacy.categories.modal.default_name" => "diese Kategorie"
      "admin.legacy.categories.modal.delete_confirm" => "Möchtest du die Kategorie "%name%" wirklich löschen?"
      "admin.legacy.categories.modal.title" => "Kategorie löschen"
      "admin.legacy.categories.notifications.created" => "Kategorie wurde angelegt."
      "admin.legacy.categories.notifications.updated" => "Kategorie wurde gespeichert."
      "admin.legacy.categories.page_subtitle" => "Blog-Kategorien strukturiert verwalten und die Sichtbarkeit steuern."
      "admin.legacy.categories.page_title" => "Kategorien"
      "admin.legacy.categories.panel_title" => "Kategorienliste"
      "admin.legacy.categories.table.empty" => "Keine Kategorien vorhanden."
      "admin.legacy.categories.table.name" => "Name"
      "admin.legacy.categories.table.parent" => "Sub-Kategorie von"
      "admin.legacy.faq.actions.new" => "Neue FAQ"
      "admin.legacy.faq.bulk.hint" => "Wähle zuerst ein oder mehrere FAQ-Einträge aus."
      "admin.legacy.faq.bulk.validation" => "Bitte wähle mindestens einen FAQ-Eintrag für die Gruppenaktion aus."
      "admin.legacy.faq.form.fields.answer" => "Antwort"
      "admin.legacy.faq.form.fields.question" => "Frage"
      "admin.legacy.faq.form.panel_title" => "FAQ-Inhalt"
      "admin.legacy.faq.form.subtitle" => "Verwalte Frage und Antwort in einer modernen Eingabemaske für deine Wissensdatenbank."
      "admin.legacy.faq.form.titles.edit" => "FAQ bearbeiten"
      "admin.legacy.faq.form.titles.new" => "Neue FAQ"
      "admin.legacy.faq.list_count" => "%count% Einträge"
      "admin.legacy.faq.modal.cancel" => "Abbrechen"
      "admin.legacy.faq.modal.confirm" => "Löschen"
      "admin.legacy.faq.modal.default_name" => "diesen Eintrag"
      "admin.legacy.faq.modal.delete_confirm" => "Möchtest du den FAQ-Eintrag "%name%" wirklich löschen?"
      "admin.legacy.faq.modal.title" => "FAQ-Eintrag löschen"
      "admin.legacy.faq.notifications.created" => "FAQ wurde angelegt."
      "admin.legacy.faq.notifications.updated" => "FAQ wurde gespeichert."
      "admin.legacy.faq.page_subtitle" => "Fragen und Antworten strukturiert pflegen und den Veröffentlichungsstatus steuern."
      "admin.legacy.faq.page_title" => "FAQ"
      "admin.legacy.faq.panel_title" => "FAQ-Liste"
      "admin.legacy.faq.table.answer" => "Antwort"
      "admin.legacy.faq.table.empty" => "Keine FAQ-Einträge vorhanden."
      "admin.legacy.faq.table.question" => "Frage"
      "admin.legacy.general.help_title" => "Hilfe zu diesem Modul"
      "admin.legacy.general.notifications.initialized" => "Allgemeine Einstellungen wurden initial angelegt."
      "admin.legacy.general.notifications.saved" => "Allgemeine Einstellungen wurden gespeichert."
      "admin.legacy.general.page_title" => "Allgemeine Einstellungen"
      "admin.legacy.general.section_title" => "Allgemeine Einstellungen"
      "admin.legacy.shop_categories.actions.delete_now" => "Jetzt löschen"
      "admin.legacy.shop_categories.actions.new" => "Neue Kategorie"
      "admin.legacy.shop_categories.bulk.cancel" => "Abbrechen"
      "admin.legacy.shop_categories.bulk.delete_confirm" => "Möchtest du die ausgewählten Kategorien wirklich löschen? Zugehörige Produkte werden danach keiner Kategorie mehr zugeordnet."
      "admin.legacy.shop_categories.bulk.delete_selected" => "Ausgewählte löschen"
      "admin.legacy.shop_categories.bulk.description" => "Diese Aktion entfernt die ausgewählten Kategorien."
      "admin.legacy.shop_categories.bulk.selected_count" => "%count% ausgewählt"
      "admin.legacy.shop_categories.modal.cancel" => "Abbrechen"
      "admin.legacy.shop_categories.modal.delete_confirm" => "Möchtest du die Kategorie "%name%" wirklich löschen?"
      "admin.legacy.shop_categories.modal.title" => "Löschen bestätigen"
      "admin.legacy.shop_categories.page_subtitle" => "Verwalte Struktur, SEO und Zuordnung deines Shop-Katalogs."
      "admin.legacy.shop_categories.page_title" => "Kategorien"
      "admin.legacy.shop_categories.panel_title" => "Kategorienliste"
      "admin.legacy.shop_categories.table.actions" => "Aktionen"
      "admin.legacy.shop_categories.table.meta_description" => "Meta Description"
      "admin.legacy.shop_categories.table.meta_title" => "Meta Title"
      "admin.legacy.shop_categories.table.name" => "Name"
      "admin.legacy.shop_categories.table.parent" => "Übergeordnet"
      "admin.legacy.shop_categories.table.select_all" => "Alle auswählen"
      "admin.legacy.shop_categories.table.slug" => "Slug"
      "admin.mail_templates.actions.edit" => "Bearbeiten"
      "admin.mail_templates.categories.accounts" => "Kontomails"
      "admin.mail_templates.categories.operations" => "Interne Benachrichtigungen"
      "admin.mail_templates.categories.orders" => "Bestellmails"
      "admin.mail_templates.categories.returns" => "Retouren"
      "admin.mail_templates.errors.not_found" => "Die angeforderte Mailvorlage wurde nicht gefunden."
      "admin.mail_templates.form.actions.back" => "Zur Übersicht"
      "admin.mail_templates.form.actions.cancel" => "Abbrechen"
      "admin.mail_templates.form.actions.help" => "Hilfe"
      "admin.mail_templates.form.actions.preview" => "Vorschau rendern"
      "admin.mail_templates.form.actions.reset" => "Auf Standard zurücksetzen"
      "admin.mail_templates.form.actions.reset_confirm" => "Override entfernen"
      "admin.mail_templates.form.actions.save" => "Override speichern"
      "admin.mail_templates.form.actions.send_test" => "Testmail senden"
      "admin.mail_templates.form.actions.subscriptions" => "Betreiber-Abos"
      "admin.mail_templates.form.flash.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
      "admin.mail_templates.form.flash.invalid_test_recipient" => "Bitte eine gültige E-Mail-Adresse für den Testversand angeben."
      "admin.mail_templates.form.flash.preview_rendered" => "Die Vorschau wurde erfolgreich aktualisiert."
      "admin.mail_templates.form.flash.reset" => "Der Override wurde entfernt. Der versionierte Standard ist wieder aktiv."
      "admin.mail_templates.form.flash.saved" => "Die Mailvorlage wurde gespeichert."
      "admin.mail_templates.form.flash.saved_as_default" => "Die Eingabe entspricht dem Standard. Ein vorhandener Override wurde entfernt."
      "admin.mail_templates.form.flash.test_sent" => "Die Testmail wurde an %email% versendet."
      "admin.mail_templates.form.help.html" => "Der HTML-Teil ist Pflicht und wird automatisch in das zentrale Mail-Layout eingebettet."
      "admin.mail_templates.form.help.subject" => "Twig-Ausdrücke sind erlaubt, zum Beispiel {{ orderNumber }} oder {{ shopName }}."
      "admin.mail_templates.form.help.test" => "Der Testversand verwendet den Beispiel-Kontext aus der rechten Spalte."
      "admin.mail_templates.form.help.text" => "Optional. Wenn das Feld leer bleibt, wird der Textteil automatisch aus dem HTML-Inhalt erzeugt."
      "admin.mail_templates.form.labels.category" => "Bereich"
      "admin.mail_templates.form.labels.description" => "Beschreibung"
      "admin.mail_templates.form.labels.html" => "HTML-Inhalt"
      "admin.mail_templates.form.labels.html_default" => "Standard-HTML"
      "admin.mail_templates.form.labels.locale" => "Sprache"
      "admin.mail_templates.form.labels.status" => "Status"
      "admin.mail_templates.form.labels.subject" => "Betreff-Template"
      "admin.mail_templates.form.labels.subject_default" => "Standard-Betreff"
      "admin.mail_templates.form.labels.template_key" => "Template-Key"
      "admin.mail_templates.form.labels.test_recipient" => "Testempfänger"
      "admin.mail_templates.form.labels.text" => "Text-Inhalt"
      "admin.mail_templates.form.labels.text_default" => "Standard-Text"
      "admin.mail_templates.form.labels.updated_at" => "Letzte Anpassung"
      "admin.mail_templates.form.labels.variable" => "Variable"
      "admin.mail_templates.form.modals.reset_body" => "Der gespeicherte Override für %template% (%locale%) wird gelöscht. Danach ist wieder der versionierte Standard aktiv."
      "admin.mail_templates.form.modals.reset_title" => "Override entfernen?"
      "admin.mail_templates.form.page_title" => "Mailvorlage bearbeiten"
      "admin.mail_templates.form.panels.defaults" => "Versionierter Standard"
      "admin.mail_templates.form.panels.editor" => "Editor"
      "admin.mail_templates.form.panels.metadata" => "Vorlageninfo"
      "admin.mail_templates.form.panels.preview" => "Live-Vorschau"
      "admin.mail_templates.form.panels.sample_context" => "Beispiel-Kontext"
      "admin.mail_templates.form.panels.variables" => "Verfügbare Variablen"
      "admin.mail_templates.form.preview.html" => "HTML-Vorschau"
      "admin.mail_templates.form.preview.subject" => "Gerenderter Betreff"
      "admin.mail_templates.form.preview.text" => "Text-Vorschau"
      "admin.mail_templates.form.preview.unavailable" => "Die Vorschau konnte nicht erzeugt werden. Bitte Eingaben und Twig-Syntax prüfen."
      "admin.mail_templates.form.values.default_active" => "Versionierter Standard aktiv"
      "admin.mail_templates.help_index.card_subtitle" => "Vorlagen, Vorschau, Testversand und Betreiber-Abos zentral pflegen"
      "admin.mail_templates.help_index.card_title" => "Mailvorlagen"
      "admin.mail_templates.help.actions.back" => "Zurück zur Übersicht"
      "admin.mail_templates.help.actions.module" => "Zum Modul"
      "admin.mail_templates.help.navigation.items_html" => """
        <li class="mb-1"><a href="#overview"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
        <li class="mb-1"><a href="#workflow"><i class="fa fa-pencil"></i> Bearbeitungsablauf</a></li>\n
        <li class="mb-1"><a href="#variables"><i class="fa fa-code"></i> Variablen & Twig</a></li>\n
        <li class="mb-1"><a href="#subscriptions"><i class="fa fa-bell"></i> Betreiber-Abos</a></li>\n
        <li class="mb-1"><a href="#permissions"><i class="fa fa-lock"></i> Rollen & Rechte</a></li>
        """
      "admin.mail_templates.help.navigation.title" => "Navigation"
      "admin.mail_templates.help.page_title" => "Hilfe: Mailvorlagen"
      "admin.mail_templates.help.sections.overview.body_html" => """
        <p>Das Modul <code>/admin/mail-templates</code> bündelt alle editierbaren Systemmails an einer Stelle. Jede Vorlage besitzt einen versionierten Standard aus dem Code und optional einen sprachspezifischen Override in der Datenbank.</p>\n
        <div class="alert alert-info"><i class="fa fa-lightbulb-o"></i> Änderungen an Betreff, HTML und Text werden sofort für neue Bestell-, Konto-, Retouren- und interne Betreiber-Mails verwendet, ohne dass der Code selbst angepasst werden muss.</div>\n
        <div class="alert alert-success"><i class="fa fa-history"></i> Wenn ein Override entfernt wird, fällt das System automatisch wieder auf den versionierten Standard zurück.</div>
        """
      "admin.mail_templates.help.sections.overview.title" => "Überblick"
      "admin.mail_templates.help.sections.permissions.body_html" => """
        <div class="alert alert-info"><i class="fa fa-lock"></i> Für dieses Modul gelten die Rollen <code>ROLE_ADMIN_MAIL_TEMPLATE_LIST</code>, <code>ROLE_ADMIN_MAIL_TEMPLATE_EDIT</code> und <code>ROLE_ADMIN_MAIL_TEMPLATE_DELETE</code>.</div>\n
        <ul>\n
          <li><strong>LIST:</strong> Zugriff auf Übersicht und Navigation.</li>\n
          <li><strong>EDIT:</strong> Bearbeiten, Vorschau, Testversand und Pflege der Betreiber-Abos.</li>\n
          <li><strong>DELETE:</strong> Zurücksetzen eines Overrides auf den Standard.</li>\n
        </ul>
        """
      "admin.mail_templates.help.sections.permissions.title" => "Rollen & Rechte"
      "admin.mail_templates.help.sections.subscriptions.body_html" => """
        <p>Über <code>/admin/mail-templates/subscriptions</code> steuern Sie, welche internen Ereignisse zusätzlich an aktive Backend-Admins zugestellt werden.</p>\n
        <div class="alert alert-info"><i class="fa fa-bell"></i> Die Standard-Admin-Adresse aus den Systemeinstellungen bleibt als Fallback aktiv. Persönliche Abos ergänzen den Verteiler nur um weitere Empfänger.</div>\n
        <ul>\n
          <li>Interne Bestellbenachrichtigungen</li>\n
          <li>Neue Shop-Registrierungen und Verifizierungen</li>\n
          <li>Neue Kontaktanfragen und täglicher Kontaktformular-Report</li>\n
          <li>Neue Support-Tickets aus dem Kundenkonto</li>\n
          <li>Neue B2B-Anfragen</li>\n
          <li>Neue Produktbewertungen und Produktfragen</li>\n
          <li>Neue RMA-Anfragen</li>\n
        </ul>
        """
      "admin.mail_templates.help.sections.subscriptions.title" => "Betreiber-Abos"
      "admin.mail_templates.help.sections.variables.body_html" => """
        <p>Im Editor stehen sowohl globale Variablen wie <code>shopName</code> und <code>supportEmail</code> als auch vorlagenspezifische Variablen wie <code>orderNumber</code>, <code>statusLabel</code> oder <code>rmaNumber</code> zur Verfügung.</p>\n
        <table class="table table-bordered table-sm table-hover">\n
          <thead class="thead-light"><tr><th>Beispiel</th><th>Beschreibung</th></tr></thead>\n
          <tbody>\n
            <tr><td><code>{{ customerName }}</code></td><td>Gibt den Kundennamen direkt aus.</td></tr>\n
            <tr><td><code>{% if hasDiscount %}...{% endif %}</code></td><td>Bedingte Bereiche können mit Twig flexibel ein- und ausgeblendet werden.</td></tr>\n
            <tr><td><code>{{ totalFormatted }}</code></td><td>Formatierten Geldwert inklusive Währung ausgeben.</td></tr>\n
          </tbody>\n
        </table>
        """
      "admin.mail_templates.help.sections.variables.title" => "Variablen & Twig"
      "admin.mail_templates.help.sections.workflow.body_html" => """
        <ol>\n
          <li>Vorlage und Sprache in der Übersicht auswählen.</li>\n
          <li>Betreff, HTML und optionalen Text anpassen.</li>\n
          <li>Über <strong>Vorschau rendern</strong> das Ergebnis mit Beispiel-Daten prüfen.</li>\n
          <li>Optional eine Testmail an eine interne Adresse senden.</li>\n
          <li>Mit <strong>Override speichern</strong> den Datenbank-Override aktivieren.</li>\n
        </ol>\n
        <div class="alert alert-warning"><i class="fa fa-exclamation-triangle"></i> Ein leerer oder syntaktisch fehlerhafter Twig-Ausdruck blockiert die Vorschau und den Speichervorgang, damit keine defekten Mails produktiv versendet werden.</div>
        """
      "admin.mail_templates.help.sections.workflow.title" => "Bearbeitungsablauf"
      "admin.mail_templates.index.filters.all_locales" => "Alle Sprachen"
      "admin.mail_templates.index.filters.all_status" => "Alle Status"
      "admin.mail_templates.index.filters.apply" => "Filtern"
      "admin.mail_templates.index.filters.locale" => "Sprache"
      "admin.mail_templates.index.filters.reset" => "Zurücksetzen"
      "admin.mail_templates.index.filters.search" => "Suche"
      "admin.mail_templates.index.filters.search_placeholder" => "Nach Key, Titel, Betreff oder Beschreibung suchen"
      "admin.mail_templates.index.filters.status" => "Status"
      "admin.mail_templates.index.list.default_updated" => "Versionierter Standard"
      "admin.mail_templates.index.list.empty" => "Für die aktuelle Filterung wurden keine Mailvorlagen gefunden."
      "admin.mail_templates.index.list.headers.actions" => "Aktionen"
      "admin.mail_templates.index.list.headers.category" => "Bereich"
      "admin.mail_templates.index.list.headers.locale" => "Sprache"
      "admin.mail_templates.index.list.headers.status" => "Status"
      "admin.mail_templates.index.list.headers.subject" => "Standard-Betreff"
      "admin.mail_templates.index.list.headers.template" => "Vorlage"
      "admin.mail_templates.index.list.headers.updated" => "Zuletzt geändert"
      "admin.mail_templates.index.list.title" => "Verfügbare Mailvorlagen"
      "admin.mail_templates.index.list.variable_count" => "Variablen: %count%"
      "admin.mail_templates.index.meta_title" => "Mailvorlagen"
      "admin.mail_templates.index.page_subtitle" => "Versionierte Standardmails mit editierbaren Overrides pro Sprache und Anwendungsfall."
      "admin.mail_templates.index.page_title" => "Mailvorlagen"
      "admin.mail_templates.index.summary.categories" => "Bereiche"
      "admin.mail_templates.index.summary.defaults" => "Standards"
      "admin.mail_templates.index.summary.overridden" => "Overrides"
      "admin.mail_templates.index.summary.total" => "Vorlagen"
      "admin.mail_templates.index.toolbar.help" => "Hilfe"
      "admin.mail_templates.index.toolbar.primary" => "Vorlage öffnen"
      "admin.mail_templates.index.toolbar.subscriptions" => "Benachrichtigungen"
      "admin.mail_templates.locales.de" => "Deutsch"
      "admin.mail_templates.locales.en" => "Englisch"
      "admin.mail_templates.status.default" => "Standard"
      "admin.mail_templates.status.overridden" => "Override aktiv"
      "admin.mail_templates.subscriptions.actions.save" => "Abos speichern"
      "admin.mail_templates.subscriptions.empty" => "Es wurden keine aktiven Admin-Benutzer oder internen Mail-Ereignisse für die Abo-Verwaltung gefunden."
      "admin.mail_templates.subscriptions.flash.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
      "admin.mail_templates.subscriptions.flash.saved" => "Die Betreiber-Abos wurden gespeichert."
      "admin.mail_templates.subscriptions.headers.active" => "Aktive Abos"
      "admin.mail_templates.subscriptions.headers.user" => "Admin"
      "admin.mail_templates.subscriptions.intro" => "Die zentrale Admin-Adresse aus den Systemeinstellungen bleibt als Fallback aktiv. Persönliche Abos erweitern den Verteiler um weitere Betreiber."
      "admin.mail_templates.subscriptions.meta_title" => "Mail-Benachrichtigungen"
      "admin.mail_templates.subscriptions.page_subtitle" => "Steuert, welche internen Mail-Ereignisse zusätzlich an aktive Backend-Admins verteilt werden."
      "admin.mail_templates.subscriptions.page_title" => "Betreiber-Benachrichtigungen"
      "admin.mail_templates.subscriptions.panels.matrix" => "Abo-Matrix"
      "admin.mail_templates.subscriptions.summary.admins" => "Admin-Benutzer"
      "admin.mail_templates.subscriptions.summary.enabled_links" => "Aktive Abos"
      "admin.mail_templates.subscriptions.summary.subscribed_admins" => "Admins mit Abo"
      "admin.mail_templates.subscriptions.summary.templates" => "Interne Events"
      "admin.mail_templates.subscriptions.toolbar.back" => "Zur Vorlagenübersicht"
      "admin.mail_templates.subscriptions.toolbar.help" => "Hilfe"
      "admin.mail_templates.templates.admin_order_notification.description" => "Benachrichtigung an das interne Admin-/Operations-Postfach."
      "admin.mail_templates.templates.admin_order_notification.label" => "Interne Bestellbenachrichtigung"
      "admin.mail_templates.templates.admin_shop_registration_notification.description" => "Betreiber-Mail bei neu angelegten Shop-Konten."
      "admin.mail_templates.templates.admin_shop_registration_notification.label" => "Interne Registrierungsbenachrichtigung"
      "admin.mail_templates.templates.admin_shop_registration_verified.description" => "Betreiber-Mail, sobald ein Shop-Konto per Double-Opt-In aktiviert wurde."
      "admin.mail_templates.templates.admin_shop_registration_verified.label" => "Interne Verifizierungsbestätigung"
      "admin.mail_templates.templates.b2b_quote_request_submitted.description" => "Betreiber-Mail bei neu eingereichter oder aktualisierter B2B-Anfrage."
      "admin.mail_templates.templates.b2b_quote_request_submitted.label" => "Neue B2B-Anfrage"
      "admin.mail_templates.templates.contact_daily_report.description" => "Tägliche interne Zusammenfassung neuer Kontaktanfragen."
      "admin.mail_templates.templates.contact_daily_report.label" => "Kontaktformular-Report"
      "admin.mail_templates.templates.contact_form_submission.description" => "Sofortige Betreiber-Mail bei neuer Kontaktformular-Anfrage."
      "admin.mail_templates.templates.contact_form_submission.label" => "Neue Kontaktanfrage"
      "admin.mail_templates.templates.order_confirmation.description" => "Kundenmail direkt nach erfolgreichem Checkout."
      "admin.mail_templates.templates.order_confirmation.label" => "Bestellbestätigung"
      "admin.mail_templates.templates.order_status_update.description" => "Flexible Statusmail für Bestellungen."
      "admin.mail_templates.templates.order_status_update.label" => "Bestellstatus-Update"
      "admin.mail_templates.templates.password_reset_request.description" => "Systemmail für Reset-Links und Passwort-Neuvergabe."
      "admin.mail_templates.templates.password_reset_request.label" => "Passwort zurücksetzen"
      "admin.mail_templates.templates.pickup_ready_notification.description" => "Kundenmail, sobald eine Abholbestellung im Geschäft bereitliegt."
      "admin.mail_templates.templates.pickup_ready_notification.label" => "Bereit zur Abholung"
      "admin.mail_templates.templates.product_question_submitted.description" => "Betreiber-Mail bei neuer Produktfrage zur Moderation."
      "admin.mail_templates.templates.product_question_submitted.label" => "Neue Produktfrage"
      "admin.mail_templates.templates.review_submitted.description" => "Betreiber-Mail bei neuer Bewertung zur Moderation."
      "admin.mail_templates.templates.review_submitted.label" => "Neue Produktbewertung"
      "admin.mail_templates.templates.rma_confirmation.description" => "Eingangsbestätigung für neu angelegte Retourenanträge."
      "admin.mail_templates.templates.rma_confirmation.label" => "Retourenbestätigung"
      "admin.mail_templates.templates.rma_request_created.description" => "Betreiber-Mail bei neu eingegangener RMA-Anfrage."
      "admin.mail_templates.templates.rma_request_created.label" => "Neue Retoure"
      "admin.mail_templates.templates.rma_status_update.description" => "Status- und Erstattungsupdates für bestehende Retouren."
      "admin.mail_templates.templates.rma_status_update.label" => "Retourenstatus-Update"
      "admin.mail_templates.templates.shipping_notification.description" => "Update an Kunden, sobald die Bestellung versandbereit ist."
      "admin.mail_templates.templates.shipping_notification.label" => "Versandbenachrichtigung"
      "admin.mail_templates.templates.shop_email_verification.description" => "Double-Opt-In-Mail zur Aktivierung neuer Shop-Konten."
      "admin.mail_templates.templates.shop_email_verification.label" => "E-Mail-Bestätigung"
      "admin.mail_templates.templates.shop_registration_confirmation.description" => "Willkommens- und Freischaltmail nach erfolgreicher E-Mail-Bestätigung."
      "admin.mail_templates.templates.shop_registration_confirmation.label" => "Registrierungsbestätigung"
      "admin.mail_templates.templates.support_ticket_created.description" => "Betreiber-Mail bei neuem Support-Ticket aus dem Shop-Konto."
      "admin.mail_templates.templates.support_ticket_created.label" => "Neues Support-Ticket"
      "admin.mail_templates.variables.author_name" => "Name des Autors einer Bewertung oder Produktfrage."
      "admin.mail_templates.variables.company_name" => "Firmenname einer B2B-Anfrage."
      "admin.mail_templates.variables.contact_name" => "Name des B2B-Ansprechpartners."
      "admin.mail_templates.variables.contact_request_count" => "Anzahl neuer Kontaktanfragen im Reportzeitraum."
      "admin.mail_templates.variables.current_year" => "Aktuelles Jahr für Footer und Copyright."
      "admin.mail_templates.variables.customer_email" => "E-Mail-Adresse des Kunden."
      "admin.mail_templates.variables.customer_name" => "Name des Kunden oder des Ansprechpartners."
      "admin.mail_templates.variables.customer_phone" => "Telefonnummer des Kunden oder Ansprechpartners."
      "admin.mail_templates.variables.decided_at_formatted" => "Formatierter Zeitpunkt der Entscheidung."
      "admin.mail_templates.variables.discount_formatted" => "Formatierter Rabattbetrag inklusive Währung."
      "admin.mail_templates.variables.expires_in_hours" => "Gültigkeitsdauer des Reset-Links in Stunden."
      "admin.mail_templates.variables.fulfillment_type_label" => "Lesbare Lieferart, also Versand oder Abholung im Geschäft."
      "admin.mail_templates.variables.has_decided_at" => "Boolescher Schalter, ob eine Entscheidung vorliegt."
      "admin.mail_templates.variables.has_discount" => "Boolescher Schalter, ob ein Rabatt vorhanden ist."
      "admin.mail_templates.variables.has_refund_amount" => "Boolescher Schalter, ob ein Erstattungsbetrag vorhanden ist."
      "admin.mail_templates.variables.has_return_tracking_code" => "Boolescher Schalter, ob ein Tracking-Code vorhanden ist."
      "admin.mail_templates.variables.is_pickup" => "Boolescher Schalter, ob es sich um eine Abholbestellung handelt."
      "admin.mail_templates.variables.login_url" => "Direkter Login-Link zum Shop-Konto."
      "admin.mail_templates.variables.message_body" => "Vollständiger Nachrichtentext einer Betreiber-Anfrage."
      "admin.mail_templates.variables.order_number" => "Bestellnummer bzw. Checkout-Referenz."
      "admin.mail_templates.variables.order_reference" => "Referenz auf eine zugehörige Bestellung oder Anfrage."
      "admin.mail_templates.variables.payment" => "Gewählte Zahlungsart."
      "admin.mail_templates.variables.pickup_status_label" => "Lesbarer Abholstatus der Bestellung."
      "admin.mail_templates.variables.product_name" => "Betroffenes Produkt."
      "admin.mail_templates.variables.quantity" => "Anzahl der betroffenen Artikel."
      "admin.mail_templates.variables.question_body" => "Fragetext einer Produktfrage."
      "admin.mail_templates.variables.reason_label" => "Lesbarer Retourengrund."
      "admin.mail_templates.variables.recipient_name" => "Name des eigentlichen Empfängers der Mail."
      "admin.mail_templates.variables.refund_amount_formatted" => "Formatierter Erstattungsbetrag."
      "admin.mail_templates.variables.registered_at_formatted" => "Formatierter Registrierungszeitpunkt eines neuen Shop-Kontos."
      "admin.mail_templates.variables.report_date_label" => "Datums- oder Zeitraumlabel des Reports."
      "admin.mail_templates.variables.requested_at_formatted" => "Formatierter Zeitpunkt des Antragseingangs."
      "admin.mail_templates.variables.requested_group_name" => "Angefragte B2B-Kundengruppe."
      "admin.mail_templates.variables.reset_url" => "Kompletter Reset-Link inklusive Token."
      "admin.mail_templates.variables.return_tracking_code" => "Tracking-Code einer Rücksendung."
      "admin.mail_templates.variables.review_body" => "Inhalt einer Produktbewertung."
      "admin.mail_templates.variables.review_rating" => "Sternebewertung einer Produktbewertung."
      "admin.mail_templates.variables.review_title" => "Titel einer Produktbewertung."
      "admin.mail_templates.variables.rma_number" => "Retouren- bzw. RMA-Nummer."
      "admin.mail_templates.variables.sender_email" => "E-Mail-Adresse des Absenders einer Kontaktanfrage."
      "admin.mail_templates.variables.sender_name" => "Name des Absenders einer Kontaktanfrage."
      "admin.mail_templates.variables.sender_phone" => "Telefonnummer des Absenders einer Kontaktanfrage."
      "admin.mail_templates.variables.shipping_cost_formatted" => "Formatierte Versandkosten inklusive Währung."
      "admin.mail_templates.variables.shipping_method" => "Gewählte Versandart."
      "admin.mail_templates.variables.shop_name" => "Anzeigename des Shops aus den Systemeinstellungen."
      "admin.mail_templates.variables.status_label" => "Lesbarer Status für Bestellung oder Retoure."
      "admin.mail_templates.variables.submitted_at_formatted" => "Formatierter Einreichungszeitpunkt einer Betreiber-Anfrage."
      "admin.mail_templates.variables.subtotal_formatted" => "Formatierte Zwischensumme vor Versand und Rabatten."
      "admin.mail_templates.variables.support_email" => "Standard-Absender- bzw. Support-E-Mail aus den Systemeinstellungen."
      "admin.mail_templates.variables.ticket_source_label" => "Lesbare Herkunft eines Support-Tickets."
      "admin.mail_templates.variables.ticket_subject" => "Betreff eines Support-Tickets."
      "admin.mail_templates.variables.total_formatted" => "Formatierte Gesamtsumme inklusive Währung."
      "admin.mail_templates.variables.verification_url" => "Kompletter Double-Opt-In-Link zur E-Mail-Bestätigung."
      "admin.mail_templates.variables.verified_at_formatted" => "Formatierter Zeitpunkt der Konto-Bestätigung."
      "admin.media.actions.delete" => "Löschen"
      "admin.media.actions.edit" => "Bearbeiten"
      "admin.media.actions.filter" => "Filtern"
      "admin.media.actions.help" => "Hilfe"
      "admin.media.actions.open" => "Öffnen"
      "admin.media.actions.open_usage" => "Zum Eintrag"
      "admin.media.actions.save" => "Speichern"
      "admin.media.actions.scan" => "Verzeichnisse scannen"
      "admin.media.actions.upload" => "Hochladen"
      "admin.media.delete.blocked" => "Löschen ist gesperrt, weil diese Datei noch an %count% Stelle(n) verwendet wird."
      "admin.media.delete.modal_body" => "Soll die Datei "%file%" wirklich dauerhaft gelöscht werden?"
      "admin.media.delete.modal_title" => "Medium löschen"
      "admin.media.delete.title" => "Löschen"
      "admin.media.directories.images" => "Allgemeine Bilder"
      "admin.media.directories.page_builder_products" => "Page-Builder Produktbilder"
      "admin.media.directories.pages" => "Page-Builder Seitenbilder"
      "admin.media.directories.products" => "Produktbilder"
      "admin.media.directories.shop" => "Shop-Dateien"
      "admin.media.directories.sliders" => "Sliderbilder"
      "admin.media.directories.themes" => "Theme-Assets"
      "admin.media.edit.meta_title" => "Medium bearbeiten: %file%"
      "admin.media.edit.metadata" => "Metadaten & SEO"
      "admin.media.edit.page_title" => "Medium bearbeiten"
      "admin.media.edit.preview" => "Vorschau & technische Daten"
      "admin.media.filters.all_directories" => "Alle Verzeichnisse"
      "admin.media.filters.all_types" => "Alle Typen"
      "admin.media.filters.all_usage" => "Alle Verwendungen"
      "admin.media.filters.files" => "Nur Dateien"
      "admin.media.filters.images" => "Nur Bilder"
      "admin.media.filters.search_placeholder" => "Dateiname, Titel, Alt-Text oder Beschreibung suchen"
      "admin.media.filters.title" => "Filter"
      "admin.media.filters.unused" => "Nur ungenutzte Medien"
      "admin.media.filters.used" => "Nur verwendete Medien"
      "admin.media.form.alt_help" => "Beschreibt den Bildinhalt für Barrierefreiheit, Suche und SEO. Für reine Dateien optional."
      "admin.media.form.alt_text" => "Alt-Text"
      "admin.media.form.description" => "Beschreibung / Lizenzhinweis"
      "admin.media.form.filename_help" => "Ohne Dateiendung eintragen. Beim Speichern wird der Name URL-freundlich normalisiert und bekannte Referenzen werden aktualisiert."
      "admin.media.form.seo_filename" => "SEO-Dateiname"
      "admin.media.form.title" => "Titel"
      "admin.media.index.empty" => "Keine Medien gefunden. Lade eine Datei hoch oder starte den Scan."
      "admin.media.index.list_title" => "Medienbibliothek"
      "admin.media.index.meta_title" => "Media Center"
      "admin.media.index.page_subtitle" => "Uploads zentral verwalten, SEO-Dateinamen pflegen und Bildverwendungen prüfen."
      "admin.media.index.page_title" => "Media Center"
      "admin.media.notifications.access_denied" => "Du hast keine Berechtigung für das Media Center."
      "admin.media.notifications.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
      "admin.media.notifications.deleted" => "Die Datei wurde gelöscht."
      "admin.media.notifications.renamed" => "Die Datei wurde in "%file%" umbenannt. Aktualisierte Referenzen: %references%."
      "admin.media.notifications.scan_finished" => "Scan abgeschlossen: %indexed% Datei(en) geprüft, %removed% veraltete Indexeinträge entfernt."
      "admin.media.notifications.updated" => "Die Medien-Metadaten wurden gespeichert."
      "admin.media.notifications.upload_missing" => "Bitte wähle eine Datei für den Upload aus."
      "admin.media.notifications.uploaded" => "Die Datei "%file%" wurde hochgeladen."
      "admin.media.summary.files" => "Dateien"
      "admin.media.summary.images" => "Bilder"
      "admin.media.summary.total" => "Gesamt"
      "admin.media.summary.unused" => "Ungenutzt"
      "admin.media.summary.used" => "Verwendet"
      "admin.media.table.actions" => "Aktionen"
      "admin.media.table.alt" => "Alt"
      "admin.media.table.dimensions" => "Abmessungen"
      "admin.media.table.directory" => "Verzeichnis"
      "admin.media.table.file" => "Datei"
      "admin.media.table.hash" => "SHA-256"
      "admin.media.table.mime" => "MIME-Typ"
      "admin.media.table.preview" => "Vorschau"
      "admin.media.table.size" => "Größe"
      "admin.media.table.updated" => "Aktualisiert"
      "admin.media.table.usage" => "Verwendung"
      "admin.media.upload.directory" => "Zielverzeichnis"
      "admin.media.upload.file" => "Datei"
      "admin.media.upload.filename" => "SEO-Dateiname optional"
      "admin.media.upload.filename_placeholder" => "z. B. gaming-pc-frontansicht"
      "admin.media.upload.title" => "Neue Datei hochladen"
      "admin.media.usage.empty" => "Dieses Medium wird aktuell in keinem bekannten Modul verwendet."
      "admin.media.usage.no" => "Nein"
      "admin.media.usage.title" => "Aktuelle Verwendung (%count%)"
      "admin.media.usage.types.blog" => "Blog"
      "admin.media.usage.types.page" => "Seite"
      "admin.media.usage.types.product" => "Produkt"
      "admin.media.usage.types.seo" => "SEO"
      "admin.media.usage.types.slider" => "Slider"
      "admin.media.usage.yes" => "Ja (%count%)"
      "admin.menu.footer.actions.new_page" => "Neue Footer-Seite anlegen"
      "admin.menu.footer.info" => "Footer-Menüpunkte können per Drag & Drop verschoben werden. Änderungen werden automatisch gespeichert."
      "admin.menu.footer.list_count" => "%count% Wurzeleinträge"
      "admin.menu.footer.list_title" => "Footer-Navigation"
      "admin.menu.footer.meta_title" => "Footer-Menüverwaltung"
      "admin.menu.footer.notifications.invalid_data" => "Ungültige Menüdaten."
      "admin.menu.footer.notifications.save_failed" => "Footer-Menü konnte nicht gespeichert werden."
      "admin.menu.footer.notifications.saved" => "Footer-Menü wurde aktualisiert."
      "admin.menu.footer.page_subtitle" => "Pflege die Footer-Navigation per Drag & Drop und bearbeite Seiten direkt aus dem Baum."
      "admin.menu.footer.page_title" => "Footer-Menü"
      "admin.menu.main.actions.new_page" => "Neue Seite anlegen"
      "admin.menu.main.info" => "Menüpunkte können per Drag & Drop verschoben werden. Änderungen werden automatisch gespeichert."
      "admin.menu.main.list_count" => "%count% Wurzeleinträge"
      "admin.menu.main.list_title" => "Navigation"
      "admin.menu.main.meta_title" => "Menüverwaltung"
      "admin.menu.main.notifications.invalid_data" => "Ungültige Menüdaten."
      "admin.menu.main.notifications.save_failed" => "Menü konnte nicht gespeichert werden."
      "admin.menu.main.notifications.saved" => "Menü wurde aktualisiert."
      "admin.menu.main.page_subtitle" => "Ordne die Header-Navigation per Drag & Drop und springe direkt in die Seitenbearbeitung."
      "admin.menu.main.page_title" => "Hauptmenü"
      "admin.menu.shared.actions.delete" => "Löschen"
      "admin.menu.shared.actions.edit" => "Bearbeiten"
      "admin.menu.shared.actions.help" => "CMS-Hilfe"
      "admin.menu.shared.page_delete_confirm" => "Seite "%name%" wirklich löschen?"
      "admin.menu.shop.actions.reset" => "Zurücksetzen"
      "admin.menu.shop.info" => "Kategorien per Drag & Drop sortieren. Änderungen werden automatisch gespeichert."
      "admin.menu.shop.list_count" => "%count% Wurzelkategorien"
      "admin.menu.shop.list_title" => "Kategoriebaum"
      "admin.menu.shop.meta_title" => "Shop-Menüverwaltung"
      "admin.menu.shop.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.menu.shop.notifications.invalid_data" => "Ungültige Daten."
      "admin.menu.shop.notifications.reset" => "Shop-Menü wurde zurückgesetzt."
      "admin.menu.shop.notifications.reset_confirm" => "Shop-Menü wirklich auf Standard zurücksetzen?"
      "admin.menu.shop.notifications.save_failed" => "Shop-Menü konnte nicht gespeichert werden."
      "admin.menu.shop.notifications.saved" => "Shop-Menü wurde aktualisiert."
      "admin.menu.shop.page_subtitle" => "Sortiere Kategorien für die Shop-Navigation per Drag & Drop."
      "admin.menu.shop.page_title" => "Shop-Menü"
      "admin.navigation.blog.menu" => "Blog"
      "admin.navigation.blog.new" => "Blogbeitrag anlegen"
      "admin.navigation.booking.apartments" => "Wohnungen"
      "admin.navigation.booking.bookings" => "Buchungen"
      "admin.navigation.booking.calendar" => "Kalender"
      "admin.navigation.booking.csv_import" => "CSV-Import"
      "admin.navigation.booking.menu" => "Buchungsplan"
      "admin.navigation.booking.room_mapping" => "Zimmertyp-Mapping"
      "admin.navigation.categories.blog_categories" => "Blog-Kategorien"
      "admin.navigation.categories.menu" => "Kategorien"
      "admin.navigation.common.activate_action" => "Aktivieren"
      "admin.navigation.common.active" => "Aktiv"
      "admin.navigation.common.back" => "Zurück"
      "admin.navigation.common.cancel" => "Abbrechen"
      "admin.navigation.common.close_alerts" => "Alle Hinweise schließen"
      "admin.navigation.common.confirm" => "Bestätigen"
      "admin.navigation.common.deactivate_action" => "Deaktivieren"
      "admin.navigation.common.delete" => "Löschen"
      "admin.navigation.common.delete_blocked" => "Dieser Eintrag kann nicht gelöscht werden."
      "admin.navigation.common.delete_confirm_generic" => "Möchten Sie diesen Eintrag wirklich löschen?"
      "admin.navigation.common.edit" => "Bearbeiten"
      "admin.navigation.common.error" => "Fehler"
      "admin.navigation.common.execute" => "Ausführen"
      "admin.navigation.common.fullscreen" => "Vollbild"
      "admin.navigation.common.group_action" => "Gruppenaktion"
      "admin.navigation.common.help" => "Hilfe"
      "admin.navigation.common.inactive" => "Inaktiv"
      "admin.navigation.common.info" => "Info"
      "admin.navigation.common.new" => "Neu anlegen"
      "admin.navigation.common.overview" => "Übersicht"
      "admin.navigation.common.save" => "Speichern"
      "admin.navigation.common.success" => "Erfolg"
      "admin.navigation.common.warning" => "Warnung"
      "admin.navigation.frontend.content_blocks" => "Content-Blöcke"
      "admin.navigation.frontend.footer" => "Footer"
      "admin.navigation.frontend.header" => "Header"
      "admin.navigation.frontend.media_center" => "Media Center"
      "admin.navigation.frontend.menu" => "Frontend"
      "admin.navigation.frontend.menu_group" => "Menü"
      "admin.navigation.frontend.pages" => "Seiten"
      "admin.navigation.frontend.shop" => "Shop"
      "admin.navigation.frontend.slider" => "Slider"
      "admin.navigation.frontend.widgets" => "Widgets"
      "admin.navigation.groups.booking_hospitality" => "Buchungen & Unterkunft"
      "admin.navigation.groups.catalog" => "Produkte & Katalog"
      "admin.navigation.groups.commerce" => "Commerce"
      "admin.navigation.groups.content" => "Content"
      "admin.navigation.groups.dashboard" => "Dashboard"
      "admin.navigation.groups.editorial" => "Redaktion"
      "admin.navigation.groups.import_data" => "Import & Datenpflege"
      "admin.navigation.groups.layout" => "Navigation & Layout"
      "admin.navigation.groups.marketing_seo" => "Marketing & SEO"
      "admin.navigation.groups.orders_customers" => "Bestellungen & Kunden"
      "admin.navigation.groups.pages" => "Seiten"
      "admin.navigation.groups.pricing_actions" => "Preise & Aktionen"
      "admin.navigation.groups.reviews_feeds" => "Bewertungen & Feeds"
      "admin.navigation.groups.settings" => "Einstellungen"
      "admin.navigation.groups.shipping_returns" => "Versand & Retouren"
      "admin.navigation.groups.system" => "System"
      "admin.navigation.groups.users_rights" => "Benutzer & Rechte"
      "admin.navigation.help.menu" => "Hilfe & Dokumentation"
      "admin.navigation.home" => "Dashboard"
      "admin.navigation.locale.label" => "Sprache"
      "admin.navigation.profile.change_password" => "Mein Passwort ändern"
      "admin.navigation.profile.logout" => "Abmelden"
      "admin.navigation.profile.welcome" => "Willkommen"
      "admin.navigation.settings.ecommerce" => "E-Commerce"
      "admin.navigation.settings.faq" => "FAQ"
      "admin.navigation.settings.imprint" => "Impressum"
      "admin.navigation.settings.mail_templates" => "Mailvorlagen"
      "admin.navigation.settings.menu" => "Einstellungen"
      "admin.navigation.settings.privacy" => "Datenschutz"
      "admin.navigation.settings.system" => "System"
      "admin.navigation.settings.translations" => "Übersetzungen"
      "admin.navigation.shop.alerts.inbox" => "Alert-Inbox"
      "admin.navigation.shop.alerts.menu" => "Alerts"
      "admin.navigation.shop.categories" => "Kategorien"
      "admin.navigation.shop.category_new" => "Kategorie anlegen"
      "admin.navigation.shop.configurator_new" => "Konfiguration anlegen"
      "admin.navigation.shop.customers.menu" => "Shop-Kunden"
      "admin.navigation.shop.customers.new" => "Kunde anlegen"
      "admin.navigation.shop.customers.newsletter" => "Newsletter"
      "admin.navigation.shop.customers.support_tickets" => "Support-Tickets"
      "admin.navigation.shop.feeds.hub" => "Feed-Hub"
      "admin.navigation.shop.feeds.menu" => "Feed-Exporte"
      "admin.navigation.shop.import_control.center" => "Kontrollzentrum"
      "admin.navigation.shop.import_control.menu" => "Import-Steuerung"
      "admin.navigation.shop.menu" => "Shop"
      "admin.navigation.shop.orders" => "Bestellungen"
      "admin.navigation.shop.pricing.manage" => "Verwaltung"
      "admin.navigation.shop.pricing.menu" => "Pricing Engine"
      "admin.navigation.shop.pricing.monitoring" => "Monitoring-Dashboard"
      "admin.navigation.shop.product_new" => "Produkt anlegen"
      "admin.navigation.shop.products" => "Produkte"
      "admin.navigation.shop.reviews.menu" => "Bewertungen"
      "admin.navigation.shop.reviews.moderation" => "Moderation"
      "admin.navigation.shop.reviews.product_qa" => "Produkt Q&A"
      "admin.navigation.users.menu" => "Benutzer"
      "admin.navigation.users.profiles" => "Profile"
      "admin.newsletter.form.create_title" => "Newsletter-Abonnent anlegen"
      "admin.newsletter.form.edit_title" => "Newsletter-Abonnent bearbeiten"
      "admin.newsletter.form.fields.confirmed" => "Bestätigt"
      "admin.newsletter.form.fields.email" => "E-Mail"
      "admin.newsletter.form.fields.subscribed_at" => "Anmeldedatum"
      "admin.newsletter.form.hints.email" => "Direkt eingeben oder unten per Shop-User-Suche auswählen (ab 3 Zeichen)."
      "admin.newsletter.form.hints.shop_user_search" => "Auswahl übernimmt die E-Mail automatisch in das Feld oben."
      "admin.newsletter.form.js.apply_date" => "Übernehmen"
      "admin.newsletter.form.js.clear_date" => "Leeren"
      "admin.newsletter.form.labels.shop_user_search" => "Shop-User suchen"
      "admin.newsletter.form.panel_title" => "Formular"
      "admin.newsletter.form.placeholders.email" => "name@beispiel.de"
      "admin.newsletter.form.placeholders.shop_user_search" => "Shop-User per E-Mail suchen ..."
      "admin.newsletter.form.placeholders.subscribed_at" => "JJJJ-MM-TT HH:MM"
      "admin.newsletter.form.subtitle" => "Verwalte Empfänger, Bestätigung und Anmeldedatum."
      "admin.newsletter.list.columns.actions" => "Aktionen"
      "admin.newsletter.list.columns.confirmed" => "Bestätigt"
      "admin.newsletter.list.columns.email" => "E-Mail"
      "admin.newsletter.list.columns.id" => "ID"
      "admin.newsletter.list.columns.subscribed_at" => "Datum"
      "admin.newsletter.list.create" => "Abonnent anlegen"
      "admin.newsletter.list.delete_message" => "Newsletter-Abonnent "%email%" wirklich löschen?"
      "admin.newsletter.list.empty" => "Keine Newsletter-Abonnenten vorhanden."
      "admin.newsletter.list.panel_title" => "Abonnentenliste"
      "admin.newsletter.list.subtitle" => "Übersicht über alle Newsletter-Anmeldungen und Bestätigungsstatus."
      "admin.newsletter.list.title" => "Newsletter-Abonnenten"
      "admin.newsletter.list.values.no" => "Nein"
      "admin.newsletter.list.values.yes" => "Ja"
      "admin.newsletter.notifications.created" => "Newsletter-Abonnent wurde angelegt."
      "admin.newsletter.notifications.deleted" => "Newsletter-Abonnent wurde gelöscht."
      "admin.newsletter.notifications.duplicate_email" => "Diese E-Mail ist bereits als Newsletter-Abonnent eingetragen."
      "admin.newsletter.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.newsletter.notifications.updated" => "Newsletter-Abonnent wurde gespeichert."
      "admin.page.builder.color_labels.accent.black" => "Schwarz"
      "admin.page.builder.color_labels.accent.blue" => "Blau"
      "admin.page.builder.color_labels.accent.graphite" => "Graphit"
      "admin.page.builder.color_labels.accent.green" => "Grün"
      "admin.page.builder.color_labels.accent.orange" => "Orange"
      "admin.page.builder.color_labels.accent.red" => "Rot"
      "admin.page.builder.color_labels.accent.teal" => "Petrol"
      "admin.page.builder.color_labels.accent.violet" => "Violett"
      "admin.page.builder.color_labels.background.anthracite" => "Anthrazit"
      "admin.page.builder.color_labels.background.lavender" => "Lavendel"
      "admin.page.builder.color_labels.background.light_gray" => "Hellgrau"
      "admin.page.builder.color_labels.background.mint" => "Mint"
      "admin.page.builder.color_labels.background.rose" => "Rose"
      "admin.page.builder.color_labels.background.sand" => "Sand"
      "admin.page.builder.color_labels.background.sky" => "Himmel"
      "admin.page.builder.color_labels.background.white" => "Weiß"
      "admin.page.builder.color_labels.custom" => "Eigene Farbe"
      "admin.page.builder.color_labels.default" => "Standard"
      "admin.page.builder.color_labels.empty_accent" => "Standard-Blau"
      "admin.page.builder.color_labels.special_hide" => "Sonderwert verbergen"
      "admin.page.builder.color_labels.special_placeholder" => "Nur falls du bewusst einen Sonderwert brauchst"
      "admin.page.builder.color_labels.special_show" => "Sonderwert eingeben"
      "admin.page.builder.defaults.counter_cards_label" => "Zufriedene Kunden"
      "admin.page.builder.defaults.counter_cards_subtitle" => "Drei starke Kennzahlen im Überblick"
      "admin.page.builder.defaults.counter_cards_suffix" => "k"
      "admin.page.builder.defaults.counter_cards_title" => "Zahlen, die Vertrauen schaffen"
      "admin.page.builder.defaults.counter_cards_value" => "898"
      "admin.page.builder.defaults.faq_answer" => "Antwort."
      "admin.page.builder.defaults.faq_heading" => "Häufige Fragen"
      "admin.page.builder.defaults.faq_question" => "Frage?"
      "admin.page.builder.defaults.hero_heading" => "Neue Hero-Überschrift"
      "admin.page.builder.defaults.icon_list_text" => "Beschreibung"
      "admin.page.builder.defaults.icon_list_title" => "Vorteil 1"
      "admin.page.builder.defaults.newsletter_button" => "Anmelden"
      "admin.page.builder.defaults.newsletter_heading" => "Newsletter abonnieren"
      "admin.page.builder.defaults.newsletter_note" => "Kein Spam. Nur relevante Updates."
      "admin.page.builder.defaults.newsletter_placeholder" => "Ihre E-Mail-Adresse"
      "admin.page.builder.defaults.newsletter_text" => "Aktionen, neue Produkte und exklusive Hinweise direkt ins Postfach."
      "admin.page.builder.defaults.pricing_cta" => "Jetzt starten"
      "admin.page.builder.defaults.pricing_feature" => "Feature 1"
      "admin.page.builder.defaults.pricing_name" => "Starter"
      "admin.page.builder.defaults.pricing_period" => "/ Monat"
      "admin.page.builder.defaults.pricing_price" => "9 EUR"
      "admin.page.builder.defaults.product_grid_heading" => "Empfohlene Produkte"
      "admin.page.builder.defaults.testimonials_name" => "Max Mustermann"
      "admin.page.builder.defaults.testimonials_role" => "Kunde"
      "admin.page.builder.defaults.testimonials_text" => "Toller Service!"
      "admin.page.builder.defaults.text_html" => "<p>Neuer Textabschnitt</p>"
      "admin.page.builder.draft_badge" => "Entwurf"
      "admin.page.builder.fields.avatar" => "Avatar"
      "admin.page.builder.fields.background_color" => "Hintergrundfarbe"
      "admin.page.builder.fields.background_image" => "Hintergrundbild"
      "admin.page.builder.fields.button_label" => "Button-Beschriftung"
      "admin.page.builder.fields.button_url" => "Button-URL"
      "admin.page.builder.fields.caption" => "Bildunterschrift"
      "admin.page.builder.fields.category_optional" => "Kategorie (optional)"
      "admin.page.builder.fields.columns" => "Spalten (1-4)"
      "admin.page.builder.fields.content" => "Inhalt"
      "admin.page.builder.fields.content_block_select" => "Content-Block auswählen"
      "admin.page.builder.fields.counter_label" => "Label"
      "admin.page.builder.fields.counter_suffix" => "Suffix"
      "admin.page.builder.fields.counter_value" => "Wert"
      "admin.page.builder.fields.cta_text" => "Button-Text"
      "admin.page.builder.fields.description_text" => "Beschreibungstext"
      "admin.page.builder.fields.email_placeholder" => "E-Mail-Platzhalter"
      "admin.page.builder.fields.entries" => "Einträge"
      "admin.page.builder.fields.eyebrow" => "Eyebrow-Text"
      "admin.page.builder.fields.faq_items" => "FAQ-Einträge"
      "admin.page.builder.fields.features" => "Leistungsmerkmale"
      "admin.page.builder.fields.heading" => "Überschrift"
      "admin.page.builder.fields.height_px" => "Höhe in px"
      "admin.page.builder.fields.highlighted" => "Empfohlen"
      "admin.page.builder.fields.html_content" => "HTML-Inhalt"
      "admin.page.builder.fields.icon" => "Icon"
      "admin.page.builder.fields.icon_color" => "Icon-Farbe"
      "admin.page.builder.fields.image" => "Bild"
      "admin.page.builder.fields.image_alt" => "Bild-Alternativtext"
      "admin.page.builder.fields.image_position" => "Bildposition"
      "admin.page.builder.fields.name" => "Name"
      "admin.page.builder.fields.note" => "Hinweistext"
      "admin.page.builder.fields.period" => "Zeitraum"
      "admin.page.builder.fields.price" => "Preis"
      "admin.page.builder.fields.price_boxes" => "Preisboxen"
      "admin.page.builder.fields.product_limit" => "Anzahl Produkte (1-24, 1 = Angebotsansicht)"
      "admin.page.builder.fields.products_optional" => "Gezielte Produkte (optional)"
      "admin.page.builder.fields.quote" => "Zitat"
      "admin.page.builder.fields.role" => "Rolle / Funktion"
      "admin.page.builder.fields.stars" => "Sterne"
      "admin.page.builder.fields.subtitle" => "Untertitel"
      "admin.page.builder.fields.text" => "Text"
      "admin.page.builder.fields.title" => "Titel"
      "admin.page.builder.fields.variant" => "Variante"
      "admin.page.builder.fields.video_link" => "Video-Link"
      "admin.page.builder.fields.widget_select" => "Widget auswählen"
      "admin.page.builder.groups.advanced" => "Erweitert"
      "admin.page.builder.groups.content" => "Inhalt"
      "admin.page.builder.groups.embeds" => "Einbindungen"
      "admin.page.builder.groups.misc" => "Sonstiges"
      "admin.page.builder.help.feature_per_line" => "Ein Merkmal pro Zeile."
      "admin.page.builder.help.icon_picker" => "Ein Icon anklicken. Nur bei Bedarf ein eigenes Icon eintragen."
      "admin.page.builder.help.image_optional" => "Optional: Bild hochladen oder URL eintragen."
      "admin.page.builder.help.video_link" => "Unterstützt YouTube, Vimeo sowie direkte MP4-, WebM- oder OGG-Dateien."
      "admin.page.builder.icon_labels.custom" => "Eigenes Icon"
      "admin.page.builder.icon_labels.custom_placeholder" => "Nur falls du ein spezielles Icon brauchst"
      "admin.page.builder.icon_labels.presets.bolt" => "Blitz"
      "admin.page.builder.icon_labels.presets.check" => "Haken"
      "admin.page.builder.icon_labels.presets.gift" => "Geschenk"
      "admin.page.builder.icon_labels.presets.globe" => "Welt"
      "admin.page.builder.icon_labels.presets.heart" => "Herz"
      "admin.page.builder.icon_labels.presets.leaf" => "Blatt"
      "admin.page.builder.icon_labels.presets.lock" => "Schloss"
      "admin.page.builder.icon_labels.presets.phone" => "Telefon"
      "admin.page.builder.icon_labels.presets.shield" => "Schild"
      "admin.page.builder.icon_labels.presets.star" => "Stern"
      "admin.page.builder.icon_labels.presets.thumbs_up" => "Daumen"
      "admin.page.builder.icon_labels.presets.truck" => "Lieferung"
      "admin.page.builder.modal.close" => "Schließen"
      "admin.page.builder.modal.title" => "Abschnitt auswählen"
      "admin.page.builder.options.cta_variant.dark" => "Dunkel"
      "admin.page.builder.options.cta_variant.light" => "Hell"
      "admin.page.builder.options.cta_variant.primary" => "Primär (blau)"
      "admin.page.builder.options.image_position.left" => "Links"
      "admin.page.builder.options.image_position.right" => "Rechts"
      "admin.page.builder.options.newsletter_variant.dark" => "Dunkel"
      "admin.page.builder.options.newsletter_variant.light" => "Hell"
      "admin.page.builder.options.newsletter_variant.primary" => "Primär"
      "admin.page.builder.options.stars.five" => "5 Sterne"
      "admin.page.builder.options.stars.four" => "4 Sterne"
      "admin.page.builder.options.stars.one" => "1 Stern"
      "admin.page.builder.options.stars.three" => "3 Sterne"
      "admin.page.builder.options.stars.two" => "2 Sterne"
      "admin.page.builder.panel_title" => "Page Builder"
      "admin.page.builder.runtime.add_item" => "Eintrag hinzufügen"
      "admin.page.builder.runtime.add_video_hint" => "Füge einen YouTube-, Vimeo- oder direkten Videolink ein."
      "admin.page.builder.runtime.block_prefix" => "Block #%id%"
      "admin.page.builder.runtime.count" => "%count% Elemente"
      "admin.page.builder.runtime.delete" => "Löschen"
      "admin.page.builder.runtime.duplicate" => "Duplizieren"
      "admin.page.builder.runtime.empty_entries" => "Noch keine Einträge angelegt."
      "admin.page.builder.runtime.empty_sections" => "Noch keine Abschnitte – füge einen hinzu!"
      "admin.page.builder.runtime.error_prefix" => "Fehler: "
      "admin.page.builder.runtime.error_unknown" => "Unbekannt"
      "admin.page.builder.runtime.file_detected" => "Videodatei erkannt"
      "admin.page.builder.runtime.file_hint" => "Das Frontend verwendet den Link als direkt eingebundene Videodatei."
      "admin.page.builder.runtime.full_width" => "Volle Seitenbreite"
      "admin.page.builder.runtime.full_width_hint" => "kein Container, randlos"
      "admin.page.builder.runtime.image_url_placeholder" => "oder Bild-URL eingeben …"
      "admin.page.builder.runtime.item_label" => "Eintrag"
      "admin.page.builder.runtime.move_down" => "Nach unten"
      "admin.page.builder.runtime.move_up" => "Nach oben"
      "admin.page.builder.runtime.multi_select_hint" => "Leer lassen = alle Produkte nach Kategorie/Limit laden"
      "admin.page.builder.runtime.no_video_preview" => "Noch keine Vorschau"
      "admin.page.builder.runtime.no_video_selected" => "Noch kein Video ausgewählt"
      "admin.page.builder.runtime.placeholder_or_add" => "oder neuen hinzufügen"
      "admin.page.builder.runtime.placeholder_select_section" => "Abschnitt links auswählen"
      "admin.page.builder.runtime.preview_alt" => "Vorschau"
      "admin.page.builder.runtime.remove" => "Entfernen"
      "admin.page.builder.runtime.remove_image" => "Bild entfernen"
      "admin.page.builder.runtime.remove_image_title" => "Bild entfernen"
      "admin.page.builder.runtime.select_none" => "– Keine Auswahl (alle Produkte) –"
      "admin.page.builder.runtime.select_products_placeholder" => "Produkte suchen und auswählen …"
      "admin.page.builder.runtime.select_prompt" => "– Bitte wählen –"
      "admin.page.builder.runtime.template_prompt" => "Name für die neue Vorlage:"
      "admin.page.builder.runtime.template_save_failed" => "Fehler beim Speichern der Vorlage."
      "admin.page.builder.runtime.template_saved" => "Vorlage "%name%" gespeichert!"
      "admin.page.builder.runtime.unknown_type" => "Unbekannter Typ: %type%"
      "admin.page.builder.runtime.unknown_video" => "Link nicht sicher erkannt"
      "admin.page.builder.runtime.unknown_video_hint" => "Nutze am besten einen YouTube-, Vimeo- oder direkten MP4/WebM-Link."
      "admin.page.builder.runtime.unknown_video_preview" => "Für diesen Link kann aktuell keine Vorschau erzeugt werden."
      "admin.page.builder.runtime.upload_error_prefix" => "Upload-Fehler: "
      "admin.page.builder.runtime.upload_failed" => "Upload fehlgeschlagen. Bitte erneut versuchen."
      "admin.page.builder.runtime.upload_image" => "Bild hochladen"
      "admin.page.builder.runtime.upload_in_progress" => "Wird hochgeladen …"
      "admin.page.builder.runtime.video_placeholder" => "https://youtu.be/... oder https://vimeo.com/..."
      "admin.page.builder.runtime.vimeo_detected" => "Vimeo erkannt"
      "admin.page.builder.runtime.vimeo_hint" => "Der Link wird im Frontend als eingebettetes Vimeo-Video dargestellt."
      "admin.page.builder.runtime.vimeo_preview_title" => "Vimeo-Vorschau"
      "admin.page.builder.runtime.visibility_limited" => "Sichtbarkeit eingeschränkt"
      "admin.page.builder.runtime.widget_prefix" => "Widget #%id%"
      "admin.page.builder.runtime.youtube_detected" => "YouTube erkannt"
      "admin.page.builder.runtime.youtube_hint" => "Der Link wird im Frontend als eingebettetes YouTube-Video dargestellt."
      "admin.page.builder.runtime.youtube_preview_title" => "YouTube-Vorschau"
      "admin.page.builder.section_labels.content_block" => "Content-Block"
      "admin.page.builder.section_labels.counter_cards" => "Kennzahlen"
      "admin.page.builder.section_labels.cta_banner" => "CTA-Banner"
      "admin.page.builder.section_labels.faq" => "FAQ"
      "admin.page.builder.section_labels.hero" => "Hero"
      "admin.page.builder.section_labels.icon_list" => "Icon-Liste"
      "admin.page.builder.section_labels.image_text" => "Bild + Text"
      "admin.page.builder.section_labels.legacy_html" => "Legacy HTML"
      "admin.page.builder.section_labels.newsletter" => "Newsletter"
      "admin.page.builder.section_labels.pricing_table" => "Preistabelle"
      "admin.page.builder.section_labels.product_grid" => "Produkt-Grid"
      "admin.page.builder.section_labels.spacer" => "Abstand"
      "admin.page.builder.section_labels.testimonials" => "Testimonials"
      "admin.page.builder.section_labels.text" => "Text"
      "admin.page.builder.section_labels.video" => "Video"
      "admin.page.builder.section_labels.widget" => "Widget"
      "admin.page.builder.section_meta.counter_cards.add" => "Kennzahl hinzufügen"
      "admin.page.builder.section_meta.counter_cards.empty" => "Noch keine Kennzahlen angelegt."
      "admin.page.builder.section_meta.counter_cards.item_label" => "Kennzahl"
      "admin.page.builder.section_meta.faq.add" => "Frage hinzufügen"
      "admin.page.builder.section_meta.faq.empty" => "Noch keine Fragen angelegt."
      "admin.page.builder.section_meta.faq.item_label" => "FAQ"
      "admin.page.builder.section_meta.icon_list.add" => "Eintrag hinzufügen"
      "admin.page.builder.section_meta.icon_list.empty" => "Noch keine Einträge angelegt."
      "admin.page.builder.section_meta.icon_list.item_label" => "Eintrag"
      "admin.page.builder.section_meta.pricing_table.add" => "Preisspalte hinzufügen"
      "admin.page.builder.section_meta.pricing_table.empty" => "Noch keine Preisboxen angelegt."
      "admin.page.builder.section_meta.pricing_table.item_label" => "Preisspalte"
      "admin.page.builder.section_meta.testimonials.add" => "Testimonial hinzufügen"
      "admin.page.builder.section_meta.testimonials.empty" => "Noch keine Testimonials angelegt."
      "admin.page.builder.section_meta.testimonials.item_label" => "Testimonial"
      "admin.page.builder.sidebar.title" => "Abschnitte"
      "admin.page.builder.templates.built_in.content_block.name" => "Beispiel: Content-Block"
      "admin.page.builder.templates.built_in.content_block.preview_note" => "Nach dem Einfügen bitte Content-Block auswählen"
      "admin.page.builder.templates.built_in.counter_cards.name" => "Beispiel: Kennzahlen"
      "admin.page.builder.templates.built_in.counter_cards.preview_note" => "AppStrap-inspirierte Kennzahlenkarten mit optionalem Bildhintergrund"
      "admin.page.builder.templates.built_in.cta_banner.name" => "Beispiel: CTA-Banner"
      "admin.page.builder.templates.built_in.cta_banner.preview_note" => "Konversionsstarker Call-to-Action"
      "admin.page.builder.templates.built_in.faq.name" => "Beispiel: FAQ"
      "admin.page.builder.templates.built_in.faq.preview_note" => "FAQ mit zwei Beispielpunkten"
      "admin.page.builder.templates.built_in.hero.name" => "Beispiel: Hero"
      "admin.page.builder.templates.built_in.hero.preview_note" => "Vorgefertigtes Hero-Beispiel"
      "admin.page.builder.templates.built_in.icon_list.name" => "Beispiel: Icon-Liste"
      "admin.page.builder.templates.built_in.icon_list.preview_note" => "Icon-Liste mit drei Vorteilen"
      "admin.page.builder.templates.built_in.image_text.name" => "Beispiel: Bild + Text"
      "admin.page.builder.templates.built_in.image_text.preview_note" => "Bild bitte nach dem Einfügen auswählen"
      "admin.page.builder.templates.built_in.legacy_html.name" => "Beispiel: Legacy HTML"
      "admin.page.builder.templates.built_in.legacy_html.preview_note" => "Für Altdaten oder Spezialmarkup"
      "admin.page.builder.templates.built_in.newsletter.name" => "Beispiel: Newsletter"
      "admin.page.builder.templates.built_in.newsletter.preview_note" => "Inline-Anmeldeblock ist direkt an das vorhandene Newsletter-Abo angebunden"
      "admin.page.builder.templates.built_in.pricing_table.name" => "Beispiel: Preistabelle"
      "admin.page.builder.templates.built_in.pricing_table.preview_note" => "Zwei Preisstufen als Beispiel"
      "admin.page.builder.templates.built_in.product_grid.name" => "Beispiel: Produkt-Grid"
      "admin.page.builder.templates.built_in.product_grid.preview_note" => "Shop-Kartenansicht mit Beispielüberschrift"
      "admin.page.builder.templates.built_in.spacer.name" => "Beispiel: Abstand"
      "admin.page.builder.templates.built_in.spacer.preview_note" => "Zwischenraum für Layout-Trennung"
      "admin.page.builder.templates.built_in.testimonials.name" => "Beispiel: Testimonials"
      "admin.page.builder.templates.built_in.testimonials.preview_note" => "Testimonials mit Beispielbewertungen"
      "admin.page.builder.templates.built_in.text.name" => "Beispiel: Textblock"
      "admin.page.builder.templates.built_in.text.preview_note" => "Einfacher redaktioneller Textabschnitt"
      "admin.page.builder.templates.built_in.video.name" => "Beispiel: Video"
      "admin.page.builder.templates.built_in.video.preview_note" => "Video-Sektion mit Beispiel-URL"
      "admin.page.builder.templates.built_in.widget.name" => "Beispiel: Widget"
      "admin.page.builder.templates.built_in.widget.preview_note" => "Nach dem Einfügen bitte Widget auswählen"
      "admin.page.builder.templates.errors.invalid_data" => "Ungültige Daten"
      "admin.page.builder.toggle_labels.active" => "Aktiv"
      "admin.page.builder.toggle_labels.highlighted" => "Diese Preisbox hervorheben"
      "admin.page.builder.toolbar.add_section" => "Abschnitt hinzufügen"
      "admin.page.builder.toolbar.insert" => "Einfügen"
      "admin.page.builder.toolbar.insert_title" => "Vorlage einfügen"
      "admin.page.builder.toolbar.template_placeholder" => "– Vorlage wählen –"
      "admin.page.builder.upload.errors.directory_not_writable" => "Upload-Verzeichnis ist nicht beschreibbar."
      "admin.page.builder.upload.errors.file_too_large" => "Datei zu groß (max. 5 MB)."
      "admin.page.builder.upload.errors.invalid_type" => "Ungültiger Dateityp. Erlaubt: JPG, PNG, GIF, WebP."
      "admin.page.builder.upload.errors.no_file" => "Keine Datei übermittelt."
      "admin.page.builder.upload.errors.save_failed" => "Bild konnte nicht gespeichert werden."
      "admin.page.builder.visibility.actions.apply" => "Übernehmen"
      "admin.page.builder.visibility.actions.apply_done" => "Übernommen"
      "admin.page.builder.visibility.actions.save_template" => "Als Vorlage speichern"
      "admin.page.builder.visibility.actions.save_template_title" => "Abschnitt als Vorlage speichern"
      "admin.page.builder.visibility.audience.all" => "Alle Besucher"
      "admin.page.builder.visibility.audience.guests" => "Nur Gäste (nicht eingeloggt)"
      "admin.page.builder.visibility.audience.logged_in" => "Nur eingeloggte Kunden"
      "admin.page.builder.visibility.fields.audience" => "Zielgruppe"
      "admin.page.builder.visibility.fields.from" => "Sichtbar ab"
      "admin.page.builder.visibility.fields.to" => "Sichtbar bis"
      "admin.page.builder.visibility.title" => "Sichtbarkeit & Zeitplanung"
      "admin.page.edit.actions.back" => "Zurück"
      "admin.page.edit.actions.publish" => "Veröffentlichen"
      "admin.page.edit.actions.restore" => "Stand wiederherstellen"
      "admin.page.edit.actions.save_draft" => "Entwurf speichern"
      "admin.page.edit.actions.save_public" => "Öffentliche Seite speichern"
      "admin.page.edit.actions.unpublish" => "Offline schalten"
      "admin.page.edit.meta_title" => "Seite bearbeiten"
      "admin.page.edit.page_title" => "Seite bearbeiten"
      "admin.page.edit.restore_title" => "Letzten veröffentlichten Stand wiederherstellen"
      "admin.page.edit.status.draft" => "Entwurf"
      "admin.page.edit.status.published" => "Veröffentlicht"
      "admin.page.edit.status.published_at" => "Veröffentlicht: %date%"
      "admin.page.edit.tabs.builder" => "Seite & Builder"
      "admin.page.edit.tabs.revisions" => "Revisionen"
      "admin.page.edit.tabs.revisions_title" => "Revisionsverlauf anzeigen"
      "admin.page.edit.tabs.seo" => "SEO"
      "admin.page.errors.not_found" => "Seite nicht gefunden"
      "admin.page.errors.revision_not_found" => "Revision nicht gefunden"
      "admin.page.form.choices.footer_placements.legal" => "Untere Legal-Leiste"
      "admin.page.form.choices.footer_placements.main" => "Oberes Footer-Menü"
      "admin.page.form.choices.footer_placements.none" => "Nicht im Footer anzeigen"
      "admin.page.form.choices.slider_types.nfok_announcement_strip" => "Announcement Strip"
      "admin.page.form.choices.slider_types.nfok_automation_flow" => "Automation Flow"
      "admin.page.form.choices.slider_types.nfok_case_study" => "Case Study"
      "admin.page.form.choices.slider_types.nfok_commerce_hero" => "Commerce Hero"
      "admin.page.form.choices.slider_types.nfok_editorial_minimal" => "Editorial Minimal"
      "admin.page.form.choices.slider_types.nfok_feature_stack" => "Feature Stack"
      "admin.page.form.choices.slider_types.nfok_product_focus" => "Produktfokus"
      "admin.page.form.choices.slider_types.nfok_service_hero" => "NFOK Service Hero"
      "admin.page.form.choices.slider_types.nfok_technical_dark" => "Technical Dark"
      "admin.page.form.choices.slider_types.nfok_trust_metrics" => "Trust & Kennzahlen"
      "admin.page.form.choices.slider_types.none" => "Kein Slider"
      "admin.page.form.choices.slider_types.slider1" => "Legacy Slider 1"
      "admin.page.form.choices.slider_types.slider2" => "Legacy Slider 2"
      "admin.page.form.choices.slider_types.slider3" => "Legacy Slider 3"
      "admin.page.form.choices.statuses.draft" => "Entwurf (nicht öffentlich)"
      "admin.page.form.choices.statuses.published" => "Öffentlich (live sichtbar)"
      "admin.page.form.choices.templates.compact" => "Kompakt"
      "admin.page.form.choices.templates.default" => "Standard"
      "admin.page.form.choices.templates.landing" => "Landingpage"
      "admin.page.form.fields.answer" => "Antwort"
      "admin.page.form.fields.footer_placement" => "Footer-Platzierung"
      "admin.page.form.fields.is_footer_menu" => "Im Footer-Menü anzeigen"
      "admin.page.form.fields.page_template" => "Seiten-Template"
      "admin.page.form.fields.question" => "Frage"
      "admin.page.form.fields.show_in_menu" => "In Menü anzeigen"
      "admin.page.form.fields.slider_enabled" => "Slider anzeigen"
      "admin.page.form.fields.slider_type" => "Slider-Variante"
      "admin.page.form.fields.slug" => "Slug"
      "admin.page.form.fields.status" => "Status"
      "admin.page.form.fields.title" => "Titel"
      "admin.page.home.actions.delete_title" => "Löschen"
      "admin.page.home.actions.edit_title" => "Bearbeiten"
      "admin.page.home.actions.help" => "Hilfe"
      "admin.page.home.actions.help_title" => "Hilfe zu diesem Modul"
      "admin.page.home.actions.new" => "Seite anlegen"
      "admin.page.home.actions.publish_title" => "Veröffentlichen"
      "admin.page.home.actions.show_title" => "Anzeigen"
      "admin.page.home.actions.unpublish_title" => "Offline schalten"
      "admin.page.home.delete_modal.body" => "Möchten Sie die Seite %title% wirklich löschen?"
      "admin.page.home.delete_modal.cancel" => "Abbrechen"
      "admin.page.home.delete_modal.confirm" => "Löschen"
      "admin.page.home.delete_modal.title" => "Löschen bestätigen"
      "admin.page.home.headers.actions" => "Aktionen"
      "admin.page.home.headers.footer_placement" => "Footer"
      "admin.page.home.headers.id" => "ID"
      "admin.page.home.headers.published_at" => "Veröffentlicht am"
      "admin.page.home.headers.status" => "Status"
      "admin.page.home.headers.template" => "Template"
      "admin.page.home.headers.title" => "Titel"
      "admin.page.home.headers.url" => "URL"
      "admin.page.home.list_title" => "Seitenliste"
      "admin.page.home.meta_title" => "Seitenverwaltung"
      "admin.page.home.page_subtitle" => "Entwürfe, Veröffentlichungen und Builder-Templates zentral verwalten."
      "admin.page.home.page_title" => "Seitenverwaltung"
      "admin.page.home.status.draft" => "Entwurf"
      "admin.page.home.status.published" => "Veröffentlicht"
      "admin.page.home.values.empty" => "Keine Seiten gefunden."
      "admin.page.new.actions.back" => "Zurück"
      "admin.page.new.actions.save_draft" => "Entwurf anlegen"
      "admin.page.new.actions.save_public" => "Öffentliche Seite anlegen"
      "admin.page.new.meta_title" => "Neue Seite"
      "admin.page.new.page_title" => "Neue Seite anlegen"
      "admin.page.new.tabs.builder" => "Seite & Builder"
      "admin.page.new.tabs.seo" => "SEO"
      "admin.page.notifications.created" => "Seite wurde angelegt."
      "admin.page.notifications.deleted" => "Seite wurde gelöscht."
      "admin.page.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.page.notifications.no_published_version" => "Keine veröffentlichte Version vorhanden."
      "admin.page.notifications.published" => "Seite wurde veröffentlicht. Revision gespeichert."
      "admin.page.notifications.restored_published" => "Entwurf wurde auf die letzte veröffentlichte Version zurückgesetzt."
      "admin.page.notifications.unpublished" => "Seite wurde offline geschaltet. Entwurf bleibt erhalten."
      "admin.page.notifications.updated" => "Seite wurde gespeichert."
      "admin.page.revisions.actions.back" => "Zurück zum Editor"
      "admin.page.revisions.actions.delete_title" => "Revision löschen"
      "admin.page.revisions.actions.restore" => "Wiederherstellen"
      "admin.page.revisions.actions.restore_title" => "Als Entwurf wiederherstellen"
      "admin.page.revisions.delete_modal.body" => "Revision %title% vom %date% wirklich löschen?"
      "admin.page.revisions.delete_modal.cancel" => "Abbrechen"
      "admin.page.revisions.delete_modal.confirm" => "Löschen"
      "admin.page.revisions.delete_modal.title" => "Revision löschen"
      "admin.page.revisions.empty" => "Noch keine Revisionen vorhanden. Revisionen werden automatisch beim Anlegen, Speichern und Veröffentlichen erstellt."
      "admin.page.revisions.headers.actions" => "Aktionen"
      "admin.page.revisions.headers.created_at" => "Erstellt am"
      "admin.page.revisions.headers.created_by" => "Erstellt von"
      "admin.page.revisions.headers.id" => "ID"
      "admin.page.revisions.headers.label" => "Bezeichnung"
      "admin.page.revisions.headers.sections" => "Abschnitte"
      "admin.page.revisions.labels.created" => "Anlage %date%"
      "admin.page.revisions.labels.published" => "Veröffentlichung %date%"
      "admin.page.revisions.labels.updated" => "Bearbeitung %date%"
      "admin.page.revisions.list_title" => "Gespeicherte Revisionen (%count%)"
      "admin.page.revisions.meta_title" => "Revisionsverlauf – %title%"
      "admin.page.revisions.notifications.deleted" => "Revision wurde gelöscht."
      "admin.page.revisions.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.page.revisions.notifications.restored" => "Entwurf wurde auf Revision vom %date% zurückgesetzt."
      "admin.page.revisions.page_title" => "Revisionsverlauf"
      "admin.pricing.actions.apply" => "Anwenden"
      "admin.pricing.actions.back" => "Zurück"
      "admin.pricing.actions.cancel" => "Abbrechen"
      "admin.pricing.actions.close" => "Schließen"
      "admin.pricing.actions.delete" => "Löschen"
      "admin.pricing.actions.help" => "Hilfe"
      "admin.pricing.actions.new_guard" => "Neue Schutzregel"
      "admin.pricing.actions.new_rule" => "Neue Preisregel"
      "admin.pricing.actions.refresh" => "Aktualisieren"
      "admin.pricing.actions.save" => "Speichern"
      "admin.pricing.actions.to_module" => "Zum Modul"
      "admin.pricing.actions.toggle" => "Aktivieren oder deaktivieren"
      "admin.pricing.api.errors.guard_name_required" => "Ein Name für die Schutzregel ist erforderlich."
      "admin.pricing.api.errors.import_rows_array" => "Die Zeilen müssen als Array übergeben werden."
      "admin.pricing.api.errors.rule_name_required" => "Ein Regelname ist erforderlich."
      "admin.pricing.api.errors.tier_fields_required" => "Produkt, Mindestmenge und Preis sind erforderlich."
      "admin.pricing.common.no_value" => "-"
      "admin.pricing.guard_scopes.all" => "Alle Produkte"
      "admin.pricing.guard_scopes.category" => "Kategorie"
      "admin.pricing.guard_scopes.manufacturer" => "Hersteller"
      "admin.pricing.help_index.card_subtitle" => "Preisregeln, Guards, Staffelpreise"
      "admin.pricing.help_index.card_title" => "Dynamische Preisgestaltung"
      "admin.pricing.help_index.table_description" => "Preisregeln, Schutzregeln und Staffelpreise"
      "admin.pricing.help_index.table_label" => "Preisgestaltung"
      "admin.pricing.help.navigation_title" => "Navigation"
      "admin.pricing.help.navigation.api" => "API-Endpunkte"
      "admin.pricing.help.navigation.apply" => "Regeln anwenden"
      "admin.pricing.help.navigation.competitors" => "Wettbewerberpreise"
      "admin.pricing.help.navigation.guard_fields" => "Feldreferenz Guard"
      "admin.pricing.help.navigation.guards" => "Schutzregeln"
      "admin.pricing.help.navigation.overview" => "Überblick"
      "admin.pricing.help.navigation.rule_fields" => "Feldreferenz Preisregel"
      "admin.pricing.help.navigation.rules" => "Preisregeln"
      "admin.pricing.help.navigation.tiers" => "Staffelpreise"
      "admin.pricing.help.required_no" => "Nein"
      "admin.pricing.help.required_yes" => "Ja"
      "admin.pricing.help.sections.api.rows.apply" => "Regeln im Modus dry oder live anwenden"
      "admin.pricing.help.sections.api.rows.competitors_import" => "Mitbewerber-Snapshots importieren"
      "admin.pricing.help.sections.api.rows.competitors_snapshots" => "Letzte Mitbewerber-Snapshots laden"
      "admin.pricing.help.sections.api.rows.competitors_summary" => "Mitbewerber-Zusammenfassung laden"
      "admin.pricing.help.sections.api.rows.guard_create" => "Neue Schutzregel anlegen"
      "admin.pricing.help.sections.api.rows.guard_delete" => "Schutzregel löschen"
      "admin.pricing.help.sections.api.rows.guard_toggle" => "Schutzregel aktivieren oder deaktivieren"
      "admin.pricing.help.sections.api.rows.index" => "Übersicht mit Regeln, Guards und Zusatzbereichen"
      "admin.pricing.help.sections.api.rows.rule_create" => "Neue Preisregel anlegen"
      "admin.pricing.help.sections.api.rows.rule_delete" => "Preisregel löschen"
      "admin.pricing.help.sections.api.rows.rule_toggle" => "Preisregel aktivieren oder deaktivieren"
      "admin.pricing.help.sections.api.rows.tiers_delete" => "Staffelpreis löschen"
      "admin.pricing.help.sections.api.rows.tiers_list" => "Staffelpreise laden"
      "admin.pricing.help.sections.api.rows.tiers_upsert" => "Staffelpreis anlegen oder aktualisieren"
      "admin.pricing.help.sections.api.table.function" => "Funktion"
      "admin.pricing.help.sections.api.table.method" => "Methode"
      "admin.pricing.help.sections.api.table.url" => "URL"
      "admin.pricing.help.sections.api.title" => "API-Endpunkte"
      "admin.pricing.help.sections.apply.dry_bullets.affected_products" => "Zeigt, welche Produkte betroffen wären."
      "admin.pricing.help.sections.apply.dry_bullets.guard_effects" => "Zeigt, welche Schutzregeln eingreifen würden."
      "admin.pricing.help.sections.apply.dry_bullets.no_live_effect" => "Hat keine direkte Auswirkung auf den Live-Shop."
      "admin.pricing.help.sections.apply.dry_bullets.price_delta" => "Vergleicht alten und neuen Preis."
      "admin.pricing.help.sections.apply.dry_intro" => "Simuliert die Regelanwendung ohne Datenbankänderung."
      "admin.pricing.help.sections.apply.dry_title" => "Dry-Run"
      "admin.pricing.help.sections.apply.live_bullets.dry_first" => "Empfehlung: immer zuerst Dry-Run ausführen."
      "admin.pricing.help.sections.apply.live_bullets.immediate" => "Wirkt sofort auf den Live-Shop."
      "admin.pricing.help.sections.apply.live_bullets.not_automatic" => "Ist nicht automatisch rückgängig zu machen."
      "admin.pricing.help.sections.apply.live_bullets.special_price" => "Aktualisiert den in Pricing verwendeten <code>specialPrice</code>-Pfad über die Service-Logik."
      "admin.pricing.help.sections.apply.live_intro" => "Wendet die aktiven Regeln dauerhaft an."
      "admin.pricing.help.sections.apply.live_title" => "Live-Anwendung"
      "admin.pricing.help.sections.apply.parameters" => "<strong>Parameter:</strong> <code>mode</code> = <code>dry</code> oder <code>live</code>, <code>limit</code> = optionale Produktanzahl pro Durchlauf."
      "admin.pricing.help.sections.apply.title" => "Regeln anwenden"
      "admin.pricing.help.sections.competitors.bullets.data_points" => "Snapshots speichern Wettbewerber, Preis, SKU, Lagerstatus, URL und Erfassungszeitpunkt."
      "admin.pricing.help.sections.competitors.bullets.import" => "Der Import erfolgt über <code>/admin/api/pricing/competitors/import</code>."
      "admin.pricing.help.sections.competitors.bullets.snapshots" => "Die rechte Tabelle zeigt die letzten importierten Snapshots mit Produktbezug."
      "admin.pricing.help.sections.competitors.bullets.summary" => "Die Zusammenfassung gruppiert Daten der letzten 30 Tage pro Wettbewerber."
      "admin.pricing.help.sections.competitors.intro" => "Der Bereich beobachtet externe Preis-Snapshots und macht Trends für die Preissteuerung sichtbar."
      "admin.pricing.help.sections.competitors.title" => "Wettbewerberpreise"
      "admin.pricing.help.sections.guard_fields.rows.is_active" => "Aktiviert oder deaktiviert die Schutzregel."
      "admin.pricing.help.sections.guard_fields.rows.max_discount_percent" => "Maximal zulässiger Gesamtrabatt in Prozent."
      "admin.pricing.help.sections.guard_fields.rows.min_final_price" => "Unterschreitet der Endpreis diesen Wert, greift der Guard ein."
      "admin.pricing.help.sections.guard_fields.rows.name" => "Interner Name der Schutzregel."
      "admin.pricing.help.sections.guard_fields.rows.notes" => "Interne Notiz."
      "admin.pricing.help.sections.guard_fields.rows.priority" => "Höhere Zahl = frühere Prüfung."
      "admin.pricing.help.sections.guard_fields.rows.scope_type" => "all, category oder manufacturer."
      "admin.pricing.help.sections.guard_fields.rows.scope_value" => "ID oder Bezeichner des gewählten Geltungsbereichs."
      "admin.pricing.help.sections.guard_fields.rows.starts_ends_at" => "Optionaler zeitlicher Gültigkeitsbereich."
      "admin.pricing.help.sections.guard_fields.title" => "Feldreferenz: PricingGuardRule"
      "admin.pricing.help.sections.guards.description" => "Schutzregeln prüfen den <strong>berechneten Endpreis</strong> und begrenzen unerwünschte Ergebnisse nach der eigentlichen Preisregel-Anwendung."
      "admin.pricing.help.sections.guards.steps_title" => "Schritt-für-Schritt: Neue Schutzregel"
      "admin.pricing.help.sections.guards.steps.activate" => "Die Schutzregel aktivieren."
      "admin.pricing.help.sections.guards.steps.max_discount" => "<code>maxDiscountPercent</code> für den maximalen Rabatt setzen."
      "admin.pricing.help.sections.guards.steps.min_price" => "<code>minFinalPrice</code> für den absoluten Mindestpreis setzen."
      "admin.pricing.help.sections.guards.steps.open" => "Im rechten Formularbereich eine neue Schutzregel erfassen."
      "admin.pricing.help.sections.guards.steps.scope" => "Denselben Geltungsbereich wie die zugehörigen Preisregeln wählen."
      "admin.pricing.help.sections.guards.title" => "Schutzregeln (PricingGuardRule)"
      "admin.pricing.help.sections.guards.warning" => "<strong>Wichtig:</strong> Guards arbeiten auf dem Endpreis, nicht auf dem Basispreis."
      "admin.pricing.help.sections.overview.competitor_layer_text" => "Zeigt Wettbewerber-Snapshots und Zusammenfassungen für externe Preisbeobachtung."
      "admin.pricing.help.sections.overview.competitor_layer_title" => "Wettbewerber-Snapshots"
      "admin.pricing.help.sections.overview.guard_layer_text" => "Begrenzt unerwünschte Ergebnisse mit Mindestpreis- und Rabattgrenzen."
      "admin.pricing.help.sections.overview.guard_layer_title" => "Schutzregeln"
      "admin.pricing.help.sections.overview.intro" => "Das Modul <strong>Dynamische Preisgestaltung</strong> kombiniert Preisregeln, Schutzregeln, Staffelpreise und Wettbewerberdaten in einer zentralen Admin-Oberfläche."
      "admin.pricing.help.sections.overview.priority_note" => "<strong>Priorität:</strong> Regeln und Guards werden in absteigender Priorität verarbeitet. Höhere Zahl = frühere Ausführung. <strong>stopOnMatch</strong> beendet die weitere Regelkette nach dem ersten Treffer."
      "admin.pricing.help.sections.overview.rule_layer_text" => "Definiert, wie sich Preise verändern: prozentual erhöhen, prozentual senken oder fest überschreiben."
      "admin.pricing.help.sections.overview.rule_layer_title" => "Preisregeln"
      "admin.pricing.help.sections.overview.tier_layer_text" => "Verwaltet mengen- und gruppenabhängige Staffelpreise pro Produkt."
      "admin.pricing.help.sections.overview.tier_layer_title" => "Staffelpreise"
      "admin.pricing.help.sections.overview.title" => "Überblick: Das Preisgestaltungs-System"
      "admin.pricing.help.sections.rule_fields.rows.ends_at" => "Ende des Gültigkeitszeitraums."
      "admin.pricing.help.sections.rule_fields.rows.is_active" => "Regel aktiv oder inaktiv; Standard im Modul ist aktiv."
      "admin.pricing.help.sections.rule_fields.rows.max_base_price" => "Optionaler maximaler Basispreis für die Anwendung."
      "admin.pricing.help.sections.rule_fields.rows.min_base_price" => "Optionaler minimaler Basispreis für die Anwendung."
      "admin.pricing.help.sections.rule_fields.rows.name" => "Interner Name der Preisregel."
      "admin.pricing.help.sections.rule_fields.rows.notes" => "Interne Notiz zur Regel."
      "admin.pricing.help.sections.rule_fields.rows.priority" => "Höhere Zahl = frühere Verarbeitung."
      "admin.pricing.help.sections.rule_fields.rows.rule_type" => "Art der Preisanpassung."
      "admin.pricing.help.sections.rule_fields.rows.scope_type" => "all, category, manufacturer oder tag."
      "admin.pricing.help.sections.rule_fields.rows.scope_value" => "Wert oder ID des gewählten Geltungsbereichs."
      "admin.pricing.help.sections.rule_fields.rows.starts_at" => "Start des Gültigkeitszeitraums."
      "admin.pricing.help.sections.rule_fields.rows.stop_on_match" => "Beendet die weitere Regelkette nach einem Treffer."
      "admin.pricing.help.sections.rule_fields.rows.value" => "Wert der Preisänderung in Prozent oder als fixer Preis."
      "admin.pricing.help.sections.rule_fields.title" => "Feldreferenz: PricingRule"
      "admin.pricing.help.sections.rules.scope_rows.all.effect" => "Alle Produkte im Shop."
      "admin.pricing.help.sections.rules.scope_rows.all.value" => "leer"
      "admin.pricing.help.sections.rules.scope_rows.category.effect" => "Alle Produkte einer Kategorie."
      "admin.pricing.help.sections.rules.scope_rows.category.value" => "Kategorie-ID oder Bezeichner"
      "admin.pricing.help.sections.rules.scope_rows.manufacturer.effect" => "Alle Produkte eines Herstellers."
      "admin.pricing.help.sections.rules.scope_rows.manufacturer.value" => "Herstellername oder Kennung"
      "admin.pricing.help.sections.rules.scope_rows.tag.effect" => "Alle Produkte mit einem bestimmten Tag."
      "admin.pricing.help.sections.rules.scope_rows.tag.value" => "Tag-Name"
      "admin.pricing.help.sections.rules.scope_table.applies_to" => "Gilt für"
      "admin.pricing.help.sections.rules.scopes_title" => "Geltungsbereiche (scopeType)"
      "admin.pricing.help.sections.rules.steps_title" => "Schritt-für-Schritt: Neue Preisregel"
      "admin.pricing.help.sections.rules.steps.constraints" => "Optional Mindest-/Maximal-Basispreis, Gültigkeitszeitraum und stopOnMatch setzen."
      "admin.pricing.help.sections.rules.steps.open" => "Im linken Formularbereich eine neue Preisregel erfassen."
      "admin.pricing.help.sections.rules.steps.scope" => "Geltungsbereich über scopeType und optional scopeValue festlegen."
      "admin.pricing.help.sections.rules.steps.test" => "Vor dem Live-Lauf zuerst einen Dry-Run ausführen."
      "admin.pricing.help.sections.rules.steps.type" => "Einen Regeltyp auswählen."
      "admin.pricing.help.sections.rules.steps.value" => "Den numerischen Regelwert und die Priorität setzen."
      "admin.pricing.help.sections.rules.title" => "Preisregeln anlegen und verwalten"
      "admin.pricing.help.sections.rules.type_rows.fixed_override.effect" => "Setzt einen absoluten Zielpreis."
      "admin.pricing.help.sections.rules.type_rows.fixed_override.example" => "Produkt X kostet immer 9,99 €"
      "admin.pricing.help.sections.rules.type_rows.percent_decrease.effect" => "Senkt den Preis prozentual."
      "admin.pricing.help.sections.rules.type_rows.percent_decrease.example" => "-10 % auf saisonale Produkte"
      "admin.pricing.help.sections.rules.type_rows.percent_increase.effect" => "Erhöht den Preis prozentual."
      "admin.pricing.help.sections.rules.type_rows.percent_increase.example" => "+15 % auf ausgewählte Sortimente"
      "admin.pricing.help.sections.rules.type_table.effect" => "Wirkung"
      "admin.pricing.help.sections.rules.type_table.example" => "Beispiel"
      "admin.pricing.help.sections.rules.types_title" => "Verfügbare Regeltypen"
      "admin.pricing.help.sections.tiers.bullets.api" => "Das Formular arbeitet gegen <code>/admin/api/pricing/tiers</code>."
      "admin.pricing.help.sections.tiers.bullets.group" => "Optional kann eine aktive Kundengruppe als Einschränkung hinterlegt werden."
      "admin.pricing.help.sections.tiers.bullets.price" => "Der gespeicherte Preis ist ein fixer Staffelpreis pro Mindestmenge."
      "admin.pricing.help.sections.tiers.bullets.product" => "Staffelpreise werden immer einem konkreten Produkt zugeordnet."
      "admin.pricing.help.sections.tiers.bullets.quantity" => "Ab einer Mindestmenge greift der definierte Preis."
      "admin.pricing.help.sections.tiers.intro" => "Der Staffelpreis-Bereich ergänzt die dynamischen Regeln um feste Mengenpreise pro Produkt."
      "admin.pricing.help.sections.tiers.title" => "Staffelpreise"
      "admin.pricing.help.table.description" => "Beschreibung"
      "admin.pricing.help.table.field" => "Feld"
      "admin.pricing.help.table.required" => "Pflicht"
      "admin.pricing.help.table.type" => "Typ"
      "admin.pricing.help.title" => "Hilfe: Dynamische Preisgestaltung"
      "admin.pricing.help.types.boolean" => "Boolean"
      "admin.pricing.help.types.datetime" => "Datum/Zeit"
      "admin.pricing.help.types.enum" => "Enum"
      "admin.pricing.help.types.float" => "Dezimal"
      "admin.pricing.help.types.integer" => "Integer"
      "admin.pricing.help.types.text" => "Text"
      "admin.pricing.index.apply.dry_button" => "Dry-Run ausführen"
      "admin.pricing.index.apply.limit_label" => "Produktlimit (optional)"
      "admin.pricing.index.apply.limit_placeholder" => "z. B. 100"
      "admin.pricing.index.apply.live_button" => "Live-Apply ausführen"
      "admin.pricing.index.apply.live_confirm" => "Live-Apply wirklich starten? Der Pricing-Run aktualisiert gespeicherte Preiswerte."
      "admin.pricing.index.apply.live_confirm_label" => "Live-Apply starten"
      "admin.pricing.index.apply.title" => "Anwenden"
      "admin.pricing.index.competitors.in_stock_no" => "nein"
      "admin.pricing.index.competitors.in_stock_yes" => "ja"
      "admin.pricing.index.competitors.loading" => "Lade…"
      "admin.pricing.index.competitors.section_title" => "Wettbewerber-Preise"
      "admin.pricing.index.competitors.snapshots_columns.captured_at" => "Erfasst"
      "admin.pricing.index.competitors.snapshots_columns.competitor" => "Wettbewerber"
      "admin.pricing.index.competitors.snapshots_columns.in_stock" => "Lagernd"
      "admin.pricing.index.competitors.snapshots_columns.price" => "Preis"
      "admin.pricing.index.competitors.snapshots_columns.product" => "Produkt"
      "admin.pricing.index.competitors.snapshots_columns.sku" => "SKU"
      "admin.pricing.index.competitors.snapshots_empty" => "Keine Snapshots vorhanden."
      "admin.pricing.index.competitors.snapshots_load_failed" => "Snapshots konnten nicht geladen werden."
      "admin.pricing.index.competitors.snapshots_title" => "Letzte Snapshots"
      "admin.pricing.index.competitors.summary_columns.avg_price" => "Ø Preis"
      "admin.pricing.index.competitors.summary_columns.competitor" => "Wettbewerber"
      "admin.pricing.index.competitors.summary_columns.last_seen" => "Zuletzt"
      "admin.pricing.index.competitors.summary_columns.snapshots" => "Snapshots"
      "admin.pricing.index.competitors.summary_empty" => "Keine Daten vorhanden."
      "admin.pricing.index.competitors.summary_load_failed" => "Zusammenfassung konnte nicht geladen werden."
      "admin.pricing.index.competitors.summary_title" => "Zusammenfassung (letzte 30 Tage)"
      "admin.pricing.index.guard_form.active_label" => "Aktiv"
      "admin.pricing.index.guard_form.end_label" => "Ende"
      "admin.pricing.index.guard_form.max_discount_percent_placeholder" => "Max. Rabatt %"
      "admin.pricing.index.guard_form.min_final_price_placeholder" => "Min. finaler Preis"
      "admin.pricing.index.guard_form.name_placeholder" => "Name der Schutzregel"
      "admin.pricing.index.guard_form.notes_placeholder" => "Interne Notiz"
      "admin.pricing.index.guard_form.priority_placeholder" => "Priorität"
      "admin.pricing.index.guard_form.scope_value_placeholder" => "Scope-Wert"
      "admin.pricing.index.guard_form.start_label" => "Start"
      "admin.pricing.index.guard_form.submit" => "Schutzregel erstellen"
      "admin.pricing.index.guard_form.title" => "Neue Schutzregel"
      "admin.pricing.index.guards_table.columns.actions" => "Aktionen"
      "admin.pricing.index.guards_table.columns.max_discount_percent" => "Max. Rabatt %"
      "admin.pricing.index.guards_table.columns.min_final_price" => "Min. Preis"
      "admin.pricing.index.guards_table.columns.name" => "Name"
      "admin.pricing.index.guards_table.columns.priority" => "Prio"
      "admin.pricing.index.guards_table.columns.scope" => "Scope"
      "admin.pricing.index.guards_table.columns.status" => "Status"
      "admin.pricing.index.guards_table.delete_confirm" => "Schutzregel "%name%" wirklich löschen?"
      "admin.pricing.index.guards_table.empty" => "Keine Schutzregeln vorhanden."
      "admin.pricing.index.guards_table.title" => "Schutzregeln"
      "admin.pricing.index.history.columns.changed" => "Geändert"
      "admin.pricing.index.history.columns.checked" => "Geprüft"
      "admin.pricing.index.history.columns.created_at" => "Zeitpunkt"
      "admin.pricing.index.history.columns.guards" => "Guards"
      "admin.pricing.index.history.columns.id" => "ID"
      "admin.pricing.index.history.columns.mode" => "Modus"
      "admin.pricing.index.history.columns.rules" => "Regeln"
      "admin.pricing.index.history.empty" => "Noch keine Runs vorhanden."
      "admin.pricing.index.history.modes.dry" => "Dry-Run"
      "admin.pricing.index.history.modes.live" => "Live"
      "admin.pricing.index.history.title" => "Pricing-Run-Historie"
      "admin.pricing.index.page_title" => "Dynamische Preisgestaltung"
      "admin.pricing.index.rule_form.active_label" => "Aktiv"
      "admin.pricing.index.rule_form.end_label" => "Ende"
      "admin.pricing.index.rule_form.max_base_price_placeholder" => "Max. Basispreis"
      "admin.pricing.index.rule_form.min_base_price_placeholder" => "Min. Basispreis"
      "admin.pricing.index.rule_form.name_placeholder" => "Name der Preisregel"
      "admin.pricing.index.rule_form.notes_placeholder" => "Interne Notiz"
      "admin.pricing.index.rule_form.priority_placeholder" => "Priorität"
      "admin.pricing.index.rule_form.scope_value_placeholder" => "Scope-Wert (z. B. Kategorie-ID oder Hersteller)"
      "admin.pricing.index.rule_form.start_label" => "Start"
      "admin.pricing.index.rule_form.stop_on_match_label" => "Weitere Regeln nach Treffer stoppen"
      "admin.pricing.index.rule_form.submit" => "Preisregel erstellen"
      "admin.pricing.index.rule_form.title" => "Neue Preisregel"
      "admin.pricing.index.rule_form.value_placeholder" => "Wert"
      "admin.pricing.index.rules_table.columns.actions" => "Aktionen"
      "admin.pricing.index.rules_table.columns.name" => "Name"
      "admin.pricing.index.rules_table.columns.priority" => "Prio"
      "admin.pricing.index.rules_table.columns.scope" => "Scope"
      "admin.pricing.index.rules_table.columns.status" => "Status"
      "admin.pricing.index.rules_table.columns.type" => "Typ"
      "admin.pricing.index.rules_table.columns.value" => "Wert"
      "admin.pricing.index.rules_table.delete_confirm" => "Preisregel "%name%" wirklich löschen?"
      "admin.pricing.index.rules_table.empty" => "Keine Preisregeln vorhanden."
      "admin.pricing.index.rules_table.title" => "Preisregeln"
      "admin.pricing.index.stats.active_guards" => "Aktive Guards"
      "admin.pricing.index.stats.active_rules" => "Aktive Regeln"
      "admin.pricing.index.stats.total_guards" => "Guards gesamt"
      "admin.pricing.index.stats.total_rules" => "Regeln gesamt"
      "admin.pricing.index.subtitle" => "Regeln, Schutzlogik, Staffelpreise und Wettbewerberdaten in einer Oberfläche."
      "admin.pricing.index.tiers.active_label" => "Aktiv"
      "admin.pricing.index.tiers.all_groups" => "Alle Gruppen"
      "admin.pricing.index.tiers.columns.actions" => "Aktionen"
      "admin.pricing.index.tiers.columns.group" => "Gruppe"
      "admin.pricing.index.tiers.columns.min_quantity" => "Ab Menge"
      "admin.pricing.index.tiers.columns.price" => "Preis"
      "admin.pricing.index.tiers.columns.product" => "Produkt"
      "admin.pricing.index.tiers.columns.status" => "Status"
      "admin.pricing.index.tiers.delete_confirm" => "Staffelpreis wirklich löschen?"
      "admin.pricing.index.tiers.empty" => "Keine Staffelpreise vorhanden."
      "admin.pricing.index.tiers.form_title" => "Staffelpreis anlegen oder aktualisieren"
      "admin.pricing.index.tiers.group_label" => "Kundengruppe (optional)"
      "admin.pricing.index.tiers.load_failed" => "Staffelpreise konnten nicht geladen werden."
      "admin.pricing.index.tiers.loading" => "Lade…"
      "admin.pricing.index.tiers.min_quantity_label" => "Mindestmenge"
      "admin.pricing.index.tiers.min_quantity_placeholder" => "z. B. 10"
      "admin.pricing.index.tiers.notification_delete_failed" => "Staffelpreis konnte nicht gelöscht werden."
      "admin.pricing.index.tiers.notification_deleted" => "Staffelpreis wurde gelöscht."
      "admin.pricing.index.tiers.notification_invalid_input" => "Bitte Produkt, Mindestmenge und gültigen Preis eingeben."
      "admin.pricing.index.tiers.notification_save_failed" => "Fehler beim Speichern"
      "admin.pricing.index.tiers.notification_saved" => "Staffelpreis wurde gespeichert."
      "admin.pricing.index.tiers.price_label" => "Staffelpreis (Brutto €)"
      "admin.pricing.index.tiers.price_placeholder" => "z. B. 8.50"
      "admin.pricing.index.tiers.product_label" => "Produkt"
      "admin.pricing.index.tiers.product_placeholder" => "-- Produkt suchen --"
      "admin.pricing.index.tiers.section_title" => "Staffelpreise"
      "admin.pricing.index.tiers.table_title" => "Bestehende Staffelpreise"
      "admin.pricing.modal.title" => "Löschen bestätigen"
      "admin.pricing.nav.menu" => "Preisgestaltung"
      "admin.pricing.nav.monitoring" => "Monitoring-Dashboard"
      "admin.pricing.nav.submenu" => "Verwaltung"
      "admin.pricing.notifications.apply_completed" => "Pricing %mode%: %changed%/%checked% Produkte geändert (Regeln: %rules%, Guards: %guards%)."
      "admin.pricing.notifications.apply_mode_dry" => "Dry-Run"
      "admin.pricing.notifications.apply_mode_live" => "Live"
      "admin.pricing.notifications.guard_created" => "Schutzregel wurde erstellt."
      "admin.pricing.notifications.guard_deleted" => "Schutzregel wurde gelöscht."
      "admin.pricing.notifications.guard_name_required" => "Ein Name für die Schutzregel ist erforderlich."
      "admin.pricing.notifications.guard_toggled" => "Schutzregel wurde umgeschaltet."
      "admin.pricing.notifications.rule_created" => "Preisregel wurde erstellt."
      "admin.pricing.notifications.rule_deleted" => "Preisregel wurde gelöscht."
      "admin.pricing.notifications.rule_name_required" => "Ein Regelname ist erforderlich."
      "admin.pricing.notifications.rule_toggled" => "Preisregel wurde umgeschaltet."
      "admin.pricing.rule_scopes.all" => "Alle"
      "admin.pricing.rule_scopes.category" => "Kategorie"
      "admin.pricing.rule_scopes.manufacturer" => "Hersteller"
      "admin.pricing.rule_scopes.tag" => "Tag"
      "admin.pricing.rule_types.fixed_override" => "Fixpreis"
      "admin.pricing.rule_types.percent_decrease" => "Prozent senken"
      "admin.pricing.rule_types.percent_increase" => "Prozent erhöhen"
      "admin.pricing.status.active" => "aktiv"
      "admin.pricing.status.inactive" => "inaktiv"
      "admin.product_configurator.context.body" => "Nutze dieses Modul für CPU-, RAM-, GPU-, SSD- und Zubehör-Gruppen. Das alte /admin/configurable-product-Modul ist nur noch für einfache Varianten gedacht."
      "admin.product_configurator.context.cta_new" => "Neuen PC-/System-Konfigurator anlegen"
      "admin.product_configurator.context.cta_variant" => "Einfachen Varianten-Editor öffnen"
      "admin.product_configurator.context.title" => "Hauptpfad für individuelle Computer"
      "admin.product_configurator.form.actions.add_group" => "Komponenten-Gruppe hinzufügen"
      "admin.product_configurator.form.actions.add_product" => "Komponente hinzufügen"
      "admin.product_configurator.form.actions.back" => "Zurück"
      "admin.product_configurator.form.actions.cancel" => "Abbrechen"
      "admin.product_configurator.form.actions.help" => "Produkthilfe"
      "admin.product_configurator.form.actions.remove_group" => "Gruppe entfernen"
      "admin.product_configurator.form.actions.remove_product" => "Komponente entfernen"
      "admin.product_configurator.form.actions.save" => "Speichern"
      "admin.product_configurator.form.badges.group" => "Systemgruppe"
      "admin.product_configurator.form.cards.base_text" => "Lege das Hauptprodukt fest, aus dem der konfigurierbare Rechner oder Build entsteht."
      "admin.product_configurator.form.cards.base_title" => "Basis-System auswählen"
      "admin.product_configurator.form.cards.group_text" => "Jede Gruppe bildet einen echten Entscheidungsschritt im System-Build."
      "admin.product_configurator.form.cards.group_title" => "Komponenten-Gruppe aufbauen"
      "admin.product_configurator.form.empty.groups" => "Noch keine Komponenten-Gruppen angelegt. Starte z. B. mit CPU, RAM, GPU oder SSD."
      "admin.product_configurator.form.empty.products" => "Diese Gruppe enthält noch keine Komponenten. Füge passende Artikel hinzu."
      "admin.product_configurator.form.fields.base_product" => "Basis-System / Basis-Produkt"
      "admin.product_configurator.form.fields.group_name" => "Gruppenname"
      "admin.product_configurator.form.fields.groups" => "Komponenten-Gruppen"
      "admin.product_configurator.form.fields.price_reduction" => "Preisreduzierung"
      "admin.product_configurator.form.fields.product" => "Komponente"
      "admin.product_configurator.form.fields.product_collection" => "Komponenten"
      "admin.product_configurator.form.guide.items.base" => "Wähle zuerst das Basis-System aus. Es bildet die Hauptposition des konfigurierten Produkts."
      "admin.product_configurator.form.guide.items.group" => "Lege dann pro Auswahlstufe eine Komponenten-Gruppe an, z. B. CPU, RAM, GPU, SSD oder Zubehör."
      "admin.product_configurator.form.guide.items.products" => "Ordne jeder Gruppe nur Komponenten zu, die fachlich zusammengehören und später kompatibel geprüft werden können."
      "admin.product_configurator.form.guide.subtitle" => "Dies ist der Hauptpfad für individuelle Computer und andere System-Builds."
      "admin.product_configurator.form.guide.title" => "System-Build-Schnellhilfe"
      "admin.product_configurator.form.meta_title_edit" => "PC-/System-Konfigurator bearbeiten"
      "admin.product_configurator.form.meta_title_new" => "Neuer PC-/System-Konfigurator"
      "admin.product_configurator.form.notes.builder" => "Jede Gruppe bündelt austauschbare oder kombinierbare Komponenten, die zusammen eine konfigurierte Hauptposition bilden."
      "admin.product_configurator.form.notes.group_name" => "Kurz und klar benennen, z. B. CPU, RAM, GPU oder SSD."
      "admin.product_configurator.form.notes.product_search" => "Suche in großen Produktlisten nach Name oder SKU."
      "admin.product_configurator.form.notes.products" => "Ordne hier die Produkte zu, die der Kunde in dieser Gruppe wählen kann. Optional kannst du pro Komponente eine Preisreduzierung nur für diesen Konfigurator hinterlegen."
      "admin.product_configurator.form.page_subtitle" => "Baue individuelle Computer über Basisprodukt und Komponenten-Gruppen."
      "admin.product_configurator.form.page_title_edit" => "PC-/System-Konfigurator bearbeiten"
      "admin.product_configurator.form.page_title_new" => "Neuer PC-/System-Konfigurator"
      "admin.product_configurator.form.panel_title" => "Formular"
      "admin.product_configurator.form.placeholders.base_product" => "Basis-System auswählen"
      "admin.product_configurator.form.placeholders.group_name" => "z. B. CPU, RAM, GPU oder SSD"
      "admin.product_configurator.form.placeholders.price_reduction" => "0,00"
      "admin.product_configurator.form.placeholders.product" => "Komponente auswählen"
      "admin.product_configurator.form.sections.base" => "Basis-System"
      "admin.product_configurator.form.sections.builder" => "Komponenten-Builder"
      "admin.product_configurator.form.sections.groups" => "Komponenten-Gruppen"
      "admin.product_configurator.form.sections.guide" => "Build-Workflow"
      "admin.product_configurator.form.sections.products" => "Komponenten"
      "admin.product_configurator.index.actions.delete" => "Löschen"
      "admin.product_configurator.index.actions.edit" => "Bearbeiten"
      "admin.product_configurator.index.actions.help" => "Produkthilfe"
      "admin.product_configurator.index.actions.new" => "Neuer PC-/System-Konfigurator"
      "admin.product_configurator.index.delete_confirm" => "System-Konfigurator "%name%" wirklich löschen?"
      "admin.product_configurator.index.headers.actions" => "Aktionen"
      "admin.product_configurator.index.headers.base_product" => "Basis-Produkt"
      "admin.product_configurator.index.headers.groups" => "Gruppen"
      "admin.product_configurator.index.headers.id" => "ID"
      "admin.product_configurator.index.list_count" => "%count% Einträge"
      "admin.product_configurator.index.list_title" => "PC-/System-Konfiguratoren"
      "admin.product_configurator.index.meta_title" => "PC-/System-Konfigurator"
      "admin.product_configurator.index.page_subtitle" => "Hauptmodul für individuelle Computer, Workstations und Komponenten-Builds."
      "admin.product_configurator.index.page_title" => "Alle PC-/System-Konfiguratoren"
      "admin.product_configurator.index.values.empty" => "Keine PC-/System-Konfiguratoren vorhanden."
      "admin.product_configurator.index.values.no_groups" => "Keine Gruppen"
      "admin.product_configurator.notifications.created" => "System-Konfigurator wurde angelegt."
      "admin.product_configurator.notifications.deleted" => "System-Konfigurator wurde gelöscht."
      "admin.product_configurator.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.product_configurator.notifications.updated" => "System-Konfigurator wurde gespeichert."
      "admin.reviews.api.errors.bulk_missing_fields" => "IDs und Status sind erforderlich."
      "admin.reviews.api.errors.review_not_found" => "Bewertung wurde nicht gefunden."
      "admin.reviews.api.validation.invalid_status" => "Ungültiger Status."
      "admin.reviews.help_index.card_subtitle" => "Moderation, Featured und Produktfragen"
      "admin.reviews.help_index.card_title" => "Bewertungen & Q&A"
      "admin.reviews.help_index.table_description" => "Moderation, Featured und Produktfragen"
      "admin.reviews.help_index.table_label" => "Bewertungen & Q&A"
      "admin.reviews.help.actions.back" => "Zurück"
      "admin.reviews.help.actions.module" => "Zum Modul"
      "admin.reviews.help.api.rows.bulk" => "Moderiert mehrere Bewertungen in einem Request."
      "admin.reviews.help.api.rows.delete" => "Löscht eine Bewertung dauerhaft."
      "admin.reviews.help.api.rows.featured" => "Schaltet das featured-Flag einer Bewertung um."
      "admin.reviews.help.api.rows.index" => "Öffnet die Verwaltungsseite für Bewertungen."
      "admin.reviews.help.api.rows.list" => "Gibt die gefilterte Bewertungsliste inklusive Metadaten zurück."
      "admin.reviews.help.api.rows.moderate" => "Setzt den Status einer Bewertung und optional eine Admin-Notiz."
      "admin.reviews.help.api.rows.qa_answer" => "Speichert eine Antwort und setzt den Status auf answered."
      "admin.reviews.help.api.rows.qa_index" => "Öffnet die Admin-Liste für Produktfragen."
      "admin.reviews.help.api.rows.qa_reject" => "Lehnt eine Frage ab und setzt den Status auf rejected."
      "admin.reviews.help.api.rows.summary" => "Liefert die KPI-Zusammenfassung für pending, approved, rejected und spam."
      "admin.reviews.help.api.table.function" => "Funktion"
      "admin.reviews.help.api.table.method" => "Methode"
      "admin.reviews.help.api.table.url" => "URL"
      "admin.reviews.help.api.title" => "API-Endpunkte"
      "admin.reviews.help.bulk.api_note" => "API-Beispiel:"
      "admin.reviews.help.bulk.intro" => "Mehrere Bewertungen lassen sich direkt aus der Listenansicht gemeinsam verarbeiten."
      "admin.reviews.help.bulk.steps.one" => "Gewünschte Bewertungen per Checkbox markieren."
      "admin.reviews.help.bulk.steps.three" => "Die Aktion über den zentralen Admin-Bestätigungsdialog bestätigen."
      "admin.reviews.help.bulk.steps.two" => "Bulk-Aktion für Freigabe, Ablehnung oder Spam wählen."
      "admin.reviews.help.bulk.title" => "Bulk-Moderation"
      "admin.reviews.help.featured.intro" => "Featured-Reviews können im Frontend prominenter platziert oder für besondere Bereiche hervorgehoben werden."
      "admin.reviews.help.featured.points.one" => "Der Stern-Button toggelt das featured-Flag direkt in der Listenansicht."
      "admin.reviews.help.featured.points.three" => "Das Flag ergänzt die normale Moderation, ersetzt sie aber nicht."
      "admin.reviews.help.featured.points.two" => "Die API dafür ist POST /admin/reviews/api/{id}/featured."
      "admin.reviews.help.featured.title" => "Featured-Bewertungen"
      "admin.reviews.help.fields.question.rows.answer" => "Antworttext des Admins."
      "admin.reviews.help.fields.question.rows.answered_at" => "Zeitpunkt der Beantwortung."
      "admin.reviews.help.fields.question.rows.author_email" => "Optional angegebene E-Mail-Adresse."
      "admin.reviews.help.fields.question.rows.author_name" => "Name der fragenden Person."
      "admin.reviews.help.fields.question.rows.created_at" => "Zeitpunkt der Fragestellung."
      "admin.reviews.help.fields.question.rows.product" => "Referenz auf das betreffende Produkt."
      "admin.reviews.help.fields.question.rows.question" => "Vom Kunden eingereichte Frage."
      "admin.reviews.help.fields.question.rows.status" => "Status pending, answered oder rejected."
      "admin.reviews.help.fields.question.title" => "ProductQuestion"
      "admin.reviews.help.fields.review.rows.admin_note" => "Interne Moderationsnotiz, nicht für Kunden sichtbar."
      "admin.reviews.help.fields.review.rows.author_email" => "Optional hinterlegte E-Mail-Adresse."
      "admin.reviews.help.fields.review.rows.author_name" => "Anzeigename des Bewertenden."
      "admin.reviews.help.fields.review.rows.body" => "Freitextinhalt der Bewertung."
      "admin.reviews.help.fields.review.rows.created_at" => "Zeitpunkt der Erstellung."
      "admin.reviews.help.fields.review.rows.customer" => "Optional verknüpfter Shop-Kunde."
      "admin.reviews.help.fields.review.rows.featured" => "Markiert die Bewertung als hervorgehoben."
      "admin.reviews.help.fields.review.rows.moderated_at" => "Zeitpunkt der letzten Moderation."
      "admin.reviews.help.fields.review.rows.product" => "Referenz auf das bewertete Produkt."
      "admin.reviews.help.fields.review.rows.rating" => "Sternebewertung von 1 bis 5."
      "admin.reviews.help.fields.review.rows.status" => "Moderationsstatus pending, approved, rejected oder spam."
      "admin.reviews.help.fields.review.rows.title" => "Kurzer Titel der Bewertung."
      "admin.reviews.help.fields.review.rows.verified_purchase" => "Kennzeichnet Bewertungen aus einem verifizierten Kauf."
      "admin.reviews.help.fields.review.title" => "ProductReview"
      "admin.reviews.help.fields.table.description" => "Beschreibung"
      "admin.reviews.help.fields.table.field" => "Feld"
      "admin.reviews.help.fields.table.type" => "Typ"
      "admin.reviews.help.fields.title" => "Feldreferenz"
      "admin.reviews.help.fields.types.boolean" => "Boolean"
      "admin.reviews.help.fields.types.datetime" => "Datum / Zeit"
      "admin.reviews.help.fields.types.integer" => "Integer"
      "admin.reviews.help.fields.types.relation" => "Relation"
      "admin.reviews.help.fields.types.text" => "Text"
      "admin.reviews.help.navigation.api" => "API-Endpunkte"
      "admin.reviews.help.navigation.bulk" => "Bulk-Aktionen"
      "admin.reviews.help.navigation.featured" => "Featured-Bewertungen"
      "admin.reviews.help.navigation.fields" => "Feldreferenz"
      "admin.reviews.help.navigation.overview" => "Überblick"
      "admin.reviews.help.navigation.qa" => "Produktfragen (Q&A)"
      "admin.reviews.help.navigation.reviews" => "Bewertungen moderieren"
      "admin.reviews.help.navigation.title" => "Navigation"
      "admin.reviews.help.overview.cards.featured_text" => "Hebe ausgewählte Bewertungen hervor und nutze sie gezielt im Frontend."
      "admin.reviews.help.overview.cards.featured_title" => "Featured"
      "admin.reviews.help.overview.cards.moderation_text" => "Prüfe neue Bewertungen, setze Status und hinterlege interne Notizen."
      "admin.reviews.help.overview.cards.moderation_title" => "Moderation"
      "admin.reviews.help.overview.cards.qa_text" => "Beantworte offene Kundenfragen direkt unter /admin/reviews/qa."
      "admin.reviews.help.overview.cards.qa_title" => "Produktfragen"
      "admin.reviews.help.overview.intro" => "Das Modul bündelt die Moderation von Produktbewertungen und Produktfragen. Bewertungen bleiben bis zur Freigabe unsichtbar, und Fragen werden direkt über den Admin beantwortet oder abgelehnt."
      "admin.reviews.help.overview.permissions_title" => "Berechtigungen:"
      "admin.reviews.help.overview.permissions.qa_manage" => "Produktfragen anzeigen, beantworten und ablehnen"
      "admin.reviews.help.overview.permissions.review_delete" => "Bewertungen löschen"
      "admin.reviews.help.overview.permissions.review_edit" => "Featured-Status umschalten"
      "admin.reviews.help.overview.permissions.review_list" => "Bewertungen anzeigen"
      "admin.reviews.help.overview.permissions.review_manage" => "Bewertungen moderieren und Bulk-Aktionen ausführen"
      "admin.reviews.help.overview.title" => "Bewertungs- und Q&A-System: Überblick"
      "admin.reviews.help.page_title" => "Hilfe: Bewertungen & Produktfragen"
      "admin.reviews.help.qa.intro" => "Produktfragen werden über /admin/reviews/qa verwaltet. Jede Frage referenziert ein Produkt und kann beantwortet oder abgelehnt werden."
      "admin.reviews.help.qa.status_title" => "Q&A-Statusmodell"
      "admin.reviews.help.qa.status.answered" => "Frage wurde beantwortet; answeredAt enthält den Bearbeitungszeitpunkt."
      "admin.reviews.help.qa.status.pending" => "Frage ist neu eingegangen und wartet auf Bearbeitung."
      "admin.reviews.help.qa.status.rejected" => "Frage wurde abgelehnt und wird nicht weiter genutzt."
      "admin.reviews.help.qa.steps.one" => "Offene Frage prüfen und den Produktkontext kontrollieren."
      "admin.reviews.help.qa.steps.three" => "Ungeeignete oder irrelevante Fragen ablehnen."
      "admin.reviews.help.qa.steps.two" => "Antwort direkt im Formular hinterlegen und speichern."
      "admin.reviews.help.qa.title" => "Produktfragen & Antworten (Q&A)"
      "admin.reviews.help.reviews.filter_note" => "Die Liste filtert nach Status und durchsucht Produktname, Autor und Bewertungstext."
      "admin.reviews.help.reviews.intro" => "Neue Bewertungen starten im Status pending. Erst nach einer Freigabe erscheinen sie im Shop."
      "admin.reviews.help.reviews.status_title" => "Statusmodell"
      "admin.reviews.help.reviews.status.approved" => "Bewertung ist freigegeben und kann öffentlich angezeigt werden."
      "admin.reviews.help.reviews.status.pending" => "Bewertung wartet auf Prüfung und ist im Shop nicht sichtbar."
      "admin.reviews.help.reviews.status.rejected" => "Bewertung wurde verworfen, bleibt aber intern nachvollziehbar."
      "admin.reviews.help.reviews.status.spam" => "Bewertung wurde als Spam markiert und aus regulären Freigabeprozessen entfernt."
      "admin.reviews.help.reviews.steps.four" => "Bei Ablehnungen optional eine interne Admin-Notiz erfassen."
      "admin.reviews.help.reviews.steps.one" => "Statusfilter und Suche eingrenzen, um die relevanten Bewertungen schnell zu finden."
      "admin.reviews.help.reviews.steps.three" => "Bewertung freigeben, ablehnen oder als Spam markieren."
      "admin.reviews.help.reviews.steps.two" => "Inhalt, Sternebewertung, Autor und Kaufverifizierung prüfen."
      "admin.reviews.help.reviews.title" => "Bewertungen moderieren"
      "admin.reviews.index.actions.approve" => "Freigeben"
      "admin.reviews.index.actions.confirm" => "Bestätigen"
      "admin.reviews.index.actions.delete" => "Löschen"
      "admin.reviews.index.actions.reject" => "Ablehnen"
      "admin.reviews.index.actions.spam" => "Spam markieren"
      "admin.reviews.index.actions.toggle_featured" => "Featured umschalten"
      "admin.reviews.index.bulk.approve" => "Freigeben"
      "admin.reviews.index.bulk.clear" => "Auswahl aufheben"
      "admin.reviews.index.bulk.confirm" => "%count% Bewertung(en) auf "%status%" setzen?"
      "admin.reviews.index.bulk.reject" => "Ablehnen"
      "admin.reviews.index.bulk.selected" => "ausgewählt"
      "admin.reviews.index.bulk.spam" => "Als Spam markieren"
      "admin.reviews.index.filters.all_status" => "Alle Status"
      "admin.reviews.index.filters.help" => "Hilfe"
      "admin.reviews.index.filters.refresh" => "Aktualisieren"
      "admin.reviews.index.filters.search_placeholder" => "Nach Produkt, Autor oder Text suchen"
      "admin.reviews.index.help_title" => "Hilfe zu Bewertungen und Produktfragen"
      "admin.reviews.index.kpi.approved" => "Freigegeben"
      "admin.reviews.index.kpi.pending" => "Wartend"
      "admin.reviews.index.kpi.rejected" => "Abgelehnt"
      "admin.reviews.index.kpi.spam" => "Spam"
      "admin.reviews.index.list.badges.featured" => "Featured"
      "admin.reviews.index.list.badges.verified_purchase" => "Verifizierter Kauf"
      "admin.reviews.index.list.empty" => "Für diesen Filter wurden keine Bewertungen gefunden."
      "admin.reviews.index.list.headers.actions" => "Aktionen"
      "admin.reviews.index.list.headers.author" => "Autor"
      "admin.reviews.index.list.headers.content" => "Inhalt"
      "admin.reviews.index.list.headers.date" => "Datum"
      "admin.reviews.index.list.headers.product" => "Produkt"
      "admin.reviews.index.list.headers.rating" => "Bewertung"
      "admin.reviews.index.list.headers.status" => "Status"
      "admin.reviews.index.list.load_error" => "Beim Laden der Bewertungen ist ein Fehler aufgetreten."
      "admin.reviews.index.list.loading" => "Bewertungen werden geladen..."
      "admin.reviews.index.list.title" => "Bewertungsliste"
      "admin.reviews.index.list.values.no_email" => "Keine E-Mail"
      "admin.reviews.index.modals.note.cancel" => "Abbrechen"
      "admin.reviews.index.modals.note.placeholder" => "Interne Notiz (optional)"
      "admin.reviews.index.modals.note.save" => "Speichern & Moderieren"
      "admin.reviews.index.modals.note.title" => "Admin-Notiz speichern"
      "admin.reviews.index.notices.bulk_failed" => "Die Bulk-Aktion ist fehlgeschlagen."
      "admin.reviews.index.notices.bulk_success" => "%count% Bewertung(en) wurden aktualisiert."
      "admin.reviews.index.notices.delete_confirm" => "Soll diese Bewertung wirklich gelöscht werden?"
      "admin.reviews.index.notices.delete_failed" => "Die Bewertung konnte nicht gelöscht werden."
      "admin.reviews.index.notices.delete_success" => "Bewertung wurde gelöscht."
      "admin.reviews.index.notices.featured_disabled" => "Featured-Markierung wurde entfernt."
      "admin.reviews.index.notices.featured_enabled" => "Bewertung wurde als Featured markiert."
      "admin.reviews.index.notices.featured_failed" => "Featured-Status konnte nicht geändert werden."
      "admin.reviews.index.notices.moderation_failed" => "Die Moderationsaktion ist fehlgeschlagen."
      "admin.reviews.index.notices.moderation_saved" => "Bewertung wurde auf "%status%" gesetzt."
      "admin.reviews.index.page_subtitle" => "Moderation, Bulk-Aktionen und Featured-Reviews in einer Oberfläche."
      "admin.reviews.index.page_title" => "Bewertungsmoderation"
      "admin.reviews.meta.title" => "Bewertungen & Q&A"
      "admin.reviews.nav.menu" => "Bewertungen"
      "admin.reviews.nav.submenu_qa" => "Produkt Q&A"
      "admin.reviews.nav.submenu_reviews" => "Moderation"
      "admin.reviews.qa.index.actions.answer" => "Antwort speichern"
      "admin.reviews.qa.index.actions.reject" => "Ablehnen"
      "admin.reviews.qa.index.actions.reject_confirm" => "Diese Frage wirklich ablehnen?"
      "admin.reviews.qa.index.answer.existing_label" => "Vorhandene Antwort"
      "admin.reviews.qa.index.answer.placeholder" => "Antworttext"
      "admin.reviews.qa.index.page_subtitle" => "Kundenfragen beantworten und ungeeignete Inhalte direkt im Backend moderieren."
      "admin.reviews.qa.index.page_title" => "Produkt Q&A Moderation"
      "admin.reviews.qa.index.panel_title" => "Fragen"
      "admin.reviews.qa.index.table.empty" => "Keine Fragen vorhanden."
      "admin.reviews.qa.index.table.headers.actions" => "Aktionen"
      "admin.reviews.qa.index.table.headers.product" => "Produkt"
      "admin.reviews.qa.index.table.headers.question" => "Frage & Antwort"
      "admin.reviews.qa.index.table.headers.status" => "Status"
      "admin.reviews.qa.index.toolbar.help" => "Hilfe"
      "admin.reviews.qa.meta.title" => "Produkt Q&A Moderation"
      "admin.reviews.qa.notifications.answer_required" => "Die Antwort darf nicht leer sein."
      "admin.reviews.qa.notifications.answered" => "Die Frage wurde beantwortet."
      "admin.reviews.qa.notifications.rejected" => "Die Frage wurde abgelehnt."
      "admin.reviews.qa.status.answered" => "Beantwortet"
      "admin.reviews.qa.status.pending" => "Wartend"
      "admin.reviews.qa.status.rejected" => "Abgelehnt"
      "admin.reviews.status.approved" => "Freigegeben"
      "admin.reviews.status.pending" => "Wartend"
      "admin.reviews.status.rejected" => "Abgelehnt"
      "admin.reviews.status.spam" => "Spam"
      "admin.rma.api.errors.customer_not_found" => "Kunde nicht gefunden."
      "admin.rma.api.errors.not_found" => "Eintrag nicht gefunden."
      "admin.rma.api.errors.rma_not_found" => "RMA nicht gefunden."
      "admin.rma.api.validation.customer_not_found" => "Der gewählte Shop-Kunde existiert nicht."
      "admin.rma.api.validation.invalid_status" => "Ungültiger Status."
      "admin.rma.api.validation.product_not_found" => "Das gewählte Produkt existiert nicht."
      "admin.rma.api.validation.product_not_purchased" => "Das gewählte Produkt gehört nicht zu den Bestellungen des gewählten Shop-Kunden."
      "admin.rma.help_index.card_subtitle" => "Anlegen, Status, Analyse, Labels"
      "admin.rma.help_index.card_title" => "Retouren (RMA)"
      "admin.rma.help_index.table_description" => "Retourenverwaltung mit Status- und Analytikfunktionen"
      "admin.rma.help_index.table_label" => "RMA / Retouren"
      "admin.rma.help.actions.back" => "Zurück"
      "admin.rma.help.actions.module" => "Zum Modul"
      "admin.rma.help.analytics.api_label" => "API:"
      "admin.rma.help.analytics.intro" => "Der Analytics-Bereich zeigt Gründe, Statusverteilung und durchschnittliche Bearbeitungsdauer im gewählten Zeitraum."
      "admin.rma.help.analytics.items.avg_processing" => "Durchschnittliche Bearbeitungsdauer pro Grund, sofern entschieden"
      "admin.rma.help.analytics.items.reasons" => "Retourengründe mit Anzahl und Prozentanteil"
      "admin.rma.help.analytics.items.statuses" => "Statusverteilung im Zeitraum"
      "admin.rma.help.analytics.title" => "Analyse & KPIs"
      "admin.rma.help.api.rows.analytics" => "Analyse-Daten als JSON"
      "admin.rma.help.api.rows.create" => "Neue RMA anlegen"
      "admin.rma.help.api.rows.customer_products" => "Bestellte Produkte eines Shop-Kunden laden"
      "admin.rma.help.api.rows.delete" => "RMA löschen"
      "admin.rma.help.api.rows.index" => "RMA-Verwaltungsseite"
      "admin.rma.help.api.rows.label" => "Druckansicht des Retourenscheins"
      "admin.rma.help.api.rows.list" => "RMA-Liste als JSON mit Filtern"
      "admin.rma.help.api.rows.summary" => "KPI-Zusammenfassung als JSON"
      "admin.rma.help.api.rows.update_status" => "Status aktualisieren"
      "admin.rma.help.api.table.function" => "Funktion"
      "admin.rma.help.api.table.method" => "Methode"
      "admin.rma.help.api.table.url" => "URL"
      "admin.rma.help.api.title" => "API-Endpunkte"
      "admin.rma.help.create.note" => "Die Produktauswahl ist auf Artikel beschränkt, die der gewählte Shop-Kunde bereits gekauft hat."
      "admin.rma.help.create.reasons_title" => "Verfügbare Rückgabegründe:"
      "admin.rma.help.create.steps.five" => "Speichern; der Antrag wird angelegt und eine Bestätigungs-E-Mail wird, falls konfiguriert, versendet."
      "admin.rma.help.create.steps.four" => "Grund, Beschreibung und Menge festlegen."
      "admin.rma.help.create.steps.one" => "Im RMA-Modul auf "Neuer RMA" klicken."
      "admin.rma.help.create.steps.three" => "Ein Produkt aus den bisherigen Bestellungen dieses Kunden auswählen."
      "admin.rma.help.create.steps.two" => "Shop-Kunden auswählen; die E-Mail-Adresse wird automatisch übernommen."
      "admin.rma.help.create.title" => "RMA manuell anlegen (Admin)"
      "admin.rma.help.fields.rows.completed_at" => "Zeitpunkt des Abschlusses."
      "admin.rma.help.fields.rows.customer" => "Verknüpfter Kunde."
      "admin.rma.help.fields.rows.customer_email" => "Gespeicherte E-Mail-Adresse des Kunden."
      "admin.rma.help.fields.rows.customer_name" => "Gespeicherter Anzeigename des Kunden."
      "admin.rma.help.fields.rows.decided_at" => "Zeitpunkt der Genehmigung oder Ablehnung."
      "admin.rma.help.fields.rows.description" => "Freitext-Beschreibung des Kunden oder Admins."
      "admin.rma.help.fields.rows.internal_note" => "Interne Admin-Notiz."
      "admin.rma.help.fields.rows.order" => "Optional verknüpfte Bestellung."
      "admin.rma.help.fields.rows.product" => "Retourniertes Produkt."
      "admin.rma.help.fields.rows.quantity" => "Retourenmenge."
      "admin.rma.help.fields.rows.reason" => "Rückgabegrund."
      "admin.rma.help.fields.rows.refund_amount" => "Erstattungsbetrag in Euro."
      "admin.rma.help.fields.rows.requested_at" => "Zeitpunkt der Antragserstellung."
      "admin.rma.help.fields.rows.return_tracking_code" => "Trackingcode für die Rücksendung."
      "admin.rma.help.fields.rows.rma_number" => "Automatisch generierte RMA-Nummer."
      "admin.rma.help.fields.rows.status" => "Aktueller Status des Antrags."
      "admin.rma.help.fields.table.description" => "Beschreibung"
      "admin.rma.help.fields.table.field" => "Feld"
      "admin.rma.help.fields.table.type" => "Typ"
      "admin.rma.help.fields.title" => "Feldreferenz: RmaRequest"
      "admin.rma.help.fields.types.datetime" => "Datum/Zeit"
      "admin.rma.help.fields.types.decimal" => "Dezimal"
      "admin.rma.help.fields.types.enum" => "Enum"
      "admin.rma.help.fields.types.integer" => "Integer"
      "admin.rma.help.fields.types.relation" => "Relation"
      "admin.rma.help.fields.types.text" => "Text"
      "admin.rma.help.label.intro" => "Für vorhandene RMAs kann eine druckbare Retourenansicht geöffnet werden."
      "admin.rma.help.label.items.one" => "In der RMA-Liste den Druck-Button verwenden."
      "admin.rma.help.label.items.three" => "Enthält RMA-Nummer, Kunden- und Produktdaten, Grund, Tracking und Hinweise zur Rücksendung."
      "admin.rma.help.label.items.two" => "Direkt-URL: /admin/rma/label/{id}"
      "admin.rma.help.label.title" => "Retourenschein drucken"
      "admin.rma.help.navigation.analytics" => "Analyse & KPIs"
      "admin.rma.help.navigation.api" => "API-Endpunkte"
      "admin.rma.help.navigation.create" => "RMA manuell anlegen"
      "admin.rma.help.navigation.fields" => "Feldreferenz"
      "admin.rma.help.navigation.label" => "Retourenschein"
      "admin.rma.help.navigation.overview" => "Überblick"
      "admin.rma.help.navigation.title" => "Navigation"
      "admin.rma.help.navigation.workflow" => "Status-Workflow"
      "admin.rma.help.overview.intro" => "Das RMA-Modul bündelt Retourenanträge aus dem Shop und manuell angelegte Admin-RMAs in einer Oberfläche."
      "admin.rma.help.overview.permissions_label" => "Berechtigungen:"
      "admin.rma.help.overview.permissions.delete" => "Löschen"
      "admin.rma.help.overview.permissions.edit" => "Status ändern"
      "admin.rma.help.overview.permissions.list" => "Anzeigen"
      "admin.rma.help.overview.permissions.manage" => "Erstellen und verwalten"
      "admin.rma.help.overview.tiles_title" => "KPI-Kacheln auf der RMA-Seite:"
      "admin.rma.help.overview.tiles.approved" => "Genehmigte Retouren"
      "admin.rma.help.overview.tiles.completed" => "Abgeschlossene Retouren"
      "admin.rma.help.overview.tiles.in_review" => "Anträge in Prüfung"
      "admin.rma.help.overview.tiles.open" => "Offene Anträge"
      "admin.rma.help.overview.tiles.rejected" => "Abgelehnte Retouren"
      "admin.rma.help.overview.tiles.total" => "Gesamtzahl der RMAs"
      "admin.rma.help.overview.title" => "RMA-System: Überblick"
      "admin.rma.help.page_title" => "Hilfe: Retouren (RMA)"
      "admin.rma.help.workflow.intro" => "Statusänderungen werden über das Modal vorgenommen und können interne Notiz, Erstattungsbetrag und Rücksende-Tracking enthalten."
      "admin.rma.help.workflow.rows.approved.action" => "Retourenschein drucken und Tracking erfassen."
      "admin.rma.help.workflow.rows.approved.meaning" => "Retoure genehmigt."
      "admin.rma.help.workflow.rows.cancelled.action" => "Keine weitere Aktion erforderlich."
      "admin.rma.help.workflow.rows.cancelled.meaning" => "Antrag storniert."
      "admin.rma.help.workflow.rows.completed.action" => "Keine weitere Aktion erforderlich."
      "admin.rma.help.workflow.rows.completed.meaning" => "Vorgang abgeschlossen."
      "admin.rma.help.workflow.rows.in_review.action" => "Entscheidung treffen."
      "admin.rma.help.workflow.rows.in_review.meaning" => "Wird aktuell geprüft."
      "admin.rma.help.workflow.rows.open.action" => "Prüfung starten."
      "admin.rma.help.workflow.rows.open.meaning" => "Neu eingegangen."
      "admin.rma.help.workflow.rows.rejected.action" => "Begründung intern dokumentieren und Statusmail auslösen."
      "admin.rma.help.workflow.rows.rejected.meaning" => "Retoure abgelehnt."
      "admin.rma.help.workflow.table.meaning" => "Bedeutung"
      "admin.rma.help.workflow.table.next_action" => "Folgeaktion"
      "admin.rma.help.workflow.table.status" => "Status"
      "admin.rma.help.workflow.title" => "Status-Workflow"
      "admin.rma.index.analytics.avg_unavailable" => ""
      "admin.rma.index.analytics.days_180" => "Letzte 180 Tage"
      "admin.rma.index.analytics.days_30" => "Letzte 30 Tage"
      "admin.rma.index.analytics.days_365" => "Letztes Jahr"
      "admin.rma.index.analytics.days_90" => "Letzte 90 Tage"
      "admin.rma.index.analytics.days_suffix" => "Tage"
      "admin.rma.index.analytics.error" => "Analytics konnten nicht geladen werden."
      "admin.rma.index.analytics.range_label" => "Zeitraum"
      "admin.rma.index.analytics.reason_table.avg_processing" => "Ø Bearbeitungszeit"
      "admin.rma.index.analytics.reason_table.count" => "Anzahl"
      "admin.rma.index.analytics.reason_table.empty" => "Keine Daten"
      "admin.rma.index.analytics.reason_table.loading" => "Lade…"
      "admin.rma.index.analytics.reason_table.reason" => "Grund"
      "admin.rma.index.analytics.reason_table.share" => "Anteil"
      "admin.rma.index.analytics.status_table.count" => "Anzahl"
      "admin.rma.index.analytics.status_table.empty" => "Keine Daten"
      "admin.rma.index.analytics.status_table.loading" => "Lade…"
      "admin.rma.index.analytics.status_table.status" => "Status"
      "admin.rma.index.analytics.title" => "Retourengrund-Analytik"
      "admin.rma.index.buttons.delete" => "Löschen"
      "admin.rma.index.buttons.print_label" => "Retourenschein drucken"
      "admin.rma.index.buttons.status" => "Status"
      "admin.rma.index.filters.all_status" => "Alle Status"
      "admin.rma.index.filters.help" => "Hilfe"
      "admin.rma.index.filters.new" => "Neuer RMA"
      "admin.rma.index.filters.refresh" => "Aktualisieren"
      "admin.rma.index.filters.search_placeholder" => "RMA-Nr., Kunde, …"
      "admin.rma.index.help_title" => "Hilfe zu diesem Modul"
      "admin.rma.index.kpi.approved" => "Genehmigt"
      "admin.rma.index.kpi.completed" => "Abgeschlossen"
      "admin.rma.index.kpi.in_review" => "In Prüfung"
      "admin.rma.index.kpi.open" => "Offen"
      "admin.rma.index.kpi.rejected" => "Abgelehnt"
      "admin.rma.index.kpi.total" => "Gesamt"
      "admin.rma.index.list.empty" => "Keine Einträge in diesem Filter."
      "admin.rma.index.list.headers.actions" => "Aktionen"
      "admin.rma.index.list.headers.customer" => "Kunde"
      "admin.rma.index.list.headers.product" => "Produkt"
      "admin.rma.index.list.headers.reason" => "Grund"
      "admin.rma.index.list.headers.refund" => "Erstattung"
      "admin.rma.index.list.headers.requested_at" => "Eingegangen"
      "admin.rma.index.list.headers.rma_number" => "RMA-Nr."
      "admin.rma.index.list.headers.status" => "Status"
      "admin.rma.index.list.headers.tracking" => "Tracking"
      "admin.rma.index.list.load_error" => "Fehler beim Laden."
      "admin.rma.index.list.loading" => "Lade…"
      "admin.rma.index.list.title" => "RMA-Anträge"
      "admin.rma.index.modals.confirm.confirm" => "Bestätigen"
      "admin.rma.index.modals.confirm.delete_message" => "RMA-Antrag wirklich löschen?"
      "admin.rma.index.modals.create.cancel" => "Abbrechen"
      "admin.rma.index.modals.create.customer_label" => "Shop-Kunde"
      "admin.rma.index.modals.create.customer_placeholder" => "Bitte Shop-Kunden auswählen"
      "admin.rma.index.modals.create.description_label" => "Beschreibung"
      "admin.rma.index.modals.create.email_label" => "E-Mail"
      "admin.rma.index.modals.create.product_help" => "Nur Produkte aus den Bestellungen dieses Kunden."
      "admin.rma.index.modals.create.product_label" => "Produkt des Shop-Kunden"
      "admin.rma.index.modals.create.product_placeholder_empty" => "Keine bestellten Produkte gefunden"
      "admin.rma.index.modals.create.product_placeholder_error" => "Fehler beim Laden der Produkte"
      "admin.rma.index.modals.create.product_placeholder_initial" => "Bitte zuerst Shop-Kunden auswählen"
      "admin.rma.index.modals.create.product_placeholder_loading" => "Produkte werden geladen..."
      "admin.rma.index.modals.create.product_placeholder_select" => "Produkt auswählen"
      "admin.rma.index.modals.create.quantity_label" => "Menge"
      "admin.rma.index.modals.create.reason_label" => "Grund"
      "admin.rma.index.modals.create.save" => "Erstellen"
      "admin.rma.index.modals.create.title" => "Neuen RMA-Antrag erstellen"
      "admin.rma.index.modals.status.cancel" => "Abbrechen"
      "admin.rma.index.modals.status.note_label" => "Interne Notiz"
      "admin.rma.index.modals.status.note_placeholder" => "Interne Notiz (optional)"
      "admin.rma.index.modals.status.refund_label" => "Erstattungsbetrag (€)"
      "admin.rma.index.modals.status.refund_placeholder" => "Optional"
      "admin.rma.index.modals.status.save" => "Speichern"
      "admin.rma.index.modals.status.status_label" => "Neuer Status"
      "admin.rma.index.modals.status.title" => "RMA-Status aktualisieren"
      "admin.rma.index.modals.status.tracking_label" => "Retourenverfolgungscode"
      "admin.rma.index.modals.status.tracking_placeholder" => "Optional"
      "admin.rma.index.notices.create_failed" => "Erstellen fehlgeschlagen"
      "admin.rma.index.notices.created" => "RMA-Antrag wurde angelegt."
      "admin.rma.index.notices.delete_failed" => "Löschen fehlgeschlagen."
      "admin.rma.index.notices.deleted" => "RMA-Antrag wurde gelöscht."
      "admin.rma.index.notices.products_load_failed" => "Produktliste des Kunden konnte nicht geladen werden."
      "admin.rma.index.notices.select_customer" => "Bitte zuerst einen Shop-Kunden auswählen."
      "admin.rma.index.notices.select_product" => "Bitte ein Produkt des gewählten Shop-Kunden auswählen."
      "admin.rma.index.notices.status_failed" => "Status-Update fehlgeschlagen."
      "admin.rma.index.notices.status_saved" => "RMA-Status wurde gespeichert."
      "admin.rma.index.notices.unexpected_response" => "Unerwartete Antwort"
      "admin.rma.index.page_subtitle" => "Retourenanträge, Statuswechsel und Auswertungen an einem Ort."
      "admin.rma.index.page_title" => "RMA / Retourenportal"
      "admin.rma.index.values.not_available" => ""
      "admin.rma.label.back_link" => "Zurück zur Übersicht"
      "admin.rma.label.customer_title" => "Kundeninformationen"
      "admin.rma.label.description_title" => "Kundenbeschreibung"
      "admin.rma.label.fields.approved_amount" => "Genehmigter Betrag"
      "admin.rma.label.fields.email" => "E-Mail"
      "admin.rma.label.fields.item" => "Artikel"
      "admin.rma.label.fields.name" => "Name"
      "admin.rma.label.fields.order_number" => "Bestellnummer"
      "admin.rma.label.fields.quantity" => "Menge"
      "admin.rma.label.fields.reason" => "Retourengrund"
      "admin.rma.label.fields.sku" => "SKU / Art.-Nr."
      "admin.rma.label.footer.document_created" => "Dokument erstellt"
      "admin.rma.label.footer.pending" => "ausstehend"
      "admin.rma.label.footer.processed_at" => "Bearbeitet am"
      "admin.rma.label.footer.requested_at" => "Retourendatum"
      "admin.rma.label.instructions.steps.four" => "Bewahren Sie den Sendungsnachweis bis zur Bearbeitung Ihrer Retoure auf."
      "admin.rma.label.instructions.steps.one" => "Verpacken Sie den Artikel sicher im Originalkarton oder gleichwertigem Material."
      "admin.rma.label.instructions.steps.three" => "Geben Sie das Paket bei Ihrem Paketdienstleister ab."
      "admin.rma.label.instructions.steps.two" => "Legen Sie diesen Retourenschein dem Paket bei."
      "admin.rma.label.instructions.title" => "Hinweise zur Rücksendung:"
      "admin.rma.label.item_title" => "Artikelinformationen"
      "admin.rma.label.number_label" => "RMA-Nummer"
      "admin.rma.label.print_button" => "Drucken / Als PDF speichern"
      "admin.rma.label.quantity_value" => "%count% Stück"
      "admin.rma.label.refund_title" => "Erstattung"
      "admin.rma.label.sheet_subtitle" => "Bitte diesem Paket beilegen"
      "admin.rma.label.sheet_title" => "RETOURENSCHEIN"
      "admin.rma.label.title" => "Retourenschein %rmaNumber%"
      "admin.rma.label.tracking.barcode_placeholder" => "[ Barcode / QR wird durch Paketdienstleister bereitgestellt ]"
      "admin.rma.label.tracking.missing" => "Noch kein Tracking-Code zugewiesen. Bitte als Retoure ohne Voretikett einliefern."
      "admin.rma.label.tracking.title" => "Rücksende-Tracking"
      "admin.rma.meta.title" => "RMA / Retouren"
      "admin.rma.nav.menu" => "RMA / Retouren"
      "admin.rma.nav.submenu" => "RMA-Anträge"
      "admin.rma.reasons.change_of_mind" => "Meinungsänderung"
      "admin.rma.reasons.defective" => "Defekt"
      "admin.rma.reasons.not_as_described" => "Nicht wie beschrieben"
      "admin.rma.reasons.other" => "Sonstiges"
      "admin.rma.reasons.wrong_item" => "Falscher Artikel"
      "admin.rma.status.approved" => "Genehmigt"
      "admin.rma.status.cancelled" => "Storniert"
      "admin.rma.status.completed" => "Abgeschlossen"
      "admin.rma.status.in_review" => "In Prüfung"
      "admin.rma.status.open" => "Offen"
      "admin.rma.status.rejected" => "Abgelehnt"
      "admin.roles.actions.back" => "Zurück"
      "admin.roles.actions.back_to_profile_list" => "Zurück zur Profilliste"
      "admin.roles.actions.cancel" => "Abbrechen"
      "admin.roles.actions.delete" => "Löschen"
      "admin.roles.actions.edit" => "Bearbeiten"
      "admin.roles.actions.execute" => "Ausführen"
      "admin.roles.actions.help" => "Hilfe"
      "admin.roles.actions.new_profile" => "Neues Profil"
      "admin.roles.actions.save_profile" => "Profil speichern"
      "admin.roles.form.action_labels.access" => "Modulzugriff"
      "admin.roles.form.action_labels.activate" => "Aktivieren"
      "admin.roles.form.action_labels.add" => "Neu anlegen"
      "admin.roles.form.action_labels.api" => "API-Zugriff"
      "admin.roles.form.action_labels.audit" => "Audit sehen"
      "admin.roles.form.action_labels.base" => "Bereich öffnen"
      "admin.roles.form.action_labels.delete" => "Löschen"
      "admin.roles.form.action_labels.edit" => "Bearbeiten"
      "admin.roles.form.action_labels.import" => "Importieren"
      "admin.roles.form.action_labels.list" => "Übersicht sehen"
      "admin.roles.form.action_labels.manage" => "Alles verwalten"
      "admin.roles.form.action_labels.map" => "Mapping bearbeiten"
      "admin.roles.form.action_labels.preview" => "Preview öffnen"
      "admin.roles.form.action_labels.publish" => "Veröffentlichen"
      "admin.roles.form.action_labels.revisions" => "Versionen sehen"
      "admin.roles.form.action_labels.rollback" => "Rollback ausführen"
      "admin.roles.form.action_labels.run" => "Ausführen"
      "admin.roles.form.action_labels.view" => "Details sehen"
      "admin.roles.form.basics_subtitle" => "Benenne das Profil so, dass sein Einsatzzweck später in der Benutzerverwaltung sofort erkennbar ist."
      "admin.roles.form.basics_title" => "Profil-Basisdaten"
      "admin.roles.form.clear_all" => "Alle abwählen"
      "admin.roles.form.clear_group" => "Alle in dieser Gruppe abwählen"
      "admin.roles.form.collapse_all" => "Alle schließen"
      "admin.roles.form.create_title" => "Rollenprofil anlegen"
      "admin.roles.form.critical_permission" => "Weitreichende Berechtigung"
      "admin.roles.form.edit_title" => "Rollenprofil bearbeiten"
      "admin.roles.form.expand_all" => "Alle öffnen"
      "admin.roles.form.filter_placeholder" => "Modul oder Aktion filtern…"
      "admin.roles.form.modules.account" => "Eigenes Konto"
      "admin.roles.form.modules.alerts" => "Alerts"
      "admin.roles.form.modules.analytics" => "Analytics & Dashboard"
      "admin.roles.form.modules.booking_hospitality" => "Buchungen & Unterkunft"
      "admin.roles.form.modules.catalog" => "Produkte & Katalog"
      "admin.roles.form.modules.editorial" => "Redaktion"
      "admin.roles.form.modules.experiments" => "Experimente"
      "admin.roles.form.modules.import_data" => "Import & Datenpflege"
      "admin.roles.form.modules.layout" => "Navigation & Layout"
      "admin.roles.form.modules.orders_customers" => "Bestellungen & Kunden"
      "admin.roles.form.modules.other" => "Nicht zugeordnete Gruppe"
      "admin.roles.form.modules.pages" => "Seiten"
      "admin.roles.form.modules.pricing_actions" => "Preise & Aktionen"
      "admin.roles.form.modules.reviews_feeds" => "Bewertungen & Feeds"
      "admin.roles.form.modules.seo" => "SEO & FAQ"
      "admin.roles.form.modules.settings" => "Einstellungen"
      "admin.roles.form.modules.shipping_returns" => "Versand & Retouren"
      "admin.roles.form.modules.themes" => "Themes"
      "admin.roles.form.modules.users_rights" => "Benutzer & Rechte"
      "admin.roles.form.name_help" => "Der Profilname ist intern sichtbar und sollte die Aufgabe des Profils klar beschreiben."
      "admin.roles.form.name_placeholder" => "z.B. Content-Manager, Shop-Admin, Support"
      "admin.roles.form.no_filter_results" => "Keine Berechtigungen für den aktuellen Filter gefunden."
      "admin.roles.form.no_roles_available" => "Keine Rollen verfügbar."
      "admin.roles.form.permissions_subtitle" => "Die Bereiche folgen der neuen Admin-Sidebar, damit Auswahl und spätere Navigation zusammenpassen."
      "admin.roles.form.permissions_title" => "Berechtigungen"
      "admin.roles.form.presets_subtitle" => "Starte mit einer typischen Rechteauswahl und passe sie anschließend manuell an."
      "admin.roles.form.presets_title" => "Vorlage wählen"
      "admin.roles.form.presets.content.text" => "Seiten, Navigation, Layout-Bausteine und Redaktion pflegen."
      "admin.roles.form.presets.content.title" => "Content-Manager"
      "admin.roles.form.presets.marketing.text" => "Analytics, SEO, Feeds, Aktionen und Experimente steuern."
      "admin.roles.form.presets.marketing.title" => "Marketing & SEO"
      "admin.roles.form.presets.readonly.text" => "Leserechte und Hilfezugriff als sichere Ausgangsbasis."
      "admin.roles.form.presets.readonly.title" => "Nur Lesen"
      "admin.roles.form.presets.shop.text" => "Katalog, Bestellungen, Kunden, Preise und Versand betreuen."
      "admin.roles.form.presets.shop.title" => "Shop-Verwaltung"
      "admin.roles.form.presets.support.text" => "Kunden, Bestellungen, Tickets und Retouren bearbeiten."
      "admin.roles.form.presets.support.title" => "Support"
      "admin.roles.form.presets.system.text" => "Benutzer, Profile, Einstellungen und Übersetzungen verwalten."
      "admin.roles.form.presets.system.title" => "System-Admin"
      "admin.roles.form.profile_name" => "Profilname"
      "admin.roles.form.role_labels.ab_test" => "A/B-Tests"
      "admin.roles.form.role_labels.account_password" => "Eigenes Passwort"
      "admin.roles.form.role_labels.alert" => "Alerts"
      "admin.roles.form.role_labels.analytics" => "Analytics"
      "admin.roles.form.role_labels.apartment" => "Unterkünfte"
      "admin.roles.form.role_labels.b2b" => "B2B"
      "admin.roles.form.role_labels.blog" => "Blog"
      "admin.roles.form.role_labels.booking" => "Buchungen"
      "admin.roles.form.role_labels.calendar" => "Kalender"
      "admin.roles.form.role_labels.cart" => "Warenkorb"
      "admin.roles.form.role_labels.cart_cross_sell" => "Cross-Sells"
      "admin.roles.form.role_labels.cart_intelligence" => "Warenkorb-Analyse"
      "admin.roles.form.role_labels.category" => "Kategorien"
      "admin.roles.form.role_labels.configurable_product" => "Varianten"
      "admin.roles.form.role_labels.contact" => "Kontaktanfragen"
      "admin.roles.form.role_labels.content_block" => "Content-Blöcke"
      "admin.roles.form.role_labels.coupon" => "Gutscheine"
      "admin.roles.form.role_labels.customer" => "Kunden"
      "admin.roles.form.role_labels.dashboard" => "Dashboard"
      "admin.roles.form.role_labels.dashboard_api" => "Dashboard-API"
      "admin.roles.form.role_labels.dashboard_widget" => "Dashboard-Widgets"
      "admin.roles.form.role_labels.data_protection" => "Datenschutz"
      "admin.roles.form.role_labels.faq" => "FAQ"
      "admin.roles.form.role_labels.feed" => "Feeds"
      "admin.roles.form.role_labels.feed_api" => "Feed-API"
      "admin.roles.form.role_labels.footer_menu" => "Footer-Navigation"
      "admin.roles.form.role_labels.help" => "Admin-Hilfe"
      "admin.roles.form.role_labels.hotel_access" => "Hotel-Menüs"
      "admin.roles.form.role_labels.hotel_content" => "Unterkunftsinhalte"
      "admin.roles.form.role_labels.import" => "Produktimport"
      "admin.roles.form.role_labels.import_control" => "Import-Steuerung"
      "admin.roles.form.role_labels.imprint" => "Impressum"
      "admin.roles.form.role_labels.mail_template" => "Mail-Templates"
      "admin.roles.form.role_labels.menu" => "Hauptnavigation"
      "admin.roles.form.role_labels.newsletter" => "Newsletter"
      "admin.roles.form.role_labels.order" => "Bestellungen"
      "admin.roles.form.role_labels.page" => "Seiten"
      "admin.roles.form.role_labels.pricing" => "Preisregeln"
      "admin.roles.form.role_labels.pricing_api" => "Preis-API"
      "admin.roles.form.role_labels.product" => "Produktverwaltung"
      "admin.roles.form.role_labels.product_configurator" => "Produkt-Konfigurator"
      "admin.roles.form.role_labels.product_qa" => "Produktfragen"
      "admin.roles.form.role_labels.profile" => "Rollenprofile"
      "admin.roles.form.role_labels.return_request" => "Rücksendeanfragen"
      "admin.roles.form.role_labels.review" => "Bewertungen"
      "admin.roles.form.role_labels.rma" => "Retouren"
      "admin.roles.form.role_labels.section_templates" => "Abschnittsvorlagen"
      "admin.roles.form.role_labels.seo_faq" => "SEO-FAQ"
      "admin.roles.form.role_labels.shipment" => "Sendungen"
      "admin.roles.form.role_labels.shipping_method" => "Versandarten"
      "admin.roles.form.role_labels.shipping_zone" => "Versandzonen"
      "admin.roles.form.role_labels.shop" => "Produkte"
      "admin.roles.form.role_labels.shop_menu" => "Shop-Navigation"
      "admin.roles.form.role_labels.shop_user" => "Shop-Benutzer"
      "admin.roles.form.role_labels.slider" => "Slider"
      "admin.roles.form.role_labels.superuser" => "Superuser"
      "admin.roles.form.role_labels.support_ticket" => "Support-Tickets"
      "admin.roles.form.role_labels.system_config" => "Systemkonfiguration"
      "admin.roles.form.role_labels.system_panel" => "System-Panel"
      "admin.roles.form.role_labels.system_setting" => "Einstellungen"
      "admin.roles.form.role_labels.theme" => "Theme-Modul"
      "admin.roles.form.role_labels.translation" => "Übersetzungen"
      "admin.roles.form.role_labels.user" => "Admin-Benutzer"
      "admin.roles.form.role_labels.widget" => "Widgets"
      "admin.roles.form.sections.commerce" => "Commerce"
      "admin.roles.form.sections.content" => "Content"
      "admin.roles.form.sections.marketing_seo" => "Marketing & SEO"
      "admin.roles.form.sections.other" => "Weitere Rollen"
      "admin.roles.form.sections.system" => "System"
      "admin.roles.form.select_all" => "Alle auswählen"
      "admin.roles.form.select_group" => "Alle in dieser Gruppe auswählen"
      "admin.roles.form.select_one_permission" => "Bitte wähle mindestens eine Berechtigung aus."
      "admin.roles.form.select_visible" => "Sichtbare auswählen"
      "admin.roles.form.selected_permissions" => "Ausgewählte Berechtigungen"
      "admin.roles.form.show_selected" => "Nur ausgewählte"
      "admin.roles.form.subtitle" => "Stelle ein Berechtigungspaket für Backend-Benutzer zusammen und prüfe die Auswahl vor dem Speichern."
      "admin.roles.form.summary_areas" => "Betroffene Bereiche"
      "admin.roles.form.summary_critical" => "Kritische Rechte"
      "admin.roles.form.summary_hint" => "Kritische Rechte umfassen Löschen, Verwalten, Ausführen, Veröffentlichen, Aktivieren, Rollback sowie Benutzer-, Profil- und Systemzugriffe."
      "admin.roles.form.summary_name_placeholder" => "Noch kein Profilname"
      "admin.roles.form.summary_no_area" => "Noch keine Auswahl"
      "admin.roles.form.summary_selected" => "Ausgewählte Rechte"
      "admin.roles.form.summary_title" => "Auswahl prüfen"
      "admin.roles.help.admin_users_title" => "Admin-Benutzer-Rollen"
      "admin.roles.help.analytics_title" => "Analytics & Tools"
      "admin.roles.help.assignment_steps.step1" => "Admin-Benutzer → Benutzer auswählen → Bearbeiten"
      "admin.roles.help.assignment_steps.step2" => "Im Tab Rollen die gewünschten Rollen anklicken"
      "admin.roles.help.assignment_steps.step3" => "Speichern – Änderungen gelten sofort"
      "admin.roles.help.assignment_title" => "Rollen vergeben"
      "admin.roles.help.cards.list" => "Nur Anzeigen"
      "admin.roles.help.cards.manage" => "Vollzugriff im Modul"
      "admin.roles.help.cards.superuser" => "Vollzugriff auf alles"
      "admin.roles.help.columns.admin_page" => "Admin-Seite"
      "admin.roles.help.columns.description" => "Beschreibung"
      "admin.roles.help.columns.module" => "Modul"
      "admin.roles.help.columns.role" => "Rolle"
      "admin.roles.help.columns.roles" => "Rollen"
      "admin.roles.help.concept_intro" => "Das Berechtigungssystem basiert auf RBAC (Role-Based Access Control). Jede Aktion im Backend ist durch eine spezifische Rolle abgesichert."
      "admin.roles.help.concept_title" => "Rollen-Konzept"
      "admin.roles.help.content_title" => "Content-Module"
      "admin.roles.help.navigation_title" => "Navigation"
      "admin.roles.help.navigation.admin_users" => "Benutzer-Rollen"
      "admin.roles.help.navigation.analytics" => "Analytics & Tools"
      "admin.roles.help.navigation.assignment" => "Rollen vergeben"
      "admin.roles.help.navigation.concept" => "Konzept"
      "admin.roles.help.navigation.content" => "Content-Module"
      "admin.roles.help.navigation.profile_builder" => "Rollenprofil-Assistent"
      "admin.roles.help.navigation.shop" => "Shop-Module"
      "admin.roles.help.navigation.superuser" => "Superuser"
      "admin.roles.help.navigation.system" => "System-Rollen"
      "admin.roles.help.open_profiles" => "Profile öffnen"
      "admin.roles.help.profile_builder_intro" => "Das Profilformular ist nach denselben Arbeitsbereichen wie die Admin-Sidebar aufgebaut. Vorlagen setzen typische Startauswahlen, die anschließend fein angepasst werden können."
      "admin.roles.help.profile_builder_points.critical" => "Kritische Rechte sollten nur vergeben werden, wenn Löschen, Verwalten, Ausführen, Aktivieren, Rollback oder Systemzugriff wirklich benötigt wird."
      "admin.roles.help.profile_builder_points.presets" => "Vorlagen sind nur Startpunkte und überschreiben die Auswahl, solange nicht gespeichert wurde."
      "admin.roles.help.profile_builder_points.summary" => "Die Zusammenfassung zeigt Profilname, Anzahl der Rechte, kritische Rechte und betroffene Bereiche."
      "admin.roles.help.profile_builder_title" => "Rollenprofile anlegen"
      "admin.roles.help.relogin_warning" => "Benutzer müssen sich neu einloggen, damit neue Rollen wirksam werden. Die Session hält die alten Rollen bis zum Logout."
      "admin.roles.help.rows.ab_tests" => "A/B-Tests"
      "admin.roles.help.rows.admin_profiles" => "Admin-Benutzer-Profile verwalten"
      "admin.roles.help.rows.admin_users" => "Admin-Benutzer verwalten (die Admin-Backend-Logins)"
      "admin.roles.help.rows.alerts" => "System-Alerts"
      "admin.roles.help.rows.analytics" => "Analytics Cockpit"
      "admin.roles.help.rows.b2b" => "B2B"
      "admin.roles.help.rows.blog" => "Blog"
      "admin.roles.help.rows.cart" => "Warenkorb"
      "admin.roles.help.rows.cart_intelligence" => "Cart Intelligence"
      "admin.roles.help.rows.configurable_products" => "Varianten-Editor"
      "admin.roles.help.rows.content_blocks" => "Content-Blöcke"
      "admin.roles.help.rows.coupons" => "Gutscheine"
      "admin.roles.help.rows.cross_sell" => "Cross-Sells"
      "admin.roles.help.rows.customers" => "Kunden"
      "admin.roles.help.rows.dashboard" => "Dashboard anzeigen/verwalten"
      "admin.roles.help.rows.dashboard_api" => "Dashboard-API ausführen"
      "admin.roles.help.rows.feeds" => "Feeds"
      "admin.roles.help.rows.footer_menu" => "Footer-Menü"
      "admin.roles.help.rows.help_center" => "Admin-Hilfe-Bereich anzeigen"
      "admin.roles.help.rows.import" => "Import"
      "admin.roles.help.rows.main_menu" => "Hauptmenü"
      "admin.roles.help.rows.orders" => "Bestellungen"
      "admin.roles.help.rows.pages" => "Seiten (CMS)"
      "admin.roles.help.rows.pricing" => "Preisregeln"
      "admin.roles.help.rows.product_configurator" => "PC-/System-Konfigurator"
      "admin.roles.help.rows.product_qa" => "Produkt-Q&A"
      "admin.roles.help.rows.products" => "Produkte"
      "admin.roles.help.rows.reviews" => "Bewertungen"
      "admin.roles.help.rows.rma" => "Retouren (RMA)"
      "admin.roles.help.rows.seo_faq" => "SEO FAQs"
      "admin.roles.help.rows.shipments" => "Sendungen"
      "admin.roles.help.rows.shipping_methods" => "Versand (Methoden)"
      "admin.roles.help.rows.shipping_zones" => "Versand (Zonen)"
      "admin.roles.help.rows.shop_menu" => "Shop-Menü"
      "admin.roles.help.rows.shop_users" => "Shop-Benutzer"
      "admin.roles.help.rows.slider" => "Slider"
      "admin.roles.help.rows.system_config" => "Erweiterte System-Konfiguration"
      "admin.roles.help.rows.system_panel" => "System-Panel anzeigen"
      "admin.roles.help.rows.system_settings" => "System-Einstellungen verwalten"
      "admin.roles.help.rows.themes" => "Theme-Modul"
      "admin.roles.help.rows.translations" => "Übersetzungen verwalten"
      "admin.roles.help.rows.widgets" => "Widgets"
      "admin.roles.help.shop_title" => "Shop-Module"
      "admin.roles.help.suffixes_label" => "Suffixe:"
      "admin.roles.help.suffixes.add" => "anlegen"
      "admin.roles.help.suffixes.delete" => "löschen"
      "admin.roles.help.suffixes.edit" => "bearbeiten"
      "admin.roles.help.suffixes.list" => "anzeigen"
      "admin.roles.help.suffixes.manage" => "alles"
      "admin.roles.help.suffixes.run" => "ausführen"
      "admin.roles.help.suffixes.view" => "Detailansicht"
      "admin.roles.help.superuser_description" => "Vollzugriff auf alle Module, keine weiteren Rollen nötig"
      "admin.roles.help.superuser_title" => "Superuser-Rolle"
      "admin.roles.help.superuser_warning" => "ROLE_SUPERUSER sollte nur einem einzigen technischen Hauptadmin zugewiesen werden."
      "admin.roles.help.system_title" => "System-Rollen"
      "admin.roles.help.tip_label" => "Tipp:"
      "admin.roles.help.tip_text" => "Für einen Shop-Manager empfohlene Rollen-Kombination:"
      "admin.roles.help.title" => "Hilfe: Rollen & Berechtigungen"
      "admin.roles.notifications.generic_error" => "Es ist ein Fehler aufgetreten. Bitte aktualisieren Sie die Seite und versuchen Sie es erneut."
      "admin.roles.notifications.profile_created" => "Profil wurde angelegt."
      "admin.roles.notifications.profile_not_found" => "Profil nicht gefunden."
      "admin.roles.notifications.profile_saved" => "Profil wurde gespeichert."
      "admin.roles.profile_list.bulk_activate" => "Aktivieren"
      "admin.roles.profile_list.bulk_deactivate" => "Deaktivieren"
      "admin.roles.profile_list.bulk_delete" => "Löschen"
      "admin.roles.profile_list.bulk_hint" => "Wähle zuerst ein oder mehrere Profile in der Tabelle aus."
      "admin.roles.profile_list.bulk_placeholder" => "Gruppenaktion auswählen"
      "admin.roles.profile_list.bulk_select_one" => "Bitte wähle mindestens ein Profil für die Gruppenaktion aus."
      "admin.roles.profile_list.column_delete" => "Löschen"
      "admin.roles.profile_list.column_edit" => "Bearbeiten"
      "admin.roles.profile_list.column_name" => "Profilname"
      "admin.roles.profile_list.column_status" => "Status"
      "admin.roles.profile_list.delete_modal_body" => "Möchtest du das Profil "%label%" wirklich löschen?"
      "admin.roles.profile_list.delete_modal_title" => "Profil löschen"
      "admin.roles.profile_list.empty" => "Keine Profile vorhanden."
      "admin.roles.profile_list.overview_count" => "%count% Einträge"
      "admin.roles.profile_list.overview_title" => "Profilübersicht"
      "admin.roles.profile_list.page_title" => "Profile"
      "admin.roles.profile_list.status_active" => "Aktiv"
      "admin.roles.profile_list.status_inactive" => "Inaktiv"
      "admin.roles.profile_list.subtitle" => "Rollenprofile zentral verwalten, aktivieren und zu Benutzerkonten zuweisen."
      "admin.roles.profile_list.title" => "Profile"
      "admin.seo.categories.actions.manage" => "FAQs verwalten"
      "admin.seo.categories.actions.seed" => "Vorschläge als ausstehend"
      "admin.seo.categories.category_id" => "ID: %id%"
      "admin.seo.categories.empty" => "Keine Kategorien gefunden."
      "admin.seo.categories.headers.actions" => "Aktionen"
      "admin.seo.categories.headers.archived" => "Archiviert"
      "admin.seo.categories.headers.category" => "Kategorie"
      "admin.seo.categories.headers.pending" => "Ausstehend"
      "admin.seo.categories.headers.published" => "Veröffentlicht"
      "admin.seo.categories.headers.total" => "Gesamt"
      "admin.seo.categories.meta_title" => "SEO FAQ Kategorien"
      "admin.seo.categories.page_subtitle" => "Direkter Einstieg pro Kategorie und schneller Import von FAQ-Vorschlägen als pending."
      "admin.seo.categories.page_title" => "FAQ-Kategorien (%count%)"
      "admin.seo.categories.panel_title" => "Kategorieübersicht"
      "admin.seo.categories.toolbar.help" => "Hilfe"
      "admin.seo.categories.toolbar.pending" => "Ausstehende FAQs"
      "admin.seo.category.actions.archive" => "Archivieren"
      "admin.seo.category.actions.delete" => "Löschen"
      "admin.seo.category.actions.edit" => "Bearbeiten"
      "admin.seo.category.actions.publish" => "Veröffentlichen"
      "admin.seo.category.actions.save_order" => "Reihenfolge speichern"
      "admin.seo.category.confirms.archive" => "Diesen FAQ-Eintrag wirklich archivieren?"
      "admin.seo.category.confirms.delete" => "FAQ-Eintrag wirklich löschen?"
      "admin.seo.category.form.answer" => "Antwort *"
      "admin.seo.category.form.answer_hint" => "Detaillierte Antwort zum Thema"
      "admin.seo.category.form.option_pending" => "Ausstehend (Moderation)"
      "admin.seo.category.form.option_published" => "Sofort veröffentlichen"
      "admin.seo.category.form.question" => "Frage *"
      "admin.seo.category.form.question_hint" => "Maximal 500 Zeichen"
      "admin.seo.category.form.reset" => "Zurücksetzen"
      "admin.seo.category.form.save" => "FAQ speichern"
      "admin.seo.category.form.status" => "Status"
      "admin.seo.category.meta_title" => "FAQs für %name%"
      "admin.seo.category.page_title" => "FAQs für %name%"
      "admin.seo.category.pending.created" => "Erstellt am %date%"
      "admin.seo.category.pending.empty" => "Keine ausstehenden FAQs."
      "admin.seo.category.pending.missing_answer" => "Noch keine Antwort hinterlegt. Bitte zuerst bearbeiten."
      "admin.seo.category.publish_disabled_title" => "Bitte zuerst eine Antwort eintragen"
      "admin.seo.category.published.date" => "Veröffentlicht am %date%"
      "admin.seo.category.published.empty" => "Keine veröffentlichten FAQs."
      "admin.seo.category.tabs.new" => "Neue FAQ"
      "admin.seo.category.tabs.pending" => "Ausstehend (%count%)"
      "admin.seo.category.tabs.published" => "Veröffentlicht"
      "admin.seo.errors.category_not_found" => "Kategorie wurde nicht gefunden."
      "admin.seo.help_index.card_subtitle" => "Kategorie-FAQs, KI-Vorschläge und interne Links"
      "admin.seo.help_index.card_title" => "SEO & FAQ"
      "admin.seo.help_index.table_description" => "Kategorie-FAQs, Pending-Inbox und interne Linkvorschläge"
      "admin.seo.help_index.table_label" => "SEO & FAQ"
      "admin.seo.help.actions.back" => "Zurück"
      "admin.seo.help.actions.module" => "Zum Modul"
      "admin.seo.help.ai.api_label" => "API:"
      "admin.seo.help.ai.intro" => "Für jede Kategorie können automatisiert neue FAQ-Vorschläge erzeugt werden."
      "admin.seo.help.ai.steps.five" => "Anschließend manuell prüfen und gezielt veröffentlichen."
      "admin.seo.help.ai.steps.four" => "Neue Einträge landen zunächst im Status pending."
      "admin.seo.help.ai.steps.one" => "Kategorie in der FAQ-Übersicht öffnen."
      "admin.seo.help.ai.steps.three" => "Das System analysiert die Kategorie und erzeugt neue Vorschläge, sofern noch keine Dubletten vorhanden sind."
      "admin.seo.help.ai.steps.two" => "Aktion „Vorschläge als pending“ auslösen."
      "admin.seo.help.ai.title" => "KI-FAQ-Vorschläge generieren"
      "admin.seo.help.ai.warning" => "KI-Vorschläge sollten vor der Veröffentlichung immer redaktionell geprüft werden."
      "admin.seo.help.api.rows.categories" => "Alle Kategorien mit FAQ-Anzahlen"
      "admin.seo.help.api.rows.category" => "FAQs einer Kategorie anzeigen"
      "admin.seo.help.api.rows.delete_pending" => "Pending-FAQ löschen"
      "admin.seo.help.api.rows.links" => "Interne Link-Vorschläge für eine Kategorie"
      "admin.seo.help.api.rows.pending" => "Ausstehende FAQs (Pending-Inbox)"
      "admin.seo.help.api.rows.save" => "FAQ anlegen oder bearbeiten"
      "admin.seo.help.api.rows.seed" => "KI-Vorschläge generieren"
      "admin.seo.help.api.table.function" => "Funktion"
      "admin.seo.help.api.table.method" => "Methode"
      "admin.seo.help.api.table.url" => "URL"
      "admin.seo.help.api.title" => "API-Endpunkte"
      "admin.seo.help.faq.intro" => "FAQs werden pro Kategorie gepflegt und erscheinen auf der Kategorieseite als strukturierter FAQ-Abschnitt inklusive Schema.org-Auszeichnung."
      "admin.seo.help.faq.status_table.archived_meaning" => "Ausgeblendet, aber erhalten"
      "admin.seo.help.faq.status_table.archived_visibility" => "Nicht sichtbar"
      "admin.seo.help.faq.status_table.meaning" => "Bedeutung"
      "admin.seo.help.faq.status_table.pending_meaning" => "Vorschlag oder Entwurf, noch nicht freigegeben"
      "admin.seo.help.faq.status_table.pending_visibility" => "Nicht sichtbar"
      "admin.seo.help.faq.status_table.published_meaning" => "Aktive FAQ auf der Kategorieseite"
      "admin.seo.help.faq.status_table.published_visibility" => "Sichtbar im Frontend"
      "admin.seo.help.faq.status_table.status" => "Status"
      "admin.seo.help.faq.status_table.visibility" => "Sichtbarkeit"
      "admin.seo.help.faq.statuses_title" => "FAQ-Status:"
      "admin.seo.help.faq.steps_title" => "Schritt-für-Schritt: FAQ anlegen"
      "admin.seo.help.faq.steps.five" => "Speichern und Eintrag bei Bedarf später bearbeiten, archivieren oder löschen."
      "admin.seo.help.faq.steps.four" => "Status auf pending oder published setzen."
      "admin.seo.help.faq.steps.one" => "SEO → FAQ-Kategorien öffnen."
      "admin.seo.help.faq.steps.six" => "Veröffentlichte FAQs können zusätzlich per Drag-and-Drop sortiert und gespeichert werden."
      "admin.seo.help.faq.steps.three" => "Im Tab „Neue FAQ“ Frage und Antwort erfassen."
      "admin.seo.help.faq.steps.two" => "Kategorie aus der Liste auswählen."
      "admin.seo.help.faq.title" => "Kategorie-FAQs erstellen und verwalten"
      "admin.seo.help.fields.rows.answer" => "Antwortinhalt der FAQ"
      "admin.seo.help.fields.rows.category" => "Verknüpfte Produktkategorie"
      "admin.seo.help.fields.rows.created_at" => "Erstellungsdatum"
      "admin.seo.help.fields.rows.question" => "FAQ-Frage (erscheint auch als Schema.org FAQPage)"
      "admin.seo.help.fields.rows.sort_order" => "Reihenfolge auf der Seite"
      "admin.seo.help.fields.rows.status" => "pending / published / archived"
      "admin.seo.help.fields.table.description" => "Beschreibung"
      "admin.seo.help.fields.table.field" => "Feld"
      "admin.seo.help.fields.table.type" => "Typ"
      "admin.seo.help.fields.title" => "Feldreferenz: CategoryFaq"
      "admin.seo.help.fields.types.datetime" => "Datum / Zeit"
      "admin.seo.help.fields.types.enum" => "Enum"
      "admin.seo.help.fields.types.html_text" => "Text (HTML erlaubt)"
      "admin.seo.help.fields.types.integer" => "Integer"
      "admin.seo.help.fields.types.relation" => "Relation"
      "admin.seo.help.fields.types.text" => "Text"
      "admin.seo.help.links.intro" => "Der interne Link-Assistent liefert Vorschläge für verwandte Kategorien und hilft beim Aufbau einer sauberen internen Linkstruktur."
      "admin.seo.help.links.points.four" => "Unterstützt die redaktionelle Pflege thematisch passender Querverlinkungen."
      "admin.seo.help.links.points.one" => "Aufruf über /admin/seo/links/{categoryId}."
      "admin.seo.help.links.points.three" => "Bewertet die Relevanz gestuft und liefert direkt kopierbare URLs."
      "admin.seo.help.links.points.two" => "Typisiert Vorschläge als Parent, Sibling oder Verwandt."
      "admin.seo.help.links.title" => "Interne Links (Link-Assistent)"
      "admin.seo.help.meta.intro" => "Für Produkte und Kategorien stehen SEO-Metadaten in den jeweiligen Bearbeitungsformularen zur Verfügung."
      "admin.seo.help.meta.rows.description_field" => "Produkt-Edit / Kategorie-Edit"
      "admin.seo.help.meta.rows.description_length" => "150-160 Zeichen"
      "admin.seo.help.meta.rows.slug_field" => "Produkt-Edit (automatisch generiert)"
      "admin.seo.help.meta.rows.slug_length" => "URL-freundlich, keine Sonderzeichen"
      "admin.seo.help.meta.rows.title_field" => "Produkt-Edit / Kategorie-Edit"
      "admin.seo.help.meta.rows.title_length" => "50-60 Zeichen"
      "admin.seo.help.meta.table.editable" => "Wo editierbar"
      "admin.seo.help.meta.table.field" => "Feld"
      "admin.seo.help.meta.table.length" => "Empfohlene Länge"
      "admin.seo.help.meta.title" => "SEO-Meta-Felder"
      "admin.seo.help.navigation.ai" => "KI-FAQ-Vorschläge"
      "admin.seo.help.navigation.api" => "API-Endpunkte"
      "admin.seo.help.navigation.faq" => "Kategorie-FAQs"
      "admin.seo.help.navigation.fields" => "Feldreferenz"
      "admin.seo.help.navigation.links" => "Interne Links"
      "admin.seo.help.navigation.meta" => "SEO-Meta-Felder"
      "admin.seo.help.navigation.overview" => "Überblick"
      "admin.seo.help.navigation.pending" => "Ausstehende FAQs"
      "admin.seo.help.navigation.title" => "Navigation"
      "admin.seo.help.overview.cards.ai.subtitle" => "Automatisch generierte FAQ-Entwürfe"
      "admin.seo.help.overview.cards.ai.title" => "KI-Vorschläge"
      "admin.seo.help.overview.cards.faq.subtitle" => "FAQ-Abschnitte auf Kategorie-Seiten"
      "admin.seo.help.overview.cards.faq.title" => "Kategorie-FAQs"
      "admin.seo.help.overview.cards.links.subtitle" => "Verlinkungen zwischen thematisch passenden Kategorien"
      "admin.seo.help.overview.cards.links.title" => "Interne Links"
      "admin.seo.help.overview.intro" => "Das SEO-Modul bündelt Werkzeuge für Kategorie-FAQs, Pending-Moderation, KI-gestützte FAQ-Vorschläge und interne Linkempfehlungen."
      "admin.seo.help.overview.permissions_title" => "Berechtigungen:"
      "admin.seo.help.overview.title" => "SEO-Tools: Überblick"
      "admin.seo.help.page_title" => "Hilfe: SEO-Tools"
      "admin.seo.help.pending.intro" => "Alle FAQs im Status pending erscheinen gesammelt unter /admin/seo/faq/pending."
      "admin.seo.help.pending.points.one" => "Einträge können direkt zur Kategorie geöffnet und dort ergänzt oder veröffentlicht werden."
      "admin.seo.help.pending.points.three" => "Die Inbox eignet sich für tägliche redaktionelle Moderation neuer KI- oder Entwurfsinhalte."
      "admin.seo.help.pending.points.two" => "Löschen aus der Inbox entfernt den FAQ-Eintrag dauerhaft."
      "admin.seo.help.pending.title" => "Ausstehende FAQs (Pending-Inbox)"
      "admin.seo.links.actions.back_category" => "Zur Kategorie"
      "admin.seo.links.actions.copy" => "Kopieren"
      "admin.seo.links.actions.manage_faq" => "FAQs verwalten"
      "admin.seo.links.empty" => "Keine Link-Vorschläge verfügbar."
      "admin.seo.links.guidelines.four" => "Hierarchie respektieren - Parent-Links vor Sibling-Links"
      "admin.seo.links.guidelines.one" => "1-3 interne Links pro Seite - zu viele Links verwirren Besucher"
      "admin.seo.links.guidelines.three" => "Wichtige Seiten zuerst - verlinken Sie zu den verkaufs- oder konversionsstärksten Kategorien"
      "admin.seo.links.guidelines.title" => "Richtlinien für interne Links:"
      "admin.seo.links.guidelines.two" => "Relevante Anchor-Texte - vermeiden Sie "hier" oder "mehr", nutzen Sie beschreibende Texte"
      "admin.seo.links.intro" => "Diese Seite sollte auf folgende verwandte Kategorien verlinken, um die interne Linkstruktur zu verbessern:"
      "admin.seo.links.js.copy_failed" => "Link konnte nicht kopiert werden."
      "admin.seo.links.js.copy_success" => "Link wurde kopiert."
      "admin.seo.links.meta_title" => "Interne Links - %name%"
      "admin.seo.links.page_title" => "Interne Link-Vorschläge für %name%"
      "admin.seo.links.relevance.high" => "Hoch"
      "admin.seo.links.relevance.medium" => "Mittel"
      "admin.seo.links.type.cousin" => "Verwandt"
      "admin.seo.links.type.parent" => "Elternkategorie"
      "admin.seo.links.type.sibling" => "Geschwister"
      "admin.seo.nav.faq_categories" => "FAQ-Kategorien"
      "admin.seo.nav.menu" => "SEO & FAQ"
      "admin.seo.nav.pending" => "Ausstehende FAQs"
      "admin.seo.notifications.faq_archived" => "FAQ wurde archiviert."
      "admin.seo.notifications.faq_deleted" => "FAQ wurde gelöscht."
      "admin.seo.notifications.faq_not_found" => "FAQ wurde nicht gefunden."
      "admin.seo.notifications.faq_publish_failed" => "FAQ konnte nicht veröffentlicht werden. Bitte zuerst eine echte Antwort eintragen."
      "admin.seo.notifications.faq_published" => "FAQ wurde veröffentlicht."
      "admin.seo.notifications.faq_saved" => "FAQ wurde gespeichert."
      "admin.seo.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.seo.notifications.invalid_csrf_retry" => "Ungültiges CSRF-Token. Bitte erneut versuchen."
      "admin.seo.notifications.order_updated" => "Reihenfolge wurde aktualisiert."
      "admin.seo.notifications.question_answer_required" => "Frage und Antwort sind erforderlich."
      "admin.seo.notifications.reorder_failed" => "Fehler beim Sortieren: %message%"
      "admin.seo.notifications.save_failed" => "Fehler beim Speichern: %message%"
      "admin.seo.notifications.suggestions_created" => "%count% FAQ-Vorschläge für "%name%" als ausstehend angelegt."
      "admin.seo.notifications.suggestions_none" => "Keine neuen Vorschläge für "%name%" angelegt (bereits vorhanden oder keine Vorschläge verfügbar)."
      "admin.seo.pending.actions.delete" => "Löschen"
      "admin.seo.pending.actions.edit" => "Bearbeiten"
      "admin.seo.pending.delete_confirm" => "FAQ "%question%" wirklich löschen?"
      "admin.seo.pending.empty" => "Keine ausstehenden FAQs."
      "admin.seo.pending.headers.actions" => "Aktionen"
      "admin.seo.pending.headers.category" => "Kategorie"
      "admin.seo.pending.headers.created" => "Erstellt"
      "admin.seo.pending.headers.question" => "Frage"
      "admin.seo.pending.meta_title" => "Ausstehende FAQs"
      "admin.seo.pending.page_subtitle" => "Prüfe offene FAQ-Einträge vor Veröffentlichung."
      "admin.seo.pending.page_title" => "Ausstehende FAQs (%count%)"
      "admin.seo.pending.panel_title" => "Pending-FAQ-Liste"
      "admin.seo.pending.toolbar.categories" => "FAQ-Kategorien"
      "admin.settings.form.actions.back" => "Zurück"
      "admin.settings.form.actions.cancel" => "Abbrechen"
      "admin.settings.form.actions.help" => "Modulhilfe"
      "admin.settings.form.actions.save" => "Speichern"
      "admin.settings.form.choices.scopes.backend" => "Backend"
      "admin.settings.form.choices.scopes.frontend" => "Frontend"
      "admin.settings.form.choices.scopes.global" => "Global"
      "admin.settings.form.choices.types.bool" => "Boolean"
      "admin.settings.form.choices.types.float" => "Dezimalzahl"
      "admin.settings.form.choices.types.int" => "Integer"
      "admin.settings.form.choices.types.string" => "String"
      "admin.settings.form.choices.types.text" => "Text"
      "admin.settings.form.description_locked_help" => "Bei vordefinierten System-Einstellungen wird die sichtbare Beschreibung über Übersetzungen gepflegt und ist hier schreibgeschützt."
      "admin.settings.form.fields.description" => "Beschreibung"
      "admin.settings.form.fields.scope" => "Bereich"
      "admin.settings.form.fields.settings_key" => "Einstellungs-Schlüssel"
      "admin.settings.form.fields.type" => "Typ"
      "admin.settings.form.fields.value" => "Wert"
      "admin.settings.form.meta_title_edit" => "Einstellung bearbeiten"
      "admin.settings.form.meta_title_new" => "Neue System-Einstellung"
      "admin.settings.form.page_subtitle_edit" => "Aktualisiere den Eintrag %key%."
      "admin.settings.form.page_subtitle_new" => "Lege Schlüssel, Wert, Typ und Scope zentral an."
      "admin.settings.form.page_title_edit" => "Einstellung bearbeiten"
      "admin.settings.form.page_title_new" => "Neue System-Einstellung"
      "admin.settings.form.panel_title" => "Formular"
      "admin.settings.help_index.card_description" => "Liste, Panel, Zahlungen, Versand und SEO"
      "admin.settings.help_index.card_title" => "System-Einstellungen"
      "admin.settings.help_index.table_description" => "Systemweite Parameter, Panel-Konfiguration und technische Einstellungen"
      "admin.settings.help_index.table_label" => "Einstellungen"
      "admin.settings.help.actions.back" => "Zurück"
      "admin.settings.help.actions.list" => "Zur Liste"
      "admin.settings.help.actions.panel" => "Zum Panel"
      "admin.settings.help.navigation.categories" => "Kategorien"
      "admin.settings.help.navigation.keys" => "Wichtige Schlüssel"
      "admin.settings.help.navigation.overview" => "Überblick"
      "admin.settings.help.navigation.routes" => "Routen"
      "admin.settings.help.navigation.security" => "Sicherheit"
      "admin.settings.help.navigation.split" => "Liste und Panel"
      "admin.settings.help.navigation.title" => "Navigation"
      "admin.settings.help.page_title" => "Hilfe: System-Einstellungen"
      "admin.settings.help.sections.categories.headers.category" => "Kategorie"
      "admin.settings.help.sections.categories.headers.description" => "Beschreibung"
      "admin.settings.help.sections.categories.title" => "Kategorien im Panel"
      "admin.settings.help.sections.keys.headers.description" => "Beschreibung"
      "admin.settings.help.sections.keys.headers.key" => "Schlüssel"
      "admin.settings.help.sections.keys.rows.address_validation_external_enabled" => "Aktiviert eine zusätzliche externe Adressprüfung über einen konfigurierbaren Endpoint."
      "admin.settings.help.sections.keys.rows.address_validation_external_timeout" => "Maximale Wartezeit in Sekunden für die externe Adressprüfung."
      "admin.settings.help.sections.keys.rows.address_validation_external_token" => "Optionaler Bearer-Token für die Authentifizierung am externen Adressprüfservice."
      "admin.settings.help.sections.keys.rows.address_validation_external_url" => "HTTPS-URL des externen Adressprüfservices."
      "admin.settings.help.sections.keys.rows.newsletter_enabled" => "Aktiviert die Newsletter-Funktion im Shop."
      "admin.settings.help.sections.keys.rows.paypal_client_id" => "Vorbereiteter API-Schlüssel für eine spätere PayPal-Integration; aktuell ohne Live-Verdrahtung im Checkout."
      "admin.settings.help.sections.keys.rows.recaptcha_admin_login_enabled" => "Schaltet die zusätzliche Sicherheitsprüfung auf /admin/login ein."
      "admin.settings.help.sections.keys.rows.recaptcha_admin_login_variant" => "Wählt Checkbox oder Invisible für den Admin-Login."
      "admin.settings.help.sections.keys.rows.recaptcha_enabled" => "Master-Schalter für Google reCAPTCHA im Projekt."
      "admin.settings.help.sections.keys.rows.recaptcha_language" => "Optionale Sprache für das Widget; leer folgt der aktuellen Anfrage."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_enabled" => "Aktiviert reCAPTCHA für Registrierung, Reset, Resend, Kontakt, B2B und Support."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_secret_key" => "Optionaler eigener Secret-Key für Public-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_site_key" => "Optionaler eigener Site-Key für Public-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_public_forms_variant" => "Wählt Checkbox oder Invisible für Public- und Shop-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_secret_key" => "Geheimer Server-Schlüssel für den Admin-Login und als Fallback für Public-Formulare."
      "admin.settings.help.sections.keys.rows.recaptcha_site_key" => "Öffentlicher Schlüssel für den Admin-Login und als Fallback für Public-Formulare."
      "admin.settings.help.sections.keys.rows.shipping_flat_rate" => "Versandpauschale pro Bestellung."
      "admin.settings.help.sections.keys.rows.shop_currency" => "Standardwährung des Shops."
      "admin.settings.help.sections.keys.rows.shop_email" => "Zentrale Kontakt- und Absenderadresse."
      "admin.settings.help.sections.keys.rows.shop_meta_title" => "Standard-Meta-Titel für Shop- und Übersichtsseiten."
      "admin.settings.help.sections.keys.rows.shop_name" => "Name des Shops für Titel, E-Mails und Frontend-Ausgaben."
      "admin.settings.help.sections.keys.rows.stripe_enabled" => "Schaltet Stripe im Checkout an oder aus."
      "admin.settings.help.sections.keys.title" => "Wichtige Schlüssel"
      "admin.settings.help.sections.overview.lead" => "System-Einstellungen sind zentrale Schlüssel-Wert-Paare in der Datenbank und steuern Shop-Verhalten, Zahlungsarten, Benachrichtigungen und SEO ohne Codeänderung."
      "admin.settings.help.sections.overview.permissions_label" => "Berechtigungen:"
      "admin.settings.help.sections.overview.title" => "Überblick"
      "admin.settings.help.sections.overview.warning" => "Geheimnisse und API-Schlüssel nur in der Datenbank pflegen und niemals im Code oder in Versionierung ablegen."
      "admin.settings.help.sections.routes.headers.function" => "Funktion"
      "admin.settings.help.sections.routes.headers.method" => "Methode"
      "admin.settings.help.sections.routes.headers.url" => "URL"
      "admin.settings.help.sections.routes.rows.create" => "Neue technische Einstellung anlegen"
      "admin.settings.help.sections.routes.rows.delete" => "Bestehende Einstellung löschen"
      "admin.settings.help.sections.routes.rows.edit" => "Bestehende Einstellung bearbeiten"
      "admin.settings.help.sections.routes.rows.list" => "Alle System-Einstellungen als CRUD-Liste anzeigen"
      "admin.settings.help.sections.routes.rows.panel" => "Vordefinierte System-Einstellungen im Panel anzeigen"
      "admin.settings.help.sections.routes.title" => "Routen und Aktionen"
      "admin.settings.help.sections.security.image_hint" => "Logo- und Favicon-Uploads werden im Shop-Upload-Verzeichnis gespeichert und können im Panel direkt ersetzt werden."
      "admin.settings.help.sections.security.password_hint" => "Passwortfelder überschreiben bestehende Werte nur, wenn ein neuer Wert eingetragen wird."
      "admin.settings.help.sections.security.scope_hint" => "Die technische Scope-Information bleibt in der Listenansicht sichtbar, das Panel ist auf operative Shop-Konfiguration optimiert."
      "admin.settings.help.sections.security.secret_warning" => "Zugangsdaten und API-Schlüssel nur für berechtigte Admins zugänglich machen und produktive Werte nicht in Screenshots oder Tickets kopieren."
      "admin.settings.help.sections.security.title" => "Sicherheit und Pflege"
      "admin.settings.help.sections.split.autosave_label" => "Autosave:"
      "admin.settings.help.sections.split.autosave_text" => "Range-Slider speichern ihre Werte sofort per AJAX, alle anderen Felder beim Formular-Submit."
      "admin.settings.help.sections.split.list_label" => "Liste:"
      "admin.settings.help.sections.split.list_text" => "Die Listenansicht unter /admin/settings eignet sich für CRUD, technische Kontrolle und einzelne Schlüssel."
      "admin.settings.help.sections.split.panel_label" => "Panel:"
      "admin.settings.help.sections.split.panel_text" => "Das Panel unter /admin/system-settings bündelt die wichtigsten Shop-Parameter nach Kategorien und zeigt passende Eingabetypen."
      "admin.settings.help.sections.split.title" => "Liste und Panel"
      "admin.settings.index.actions.delete" => "Löschen"
      "admin.settings.index.actions.edit" => "Bearbeiten"
      "admin.settings.index.actions.help" => "Modulhilfe"
      "admin.settings.index.actions.new" => "Neue Einstellung"
      "admin.settings.index.actions.panel" => "Einstellungs-Panel"
      "admin.settings.index.delete_confirm" => "Einstellung "%key%" wirklich löschen?"
      "admin.settings.index.headers.actions" => "Aktionen"
      "admin.settings.index.headers.description" => "Beschreibung"
      "admin.settings.index.headers.id" => "ID"
      "admin.settings.index.headers.key" => "Key"
      "admin.settings.index.headers.scope" => "Bereich"
      "admin.settings.index.headers.type" => "Typ"
      "admin.settings.index.headers.value" => "Wert"
      "admin.settings.index.list_count" => "%count% Einträge"
      "admin.settings.index.list_title" => "System-Einstellungen"
      "admin.settings.index.meta_title" => "System-Einstellungen"
      "admin.settings.index.page_subtitle" => "Verwalte Schlüssel, Werte, Typen und Gültigkeitsbereiche zentral."
      "admin.settings.index.page_title" => "System-Einstellungen"
      "admin.settings.index.values.empty" => "Keine Einstellungen vorhanden."
      "admin.settings.notifications.created" => "Einstellung wurde angelegt."
      "admin.settings.notifications.deleted" => "Einstellung wurde gelöscht."
      "admin.settings.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.settings.notifications.updated" => "Einstellung wurde gespeichert."
      "admin.settings.panel.actions.help" => "Modulhilfe"
      "admin.settings.panel.actions.list" => "Zur Liste"
      "admin.settings.panel.actions.save" => "Einstellungen speichern"
      "admin.settings.panel.autosave_hint" => "Range-Slider werden sofort automatisch gespeichert."
      "admin.settings.panel.fields.address_validation_external_enabled.description" => "Schaltet zusätzlich zur lokalen Plausibilitätsprüfung einen externen Adressprüf-Endpoint frei."
      "admin.settings.panel.fields.address_validation_external_enabled.label" => "Externe Adressprüfung aktiv"
      "admin.settings.panel.fields.address_validation_external_timeout.description" => "Maximale Wartezeit in Sekunden für externe Adressprüfungen."
      "admin.settings.panel.fields.address_validation_external_timeout.label" => "Timeout externe Adressprüfung"
      "admin.settings.panel.fields.address_validation_external_token.description" => "Optionaler Bearer-Token für den externen Adressprüf-Endpoint."
      "admin.settings.panel.fields.address_validation_external_token.label" => "Token externe Adressprüfung"
      "admin.settings.panel.fields.address_validation_external_url.description" => "HTTPS-URL eines externen Services für Adressvalidierung und -normalisierung."
      "admin.settings.panel.fields.address_validation_external_url.label" => "Endpoint externe Adressprüfung"
      "admin.settings.panel.fields.blog_offline_message.description" => "Hinweistext für den deaktivierten Blog."
      "admin.settings.panel.fields.blog_offline_message.label" => "Offline-Hinweis Blog"
      "admin.settings.panel.fields.blog_status.description" => "Aktiviert oder deaktiviert den Blog im Frontend."
      "admin.settings.panel.fields.blog_status.label" => "Blog online"
      "admin.settings.panel.fields.cart_session_lifetime.description" => "Legt fest, wie lange ein Warenkorb ohne Aktivität gespeichert bleibt."
      "admin.settings.panel.fields.cart_session_lifetime.label" => "Warenkorb-Sitzung in Minuten"
      "admin.settings.panel.fields.data_protection_offline_message.description" => "Nachricht bei deaktivierter Datenschutzseite."
      "admin.settings.panel.fields.data_protection_offline_message.label" => "Offline-Hinweis Datenschutz"
      "admin.settings.panel.fields.data_protection_status.description" => "Steuert, ob die Datenschutzseite erreichbar ist."
      "admin.settings.panel.fields.data_protection_status.label" => "Datenschutz online"
      "admin.settings.panel.fields.imprint_offline_message.description" => "Nachricht bei deaktivierter Impressumsseite."
      "admin.settings.panel.fields.imprint_offline_message.label" => "Offline-Hinweis Impressum"
      "admin.settings.panel.fields.imprint_status.description" => "Steuert, ob die Impressumsseite erreichbar ist."
      "admin.settings.panel.fields.imprint_status.label" => "Impressum online"
      "admin.settings.panel.fields.invoice_enabled.description" => "Vorbereitungsflag für einen späteren Rechnungspfad; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.invoice_enabled.label" => "Rechnung aktiv"
      "admin.settings.panel.fields.klarna_enabled.description" => "Vorbereitungsflag für eine spätere Klarna-Integration; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.klarna_enabled.label" => "Klarna aktiv"
      "admin.settings.panel.fields.newsletter_enabled.description" => "Aktiviert oder deaktiviert die Newsletter-Funktion."
      "admin.settings.panel.fields.newsletter_enabled.label" => "Newsletter aktiv"
      "admin.settings.panel.fields.order_email_admin.description" => "Empfängeradresse für interne Bestellbenachrichtigungen."
      "admin.settings.panel.fields.order_email_admin.label" => "Admin-E-Mail für Bestellungen"
      "admin.settings.panel.fields.order_email_notification.description" => "Steuert, ob bei neuen Bestellungen Benachrichtigungen versendet werden."
      "admin.settings.panel.fields.order_email_notification.label" => "Bestellbenachrichtigungen aktiv"
      "admin.settings.panel.fields.paypal_client_id.description" => "Client-ID für eine spätere PayPal-Integration; derzeit ohne aktive Checkout-Verdrahtung."
      "admin.settings.panel.fields.paypal_client_id.label" => "PayPal Client ID"
      "admin.settings.panel.fields.paypal_enabled.description" => "Vorbereitungsflag für eine spätere PayPal-Integration; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.paypal_enabled.label" => "PayPal aktiv"
      "admin.settings.panel.fields.prepayment_enabled.description" => "Vorbereitungsflag für einen späteren Vorkasse-Pfad; aktuell nicht live im Checkout."
      "admin.settings.panel.fields.prepayment_enabled.label" => "Vorkasse aktiv"
      "admin.settings.panel.fields.recaptcha_admin_login_enabled.description" => "Aktiviert auf der Admin-Login-Seite eine zusätzliche Google-reCAPTCHA-Prüfung."
      "admin.settings.panel.fields.recaptcha_admin_login_enabled.label" => "Admin-Login schützen"
      "admin.settings.panel.fields.recaptcha_admin_login_variant.description" => "Wählt Checkbox oder Invisible für den Admin-Login. Passende Google-Keys vorausgesetzt."
      "admin.settings.panel.fields.recaptcha_admin_login_variant.label" => "Admin-Login Variante"
      "admin.settings.panel.fields.recaptcha_enabled.description" => "Master-Schalter für Google reCAPTCHA. Wirkt nur mit vollständig hinterlegten Schlüsseln."
      "admin.settings.panel.fields.recaptcha_enabled.label" => "Google reCAPTCHA aktiv"
      "admin.settings.panel.fields.recaptcha_language.description" => "Leere Auswahl übernimmt automatisch die Sprache der aktuellen Anfrage."
      "admin.settings.panel.fields.recaptcha_language.label" => "Google reCAPTCHA Sprache"
      "admin.settings.panel.fields.recaptcha_public_forms_enabled.description" => "Aktiviert reCAPTCHA für Registrierung, Passwort-Reset, Verify-Resend, Kontakt, B2B und Support."
      "admin.settings.panel.fields.recaptcha_public_forms_enabled.label" => "Public-Formulare schützen"
      "admin.settings.panel.fields.recaptcha_public_forms_secret_key.description" => "Optionaler eigener Secret-Key für die Public-Formulare. Leer verwendet den Admin-/Fallback-Key."
      "admin.settings.panel.fields.recaptcha_public_forms_secret_key.label" => "Public-Formulare Secret-Key"
      "admin.settings.panel.fields.recaptcha_public_forms_site_key.description" => "Optionaler eigener Site-Key für die Public-Formulare. Leer verwendet den Admin-/Fallback-Key."
      "admin.settings.panel.fields.recaptcha_public_forms_site_key.label" => "Public-Formulare Site-Key"
      "admin.settings.panel.fields.recaptcha_public_forms_variant.description" => "Wählt Checkbox oder Invisible für die Public- und Shop-Formulare."
      "admin.settings.panel.fields.recaptcha_public_forms_variant.label" => "Public-Formulare Variante"
      "admin.settings.panel.fields.recaptcha_secret_key.description" => "Geheimer Serverschlüssel für den Admin-Login und als Fallback für Public-Formulare ohne eigene Keys."
      "admin.settings.panel.fields.recaptcha_secret_key.label" => "Google reCAPTCHA Secret-Key (Admin / Fallback)"
      "admin.settings.panel.fields.recaptcha_site_key.description" => "Öffentlicher Schlüssel für den Admin-Login und als Fallback für Public-Formulare ohne eigene Keys."
      "admin.settings.panel.fields.recaptcha_site_key.label" => "Google reCAPTCHA Site-Key (Admin / Fallback)"
      "admin.settings.panel.fields.shipping_flat_rate.description" => "Standard-Versandkostenbetrag pro Bestellung."
      "admin.settings.panel.fields.shipping_flat_rate.label" => "Versandpauschale"
      "admin.settings.panel.fields.shop_address.description" => "Postanschrift des Shops oder Unternehmens."
      "admin.settings.panel.fields.shop_address.label" => "Shop-Adresse"
      "admin.settings.panel.fields.shop_currency.description" => "Standardwährung des Shops als ISO-Code."
      "admin.settings.panel.fields.shop_currency.label" => "Shop-Währung"
      "admin.settings.panel.fields.shop_email.description" => "Zentrale Kontakt- und Absenderadresse des Shops."
      "admin.settings.panel.fields.shop_email.label" => "Shop-E-Mail"
      "admin.settings.panel.fields.shop_favicon.description" => "Browser-Icon des Shops."
      "admin.settings.panel.fields.shop_favicon.label" => "Favicon"
      "admin.settings.panel.fields.shop_free_shipping_threshold.description" => "Bestellwert ab dem kostenloser Versand gilt."
      "admin.settings.panel.fields.shop_free_shipping_threshold.label" => "Schwelle kostenloser Versand"
      "admin.settings.panel.fields.shop_legal_name.description" => "Juristischer Name des Betreibers für Rechtstexte und Dokumente."
      "admin.settings.panel.fields.shop_legal_name.label" => "Rechtlicher Firmenname"
      "admin.settings.panel.fields.shop_logo.description" => "Logo-Datei für Header und Markenauftritt."
      "admin.settings.panel.fields.shop_logo.label" => "Shop-Logo"
      "admin.settings.panel.fields.shop_meta_description.description" => "Standard-Meta-Beschreibung für Shop- und Übersichtsseiten."
      "admin.settings.panel.fields.shop_meta_description.label" => "Meta-Beschreibung"
      "admin.settings.panel.fields.shop_meta_title.description" => "Standard-Meta-Titel für Shop- und Übersichtsseiten."
      "admin.settings.panel.fields.shop_meta_title.label" => "Meta-Titel"
      "admin.settings.panel.fields.shop_min_order_value.description" => "Mindestbetrag, der für eine Bestellung erreicht werden muss."
      "admin.settings.panel.fields.shop_min_order_value.label" => "Mindestbestellwert"
      "admin.settings.panel.fields.shop_name.description" => "Name des Shops für Titel, E-Mails und Frontend-Ausgaben."
      "admin.settings.panel.fields.shop_name.label" => "Shop-Name"
      "admin.settings.panel.fields.shop_offline_message.description" => "Hinweistext, der angezeigt wird, wenn der Shop deaktiviert ist."
      "admin.settings.panel.fields.shop_offline_message.label" => "Offline-Hinweis Shop"
      "admin.settings.panel.fields.shop_phone.description" => "Telefonnummer für Kontakt- und Servicetexte."
      "admin.settings.panel.fields.shop_phone.label" => "Shop-Telefon"
      "admin.settings.panel.fields.shop_product_limit.description" => "Maximale Anzahl von Produkten pro Listing-Seite."
      "admin.settings.panel.fields.shop_product_limit.label" => "Produkte pro Seite"
      "admin.settings.panel.fields.shop_return_days.description" => "Anzahl der Tage für Rückgabe- oder Widerrufsangaben."
      "admin.settings.panel.fields.shop_return_days.label" => "Rückgabefrist in Tagen"
      "admin.settings.panel.fields.shop_status.description" => "Schaltet den gesamten Shop im Frontend ein oder aus."
      "admin.settings.panel.fields.shop_status.label" => "Shop online"
      "admin.settings.panel.fields.shop_tax_id.description" => "Steuerliche Kennung für Impressum und Rechnungen."
      "admin.settings.panel.fields.shop_tax_id.label" => "Steuer-ID"
      "admin.settings.panel.fields.shop_vat_included.description" => "Kennzeichnet, ob Produktpreise bereits die Mehrwertsteuer enthalten."
      "admin.settings.panel.fields.shop_vat_included.label" => "Preise inklusive MwSt."
      "admin.settings.panel.fields.shop_vat_rate.description" => "Standard-Steuersatz in Prozent."
      "admin.settings.panel.fields.shop_vat_rate.label" => "Mehrwertsteuersatz"
      "admin.settings.panel.fields.stripe_enabled.description" => "Aktiviert die Zahlungsart Stripe im Checkout."
      "admin.settings.panel.fields.stripe_enabled.label" => "Stripe aktiv"
      "admin.settings.panel.fields.stripe_public_key.description" => "Öffentlicher Stripe-Schlüssel für Frontend und Checkout."
      "admin.settings.panel.fields.stripe_public_key.label" => "Stripe Public Key"
      "admin.settings.panel.image.preview_alt" => "Vorschau"
      "admin.settings.panel.meta_title" => "Einstellungs-Panel"
      "admin.settings.panel.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.settings.panel.notifications.invalid_csrf_retry" => "Ungültiges CSRF-Token. Bitte erneut versuchen."
      "admin.settings.panel.notifications.saved" => "Einstellungen wurden gespeichert."
      "admin.settings.panel.notifications.unknown_key" => "Unbekannter Schlüssel."
      "admin.settings.panel.page_subtitle" => "Verwalte Shop-Basisdaten, Zahlungen, Benachrichtigungen und SEO zentral."
      "admin.settings.panel.page_title" => "Einstellungs-Panel"
      "admin.settings.panel.panel_title" => "Vordefinierte Einstellungen"
      "admin.settings.panel.password.existing_hint" => "Schlüssel hinterlegt. Feld leer lassen, um den bestehenden Wert zu behalten."
      "admin.settings.panel.password.missing_hint" => "Noch nicht konfiguriert."
      "admin.settings.panel.password.placeholder_existing" => "******** (gespeichert, zum Ändern neu eingeben)"
      "admin.settings.panel.password.placeholder_new" => "Schlüssel eingeben..."
      "admin.settings.panel.payment_runtime_notice" => "Aktuell ist im Live-Checkout nur Stripe freigeschaltet. PayPal, Klarna, Vorkasse und Rechnung bleiben hier bis zur echten Implementierung reine Vorbereitungsfelder."
      "admin.settings.panel.tabs.allgemein.description" => "Shop, rechtliche Seiten und Basisdaten"
      "admin.settings.panel.tabs.allgemein.label" => "Allgemein"
      "admin.settings.panel.tabs.benachrichtigungen.description" => "Bestellmails und Newsletter-Steuerung"
      "admin.settings.panel.tabs.benachrichtigungen.label" => "Benachrichtigungen"
      "admin.settings.panel.tabs.ecommerce.description" => "Preise, Versand, Limits und Rückgaben"
      "admin.settings.panel.tabs.ecommerce.label" => "E-Commerce"
      "admin.settings.panel.tabs.security.description" => "Login-Schutz, reCAPTCHA und sensible Betriebsparameter"
      "admin.settings.panel.tabs.security.label" => "Sicherheit"
      "admin.settings.panel.tabs.seo.description" => "Meta-Titel und Meta-Beschreibungen für den Shop"
      "admin.settings.panel.tabs.seo.label" => "SEO"
      "admin.settings.panel.tabs.zahlungen.description" => "Aktivierung und Zugangsdaten der Zahlungsarten"
      "admin.settings.panel.tabs.zahlungen.label" => "Zahlungen"
      "admin.settings.panel.tooltips.setting_key" => "Schlüssel: %key%"
      "admin.shipping.common.actions.back" => "Zurück"
      "admin.shipping.common.actions.cancel" => "Abbrechen"
      "admin.shipping.common.actions.delete" => "Löschen"
      "admin.shipping.common.actions.edit" => "Bearbeiten"
      "admin.shipping.common.actions.save" => "Speichern"
      "admin.shipping.common.close" => "Schließen"
      "admin.shipping.common.delete_modal_title" => "Löschen bestätigen"
      "admin.shipping.common.form_panel_title" => "Formular"
      "admin.shipping.common.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shipping.common.nav.new" => "Neu anlegen"
      "admin.shipping.common.nav.overview" => "Übersicht"
      "admin.shipping.common.table.actions" => "Aktionen"
      "admin.shipping.common.table.carrier" => "Carrier"
      "admin.shipping.common.table.countries" => "Länder"
      "admin.shipping.common.table.date" => "Datum"
      "admin.shipping.common.table.id" => "ID"
      "admin.shipping.common.table.name" => "Name"
      "admin.shipping.common.table.price" => "Preis"
      "admin.shipping.common.table.reason" => "Grund"
      "admin.shipping.common.table.shipped_at" => "Versanddatum"
      "admin.shipping.common.table.status" => "Status"
      "admin.shipping.common.table.tracking_number" => "Trackingnummer"
      "admin.shipping.common.table.type" => "Typ"
      "admin.shipping.common.table.zone" => "Zone"
      "admin.shipping.method.fields.delivery_time" => "Lieferzeit"
      "admin.shipping.method.fields.description" => "Beschreibung"
      "admin.shipping.method.fields.name" => "Versandart"
      "admin.shipping.method.fields.price" => "Preis"
      "admin.shipping.method.fields.type" => "Typ"
      "admin.shipping.method.fields.zone" => "Versandzone"
      "admin.shipping.method.form.create_title" => "Versandart anlegen"
      "admin.shipping.method.form.edit_title" => "Versandart bearbeiten"
      "admin.shipping.method.form.subtitle" => "Pflege Versandname, Preis und Zonenzuordnung."
      "admin.shipping.method.index.create" => "Versandart anlegen"
      "admin.shipping.method.index.delete_confirm" => "Versandart "%name%" wirklich löschen?"
      "admin.shipping.method.index.panel_title" => "Versandarten Liste"
      "admin.shipping.method.index.subtitle" => "Verwalte Preise und Zonen der verfügbaren Versandmethoden."
      "admin.shipping.method.index.title" => "Versandarten"
      "admin.shipping.method.notifications.created" => "Versandart wurde angelegt."
      "admin.shipping.method.notifications.deleted" => "Versandart wurde gelöscht."
      "admin.shipping.method.notifications.updated" => "Versandart wurde gespeichert."
      "admin.shipping.method.type.pickup" => "Abholung im Geschäft"
      "admin.shipping.method.type.shipping" => "Versand"
      "admin.shipping.nav.method" => "Versandarten"
      "admin.shipping.nav.return_request" => "Retouren"
      "admin.shipping.nav.shipment" => "Sendungsverfolgung"
      "admin.shipping.nav.zone" => "Versandzonen"
      "admin.shipping.return_request.fields.reason" => "Rückgabegrund"
      "admin.shipping.return_request.fields.requested_at" => "Anfragedatum"
      "admin.shipping.return_request.fields.status" => "Status"
      "admin.shipping.return_request.form.create_title" => "Retoure anlegen"
      "admin.shipping.return_request.form.edit_title" => "Retoure bearbeiten"
      "admin.shipping.return_request.form.subtitle" => "Bearbeite Retourengrund, Status und Datum."
      "admin.shipping.return_request.index.create" => "Retoure anlegen"
      "admin.shipping.return_request.index.delete_confirm" => "Retoure #%id% wirklich löschen?"
      "admin.shipping.return_request.index.panel_title" => "Retouren Liste"
      "admin.shipping.return_request.index.subtitle" => "Behalte Gründe, Status und Bearbeitung von Retourenanfragen im Blick."
      "admin.shipping.return_request.index.title" => "Retouren"
      "admin.shipping.return_request.notifications.created" => "Rückgabeanforderung wurde angelegt."
      "admin.shipping.return_request.notifications.deleted" => "Rückgabeanforderung wurde gelöscht."
      "admin.shipping.return_request.notifications.updated" => "Rückgabeanforderung wurde gespeichert."
      "admin.shipping.shipment.fields.carrier" => "Versanddienstleister"
      "admin.shipping.shipment.fields.shipped_at" => "Versanddatum"
      "admin.shipping.shipment.fields.status" => "Status"
      "admin.shipping.shipment.fields.tracking_number" => "Trackingnummer"
      "admin.shipping.shipment.form.create_title" => "Sendung anlegen"
      "admin.shipping.shipment.form.edit_title" => "Sendung bearbeiten"
      "admin.shipping.shipment.form.subtitle" => "Verwalte Trackingnummer, Carrier und Versandstatus."
      "admin.shipping.shipment.index.create" => "Sendung anlegen"
      "admin.shipping.shipment.index.delete_confirm" => "Sendung #%id% wirklich löschen?"
      "admin.shipping.shipment.index.panel_title" => "Sendungen Liste"
      "admin.shipping.shipment.index.subtitle" => "Trackingdaten, Carrier und Status deiner Versandvorgänge zentral verwalten."
      "admin.shipping.shipment.index.title" => "Sendungen"
      "admin.shipping.shipment.notifications.created" => "Sendung wurde angelegt."
      "admin.shipping.shipment.notifications.deleted" => "Sendung wurde gelöscht."
      "admin.shipping.shipment.notifications.updated" => "Sendung wurde gespeichert."
      "admin.shipping.zone.fields.countries" => "Länder (Komma getrennt)"
      "admin.shipping.zone.fields.name" => "Versandzone"
      "admin.shipping.zone.form.create_title" => "Versandzone anlegen"
      "admin.shipping.zone.form.edit_title" => "Versandzone bearbeiten"
      "admin.shipping.zone.form.subtitle" => "Pflege Name und Länderzuordnung einer Versandzone."
      "admin.shipping.zone.index.create" => "Versandzone anlegen"
      "admin.shipping.zone.index.delete_confirm" => "Versandzone "%name%" wirklich löschen?"
      "admin.shipping.zone.index.panel_title" => "Versandzonen Liste"
      "admin.shipping.zone.index.subtitle" => "Verwalte Länderzuordnung und Struktur der Versandzonen."
      "admin.shipping.zone.index.title" => "Versandzonen"
      "admin.shipping.zone.notifications.created" => "Versandzone wurde angelegt."
      "admin.shipping.zone.notifications.deleted" => "Versandzone wurde gelöscht."
      "admin.shipping.zone.notifications.updated" => "Versandzone wurde gespeichert."
      "admin.shop_management.categories.form.create_title" => "Kategorie anlegen"
      "admin.shop_management.categories.form.edit_title" => "Kategorie bearbeiten"
      "admin.shop_management.categories.form.fields.name" => "Name"
      "admin.shop_management.categories.form.fields.parent" => "Übergeordnete Kategorie"
      "admin.shop_management.categories.form.fields.slug" => "URL-Name"
      "admin.shop_management.categories.form.tabs.main" => "Stammdaten"
      "admin.shop_management.categories.form.tabs.seo" => "SEO"
      "admin.shop_management.categories.notifications.bulk_deleted" => "%count% Kategorie(n) wurden gelöscht."
      "admin.shop_management.categories.notifications.created" => "Kategorie wurde angelegt."
      "admin.shop_management.categories.notifications.deleted_named" => "Kategorie „%name%“ wurde gelöscht."
      "admin.shop_management.categories.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shop_management.categories.notifications.no_selection" => "Keine Kategorien ausgewählt."
      "admin.shop_management.categories.notifications.updated" => "Kategorie wurde gespeichert."
      "admin.shop_management.products.form.create_title" => "Produkt anlegen"
      "admin.shop_management.products.form.edit_title" => "Produkt bearbeiten"
      "admin.shop_management.products.form.fields.active" => "Produkt veröffentlichen"
      "admin.shop_management.products.form.fields.available" => "Kaufbar / Bestellbar"
      "admin.shop_management.products.form.fields.category" => "Kategorie"
      "admin.shop_management.products.form.fields.country_of_origin" => "Herkunftsland"
      "admin.shop_management.products.form.fields.custom1" => "Freitext 1"
      "admin.shop_management.products.form.fields.custom2" => "Freitext 2"
      "admin.shop_management.products.form.fields.delivery_time" => "Lieferzeit"
      "admin.shop_management.products.form.fields.description" => "Beschreibung"
      "admin.shop_management.products.form.fields.downloads" => "Downloads"
      "admin.shop_management.products.form.fields.ean" => "EAN/GTIN/Barcode"
      "admin.shop_management.products.form.fields.height" => "Höhe (cm)"
      "admin.shop_management.products.form.fields.label" => "Label im Produktbild"
      "admin.shop_management.products.form.fields.length" => "Länge (cm)"
      "admin.shop_management.products.form.fields.manufacturer" => "Hersteller"
      "admin.shop_management.products.form.fields.material" => "Material"
      "admin.shop_management.products.form.fields.name" => "Produktname"
      "admin.shop_management.products.form.fields.pickup_available" => "Abholung im Geschäft anbieten"
      "admin.shop_management.products.form.fields.pickup_note" => "Abholhinweis"
      "admin.shop_management.products.form.fields.pickup_only" => "Nur Abholung im Geschäft"
      "admin.shop_management.products.form.fields.price" => "Preis"
      "admin.shop_management.products.form.fields.shipping_cost" => "Versandkosten"
      "admin.shop_management.products.form.fields.shipping_method" => "Versandart"
      "admin.shop_management.products.form.fields.short_description" => "Kurzbeschreibung"
      "admin.shop_management.products.form.fields.sku" => "Artikelnummer"
      "admin.shop_management.products.form.fields.slug" => "Seitenname"
      "admin.shop_management.products.form.fields.special_price" => "Sonderpreis"
      "admin.shop_management.products.form.fields.stock" => "Lagerbestand"
      "admin.shop_management.products.form.fields.tags" => "Tags/Schlagwörter (Komma-getrennt)"
      "admin.shop_management.products.form.fields.tags_placeholder" => "z.B. Sommer, Sale, Neu"
      "admin.shop_management.products.form.fields.uvp" => "UVP/Streichpreis"
      "admin.shop_management.products.form.fields.vat" => "MwSt."
      "admin.shop_management.products.form.fields.video_url" => "Video-URL"
      "admin.shop_management.products.form.fields.weight" => "Gewicht (kg)"
      "admin.shop_management.products.form.fields.width" => "Breite (cm)"
      "admin.shop_management.products.form.image_alt" => "Produktbild"
      "admin.shop_management.products.form.image_delete" => "Löschen"
      "admin.shop_management.products.form.image_delete_confirm" => "Bild wirklich löschen?"
      "admin.shop_management.products.form.images_upload_help" => "Mehrere Bilder auswählbar. Bestehende Bilder werden rechts angezeigt."
      "admin.shop_management.products.form.images_upload_label" => "Produktbilder hochladen"
      "admin.shop_management.products.form.layout.aside.actions_title" => "Aktionen"
      "admin.shop_management.products.form.layout.aside.navigation_title" => "Schnellnavigation"
      "admin.shop_management.products.form.layout.aside.summary_title" => "Überblick"
      "admin.shop_management.products.form.layout.cards.attributes" => "Material & Zusatzfelder"
      "admin.shop_management.products.form.layout.cards.dimensions" => "Maße & Gewicht"
      "admin.shop_management.products.form.layout.cards.fulfillment" => "Versand, Bestand & Status"
      "admin.shop_management.products.form.layout.cards.gallery" => "Bestehende Galerie"
      "admin.shop_management.products.form.layout.cards.identifiers" => "Identifikation"
      "admin.shop_management.products.form.layout.cards.pricing" => "Preise & Steuer"
      "admin.shop_management.products.form.layout.cards.status" => "Status & Sichtbarkeit"
      "admin.shop_management.products.form.layout.cards.uploads" => "Uploads & Einbindungen"
      "admin.shop_management.products.form.layout.descriptions.basics" => "Lege die zentralen Shop-Daten fest, die im Listing und auf der Produktseite erscheinen."
      "admin.shop_management.products.form.layout.descriptions.commerce" => "Steuere Preislogik, Bestand, Versandart und Sichtbarkeit in einem zusammenhängenden Block."
      "admin.shop_management.products.form.layout.descriptions.content" => "Pflege Kurztext und ausführliche Beschreibung getrennt für Listen- und Detailansicht."
      "admin.shop_management.products.form.layout.descriptions.import" => "Starte mit EAN, Hersteller und Wave-Import, bevor du die restlichen Produktdaten prüfst."
      "admin.shop_management.products.form.layout.descriptions.media" => "Verwalte Galerie, Uploads und Video an einer Stelle."
      "admin.shop_management.products.form.layout.descriptions.seo" => "Meta-Daten und Open-Graph-Werte für Suchmaschinen und Social Sharing."
      "admin.shop_management.products.form.layout.descriptions.specs" => "Erfasse Maße, Material und interne Zusatzfelder ohne Medien oder SEO dazwischen."
      "admin.shop_management.products.form.layout.sections.basics" => "Stammdaten"
      "admin.shop_management.products.form.layout.sections.commerce" => "Verkauf & Versand"
      "admin.shop_management.products.form.layout.sections.content" => "Inhalte"
      "admin.shop_management.products.form.layout.sections.import" => "EAN & Wave"
      "admin.shop_management.products.form.layout.sections.media" => "Medien & Dateien"
      "admin.shop_management.products.form.layout.sections.seo" => "SEO & Metadaten"
      "admin.shop_management.products.form.layout.sections.specs" => "Technische Daten"
      "admin.shop_management.products.form.layout.subtitle" => "Pflege Stammdaten, Verkauf, Medien und SEO in einer strukturierten Arbeitsansicht."
      "admin.shop_management.products.form.layout.summary.category" => "Kategorie"
      "admin.shop_management.products.form.layout.summary.ean" => "EAN"
      "admin.shop_management.products.form.layout.summary.images" => "Bilder"
      "admin.shop_management.products.form.layout.summary.images_count" => "%count% Bild(er)"
      "admin.shop_management.products.form.layout.summary.no_value" => "Noch offen"
      "admin.shop_management.products.form.layout.summary.sku" => "Artikelnummer"
      "admin.shop_management.products.form.layout.summary.uncategorized" => "Nicht zugeordnet"
      "admin.shop_management.products.form.tabs.gallery" => "Galerie"
      "admin.shop_management.products.form.tabs.inventory" => "Lagerverwaltung"
      "admin.shop_management.products.form.tabs.product" => "Produkt"
      "admin.shop_management.products.form.tabs.seo" => "SEO"
      "admin.shop_management.products.form.wave_prefill.button" => "Daten von Wave laden"
      "admin.shop_management.products.form.wave_prefill.description" => "Lädt anhand der EAN oder, wenn keine EAN eingetragen ist, anhand der Wave-Art.-Nr. aus der Beschreibungsbox Name, Hersteller, SKU, Beschreibung, Kategoriehinweis und textbasierte SEO-Daten von Wave Distribution. Der Preis bleibt unverändert, die erkannten Produktbilder können optional beim Speichern importiert werden."
      "admin.shop_management.products.form.wave_prefill.image_import_toggle" => "Produktbilder beim Speichern importieren"
      "admin.shop_management.products.form.wave_prefill.image_preview_alt" => "Wave-Produktbild Vorschau"
      "admin.shop_management.products.form.wave_prefill.image_preview_title" => "Vorgemerkte Bildvorschau"
      "admin.shop_management.products.form.wave_prefill.invalid_ean" => "Bitte eine gültige EAN oder Wave-Art.-Nr. eingeben."
      "admin.shop_management.products.form.wave_prefill.loading" => "Wave-Daten werden geladen ..."
      "admin.shop_management.products.form.wave_prefill.not_found" => "Zum Suchwert %ean% wurde bei Wave kein passender Artikel gefunden."
      "admin.shop_management.products.form.wave_prefill.note_category_matched" => "Lokale Kategorie erkannt: %category%."
      "admin.shop_management.products.form.wave_prefill.note_category_unmatched" => "Keine lokale Kategorie für "%category%" gefunden. Bitte manuell zuordnen."
      "admin.shop_management.products.form.wave_prefill.note_image_missing" => "Für diesen Artikel wurde kein importierbares Produktbild gefunden."
      "admin.shop_management.products.form.wave_prefill.note_images_ready" => "%count% Produktbild(er) erkannt und werden beim Speichern importiert, solange die Option aktiv bleibt."
      "admin.shop_management.products.form.wave_prefill.note_price_missing" => "Es wurde kein öffentlicher Preis gefunden. Der bestehende Preis bleibt unverändert."
      "admin.shop_management.products.form.wave_prefill.server_error" => "Die Wave-Abfrage ist fehlgeschlagen. Bitte später erneut versuchen."
      "admin.shop_management.products.form.wave_prefill.source_link" => "Quelle bei Wave öffnen"
      "admin.shop_management.products.form.wave_prefill.success" => "Wave-Daten für "%name%" wurden übernommen."
      "admin.shop_management.products.form.wave_prefill.title" => "Wave-Vorbefüllung per EAN oder Wave-Art.-Nr."
      "admin.shop_management.products.list.actions.activate" => "Produkt aktivieren"
      "admin.shop_management.products.list.actions.deactivate" => "Produkt deaktivieren"
      "admin.shop_management.products.list.blocked_count" => "%count% bestellgeschützt"
      "admin.shop_management.products.list.bulk_delete" => "Ausgewählte löschen"
      "admin.shop_management.products.list.bulk_delete_confirm" => "Ausgewählte Produkte wirklich löschen? Diese Aktion ist nicht rückgängig zu machen."
      "admin.shop_management.products.list.bulk_hint" => "Diese Aktion löscht die ausgewählten Produkte dauerhaft."
      "admin.shop_management.products.list.bulk_selected" => "%count% ausgewählt"
      "admin.shop_management.products.list.columns.actions" => "Aktionen"
      "admin.shop_management.products.list.columns.active" => "Sichtbar"
      "admin.shop_management.products.list.columns.available" => "Verfügbar"
      "admin.shop_management.products.list.columns.category" => "Kategorie"
      "admin.shop_management.products.list.columns.meta_title" => "Meta Title"
      "admin.shop_management.products.list.columns.name" => "Name"
      "admin.shop_management.products.list.columns.price" => "Preis"
      "admin.shop_management.products.list.columns.quantity" => "Menge"
      "admin.shop_management.products.list.columns.shipping" => "Versand"
      "admin.shop_management.products.list.create" => "Neues Produkt"
      "admin.shop_management.products.list.deletable_count" => "%count% löschbar"
      "admin.shop_management.products.list.delete_all_deletable" => "Alle löschbaren löschen (%count%)"
      "admin.shop_management.products.list.delete_all_deletable_confirm" => "Wirklich alle %count% löschbaren Produkte löschen? %blocked% bestellgeschützte Produkte bleiben erhalten. Diese Aktion ist nicht rückgängig zu machen."
      "admin.shop_management.products.list.delete_message" => "Produkt "%name%" wirklich löschen?"
      "admin.shop_management.products.list.panel_title" => "Produktliste"
      "admin.shop_management.products.list.subtitle" => "Verwalte Sortiment, Preise, Verfügbarkeit und Metadaten zentral."
      "admin.shop_management.products.list.title" => "Produkte"
      "admin.shop_management.products.list.total_count" => "%count% gesamt"
      "admin.shop_management.products.list.values.active" => "Aktiv"
      "admin.shop_management.products.list.values.inactive" => "Inaktiv"
      "admin.shop_management.products.list.values.no" => "Nein"
      "admin.shop_management.products.list.values.pickup_available" => "Abholung möglich"
      "admin.shop_management.products.list.values.pickup_only" => "Nur Abholung"
      "admin.shop_management.products.list.values.yes" => "Ja"
      "admin.shop_management.products.notifications.activated" => "Produkt "%name%" wurde aktiviert."
      "admin.shop_management.products.notifications.all_blocked" => "Die ausgewählten Produkte sind in Bestellungen enthalten und können nicht gelöscht werden."
      "admin.shop_management.products.notifications.bulk_blocked" => "%count% Produkt(e) wurden übersprungen, da sie in Bestellungen enthalten sind."
      "admin.shop_management.products.notifications.bulk_deleted" => "%count% Produkt(e) wurden gelöscht."
      "admin.shop_management.products.notifications.created" => "Produkt wurde angelegt."
      "admin.shop_management.products.notifications.deactivated" => "Produkt "%name%" wurde deaktiviert."
      "admin.shop_management.products.notifications.delete_all_deletable" => "%count% löschbare Produkt(e) wurden gelöscht."
      "admin.shop_management.products.notifications.delete_blocked" => "Dieses Produkt ist in Bestellungen enthalten und kann nicht gelöscht werden."
      "admin.shop_management.products.notifications.deleted" => "Produkt wurde gelöscht."
      "admin.shop_management.products.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shop_management.products.notifications.name_already_exists" => "Ein Produkt mit dem Namen "%name%" existiert bereits. Bitte einen anderen Namen wählen."
      "admin.shop_management.products.notifications.no_deletable_products" => "Es gibt aktuell keine löschbaren Produkte. Alle vorhandenen Produkte sind in Bestellungen referenziert."
      "admin.shop_management.products.notifications.no_products" => "Es sind keine Produkte vorhanden."
      "admin.shop_management.products.notifications.no_selection" => "Keine Produkte ausgewählt."
      "admin.shop_management.products.notifications.not_found" => "Produkt nicht gefunden."
      "admin.shop_management.products.notifications.updated" => "Produkt wurde gespeichert."
      "admin.shop_management.products.notifications.wave_image_import_failed" => "Mindestens ein Wave-Produktbild konnte nicht importiert werden. Das Produkt wurde nur mit den erfolgreich geladenen Bildern gespeichert."
      "admin.shop_users.form.actions.back" => "Zurück"
      "admin.shop_users.form.actions.cancel" => "Abbrechen"
      "admin.shop_users.form.actions.help" => "Hilfe"
      "admin.shop_users.form.actions.save" => "Speichern"
      "admin.shop_users.form.hints.access" => "Shop-Logins erhalten automatisch die Basisrolle ROLE_SHOP_USER. B2B-Freigaben und Preislogik werden über den verknüpften Kunden und dessen Kundengruppe gesteuert."
      "admin.shop_users.form.hints.customer" => "Wenn ein Kunde ausgewählt wird, verknüpft das System den Login mit dem Kundendatensatz. Bereits vergebene Verknüpfungen werden markiert."
      "admin.shop_users.form.hints.customer_group" => "Die Kundengruppe wird dem verknüpften Shop-Kunden zugewiesen und steuert B2B-Preisfreigaben sowie Rabatte."
      "admin.shop_users.form.hints.no_groups" => "Noch keine Kundengruppen vorhanden."
      "admin.shop_users.form.hints.password" => "Mindestens 8 Zeichen."
      "admin.shop_users.form.labels.customer" => "Shop-Kunde (Customer-Datensatz)"
      "admin.shop_users.form.labels.customer_group" => "Kundengruppe"
      "admin.shop_users.form.labels.email" => "E-Mail-Adresse"
      "admin.shop_users.form.labels.enabled" => "Konto aktiv (Benutzer kann sich einloggen)"
      "admin.shop_users.form.labels.password_edit" => "Neues Passwort"
      "admin.shop_users.form.labels.password_new" => "Passwort"
      "admin.shop_users.form.labels.password_unchanged" => "(leer lassen = unverändert)"
      "admin.shop_users.form.links.create_group" => "Jetzt anlegen"
      "admin.shop_users.form.meta_title_edit" => "Shop-Benutzer bearbeiten"
      "admin.shop_users.form.meta_title_new" => "Shop-Benutzer anlegen"
      "admin.shop_users.form.page_subtitle" => "Login-Konto, Kunden-Verknüpfung und Kundengruppe pflegen."
      "admin.shop_users.form.page_title_edit" => "Shop-Benutzer bearbeiten"
      "admin.shop_users.form.page_title_new" => "Shop-Benutzer anlegen"
      "admin.shop_users.form.placeholders.already_assigned" => "[bereits vergeben]"
      "admin.shop_users.form.placeholders.email" => "kunde@beispiel.de"
      "admin.shop_users.form.placeholders.no_customer" => "— kein Kunde verknüpft —"
      "admin.shop_users.form.placeholders.no_group" => "— keine Gruppe —"
      "admin.shop_users.form.placeholders.password_edit" => "Neues Passwort eingeben..."
      "admin.shop_users.form.placeholders.password_new" => "Mindestens 8 Zeichen"
      "admin.shop_users.form.sections.access" => "Rollen & Berechtigungen"
      "admin.shop_users.form.sections.customer" => "Verknüpfter Shop-Kunde"
      "admin.shop_users.form.sections.customer_group" => "B2B-Kundengruppe"
      "admin.shop_users.form.sections.login" => "Login-Daten"
      "admin.shop_users.form.values.discount_percent" => "(%discount%% Rabatt)"
      "admin.shop_users.help_index.card_subtitle" => "Login-Konten, Kunden-Verknüpfungen und Kundengruppen"
      "admin.shop_users.help_index.card_title" => "Shop-Benutzer"
      "admin.shop_users.help_index.table_description" => "Shop-Logins und verknüpfte Kundendatensätze verwalten"
      "admin.shop_users.help_index.table_label" => "Shop-Benutzer"
      "admin.shop_users.help.access.intro" => "Das Formular pflegt aktuell keine separaten Shop-Rollen. Jeder Shop-Benutzer erhält automatisch ROLE_SHOP_USER als Basiszugang."
      "admin.shop_users.help.access.points.one" => "Direkte Admin-Rollen gehören nie in ein Shop-Konto."
      "admin.shop_users.help.access.points.three" => "Die Anzeige „Basiszugang“ in der Liste bedeutet: keine zusätzlichen direkten Rollen gesetzt."
      "admin.shop_users.help.access.points.two" => "B2B-Freigaben und Preisregeln werden über den verknüpften Customer und dessen Kundengruppe gesteuert."
      "admin.shop_users.help.access.title" => "Rollenmodell im Frontend"
      "admin.shop_users.help.actions.back" => "Zurück"
      "admin.shop_users.help.actions.module" => "Zum Modul"
      "admin.shop_users.help.create.steps.five" => "Optional einen bestehenden Customer-Datensatz verknüpfen."
      "admin.shop_users.help.create.steps.four" => "Das Konto bei Bedarf aktivieren oder gesperrt anlegen."
      "admin.shop_users.help.create.steps.one" => "Im Modul Shop-Benutzer auf „Neu anlegen“ klicken."
      "admin.shop_users.help.create.steps.seven" => "Speichern. Das Passwort wird sicher gehasht abgelegt."
      "admin.shop_users.help.create.steps.six" => "Optional eine Kundengruppe für B2B-Preislogik zuweisen."
      "admin.shop_users.help.create.steps.three" => "Ein Passwort mit mindestens 8 Zeichen vergeben."
      "admin.shop_users.help.create.steps.two" => "Eine eindeutige E-Mail-Adresse als Login eintragen."
      "admin.shop_users.help.create.title" => "Shop-Benutzer anlegen"
      "admin.shop_users.help.fields.rows.created_at" => "Erstellungsdatum des Kontos"
      "admin.shop_users.help.fields.rows.customer_group" => "Kundengruppe am verknüpften Customer-Datensatz"
      "admin.shop_users.help.fields.rows.customer_link" => "Verknüpfung über Customer.shopUser"
      "admin.shop_users.help.fields.rows.email" => "E-Mail-Adresse als Login-Name"
      "admin.shop_users.help.fields.rows.enabled" => "Steuert, ob sich der Benutzer anmelden darf"
      "admin.shop_users.help.fields.rows.password" => "Gehashtes Passwort des Shop-Kontos"
      "admin.shop_users.help.fields.rows.roles" => "Optionale direkte Frontend-Rollen; ROLE_SHOP_USER wird automatisch ergänzt"
      "admin.shop_users.help.fields.table.description" => "Beschreibung"
      "admin.shop_users.help.fields.table.field" => "Feld"
      "admin.shop_users.help.fields.table.type" => "Typ"
      "admin.shop_users.help.fields.title" => "Feldreferenz: ShopUser und Customer-Verknüpfung"
      "admin.shop_users.help.fields.types.boolean" => "Boolean"
      "admin.shop_users.help.fields.types.datetime" => "Datum / Zeit"
      "admin.shop_users.help.fields.types.hashed_text" => "Text (Hash)"
      "admin.shop_users.help.fields.types.json_array" => "JSON-Array"
      "admin.shop_users.help.fields.types.relation" => "Relation"
      "admin.shop_users.help.fields.types.unique_text" => "Text (eindeutig)"
      "admin.shop_users.help.link.intro" => "Ein Shop-Benutzer kann mit einem bestehenden Customer-Datensatz verknüpft werden. Darüber laufen Bestellhistorie, Adressen und Kundengruppe."
      "admin.shop_users.help.link.points.one" => "customer_id verknüpft den Login mit einem vorhandenen Customer-Datensatz."
      "admin.shop_users.help.link.points.three" => "Bereits verknüpfte Kunden sind im Auswahlfeld markiert."
      "admin.shop_users.help.link.points.two" => "customer_group_id wird am verknüpften Customer gepflegt, nicht direkt am ShopUser."
      "admin.shop_users.help.link.title" => "Kunde verknüpfen"
      "admin.shop_users.help.navigation.access" => "Rollenmodell"
      "admin.shop_users.help.navigation.create" => "Benutzer anlegen"
      "admin.shop_users.help.navigation.fields" => "Feldreferenz"
      "admin.shop_users.help.navigation.link" => "Kunde verknüpfen"
      "admin.shop_users.help.navigation.overview" => "Überblick"
      "admin.shop_users.help.navigation.password" => "Passwort ändern"
      "admin.shop_users.help.navigation.separation" => "Backend vs. Frontend"
      "admin.shop_users.help.navigation.title" => "Navigation"
      "admin.shop_users.help.overview.intro" => "Das Modul verwaltet Frontend-Shop-Benutzer für den Kundenlogin. Diese Konten sind strikt von Admin-Benutzern getrennt."
      "admin.shop_users.help.overview.permissions_title" => "Berechtigung:"
      "admin.shop_users.help.overview.separation_text" => "Shop-Benutzer und Admin-Benutzer sind zwei vollständig getrennte Entitäten. Ein Shop-Benutzer erhält keinen Admin-Zugriff."
      "admin.shop_users.help.overview.separation_title" => "Wichtige Trennung:"
      "admin.shop_users.help.overview.title" => "Shop-Benutzer: Überblick"
      "admin.shop_users.help.page_title" => "Hilfe: Shop-Benutzer"
      "admin.shop_users.help.password.points.one" => "Im Bearbeitungsformular ein neues Passwort eintragen und speichern."
      "admin.shop_users.help.password.points.three" => "Das gespeicherte Passwort ist nur als sicherer Hash vorhanden und nicht im Klartext einsehbar."
      "admin.shop_users.help.password.points.two" => "Ein leeres Passwortfeld lässt das bestehende Passwort unverändert."
      "admin.shop_users.help.password.title" => "Passwort ändern"
      "admin.shop_users.help.separation.admin.entity" => "Entity: User"
      "admin.shop_users.help.separation.admin.purpose" => "Für Admin-Bereich und Backoffice-Funktionen"
      "admin.shop_users.help.separation.admin.roles" => "Rollen: ROLE_ADMIN_*"
      "admin.shop_users.help.separation.admin.title" => "Admin-Benutzer"
      "admin.shop_users.help.separation.shop.entity" => "Entity: ShopUser"
      "admin.shop_users.help.separation.shop.purpose" => "Für Frontend-Login und Kundenfunktionen"
      "admin.shop_users.help.separation.shop.roles" => "Basisrolle: ROLE_SHOP_USER"
      "admin.shop_users.help.separation.shop.title" => "Shop-Benutzer"
      "admin.shop_users.help.separation.title" => "Backend vs. Frontend – Strikte Trennung"
      "admin.shop_users.index.actions.delete" => "Löschen"
      "admin.shop_users.index.actions.edit" => "Bearbeiten"
      "admin.shop_users.index.actions.help" => "Hilfe"
      "admin.shop_users.index.actions.new" => "Shop-Benutzer anlegen"
      "admin.shop_users.index.delete_confirm" => "Shop-Benutzer "%email%" wirklich löschen?"
      "admin.shop_users.index.headers.actions" => "Aktionen"
      "admin.shop_users.index.headers.active" => "Aktiv"
      "admin.shop_users.index.headers.created" => "Erstellt"
      "admin.shop_users.index.headers.customer" => "Verknüpfter Kunde"
      "admin.shop_users.index.headers.customer_group" => "Kundengruppe (B2B)"
      "admin.shop_users.index.headers.email" => "E-Mail"
      "admin.shop_users.index.headers.id" => "ID"
      "admin.shop_users.index.headers.roles" => "Rollen"
      "admin.shop_users.index.list_count" => "%count% Einträge"
      "admin.shop_users.index.list_title" => "Shop-Benutzerliste"
      "admin.shop_users.index.meta_title" => "Shop-Benutzer"
      "admin.shop_users.index.page_subtitle" => "Login-Konten für den Shop-Frontend-Bereich verwalten und Kundengruppen zuweisen."
      "admin.shop_users.index.page_title" => "Shop-Benutzer"
      "admin.shop_users.index.values.active" => "Aktiv"
      "admin.shop_users.index.values.base_access" => "Basiszugang"
      "admin.shop_users.index.values.blocked" => "Gesperrt"
      "admin.shop_users.index.values.empty" => "Keine Shop-Benutzer vorhanden."
      "admin.shop_users.index.values.none" => ""
      "admin.shop_users.nav.menu" => "Shop-Benutzer"
      "admin.shop_users.nav.new" => "Neu anlegen"
      "admin.shop_users.nav.overview" => "Übersicht"
      "admin.shop_users.notifications.created" => "Shop-Benutzer wurde angelegt."
      "admin.shop_users.notifications.deleted" => "Shop-Benutzer wurde gelöscht."
      "admin.shop_users.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.shop_users.notifications.updated" => "Shop-Benutzer wurde gespeichert."
      "admin.shop_users.validation.email_taken" => "Diese E-Mail-Adresse ist bereits vergeben."
      "admin.shop_users.validation.invalid_email" => "Bitte eine gültige E-Mail-Adresse angeben."
      "admin.shop_users.validation.new_password_too_short" => "Das neue Passwort muss mindestens 8 Zeichen lang sein."
      "admin.shop_users.validation.password_too_short" => "Das Passwort muss mindestens 8 Zeichen lang sein."
      "admin.slider.form.actions.back" => "Zur Übersicht"
      "admin.slider.form.actions.cancel" => "Abbrechen"
      "admin.slider.form.actions.help" => "CMS-Hilfe"
      "admin.slider.form.actions.save" => "Speichern"
      "admin.slider.form.fields.background_color" => "Hintergrundfarbe"
      "admin.slider.form.fields.button_text" => "Button-Text"
      "admin.slider.form.fields.button_url" => "Button-URL"
      "admin.slider.form.fields.headline" => "Überschrift"
      "admin.slider.form.fields.image" => "Bild"
      "admin.slider.form.fields.text" => "Text"
      "admin.slider.form.fields.type" => "Slider-Typ"
      "admin.slider.form.help.background_color" => "Wird genutzt, wenn kein Bild vorhanden ist oder als Grundton unter dem Bild."
      "admin.slider.form.help.button_url" => "Absolute URLs und interne Pfade wie /shop oder /kontakt sind erlaubt."
      "admin.slider.form.help.image" => "Empfohlen: breite Hero-Grafik im Format JPG oder PNG."
      "admin.slider.form.hints.background_color" => "Diese Farbe wird im Slider als Grundton genutzt."
      "admin.slider.form.hints.best_practice_cta" => "CTA-Buttons nur setzen, wenn wirklich ein Ziel verlinkt werden soll."
      "admin.slider.form.hints.best_practice_headline" => "Kurze Headlines funktionieren im Slider deutlich besser."
      "admin.slider.form.hints.best_practice_image" => "Breite Bilder mit ruhigem Fokus wirken im Hero-Bereich am saubersten."
      "admin.slider.form.hints.live_update" => "Änderungen werden direkt im ausgewählten Slider-Typ sichtbar."
      "admin.slider.form.hints.no_image" => "Noch kein Sliderbild vorhanden."
      "admin.slider.form.meta_title_edit" => "Slider-Inhalt bearbeiten"
      "admin.slider.form.meta_title_new" => "Slider-Inhalt anlegen"
      "admin.slider.form.page_subtitle" => "Pflege Bild, Text und Button für einen Frontend-Slider in einem strukturierten Formular."
      "admin.slider.form.page_title_edit" => "Slider-Inhalt bearbeiten"
      "admin.slider.form.page_title_new" => "Slider-Inhalt anlegen"
      "admin.slider.form.placeholders.button_text" => "Jetzt entdecken"
      "admin.slider.form.placeholders.button_url" => "/shop"
      "admin.slider.form.placeholders.headline" => "z. B. Frühbucher-Angebote 2026"
      "admin.slider.form.placeholders.text" => "Kurzer Begleittext für den Slider."
      "admin.slider.form.sections.best_practices" => "Best Practices"
      "admin.slider.form.sections.content_data" => "Inhaltsdaten"
      "admin.slider.form.sections.current_image" => "Aktuelles Bild"
      "admin.slider.form.sections.preview_notes" => "Vorschau & Hinweise"
      "admin.slider.list.actions.delete" => "Löschen"
      "admin.slider.list.actions.edit" => "Bearbeiten"
      "admin.slider.list.actions.help" => "CMS-Hilfe"
      "admin.slider.list.actions.new" => "Neuen Slider anlegen"
      "admin.slider.list.active_homepage" => "Aktive Startseiten-Konfiguration: %type%."
      "admin.slider.list.delete_confirm" => "Slider "%name%" wirklich löschen?"
      "admin.slider.list.empty_section" => "Für %type% existieren aktuell keine Inhalte."
      "admin.slider.list.headers.actions" => "Aktionen"
      "admin.slider.list.headers.color" => "Farbe"
      "admin.slider.list.headers.content" => "Inhalt"
      "admin.slider.list.headers.cta" => "CTA"
      "admin.slider.list.headers.preview" => "Vorschau"
      "admin.slider.list.meta_title" => "Slider-Verwaltung"
      "admin.slider.list.page_subtitle" => "Pflege Headlines, Bilder und CTA-Links für alle drei Frontend-Slider an einem Ort."
      "admin.slider.list.page_title" => "Slider-Verwaltung"
      "admin.slider.list.section_count" => "%count% Einträge"
      "admin.slider.list.stats.active_entries" => "Aktive Einträge"
      "admin.slider.list.stats.total_badge" => "Alle Slider"
      "admin.slider.list.stats.total_label" => "Gesamt"
      "admin.slider.list.values.cta_without_text" => "CTA ohne Text"
      "admin.slider.list.values.no_cta" => "Kein CTA definiert"
      "admin.slider.list.values.no_headline" => "Ohne Überschrift"
      "admin.slider.list.values.no_image" => "Kein Bild hinterlegt"
      "admin.slider.list.values.no_text" => "Kein Begleittext hinterlegt."
      "admin.slider.list.values.no_url" => "Keine URL hinterlegt"
      "admin.slider.notifications.created" => "Slider-Inhalt wurde angelegt."
      "admin.slider.notifications.deleted" => "Slider-Inhalt wurde gelöscht."
      "admin.slider.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.slider.notifications.updated" => "Slider-Inhalt wurde gespeichert."
      "admin.slider.notifications.warning_edit" => "Hinweis: Die Startseite nutzt aktuell %active%. Dieser Eintrag liegt in %target%."
      "admin.slider.notifications.warning_new" => "Hinweis: Die Startseite nutzt aktuell %active%. Dieser neue Eintrag wurde unter %target% gespeichert."
      "admin.slider.types.slider1" => "Slider 1"
      "admin.slider.types.slider2" => "Slider 2"
      "admin.slider.types.slider3" => "Slider 3"
      "admin.support.form.create_title" => "Support-Ticket anlegen"
      "admin.support.form.edit_title" => "Support-Ticket bearbeiten"
      "admin.support.form.fields.created_at" => "Erstellt am"
      "admin.support.form.fields.message" => "Nachricht"
      "admin.support.form.fields.status" => "Status"
      "admin.support.form.fields.subject" => "Betreff"
      "admin.support.form.panel_title" => "Formular"
      "admin.support.form.subtitle" => "Steuere Betreff, Nachricht und Ticketstatus im Service-Team."
      "admin.support.list.columns.actions" => "Aktionen"
      "admin.support.list.columns.created_at" => "Erstellt am"
      "admin.support.list.columns.id" => "ID"
      "admin.support.list.columns.status" => "Status"
      "admin.support.list.columns.subject" => "Betreff"
      "admin.support.list.create" => "Ticket anlegen"
      "admin.support.list.delete_message" => "Support-Ticket "%subject%" wirklich löschen?"
      "admin.support.list.empty" => "Keine Support-Tickets vorhanden."
      "admin.support.list.panel_title" => "Ticketliste"
      "admin.support.list.subtitle" => "Verwalte Kundenanfragen inklusive Status und Bearbeitungsstand."
      "admin.support.list.title" => "Support-Tickets"
      "admin.support.notifications.created" => "Support-Ticket wurde angelegt."
      "admin.support.notifications.deleted" => "Support-Ticket wurde gelöscht."
      "admin.support.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.support.notifications.updated" => "Support-Ticket wurde gespeichert."
      "admin.support.statuses.closed" => "Geschlossen"
      "admin.support.statuses.in_progress" => "In Bearbeitung"
      "admin.support.statuses.open" => "Offen"
      "admin.theme.activation_dialog.blocked" => "Aktivierung blockiert: Mindestens ein harter Check ist offen."
      "admin.theme.activation_dialog.checklist_title" => "Nachvollziehbare Checkliste"
      "admin.theme.activation_dialog.confirm_blocked" => "Aktivierung blockiert"
      "admin.theme.activation_dialog.confirm_ready" => "Aktivieren"
      "admin.theme.activation_dialog.fetch_error" => "Die Aktivierungscheckliste konnte nicht geladen werden. Bitte Seite neu laden und erneut versuchen."
      "admin.theme.activation_dialog.items.critical_assets" => "Kritische Assets lokal vorhanden"
      "admin.theme.activation_dialog.items.duplicate_targets" => "Keine doppelten Mapping-Ziele"
      "admin.theme.activation_dialog.items.external_resources" => "Keine externen Ressourcen ohne lokale Kopie"
      "admin.theme.activation_dialog.items.invalid_mappings" => "Mapping-Ziele sind gültig"
      "admin.theme.activation_dialog.items.javascript" => "JavaScript-Fehlerbudget eingehalten"
      "admin.theme.activation_dialog.items.performance" => "Performance-Budget eingehalten"
      "admin.theme.activation_dialog.items.preview_entry" => "Preview-Einstiegsdatei vorhanden"
      "admin.theme.activation_dialog.items.rendering" => "Theme-Dateien renderbar"
      "admin.theme.activation_dialog.items.required_slots" => "Pflicht-Slots vollständig gemappt"
      "admin.theme.activation_dialog.loading" => "Aktivierungscheck wird geladen..."
      "admin.theme.activation_dialog.no_soft_warnings" => "Keine Soft-Blocker oder Hinweise vorhanden."
      "admin.theme.activation_dialog.preview_entry_missing" => "Keine darstellbare Preview-Einstiegsdatei vorhanden."
      "admin.theme.activation_dialog.ready" => "Alle harten Prüfungen sind grün. Diese Version kann aktiviert werden."
      "admin.theme.activation_dialog.rollback_point" => "Expliziter Rollback-Punkt"
      "admin.theme.activation_dialog.rollback_project" => "Projekt-Theme"
      "admin.theme.activation_dialog.rollback_project_description" => "Vor der Aktivierung ist kein Import-Theme aktiv. Ein Rollback stellt das feste Projekt-Theme wieder her."
      "admin.theme.activation_dialog.rollback_same" => "Diese Version ist bereits aktiv"
      "admin.theme.activation_dialog.rollback_same_description" => "Es wird kein neuer Rollback-Punkt benötigt."
      "admin.theme.activation_dialog.rollback_theme" => "Aktive Import-Version"
      "admin.theme.activation_dialog.soft_blockers_title" => "Soft-Blocker und Hinweise"
      "admin.theme.activation_dialog.soft_warning_label" => "Nicht blockierend, aber vor Live-Schaltung prüfen:"
      "admin.theme.audit.activation_actions.activated" => "Aktiviert"
      "admin.theme.audit.activation_actions.replaced" => "Ersetzt"
      "admin.theme.audit.activation_actions.rollback" => "Rollback"
      "admin.theme.audit.activation_headers.action" => "Ereignis"
      "admin.theme.audit.activation_headers.actor" => "Benutzer"
      "admin.theme.audit.activation_headers.previous" => "Vorherige Version"
      "admin.theme.audit.activation_headers.rollback_of" => "Rollback von"
      "admin.theme.audit.activation_headers.time" => "Zeitpunkt"
      "admin.theme.audit.activation_headers.version" => "Aktivierte Version"
      "admin.theme.audit.activations_empty" => "Für diese Version sind keine Aktivierungsereignisse protokolliert."
      "admin.theme.audit.activations_title" => "Aktivierungshistorie"
      "admin.theme.audit.change_labels.added" => "Neu"
      "admin.theme.audit.change_labels.after" => "Nachher:"
      "admin.theme.audit.change_labels.before" => "Vorher:"
      "admin.theme.audit.change_labels.changed" => "Geändert"
      "admin.theme.audit.change_labels.removed" => "Entfernt"
      "admin.theme.audit.changed_short" => "geändert"
      "admin.theme.audit.context" => "Theme: %theme% | Version: %version%"
      "admin.theme.audit.created_at" => "Erstellt am:"
      "admin.theme.audit.delta_context" => "Vergleich von Version %current% gegen die vorherige Version %baseline%."
      "admin.theme.audit.delta_sections.assets" => "Assets"
      "admin.theme.audit.delta_sections.mappings" => "Mappings"
      "admin.theme.audit.delta_sections.slots" => "Slots"
      "admin.theme.audit.delta_sections.templates" => "Templates"
      "admin.theme.audit.delta_title" => "Delta zwischen Versionen"
      "admin.theme.audit.heading" => "Theme-Audit"
      "admin.theme.audit.import_headers.details" => "Details"
      "admin.theme.audit.import_headers.duration" => "Dauer"
      "admin.theme.audit.import_headers.finished" => "Ende"
      "admin.theme.audit.import_headers.source" => "Quelle"
      "admin.theme.audit.import_headers.started" => "Start"
      "admin.theme.audit.import_headers.status" => "Status"
      "admin.theme.audit.imports_empty" => "Für diese Version sind keine Import-Jobs protokolliert."
      "admin.theme.audit.imports_title" => "Importhistorie"
      "admin.theme.audit.manifest_title" => "Manifest-Zusammenfassung"
      "admin.theme.audit.mapping" => "Mapping"
      "admin.theme.audit.metric_baseline" => "Vorher: %value%"
      "admin.theme.audit.metrics.assetBytes" => "Asset-Größe"
      "admin.theme.audit.metrics.assetTotal" => "Assets"
      "admin.theme.audit.metrics.criticalBytes" => "Kritische Asset-Größe"
      "admin.theme.audit.metrics.cssBytes" => "CSS-Größe"
      "admin.theme.audit.metrics.jsBytes" => "JS-Größe"
      "admin.theme.audit.metrics.mappingCount" => "Mappings"
      "admin.theme.audit.metrics.slotCount" => "Slots"
      "admin.theme.audit.metrics.templateCount" => "Templates"
      "admin.theme.audit.metrics.validMappingCount" => "Gültige Mappings"
      "admin.theme.audit.no_baseline" => "Für diese Version existiert noch keine ältere Version desselben Themes. Der Delta-Vergleich wird angezeigt, sobald mindestens zwei Versionen vorhanden sind."
      "admin.theme.audit.no_baseline_short" => "kein Vergleich"
      "admin.theme.audit.no_section_changes" => "Keine Änderungen in diesem Bereich."
      "admin.theme.audit.page_title" => "Theme-Audit"
      "admin.theme.audit.preview" => "Preview"
      "admin.theme.audit.raw_payload" => "Quellparameter"
      "admin.theme.audit.seconds" => "%seconds% s"
      "admin.theme.audit.stats.activations" => "Audit-Ereignisse"
      "admin.theme.audit.stats.baseline" => "Vergleichsversion"
      "admin.theme.audit.stats.imports" => "Import-Jobs"
      "admin.theme.audit.stats.version" => "Version"
      "admin.theme.audit.updated_at" => "Aktualisiert am:"
      "admin.theme.audit.version_stack_title" => "Versionen dieses Themes"
      "admin.theme.audit.version_title" => "Versionskontext"
      "admin.theme.common.audit" => "Audit"
      "admin.theme.common.back_overview" => "Zur Übersicht"
      "admin.theme.common.cancel" => "Abbrechen"
      "admin.theme.common.display_name" => "Theme-Name"
      "admin.theme.common.help" => "Hilfe"
      "admin.theme.common.html_import" => "HTML-ZIP"
      "admin.theme.common.import_inputs" => "Import-Eingaben"
      "admin.theme.common.import_wizard" => "Import Wizard"
      "admin.theme.common.live_import" => "Live-Abbild"
      "admin.theme.common.upload_limit_hint" => "Aktuelles Server-Upload-Limit: %limit%. Bei HTTP 413 muss zusätzlich das Webserver-Limit (z. B. Nginx client_max_body_size) erhöht werden."
      "admin.theme.common.wordpress_import" => "WordPress-ZIP"
      "admin.theme.controller.access.activate" => "Theme-Aktivierung ist nicht erlaubt."
      "admin.theme.controller.access.activation_checklist" => "Theme-Aktivierungscheck ist nicht erlaubt."
      "admin.theme.controller.access.deactivate" => "Theme-Deaktivierung ist nicht erlaubt."
      "admin.theme.controller.access.delete" => "Theme-Löschung ist nicht erlaubt."
      "admin.theme.controller.access.list" => "Theme-Liste ist nicht erlaubt."
      "admin.theme.controller.access.rollback" => "Theme-Rollback ist nicht erlaubt."
      "admin.theme.controller.csrf_invalid" => "Die Aktion wurde aus Sicherheitsgründen abgebrochen (ungültiger Token)."
      "admin.theme.controller.delete_active_warning" => "Aktive Themes können nicht gelöscht werden. Bitte zuerst das Projekt-Theme wiederherstellen."
      "admin.theme.controller.delete_failed" => "Theme konnte nicht gelöscht werden: %error%"
      "admin.theme.controller.delete_success" => "Theme "%theme%" wurde gelöscht. Entfernte Import-Pfade: %paths%."
      "admin.theme.controller.validation.duplicate_targets" => "Doppelte Ziele"
      "admin.theme.controller.validation.hard_errors" => "Hard-Checks"
      "admin.theme.controller.validation.invalid_mappings" => "Ungültige Mappings"
      "admin.theme.controller.validation.missing_critical_assets" => "Fehlende kritische Assets"
      "admin.theme.controller.validation.missing_required_slots" => "Fehlende Slots"
      "admin.theme.controller.validation.render_errors" => "Render-Fehler"
      "admin.theme.help_index.card_description" => "Frontend-Design, Versionierung und Aktivierung"
      "admin.theme.help_index.card_title" => "Theme-Modul"
      "admin.theme.help_index.table_description" => "Frontend-Theme-Registry, HTML-/Live-/WordPress-Import, Slot-Mapping, Preview und Aktivierung mit Audit."
      "admin.theme.help_index.table_label" => "Theme-Modul"
      "admin.theme.help.implemented_title" => "Was ist bereits umgesetzt?"
      "admin.theme.help.implemented.activation" => "Aktivierung mit Sicherheitsprüfung für Pflicht-Slot-Mappings."
      "admin.theme.help.implemented.activation_dialog" => "Aktivierungsdialog mit serverseitig geladener Checkliste, harten Blockern, Soft-Hinweisen, explizitem Rollback-Punkt und deaktiviertem Bestätigungsbutton bei offenen Hard-Checks."
      "admin.theme.help.implemented.asset_pipeline" => "Asset-Manifest mit lokaler Auslieferung aktiver Theme-Dateien über eine geschützte Theme-Asset-Route."
      "admin.theme.help.implemented.audit" => "Eigene Audit-Detailseite je Theme-Version mit Importhistorie, Aktivierungshistorie und Delta-Vergleich zur vorherigen Version."
      "admin.theme.help.implemented.builder_materialization" => "Live-Import materialisiert Hauptinhalte in native CMS-Bausteine: SliderContent, Widgets, Page-Builder-Abschnitte und editierbare Content-Blöcke."
      "admin.theme.help.implemented.deactivation" => "Projekt-Theme wiederherstellen: Aktive Import-Themes können deaktiviert werden, danach greift wieder das feste Twig-Projekt-Theme."
      "admin.theme.help.implemented.delete" => "Inaktive Import-Themes können inklusive lokaler Import-Dateien gelöscht werden."
      "admin.theme.help.implemented.frontend_runtime" => "Frontend-Integration aktiv: Projekt-Header, Projekt-Footer und Projekt-Menüs bleiben live; importierte Inhalte werden über Content-Blöcke/Page-Builder und lokale Assets eingebunden."
      "admin.theme.help.implemented.html" => "HTML-Theme-Import per ZIP mit Job-Protokoll."
      "admin.theme.help.implemented.import_origin_badges" => "Importierte Slider, Widgets und Content-Blöcke werden in ihren Admin-Listen als Theme-Import gekennzeichnet."
      "admin.theme.help.implemented.import_report_links" => "Importberichte verlinken erzeugte Slider, Widgets und Content-Blöcke direkt in gefilterte Listen und, sofern vorhanden, in die Bearbeitung."
      "admin.theme.help.implemented.import_wizard" => "Import Wizard als führender Einstieg: Quelle wählen, Pflichtangaben validieren, Rohimport ausführen, Analyse-/Normalisierungsbericht erzeugen und direkt den Mapping-Assistenten öffnen."
      "admin.theme.help.implemented.live" => "Live-Website-Abbild per URL (HTML plus Asset-Spiegelung mit Sicherheitslimits; Hauptinhalt wird zusätzlich als Content-Blöcke für den Page Builder vorbereitet)."
      "admin.theme.help.implemented.mapping" => "Mapping-Assistent mit visueller Rechtsklick-Auswahl, Element-Umrandung und Slot-Fragment-Speicherung."
      "admin.theme.help.implemented.mapping_apply" => "One-Click-Übernahme von WordPress-Vorschlägen direkt im Mapping-Assistenten."
      "admin.theme.help.implemented.mapping_visual" => "Im visuellen Mapper zeigt der Rechtsklick Elementdaten, Größe, Selector und Textauszug; die Auswahl wird als eigenes Slot-Fragment gespeichert."
      "admin.theme.help.implemented.model" => "Theme-Datenmodell mit Definitionen, Versionen, Assets, Templates, Slots und Slot-Mappings."
      "admin.theme.help.implemented.overview" => "Admin-Übersicht zur Theme- und Versionsverwaltung."
      "admin.theme.help.implemented.preflight_budgets" => "Preflight-Budgets prüfen JavaScript-Syntaxfehler, externe Ressourcen ohne lokale Kopie, Asset-Anzahl, Gesamtgröße, CSS-/JS-Größe und kritische CSS-/JS-Größe; fehlende optionale Slots erscheinen als Soft-Warnings."
      "admin.theme.help.implemented.preview" => "Preview-Ansicht vor Aktivierung mit Preflight-Status für Pflicht-Slots."
      "admin.theme.help.implemented.preview_history" => "Aktivierungs-Historie in der Preview mit Zeitpunkt, Benutzer und vorheriger Version."
      "admin.theme.help.implemented.preview_live" => "Live-Vorschau mit echter Frontend-Ansicht (iframe + neuer Tab), zusätzlich zur technischen Preflight-Analyse."
      "admin.theme.help.implemented.preview_references" => "Preview-Referenzseiten für Start, CMS-Seite, Produktliste, Produktdetail, Warenkorb und Checkout, jeweils mit der ausgewählten Theme-Version und weiter führendem Projekt-Header/-Menü/-Footer."
      "admin.theme.help.implemented.preview_token" => "Token-gesicherte Preview-Route für freigabefähige Sandbox-Links ohne Admin-Session."
      "admin.theme.help.implemented.qa" => "Erweiterte Hard-Checks für Mapping-Ziele, kritische Assets und darstellbare Preview-Einstiegsdatei."
      "admin.theme.help.implemented.rollback" => "Rollback in einem Schritt auf den vorherigen Aktivierungspunkt oder zurück zum festen Projekt-Theme."
      "admin.theme.help.implemented.wordpress" => "WordPress-Import per ZIP mit Theme-Strukturprüfung über style.css."
      "admin.theme.help.implemented.wordpress_normalization" => "Vertiefte WordPress-Normalisierung mit rekursiver Template-Erkennung (Classic + Block-Theme-Dateien) und optionalen Slots (sidebar, archive_content, search_results, notfound_content)."
      "admin.theme.help.next_title" => "Was kommt als Nächstes?"
      "admin.theme.help.next.sources" => "Nächster Schritt: Theme-Rollen vollständig härten, synchronisieren und Buttons sowie Routen konsequent je Rolle begrenzen."
      "admin.theme.help.page_title" => "Theme-Modul Hilfe"
      "admin.theme.help.rules_title" => "Wichtige Regeln"
      "admin.theme.help.rules.activation_dialog" => "Vor jeder Aktivierung muss die Checkliste im Dialog geladen werden. Der Button bleibt gesperrt, solange harte Blocker wie externe Ressourcen, JS-Fehler oder ungültige Pflicht-Mappings offen sind."
      "admin.theme.help.rules.audit" => "Jede Aktivierung wird mit Zeitstempel und vorheriger Version protokolliert."
      "admin.theme.help.rules.delete_inactive" => "Aktive Import-Themes sind vor dem Löschen geschützt und müssen zuerst deaktiviert werden."
      "admin.theme.help.rules.draft_only" => "Importierte Inhalte auf Zielseiten werden als Entwurf angelegt und erst durch Speichern/Veröffentlichen der Seite live."
      "admin.theme.help.rules.frontend_only" => "Dieses Modul ändert nur Frontend-Themes, nicht das Backend-Design."
      "admin.theme.help.rules.preflight_budgets" => "Aktivierungen werden blockiert, wenn JavaScript-Fehlerbudget, externe Ressourcen ohne lokale Kopie oder Performance-Budgets verletzt sind. Optionale Slots blockieren nicht, werden aber sichtbar als Hinweise geführt."
      "admin.theme.help.rules.project_systems" => "Projekt-Navigation, Footer, Widgets, Slider und Page Builder bleiben die führenden Systeme. Fremd-HTML dient als Importquelle, nicht als starre Live-Seite."
      "admin.theme.help.rules.project_theme" => "Ist kein Import-Theme aktiv, wird automatisch das feste Projekt-Theme aus den normalen site/*-Twig-Templates ausgeliefert."
      "admin.theme.help.rules.valid_slots" => "Aktivierung ist nur erlaubt, wenn Pflicht-Slots valide gemappt sind; Projektmenüs gelten als System-Ziele."
      "admin.theme.help.subtitle" => "Phase 1 bis 5: Registry, Versionierung, HTML-/Live-/WordPress-Import, Mapping, Preview und Aktivierungs-Historie"
      "admin.theme.html.archive_help" => "Erlaubt ist ein HTML/CSS/JS-Theme als ZIP. WordPress-Import folgt als eigene Pipeline."
      "admin.theme.html.archive_label" => "ZIP-Archiv"
      "admin.theme.html.heading" => "HTML-Theme importieren"
      "admin.theme.html.name_placeholder" => "z. B. Modern Retail Frontend"
      "admin.theme.html.page_title" => "HTML-Theme importieren"
      "admin.theme.html.submit" => "Import starten"
      "admin.theme.html.subtitle" => "Phase 2: ZIP importieren, Slots vorbereiten, danach Mapping-Assistent."
      "admin.theme.import_report.actions.edit_block" => "Content-Block #%id% bearbeiten"
      "admin.theme.import_report.actions.edit_page" => "Zielseite bearbeiten"
      "admin.theme.import_report.actions.edit_slider" => "Slider #%id% bearbeiten"
      "admin.theme.import_report.actions.edit_widget" => "Widget #%id% bearbeiten"
      "admin.theme.import_report.actions.open_blocks" => "Content-Blöcke öffnen"
      "admin.theme.import_report.actions.open_sliders" => "Slider öffnen"
      "admin.theme.import_report.actions.open_widgets" => "Widgets öffnen"
      "admin.theme.import_report.analysis.areas.blog_lists" => "Blog-/Newslisten"
      "admin.theme.import_report.analysis.areas.footer" => "Footer"
      "admin.theme.import_report.analysis.areas.forms" => "Formulare"
      "admin.theme.import_report.analysis.areas.header" => "Header"
      "admin.theme.import_report.analysis.areas.hero_slider" => "Hero/Slider"
      "admin.theme.import_report.analysis.areas.main_content" => "Hauptinhalt"
      "admin.theme.import_report.analysis.areas.navigation" => "Navigation"
      "admin.theme.import_report.analysis.areas.product_lists" => "Produktlisten"
      "admin.theme.import_report.analysis.areas.sidebar" => "Sidebar"
      "admin.theme.import_report.analysis.areas.widget_zones" => "Widget-Zonen"
      "admin.theme.import_report.analysis.coverage" => "Bereiche %detected%/%total% · Pflicht %required%/%requiredTotal%"
      "admin.theme.import_report.analysis.title" => "Theme-Analyse"
      "admin.theme.import_report.direct_title" => "Direkt bearbeiten"
      "admin.theme.import_report.items.blocks" => "Content-Blöcke"
      "admin.theme.import_report.items.sliders" => "Slider"
      "admin.theme.import_report.items.widgets" => "Widgets"
      "admin.theme.import_report.mapping_title" => "Import-Ergebnis im CMS"
      "admin.theme.import_report.metrics.blocks" => "Content-Blöcke"
      "admin.theme.import_report.metrics.sections" => "Page-Builder-Abschnitte"
      "admin.theme.import_report.metrics.sliders" => "native Slider"
      "admin.theme.import_report.metrics.widgets" => "Widgets"
      "admin.theme.import_report.no_materialization" => "Für diesen Import wurden keine nativen CMS-Bausteine protokolliert."
      "admin.theme.import_report.normalizer.coverage" => "Partials %partials% · Slots %slots% · Pflicht %required% · Assets %assets%"
      "admin.theme.import_report.normalizer.title" => "CMS-Normalisierung"
      "admin.theme.import_report.page_builder_target" => "Page-Builder-Ziel:"
      "admin.theme.import_report.raw_report" => "Rohbericht anzeigen"
      "admin.theme.import_report.section_types" => "Builder-Abschnitte:"
      "admin.theme.import_report.slider_assigned" => "Slider auf Zielseite vorbereitet"
      "admin.theme.import_report.slider_not_assigned" => "Slider angelegt, nicht automatisch zugewiesen"
      "admin.theme.import_report.slider_type" => "Slider-Typ:"
      "admin.theme.import_report.target_page" => "Zielseite:"
      "admin.theme.import_report.title" => "Erzeugte CMS-Bausteine"
      "admin.theme.index.action_titles.mapping" => "Mapping bearbeiten"
      "admin.theme.index.action_titles.preview" => "Preview öffnen"
      "admin.theme.index.activate" => "Aktivieren"
      "admin.theme.index.active_button" => "Aktiv"
      "admin.theme.index.deactivate" => "Deaktivieren"
      "admin.theme.index.deactivate_modal.body" => "Möchtest du das aktive Import-Theme deaktivieren und wieder das feste Projekt-Theme live schalten?"
      "admin.theme.index.deactivate_modal.confirm" => "Projekt-Theme aktivieren"
      "admin.theme.index.deactivate_modal.confirm_message" => "Import-Theme '%theme%' Version %version% deaktivieren und das feste Projekt-Theme wieder live schalten?"
      "admin.theme.index.deactivate_modal.title" => "Projekt-Theme wiederherstellen"
      "admin.theme.index.delete" => "Löschen"
      "admin.theme.index.delete_modal.body" => "Möchtest du dieses importierte Theme wirklich löschen?"
      "admin.theme.index.delete_modal.confirm" => "Theme löschen"
      "admin.theme.index.delete_modal.confirm_message" => "Theme '%theme%' wirklich löschen?"
      "admin.theme.index.delete_modal.title" => "Theme löschen"
      "admin.theme.index.delete_modal.warning" => "Aktive Themes können nicht gelöscht werden. Beim Löschen werden Datenbankeinträge und lokale Import-Dateien entfernt."
      "admin.theme.index.empty_version" => "kein Stand"
      "admin.theme.index.headers.action" => "Aktion"
      "admin.theme.index.headers.activated_at" => "Aktiviert am"
      "admin.theme.index.headers.active" => "Aktiv"
      "admin.theme.index.headers.slug" => "Slug"
      "admin.theme.index.headers.source" => "Quelle"
      "admin.theme.index.headers.status" => "Status"
      "admin.theme.index.headers.theme" => "Theme"
      "admin.theme.index.headers.version" => "Version"
      "admin.theme.index.heading" => "Theme-Modul"
      "admin.theme.index.html_button" => "HTML-ZIP importieren"
      "admin.theme.index.live_button" => "Live-Website importieren"
      "admin.theme.index.modal.body" => "Möchtest du dieses Theme wirklich aktivieren?"
      "admin.theme.index.modal.close" => "Schließen"
      "admin.theme.index.modal.confirm" => "Aktivieren"
      "admin.theme.index.modal.confirm_message" => "Theme '%theme%' Version %version% wirklich aktivieren?"
      "admin.theme.index.modal.title" => "Theme aktivieren"
      "admin.theme.index.no" => "Nein"
      "admin.theme.index.no_data" => "Noch keine Themes vorhanden. Import kann jetzt über den Button oben gestartet werden."
      "admin.theme.index.no_rights" => "Keine Rechte"
      "admin.theme.index.page_title" => "Theme-Modul"
      "admin.theme.index.project_theme_live" => "Projekt-Theme ist live"
      "admin.theme.index.restore_project_theme" => "Projekt-Theme wiederherstellen"
      "admin.theme.index.rollback" => "Rollback"
      "admin.theme.index.rollback_modal.body" => "Möchtest du auf den letzten Aktivierungspunkt zurückrollen?"
      "admin.theme.index.rollback_modal.confirm" => "Rollback ausführen"
      "admin.theme.index.rollback_modal.confirm_message" => "Rollback für Theme '%theme%' Version %version% ausführen?"
      "admin.theme.index.rollback_modal.note" => "Wenn vorher kein Import-Theme aktiv war, wird automatisch das feste Projekt-Theme wieder live geschaltet."
      "admin.theme.index.rollback_modal.title" => "Theme-Rollback"
      "admin.theme.index.source_labels.html_zip" => "HTML-ZIP"
      "admin.theme.index.source_labels.live_site" => "Live-Abbild"
      "admin.theme.index.source_labels.wordpress_zip" => "WordPress-ZIP"
      "admin.theme.index.status_labels.active" => "aktiv"
      "admin.theme.index.status_labels.archived" => "archiviert"
      "admin.theme.index.status_labels.draft" => "Entwurf"
      "admin.theme.index.status_labels.validated" => "geprüft"
      "admin.theme.index.subtitle" => "Phase 1 bis 5: Registry, HTML-/Live-/WordPress-Import, Mapping, Preview, Aktivierung und Audit."
      "admin.theme.index.table_title" => "Theme-Übersicht"
      "admin.theme.index.wizard_button" => "Import Wizard"
      "admin.theme.index.wordpress_button" => "WordPress-ZIP importieren"
      "admin.theme.index.yes" => "Ja"
      "admin.theme.live.heading" => "Live-Website-Abbild erstellen"
      "admin.theme.live.name_placeholder" => "z. B. Corporate Live Theme"
      "admin.theme.live.page_title" => "Live-Website-Abbild erstellen"
      "admin.theme.live.submit" => "Live-Import starten"
      "admin.theme.live.subtitle" => "Phase 4: HTML, Texte, Styles und Medien der Live-Seite spiegeln und anschließend die Slots zuordnen."
      "admin.theme.live.summary_assets" => "CSS, JavaScript, Bilder und Fonts"
      "admin.theme.live.summary_builder" => "Hauptinhalt wird als Slider, Widgets und Content-Blöcke für den Page Builder vorbereitet"
      "admin.theme.live.summary_html" => "HTML-Struktur und Texte"
      "admin.theme.live.summary_intro" => "Der Import holt das serverseitige HTML-Abbild der Startseite und spiegelt dazu die erkannten Ressourcen."
      "admin.theme.live.summary_limits" => "Maximal 300 Assets mit Größenlimit pro Datei"
      "admin.theme.live.summary_note" => "Kein Browser-Screenshot, sondern ein strukturiertes Seiten-Abbild."
      "admin.theme.live.summary_system_menu" => "Navigation und Footer bleiben Projekt-Menüs aus diesem System"
      "admin.theme.live.summary_theme" => "Die importierte Ausgabe wird als editierbares Theme-Abbild gespeichert"
      "admin.theme.live.summary_title" => "Was wird gespiegelt?"
      "admin.theme.live.target_page_help" => "Optional: Der importierte Hauptinhalt wird als Page-Builder-Entwurf auf dieser Seite angelegt. Live wird erst etwas geändert, wenn die Seite gespeichert/veröffentlicht wird."
      "admin.theme.live.target_page_label" => "Zielseite im Page Builder"
      "admin.theme.live.target_page_placeholder" => "Nur Content-Blöcke anlegen, keine Seite überschreiben"
      "admin.theme.live.url_help" => "Die Startseite wird abgerufen, HTML gespeichert und verlinkte Assets wie CSS, JS, Bilder und Fonts werden gespiegelt."
      "admin.theme.live.url_label" => "Live-URL"
      "admin.theme.live.url_placeholder" => "https://example.com"
      "admin.theme.mapping.apply_slot_recommendation" => "Empfehlung einsetzen"
      "admin.theme.mapping.apply_suggestions" => "Vorschläge übernehmen"
      "admin.theme.mapping.back" => "Zurück"
      "admin.theme.mapping.context" => "Theme: %theme% | Version: %version%"
      "admin.theme.mapping.empty" => "Keine Slots vorhanden."
      "admin.theme.mapping.headers.guidance" => "Orientierung"
      "admin.theme.mapping.headers.mapping_target" => "Zielwert"
      "admin.theme.mapping.headers.mapping_type" => "Zuordnungsart"
      "admin.theme.mapping.headers.required" => "Pflicht"
      "admin.theme.mapping.headers.slot" => "Slot"
      "admin.theme.mapping.headers.status" => "Prüfstatus"
      "admin.theme.mapping.heading" => "Slot-Mapping"
      "admin.theme.mapping.open" => "offen"
      "admin.theme.mapping.optional_badge" => "Optional"
      "admin.theme.mapping.page_title" => "Theme-Mapping"
      "admin.theme.mapping.preview" => "Preview"
      "admin.theme.mapping.quick_targets" => "Quick-Ziele"
      "admin.theme.mapping.quickstart_title" => "Schnellstart"
      "admin.theme.mapping.quickstart.step1" => "Projekt-Menüs für Header und Footer verwenden; importierte Fremd-Navigation nicht live übernehmen."
      "admin.theme.mapping.quickstart.step2" => "Hauptinhalt per visueller Auswahl oder Import-Vorschlag einem bearbeitbaren Content-/Page-Builder-Ziel zuordnen."
      "admin.theme.mapping.quickstart.step3" => "Speichern und auf grüne Validierung achten, bevor die Aktivierung erfolgt."
      "admin.theme.mapping.recommendation.default" => "Empfohlener Startwert"
      "admin.theme.mapping.recommendation.import" => "Ermittelter Vorschlag"
      "admin.theme.mapping.recommendation.project" => "Projekt-System"
      "admin.theme.mapping.recommendation.wordpress" => "Ermittelter Vorschlag"
      "admin.theme.mapping.required_badge" => "Pflicht"
      "admin.theme.mapping.runtime_hint" => "Hinweis: Öffentliche Seiten verwenden weiterhin Projekt-Header, Projekt-Footer und Projekt-Menüs. Importierte Live-Inhalte werden für Vorschau, Mapping und Page-Builder-Übernahme genutzt."
      "admin.theme.mapping.save" => "Mapping speichern"
      "admin.theme.mapping.slot_help.archive_content" => "Listing-/Archivseiten (Kategorie, Tag, Archivübersichten)."
      "admin.theme.mapping.slot_help.default" => "Diesen Slot dem passenden Theme-Bereich zuordnen. Wenn unklar, mit dem empfohlenen Ziel starten."
      "admin.theme.mapping.slot_help.footer" => "Footer-Bereich: Projekt-Footer und Footer-Menü aus dem System verwenden."
      "admin.theme.mapping.slot_help.header" => "Header-Bereich: Projekt-Header mit Logo und Systemnavigation verwenden."
      "admin.theme.mapping.slot_help.main_content" => "Hauptinhalt der Seite (wichtigster Slot für die Frontend-Ansicht)."
      "admin.theme.mapping.slot_help.notfound_content" => "Inhalt für die 404-Seite (nicht gefunden)."
      "admin.theme.mapping.slot_help.search_results" => "Ausgabe der Suchergebnisse."
      "admin.theme.mapping.slot_help.sidebar" => "Seitenspalte für ergänzende Inhalte oder Widgets."
      "admin.theme.mapping.source_preview_help" => "Die automatisch erkannten Bereiche werden hier als Vorschau gezeigt. Mit einem Klick wird der passende Zielwert in den Slot übernommen."
      "admin.theme.mapping.source_preview_title" => "Import-Abbild direkt zuordnen"
      "admin.theme.mapping.source_suggestions_help" => "Diese Zielwerte wurden aus der importierten Theme-Struktur abgeleitet und können direkt übernommen werden."
      "admin.theme.mapping.source_suggestions_title" => "Import-Vorschläge erkannt."
      "admin.theme.mapping.status_duplicates" => "Doppelte Mapping-Ziele:"
      "admin.theme.mapping.status_invalid" => "Ungültige Pflicht-Mappings:"
      "admin.theme.mapping.status_missing" => "Pflicht-Slots fehlen noch:"
      "admin.theme.mapping.status_ok" => "Pflicht-Slots sind gültig. Diese Version kann aktiviert werden."
      "admin.theme.mapping.status_required_empty" => "Pflicht-Slot ohne Ziel."
      "admin.theme.mapping.table_title" => "Mapping-Tabelle"
      "admin.theme.mapping.target_placeholder" => "z. B. site.main_nav oder cms.page.content"
      "admin.theme.mapping.type.cms_block.description" => "Verknüpft den Slot mit bearbeitbaren CMS-Inhalten, Content-Blöcken oder einer Page-Builder-Zielseite."
      "admin.theme.mapping.type.cms_block.label" => "Page-Builder / Content-Block"
      "admin.theme.mapping.type.cms_block.placeholder" => "z. B. cms.page.ueber-uns.builder"
      "admin.theme.mapping.type.custom.description" => "Empfohlen für die aktuelle Frontend-Theme-Integration. Beispiel: wp:header.php oder site.main_content."
      "admin.theme.mapping.type.custom.label" => "Theme-Bereich / Sonderziel"
      "admin.theme.mapping.type.custom.placeholder" => "z. B. wp:header.php oder site.main_content"
      "admin.theme.mapping.type.menu.description" => "Verknüpft den Slot mit der vorhandenen Projekt-Navigation, nicht mit statischer Fremd-Navigation."
      "admin.theme.mapping.type.menu.label" => "Projekt-Menü"
      "admin.theme.mapping.type.menu.placeholder" => "z. B. project.main_menu"
      "admin.theme.mapping.type.static.description" => "Statisches Ziel ohne weitere Auflösung. Nur verwenden, wenn bewusst nötig."
      "admin.theme.mapping.type.static.label" => "Statisch"
      "admin.theme.mapping.type.static.placeholder" => "z. B. static.header"
      "admin.theme.mapping.type.widget.description" => "Verknüpft den Slot mit einem Widget-Bereich."
      "admin.theme.mapping.type.widget.label" => "Widget-Bereich"
      "admin.theme.mapping.type.widget.placeholder" => "z. B. sidebar.primary"
      "admin.theme.mapping.use_this_area" => "Diesen Bereich nutzen"
      "admin.theme.mapping.valid" => "gültig"
      "admin.theme.mapping.visual.active_slot" => "Aktiver Ziel-Slot"
      "admin.theme.mapping.visual.assign" => "Auswahl diesem Slot zuordnen"
      "admin.theme.mapping.visual.empty" => "Noch kein Bereich ausgewählt."
      "admin.theme.mapping.visual.help" => "In der Vorschau ein Element anklicken zum Prüfen oder per Rechtsklick direkt dem aktiven Slot zuordnen. Das Element wird umrandet und als Slot-Fragment gespeichert."
      "admin.theme.mapping.visual.identity" => "ID / Klassen"
      "admin.theme.mapping.visual.selected_slot" => "Ziel-Slot"
      "admin.theme.mapping.visual.selector" => "Selector"
      "admin.theme.mapping.visual.size" => "Größe"
      "admin.theme.mapping.visual.tag" => "Element"
      "admin.theme.mapping.visual.text" => "Textauszug"
      "admin.theme.mapping.visual.title" => "Visuelles Rechtsklick-Mapping"
      "admin.theme.mapping.wordpress_suggestions_help" => "Diese Zielwerte wurden aus den importierten Theme-Dateien abgeleitet und können direkt übernommen werden."
      "admin.theme.mapping.wordpress_suggestions_title" => "WordPress-Vorschläge erkannt."
      "admin.theme.preview.activation_log_empty" => "Für diese Version sind noch keine Aktivierungen protokolliert."
      "admin.theme.preview.activation_log_headers.actor" => "Benutzer"
      "admin.theme.preview.activation_log_headers.previous" => "Vorherige Version"
      "admin.theme.preview.activation_log_headers.time" => "Zeitpunkt"
      "admin.theme.preview.activation_log_title" => "Aktivierungs-Historie"
      "admin.theme.preview.all_green" => "Alle Hard-Checks für diese Version sind grün."
      "admin.theme.preview.asset_critical" => "%count% kritisch"
      "admin.theme.preview.asset_fonts" => "%count% Fonts"
      "admin.theme.preview.asset_images" => "%count% Bilder"
      "admin.theme.preview.asset_total" => "%count% Assets"
      "admin.theme.preview.assets_empty" => "Für diese Version wurden keine lokalen Assets registriert."
      "admin.theme.preview.assets_headers.critical" => "Kritisch"
      "admin.theme.preview.assets_headers.path" => "Pfad"
      "admin.theme.preview.assets_headers.size" => "Größe"
      "admin.theme.preview.assets_headers.type" => "Typ"
      "admin.theme.preview.assets_registered" => "Registrierte Assets:"
      "admin.theme.preview.assets_title" => "Asset-Manifest"
      "admin.theme.preview.budget_assets" => "%count%/%limit% Assets"
      "admin.theme.preview.budget_critical" => "Kritisch %value%/%limit% MiB"
      "admin.theme.preview.budget_css" => "CSS %value%/%limit% MiB"
      "admin.theme.preview.budget_js" => "JS %value%/%limit% MiB"
      "admin.theme.preview.budget_total" => "Gesamt %value%/%limit% MiB"
      "admin.theme.preview.checks_title" => "Aktivierungs-Checks"
      "admin.theme.preview.checksum" => "Checksum:"
      "admin.theme.preview.context" => "Theme: %theme% | Version: %version%"
      "admin.theme.preview.details_title" => "Preflight-Details"
      "admin.theme.preview.device_desktop" => "Desktop"
      "admin.theme.preview.device_mobile" => "Mobil"
      "admin.theme.preview.device_tablet" => "Tablet"
      "admin.theme.preview.device_toolbar" => "Preview-Geräte"
      "admin.theme.preview.duplicate_targets" => "Doppelte Ziele:"
      "admin.theme.preview.external_resource_issues" => "Externe Ressourcen ohne lokale Kopie:"
      "admin.theme.preview.hard_errors" => "Hard-Checks:"
      "admin.theme.preview.heading" => "Theme-Preview"
      "admin.theme.preview.import_jobs_empty" => "Für diese Version ist noch kein Importbericht vorhanden."
      "admin.theme.preview.import_jobs_headers.report" => "Bericht"
      "admin.theme.preview.import_jobs_headers.source" => "Quelle"
      "admin.theme.preview.import_jobs_headers.status" => "Status"
      "admin.theme.preview.import_jobs_headers.time" => "Zeitpunkt"
      "admin.theme.preview.import_jobs_title" => "Import- und Analysebericht"
      "admin.theme.preview.import_status.failed" => "fehlgeschlagen"
      "admin.theme.preview.import_status.partial" => "teilweise"
      "admin.theme.preview.import_status.running" => "läuft"
      "admin.theme.preview.import_status.success" => "erfolgreich"
      "admin.theme.preview.install" => "Install:"
      "admin.theme.preview.invalid_mappings" => "Ungültige Mappings:"
      "admin.theme.preview.javascript_files" => "JS-Dateien"
      "admin.theme.preview.javascript_issues" => "JavaScript-Fehlerbudget:"
      "admin.theme.preview.live_help" => "Diese Vorschau rendert die ausgewählte Theme-Version auf repräsentativen Frontend-Seiten. Projekt-Header, Projekt-Menüs und Projekt-Footer bleiben dabei führend."
      "admin.theme.preview.live_title" => "Live-Vorschau (Frontend-Ansicht)"
      "admin.theme.preview.missing_critical_assets" => "Fehlende kritische Assets:"
      "admin.theme.preview.missing_required_slots" => "Fehlende Pflicht-Slots:"
      "admin.theme.preview.open_frontend_view" => "Frontend-Ansicht"
      "admin.theme.preview.open_new_tab" => "Im neuen Tab öffnen"
      "admin.theme.preview.open_token_preview" => "Token-Preview"
      "admin.theme.preview.open_token_preview_help" => "Öffnet eine signierte Vorschau-URL, die ohne Admin-Session die Sandbox-Preview und lokale Theme-Assets laden kann."
      "admin.theme.preview.optional_slot_warnings" => "Optionale Slot-Hinweise:"
      "admin.theme.preview.page_title" => "Theme-Preview"
      "admin.theme.preview.paths_title" => "Installationspfade"
      "admin.theme.preview.performance_issues" => "Performance-Budget:"
      "admin.theme.preview.preflight_blocked" => "Preflight blockiert: Vor Aktivierung müssen die offenen Punkte behoben werden."
      "admin.theme.preview.preflight_ok" => "Preflight erfolgreich: Diese Version kann aktiviert werden."
      "admin.theme.preview.public_assets" => "Public Assets:"
      "admin.theme.preview.reference_content.cart.cta" => "Zur Kasse"
      "admin.theme.preview.reference_content.cart.item" => "Position %number%"
      "admin.theme.preview.reference_content.cart.subtotal" => "Zwischensumme"
      "admin.theme.preview.reference_content.cart.summary" => "Zusammenfassung"
      "admin.theme.preview.reference_content.cart.title" => "Warenkorb"
      "admin.theme.preview.reference_content.checkout.address" => "Adresse"
      "admin.theme.preview.reference_content.checkout.cta" => "Bestellung prüfen"
      "admin.theme.preview.reference_content.checkout.firstname" => "Vorname"
      "admin.theme.preview.reference_content.checkout.items" => "Artikel"
      "admin.theme.preview.reference_content.checkout.lastname" => "Nachname"
      "admin.theme.preview.reference_content.checkout.shipping" => "Versand"
      "admin.theme.preview.reference_content.checkout.summary" => "Bestellübersicht"
      "admin.theme.preview.reference_content.checkout.title" => "Checkout"
      "admin.theme.preview.reference_content.cms_page.aside_1" => "Navigationsnahe Inhalte"
      "admin.theme.preview.reference_content.cms_page.aside_2" => "Kontakt- und Hinweisflächen"
      "admin.theme.preview.reference_content.cms_page.aside_3" => "Redaktionelle Zusatzboxen"
      "admin.theme.preview.reference_content.cms_page.aside_title" => "Seitenmodule"
      "admin.theme.preview.reference_content.cms_page.body" => "Diese Beispielseite deckt längere Inhalte, Listen und begleitende Sekundärinformationen ab."
      "admin.theme.preview.reference_content.cms_page.kicker" => "CMS-Seite"
      "admin.theme.preview.reference_content.cms_page.lead" => "Text, Sidebar und Content-Flächen prüfen Typografie, Abstände und Lesbarkeit."
      "admin.theme.preview.reference_content.cms_page.title" => "Content-Seite mit redaktionellem Aufbau"
      "admin.theme.preview.reference_content.product_detail.cta" => "In den Warenkorb"
      "admin.theme.preview.reference_content.product_detail.kicker" => "Produktdetail"
      "admin.theme.preview.reference_content.product_detail.text" => "Detailseite mit Galerie, Preis, CTA und beschreibendem Text."
      "admin.theme.preview.reference_content.product_detail.title" => "Professionelles Referenzprodukt"
      "admin.theme.preview.reference_content.product_list.filter_1" => "Software"
      "admin.theme.preview.reference_content.product_list.filter_2" => "Service"
      "admin.theme.preview.reference_content.product_list.filter_3" => "Hardware"
      "admin.theme.preview.reference_content.product_list.filter_title" => "Kategorien"
      "admin.theme.preview.reference_content.product_list.product_text" => "Kurzbeschreibung mit Preis, Karte und Produktbildfläche."
      "admin.theme.preview.reference_content.product_list.product_title" => "Referenzprodukt %number%"
      "admin.theme.preview.reference_content.start.kicker" => "Frontend-Referenz"
      "admin.theme.preview.reference_content.start.text" => "Die Referenz zeigt, wie sich globale Theme-Assets auf die Startseite auswirken."
      "admin.theme.preview.reference_content.start.title" => "Startseite mit aktiver Theme-Version"
      "admin.theme.preview.reference_descriptions.cart" => "Warenkorb-Ansicht"
      "admin.theme.preview.reference_descriptions.checkout" => "Checkout-Ansicht"
      "admin.theme.preview.reference_descriptions.cms_page" => "Content-/Landingpage-Referenz"
      "admin.theme.preview.reference_descriptions.product_detail" => "Shop-Detailansicht"
      "admin.theme.preview.reference_descriptions.product_list" => "Shop-Listenansicht"
      "admin.theme.preview.reference_descriptions.start" => "Startseiten-Referenz"
      "admin.theme.preview.reference_toolbar" => "Preview-Referenzseiten"
      "admin.theme.preview.references.cart" => "Warenkorb"
      "admin.theme.preview.references.checkout" => "Checkout"
      "admin.theme.preview.references.cms_page" => "CMS-Seite"
      "admin.theme.preview.references.product_detail" => "Produktdetail"
      "admin.theme.preview.references.product_list" => "Produktliste"
      "admin.theme.preview.references.source" => "Import-Sandbox"
      "admin.theme.preview.references.start" => "Start"
      "admin.theme.preview.render_errors" => "Render-Fehler:"
      "admin.theme.preview.slug" => "Slug:"
      "admin.theme.preview.soft_warnings" => "Hinweise:"
      "admin.theme.preview.source" => "Quelle:"
      "admin.theme.preview.source_title" => "Theme-Quelle"
      "admin.theme.preview.status" => "Status:"
      "admin.theme.preview.templates_empty" => "Für diese Version wurden noch keine Template-Dateien registriert."
      "admin.theme.preview.templates_headers.key" => "Template-Key"
      "admin.theme.preview.templates_headers.origin" => "Quelle"
      "admin.theme.preview.templates_headers.path" => "Dateipfad"
      "admin.theme.preview.templates_title" => "Erkannte Templates"
      "admin.theme.wizard.display_name_placeholder" => "z. B. Wede Soft Live-Abbild oder Avanta ZIP"
      "admin.theme.wizard.heading" => "Theme Import Wizard"
      "admin.theme.wizard.page_title" => "Theme Import Wizard"
      "admin.theme.wizard.pipeline.analysis" => "Analysebericht"
      "admin.theme.wizard.pipeline.analysis_help" => "Analyzer und Normalizer erzeugen Bericht, Partials, Asset-Manifest, Slots und Mapping-Vorschläge."
      "admin.theme.wizard.pipeline.mapping" => "Mapping-Assistent"
      "admin.theme.wizard.pipeline.mapping_help" => "Nach erfolgreichem Import öffnet der Wizard direkt die Mapping-Seite der neuen Theme-Version."
      "admin.theme.wizard.pipeline.raw_import" => "Rohimport"
      "admin.theme.wizard.pipeline.raw_import_help" => "Connectoren holen HTML, ZIP oder WordPress-Dateien und speichern das unveränderte Quellpaket."
      "admin.theme.wizard.pipeline.validate_source" => "Quelle prüfen"
      "admin.theme.wizard.pipeline.validate_source_help" => "Pflichtfelder, URL-Format, Upload-Limit und Quellstruktur werden vor dem Import geprüft."
      "admin.theme.wizard.sources.html_zip.description" => "Importiert ein HTML/Bootstrap-ZIP, erkennt Einstiegsdateien, Partials und Mapping-Vorschläge."
      "admin.theme.wizard.sources.live_site.description" => "Spiegelt eine echte Website inklusive HTML, Texten, Bildern, Styles, Assets und nativer CMS-Vorbereitung."
      "admin.theme.wizard.sources.wordpress_zip.description" => "Prüft ein WordPress-Theme-ZIP, liest Templates und normalisiert klassische sowie Block-Theme-Strukturen."
      "admin.theme.wizard.steps.pipeline" => "Analyse und Übergabe"
      "admin.theme.wizard.steps.source" => "Quelle wählen"
      "admin.theme.wizard.steps.validate" => "Quelle validieren"
      "admin.theme.wizard.submit" => "Rohimport starten und Mapping öffnen"
      "admin.theme.wizard.subtitle" => "Quelle wählen, Eingaben validieren, Rohimport starten und direkt in Analyse, Normalisierung und Mapping wechseln."
      "admin.theme.wizard.validation.html" => "Das Archiv muss ein ZIP sein. Nach dem Entpacken werden HTML-Einstiege, Assets, Partials und Pflicht-Slots erkannt."
      "admin.theme.wizard.validation.live" => "Die URL wird vor dem Import normalisiert und nur über http/https verarbeitet. Danach folgen Asset-Spiegelung, Analyse, Normalisierung und Mapping."
      "admin.theme.wizard.validation.wordpress" => "Das Archiv muss ein WordPress-Theme-ZIP mit style.css und Theme-Name sein. Danach werden Templates, optionale Slots und Mapping-Ziele vorbereitet."
      "admin.theme.wordpress.archive_help" => "Erwartet wird ein WordPress-Theme-ZIP mit style.css im Wurzelverzeichnis und einem Theme Name Header."
      "admin.theme.wordpress.archive_label" => "WordPress-ZIP"
      "admin.theme.wordpress.heading" => "WordPress-Theme importieren"
      "admin.theme.wordpress.name_placeholder" => "z. B. Magazin Theme"
      "admin.theme.wordpress.page_title" => "WordPress-Theme importieren"
      "admin.theme.wordpress.submit" => "WordPress-Import starten"
      "admin.theme.wordpress.subtitle" => "Phase 5: Theme-ZIP prüfen, WordPress-Struktur übernehmen, danach Mapping-Assistent."
      "admin.translation.actions.back" => "Zurück"
      "admin.translation.actions.cancel" => "Abbrechen"
      "admin.translation.actions.create" => "Übersetzung anlegen"
      "admin.translation.actions.delete" => "Löschen"
      "admin.translation.actions.edit" => "Bearbeiten"
      "admin.translation.actions.help" => "Hilfe"
      "admin.translation.actions.save" => "Speichern"
      "admin.translation.actions.show" => "Anzeigen"
      "admin.translation.form.create_heading" => "Übersetzung anlegen"
      "admin.translation.form.create_page_title" => "Übersetzung anlegen"
      "admin.translation.form.domain" => "Domain"
      "admin.translation.form.domain_help" => "Standardmäßig messages. Nur abweichen, wenn das Modul bewusst eine andere Domain nutzt."
      "admin.translation.form.edit_heading" => "Übersetzung bearbeiten"
      "admin.translation.form.edit_page_title" => "Übersetzung bearbeiten"
      "admin.translation.form.locale" => "Locale"
      "admin.translation.form.locale_help" => "Sprachcode, zum Beispiel de oder en."
      "admin.translation.form.panel_title" => "Formular"
      "admin.translation.form.subtitle" => "Pflege Locale, Domain, Key und Value einheitlich im Katalog."
      "admin.translation.form.translation_key" => "Key"
      "admin.translation.form.translation_key_help" => "Stabiler Schlüssel, zum Beispiel admin.translation.actions.save."
      "admin.translation.form.translation_value" => "Value"
      "admin.translation.form.translation_value_help" => "Sichtbarer Text für die gewählte Sprache."
      "admin.translation.help_index.card_subtitle" => "Locale, Domain, Keys, DB-Katalog"
      "admin.translation.help_index.card_title" => "Übersetzungen"
      "admin.translation.help_index.table_description" => "DB-Übersetzungskatalog verwalten"
      "admin.translation.help_index.table_label" => "Übersetzungen"
      "admin.translation.help.example_label" => "Beispiel:"
      "admin.translation.help.field_column" => "Feld"
      "admin.translation.help.fields_title" => "Felder"
      "admin.translation.help.fields.domain" => "Katalogbereich, standardmäßig <code>messages</code>"
      "admin.translation.help.fields.key" => "Stabiler Schlüssel wie <code>admin.translation.actions.save</code>"
      "admin.translation.help.fields.locale" => "Sprache wie <code>de</code> oder <code>en</code>"
      "admin.translation.help.fields.value" => "Der sichtbare Text für diese Sprache"
      "admin.translation.help.function_column" => "Funktion"
      "admin.translation.help.meaning_column" => "Bedeutung"
      "admin.translation.help.method_column" => "Methode"
      "admin.translation.help.navigation_title" => "Navigation"
      "admin.translation.help.navigation.fields" => "Felder"
      "admin.translation.help.navigation.overview" => "Überblick"
      "admin.translation.help.navigation.routes" => "Routen"
      "admin.translation.help.navigation.rules" => "Regeln"
      "admin.translation.help.navigation.workflow" => "Workflow"
      "admin.translation.help.open_module" => "Zum Modul"
      "admin.translation.help.overview_note" => "Die Oberfläche ist für benutzerseitige Texte gedacht. Technische Kennungen, Action-Namen oder intern ausgewertete Strings gehören nicht in diesen Katalog."
      "admin.translation.help.overview_text" => "Die Übersetzungsverwaltung pflegt den zentralen DB-Katalog für UI-Texte. Ein Eintrag wird immer über <strong>Locale</strong>, <strong>Domain</strong> und <strong>Key</strong> eindeutig bestimmt."
      "admin.translation.help.overview_title" => "Überblick"
      "admin.translation.help.routes_title" => "Routen"
      "admin.translation.help.routes.create" => "Neue Übersetzung anlegen"
      "admin.translation.help.routes.delete" => "Eintrag löschen"
      "admin.translation.help.routes.edit" => "Bestehende Übersetzung bearbeiten"
      "admin.translation.help.routes.list" => "Liste aller Übersetzungen"
      "admin.translation.help.routes.show" => "Detailansicht"
      "admin.translation.help.rules_title" => "Regeln"
      "admin.translation.help.rules.duplicates" => "Neue Einträge mit identischer Kombination werden im Formular blockiert."
      "admin.translation.help.rules.prune_scope" => "Bereinigt werden nur Einträge innerhalb des jeweils synchronisierten Prefixes."
      "admin.translation.help.rules.unique" => "Locale, Domain und Key sind zusammen eindeutig."
      "admin.translation.help.title" => "Hilfe: Übersetzungen"
      "admin.translation.help.workflow_title" => "Workflow"
      "admin.translation.help.workflow.step1" => "Texte modulweise in versionierten YAML-Dateien unter <code>translations/</code> pflegen."
      "admin.translation.help.workflow.step2" => "Per Import-Befehl in die Datenbank synchronisieren."
      "admin.translation.help.workflow.step3" => "Nur den betroffenen Prefix mit <code>--prune-missing</code> bereinigen."
      "admin.translation.index.delete_confirm" => "Übersetzung "%key%" wirklich löschen?"
      "admin.translation.index.delete_modal.title" => "Löschen bestätigen"
      "admin.translation.index.empty" => "Keine Übersetzungen gefunden."
      "admin.translation.index.empty_filtered" => "Keine Übersetzungen für die aktuelle Suche gefunden."
      "admin.translation.index.filters.active" => "Filter aktiv"
      "admin.translation.index.filters.all_domains" => "Alle Domains"
      "admin.translation.index.filters.all_locales" => "Alle Locales"
      "admin.translation.index.filters.domain" => "Domain filtern"
      "admin.translation.index.filters.locale" => "Locale filtern"
      "admin.translation.index.filters.reset" => "Zurücksetzen"
      "admin.translation.index.filters.search" => "Suche"
      "admin.translation.index.filters.submit" => "Anzeigen"
      "admin.translation.index.heading" => "Übersetzungen"
      "admin.translation.index.list_title" => "Übersetzungsliste"
      "admin.translation.index.page_title" => "Übersetzungen"
      "admin.translation.index.pagination.next" => "Weiter"
      "admin.translation.index.pagination.page" => "Seite %page% von %pages%"
      "admin.translation.index.pagination.per_page" => "Einträge pro Seite"
      "admin.translation.index.pagination.previous" => "Zurück"
      "admin.translation.index.pagination.results" => "Zeige %from%-%to% von %total% Einträgen"
      "admin.translation.index.search_placeholder" => "Nach Locale, Domain, Key oder Value suchen"
      "admin.translation.index.subtitle" => "Pflege Locale, Domain, Key und Value zentral im Übersetzungskatalog."
      "admin.translation.notifications.created" => "Übersetzung wurde angelegt."
      "admin.translation.notifications.deleted" => "Übersetzung wurde gelöscht."
      "admin.translation.notifications.duplicate_identity" => "Für diese Kombination aus Locale, Domain und Key existiert bereits ein Eintrag."
      "admin.translation.notifications.updated" => "Übersetzung wurde gespeichert."
      "admin.translation.show.heading" => "Übersetzung anzeigen"
      "admin.translation.show.page_title" => "Übersetzung anzeigen"
      "admin.translation.show.panel_title" => "Details"
      "admin.translation.show.subtitle" => "Detailansicht eines einzelnen Übersetzungseintrags."
      "admin.translation.table.actions" => "Aktionen"
      "admin.translation.table.domain" => "Domain"
      "admin.translation.table.key" => "Key"
      "admin.translation.table.locale" => "Locale"
      "admin.translation.table.value" => "Value"
      "admin.user_management.actions.apply" => "Anwenden"
      "admin.user_management.actions.back" => "Zurück"
      "admin.user_management.actions.help" => "Hilfe"
      "admin.user_management.actions.new_user" => "Neuer Benutzer"
      "admin.user_management.actions.open" => "Öffnen"
      "admin.user_management.email_lookup.backend_user_label" => "Backend-Benutzer"
      "admin.user_management.email_lookup.free" => "E-Mail ist aktuell frei"
      "admin.user_management.email_lookup.hint_label" => "Hinweis"
      "admin.user_management.email_lookup.status_label" => "Status"
      "admin.user_management.email_lookup.taken" => "E-Mail bereits vorhanden"
      "admin.user_management.email_lookup.unavailable" => "E-Mail-Prüfung derzeit nicht verfügbar"
      "admin.user_management.form.change_password_title" => "Passwort ändern"
      "admin.user_management.form.confirm_password" => "Passwort bestätigen"
      "admin.user_management.form.create_title" => "Neuer Benutzer"
      "admin.user_management.form.current_password" => "Aktuelles Passwort"
      "admin.user_management.form.edit_title" => "Benutzer bearbeiten"
      "admin.user_management.form.email_lookup_hint" => "Nach vollständiger Eingabe wird sofort auf vorhandene Backend-Benutzer geprüft."
      "admin.user_management.form.fix_inputs_body" => "Markierte Felder enthalten Fehler."
      "admin.user_management.form.fix_inputs_title" => "Bitte Eingaben korrigieren:"
      "admin.user_management.form.force_password_change" => "Passwort nach der ersten Anmeldung ändern?"
      "admin.user_management.form.legacy_admin" => "Legacy Admin (nur für Altfälle)"
      "admin.user_management.form.new_password" => "Neues Passwort"
      "admin.user_management.form.not_blank" => "Darf nicht leer sein"
      "admin.user_management.form.panel_title" => "Formular"
      "admin.user_management.form.password_mismatch" => "Die neuen Passwörter müssen identisch sein."
      "admin.user_management.form.password_strength" => "Mindestens 8 Zeichen mit Großbuchstabe, Kleinbuchstabe, Zahl und Sonderzeichen verwenden."
      "admin.user_management.form.profile" => "Wählen Sie ein Profil aus *"
      "admin.user_management.form.remove_direct_role" => "Direktrolle entfernen"
      "admin.user_management.form.reset_password_title" => "Passwort zurücksetzen"
      "admin.user_management.form.role" => "Rolle"
      "admin.user_management.form.role_help" => "Feingranulare Berechtigungen kommen aus dem zugewiesenen Profil. Direktrollen nur für Ausnahmen verwenden."
      "admin.user_management.form.role_placeholder" => "Bitte wählen"
      "admin.user_management.form.super_admin_direct" => "Super Admin (direkt)"
      "admin.user_management.help_index.card_subtitle" => "Backend-Logins, Profile, Direktrollen"
      "admin.user_management.help_index.card_title" => "Admin-Benutzer"
      "admin.user_management.help_index.table_description" => "Backend-Benutzer und Rechte verwalten"
      "admin.user_management.help_index.table_label" => "Admin-Benutzer"
      "admin.user_management.help.bulk_title" => "Bulk-Aktionen"
      "admin.user_management.help.bulk.step1" => "Gewünschte Benutzer in der Liste markieren."
      "admin.user_management.help.bulk.step2" => "Gruppenaktion auswählen, zum Beispiel deaktivieren oder löschen."
      "admin.user_management.help.bulk.step3" => "Aktion ausführen und die Rückmeldung prüfen."
      "admin.user_management.help.function_column" => "Funktion"
      "admin.user_management.help.method_column" => "Methode"
      "admin.user_management.help.navigation_title" => "Navigation"
      "admin.user_management.help.navigation.bulk" => "Bulk-Aktionen"
      "admin.user_management.help.navigation.overview" => "Überblick"
      "admin.user_management.help.navigation.passwords" => "Passwörter"
      "admin.user_management.help.navigation.profiles" => "Profile & Rollen"
      "admin.user_management.help.navigation.routes" => "Routen"
      "admin.user_management.help.open_module" => "Zum Modul"
      "admin.user_management.help.overview_text" => "Das Modul verwaltet <strong>Admin-Benutzer</strong> für das Backend. Diese Konten melden sich im Admin an und erhalten ihre Berechtigungen primär über zugewiesene Profile."
      "admin.user_management.help.overview_title" => "Überblick"
      "admin.user_management.help.passwords_title" => "Passwörter"
      "admin.user_management.help.passwords.create" => "Neue Admin-Benutzer setzen ihr Passwort beim Anlegen über das Formular."
      "admin.user_management.help.passwords.initial_change" => "Optional kann eine Passwortänderung nach der ersten Anmeldung erzwungen werden."
      "admin.user_management.help.passwords.reset" => "Bestehende Passwörter können über die Reset-Passwort-Seite neu gesetzt werden."
      "admin.user_management.help.profiles_title" => "Profile & Rollen"
      "admin.user_management.help.profiles.direct_roles" => "Direktrollen sind nur für Ausnahmen gedacht."
      "admin.user_management.help.profiles.legacy_role" => "Die Legacy-Rolle ROLE_ADMIN nur für Altfälle verwenden."
      "admin.user_management.help.profiles.profile_priority" => "Profile steuern die feingranularen Rechte im Backend."
      "admin.user_management.help.routes_title" => "Routen"
      "admin.user_management.help.routes.bulk" => "Gruppenaktion ausführen"
      "admin.user_management.help.routes.create" => "Neuen Benutzer anlegen"
      "admin.user_management.help.routes.edit" => "Bestehenden Benutzer bearbeiten"
      "admin.user_management.help.routes.list" => "Benutzerliste"
      "admin.user_management.help.routes.reset_password" => "Passwort zurücksetzen"
      "admin.user_management.help.separation_note" => "<strong>Strikte Trennung:</strong> Admin-Benutzer und Shop-Benutzer sind getrennte Welten und dürfen nie vermischt werden."
      "admin.user_management.help.title" => "Hilfe: Admin-Benutzer"
      "admin.user_management.list.columns.delete" => "Löschen"
      "admin.user_management.list.columns.edit" => "Bearbeiten"
      "admin.user_management.list.columns.email" => "E-Mail"
      "admin.user_management.list.columns.name" => "Vollständiger Name"
      "admin.user_management.list.columns.status" => "Status"
      "admin.user_management.list.columns.username" => "Benutzername"
      "admin.user_management.list.page_title" => "Benutzer"
      "admin.user_management.list.reset_password" => "Passwort zurücksetzen"
      "admin.user_management.list.subtitle" => "Benutzerkonten, Rollen und Aktivitätsstatus verwalten."
      "admin.user_management.notifications.created" => "Benutzer wurde angelegt."
      "admin.user_management.notifications.current_password_invalid" => "Das aktuelle Passwort ist nicht korrekt."
      "admin.user_management.notifications.fix_errors" => "Bitte markierte Felder prüfen und Eingaben korrigieren."
      "admin.user_management.notifications.password_changed" => "Passwort wurde geändert."
      "admin.user_management.notifications.password_reset_success" => "Passwort wurde geändert."
      "admin.user_management.notifications.updated" => "Benutzer wurde gespeichert."
      "admin.widget.form.actions.back" => "Zurück"
      "admin.widget.form.actions.cancel" => "Abbrechen"
      "admin.widget.form.actions.help" => "CMS-Hilfe"
      "admin.widget.form.actions.save" => "Speichern"
      "admin.widget.form.fields.name" => "Name"
      "admin.widget.form.fields.placeholder" => "Platzhalter"
      "admin.widget.form.fields.template_content" => "Twig-Template-Inhalt"
      "admin.widget.form.help.placeholder" => "Diesen Schlüssel verwendest du im Layout zur Ausgabe des Widgets."
      "admin.widget.form.help.template_content" => "Twig-Markup für die Ausgabe des Widget-Inhalts."
      "admin.widget.form.meta_title_edit" => "Widget bearbeiten"
      "admin.widget.form.meta_title_new" => "Widget anlegen"
      "admin.widget.form.page_subtitle_edit" => "Bearbeite Inhalte und Platzhalter des bestehenden Widgets."
      "admin.widget.form.page_subtitle_new" => "Erstelle neue Inhalte für Widget-Platzhalter im Frontend."
      "admin.widget.form.page_title_edit" => "Widget bearbeiten"
      "admin.widget.form.page_title_new" => "Widget anlegen"
      "admin.widget.form.panel_title" => "Formular"
      "admin.widget.index.actions.delete" => "Löschen"
      "admin.widget.index.actions.edit" => "Bearbeiten"
      "admin.widget.index.actions.help" => "CMS-Hilfe"
      "admin.widget.index.actions.new" => "Neues Widget"
      "admin.widget.index.delete_confirm" => "Widget "%name%" wirklich löschen?"
      "admin.widget.index.headers.actions" => "Aktionen"
      "admin.widget.index.headers.name" => "Name"
      "admin.widget.index.headers.placeholder" => "Platzhalter"
      "admin.widget.index.list_count" => "%count% Einträge"
      "admin.widget.index.list_title" => "Widget-Liste"
      "admin.widget.index.meta_title" => "Widgets"
      "admin.widget.index.page_subtitle" => "Verwalte dynamische Platzhalter-Inhalte für das Frontend."
      "admin.widget.index.page_title" => "Widgets"
      "admin.widget.index.values.empty" => "Keine Widgets vorhanden."
      "admin.widget.notifications.created" => "Widget wurde angelegt."
      "admin.widget.notifications.deleted" => "Widget wurde gelöscht."
      "admin.widget.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
      "admin.widget.notifications.not_found" => "Widget wurde nicht gefunden."
      "admin.widget.notifications.updated" => "Widget wurde gespeichert."
      "backend.alertMessage.activ" => "aktiviert"
      "backend.alertMessage.create" => "erstellt"
      "backend.alertMessage.deactiv" => "deaktiviert"
      "backend.alertMessage.delete" => "gelöscht"
      "backend.alertMessage.error" => "Fehler"
      "backend.alertMessage.reset" => "zurückgesetzt"
      "backend.alertMessage.send" => "gesendet"
      "backend.alertMessage.success" => "Erfolgreich"
      "backend.alertMessage.update" => "aktualisiert"
      "backend.btnFields.add" => "hinzufügen"
      "backend.btnFields.back" => "zurück"
      "backend.btnFields.cancel" => "abbrechen"
      "backend.btnFields.close" => "schließen"
      "backend.btnFields.delete" => "löschen"
      "backend.btnFields.edit" => "bearbeiten"
      "backend.btnFields.reset" => "zurücksetzen"
      "backend.btnFields.save" => "speichern"
      "backend.btnFields.search" => "suchen"
      "backend.btnFields.send" => "senden"
      "backend.builder.ResetPasswordRequestFormType.message" => "Bitte E-Mail eintragen"
      "backend.errorMessages.changePasswordAfterFirstLogin" => "Passwort nach dem ersten Login ändern"
      "backend.errorMessages.notEmpty" => "Darf nicht leer sein"
      "backend.errorMessages.notFound" => "nicht gefunden"
      "backend.errorMessages.notFoundMessage" => "Die angeforderte Seite wurde nicht gefunden."
      "backend.errorMessages.passwordNotMatch" => "Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchConfirm" => "Die Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchConfirmMessage" => "Die Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchCurrent" => "Das aktuelle Passwort stimmt nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentConfirm" => "Das aktuelle Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentConfirmMessage" => "Das aktuelle Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentMessage" => "Das aktuelle Passwort stimmt nicht überein"
      "backend.errorMessages.passwordNotMatchCurrentNew" => "Das aktuelle Passwort und das neue Passwort dürfen nicht identisch sein"
      "backend.errorMessages.passwordNotMatchCurrentNewMessage" => "Das aktuelle Passwort und das neue Passwort dürfen nicht identisch sein"
      "backend.errorMessages.passwordNotMatchMessage" => "Die Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNew" => "Die neuen Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNewConfirm" => "Das neue Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNewConfirmMessage" => "Das neue Passwort und das bestätigte Passwort stimmen nicht überein"
      "backend.errorMessages.passwordNotMatchNewMessage" => "Die neuen Passwörter stimmen nicht überein"
      "backend.errorMessages.passwordVerify" => "Passwort bestätigen"
      "backend.global.an_unexpected_error" => "Ein unerwarteter Fehler ist aufgetreten"
      "backend.global.change_my_password" => "ändere dein Passwort"
      "backend.global.choice_action" => "Auswahl"
      "backend.global.error" => "Fehler"
      "backend.global.leave_impersonate" => "Identitätswechsel verlassen"
      "backend.global.logout" => "Abmelden"
      "backend.global.must_not_be_empty" => "Darf nicht leer sein"
      "backend.global.no_item_selected" => "kein Produkt ausgewählt"
      "backend.global.please_confirm" => "Bitte bestätigen Sie Ihre Aktion?"
      "backend.global.save" => "Speichern"
      "backend.global.success" => "Erfolgreich"
      "backend.global.welcome" => "willkommen"
      "backend.global.you_are_logged" => "Sie sind angemeldet als"
      "backend.inputFieldLabel.address" => "Adresse"
      "backend.inputFieldLabel.aufsichtsbehoerde" => "Aufsichtsbehörde"
      "backend.inputFieldLabel.berufsbezeichnung" => "Berufsbezeichnung"
      "backend.inputFieldLabel.berufsrechtlicheRegelungen" => "Berufsrechtlichen Regelungen"
      "backend.inputFieldLabel.content" => "Inhalt"
      "backend.inputFieldLabel.description" => "Beschreibung"
      "backend.inputFieldLabel.domain" => "Domain"
      "backend.inputFieldLabel.email" => "E-Mail"
      "backend.inputFieldLabel.faxnumber" => "Fax"
      "backend.inputFieldLabel.image" => "Bild"
      "backend.inputFieldLabel.inhaber" => "Inhaber"
      "backend.inputFieldLabel.kammer" => "Kammer"
      "backend.inputFieldLabel.keyword" => "Schlüsselwörter"
      "backend.inputFieldLabel.message" => "Nachricht"
      "backend.inputFieldLabel.metaDescription" => "Meta Beschreibung"
      "backend.inputFieldLabel.metaKeyword" => "Meta Schlüsselwörter"
      "backend.inputFieldLabel.name" => "Name"
      "backend.inputFieldLabel.object" => "Betreff"
      "backend.inputFieldLabel.phonenumber" => "Telefon"
      "backend.inputFieldLabel.rechtsform" => "Rechtsform"
      "backend.inputFieldLabel.surname" => "Nachname"
      "backend.inputFieldLabel.title" => "Titel"
      "backend.inputFieldLabel.ustIdNr" => "USt-IdNr"
      "backend.menu.blog" => "Blog"
      "backend.menu.breakfast" => "Frühstück"
      "backend.menu.categories" => "Kategorien"
      "backend.menu.contact" => "Kontakt"
      "backend.menu.faq" => "FAQ"
      "backend.menu.general" => "Allgemein"
      "backend.menu.history" => "Historie"
      "backend.menu.home" => "Dashbord"
      "backend.menu.hotelRoomPrice" => "Zimmer Preise"
      "backend.menu.inbox" => "Posteingang"
      "backend.menu.manage" => "Verwalten"
      "backend.menu.page" => "Seiten"
      "backend.menu.profil" => "Benutzer profile"
      "backend.menu.roomPriceContent" => "Zimmer Content"
      "backend.menu.service" => "Service"
      "backend.menu.settings" => "Einstellung"
      "backend.menu.story" => "Geschichte"
      "backend.menu.user" => "Benutzer"
      "backend.role.choice_role" => "änderung der Benutzer Rechte"
      "backend.title.blog" => "Blog"
      "backend.title.categories" => "Kategorien"
      "backend.title.contact" => "Kontakt"
      "backend.title.dashboard" => "Dashboard"
      "backend.title.faq" => "FAQ"
      "backend.title.general" => "Allgemein"
      "backend.title.history" => "Historie"
      "backend.title.inbox" => "Posteingang"
      "backend.title.manage" => "Verwalten"
      "backend.title.process" => "Bearbeiten"
      "backend.title.profil" => "Benutzer profile"
      "backend.title.resetPassword" => "Passwort zurücksetzen"
      "backend.title.roomPriceContent" => "Zimmer content"
      "backend.title.settings" => "Einstellungen"
      "backend.title.user" => "Benutzer"
      "backend.user.Activate" => "Aktivieren"
      "backend.user.add_user" => "Benutzer anlegen"
      "backend.user.cancel" => "Abbrechen"
      "backend.user.changed_password" => "Passwort geändert"
      "backend.user.changer_my_password" => "ändere mein Passwort"
      "backend.user.changer_password" => "Passwort ändern"
      "backend.user.confirm_password" => "Passwort wiederholen"
      "backend.user.current_password" => "aktuelles Passwort"
      "backend.user.deactivate" => "Deaktivieren"
      "backend.user.delete" => "Löschen"
      "backend.user.edit_user" => "Benutzer bearbeiten"
      "backend.user.email" => "E-Mail"
      "backend.user.group_actions" => "Auswahl"
      "backend.user.listing" => "Auflistung"
      "backend.user.modifier" => "Bearbeiten"
      "backend.user.modify_user" => "Benutzer bearbeiten"
      "backend.user.name" => "Alias"
      "backend.user.new_passwod_must_be" => "Die neuen Passwörter müssen identisch sein."
      "backend.user.new_password" => "neues Passwort"
      "backend.user.new_user" => "neuen Benutzer anlegen"
      "backend.user.password" => "Passwort"
      "backend.user.register" => "Registrieren"
      "backend.user.remember_password" => "wiederholen Sie Ihr aktuelles Passwort"
      "backend.user.status" => "Status"
      "backend.user.user_listing" => "Auflistung Benutzer"
      "backend.user.username" => "Benutzername"
      "frontend.arrive.train" => "Anfahrt"
      "frontend.arrive.travellers" => "für Bahnreisende"
      "frontend.b2b.quote.actions.activate" => "Aktivieren"
      "frontend.b2b.quote.actions.active" => "Aktiv"
      "frontend.b2b.quote.actions.status_details" => "Statusdetails"
      "frontend.b2b.quote.actions.submit" => "B2B-Antrag senden"
      "frontend.b2b.quote.actions.update_submit" => "Antrag aktualisieren und senden"
      "frontend.b2b.quote.actions.view_status" => "Bearbeitungsstatus ansehen"
      "frontend.b2b.quote.benefits.net_prices.text" => "Einkauf ohne MwSt. bei vorhandener USt-ID"
      "frontend.b2b.quote.benefits.net_prices.title" => "Netto-Preise"
      "frontend.b2b.quote.benefits.personal_support.text" => "Dedizierter Ansprechpartner"
      "frontend.b2b.quote.benefits.personal_support.title" => "Persönliche Betreuung"
      "frontend.b2b.quote.benefits.priority_shipping.text" => "Bevorzugte Bearbeitung Ihrer Aufträge"
      "frontend.b2b.quote.benefits.priority_shipping.title" => "Prioritäts-Versand"
      "frontend.b2b.quote.benefits.quantity_discounts.text" => "Sonderkonditionen ab Staffelmengen"
      "frontend.b2b.quote.benefits.quantity_discounts.title" => "Mengenrabatte"
      "frontend.b2b.quote.edit_mode_notice" => "Sie bearbeiten Ihren bestehenden B2B-Antrag. Mit dem Absenden wird Ihr Antrag aktualisiert und erneut eingereicht."
      "frontend.b2b.quote.errors.address_review" => "Bitte geben Sie eine eindeutige, realistische Firmenadresse an."
      "frontend.b2b.quote.errors.invalid_email" => "Bitte eine gültige E-Mail-Adresse angeben."
      "frontend.b2b.quote.errors.rate_limit" => "Zu viele B2B-Anfragen in kurzer Zeit."
      "frontend.b2b.quote.errors.required" => "Bitte alle Pflichtfelder ausfüllen."
      "frontend.b2b.quote.flashes.cancel_invalid_csrf" => "Ungültige Anfrage. Bitte erneut versuchen."
      "frontend.b2b.quote.flashes.cancelled" => "Ihr B2B-Antrag wurde zurückgezogen. Sie können ihn bei Bedarf später erneut bearbeiten und absenden."
      "frontend.b2b.quote.flashes.existing_request" => "Es existiert bereits eine laufende B2B-Anfrage."
      "frontend.b2b.quote.flashes.group_activated" => "B2B-Kondition wurde aktiviert."
      "frontend.b2b.quote.flashes.group_not_allowed" => "Nur die für Ihr Konto freigegebene B2B-Gruppe kann aktiviert werden."
      "frontend.b2b.quote.flashes.group_not_approved" => "B2B-Konditionen können erst nach genehmigter Anfrage aktiviert werden."
      "frontend.b2b.quote.flashes.no_active_request" => "Es gibt keinen laufenden Antrag, der zurückgezogen werden kann."
      "frontend.b2b.quote.flashes.submitted" => "Anfrage erfolgreich gesendet. Sie können den Bearbeitungsstatus jetzt einsehen."
      "frontend.b2b.quote.flashes.updated" => "Antrag aktualisiert und erneut eingereicht. Sie können den Bearbeitungsstatus jetzt einsehen."
      "frontend.b2b.quote.flashes.view_mode_locked" => "Netto/Brutto-Umschaltung für B2B ist erst nach Freigabe verfügbar."
      "frontend.b2b.quote.form.address" => "Straße und Hausnummer"
      "frontend.b2b.quote.form.address_placeholder" => "Musterstraße 12"
      "frontend.b2b.quote.form.annual_volume.label" => "Erwartetes Jahresvolumen"
      "frontend.b2b.quote.form.annual_volume.options.2000050000" => "20.000 - 50.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.50000100000" => "50.000 - 100.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.500020000" => "5.000 - 20.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.over_100000" => "über 100.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.options.under_5000" => "unter 5.000 %currency%"
      "frontend.b2b.quote.form.annual_volume.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.city" => "Ort"
      "frontend.b2b.quote.form.city_placeholder" => "Musterstadt"
      "frontend.b2b.quote.form.company_name" => "Firmenname"
      "frontend.b2b.quote.form.company_name_placeholder" => "Musterfirma GmbH"
      "frontend.b2b.quote.form.company_type.label" => "Unternehmensform"
      "frontend.b2b.quote.form.company_type.options.ag" => "AG"
      "frontend.b2b.quote.form.company_type.options.freelancer" => "Freiberufler/in"
      "frontend.b2b.quote.form.company_type.options.gmbh" => "GmbH"
      "frontend.b2b.quote.form.company_type.options.gmbh_co_kg" => "GmbH & Co. KG"
      "frontend.b2b.quote.form.company_type.options.ohg_kg" => "OHG / KG"
      "frontend.b2b.quote.form.company_type.options.other" => "Sonstiges"
      "frontend.b2b.quote.form.company_type.options.sole_proprietorship" => "Einzelunternehmen"
      "frontend.b2b.quote.form.company_type.options.ug" => "UG (haftungsbeschränkt)"
      "frontend.b2b.quote.form.company_type.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.consent_link" => "Datenschutzerklärung"
      "frontend.b2b.quote.form.consent_prefix" => "Ich habe die"
      "frontend.b2b.quote.form.consent_suffix" => "gelesen und stimme der Verarbeitung meiner Daten zu."
      "frontend.b2b.quote.form.contact_name" => "Ansprechpartner"
      "frontend.b2b.quote.form.contact_name_placeholder" => "Max Mustermann"
      "frontend.b2b.quote.form.country" => "Land"
      "frontend.b2b.quote.form.email" => "E-Mail"
      "frontend.b2b.quote.form.email_placeholder" => "einkauf@meinefirma.de"
      "frontend.b2b.quote.form.industry.label" => "Branche"
      "frontend.b2b.quote.form.industry.options.construction_crafts" => "Baugewerbe / Handwerk"
      "frontend.b2b.quote.form.industry.options.education_nonprofit" => "Bildung / Non-Profit"
      "frontend.b2b.quote.form.industry.options.healthcare" => "Gesundheit / Pflege"
      "frontend.b2b.quote.form.industry.options.hospitality" => "Gastronomie / Hotellerie"
      "frontend.b2b.quote.form.industry.options.industry_production" => "Industrie / Produktion"
      "frontend.b2b.quote.form.industry.options.other" => "Sonstiges"
      "frontend.b2b.quote.form.industry.options.public_sector" => "Öffentliche Verwaltung"
      "frontend.b2b.quote.form.industry.options.services" => "Dienstleistung"
      "frontend.b2b.quote.form.industry.options.trade_wholesale" => "Handel / Großhandel"
      "frontend.b2b.quote.form.industry.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.notes" => "Nachricht / Besondere Anforderungen"
      "frontend.b2b.quote.form.notes_placeholder" => "Welche Produkte interessieren Sie? Gibt es besondere Anforderungen?"
      "frontend.b2b.quote.form.order_frequency.label" => "Bestellfrequenz"
      "frontend.b2b.quote.form.order_frequency.options.monthly" => "Monatlich"
      "frontend.b2b.quote.form.order_frequency.options.on_demand" => "Nach Bedarf"
      "frontend.b2b.quote.form.order_frequency.options.one_time" => "Einmalig / Projektbezogen"
      "frontend.b2b.quote.form.order_frequency.options.weekly" => "Wöchentlich"
      "frontend.b2b.quote.form.order_frequency.placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.phone" => "Telefon"
      "frontend.b2b.quote.form.phone_placeholder" => "+49 30 12345678"
      "frontend.b2b.quote.form.position" => "Position / Abteilung"
      "frontend.b2b.quote.form.position_placeholder" => "Einkaufsleiter"
      "frontend.b2b.quote.form.requested_group" => "Gewünschte B2B-Kondition"
      "frontend.b2b.quote.form.requested_group_help" => "Die finale Freigabe erfolgt nach Prüfung durch das Team."
      "frontend.b2b.quote.form.requested_group_placeholder" => "Bitte wählen"
      "frontend.b2b.quote.form.vat_id" => "USt-IdNr. (für Netto-Preise)"
      "frontend.b2b.quote.form.vat_id_placeholder" => "DE123456789"
      "frontend.b2b.quote.form.website" => "Website"
      "frontend.b2b.quote.form.website_placeholder" => "https://www.meinefirma.de"
      "frontend.b2b.quote.form.zip" => "PLZ"
      "frontend.b2b.quote.form.zip_placeholder" => "12345"
      "frontend.b2b.quote.hero_title" => "B2B-Registrierung"
      "frontend.b2b.quote.message_labels.address" => "Adresse"
      "frontend.b2b.quote.message_labels.annual_volume" => "Jahresvolumen"
      "frontend.b2b.quote.message_labels.company_type" => "Unternehmensform"
      "frontend.b2b.quote.message_labels.country" => "Land"
      "frontend.b2b.quote.message_labels.industry" => "Branche"
      "frontend.b2b.quote.message_labels.notes_heading" => "Nachricht"
      "frontend.b2b.quote.message_labels.order_frequency" => "Bestellfrequenz"
      "frontend.b2b.quote.message_labels.position" => "Position"
      "frontend.b2b.quote.message_labels.vat_id" => "USt-IdNr."
      "frontend.b2b.quote.message_labels.website" => "Website"
      "frontend.b2b.quote.meta_title" => "B2B-Registrierung und Angebotsanfrage"
      "frontend.b2b.quote.page_subtitle" => "Profitieren Sie von exklusiven Unternehmenskonditionen, individuellen Preisen und persönlichem Ansprechpartner."
      "frontend.b2b.quote.page_title" => "B2B-Zugang beantragen"
      "frontend.b2b.quote.price_view.gross" => "Brutto"
      "frontend.b2b.quote.price_view.net" => "Netto"
      "frontend.b2b.quote.response_time" => "Wir melden uns in der Regel innerhalb von 1-2 Werktagen bei Ihnen."
      "frontend.b2b.quote.sections.company" => "Unternehmensdaten"
      "frontend.b2b.quote.sections.contact" => "Kontaktperson"
      "frontend.b2b.quote.sections.requirements" => "Bedarfsangaben"
      "frontend.b2b.quote.sidebar.call_hours" => "Mo-Fr 9-17 Uhr"
      "frontend.b2b.quote.sidebar.call_title" => "Anruf vereinbaren"
      "frontend.b2b.quote.sidebar.conditions_locked" => "B2B-Konditionen sind aus Sicherheitsgründen erst nach genehmigter Anfrage aktivierbar."
      "frontend.b2b.quote.sidebar.conditions_title" => "B2B-Konditionen"
      "frontend.b2b.quote.sidebar.contact_text" => "Sie möchten lieber direkt sprechen?"
      "frontend.b2b.quote.sidebar.contact_title" => "Persönliche Beratung"
      "frontend.b2b.quote.sidebar.current_group" => "Gruppe:"
      "frontend.b2b.quote.sidebar.current_price_view" => "Aktuelle Preisansicht:"
      "frontend.b2b.quote.sidebar.discount_suffix" => "Rabatt"
      "frontend.b2b.quote.sidebar.email_response" => "Antwort innerhalb von 24h"
      "frontend.b2b.quote.sidebar.email_title" => "E-Mail schreiben"
      "frontend.b2b.quote.sidebar.latest_request" => "Letzter Antrag:"
      "frontend.b2b.quote.sidebar.no_groups" => "Noch keine B2B-Gruppen konfiguriert."
      "frontend.b2b.quote.sidebar.no_request" => "Es liegt noch kein B2B-Antrag vor."
      "frontend.b2b.quote.sidebar.received_at" => "Eingang:"
      "frontend.b2b.quote.sidebar.status_title" => "B2B-Status"
      "frontend.b2b.quote.status.approved" => "Genehmigt"
      "frontend.b2b.quote.status.cancelled" => "Zurückgezogen"
      "frontend.b2b.quote.status.in_review" => "In Prüfung"
      "frontend.b2b.quote.status.open" => "Offen"
      "frontend.b2b.quote.status.rejected" => "Abgelehnt"
      "frontend.b2b.status_page.actions.cancel" => "Antrag zurückziehen"
      "frontend.b2b.status_page.actions.cancel_confirm" => "Möchten Sie Ihren laufenden B2B-Antrag wirklich zurückziehen?"
      "frontend.b2b.status_page.actions.edit" => "Antrag bearbeiten"
      "frontend.b2b.status_page.actions.title" => "Aktionen"
      "frontend.b2b.status_page.actions.view_conditions" => "B2B-Konditionen ansehen"
      "frontend.b2b.status_page.current_request_title" => "Ihr aktueller Antrag"
      "frontend.b2b.status_page.fields.approved_group" => "Freigegebene Gruppe:"
      "frontend.b2b.status_page.fields.company" => "Firma:"
      "frontend.b2b.status_page.fields.contact" => "Ansprechpartner:"
      "frontend.b2b.status_page.fields.email" => "E-Mail:"
      "frontend.b2b.status_page.fields.none_selected" => "Keine Auswahl"
      "frontend.b2b.status_page.fields.requested_condition" => "Gewünschte Kondition:"
      "frontend.b2b.status_page.fields.status" => "Status:"
      "frontend.b2b.status_page.fields.submitted_at" => "Gesendet am:"
      "frontend.b2b.status_page.messages.approved" => "Ihr B2B-Antrag ist freigegeben. Sie können jetzt B2B-Konditionen aktivieren."
      "frontend.b2b.status_page.messages.cancelled" => "Ihr Antrag wurde von Ihnen zurückgezogen. Sie können ihn jederzeit über "Bearbeiten" erneut anpassen und absenden."
      "frontend.b2b.status_page.messages.in_review" => "Ihr Antrag ist in Bearbeitung. Wir melden uns in der Regel innerhalb von 1-2 Werktagen."
      "frontend.b2b.status_page.messages.none" => "Es liegt aktuell kein B2B-Antrag vor."
      "frontend.b2b.status_page.messages.rejected" => "Ihr Antrag wurde abgelehnt. Sie können eine neue Anfrage mit ergänzten Informationen senden."
      "frontend.b2b.status_page.meta_title" => "B2B Bearbeitungsstatus"
      "frontend.b2b.status_page.modal.cancel" => "Abbrechen"
      "frontend.b2b.status_page.modal.confirm" => "Zurückziehen"
      "frontend.b2b.status_page.modal.title" => "Aktion bestätigen"
      "frontend.b2b.status_page.next_steps.step_1" => "Antrag prüfen"
      "frontend.b2b.status_page.next_steps.step_2" => "Freigabe oder Rückfrage"
      "frontend.b2b.status_page.next_steps.step_3" => "B2B-Konditionen aktivieren"
      "frontend.b2b.status_page.next_steps.title" => "Nächste Schritte"
      "frontend.b2b.status_page.subtitle" => "Hier sehen Sie transparent, ob Ihr B2B-Zugang offen, in Prüfung, genehmigt oder abgelehnt ist."
      "frontend.b2b.status_page.title" => "B2B-Antrag: Bearbeitungsstatus"
      "frontend.blog.actions.edit" => "Bearbeiten"
      "frontend.blog.actions.edit_post" => "Beitrag bearbeiten"
      "frontend.blog.actions.read_more" => "Weiterlesen"
      "frontend.blog.detail.published_on" => "Veröffentlicht am %date%"
      "frontend.blog.empty.badge" => "Blog in Vorbereitung"
      "frontend.blog.empty.contact_action" => "Kontakt aufnehmen"
      "frontend.blog.empty.shop_action" => "Zum Shop"
      "frontend.blog.empty.text" => "Bis dahin finden Sie im Shop bereits alle aktuellen Produkte und erreichen uns für Rückfragen direkt über das Kontaktformular."
      "frontend.blog.empty.title" => "Neue Einblicke, Tipps und Produkt-News folgen in Kürze."
      "frontend.blog.label" => "Blog"
      "frontend.blog.meta.description" => "Alle Beiträge aus unserem Blog."
      "frontend.blog.meta.title" => "Blog"
      "frontend.breakfast.text_1" => "Jeder, der in unserem schönen NFOK übernachtet, darf sich am nächsten Tag auf ein außergewöhnlich reichhaltiges Frühstücksbuffet mit höchsten Qualitätsstandards freuen. So gestärkt starten Sie garantiert erfolgreich in Ihren Tag."
      "frontend.breakfast.text_10" => "Unser Angebot an warmen Speisen, auf Wunsch des Gastes, wie zum Beispiel: Spiegeleier"
      "frontend.breakfast.text_11" => "Am Buffet stehen Kaffee, Tee und heiße Schokolade sowie verschiedene Mineralwasser, Säfte und Tee bereit. Um Ihren Aufenthalt noch entspannter zu gestalten, bieten wir Ihnen natürlich auch die Möglichkeit, ein reichhaltiges Frühstück direkt in Ihrem Zimmer einzunehmen."
      "frontend.breakfast.text_12" => "Das reichhaltige Frühstücksbuffet steht Ihnen täglich in der Zeit von Mo.-Fr.: 07:00 bis 10:00 Uhr und Sa.-So.: 08:00 bis 10:00 Uhr."
      "frontend.breakfast.text_13" => "Für weitere Informationen, stehen Ihnen unsere freundlichen Mitarbeitenden an der Hotel- Rezeption zur Verfügung."
      "frontend.breakfast.text_2" => "Wir achten beim Einkauf besonders auf den saisonalen und regionalen Bezug der Produkte für das Frühstücksbuffet."
      "frontend.breakfast.text_3" => "Genießen Sie unser reichhaltiges Frühstücksbuffet im NFOK 35:"
      "frontend.breakfast.text_4" => "reichhaltiges Brot und Brötchenauswahl"
      "frontend.breakfast.text_5" => "Vielfältige Auswahl an Konfitüren, süße und würzige Aufstriche sowie Nutella und Honig"
      "frontend.breakfast.text_6" => "Großartige Wurst- und Käseauswahl"
      "frontend.breakfast.text_7" => "Umfassendes Angebot an Zerealien und Müslis mit Milch"
      "frontend.breakfast.text_8" => "Milchprodukte wie Joghurt- und Quark"
      "frontend.breakfast.text_9" => "Frisches Obst- und Gemüsesalate"
      "frontend.cart.actions.add_to_cart" => "In den Warenkorb"
      "frontend.cart.actions.checkout" => "Zur Kasse"
      "frontend.cart.actions.continue_shopping" => "Weiter einkaufen"
      "frontend.cart.coupon.apply" => "Anwenden"
      "frontend.cart.coupon.error" => "Coupon konnte nicht angewendet werden."
      "frontend.cart.coupon.label" => "Gutscheincode"
      "frontend.cart.coupon.placeholder" => "Code eingeben"
      "frontend.cart.coupon.success" => "Coupon erfolgreich angewendet."
      "frontend.cart.cross_sell.benefit_text" => "%label%-Vorteil:"
      "frontend.cart.cross_sell.default_label" => "Cross-Sell"
      "frontend.cart.empty.cta" => "Zum Shop"
      "frontend.cart.empty.text" => "Stöbern Sie in unserem Sortiment und fügen Sie Produkte hinzu."
      "frontend.cart.empty.title" => "Ihr Warenkorb ist leer"
      "frontend.cart.errors.cart_missing" => "Kein Warenkorb vorhanden."
      "frontend.cart.errors.item_not_found" => "Warenkorb-Position nicht gefunden."
      "frontend.cart.page_title" => "Warenkorb"
      "frontend.cart.recommendations.subtitle" => "Aktive Cross-Sell-, Up-Sell- und Bundle-Regeln aus dem Backend werden hier im Frontend ausgespielt."
      "frontend.cart.recommendations.title" => "Dazu passend"
      "frontend.cart.security_note" => "Sicher & verschlüsselt"
      "frontend.cart.summary.cross_sell_benefit" => "Cross-Sell-Vorteil"
      "frontend.cart.summary.cross_sell_hint" => "Der Cross-Sell-Vorteil ist schon in der Zwischensumme berücksichtigt und wird nicht erneut abgezogen."
      "frontend.cart.summary.discount" => "Rabatt"
      "frontend.cart.summary.discount_with_code" => "Rabatt (%code%)"
      "frontend.cart.summary.grand_total" => "Gesamt"
      "frontend.cart.summary.included_vat" => "enthaltene MwSt. (19%)"
      "frontend.cart.summary.subtotal" => "Zwischensumme"
      "frontend.cart.summary.subtotal_hint" => "Cross-Sell-Vorteile sind in dieser Zwischensumme bereits eingerechnet."
      "frontend.cart.summary.title" => "Zusammenfassung"
      "frontend.cart.summary.total_with_shipping" => "Versandkosten"
      "frontend.cart.table.no_image" => "Kein Bild"
      "frontend.cart.table.price" => "Preis"
      "frontend.cart.table.product" => "Produkt"
      "frontend.cart.table.quantity" => "Menge"
      "frontend.cart.table.remove" => "Entfernen"
      "frontend.cart.table.total" => "Summe"
      "frontend.checkout.address.city_invalid" => "Bitte geben Sie einen realistischen Ort an."
      "frontend.checkout.address.city_required" => "Bitte geben Sie einen Ort an."
      "frontend.checkout.address.country_required" => "Bitte wählen Sie ein Land aus."
      "frontend.checkout.address.country_unavailable" => "Dieses Land ist aktuell nicht für den Versand freigeschaltet."
      "frontend.checkout.address.external_invalid_response" => "Die externe Adressprüfung lieferte keine gültige Antwort."
      "frontend.checkout.address.external_unconfirmed" => "Die Adresse konnte extern nicht bestätigt werden."
      "frontend.checkout.address.external_unreachable" => "Die externe Adressprüfung war nicht erreichbar."
      "frontend.checkout.address.phone_incomplete" => "Die Telefonnummer wirkt unvollständig."
      "frontend.checkout.address.placeholder_address" => "Die Lieferadresse wirkt wie eine Platzhalteradresse."
      "frontend.checkout.address.placeholder_city" => "Der Ort wirkt wie ein Platzhalter."
      "frontend.checkout.address.postal_mismatch_de" => "PLZ und Ort passen in Deutschland nicht zusammen."
      "frontend.checkout.address.postal_unknown_de" => "Die PLZ ist in Deutschland nicht bekannt."
      "frontend.checkout.address.street_invalid" => "Bitte geben Sie eine realistische Straße mit Hausnummer oder Packstations-/Postfachadresse an."
      "frontend.checkout.address.street_required" => "Bitte geben Sie eine Straße mit Hausnummer an."
      "frontend.checkout.address.zip_invalid_country" => "Die PLZ passt nicht zum ausgewählten Land."
      "frontend.checkout.address.zip_required" => "Bitte geben Sie eine PLZ an."
      "frontend.checkout.breadcrumb.current" => "Kasse"
      "frontend.checkout.controller.address_review_warning" => "Ihre Bestellung wurde aufgenommen. Vor dem Versand prüfen wir die angegebene Adresse noch manuell."
      "frontend.checkout.controller.card_assigned" => "Die Kartenzahlung ist bereits einer anderen Bestellung zugeordnet."
      "frontend.checkout.controller.card_unconfirmed" => "Die Kartenzahlung wurde nicht erfolgreich bestätigt. Bitte prüfen Sie Ihre Zahlungsdaten."
      "frontend.checkout.controller.csrf_invalid" => "Ungültige Bestellung. Bitte versuchen Sie es erneut."
      "frontend.checkout.controller.mail_warning" => "Ihre Bestellung wurde aufgenommen, aber die Bestellbestätigung konnte derzeit nicht per E-Mail versendet werden."
      "frontend.checkout.controller.payment_invalid" => "Die gewählte Zahlungsart steht aktuell nicht zur Verfügung."
      "frontend.checkout.controller.payment_required" => "Bitte wählen Sie eine Zahlungsart."
      "frontend.checkout.controller.payment_unavailable" => "Aktuell ist keine verfügbare Zahlungsart konfiguriert."
      "frontend.checkout.controller.pickup_required" => "Mindestens ein Produkt in Ihrem Warenkorb ist nur zur Abholung verfügbar. Bitte wählen Sie Abholung im Geschäft."
      "frontend.checkout.controller.pickup_unavailable" => "Abholung ist für die aktuelle Warenkorb-Zusammenstellung nicht verfügbar."
      "frontend.checkout.controller.shipping_invalid" => "Die gewählte Versandart steht für das ausgewählte Lieferland nicht zur Verfügung."
      "frontend.checkout.controller.shipping_required" => "Bitte wählen Sie eine Versandart."
      "frontend.checkout.controller.shipping_unavailable" => "Für das ausgewählte Lieferland ist aktuell keine Versandart verfügbar."
      "frontend.checkout.coupon.applied" => "Coupon erfolgreich angewendet."
      "frontend.checkout.coupon.apply_error" => "Coupon konnte nicht angewendet werden."
      "frontend.checkout.coupon.code_required" => "Bitte geben Sie einen Gutscheincode ein."
      "frontend.checkout.coupon.empty_cart" => "Ihr Warenkorb ist leer."
      "frontend.checkout.coupon.label" => "Rabatt"
      "frontend.checkout.coupon.label_with_code" => "Rabatt (__CODE__)"
      "frontend.checkout.coupon.request_error" => "Fehler beim Anwenden des Coupons."
      "frontend.checkout.errors.summary_title" => "Bitte prüfen Sie Ihre Angaben."
      "frontend.checkout.fulfillment.pickup" => "Abholung im Geschäft"
      "frontend.checkout.fulfillment.shipping" => "Versand"
      "frontend.checkout.hero.kicker" => "Sicherer Checkout"
      "frontend.checkout.hero.subtitle" => "Adresse prüfen, Versand wählen, sicher bezahlen. Keine überflüssigen Felder, keine verwirrenden Zwischenschritte."
      "frontend.checkout.hero.title" => "Bestellung in wenigen klaren Schritten abschließen"
      "frontend.checkout.hero.trust_aria" => "Checkout Vorteile"
      "frontend.checkout.hero.trust.account" => "Kundendaten werden übernommen"
      "frontend.checkout.hero.trust.security" => "SSL-gesichert"
      "frontend.checkout.hero.trust.speed" => "Schneller Abschluss"
      "frontend.checkout.js.cardholder_fallback" => "Kunde"
      "frontend.checkout.js.stripe_confirm_error" => "Die Zahlung konnte nicht bestätigt werden."
      "frontend.checkout.js.stripe_intent_error" => "Stripe Payment Intent konnte nicht erstellt werden."
      "frontend.checkout.js.stripe_pending" => "Die Zahlung ist noch nicht abgeschlossen. Bitte prüfen Sie die Rückmeldung von Stripe."
      "frontend.checkout.js.stripe_server_error" => "Stripe Server nicht erreichbar."
      "frontend.checkout.js.stripe_unavailable" => "Kreditkartenzahlung ist momentan nicht verfügbar."
      "frontend.checkout.logged_in.text" => "Bekannte Kundendaten wurden für den Checkout vorausgefüllt und können hier noch angepasst werden."
      "frontend.checkout.logged_in.title" => "Sie sind angemeldet."
      "frontend.checkout.login.actions.forgot_password" => "Passwort vergessen?"
      "frontend.checkout.login.actions.register" => "Noch kein Konto? Registrieren"
      "frontend.checkout.login.actions.submit" => "Anmelden"
      "frontend.checkout.login.eyebrow" => "Optional"
      "frontend.checkout.login.fields.email" => "E-Mail"
      "frontend.checkout.login.fields.password" => "Passwort"
      "frontend.checkout.login.text" => "Sie können sich direkt hier einloggen und bleiben danach im Checkout. Alternativ bestellen Sie einfach als Gast weiter."
      "frontend.checkout.login.title" => "Mit Kundenkonto schneller abschließen"
      "frontend.checkout.meta.title" => "Kasse - Shop"
      "frontend.checkout.payment.methods.card.badge" => "Empfohlen"
      "frontend.checkout.payment.methods.card.meta" => "Visa, Mastercard und weitere gängige Karten werden unterstützt."
      "frontend.checkout.payment.methods.card.title" => "Kreditkarte"
      "frontend.checkout.pickup_status.collected" => "Abgeholt"
      "frontend.checkout.pickup_status.pending" => "Abholung wird vorbereitet"
      "frontend.checkout.pickup_status.ready" => "Bereit zur Abholung"
      "frontend.checkout.sections.address.billing_address" => "Rechnungsadresse"
      "frontend.checkout.sections.address.billing_toggle" => "Abweichende Rechnungsadresse angeben"
      "frontend.checkout.sections.address.eyebrow" => "Schritt 1"
      "frontend.checkout.sections.address.fields.address" => "Straße und Hausnummer"
      "frontend.checkout.sections.address.fields.city" => "Stadt"
      "frontend.checkout.sections.address.fields.country" => "Land"
      "frontend.checkout.sections.address.fields.email" => "E-Mail"
      "frontend.checkout.sections.address.fields.name" => "Name"
      "frontend.checkout.sections.address.fields.phone" => "Telefon"
      "frontend.checkout.sections.address.fields.zip" => "PLZ"
      "frontend.checkout.sections.address.shipping_address" => "Lieferadresse"
      "frontend.checkout.sections.address.text" => "Diese Daten verwenden wir für Lieferung, Rückfragen und die Rechnungsstellung. Eine abweichende Rechnungsadresse können Sie separat erfassen. Unklare Adressen werden vor dem Versand manuell geprüft."
      "frontend.checkout.sections.address.title" => "Lieferadresse und Rechnungsadresse"
      "frontend.checkout.sections.payment.card_data_text" => "Geben Sie Ihre Kartendaten ein. Adressdaten werden separat aus dem Formular verwendet."
      "frontend.checkout.sections.payment.card_data_title" => "Kartendaten"
      "frontend.checkout.sections.payment.eyebrow" => "Schritt 3"
      "frontend.checkout.sections.payment.provider" => "Stripe"
      "frontend.checkout.sections.payment.text" => "Verfügbare und live verdrahtete Zahlungsarten für den aktuellen Checkout."
      "frontend.checkout.sections.payment.title" => "Zahlungsart"
      "frontend.checkout.sections.payment.unavailable" => "Aktuell ist keine live verfügbare Zahlungsart konfiguriert."
      "frontend.checkout.sections.shipping.eyebrow" => "Schritt 2"
      "frontend.checkout.sections.shipping.pickup_text" => "Keine Versandkosten. Wir informieren Sie, sobald die Bestellung zur Abholung bereitsteht."
      "frontend.checkout.sections.shipping.pickup_unavailable_items" => "Abholung ist für diese Position(en) nicht verfügbar: %items%."
      "frontend.checkout.sections.shipping.shipping_text" => "Lieferung an die angegebene Adresse mit verfügbarer Versandart."
      "frontend.checkout.sections.shipping.text" => "Wählen Sie Versand oder Abholung. Kontakt- und Rechnungsdaten bleiben für Rückfragen und Rechnung erforderlich."
      "frontend.checkout.sections.shipping.title" => "Lieferart wählen"
      "frontend.checkout.sections.shipping.unavailable" => "Für das ausgewählte Lieferland ist aktuell keine Versandart hinterlegt."
      "frontend.checkout.steps.address" => "Adresse"
      "frontend.checkout.steps.payment" => "Zahlung"
      "frontend.checkout.steps.shipping" => "Versand"
      "frontend.checkout.steps.summary" => "Prüfen"
      "frontend.checkout.summary.back_to_cart" => "Zurück zum Warenkorb"
      "frontend.checkout.summary.count" => "%count% Positionen"
      "frontend.checkout.summary.coupon_apply" => "Anwenden"
      "frontend.checkout.summary.coupon_placeholder" => "Gutscheincode"
      "frontend.checkout.summary.cross_sell_discount" => "Cross-Sell-Vorteil"
      "frontend.checkout.summary.cross_sell_info" => "Der Cross-Sell-Vorteil ist schon in der Zwischensumme berücksichtigt und wird nicht erneut abgezogen."
      "frontend.checkout.summary.discount" => "Rabatt"
      "frontend.checkout.summary.empty" => "Ihr Warenkorb ist leer."
      "frontend.checkout.summary.eyebrow" => "Schritt 4"
      "frontend.checkout.summary.item_discount" => "%label%-Vorteil: -%discount%%"
      "frontend.checkout.summary.legal" => "Mit dem Klick auf den Button schließen Sie die Bestellung verbindlich ab."
      "frontend.checkout.summary.pickup_ready" => "Abholung nach Bereitmeldung"
      "frontend.checkout.summary.secure" => "SSL-verschlüsselte Datenübertragung"
      "frontend.checkout.summary.shipping" => "Versand"
      "frontend.checkout.summary.shipping_method" => "Versandart"
      "frontend.checkout.summary.submit" => "Zahlungspflichtig bestellen"
      "frontend.checkout.summary.subtotal" => "Zwischensumme"
      "frontend.checkout.summary.subtotal_info" => "Cross-Sell-Vorteile sind in dieser Zwischensumme bereits eingerechnet."
      "frontend.checkout.summary.title" => "Bestellung prüfen"
      "frontend.checkout.summary.total" => "Gesamt"
      "frontend.checkout.summary.tracking" => "Lieferung mit Sendungsverfolgung"
      "frontend.checkout.summary.vat" => "Enthaltene MwSt. (19%)"
      "frontend.checkout.validation.address_required" => "Bitte geben Sie eine Lieferadresse an."
      "frontend.checkout.validation.billing_address_required" => "Bitte geben Sie eine Rechnungsadresse an."
      "frontend.checkout.validation.billing_city_required" => "Bitte geben Sie einen Ort für die Rechnungsadresse an."
      "frontend.checkout.validation.billing_email_invalid" => "Bitte geben Sie eine gültige E-Mail-Adresse für die Rechnungsadresse an."
      "frontend.checkout.validation.billing_email_required" => "Bitte geben Sie die E-Mail-Adresse der Rechnungsadresse an."
      "frontend.checkout.validation.billing_name_required" => "Bitte geben Sie den Namen der Rechnungsadresse an."
      "frontend.checkout.validation.billing_zip_required" => "Bitte geben Sie eine PLZ für die Rechnungsadresse an."
      "frontend.checkout.validation.city_required" => "Bitte geben Sie einen Ort an."
      "frontend.checkout.validation.email_invalid" => "Bitte geben Sie eine gültige E-Mail-Adresse an."
      "frontend.checkout.validation.email_required" => "Bitte geben Sie Ihre E-Mail-Adresse an."
      "frontend.checkout.validation.name_required" => "Bitte geben Sie Ihren Namen an."
      "frontend.checkout.validation.zip_required" => "Bitte geben Sie eine PLZ an."
      "frontend.contact_me.info" => "Für Fragen zu unseren Dienstleistungen steht Ihnen nachfolgendes Formular zur Verfügung. Wir werden uns umgehend bei Ihnen melden."
      "frontend.footer.copyright" => "NFOK"
      "frontend.footer.hotel" => "NFOK"
      "frontend.footer.info" => "Ihr Partner für Mediendesigns, Netzwerk- Administration, IT- Beratung/Schulung, Datenbank- Management, IT- Infrastruktur und IT- Projektmanagement."
      "frontend.footer.title" => "„WORK“"
      "frontend.furnishing.living_room.tx1" => "1 Zimmer mit einem Bett und Sitzbereich."
      "frontend.furnishing.living_room.tx2" => "Schreibtisch"
      "frontend.gallery.info" => "Ein Einblick ins NFOK"
      "frontend.global.adresses.call_phonenumber" => "000000000"
      "frontend.global.adresses.city" => "Bremerhaven"
      "frontend.global.adresses.country" => "Bremen"
      "frontend.global.adresses.country_code" => "27570"
      "frontend.global.adresses.email" => "nfokwork@gmail.com"
      "frontend.global.adresses.email_txt" => "E-Mail:"
      "frontend.global.adresses.faxnumber" => "000 / 000000"
      "frontend.global.adresses.faxnumber_txt" => "Telefax:"
      "frontend.global.adresses.phonenumber" => "000 / 000000"
      "frontend.global.adresses.phonenumber_txt" => "Telefon:"
      "frontend.global.adresses.street" => "auf Anfrage!"
      "frontend.global.adresses.website" => "www.nfok.xyz"
      "frontend.global.adresses.website_txt" => "Internet:"
      "frontend.global.current_availability" => "Mo. – Fr.: 09:00 bis 18:00 Uhr"
      "frontend.global.current2_availability" => "Sa. – So.: 09:00 bis 18:00 Uhr"
      "frontend.global.input_field_names.email" => "E-Mail"
      "frontend.global.text_availability" => "Sie erreichen uns von:"
      "frontend.help.account.lead" => "Alles rund um Bestellungen, Wunschliste, Profilpflege und Retouren im Kundenkonto."
      "frontend.help.account.sections.orders.body" => """
        <ul class="help-doc-list">\n
          <li>Unter <strong>Mein Konto &rarr; Bestellungen</strong> siehst du alle bisherigen Aufträge.</li>\n
          <li>Status, Betrag, Datum und Detailansicht sind direkt verfügbar.</li>\n
          <li>Je nach Status kannst du Rechnung laden, erneut bestellen oder stornieren.</li>\n
        </ul>
        """
      "frontend.help.account.sections.orders.eyebrow" => "Bestellungen"
      "frontend.help.account.sections.orders.title" => "Historie und Auftragsdetails"
      "frontend.help.account.sections.profile.body" => """
        <ul class="help-doc-list">\n
          <li>Name, E-Mail-Adresse und weitere Kontodaten lassen sich jederzeit anpassen.</li>\n
          <li>Auch Lieferadresse und Passwort können gepflegt werden.</li>\n
          <li>Gültige Eingaben helfen dabei, Checkout und Serviceprozesse reibungslos zu halten.</li>\n
        </ul>
        """
      "frontend.help.account.sections.profile.eyebrow" => "Profilpflege"
      "frontend.help.account.sections.profile.title" => "Daten und Adresse aktualisieren"
      "frontend.help.account.sections.rma.body" => """
        <ul class="help-doc-list">\n
          <li>Retouren erreichst du über <strong>Mein Konto &rarr; Retouren</strong>.</li>\n
          <li>Es können nur geeignete, bereits gelieferte Bestellungen verwendet werden.</li>\n
          <li>Status und Verlauf jeder Rücksendung bleiben im Kundenkonto sichtbar.</li>\n
        </ul>
        """
      "frontend.help.account.sections.rma.eyebrow" => "Service"
      "frontend.help.account.sections.rma.title" => "Retouren aus dem Konto starten"
      "frontend.help.account.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Bestellungen, Profilpflege und Retouren wurden gemäß aktuellem Konto-Menü dokumentiert.</li>\n
          <li>Verlinkungen aus der Hilfe führen auf die heute vorhandenen Konto-Routen.</li>\n
          <li>Hinweise zu Datenpflege und Folgeprozessen wurden für den aktuellen Checkout-Stand angepasst.</li>\n
        </ul>
        """
      "frontend.help.account.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.account.sections.updated.title" => "Kundenkonto und Service-Bereiche"
      "frontend.help.account.sections.wishlist.body" => """
        <ul class="help-doc-list">\n
          <li>Produkte lassen sich auf der Detailseite merken.</li>\n
          <li>Gespeicherte Artikel kannst du später gesammelt vergleichen.</li>\n
          <li>Aus der Wunschliste lassen sich Produkte direkt wieder in den Warenkorb legen.</li>\n
        </ul>
        """
      "frontend.help.account.sections.wishlist.eyebrow" => "Merkliste"
      "frontend.help.account.sections.wishlist.title" => "Wunschliste für spätere Entscheidungen"
      "frontend.help.account.sidebar.links.dashboard" => "Mein Konto"
      "frontend.help.account.sidebar.links.edit" => "Profil bearbeiten"
      "frontend.help.account.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.account.sidebar.links.overview" => "Mehr Hilfe-Themen"
      "frontend.help.account.sidebar.links.title" => "Zu den wichtigsten Konto-Bereichen"
      "frontend.help.account.sidebar.note.body" => """
        <ul>\n
          <li>Bestellungen, Retouren und Support sind an einem Ort gebündelt.</li>\n
          <li>Gespeicherte Daten beschleunigen den Checkout deutlich.</li>\n
          <li>Der Kundenbereich bleibt auf deutsch und englisch konsistent verlinkt.</li>\n
        </ul>
        """
      "frontend.help.account.sidebar.note.eyebrow" => "Anmeldung lohnt sich"
      "frontend.help.account.sidebar.note.title" => "Warum das Kundenkonto zentral ist"
      "frontend.help.b2b.lead" => "Der Geschäftskundenbereich für Angebotsanfragen, gruppenspezifische Konditionen und B2B-Freischaltung."
      "frontend.help.b2b.sections.access.body" => """
        <ul class="help-doc-list">\n
          <li>B2B richtet sich an gewerbliche Kunden mit freigeschaltetem Konto.</li>\n
          <li>Nach Zuordnung zu einer passenden Gruppe können spezielle Preisregeln sichtbar werden.</li>\n
          <li>Je nach Konfiguration sind Netto-Ansicht und Angebotsanfragen möglich.</li>\n
        </ul>
        """
      "frontend.help.b2b.sections.access.eyebrow" => "Freischaltung"
      "frontend.help.b2b.sections.access.title" => "Was der B2B-Bereich bietet"
      "frontend.help.b2b.sections.request.body" => """
        <ol class="help-doc-list">\n
          <li>Lege die gewünschten Produkte in den Warenkorb.</li>\n
          <li>Öffne den B2B-Quote-Bereich.</li>\n
          <li>Prüfe Positionen und ergänze bei Bedarf eine Notiz.</li>\n
          <li>Sende die Anfrage für die interne Prüfung ab.</li>\n
        </ol>
        """
      "frontend.help.b2b.sections.request.eyebrow" => "Angebot"
      "frontend.help.b2b.sections.request.title" => "Angebotsanfrage absenden"
      "frontend.help.b2b.sections.statuses.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Status</th><th>Bedeutung</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-warning">Offen</span></td><td>Anfrage eingegangen und in Prüfung.</td></tr>\n
            <tr><td><span class="badge badge-success">Genehmigt</span></td><td>Das Angebot ist bestätigt und kann weiterverarbeitet werden.</td></tr>\n
            <tr><td><span class="badge badge-danger">Abgelehnt</span></td><td>Die Anfrage wurde nicht freigegeben.</td></tr>\n
            <tr><td><span class="badge badge-secondary">Storniert</span></td><td>Die Anfrage wurde zurückgezogen.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.b2b.sections.statuses.eyebrow" => "Status"
      "frontend.help.b2b.sections.statuses.title" => "Wie Angebotsanfragen bewertet werden"
      "frontend.help.b2b.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Hilfe beschreibt den aktuellen Ablauf für Angebotsanfragen im B2B-Frontend.</li>\n
          <li>Statuswerte und Freischaltungslogik wurden an den laufenden Prozess angepasst.</li>\n
          <li>Hinweise zu Kontakt und weiteren B2B-Schritten sind auf den heutigen Stand gebracht.</li>\n
        </ul>
        """
      "frontend.help.b2b.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.b2b.sections.updated.title" => "B2B-Quote und Freischaltungslogik"
      "frontend.help.b2b.sidebar.links.contact" => "Kontakt aufnehmen"
      "frontend.help.b2b.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.b2b.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.b2b.sidebar.links.quote" => "Angebotsanfrage stellen"
      "frontend.help.b2b.sidebar.links.title" => "Nächste B2B-Schritte"
      "frontend.help.b2b.sidebar.note.body" => """
        <ul>\n
          <li>Nimm für die Freischaltung direkt Kontakt mit unserem Team auf.</li>\n
          <li>Nach erfolgreicher Prüfung werden passende Kundengruppen und Preisregeln aktiviert.</li>\n
        </ul>
        """
      "frontend.help.b2b.sidebar.note.eyebrow" => "Noch nicht freigeschaltet?"
      "frontend.help.b2b.sidebar.note.title" => "So kommst du in den B2B-Bereich"
      "frontend.help.cart.lead" => "Produkte hinzufügen, Mengen anpassen, Gutscheine anwenden und Favoriten später weiterverwenden."
      "frontend.help.cart.sections.add.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne die Produktseite.</li>\n
          <li>Wähle bei Bedarf Varianten oder Pflichtoptionen.</li>\n
          <li>Klicke auf <strong>In den Warenkorb</strong>. Das Kopfmenü aktualisiert sich direkt ohne Neuladen.</li>\n
          <li>Im Header siehst du Menge und Zwischensumme sofort.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--info">Der Warenkorb arbeitet per AJAX. Du bleibst auf der aktuellen Seite und kannst direkt weiterstöbern.</div>
        """
      "frontend.help.cart.sections.add.eyebrow" => "Schritt 1"
      "frontend.help.cart.sections.add.title" => "Produkt in den Warenkorb legen"
      "frontend.help.cart.sections.coupon.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne den Warenkorb.</li>\n
          <li>Trage deinen Code in das Gutschein-Feld ein.</li>\n
          <li>Klicke auf <strong>Einlösen</strong>.</li>\n
          <li>Der Rabatt wird direkt im Gesamtbetrag berücksichtigt.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--warning">Pro Bestellung ist nur ein Gutschein-Code möglich. Bedingungen wie Mindestbestellwert oder Ablaufdatum bleiben aktiv.</div>
        """
      "frontend.help.cart.sections.coupon.eyebrow" => "Schritt 3"
      "frontend.help.cart.sections.coupon.title" => "Gutschein einlösen"
      "frontend.help.cart.sections.manage.body" => """
        <p>Im Warenkorb kannst du Positionen direkt anpassen oder entfernen.</p>\n
        <ul class="help-doc-list">\n
          <li>Mengen ändern und neu berechnen lassen.</li>\n
          <li>Artikel über das Entfernen-Symbol löschen.</li>\n
          <li>Zwischensumme, Versandkosten und Gesamtbetrag sofort kontrollieren.</li>\n
          <li>Mit einem Klick in den Checkout wechseln.</li>\n
        </ul>
        """
      "frontend.help.cart.sections.manage.eyebrow" => "Schritt 2"
      "frontend.help.cart.sections.manage.title" => "Warenkorb verwalten"
      "frontend.help.cart.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Der Warenkorb arbeitet weiterhin ohne Seitenwechsel per AJAX.</li>\n
          <li>Mengen, Entfernen-Aktionen und Summenaktualisierung laufen direkt in der Cart-Ansicht.</li>\n
          <li>Gutscheinlogik und Übergabe in den Checkout sind auf den aktuellen Ablauf abgestimmt.</li>\n
        </ul>
        """
      "frontend.help.cart.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.cart.sections.updated.title" => "Warenkorb-Modul auf dem neuesten Stand"
      "frontend.help.cart.sidebar.links.cart" => "Zum Warenkorb"
      "frontend.help.cart.sidebar.links.checkout" => "Zur Kasse"
      "frontend.help.cart.sidebar.links.coupons" => "Gutschein-Hilfe"
      "frontend.help.cart.sidebar.links.eyebrow" => "Direkt starten"
      "frontend.help.cart.sidebar.links.title" => "Zu den wichtigsten Warenkorb-Aktionen"
      "frontend.help.cart.sidebar.note.body" => """
        <p>Die Wunschliste ist ideal für Produkte, die du später vergleichen oder gesammelt bestellen willst.</p>\n
        <ul>\n
          <li>Produkte auf der Detailseite merken.</li>\n
          <li>Gespeicherte Artikel später direkt in den Warenkorb legen.</li>\n
          <li>Für die Nutzung musst du als Shop-Kunde eingeloggt sein.</li>\n
        </ul>
        """
      "frontend.help.cart.sidebar.note.eyebrow" => "Merken statt kaufen"
      "frontend.help.cart.sidebar.note.title" => "Wunschliste sinnvoll nutzen"
      "frontend.help.checkout.lead" => "Adresse, Lieferart, Zahlung und Abschluss Schritt für Schritt im aktuellen Checkout-Ablauf."
      "frontend.help.checkout.sections.address.body" => """
        <ul class="help-doc-list">\n
          <li>Gib Name, Straße, Postleitzahl, Ort und Land an.</li>\n
          <li>Optional kannst du eine abweichende Rechnungsadresse nutzen.</li>\n
          <li>Wenn du eingeloggt bist, werden gespeicherte Daten vorausgefüllt.</li>\n
          <li>Fehlende oder unplausible Felder werden direkt validiert.</li>\n
        </ul>
        """
      "frontend.help.checkout.sections.address.eyebrow" => "Schritt 1"
      "frontend.help.checkout.sections.address.title" => "Lieferadresse erfassen"
      "frontend.help.checkout.sections.finish.body" => """
        <ol class="help-doc-list">\n
          <li>Kontrolliere Artikel, Lieferart, Versandkosten und Gesamtbetrag.</li>\n
          <li>Akzeptiere die erforderlichen Hinweise und Bedingungen.</li>\n
          <li>Schließe den Kauf über den finalen Checkout-Button ab.</li>\n
          <li>Nach erfolgreicher Zahlung landest du auf der Bestätigungsseite.</li>\n
        </ol>
        """
      "frontend.help.checkout.sections.finish.eyebrow" => "Schritt 4"
      "frontend.help.checkout.sections.finish.title" => "Bestellung prüfen und abschließen"
      "frontend.help.checkout.sections.payment.body" => """
        <p>Im aktuellen Live-Checkout ist die Kartenzahlung über Stripe aktiv.</p>\n
        <ul class="help-doc-list">\n
          <li>Kreditkartendaten werden im sicheren Zahlungsfenster verarbeitet.</li>\n
          <li>Weitere Zahlarten können später live dazukommen.</li>\n
          <li>Der Checkout zeigt nur Methoden an, die aktuell freigeschaltet sind.</li>\n
        </ul>\n
        <div class="help-doc-callout help-doc-callout--info">Sobald weitere Zahlarten produktiv geschaltet werden, erscheint das direkt im Checkout und auf der Zahlungsarten-Hilfe.</div>
        """
      "frontend.help.checkout.sections.payment.eyebrow" => "Schritt 3"
      "frontend.help.checkout.sections.payment.title" => "Zahlungsart bestätigen"
      "frontend.help.checkout.sections.shipping.body" => """
        <p>Wähle im Checkout entweder Versand an die angegebene Adresse oder Abholung im Geschäft. Die Kosten werden sofort neu berechnet.</p>\n
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Methode</th><th>Orientierung</th><th>Hinweis</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td>Standardversand</td><td>Reguläre Zustellung</td><td>Die exakten Kosten folgen der Shop-Konfiguration.</td></tr>\n
            <tr><td>Expressversand</td><td>Schnellere Lieferung</td><td>Nur sichtbar, wenn im Shop freigeschaltet.</td></tr>\n
            <tr><td>Abholung im Geschäft</td><td>Bereitmeldung per E-Mail</td><td>Versandkosten entfallen. Kontakt- und Rechnungsdaten bleiben für Rückfragen und Rechnung Pflicht.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.checkout.sections.shipping.eyebrow" => "Schritt 2"
      "frontend.help.checkout.sections.shipping.title" => "Versand oder Abholung wählen"
      "frontend.help.checkout.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Adress-, Lieferart- und Zahlungsabschnitt folgen dem aktuell aktiven Checkout-Prozess.</li>\n
          <li>Die Kommunikation zum Bestellabschluss wurde auf den Live-Ablauf vereinheitlicht.</li>\n
          <li>Hinweise für Folgeaktionen (Bestellhistorie, Zahlungsstatus) sind auf den neuesten Stand gebracht.</li>\n
        </ul>
        """
      "frontend.help.checkout.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.checkout.sections.updated.title" => "Checkout-Flow und Bestellabschluss"
      "frontend.help.checkout.sidebar.links.checkout" => "Zur Kasse"
      "frontend.help.checkout.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.checkout.sidebar.links.orders" => "Meine Bestellungen"
      "frontend.help.checkout.sidebar.links.payment" => "Zahlungsarten"
      "frontend.help.checkout.sidebar.links.title" => "Zu den nächsten Checkout-Schritten"
      "frontend.help.checkout.sidebar.note.body" => """
        <ul>\n
          <li>Du erhältst eine Bestellbestätigung per E-Mail.</li>\n
          <li>Die Bestellung erscheint in deinem Kundenkonto.</li>\n
          <li>Versand- und Tracking-Infos oder die Bereitmeldung zur Abholung folgen, sobald der Auftrag weiterbearbeitet wird.</li>\n
        </ul>
        """
      "frontend.help.checkout.sidebar.note.eyebrow" => "Nach dem Kauf"
      "frontend.help.checkout.sidebar.note.title" => "Was anschließend passiert"
      "frontend.help.common.back_to_overview" => "Zur Hilfe-Übersicht"
      "frontend.help.common.browse_topics" => "Themen finden"
      "frontend.help.common.contact" => "Kontakt aufnehmen"
      "frontend.help.common.eyebrow" => "Hilfe-Center"
      "frontend.help.common.meta_suffix" => "Hilfe"
      "frontend.help.common.need_more_help" => "Noch Fragen?"
      "frontend.help.common.open_topic" => "Thema öffnen"
      "frontend.help.common.overview_contact" => "Kontakt"
      "frontend.help.common.overview_eyebrow" => "Service & Orientierung"
      "frontend.help.common.overview_lead" => "Schnelle Antworten, klare Schritte und direkte Links für die wichtigsten Abläufe im Shop."
      "frontend.help.common.overview_meta_title" => "Shop Hilfe & Dokumentation"
      "frontend.help.common.overview_note_text" => "Jedes Thema verbindet aktuelle Shop-Funktionen, direkte Einstiege und verständliche Hinweise zum nächsten Schritt."
      "frontend.help.common.overview_note_title" => "Was dich hier erwartet"
      "frontend.help.common.overview_shop" => "Shop öffnen"
      "frontend.help.common.overview_support_text" => "Wenn du den passenden Bereich schon kennst, springe direkt in den Shop oder nutze unser Kontaktformular."
      "frontend.help.common.overview_support_title" => "Direkt weiter"
      "frontend.help.common.overview_title" => "Hilfe-Center für Shop, Konto und Service"
      "frontend.help.common.overview_topics_lead" => "Wähle den Bereich, in dem du gerade Unterstützung brauchst."
      "frontend.help.common.overview_topics_title" => "Alle Hilfe-Themen"
      "frontend.help.common.quick_access" => "Schnellzugriff"
      "frontend.help.common.quick_summary" => "Kurzüberblick"
      "frontend.help.common.stats.direct" => "Direkte Links"
      "frontend.help.common.stats.direct_label" => "Mit einem Klick in relevante Shop-, Konto- und Servicebereiche."
      "frontend.help.common.stats.localized" => "DE + EN"
      "frontend.help.common.stats.localized_label" => "Alle Seiten sind für deutschsprachige und englische Routen vorbereitet."
      "frontend.help.common.stats.topics" => "11 Themen"
      "frontend.help.common.stats.topics_label" => "Von Warenkorb bis Retouren in einem zentralen Hilfe-Center."
      "frontend.help.common.support_text" => "Nutze die Kontaktseite für individuelle Anliegen oder springe direkt zurück in den Shop."
      "frontend.help.common.support_title" => "Wir zeigen dir den nächsten sinnvollen Schritt."
      "frontend.help.common.to_shop" => "Zum Shop"
      "frontend.help.coupons.lead" => "Gutschein-Codes einlösen, Rabattarten vergleichen und typische Probleme schnell prüfen."
      "frontend.help.coupons.sections.redeem.body" => """
        <ol class="help-doc-list">\n
          <li>Lege die gewünschten Produkte in den Warenkorb.</li>\n
          <li>Öffne den Warenkorb und trage den Code in das Eingabefeld ein.</li>\n
          <li>Bestätige den Code über <strong>Einlösen</strong>.</li>\n
          <li>Der Rabatt erscheint direkt in der aktualisierten Summe.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--info">Pro Bestellung kann nur ein Gutschein-Code gleichzeitig aktiv sein.</div>
        """
      "frontend.help.coupons.sections.redeem.eyebrow" => "Einlösen"
      "frontend.help.coupons.sections.redeem.title" => "So wird ein Gutschein aktiviert"
      "frontend.help.coupons.sections.troubleshooting.body" => """
        <ul class="help-doc-list">\n
          <li>Prüfe Mindestbestellwert und Geltungszeitraum.</li>\n
          <li>Manche Codes gelten nur für bestimmte Produkte oder Kategorien.</li>\n
          <li>Einmal-Codes können nach erfolgreicher Nutzung nicht erneut eingesetzt werden.</li>\n
          <li>Die Eingabe ist nicht case-sensitiv, Bedingungen aber trotzdem verbindlich.</li>\n
        </ul>
        """
      "frontend.help.coupons.sections.troubleshooting.eyebrow" => "Fehlersuche"
      "frontend.help.coupons.sections.troubleshooting.title" => "Wenn der Gutschein nicht funktioniert"
      "frontend.help.coupons.sections.types.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Typ</th><th>Beispiel</th><th>Hinweis</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td>Prozentrabatt</td><td>10% auf passende Produkte</td><td>Wird auf den Warenkorbwert angewendet.</td></tr>\n
            <tr><td>Festbetrag</td><td>5 EUR Rabatt</td><td>Wird direkt vom Gesamtbetrag abgezogen.</td></tr>\n
            <tr><td>Versandvorteil</td><td>Kostenloser Versand</td><td>Kann die Versandkosten reduzieren oder entfernen.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.coupons.sections.types.eyebrow" => "Rabattarten"
      "frontend.help.coupons.sections.types.title" => "Welche Gutschein-Typen es geben kann"
      "frontend.help.coupons.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Einlösen, Rabattarten und Fehlersuche wurden für den aktuellen Checkout-/Cart-Stand überarbeitet.</li>\n
          <li>Hinweise zu Bedingungen wie Mindestbestellwert und Gültigkeit sind deutlicher formuliert.</li>\n
          <li>Die Seite verweist weiterhin direkt auf Warenkorb und Shop für schnelle Prüfung.</li>\n
        </ul>
        """
      "frontend.help.coupons.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.coupons.sections.updated.title" => "Gutschein- und Rabatt-Hilfe überarbeitet"
      "frontend.help.coupons.sidebar.links.cart" => "Zum Warenkorb"
      "frontend.help.coupons.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.coupons.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.coupons.sidebar.links.shop" => "Zum Shop"
      "frontend.help.coupons.sidebar.links.title" => "Zu den passenden Shop-Aktionen"
      "frontend.help.coupons.sidebar.note.body" => """
        <ul>\n
          <li>Sale-Preise können direkt auf der Produktseite erscheinen.</li>\n
          <li>Mengenrabatte greifen automatisch, wenn sie konfiguriert sind.</li>\n
          <li>B2B-Preise werden nach erfolgreichem Login sichtbar.</li>\n
        </ul>
        """
      "frontend.help.coupons.sidebar.note.eyebrow" => "Noch mehr Vorteile"
      "frontend.help.coupons.sidebar.note.title" => "Auch ohne Code gibt es Rabatte"
      "frontend.help.nav.account.summary" => "Bestellungen, Wunschliste, Profil und Retouren in einem Kundenbereich."
      "frontend.help.nav.account.title" => "Mein Konto"
      "frontend.help.nav.b2b.summary" => "Angebotsanfragen, Freischaltung und Statuslogik für Geschäftskunden."
      "frontend.help.nav.b2b.title" => "B2B-Shop"
      "frontend.help.nav.cart.summary" => "Produkte hinzufügen, Mengen anpassen, Gutscheine anwenden und Favoriten für später merken."
      "frontend.help.nav.cart.title" => "Warenkorb & Wunschliste"
      "frontend.help.nav.checkout.summary" => "Adresse, Versand, Zahlung und Bestellabschluss Schritt für Schritt erklärt."
      "frontend.help.nav.checkout.title" => "Checkout & Bestellung"
      "frontend.help.nav.coupons.summary" => "Codes einlösen, Rabattarten verstehen und typische Fehler prüfen."
      "frontend.help.nav.coupons.title" => "Gutscheine & Rabatte"
      "frontend.help.nav.orders.summary" => "Historie, Status, Rechnung und Stornierung klar eingeordnet."
      "frontend.help.nav.orders.title" => "Meine Bestellungen"
      "frontend.help.nav.page.summary" => "Seitentypen, Navigation, Widgets und SEO-Hinweise für das Frontend."
      "frontend.help.nav.page.title" => "Seiten & Anzeigeoptionen"
      "frontend.help.nav.payment.summary" => "Live verfügbare Zahlarten, Sicherheitsniveau und Projektstatus auf einen Blick."
      "frontend.help.nav.payment.title" => "Zahlungsarten"
      "frontend.help.nav.product.summary" => "Suche, Filter, Produktdetails und konfigurierbare Varianten schnell verstehen."
      "frontend.help.nav.product.title" => "Produkte & Kategorien"
      "frontend.help.nav.reviews.summary" => "Produktbewertungen schreiben, Fragen stellen und Moderationsregeln kennen."
      "frontend.help.nav.reviews.title" => "Bewertungen & Fragen"
      "frontend.help.nav.rma.summary" => "Rücksendungen anlegen, Status verfolgen und den Ablauf sauber nachvollziehen."
      "frontend.help.nav.rma.title" => "Retouren & RMA"
      "frontend.help.orders.lead" => "Bestellhistorie verstehen, Status lesen, Rechnungen laden und Stornierungen richtig einschätzen."
      "frontend.help.orders.sections.cancel.body" => """
        <ul class="help-doc-list">\n
          <li>Solange die Bestellung noch nicht versendet wurde, kann eine Stornierung möglich sein.</li>\n
          <li>Die Aktion erscheint direkt in der Bestelldetailseite, wenn der Status es zulässt.</li>\n
          <li>Bereits gelieferte Artikel laufen über %rmaLink%.</li>\n
        </ul>
        """
      "frontend.help.orders.sections.cancel.eyebrow" => "Änderungen"
      "frontend.help.orders.sections.cancel.title" => "Wann eine Stornierung möglich ist"
      "frontend.help.orders.sections.history.body" => """
        <ol class="help-doc-list">\n
          <li>Melde dich im Kundenkonto an.</li>\n
          <li>Wechsle in den Bereich <strong>Bestellungen</strong>.</li>\n
          <li>Dort siehst du Nummer, Datum, Betrag und Status jedes Auftrags.</li>\n
          <li>Die Detailansicht zeigt Positionen, Adresse, Tracking und verfügbare Aktionen.</li>\n
        </ol>
        """
      "frontend.help.orders.sections.history.eyebrow" => "Historie"
      "frontend.help.orders.sections.history.title" => "Bestellungen im Konto aufrufen"
      "frontend.help.orders.sections.invoice.body" => """
        <ul class="help-doc-list">\n
          <li>Öffne die Bestelldetailseite.</li>\n
          <li>Nutze die Aktion für den PDF-Download.</li>\n
          <li>Rechnungen stehen abhängig vom Bestellstatus und der Zahlungsfreigabe bereit.</li>\n
        </ul>
        """
      "frontend.help.orders.sections.invoice.eyebrow" => "Dokumente"
      "frontend.help.orders.sections.invoice.title" => "Rechnung als PDF herunterladen"
      "frontend.help.orders.sections.statuses.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Status</th><th>Bedeutung</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-warning">Offen</span></td><td>Bestellung erfasst, nächste Verarbeitung steht noch aus.</td></tr>\n
            <tr><td><span class="badge badge-info">Bezahlt</span></td><td>Die Zahlung ist bestätigt.</td></tr>\n
            <tr><td><span class="badge badge-primary">In Bearbeitung</span></td><td>Der Auftrag wird intern vorbereitet.</td></tr>\n
            <tr><td><span class="badge badge-success">Versendet</span></td><td>Das Paket ist unterwegs.</td></tr>\n
            <tr><td><span class="badge badge-success">Geliefert</span></td><td>Die Lieferung wurde abgeschlossen.</td></tr>\n
            <tr><td><span class="badge badge-danger">Storniert</span></td><td>Der Auftrag wurde gestoppt.</td></tr>\n
            <tr><td><span class="badge badge-secondary">Erstattet</span></td><td>Eine Erstattung wurde veranlasst.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.orders.sections.statuses.eyebrow" => "Statuswerte"
      "frontend.help.orders.sections.statuses.title" => "Bestellstatus richtig lesen"
      "frontend.help.orders.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Seite ist auf die aktuelle Bestellansicht im Kundenkonto abgestimmt.</li>\n
          <li>Statusbeschreibungen und Hinweise zu Rechnungsdownload wurden aktualisiert.</li>\n
          <li>Abgrenzung zwischen Storno und Retoure ist klarer dokumentiert.</li>\n
        </ul>
        """
      "frontend.help.orders.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.orders.sections.updated.title" => "Bestellhistorie, Status und Rechnungen"
      "frontend.help.orders.sidebar.links.account" => "Mein Konto"
      "frontend.help.orders.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.orders.sidebar.links.payment" => "Zahlungsarten"
      "frontend.help.orders.sidebar.links.rma" => "Retoure einleiten"
      "frontend.help.orders.sidebar.links.title" => "Wichtige Folgeaktionen"
      "frontend.help.orders.sidebar.note.body" => """
        <p><strong>Wo steht die Bestellnummer?</strong><br>In deiner Bestätigungs-E-Mail und in der Bestellliste im Konto.</p>\n
        <p><strong>Wo sehe ich Tracking?</strong><br>Auf der Detailseite, sobald Versanddaten verfügbar sind.</p>
        """
      "frontend.help.orders.sidebar.note.eyebrow" => "Häufige Fragen"
      "frontend.help.orders.sidebar.note.title" => "Wenn du etwas nicht findest"
      "frontend.help.page.lead" => "Wie Inhalte im Frontend strukturiert, sichtbar gemacht und sauber für Navigation und SEO genutzt werden."
      "frontend.help.page.sections.navigation.body" => """
        <ol class="help-doc-list">\n
          <li>Seiten im Backend anlegen und veröffentlichen.</li>\n
          <li>Position im Hauptmenü, oberen Footer-Menü oder in der unteren Legal-Leiste definieren.</li>\n
          <li>Sichtbarkeit pro Bereich sauber steuern.</li>\n
          <li>Slug, Titel und Meta-Daten konsistent halten.</li>\n
        </ol>\n
        <div class="help-doc-callout help-doc-callout--warning">Rechtliche Shop-Seiten wie AGB, Widerrufsbelehrung, Zahlungsarten, Versandrichtlinien und Batteriegesetz gehören in der Regel in die untere Legal-Leiste.</div>\n
        <div class="help-doc-callout help-doc-callout--info">Menüs werden im Frontend dynamisch aufgebaut. Nach dem Speichern sind Änderungen direkt sichtbar; der Seiteneditor legt dabei automatisch eine Revision an.</div>
        """
      "frontend.help.page.sections.navigation.eyebrow" => "Navigation"
      "frontend.help.page.sections.navigation.title" => "Menüs und Sichtbarkeit"
      "frontend.help.page.sections.seo.body" => """
        <ul class="help-doc-list">\n
          <li>Pflege eindeutige Titel und Meta-Descriptions.</li>\n
          <li>Vermeide doppelte Slugs und doppelte Inhalte.</li>\n
          <li>Für Page-Builder-Bilder sollten sprechende Dateinamen und Alt-Texte im Media Center gepflegt werden.</li>\n
          <li>Interne Verlinkung verbessert Orientierung und Auffindbarkeit.</li>\n
          <li>Prüfe größere Änderungen immer in Vorschau und Live-Ansicht.</li>\n
        </ul>
        """
      "frontend.help.page.sections.seo.eyebrow" => "Qualität"
      "frontend.help.page.sections.seo.title" => "SEO und technische Hinweise"
      "frontend.help.page.sections.types.body" => """
        <ul class="help-doc-list">\n
          <li><strong>Landingpages</strong> für Kampagnen und fokussierte Einstiege.</li>\n
          <li><strong>Kategorie- und Produktseiten</strong> mit dynamischen Shop-Daten.</li>\n
          <li><strong>Statische Seiten</strong> wie Impressum, Datenschutz oder AGB.</li>\n
          <li><strong>Sonderseiten</strong> für Hilfe, Kontakt oder servicebezogene Inhalte.</li>\n
          <li><strong>Cart-Grid-Abschnitte</strong> für flexible Kartenlayouts mit Spalten, Bild und Text.</li>\n
        </ul>
        """
      "frontend.help.page.sections.types.eyebrow" => "Struktur"
      "frontend.help.page.sections.types.title" => "Seitentypen im Überblick"
      "frontend.help.page.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Hilfe deckt die aktuelle Struktur aus Startseite, Landingpages, Shop- und Serviceseiten ab.</li>\n
          <li>Navigations- und Sichtbarkeitshinweise wurden auf den aktuellen Menü- und Footer-Aufbau angepasst.</li>\n
          <li>SEO- und Pflegehinweise orientieren sich an den heute genutzten Frontend-Content-Bausteinen.</li>\n
          <li>Footer-Seiten können getrennt im oberen Footer-Menü oder in der unteren Legal-Leiste platziert werden.</li>\n
          <li>Seiteninhalte können im Backend jetzt mit RichText-Feldern und Media-Center-Bildern gepflegt werden, damit Redakteure mehr Freiheit im Aufbau haben.</li>\n
          <li>Neu: Das Theme-Modul im Admin trennt Frontend-Design sauber vom Backend-Layout und wird in der Seitenpflege berücksichtigt.</li>\n
          <li>Zusätzlich steht ein HTML-Theme-Import mit anschließendem Slot-Mapping bereit, damit neue Layouts kontrolliert eingebunden werden.</li>\n
          <li>Neu: Systemweite Interaktions- und Aufrufstatistiken erfassen Besucher, Sessions, IP-bezogene Nutzungsprofile, Referrer, Geräte, Browser, Betriebssysteme und Länder (inklusive GeoLite2-Lookup, falls vorhanden) für Analyse, Conversion-Bewertung und Fehlerdiagnose im Frontend und Backend.</li>\n
          <li>Top-Interaktionen lassen sich im Admin jetzt bis auf Konto-/Versuchskennung, IP, Land, Browser, Route, Pfad und Payload aufklappen; Login-Erfolge und Login-Fehlschläge werden dabei als eigene Events geführt.</li>\n
        </ul>
        """
      "frontend.help.page.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.page.sections.updated.title" => "Frontend-Seiten, Navigation und Content-Struktur"
      "frontend.help.page.sections.widgets.body" => """
        <ul class="help-doc-list">\n
          <li>Nutze wiederverwendbare Content-Blöcke für wiederkehrende Inhalte.</li>\n
          <li>Setze Slider und Teaser gezielt auf Start- und Landingpages ein.</li>\n
          <li>Arbeite mit klarer Reihenfolge: Hero, Inhalt, CTA.</li>\n
          <li>Teste mobil und Desktop, damit Reihenfolge und Abstände sauber bleiben.</li>\n
        </ul>
        """
      "frontend.help.page.sections.widgets.eyebrow" => "Layout"
      "frontend.help.page.sections.widgets.title" => "Widgets, Blöcke und visuelle Hierarchie"
      "frontend.help.page.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.page.sidebar.links.overview" => "Hilfe-Übersicht"
      "frontend.help.page.sidebar.links.product" => "Produkt-Hilfe"
      "frontend.help.page.sidebar.links.shop" => "Zum Shop"
      "frontend.help.page.sidebar.links.title" => "Nächste Orientierungspunkte"
      "frontend.help.page.sidebar.note.body" => """
        <p><strong>Seite fehlt im Menü?</strong><br>Prüfe den Veröffentlichungsstatus und die Menü-Zuordnung.</p>\n
        <p><strong>Layout wirkt falsch?</strong><br>Kontrolliere Template-Auswahl, Inhaltsblöcke und Reihenfolge.</p>\n
        <p><strong>Seite wird schlecht gefunden?</strong><br>Arbeite an Titel, Description, internen Links und einer klaren Struktur.</p>
        """
      "frontend.help.page.sidebar.note.eyebrow" => "Häufige Fragen"
      "frontend.help.page.sidebar.note.title" => "Worauf du zuerst schauen solltest"
      "frontend.help.payment.lead" => "Der aktuelle Live-Stand der verfügbaren Zahlarten, Sicherheitsmechanismen und nächsten Ausbaustufen."
      "frontend.help.payment.sections.card.body" => """
        <ul class="help-doc-list">\n
          <li>Kreditkartenzahlung ist schnell und sicher im Checkout eingebunden.</li>\n
          <li>Der Zahlungsfluss läuft über Stripe.</li>\n
          <li>Nach erfolgreicher Bestätigung wird die Bestellung direkt weiterverarbeitet.</li>\n
        </ul>
        """
      "frontend.help.payment.sections.card.eyebrow" => "Live"
      "frontend.help.payment.sections.card.title" => "Kartenzahlung über Stripe"
      "frontend.help.payment.sections.other.body" => """
        <ul class="help-doc-list">\n
          <li><strong>PayPal</strong>: vorbereitet, aktuell nicht live.</li>\n
          <li><strong>Klarna</strong>: vorbereitet, aktuell nicht live.</li>\n
          <li><strong>Vorkasse</strong>: möglicher späterer Ausbau.</li>\n
          <li><strong>Rechnung</strong>: erst nach produktiver Freigabe sichtbar.</li>\n
        </ul>\n
        <div class="help-doc-callout help-doc-callout--warning">Die Hilfe spiegelt den aktuellen Live-Zustand. Nicht freigeschaltete Methoden tauchen im Checkout nicht auf.</div>
        """
      "frontend.help.payment.sections.other.eyebrow" => "Projektstatus"
      "frontend.help.payment.sections.other.title" => "Weitere Zahlarten und ihr Status"
      "frontend.help.payment.sections.security.body" => """
        <ul class="help-doc-list">\n
          <li>SSL-verschlüsselte Übertragung im Checkout.</li>\n
          <li>Sichere Zahlungsabwicklung über spezialisierte Anbieter.</li>\n
          <li>Keine unnötige Speicherung sensibler Zahlungsdaten im Shop.</li>\n
        </ul>
        """
      "frontend.help.payment.sections.security.eyebrow" => "Sicherheit"
      "frontend.help.payment.sections.security.title" => "Wie Zahlungen abgesichert werden"
      "frontend.help.payment.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Die Hilfe spiegelt den aktuell aktiven Live-Zahlungsfluss wider.</li>\n
          <li>Nicht freigeschaltete Methoden bleiben als Statushinweis dokumentiert.</li>\n
          <li>Security-Abschnitt wurde mit Fokus auf Checkout-Realität und klare Erwartung überarbeitet.</li>\n
        </ul>
        """
      "frontend.help.payment.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.payment.sections.updated.title" => "Zahlarten und Sicherheitskommunikation"
      "frontend.help.payment.sidebar.links.checkout" => "Zur Kasse"
      "frontend.help.payment.sidebar.links.checkout_help" => "Checkout-Hilfe"
      "frontend.help.payment.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.payment.sidebar.links.orders" => "Meine Bestellungen"
      "frontend.help.payment.sidebar.links.title" => "Passende nächste Schritte"
      "frontend.help.payment.sidebar.note.body" => "<p>Im Checkout werden nur Zahlarten angezeigt, die aktuell wirklich verfügbar sind. Dadurch bleiben Auswahl und Kommunikation konsistent.</p>"
      "frontend.help.payment.sidebar.note.eyebrow" => "Aktuell wichtig"
      "frontend.help.payment.sidebar.note.title" => "Was du bei Zahlarten erwarten kannst"
      "frontend.help.product.lead" => "Produkte finden, filtern, konfigurieren und alle relevanten Details sauber lesen."
      "frontend.help.product.sections.configurable.body" => """
        <ol class="help-doc-list">\n
          <li>Wähle alle benötigten Optionen wie Größe, Farbe oder Material.</li>\n
          <li>Preis und Verfügbarkeit aktualisieren sich je nach Auswahl.</li>\n
          <li>Pflichtfelder bleiben bis zur korrekten Auswahl markiert.</li>\n
          <li>Erst danach kann das Produkt in den Warenkorb gelegt werden.</li>\n
        </ol>
        """
      "frontend.help.product.sections.configurable.eyebrow" => "Varianten"
      "frontend.help.product.sections.configurable.title" => "Konfigurierbare Produkte verstehen"
      "frontend.help.product.sections.details.body" => """
        <div class="row">\n
          <div class="col-sm-6">\n
            <ul class="help-doc-list">\n
              <li>Galerie und Produktbilder</li>\n
              <li>Name, Preis und Verfügbarkeit</li>\n
              <li>Kurz- und Langbeschreibung</li>\n
              <li>Lieferhinweise, Abholoptionen und Lagerstatus; bei reiner Abholung wird keine Lieferzeit angezeigt</li>\n
            </ul>\n
          </div>\n
          <div class="col-sm-6">\n
            <ul class="help-doc-list">\n
              <li>Artikelnummer und technische Daten</li>\n
              <li>Bewertungen und Fragen</li>\n
              <li>Ähnliche oder passende Produkte</li>\n
              <li>Merken-, Kauf- und Abholhinweise</li>\n
            </ul>\n
          </div>\n
        </div>
        """
      "frontend.help.product.sections.details.eyebrow" => "Produktseite"
      "frontend.help.product.sections.details.title" => "Was du auf der Detailseite findest"
      "frontend.help.product.sections.search.body" => """
        <ul class="help-doc-list">\n
          <li>Nutze die Suche im Header oder direkt im Shop.</li>\n
          <li>Kategorien führen strukturiert durch Sortimente und Unterkategorien.</li>\n
          <li>Filter für Preis, Attribute oder Hersteller lassen sich kombinieren.</li>\n
          <li>Wenn zu wenig Treffer erscheinen, hilft oft ein kürzerer Suchbegriff.</li>\n
        </ul>
        """
      "frontend.help.product.sections.search.eyebrow" => "Orientierung"
      "frontend.help.product.sections.search.title" => "Suche, Kategorien und Filter"
      "frontend.help.product.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Suche, Kategorien und Filter entsprechen dem aktuellen Shop-Frontend.</li>\n
          <li>Produktbilder können in Karten-, Listen- und Warenkorbbereichen direkt zeigen, ob Abholung möglich ist oder der Artikel nur online bestellbar ist.</li>\n
          <li>Bilddateinamen und Alt-Texte werden zentral im Media Center gepflegt, damit Produktbilder suchmaschinenfreundlicher und barriereärmer angezeigt werden können.</li>\n
          <li>Diese Produktbild-Hinweise lassen sich in den System-Einstellungen zentral ein- oder ausblenden.</li>\n
          <li>Konfigurierbare Produkte mit Pflichtoptionen sind in der Hilfe explizit abgedeckt.</li>\n
          <li>Preis-, Verfügbarkeits- und Detailanzeigen wurden an die aktuellen Produkttemplates angepasst.</li>\n
        </ul>
        """
      "frontend.help.product.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.product.sections.updated.title" => "Produktseiten und Varianten-Logik"
      "frontend.help.product.sidebar.links.cart" => "Warenkorb-Hilfe"
      "frontend.help.product.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.product.sidebar.links.reviews" => "Bewertungen & Fragen"
      "frontend.help.product.sidebar.links.shop" => "Zum Shop"
      "frontend.help.product.sidebar.links.title" => "Nächste Einstiege im Shop"
      "frontend.help.product.sidebar.note.body" => """
        <ul>\n
          <li>Standardpreise erscheinen im Shop inklusive gesetzlicher Steuer.</li>\n
          <li>B2B-Kunden können je nach Freischaltung Netto-Preise sehen.</li>\n
          <li>Angebote, Staffelpreise und Verfügbarkeit werden direkt am Produkt angezeigt.</li>\n
        </ul>
        """
      "frontend.help.product.sidebar.note.eyebrow" => "Gut zu wissen"
      "frontend.help.product.sidebar.note.title" => "Preise und Sichtbarkeit"
      "frontend.help.reviews.lead" => "Produkte bewerten, Fragen stellen und die Moderationslogik im Frontend besser verstehen."
      "frontend.help.reviews.sections.questions.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne die Produktseite.</li>\n
          <li>Nutze den Bereich für Fragen und Antworten.</li>\n
          <li>Formuliere die Frage klar und sende sie ab.</li>\n
          <li>Antworten werden nach Freigabe öffentlich sichtbar.</li>\n
        </ol>
        """
      "frontend.help.reviews.sections.questions.eyebrow" => "Q&A"
      "frontend.help.reviews.sections.questions.title" => "Produktfragen einstellen"
      "frontend.help.reviews.sections.review.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne die Produktseite des passenden Artikels.</li>\n
          <li>Wechsle in den Bereich <strong>Bewertungen</strong>.</li>\n
          <li>Wähle Sterne, Titel und Text für deine Rückmeldung.</li>\n
          <li>Nach dem Absenden wird die Bewertung moderiert und später freigeschaltet.</li>\n
        </ol>
        """
      "frontend.help.reviews.sections.review.eyebrow" => "Bewertungen"
      "frontend.help.reviews.sections.review.title" => "So gibst du eine Produktbewertung ab"
      "frontend.help.reviews.sections.rules.body" => """
        <ul class="help-doc-list">\n
          <li>Bewertungen und Fragen sollten sachlich, ehrlich und hilfreich sein.</li>\n
          <li>Persönliche Daten, Beleidigungen und Werbung sind nicht erlaubt.</li>\n
          <li>Vor der Veröffentlichung prüft das Team die Inhalte.</li>\n
        </ul>
        """
      "frontend.help.reviews.sections.rules.eyebrow" => "Qualität"
      "frontend.help.reviews.sections.rules.title" => "Welche Regeln für Inhalte gelten"
      "frontend.help.reviews.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Review- und Q&A-Hinweise wurden auf den aktuellen Moderationsablauf aktualisiert.</li>\n
          <li>Inhaltliche Regeln und Freigabelogik sind jetzt klarer und konsistent dokumentiert.</li>\n
          <li>Direkte Verweise zu Produkt- und Shop-Bereichen bleiben in der Sidebar verlinkt.</li>\n
        </ul>
        """
      "frontend.help.reviews.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.reviews.sections.updated.title" => "Bewertungen, Fragen und Moderation"
      "frontend.help.reviews.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.reviews.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.reviews.sidebar.links.product" => "Produkt-Hilfe"
      "frontend.help.reviews.sidebar.links.shop" => "Zum Shop"
      "frontend.help.reviews.sidebar.links.title" => "Wo du direkt weitermachen kannst"
      "frontend.help.reviews.sidebar.note.body" => """
        <p>Bewertungen und Fragen durchlaufen eine Freigabe. So bleibt die Qualität im Frontend stabil und Missbrauch wird reduziert.</p>\n
        <ul>\n
          <li>Bewertungen erscheinen erst nach Prüfung.</li>\n
          <li>Fragen können vor der Anzeige moderiert werden.</li>\n
        </ul>
        """
      "frontend.help.reviews.sidebar.note.eyebrow" => "Moderation"
      "frontend.help.reviews.sidebar.note.title" => "Warum nicht alles sofort sichtbar ist"
      "frontend.help.rma.lead" => "Rücksendungen sauber anlegen, Begründungen angeben und den Bearbeitungsstatus nachvollziehen."
      "frontend.help.rma.sections.process.body" => """
        <ol class="help-doc-list">\n
          <li>Öffne <strong>Mein Konto &rarr; Retouren</strong>.</li>\n
          <li>Wähle eine geeignete Bestellung und das passende Produkt.</li>\n
          <li>Gib Grund, Beschreibung und Menge an.</li>\n
          <li>Sende die Anfrage ab und beobachte danach den Status im Konto.</li>\n
        </ol>
        """
      "frontend.help.rma.sections.process.eyebrow" => "Ablauf"
      "frontend.help.rma.sections.process.title" => "So läuft die Rücksendung"
      "frontend.help.rma.sections.statuses.body" => """
        <table class="table help-mini-table mb-0">\n
          <thead>\n
            <tr><th>Status</th><th>Bedeutung</th></tr>\n
          </thead>\n
          <tbody>\n
            <tr><td><span class="badge badge-warning">Offen</span></td><td>Antrag eingereicht und wartet auf Prüfung.</td></tr>\n
            <tr><td><span class="badge badge-info">In Prüfung</span></td><td>Das Team bearbeitet die Anfrage.</td></tr>\n
            <tr><td><span class="badge badge-success">Genehmigt</span></td><td>Rücksendung wurde akzeptiert und die nächsten Schritte folgen.</td></tr>\n
            <tr><td><span class="badge badge-danger">Abgelehnt</span></td><td>Die Anfrage wurde abgelehnt.</td></tr>\n
            <tr><td><span class="badge badge-secondary">Abgeschlossen</span></td><td>Der Vorgang ist vollständig beendet.</td></tr>\n
            <tr><td><span class="badge badge-light border">Storniert</span></td><td>Der Antrag wurde abgebrochen.</td></tr>\n
          </tbody>\n
        </table>
        """
      "frontend.help.rma.sections.statuses.eyebrow" => "Statuswerte"
      "frontend.help.rma.sections.statuses.title" => "Wie die Bearbeitung angezeigt wird"
      "frontend.help.rma.sections.updated.body" => """
        <ul class="help-doc-list">\n
          <li>Der Ablauf für neue Retouren orientiert sich an den aktuellen Konto-Ansichten.</li>\n
          <li>Statusbeschreibung und typische Folgeaktionen wurden inhaltlich aktualisiert.</li>\n
          <li>Direkte Einstiege zu „Meine Retouren“ und „Neue Retoure“ sind weiterhin integriert.</li>\n
        </ul>
        """
      "frontend.help.rma.sections.updated.eyebrow" => "Aktueller Stand"
      "frontend.help.rma.sections.updated.title" => "Retouren-Workflow und Statusanzeige"
      "frontend.help.rma.sections.when.body" => """
        <ul class="help-doc-list">\n
          <li>Die Bestellung sollte bereits geliefert sein.</li>\n
          <li>Pro Produkt kann nur ein aktiver Retourenvorgang gleichzeitig laufen.</li>\n
          <li>Nach abgelehnten oder stornierten Vorgängen ist später eine neue Anfrage möglich.</li>\n
        </ul>
        """
      "frontend.help.rma.sections.when.eyebrow" => "Voraussetzungen"
      "frontend.help.rma.sections.when.title" => "Wann eine Retoure möglich ist"
      "frontend.help.rma.sidebar.links.eyebrow" => "Direkt weiter"
      "frontend.help.rma.sidebar.links.my_returns" => "Meine Retouren"
      "frontend.help.rma.sidebar.links.new_return" => "Neue Retoure"
      "frontend.help.rma.sidebar.links.overview" => "Zur Hilfe"
      "frontend.help.rma.sidebar.links.title" => "In den Retouren-Bereich springen"
      "frontend.help.rma.sidebar.note.body" => """
        <p><strong>Wie lange habe ich Zeit?</strong><br>Die genaue Frist richtet sich nach deinen geltenden Bedingungen und AGB.</p>\n
        <p><strong>Wer trägt die Versandkosten?</strong><br>Bei Defekt oder Falschlieferung wird das individuell im Prozess geklärt.</p>
        """
      "frontend.help.rma.sidebar.note.eyebrow" => "Häufige Fragen"
      "frontend.help.rma.sidebar.note.title" => "Rücksendungen besser einordnen"
      "frontend.hotel.breakfast_buffet" => "Frühstücksbuffet inklusive"
      "frontend.hotel.credit_card" => "Zahlung per EC-Karte/Kreditkarte"
      "frontend.hotel.pets" => "Haustiere willkommen"
      "frontend.hotel.service" => "kostenloses WLAN"
      "frontend.menu.apartments" => "Ferienwohnungen"
      "frontend.menu.arrive" => "Anreise"
      "frontend.menu.bikers_welcome" => "Biker willkommen!"
      "frontend.menu.blog" => "Blog"
      "frontend.menu.breakfast" => "Unser Frühstück"
      "frontend.menu.contact" => "Kontakt"
      "frontend.menu.culture_leisure" => "Kultur & Freizeit"
      "frontend.menu.data_protection" => "Datenschutzerklärung"
      "frontend.menu.dyke_street_62" => "Deichstraße 62"
      "frontend.menu.dyke_street_90" => "Deichstraße 90"
      "frontend.menu.gallery" => "Bildergalerie"
      "frontend.menu.georg_street_30" => "Georgstraße 30"
      "frontend.menu.goethe_street_1" => "Goethestraße 1"
      "frontend.menu.guest_house" => "Gästehaus & Apartments"
      "frontend.menu.guesthouse" => "Gästehaus"
      "frontend.menu.guesthouse_1" => "Einzelzimmer"
      "frontend.menu.guesthouse_2" => "Doppelzimmer"
      "frontend.menu.guesthouse_3" => "3 Personen Apartment"
      "frontend.menu.guesthouse_4" => "4 Personen Apartment"
      "frontend.menu.guesthouse_5" => "5 Personen Apartment"
      "frontend.menu.guesthouse_6" => "6 Personen Apartment"
      "frontend.menu.guesthouse_7" => "7 Personen Apartment"
      "frontend.menu.guesthouse_8" => "8 Personen Apartment"
      "frontend.menu.guesthouse_9" => "9 Personen Apartment"
      "frontend.menu.home" => "Startseite"
      "frontend.menu.imprint" => "Impressum"
      "frontend.menu.information" => "Information"
      "frontend.menu.live_cam" => "Live Cam"
      "frontend.menu.prices" => "& Preise"
      "frontend.menu.privacy" => "Datenschutz"
      "frontend.menu.rooms_prices" => "Zimmer & Preise"
      "frontend.menu.service" => "Unser Service"
      "frontend.menu.shop" => "Shop"
      "frontend.menu.shop.overview" => "Übersicht"
      "frontend.menu.terms" => "AGB"
      "frontend.menu.ulmen_street_29" => "Ulmenstraße 29"
      "frontend.menu.weather" => "Wetter"
      "frontend.navigation.actions.open_sidebar" => "Seitenleiste öffnen"
      "frontend.navigation.customer.account" => "Mein Konto"
      "frontend.navigation.customer.b2b_registration" => "B2B-Registrierung"
      "frontend.navigation.customer.help" => "Hilfe"
      "frontend.navigation.customer.label" => "Shop-Kunde"
      "frontend.navigation.customer.login" => "Shop anmelden"
      "frontend.navigation.customer.logout" => "Shop abmelden"
      "frontend.navigation.locale.label" => "Sprache"
      "frontend.navigation.menu.all_products" => "Alle Produkte"
      "frontend.navigation.menu.category_fallback" => "Kategorie"
      "frontend.page_subtitle.arrive" => "zu NFOK"
      "frontend.page.login.all_rights" => "Alle Rechte vorbehalten."
      "frontend.page.login.already_member" => "Sie haben ein Benutzerkonto?"
      "frontend.page.login.btn_submit" => "Anmelden"
      "frontend.page.login.create_acount" => "Benutzerkonto anlegen"
      "frontend.page.login.domain" => "https://nfok.xyz"
      "frontend.page.login.domain_title" => "NFOK"
      "frontend.page.login.email" => "E-Mail"
      "frontend.page.login.log_in" => "Anmelden"
      "frontend.page.login.lost_your_password" => "Passwort vergessen?"
      "frontend.page.login.new_site" => "kein Benutzerkonto?"
      "frontend.page.login.password" => "Passwort"
      "frontend.page.login.remember_me" => "Erinnere dich an mich"
      "frontend.page.login.subtitle" => "NFOK"
      "frontend.page.login.title" => "NFOK WORK"
      "frontend.page.login.username" => "Benutzername"
      "frontend.page.password_rest.btn_rest_password" => "Passwort erneuern"
      "frontend.page.password_rest.rest_your_password" => "Passwort zurücksetzen"
      "frontend.page.password_rest.title" => "Passwort vergessen"
      "frontend.pagetitle.apartments" => "Ferienwohnungen"
      "frontend.pagetitle.arrive" => "Anreise"
      "frontend.pagetitle.breakfast" => "Frühstück"
      "frontend.pagetitle.contact" => "Kontakt"
      "frontend.pagetitle.contact_me" => "Wir sind hier"
      "frontend.pagetitle.dyke_street_62" => "Deichstraße 62"
      "frontend.pagetitle.dyke_street_90" => "Deichstraße 90"
      "frontend.pagetitle.gallery" => "Bildergalerie"
      "frontend.pagetitle.georg_street_30" => "Georgstraße 30"
      "frontend.pagetitle.goethe_street_1" => "Goethestraße 1"
      "frontend.pagetitle.guest_house" => "Gästehaus"
      "frontend.pagetitle.holiday_house" => "Ferienhaus"
      "frontend.pagetitle.hotel" => "NFOK"
      "frontend.pagetitle.our_and" => "Unser"
      "frontend.pagetitle.rooms_prices" => "Zimmer & Preise"
      "frontend.pagetitle.service" => "Service"
      "frontend.pagetitle.story" => "Geschichte"
      "frontend.pagetitle.title" => "NFOK"
      "frontend.pagetitle.ulmen_street_29" => "Ulmenstraße 29"
      "frontend.rooms_prices.9_room_price" => "ab 160,00 € pro Nacht inkl. Frühstücksbuffet"
      "frontend.rooms_prices.ez_room_price" => "ab 105,00 € pro Nacht inkl. Frühstücksbuffet"
      "frontend.rooms_prices.info_1" => "Die Zimmer verfügen jeweils über Dusche, WC, Haartrockner, Kabel-TV und WLAN. Aufgrund des Denkmalschutzes befindet sich das jeweils eigene Bad von zwei Einzelzimmern neben dem Zimmer."
      "frontend.rooms_prices.info_2" => "Ausstattung: Jede Wohneinheit hat verschiedene Ausstattungen und Aufteilungsvarianten."
      "frontend.rooms_prices.info_3" => "Belegungen: In unserem Gästehaus können wir Ihnen Apartments, Einzelzimmer, Doppelzimmer oder Mehrbettzimmer und Wohnungen mit unterschiedlichen Belegungsmöglichkeiten und Ausstattungen für Einzelpersonen, Paare oder Gästegruppen anbieten. Ob eine Übernachtung oder ein längerfristiger Aufenthalt – beides ist kein Problem. Alle Kategorien können jederzeit als Einzel- oder Doppelzimmer gebucht werden. Haustiere kostenfrei willkommen."
      "frontend.rooms_prices.info_4" => "Wir beraten Sie gerne am Telefon."
      "frontend.rooms_prices.info_5" => "Für offen gebliebene Fragen stehen wir Ihnen gerne zur Verfügung."
      "frontend.rooms_prices.left_img_box_price" => "105,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.left_img_box_subprice" => "98,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.left_img_box_subtitle" => "mit eigenem externen Bad gegenüber vom Zimmer"
      "frontend.rooms_prices.left_img_box_title" => "Einzelzimmer"
      "frontend.rooms_prices.right_img_box_price" => "128,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.right_img_box_subprice" => "110,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
      "frontend.rooms_prices.right_img_box_subtitle" => "als Einzelzimmer"
      "frontend.rooms_prices.right_img_box_title" => "Doppelzimmer"
      "frontend.rooms_prices.ulmen_room_price" => "ab 120,00 € pro Nacht"
      "frontend.shop_auth.login.actions.register" => "Jetzt registrieren"
      "frontend.shop_auth.login.actions.resend_confirmation" => "Bestätigungslink erneut senden"
      "frontend.shop_auth.login.actions.reset_password" => "Passwort vergessen?"
      "frontend.shop_auth.login.actions.submit" => "Anmelden"
      "frontend.shop_auth.login.breadcrumb_current" => "Anmelden"
      "frontend.shop_auth.login.fields.password" => "Passwort"
      "frontend.shop_auth.login.fields.password_placeholder" => "••••••••"
      "frontend.shop_auth.login.fields.resend_email_placeholder" => "E-Mail für Bestätigungslink"
      "frontend.shop_auth.login.fields.username" => "E-Mail / Benutzername"
      "frontend.shop_auth.login.fields.username_placeholder" => "name@beispiel.de"
      "frontend.shop_auth.login.intro_text" => "Melden Sie sich mit Ihrem Konto an"
      "frontend.shop_auth.login.intro_title" => "Willkommen zurück"
      "frontend.shop_auth.login.meta_title" => "Anmelden - Shop"
      "frontend.shop_auth.login.missing_confirmation" => "Bestätigungslink nicht mehr vorhanden?"
      "frontend.shop_auth.login.no_account" => "Noch kein Konto?"
      "frontend.shop_auth.login.page_title" => "Anmelden"
      "frontend.shop_auth.password_reset.check_email.actions.back_to_login" => "Zurück zum Login"
      "frontend.shop_auth.password_reset.check_email.actions.retry" => "Erneut versuchen"
      "frontend.shop_auth.password_reset.check_email.breadcrumb_current" => "E-Mail prüfen"
      "frontend.shop_auth.password_reset.check_email.info" => "Falls ein Konto mit dieser E-Mail-Adresse existiert, wurde ein Link zum Zurücksetzen gesendet. Der Link ist etwa %hours% Stunde(n) gültig."
      "frontend.shop_auth.password_reset.check_email.intro_text" => "Prüfen Sie Ihr Postfach für den nächsten Schritt."
      "frontend.shop_auth.password_reset.check_email.intro_title" => "Fast geschafft"
      "frontend.shop_auth.password_reset.check_email.meta_title" => "E-Mail prüfen - Passwort zurücksetzen"
      "frontend.shop_auth.password_reset.check_email.page_title" => "E-Mail prüfen"
      "frontend.shop_auth.password_reset.check_email.retry_notice" => "Keine E-Mail gefunden? Prüfen Sie bitte auch den Spam-Ordner oder fordern Sie einen neuen Link an."
      "frontend.shop_auth.password_reset.request.actions.back_to_login" => "Zurück zum Login"
      "frontend.shop_auth.password_reset.request.actions.submit" => "Link zum Zurücksetzen senden"
      "frontend.shop_auth.password_reset.request.back_notice" => "Sie kennen Ihr Passwort doch noch?"
      "frontend.shop_auth.password_reset.request.breadcrumb_current" => "Passwort zurücksetzen"
      "frontend.shop_auth.password_reset.request.fields.email" => "E-Mail-Adresse"
      "frontend.shop_auth.password_reset.request.fields.email_placeholder" => "name@beispiel.de"
      "frontend.shop_auth.password_reset.request.help_text" => "Geben Sie Ihre E-Mail-Adresse ein. Wenn ein Konto dazu existiert, senden wir Ihnen einen Link zum Zurücksetzen Ihres Passworts."
      "frontend.shop_auth.password_reset.request.intro_text" => "Fordern Sie einen sicheren Link zum Zurücksetzen Ihres Passworts an."
      "frontend.shop_auth.password_reset.request.intro_title" => "Passwort vergessen?"
      "frontend.shop_auth.password_reset.request.meta_title" => "Passwort zurücksetzen - Shop"
      "frontend.shop_auth.password_reset.request.page_title" => "Passwort zurücksetzen"
      "frontend.shop_auth.password_reset.reset.actions.back_to_login" => "Zurück zum Login"
      "frontend.shop_auth.password_reset.reset.actions.submit" => "Neues Passwort speichern"
      "frontend.shop_auth.password_reset.reset.back_notice" => "Sie möchten stattdessen wieder zum Login?"
      "frontend.shop_auth.password_reset.reset.breadcrumb_current" => "Neues Passwort setzen"
      "frontend.shop_auth.password_reset.reset.fields.password" => "Neues Passwort"
      "frontend.shop_auth.password_reset.reset.fields.password_placeholder" => "Mindestens 6 Zeichen"
      "frontend.shop_auth.password_reset.reset.fields.repeat_password" => "Passwort wiederholen"
      "frontend.shop_auth.password_reset.reset.fields.repeat_password_placeholder" => "Passwort erneut eingeben"
      "frontend.shop_auth.password_reset.reset.intro_text" => "Wählen Sie ein neues Passwort für Ihr Shop-Konto."
      "frontend.shop_auth.password_reset.reset.intro_title" => "Neues Passwort vergeben"
      "frontend.shop_auth.password_reset.reset.meta_title" => "Neues Passwort setzen - Shop"
      "frontend.shop_auth.password_reset.reset.page_title" => "Neues Passwort setzen"
      "frontend.shop_auth.register.actions.login" => "Zum Login"
      "frontend.shop_auth.register.actions.submit" => "Konto erstellen"
      "frontend.shop_auth.register.breadcrumb_current" => "Registrieren"
      "frontend.shop_auth.register.confirmation_notice" => "Nach der Registrierung senden wir Ihnen einen Bestätigungslink per E-Mail. Erst danach wird Ihr Shop-Konto freigeschaltet."
      "frontend.shop_auth.register.existing_account" => "Bereits registriert?"
      "frontend.shop_auth.register.fields.email" => "E-Mail-Adresse"
      "frontend.shop_auth.register.fields.email_placeholder" => "name@beispiel.de"
      "frontend.shop_auth.register.fields.name" => "Vollständiger Name"
      "frontend.shop_auth.register.fields.name_placeholder" => "Max Mustermann"
      "frontend.shop_auth.register.fields.password" => "Passwort"
      "frontend.shop_auth.register.fields.password_help" => "Für den Login ist zusätzlich eine Bestätigung Ihrer E-Mail-Adresse erforderlich."
      "frontend.shop_auth.register.fields.password_placeholder" => "Mindestens 8 Zeichen"
      "frontend.shop_auth.register.flashes.created" => "Konto erfolgreich erstellt. Bitte bestätigen Sie jetzt Ihre E-Mail-Adresse, bevor Sie sich anmelden."
      "frontend.shop_auth.register.flashes.email_exists" => "Diese E-Mail-Adresse ist bereits registriert."
      "frontend.shop_auth.register.flashes.invalid_csrf" => "Ungültiges Formular-Token. Bitte versuchen Sie es erneut."
      "frontend.shop_auth.register.flashes.invalid_email" => "Bitte geben Sie eine gültige E-Mail-Adresse ein."
      "frontend.shop_auth.register.flashes.password_too_short" => "Das Passwort muss mindestens 8 Zeichen lang sein."
      "frontend.shop_auth.register.flashes.pending_verification_resent" => "Für diese E-Mail-Adresse besteht bereits eine offene Registrierung. Wir haben einen neuen Bestätigungslink versendet."
      "frontend.shop_auth.register.flashes.rate_limit" => "Zu viele Registrierungsversuche."
      "frontend.shop_auth.register.flashes.required_fields" => "Bitte füllen Sie alle Felder aus."
      "frontend.shop_auth.register.intro_text" => "Registrieren Sie sich kostenlos"
      "frontend.shop_auth.register.intro_title" => "Konto erstellen"
      "frontend.shop_auth.register.meta_title" => "Konto erstellen - Shop"
      "frontend.shop_auth.register.page_title" => "Konto erstellen"
      "frontend.shop_auth.resend.flashes.invalid_csrf" => "Die Anfrage konnte aus Sicherheitsgründen nicht verarbeitet werden."
      "frontend.shop_auth.resend.flashes.invalid_email" => "Bitte geben Sie eine gültige E-Mail-Adresse ein."
      "frontend.shop_auth.resend.flashes.mail_failed" => "Die Bestätigungsmail konnte nicht sofort versendet werden. Bitte verwenden Sie die Funktion zum erneuten Senden auf der Login-Seite."
      "frontend.shop_auth.resend.flashes.rate_limit" => "Zu viele Anfragen für neue Bestätigungslinks."
      "frontend.shop_auth.resend.flashes.sent_if_exists" => "Falls für diese E-Mail-Adresse ein unbestätigtes Shop-Konto existiert, wurde ein neuer Bestätigungslink versendet."
      "frontend.shop_auth.verify.flashes.already_verified" => "Dieses Shop-Konto ist bereits bestätigt und kann direkt genutzt werden."
      "frontend.shop_auth.verify.flashes.expired_resent" => "Der Bestatigungslink war abgelaufen. Wir haben Ihnen automatisch einen neuen Link gesendet."
      "frontend.shop_auth.verify.flashes.invalid_token" => "Der Bestätigungslink ist ungültig oder wurde bereits verwendet."
      "frontend.shop_auth.verify.flashes.verified" => "Ihre E-Mail-Adresse wurde erfolgreich bestätigt. Sie können sich jetzt anmelden."
      "frontend.shop.actions.add_error" => "Fehler beim Hinzufügen zum Warenkorb"
      "frontend.shop.actions.add_to_cart" => "In den Warenkorb"
      "frontend.shop.actions.added" => "Hinzugefügt"
      "frontend.shop.actions.buy" => "Kaufen"
      "frontend.shop.actions.cart_short" => "Warenkorb"
      "frontend.shop.actions.clear_b2b_group" => "B2B-Gruppe zurücksetzen"
      "frontend.shop.actions.loading" => "Lädt..."
      "frontend.shop.actions.request_quote" => "B2B-Angebot anfragen"
      "frontend.shop.actions.watchlist_add" => "Merkliste +"
      "frontend.shop.actions.watchlist_remove" => "Merkliste -"
      "frontend.shop.actions.wishlist" => "Wunschliste"
      "frontend.shop.actions.wishlist_remove" => "Wunschliste entfernen"
      "frontend.shop.category.default_title" => "Kategorie"
      "frontend.shop.confirmation.account" => "Mein Konto"
      "frontend.shop.confirmation.breadcrumb_current" => "Bestätigung"
      "frontend.shop.confirmation.continue_shopping" => "Weiter einkaufen"
      "frontend.shop.confirmation.message" => "Ihre Bestellung wurde erfolgreich aufgenommen. Sie erhalten in Kürze eine Bestätigungs-E-Mail mit allen Details."
      "frontend.shop.confirmation.meta_title" => "Bestellung erfolgreich - Vielen Dank!"
      "frontend.shop.confirmation.page_title" => "Bestellung erfolgreich"
      "frontend.shop.confirmation.title" => "Vielen Dank für Ihre Bestellung!"
      "frontend.shop.errors.category_not_found" => "Kategorie nicht gefunden."
      "frontend.shop.errors.product_not_found" => "Produkt nicht gefunden."
      "frontend.shop.labels.sale_prefix" => "Aktion:"
      "frontend.shop.limit.per_page" => "pro Seite"
      "frontend.shop.limit.products" => "Produkte"
      "frontend.shop.no.product.image" => "Kein Bild"
      "frontend.shop.not.found.products" => "Keine Produkte gefunden."
      "frontend.shop.notifications.product_unavailable" => "Dieses Produkt ist aktuell nicht verfügbar."
      "frontend.shop.overview" => "Übersicht"
      "frontend.shop.product.labels.b2b" => "B2B"
      "frontend.shop.product.labels.gross" => "Brutto"
      "frontend.shop.product.labels.net" => "Netto"
      "frontend.shop.product.labels.price_breakdown" => "Netto: %net% | Brutto: %gross% | MwSt: %vat%%"
      "frontend.shop.product.labels.sku" => "Artikelnummer"
      "frontend.shop.product.labels.special_price" => "Sonderpreis"
      "frontend.shop.product.labels.tags" => "Schlagwörter"
      "frontend.shop.product.labels.uvp" => "UVP"
      "frontend.shop.product.labels.vat_excluded" => "zzgl. MwSt."
      "frontend.shop.product.labels.vat_included" => "inkl. MwSt."
      "frontend.shop.product.manufacturer" => "Hersteller:"
      "frontend.shop.product.pickup.available_text" => "Sie können diesen Artikel im Checkout ohne Versandkosten zur Abholung auswählen."
      "frontend.shop.product.pickup.available_title" => "Abholung im Geschäft möglich"
      "frontend.shop.product.pickup.free_shipping" => "Keine Versandkosten bei Abholung"
      "frontend.shop.product.pickup.label" => "Abholung im Geschäft"
      "frontend.shop.product.pickup.note_label" => "Hinweis zur Abholung"
      "frontend.shop.product.pickup.only_text" => "Dieser Artikel ist ausschließlich zur Abholung verfügbar. Versand wird im Checkout nicht angeboten."
      "frontend.shop.product.pickup.only_title" => "Nur Abholung im Geschäft"
      "frontend.shop.product.pickup.ready_notification" => "Bereitmeldung per E-Mail"
      "frontend.shop.product.question.answer_label" => "Antwort:"
      "frontend.shop.product.question.asked_by" => "<strong>%name%</strong> fragt:"
      "frontend.shop.product.question.default_author" => "Gast"
      "frontend.shop.product.question.email" => "E-Mail (optional)"
      "frontend.shop.product.question.email_placeholder" => "dein@email.de"
      "frontend.shop.product.question.empty" => "Noch keine beantworteten Fragen vorhanden."
      "frontend.shop.product.question.login_notice" => "%login_link_open%Jetzt anmelden%login_link_close%, um eine Frage zu stellen."
      "frontend.shop.product.question.name" => "Name"
      "frontend.shop.product.question.name_placeholder" => "Dein Name"
      "frontend.shop.product.question.question_label" => "Frage"
      "frontend.shop.product.question.required" => "Bitte eine Frage eingeben."
      "frontend.shop.product.question.submit" => "Frage absenden"
      "frontend.shop.product.question.submitted" => "Vielen Dank. Deine Frage wurde zur Moderation eingereicht."
      "frontend.shop.product.question.title" => "Fragen & Antworten"
      "frontend.shop.product.review.controller.anonymous_name" => "Anonym"
      "frontend.shop.product.review.controller.body_required" => "Bitte einen Bewertungstext eingeben."
      "frontend.shop.product.review.controller.csrf_invalid" => "Ungültiges Token. Bitte erneut versuchen."
      "frontend.shop.product.review.controller.guest_name" => "Gast"
      "frontend.shop.product.review.controller.product_not_found" => "Produkt nicht gefunden."
      "frontend.shop.product.review.controller.rating_invalid" => "Ungültige Sternebewertung."
      "frontend.shop.product.review.controller.submitted" => "Vielen Dank für Ihre Bewertung. Sie wird nach Prüfung freigeschaltet."
      "frontend.shop.product.review.count_one" => "%count% Bewertung"
      "frontend.shop.product.review.count_other" => "%count% Bewertungen"
      "frontend.shop.product.review.empty" => "Noch keine Bewertungen vorhanden."
      "frontend.shop.product.review.form.body" => "Bewertung"
      "frontend.shop.product.review.form.body_placeholder" => "Teilen Sie Ihre Erfahrungen mit diesem Produkt…"
      "frontend.shop.product.review.form.email" => "E-Mail (optional, nicht öffentlich)"
      "frontend.shop.product.review.form.email_placeholder" => "ihre@email.de"
      "frontend.shop.product.review.form.heading" => "Bewertung schreiben"
      "frontend.shop.product.review.form.moderation_notice" => "Bewertungen werden nach Prüfung freigeschaltet."
      "frontend.shop.product.review.form.name" => "Name"
      "frontend.shop.product.review.form.name_placeholder" => "Ihr Name"
      "frontend.shop.product.review.form.rating" => "Sterne-Bewertung"
      "frontend.shop.product.review.form.submit" => "Bewertung absenden"
      "frontend.shop.product.review.form.title" => "Titel (optional)"
      "frontend.shop.product.review.form.title_placeholder" => "Kurze Zusammenfassung"
      "frontend.shop.product.review.gate.customer_missing" => "Ihr Shop-Konto ist keinem Kundenprofil zugeordnet."
      "frontend.shop.product.review.gate.login_cta" => "Jetzt anmelden"
      "frontend.shop.product.review.gate.login_required" => "Nur angemeldete Shop-Kunden können bewerten."
      "frontend.shop.product.review.gate.not_allowed" => "Bewertungen sind erst nach erfolgreicher Bestellung und Erhalt des Artikels möglich."
      "frontend.shop.product.review.gate.unavailable" => "Eine Bewertung ist aktuell nicht möglich."
      "frontend.shop.product.review.heading" => "Kundenbewertungen"
      "frontend.shop.product.review.tab" => "Bewertungen"
      "frontend.shop.product.review.verified_purchase" => "Verifizierter Kauf"
      "frontend.shop.product.stock" => "Lagerbestand:"
      "frontend.shop.product.tabs.details" => "Details"
      "frontend.shop.product.tabs.questions" => "Fragen & Antworten"
      "frontend.shop.search.products.placeholder" => "Produkte suchen..."
      "frontend.shop.sidebar.categories" => "Kategorien"
      "frontend.shop.total.found" => "Produkte gefunden."
      "frontend.shop.total.products" => "Produkte"
      "frontend.single_room.with_external_bathroom.title" => "Einzelzimmer mit externem Bad"
      "frontend.slider.img_subtxt_1" => "mehr Text hier"
      "frontend.slider.img_subtxt_2" => "mehr Text hier"
      "frontend.slider.img_subtxt_3" => "mehr Text hier"
      "frontend.slider.img_txt_1" => "" Info Text Hier ""
      "frontend.slider.img_txt_2" => "" Info Text Hier ""
      "frontend.slider.img_txt_3" => "" Info Text Hier ""
    ]
  ]
  -adminDomainCache: []
  -locale: "de"
  -repo: App\Repository\TranslationRepository {#265 …}
  -defaultLocale: "de"
  -projectDir: "/var/www/nfok.xyz"
}
trim
true
upload_max_size_message
Closure() {#957
  class: "Symfony\Component\Form\Extension\Validator\Type\UploadValidatorExtension"
  use: {
    $translator: App\Service\DatabaseTranslator {#266
      -cache: [
        "de|messages|backend.builder.ResetPasswordRequestFormType.message" => "Bitte E-Mail eintragen"
        "de|messages|frontend.global.adresses.phonenumber" => "000 / 000000"
        "de|messages|frontend.global.adresses.email" => "nfokwork@gmail.com"
        "de|messages|frontend.shop_auth.password_reset.request.meta_title" => "Passwort zurücksetzen - Shop"
        "de|messages|frontend.navigation.customer.login" => "Shop anmelden"
        "de|messages|frontend.navigation.customer.help" => "Hilfe"
        "de|messages|frontend.navigation.locale.label" => "Sprache"
        "de|messages|frontend.shop.actions.cart_short" => "Warenkorb"
        "de|messages|frontend.cart.empty.title" => "Ihr Warenkorb ist leer"
        "de|messages|frontend.cart.table.remove" => "Entfernen"
        "de|messages|frontend.cart.summary.subtotal" => "Zwischensumme"
        "de|messages|frontend.cart.summary.included_vat" => "enthaltene MwSt. (19%)"
        "de|messages|frontend.cart.actions.checkout" => "Zur Kasse"
        "de|messages|frontend.shop.actions.add_error" => "Fehler beim Hinzufügen zum Warenkorb"
        "de|messages|frontend.navigation.actions.open_sidebar" => "Seitenleiste öffnen"
        "de|messages|frontend.shop_auth.password_reset.request.page_title" => "Passwort zurücksetzen"
        "de|messages|frontend.menu.home" => "Startseite"
        "de|messages|frontend.menu.shop" => "Shop"
        "de|messages|frontend.shop_auth.password_reset.request.breadcrumb_current" => "Passwort zurücksetzen"
        "de|messages|frontend.shop_auth.password_reset.request.intro_title" => "Passwort vergessen?"
        "de|messages|frontend.shop_auth.password_reset.request.intro_text" => "Fordern Sie einen sicheren Link zum Zurücksetzen Ihres Passworts an."
        "de|messages|frontend.shop_auth.password_reset.request.fields.email" => "E-Mail-Adresse"
        "de|messages|frontend.shop_auth.password_reset.request.fields.email_placeholder" => "name@beispiel.de"
        "de|messages|name@beispiel.de" => "name@beispiel.de"
        "de|messages|frontend.shop_auth.password_reset.request.help_text" => "Geben Sie Ihre E-Mail-Adresse ein. Wenn ein Konto dazu existiert, senden wir Ihnen einen Link zum Zurücksetzen Ihres Passworts."
        "de|messages|frontend.shop_auth.password_reset.request.actions.submit" => "Link zum Zurücksetzen senden"
        "de|messages|frontend.shop_auth.password_reset.request.back_notice" => "Sie kennen Ihr Passwort doch noch?"
        "de|messages|frontend.shop_auth.password_reset.request.actions.back_to_login" => "Zurück zum Login"
      ]
      -databaseCache: [
        "de|messages" => [
          "admin.ab_tests.actions.back" => "Zurück"
          "admin.ab_tests.actions.cancel" => "Abbrechen"
          "admin.ab_tests.actions.close" => "Schließen"
          "admin.ab_tests.actions.create" => "Anlegen"
          "admin.ab_tests.actions.details" => "Details"
          "admin.ab_tests.actions.end" => "Beenden"
          "admin.ab_tests.actions.help" => "Hilfe"
          "admin.ab_tests.actions.pause" => "Pausieren"
          "admin.ab_tests.actions.save_variant" => "Variante %variant% speichern"
          "admin.ab_tests.actions.set_winner" => "Gewinner setzen"
          "admin.ab_tests.actions.start" => "Starten"
          "admin.ab_tests.actions.to_module" => "Zum Modul"
          "admin.ab_tests.confirm.end_button" => "Beenden"
          "admin.ab_tests.confirm.end_text" => "Experiment wirklich beenden? Diese Aktion kann nicht rückgängig gemacht werden."
          "admin.ab_tests.confirm.winner_button" => "Gewinner setzen"
          "admin.ab_tests.confirm.winner_text" => "Gewinner setzen und Experiment beenden?"
          "admin.ab_tests.detail.active_label" => "Aktiv"
          "admin.ab_tests.detail.change_status" => "Status ändern:"
          "admin.ab_tests.detail.columns.active" => "Aktiv"
          "admin.ab_tests.detail.columns.clicks" => "Klicks"
          "admin.ab_tests.detail.columns.ctr" => "CTR"
          "admin.ab_tests.detail.columns.variant" => "Variante"
          "admin.ab_tests.detail.columns.views" => "Aufrufe"
          "admin.ab_tests.detail.columns.winner" => "Gewinner?"
          "admin.ab_tests.detail.content_label" => "HTML-Inhalt der Variante %variant%"
          "admin.ab_tests.detail.content_placeholder" => "HTML für Variante %variant%..."
          "admin.ab_tests.detail.inactive_label" => "Inaktiv"
          "admin.ab_tests.detail.info_title" => "Experiment-Info"
          "admin.ab_tests.detail.no_variants" => "Noch keine Varianten angelegt. Füge Variante A, B oder C unten hinzu."
          "admin.ab_tests.detail.page_prefix" => "Experiment"
          "admin.ab_tests.detail.performance_title" => "Varianten & Performance"
          "admin.ab_tests.detail.rows.content_block" => "Content Block"
          "admin.ab_tests.detail.rows.created" => "Erstellt"
          "admin.ab_tests.detail.rows.description" => "Beschreibung"
          "admin.ab_tests.detail.rows.ended" => "Beendet"
          "admin.ab_tests.detail.rows.started" => "Gestartet"
          "admin.ab_tests.detail.rows.winner" => "Gewinner"
          "admin.ab_tests.detail.select_variant" => "Variante wählen"
          "admin.ab_tests.detail.set_winner_title" => "Gewinner festlegen:"
          "admin.ab_tests.detail.stats_summary" => "Aufrufe: %views% | Klicks: %clicks%"
          "admin.ab_tests.detail.variant_label" => "Variante %variant%"
          "admin.ab_tests.detail.variant_panel_edit" => "Variante %variant% bearbeiten"
          "admin.ab_tests.detail.variant_panel_new" => "Variante %variant% neu anlegen"
          "admin.ab_tests.detail.winner_badge" => "Gewinner"
          "admin.ab_tests.help_index.card_subtitle" => "Experimente, Varianten, Gewinner, Tracking"
          "admin.ab_tests.help_index.card_title" => "A/B-Tests"
          "admin.ab_tests.help.navigation_title" => "Navigation"
          "admin.ab_tests.help.navigation.api" => "API-Endpunkte"
          "admin.ab_tests.help.navigation.concept" => "Konzept"
          "admin.ab_tests.help.navigation.create" => "Experiment anlegen"
          "admin.ab_tests.help.navigation.fields" => "Feldreferenz"
          "admin.ab_tests.help.navigation.lifecycle" => "Status-Lifecycle"
          "admin.ab_tests.help.navigation.tracking" => "Event-Tracking"
          "admin.ab_tests.help.navigation.variants" => "Varianten bearbeiten"
          "admin.ab_tests.help.navigation.winner" => "Gewinner festlegen"
          "admin.ab_tests.help.sections.api.rows.create" => "Neues Experiment anlegen"
          "admin.ab_tests.help.sections.api.rows.detail" => "Experiment-Detail"
          "admin.ab_tests.help.sections.api.rows.list" => "Experiment-Liste"
          "admin.ab_tests.help.sections.api.rows.save_variant" => "Variante speichern"
          "admin.ab_tests.help.sections.api.rows.status" => "Status ändern"
          "admin.ab_tests.help.sections.api.rows.track" => "Event tracken (Frontend)"
          "admin.ab_tests.help.sections.api.rows.winner" => "Gewinner festlegen"
          "admin.ab_tests.help.sections.api.table.function" => "Funktion"
          "admin.ab_tests.help.sections.api.table.method" => "Methode"
          "admin.ab_tests.help.sections.api.table.url" => "URL"
          "admin.ab_tests.help.sections.api.title" => "API-Endpunkte"
          "admin.ab_tests.help.sections.concept.cards.metrics_text" => "Tracking von <code>view</code>-Events (Seitenaufrufe) und <code>click</code>-Events (Interaktionen)."
          "admin.ab_tests.help.sections.concept.cards.metrics_title" => "Metriken"
          "admin.ab_tests.help.sections.concept.cards.variants_text" => "Bis zu drei Varianten pro Experiment. Jeder Besucher sieht konsistent dieselbe Variante."
          "admin.ab_tests.help.sections.concept.cards.variants_title" => "Varianten A/B/C"
          "admin.ab_tests.help.sections.concept.intro" => "A/B-Tests ermöglichen es, verschiedene Versionen von <strong>Content-Blöcken</strong>, z.B. Banner, CTAs oder Produktbeschreibungen, gegeneinander zu testen und die Performance zu messen."
          "admin.ab_tests.help.sections.concept.permissions_label" => "Berechtigungen:"
          "admin.ab_tests.help.sections.concept.title" => "A/B-Test: Konzept"
          "admin.ab_tests.help.sections.create.steps.click_new" => "Im A/B-Test-Modul auf <kbd>+ Neues Experiment</kbd> klicken"
          "admin.ab_tests.help.sections.create.steps.content_block" => "Den Ziel-<strong>Content Block</strong> aus der Liste auswählen; der angezeigte Block-Key zeigt, wo der Test im Frontend ausgespielt wird"
          "admin.ab_tests.help.sections.create.steps.description" => "<strong>Beschreibung</strong>: Hypothese oder Testbeschreibung"
          "admin.ab_tests.help.sections.create.steps.fill_variants" => "Varianten im Bereich „Varianten & Performance“ befüllen"
          "admin.ab_tests.help.sections.create.steps.save_draft" => "Speichern → Das Experiment startet im Status <code>draft</code>"
          "admin.ab_tests.help.sections.create.steps.set_running" => "Status auf <code>running</code> setzen → Der Test ist live"
          "admin.ab_tests.help.sections.create.steps.title" => "<strong>Titel</strong>: Interner Name des Experiments"
          "admin.ab_tests.help.sections.create.title" => "Experiment anlegen"
          "admin.ab_tests.help.sections.create.warning" => "Teste nur Blöcke, deren Block-Key im Frontend tatsächlich gerendert wird. Ohne passende Einbindung wird kein Traffic verteilt."
          "admin.ab_tests.help.sections.fields.rows.content_block" => "Verknüpfter Content Block als Relation zu ContentBlock"
          "admin.ab_tests.help.sections.fields.rows.description" => "Hypothese oder Testbeschreibung"
          "admin.ab_tests.help.sections.fields.rows.ended_at" => "Ende des Tests"
          "admin.ab_tests.help.sections.fields.rows.started_at" => "Start des Tests"
          "admin.ab_tests.help.sections.fields.rows.status" => "draft / running / paused / ended"
          "admin.ab_tests.help.sections.fields.rows.title" => "Experiment-Name (intern)"
          "admin.ab_tests.help.sections.fields.rows.winner" => "Gewinner-Variante: A / B / C"
          "admin.ab_tests.help.sections.fields.table.description" => "Beschreibung"
          "admin.ab_tests.help.sections.fields.table.field" => "Feld"
          "admin.ab_tests.help.sections.fields.table.type" => "Typ"
          "admin.ab_tests.help.sections.fields.title" => "Feldreferenz: AbExperiment"
          "admin.ab_tests.help.sections.fields.types.boolean" => "Boolean"
          "admin.ab_tests.help.sections.fields.types.datetime" => "Datum/Zeit"
          "admin.ab_tests.help.sections.fields.types.enum" => "Enum"
          "admin.ab_tests.help.sections.fields.types.enum_nullable" => "Enum (nullable)"
          "admin.ab_tests.help.sections.fields.types.integer" => "Integer"
          "admin.ab_tests.help.sections.fields.types.relation" => "Relation"
          "admin.ab_tests.help.sections.fields.types.text" => "Text"
          "admin.ab_tests.help.sections.fields.variant_rows.active" => "Variante nimmt Traffic an"
          "admin.ab_tests.help.sections.fields.variant_rows.clicks" => "Anzahl click-Events"
          "admin.ab_tests.help.sections.fields.variant_rows.content" => "HTML-Inhalt der Variante"
          "admin.ab_tests.help.sections.fields.variant_rows.variant" => "A / B / C"
          "admin.ab_tests.help.sections.fields.variant_rows.views" => "Anzahl view-Events"
          "admin.ab_tests.help.sections.fields.variant_title" => "ContentBlockVariant:"
          "admin.ab_tests.help.sections.lifecycle.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/status</code>"
          "admin.ab_tests.help.sections.lifecycle.body" => "<strong>Body:</strong> <code>{"status": "running"}</code>"
          "admin.ab_tests.help.sections.lifecycle.rows.draft.meaning" => "In Vorbereitung, kein Traffic"
          "admin.ab_tests.help.sections.lifecycle.rows.draft.transition" => "→ running"
          "admin.ab_tests.help.sections.lifecycle.rows.ended.meaning" => "Test beendet, Gewinner kann markiert werden"
          "admin.ab_tests.help.sections.lifecycle.rows.ended.transition" => "→ (Endstatus)"
          "admin.ab_tests.help.sections.lifecycle.rows.paused.meaning" => "Pausiert, kein neuer Traffic"
          "admin.ab_tests.help.sections.lifecycle.rows.paused.transition" => "→ running / ended"
          "admin.ab_tests.help.sections.lifecycle.rows.running.meaning" => "Test aktiv, Traffic wird verteilt"
          "admin.ab_tests.help.sections.lifecycle.rows.running.transition" => "→ paused / ended"
          "admin.ab_tests.help.sections.lifecycle.table.meaning" => "Bedeutung"
          "admin.ab_tests.help.sections.lifecycle.table.status" => "Status"
          "admin.ab_tests.help.sections.lifecycle.table.transition" => "Übergang zu"
          "admin.ab_tests.help.sections.lifecycle.title" => "Status-Lifecycle"
          "admin.ab_tests.help.sections.tracking.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/api/track</code>"
          "admin.ab_tests.help.sections.tracking.body_label" => "<strong>Body:</strong>"
          "admin.ab_tests.help.sections.tracking.intro" => "Für Auswertungen müssen Frontend-Events gesendet werden:"
          "admin.ab_tests.help.sections.tracking.note" => "Das Tracking im Frontend sendet automatisch <code>view</code>-Events beim Laden und <code>click</code>-Events bei Klicks auf CTAs innerhalb des Blocks."
          "admin.ab_tests.help.sections.tracking.payload" => """
            {\n
              "blockId": 42,\n
              "variant": "B",\n
              "event": "view"   // alternativ "click"\n
            }\n
            """
          "admin.ab_tests.help.sections.tracking.title" => "Event-Tracking"
          "admin.ab_tests.help.sections.variants.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/variant/save</code>"
          "admin.ab_tests.help.sections.variants.body" => "<strong>Body:</strong> <code>{"variant": "A", "content": "..."}</code>"
          "admin.ab_tests.help.sections.variants.info" => "Variante <strong>A</strong> ist die Kontrollvariante. Variante <strong>B</strong> und <strong>C</strong> sind die Testkandidaten."
          "admin.ab_tests.help.sections.variants.items.active" => "Gespeicherte Varianten werden im aktuellen Workflow automatisch aktiv gesetzt"
          "admin.ab_tests.help.sections.variants.items.content" => "<code>content</code>: HTML- oder Text-Inhalt der Variante"
          "admin.ab_tests.help.sections.variants.items.limit" => "Jedes Experiment hat bis zu drei Varianten: <strong>A</strong>, <strong>B</strong>, <strong>C</strong>"
          "admin.ab_tests.help.sections.variants.items.traffic" => "Nur aktive Varianten erhalten Traffic; inaktive Varianten werden nie angezeigt"
          "admin.ab_tests.help.sections.variants.title" => "Varianten bearbeiten (A/B/C)"
          "admin.ab_tests.help.sections.winner.api" => "<strong>API:</strong> <code>POST /admin/ab-tests/{id}/winner</code>"
          "admin.ab_tests.help.sections.winner.body" => "<strong>Body:</strong> <code>{"variant": "B"}</code>"
          "admin.ab_tests.help.sections.winner.intro" => "Nach dem Beenden eines Tests wird die gewinnende Variante festgelegt:"
          "admin.ab_tests.help.sections.winner.steps.apply" => "Die Gewinnervariante wird nur im Experiment markiert. Die Übernahme in den produktiven Content erfolgt anschließend bewusst manuell."
          "admin.ab_tests.help.sections.winner.steps.choose" => "<kbd>Gewinner: Variante X</kbd> auswählen"
          "admin.ab_tests.help.sections.winner.steps.compare" => "Statistiken der Varianten vergleichen, z.B. CTR und Conversions"
          "admin.ab_tests.help.sections.winner.steps.end" => "Status auf <code>ended</code> setzen"
          "admin.ab_tests.help.sections.winner.title" => "Gewinner festlegen"
          "admin.ab_tests.help.title" => "Hilfe: A/B-Tests"
          "admin.ab_tests.index.columns.action" => "Aktion"
          "admin.ab_tests.index.columns.content_block" => "Content Block"
          "admin.ab_tests.index.columns.ended" => "Beendet"
          "admin.ab_tests.index.columns.started" => "Gestartet"
          "admin.ab_tests.index.columns.status" => "Status"
          "admin.ab_tests.index.columns.title" => "Titel"
          "admin.ab_tests.index.columns.winner" => "Gewinner"
          "admin.ab_tests.index.empty" => "Noch keine Experimente vorhanden."
          "admin.ab_tests.index.help_title" => "Hilfe zu diesem Modul"
          "admin.ab_tests.index.list_title" => "Alle Experimente"
          "admin.ab_tests.index.modal.content_block_label" => "Content Block"
          "admin.ab_tests.index.modal.description_label" => "Beschreibung"
          "admin.ab_tests.index.modal.description_placeholder" => "Optional"
          "admin.ab_tests.index.modal.select_placeholder" => "-- Bitte wählen --"
          "admin.ab_tests.index.modal.title" => "Neues A/B-Experiment"
          "admin.ab_tests.index.modal.title_label" => "Titel"
          "admin.ab_tests.index.modal.title_placeholder" => "z.B. Hero-Banner Sept."
          "admin.ab_tests.index.new_experiment" => "Neues Experiment"
          "admin.ab_tests.index.page_title" => "A/B-Tests"
          "admin.ab_tests.index.winner_badge" => "Variante %variant%"
          "admin.ab_tests.notifications.block_not_found" => "Content Block nicht gefunden."
          "admin.ab_tests.notifications.experiment_created" => "Experiment "%title%" wurde angelegt."
          "admin.ab_tests.notifications.invalid_required_fields" => "Content Block und Titel sind Pflichtfelder."
          "admin.ab_tests.notifications.invalid_status" => "Ungültiger Status."
          "admin.ab_tests.notifications.invalid_variant" => "Ungültige Variante."
          "admin.ab_tests.notifications.status_updated" => "Status aktualisiert."
          "admin.ab_tests.notifications.variant_not_found" => "Variante nicht gefunden."
          "admin.ab_tests.notifications.variant_saved" => "Variante %variant% wurde gespeichert."
          "admin.ab_tests.notifications.winner_set" => "Variante %variant% wurde als Gewinner gesetzt. Das Experiment wurde beendet."
          "admin.ab_tests.status.draft" => "Entwurf"
          "admin.ab_tests.status.ended" => "Beendet"
          "admin.ab_tests.status.paused" => "Pausiert"
          "admin.ab_tests.status.running" => "Aktiv"
          "admin.alerts.actions.acknowledge" => "Bestätigen"
          "admin.alerts.actions.cancel" => "Abbrechen"
          "admin.alerts.actions.clear_selection" => "Auswahl aufheben"
          "admin.alerts.actions.close" => "Schließen"
          "admin.alerts.actions.create" => "Erstellen"
          "admin.alerts.actions.detail" => "Detail"
          "admin.alerts.actions.help" => "Hilfe"
          "admin.alerts.actions.load_more" => "Weitere laden"
          "admin.alerts.actions.refresh" => "Aktualisieren"
          "admin.alerts.actions.resolve" => "Lösen"
          "admin.alerts.actions.test_alert" => "Test-Hinweis"
          "admin.alerts.badges.critical" => "kritisch"
          "admin.alerts.badges.info" => "Info"
          "admin.alerts.badges.status_acknowledged" => "bestätigt"
          "admin.alerts.badges.status_open" => "offen"
          "admin.alerts.badges.status_resolved" => "gelöst"
          "admin.alerts.badges.warning" => "Warnung"
          "admin.alerts.detail_modal.body_placeholder" => "Details werden beim nächsten vollständigen Ausbau einer Einzel-Detail-API angezeigt. Nutze die Tabelle für Quick-Actions."
          "admin.alerts.detail_modal.id_label" => "Alert-ID:"
          "admin.alerts.detail_modal.loading" => "Lade…"
          "admin.alerts.detail_modal.title" => "Alert-Details"
          "admin.alerts.filters.all_severities" => "Alle Schweregrade"
          "admin.alerts.filters.severity_critical" => "Kritisch"
          "admin.alerts.filters.severity_info" => "Info"
          "admin.alerts.filters.severity_warning" => "Warnung"
          "admin.alerts.filters.status_all" => "Alle"
          "admin.alerts.filters.status_open" => "Offen"
          "admin.alerts.filters.status_resolved" => "Gelöst"
          "admin.alerts.filters.status_unacknowledged" => "Nicht bestätigt"
          "admin.alerts.heading" => "Hinweis-Postfach"
          "admin.alerts.help.actions_panel.acknowledge_flag" => "<code>acknowledged</code> wird auf <code>true</code> gesetzt"
          "admin.alerts.help.actions_panel.acknowledge_hidden" => "Alert verschwindet aus „Neue Alerts“-Ansicht"
          "admin.alerts.help.actions_panel.acknowledge_intro" => "„Ich habe diesen Alert gesehen und arbeite daran.“"
          "admin.alerts.help.actions_panel.acknowledge_open" => "Alert bleibt offen (nicht gelöst)"
          "admin.alerts.help.actions_panel.acknowledge_title" => "Bestätigen"
          "admin.alerts.help.actions_panel.resolve_done" => "Alert wird als abgeschlossen markiert"
          "admin.alerts.help.actions_panel.resolve_intro" => "„Problem ist behoben.“"
          "admin.alerts.help.actions_panel.resolve_tab" => "Alert wechselt in Tab „Gelöste Alerts“"
          "admin.alerts.help.actions_panel.resolve_timestamp" => "<code>resolvedAt</code> wird gesetzt"
          "admin.alerts.help.actions_panel.resolve_title" => "Lösen"
          "admin.alerts.help.actions_panel.title" => "Bestätigen vs. Lösen"
          "admin.alerts.help.api.acknowledge_desc" => "Alert bestätigen"
          "admin.alerts.help.api.bulk_desc" => "Bulk-Aktion"
          "admin.alerts.help.api.list_desc" => "Alert-Liste (JSON)"
          "admin.alerts.help.api.page_desc" => "Alert-Verwaltungsseite"
          "admin.alerts.help.api.resolve_desc" => "Alert als gelöst markieren"
          "admin.alerts.help.api.table.function" => "Funktion"
          "admin.alerts.help.api.table.method" => "Methode"
          "admin.alerts.help.api.table.parameters" => "Parameter"
          "admin.alerts.help.api.test_desc" => "Test-Hinweis erzeugen"
          "admin.alerts.help.api.title" => "API-Endpunkte"
          "admin.alerts.help.back" => "Zurück"
          "admin.alerts.help.bulk.actions_label" => "Mögliche actions:"
          "admin.alerts.help.bulk.api_label" => "API:"
          "admin.alerts.help.bulk.body_label" => "Body:"
          "admin.alerts.help.bulk.intro" => "Mehrere Alerts gleichzeitig bearbeiten"
          "admin.alerts.help.bulk.step1" => "Alerts in der Liste auswählen (Checkbox)"
          "admin.alerts.help.bulk.step2" => "Aktion wählen: <kbd>Alle bestätigen</kbd> oder <kbd>Alle lösen</kbd>"
          "admin.alerts.help.bulk.step3" => "Bestätigen"
          "admin.alerts.help.bulk.title" => "Bulk-Aktionen"
          "admin.alerts.help.fields.acknowledged_desc" => "Wurde der Alert bestätigt?"
          "admin.alerts.help.fields.context_desc" => "Zusätzliche technische Kontextdaten"
          "admin.alerts.help.fields.created_desc" => "Alert-Erstellungszeitpunkt"
          "admin.alerts.help.fields.id" => "Alert-ID"
          "admin.alerts.help.fields.message_desc" => "Beschreibungstext des Alerts"
          "admin.alerts.help.fields.product_desc" => "Betroffenes Produkt (bei stock-Alerts)"
          "admin.alerts.help.fields.resolved_desc" => "Zeitstempel der Lösung"
          "admin.alerts.help.fields.severity_desc" => "Dringlichkeit: critical / warning / info"
          "admin.alerts.help.fields.table.description" => "Beschreibung"
          "admin.alerts.help.fields.table.field" => "Feld"
          "admin.alerts.help.fields.table.type" => "Typ"
          "admin.alerts.help.fields.title" => "Feldreferenz: AlertLog"
          "admin.alerts.help.fields.type_desc" => "Alert-Typ (low_stock, payment_failed, etc.)"
          "admin.alerts.help.navigation.actions" => "Bestätigen & Lösen"
          "admin.alerts.help.navigation.api" => "API-Endpunkte"
          "admin.alerts.help.navigation.bulk" => "Bulk-Aktionen"
          "admin.alerts.help.navigation.fields" => "Feldreferenz"
          "admin.alerts.help.navigation.overview" => "Überblick"
          "admin.alerts.help.navigation.severity" => "Severity-Stufen"
          "admin.alerts.help.navigation.test_hint" => "Test-Hinweis"
          "admin.alerts.help.navigation.title" => "Navigation"
          "admin.alerts.help.navigation.types" => "Alert-Typen"
          "admin.alerts.help.open_module" => "Zum Modul"
          "admin.alerts.help.overview.automatic_title" => "Automatisch erkannte Probleme"
          "admin.alerts.help.overview.description" => "Das <strong>Alert-System</strong> überwacht kritische Shop-Ereignisse und benachrichtigt Admins. Alerts werden in der Regel automatisch durch Import-, Feed- und Pricing-Prozesse erzeugt. Zusätzlich kann im Modul ein <strong>Test-Hinweis</strong> angelegt werden, um Anzeige und Benachrichtigung gezielt zu prüfen."
          "admin.alerts.help.overview.high_returns" => "Hohe Retourenrate"
          "admin.alerts.help.overview.low_stock" => "Niedriger Lagerbestand"
          "admin.alerts.help.overview.manage" => "Bearbeiten"
          "admin.alerts.help.overview.payment_failed" => "Zahlungsausfälle (Stripe/PayPal-Fehler)"
          "admin.alerts.help.overview.permissions_title" => "Berechtigung:"
          "admin.alerts.help.overview.stuck_orders" => "Bestellungen ohne Statusupdate > X Tage"
          "admin.alerts.help.overview.system_errors" => "Systemfehler / Exception-Logs"
          "admin.alerts.help.overview.title" => "Alerts: Überblick"
          "admin.alerts.help.overview.view" => "Anzeigen"
          "admin.alerts.help.severity.colors.blue" => "Blau"
          "admin.alerts.help.severity.colors.orange" => "Orange"
          "admin.alerts.help.severity.colors.red" => "Rot"
          "admin.alerts.help.severity.critical.action" => "Sofort"
          "admin.alerts.help.severity.critical.meaning" => "Sofortiger Handlungsbedarf, Shop-Funktion beeinträchtigt"
          "admin.alerts.help.severity.info.action" => "Bei Gelegenheit"
          "admin.alerts.help.severity.info.meaning" => "Hinweis, kein sofortiger Handlungsbedarf"
          "admin.alerts.help.severity.table.action_needed" => "Handlungsbedarf"
          "admin.alerts.help.severity.table.color" => "Farbe"
          "admin.alerts.help.severity.table.level" => "Stufe"
          "admin.alerts.help.severity.table.meaning" => "Bedeutung"
          "admin.alerts.help.severity.title" => "Severity-Stufen"
          "admin.alerts.help.severity.warning.action" => "Heute"
          "admin.alerts.help.severity.warning.meaning" => "Problem erkannt, noch keine kritische Auswirkung"
          "admin.alerts.help.test_hint.available_for" => "Verfügbar für Benutzer mit <code>ROLE_ADMIN_ALERT_MANAGE</code>"
          "admin.alerts.help.test_hint.creates_type" => "Erzeugt einen Alert vom Typ <code>manual_test</code>"
          "admin.alerts.help.test_hint.intro" => "Mit der Schaltfläche <kbd>Test-Hinweis</kbd> im Modul kann ein gezielter Prüfeintrag erzeugt werden. Das ist hilfreich, wenn die Liste leer ist und geprüft werden soll, ob Speicherung, Anzeige und globale Admin-Benachrichtigung korrekt funktionieren."
          "admin.alerts.help.test_hint.supports_severities" => "Unterstützt die Schweregrade <code>critical</code>, <code>warning</code> und <code>info</code>"
          "admin.alerts.help.test_hint.title" => "Test-Hinweis"
          "admin.alerts.help.title" => "Hilfe: System-Alerts"
          "admin.alerts.help.types.high_return_rate.description" => "Hohe Retourenrate"
          "admin.alerts.help.types.high_return_rate.trigger" => "RMA/Order-Verhältnis überschritten"
          "admin.alerts.help.types.low_stock.description" => "Niedriger Lagerbestand"
          "admin.alerts.help.types.low_stock.trigger" => "Produkt unter Mindestbestand"
          "admin.alerts.help.types.manual_test.description" => "Manueller Test-Hinweis"
          "admin.alerts.help.types.manual_test.trigger" => "Schaltfläche „Test-Hinweis“ im Alerts-Modul"
          "admin.alerts.help.types.order_stuck.description" => "Hängende Bestellung"
          "admin.alerts.help.types.order_stuck.trigger" => "Status unverändert > Schwellenwert"
          "admin.alerts.help.types.out_of_stock.description" => "Produkt ausverkauft"
          "admin.alerts.help.types.out_of_stock.trigger" => "Bestand = 0"
          "admin.alerts.help.types.payment_failed.description" => "Zahlungsfehler"
          "admin.alerts.help.types.payment_failed.trigger" => "Webhook von Stripe/PayPal"
          "admin.alerts.help.types.system_error.description" => "Systemfehler"
          "admin.alerts.help.types.system_error.trigger" => "Exception im Error-Log"
          "admin.alerts.help.types.table.description" => "Beschreibung"
          "admin.alerts.help.types.table.trigger" => "Auslöser"
          "admin.alerts.help.types.table.type" => "Typ"
          "admin.alerts.help.types.title" => "Alert-Typen"
          "admin.alerts.notifications.create_failed" => "Test-Hinweis konnte nicht erstellt werden."
          "admin.alerts.notifications.create_success" => "Test-Hinweis wurde erstellt."
          "admin.alerts.notifications.invalid_action" => "Ungültige Aktion."
          "admin.alerts.notifications.invalid_severity" => "Ungültiger Schweregrad."
          "admin.alerts.notifications.not_found" => "Hinweis nicht gefunden."
          "admin.alerts.page_title" => "Hinweis-Postfach"
          "admin.alerts.summary.count_label" => "%total% gesamt, Seite %page%/%pages%"
          "admin.alerts.summary.critical" => "Kritisch"
          "admin.alerts.summary.empty" => "Keine Hinweise gefunden."
          "admin.alerts.summary.heading" => "Hinweise"
          "admin.alerts.summary.info" => "Info"
          "admin.alerts.summary.loading" => "Lade…"
          "admin.alerts.summary.selected_suffix" => "ausgewählt"
          "admin.alerts.summary.total_open" => "Gesamt offen"
          "admin.alerts.summary.warning" => "Warnung"
          "admin.alerts.table.actions" => "Aktionen"
          "admin.alerts.table.message" => "Nachricht"
          "admin.alerts.table.no_product" => ""
          "admin.alerts.table.product" => "Produkt"
          "admin.alerts.table.severity" => "Schwere"
          "admin.alerts.table.status" => "Status"
          "admin.alerts.table.time" => "Zeit"
          "admin.alerts.table.type" => "Typ"
          "admin.alerts.test_message.critical" => "Manuell erzeugter Test-Hinweis: Kritisches Problem prüfen."
          "admin.alerts.test_message.info" => "Manuell erzeugter Test-Hinweis: Informationsmeldung prüfen."
          "admin.alerts.test_message.warning" => "Manuell erzeugter Test-Hinweis: Warnung prüfen."
          "admin.alerts.test_modal.description" => "Es wird ein manuell erzeugter Test-Hinweis angelegt, damit die Liste und die globale Admin-Benachrichtigung direkt geprüft werden können."
          "admin.alerts.test_modal.severity_label" => "Schweregrad"
          "admin.alerts.test_modal.title" => "Test-Hinweis erstellen"
          "admin.analytics.help_index.card_subtitle" => "Umsatz, Produkte, Funnel und Export"
          "admin.analytics.help_index.card_title" => "Analytics Cockpit"
          "admin.analytics.help_index.table_description" => "Umsatz, Charts, Funnel, Segmente und CSV-Export"
          "admin.analytics.help_index.table_label" => "Analytics"
          "admin.analytics.help.actions.back" => "Zurück"
          "admin.analytics.help.actions.module" => "Zum Modul"
          "admin.analytics.help.navigation.api" => "API-Endpunkte"
          "admin.analytics.help.navigation.dashboard" => "Dashboard"
          "admin.analytics.help.navigation.export" => "CSV-Export"
          "admin.analytics.help.navigation.interactions" => "Interaktions-Log"
          "admin.analytics.help.navigation.overview" => "Überblick"
          "admin.analytics.help.navigation.title" => "Navigation"
          "admin.analytics.help.page_title" => "Hilfe: Analytics Cockpit"
          "admin.analytics.help.sections.api.headers.function" => "Funktion"
          "admin.analytics.help.sections.api.headers.method" => "Methode"
          "admin.analytics.help.sections.api.headers.parameters" => "Parameter"
          "admin.analytics.help.sections.api.headers.url" => "URL"
          "admin.analytics.help.sections.api.rows.customers" => "Neue Kunden pro Tag"
          "admin.analytics.help.sections.api.rows.dashboard" => "Dashboard-Seite"
          "admin.analytics.help.sections.api.rows.export" => "CSV-Export der aktuellen Analytics-Daten"
          "admin.analytics.help.sections.api.rows.funnel" => "Funnel- und Conversion-Kennzahlen"
          "admin.analytics.help.sections.api.rows.interactions_acquisition" => "Herkunft nach Direkt, Suche, Social und Referral"
          "admin.analytics.help.sections.api.rows.interactions_event_details" => "Detailansicht pro Event mit Konto, Fehlerursache, Login-Feldern, IP, Browser, Land, Route, Pfad und Payload"
          "admin.analytics.help.sections.api.rows.interactions_summary" => "KPI-Zusammenfassung für Interaktionsdaten"
          "admin.analytics.help.sections.api.rows.interactions_technology" => "Browser-, Betriebssystem-, Geräte- und Länderverteilung"
          "admin.analytics.help.sections.api.rows.interactions_visitors" => "Besucherprofile auf Benutzer-, Session- und IP-Basis"
          "admin.analytics.help.sections.api.rows.revenue" => "Täglicher Umsatz und Bestellungen"
          "admin.analytics.help.sections.api.rows.segments" => "Segmentvergleich nach Quelle, Kategorie und Hersteller"
          "admin.analytics.help.sections.api.rows.summary" => "KPI-, Produkt- und Import-Zusammenfassung"
          "admin.analytics.help.sections.api.rows.top_products" => "Meistverkaufte Produkte"
          "admin.analytics.help.sections.api.title" => "API-Endpunkte"
          "admin.analytics.help.sections.dashboard.headers.block" => "Baustein"
          "admin.analytics.help.sections.dashboard.headers.description" => "Beschreibung"
          "admin.analytics.help.sections.dashboard.headers.source" => "Quelle"
          "admin.analytics.help.sections.dashboard.rows.customers_chart.block" => "Neukunden-Chart"
          "admin.analytics.help.sections.dashboard.rows.customers_chart.description" => "Zeigt neue Kunden pro Tag im gewählten Zeitraum."
          "admin.analytics.help.sections.dashboard.rows.funnel.block" => "Conversion Funnel"
          "admin.analytics.help.sections.dashboard.rows.funnel.description" => "Verdichtet Cart- und Checkout-Kennzahlen inklusive Conversion- und Abbruchraten."
          "admin.analytics.help.sections.dashboard.rows.import_overview.block" => "Import-Übersicht"
          "admin.analytics.help.sections.dashboard.rows.import_overview.description" => "Zeigt Importanzahl, Erfolgsquote und den letzten Importzeitpunkt."
          "admin.analytics.help.sections.dashboard.rows.kpis.block" => "KPI-Tiles"
          "admin.analytics.help.sections.dashboard.rows.kpis.description" => "Zeigen Gesamtumsatz, Umsatz im aktiven Zeitraum, Bestellungen, Ø Bestellwert, Kunden und aktive Produkte."
          "admin.analytics.help.sections.dashboard.rows.period_selector.block" => "Zeitraum und Reload"
          "admin.analytics.help.sections.dashboard.rows.period_selector.description" => "Schaltet zwischen 7, 30 und 90 Tagen um und lädt alle Widgets neu."
          "admin.analytics.help.sections.dashboard.rows.product_status.block" => "Produkt-Status"
          "admin.analytics.help.sections.dashboard.rows.product_status.description" => "Listet Gesamtbestand, aktive Produkte, niedrigen Bestand, Ausverkäufe und Durchschnittspreis."
          "admin.analytics.help.sections.dashboard.rows.revenue_chart.block" => "Umsatz-Chart"
          "admin.analytics.help.sections.dashboard.rows.revenue_chart.description" => "Stellt Umsatz und Bestellungen pro Tag im gewählten Zeitraum dar."
          "admin.analytics.help.sections.dashboard.rows.segments.block" => "Segmente"
          "admin.analytics.help.sections.dashboard.rows.segments.description" => "Vergleicht Quelle, Kategorie und Hersteller anhand Units, Umsatz und Deckungsbeitrag."
          "admin.analytics.help.sections.dashboard.rows.top_products.block" => "Top-Produkte"
          "admin.analytics.help.sections.dashboard.rows.top_products.description" => "Rangliste der meistverkauften Produkte mit Menge und Umsatz."
          "admin.analytics.help.sections.dashboard.title" => "Dashboard-Bausteine"
          "admin.analytics.help.sections.export.headers.content" => "Inhalt"
          "admin.analytics.help.sections.export.headers.type" => "type-Parameter"
          "admin.analytics.help.sections.export.intro" => "Der CSV-Export nutzt den aktuell gewählten Zeitraum für Umsatz- und Kundenexporte. Produkt-Exporte ziehen immer die Top-Produkte."
          "admin.analytics.help.sections.export.rows.customers" => "Neue Kunden pro Tag für den aktiven Zeitraum."
          "admin.analytics.help.sections.export.rows.products" => "Top-Produkte mit Verkaufsmenge und Umsatz."
          "admin.analytics.help.sections.export.rows.revenue" => "Tägliche Umsatz- und Bestellzahlen für den aktiven Zeitraum."
          "admin.analytics.help.sections.export.title" => "CSV-Export"
          "admin.analytics.help.sections.interactions.headers.block" => "Baustein"
          "admin.analytics.help.sections.interactions.headers.description" => "Beschreibung"
          "admin.analytics.help.sections.interactions.headers.source" => "Quelle"
          "admin.analytics.help.sections.interactions.intro" => "Das Interaktions-Log erfasst Seitenaufrufe, UI-Events, Login-Erfolge, Login-Fehlschläge und Fehler systemweit inklusive Besucherprofilen, IP-/Session-Bezug, Referrer, Browser, Betriebssystem, Geräten und Ländern."
          "admin.analytics.help.sections.interactions.rows.capture.block" => "Event-Erfassung"
          "admin.analytics.help.sections.interactions.rows.capture.description" => "Sammelt Frontend-Interaktionen sowie Request/Exception-Events aus Backend und Frontend inklusive IP, Session, Referrer, Browser, Betriebssystem, Gerät und Land (GeoLite2 falls vorhanden)."
          "admin.analytics.help.sections.interactions.rows.cleanup.block" => "Retention-Cleanup"
          "admin.analytics.help.sections.interactions.rows.cleanup.description" => "Bereinigt alte Datensätze anhand der definierten Aufbewahrungsregeln."
          "admin.analytics.help.sections.interactions.rows.page.block" => "Interaktionsseite"
          "admin.analytics.help.sections.interactions.rows.page.description" => "Zeigt KPIs, Top-Seiten, Top-Events, Statuscodes und aktuelle Fehler im gewählten Zeitraum. Top-Events lassen sich per Detailansicht bis auf Konto, Fehlerursache, Login-Felder, IP, Browser, Land, Route, Pfad und Payload aufklappen. Für öffentliche IPs steht ein XS-Button zum Kopieren eines Sperrbefehls bereit."
          "admin.analytics.help.sections.interactions.rows.profiles.block" => "Besucherprofile"
          "admin.analytics.help.sections.interactions.rows.profiles.description" => "Verdichtet Nutzer nach Benutzerkennung, Session und IP zu auswertbaren Besucherprofilen mit Einstiegs-/Ausstiegspfaden, aktiver Zeit und Conversion-Hinweisen."
          "admin.analytics.help.sections.interactions.rows.sources.block" => "Herkunft & Technik"
          "admin.analytics.help.sections.interactions.rows.sources.description" => "Zeigt Direktaufrufe, Suchmaschinen, Social, Referral, Browser, Betriebssysteme, Geräte und Länder."
          "admin.analytics.help.sections.interactions.title" => "Interaktions-Log (Frontend & Backend)"
          "admin.analytics.help.sections.overview.ajax" => "Alle Inhalte werden per AJAX geladen. Der Zeitraumsschalter oben rechts aktualisiert Dashboard, Charts, Funnel und Segmente gemeinsam."
          "admin.analytics.help.sections.overview.lead" => "Das Analytics Cockpit bündelt Umsatz, Kunden, Produkt- und Funnel-Daten in einer read-only Dashboard-Ansicht mit JSON-Endpunkten."
          "admin.analytics.help.sections.overview.permissions_label" => "Berechtigung:"
          "admin.analytics.help.sections.overview.title" => "Überblick"
          "admin.analytics.index.actions.export" => "CSV-Export"
          "admin.analytics.index.actions.help" => "Hilfe"
          "admin.analytics.index.actions.help_title" => "Hilfe zu diesem Modul"
          "admin.analytics.index.actions.interactions" => "Interaktions-Log"
          "admin.analytics.index.actions.refresh_title" => "Daten neu laden"
          "admin.analytics.index.api_errors_title" => "API-Fehler im Cockpit"
          "admin.analytics.index.charts.customers_dataset" => "Neue Kunden"
          "admin.analytics.index.charts.customers_title" => "Neue Kunden"
          "admin.analytics.index.charts.orders_dataset" => "Bestellungen"
          "admin.analytics.index.charts.revenue_dataset" => "Umsatz (€)"
          "admin.analytics.index.charts.revenue_title" => "Umsatz-Verlauf"
          "admin.analytics.index.empty" => "Keine Daten"
          "admin.analytics.index.errors.network_parsing" => "Netzwerk/Parsing"
          "admin.analytics.index.errors.request_failed" => "Anfrage fehlgeschlagen"
          "admin.analytics.index.errors.unknown" => "Unbekannter Fehler"
          "admin.analytics.index.export.customers" => "Neukunden (aktiver Zeitraum)"
          "admin.analytics.index.export.products" => "Top-Produkte"
          "admin.analytics.index.export.revenue" => "Umsatz (aktiver Zeitraum)"
          "admin.analytics.index.funnel.rows.abandonment_rate" => "Abbruchrate"
          "admin.analytics.index.funnel.rows.cart_conversion" => "Cart-Conversion"
          "admin.analytics.index.funnel.rows.carts_abandoned" => "Abgebrochene Carts"
          "admin.analytics.index.funnel.rows.carts_converted" => "Konvertierte Carts"
          "admin.analytics.index.funnel.rows.carts_total" => "Carts gesamt"
          "admin.analytics.index.funnel.rows.carts_with_value" => "Carts mit Wert"
          "admin.analytics.index.funnel.rows.checkout_conversion" => "Checkout-Conversion"
          "admin.analytics.index.funnel.rows.orders" => "Bestellungen"
          "admin.analytics.index.funnel.title" => "Conversion Funnel"
          "admin.analytics.index.import_overview.rows.created" => "Produkte erstellt"
          "admin.analytics.index.import_overview.rows.failed" => "Fehlgeschlagen"
          "admin.analytics.index.import_overview.rows.last_import" => "Letzter Import"
          "admin.analytics.index.import_overview.rows.success" => "Erfolgreich"
          "admin.analytics.index.import_overview.rows.total" => "Importe gesamt"
          "admin.analytics.index.import_overview.rows.updated" => "Produkte aktualisiert"
          "admin.analytics.index.import_overview.title" => "Import-Übersicht"
          "admin.analytics.index.kpis.active_products" => "Produkte aktiv"
          "admin.analytics.index.kpis.avg_order" => "Ø Bestellwert"
          "admin.analytics.index.kpis.customers" => "Kunden"
          "admin.analytics.index.kpis.orders" => "Bestellungen"
          "admin.analytics.index.kpis.period_revenue" => "Umsatz"
          "admin.analytics.index.kpis.total_revenue" => "Umsatz gesamt"
          "admin.analytics.index.load_failed" => "Daten konnten nicht geladen werden"
          "admin.analytics.index.loading" => "Lädt..."
          "admin.analytics.index.no_data_export" => "Keine Daten vorhanden"
          "admin.analytics.index.page_title" => "Analytics Cockpit"
          "admin.analytics.index.periods.day_30" => "30 Tage"
          "admin.analytics.index.periods.day_7" => "7 Tage"
          "admin.analytics.index.periods.day_90" => "90 Tage"
          "admin.analytics.index.periods.label" => "%days% Tage"
          "admin.analytics.index.product_status.rows.active" => "Aktiv"
          "admin.analytics.index.product_status.rows.avg_price" => "Ø Preis"
          "admin.analytics.index.product_status.rows.inactive" => "Inaktiv"
          "admin.analytics.index.product_status.rows.low_stock" => "Niedriger Bestand (≤5)"
          "admin.analytics.index.product_status.rows.out_of_stock" => "Ausverkauft"
          "admin.analytics.index.product_status.rows.total" => "Gesamt"
          "admin.analytics.index.product_status.title" => "Produkt-Status"
          "admin.analytics.index.segments.headers.category" => "Kategorie"
          "admin.analytics.index.segments.headers.manufacturer" => "Hersteller"
          "admin.analytics.index.segments.headers.margin" => "DB"
          "admin.analytics.index.segments.headers.margin_rate" => "DB %"
          "admin.analytics.index.segments.headers.revenue" => "Umsatz"
          "admin.analytics.index.segments.headers.source" => "Quelle"
          "admin.analytics.index.segments.headers.units" => "Units"
          "admin.analytics.index.segments.title" => "Segmentierung: Quelle / Kategorie / Hersteller"
          "admin.analytics.index.top_products.headers.product" => "Produkt"
          "admin.analytics.index.top_products.headers.rank" => "#"
          "admin.analytics.index.top_products.headers.revenue" => "Umsatz"
          "admin.analytics.index.top_products.headers.sold" => "Verkauft"
          "admin.analytics.index.top_products.title" => "Top-Produkte nach Verkäufen"
          "admin.analytics.index.values.not_available" => ""
          "admin.analytics.interactions.acquisition.headers.label" => "Detail"
          "admin.analytics.interactions.acquisition.headers.sessions" => "Sessions"
          "admin.analytics.interactions.acquisition.headers.source" => "Quelle"
          "admin.analytics.interactions.acquisition.headers.views" => "Aufrufe"
          "admin.analytics.interactions.acquisition.headers.visitors" => "Besucher"
          "admin.analytics.interactions.actions.cockpit" => "Zum Analytics-Cockpit"
          "admin.analytics.interactions.actions.help" => "Hilfe"
          "admin.analytics.interactions.actions.refresh" => "Daten neu laden"
          "admin.analytics.interactions.areas.all" => "Alle Bereiche"
          "admin.analytics.interactions.areas.backend" => "Backend"
          "admin.analytics.interactions.areas.frontend" => "Frontend"
          "admin.analytics.interactions.event_detail.actions.block_ip" => "IP sperren"
          "admin.analytics.interactions.event_detail.actions.block_ip_confirm" => "Sperrbefehl für IP %ip% in die Zwischenablage kopieren?"
          "admin.analytics.interactions.event_detail.actions.block_ip_copied" => "Sperrbefehl kopiert: %cmd%"
          "admin.analytics.interactions.event_detail.actions.block_ip_copy_failed" => "Kopieren fehlgeschlagen. Befehl: %cmd%"
          "admin.analytics.interactions.event_detail.close" => "Schließen"
          "admin.analytics.interactions.event_detail.failure_types.account_unverified" => "Konto nicht verifiziert"
          "admin.analytics.interactions.event_detail.failure_types.authentication_failed" => "Authentifizierung fehlgeschlagen"
          "admin.analytics.interactions.event_detail.failure_types.csrf_token_invalid" => "CSRF-Token ungültig"
          "admin.analytics.interactions.event_detail.failure_types.invalid_credentials" => "Ungültige Zugangsdaten"
          "admin.analytics.interactions.event_detail.failure_types.missing_identifier" => "Login-Konto fehlt"
          "admin.analytics.interactions.event_detail.failure_types.missing_password" => "Passwort fehlt"
          "admin.analytics.interactions.event_detail.failure_types.rate_limited" => "Rate-Limit aktiv"
          "admin.analytics.interactions.event_detail.headers.account" => "Konto / Versuch"
          "admin.analytics.interactions.event_detail.headers.action" => "Aktion"
          "admin.analytics.interactions.event_detail.headers.credential_meta" => "Login-Felder"
          "admin.analytics.interactions.event_detail.headers.failure_reason" => "Fehlerursache"
          "admin.analytics.interactions.event_detail.headers.ip_country" => "IP / Land"
          "admin.analytics.interactions.event_detail.headers.path" => "Methode / Route / Pfad"
          "admin.analytics.interactions.event_detail.headers.payload" => "Payload / Details"
          "admin.analytics.interactions.event_detail.headers.source" => "Quelle"
          "admin.analytics.interactions.event_detail.headers.status" => "Status"
          "admin.analytics.interactions.event_detail.headers.tech" => "Browser / System / Gerät"
          "admin.analytics.interactions.event_detail.headers.when" => "Zeitpunkt"
          "admin.analytics.interactions.event_detail.meta.password_provided_no" => "Passwort: nein"
          "admin.analytics.interactions.event_detail.meta.password_provided_yes" => "Passwort: ja"
          "admin.analytics.interactions.event_detail.no_payload" => "Keine Zusatzdaten"
          "admin.analytics.interactions.event_detail.summary.count" => "Vorkommen"
          "admin.analytics.interactions.event_detail.summary.first_seen" => "Erstes Auftreten"
          "admin.analytics.interactions.event_detail.summary.ips" => "IPs"
          "admin.analytics.interactions.event_detail.summary.last_seen" => "Letztes Auftreten"
          "admin.analytics.interactions.event_detail.summary.users" => "Nutzer"
          "admin.analytics.interactions.event_detail.summary.visitors" => "Besucher"
          "admin.analytics.interactions.event_detail.title" => "Event-Details"
          "admin.analytics.interactions.event_detail.title_prefix" => "Event-Details"
          "admin.analytics.interactions.filters.area" => "Bereich"
          "admin.analytics.interactions.kpis.errors" => "Fehler-Events"
          "admin.analytics.interactions.kpis.page_views" => "Seitenaufrufe"
          "admin.analytics.interactions.kpis.total_events" => "Events gesamt"
          "admin.analytics.interactions.kpis.unique_sessions" => "Eindeutige Sessions"
          "admin.analytics.interactions.kpis.unique_visitors" => "Eindeutige Besucher"
          "admin.analytics.interactions.loading" => "Lädt..."
          "admin.analytics.interactions.no_data" => "Keine Daten"
          "admin.analytics.interactions.page_title" => "Interaktions-Log & Nutzungsanalyse"
          "admin.analytics.interactions.periods.day_30" => "30 Tage"
          "admin.analytics.interactions.periods.day_7" => "7 Tage"
          "admin.analytics.interactions.periods.day_90" => "90 Tage"
          "admin.analytics.interactions.quality.avg_duration" => "Ø Request-Dauer"
          "admin.analytics.interactions.quality.backend_events" => "Backend-Events"
          "admin.analytics.interactions.quality.bot_events" => "Bot-Events"
          "admin.analytics.interactions.quality.direct_visits" => "Direkte Einstiege"
          "admin.analytics.interactions.quality.frontend_events" => "Frontend-Events"
          "admin.analytics.interactions.quality.referral_visits" => "Referral-Einstiege"
          "admin.analytics.interactions.quality.search_visits" => "Suchmaschinen-Einstiege"
          "admin.analytics.interactions.quality.social_visits" => "Social-Einstiege"
          "admin.analytics.interactions.quality.unique_ips" => "Eindeutige IPs"
          "admin.analytics.interactions.quality.unique_sessions" => "Eindeutige Sessions"
          "admin.analytics.interactions.quality.unique_users" => "Eindeutige Nutzer"
          "admin.analytics.interactions.recent_errors.headers.area" => "Bereich"
          "admin.analytics.interactions.recent_errors.headers.country" => "Land"
          "admin.analytics.interactions.recent_errors.headers.event" => "Event"
          "admin.analytics.interactions.recent_errors.headers.ip" => "IP"
          "admin.analytics.interactions.recent_errors.headers.path" => "Pfad"
          "admin.analytics.interactions.recent_errors.headers.source" => "Quelle"
          "admin.analytics.interactions.recent_errors.headers.status" => "Status"
          "admin.analytics.interactions.recent_errors.headers.tech" => "Technik"
          "admin.analytics.interactions.recent_errors.headers.visitor" => "Besucher"
          "admin.analytics.interactions.recent_errors.headers.when" => "Zeitpunkt"
          "admin.analytics.interactions.request_failed" => "Anfrage fehlgeschlagen"
          "admin.analytics.interactions.sections.acquisition" => "Herkunft & Einstiege"
          "admin.analytics.interactions.sections.quality" => "Qualitätsindikatoren"
          "admin.analytics.interactions.sections.recent_errors" => "Letzte Fehler"
          "admin.analytics.interactions.sections.status_codes" => "HTTP Statuscodes"
          "admin.analytics.interactions.sections.technology" => "Technik & Länder"
          "admin.analytics.interactions.sections.top_events" => "Top Interaktionen"
          "admin.analytics.interactions.sections.top_pages" => "Top Seiten"
          "admin.analytics.interactions.sections.views_chart" => "Seitenaufrufe im Zeitverlauf"
          "admin.analytics.interactions.sections.visitors" => "Besucherprofile"
          "admin.analytics.interactions.sources.direct" => "Direkt"
          "admin.analytics.interactions.sources.internal" => "Intern"
          "admin.analytics.interactions.sources.referral" => "Referral"
          "admin.analytics.interactions.sources.search" => "Suchmaschine"
          "admin.analytics.interactions.sources.social" => "Social"
          "admin.analytics.interactions.sources.unknown" => "Unbekannt"
          "admin.analytics.interactions.status_codes.headers.code" => "Statuscode"
          "admin.analytics.interactions.status_codes.headers.count" => "Anzahl"
          "admin.analytics.interactions.technology.browsers" => "Browser"
          "admin.analytics.interactions.technology.countries" => "Länder"
          "admin.analytics.interactions.technology.devices" => "Geräte"
          "admin.analytics.interactions.technology.headers.label" => "Kategorie"
          "admin.analytics.interactions.technology.headers.views" => "Aufrufe"
          "admin.analytics.interactions.technology.headers.visitors" => "Besucher"
          "admin.analytics.interactions.technology.operating_systems" => "Betriebssysteme"
          "admin.analytics.interactions.top_events.actions.details" => "Details"
          "admin.analytics.interactions.top_events.headers.actions" => "Aktion"
          "admin.analytics.interactions.top_events.headers.count" => "Anzahl"
          "admin.analytics.interactions.top_events.headers.event_name" => "Event"
          "admin.analytics.interactions.top_events.headers.ips" => "IPs"
          "admin.analytics.interactions.top_events.headers.last_seen" => "Letztes Auftreten"
          "admin.analytics.interactions.top_events.headers.users" => "Nutzer"
          "admin.analytics.interactions.top_pages.headers.avg_duration" => "Ø Dauer"
          "admin.analytics.interactions.top_pages.headers.path" => "Pfad"
          "admin.analytics.interactions.top_pages.headers.sessions" => "Sessions"
          "admin.analytics.interactions.top_pages.headers.views" => "Aufrufe"
          "admin.analytics.interactions.top_pages.headers.visitors" => "Besucher"
          "admin.analytics.interactions.units.ms" => "ms"
          "admin.analytics.interactions.units.percent" => "%"
          "admin.analytics.interactions.units.sec" => "s"
          "admin.analytics.interactions.visitors.headers.active_time" => "Aktive Zeit"
          "admin.analytics.interactions.visitors.headers.conversion_rate" => "Conversion-Rate"
          "admin.analytics.interactions.visitors.headers.conversions" => "Conversion-Hits"
          "admin.analytics.interactions.visitors.headers.country" => "Land"
          "admin.analytics.interactions.visitors.headers.events" => "Events"
          "admin.analytics.interactions.visitors.headers.first_seen" => "Erste Aktivität"
          "admin.analytics.interactions.visitors.headers.ip" => "IP"
          "admin.analytics.interactions.visitors.headers.last_seen" => "Letzte Aktivität"
          "admin.analytics.interactions.visitors.headers.pages" => "Seitenaufrufe"
          "admin.analytics.interactions.visitors.headers.paths" => "Einstieg -> Letzte Seite"
          "admin.analytics.interactions.visitors.headers.sessions" => "Sessions"
          "admin.analytics.interactions.visitors.headers.source" => "Quelle"
          "admin.analytics.interactions.visitors.headers.tech" => "Technik"
          "admin.analytics.interactions.visitors.headers.user" => "Benutzer"
          "admin.analytics.interactions.visitors.headers.visitor" => "Besucher-Key"
          "admin.analytics.nav.cockpit" => "Cockpit"
          "admin.analytics.nav.group" => "Analytics"
          "admin.apartment.form.create_title" => "Neue Wohnung"
          "admin.apartment.form.edit_title" => "Wohnung bearbeiten"
          "admin.apartment.form.fields.active" => "Aktiv"
          "admin.apartment.form.fields.capacity" => "Kapazität (Personen)"
          "admin.apartment.form.fields.color" => "Farbe im Kalender"
          "admin.apartment.form.fields.description" => "Beschreibung"
          "admin.apartment.form.fields.name" => "Name"
          "admin.apartment.form.list_title" => "Wohnungen"
          "admin.apartment.list.columns.actions" => "Aktionen"
          "admin.apartment.list.columns.active" => "Aktiv"
          "admin.apartment.list.columns.capacity" => "Kapazität"
          "admin.apartment.list.columns.color" => "Farbe"
          "admin.apartment.list.columns.created" => "Erstellt"
          "admin.apartment.list.columns.description" => "Beschreibung"
          "admin.apartment.list.columns.name" => "Name"
          "admin.apartment.list.create" => "Neue Wohnung"
          "admin.apartment.list.delete_message" => "Wohnung "%name%" wirklich löschen?"
          "admin.apartment.list.empty" => "Keine Wohnungen vorhanden."
          "admin.apartment.list.panel_title" => "Wohnungsliste"
          "admin.apartment.list.subtitle" => "Ferienwohnungen und Einheiten verwalten."
          "admin.apartment.list.title" => "Wohnungen"
          "admin.apartment.list.values.no" => "Nein"
          "admin.apartment.list.values.yes" => "Ja"
          "admin.apartment.notifications.created" => "Wohnung wurde angelegt."
          "admin.apartment.notifications.deleted" => "Wohnung wurde gelöscht."
          "admin.apartment.notifications.updated" => "Wohnung wurde gespeichert."
          "admin.b2b.help_index.card_subtitle" => "Gruppen, Sonderpreise und Freigaben"
          "admin.b2b.help_index.card_title" => "B2B-Verwaltung"
          "admin.b2b.help_index.table_description" => "Kundengruppen, Gruppenpreise und Genehmigungen"
          "admin.b2b.help_index.table_label" => "B2B"
          "admin.b2b.help.actions.back" => "Zurück"
          "admin.b2b.help.actions.module" => "Zum Modul"
          "admin.b2b.help.api.rows.group_edit" => "Bestehende Kundengruppe aktualisieren."
          "admin.b2b.help.api.rows.group_new" => "Neue Kundengruppe anlegen."
          "admin.b2b.help.api.rows.index" => "B2B-Übersicht mit Gruppen, Preisen, Anfragen und Bestellungen."
          "admin.b2b.help.api.rows.order_approve" => "Bestellung freigeben."
          "admin.b2b.help.api.rows.order_reject" => "Bestellung ablehnen."
          "admin.b2b.help.api.rows.price_delete" => "Gruppenpreis löschen."
          "admin.b2b.help.api.rows.price_save" => "Gruppenpreis speichern oder überschreiben."
          "admin.b2b.help.api.rows.quote_status" => "Status einer Angebotsanfrage setzen."
          "admin.b2b.help.api.table.function" => "Funktion"
          "admin.b2b.help.api.table.method" => "Methode"
          "admin.b2b.help.api.table.url" => "URL"
          "admin.b2b.help.api.title" => "API-Endpunkte"
          "admin.b2b.help.fields.customer_group.rows.created_at" => "Zeitpunkt der Gruppenerstellung."
          "admin.b2b.help.fields.customer_group.rows.default_net_view" => "Steuert, ob Kunden der Gruppe standardmäßig Nettopreise sehen."
          "admin.b2b.help.fields.customer_group.rows.discount_percent" => "Standardrabatt in Prozent mit Begrenzung auf 0 bis 90."
          "admin.b2b.help.fields.customer_group.rows.is_active" => "Aktiviert oder deaktiviert die Gruppe."
          "admin.b2b.help.fields.customer_group.rows.name" => "Eindeutiger Name der Kundengruppe."
          "admin.b2b.help.fields.customer_group.title" => "CustomerGroup"
          "admin.b2b.help.fields.product_group_price.rows.customer_group" => "Verknüpft die Preisüberschreibung mit einer Kundengruppe."
          "admin.b2b.help.fields.product_group_price.rows.price" => "Gespeicherter Gruppenpreis für diese Produkt-Gruppen-Kombination."
          "admin.b2b.help.fields.product_group_price.rows.product" => "Verknüpft die Preisüberschreibung mit einem Produkt."
          "admin.b2b.help.fields.product_group_price.rows.updated_at" => "Wird bei jeder Preisänderung aktualisiert."
          "admin.b2b.help.fields.product_group_price.title" => "ProductGroupPrice"
          "admin.b2b.help.fields.quote_request.rows.company_name" => "Firmenname des Anfragenden."
          "admin.b2b.help.fields.quote_request.rows.contact_name" => "Name der Kontaktperson."
          "admin.b2b.help.fields.quote_request.rows.created_at" => "Eingangszeitpunkt der Anfrage."
          "admin.b2b.help.fields.quote_request.rows.email" => "E-Mail-Adresse für Rückfragen und Zuordnung."
          "admin.b2b.help.fields.quote_request.rows.message" => "Freitext der Anfrage."
          "admin.b2b.help.fields.quote_request.rows.phone" => "Optionale Telefonnummer."
          "admin.b2b.help.fields.quote_request.rows.requested_group" => "Optional gewünschte Ziel-Kundengruppe."
          "admin.b2b.help.fields.quote_request.rows.status" => "Aktueller Bearbeitungsstatus der Anfrage."
          "admin.b2b.help.fields.quote_request.rows.updated_at" => "Zeitpunkt der letzten Statusänderung."
          "admin.b2b.help.fields.quote_request.title" => "B2BQuoteRequest"
          "admin.b2b.help.fields.table.description" => "Beschreibung"
          "admin.b2b.help.fields.table.field" => "Feld"
          "admin.b2b.help.fields.table.type" => "Typ"
          "admin.b2b.help.fields.title" => "Feldreferenz"
          "admin.b2b.help.fields.types.boolean" => "Boolean"
          "admin.b2b.help.fields.types.datetime" => "Datum/Zeit"
          "admin.b2b.help.fields.types.decimal" => "Dezimal"
          "admin.b2b.help.fields.types.relation" => "Relation"
          "admin.b2b.help.fields.types.text" => "Text"
          "admin.b2b.help.groups.assignment_field" => "im Feld"
          "admin.b2b.help.groups.assignment_label" => "Kunden einer Gruppe zuweisen:"
          "admin.b2b.help.groups.assignment_text" => "Im Modul Shop-Benutzer unter"
          "admin.b2b.help.groups.note" => "Der Gruppenrabatt ist der Standard für diese Gruppe. Produktspezifische Gruppenpreise überschreiben ihn."
          "admin.b2b.help.groups.steps_title" => "Schritt für Schritt: Kundengruppe anlegen"
          "admin.b2b.help.groups.steps.five" => "Gruppe speichern und anschließend bei Bedarf Kunden zuordnen."
          "admin.b2b.help.groups.steps.four" => "Optional defaultNetView aktivieren, damit Kunden Nettopreise sehen."
          "admin.b2b.help.groups.steps.one" => "Im Modul B2B die Aktion "Neue Kundengruppe" verwenden."
          "admin.b2b.help.groups.steps.three" => "discountPercent als Standardrabatt in Prozent festlegen."
          "admin.b2b.help.groups.steps.two" => "Name der Gruppe eintragen, zum Beispiel Händler Premium."
          "admin.b2b.help.groups.title" => "Kundengruppen verwalten"
          "admin.b2b.help.navigation.api" => "API-Endpunkte"
          "admin.b2b.help.navigation.fields" => "Feldreferenz"
          "admin.b2b.help.navigation.groups" => "Kundengruppen"
          "admin.b2b.help.navigation.orders" => "Bestellfreigaben"
          "admin.b2b.help.navigation.overview" => "Überblick"
          "admin.b2b.help.navigation.prices" => "Gruppenpreise"
          "admin.b2b.help.navigation.quotes" => "Angebotsanfragen"
          "admin.b2b.help.navigation.title" => "Navigation"
          "admin.b2b.help.navigation.workflow" => "Workflow"
          "admin.b2b.help.orders.approve_label" => "Freigeben:"
          "admin.b2b.help.orders.approve_text" => "setzt den Status auf approved und füllt approvedBy sowie approvedAt."
          "admin.b2b.help.orders.intro" => "Offene B2B-Bestellungen erscheinen mit dem Status pending und können im Admin freigegeben oder abgelehnt werden."
          "admin.b2b.help.orders.reject_label" => "Ablehnen:"
          "admin.b2b.help.orders.reject_text" => "setzt den Status auf rejected und dokumentiert ebenfalls den Bearbeitungszeitpunkt."
          "admin.b2b.help.orders.title" => "Bestell-Freigabe"
          "admin.b2b.help.overview.cards.groups_text" => "Rabattstufen und Nettoansicht für unterschiedliche B2B-Segmente."
          "admin.b2b.help.overview.cards.groups_title" => "Kundengruppen"
          "admin.b2b.help.overview.cards.prices_text" => "Produktspezifische Sonderpreise pro Kundengruppe."
          "admin.b2b.help.overview.cards.prices_title" => "Gruppenpreise"
          "admin.b2b.help.overview.cards.workflow_text" => "Angebotsanfragen prüfen und Bestellungen freigeben oder ablehnen."
          "admin.b2b.help.overview.cards.workflow_title" => "Anfragen & Freigaben"
          "admin.b2b.help.overview.intro" => "Das B2B-Modul erweitert den Shop um Geschäftskunden-Funktionen und bündelt Gruppenverwaltung, Sonderpreise sowie Freigaben in einer Oberfläche."
          "admin.b2b.help.overview.permission_label" => "Berechtigung:"
          "admin.b2b.help.overview.title" => "B2B-System: Überblick"
          "admin.b2b.help.page_title" => "Hilfe: B2B-Verwaltung"
          "admin.b2b.help.prices.intro" => "Gruppenpreise überschreiben den allgemeinen Gruppenrabatt für ein konkretes Produkt und eine konkrete Kundengruppe."
          "admin.b2b.help.prices.priority" => "Priorität: Gruppenpreis pro Produkt vor Gruppenrabatt vor Standard-Produktpreis."
          "admin.b2b.help.prices.steps.five" => "Bestehende Preisüberschreibungen lassen sich darunter prüfen und löschen."
          "admin.b2b.help.prices.steps.four" => "Speichern, damit der Preis für alle Mitglieder dieser Gruppe gilt."
          "admin.b2b.help.prices.steps.one" => "Im Bereich "Gruppenpreis setzen" zuerst ein Produkt suchen oder auswählen."
          "admin.b2b.help.prices.steps.three" => "Den Zielpreis als Bruttopreis eintragen."
          "admin.b2b.help.prices.steps.two" => "Danach die gewünschte Kundengruppe auswählen."
          "admin.b2b.help.prices.title" => "Produktspezifische Gruppenpreise"
          "admin.b2b.help.quotes.intro" => "B2B-Kunden können über den Shop Angebotsanfragen senden. Im Admin können diese Anfragen geprüft und in einen Zielstatus gesetzt werden."
          "admin.b2b.help.quotes.params_label" => "Parameter:"
          "admin.b2b.help.quotes.params_text" => "als Zielstatus der Anfrage."
          "admin.b2b.help.quotes.route_label" => "Route:"
          "admin.b2b.help.quotes.rows.approved.action" => "Kunde kann weiter im B2B-Prozess geführt werden."
          "admin.b2b.help.quotes.rows.approved.meaning" => "Anfrage freigegeben."
          "admin.b2b.help.quotes.rows.in_review.action" => "Genehmigen oder ablehnen."
          "admin.b2b.help.quotes.rows.in_review.meaning" => "Die Anfrage wird aktuell bearbeitet."
          "admin.b2b.help.quotes.rows.open.action" => "Zur Prüfung übernehmen."
          "admin.b2b.help.quotes.rows.open.meaning" => "Neu eingegangen und noch nicht geprüft."
          "admin.b2b.help.quotes.rows.rejected.action" => "Kunde bleibt ohne B2B-Freigabe."
          "admin.b2b.help.quotes.rows.rejected.meaning" => "Anfrage abgelehnt."
          "admin.b2b.help.quotes.table.admin_action" => "Admin-Aktion"
          "admin.b2b.help.quotes.table.meaning" => "Bedeutung"
          "admin.b2b.help.quotes.table.status" => "Status"
          "admin.b2b.help.quotes.title" => "Angebotsanfragen"
          "admin.b2b.help.workflow.intro" => "Typischer Ablauf im B2B-Modul von der Anfrage bis zur Bestellentscheidung:"
          "admin.b2b.help.workflow.steps.four" => "Offene Bestellungen prüfen und freigeben oder ablehnen."
          "admin.b2b.help.workflow.steps.one" => "Kundengruppe definieren und Standardrabatt konfigurieren."
          "admin.b2b.help.workflow.steps.three" => "Angebotsanfragen sichten und den B2B-Status des Kunden aktualisieren."
          "admin.b2b.help.workflow.steps.two" => "Bei Bedarf produktbezogene Gruppenpreise ergänzen."
          "admin.b2b.help.workflow.title" => "Workflow"
          "admin.b2b.index.approval_orders.actions.approve" => "Freigeben"
          "admin.b2b.index.approval_orders.actions.reject" => "Ablehnen"
          "admin.b2b.index.approval_orders.table.action" => "Aktion"
          "admin.b2b.index.approval_orders.table.customer" => "Kunde"
          "admin.b2b.index.approval_orders.table.empty" => "Keine offenen Freigaben."
          "admin.b2b.index.approval_orders.table.id" => "ID"
          "admin.b2b.index.approval_orders.table.total" => "Gesamt"
          "admin.b2b.index.approval_orders.title" => "Bestellfreigaben"
          "admin.b2b.index.approval_orders.values.none" => "-"
          "admin.b2b.index.common.cancel" => "Abbrechen"
          "admin.b2b.index.common.delete" => "Löschen"
          "admin.b2b.index.common.save" => "Speichern"
          "admin.b2b.index.delete_modal.title" => "Löschen bestätigen"
          "admin.b2b.index.existing_prices.delete_confirm" => "Gruppenpreis für "%product%" wirklich löschen?"
          "admin.b2b.index.existing_prices.table.action" => "Aktion"
          "admin.b2b.index.existing_prices.table.empty" => "Noch keine Gruppenpreise vorhanden."
          "admin.b2b.index.existing_prices.table.group" => "Kundengruppe"
          "admin.b2b.index.existing_prices.table.id" => "#"
          "admin.b2b.index.existing_prices.table.price" => "Preis (Brutto)"
          "admin.b2b.index.existing_prices.table.product" => "Produkt"
          "admin.b2b.index.existing_prices.table.updated" => "Zuletzt geändert"
          "admin.b2b.index.existing_prices.title" => "Bestehende Gruppenpreise"
          "admin.b2b.index.groups.create.active" => "Aktiv"
          "admin.b2b.index.groups.create.default_net_view" => "Netto-Default"
          "admin.b2b.index.groups.create.discount_placeholder" => "Rabatt %"
          "admin.b2b.index.groups.create.name_placeholder" => "Gruppenname"
          "admin.b2b.index.groups.create.submit" => "Anlegen"
          "admin.b2b.index.groups.table.action" => "Aktion"
          "admin.b2b.index.groups.table.discount" => "Rabatt"
          "admin.b2b.index.groups.table.empty" => "Keine Gruppen vorhanden."
          "admin.b2b.index.groups.table.name" => "Name"
          "admin.b2b.index.groups.table.net" => "Netto"
          "admin.b2b.index.groups.table.status" => "Status"
          "admin.b2b.index.groups.title" => "Kundengruppen"
          "admin.b2b.index.page_subtitle" => "Kundengruppen, Sonderpreise und Freigaben an einem Ort."
          "admin.b2b.index.page_title" => "B2B-Verwaltung"
          "admin.b2b.index.price_override.fields.group" => "Gruppe"
          "admin.b2b.index.price_override.fields.price" => "Preis (Brutto)"
          "admin.b2b.index.price_override.fields.product" => "Produkt"
          "admin.b2b.index.price_override.placeholders.group" => "Bitte wählen"
          "admin.b2b.index.price_override.placeholders.product" => "-- Produkt suchen / wählen --"
          "admin.b2b.index.price_override.title" => "Gruppenpreis setzen"
          "admin.b2b.index.quotes.actions.approve" => "Genehmigen"
          "admin.b2b.index.quotes.actions.reject" => "Ablehnen"
          "admin.b2b.index.quotes.actions.review" => "Prüfen"
          "admin.b2b.index.quotes.status.approved" => "Genehmigt"
          "admin.b2b.index.quotes.status.cancelled" => "Storniert"
          "admin.b2b.index.quotes.status.in_review" => "In Prüfung"
          "admin.b2b.index.quotes.status.open" => "Neu"
          "admin.b2b.index.quotes.status.rejected" => "Abgelehnt"
          "admin.b2b.index.quotes.table.action" => "Aktion"
          "admin.b2b.index.quotes.table.company" => "Firma"
          "admin.b2b.index.quotes.table.contact" => "Kontakt"
          "admin.b2b.index.quotes.table.empty" => "Keine Anfragen."
          "admin.b2b.index.quotes.table.requested_group" => "Gewünschte Gruppe"
          "admin.b2b.index.quotes.table.status" => "Status"
          "admin.b2b.index.quotes.title" => "Angebotsanfragen"
          "admin.b2b.index.quotes.values.none" => "Keine Auswahl"
          "admin.b2b.index.toolbar.create_group" => "Neue Kundengruppe"
          "admin.b2b.index.toolbar.help" => "Hilfe"
          "admin.b2b.nav.menu" => "B2B"
          "admin.b2b.nav.submenu" => "Kundengruppen & Freigaben"
          "admin.b2b.notifications.group_created" => "Kundengruppe wurde angelegt."
          "admin.b2b.notifications.group_updated" => "Kundengruppe wurde aktualisiert."
          "admin.b2b.notifications.invalid_status" => "Ungültiger Status."
          "admin.b2b.notifications.missing_product_or_group" => "Produkt oder Gruppe nicht gefunden."
          "admin.b2b.notifications.order_approved" => "Bestellung wurde freigegeben."
          "admin.b2b.notifications.order_rejected" => "Bestellung wurde abgelehnt."
          "admin.b2b.notifications.price_deleted" => "Gruppenpreis wurde gelöscht."
          "admin.b2b.notifications.price_saved" => "Gruppenpreis gespeichert."
          "admin.b2b.notifications.quote_status_updated" => "Anfrage-Status wurde aktualisiert."
          "admin.booking.form.create_title" => "Neue Buchung"
          "admin.booking.form.edit_title" => "Buchung bearbeiten"
          "admin.booking.form.fields.apartment" => "Wohnung"
          "admin.booking.form.fields.apartment_placeholder" => "Wohnung wählen..."
          "admin.booking.form.fields.end" => "Abreise"
          "admin.booking.form.fields.guest_email" => "E-Mail"
          "admin.booking.form.fields.guest_name" => "Gastname"
          "admin.booking.form.fields.guest_phone" => "Telefon"
          "admin.booking.form.fields.notes" => "Notizen"
          "admin.booking.form.fields.price" => "Preis"
          "admin.booking.form.fields.start" => "Anreise"
          "admin.booking.form.fields.status" => "Status"
          "admin.booking.form.fields.status_cancelled" => "Storniert"
          "admin.booking.form.fields.status_confirmed" => "Bestätigt"
          "admin.booking.form.fields.status_pending" => "Ausstehend"
          "admin.booking.form.fields.title" => "Titel"
          "admin.booking.form.list_title" => "Buchungen"
          "admin.booking.list.columns.actions" => "Aktionen"
          "admin.booking.list.columns.apartment" => "Wohnung"
          "admin.booking.list.columns.arrival" => "Anreise"
          "admin.booking.list.columns.departure" => "Abreise"
          "admin.booking.list.columns.guest_name" => "Gastname"
          "admin.booking.list.create" => "Neue Buchung"
          "admin.booking.list.delete_message" => "Buchung von "%guest%" wirklich löschen?"
          "admin.booking.list.empty" => "Keine Buchungen vorhanden."
          "admin.booking.list.panel_title" => "Buchungsliste"
          "admin.booking.list.subtitle" => "Gästebuchungen und Belegungszeiten verwalten."
          "admin.booking.list.title" => "Buchungen"
          "admin.booking.notifications.created" => "Buchung wurde angelegt."
          "admin.booking.notifications.deleted" => "Buchung wurde gelöscht."
          "admin.booking.notifications.updated" => "Buchung wurde gespeichert."
          "admin.calendar.actions.manage_apartments" => "Wohnungen verwalten"
          "admin.calendar.actions.manage_bookings" => "Buchungen verwalten"
          "admin.calendar.errors.apartment_not_found" => "Wohnung nicht gefunden"
          "admin.calendar.errors.delete_confirm" => "Buchung wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden."
          "admin.calendar.errors.generic" => "Fehler: %message%"
          "admin.calendar.errors.invalid_date_range" => "Abreise muss nach Anreise liegen."
          "admin.calendar.errors.invalid_token" => "Ungültiger Token"
          "admin.calendar.errors.load_failed" => "Fehler beim Laden:"
          "admin.calendar.errors.move_failed" => "Fehler beim Verschieben: %message%"
          "admin.calendar.errors.overlap" => "Zeitraum überschneidet sich mit einer bestehenden Buchung."
          "admin.calendar.errors.required_fields" => "Bitte alle Pflichtfelder ausfüllen."
          "admin.calendar.errors.resize_failed" => "Fehler beim Ändern: %message%"
          "admin.calendar.errors.server_error" => "Serverfehler"
          "admin.calendar.modal.edit_title" => "Buchung bearbeiten"
          "admin.calendar.modal.guest_name_placeholder" => "Gastname eingeben"
          "admin.calendar.modal.new_title" => "Neue Buchung"
          "admin.calendar.modal.notes_placeholder" => "Interne Notizen..."
          "admin.calendar.modal.title" => "Buchung"
          "admin.calendar.modal.title_hint" => "optional, Standard: Gastname"
          "admin.calendar.modal.title_placeholder" => "Buchungstitel"
          "admin.calendar.navigation.next_month" => "Nächster Monat"
          "admin.calendar.navigation.previous_month" => "Vorheriger Monat"
          "admin.calendar.navigation.today" => "Heute"
          "admin.calendar.notifications.moved" => "Buchung wurde verschoben."
          "admin.calendar.page.heading" => "Buchungsplan Wohnungen"
          "admin.calendar.page.subtitle" => "Interaktiver Belegungsplan für Buchungen und Wohnungen."
          "admin.calendar.page.title" => "Kalender"
          "admin.cart_intelligence.help_index.card_subtitle" => "Abbrüche, Cross-Sell und Up-Sell-Regeln"
          "admin.cart_intelligence.help_index.card_title" => "Cart Intelligence"
          "admin.cart_intelligence.help_index.table_description" => "Abgebrochene Warenkörbe, KPIs und Cross-Sell-Regeln"
          "admin.cart_intelligence.help_index.table_label" => "Cart Intelligence"
          "admin.cart_intelligence.help.abandoned.api_label" => "API:"
          "admin.cart_intelligence.help.abandoned.intro" => "Die Dashboard-Liste zeigt verlassene Warenkörbe inklusive Kunde oder Session, Warenkorbwert, Alter, Zahlungsart und Status."
          "admin.cart_intelligence.help.abandoned.list_title" => "Anzeige in der Liste:"
          "admin.cart_intelligence.help.abandoned.points.four" => "Zahlungsart und technischer Status"
          "admin.cart_intelligence.help.abandoned.points.one" => "Kunde oder Session-ID"
          "admin.cart_intelligence.help.abandoned.points.three" => "Zeit seit der letzten Aktivität"
          "admin.cart_intelligence.help.abandoned.points.two" => "Warenkorbwert in EUR"
          "admin.cart_intelligence.help.abandoned.title" => "Abgebrochene Warenkörbe"
          "admin.cart_intelligence.help.actions.back" => "Zurück"
          "admin.cart_intelligence.help.actions.module" => "Zum Modul"
          "admin.cart_intelligence.help.api.rows.abandoned" => "Abgebrochene Warenkörbe als JSON"
          "admin.cart_intelligence.help.api.rows.edit" => "Regel bearbeiten"
          "admin.cart_intelligence.help.api.rows.index" => "Cart-Intelligence-Dashboard"
          "admin.cart_intelligence.help.api.rows.new" => "Neue Regel anlegen"
          "admin.cart_intelligence.help.api.rows.rules" => "Regelliste und Quick-Edits"
          "admin.cart_intelligence.help.api.rows.stats" => "Performance-Ansicht für Regeln"
          "admin.cart_intelligence.help.api.rows.summary" => "KPI-Zusammenfassung"
          "admin.cart_intelligence.help.api.rows.top_products" => "Top-Produkte aus abgebrochenen Warenkörben"
          "admin.cart_intelligence.help.api.table.function" => "Funktion"
          "admin.cart_intelligence.help.api.table.method" => "Methode"
          "admin.cart_intelligence.help.api.table.url" => "URL"
          "admin.cart_intelligence.help.api.title" => "API-Endpunkte"
          "admin.cart_intelligence.help.fields.rows.active" => "Aktivstatus der Regel"
          "admin.cart_intelligence.help.fields.rows.discount_percent" => "Optionaler Rabatt auf das Zielprodukt"
          "admin.cart_intelligence.help.fields.rows.min_cart_value" => "Mindest-Warenkorbwert für die Anzeige"
          "admin.cart_intelligence.help.fields.rows.priority" => "Anzeigepriorität (höher = weiter oben)"
          "admin.cart_intelligence.help.fields.rows.source_product" => "Quellprodukt, das die Empfehlung auslöst"
          "admin.cart_intelligence.help.fields.rows.target_product" => "Empfohlenes Zielprodukt"
          "admin.cart_intelligence.help.fields.rows.type" => "cross_sell / up_sell / bundle"
          "admin.cart_intelligence.help.fields.rows.valid_until" => "Optionales Ablaufdatum"
          "admin.cart_intelligence.help.fields.table.description" => "Beschreibung"
          "admin.cart_intelligence.help.fields.table.field" => "Feld"
          "admin.cart_intelligence.help.fields.table.type" => "Typ"
          "admin.cart_intelligence.help.fields.title" => "Feldreferenz: CrossSellRule"
          "admin.cart_intelligence.help.fields.types.boolean" => "Boolean"
          "admin.cart_intelligence.help.fields.types.date" => "Datum"
          "admin.cart_intelligence.help.fields.types.decimal" => "Dezimal"
          "admin.cart_intelligence.help.fields.types.enum" => "Enum"
          "admin.cart_intelligence.help.fields.types.integer" => "Integer"
          "admin.cart_intelligence.help.fields.types.relation" => "Relation"
          "admin.cart_intelligence.help.navigation.abandoned" => "Abgebrochene Warenkörbe"
          "admin.cart_intelligence.help.navigation.api" => "API-Endpunkte"
          "admin.cart_intelligence.help.navigation.fields" => "Feldreferenz"
          "admin.cart_intelligence.help.navigation.overview" => "Überblick"
          "admin.cart_intelligence.help.navigation.rules" => "Cross-Sell-Regeln"
          "admin.cart_intelligence.help.navigation.stats" => "Performance-Stats"
          "admin.cart_intelligence.help.navigation.title" => "Navigation"
          "admin.cart_intelligence.help.navigation.types" => "Regel-Typen"
          "admin.cart_intelligence.help.overview.cards.abandoned.subtitle" => "Warenkörbe ohne Bestellabschluss"
          "admin.cart_intelligence.help.overview.cards.abandoned.title" => "Abgebrochene Warenkörbe"
          "admin.cart_intelligence.help.overview.cards.revenue.subtitle" => "Wert aller abgebrochenen Körbe"
          "admin.cart_intelligence.help.overview.cards.revenue.title" => "Verlorener Umsatz"
          "admin.cart_intelligence.help.overview.cards.top.subtitle" => "Häufig abgelegte Produkte ohne Kauf"
          "admin.cart_intelligence.help.overview.cards.top.title" => "Top-Warenkorb-Produkte"
          "admin.cart_intelligence.help.overview.intro" => "Das Modul analysiert Warenkörbe, zeigt Abbrüche und verwaltet Cross-Sell- sowie Up-Sell-Regeln."
          "admin.cart_intelligence.help.overview.permissions_title" => "Berechtigungen:"
          "admin.cart_intelligence.help.overview.title" => "Cart Intelligence: Überblick"
          "admin.cart_intelligence.help.page_title" => "Hilfe: Cart Intelligence & Cross-Sells"
          "admin.cart_intelligence.help.rules.intro" => "Regeln definieren, welche Produkte im Warenkorb oder im Produktkontext als Empfehlung angezeigt werden."
          "admin.cart_intelligence.help.rules.steps.five" => "Optional Mindest-Warenkorbwert, Rabatt und Gültigkeit setzen."
          "admin.cart_intelligence.help.rules.steps.four" => "Typ cross_sell, up_sell oder bundle festlegen."
          "admin.cart_intelligence.help.rules.steps.one" => "In Cart Intelligence → Cross-Sell-Regeln auf „Neue Regel“ klicken."
          "admin.cart_intelligence.help.rules.steps.seven" => "Regel aktivieren und speichern."
          "admin.cart_intelligence.help.rules.steps.six" => "Priorität pflegen."
          "admin.cart_intelligence.help.rules.steps.three" => "Zielprodukt auswählen."
          "admin.cart_intelligence.help.rules.steps.two" => "Quellprodukt auswählen."
          "admin.cart_intelligence.help.rules.title" => "Cross-Sell-Regeln erstellen"
          "admin.cart_intelligence.help.stats.intro" => "Die Statistikansicht zeigt, welche Regeln aktuell die höchste Conversion-Wirkung erzielen."
          "admin.cart_intelligence.help.stats.metrics.four" => "Conv. Rate: Verhältnis zwischen Sichtbarkeit und Erfolg"
          "admin.cart_intelligence.help.stats.metrics.one" => "Shown: Häufigkeit der Einblendung"
          "admin.cart_intelligence.help.stats.metrics.three" => "Added: Hinzufügungen oder Konversionen nach Anzeige"
          "admin.cart_intelligence.help.stats.metrics.two" => "Viewed: Betrachtungen der Empfehlung"
          "admin.cart_intelligence.help.stats.title" => "Performance-Statistiken"
          "admin.cart_intelligence.help.types.rows.bundle.description" => "Produktpaket mit optionalem Kombivorteil."
          "admin.cart_intelligence.help.types.rows.bundle.label" => "Bundle-Empfehlung"
          "admin.cart_intelligence.help.types.rows.bundle.position" => "Checkout / Produktseite"
          "admin.cart_intelligence.help.types.rows.cross_sell.description" => "Ergänzende Produkte zum Hauptprodukt."
          "admin.cart_intelligence.help.types.rows.cross_sell.label" => "Cross-Selling"
          "admin.cart_intelligence.help.types.rows.cross_sell.position" => "Warenkorb-Seite"
          "admin.cart_intelligence.help.types.rows.up_sell.description" => "Höherwertige Alternative zum gewählten Produkt."
          "admin.cart_intelligence.help.types.rows.up_sell.label" => "Up-Selling"
          "admin.cart_intelligence.help.types.rows.up_sell.position" => "Produktdetail-Seite"
          "admin.cart_intelligence.help.types.table.description" => "Beschreibung"
          "admin.cart_intelligence.help.types.table.label" => "Bezeichnung"
          "admin.cart_intelligence.help.types.table.position" => "Anzeige-Position"
          "admin.cart_intelligence.help.types.table.type" => "Typ"
          "admin.cart_intelligence.help.types.title" => "Regel-Typen"
          "admin.cart_intelligence.index.abandoned.empty" => "Keine verlassenen Warenkörbe - super!"
          "admin.cart_intelligence.index.abandoned.guest" => "Gast"
          "admin.cart_intelligence.index.abandoned.headers.customer" => "Kunde / Session"
          "admin.cart_intelligence.index.abandoned.headers.id" => "#"
          "admin.cart_intelligence.index.abandoned.headers.payment" => "Zahlung"
          "admin.cart_intelligence.index.abandoned.headers.since" => "Verlassen seit"
          "admin.cart_intelligence.index.abandoned.headers.status" => "Status"
          "admin.cart_intelligence.index.abandoned.headers.value" => "Warenkorbwert"
          "admin.cart_intelligence.index.abandoned.loading" => "Lädt..."
          "admin.cart_intelligence.index.abandoned.pagination" => "Seite %page%/%pages% (%total% Carts)"
          "admin.cart_intelligence.index.abandoned.title" => "Verlassene Carts"
          "admin.cart_intelligence.index.abandoned.total_suffix" => "(%total% gesamt)"
          "admin.cart_intelligence.index.actions.help" => "Hilfe"
          "admin.cart_intelligence.index.actions.refresh" => "Aktualisieren"
          "admin.cart_intelligence.index.errors.abandoned_load_failed" => "Die Liste verlassener Carts konnte nicht geladen werden."
          "admin.cart_intelligence.index.errors.summary_load_failed" => "Die KPI-Zusammenfassung konnte nicht geladen werden."
          "admin.cart_intelligence.index.errors.top_products_load_failed" => "Die Top-Produkte konnten nicht geladen werden."
          "admin.cart_intelligence.index.help_title" => "Hilfe zu diesem Modul"
          "admin.cart_intelligence.index.kpi.abandoned" => "Verlassen"
          "admin.cart_intelligence.index.kpi.open" => "Offen"
          "admin.cart_intelligence.index.kpi.rate" => "Abbruchrate"
          "admin.cart_intelligence.index.kpi.revenue_7d" => "Umsatz 7 Tage"
          "admin.cart_intelligence.index.kpi.risk" => "Umsatzrisiko"
          "admin.cart_intelligence.index.kpi.total" => "Carts gesamt"
          "admin.cart_intelligence.index.page_title" => "Cart Intelligence"
          "admin.cart_intelligence.index.status_breakdown.empty" => "Keine Daten"
          "admin.cart_intelligence.index.status_breakdown.loading" => "Lädt..."
          "admin.cart_intelligence.index.status_breakdown.title" => "Status-Verteilung"
          "admin.cart_intelligence.index.statuses.cancelled" => "Storniert"
          "admin.cart_intelligence.index.statuses.open" => "Offen"
          "admin.cart_intelligence.index.statuses.paid" => "Bezahlt"
          "admin.cart_intelligence.index.statuses.pending" => "Ausstehend"
          "admin.cart_intelligence.index.top_products.empty" => "Keine Daten"
          "admin.cart_intelligence.index.top_products.headers.carts" => "Carts"
          "admin.cart_intelligence.index.top_products.headers.product" => "Produkt"
          "admin.cart_intelligence.index.top_products.headers.value" => "Wert"
          "admin.cart_intelligence.index.top_products.loading" => "Lädt..."
          "admin.cart_intelligence.index.top_products.title" => "Top abgebrochene Produkte"
          "admin.cart_intelligence.nav.dashboard" => "Abbrüche & KPIs"
          "admin.cart_intelligence.nav.menu" => "Cart Intelligence"
          "admin.cart_intelligence.nav.rules" => "Cross-Sell-Regeln"
          "admin.cart_intelligence.nav.stats" => "Performance"
          "admin.cart_intelligence.notifications.invalid_product_selection" => "Ungültige Produktauswahl."
          "admin.cart_intelligence.notifications.invalid_request" => "Ungültige Anfrage."
          "admin.cart_intelligence.notifications.product_not_found" => "Produkt wurde nicht gefunden."
          "admin.cart_intelligence.notifications.rule_deleted" => "Regel wurde gelöscht."
          "admin.cart_intelligence.notifications.rule_not_found" => "Regel wurde nicht gefunden."
          "admin.cart_intelligence.notifications.rule_save_failed" => "Fehler beim Speichern der Regel: %message%"
          "admin.cart_intelligence.notifications.rule_saved" => "Regel wurde gespeichert."
          "admin.cart_intelligence.notifications.rule_updated" => "Regel wurde aktualisiert."
          "admin.cart_intelligence.notifications.status_updated" => "Status wurde aktualisiert."
          "admin.cart_intelligence.rule_form.actions.back" => "Zurück"
          "admin.cart_intelligence.rule_form.actions.save" => "Speichern"
          "admin.cart_intelligence.rule_form.hints.discount_percent" => "Optionaler Rabatt, falls beide Produkte gekauft werden."
          "admin.cart_intelligence.rule_form.hints.min_cart_value" => "EUR - Regel gilt ab diesem Betrag."
          "admin.cart_intelligence.rule_form.hints.priority" => "Höhere Werte = häufiger angezeigt."
          "admin.cart_intelligence.rule_form.hints.source" => "Produkt im Warenkorb, für das Empfehlungen angezeigt werden."
          "admin.cart_intelligence.rule_form.hints.target" => "Empfohlenes Zielprodukt."
          "admin.cart_intelligence.rule_form.hints.valid_until" => "Leer = unbegrenzt gültig."
          "admin.cart_intelligence.rule_form.labels.active" => "Regel ist aktiv"
          "admin.cart_intelligence.rule_form.labels.discount_percent" => "Bundle-Rabatt (%)"
          "admin.cart_intelligence.rule_form.labels.min_cart_value" => "Minimaler Warenkorbwert"
          "admin.cart_intelligence.rule_form.labels.priority" => "Priorität (0-100)"
          "admin.cart_intelligence.rule_form.labels.source" => "Von Produkt (Quelle) *"
          "admin.cart_intelligence.rule_form.labels.target" => "Zu Produkt (Ziel) *"
          "admin.cart_intelligence.rule_form.labels.type" => "Regeltyp *"
          "admin.cart_intelligence.rule_form.labels.valid_until" => "Gültig bis"
          "admin.cart_intelligence.rule_form.meta_title_edit" => "Cross-Sell-Regel bearbeiten"
          "admin.cart_intelligence.rule_form.meta_title_new" => "Cross-Sell-Regel erstellen"
          "admin.cart_intelligence.rule_form.page_title_edit" => "Regel bearbeiten"
          "admin.cart_intelligence.rule_form.page_title_new" => "Neue Cross-Sell-Regel"
          "admin.cart_intelligence.rule_form.placeholders.select_product" => "-- Produkt wählen --"
          "admin.cart_intelligence.rules.actions.create_link" => "Neue Regel erstellen"
          "admin.cart_intelligence.rules.actions.delete" => "Löschen"
          "admin.cart_intelligence.rules.actions.delete_confirm" => "Regel wirklich löschen?"
          "admin.cart_intelligence.rules.actions.edit" => "Bearbeiten"
          "admin.cart_intelligence.rules.actions.new" => "Neue Regel"
          "admin.cart_intelligence.rules.actions.save_priority" => "OK"
          "admin.cart_intelligence.rules.actions.stats" => "Statistiken"
          "admin.cart_intelligence.rules.actions.toggle_active" => "Aktivieren"
          "admin.cart_intelligence.rules.actions.toggle_inactive" => "Deaktivieren"
          "admin.cart_intelligence.rules.empty" => "Keine Regeln definiert."
          "admin.cart_intelligence.rules.headers.actions" => "Aktionen"
          "admin.cart_intelligence.rules.headers.priority" => "Priorität"
          "admin.cart_intelligence.rules.headers.source" => "Von Produkt"
          "admin.cart_intelligence.rules.headers.status" => "Status"
          "admin.cart_intelligence.rules.headers.target" => "Zu Produkt"
          "admin.cart_intelligence.rules.headers.type" => "Typ"
          "admin.cart_intelligence.rules.labels.price" => "%value% EUR"
          "admin.cart_intelligence.rules.labels.sku" => "SKU: %value%"
          "admin.cart_intelligence.rules.meta_title" => "Cross-Sell-Regeln"
          "admin.cart_intelligence.rules.page_title" => "Cross-Sell / Up-Sell Regeln"
          "admin.cart_intelligence.rules.stats.active_rules" => "aktive Regeln"
          "admin.cart_intelligence.rules.stats.all_rules" => "alle Regeln"
          "admin.cart_intelligence.rules.stats.bundle" => "Bundles"
          "admin.cart_intelligence.rules.stats.cross_sell" => "Cross-Sell"
          "admin.cart_intelligence.rules.stats.total" => "Gesamt"
          "admin.cart_intelligence.rules.stats.up_sell" => "Up-Sell"
          "admin.cart_intelligence.stats.actions.back" => "Zu Regeln"
          "admin.cart_intelligence.stats.empty" => "Keine Statistiken verfügbar. Erstellen Sie Regeln und warten Sie auf Besucher."
          "admin.cart_intelligence.stats.headers.added" => "Added"
          "admin.cart_intelligence.stats.headers.from_to" => "Von → Zu Produkt"
          "admin.cart_intelligence.stats.headers.rate" => "Conv. Rate"
          "admin.cart_intelligence.stats.headers.shown" => "Shown"
          "admin.cart_intelligence.stats.headers.type" => "Typ"
          "admin.cart_intelligence.stats.headers.viewed" => "Viewed"
          "admin.cart_intelligence.stats.info_text" => "Zeigt, welche Regeln am häufigsten tatsächlich zu Käufen führen, damit Sie Ihre Regeln optimieren können."
          "admin.cart_intelligence.stats.info_title" => "Performance-Metriken:"
          "admin.cart_intelligence.stats.meta_title" => "Cross-Sell-Statistiken"
          "admin.cart_intelligence.stats.page_title" => "Cross-Sell Performance"
          "admin.cart_intelligence.types.bundle" => "Bundle"
          "admin.cart_intelligence.types.cross_sell" => "Cross-Sell"
          "admin.cart_intelligence.types.unknown" => "Unbekannt"
          "admin.cart_intelligence.types.up_sell" => "Up-Sell"
          "admin.cart.detail.actions.customer" => "Kunde"
          "admin.cart.detail.actions.edit" => "Bearbeiten"
          "admin.cart.detail.actions.help" => "Hilfe"
          "admin.cart.detail.actions.overview" => "Übersicht"
          "admin.cart.detail.actions.pickup_ready" => "Bereit zur Abholung melden"
          "admin.cart.detail.actions.shipment" => "Sendung"
          "admin.cart.detail.actions.shop_user" => "Shop-User"
          "admin.cart.detail.fields.address" => "Adresse"
          "admin.cart.detail.fields.address_validation" => "Adressprüfung"
          "admin.cart.detail.fields.address_validation_message" => "Prüfhinweis"
          "admin.cart.detail.fields.address_validation_source" => "Prüfquelle"
          "admin.cart.detail.fields.billing_address" => "Rechnungsadresse"
          "admin.cart.detail.fields.billing_address_validation" => "Adressprüfung Rechnung"
          "admin.cart.detail.fields.billing_address_validation_message" => "Prüfhinweis Rechnung"
          "admin.cart.detail.fields.billing_address_validation_source" => "Prüfquelle Rechnung"
          "admin.cart.detail.fields.billing_city_zip" => "PLZ / Ort Rechnung"
          "admin.cart.detail.fields.billing_country" => "Land Rechnung"
          "admin.cart.detail.fields.billing_email" => "E-Mail Rechnung"
          "admin.cart.detail.fields.billing_heading" => "Rechnungsadresse"
          "admin.cart.detail.fields.billing_phone" => "Telefon Rechnung"
          "admin.cart.detail.fields.billing_recipient" => "Rechnungsempfänger"
          "admin.cart.detail.fields.carrier" => "Versanddienst"
          "admin.cart.detail.fields.city_zip" => "PLZ / Ort"
          "admin.cart.detail.fields.country" => "Land"
          "admin.cart.detail.fields.created_at" => "Erstellt"
          "admin.cart.detail.fields.customer_id" => "Kunden-ID"
          "admin.cart.detail.fields.email" => "E-Mail"
          "admin.cart.detail.fields.fulfillment_type" => "Lieferart"
          "admin.cart.detail.fields.name" => "Name"
          "admin.cart.detail.fields.payment_intent" => "PaymentIntent"
          "admin.cart.detail.fields.payment_method" => "Zahlungsart"
          "admin.cart.detail.fields.phone" => "Telefon"
          "admin.cart.detail.fields.pickup_notified_at" => "Bereitmeldung gesendet"
          "admin.cart.detail.fields.pickup_ready_at" => "Bereit seit"
          "admin.cart.detail.fields.pickup_status" => "Abholstatus"
          "admin.cart.detail.fields.product" => "Produkt"
          "admin.cart.detail.fields.quantity" => "Menge"
          "admin.cart.detail.fields.recipient" => "Empfänger"
          "admin.cart.detail.fields.shipment_status" => "Versandstatus"
          "admin.cart.detail.fields.shipped_at" => "Versendet am"
          "admin.cart.detail.fields.shop_user" => "Shop-User"
          "admin.cart.detail.fields.status" => "Status"
          "admin.cart.detail.fields.status_code" => "Statuscode"
          "admin.cart.detail.fields.stripe_status" => "Stripe Status"
          "admin.cart.detail.fields.subtotal_gross" => "Zwischensumme (brutto)"
          "admin.cart.detail.fields.total" => "Gesamt"
          "admin.cart.detail.fields.tracking_number" => "Sendungsnummer"
          "admin.cart.detail.fields.unit_price_gross" => "Einzelpreis (brutto)"
          "admin.cart.detail.fields.updated_at" => "Geändert"
          "admin.cart.detail.links.call" => "Anrufen"
          "admin.cart.detail.links.customer_edit" => "Kunde bearbeiten"
          "admin.cart.detail.links.email" => "E-Mail"
          "admin.cart.detail.links.maps" => "Adresse in Maps"
          "admin.cart.detail.links.shipment_edit" => "Sendung bearbeiten"
          "admin.cart.detail.meta_title" => "Bestellung #%id%"
          "admin.cart.detail.page_subtitle" => "Alle relevanten Kauf-, Zahlungs- und Versandinformationen auf einen Blick."
          "admin.cart.detail.page_title" => "Bestellung #%id%"
          "admin.cart.detail.sections.admin_comment" => "Admin-Kommentar"
          "admin.cart.detail.sections.customer" => "Kunde"
          "admin.cart.detail.sections.items" => "Bestellpositionen"
          "admin.cart.detail.sections.order" => "Bestellung"
          "admin.cart.detail.sections.shipping" => "Lieferung & Versand"
          "admin.cart.detail.totals.gross" => "Gesamt brutto"
          "admin.cart.detail.totals.net" => "Summe netto"
          "admin.cart.detail.totals.vat_included" => "zzgl. MwSt. 19% (im Preis enthalten)"
          "admin.cart.detail.validation_source.external" => "Extern"
          "admin.cart.detail.validation_source.local" => "Lokal"
          "admin.cart.detail.validation_source.manual" => "Manuell"
          "admin.cart.detail.validation_status.invalid" => "Ungültig"
          "admin.cart.detail.validation_status.review_pending" => "Manuelle Prüfung nötig"
          "admin.cart.detail.validation_status.verified" => "Bestätigt"
          "admin.cart.detail.values.no_comment" => "Kein Kommentar hinterlegt."
          "admin.cart.detail.values.no_items" => "Keine Positionen gefunden."
          "admin.cart.edit.actions.cancel" => "Abbrechen"
          "admin.cart.edit.actions.detail" => "Details"
          "admin.cart.edit.actions.help" => "Hilfe"
          "admin.cart.edit.actions.overview" => "Übersicht"
          "admin.cart.edit.actions.save" => "Speichern"
          "admin.cart.edit.fields.admin_comment" => "Admin-Kommentar"
          "admin.cart.edit.fields.carrier" => "Versanddienst"
          "admin.cart.edit.fields.order_status" => "Bestellstatus"
          "admin.cart.edit.fields.pickup_ready_at" => "Bereit seit"
          "admin.cart.edit.fields.pickup_status" => "Abholstatus"
          "admin.cart.edit.fields.send_pickup_ready_notification" => "Bereitmeldung jetzt per E-Mail senden"
          "admin.cart.edit.fields.shipment_status" => "Versandstatus"
          "admin.cart.edit.fields.shipped_at" => "Versendet am"
          "admin.cart.edit.fields.system_status" => "Systemstatus"
          "admin.cart.edit.fields.tracking_number" => "Sendungsnummer"
          "admin.cart.edit.help.pickup_notified_at" => "Letzte Bereitmeldung: %date%"
          "admin.cart.edit.help.pickup_status" => "Setze „Bereit zur Abholung“, sobald die Bestellung vorbereitet ist. Die E-Mail informiert den Kunden direkt."
          "admin.cart.edit.meta_title" => "Bestellung #%id% bearbeiten"
          "admin.cart.edit.page_subtitle" => "Status, Versanddaten und interne Notiz zentral pflegen."
          "admin.cart.edit.page_title" => "Bestellung #%id% bearbeiten"
          "admin.cart.edit.panel_title" => "Bearbeitungsformular"
          "admin.cart.edit.placeholders.tracking_number" => "Vorhandene Nummer wählen oder neu eingeben"
          "admin.cart.edit.sections.pickup" => "Abholung im Geschäft"
          "admin.cart.edit.sections.shipping" => "Versand"
          "admin.cart.edit.values.not_set" => "Nicht gesetzt"
          "admin.cart.edit.values.select_carrier" => "Bitte wählen"
          "admin.cart.errors.not_found" => "Warenkorb nicht gefunden."
          "admin.cart.fulfillment.pickup" => "Abholung im Geschäft"
          "admin.cart.fulfillment.shipping" => "Versand"
          "admin.cart.help_index.card_description" => "Bestellverwaltung, Status, Versand"
          "admin.cart.help_index.card_title" => "Bestellungen & Warenkörbe"
          "admin.cart.help_index.table_description" => "Bestellverwaltung, Status, Details"
          "admin.cart.help_index.table_label" => "Bestellungen"
          "admin.cart.help.actions.back" => "Zurück"
          "admin.cart.help.actions.module" => "Zum Modul"
          "admin.cart.help.api.rows.delete" => "Bestellung löschen"
          "admin.cart.help.api.rows.detail" => "Bestelldetails"
          "admin.cart.help.api.rows.edit" => "Bestellung bearbeiten"
          "admin.cart.help.api.rows.list" => "Bestellliste"
          "admin.cart.help.api.table.function" => "Funktion"
          "admin.cart.help.api.table.method" => "Methode"
          "admin.cart.help.api.table.url" => "URL"
          "admin.cart.help.api.title" => "API-Endpunkte"
          "admin.cart.help.detail.intro" => "Die Detailansicht bündelt alle kaufrelevanten Informationen an einem Ort."
          "admin.cart.help.detail.points.comment" => "Interner Admin-Kommentar separat am Ende der Seite."
          "admin.cart.help.detail.points.customer" => "Direkte Sprünge zu Kunde und verknüpftem Shop-User."
          "admin.cart.help.detail.points.items" => "Bestellpositionen inklusive Netto-, MwSt.- und Bruttosummen."
          "admin.cart.help.detail.points.order" => "Bestellblock mit Status, Zahlungsart, Stripe-Status und PaymentIntent."
          "admin.cart.help.detail.points.shipping" => "Liefer- und Rechnungsadresse inklusive Validierungsstatus, Versanddienst, Sendungsnummer, Versandstatus und Abholinformationen."
          "admin.cart.help.detail.title" => "Bestelldetails"
          "admin.cart.help.fields.rows.admin_comment" => "Interner Kommentar für das Backoffice."
          "admin.cart.help.fields.rows.billing_snapshot" => "Snapshot der Rechnungsadresse zum Bestellzeitpunkt inklusive Land und Prüfstatus."
          "admin.cart.help.fields.rows.created_at" => "Zeitpunkt der Erstellung."
          "admin.cart.help.fields.rows.customer" => "Verknüpfter Kunde inklusive Shop-User-Bezug."
          "admin.cart.help.fields.rows.fulfillment_type" => "Lieferart der Bestellung, also Versand oder Abholung im Geschäft."
          "admin.cart.help.fields.rows.id" => "Interne Bestell-ID."
          "admin.cart.help.fields.rows.order_status" => "Fachlicher Bestellstatus für den weiteren Workflow."
          "admin.cart.help.fields.rows.payment" => "Gespeicherte Zahlungsart."
          "admin.cart.help.fields.rows.payment_intent" => "Stripe PaymentIntent-ID."
          "admin.cart.help.fields.rows.pickup_notified_at" => "Zeitpunkt der letzten Bereitmeldung per E-Mail."
          "admin.cart.help.fields.rows.pickup_ready_at" => "Zeitpunkt, ab dem die Bestellung im Geschäft bereitliegt."
          "admin.cart.help.fields.rows.pickup_status" => "Aktueller Abholstatus: Vorbereitung, bereit zur Abholung oder abgeholt."
          "admin.cart.help.fields.rows.shipping_snapshot" => "Snapshot der Lieferadresse zum Bestellzeitpunkt inklusive Land und Prüfstatus."
          "admin.cart.help.fields.rows.status" => "Technischer Cart-Status."
          "admin.cart.help.fields.rows.stripe_status" => "Technischer Stripe-Status."
          "admin.cart.help.fields.rows.total" => "Gesamtbetrag des Carts."
          "admin.cart.help.fields.rows.updated_at" => "Zeitpunkt der letzten Änderung."
          "admin.cart.help.fields.table.description" => "Beschreibung"
          "admin.cart.help.fields.table.field" => "Feld"
          "admin.cart.help.fields.title" => "Feldreferenz: Bestellung (Cart)"
          "admin.cart.help.navigation.api" => "API-Endpunkte"
          "admin.cart.help.navigation.detail" => "Bestelldetails"
          "admin.cart.help.navigation.fields" => "Feldreferenz"
          "admin.cart.help.navigation.overview" => "Übersicht"
          "admin.cart.help.navigation.payment" => "Zahlungsmethoden"
          "admin.cart.help.navigation.shipping" => "Versand & Lieferung"
          "admin.cart.help.navigation.status" => "Bestellstatus"
          "admin.cart.help.navigation.title" => "Navigation"
          "admin.cart.help.overview.filters_title" => "Filtermöglichkeiten"
          "admin.cart.help.overview.filters.date_range" => "Nach Zeitraum über Von/Bis filtern."
          "admin.cart.help.overview.filters.payment" => "Die Zahlungsart wird direkt in der Liste angezeigt."
          "admin.cart.help.overview.filters.status" => "Nach Status (offen, bestellt, Adressprüfung ausstehend, bereit zur Abholung, abgeholt, storniert) filtern."
          "admin.cart.help.overview.intro" => "Die Bestellverwaltung erreichst du unter /admin/cart. Die Liste zeigt Status, Kunde, Gesamtbetrag, Zahlungsart und Erstellungsdatum."
          "admin.cart.help.overview.note" => "Im System werden Warenkörbe und Bestellungen in derselben Tabelle cart verwaltet. Offene Carts und abgeschlossene Bestellungen unterscheiden sich über status und orderStatus."
          "admin.cart.help.overview.title" => "Bestellübersicht"
          "admin.cart.help.page_title" => "Hilfe: Bestellungen & Warenkörbe"
          "admin.cart.help.payment.note" => "Die Detailansicht zeigt die im Cart gespeicherte Zahlungsart und technische Stripe-Informationen."
          "admin.cart.help.payment.rows.bank_transfer" => "Manuelle Überweisung."
          "admin.cart.help.payment.rows.invoice" => "Kann in Bestandsdaten oder manuellen Prozessen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
          "admin.cart.help.payment.rows.paypal" => "Kann in Bestandsdaten oder Altbestellungen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
          "admin.cart.help.payment.rows.prepayment" => "Kann in Bestandsdaten oder manuellen Prozessen auftauchen, ist aber aktuell nicht live im Checkout verdrahtet."
          "admin.cart.help.payment.rows.sepa" => "SEPA-Lastschriftverfahren."
          "admin.cart.help.payment.rows.stripe" => "Zeigt zusätzlich Stripe-Status und PaymentIntent in der Detailansicht."
          "admin.cart.help.payment.table.description" => "Hinweis"
          "admin.cart.help.payment.table.method" => "Methode"
          "admin.cart.help.payment.title" => "Zahlungsmethoden"
          "admin.cart.help.shipping.intro" => "Versanddaten lassen sich direkt in der Bearbeitungsansicht der Bestellung pflegen."
          "admin.cart.help.shipping.note" => "Wenn bereits eine Shipment-Entität existiert, führt die Detailansicht direkt zur Sendungsbearbeitung. Bei Abholung bleiben Kontakt- und Rechnungsdaten Pflicht, Versandkosten werden nicht berechnet."
          "admin.cart.help.shipping.points.carrier" => "Versanddienst aus bestehenden Versandmethoden wählen."
          "admin.cart.help.shipping.points.pickup" => "Bei Abholbestellungen ersetzt der Abholstatus die Versanddaten. Über „Bereit zur Abholung melden“ wird der Status gesetzt und eine Kundenmail gesendet."
          "admin.cart.help.shipping.points.shipped_at" => "Versanddatum und Uhrzeit dokumentieren."
          "admin.cart.help.shipping.points.status" => "Shipment-Status von Angelegt bis Zugestellt setzen."
          "admin.cart.help.shipping.points.tracking" => "Sendungsnummer aus vorhandenen Nummern wählen oder neu eintragen."
          "admin.cart.help.shipping.title" => "Versand & Lieferung"
          "admin.cart.help.status.order_title" => "Bestellstatus"
          "admin.cart.help.status.order.address_review_pending" => "Die Bestellung ist erfasst, wird aber vor Versand wegen unklarer Adressdaten manuell geprüft."
          "admin.cart.help.status.order.cancelled" => "Bestellung wurde storniert."
          "admin.cart.help.status.order.completed" => "Vorgang ist fachlich abgeschlossen."
          "admin.cart.help.status.order.delivered" => "Sendung wurde zugestellt."
          "admin.cart.help.status.order.paid" => "Zahlung ist eingegangen."
          "admin.cart.help.status.order.payment_failed" => "Die Stripe-Zahlung ist fehlgeschlagen oder benötigt eine neue Zahlungsquelle."
          "admin.cart.help.status.order.payment_pending" => "Stripe hat die Zahlung registriert, aber noch nicht final bestätigt."
          "admin.cart.help.status.order.picked_up" => "Die Bestellung wurde im Geschäft abgeholt."
          "admin.cart.help.status.order.pickup_ready" => "Die Abholbestellung ist vorbereitet und der Kunde kann benachrichtigt werden."
          "admin.cart.help.status.order.processing" => "Bestellung wird intern bearbeitet."
          "admin.cart.help.status.order.refunded" => "Zahlung wurde ganz oder teilweise erstattet."
          "admin.cart.help.status.order.shipped" => "Sendung wurde versendet."
          "admin.cart.help.status.system_title" => "Systemstatus"
          "admin.cart.help.status.system.cancelled" => "Bestellung oder Cart wurde storniert."
          "admin.cart.help.status.system.open" => "Offener Warenkorb ohne abgeschlossene Bestellung."
          "admin.cart.help.status.system.ordered" => "Bestellung ist angelegt und erscheint in der Bestellübersicht."
          "admin.cart.help.status.title" => "Bestellstatus-Workflow"
          "admin.cart.list.actions.delete" => "Löschen"
          "admin.cart.list.actions.detail" => "Details"
          "admin.cart.list.actions.edit" => "Bearbeiten"
          "admin.cart.list.actions.filter" => "Filtern"
          "admin.cart.list.actions.help" => "Hilfe"
          "admin.cart.list.delete_confirm" => "Bestellung #%id% wirklich löschen?"
          "admin.cart.list.filters.all_statuses" => "Alle Status"
          "admin.cart.list.filters.from" => "Von"
          "admin.cart.list.filters.status" => "Status"
          "admin.cart.list.filters.to" => "Bis"
          "admin.cart.list.headers.actions" => "Aktionen"
          "admin.cart.list.headers.created" => "Erstellt"
          "admin.cart.list.headers.customer" => "Kunde"
          "admin.cart.list.headers.id" => "ID"
          "admin.cart.list.headers.payment" => "Zahlung"
          "admin.cart.list.headers.status" => "Status"
          "admin.cart.list.headers.total" => "Total"
          "admin.cart.list.list_count" => "%count% Einträge"
          "admin.cart.list.list_title" => "Bestellliste"
          "admin.cart.list.meta_title" => "Bestellungen"
          "admin.cart.list.page_subtitle" => "Überwache Bestellstatus, Zahlart und Zeiträume an einem Ort."
          "admin.cart.list.page_title" => "Bestellungen"
          "admin.cart.list.values.empty" => "Keine Bestellungen gefunden."
          "admin.cart.notifications.deleted" => "Warenkorb wurde gelöscht."
          "admin.cart.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.cart.notifications.not_found" => "Warenkorb wurde nicht gefunden."
          "admin.cart.notifications.pickup_not_available" => "Diese Bestellung ist keine Abholbestellung."
          "admin.cart.notifications.pickup_ready_mail_failed" => "Die Bereitmeldung konnte nicht per E-Mail gesendet werden."
          "admin.cart.notifications.pickup_ready_mail_sent" => "Die Bereitmeldung wurde per E-Mail gesendet."
          "admin.cart.notifications.pickup_ready_no_email" => "Die Bereitmeldung konnte nicht gesendet werden, weil keine Kunden-E-Mail hinterlegt ist."
          "admin.cart.notifications.saved" => "Warenkorb wurde gespeichert."
          "admin.cart.payment_methods.bank_transfer" => "Überweisung"
          "admin.cart.payment_methods.cash" => "Barzahlung"
          "admin.cart.payment_methods.invoice" => "Rechnung"
          "admin.cart.payment_methods.paypal" => "PayPal"
          "admin.cart.payment_methods.prepayment" => "Vorkasse"
          "admin.cart.payment_methods.sepa" => "SEPA-Lastschrift"
          "admin.cart.payment_methods.stripe" => "Kreditkarte (Stripe)"
          "admin.cart.pickup_status.collected" => "Abgeholt"
          "admin.cart.pickup_status.pending" => "Abholung wird vorbereitet"
          "admin.cart.pickup_status.ready" => "Bereit zur Abholung"
          "admin.cart.shipment_status.created" => "Angelegt"
          "admin.cart.shipment_status.delivered" => "Zugestellt"
          "admin.cart.shipment_status.exception" => "Problemfall"
          "admin.cart.shipment_status.in_transit" => "In Zustellung"
          "admin.cart.shipment_status.label_created" => "Label erstellt"
          "admin.cart.shipment_status.lost" => "Verloren"
          "admin.cart.shipment_status.out_for_delivery" => "In Auslieferung"
          "admin.cart.shipment_status.returned" => "Retoure"
          "admin.cart.status.address_review_pending" => "Adressprüfung ausstehend"
          "admin.cart.status.cancelled" => "Storniert"
          "admin.cart.status.completed" => "Abgeschlossen"
          "admin.cart.status.delivered" => "Geliefert"
          "admin.cart.status.open" => "Offen"
          "admin.cart.status.ordered" => "Bestellt"
          "admin.cart.status.paid" => "Bezahlt"
          "admin.cart.status.picked_up" => "Abgeholt"
          "admin.cart.status.pickup_ready" => "Bereit zur Abholung"
          "admin.cart.status.processing" => "In Bearbeitung"
          "admin.cart.status.shipped" => "Versendet"
          "admin.cart.stripe_status.canceled" => "Abgebrochen"
          "admin.cart.stripe_status.processing" => "In Verarbeitung"
          "admin.cart.stripe_status.requires_action" => "Kundenauthentifizierung erforderlich"
          "admin.cart.stripe_status.requires_capture" => "Autorisierung vorhanden"
          "admin.cart.stripe_status.requires_confirmation" => "Bestätigung ausstehend"
          "admin.cart.stripe_status.requires_payment_method" => "Zahlungsmethode erforderlich"
          "admin.cart.stripe_status.succeeded" => "Erfolgreich bezahlt"
          "admin.configurable_product.form.actions.add_option" => "Option hinzufügen"
          "admin.configurable_product.form.actions.add_value" => "Wert hinzufügen"
          "admin.configurable_product.form.actions.back" => "Zurück"
          "admin.configurable_product.form.actions.cancel" => "Abbrechen"
          "admin.configurable_product.form.actions.help" => "Produkthilfe"
          "admin.configurable_product.form.actions.remove_option" => "Option entfernen"
          "admin.configurable_product.form.actions.remove_value" => "Wert entfernen"
          "admin.configurable_product.form.actions.save" => "Speichern"
          "admin.configurable_product.form.fields.option_name" => "Optionsname"
          "admin.configurable_product.form.fields.options" => "Optionen"
          "admin.configurable_product.form.fields.price_delta" => "Aufpreis"
          "admin.configurable_product.form.fields.product" => "Produkt"
          "admin.configurable_product.form.fields.value" => "Wert"
          "admin.configurable_product.form.fields.values" => "Werte"
          "admin.configurable_product.form.meta_title_edit" => "Konfigurator-Produkt bearbeiten"
          "admin.configurable_product.form.meta_title_new" => "Neues Konfigurator-Produkt"
          "admin.configurable_product.form.page_subtitle" => "Verknüpfe Optionen und Preisaufschläge pro Wert."
          "admin.configurable_product.form.page_title_edit" => "Konfigurator-Produkt bearbeiten"
          "admin.configurable_product.form.page_title_new" => "Neues Konfigurator-Produkt"
          "admin.configurable_product.form.panel_title" => "Formular"
          "admin.configurable_product.form.placeholders.price_delta" => "Aufpreis"
          "admin.configurable_product.form.placeholders.value" => "Wert"
          "admin.configurable_product.form.sections.options" => "Optionen"
          "admin.configurable_product.form.sections.values" => "Werte"
          "admin.configurable_product.index.actions.delete" => "Löschen"
          "admin.configurable_product.index.actions.edit" => "Bearbeiten"
          "admin.configurable_product.index.actions.help" => "Produkthilfe"
          "admin.configurable_product.index.actions.new" => "Neues Konfigurator-Produkt"
          "admin.configurable_product.index.delete_confirm" => "Konfigurator-Produkt "%name%" wirklich löschen?"
          "admin.configurable_product.index.headers.actions" => "Aktionen"
          "admin.configurable_product.index.headers.id" => "ID"
          "admin.configurable_product.index.headers.options" => "Optionen"
          "admin.configurable_product.index.headers.product" => "Produkt"
          "admin.configurable_product.index.list_count" => "%count% Einträge"
          "admin.configurable_product.index.list_title" => "Konfigurator-Produktliste"
          "admin.configurable_product.index.meta_title" => "Konfigurator-Produkte"
          "admin.configurable_product.index.page_subtitle" => "Produkte mit konfigurierbaren Optionen und Preisaufschlägen verwalten."
          "admin.configurable_product.index.page_title" => "Konfigurator-Produkte"
          "admin.configurable_product.index.values.empty" => "Keine Konfigurator-Produkte gefunden."
          "admin.configurable_product.notifications.created" => "Konfigurator-Produkt wurde angelegt."
          "admin.configurable_product.notifications.deleted" => "Konfigurator-Produkt wurde gelöscht."
          "admin.configurable_product.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.configurable_product.notifications.updated" => "Konfigurator-Produkt wurde gespeichert."
          "admin.content.api.errors.block_not_found" => "Content-Block wurde nicht gefunden."
          "admin.content.api.errors.required_fields" => "blockKey und name sind Pflichtfelder."
          "admin.content.errors.block_not_found" => "Content-Block wurde nicht gefunden."
          "admin.content.form.actions.cancel" => "Abbrechen"
          "admin.content.form.actions.save" => "Speichern"
          "admin.content.form.back" => "Zurück zur Liste"
          "admin.content.form.help" => "Hilfe"
          "admin.content.form.hints.json" => "Bei Typ JSON muss der Inhalt valides JSON sein."
          "admin.content.form.hints.locale" => "Leer lassen für sprachunabhängige Blöcke."
          "admin.content.form.labels.active" => "Aktiv"
          "admin.content.form.labels.block_key" => "Key"
          "admin.content.form.labels.content" => "Inhalt"
          "admin.content.form.labels.locale" => "Locale"
          "admin.content.form.labels.name" => "Name"
          "admin.content.form.labels.type" => "Typ"
          "admin.content.form.page_title_edit" => "Content-Block bearbeiten"
          "admin.content.form.page_title_new" => "Neuer Content-Block"
          "admin.content.form.panel_title_edit" => "Bearbeiten"
          "admin.content.form.panel_title_new" => "Anlegen"
          "admin.content.form.placeholders.block_key" => "homepage.hero.teaser"
          "admin.content.form.placeholders.locale" => "de"
          "admin.content.form.placeholders.name" => "Beschreibender Name"
          "admin.content.help_index.card_subtitle" => "Block-CRUD, Typen und A/B-Verknüpfung"
          "admin.content.help_index.card_title" => "Content-Blöcke"
          "admin.content.help_index.table_description" => "Dynamische Inhaltsblöcke für Frontend und Page Builder"
          "admin.content.help_index.table_label" => "Content-Blöcke"
          "admin.content.help.abtest.intro" => "A/B-Experimente referenzieren einen bestehenden Content-Block per Relation. Varianten werden nicht über blockKey, sondern über die Blockauswahl im A/B-Test-Modul gepflegt."
          "admin.content.help.abtest.note" => "Die A/B-Verknüpfung arbeitet blockbasiert. blockKey dient der Template-Einbindung, nicht der A/B-Zuordnung."
          "admin.content.help.abtest.steps.one" => "Im A/B-Test-Modul einen bestehenden aktiven Content-Block aus der Dropdown-Liste wählen."
          "admin.content.help.abtest.steps.three" => "Gewinner und Teststatus werden im Experiment gespeichert; der Basis-Block bleibt separat im Content-Modul editierbar."
          "admin.content.help.abtest.steps.two" => "Varianten A bis C für genau diesen Block pflegen und den Teststatus steuern."
          "admin.content.help.abtest.title" => "Verknüpfung mit A/B-Tests"
          "admin.content.help.actions.back" => "Zurück"
          "admin.content.help.actions.module" => "Zum Modul"
          "admin.content.help.api.rows.create" => "Legt einen neuen Content-Block per API an."
          "admin.content.help.api.rows.delete" => "Löscht einen Block dauerhaft."
          "admin.content.help.api.rows.get" => "Gibt die Details eines Blocks als JSON zurück."
          "admin.content.help.api.rows.index" => "Öffnet die Content-Block-Übersicht."
          "admin.content.help.api.rows.list" => "Liefert die gefilterte Liste der Blocks als JSON."
          "admin.content.help.api.rows.summary" => "Liefert KPI-Zahlen nach Typ."
          "admin.content.help.api.rows.toggle" => "Schaltet den Aktiv-Status um."
          "admin.content.help.api.rows.update" => "Aktualisiert einen bestehenden Block."
          "admin.content.help.api.table.function" => "Funktion"
          "admin.content.help.api.table.method" => "Methode"
          "admin.content.help.api.table.url" => "URL"
          "admin.content.help.api.title" => "API-Endpunkte"
          "admin.content.help.create.note" => "Der blockKey muss exakt mit der Einbindung im Template übereinstimmen, zum Beispiel"
          "admin.content.help.create.steps.five" => "Optional locale setzen, wenn der Block sprachspezifisch gepflegt werden soll."
          "admin.content.help.create.steps.four" => "Typ passend zum Ausgabeverhalten wählen: html, markdown, json oder text."
          "admin.content.help.create.steps.one" => "Im Modul Content-Blöcke auf "Neuer Block" klicken."
          "admin.content.help.create.steps.seven" => "Block aktivieren und speichern."
          "admin.content.help.create.steps.six" => "Inhalt im Textbereich pflegen und bei JSON auf valides Format achten."
          "admin.content.help.create.steps.three" => "Einen verständlichen Namen für die Admin-Liste hinterlegen."
          "admin.content.help.create.steps.two" => "blockKey als stabilen Integrationsschlüssel vergeben, zum Beispiel homepage.hero.teaser."
          "admin.content.help.create.title" => "Content-Block anlegen"
          "admin.content.help.fields.rows.active" => "Steuert, ob der Block aktiv verwendet wird."
          "admin.content.help.fields.rows.block_key" => "Eindeutiger Schlüssel für Twig- und Page-Builder-Integration."
          "admin.content.help.fields.rows.content" => "Gespeicherter Blockinhalt."
          "admin.content.help.fields.rows.created_at" => "Zeitpunkt der Erstellung."
          "admin.content.help.fields.rows.locale" => "Optionale Sprachvariante, leer = sprachunabhängig."
          "admin.content.help.fields.rows.name" => "Anzeigename in Admin-Listen und Auswahldialogen."
          "admin.content.help.fields.rows.type" => "Ausgabeart html, markdown, json oder text."
          "admin.content.help.fields.rows.updated_at" => "Zeitpunkt der letzten Änderung."
          "admin.content.help.fields.table.description" => "Beschreibung"
          "admin.content.help.fields.table.field" => "Feld"
          "admin.content.help.fields.table.type" => "Typ"
          "admin.content.help.fields.title" => "Feldreferenz: ContentBlock"
          "admin.content.help.fields.types.boolean" => "Boolean"
          "admin.content.help.fields.types.datetime" => "Datum / Zeit"
          "admin.content.help.fields.types.long_text" => "Langer Text"
          "admin.content.help.fields.types.text" => "Text"
          "admin.content.help.fields.types.unique_text" => "Text (eindeutig)"
          "admin.content.help.navigation.abtest" => "A/B-Test-Verknüpfung"
          "admin.content.help.navigation.api" => "API-Endpunkte"
          "admin.content.help.navigation.create" => "Block anlegen"
          "admin.content.help.navigation.fields" => "Feldreferenz"
          "admin.content.help.navigation.overview" => "Überblick"
          "admin.content.help.navigation.title" => "Navigation"
          "admin.content.help.navigation.toggle" => "Aktivieren/Deaktivieren"
          "admin.content.help.navigation.types" => "Block-Typen"
          "admin.content.help.overview.examples_title" => "Anwendungsbeispiele:"
          "admin.content.help.overview.examples.campaign" => "Saisonale Kampagneninhalte"
          "admin.content.help.overview.examples.checkout" => "Checkout- und Service-Hinweise"
          "admin.content.help.overview.examples.footer" => "Footer-Texte und rechtliche Hinweise"
          "admin.content.help.overview.examples.hero" => "Hero-Banner auf der Startseite"
          "admin.content.help.overview.examples.promo" => "Promotion-Texte auf Kategorie- und Landingpages"
          "admin.content.help.overview.intro" => "Content-Blöcke sind dynamische Inhaltsbausteine, die über blockKey im Twig-Frontend oder als content_block-Element im Page Builder eingebunden werden. Inhalte lassen sich dadurch ohne Codeänderung pflegen."
          "admin.content.help.overview.permissions_title" => "Berechtigungen:"
          "admin.content.help.overview.title" => "Content-Blöcke: Überblick"
          "admin.content.help.page_title" => "Hilfe: Content-Blöcke"
          "admin.content.help.toggle.api_label" => "API:"
          "admin.content.help.toggle.intro" => "Der Aktiv-Status lässt sich direkt in der Listenansicht umschalten, ohne einen Block zu löschen."
          "admin.content.help.toggle.points.one" => "Aktive Blöcke stehen für Twig und Page Builder zur Verfügung."
          "admin.content.help.toggle.points.three" => "Das ist nützlich für vorbereitete Kampagnen oder temporär pausierte Inhalte."
          "admin.content.help.toggle.points.two" => "Inaktive Blöcke bleiben gespeichert, werden aber nicht regulär ausgegeben."
          "admin.content.help.toggle.title" => "Block aktivieren oder deaktivieren"
          "admin.content.help.types.rows.html.editor" => "Mehrzeiliges Textfeld mit HTML-Eingabe."
          "admin.content.help.types.rows.html.use" => "Direkter HTML-Inhalt für frei formatierte Ausgaben."
          "admin.content.help.types.rows.json.editor" => "Mehrzeiliges Textfeld mit JSON-Validierung beim Speichern."
          "admin.content.help.types.rows.json.use" => "Strukturierte Daten, zum Beispiel Konfigurationen oder mehrteilige Inhalte."
          "admin.content.help.types.rows.markdown.editor" => "Mehrzeiliges Textfeld für Markdown."
          "admin.content.help.types.rows.markdown.use" => "Markdown-Inhalte, die im Frontend zu HTML gerendert werden."
          "admin.content.help.types.rows.text.editor" => "Mehrzeiliges Textfeld für Rohtext."
          "admin.content.help.types.rows.text.use" => "Einfacher Text, der im Frontend escaped und mit Zeilenumbrüchen ausgegeben wird."
          "admin.content.help.types.table.editor" => "Editor"
          "admin.content.help.types.table.type" => "Typ"
          "admin.content.help.types.table.use" => "Verwendung"
          "admin.content.help.types.title" => "Block-Typen"
          "admin.content.help.types.warning" => "Es gibt im aktuellen Modul keinen Twig-Typ. Die vier unterstützten Typen sind html, markdown, json und text."
          "admin.content.index.actions.confirm" => "Bestätigen"
          "admin.content.index.actions.delete" => "Löschen"
          "admin.content.index.actions.edit" => "Bearbeiten"
          "admin.content.index.filters.all_status" => "Alle Status"
          "admin.content.index.filters.all_types" => "Alle Typen"
          "admin.content.index.filters.search_placeholder" => "Nach Key oder Name suchen"
          "admin.content.index.help_title" => "Hilfe zu Content-Blöcken"
          "admin.content.index.kpi.total" => "Gesamt"
          "admin.content.index.list.empty" => "Keine Content-Blöcke für den aktuellen Filter gefunden."
          "admin.content.index.list.headers.actions" => "Aktionen"
          "admin.content.index.list.headers.active" => "Aktiv"
          "admin.content.index.list.headers.key" => "Key"
          "admin.content.index.list.headers.locale" => "Locale"
          "admin.content.index.list.headers.name" => "Name"
          "admin.content.index.list.headers.size" => "Größe"
          "admin.content.index.list.headers.type" => "Typ"
          "admin.content.index.list.headers.updated" => "Geändert"
          "admin.content.index.list.load_error" => "Beim Laden der Content-Blöcke ist ein Fehler aufgetreten."
          "admin.content.index.list.loading" => "Content-Blöcke werden geladen..."
          "admin.content.index.list.pagination" => "Zeige %shown% von %total% Blöcken (Seite %page%/%pages%)"
          "admin.content.index.list.title" => "Blockliste"
          "admin.content.index.list.values.none" => ""
          "admin.content.index.notices.delete_confirm" => "Soll dieser Content-Block wirklich gelöscht werden?"
          "admin.content.index.notices.delete_failed" => "Der Content-Block konnte nicht gelöscht werden."
          "admin.content.index.notices.delete_success" => "Content-Block wurde gelöscht."
          "admin.content.index.notices.summary_load_failed" => "Die KPI-Zusammenfassung konnte nicht geladen werden."
          "admin.content.index.notices.toggle_disabled" => "Content-Block wurde deaktiviert."
          "admin.content.index.notices.toggle_enabled" => "Content-Block wurde aktiviert."
          "admin.content.index.notices.toggle_failed" => "Der Status des Content-Blocks konnte nicht geändert werden."
          "admin.content.index.page_subtitle" => "Zentrale Pflege dynamischer Inhaltsblöcke für Frontend, Page Builder und Experimente."
          "admin.content.index.page_title" => "Content-Block-Verwaltung"
          "admin.content.index.toolbar.help" => "Hilfe"
          "admin.content.index.toolbar.new" => "Neuer Block"
          "admin.content.meta.title" => "Content-Blöcke"
          "admin.content.nav.menu" => "Content-Blöcke"
          "admin.content.nav.submenu" => "Übersicht"
          "admin.content.notifications.created" => "Content-Block wurde angelegt."
          "admin.content.notifications.invalid_json" => "Ungültiges JSON: %message%"
          "admin.content.notifications.required_fields" => "Key und Name sind Pflichtfelder."
          "admin.content.notifications.updated" => "Content-Block wurde gespeichert."
          "admin.content.status.active" => "Aktiv"
          "admin.content.status.inactive" => "Inaktiv"
          "admin.content.types.html" => "HTML"
          "admin.content.types.json" => "JSON"
          "admin.content.types.markdown" => "Markdown"
          "admin.content.types.text" => "Text"
          "admin.coupons.actions.activate" => "Aktivieren"
          "admin.coupons.actions.back" => "Zurück"
          "admin.coupons.actions.back_to_list" => "Zurück zur Liste"
          "admin.coupons.actions.cancel" => "Abbrechen"
          "admin.coupons.actions.close" => "Schließen"
          "admin.coupons.actions.deactivate" => "Deaktivieren"
          "admin.coupons.actions.delete" => "Löschen"
          "admin.coupons.actions.edit" => "Bearbeiten"
          "admin.coupons.actions.filter" => "Filtern"
          "admin.coupons.actions.help" => "Hilfe"
          "admin.coupons.actions.new" => "Neuer Gutschein"
          "admin.coupons.actions.save" => "Speichern"
          "admin.coupons.actions.to_module" => "Zum Modul"
          "admin.coupons.form.code_help" => "Eindeutiger Code; wird automatisch in Großbuchstaben gespeichert."
          "admin.coupons.form.code_label" => "Code"
          "admin.coupons.form.code_placeholder" => "z. B. SUMMER20"
          "admin.coupons.form.edit_page_title" => "Gutschein bearbeiten"
          "admin.coupons.form.edit_panel_title" => "Gutschein bearbeiten"
          "admin.coupons.form.max_uses_help" => "Das Limit gilt pro userKey, nicht global pro Gutschein-Code."
          "admin.coupons.form.max_uses_label" => "Max. Einlösungen pro Benutzer"
          "admin.coupons.form.max_uses_placeholder" => "leer = unbegrenzt"
          "admin.coupons.form.min_order_label" => "Min. Bestellwert (€)"
          "admin.coupons.form.min_order_placeholder" => "leer = kein Minimum"
          "admin.coupons.form.name_label" => "Bezeichnung"
          "admin.coupons.form.name_placeholder" => "z. B. Sommeraktion 2026"
          "admin.coupons.form.new_page_title" => "Neuer Gutschein"
          "admin.coupons.form.new_panel_title" => "Gutschein anlegen"
          "admin.coupons.form.status_active" => "Aktiv"
          "admin.coupons.form.status_label" => "Status"
          "admin.coupons.form.type_label" => "Typ"
          "admin.coupons.form.valid_from_label" => "Gültig von"
          "admin.coupons.form.valid_until_label" => "Gültig bis"
          "admin.coupons.form.value_label_fixed" => "Wert (€)"
          "admin.coupons.form.value_label_percent" => "Wert (%)"
          "admin.coupons.help_index.card_subtitle" => "CRUD, Typen, Limits, API"
          "admin.coupons.help_index.card_title" => "Gutscheine & Rabatte"
          "admin.coupons.help_index.table_description" => "Gutschein-CRUD, Limits und Aktivierung"
          "admin.coupons.help_index.table_label" => "Gutscheine"
          "admin.coupons.help.navigation_title" => "Navigation"
          "admin.coupons.help.navigation.api" => "API-Endpunkte"
          "admin.coupons.help.navigation.create" => "Gutschein erstellen"
          "admin.coupons.help.navigation.fields" => "Feldreferenz"
          "admin.coupons.help.navigation.overview" => "Überblick"
          "admin.coupons.help.navigation.redeem" => "Einlösung im Shop"
          "admin.coupons.help.navigation.types" => "Gutschein-Typen"
          "admin.coupons.help.sections.api.rows.create" => "Neuen Gutschein anlegen"
          "admin.coupons.help.sections.api.rows.delete" => "Gutschein löschen"
          "admin.coupons.help.sections.api.rows.edit" => "Gutschein bearbeiten"
          "admin.coupons.help.sections.api.rows.list" => "Gutschein-Liste mit Filtern"
          "admin.coupons.help.sections.api.rows.toggle" => "Aktivieren oder deaktivieren"
          "admin.coupons.help.sections.api.rows.validate" => "Frontend: Code validieren"
          "admin.coupons.help.sections.api.table.function" => "Funktion"
          "admin.coupons.help.sections.api.table.method" => "Methode"
          "admin.coupons.help.sections.api.table.url" => "URL"
          "admin.coupons.help.sections.api.title" => "API-Endpunkte"
          "admin.coupons.help.sections.create.steps.code" => "Einen eindeutigen <strong>Code</strong> wählen, z. B. <code>SOMMER20</code>; Duplikate werden beim Speichern blockiert."
          "admin.coupons.help.sections.create.steps.open" => "Zu <strong>Gutscheine → + Neuer Gutschein</strong> oder direkt zu <code>/admin/coupons/new</code> wechseln."
          "admin.coupons.help.sections.create.steps.rules" => "Rahmenbedingungen wie Mindestbestellwert, Gültigkeitszeitraum und Limit pro Benutzer festlegen."
          "admin.coupons.help.sections.create.steps.save" => "Mit <kbd>Speichern</kbd> sichern; aktive Gutscheine sind sofort verfügbar."
          "admin.coupons.help.sections.create.steps.type" => "Den <strong>Typ</strong> auswählen: Prozent, Festbetrag oder Gratis-Versand."
          "admin.coupons.help.sections.create.title" => "Gutschein erstellen"
          "admin.coupons.help.sections.create.warning" => "Codes werden normalisiert und in Großbuchstaben gespeichert."
          "admin.coupons.help.sections.fields.required_no" => "Nein"
          "admin.coupons.help.sections.fields.required_yes" => "Ja"
          "admin.coupons.help.sections.fields.rows.code" => "Der eindeutige Gutscheincode."
          "admin.coupons.help.sections.fields.rows.created_at" => "Anlagezeitpunkt des Gutscheins."
          "admin.coupons.help.sections.fields.rows.is_active" => "Aktiviert oder deaktiviert; kann in der Liste umgeschaltet werden."
          "admin.coupons.help.sections.fields.rows.max_uses" => "Maximale Einlösungen pro Benutzer über userKey; leer = unbegrenzt."
          "admin.coupons.help.sections.fields.rows.min_order_amount" => "Mindestbestellwert für die Einlösung."
          "admin.coupons.help.sections.fields.rows.name" => "Interne Bezeichnung für Liste und Formular."
          "admin.coupons.help.sections.fields.rows.type" => "percent / fixed / free_shipping."
          "admin.coupons.help.sections.fields.rows.used_count" => "Bisherige Gesamteinlösungen über alle Benutzer."
          "admin.coupons.help.sections.fields.rows.valid_from" => "Gültig ab diesem Datum."
          "admin.coupons.help.sections.fields.rows.valid_until" => "Gültig bis zu diesem Datum; leer = unbegrenzt."
          "admin.coupons.help.sections.fields.rows.value" => "Rabattwert; bei free_shipping technisch vorhanden, aber fachlich ohne Wirkung."
          "admin.coupons.help.sections.fields.table.description" => "Beschreibung"
          "admin.coupons.help.sections.fields.table.field" => "Feld"
          "admin.coupons.help.sections.fields.table.required" => "Pflicht"
          "admin.coupons.help.sections.fields.table.type" => "Typ"
          "admin.coupons.help.sections.fields.title" => "Feldreferenz: Coupon"
          "admin.coupons.help.sections.fields.types.boolean" => "Boolean"
          "admin.coupons.help.sections.fields.types.date" => "Datum/Zeit"
          "admin.coupons.help.sections.fields.types.enum" => "Enum"
          "admin.coupons.help.sections.fields.types.float" => "Dezimal"
          "admin.coupons.help.sections.fields.types.integer" => "Integer"
          "admin.coupons.help.sections.fields.types.text" => "Text"
          "admin.coupons.help.sections.fields.usage_text" => "Pro Benutzer und Gutschein wird in <code>coupon_usage</code> genau ein Datensatz mit <code>coupon_id</code>, <code>user_key</code>, <code>used_count</code>, <code>created_at</code> und <code>updated_at</code> geführt."
          "admin.coupons.help.sections.fields.usage_title" => "CouponUsage (Einlösungsprotokoll)"
          "admin.coupons.help.sections.overview.intro" => "Das Gutschein-Modul ermöglicht das Erstellen und Verwalten von Rabattcodes für den Shop. Kunden geben den Code im Checkout ein und erhalten den passenden Rabatt oder Gratis-Versand."
          "admin.coupons.help.sections.overview.permissions_label" => "Berechtigungen:"
          "admin.coupons.help.sections.overview.permissions_text" => "<code>ROLE_ADMIN_COUPON_MANAGE</code> auf Klassen-Ebene plus granular <code>LIST</code>, <code>ADD</code>, <code>EDIT</code> und <code>DELETE</code>."
          "admin.coupons.help.sections.overview.title" => "Überblick"
          "admin.coupons.help.sections.redeem.bullets.params" => "Body-Felder: <code>code</code>, <code>orderTotal</code> und optional <code>userKey</code>."
          "admin.coupons.help.sections.redeem.bullets.response" => "Antwort: <code>valid</code>, <code>discount</code>, <code>newTotal</code>, optional <code>error</code> und <code>coupon</code>."
          "admin.coupons.help.sections.redeem.bullets.route" => "API-Route: <code>POST /api/coupon/validate</code> (ApiCouponController)."
          "admin.coupons.help.sections.redeem.bullets.storage" => "Die eigentliche Einlösung erhöht <code>coupon.usedCount</code> und den zugehörigen Eintrag in <code>coupon_usage</code>."
          "admin.coupons.help.sections.redeem.intro" => "Kunden können Gutscheincodes im <strong>Checkout</strong> eingeben. Die Validierung läuft über die öffentliche Coupon-API."
          "admin.coupons.help.sections.redeem.title" => "Einlösung im Shop"
          "admin.coupons.help.sections.types.rows.fixed.effect" => "Fester Euro-Betrag wird vom Bestellwert abgezogen."
          "admin.coupons.help.sections.types.rows.fixed.example" => "-10,00 €"
          "admin.coupons.help.sections.types.rows.fixed.value" => "Betrag in €, z. B. 10.00"
          "admin.coupons.help.sections.types.rows.free_shipping.effect" => "Versandkosten werden extern auf 0 gesetzt."
          "admin.coupons.help.sections.types.rows.free_shipping.example" => "Gratis-Versand"
          "admin.coupons.help.sections.types.rows.free_shipping.value" => "-"
          "admin.coupons.help.sections.types.rows.percent.effect" => "Rabatt auf den Warenkorbwert."
          "admin.coupons.help.sections.types.rows.percent.example" => "20 % Rabatt"
          "admin.coupons.help.sections.types.rows.percent.value" => "Prozentzahl, z. B. 20"
          "admin.coupons.help.sections.types.table.effect" => "Wirkung"
          "admin.coupons.help.sections.types.table.example" => "Beispiel"
          "admin.coupons.help.sections.types.table.type" => "Typ"
          "admin.coupons.help.sections.types.table.value" => "Wert"
          "admin.coupons.help.sections.types.title" => "Gutschein-Typen"
          "admin.coupons.help.title" => "Hilfe: Gutscheine & Rabatte"
          "admin.coupons.index.api.endpoint_label" => "Endpoint:"
          "admin.coupons.index.api.required_fields_label" => "Pflichtfelder:"
          "admin.coupons.index.api.response_label" => "Antwort:"
          "admin.coupons.index.api.title" => "API-Endpunkt (Kassen-Integration)"
          "admin.coupons.index.api.user_limit_label" => "Bei Benutzerlimit:"
          "admin.coupons.index.api.user_limit_text" => "mitsenden, z. B. Kunden-ID oder E-Mail-Hash"
          "admin.coupons.index.columns.actions" => "Aktionen"
          "admin.coupons.index.columns.code" => "Code"
          "admin.coupons.index.columns.min_order_amount" => "Min. Bestellwert"
          "admin.coupons.index.columns.name" => "Name"
          "admin.coupons.index.columns.status" => "Status"
          "admin.coupons.index.columns.type" => "Typ"
          "admin.coupons.index.columns.usage" => "Nutzung"
          "admin.coupons.index.columns.validity" => "Gültigkeit"
          "admin.coupons.index.columns.value" => "Wert"
          "admin.coupons.index.delete_confirm" => "Gutschein "%code%" wirklich löschen?"
          "admin.coupons.index.empty" => "Keine Gutscheine gefunden."
          "admin.coupons.index.filters.all_status" => "Alle Status"
          "admin.coupons.index.filters.all_types" => "Alle Typen"
          "admin.coupons.index.filters.search_placeholder" => "Code, Name ..."
          "admin.coupons.index.help_title" => "Hilfe zu diesem Modul"
          "admin.coupons.index.invalid_hint" => "Abgelaufen oder Nutzungslimit erreicht"
          "admin.coupons.index.kpi.active" => "Aktiv"
          "admin.coupons.index.kpi.expiring_soon" => "Laufen bald ab"
          "admin.coupons.index.kpi.total" => "Gutscheine gesamt"
          "admin.coupons.index.kpi.total_redemptions" => "Einlösungen gesamt"
          "admin.coupons.index.list_count" => "%count% Einträge"
          "admin.coupons.index.list_title" => "Gutscheine"
          "admin.coupons.index.min_order_from" => "ab %amount% €"
          "admin.coupons.index.modal.title" => "Löschen bestätigen"
          "admin.coupons.index.page_title" => "Gutscheine & Rabatte"
          "admin.coupons.index.usage_limit" => "Limit/User: %count%"
          "admin.coupons.index.usage_total" => "Gesamt: %count%"
          "admin.coupons.index.usage_unlimited" => "Limit/User: unbegrenzt"
          "admin.coupons.index.valid_from" => "Von: %date%"
          "admin.coupons.index.valid_until" => "Bis: %date%"
          "admin.coupons.index.validity_unlimited" => "Unbegrenzt"
          "admin.coupons.index.value_not_applicable" => "-"
          "admin.coupons.nav.menu" => "Gutscheine"
          "admin.coupons.nav.submenu" => "Gutschein-Manager"
          "admin.coupons.notifications.activated" => "Gutschein "%code%" wurde aktiviert."
          "admin.coupons.notifications.code_empty" => "Der Code darf nicht leer sein."
          "admin.coupons.notifications.code_exists" => "Dieser Code existiert bereits."
          "admin.coupons.notifications.created" => "Gutschein "%code%" wurde angelegt."
          "admin.coupons.notifications.csrf_invalid" => "Ungültiges CSRF-Token."
          "admin.coupons.notifications.deactivated" => "Gutschein "%code%" wurde deaktiviert."
          "admin.coupons.notifications.deleted" => "Gutschein "%code%" wurde gelöscht."
          "admin.coupons.notifications.updated" => "Gutschein "%code%" wurde gespeichert."
          "admin.coupons.status.active" => "Aktiv"
          "admin.coupons.status.inactive" => "Inaktiv"
          "admin.coupons.types.fixed" => "Festbetrag (€)"
          "admin.coupons.types.free_shipping" => "Gratis-Versand"
          "admin.coupons.types.percent" => "Prozent (%)"
          "admin.customer.form.create_title" => "Shop-Kunde anlegen"
          "admin.customer.form.edit_title" => "Shop-Kunde bearbeiten"
          "admin.customer.form.fields.address" => "Adresse"
          "admin.customer.form.fields.city" => "Stadt"
          "admin.customer.form.fields.email" => "E-Mail"
          "admin.customer.form.fields.name" => "Name"
          "admin.customer.form.fields.phone" => "Telefon"
          "admin.customer.form.fields.wishlist" => "Wunschliste"
          "admin.customer.form.fields.zip" => "PLZ"
          "admin.customer.form.panel_title" => "Formular"
          "admin.customer.form.subtitle" => "Stammdaten und Kontaktdaten zentral pflegen."
          "admin.customer.list.columns.actions" => "Aktionen"
          "admin.customer.list.columns.address" => "Adresse"
          "admin.customer.list.columns.city" => "Stadt"
          "admin.customer.list.columns.email" => "E-Mail"
          "admin.customer.list.columns.id" => "ID"
          "admin.customer.list.columns.name" => "Name"
          "admin.customer.list.columns.phone" => "Telefon"
          "admin.customer.list.columns.wishlist" => "Wunschliste"
          "admin.customer.list.columns.zip" => "PLZ"
          "admin.customer.list.create" => "Shop-Kunde anlegen"
          "admin.customer.list.delete_message" => "Kunde "%name%" wirklich löschen?"
          "admin.customer.list.empty" => "Keine Shop-Kunden vorhanden."
          "admin.customer.list.panel_title" => "Shop-Kundenliste"
          "admin.customer.list.subtitle" => "Verwalte Shop-Kundenstammdaten und Kontaktinformationen."
          "admin.customer.list.title" => "Shop-Kunden"
          "admin.customer.notifications.created" => "Kunde wurde angelegt."
          "admin.customer.notifications.deleted" => "Kunde wurde gelöscht."
          "admin.customer.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.customer.notifications.updated" => "Kunde wurde gespeichert."
          "admin.dashboard_phase1.alerts.acknowledge" => "Quittieren"
          "admin.dashboard_phase1.alerts.action_acknowledge" => "quittieren"
          "admin.dashboard_phase1.alerts.action_resolve" => "lösen"
          "admin.dashboard_phase1.alerts.all_severities" => "Alle Severities"
          "admin.dashboard_phase1.alerts.bulk_confirm" => "%count% Hinweis(e) wirklich %action%?"
          "admin.dashboard_phase1.alerts.bulk_failed" => "Bulk-Aktion fehlgeschlagen."
          "admin.dashboard_phase1.alerts.bulk.acknowledge_all" => "Alle quittieren"
          "admin.dashboard_phase1.alerts.bulk.clear_selection" => "Auswahl aufheben"
          "admin.dashboard_phase1.alerts.bulk.resolve_all" => "Alle lösen"
          "admin.dashboard_phase1.alerts.bulk.selected" => "ausgewählt"
          "admin.dashboard_phase1.alerts.none" => "✅ Keine ungelösten Hinweise."
          "admin.dashboard_phase1.alerts.product_label" => "Produkt: %name%"
          "admin.dashboard_phase1.alerts.resolve" => "Lösen"
          "admin.dashboard_phase1.alerts.select_all" => "Alle auswählen"
          "admin.dashboard_phase1.alerts.unresolved_title" => "Ungelöste Alerts"
          "admin.dashboard_phase1.common.refresh" => "Aktualisieren"
          "admin.dashboard_phase1.digest.api_failed" => "Digest API fehlgeschlagen"
          "admin.dashboard_phase1.digest.failed" => "Tagesübersicht konnte nicht gesendet werden."
          "admin.dashboard_phase1.digest.sent" => "Tagesübersicht gesendet: %delivered%/%total% Zustellungen erfolgreich."
          "admin.dashboard_phase1.digest.skipped" => "Tagesübersicht wurde übersprungen."
          "admin.dashboard_phase1.feeds.back_to_management" => "Zur Feed-Verwaltung"
          "admin.dashboard_phase1.feeds.description" => "Google XML, Meta CSV, Idealo CSV, Geizhals CSV inklusive B2C/B2B Profilen"
          "admin.dashboard_phase1.feeds.headers.channel" => "Kanal"
          "admin.dashboard_phase1.feeds.headers.items" => "Items"
          "admin.dashboard_phase1.feeds.headers.profile" => "Profil"
          "admin.dashboard_phase1.feeds.headers.source" => "Quelle"
          "admin.dashboard_phase1.feeds.headers.time" => "Zeit"
          "admin.dashboard_phase1.feeds.label" => "Kanal-Feeds:"
          "admin.dashboard_phase1.feeds.latest_exports_title" => "Letzte Feed-Exporte"
          "admin.dashboard_phase1.feeds.latest_runs" => "Letzte Runs:"
          "admin.dashboard_phase1.feeds.maintenance_completed" => "Feed-Wartung abgeschlossen: ok=%healthy%, veraltet=%stale%, fehlend=%missing%"
          "admin.dashboard_phase1.feeds.maintenance_confirm" => "Feed-Wartung jetzt starten? Es werden alle Feed-Dateien neu generiert."
          "admin.dashboard_phase1.feeds.maintenance_failed" => "Feed-Wartung fehlgeschlagen."
          "admin.dashboard_phase1.feeds.management" => "Feed Verwaltung"
          "admin.dashboard_phase1.feeds.no_exports" => "Noch keine Feed-Exporte protokolliert."
          "admin.dashboard_phase1.feeds.run_maintenance" => "Feed Maintenance starten"
          "admin.dashboard_phase1.imports.all_sources" => "Alle Quellen"
          "admin.dashboard_phase1.imports.all_statuses" => "Alle Status"
          "admin.dashboard_phase1.imports.changed_fields" => "Geänderte Felder (%count% gesamt, max. 20 angezeigt):"
          "admin.dashboard_phase1.imports.headers.changed" => "Geändert"
          "admin.dashboard_phase1.imports.headers.created" => "Erstellt"
          "admin.dashboard_phase1.imports.headers.date" => "Datum"
          "admin.dashboard_phase1.imports.headers.duration" => "Dauer (s)"
          "admin.dashboard_phase1.imports.headers.errors" => "Fehler"
          "admin.dashboard_phase1.imports.headers.field" => "Feld"
          "admin.dashboard_phase1.imports.headers.message" => "Meldung"
          "admin.dashboard_phase1.imports.headers.new" => "Neu"
          "admin.dashboard_phase1.imports.headers.note" => "Notiz"
          "admin.dashboard_phase1.imports.headers.old" => "Alt"
          "admin.dashboard_phase1.imports.headers.record" => "Datensatz"
          "admin.dashboard_phase1.imports.headers.source" => "Quelle"
          "admin.dashboard_phase1.imports.headers.status" => "Status"
          "admin.dashboard_phase1.imports.headers.time" => "Zeit"
          "admin.dashboard_phase1.imports.load_details_failed" => "Fehler beim Laden der Details."
          "admin.dashboard_phase1.imports.no_details" => "Keine weiteren Details vorhanden."
          "admin.dashboard_phase1.imports.title" => "Import-Historie (Letzte 20)"
          "admin.dashboard_phase1.meta.title" => "Phase-1-Monitoring-Dashboard"
          "admin.dashboard_phase1.page.title" => "Monitoring & Datenqualität"
          "admin.dashboard_phase1.pricing.active_guards" => "aktive Guards"
          "admin.dashboard_phase1.pricing.active_rules" => "aktive Regeln"
          "admin.dashboard_phase1.pricing.daily_digest" => "Daily Digest senden"
          "admin.dashboard_phase1.pricing.dry_run_completed" => "Preis-Testlauf abgeschlossen: %changed% von %checked% Produkten wurden angepasst."
          "admin.dashboard_phase1.pricing.dry_run_failed" => "Preis-Testlauf fehlgeschlagen."
          "admin.dashboard_phase1.pricing.label" => "Pricing Engine:"
          "admin.dashboard_phase1.pricing.live_apply_completed" => "Preis-Live-Ausführung abgeschlossen: %changed% von %checked% Produkten angepasst."
          "admin.dashboard_phase1.pricing.live_apply_failed" => "Preis-Live-Ausführung fehlgeschlagen."
          "admin.dashboard_phase1.pricing.live_confirm" => "Live-Ausführung wirklich starten? Es werden SpecialPrice-Werte aktualisiert."
          "admin.dashboard_phase1.pricing.management" => "Pricing Verwaltung"
          "admin.dashboard_phase1.pricing.total_rules" => "gesamt"
          "admin.dashboard_phase1.quality.all_good" => "✅ Alle Produkte haben gute Qualität!"
          "admin.dashboard_phase1.quality.all_levels" => "Alle Level"
          "admin.dashboard_phase1.quality.confirm_recalculate" => "Qualitäts-Scores für alle Produkte neu berechnen?"
          "admin.dashboard_phase1.quality.critical_issues_title" => "Kritische Mängel"
          "admin.dashboard_phase1.quality.distribution_title" => "Qualitäts-Verteilung"
          "admin.dashboard_phase1.quality.edit" => "Bearbeiten"
          "admin.dashboard_phase1.quality.labels.critical" => "Kritisch"
          "admin.dashboard_phase1.quality.labels.excellent" => "Ausgezeichnet"
          "admin.dashboard_phase1.quality.labels.good" => "Gut"
          "admin.dashboard_phase1.quality.labels.high" => "Hoch"
          "admin.dashboard_phase1.quality.labels.medium" => "Mittel"
          "admin.dashboard_phase1.quality.low_quality_title" => "Produkte mit niedriger Qualität (<%minScore%)"
          "admin.dashboard_phase1.quality.min_score_title" => "Min Score"
          "admin.dashboard_phase1.quality.recalculate" => "Neu berechnen"
          "admin.dashboard_phase1.quality.recalculate_failed" => "Fehler beim Neuberechnen!"
          "admin.dashboard_phase1.quality.recalculated" => "✅ %count% Produkte neu bewertet!"
          "admin.dashboard_phase1.quality.search_placeholder" => "Produkt suchen..."
          "admin.dashboard_phase1.seo.api_failed" => "SEO API fehlgeschlagen"
          "admin.dashboard_phase1.seo.apply_completed" => "%mode%: %updatedCategories% Kategorien aktualisiert, %createdSeoMeta% SEO-Meta neu angelegt."
          "admin.dashboard_phase1.seo.automation_failed" => "SEO-Automatisierung fehlgeschlagen"
          "admin.dashboard_phase1.seo.category_description_template" => "Kategorie Description-Template"
          "admin.dashboard_phase1.seo.category_title_template" => "Kategorie Titel-Template"
          "admin.dashboard_phase1.seo.empty_value" => "leer"
          "admin.dashboard_phase1.seo.issue_headers.canonical_current" => "Canonical aktuell"
          "admin.dashboard_phase1.seo.issue_headers.canonical_expected" => "Canonical erwartet"
          "admin.dashboard_phase1.seo.issue_headers.category" => "Kategorie"
          "admin.dashboard_phase1.seo.issue_headers.redirect_suggestion" => "301-Vorschlag"
          "admin.dashboard_phase1.seo.live_confirm" => "Live-Ausführung starten? SEO-Meta-Daten werden dauerhaft aktualisiert."
          "admin.dashboard_phase1.seo.mode_live_apply" => "Live-Ausführung"
          "admin.dashboard_phase1.seo.mode_test_run" => "Testlauf"
          "admin.dashboard_phase1.seo.no_issues" => "Keine SEO-Auffälligkeiten in den Top-Treffern gefunden."
          "admin.dashboard_phase1.seo.preview_load_failed" => "SEO-Preview konnte nicht geladen werden."
          "admin.dashboard_phase1.seo.redirect_queue_title" => "301 Redirect Queue"
          "admin.dashboard_phase1.seo.redirect_queue.headers.action" => "Aktion"
          "admin.dashboard_phase1.seo.redirect_queue.headers.from" => "From"
          "admin.dashboard_phase1.seo.redirect_queue.headers.reason" => "Reason"
          "admin.dashboard_phase1.seo.redirect_queue.headers.source" => "Quelle"
          "admin.dashboard_phase1.seo.redirect_queue.headers.to" => "To"
          "admin.dashboard_phase1.seo.redirect_queue.load_failed" => "Redirect Queue konnte nicht geladen werden."
          "admin.dashboard_phase1.seo.redirect_queue.mark_done" => "Erledigt"
          "admin.dashboard_phase1.seo.redirect_queue.mark_done_alert_failed" => "Redirect-Warteschlangen-Eintrag konnte nicht als erledigt markiert werden."
          "admin.dashboard_phase1.seo.redirect_queue.mark_done_failed" => "Als erledigt markieren fehlgeschlagen"
          "admin.dashboard_phase1.seo.redirect_queue.none" => "Keine offenen Redirect-Empfehlungen."
          "admin.dashboard_phase1.seo.redirect_queue.refresh_failed" => "Redirect Queue refresh fehlgeschlagen"
          "admin.dashboard_phase1.seo.refresh_preview" => "Preview aktualisieren"
          "admin.dashboard_phase1.seo.refresh_queue" => "Queue refreshen"
          "admin.dashboard_phase1.seo.save_failed" => "SEO-Vorlagen konnten nicht gespeichert werden."
          "admin.dashboard_phase1.seo.save_success" => "SEO-Vorlagen wurden gespeichert."
          "admin.dashboard_phase1.seo.save_templates" => "Templates speichern"
          "admin.dashboard_phase1.seo.summary.canonical_updates" => "Canonical-Aktualisierungen"
          "admin.dashboard_phase1.seo.summary.checked_categories" => "Geprüfte Kategorien"
          "admin.dashboard_phase1.seo.summary.duplicate_product_slugs" => "Doppelte Produkt-Slugs"
          "admin.dashboard_phase1.seo.summary.redirect_suggestions" => "Redirect-Empfehlungen"
          "admin.dashboard_phase1.seo.title" => "SEO Automation 2.0"
          "admin.dashboard_phase1.summary.critical.hint" => "Ungelöst"
          "admin.dashboard_phase1.summary.critical.title" => "Kritische Alerts"
          "admin.dashboard_phase1.summary.import.hint" => "Status"
          "admin.dashboard_phase1.summary.import.title" => "Letzter Import"
          "admin.dashboard_phase1.summary.quality.hint" => "Durchschnitt"
          "admin.dashboard_phase1.summary.quality.title" => "Qualitäts-Score"
          "admin.dashboard_phase1.summary.warning.hint" => "In den letzten 24h"
          "admin.dashboard_phase1.summary.warning.title" => "Warnungen"
          "admin.dashboard_phase1.suspicious.acknowledge" => "Quittieren"
          "admin.dashboard_phase1.suspicious.acknowledge_alert_failed" => "Hinweis konnte nicht quittiert werden."
          "admin.dashboard_phase1.suspicious.acknowledge_failed" => "Quittieren fehlgeschlagen"
          "admin.dashboard_phase1.suspicious.headers.action" => "Aktion"
          "admin.dashboard_phase1.suspicious.headers.date" => "Datum"
          "admin.dashboard_phase1.suspicious.headers.message" => "Meldung"
          "admin.dashboard_phase1.suspicious.headers.product" => "Produkt"
          "admin.dashboard_phase1.suspicious.headers.source" => "Quelle"
          "admin.dashboard_phase1.suspicious.headers.status" => "Status"
          "admin.dashboard_phase1.suspicious.load_failed" => "Fehler beim Laden der Preis-Schutzdaten."
          "admin.dashboard_phase1.suspicious.no_recent_prices" => "✅ Keine auffälligen Preise in den letzten Treffern."
          "admin.dashboard_phase1.suspicious.open_cases_hint" => "Ungelöste unplausible Preise"
          "admin.dashboard_phase1.suspicious.open_cases_title" => "Preis-Schutzfälle (offen)"
          "admin.dashboard_phase1.suspicious.recent_title" => "Letzte Suspicious-Preis-Treffer"
          "admin.dashboard_phase1.suspicious.resolve" => "Lösen"
          "admin.dashboard_phase1.suspicious.resolve_alert_failed" => "Hinweis konnte nicht abgeschlossen werden."
          "admin.dashboard_phase1.suspicious.resolve_failed" => "Abschließen fehlgeschlagen"
          "admin.dashboard_phase1.suspicious.source_filter.all" => "Alle Quellen"
          "admin.dashboard_phase1.suspicious.source_filter.import" => "Import"
          "admin.dashboard_phase1.suspicious.source_filter.pricing" => "Pricing"
          "admin.dashboard_phase1.suspicious.status_filter.all" => "Alle"
          "admin.dashboard_phase1.suspicious.status_filter.open" => "Nur offen"
          "admin.dashboard_phase1.tabs.alerts" => "Alerts (Echtzeit)"
          "admin.dashboard_phase1.tabs.imports" => "Import-Historie"
          "admin.dashboard_phase1.tabs.quality" => "Datenqualität"
          "admin.dashboard.api.errors.import_log_not_found" => "Import-Protokoll wurde nicht gefunden."
          "admin.dashboard.catalog.descriptions.calendar_mini" => "Mini-Kalender mit Buchungsdichte, Anreisen und Abreisen pro Tag."
          "admin.dashboard.catalog.descriptions.quick_links" => "Persönliche Schnelllinks mit integrierter Verwaltung."
          "admin.dashboard.catalog.descriptions.recent_orders" => "Die zuletzt eingegangenen Bestellungen."
          "admin.dashboard.catalog.descriptions.stats_bookings" => "Aktive Aufenthalte, heutige Anreisen und Buchungen der nächsten sieben Tage."
          "admin.dashboard.catalog.descriptions.stats_customers" => "Kundenzahl gesamt und neue Kunden diesen Monat."
          "admin.dashboard.catalog.descriptions.stats_products" => "Aktive Produkte, Niedrigbestand und ausverkaufte Artikel im Überblick."
          "admin.dashboard.catalog.descriptions.stats_revenue" => "Umsatz aus konvertierten Shop-Bestellungen mit korrekter Zeitbasis über den Bestellstatus."
          "admin.dashboard.catalog.descriptions.support_tickets" => "Offene Support-Tickets und aktueller Status."
          "admin.dashboard.catalog.descriptions.todo" => "Persistente persönliche Aufgabenliste für Admins."
          "admin.dashboard.catalog.descriptions.upcoming_bookings" => "Tabelle der nächsten anstehenden Buchungen."
          "admin.dashboard.catalog.descriptions.welcome" => "Willkommens-Banner mit Datum und Nutzername."
          "admin.dashboard.live.booking_table.apartment" => "Wohnung"
          "admin.dashboard.live.booking_table.arrival" => "Anreise"
          "admin.dashboard.live.booking_table.departure" => "Abreise"
          "admin.dashboard.live.booking_table.empty" => "Keine kommenden Buchungen."
          "admin.dashboard.live.booking_table.guest" => "Gast"
          "admin.dashboard.live.booking_table.open_apartment" => "Apartment"
          "admin.dashboard.live.booking_table.open_booking" => "Buchung"
          "admin.dashboard.live.booking_table.status" => "Status"
          "admin.dashboard.live.common.open_module" => "Modul öffnen"
          "admin.dashboard.live.order_table.customer" => "Kunde"
          "admin.dashboard.live.order_table.date" => "Datum"
          "admin.dashboard.live.order_table.edit_order" => "Bearbeiten"
          "admin.dashboard.live.order_table.empty" => "Keine Bestellungen."
          "admin.dashboard.live.order_table.number" => "Bestellung"
          "admin.dashboard.live.order_table.open_order" => "Details"
          "admin.dashboard.live.order_table.status" => "Status"
          "admin.dashboard.live.order_table.total" => "Gesamt"
          "admin.dashboard.live.order_table.unknown_customer" => "Kunde unbekannt"
          "admin.dashboard.live.stats.bookings_active_now" => "Aktiv vor Ort"
          "admin.dashboard.live.stats.bookings_arrivals_today" => "Anreisen heute"
          "admin.dashboard.live.stats.bookings_sub" => "%confirmed% bestätigt · %today% heute"
          "admin.dashboard.live.stats.bookings_total" => "Buchungen gesamt"
          "admin.dashboard.live.stats.bookings_upcoming_week" => "Nächste 7 Tage"
          "admin.dashboard.live.stats.customers_new_month" => "Neu im Monat"
          "admin.dashboard.live.stats.customers_total" => "Kunden gesamt"
          "admin.dashboard.live.stats.open_tickets" => "Offene Tickets"
          "admin.dashboard.live.stats.products_active" => "Aktiv"
          "admin.dashboard.live.stats.products_low_stock" => "Niedrigbestand"
          "admin.dashboard.live.stats.products_out_of_stock" => "Ausverkauft"
          "admin.dashboard.live.stats.products_total" => "Produkte gesamt"
          "admin.dashboard.live.stats.revenue_avg_order" => "Ø Bestellwert"
          "admin.dashboard.live.stats.revenue_last_30_days" => "Letzte 30 Tage"
          "admin.dashboard.live.stats.revenue_month" => "Umsatz im Monat"
          "admin.dashboard.live.stats.revenue_orders" => "Bestellungen"
          "admin.dashboard.live.stats.revenue_total" => "Gesamtumsatz"
          "admin.dashboard.live.support_tickets.empty" => "Keine Tickets vorhanden."
          "admin.dashboard.live.support_tickets.open_ticket" => "Ticket"
          "admin.dashboard.live.support_tickets.related_order" => "Warenkorb"
          "admin.dashboard.modal.active_badge" => "Aktiv"
          "admin.dashboard.modal.active_hint" => "Dieses Widget ist bereits aktiv. Du kannst es trotzdem erneut hinzufügen."
          "admin.dashboard.modal.add" => "Hinzufügen"
          "admin.dashboard.modal.cancel" => "Abbrechen"
          "admin.dashboard.modal.footer_info" => "Aktive Widgets können erneut hinzugefügt werden."
          "admin.dashboard.modal.search_placeholder" => "Widget suchen ..."
          "admin.dashboard.modal.size_label" => "Größe wählen:"
          "admin.dashboard.modal.subtitle" => "Widget auswählen und zum Dashboard hinzufügen"
          "admin.dashboard.modal.title" => "Widget-Bibliothek"
          "admin.dashboard.page.add_widget" => "Widget hinzufügen"
          "admin.dashboard.page.help" => "Hilfe"
          "admin.dashboard.page.help_title" => "Hilfe & Dokumentation"
          "admin.dashboard.page.layout_saved" => "Gespeichert"
          "admin.dashboard.page.title" => "Dashboard"
          "admin.dashboard.page.toggle_fixed" => "Fest"
          "admin.dashboard.page.toggle_movable" => "Bewegbar"
          "admin.dashboard.sizes.full" => "Voll (1/1)"
          "admin.dashboard.sizes.large" => "Groß (2/3)"
          "admin.dashboard.sizes.medium" => "Mittel (1/2)"
          "admin.dashboard.sizes.short_full" => "Voll"
          "admin.dashboard.sizes.short_large" => "Groß"
          "admin.dashboard.sizes.short_medium" => "Mittel"
          "admin.dashboard.sizes.short_small" => "Klein"
          "admin.dashboard.sizes.small" => "Klein (1/3)"
          "admin.dashboard.statuses.cancelled" => "Storniert"
          "admin.dashboard.statuses.completed" => "Abgeschlossen"
          "admin.dashboard.statuses.confirmed" => "Bestätigt"
          "admin.dashboard.statuses.delivered" => "Geliefert"
          "admin.dashboard.statuses.open" => "Offen"
          "admin.dashboard.statuses.ordered" => "Bestellt"
          "admin.dashboard.statuses.paid" => "Bezahlt"
          "admin.dashboard.statuses.pending" => "Ausstehend"
          "admin.dashboard.statuses.processing" => "In Bearbeitung"
          "admin.dashboard.statuses.shipped" => "Versendet"
          "admin.dashboard.widget_actions.delete" => "Entfernen"
          "admin.dashboard.widget_actions.delete_confirm" => "Widget wirklich entfernen?"
          "admin.dashboard.widgets.calendar_mini.current_month" => "Aktueller Monat"
          "admin.dashboard.widgets.calendar_mini.legend.arrivals" => "Anreise"
          "admin.dashboard.widgets.calendar_mini.legend.bookings" => "Belegt"
          "admin.dashboard.widgets.calendar_mini.legend.departures" => "Abreise"
          "admin.dashboard.widgets.calendar_mini.open_calendar" => "Buchungskalender öffnen"
          "admin.dashboard.widgets.calendar_mini.to_calendar" => "Zum Kalender"
          "admin.dashboard.widgets.calendar_mini.weekdays.fri" => "Fr"
          "admin.dashboard.widgets.calendar_mini.weekdays.mon" => "Mo"
          "admin.dashboard.widgets.calendar_mini.weekdays.sat" => "Sa"
          "admin.dashboard.widgets.calendar_mini.weekdays.sun" => "So"
          "admin.dashboard.widgets.calendar_mini.weekdays.thu" => "Do"
          "admin.dashboard.widgets.calendar_mini.weekdays.tue" => "Di"
          "admin.dashboard.widgets.calendar_mini.weekdays.wed" => "Mi"
          "admin.dashboard.widgets.labels.calendar_mini" => "Kalenderübersicht"
          "admin.dashboard.widgets.labels.quick_links" => "Schnelllinks"
          "admin.dashboard.widgets.labels.recent_orders" => "Letzte Bestellungen"
          "admin.dashboard.widgets.labels.stats_bookings" => "Buchungen (Statistik)"
          "admin.dashboard.widgets.labels.stats_customers" => "Kunden (Statistik)"
          "admin.dashboard.widgets.labels.stats_products" => "Produkte (Statistik)"
          "admin.dashboard.widgets.labels.stats_revenue" => "Umsatz (Statistik)"
          "admin.dashboard.widgets.labels.support_tickets" => "Support-Tickets"
          "admin.dashboard.widgets.labels.todo" => "Aufgabenliste"
          "admin.dashboard.widgets.labels.upcoming_bookings" => "Kommende Buchungen"
          "admin.dashboard.widgets.labels.welcome" => "Willkommens-Banner"
          "admin.dashboard.widgets.quick_links.add" => "Link hinzufügen"
          "admin.dashboard.widgets.quick_links.calendar" => "Kalender"
          "admin.dashboard.widgets.quick_links.cancel" => "Abbrechen"
          "admin.dashboard.widgets.quick_links.dashboard" => "Dashboard"
          "admin.dashboard.widgets.quick_links.empty" => "Noch keine Schnelllinks hinterlegt."
          "admin.dashboard.widgets.quick_links.helper" => "Interne Ziele beginnen mit /. Externe Links mit https://."
          "admin.dashboard.widgets.quick_links.icon_placeholder" => "Iconklasse, z. B. fa-calendar"
          "admin.dashboard.widgets.quick_links.label_placeholder" => "Bezeichnung"
          "admin.dashboard.widgets.quick_links.manage" => "Links bearbeiten"
          "admin.dashboard.widgets.quick_links.manage_widgets" => "Widgets verwalten"
          "admin.dashboard.widgets.quick_links.save" => "Links speichern"
          "admin.dashboard.widgets.quick_links.url_placeholder" => "Ziel-URL"
          "admin.dashboard.widgets.todo.add" => "Aufgabe hinzufügen"
          "admin.dashboard.widgets.todo.check_bookings" => "Neue Buchungen prüfen"
          "admin.dashboard.widgets.todo.empty" => "Keine Aufgaben vorhanden."
          "admin.dashboard.widgets.todo.helper" => "Aufgaben werden direkt im Dashboard gespeichert."
          "admin.dashboard.widgets.todo.input_placeholder" => "Neue Aufgabe notieren ..."
          "admin.dashboard.widgets.todo.plan_newsletter" => "Newsletter-Kampagne planen"
          "admin.dashboard.widgets.todo.update_product_images" => "Produktbilder aktualisieren"
          "admin.dashboard.widgets.welcome.greeting" => "Willkommen, %name%!"
          "admin.dashboard.widgets.welcome.today_is" => "Heute ist %date%"
          "admin.feed.config.category_map_placeholder" => "Leuchten=Haus & Garten > Beleuchtung"
          "admin.feed.config.fields.b2b_discount" => "B2B-Rabatt %"
          "admin.feed.config.fields.category_map" => "Kategorie-Mapping (je Zeile: Quelle=Ziel)"
          "admin.feed.config.fields.geizhals_adjustment" => "Geizhals-Anpassung %"
          "admin.feed.config.fields.geizhals_title_max" => "Geizhals-Titel max."
          "admin.feed.config.fields.google_adjustment" => "Google-Anpassung %"
          "admin.feed.config.fields.google_title_max" => "Google-Titel max."
          "admin.feed.config.fields.idealo_adjustment" => "Idealo-Anpassung %"
          "admin.feed.config.fields.idealo_title_max" => "Idealo-Titel max."
          "admin.feed.config.fields.meta_adjustment" => "Meta-Anpassung %"
          "admin.feed.config.fields.meta_title_max" => "Meta-Titel max."
          "admin.feed.config.hint" => "Negative Kanalwerte senken, positive Werte erhöhen den Kanalpreis. Titel werden pro Kanal automatisch gekürzt. Kategorie-Mapping arbeitet auf Teilstring-Basis."
          "admin.feed.config.reload" => "Neu laden"
          "admin.feed.config.title" => "Preisprofil-Konfiguration"
          "admin.feed.controls.channel" => "Kanal"
          "admin.feed.controls.channels.geizhals" => "Geizhals (CSV)"
          "admin.feed.controls.channels.google" => "Google Shopping (XML)"
          "admin.feed.controls.channels.idealo" => "Idealo (CSV)"
          "admin.feed.controls.channels.meta" => "Meta Catalog (CSV)"
          "admin.feed.controls.download" => "Feed herunterladen"
          "admin.feed.controls.limit" => "Limit"
          "admin.feed.controls.load_preview" => "Vorschau laden"
          "admin.feed.controls.profile" => "Preisprofil"
          "admin.feed.heading" => "Product Feed Hub"
          "admin.feed.health.check" => "Prüfen"
          "admin.feed.health.checked_at" => "Letzte Prüfung: %time% | Grenzwert: %hours%h"
          "admin.feed.health.checking" => "Prüfe Feed-Frische mit Grenzwert %hours%h ..."
          "admin.feed.health.columns.age" => "Alter (h)"
          "admin.feed.health.columns.channel" => "Kanal"
          "admin.feed.health.columns.items" => "Einträge"
          "admin.feed.health.columns.profile" => "Profil"
          "admin.feed.health.columns.source" => "Quelle"
          "admin.feed.health.columns.status" => "Status"
          "admin.feed.health.columns.time" => "Zeit"
          "admin.feed.health.empty" => "Noch keine Prüfung ausgeführt."
          "admin.feed.health.loading" => "Health-Daten werden geladen ..."
          "admin.feed.health.no_rows" => "Keine Health-Daten vorhanden."
          "admin.feed.health.statuses.healthy" => "Healthy"
          "admin.feed.health.statuses.missing" => "Missing"
          "admin.feed.health.statuses.stale" => "Stale"
          "admin.feed.health.title" => "Feed Health"
          "admin.feed.maintenance.empty" => "Noch kein Lauf ausgeführt."
          "admin.feed.maintenance.failed" => "Maintenance fehlgeschlagen."
          "admin.feed.maintenance.run" => "Alle Feeds neu generieren + Health prüfen"
          "admin.feed.maintenance.running" => "Maintenance läuft ..."
          "admin.feed.maintenance.success" => "Maintenance abgeschlossen: %count% Feed-Dateien generiert, Health healthy=%healthy%, stale=%stale%, missing=%missing%."
          "admin.feed.maintenance.title" => "One-Click-Maintenance"
          "admin.feed.notifications.config_save_failed" => "Feed-Konfiguration konnte nicht gespeichert werden."
          "admin.feed.notifications.config_saved" => "Feed-Konfiguration gespeichert."
          "admin.feed.page_title" => "Feed-Exporte"
          "admin.feed.preview.columns.b2b_price" => "B2B-Preis"
          "admin.feed.preview.columns.current_price_b2c" => "Aktueller Preis (B2C)"
          "admin.feed.preview.columns.geizhals_price" => "Geizhals-Preis"
          "admin.feed.preview.columns.google_price" => "Google-Preis"
          "admin.feed.preview.columns.id" => "ID"
          "admin.feed.preview.columns.idealo_price" => "Idealo-Preis"
          "admin.feed.preview.columns.link" => "Link"
          "admin.feed.preview.columns.meta_price" => "Meta-Preis"
          "admin.feed.preview.columns.title" => "Titel"
          "admin.feed.preview.empty" => "Noch keine Daten geladen."
          "admin.feed.preview.no_rows" => "Keine passenden Produkte."
          "admin.feed.preview.product_link" => "Produkt"
          "admin.feed.preview.title" => "Vorschau"
          "admin.feed.runs.columns.channel" => "Kanal"
          "admin.feed.runs.columns.format" => "Format"
          "admin.feed.runs.columns.items" => "Einträge"
          "admin.feed.runs.columns.profile" => "Profil"
          "admin.feed.runs.columns.source" => "Quelle"
          "admin.feed.runs.columns.target" => "Ziel"
          "admin.feed.runs.columns.time" => "Zeit"
          "admin.feed.runs.empty" => "Noch keine Runs geladen."
          "admin.feed.runs.no_rows" => "Keine Export-Runs vorhanden."
          "admin.feed.runs.refresh" => "Aktualisieren"
          "admin.feed.runs.title" => "Letzte Export-Runs"
          "admin.feed.subtitle" => "Google-, Meta-, Idealo- und Geizhals-Feeds zentral verwalten."
          "admin.feed.summary.preview_count" => "Einträge in der Vorschau"
          "admin.feed.summary.public_urls" => "Öffentliche Feed-URLs:"
          "admin.help.cms.actions.back" => "Zurück"
          "admin.help.cms.actions.module" => "Zum Modul"
          "admin.help.cms.navigation.items_html" => """
            <li class="mb-1"><a href="#seiten"><i class="fa fa-file-text"></i> Seiten (Pages)</a></li>\n
            <li class="mb-1"><a href="#builder-v2"><i class="fa fa-magic"></i> Page Builder v2</a></li>\n
            <li class="mb-1"><a href="#menues"><i class="fa fa-bars"></i> Menüs</a></li>\n
            <li class="mb-1"><a href="#slider"><i class="fa fa-picture-o"></i> Slider</a></li>\n
            <li class="mb-1"><a href="#widgets"><i class="fa fa-puzzle-piece"></i> Widgets</a></li>\n
            <li class="mb-1"><a href="#felder"><i class="fa fa-th-list"></i> Feldreferenz</a></li>\n
            <li class="mb-1"><a href="#rollen"><i class="fa fa-lock"></i> Rollen</a></li>
            """
          "admin.help.cms.navigation.title" => "Navigation"
          "admin.help.cms.page_title" => "Hilfe: CMS – Seiten, Menüs & Slider"
          "admin.help.cms.sections.builder.body_html" => """
            <p>Seiteninhalte werden im CMS über den Builder gepflegt. Der klassische <code>content</code>-Editor ist im Formular nicht mehr vorgesehen.</p>\n
            <h5>Workflow (Entwurf -> Veröffentlichung):</h5>\n
            <ol>\n
              <li>Seite öffnen: <code>/admin/page/edit/{id}</code></li>\n
              <li>Status im Bereich <strong>Seite</strong> setzen: <strong>Entwurf</strong> oder <strong>Öffentlich</strong></li>\n
              <li>Im Tab <strong>Builder</strong> auf <strong>Abschnitt hinzufügen</strong> klicken - ein Modal öffnet sich mit allen Typen</li>\n
              <li>Abschnitt auswählen, im rechten Editor konfigurieren</li>\n
              <li>Entwurf speichern</li>\n
              <li>Mit <strong>Veröffentlichen</strong> den Live-Stand aktualisieren</li>\n
            </ol>\n
            <div class="alert alert-warning">\n
              <i class="fa fa-bullhorn"></i>\n
              <strong>Wichtig:</strong> Ein gespeicherter Entwurf ist <strong>nicht öffentlich</strong>.\n
              Öffentlich sichtbar ist nur der veröffentlichte Stand. Mit <strong>Offline schalten</strong> wird die Seite wieder aus dem Frontend entfernt.\n
            </div>\n
            <h5>Verbesserte UX (v2.1):</h5>\n
            <ul>\n
              <li><strong>Dropdowns statt ID-Eingabe:</strong> Content-Block, Widget und Kategorie werden direkt per Dropdown aus dem System gewählt - keine IDs mehr notieren!</li>\n
              <li><strong>Bild-Upload:</strong> Bei Bild-Feldern (Hero, Bild+Text) kann eine Datei direkt hochgeladen werden (JPG/PNG/GIF/WebP, max. 5 MB). Alternativ URL manuell eingeben.</li>\n
              <li><strong>Bildposition:</strong> Links/Rechts per Dropdown wählbar</li>\n
              <li><strong>CTA-Variante:</strong> Primär/Dunkel/Hell per Dropdown</li>\n
              <li><strong>Newsletter-Abschnitt:</strong> Neuer Inline-Anmeldeblock mit Variante, Platzhalter und Hinweistext, fest angebunden an das vorhandene Newsletter-Abo</li>\n
              <li><strong>Kennzahlen-Abschnitt:</strong> AppStrap-inspirierte Counter-Karten mit Wert, Suffix, Label und optionalem Bildhintergrund</li>\n
              <li><strong>Beispielvorlagen:</strong> Für alle Abschnittstypen stehen eingebaute Beispielvorlagen direkt im Builder bereit</li>\n
              <li><strong>Status im Formular:</strong> Bereits beim Anlegen/Bearbeiten wird direkt zwischen <code>Entwurf</code> und <code>Öffentlich</code> gewählt</li>\n
            </ul>\n
            <h5>Abschnittstypen:</h5>\n
            <ul>\n
              <li><strong>Inhalt:</strong> <code>hero</code>, <code>text</code>, <code>image_text</code>, <code>cta_banner</code>, <code>newsletter</code>, <code>counter_cards</code>, <code>faq</code></li>\n
              <li><strong>Erweitert:</strong> <code>testimonials</code>, <code>pricing_table</code>, <code>icon_list</code>, <code>video</code></li>\n
              <li><strong>Einbindungen:</strong> <code>content_block</code> (Dropdown), <code>widget</code> (Dropdown), <code>product_grid</code> (Kategorie per Dropdown)</li>\n
              <li><strong>Sonstiges:</strong> <code>spacer</code>, <code>legacy_html</code></li>\n
            </ul>\n
            <div class="alert alert-info">\n
              <i class="fa fa-lightbulb-o"></i>\n
              <strong>Produkt-Grid Tipp:</strong> Bei <code>Anzahl Produkte = 1</code> rendert das Frontend eine Angebotsansicht mit großem Bild, Produktinfos, Warenkorb-/Wunschlisten-Buttons und B2B-Aktionen.\n
            </div>\n
            <h5>Sichtbarkeit pro Abschnitt:</h5>\n
            <ul>\n
              <li>Zielgruppe: <code>all</code>, <code>guests</code>, <code>logged_in</code></li>\n
              <li>Zeitfenster: sichtbar ab/bis</li>\n
              <li>Serverseitig ausgewertet beim Rendern</li>\n
            </ul>\n
            <h5>Revisionen:</h5>\n
            <ul>\n
              <li>Beim Anlegen, Speichern und Veröffentlichen wird automatisch ein Snapshot erstellt</li>\n
              <li>Aufruf: <code>/admin/page/{id}/revisions</code></li>\n
              <li>Funktionen: Wiederherstellen und Löschen</li>\n
              <li>Aufbewahrung: maximal 50 Revisionen je Seite</li>\n
            </ul>\n
            <h5>Abschnittsvorlagen:</h5>\n
            <ul>\n
              <li>Verwaltung: <code>/admin/section-templates</code></li>\n
              <li>Im Builder direkt einfügen</li>\n
              <li>Aktuellen Abschnitt als Vorlage speichern</li>\n
            </ul>\n
            <h5>Bild-Upload API:</h5>\n
            <div class="alert alert-info">\n
              <i class="fa fa-upload"></i> <code>POST /admin/page/api/upload-image</code> - Datei als <code>multipart/form-data</code> mit Feld <code>image</code>. Antwort: <code>{"url": "/uploads/pages/..."}</code>.<br>\n
              Bilder werden in <code>public/uploads/pages/</code> gespeichert.\n
            </div>
            """
          "admin.help.cms.sections.builder.title" => "Page Builder v2"
          "admin.help.cms.sections.fields.body_html" => """
            <table class="table table-bordered table-sm table-hover">\n
              <thead class="thead-light"><tr><th>Feld</th><th>Typ</th><th>Beschreibung</th></tr></thead>\n
              <tbody>\n
                <tr><td><code>title</code></td><td>Text</td><td>Seitentitel (H1 + Browser-Tab)</td></tr>\n
                <tr><td><code>slug</code></td><td>Text (unique)</td><td>URL-Pfad nach /page/</td></tr>\n
                <tr><td><code>content</code></td><td>HTML</td><td>Legacy-Datenbestand (nicht mehr im Formular gepflegt)</td></tr>\n
                <tr><td><code>pageTemplate</code></td><td>Text</td><td>Template-Auswahl der Seite</td></tr>\n
                <tr><td><code>builderSections</code></td><td>JSON</td><td>Aktueller Entwurf des Builders</td></tr>\n
                <tr><td><code>publishedSections</code></td><td>JSON</td><td>Live-Stand der zuletzt veröffentlichten Version</td></tr>\n
                <tr><td><code>isPublished</code></td><td>Boolean</td><td>Veröffentlichungsstatus</td></tr>\n
                <tr><td><code>publishedAt</code></td><td>DateTime</td><td>Zeitpunkt der Veröffentlichung</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.cms.sections.fields.title" => "Feldreferenz: Page"
          "admin.help.cms.sections.menus.body_html" => """
            <p>Das Menü-System verwaltet die Navigation des Shops.</p>\n
            <div class="row">\n
              <div class="col-md-6">\n
                <h5>Hauptnavigation (Header):</h5>\n
                <ul>\n
                  <li>Modul: <code>/admin/menu</code></li>\n
                  <li>Shop-Hauptmenü oben</li>\n
                  <li>Drag-and-Drop-Sortierung (<code>admin_menu_order</code>)</li>\n
                </ul>\n
              </div>\n
              <div class="col-md-6">\n
                <h5>Footer-Navigation:</h5>\n
                <ul>\n
                  <li>Modul: <code>/admin/footer-menu</code></li>\n
                  <li>Oberes Footer-Menü für Service- und Inhaltsgruppen</li>\n
                  <li>Untere Legal-Leiste für Impressum, Datenschutz, AGB, Widerruf und weitere Pflichtseiten</li>\n
                  <li>Berechtigung: <code>ROLE_ADMIN_FOOTER_MENU_MANAGE</code></li>\n
                </ul>\n
              </div>\n
            </div>\n
            <div class="row mt-2">\n
              <div class="col-md-6">\n
                <h5>Shop-Menü:</h5>\n
                <ul>\n
                  <li>Modul: <code>/admin/shop-menu</code></li>\n
                  <li>Berechtigung: <code>ROLE_ADMIN_SHOP_MENU_MANAGE</code></li>\n
                </ul>\n
              </div>\n
            </div>\n
            <h5>Menü-Eintrag anlegen:</h5>\n
            <ul>\n
              <li><code>label</code>: Anzeigename</li>\n
              <li><code>url</code> oder <code>route</code>: Ziel-URL oder Symfony-Route</li>\n
              <li><code>sortOrder</code>: Reihenfolge</li>\n
              <li><code>isActive</code>: Sichtbarkeit</li>\n
            </ul>
            """
          "admin.help.cms.sections.menus.title" => "Menüs verwalten"
          "admin.help.cms.sections.pages.body_html" => """
            <p>Statische Seiten (Impressum, AGB, Datenschutz, Über uns, etc.) werden über das Seiten-Modul verwaltet.</p>\n
            <ol>\n
              <li><strong>CMS -> Seiten -> + Neue Seite</strong></li>\n
              <li><strong>Titel</strong> eingeben</li>\n
              <li><strong>Slug</strong>: URL-freundlicher Bezeichner (z.B. <code>agb</code> -> erreichbar unter <code>/agb</code>)</li>\n
              <li><strong>Builder</strong>: Inhalte modular über den Tab <code>Builder</code> pflegen</li>\n
              <li>Optional: SEO-Titel und Meta-Description</li>\n
              <li><strong>Footer-Platzierung</strong>: Oberes Footer-Menü für Service-Spalten oder untere Legal-Leiste für rechtliche Pflichtseiten wählen</li>\n
              <li>Seite speichern und veröffentlichen</li>\n
            </ol>\n
            <h5>Spezielle System-Seiten:</h5>\n
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Slug</th><th>Inhalt</th></tr></thead>\n
              <tbody>\n
                <tr><td><code>impressum</code></td><td>Impressum</td></tr>\n
                <tr><td><code>agb</code></td><td>Allgemeine Geschäftsbedingungen</td></tr>\n
                <tr><td><code>datenschutzerklaerung</code></td><td>Datenschutzerklärung</td></tr>\n
                <tr><td><code>widerrufsbelehrung</code></td><td>Widerrufsbelehrung</td></tr>\n
                <tr><td><code>zahlungsarten</code></td><td>Zahlungsarten</td></tr>\n
                <tr><td><code>versandrichtlinien</code></td><td>Versandrichtlinien</td></tr>\n
                <tr><td><code>batteriegesetz</code></td><td>Batteriegesetz</td></tr>\n
              </tbody>\n
            </table>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Impressum und Datenschutz können als veröffentlichte Page-Builder-Seiten mit den Slugs <code>impressum</code> und <code>datenschutzerklaerung</code> gepflegt werden. Solange keine veröffentlichte Seite existiert, greift der alte Fallback-Inhalt.\n
            </div>\n
            <div class="alert alert-warning">\n
              <i class="fa fa-exclamation-triangle"></i> Seiten-Slugs nicht nachträglich ändern - Links aus externen Quellen und SEO-Rankings gehen verloren.\n
            </div>
            """
          "admin.help.cms.sections.pages.title" => "Seiten (Pages) verwalten"
          "admin.help.cms.sections.permissions.body_html" => """
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Modul</th><th>Berechtigung</th></tr></thead>\n
              <tbody>\n
                <tr><td>Seiten</td><td><code>ROLE_ADMIN_PAGE_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code> / <code>MANAGE</code></td></tr>\n
                <tr><td>Seiten veröffentlichen</td><td><code>ROLE_ADMIN_PAGE_PUBLISH</code></td></tr>\n
                <tr><td>Seiten-Revisionen</td><td><code>ROLE_ADMIN_PAGE_REVISIONS</code></td></tr>\n
                <tr><td>Abschnittsvorlagen</td><td><code>ROLE_ADMIN_SECTION_TEMPLATES</code></td></tr>\n
                <tr><td>Hauptmenü</td><td><code>ROLE_ADMIN_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
                <tr><td>Footer-Menü</td><td><code>ROLE_ADMIN_FOOTER_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
                <tr><td>Shop-Menü</td><td><code>ROLE_ADMIN_SHOP_MENU_LIST</code> / <code>MANAGE</code></td></tr>\n
                <tr><td>Slider</td><td><code>ROLE_ADMIN_SLIDER_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code></td></tr>\n
                <tr><td>Widgets</td><td><code>ROLE_ADMIN_WIDGET_LIST</code> / <code>ADD</code> / <code>EDIT</code> / <code>DELETE</code></td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.cms.sections.permissions.title" => "Berechtigungen"
          "admin.help.cms.sections.slider.body_html" => """
            <p>Das Slider-Modul arbeitet mit einem kuratierten NFOK-Layout-Katalog. Ein Slide besteht aus Layout, optionalem Kurzlabel, Überschrift, Text, template-spezifischen Zusatzinhalten, optionalem Bild, Grundfarbe und CTA.</p>\n
            <ol>\n
              <li><strong>CMS -> Slider -> + Neuer Slide</strong></li>\n
              <li><strong>Slider-Layout</strong> auswählen, z. B. Service Hero, Commerce Hero, Produktfokus oder Automation Flow</li>\n
              <li>Optionales <strong>Kurzlabel</strong> pflegen, wenn das gewählte Layout dieses Feld im Frontend ausgibt und oberhalb der Überschrift ein kleiner Hinweistext erscheinen soll</li>\n
              <li><strong>Überschrift</strong> und optionalen Begleittext eingeben</li>\n
              <li><strong>Template-Inhalte (JSON)</strong> pflegen, wenn das Layout zusätzliche Karten, Kennzahlen, Schritte, Produktboxen oder Referenzdaten ausgibt</li>\n
              <li><strong>Bild</strong> hochladen (empfohlen: breite Hero-Grafik ab 1600px Breite)</li>\n
              <li>Optional: <strong>Button-Text</strong> und <strong>Button-URL</strong></li>\n
              <li>Auf der gewünschten Seite <strong>Slider anzeigen</strong> aktivieren und dieselbe <strong>Slider-Variante</strong> wählen</li>\n
              <li>Speichern, veröffentlichen und im Frontend prüfen</li>\n
            </ol>\n
            <h5>Layout-Empfehlungen:</h5>\n
            <ul>\n
              <li><strong>NFOK Service Hero:</strong> ruhiger Haupt-Hero für Startseite, Leistungen, CMS, Beratung und NFOK.WORK-Positionierung</li>\n
              <li><strong>Commerce Hero:</strong> helle Shop-Bühne für Aktionen, Kategorien, Produktwelten, saisonale Kampagnen und direkte Kaufimpulse</li>\n
              <li><strong>Produktfokus:</strong> starke Produkt- oder Systemvorstellung mit Bildfokus, klarer CTA-Fläche und konzentrierter Botschaft</li>\n
              <li><strong>Feature Stack:</strong> strukturierte Präsentation für Module, Funktionen, technische Leistungsbausteine und mehrere Nutzenargumente</li>\n
              <li><strong>Trust & Kennzahlen:</strong> zentrierter Vertrauens-Hero für Kennzahlen, Betriebssicherheit, Verlässlichkeit, Datenschutz und Qualitätsversprechen</li>\n
              <li><strong>Technical Dark:</strong> dunkles technisches Layout für APIs, Backend, Integrationen, Datenimporte, Schnittstellen und Architekturthemen</li>\n
              <li><strong>Editorial Minimal:</strong> reduziertes Textlayout für klare Aussagen, Leitgedanken, Ankündigungen ohne Bilddominanz und ruhige redaktionelle Einstiege</li>\n
              <li><strong>Automation Flow:</strong> Prozess- und Workflow-Layout für Automatisierung, Jobs, Importketten, Systemlogik und wiederkehrende Abläufe</li>\n
              <li><strong>Case Study:</strong> Referenz-Layout für Projektergebnisse, Kundenstories, Vorher-Nachher-Erfolge und konkrete Umsetzungsbeispiele</li>\n
              <li><strong>Announcement Strip:</strong> kompakter Hinweis-Slider für Releases, Wartungshinweise, Aktionen, kurze News und zeitkritische Meldungen</li>\n
            </ul>\n
            <p>Alle sichtbaren Inhalte wie Kurzlabel, Überschrift, Text, Button, Modul-Karten, Kennzahlen, Prozess-Schritte und Hintergrundfarbe werden pro Slide gepflegt. Layouts dürfen keine festen Frontend-Texte erzwingen. Felder, die ein Layout nicht rendert, werden im Admin ausgeblendet.</p>\n
            <h5>Animation:</h5>\n
            <ul>\n
              <li>NFOK-Layouts nutzen dezente Einlaufanimationen für Kurzlabel, Überschrift, Text, CTA, Bild und Zusatzmodule.</li>\n
              <li>Die Animationen bleiben ruhig und professionell und respektieren reduzierte Bewegung in den Systemeinstellungen.</li>\n
              <li>Legacy Slider 1 bis 3 bleiben aus Kompatibilitätsgründen im alten Verhalten.</li>\n
            </ul>\n
            <div class="alert alert-info">\n
              <i class="fa fa-lock"></i> <strong>Berechtigungen:</strong>\n
              <code>ROLE_ADMIN_SLIDER_LIST</code> /\n
              <code>ROLE_ADMIN_SLIDER_ADD</code> /\n
              <code>ROLE_ADMIN_SLIDER_EDIT</code> /\n
              <code>ROLE_ADMIN_SLIDER_DELETE</code>\n
            </div>
            """
          "admin.help.cms.sections.slider.title" => "Slider verwalten"
          "admin.help.cms.sections.widgets.body_html" => """
            <p>Widgets sind dynamische Seitenblöcke, die in verschiedenen Bereichen des Layouts erscheinen können.</p>\n
            <ul>\n
              <li>Modul: <code>/admin/widget</code></li>\n
              <li>Berechtigung: <code>ROLE_ADMIN_WIDGET_*</code></li>\n
              <li>Typen: Banner, Textblock, Newsletter-Anmeldung, Kategorie-Showcase</li>\n
              <li>Über <code>blockKey</code> in Templates eingebunden (ähnlich wie Content-Blöcke)</li>\n
            </ul>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Für flexible, nicht-Widget-basierte Inhaltsbereiche -> <a href="/admin/help/content">Content-Blöcke verwenden</a>.\n
            </div>
            """
          "admin.help.cms.sections.widgets.title" => "Widgets"
          "admin.help.dashboard.actions.back" => "Zurück zur Übersicht"
          "admin.help.dashboard.actions.module" => "Zum Dashboard"
          "admin.help.dashboard.navigation.items_html" => """
            <li class="mb-1"><a href="#overview"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
            <li class="mb-1"><a href="#widgets"><i class="fa fa-th-large"></i> Widgets & Links</a></li>\n
            <li class="mb-1"><a href="#metrics"><i class="fa fa-line-chart"></i> Kennzahlen & Berechnung</a></li>\n
            <li class="mb-1"><a href="#customization"><i class="fa fa-sliders"></i> Anpassung & Speicherung</a></li>
            """
          "admin.help.dashboard.navigation.title" => "Navigation"
          "admin.help.dashboard.page_title" => "Hilfe: Dashboard & Widgets"
          "admin.help.dashboard.sections.customization.body_html" => """
            <ul>\n
              <li><strong>Widget hinzufügen:</strong> Öffnet die Bibliothek mit Suche, Beschreibung und Größenwahl.</li>\n
              <li><strong>Fest/Bewegbar:</strong> Der Button rechts oben schaltet das Verschieben des Grids um. Im Modus <em>Fest</em> ist die Reihenfolge geschützt, im Modus <em>Bewegbar</em> kann per Drag & Drop sortiert werden.</li>\n
              <li><strong>Layout speichern:</strong> Reihenfolge, Breite und Widget-Konfiguration werden pro Backend-User gespeichert.</li>\n
              <li><strong>Schnelllinks & To-dos:</strong> Diese Inhalte sind Teil der Widget-Konfiguration und bleiben nach Reload oder erneutem Login erhalten.</li>\n
            </ul>
            """
          "admin.help.dashboard.sections.customization.title" => "Anpassung & Speicherung"
          "admin.help.dashboard.sections.metrics.body_html" => """
            <table class="table table-bordered table-sm table-hover">\n
              <thead class="thead-light"><tr><th>Widget</th><th>Berechnung</th><th>Modullink</th></tr></thead>\n
              <tbody>\n
                <tr><td>Buchungen</td><td>Zeigt aktuelle Aufenthalte, heutige Anreisen und die nächsten sieben Tage statt einer bloßen Gesamtanzahl.</td><td>Kalendermodul</td></tr>\n
                <tr><td>Umsatz</td><td>Berechnet aus konvertierten Warenkörben; offene und stornierte Vorgänge werden ausgeschlossen, Zeitbasis ist die letzte relevante Aktualisierung.</td><td>Analytics-Modul</td></tr>\n
                <tr><td>Produkte</td><td>Zeigt Gesamtzahl, aktive Produkte, Niedrigbestand und ausverkaufte Artikel.</td><td>Shop-Produkte oder Analytics</td></tr>\n
                <tr><td>Kunden</td><td>Gesamtkunden und Neuzugänge des laufenden Monats.</td><td>Kundenverwaltung</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.dashboard.sections.metrics.title" => "Kennzahlen & Berechnung"
          "admin.help.dashboard.sections.overview.body_html" => """
            <p>Das Dashboard unter <code>/admin</code> ist die persönliche Startseite für Backend-User mit <code>ROLE_ADMIN_DASHBOARD_LIST</code>. Widgets können hinzugefügt, in der Breite angepasst, verschoben und pro Benutzer gespeichert werden.</p>\n
            <div class="alert alert-info"><i class="fa fa-refresh"></i> Die Statistik-Widgets laden ihre Live-Daten automatisch nach und aktualisieren sich regelmäßig ohne Seitenwechsel.</div>\n
            <div class="alert alert-success"><i class="fa fa-link"></i> Listen-Widgets verlinken jetzt direkt auf Datensätze wie Buchungen, Apartments, Tickets und Bestellungen.</div>
            """
          "admin.help.dashboard.sections.overview.title" => "Überblick"
          "admin.help.dashboard.sections.widgets.body_html" => """
            <table class="table table-bordered table-sm table-hover">\n
              <thead class="thead-light"><tr><th>Widget</th><th>Inhalt</th><th>Direktaktionen</th></tr></thead>\n
              <tbody>\n
                <tr><td>Kalenderübersicht</td><td>Mini-Kalender mit Tagesfeldern, Belegungen, Anreisen und Abreisen für den aktuellen Monat.</td><td>Jeder Tag verlinkt direkt in den Kalender, zusätzlich gibt es den Modul-Link.</td></tr>\n
                <tr><td>Kommende Buchungen</td><td>Nächste Buchungen mit Gast, Zeitraum und Status.</td><td>Link zur Buchung und zum zugehörigen Apartment.</td></tr>\n
                <tr><td>Letzte Bestellungen</td><td>Aktuelle Shop-Bestellungen auf Basis konvertierter Warenkörbe.</td><td>Direkt zu Details und Bearbeitung der Bestellung.</td></tr>\n
                <tr><td>Support-Tickets</td><td>Offene Tickets mit Status und Bezug.</td><td>Direkt zum Ticket, optional zum verknüpften Warenkorb.</td></tr>\n
                <tr><td>Schnelllinks</td><td>Persönliche Links zu internen oder externen Zielen.</td><td>Links direkt im Widget pflegen, hinzufügen, entfernen und speichern.</td></tr>\n
                <tr><td>Aufgabenliste</td><td>Persönliche To-do-Liste statt statischem Platzhalter.</td><td>Aufgaben anlegen, abhaken und löschen, Änderungen werden gespeichert.</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.dashboard.sections.widgets.title" => "Widgets & Links"
          "admin.help.feeds.actions.back" => "Zurück"
          "admin.help.feeds.actions.module" => "Zum Modul"
          "admin.help.feeds.navigation.items_html" => """
            <li class="mb-1"><a href="#ueberblick"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
            <li class="mb-1"><a href="#google-shopping"><i class="fa fa-google"></i> Google Shopping Feed</a></li>\n
            <li class="mb-1"><a href="#facebook"><i class="fa fa-facebook"></i> Facebook/Meta Feed</a></li>\n
            <li class="mb-1"><a href="#custom"><i class="fa fa-cog"></i> Custom-Feeds</a></li>\n
            <li class="mb-1"><a href="#export-log"><i class="fa fa-history"></i> Export-Log</a></li>\n
            <li class="mb-1"><a href="#health"><i class="fa fa-heartbeat"></i> Feed-Health</a></li>\n
            <li class="mb-1"><a href="#urls"><i class="fa fa-link"></i> Feed-URLs</a></li>
            """
          "admin.help.feeds.navigation.title" => "Navigation"
          "admin.help.feeds.page_title" => "Hilfe: Produkt-Feeds"
          "admin.help.feeds.sections.custom.body_html" => """
            <p>Weitere Export-Formate für Preisvergleichsportale:</p>\n
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Feed</th><th>Format</th><th>URL</th></tr></thead>\n
              <tbody>\n
                <tr><td>Idealo</td><td>CSV</td><td><code>/feeds/idealo.csv</code></td></tr>\n
                <tr><td>Billiger.de</td><td>CSV</td><td><code>/feeds/billiger.csv</code></td></tr>\n
                <tr><td>Kelkoo</td><td>XML</td><td><code>/feeds/kelkoo.xml</code></td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.feeds.sections.custom.title" => "Custom-Feeds"
          "admin.help.feeds.sections.export_log.body_html" => """
            <p>Im Admin werden alle Feed-Generierungen protokolliert:</p>\n
            <ul>\n
              <li>Zeitstempel der letzten Generierung</li>\n
              <li>Anzahl exportierter Produkte</li>\n
              <li>Fehler (z.B. fehlende Pflichtfelder)</li>\n
              <li>Dateigröße des generierten Feeds</li>\n
            </ul>\n
            <p>Exporte mit Fehlern werden <strong>nicht</strong> veröffentlicht - der vorherige gültige Feed bleibt aktiv.</p>
            """
          "admin.help.feeds.sections.export_log.title" => "Feed-Export-Log"
          "admin.help.feeds.sections.facebook.body_html" => """
            <p>Für Facebook/Instagram Shopping wird ein <strong>CSV-Feed</strong> im Meta-Format generiert.</p>\n
            <ul>\n
              <li>Felder: id, title, description, availability, condition, price, link, image_link, brand</li>\n
              <li>Täglich automatisch aktualisiert</li>\n
              <li>URL: <code>/feeds/facebook.csv</code></li>\n
            </ul>
            """
          "admin.help.feeds.sections.facebook.title" => "Facebook/Meta Catalog Feed"
          "admin.help.feeds.sections.google_shopping.body_html" => """
            <p>Der Google Shopping Feed wird im <strong>XML-Format</strong> (Google Merchant Center Spezifikation) generiert.</p>\n
            <h5>Enthaltene Felder:</h5>\n
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Google-Feld</th><th>Quelle</th></tr></thead>\n
              <tbody>\n
                <tr><td><code>g:id</code></td><td>Produkt-ID</td></tr>\n
                <tr><td><code>title</code></td><td><code>product.name</code></td></tr>\n
                <tr><td><code>description</code></td><td><code>product.shortDescription</code> oder <code>product.description</code></td></tr>\n
                <tr><td><code>link</code></td><td>Absolute URL zur Produktseite</td></tr>\n
                <tr><td><code>image_link</code></td><td>Primäres Produktbild</td></tr>\n
                <tr><td><code>price</code></td><td><code>product.price</code> (inkl. MwSt.)</td></tr>\n
                <tr><td><code>sale_price</code></td><td><code>product.specialPrice</code> (wenn gesetzt)</td></tr>\n
                <tr><td><code>availability</code></td><td>in stock / out of stock basierend auf <code>stock</code></td></tr>\n
                <tr><td><code>brand</code></td><td><code>product.manufacturer</code> oder Fallback <code>NFOK</code></td></tr>\n
                <tr><td><code>gtin / mpn</code></td><td><code>product.ean</code> / <code>product.sku</code></td></tr>\n
                <tr><td><code>google_product_category</code></td><td>Aus Kategorie-Mapping</td></tr>\n
              </tbody>\n
            </table>\n
            <h5>Voraussetzungen für Google Shopping:</h5>\n
            <ul>\n
              <li>Produkt muss <code>isActive = true</code> haben</li>\n
              <li>Mindestens ein Produktbild muss vorhanden sein</li>\n
              <li>Preis muss gesetzt sein</li>\n
              <li>EAN/GTIN sollte für bessere Qualität gesetzt sein</li>\n
            </ul>
            """
          "admin.help.feeds.sections.google_shopping.title" => "Google Shopping Feed"
          "admin.help.feeds.sections.health.body_html" => """
            <p>Auf der Feed-Übersichtsseite werden Qualitätskennzahlen angezeigt:</p>\n
            <ul>\n
              <li><strong>Ausgeschlossene Produkte</strong>: Fehlende Pflichtfelder (Bild, Preis, EAN)</li>\n
              <li><strong>Letzte erfolgreiche Generierung</strong>: Zeitstempel</li>\n
              <li><strong>Anteil mit EAN</strong>: Besser für Google Shopping (&gt;80% empfohlen)</li>\n
            </ul>\n
            <div class="alert alert-warning">\n
              <i class="fa fa-exclamation-triangle"></i> Wenn &lt;50% der Produkte im Feed landen, Google Shopping Konto prüfen und Produktdaten ergänzen.\n
            </div>
            """
          "admin.help.feeds.sections.health.title" => "Feed-Health"
          "admin.help.feeds.sections.overview.body_html" => """
            <p>Das <strong>Feed-Modul</strong> generiert Produktdaten-Exporte für externe Plattformen wie Google Shopping, Facebook/Meta und weitere Preisvergleichs-Portale.</p>\n
            <div class="alert alert-info">\n
              <i class="fa fa-refresh"></i> Feeds werden automatisch per <strong>Cron-Job</strong> täglich aktualisiert. Eine manuelle Regenerierung ist über den Admin-Bereich möglich.\n
            </div>\n
            <div class="alert alert-info">\n
              <i class="fa fa-lock"></i> <strong>Berechtigung:</strong> <code>ROLE_ADMIN_FEED_MANAGE</code>\n
            </div>\n
            <p>Öffentliche Feed-URLs sind unter <strong>/feeds/*</strong> erreichbar (kein Login nötig).</p>
            """
          "admin.help.feeds.sections.overview.title" => "Feeds: Überblick"
          "admin.help.feeds.sections.urls.body_html" => """
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Feed</th><th>URL</th><th>Format</th><th>Aktualisierung</th></tr></thead>\n
              <tbody>\n
                <tr><td>Google Shopping</td><td><code>/feeds/google.xml</code></td><td>XML (RSS 2.0)</td><td>täglich 03:00</td></tr>\n
                <tr><td>Facebook Catalog</td><td><code>/feeds/facebook.csv</code></td><td>CSV</td><td>täglich 03:30</td></tr>\n
                <tr><td>Idealo</td><td><code>/feeds/idealo.csv</code></td><td>CSV</td><td>täglich 04:00</td></tr>\n
              </tbody>\n
            </table>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Die URLs können direkt in den jeweiligen Ad-Plattformen (Google Merchant Center, Meta Business Manager) eingetragen werden.\n
            </div>
            """
          "admin.help.feeds.sections.urls.title" => "Feed-URLs (Öffentlich)"
          "admin.help.index.cards.alerts.description" => "Severity, Acknowledge, Bulk-Actions"
          "admin.help.index.cards.alerts.title" => "System-Alerts"
          "admin.help.index.cards.cms.description" => "Page Builder v2, Revisionen, Vorlagen, Slider, Widgets"
          "admin.help.index.cards.cms.title" => "CMS (Seiten, Menüs, Widgets)"
          "admin.help.index.cards.dashboard.description" => "Live-Kennzahlen, Kalender, Schnelllinks und persönliche Startseite"
          "admin.help.index.cards.dashboard.title" => "Dashboard & Widgets"
          "admin.help.index.cards.feeds.description" => "Google Shopping, CSV-Export"
          "admin.help.index.cards.feeds.title" => "Produkt-Feeds"
          "admin.help.index.cards.media.description" => "Uploads, SEO-Dateinamen, Alt-Texte und Bildverwendung"
          "admin.help.index.cards.media.title" => "Media Center"
          "admin.help.index.cards.products.description" => "Anlegen, bearbeiten, Wave-Daten, Bilder, Bulk-Delete"
          "admin.help.index.cards.products.title" => "Produkte & Kategorien"
          "admin.help.index.cards.roles.description" => "Alle ROLE_ADMIN_* Berechtigungen"
          "admin.help.index.cards.roles.title" => "Rollen & Rechte"
          "admin.help.index.intro.description" => "Hier findest du ausführliche Anleitungen, Feldreferenzen und API-Dokumentation für alle Backend-Module. Nutze die Kacheln unten oder die Seitennavigation für den direkten Einstieg."
          "admin.help.index.intro.title" => "Willkommen im Admin-Hilfecenter."
          "admin.help.index.page_heading" => "Admin-Dokumentation & Hilfe"
          "admin.help.index.page_subtitle" => "Vollständige Referenz aller Backend-Module"
          "admin.help.index.page_title" => "Admin-Dokumentation & Hilfe"
          "admin.help.index.reference.headers.function" => "Funktion"
          "admin.help.index.reference.headers.module" => "Modul"
          "admin.help.index.reference.headers.role" => "Benötigte Rolle"
          "admin.help.index.reference.headers.url" => "URL"
          "admin.help.index.reference.rows.abtests.description" => "Inhalts-Experimente"
          "admin.help.index.reference.rows.abtests.label" => "A/B-Tests"
          "admin.help.index.reference.rows.alerts.description" => "System-Warnmeldungen"
          "admin.help.index.reference.rows.alerts.label" => "Alerts"
          "admin.help.index.reference.rows.cms.description" => "Page Builder v2, Revisionen, Abschnittsvorlagen, Widgets, Menüs"
          "admin.help.index.reference.rows.cms.label" => "CMS"
          "admin.help.index.reference.rows.dashboard.description" => "Personalisierte Startseite mit Live-Widgets und Direktlinks"
          "admin.help.index.reference.rows.dashboard.label" => "Dashboard"
          "admin.help.index.reference.rows.feeds.description" => "Google Shopping Feed"
          "admin.help.index.reference.rows.feeds.label" => "Feeds"
          "admin.help.index.reference.rows.import.description" => "Crawler, SQL-Import, Logs"
          "admin.help.index.reference.rows.import.label" => "Import"
          "admin.help.index.reference.rows.media.description" => "Zentrale Medienbibliothek mit Upload, Metadaten, Nutzungsscan und geschütztem Löschen"
          "admin.help.index.reference.rows.media.label" => "Media Center"
          "admin.help.index.reference.rows.products.description" => "Produkt- und Kategorie-CRUD"
          "admin.help.index.reference.rows.products.label" => "Produkte & Kategorien"
          "admin.help.index.reference.rows.roles.description" => "Rollen- & Rechtevergabe"
          "admin.help.index.reference.rows.roles.label" => "Rollen"
          "admin.help.index.reference.title" => "Schnellreferenz: Alle Admin-Module"
          "admin.help.media.actions.back" => "Zurück zur Übersicht"
          "admin.help.media.actions.module" => "Zum Media Center"
          "admin.help.media.navigation.items_html" => """
            <li class="mb-1"><a href="#ueberblick"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
            <li class="mb-1"><a href="#upload"><i class="fa fa-upload"></i> Upload & Verzeichnisse</a></li>\n
            <li class="mb-1"><a href="#seo"><i class="fa fa-search"></i> SEO-Dateinamen & Alt-Texte</a></li>\n
            <li class="mb-1"><a href="#verwendung"><i class="fa fa-link"></i> Aktuelle Verwendung</a></li>\n
            <li class="mb-1"><a href="#loeschen"><i class="fa fa-trash"></i> Löschen & Schutzlogik</a></li>\n
            <li class="mb-1"><a href="#rollen"><i class="fa fa-lock"></i> Rollen</a></li>
            """
          "admin.help.media.navigation.title" => "Navigation"
          "admin.help.media.page_title" => "Hilfe: Media Center"
          "admin.help.media.sections.delete.body_html" => """
            <p>Medien mit aktiver Verwendung können nicht gelöscht werden. Erst wenn der Nutzungsscan keine Fundstelle mehr meldet, erscheint die Löschaktion. Das schützt Produktseiten, Slider und Page-Builder-Inhalte vor kaputten Bildern.</p>\n
            <div class="alert alert-warning"><i class="fa fa-lock"></i> Umbenennen ist erlaubt, weil bekannte Referenzen automatisch auf den neuen Pfad aktualisiert werden.</div>
            """
          "admin.help.media.sections.delete.title" => "Löschen & Schutzlogik"
          "admin.help.media.sections.overview.body_html" => """
            <p>Das Media Center unter <code>/admin/media</code> ist die zentrale Medienbibliothek für Backend-Uploads. Es indexiert erlaubte Upload-Verzeichnisse, zeigt technische Bilddaten und verbindet Dateien mit Metadaten wie Titel, Alt-Text und Beschreibung.</p>\n
            <div class="alert alert-info"><i class="fa fa-picture-o"></i> Angezeigt werden allgemeine Bilder, Produktbilder, Page-Builder-Bilder, Shop-Dateien, Sliderbilder und Theme-Assets unter <code>public/uploads</code>.</div>
            """
          "admin.help.media.sections.overview.title" => "Überblick"
          "admin.help.media.sections.permissions.body_html" => """
            <table class="table table-bordered table-sm">\n
              <tbody>\n
                <tr><td><code>ROLE_ADMIN_MEDIA_LIST</code></td><td>Medienbibliothek anzeigen</td></tr>\n
                <tr><td><code>ROLE_ADMIN_MEDIA_ADD</code></td><td>Dateien hochladen</td></tr>\n
                <tr><td><code>ROLE_ADMIN_MEDIA_EDIT</code></td><td>Metadaten und SEO-Dateinamen bearbeiten</td></tr>\n
                <tr><td><code>ROLE_ADMIN_MEDIA_DELETE</code></td><td>Ungenutzte Dateien löschen</td></tr>\n
                <tr><td><code>ROLE_ADMIN_MEDIA_MANAGE</code></td><td>Index-Scan und Verwaltungsaktionen</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.media.sections.permissions.title" => "Rollen"
          "admin.help.media.sections.seo.body_html" => """
            <p>Im Detailformular kann der sichtbare Dateiname ohne Endung gepflegt werden. Beim Speichern normalisiert das System den Namen zu einem URL-freundlichen Slug, behält die Dateiendung bei und aktualisiert bekannte Referenzen.</p>\n
            <ul>\n
              <li><strong>Alt-Text:</strong> Für Bilder empfohlen, weil er Barrierefreiheit, Produktsuche und SEO unterstützt.</li>\n
              <li><strong>Titel:</strong> Interner Anzeigename für die Verwaltung.</li>\n
              <li><strong>Beschreibung:</strong> Für Lizenz-, Copyright- oder Pflegehinweise nutzbar.</li>\n
            </ul>
            """
          "admin.help.media.sections.seo.title" => "SEO-Dateinamen & Alt-Texte"
          "admin.help.media.sections.upload.body_html" => """
            <ul>\n
              <li><strong>Upload:</strong> Dateien werden in ein bewusst erlaubtes Zielverzeichnis gespeichert; Pfad-Ausbrüche und unbekannte Ziele werden blockiert.</li>\n
              <li><strong>Scan:</strong> Der Button <em>Verzeichnisse scannen</em> gleicht Dateisystem und Medienindex ab und entfernt veraltete Indexeinträge.</li>\n
              <li><strong>Dateitypen:</strong> Bilder, PDF, Text/CSV, Office-Dateien und ZIP-Archive sind vorgesehen. Ausführbare Dateien werden nicht als Media-Upload akzeptiert.</li>\n
              <li><strong>Größe:</strong> Uploads sind auf 20 MB je Datei begrenzt.</li>\n
            </ul>
            """
          "admin.help.media.sections.upload.title" => "Upload & Verzeichnisse"
          "admin.help.media.sections.usage.body_html" => """
            <p>Die Spalte <strong>Verwendung</strong> zeigt, ob ein Medium aktuell in bekannten Modulen genutzt wird. Die Detailseite listet die Fundstellen mit Direktlink, wenn das Ziel eine Admin-Route besitzt.</p>\n
            <table class="table table-bordered table-sm">\n
              <thead><tr><th>Quelle</th><th>Erkennung</th></tr></thead>\n
              <tbody>\n
                <tr><td>Produkte</td><td><code>ProductImage.imageName</code></td></tr>\n
                <tr><td>Slider</td><td>Gespeicherter Bildpfad</td></tr>\n
                <tr><td>Seiten/Page Builder</td><td>Bildpfade in Entwurf und veröffentlichten Abschnitten</td></tr>\n
                <tr><td>Blog</td><td>Beitragsbild</td></tr>\n
                <tr><td>SEO</td><td>Open-Graph-Bild</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.media.sections.usage.title" => "Aktuelle Verwendung"
          "admin.help.products.actions.back" => "Zurück zur Übersicht"
          "admin.help.products.actions.module" => "Zum Modul"
          "admin.help.products.navigation.items_html" => """
            <li class="mb-1"><a href="#produkte-uebersicht"><i class="fa fa-list-ul"></i> Produkt-Übersicht</a></li>\n
            <li class="mb-1"><a href="#produkt-anlegen"><i class="fa fa-plus"></i> Produkt anlegen</a></li>\n
            <li class="mb-1"><a href="#wave-produktdaten-holer"><i class="fa fa-download"></i> Wave Produktdaten holen</a></li>\n
            <li class="mb-1"><a href="#produkt-felder"><i class="fa fa-th-list"></i> Alle Felder (Referenz)</a></li>\n
            <li class="mb-1"><a href="#medien"><i class="fa fa-image"></i> Medien &amp; Uploads</a></li>\n
            <li class="mb-1"><a href="#bulk"><i class="fa fa-pencil"></i> Massenbearbeitung &amp; Bulk-Aktionen</a></li>\n
            <li class="mb-1"><a href="#kategorien"><i class="fa fa-folder"></i> Kategorien</a></li>\n
            <li class="mb-1"><a href="#konfigurierbar"><i class="fa fa-sliders"></i> Produkt-Konfigurationen</a></li>\n
            <li class="mb-1"><a href="#api"><i class="fa fa-code"></i> API-Endpunkte</a></li>
            """
          "admin.help.products.navigation.title" => "Navigation"
          "admin.help.products.page_title" => "Hilfe: Produkte & Kategorien"
          "admin.help.products.sections.api.body_html" => """
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Methode</th><th>URL</th><th>Funktion</th></tr></thead>\n
              <tbody>\n
                <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/produkte</code></td><td>Liste aller Produkte</td></tr>\n
                <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/produkt/neu</code></td><td>Neues Produkt anlegen</td></tr>\n
                <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/produkt/bearbeiten/{id}</code></td><td>Produkt bearbeiten</td></tr>\n
                <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/produkt/wave-lookup?ean={ean}&amp;articleNumber={sku}</code></td><td>Wave-Produktdaten per EAN oder Wave-Art.-Nr. für die Formular-Vorbefüllung laden (AJAX)</td></tr>\n
                <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/produkt/loeschen/{id}</code></td><td>Einzelnes Produkt löschen</td></tr>\n
                <tr><td><span class="badge badge-warning">POST</span></td><td><code>/admin/shop/produkte/bulk-edit</code></td><td>Ausgewählte Produkte gemeinsam bearbeiten</td></tr>\n
                <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/produkte/bulk-delete</code></td><td>Mehrere Produkte löschen</td></tr>\n
                <tr><td><span class="badge badge-danger">DELETE</span></td><td><code>/admin/shop/bild-loeschen/{id}</code></td><td>Einzelnes Bild löschen (AJAX)</td></tr>\n
                <tr><td><span class="badge badge-primary">GET</span></td><td><code>/admin/shop/kategorien</code></td><td>Liste aller Kategorien</td></tr>\n
                <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/kategorie/neu</code></td><td>Neue Kategorie anlegen</td></tr>\n
                <tr><td><span class="badge badge-success">GET/POST</span></td><td><code>/admin/shop/kategorie/bearbeiten/{id}</code></td><td>Kategorie bearbeiten</td></tr>\n
                <tr><td><span class="badge badge-danger">POST</span></td><td><code>/admin/shop/kategorie/loeschen/{id}</code></td><td>Kategorie löschen</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.products.sections.api.title" => "API-Endpunkte"
          "admin.help.products.sections.bulk.body_html" => """
            <h5>Schnell-/Massenbearbeitung</h5>\n
            <ol>\n
              <li>Checkboxen in der Produktliste anklicken (oder "Alle auswählen").</li>\n
              <li>Button <kbd>Massenbearbeitung</kbd> öffnen.</li>\n
              <li>Im Modal nur die Felder aktivieren, die wirklich geändert werden sollen. Nicht aktivierte Felder bleiben unverändert.</li>\n
              <li>Unterstützte Felder: Produktname, Kategorie, Lagerbestand, Versandart, Lieferzeit, Abholung, Nur Abholung, Preis setzen oder erhöhen/senken, Freitext 1/2, Hersteller, Veröffentlichung/Entwurf und Kaufbar/Bestellbar.</li>\n
              <li><kbd>Änderungen anwenden</kbd> speichert die Werte für alle ausgewählten Produkte.</li>\n
            </ol>\n
            <p><strong>API-Route Massenbearbeitung:</strong> <code>POST /admin/shop/produkte/bulk-edit</code><br>\n
            <strong>Parameter:</strong> <code>selected[]</code>, <code>bulk_fields[]</code>, <code>bulk[...]</code> + CSRF-Token <code>_token</code></p>\n
            <h5>Bulk-Delete</h5>\n
            <ol>\n
              <li>Checkboxen in der Produktliste anklicken (oder "Alle auswählen").</li>\n
              <li>Button <kbd>Ausgewählte löschen</kbd> anklicken.</li>\n
              <li>Bestätigungsdialog (Bootstrap Modal) erscheint - bestätigen.</li>\n
              <li>System prüft: Produkte in offenen Bestellungen werden <strong>übersprungen</strong> (Fehlermeldung im Flash-Bag).</li>\n
            </ol>\n
            <p><strong>API-Route Bulk-Delete:</strong> <code>POST /admin/shop/produkte/bulk-delete</code><br>\n
            <strong>Parameter:</strong> <code>selected[] = [id1, id2, ...]</code> + CSRF-Token <code>_token</code></p>\n
            <div class="alert alert-warning">\n
              <i class="fa fa-exclamation-triangle"></i> Produktname und Preis sind bewusst als aktivierbare Felder ausgeführt: Sie werden nur geändert, wenn die jeweilige Checkbox im Modal gesetzt ist.\n
            </div>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Über den Toolbar-Button <strong>Alle löschbaren löschen</strong> kannst du zusätzlich alle Produkte in einem Schritt entfernen, die <em>nicht</em> in Bestellungen referenziert sind. Bestellgeschützte Produkte bleiben automatisch erhalten.\n
            </div>\n
            <div class="alert alert-secondary">\n
              <i class="fa fa-eye-slash"></i> Bestellgeschützte Produkte kannst du in der Produktliste jetzt direkt über den Sichtbarkeits-Button aktivieren/deaktivieren, statt sie zu löschen.\n
            </div>
            """
          "admin.help.products.sections.bulk.title" => "Massenbearbeitung & Bulk-Aktionen"
          "admin.help.products.sections.categories.body_html" => """
            <p>Kategorien erreichst du unter <code>/admin/shop/kategorien</code>. Sie bilden die Navigationsstruktur des Shops.</p>\n
            <table class="table table-bordered table-sm">\n
              <thead class="thead-light"><tr><th>Feld</th><th>Beschreibung</th></tr></thead>\n
              <tbody>\n
                <tr><td><code>name</code></td><td>Kategorie-Name (erscheint im Menü und in Breadcrumbs)</td></tr>\n
                <tr><td><code>slug</code></td><td>URL-Segment der Kategorie-Seite</td></tr>\n
                <tr><td><code>parent</code></td><td>Übergeordnete Kategorie für Hierarchie (Unterkategorien)</td></tr>\n
                <tr><td><code>description</code></td><td>Beschreibung (erscheint oben auf der Kategorie-Seite)</td></tr>\n
                <tr><td><code>image</code></td><td>Kategorie-Bild (Vorschau auf Kategorie-Kacheln)</td></tr>\n
                <tr><td><code>seoMeta</code></td><td>SEO-Metadaten für die Kategorie-Seite</td></tr>\n
                <tr><td><code>isActive</code></td><td>Kategorie im Shop sichtbar</td></tr>\n
                <tr><td><code>sortOrder</code></td><td>Reihenfolge in der Navigation</td></tr>\n
              </tbody>\n
            </table>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Kategorien lassen sich beliebig tief verschachteln. Im Shop-Menü wird der Baum automatisch aus der Parent-Relation aufgebaut.\n
            </div>
            """
          "admin.help.products.sections.categories.title" => "Kategorien verwalten"
          "admin.help.products.sections.configurable.body_html" => """
            <p>Für individuelle Computer und System-Builds ist der gruppenbasierte PC-/System-Konfigurator unter <code>/admin/product-configurator/</code> das Hauptmodul. Der optionsbasierte Editor unter <code>/admin/configurable-product/</code> bleibt nur für einfache Varianten wie Farbe, Größe oder Material bestehen.</p>\n
            <ul>\n
              <li><strong>PC-/System-Konfigurator (Hauptpfad):</strong> Ein Basisprodukt mit Gruppen von auswählbaren Artikeln, z. B. CPU, RAM, GPU oder SSD (Entities: <code>ProductConfigurator</code>, <code>ConfiguratorGroup</code>, <code>ConfiguratorGroupProduct</code>)</li>\n
              <li><strong>Varianten-Editor:</strong> Ein Basisprodukt mit einfachen Optionen wie Farbe, Größe oder Material (Entities: <code>ConfigurableProduct</code>, <code>ProductOption</code>, <code>ProductOptionValue</code>)</li>\n
              <li><strong>Suchbare Produktauswahl:</strong> Beide Builder nutzen im Admin eine suchbare Produktauswahl, damit große Kataloge schneller gepflegt werden können.</li>\n
              <li><strong>Tier-Preise:</strong> Mengenrabatte (Entity: <code>ProductTierPrice</code>)</li>\n
            </ul>\n
            <p>Empfohlene Reihenfolge für Rechner: zuerst das Basis-System festlegen, dann Komponenten-Gruppen anlegen und anschließend die konkreten Produkte zuordnen. Den Varianten-Editor nur für einfache Auswahlfelder verwenden.</p>
            """
          "admin.help.products.sections.configurable.title" => "Produkt-Konfigurationen"
          "admin.help.products.sections.create.body_html" => """
            <ol>\n
              <li class="mb-2">Navigiere zu <strong>Shop -> Produkte -> + Neues Produkt</strong> oder rufe <code>/admin/shop/produkt/neu</code> auf.</li>\n
              <li class="mb-2">Trage im Abschnitt <strong>EAN & Wave</strong> eine <strong>EAN/GTIN</strong> oder, falls keine EAN vorhanden ist, die <strong>Wave-Art.-Nr.</strong> im Feld Artikelnummer ein und klicke auf <kbd>Daten von Wave laden</kbd>, wenn Stammdaten von Wave Distribution übernommen werden sollen.</li>\n
              <li class="mb-2">Prüfe die übernommenen Felder und ergänze alle Pflichtfelder, insbesondere den <strong>Preis</strong>, da Wave aktuell keinen öffentlichen Verkaufspreis liefert.</li>\n
              <li class="mb-2">Lade mindestens ein <strong>Produktbild</strong> hoch oder aktiviere im Wave-Bereich die Bildübernahme, damit die erkannten Wave-Produktbilder beim Speichern automatisch importiert werden.</li>\n
              <li class="mb-2">Ordne das Produkt optional einer <strong>Kategorie</strong> zu oder bestätige die vorgeschlagene lokale Kategorie, damit es in Navigation, Filtern und Feeds sauber einsortiert ist.</li>\n
              <li class="mb-2">Optional: SEO-Metadaten im Abschnitt <strong>SEO</strong> prüfen. Canonical-URLs werden aus Shop-Domain und Slug vorbelegt, können aber manuell angepasst werden.</li>\n
              <li class="mb-2">Klicke <kbd>Speichern</kbd>. Sichtbarkeit und Kaufbarkeit steuerst du rechts über <strong>Produkt veröffentlichen</strong> und <strong>Kaufbar / Bestellbar</strong>; der Lagerbestand steuert zusätzlich die Kaufaktion.</li>\n
            </ol>\n
            <div class="alert alert-success">\n
              <i class="fa fa-lightbulb-o"></i> <strong>Tipp:</strong> Slug wird automatisch aus dem Produktnamen generiert. Er kann manuell angepasst werden (URL-freundlich, kleingeschrieben, Bindestriche statt Leerzeichen).\n
            </div>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Die Wave-Vorbefüllung kann jetzt die erkannten Produktbilder aus der Wave-Galerie beim Speichern importieren. Externe Canonical-/OG-URLs werden weiterhin bewusst nicht übernommen.\n
            </div>
            """
          "admin.help.products.sections.create.title" => "Schritt-für-Schritt: Produkt anlegen"
          "admin.help.products.sections.fields.body_html" => """
            <table class="table table-bordered table-sm table-hover">\n
              <thead class="thead-light"><tr><th>Feld</th><th>Typ</th><th>Pflicht</th><th>Beschreibung</th></tr></thead>\n
              <tbody>\n
                <tr><td><code>name</code></td><td>Text</td><td><span class="badge badge-danger">Ja</span></td><td>Produktname, erscheint im Shop und in Bestellungen</td></tr>\n
                <tr><td><code>slug</code></td><td>Text</td><td><span class="badge badge-danger">Ja</span></td><td>URL-Bezeichner (auto-generiert), z.B. <code>mein-produkt</code></td></tr>\n
                <tr><td><code>category</code></td><td>Relation</td><td><span class="badge badge-secondary">Nein</span></td><td>Zugehörige Kategorie; empfohlen für Navigation, Filter und Feed-Zuordnung</td></tr>\n
                <tr><td><code>label</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Optionales Produktlabel für besondere Kennzeichnungen</td></tr>\n
                <tr><td><code>tags</code></td><td>Text/Liste</td><td><span class="badge badge-secondary">Nein</span></td><td>Schlagwörter, kommagetrennt gepflegt</td></tr>\n
                <tr><td><code>ean</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>EAN/GTIN/Barcode; primäre Suche für Wave-Vorbefüllung</td></tr>\n
                <tr><td><code>manufacturer</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Hersteller/Marke; wird auch für Produkt-Feeds genutzt</td></tr>\n
                <tr><td><code>sku</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Artikelnummer; dient ohne EAN als Wave-Art.-Nr. für die Vorbefüllung</td></tr>\n
                <tr><td><code>shortDescription</code></td><td>HTML/Richtext</td><td><span class="badge badge-secondary">Nein</span></td><td>Kurzbeschreibung für Listen, Teaser und Feeds</td></tr>\n
                <tr><td><code>description</code></td><td>HTML/Richtext</td><td><span class="badge badge-secondary">Nein</span></td><td>Ausführliche Produktbeschreibung (Summernote-Editor)</td></tr>\n
                <tr><td><code>price</code></td><td>Geldbetrag</td><td><span class="badge badge-danger">Ja</span></td><td>Bruttopreis in Euro (z.B. <code>19.99</code>)</td></tr>\n
                <tr><td><code>specialPrice</code></td><td>Geldbetrag</td><td><span class="badge badge-secondary">Nein</span></td><td>Sonderpreis; wird verwendet, wenn gefüllt und größer 0</td></tr>\n
                <tr><td><code>uvp</code></td><td>Geldbetrag</td><td><span class="badge badge-secondary">Nein</span></td><td>Unverbindliche Preisempfehlung/Vergleichspreis</td></tr>\n
                <tr><td><code>mwst</code></td><td>Auswahl</td><td><span class="badge badge-secondary">Nein</span></td><td>MwSt.-Satz aus den verfügbaren Steuersätzen</td></tr>\n
                <tr><td><code>stock</code></td><td>Integer</td><td><span class="badge badge-secondary">Nein</span></td><td>Lagerbestand, Standardwert 1, Mindestwert 0</td></tr>\n
                <tr><td><code>shippingMethod</code></td><td>Relation</td><td><span class="badge badge-secondary">Nein</span></td><td>Versandart; kann die Lieferzeit automatisch vorbelegen</td></tr>\n
                <tr><td><code>pickupAvailable</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td>Aktiviert Abholung im Geschäft als zusätzliche Lieferart für dieses Produkt</td></tr>\n
                <tr><td><code>pickupOnly</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td>Erlaubt ausschließlich Abholung im Geschäft; Versand wird im Checkout für dieses Produkt gesperrt</td></tr>\n
                <tr><td><code>pickupNote</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Interner Hinweis zur Abholung, etwa Lagerort oder Vorbereitungsschritt</td></tr>\n
                <tr><td><code>deliveryTime</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Lieferzeit, z.B. <code>1-3 Werktage</code></td></tr>\n
                <tr><td><code>weight</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Gewicht für Versand und technische Daten</td></tr>\n
                <tr><td><code>length</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Länge des Produkts oder Pakets</td></tr>\n
                <tr><td><code>width</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Breite des Produkts oder Pakets</td></tr>\n
                <tr><td><code>height</code></td><td>Text/Zahl</td><td><span class="badge badge-secondary">Nein</span></td><td>Höhe des Produkts oder Pakets</td></tr>\n
                <tr><td><code>material</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Materialangabe, falls relevant</td></tr>\n
                <tr><td><code>countryOfOrigin</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Herkunftsland</td></tr>\n
                <tr><td><code>custom1</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Freies Zusatzfeld 1</td></tr>\n
                <tr><td><code>custom2</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Freies Zusatzfeld 2</td></tr>\n
                <tr><td><code>isActive</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td><strong>Produkt veröffentlichen</strong>: steuert die Shop-Sichtbarkeit</td></tr>\n
                <tr><td><code>available</code></td><td>Boolean</td><td><span class="badge badge-secondary">Nein</span></td><td><strong>Kaufbar / Bestellbar</strong>: manuelle Sperre für die Kaufbarkeit</td></tr>\n
                <tr><td><code>images</code></td><td>Upload</td><td><span class="badge badge-secondary">Nein</span></td><td>Produktbilder: JPG, JPEG, PNG, GIF, WebP, AVIF bis 8 MB je Datei</td></tr>\n
                <tr><td><code>downloads</code></td><td>Upload</td><td><span class="badge badge-secondary">Nein</span></td><td>Digitale Downloads: PDF, ZIP, CSV, TXT, Office-Dateien bis 20 MB je Datei</td></tr>\n
                <tr><td><code>videoUrl</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Externe Video-URL für Produktmedien</td></tr>\n
                <tr><td><code>seoMeta.metaTitle</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Seitentitel</td></tr>\n
                <tr><td><code>seoMeta.metaDescription</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Meta-Beschreibung</td></tr>\n
                <tr><td><code>seoMeta.metaKeywords</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>SEO-Keywords</td></tr>\n
                <tr><td><code>seoMeta.ogTitle</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Titel</td></tr>\n
                <tr><td><code>seoMeta.ogDescription</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Beschreibung</td></tr>\n
                <tr><td><code>seoMeta.ogImage</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Bild-URL</td></tr>\n
                <tr><td><code>seoMeta.canonical</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Canonical-URL, wird aus Shop-Domain und Slug vorbelegt</td></tr>\n
                <tr><td><code>seoMeta.next</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Optionale Next-URL</td></tr>\n
                <tr><td><code>seoMeta.metaRobots</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Robots-Angabe, z.B. <code>index,follow</code></td></tr>\n
                <tr><td><code>seoMeta.ogLocale</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Locale</td></tr>\n
                <tr><td><code>seoMeta.ogType</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Typ</td></tr>\n
                <tr><td><code>seoMeta.ogUrl</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-URL</td></tr>\n
                <tr><td><code>seoMeta.ogSiteName</code></td><td>Text</td><td><span class="badge badge-secondary">Nein</span></td><td>Open-Graph-Site-Name</td></tr>\n
                <tr><td><code>seoMeta.articleModifiedTime</code></td><td>Datum/Zeit</td><td><span class="badge badge-secondary">Nein</span></td><td>Zeitpunkt der letzten inhaltlichen Änderung</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.help.products.sections.fields.title" => "Feldreferenz: Produkt"
          "admin.help.products.sections.images.body_html" => """
            <p>Im Produktformular verwaltest du Bilder, Downloads und Video-URL im Abschnitt <strong>Medien</strong>. Links liegt der Bereich <strong>Uploads &amp; Einbindungen</strong>, rechts die aktuelle Galerie.</p>\n
            <ul>\n
              <li>Erlaubte Bildformate: <strong>JPG, JPEG, PNG, GIF, WebP, AVIF</strong></li>\n
              <li>Maximale Bildgröße: <strong>8 MB</strong> pro Datei</li>\n
              <li>Downloads: <strong>PDF, ZIP, CSV, TXT, DOC, DOCX, XLS, XLSX, PPT, PPTX</strong> bis <strong>20 MB</strong> pro Datei</li>\n
              <li>Video-URL: externe Video- oder Einbindungs-URL für die Produktdarstellung</li>\n
              <li>Bilder werden in <code>public/uploads/products/</code> gespeichert</li>\n
              <li>Einzelnes Bild löschen: Button <kbd><i class="fa fa-times"></i></kbd> neben dem Bild (AJAX, ohne Seiten-Reload)</li>\n
              <li>API-Route: <code>DELETE /admin/shop/bild-loeschen/{id}</code></li>\n
              <li>Erstes Bild = Hauptbild in Listen- und Detailansicht</li>\n
            </ul>\n
            <div class="alert alert-info">\n
              <i class="fa fa-info-circle"></i> Beim Löschen einzelner Bilder und beim Löschen eines Produkts werden der Datenbankeintrag und die zugehörige Datei im Upload-Ordner entfernt, sofern die Datei dort vorhanden ist.\n
            </div>
            """
          "admin.help.products.sections.images.title" => "Medien & Uploads verwalten"
          "admin.help.products.sections.overview.body_html" => """
            <p>Die Produktliste erreichst du unter <code>/admin/shop/produkte</code>. Sie zeigt alle Produkte in einer kompakten Arbeitsansicht mit Bild, Stammdaten, Preis/Lager, Versand/Abholung, Status und Metadaten.</p>\n
            <div class="row">\n
              <div class="col-md-6">\n
                <h5>Funktionen in der Liste:</h5>\n
                <ul>\n
                  <li><strong>Suchen:</strong> Volltextsuche über Name und SKU</li>\n
                  <li><strong>Filtern:</strong> Nach Kategorie, Lagerbestand</li>\n
                  <li><strong>Sortieren:</strong> Per Klick auf Spaltenköpfe</li>\n
                  <li><strong>Bearbeiten:</strong> Button <kbd><i class="fa fa-edit"></i></kbd> in der Zeile</li>\n
                  <li><strong>Löschen:</strong> Button <kbd><i class="fa fa-trash"></i></kbd> (mit Bestätigungsdialog)</li>\n
                  <li><strong>Massenbearbeitung:</strong> Checkboxen auswählen, Button <kbd>Massenbearbeitung</kbd> öffnen und nur die Felder aktivieren, die gemeinsam überschrieben werden sollen</li>\n
                  <li><strong>Bulk-Delete:</strong> Checkboxen auswählen -> Button "Ausgewählte löschen"</li>\n
                  <li><strong>Alle löschbaren löschen:</strong> Toolbar-Aktion für alle Produkte ohne Bestellreferenz</li>\n
                </ul>\n
              </div>\n
              <div class="col-md-6">\n
                <div class="alert alert-warning">\n
                  <i class="fa fa-exclamation-triangle"></i> <strong>Hinweis:</strong> Produkte, die in Bestellungen referenziert werden, können <em>nicht</em> gelöscht werden. Der Bulk-Delete prüft dies automatisch.\n
                </div>\n
                <div class="alert alert-info">\n
                  <i class="fa fa-lock"></i> <strong>Berechtigung:</strong> <code>ROLE_ADMIN_SHOP_MANAGE</code> für Lesen; <code>ROLE_ADMIN_SHOP_ADD/EDIT/DELETE</code> für Schreiben.\n
                </div>\n
              </div>\n
            </div>
            """
          "admin.help.products.sections.overview.title" => "Produkt-Übersicht"
          "admin.help.products.sections.wave.body_html" => """
            <p>Der <strong>Wave Produktdaten Holer</strong> sitzt direkt im Produktformular unter <code>/admin/shop/produkt/neu</code> und <code>/admin/shop/produkt/bearbeiten/{id}</code> im Abschnitt <strong>EAN & Wave</strong>. Er füllt neue oder bestehende Produkte per AJAX mit Daten von Wave Distribution vor.</p>\n
            <div class="row">\n
              <div class="col-md-6">\n
                <h5>Suchlogik</h5>\n
                <ul>\n
                  <li><strong>Primär:</strong> Suche über EAN/GTIN/Barcode.</li>\n
                  <li><strong>Fallback:</strong> Wenn keine EAN eingetragen ist, wird die Artikelnummer als Wave-Art.-Nr. verwendet.</li>\n
                  <li><strong>Endpoint:</strong> <code>GET /admin/shop/produkt/wave-lookup?ean={ean}&amp;articleNumber={sku}</code></li>\n
                  <li><strong>Berechtigung:</strong> <code>ROLE_ADMIN_SHOP_MANAGE</code>, <code>ROLE_ADMIN_SHOP_ADD</code> oder <code>ROLE_ADMIN_SHOP_EDIT</code>.</li>\n
                </ul>\n
              </div>\n
              <div class="col-md-6">\n
                <h5>Übernommene Daten</h5>\n
                <ul>\n
                  <li>Name, Hersteller, Artikelnummer, Beschreibung und Kurzbeschreibung.</li>\n
                  <li>Kategoriehinweis mit Abgleich auf lokale Kategorien.</li>\n
                  <li>Textbasierte SEO-Daten wie Meta Title, Meta Description und Keywords.</li>\n
                  <li>Technische Daten wie EAN, Gewicht, Maße, Material und Herkunftsland, soweit Wave sie liefert.</li>\n
                </ul>\n
              </div>\n
            </div>\n
            <div class="alert alert-warning">\n
              <i class="fa fa-euro"></i> <strong>Preis bleibt unverändert:</strong> Der Verkaufspreis wird absichtlich nicht überschrieben. Wenn Wave keinen öffentlichen Preis liefert, erscheint ein Hinweis und der vorhandene Preis bleibt stehen.\n
            </div>\n
            <div class="alert alert-info">\n
              <i class="fa fa-image"></i> <strong>Bilder:</strong> Gefundene Wave-Bilder werden erst beim Speichern importiert, wenn die Option <em>Produktbilder beim Speichern importieren</em> aktiv ist. Die Vorschau zeigt nur die vorgemerkten Bilder.\n
            </div>\n
            <div class="alert alert-secondary">\n
              <i class="fa fa-link"></i> Externe Canonical- und OG-URLs werden nicht direkt übernommen. Das Produktformular hält SEO-URLs unter der eigenen Shop-Domain.\n
            </div>
            """
          "admin.help.products.sections.wave.title" => "Wave Produktdaten holen"
          "admin.import.actions.close" => "Schließen"
          "admin.import.actions.delete" => "Löschen"
          "admin.import.actions.details" => "Details"
          "admin.import.actions.help" => "Hilfe"
          "admin.import.actions.import_log" => "Import-Log"
          "admin.import.actions.log" => "Log"
          "admin.import.actions.promote" => "Live setzen"
          "admin.import.actions.promote_to_live" => "Dry-Run live setzen"
          "admin.import.actions.refresh" => "Aktualisieren"
          "admin.import.actions.refresh_file_list" => "Dateiliste aktualisieren"
          "admin.import.actions.replace_texts" => "Texte ersetzen"
          "admin.import.actions.retry" => "Erneut starten"
          "admin.import.actions.retry_mark" => "Erneut starten"
          "admin.import.actions.save_notes" => "Notizen speichern"
          "admin.import.actions.start" => "Starten"
          "admin.import.actions.start_selected_sql_import" => "SQL-Import starten"
          "admin.import.actions.stop" => "Stoppen"
          "admin.import.api.not_found" => "Eintrag nicht gefunden."
          "admin.import.api.promote_only_dry_run" => "Nur Dry-Run-Einträge können live gesetzt werden."
          "admin.import.api.retry_only_failed" => "Nur fehlgeschlagene Importe können erneut gestartet werden."
          "admin.import.booking_csv.actions.add_mapping" => "Hinzufügen"
          "admin.import.booking_csv.actions.back_to_import" => "Zum CSV-Import"
          "admin.import.booking_csv.actions.cancel" => "Abbrechen"
          "admin.import.booking_csv.actions.manage_mappings" => "Zimmertyp-Mapping verwalten"
          "admin.import.booking_csv.actions.preview" => "Vorschau anzeigen"
          "admin.import.booking_csv.actions.run_import" => "Jetzt importieren"
          "admin.import.booking_csv.actions.save_mappings" => "Mappings speichern"
          "admin.import.booking_csv.index.alerts.configure_now" => "Jetzt konfigurieren"
          "admin.import.booking_csv.index.alerts.no_mappings" => "Es sind noch keine Zimmertyp-Mappings konfiguriert."
          "admin.import.booking_csv.index.alerts.review_mappings" => "Mappings prüfen"
          "admin.import.booking_csv.index.alerts.unmapped_count" => "%count% Zimmertyp(en) ohne zugeordnete Wohnungen."
          "admin.import.booking_csv.index.file_label" => "CSV-Datei (Semikolon-getrennt, UTF-8)"
          "admin.import.booking_csv.index.intro" => "Lade die CSV-Exportdatei von Booking.com hoch. Alle bisherigen Booking.com-Buchungen werden ersetzt."
          "admin.import.booking_csv.index.panel_title" => "Buchungen importieren"
          "admin.import.booking_csv.index.subtitle" => "Importiere Buchungen strukturiert per CSV und prüfe sie vor dem Einspielen."
          "admin.import.booking_csv.index.title" => "Booking.com CSV-Import"
          "admin.import.booking_csv.mappings.delete_confirm" => "Mapping "%name%" wirklich löschen?"
          "admin.import.booking_csv.mappings.empty" => "Noch keine Mappings angelegt."
          "admin.import.booking_csv.mappings.existing_title" => "Bestehende Mappings"
          "admin.import.booking_csv.mappings.hint" => "Tipp: Name exakt aus der CSV-Spalte Art der Wohneinheit übernehmen, z.B. Double Room - Main Building."
          "admin.import.booking_csv.mappings.new_placeholder" => "Booking.com Zimmertyp (exakt)"
          "admin.import.booking_csv.mappings.new_title" => "Neuen Zimmertyp anlegen"
          "admin.import.booking_csv.mappings.subtitle" => "Booking.com Zimmertypen sauber auf lokale Wohnungen abbilden."
          "admin.import.booking_csv.mappings.table.action" => "Aktion"
          "admin.import.booking_csv.mappings.table.apartments" => "Zugeordnete Wohnungen"
          "admin.import.booking_csv.mappings.table.room_type" => "Booking.com Zimmertyp"
          "admin.import.booking_csv.mappings.title" => "Zimmertyp-Mapping"
          "admin.import.booking_csv.preview.execute_confirm_text" => "%count% Buchungen importieren und bestehende ersetzen?"
          "admin.import.booking_csv.preview.execute_description" => "%count% Buchungen werden importiert. Alle bestehenden Booking.com-Buchungen werden vorher gelöscht."
          "admin.import.booking_csv.preview.execute_title" => "Import durchführen"
          "admin.import.booking_csv.preview.file_label" => "CSV-Datei nochmals auswählen"
          "admin.import.booking_csv.preview.line_label" => "Zeile %line%"
          "admin.import.booking_csv.preview.no_apartment" => "- %reason%"
          "admin.import.booking_csv.preview.parse_errors_title" => "Fehler beim Parsen"
          "admin.import.booking_csv.preview.skipped_description" => "Kein Mapping oder kein freies Apartment gefunden."
          "admin.import.booking_csv.preview.skipped_title" => "Übersprungene Zeilen (%count%)"
          "admin.import.booking_csv.preview.stats.imported" => "Werden importiert"
          "admin.import.booking_csv.preview.stats.skipped" => "Übersprungen"
          "admin.import.booking_csv.preview.stats.total" => "Gesamt"
          "admin.import.booking_csv.preview.status.cancelled" => "Storniert"
          "admin.import.booking_csv.preview.status.confirmed" => "Bestätigt"
          "admin.import.booking_csv.preview.subtitle" => "Prüfe die CSV-Zeilen vor dem endgültigen Einspielen."
          "admin.import.booking_csv.preview.table.apartment" => "Wohnung (zugewiesen)"
          "admin.import.booking_csv.preview.table.arrival" => "Anreise"
          "admin.import.booking_csv.preview.table.departure" => "Abreise"
          "admin.import.booking_csv.preview.table.external_id" => "Ext.-ID"
          "admin.import.booking_csv.preview.table.guest_name" => "Gastname"
          "admin.import.booking_csv.preview.table.price" => "Preis"
          "admin.import.booking_csv.preview.table.room_type" => "Zimmertyp (CSV)"
          "admin.import.booking_csv.preview.table.status" => "Status"
          "admin.import.booking_csv.preview.title" => "Import-Vorschau"
          "admin.import.confirm.delete_button" => "Endgültig löschen"
          "admin.import.confirm.delete_text" => "Soll dieser Import-Log wirklich gelöscht werden?"
          "admin.import.confirm.promote_button" => "Live setzen"
          "admin.import.confirm.promote_text" => "Soll dieser Dry-Run jetzt live ausgeführt werden?"
          "admin.import.confirm.replace_text_button" => "Ersetzen ausführen"
          "admin.import.confirm.replace_text_text" => "Soll die Such-/Ersetzen-Operation jetzt auf die ausgewählten Crawler-Texte angewendet werden?"
          "admin.import.confirm.retry_button" => "Erneut starten"
          "admin.import.confirm.retry_text" => "Soll dieser fehlgeschlagene Import erneut gestartet werden?"
          "admin.import.confirm.sql_import_button" => "SQL-Import starten"
          "admin.import.confirm.sql_import_text" => "Soll der ausgewählte SQL-Import jetzt gestartet werden?"
          "admin.import.confirm.stop_crawler_button" => "Crawler stoppen"
          "admin.import.confirm.stop_crawler_text" => "Soll der laufende Crawler-Prozess gestoppt werden?"
          "admin.import.detail.completed" => "Abgeschlossen"
          "admin.import.detail.created" => "Neu"
          "admin.import.detail.deleted" => "Gelöscht"
          "admin.import.detail.duration" => "Dauer"
          "admin.import.detail.errors" => "Fehler"
          "admin.import.detail.source" => "Quelle"
          "admin.import.detail.started" => "Gestartet"
          "admin.import.detail.status" => "Status"
          "admin.import.detail.total_records" => "Datensätze gesamt"
          "admin.import.detail.updated" => "Aktualisiert"
          "admin.import.errors.chrome_binary_missing" => "Kein Chrome-Binary gefunden. Bitte installiere Chrome oder Chromium auf dem Server oder führe folgenden Befehl aus: PUPPETEER_CACHE_DIR=%cache_dir% npx puppeteer browsers install chrome."
          "admin.import.errors.console_missing" => "Die Symfony-Konsole wurde nicht gefunden."
          "admin.import.errors.crawler_already_running" => "Der ausgewählte Crawler läuft bereits mit PID %pid%."
          "admin.import.errors.crawler_script_missing" => "Das Crawler-Skript %script% wurde nicht gefunden."
          "admin.import.errors.crawler_start_failed" => "Der Crawler konnte nicht gestartet werden."
          "admin.import.errors.csv_header_unreadable" => "CSV-Header konnte nicht gelesen werden."
          "admin.import.errors.file_open_failed" => "Datei konnte nicht geöffnet werden."
          "admin.import.errors.invalid_date" => "Zeile %line%: Ungültiges Datum (%start% / %end%)"
          "admin.import.errors.invalid_file_path" => "Der angegebene Dateipfad ist ungültig."
          "admin.import.errors.invalid_sql_file" => "Es sind nur SQL-Dateien erlaubt."
          "admin.import.errors.missing_mapping" => "Kein Mapping für "%type%""
          "admin.import.errors.no_available_apartment" => "Kein freies Apartment für "%type%" (%start%-%end%)"
          "admin.import.errors.no_running_crawler" => "Für diesen Crawler läuft aktuell kein Prozess."
          "admin.import.errors.no_sql_file_found" => "Keine SQL-Datei für den Import gefunden."
          "admin.import.errors.node_unavailable" => "Node.js ist auf dem Server nicht verfügbar."
          "admin.import.errors.node_version_unsupported" => "Der Crawler benötigt Node.js >= %required%. Gefunden: %found%."
          "admin.import.errors.php_binary_missing" => "Das PHP-Binary ist auf dem Server nicht verfügbar."
          "admin.import.errors.preview_file_invalid" => "Die Vorschau-Datei enthält kein gültiges JSON."
          "admin.import.errors.preview_file_missing" => "Die Vorschau-Datei %file% wurde nicht gefunden."
          "admin.import.errors.preview_sql_generation_failed" => "Die SQL-Datei konnte aus der Vorschau nicht erzeugt werden."
          "admin.import.errors.replace_identical_values" => "Such- und Ersetzen-Wert dürfen nicht identisch sein."
          "admin.import.errors.replace_invalid_scope" => "Der ausgewählte Ersetzungsbereich ist ungültig."
          "admin.import.errors.replace_search_required" => "Bitte gib einen Suchbegriff für die Textersetzung ein."
          "admin.import.errors.sql_file_missing" => "Die SQL-Datei %file% wurde nicht gefunden."
          "admin.import.errors.sql_import_already_running" => "Ein SQL-Import läuft bereits mit PID %pid%."
          "admin.import.errors.sql_import_start_failed" => "Der SQL-Import konnte nicht gestartet werden."
          "admin.import.errors.unknown_crawler" => "Unbekannter Crawler: %key%."
          "admin.import.filters.all_statuses" => "Alle Status"
          "admin.import.filters.source_placeholder" => "Quelle filtern"
          "admin.import.galaxus.modal.add_search_rule" => "Regel hinzufügen"
          "admin.import.galaxus.modal.captcha_note" => "Falls Galaxus eine Captcha-Seite ausliefert, stoppt der Crawler ohne Umgehungsversuch und schreibt den Hinweis ins Log."
          "admin.import.galaxus.modal.category_label" => "Kategorie-Labels"
          "admin.import.galaxus.modal.category_label_placeholder" => """
            RAM\n
            Mainboards\n
            PC-Netzteile
            """
          "admin.import.galaxus.modal.category_labels_help" => "Optional eine Beschriftung pro URL-Zeile in gleicher Reihenfolge. Leer lassen, um die Kategorie automatisch aus Galaxus zu übernehmen."
          "admin.import.galaxus.modal.category_urls" => "Kategorie-URLs"
          "admin.import.galaxus.modal.category_urls_help" => "Eine Galaxus-Kategorie pro Zeile. Der Crawler sammelt Produktkarten aus den Listenansichten; fehlerhafte Kategorien werden nach Wiederholungen übersprungen und im Log vermerkt."
          "admin.import.galaxus.modal.description" => "Starte einen getrennten Galaxus-Lauf. Die Produkte werden vor dem Import als bearbeitbare Vorschau gespeichert."
          "admin.import.galaxus.modal.detail_fetch" => "Detailseiten abrufen"
          "admin.import.galaxus.modal.detail_fetch_help" => "Optional aktivieren; bei Captcha wird automatisch auf Listendaten zurückgefallen."
          "admin.import.galaxus.modal.import_delivery_time" => "Lieferzeit importieren"
          "admin.import.galaxus.modal.import_images" => "Bilder importieren"
          "admin.import.galaxus.modal.import_specifications" => "Spezifikationen importieren"
          "admin.import.galaxus.modal.import_specifications_help" => "Holt technische Daten von der Detailseite und hängt sie als bereinigte Tabelle an die Produktbeschreibung an. Externe Links werden zu Text, damit der SQL-Import quellenneutral bleibt."
          "admin.import.galaxus.modal.keep_one_rule" => "Mindestens eine Such-/Ersetzen-Zeile bleibt sichtbar."
          "admin.import.galaxus.modal.max_products" => "Limit je Kategorie"
          "admin.import.galaxus.modal.options_invalid" => "Bitte prüfe Kategorie-URLs, Limit und Preisänderung."
          "admin.import.galaxus.modal.price_mode" => "Preisänderung"
          "admin.import.galaxus.modal.price_modes.amount" => "Betrag"
          "admin.import.galaxus.modal.price_modes.percent" => "Prozent"
          "admin.import.galaxus.modal.price_value" => "Wert (+/-)"
          "admin.import.galaxus.modal.remove_rule" => "Regel entfernen"
          "admin.import.galaxus.modal.replace_placeholder" => "Ersetzen durch"
          "admin.import.galaxus.modal.search_placeholder" => "Suchen nach"
          "admin.import.galaxus.modal.search_replace" => "Suchen/Ersetzen"
          "admin.import.galaxus.modal.search_replace_help" => "Leere Suchfelder werden ignoriert. Ein leerer Ersetzen-Wert entfernt den gefundenen Text."
          "admin.import.galaxus.modal.start" => "Galaxus-Crawler starten"
          "admin.import.galaxus.modal.title" => "Galaxus-Crawler starten"
          "admin.import.galaxus.modal.yes_import" => "Ja"
          "admin.import.galaxus.preview.actions.generate_sql" => "SQL aus Vorschau erzeugen"
          "admin.import.galaxus.preview.actions.load" => "Vorschau laden"
          "admin.import.galaxus.preview.actions.save" => "Vorschau speichern"
          "admin.import.galaxus.preview.description" => "Prüfe die gecrawlten Galaxus-Produkte oder eine schnelle Shell-Referenzdatei vor dem Import. Änderungen werden in der Vorschau gespeichert und danach als SQL-Datei erzeugt."
          "admin.import.galaxus.preview.empty" => "Keine Galaxus-Vorschau geladen."
          "admin.import.galaxus.preview.file_label" => "Vorschau-/Referenzdatei"
          "admin.import.galaxus.preview.filters.all" => "Alle Produkte"
          "admin.import.galaxus.preview.filters.category" => "Kategorie suchen"
          "admin.import.galaxus.preview.filters.category_placeholder" => "Kategoriepfad"
          "admin.import.galaxus.preview.filters.clear" => "Zurücksetzen"
          "admin.import.galaxus.preview.filters.count" => "%visible% von %total% Produkten sichtbar"
          "admin.import.galaxus.preview.filters.import_status" => "Import-Status"
          "admin.import.galaxus.preview.filters.only_import" => "Nur Import"
          "admin.import.galaxus.preview.filters.only_skip" => "Nur überspringen"
          "admin.import.galaxus.preview.filters.search" => "Produktsuche"
          "admin.import.galaxus.preview.filters.search_placeholder" => "Name, SKU, Hersteller, Beschreibung"
          "admin.import.galaxus.preview.messages.list_load_failed" => "Die Vorschau-Dateiliste konnte nicht geladen werden."
          "admin.import.galaxus.preview.messages.load_failed" => "Vorschau konnte nicht geladen werden: %error%"
          "admin.import.galaxus.preview.messages.no_files" => "Keine Galaxus-Vorschauen vorhanden."
          "admin.import.galaxus.preview.messages.no_preview_selected" => "Bitte wähle zuerst eine Vorschau aus."
          "admin.import.galaxus.preview.messages.save_failed" => "Vorschau konnte nicht gespeichert werden: %error%"
          "admin.import.galaxus.preview.messages.saved" => "Vorschau wurde gespeichert."
          "admin.import.galaxus.preview.messages.sql_failed" => "SQL-Erzeugung fehlgeschlagen: %error%"
          "admin.import.galaxus.preview.messages.sql_generated" => "SQL-Datei wurde erzeugt: %file%"
          "admin.import.galaxus.preview.meta" => "%count% Produkte · Erstellt: %created% · Datei: %file%"
          "admin.import.galaxus.preview.reference_missing_delivery_warning" => "%count% Referenzprodukt(e) enthalten keine Lieferzeit."
          "admin.import.galaxus.preview.reference_missing_price_warning" => "%count% Referenzprodukt(e) enthalten keinen Preis."
          "admin.import.galaxus.preview.reference_review_warning" => "Diese Shell-Referenz wurde schnell aus Galaxus-Detailseiten erzeugt. Bitte Preise, Lieferzeiten und Import-Haken vor der SQL-Erzeugung prüfen."
          "admin.import.galaxus.preview.select_placeholder" => "Bitte Vorschau oder Referenz auswählen"
          "admin.import.galaxus.preview.spec_summary" => "Technische Daten: %groups% Gruppen / %rows% Zeilen"
          "admin.import.galaxus.preview.sql_meta" => "SQL: %file%"
          "admin.import.galaxus.preview.table.category" => "Kategoriepfad"
          "admin.import.galaxus.preview.table.delivery_time" => "Lieferzeit"
          "admin.import.galaxus.preview.table.description" => "Beschreibung"
          "admin.import.galaxus.preview.table.import" => "Import"
          "admin.import.galaxus.preview.table.manufacturer" => "Hersteller"
          "admin.import.galaxus.preview.table.name" => "Name"
          "admin.import.galaxus.preview.table.price" => "Preis"
          "admin.import.galaxus.preview.table.raw_data" => "Alle Daten"
          "admin.import.galaxus.preview.table.sku" => "SKU"
          "admin.import.galaxus.preview.table.stock" => "Lager"
          "admin.import.galaxus.preview.types.preview" => "Vorschau"
          "admin.import.galaxus.preview.types.reference" => "Referenz"
          "admin.import.galaxus.preview.warning_prefix" => "Hinweis:"
          "admin.import.help_index.card_subtitle" => "Logs, Live-Setzen, SQL-Import, Crawler-Steuerung"
          "admin.import.help_index.card_title" => "Import & Crawler"
          "admin.import.help.back" => "Zurück"
          "admin.import.help.navigation.api" => "API-Endpunkte"
          "admin.import.help.navigation.crawler" => "Crawler-Steuerung"
          "admin.import.help.navigation.fields" => "Feldreferenz"
          "admin.import.help.navigation.galaxus" => "Galaxus-Vorschau"
          "admin.import.help.navigation.import_log" => "Import-Log Workflow"
          "admin.import.help.navigation.overview" => "Überblick"
          "admin.import.help.navigation.promote" => "Dry-Run → Live"
          "admin.import.help.navigation.sql" => "SQL-Import"
          "admin.import.help.navigation.text_replace" => "Text-Ersetzen"
          "admin.import.help.navigation.title" => "Navigation"
          "admin.import.help.page_title" => "Hilfe: Daten-Import"
          "admin.import.help.sections.api.rows.crawler_log" => "Crawler-Log abrufen"
          "admin.import.help.sections.api.rows.crawler_start" => "Crawler starten"
          "admin.import.help.sections.api.rows.crawler_stop" => "Crawler stoppen"
          "admin.import.help.sections.api.rows.crawler_text_replace" => "Crawler-Texte global suchen/ersetzen"
          "admin.import.help.sections.api.rows.delete" => "Import-Log löschen"
          "admin.import.help.sections.api.rows.notes" => "Notizen hinzufügen"
          "admin.import.help.sections.api.rows.overview" => "Import-Übersicht"
          "admin.import.help.sections.api.rows.preview_detail" => "Crawler-Vorschau laden"
          "admin.import.help.sections.api.rows.preview_files" => "Crawler-Vorschauen auflisten"
          "admin.import.help.sections.api.rows.preview_save" => "Bearbeitete Crawler-Vorschau speichern"
          "admin.import.help.sections.api.rows.preview_sql" => "SQL aus Crawler-Vorschau erzeugen"
          "admin.import.help.sections.api.rows.promote" => "Dry-Run zu Live befördern"
          "admin.import.help.sections.api.rows.retry" => "Fehlgeschlagenen Import wiederholen"
          "admin.import.help.sections.api.rows.sql_files" => "SQL-Dateien auflisten"
          "admin.import.help.sections.api.rows.sql_start" => "SQL-Import starten"
          "admin.import.help.sections.api.table.function" => "Funktion"
          "admin.import.help.sections.api.table.method" => "Methode"
          "admin.import.help.sections.api.table.url" => "URL"
          "admin.import.help.sections.api.title" => "API-Endpunkte"
          "admin.import.help.sections.crawler.available_title" => "Verfügbare Crawler:"
          "admin.import.help.sections.crawler.available.galaxus" => "<code>crawler_galaxus.js</code> – Galaxus-Kategorieseiten mit editierbarer Importvorschau"
          "admin.import.help.sections.crawler.available.wave" => "<code>crawler_wave.js</code> – Wave Produktkatalog mit konfigurierbarem Start-Modal"
          "admin.import.help.sections.crawler.available.wede_soft" => "<code>crawler_wede-soft.js</code> – Wede-Soft Produktkatalog"
          "admin.import.help.sections.crawler.intro" => "Crawler können direkt aus dem Admin gestartet und gestoppt werden:"
          "admin.import.help.sections.crawler.steps.max_products" => "Bei Wave/Galaxus werden Limit und weitere Laufzeitoptionen im Start-Modal gepflegt."
          "admin.import.help.sections.crawler.steps.select" => "In <strong>Import → Crawler</strong> den gewünschten Crawler auswählen"
          "admin.import.help.sections.crawler.steps.start" => "<kbd><i class="fa fa-play"></i> Crawler starten</kbd> startet den Node.js-Prozess im Hintergrund"
          "admin.import.help.sections.crawler.steps.stop" => "<kbd><i class="fa fa-stop"></i> Crawler stoppen</kbd> beendet den laufenden Prozess"
          "admin.import.help.sections.crawler.steps.watch" => "Fortschritt im Live-Log beobachten."
          "admin.import.help.sections.crawler.steps.wave_modal" => "Für Wave zusätzlich Start-URL, Login-Fallback-URLs und optionale Login-Selektoren im Modal setzen. Zugangsdaten bleiben in der lokalen ENV-Datei."
          "admin.import.help.sections.crawler.title" => "Crawler-Steuerung"
          "admin.import.help.sections.crawler.warning" => "Crawler laufen im Hintergrund. Ein Server-Neustart beendet alle laufenden Crawler."
          "admin.import.help.sections.fields.rows.created_at" => "Startzeit des Import-Laufs"
          "admin.import.help.sections.fields.rows.error_count" => "Anzahl erkannter Fehler"
          "admin.import.help.sections.fields.rows.filename" => "Name der SQL-Datei oder Crawler-Bezeichnung"
          "admin.import.help.sections.fields.rows.log" => "Detailliertes Import-Protokoll"
          "admin.import.help.sections.fields.rows.notes" => "Interne Admin-Notizen zum Import"
          "admin.import.help.sections.fields.rows.products_imported" => "Anzahl erfolgreich importierter Produkte"
          "admin.import.help.sections.fields.rows.products_skipped" => "Übersprungene Produkte, z.B. Duplikate"
          "admin.import.help.sections.fields.rows.source" => "Crawler-Bezeichnung oder importierter SQL-Dateiname"
          "admin.import.help.sections.fields.rows.status" => "pending / dry_run / live / failed"
          "admin.import.help.sections.fields.table.description" => "Beschreibung"
          "admin.import.help.sections.fields.table.field" => "Feld"
          "admin.import.help.sections.fields.table.type" => "Typ"
          "admin.import.help.sections.fields.title" => "Feldreferenz: ImportLog"
          "admin.import.help.sections.fields.types.datetime" => "Datum/Zeit"
          "admin.import.help.sections.fields.types.enum" => "Enum"
          "admin.import.help.sections.fields.types.integer" => "Integer"
          "admin.import.help.sections.fields.types.text" => "Text"
          "admin.import.help.sections.fields.types.text_json" => "Text (JSON)"
          "admin.import.help.sections.galaxus.intro" => "Der Galaxus-Crawler arbeitet dateibasiert: Er liest eine oder mehrere Kategorieseiten, speichert eine JSON-Vorschau und erzeugt daraus eine SQL-Datei für den manuellen Import."
          "admin.import.help.sections.galaxus.options.categories" => "Kategorie-URLs: eine URL pro Zeile, z.B. <code>https://www.galaxus.de/de/s1/sector/it-multimedia-1</code>. Kategorie-Labels können optional in gleicher Reihenfolge je URL-Zeile angegeben werden; leere Label-Zeilen übernehmen die von Galaxus erkannte Kategorie. Kategorien mit HTTP2-/Netzwerkfehlern werden wiederholt und danach übersprungen, ohne den gesamten Lauf abzubrechen."
          "admin.import.help.sections.galaxus.options.delivery" => "Lieferzeit importieren kann abgeschaltet werden, wenn Galaxus nur ungenaue Verfügbarkeiten liefert."
          "admin.import.help.sections.galaxus.options.images" => "Bilder importieren lädt alle gefundenen Produktbilder nach <code>public/uploads/products</code> und bindet sie mit ihrer Reihenfolge als Produktgalerie ein."
          "admin.import.help.sections.galaxus.options.limit" => "Limit begrenzt die Anzahl der Produkte je Kategorie-URL. Der Crawler nutzt bevorzugt die Galaxus-GraphQL-Cursorliste und kann dadurch deutlich mehr als die initial sichtbaren 24 Produkte laden; der Browser-Scroll mit <strong>Mehr anzeigen</strong> bleibt als Fallback erhalten."
          "admin.import.help.sections.galaxus.options.price" => "Preisänderung unterstützt feste Beträge und Prozentwerte; negative Werte reduzieren den Preis."
          "admin.import.help.sections.galaxus.options.reference" => "Der Shell-Referenzsammler <code>tools/galaxus-reference-collector.sh</code> kann vorab Produktname, Artikelnummer, EAN, Kategorie und Bild-URLs als JSONL unter <code>var/crawlers/galaxus_reference</code> speichern. Diese Referenzdateien erscheinen in der Galaxus-Vorschau-Auswahl und können dort als bearbeitbare Vorschau gespeichert werden. Der Galaxus-Crawler nutzt automatisch die neueste Referenzdatei oder explizit <code>GALAXUS_REFERENCE_FILE</code>."
          "admin.import.help.sections.galaxus.options.replace" => "Suchen/Ersetzen bereinigt alle importrelevanten Textfelder bereits vor der Vorschau, inklusive Kategoriepfad, Artikelnummer, Hersteller, EAN, Tags und SEO-Texten."
          "admin.import.help.sections.galaxus.options.specifications" => "Spezifikationen importieren liest technische Daten von der Detailseite, ignoriert Release-Datum, Verkaufsrang, Lieferumfang, Herkunft, freiwilligen Klimabeitrag, rechtliche Hinweise und Verpackungsdimensionen, entfernt externe Links und erzeugt quellenneutrales HTML für den SQL-Import."
          "admin.import.help.sections.galaxus.preview" => "Nach dem Crawlerlauf eine Vorschau-Datei bewusst auswählen, Import-Haken und Produktwerte prüfen, Rohdaten je Zeile kontrollieren, speichern und anschließend SQL erzeugen. Erst danach die erzeugte SQL-Datei im SQL-Import manuell starten."
          "admin.import.help.sections.galaxus.title" => "Galaxus-Crawler mit Vorschau"
          "admin.import.help.sections.import_log.intro" => "Jeder Import wird in einem <strong>ImportLog</strong>-Datensatz protokolliert:"
          "admin.import.help.sections.import_log.rows.dry_run.meaning" => "Test-Import ohne Datenbankänderungen"
          "admin.import.help.sections.import_log.rows.dry_run.next" => "Prüfen, dann live setzen"
          "admin.import.help.sections.import_log.rows.failed.meaning" => "Import fehlgeschlagen"
          "admin.import.help.sections.import_log.rows.failed.next" => "Erneut starten oder Fehler beheben"
          "admin.import.help.sections.import_log.rows.live.meaning" => "Produktiv eingespielt"
          "admin.import.help.sections.import_log.rows.live.next" => "Fertig"
          "admin.import.help.sections.import_log.rows.pending.meaning" => "Import in Warteschlange"
          "admin.import.help.sections.import_log.rows.pending.next" => "Automatisch verarbeitet"
          "admin.import.help.sections.import_log.sources_title" => "Import-Quellen (<code>source</code>):"
          "admin.import.help.sections.import_log.sources.crawler" => "<code>crawler</code> – Von einem der Crawler-Skripte"
          "admin.import.help.sections.import_log.sources.manual" => "<code>manual</code> – Manuell initiiert"
          "admin.import.help.sections.import_log.sources.sql" => "<code>import_products_*.sql</code> – der tatsächliche SQL-Dateiname des gestarteten Imports"
          "admin.import.help.sections.import_log.table.meaning" => "Bedeutung"
          "admin.import.help.sections.import_log.table.next_step" => "Nächster Schritt"
          "admin.import.help.sections.import_log.table.status" => "Status"
          "admin.import.help.sections.import_log.title" => "Import-Log Workflow"
          "admin.import.help.sections.overview.cards.crawler.text" => "Node.js-Scraper für externe Shops"
          "admin.import.help.sections.overview.cards.crawler.title" => "Crawler"
          "admin.import.help.sections.overview.cards.promote.text" => "Zweistufiger sicherer Import"
          "admin.import.help.sections.overview.cards.promote.title" => "Dry-Run → Live"
          "admin.import.help.sections.overview.cards.sql.text" => "Direkte SQL-Datei einspielen"
          "admin.import.help.sections.overview.cards.sql.title" => "SQL-Import"
          "admin.import.help.sections.overview.intro" => "Das Import-Modul bietet drei Wege, Produktdaten in den Shop einzuspielen:"
          "admin.import.help.sections.overview.permissions_label" => "Berechtigungen:"
          "admin.import.help.sections.overview.title" => "Import-System: Überblick"
          "admin.import.help.sections.promote.api" => "<strong>API:</strong> <code>POST /admin/import-control/{id}/promote</code>"
          "admin.import.help.sections.promote.intro" => "Der <strong>zweistufige Import-Prozess</strong> schützt vor ungewollten Datenänderungen:"
          "admin.import.help.sections.promote.notes_text" => "<code>POST /admin/import-control/{id}/notes</code> fügt interne Notizen zu einem Import-Lauf hinzu."
          "admin.import.help.sections.promote.notes_title" => "Notizen"
          "admin.import.help.sections.promote.retry_text" => "<code>POST /admin/import-control/{id}/retry</code> startet einen fehlgeschlagenen Import erneut."
          "admin.import.help.sections.promote.retry_title" => "Retry bei Fehlern"
          "admin.import.help.sections.promote.steps.dry_run" => "<strong>Dry-Run</strong>: Der Import wird simuliert, alle Änderungen werden protokolliert, aber nicht gespeichert"
          "admin.import.help.sections.promote.steps.promote" => "<kbd><i class="fa fa-arrow-up"></i> Live setzen</kbd> führt den Import produktiv aus."
          "admin.import.help.sections.promote.steps.review" => "Ein Admin prüft die Vorschau, z.B. Produktanzahl, neue Kategorien und Preisänderungen."
          "admin.import.help.sections.promote.title" => "Dry-Run → Live (Promote)"
          "admin.import.help.sections.sql.api_title" => "API:"
          "admin.import.help.sections.sql.api.files" => "<code>GET /admin/import-control/sql/files</code> listet verfügbare SQL-Dateien auf"
          "admin.import.help.sections.sql.api.log" => "<code>GET /admin/import-control/sql/log</code> ruft das Import-Log ab"
          "admin.import.help.sections.sql.api.start" => "<code>POST /admin/import-control/sql/start</code> startet den SQL-Import"
          "admin.import.help.sections.sql.api.status" => "<code>GET /admin/import-control/sql/status</code> ruft den aktuellen Status ab"
          "admin.import.help.sections.sql.steps.dry_run" => "<kbd>Dry-Run starten</kbd> zeigt eine sichere Vorschau der Änderungen"
          "admin.import.help.sections.sql.steps.files_appear" => "In <strong>Import → SQL-Import</strong> erscheinen verfügbare Dateien automatisch"
          "admin.import.help.sections.sql.steps.live" => "<kbd>Live einspielen</kbd> führt den Import nach Prüfung der Vorschau produktiv aus"
          "admin.import.help.sections.sql.steps.log_entry" => "Ein Import-Log-Eintrag wird erstellt."
          "admin.import.help.sections.sql.steps.place_file" => "SQL-Datei in das Verzeichnis <code>sql/</code> legen"
          "admin.import.help.sections.sql.steps.select_file" => "Datei auswählen"
          "admin.import.help.sections.sql.title" => "SQL-Import"
          "admin.import.help.sections.text_replace.intro" => "Mit der Zusatzmaske im Import-Modul lassen sich importierte Crawler-Texte nachträglich bereinigen, zum Beispiel alte Markenbegriffe in Produkt- und SEO-Daten."
          "admin.import.help.sections.text_replace.note" => "Die Ersetzung arbeitet aktuell auf Produkttexten inklusive Slug, SKU, EAN, Video-URL und Tags, SEO-Metadaten und importierten Systemeinstellungen. Treffer werden unabhängig von Groß-/Kleinschreibung ersetzt."
          "admin.import.help.sections.text_replace.steps.confirm" => "Die Operation über den Admin-Bestätigungsdialog auslösen."
          "admin.import.help.sections.text_replace.steps.replace" => "Optional den neuen Zieltext im Feld <strong>Ersetzen durch</strong> eintragen. Ein leerer Wert entfernt den Suchtext."
          "admin.import.help.sections.text_replace.steps.scope" => "Den Bereich auswählen: alle Crawler-Texte, nur Produkte, nur SEO oder nur Einstellungen."
          "admin.import.help.sections.text_replace.steps.search" => "Im Feld <strong>Suchen nach</strong> den Altbegriff eingeben, z.B. <code>Wede Soft</code>."
          "admin.import.help.sections.text_replace.title" => "Text-Ersetzen für Crawler-Inhalte"
          "admin.import.help.to_module" => "Zum Modul"
          "admin.import.kpi.dry_run" => "Dry-Run"
          "admin.import.kpi.failed" => "Fehlgeschlagen"
          "admin.import.kpi.pending" => "Wartend"
          "admin.import.kpi.running" => "Laufend"
          "admin.import.kpi.success" => "Erfolgreich"
          "admin.import.kpi.total" => "Importe gesamt"
          "admin.import.messages.crawler_start_failed" => "Crawler-Start fehlgeschlagen."
          "admin.import.messages.crawler_started" => "Crawler wurde gestartet."
          "admin.import.messages.crawler_status_load_failed" => "Crawler-Status konnte nicht geladen werden."
          "admin.import.messages.crawler_stop_failed" => "Crawler-Stopp fehlgeschlagen."
          "admin.import.messages.crawler_stopped" => "Crawler wurde gestoppt."
          "admin.import.messages.dry_flag" => "Dry-Run"
          "admin.import.messages.duration_seconds" => "%seconds% s"
          "admin.import.messages.file_list_load_failed" => "Die SQL-Dateiliste konnte nicht geladen werden."
          "admin.import.messages.import_live_set" => "Import wurde live gesetzt."
          "admin.import.messages.import_log_deleted" => "Import-Log wurde gelöscht."
          "admin.import.messages.import_retry_marked" => "Import wurde zum erneuten Start markiert."
          "admin.import.messages.invalid_crawler_api" => "Ungültige Antwort der Crawler-API."
          "admin.import.messages.loading" => "Lädt"
          "admin.import.messages.loading_ellipsis" => "Lädt…"
          "admin.import.messages.meta_file" => "Datei: %value%"
          "admin.import.messages.meta_last_start" => "Letzter Start: %value%"
          "admin.import.messages.meta_log" => "Log: %value%"
          "admin.import.messages.no_crawlers_found" => "Keine Crawler gefunden."
          "admin.import.messages.no_diff_data" => "Für diesen Lauf liegen keine Diff-Daten vor."
          "admin.import.messages.no_entries_found" => "Keine Einträge gefunden."
          "admin.import.messages.no_errors" => "Keine Fehler vorhanden."
          "admin.import.messages.no_log_output" => "Keine Log-Ausgabe vorhanden."
          "admin.import.messages.no_sql_file_selected" => "Bitte wähle zuerst eine SQL-Datei aus."
          "admin.import.messages.no_sql_snapshots" => "Keine SQL-Snapshots vorhanden."
          "admin.import.messages.notes_placeholder" => "Interne Notizen für diesen Import-Lauf"
          "admin.import.messages.notes_saved" => "Notizen wurden gespeichert."
          "admin.import.messages.page_info" => "Seite %page% von %pages% · %total% Einträge"
          "admin.import.messages.promote_failed" => "Live-Setzen fehlgeschlagen."
          "admin.import.messages.replace_no_changes" => "Es wurden keine passenden Crawler-Texte für „%search%“ gefunden."
          "admin.import.messages.replace_success" => "Textersetzung abgeschlossen: %records% Datensätze geändert, %fields% Felder aktualisiert (Produkte: %products%, SEO: %seo%, Einstellungen: %settings%)."
          "admin.import.messages.retry_failed" => "Erneuter Start fehlgeschlagen."
          "admin.import.messages.running_with_elapsed" => "Läuft seit %elapsed%"
          "admin.import.messages.sql_import_completed" => "SQL-Import abgeschlossen."
          "admin.import.messages.sql_import_completed_details" => "SQL-Import abgeschlossen: %created% Produkte importiert, %errors% Fehler."
          "admin.import.messages.sql_import_completed_failed" => "SQL-Import fehlgeschlagen: %created% Produkte importiert, %errors% Fehler. Bitte Import-Log prüfen."
          "admin.import.messages.sql_import_failed" => "SQL-Import fehlgeschlagen."
          "admin.import.messages.sql_import_started" => "SQL-Import wurde gestartet."
          "admin.import.modals.crawler_log_title" => "Crawler-Log"
          "admin.import.modals.detail_title" => "Import-Details"
          "admin.import.modals.sql_import_log_title" => "SQL-Import-Log"
          "admin.import.modals.tabs.diff" => "Diff"
          "admin.import.modals.tabs.errors" => "Fehler"
          "admin.import.modals.tabs.notes" => "Notizen"
          "admin.import.modals.tabs.overview" => "Überblick"
          "admin.import.notifications.import_completed" => "%imported% Buchungen importiert, %skipped% übersprungen."
          "admin.import.notifications.mapping_deleted" => "Mapping gelöscht."
          "admin.import.notifications.mappings_saved" => "Mappings gespeichert."
          "admin.import.notifications.no_file_uploaded" => "Keine Datei hochgeladen."
          "admin.import.page.subtitle" => "Crawler, SQL-Importe und Laufhistorie zentral überwachen und steuern."
          "admin.import.page.title" => "Import Control Center"
          "admin.import.prompts.max_products" => "Maximale Produktanzahl (leer = unbegrenzt)"
          "admin.import.sections.crawler_execution" => "Crawler-Ausführung"
          "admin.import.sections.galaxus_preview" => "Galaxus-Vorschau"
          "admin.import.sections.import_runs" => "Import-Läufe"
          "admin.import.sections.sql_import" => "SQL-Import"
          "admin.import.sections.text_replace" => "Text-Ersetzen"
          "admin.import.sql.description" => "Wähle eine SQL-Datei aus dem Verzeichnis <code>sql/</code> und starte den Import mit vollständigem Protokoll direkt aus dem Backend."
          "admin.import.sql.file_label" => "SQL-Datei"
          "admin.import.status.dry_run" => "Dry-Run"
          "admin.import.status.failed" => "Fehlgeschlagen"
          "admin.import.status.idle" => "Bereit"
          "admin.import.status.pending" => "Wartend"
          "admin.import.status.running" => "Läuft"
          "admin.import.status.success" => "Erfolgreich"
          "admin.import.table.actions" => "Aktionen"
          "admin.import.table.crawler" => "Crawler"
          "admin.import.table.created" => "Neu"
          "admin.import.table.duration" => "Dauer"
          "admin.import.table.errors" => "Fehler"
          "admin.import.table.field" => "Feld"
          "admin.import.table.last_started" => "Zuletzt gestartet"
          "admin.import.table.log_size" => "Log-Größe"
          "admin.import.table.new" => "Neu"
          "admin.import.table.old" => "Alt"
          "admin.import.table.reference" => "Referenz"
          "admin.import.table.script" => "Skript"
          "admin.import.table.source" => "Quelle"
          "admin.import.table.started" => "Gestartet"
          "admin.import.table.status" => "Status"
          "admin.import.table.total" => "Gesamt"
          "admin.import.table.updated" => "Aktualisiert"
          "admin.import.text_replace.description" => "Bereinigt importierte Crawler-Texte direkt in Produkt-, SEO- und Einstellungsdaten. Sinnvoll für alte Markenbegriffe oder Legacy-Domainreste aus früheren Wede-Importen."
          "admin.import.text_replace.help" => "Die Ersetzung arbeitet case-insensitive auf den ausgewählten Crawler-Textbereichen. Ein leerer Ersetzen-Wert entfernt den Suchtext vollständig."
          "admin.import.text_replace.replace_label" => "Ersetzen durch"
          "admin.import.text_replace.scope_label" => "Bereich"
          "admin.import.text_replace.scopes.all" => "Alle Crawler-Texte"
          "admin.import.text_replace.scopes.product" => "Nur Produkttexte"
          "admin.import.text_replace.scopes.seo" => "Nur SEO-Texte"
          "admin.import.text_replace.scopes.settings" => "Nur importierte Einstellungen"
          "admin.import.text_replace.search_label" => "Suchen nach"
          "admin.import.wave.modal.add_search_rule" => "Suchen/Ersetzen-Regel hinzufügen"
          "admin.import.wave.modal.alternative_category" => "Alternative Kategorie"
          "admin.import.wave.modal.alternative_category_help" => "Optional: Erzwingt den Kategoriepfad für alle Produkte, z.B. Hardware > RAM."
          "admin.import.wave.modal.alternative_category_placeholder" => "Hardware > PC-Komponenten > Arbeitsspeicher"
          "admin.import.wave.modal.description" => "Starte den Wave-Crawler mit Laufzeitoptionen aus dem Admin. Zugangsdaten und Login-URL bleiben in der lokalen ENV-Datei."
          "admin.import.wave.modal.fulfillment_mode" => "Verkaufsmodus"
          "admin.import.wave.modal.fulfillment_modes.online_only" => "Nur Online"
          "admin.import.wave.modal.fulfillment_modes.pickup_available" => "Abholung im Geschäft anbieten"
          "admin.import.wave.modal.fulfillment_modes.pickup_only" => "Nur Abholung im Geschäft"
          "admin.import.wave.modal.import_images" => "Bilder importieren"
          "admin.import.wave.modal.keep_one_rule" => "Mindestens eine Regelzeile bleibt erhalten."
          "admin.import.wave.modal.login_enabled" => "Login vor Crawl ausführen"
          "admin.import.wave.modal.login_password_selector" => "Passwort-Selektor (optional)"
          "admin.import.wave.modal.login_submit_selector" => "Submit-Selektor (optional)"
          "admin.import.wave.modal.login_success_selector" => "Login-Erfolgsselektor (optional)"
          "admin.import.wave.modal.login_success_selector_help" => "Optionales CSS-Selektor-Muster für ein Element, das nach erfolgreichem Login sichtbar ist."
          "admin.import.wave.modal.login_url_candidates" => "Alternative Login-URLs (optional)"
          "admin.import.wave.modal.login_url_candidates_help" => "Eine URL pro Zeile. Wird genutzt, falls die primäre Login-URL nicht erreichbar ist."
          "admin.import.wave.modal.login_user_selector" => "Benutzerfeld-Selektor (optional)"
          "admin.import.wave.modal.max_products" => "Maximale Produktanzahl"
          "admin.import.wave.modal.options_invalid" => "Bitte prüfe Start-URL und Produktlimit."
          "admin.import.wave.modal.price_mode" => "Preisanpassung"
          "admin.import.wave.modal.price_modes.amount" => "Fixer Betrag"
          "admin.import.wave.modal.price_modes.percent" => "Prozent"
          "admin.import.wave.modal.price_value" => "Preisanpassungswert"
          "admin.import.wave.modal.remove_rule" => "Regel entfernen"
          "admin.import.wave.modal.replace_placeholder" => "Ersetzen durch"
          "admin.import.wave.modal.search_placeholder" => "Suchen nach"
          "admin.import.wave.modal.search_replace" => "Suchen/Ersetzen-Regeln"
          "admin.import.wave.modal.search_replace_help" => "Wird auf Produktname, Beschreibung, Hersteller und Label angewendet."
          "admin.import.wave.modal.skip_without_description" => "Produkte ohne Beschreibung überspringen"
          "admin.import.wave.modal.skip_without_image" => "Produkte ohne Bild überspringen"
          "admin.import.wave.modal.start" => "Wave-Crawler starten"
          "admin.import.wave.modal.start_url" => "Start-Kategorie-URL"
          "admin.import.wave.modal.start_url_help" => "Von dieser Wave-Kategorieseite startet die Produkterfassung."
          "admin.import.wave.modal.title" => "Wave-Crawler starten"
          "admin.import.wave.modal.yes_import" => "Ja, anwenden"
          "admin.import.wave.modal.yes_skip" => "Ja, überspringen"
          "admin.legacy.blog.actions.delete_confirm" => "Möchten Sie den Blogbeitrag "%title%" wirklich löschen?"
          "admin.legacy.blog.errors.not_found" => "Blogbeitrag nicht gefunden."
          "admin.legacy.blog.form.actions.save" => "Beitrag speichern"
          "admin.legacy.blog.form.actions.show_history" => "Historie anzeigen"
          "admin.legacy.blog.form.fields.active" => "Aktiv?"
          "admin.legacy.blog.form.fields.author" => "Autor"
          "admin.legacy.blog.form.fields.author_placeholder" => "Autor auswählen"
          "admin.legacy.blog.form.fields.categories" => "Kategorien"
          "admin.legacy.blog.form.fields.content" => "Inhalt"
          "admin.legacy.blog.form.fields.current_image" => "Aktuelles Bild"
          "admin.legacy.blog.form.fields.image" => "Bild"
          "admin.legacy.blog.form.fields.image_placeholder" => "Bild auswählen"
          "admin.legacy.blog.form.fields.published_at" => "Veröffentlichungsdatum"
          "admin.legacy.blog.form.fields.title" => "Titel"
          "admin.legacy.blog.form.titles.edit" => "Blogbeitrag bearbeiten"
          "admin.legacy.blog.form.titles.new" => "Blogbeitrag anlegen"
          "admin.legacy.blog.form.validation.image_format" => "Bitte ein JPG- oder PNG-Bild verwenden."
          "admin.legacy.blog.modal.cancel" => "Abbrechen"
          "admin.legacy.blog.modal.confirm" => "Löschen"
          "admin.legacy.blog.modal.default_name" => "diesen Blogbeitrag"
          "admin.legacy.blog.modal.title" => "Blogbeitrag löschen"
          "admin.legacy.blog.notifications.created" => "Blogbeitrag wurde angelegt."
          "admin.legacy.blog.notifications.updated" => "Blogbeitrag wurde gespeichert."
          "admin.legacy.blog.page_subtitle" => "Verwalte Blogbeiträge, Veröffentlichungsdaten und Sichtbarkeit."
          "admin.legacy.blog.page_title" => "Blog"
          "admin.legacy.blog.table.created" => "Erstellt"
          "admin.legacy.blog.table.delete" => "Löschen"
          "admin.legacy.blog.table.edit" => "Bearbeiten"
          "admin.legacy.blog.table.preview" => "Vorschau"
          "admin.legacy.blog.table.published_at" => "Veröffentlichungsdatum"
          "admin.legacy.blog.table.status" => "Status"
          "admin.legacy.blog.table.title" => "Blog-Liste"
          "admin.legacy.blog.table.title_column" => "Titel"
          "admin.legacy.categories.actions.new" => "Neue Kategorie"
          "admin.legacy.categories.bulk.hint" => "Wähle zuerst ein oder mehrere Elemente aus."
          "admin.legacy.categories.bulk.validation" => "Bitte wähle mindestens eine Kategorie für die Gruppenaktion aus."
          "admin.legacy.categories.errors.not_found" => "Kategorie nicht gefunden."
          "admin.legacy.categories.form.actions.back_to_list" => "Zurück zur Kategorienliste"
          "admin.legacy.categories.form.actions.save" => "Kategorie speichern"
          "admin.legacy.categories.form.fields.name" => "Name"
          "admin.legacy.categories.form.fields.parent" => "Übergeordnete Kategorie"
          "admin.legacy.categories.form.panel_title" => "Kategorie-Daten"
          "admin.legacy.categories.form.subtitle" => "Pflege Name, Struktur und Sichtbarkeit deiner Blog-Kategorie in einer klaren Formularansicht."
          "admin.legacy.categories.form.titles.edit" => "Blog-Kategorie bearbeiten"
          "admin.legacy.categories.form.titles.new" => "Blog-Kategorie anlegen"
          "admin.legacy.categories.list_count" => "%count% Einträge"
          "admin.legacy.categories.modal.cancel" => "Abbrechen"
          "admin.legacy.categories.modal.confirm" => "Löschen"
          "admin.legacy.categories.modal.default_name" => "diese Kategorie"
          "admin.legacy.categories.modal.delete_confirm" => "Möchtest du die Kategorie "%name%" wirklich löschen?"
          "admin.legacy.categories.modal.title" => "Kategorie löschen"
          "admin.legacy.categories.notifications.created" => "Kategorie wurde angelegt."
          "admin.legacy.categories.notifications.updated" => "Kategorie wurde gespeichert."
          "admin.legacy.categories.page_subtitle" => "Blog-Kategorien strukturiert verwalten und die Sichtbarkeit steuern."
          "admin.legacy.categories.page_title" => "Kategorien"
          "admin.legacy.categories.panel_title" => "Kategorienliste"
          "admin.legacy.categories.table.empty" => "Keine Kategorien vorhanden."
          "admin.legacy.categories.table.name" => "Name"
          "admin.legacy.categories.table.parent" => "Sub-Kategorie von"
          "admin.legacy.faq.actions.new" => "Neue FAQ"
          "admin.legacy.faq.bulk.hint" => "Wähle zuerst ein oder mehrere FAQ-Einträge aus."
          "admin.legacy.faq.bulk.validation" => "Bitte wähle mindestens einen FAQ-Eintrag für die Gruppenaktion aus."
          "admin.legacy.faq.form.fields.answer" => "Antwort"
          "admin.legacy.faq.form.fields.question" => "Frage"
          "admin.legacy.faq.form.panel_title" => "FAQ-Inhalt"
          "admin.legacy.faq.form.subtitle" => "Verwalte Frage und Antwort in einer modernen Eingabemaske für deine Wissensdatenbank."
          "admin.legacy.faq.form.titles.edit" => "FAQ bearbeiten"
          "admin.legacy.faq.form.titles.new" => "Neue FAQ"
          "admin.legacy.faq.list_count" => "%count% Einträge"
          "admin.legacy.faq.modal.cancel" => "Abbrechen"
          "admin.legacy.faq.modal.confirm" => "Löschen"
          "admin.legacy.faq.modal.default_name" => "diesen Eintrag"
          "admin.legacy.faq.modal.delete_confirm" => "Möchtest du den FAQ-Eintrag "%name%" wirklich löschen?"
          "admin.legacy.faq.modal.title" => "FAQ-Eintrag löschen"
          "admin.legacy.faq.notifications.created" => "FAQ wurde angelegt."
          "admin.legacy.faq.notifications.updated" => "FAQ wurde gespeichert."
          "admin.legacy.faq.page_subtitle" => "Fragen und Antworten strukturiert pflegen und den Veröffentlichungsstatus steuern."
          "admin.legacy.faq.page_title" => "FAQ"
          "admin.legacy.faq.panel_title" => "FAQ-Liste"
          "admin.legacy.faq.table.answer" => "Antwort"
          "admin.legacy.faq.table.empty" => "Keine FAQ-Einträge vorhanden."
          "admin.legacy.faq.table.question" => "Frage"
          "admin.legacy.general.help_title" => "Hilfe zu diesem Modul"
          "admin.legacy.general.notifications.initialized" => "Allgemeine Einstellungen wurden initial angelegt."
          "admin.legacy.general.notifications.saved" => "Allgemeine Einstellungen wurden gespeichert."
          "admin.legacy.general.page_title" => "Allgemeine Einstellungen"
          "admin.legacy.general.section_title" => "Allgemeine Einstellungen"
          "admin.legacy.shop_categories.actions.delete_now" => "Jetzt löschen"
          "admin.legacy.shop_categories.actions.new" => "Neue Kategorie"
          "admin.legacy.shop_categories.bulk.cancel" => "Abbrechen"
          "admin.legacy.shop_categories.bulk.delete_confirm" => "Möchtest du die ausgewählten Kategorien wirklich löschen? Zugehörige Produkte werden danach keiner Kategorie mehr zugeordnet."
          "admin.legacy.shop_categories.bulk.delete_selected" => "Ausgewählte löschen"
          "admin.legacy.shop_categories.bulk.description" => "Diese Aktion entfernt die ausgewählten Kategorien."
          "admin.legacy.shop_categories.bulk.selected_count" => "%count% ausgewählt"
          "admin.legacy.shop_categories.modal.cancel" => "Abbrechen"
          "admin.legacy.shop_categories.modal.delete_confirm" => "Möchtest du die Kategorie "%name%" wirklich löschen?"
          "admin.legacy.shop_categories.modal.title" => "Löschen bestätigen"
          "admin.legacy.shop_categories.page_subtitle" => "Verwalte Struktur, SEO und Zuordnung deines Shop-Katalogs."
          "admin.legacy.shop_categories.page_title" => "Kategorien"
          "admin.legacy.shop_categories.panel_title" => "Kategorienliste"
          "admin.legacy.shop_categories.table.actions" => "Aktionen"
          "admin.legacy.shop_categories.table.meta_description" => "Meta Description"
          "admin.legacy.shop_categories.table.meta_title" => "Meta Title"
          "admin.legacy.shop_categories.table.name" => "Name"
          "admin.legacy.shop_categories.table.parent" => "Übergeordnet"
          "admin.legacy.shop_categories.table.select_all" => "Alle auswählen"
          "admin.legacy.shop_categories.table.slug" => "Slug"
          "admin.mail_templates.actions.edit" => "Bearbeiten"
          "admin.mail_templates.categories.accounts" => "Kontomails"
          "admin.mail_templates.categories.operations" => "Interne Benachrichtigungen"
          "admin.mail_templates.categories.orders" => "Bestellmails"
          "admin.mail_templates.categories.returns" => "Retouren"
          "admin.mail_templates.errors.not_found" => "Die angeforderte Mailvorlage wurde nicht gefunden."
          "admin.mail_templates.form.actions.back" => "Zur Übersicht"
          "admin.mail_templates.form.actions.cancel" => "Abbrechen"
          "admin.mail_templates.form.actions.help" => "Hilfe"
          "admin.mail_templates.form.actions.preview" => "Vorschau rendern"
          "admin.mail_templates.form.actions.reset" => "Auf Standard zurücksetzen"
          "admin.mail_templates.form.actions.reset_confirm" => "Override entfernen"
          "admin.mail_templates.form.actions.save" => "Override speichern"
          "admin.mail_templates.form.actions.send_test" => "Testmail senden"
          "admin.mail_templates.form.actions.subscriptions" => "Betreiber-Abos"
          "admin.mail_templates.form.flash.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
          "admin.mail_templates.form.flash.invalid_test_recipient" => "Bitte eine gültige E-Mail-Adresse für den Testversand angeben."
          "admin.mail_templates.form.flash.preview_rendered" => "Die Vorschau wurde erfolgreich aktualisiert."
          "admin.mail_templates.form.flash.reset" => "Der Override wurde entfernt. Der versionierte Standard ist wieder aktiv."
          "admin.mail_templates.form.flash.saved" => "Die Mailvorlage wurde gespeichert."
          "admin.mail_templates.form.flash.saved_as_default" => "Die Eingabe entspricht dem Standard. Ein vorhandener Override wurde entfernt."
          "admin.mail_templates.form.flash.test_sent" => "Die Testmail wurde an %email% versendet."
          "admin.mail_templates.form.help.html" => "Der HTML-Teil ist Pflicht und wird automatisch in das zentrale Mail-Layout eingebettet."
          "admin.mail_templates.form.help.subject" => "Twig-Ausdrücke sind erlaubt, zum Beispiel {{ orderNumber }} oder {{ shopName }}."
          "admin.mail_templates.form.help.test" => "Der Testversand verwendet den Beispiel-Kontext aus der rechten Spalte."
          "admin.mail_templates.form.help.text" => "Optional. Wenn das Feld leer bleibt, wird der Textteil automatisch aus dem HTML-Inhalt erzeugt."
          "admin.mail_templates.form.labels.category" => "Bereich"
          "admin.mail_templates.form.labels.description" => "Beschreibung"
          "admin.mail_templates.form.labels.html" => "HTML-Inhalt"
          "admin.mail_templates.form.labels.html_default" => "Standard-HTML"
          "admin.mail_templates.form.labels.locale" => "Sprache"
          "admin.mail_templates.form.labels.status" => "Status"
          "admin.mail_templates.form.labels.subject" => "Betreff-Template"
          "admin.mail_templates.form.labels.subject_default" => "Standard-Betreff"
          "admin.mail_templates.form.labels.template_key" => "Template-Key"
          "admin.mail_templates.form.labels.test_recipient" => "Testempfänger"
          "admin.mail_templates.form.labels.text" => "Text-Inhalt"
          "admin.mail_templates.form.labels.text_default" => "Standard-Text"
          "admin.mail_templates.form.labels.updated_at" => "Letzte Anpassung"
          "admin.mail_templates.form.labels.variable" => "Variable"
          "admin.mail_templates.form.modals.reset_body" => "Der gespeicherte Override für %template% (%locale%) wird gelöscht. Danach ist wieder der versionierte Standard aktiv."
          "admin.mail_templates.form.modals.reset_title" => "Override entfernen?"
          "admin.mail_templates.form.page_title" => "Mailvorlage bearbeiten"
          "admin.mail_templates.form.panels.defaults" => "Versionierter Standard"
          "admin.mail_templates.form.panels.editor" => "Editor"
          "admin.mail_templates.form.panels.metadata" => "Vorlageninfo"
          "admin.mail_templates.form.panels.preview" => "Live-Vorschau"
          "admin.mail_templates.form.panels.sample_context" => "Beispiel-Kontext"
          "admin.mail_templates.form.panels.variables" => "Verfügbare Variablen"
          "admin.mail_templates.form.preview.html" => "HTML-Vorschau"
          "admin.mail_templates.form.preview.subject" => "Gerenderter Betreff"
          "admin.mail_templates.form.preview.text" => "Text-Vorschau"
          "admin.mail_templates.form.preview.unavailable" => "Die Vorschau konnte nicht erzeugt werden. Bitte Eingaben und Twig-Syntax prüfen."
          "admin.mail_templates.form.values.default_active" => "Versionierter Standard aktiv"
          "admin.mail_templates.help_index.card_subtitle" => "Vorlagen, Vorschau, Testversand und Betreiber-Abos zentral pflegen"
          "admin.mail_templates.help_index.card_title" => "Mailvorlagen"
          "admin.mail_templates.help.actions.back" => "Zurück zur Übersicht"
          "admin.mail_templates.help.actions.module" => "Zum Modul"
          "admin.mail_templates.help.navigation.items_html" => """
            <li class="mb-1"><a href="#overview"><i class="fa fa-info-circle"></i> Überblick</a></li>\n
            <li class="mb-1"><a href="#workflow"><i class="fa fa-pencil"></i> Bearbeitungsablauf</a></li>\n
            <li class="mb-1"><a href="#variables"><i class="fa fa-code"></i> Variablen & Twig</a></li>\n
            <li class="mb-1"><a href="#subscriptions"><i class="fa fa-bell"></i> Betreiber-Abos</a></li>\n
            <li class="mb-1"><a href="#permissions"><i class="fa fa-lock"></i> Rollen & Rechte</a></li>
            """
          "admin.mail_templates.help.navigation.title" => "Navigation"
          "admin.mail_templates.help.page_title" => "Hilfe: Mailvorlagen"
          "admin.mail_templates.help.sections.overview.body_html" => """
            <p>Das Modul <code>/admin/mail-templates</code> bündelt alle editierbaren Systemmails an einer Stelle. Jede Vorlage besitzt einen versionierten Standard aus dem Code und optional einen sprachspezifischen Override in der Datenbank.</p>\n
            <div class="alert alert-info"><i class="fa fa-lightbulb-o"></i> Änderungen an Betreff, HTML und Text werden sofort für neue Bestell-, Konto-, Retouren- und interne Betreiber-Mails verwendet, ohne dass der Code selbst angepasst werden muss.</div>\n
            <div class="alert alert-success"><i class="fa fa-history"></i> Wenn ein Override entfernt wird, fällt das System automatisch wieder auf den versionierten Standard zurück.</div>
            """
          "admin.mail_templates.help.sections.overview.title" => "Überblick"
          "admin.mail_templates.help.sections.permissions.body_html" => """
            <div class="alert alert-info"><i class="fa fa-lock"></i> Für dieses Modul gelten die Rollen <code>ROLE_ADMIN_MAIL_TEMPLATE_LIST</code>, <code>ROLE_ADMIN_MAIL_TEMPLATE_EDIT</code> und <code>ROLE_ADMIN_MAIL_TEMPLATE_DELETE</code>.</div>\n
            <ul>\n
              <li><strong>LIST:</strong> Zugriff auf Übersicht und Navigation.</li>\n
              <li><strong>EDIT:</strong> Bearbeiten, Vorschau, Testversand und Pflege der Betreiber-Abos.</li>\n
              <li><strong>DELETE:</strong> Zurücksetzen eines Overrides auf den Standard.</li>\n
            </ul>
            """
          "admin.mail_templates.help.sections.permissions.title" => "Rollen & Rechte"
          "admin.mail_templates.help.sections.subscriptions.body_html" => """
            <p>Über <code>/admin/mail-templates/subscriptions</code> steuern Sie, welche internen Ereignisse zusätzlich an aktive Backend-Admins zugestellt werden.</p>\n
            <div class="alert alert-info"><i class="fa fa-bell"></i> Die Standard-Admin-Adresse aus den Systemeinstellungen bleibt als Fallback aktiv. Persönliche Abos ergänzen den Verteiler nur um weitere Empfänger.</div>\n
            <ul>\n
              <li>Interne Bestellbenachrichtigungen</li>\n
              <li>Neue Shop-Registrierungen und Verifizierungen</li>\n
              <li>Neue Kontaktanfragen und täglicher Kontaktformular-Report</li>\n
              <li>Neue Support-Tickets aus dem Kundenkonto</li>\n
              <li>Neue B2B-Anfragen</li>\n
              <li>Neue Produktbewertungen und Produktfragen</li>\n
              <li>Neue RMA-Anfragen</li>\n
            </ul>
            """
          "admin.mail_templates.help.sections.subscriptions.title" => "Betreiber-Abos"
          "admin.mail_templates.help.sections.variables.body_html" => """
            <p>Im Editor stehen sowohl globale Variablen wie <code>shopName</code> und <code>supportEmail</code> als auch vorlagenspezifische Variablen wie <code>orderNumber</code>, <code>statusLabel</code> oder <code>rmaNumber</code> zur Verfügung.</p>\n
            <table class="table table-bordered table-sm table-hover">\n
              <thead class="thead-light"><tr><th>Beispiel</th><th>Beschreibung</th></tr></thead>\n
              <tbody>\n
                <tr><td><code>{{ customerName }}</code></td><td>Gibt den Kundennamen direkt aus.</td></tr>\n
                <tr><td><code>{% if hasDiscount %}...{% endif %}</code></td><td>Bedingte Bereiche können mit Twig flexibel ein- und ausgeblendet werden.</td></tr>\n
                <tr><td><code>{{ totalFormatted }}</code></td><td>Formatierten Geldwert inklusive Währung ausgeben.</td></tr>\n
              </tbody>\n
            </table>
            """
          "admin.mail_templates.help.sections.variables.title" => "Variablen & Twig"
          "admin.mail_templates.help.sections.workflow.body_html" => """
            <ol>\n
              <li>Vorlage und Sprache in der Übersicht auswählen.</li>\n
              <li>Betreff, HTML und optionalen Text anpassen.</li>\n
              <li>Über <strong>Vorschau rendern</strong> das Ergebnis mit Beispiel-Daten prüfen.</li>\n
              <li>Optional eine Testmail an eine interne Adresse senden.</li>\n
              <li>Mit <strong>Override speichern</strong> den Datenbank-Override aktivieren.</li>\n
            </ol>\n
            <div class="alert alert-warning"><i class="fa fa-exclamation-triangle"></i> Ein leerer oder syntaktisch fehlerhafter Twig-Ausdruck blockiert die Vorschau und den Speichervorgang, damit keine defekten Mails produktiv versendet werden.</div>
            """
          "admin.mail_templates.help.sections.workflow.title" => "Bearbeitungsablauf"
          "admin.mail_templates.index.filters.all_locales" => "Alle Sprachen"
          "admin.mail_templates.index.filters.all_status" => "Alle Status"
          "admin.mail_templates.index.filters.apply" => "Filtern"
          "admin.mail_templates.index.filters.locale" => "Sprache"
          "admin.mail_templates.index.filters.reset" => "Zurücksetzen"
          "admin.mail_templates.index.filters.search" => "Suche"
          "admin.mail_templates.index.filters.search_placeholder" => "Nach Key, Titel, Betreff oder Beschreibung suchen"
          "admin.mail_templates.index.filters.status" => "Status"
          "admin.mail_templates.index.list.default_updated" => "Versionierter Standard"
          "admin.mail_templates.index.list.empty" => "Für die aktuelle Filterung wurden keine Mailvorlagen gefunden."
          "admin.mail_templates.index.list.headers.actions" => "Aktionen"
          "admin.mail_templates.index.list.headers.category" => "Bereich"
          "admin.mail_templates.index.list.headers.locale" => "Sprache"
          "admin.mail_templates.index.list.headers.status" => "Status"
          "admin.mail_templates.index.list.headers.subject" => "Standard-Betreff"
          "admin.mail_templates.index.list.headers.template" => "Vorlage"
          "admin.mail_templates.index.list.headers.updated" => "Zuletzt geändert"
          "admin.mail_templates.index.list.title" => "Verfügbare Mailvorlagen"
          "admin.mail_templates.index.list.variable_count" => "Variablen: %count%"
          "admin.mail_templates.index.meta_title" => "Mailvorlagen"
          "admin.mail_templates.index.page_subtitle" => "Versionierte Standardmails mit editierbaren Overrides pro Sprache und Anwendungsfall."
          "admin.mail_templates.index.page_title" => "Mailvorlagen"
          "admin.mail_templates.index.summary.categories" => "Bereiche"
          "admin.mail_templates.index.summary.defaults" => "Standards"
          "admin.mail_templates.index.summary.overridden" => "Overrides"
          "admin.mail_templates.index.summary.total" => "Vorlagen"
          "admin.mail_templates.index.toolbar.help" => "Hilfe"
          "admin.mail_templates.index.toolbar.primary" => "Vorlage öffnen"
          "admin.mail_templates.index.toolbar.subscriptions" => "Benachrichtigungen"
          "admin.mail_templates.locales.de" => "Deutsch"
          "admin.mail_templates.locales.en" => "Englisch"
          "admin.mail_templates.status.default" => "Standard"
          "admin.mail_templates.status.overridden" => "Override aktiv"
          "admin.mail_templates.subscriptions.actions.save" => "Abos speichern"
          "admin.mail_templates.subscriptions.empty" => "Es wurden keine aktiven Admin-Benutzer oder internen Mail-Ereignisse für die Abo-Verwaltung gefunden."
          "admin.mail_templates.subscriptions.flash.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
          "admin.mail_templates.subscriptions.flash.saved" => "Die Betreiber-Abos wurden gespeichert."
          "admin.mail_templates.subscriptions.headers.active" => "Aktive Abos"
          "admin.mail_templates.subscriptions.headers.user" => "Admin"
          "admin.mail_templates.subscriptions.intro" => "Die zentrale Admin-Adresse aus den Systemeinstellungen bleibt als Fallback aktiv. Persönliche Abos erweitern den Verteiler um weitere Betreiber."
          "admin.mail_templates.subscriptions.meta_title" => "Mail-Benachrichtigungen"
          "admin.mail_templates.subscriptions.page_subtitle" => "Steuert, welche internen Mail-Ereignisse zusätzlich an aktive Backend-Admins verteilt werden."
          "admin.mail_templates.subscriptions.page_title" => "Betreiber-Benachrichtigungen"
          "admin.mail_templates.subscriptions.panels.matrix" => "Abo-Matrix"
          "admin.mail_templates.subscriptions.summary.admins" => "Admin-Benutzer"
          "admin.mail_templates.subscriptions.summary.enabled_links" => "Aktive Abos"
          "admin.mail_templates.subscriptions.summary.subscribed_admins" => "Admins mit Abo"
          "admin.mail_templates.subscriptions.summary.templates" => "Interne Events"
          "admin.mail_templates.subscriptions.toolbar.back" => "Zur Vorlagenübersicht"
          "admin.mail_templates.subscriptions.toolbar.help" => "Hilfe"
          "admin.mail_templates.templates.admin_order_notification.description" => "Benachrichtigung an das interne Admin-/Operations-Postfach."
          "admin.mail_templates.templates.admin_order_notification.label" => "Interne Bestellbenachrichtigung"
          "admin.mail_templates.templates.admin_shop_registration_notification.description" => "Betreiber-Mail bei neu angelegten Shop-Konten."
          "admin.mail_templates.templates.admin_shop_registration_notification.label" => "Interne Registrierungsbenachrichtigung"
          "admin.mail_templates.templates.admin_shop_registration_verified.description" => "Betreiber-Mail, sobald ein Shop-Konto per Double-Opt-In aktiviert wurde."
          "admin.mail_templates.templates.admin_shop_registration_verified.label" => "Interne Verifizierungsbestätigung"
          "admin.mail_templates.templates.b2b_quote_request_submitted.description" => "Betreiber-Mail bei neu eingereichter oder aktualisierter B2B-Anfrage."
          "admin.mail_templates.templates.b2b_quote_request_submitted.label" => "Neue B2B-Anfrage"
          "admin.mail_templates.templates.contact_daily_report.description" => "Tägliche interne Zusammenfassung neuer Kontaktanfragen."
          "admin.mail_templates.templates.contact_daily_report.label" => "Kontaktformular-Report"
          "admin.mail_templates.templates.contact_form_submission.description" => "Sofortige Betreiber-Mail bei neuer Kontaktformular-Anfrage."
          "admin.mail_templates.templates.contact_form_submission.label" => "Neue Kontaktanfrage"
          "admin.mail_templates.templates.order_confirmation.description" => "Kundenmail direkt nach erfolgreichem Checkout."
          "admin.mail_templates.templates.order_confirmation.label" => "Bestellbestätigung"
          "admin.mail_templates.templates.order_status_update.description" => "Flexible Statusmail für Bestellungen."
          "admin.mail_templates.templates.order_status_update.label" => "Bestellstatus-Update"
          "admin.mail_templates.templates.password_reset_request.description" => "Systemmail für Reset-Links und Passwort-Neuvergabe."
          "admin.mail_templates.templates.password_reset_request.label" => "Passwort zurücksetzen"
          "admin.mail_templates.templates.pickup_ready_notification.description" => "Kundenmail, sobald eine Abholbestellung im Geschäft bereitliegt."
          "admin.mail_templates.templates.pickup_ready_notification.label" => "Bereit zur Abholung"
          "admin.mail_templates.templates.product_question_submitted.description" => "Betreiber-Mail bei neuer Produktfrage zur Moderation."
          "admin.mail_templates.templates.product_question_submitted.label" => "Neue Produktfrage"
          "admin.mail_templates.templates.review_submitted.description" => "Betreiber-Mail bei neuer Bewertung zur Moderation."
          "admin.mail_templates.templates.review_submitted.label" => "Neue Produktbewertung"
          "admin.mail_templates.templates.rma_confirmation.description" => "Eingangsbestätigung für neu angelegte Retourenanträge."
          "admin.mail_templates.templates.rma_confirmation.label" => "Retourenbestätigung"
          "admin.mail_templates.templates.rma_request_created.description" => "Betreiber-Mail bei neu eingegangener RMA-Anfrage."
          "admin.mail_templates.templates.rma_request_created.label" => "Neue Retoure"
          "admin.mail_templates.templates.rma_status_update.description" => "Status- und Erstattungsupdates für bestehende Retouren."
          "admin.mail_templates.templates.rma_status_update.label" => "Retourenstatus-Update"
          "admin.mail_templates.templates.shipping_notification.description" => "Update an Kunden, sobald die Bestellung versandbereit ist."
          "admin.mail_templates.templates.shipping_notification.label" => "Versandbenachrichtigung"
          "admin.mail_templates.templates.shop_email_verification.description" => "Double-Opt-In-Mail zur Aktivierung neuer Shop-Konten."
          "admin.mail_templates.templates.shop_email_verification.label" => "E-Mail-Bestätigung"
          "admin.mail_templates.templates.shop_registration_confirmation.description" => "Willkommens- und Freischaltmail nach erfolgreicher E-Mail-Bestätigung."
          "admin.mail_templates.templates.shop_registration_confirmation.label" => "Registrierungsbestätigung"
          "admin.mail_templates.templates.support_ticket_created.description" => "Betreiber-Mail bei neuem Support-Ticket aus dem Shop-Konto."
          "admin.mail_templates.templates.support_ticket_created.label" => "Neues Support-Ticket"
          "admin.mail_templates.variables.author_name" => "Name des Autors einer Bewertung oder Produktfrage."
          "admin.mail_templates.variables.company_name" => "Firmenname einer B2B-Anfrage."
          "admin.mail_templates.variables.contact_name" => "Name des B2B-Ansprechpartners."
          "admin.mail_templates.variables.contact_request_count" => "Anzahl neuer Kontaktanfragen im Reportzeitraum."
          "admin.mail_templates.variables.current_year" => "Aktuelles Jahr für Footer und Copyright."
          "admin.mail_templates.variables.customer_email" => "E-Mail-Adresse des Kunden."
          "admin.mail_templates.variables.customer_name" => "Name des Kunden oder des Ansprechpartners."
          "admin.mail_templates.variables.customer_phone" => "Telefonnummer des Kunden oder Ansprechpartners."
          "admin.mail_templates.variables.decided_at_formatted" => "Formatierter Zeitpunkt der Entscheidung."
          "admin.mail_templates.variables.discount_formatted" => "Formatierter Rabattbetrag inklusive Währung."
          "admin.mail_templates.variables.expires_in_hours" => "Gültigkeitsdauer des Reset-Links in Stunden."
          "admin.mail_templates.variables.fulfillment_type_label" => "Lesbare Lieferart, also Versand oder Abholung im Geschäft."
          "admin.mail_templates.variables.has_decided_at" => "Boolescher Schalter, ob eine Entscheidung vorliegt."
          "admin.mail_templates.variables.has_discount" => "Boolescher Schalter, ob ein Rabatt vorhanden ist."
          "admin.mail_templates.variables.has_refund_amount" => "Boolescher Schalter, ob ein Erstattungsbetrag vorhanden ist."
          "admin.mail_templates.variables.has_return_tracking_code" => "Boolescher Schalter, ob ein Tracking-Code vorhanden ist."
          "admin.mail_templates.variables.is_pickup" => "Boolescher Schalter, ob es sich um eine Abholbestellung handelt."
          "admin.mail_templates.variables.login_url" => "Direkter Login-Link zum Shop-Konto."
          "admin.mail_templates.variables.message_body" => "Vollständiger Nachrichtentext einer Betreiber-Anfrage."
          "admin.mail_templates.variables.order_number" => "Bestellnummer bzw. Checkout-Referenz."
          "admin.mail_templates.variables.order_reference" => "Referenz auf eine zugehörige Bestellung oder Anfrage."
          "admin.mail_templates.variables.payment" => "Gewählte Zahlungsart."
          "admin.mail_templates.variables.pickup_status_label" => "Lesbarer Abholstatus der Bestellung."
          "admin.mail_templates.variables.product_name" => "Betroffenes Produkt."
          "admin.mail_templates.variables.quantity" => "Anzahl der betroffenen Artikel."
          "admin.mail_templates.variables.question_body" => "Fragetext einer Produktfrage."
          "admin.mail_templates.variables.reason_label" => "Lesbarer Retourengrund."
          "admin.mail_templates.variables.recipient_name" => "Name des eigentlichen Empfängers der Mail."
          "admin.mail_templates.variables.refund_amount_formatted" => "Formatierter Erstattungsbetrag."
          "admin.mail_templates.variables.registered_at_formatted" => "Formatierter Registrierungszeitpunkt eines neuen Shop-Kontos."
          "admin.mail_templates.variables.report_date_label" => "Datums- oder Zeitraumlabel des Reports."
          "admin.mail_templates.variables.requested_at_formatted" => "Formatierter Zeitpunkt des Antragseingangs."
          "admin.mail_templates.variables.requested_group_name" => "Angefragte B2B-Kundengruppe."
          "admin.mail_templates.variables.reset_url" => "Kompletter Reset-Link inklusive Token."
          "admin.mail_templates.variables.return_tracking_code" => "Tracking-Code einer Rücksendung."
          "admin.mail_templates.variables.review_body" => "Inhalt einer Produktbewertung."
          "admin.mail_templates.variables.review_rating" => "Sternebewertung einer Produktbewertung."
          "admin.mail_templates.variables.review_title" => "Titel einer Produktbewertung."
          "admin.mail_templates.variables.rma_number" => "Retouren- bzw. RMA-Nummer."
          "admin.mail_templates.variables.sender_email" => "E-Mail-Adresse des Absenders einer Kontaktanfrage."
          "admin.mail_templates.variables.sender_name" => "Name des Absenders einer Kontaktanfrage."
          "admin.mail_templates.variables.sender_phone" => "Telefonnummer des Absenders einer Kontaktanfrage."
          "admin.mail_templates.variables.shipping_cost_formatted" => "Formatierte Versandkosten inklusive Währung."
          "admin.mail_templates.variables.shipping_method" => "Gewählte Versandart."
          "admin.mail_templates.variables.shop_name" => "Anzeigename des Shops aus den Systemeinstellungen."
          "admin.mail_templates.variables.status_label" => "Lesbarer Status für Bestellung oder Retoure."
          "admin.mail_templates.variables.submitted_at_formatted" => "Formatierter Einreichungszeitpunkt einer Betreiber-Anfrage."
          "admin.mail_templates.variables.subtotal_formatted" => "Formatierte Zwischensumme vor Versand und Rabatten."
          "admin.mail_templates.variables.support_email" => "Standard-Absender- bzw. Support-E-Mail aus den Systemeinstellungen."
          "admin.mail_templates.variables.ticket_source_label" => "Lesbare Herkunft eines Support-Tickets."
          "admin.mail_templates.variables.ticket_subject" => "Betreff eines Support-Tickets."
          "admin.mail_templates.variables.total_formatted" => "Formatierte Gesamtsumme inklusive Währung."
          "admin.mail_templates.variables.verification_url" => "Kompletter Double-Opt-In-Link zur E-Mail-Bestätigung."
          "admin.mail_templates.variables.verified_at_formatted" => "Formatierter Zeitpunkt der Konto-Bestätigung."
          "admin.media.actions.delete" => "Löschen"
          "admin.media.actions.edit" => "Bearbeiten"
          "admin.media.actions.filter" => "Filtern"
          "admin.media.actions.help" => "Hilfe"
          "admin.media.actions.open" => "Öffnen"
          "admin.media.actions.open_usage" => "Zum Eintrag"
          "admin.media.actions.save" => "Speichern"
          "admin.media.actions.scan" => "Verzeichnisse scannen"
          "admin.media.actions.upload" => "Hochladen"
          "admin.media.delete.blocked" => "Löschen ist gesperrt, weil diese Datei noch an %count% Stelle(n) verwendet wird."
          "admin.media.delete.modal_body" => "Soll die Datei "%file%" wirklich dauerhaft gelöscht werden?"
          "admin.media.delete.modal_title" => "Medium löschen"
          "admin.media.delete.title" => "Löschen"
          "admin.media.directories.images" => "Allgemeine Bilder"
          "admin.media.directories.page_builder_products" => "Page-Builder Produktbilder"
          "admin.media.directories.pages" => "Page-Builder Seitenbilder"
          "admin.media.directories.products" => "Produktbilder"
          "admin.media.directories.shop" => "Shop-Dateien"
          "admin.media.directories.sliders" => "Sliderbilder"
          "admin.media.directories.themes" => "Theme-Assets"
          "admin.media.edit.meta_title" => "Medium bearbeiten: %file%"
          "admin.media.edit.metadata" => "Metadaten & SEO"
          "admin.media.edit.page_title" => "Medium bearbeiten"
          "admin.media.edit.preview" => "Vorschau & technische Daten"
          "admin.media.filters.all_directories" => "Alle Verzeichnisse"
          "admin.media.filters.all_types" => "Alle Typen"
          "admin.media.filters.all_usage" => "Alle Verwendungen"
          "admin.media.filters.files" => "Nur Dateien"
          "admin.media.filters.images" => "Nur Bilder"
          "admin.media.filters.search_placeholder" => "Dateiname, Titel, Alt-Text oder Beschreibung suchen"
          "admin.media.filters.title" => "Filter"
          "admin.media.filters.unused" => "Nur ungenutzte Medien"
          "admin.media.filters.used" => "Nur verwendete Medien"
          "admin.media.form.alt_help" => "Beschreibt den Bildinhalt für Barrierefreiheit, Suche und SEO. Für reine Dateien optional."
          "admin.media.form.alt_text" => "Alt-Text"
          "admin.media.form.description" => "Beschreibung / Lizenzhinweis"
          "admin.media.form.filename_help" => "Ohne Dateiendung eintragen. Beim Speichern wird der Name URL-freundlich normalisiert und bekannte Referenzen werden aktualisiert."
          "admin.media.form.seo_filename" => "SEO-Dateiname"
          "admin.media.form.title" => "Titel"
          "admin.media.index.empty" => "Keine Medien gefunden. Lade eine Datei hoch oder starte den Scan."
          "admin.media.index.list_title" => "Medienbibliothek"
          "admin.media.index.meta_title" => "Media Center"
          "admin.media.index.page_subtitle" => "Uploads zentral verwalten, SEO-Dateinamen pflegen und Bildverwendungen prüfen."
          "admin.media.index.page_title" => "Media Center"
          "admin.media.notifications.access_denied" => "Du hast keine Berechtigung für das Media Center."
          "admin.media.notifications.csrf_invalid" => "Die Sicherheitsprüfung ist fehlgeschlagen. Bitte erneut versuchen."
          "admin.media.notifications.deleted" => "Die Datei wurde gelöscht."
          "admin.media.notifications.renamed" => "Die Datei wurde in "%file%" umbenannt. Aktualisierte Referenzen: %references%."
          "admin.media.notifications.scan_finished" => "Scan abgeschlossen: %indexed% Datei(en) geprüft, %removed% veraltete Indexeinträge entfernt."
          "admin.media.notifications.updated" => "Die Medien-Metadaten wurden gespeichert."
          "admin.media.notifications.upload_missing" => "Bitte wähle eine Datei für den Upload aus."
          "admin.media.notifications.uploaded" => "Die Datei "%file%" wurde hochgeladen."
          "admin.media.summary.files" => "Dateien"
          "admin.media.summary.images" => "Bilder"
          "admin.media.summary.total" => "Gesamt"
          "admin.media.summary.unused" => "Ungenutzt"
          "admin.media.summary.used" => "Verwendet"
          "admin.media.table.actions" => "Aktionen"
          "admin.media.table.alt" => "Alt"
          "admin.media.table.dimensions" => "Abmessungen"
          "admin.media.table.directory" => "Verzeichnis"
          "admin.media.table.file" => "Datei"
          "admin.media.table.hash" => "SHA-256"
          "admin.media.table.mime" => "MIME-Typ"
          "admin.media.table.preview" => "Vorschau"
          "admin.media.table.size" => "Größe"
          "admin.media.table.updated" => "Aktualisiert"
          "admin.media.table.usage" => "Verwendung"
          "admin.media.upload.directory" => "Zielverzeichnis"
          "admin.media.upload.file" => "Datei"
          "admin.media.upload.filename" => "SEO-Dateiname optional"
          "admin.media.upload.filename_placeholder" => "z. B. gaming-pc-frontansicht"
          "admin.media.upload.title" => "Neue Datei hochladen"
          "admin.media.usage.empty" => "Dieses Medium wird aktuell in keinem bekannten Modul verwendet."
          "admin.media.usage.no" => "Nein"
          "admin.media.usage.title" => "Aktuelle Verwendung (%count%)"
          "admin.media.usage.types.blog" => "Blog"
          "admin.media.usage.types.page" => "Seite"
          "admin.media.usage.types.product" => "Produkt"
          "admin.media.usage.types.seo" => "SEO"
          "admin.media.usage.types.slider" => "Slider"
          "admin.media.usage.yes" => "Ja (%count%)"
          "admin.menu.footer.actions.new_page" => "Neue Footer-Seite anlegen"
          "admin.menu.footer.info" => "Footer-Menüpunkte können per Drag & Drop verschoben werden. Änderungen werden automatisch gespeichert."
          "admin.menu.footer.list_count" => "%count% Wurzeleinträge"
          "admin.menu.footer.list_title" => "Footer-Navigation"
          "admin.menu.footer.meta_title" => "Footer-Menüverwaltung"
          "admin.menu.footer.notifications.invalid_data" => "Ungültige Menüdaten."
          "admin.menu.footer.notifications.save_failed" => "Footer-Menü konnte nicht gespeichert werden."
          "admin.menu.footer.notifications.saved" => "Footer-Menü wurde aktualisiert."
          "admin.menu.footer.page_subtitle" => "Pflege die Footer-Navigation per Drag & Drop und bearbeite Seiten direkt aus dem Baum."
          "admin.menu.footer.page_title" => "Footer-Menü"
          "admin.menu.main.actions.new_page" => "Neue Seite anlegen"
          "admin.menu.main.info" => "Menüpunkte können per Drag & Drop verschoben werden. Änderungen werden automatisch gespeichert."
          "admin.menu.main.list_count" => "%count% Wurzeleinträge"
          "admin.menu.main.list_title" => "Navigation"
          "admin.menu.main.meta_title" => "Menüverwaltung"
          "admin.menu.main.notifications.invalid_data" => "Ungültige Menüdaten."
          "admin.menu.main.notifications.save_failed" => "Menü konnte nicht gespeichert werden."
          "admin.menu.main.notifications.saved" => "Menü wurde aktualisiert."
          "admin.menu.main.page_subtitle" => "Ordne die Header-Navigation per Drag & Drop und springe direkt in die Seitenbearbeitung."
          "admin.menu.main.page_title" => "Hauptmenü"
          "admin.menu.shared.actions.delete" => "Löschen"
          "admin.menu.shared.actions.edit" => "Bearbeiten"
          "admin.menu.shared.actions.help" => "CMS-Hilfe"
          "admin.menu.shared.page_delete_confirm" => "Seite "%name%" wirklich löschen?"
          "admin.menu.shop.actions.reset" => "Zurücksetzen"
          "admin.menu.shop.info" => "Kategorien per Drag & Drop sortieren. Änderungen werden automatisch gespeichert."
          "admin.menu.shop.list_count" => "%count% Wurzelkategorien"
          "admin.menu.shop.list_title" => "Kategoriebaum"
          "admin.menu.shop.meta_title" => "Shop-Menüverwaltung"
          "admin.menu.shop.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.menu.shop.notifications.invalid_data" => "Ungültige Daten."
          "admin.menu.shop.notifications.reset" => "Shop-Menü wurde zurückgesetzt."
          "admin.menu.shop.notifications.reset_confirm" => "Shop-Menü wirklich auf Standard zurücksetzen?"
          "admin.menu.shop.notifications.save_failed" => "Shop-Menü konnte nicht gespeichert werden."
          "admin.menu.shop.notifications.saved" => "Shop-Menü wurde aktualisiert."
          "admin.menu.shop.page_subtitle" => "Sortiere Kategorien für die Shop-Navigation per Drag & Drop."
          "admin.menu.shop.page_title" => "Shop-Menü"
          "admin.navigation.blog.menu" => "Blog"
          "admin.navigation.blog.new" => "Blogbeitrag anlegen"
          "admin.navigation.booking.apartments" => "Wohnungen"
          "admin.navigation.booking.bookings" => "Buchungen"
          "admin.navigation.booking.calendar" => "Kalender"
          "admin.navigation.booking.csv_import" => "CSV-Import"
          "admin.navigation.booking.menu" => "Buchungsplan"
          "admin.navigation.booking.room_mapping" => "Zimmertyp-Mapping"
          "admin.navigation.categories.blog_categories" => "Blog-Kategorien"
          "admin.navigation.categories.menu" => "Kategorien"
          "admin.navigation.common.activate_action" => "Aktivieren"
          "admin.navigation.common.active" => "Aktiv"
          "admin.navigation.common.back" => "Zurück"
          "admin.navigation.common.cancel" => "Abbrechen"
          "admin.navigation.common.close_alerts" => "Alle Hinweise schließen"
          "admin.navigation.common.confirm" => "Bestätigen"
          "admin.navigation.common.deactivate_action" => "Deaktivieren"
          "admin.navigation.common.delete" => "Löschen"
          "admin.navigation.common.delete_blocked" => "Dieser Eintrag kann nicht gelöscht werden."
          "admin.navigation.common.delete_confirm_generic" => "Möchten Sie diesen Eintrag wirklich löschen?"
          "admin.navigation.common.edit" => "Bearbeiten"
          "admin.navigation.common.error" => "Fehler"
          "admin.navigation.common.execute" => "Ausführen"
          "admin.navigation.common.fullscreen" => "Vollbild"
          "admin.navigation.common.group_action" => "Gruppenaktion"
          "admin.navigation.common.help" => "Hilfe"
          "admin.navigation.common.inactive" => "Inaktiv"
          "admin.navigation.common.info" => "Info"
          "admin.navigation.common.new" => "Neu anlegen"
          "admin.navigation.common.overview" => "Übersicht"
          "admin.navigation.common.save" => "Speichern"
          "admin.navigation.common.success" => "Erfolg"
          "admin.navigation.common.warning" => "Warnung"
          "admin.navigation.frontend.content_blocks" => "Content-Blöcke"
          "admin.navigation.frontend.footer" => "Footer"
          "admin.navigation.frontend.header" => "Header"
          "admin.navigation.frontend.media_center" => "Media Center"
          "admin.navigation.frontend.menu" => "Frontend"
          "admin.navigation.frontend.menu_group" => "Menü"
          "admin.navigation.frontend.pages" => "Seiten"
          "admin.navigation.frontend.shop" => "Shop"
          "admin.navigation.frontend.slider" => "Slider"
          "admin.navigation.frontend.widgets" => "Widgets"
          "admin.navigation.groups.booking_hospitality" => "Buchungen & Unterkunft"
          "admin.navigation.groups.catalog" => "Produkte & Katalog"
          "admin.navigation.groups.commerce" => "Commerce"
          "admin.navigation.groups.content" => "Content"
          "admin.navigation.groups.dashboard" => "Dashboard"
          "admin.navigation.groups.editorial" => "Redaktion"
          "admin.navigation.groups.import_data" => "Import & Datenpflege"
          "admin.navigation.groups.layout" => "Navigation & Layout"
          "admin.navigation.groups.marketing_seo" => "Marketing & SEO"
          "admin.navigation.groups.orders_customers" => "Bestellungen & Kunden"
          "admin.navigation.groups.pages" => "Seiten"
          "admin.navigation.groups.pricing_actions" => "Preise & Aktionen"
          "admin.navigation.groups.reviews_feeds" => "Bewertungen & Feeds"
          "admin.navigation.groups.settings" => "Einstellungen"
          "admin.navigation.groups.shipping_returns" => "Versand & Retouren"
          "admin.navigation.groups.system" => "System"
          "admin.navigation.groups.users_rights" => "Benutzer & Rechte"
          "admin.navigation.help.menu" => "Hilfe & Dokumentation"
          "admin.navigation.home" => "Dashboard"
          "admin.navigation.locale.label" => "Sprache"
          "admin.navigation.profile.change_password" => "Mein Passwort ändern"
          "admin.navigation.profile.logout" => "Abmelden"
          "admin.navigation.profile.welcome" => "Willkommen"
          "admin.navigation.settings.ecommerce" => "E-Commerce"
          "admin.navigation.settings.faq" => "FAQ"
          "admin.navigation.settings.imprint" => "Impressum"
          "admin.navigation.settings.mail_templates" => "Mailvorlagen"
          "admin.navigation.settings.menu" => "Einstellungen"
          "admin.navigation.settings.privacy" => "Datenschutz"
          "admin.navigation.settings.system" => "System"
          "admin.navigation.settings.translations" => "Übersetzungen"
          "admin.navigation.shop.alerts.inbox" => "Alert-Inbox"
          "admin.navigation.shop.alerts.menu" => "Alerts"
          "admin.navigation.shop.categories" => "Kategorien"
          "admin.navigation.shop.category_new" => "Kategorie anlegen"
          "admin.navigation.shop.configurator_new" => "Konfiguration anlegen"
          "admin.navigation.shop.customers.menu" => "Shop-Kunden"
          "admin.navigation.shop.customers.new" => "Kunde anlegen"
          "admin.navigation.shop.customers.newsletter" => "Newsletter"
          "admin.navigation.shop.customers.support_tickets" => "Support-Tickets"
          "admin.navigation.shop.feeds.hub" => "Feed-Hub"
          "admin.navigation.shop.feeds.menu" => "Feed-Exporte"
          "admin.navigation.shop.import_control.center" => "Kontrollzentrum"
          "admin.navigation.shop.import_control.menu" => "Import-Steuerung"
          "admin.navigation.shop.menu" => "Shop"
          "admin.navigation.shop.orders" => "Bestellungen"
          "admin.navigation.shop.pricing.manage" => "Verwaltung"
          "admin.navigation.shop.pricing.menu" => "Pricing Engine"
          "admin.navigation.shop.pricing.monitoring" => "Monitoring-Dashboard"
          "admin.navigation.shop.product_new" => "Produkt anlegen"
          "admin.navigation.shop.products" => "Produkte"
          "admin.navigation.shop.reviews.menu" => "Bewertungen"
          "admin.navigation.shop.reviews.moderation" => "Moderation"
          "admin.navigation.shop.reviews.product_qa" => "Produkt Q&A"
          "admin.navigation.users.menu" => "Benutzer"
          "admin.navigation.users.profiles" => "Profile"
          "admin.newsletter.form.create_title" => "Newsletter-Abonnent anlegen"
          "admin.newsletter.form.edit_title" => "Newsletter-Abonnent bearbeiten"
          "admin.newsletter.form.fields.confirmed" => "Bestätigt"
          "admin.newsletter.form.fields.email" => "E-Mail"
          "admin.newsletter.form.fields.subscribed_at" => "Anmeldedatum"
          "admin.newsletter.form.hints.email" => "Direkt eingeben oder unten per Shop-User-Suche auswählen (ab 3 Zeichen)."
          "admin.newsletter.form.hints.shop_user_search" => "Auswahl übernimmt die E-Mail automatisch in das Feld oben."
          "admin.newsletter.form.js.apply_date" => "Übernehmen"
          "admin.newsletter.form.js.clear_date" => "Leeren"
          "admin.newsletter.form.labels.shop_user_search" => "Shop-User suchen"
          "admin.newsletter.form.panel_title" => "Formular"
          "admin.newsletter.form.placeholders.email" => "name@beispiel.de"
          "admin.newsletter.form.placeholders.shop_user_search" => "Shop-User per E-Mail suchen ..."
          "admin.newsletter.form.placeholders.subscribed_at" => "JJJJ-MM-TT HH:MM"
          "admin.newsletter.form.subtitle" => "Verwalte Empfänger, Bestätigung und Anmeldedatum."
          "admin.newsletter.list.columns.actions" => "Aktionen"
          "admin.newsletter.list.columns.confirmed" => "Bestätigt"
          "admin.newsletter.list.columns.email" => "E-Mail"
          "admin.newsletter.list.columns.id" => "ID"
          "admin.newsletter.list.columns.subscribed_at" => "Datum"
          "admin.newsletter.list.create" => "Abonnent anlegen"
          "admin.newsletter.list.delete_message" => "Newsletter-Abonnent "%email%" wirklich löschen?"
          "admin.newsletter.list.empty" => "Keine Newsletter-Abonnenten vorhanden."
          "admin.newsletter.list.panel_title" => "Abonnentenliste"
          "admin.newsletter.list.subtitle" => "Übersicht über alle Newsletter-Anmeldungen und Bestätigungsstatus."
          "admin.newsletter.list.title" => "Newsletter-Abonnenten"
          "admin.newsletter.list.values.no" => "Nein"
          "admin.newsletter.list.values.yes" => "Ja"
          "admin.newsletter.notifications.created" => "Newsletter-Abonnent wurde angelegt."
          "admin.newsletter.notifications.deleted" => "Newsletter-Abonnent wurde gelöscht."
          "admin.newsletter.notifications.duplicate_email" => "Diese E-Mail ist bereits als Newsletter-Abonnent eingetragen."
          "admin.newsletter.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.newsletter.notifications.updated" => "Newsletter-Abonnent wurde gespeichert."
          "admin.page.builder.color_labels.accent.black" => "Schwarz"
          "admin.page.builder.color_labels.accent.blue" => "Blau"
          "admin.page.builder.color_labels.accent.graphite" => "Graphit"
          "admin.page.builder.color_labels.accent.green" => "Grün"
          "admin.page.builder.color_labels.accent.orange" => "Orange"
          "admin.page.builder.color_labels.accent.red" => "Rot"
          "admin.page.builder.color_labels.accent.teal" => "Petrol"
          "admin.page.builder.color_labels.accent.violet" => "Violett"
          "admin.page.builder.color_labels.background.anthracite" => "Anthrazit"
          "admin.page.builder.color_labels.background.lavender" => "Lavendel"
          "admin.page.builder.color_labels.background.light_gray" => "Hellgrau"
          "admin.page.builder.color_labels.background.mint" => "Mint"
          "admin.page.builder.color_labels.background.rose" => "Rose"
          "admin.page.builder.color_labels.background.sand" => "Sand"
          "admin.page.builder.color_labels.background.sky" => "Himmel"
          "admin.page.builder.color_labels.background.white" => "Weiß"
          "admin.page.builder.color_labels.custom" => "Eigene Farbe"
          "admin.page.builder.color_labels.default" => "Standard"
          "admin.page.builder.color_labels.empty_accent" => "Standard-Blau"
          "admin.page.builder.color_labels.special_hide" => "Sonderwert verbergen"
          "admin.page.builder.color_labels.special_placeholder" => "Nur falls du bewusst einen Sonderwert brauchst"
          "admin.page.builder.color_labels.special_show" => "Sonderwert eingeben"
          "admin.page.builder.defaults.counter_cards_label" => "Zufriedene Kunden"
          "admin.page.builder.defaults.counter_cards_subtitle" => "Drei starke Kennzahlen im Überblick"
          "admin.page.builder.defaults.counter_cards_suffix" => "k"
          "admin.page.builder.defaults.counter_cards_title" => "Zahlen, die Vertrauen schaffen"
          "admin.page.builder.defaults.counter_cards_value" => "898"
          "admin.page.builder.defaults.faq_answer" => "Antwort."
          "admin.page.builder.defaults.faq_heading" => "Häufige Fragen"
          "admin.page.builder.defaults.faq_question" => "Frage?"
          "admin.page.builder.defaults.hero_heading" => "Neue Hero-Überschrift"
          "admin.page.builder.defaults.icon_list_text" => "Beschreibung"
          "admin.page.builder.defaults.icon_list_title" => "Vorteil 1"
          "admin.page.builder.defaults.newsletter_button" => "Anmelden"
          "admin.page.builder.defaults.newsletter_heading" => "Newsletter abonnieren"
          "admin.page.builder.defaults.newsletter_note" => "Kein Spam. Nur relevante Updates."
          "admin.page.builder.defaults.newsletter_placeholder" => "Ihre E-Mail-Adresse"
          "admin.page.builder.defaults.newsletter_text" => "Aktionen, neue Produkte und exklusive Hinweise direkt ins Postfach."
          "admin.page.builder.defaults.pricing_cta" => "Jetzt starten"
          "admin.page.builder.defaults.pricing_feature" => "Feature 1"
          "admin.page.builder.defaults.pricing_name" => "Starter"
          "admin.page.builder.defaults.pricing_period" => "/ Monat"
          "admin.page.builder.defaults.pricing_price" => "9 EUR"
          "admin.page.builder.defaults.product_grid_heading" => "Empfohlene Produkte"
          "admin.page.builder.defaults.testimonials_name" => "Max Mustermann"
          "admin.page.builder.defaults.testimonials_role" => "Kunde"
          "admin.page.builder.defaults.testimonials_text" => "Toller Service!"
          "admin.page.builder.defaults.text_html" => "<p>Neuer Textabschnitt</p>"
          "admin.page.builder.draft_badge" => "Entwurf"
          "admin.page.builder.fields.avatar" => "Avatar"
          "admin.page.builder.fields.background_color" => "Hintergrundfarbe"
          "admin.page.builder.fields.background_image" => "Hintergrundbild"
          "admin.page.builder.fields.button_label" => "Button-Beschriftung"
          "admin.page.builder.fields.button_url" => "Button-URL"
          "admin.page.builder.fields.caption" => "Bildunterschrift"
          "admin.page.builder.fields.category_optional" => "Kategorie (optional)"
          "admin.page.builder.fields.columns" => "Spalten (1-4)"
          "admin.page.builder.fields.content" => "Inhalt"
          "admin.page.builder.fields.content_block_select" => "Content-Block auswählen"
          "admin.page.builder.fields.counter_label" => "Label"
          "admin.page.builder.fields.counter_suffix" => "Suffix"
          "admin.page.builder.fields.counter_value" => "Wert"
          "admin.page.builder.fields.cta_text" => "Button-Text"
          "admin.page.builder.fields.description_text" => "Beschreibungstext"
          "admin.page.builder.fields.email_placeholder" => "E-Mail-Platzhalter"
          "admin.page.builder.fields.entries" => "Einträge"
          "admin.page.builder.fields.eyebrow" => "Eyebrow-Text"
          "admin.page.builder.fields.faq_items" => "FAQ-Einträge"
          "admin.page.builder.fields.features" => "Leistungsmerkmale"
          "admin.page.builder.fields.heading" => "Überschrift"
          "admin.page.builder.fields.height_px" => "Höhe in px"
          "admin.page.builder.fields.highlighted" => "Empfohlen"
          "admin.page.builder.fields.html_content" => "HTML-Inhalt"
          "admin.page.builder.fields.icon" => "Icon"
          "admin.page.builder.fields.icon_color" => "Icon-Farbe"
          "admin.page.builder.fields.image" => "Bild"
          "admin.page.builder.fields.image_alt" => "Bild-Alternativtext"
          "admin.page.builder.fields.image_position" => "Bildposition"
          "admin.page.builder.fields.name" => "Name"
          "admin.page.builder.fields.note" => "Hinweistext"
          "admin.page.builder.fields.period" => "Zeitraum"
          "admin.page.builder.fields.price" => "Preis"
          "admin.page.builder.fields.price_boxes" => "Preisboxen"
          "admin.page.builder.fields.product_limit" => "Anzahl Produkte (1-24, 1 = Angebotsansicht)"
          "admin.page.builder.fields.products_optional" => "Gezielte Produkte (optional)"
          "admin.page.builder.fields.quote" => "Zitat"
          "admin.page.builder.fields.role" => "Rolle / Funktion"
          "admin.page.builder.fields.stars" => "Sterne"
          "admin.page.builder.fields.subtitle" => "Untertitel"
          "admin.page.builder.fields.text" => "Text"
          "admin.page.builder.fields.title" => "Titel"
          "admin.page.builder.fields.variant" => "Variante"
          "admin.page.builder.fields.video_link" => "Video-Link"
          "admin.page.builder.fields.widget_select" => "Widget auswählen"
          "admin.page.builder.groups.advanced" => "Erweitert"
          "admin.page.builder.groups.content" => "Inhalt"
          "admin.page.builder.groups.embeds" => "Einbindungen"
          "admin.page.builder.groups.misc" => "Sonstiges"
          "admin.page.builder.help.feature_per_line" => "Ein Merkmal pro Zeile."
          "admin.page.builder.help.icon_picker" => "Ein Icon anklicken. Nur bei Bedarf ein eigenes Icon eintragen."
          "admin.page.builder.help.image_optional" => "Optional: Bild hochladen oder URL eintragen."
          "admin.page.builder.help.video_link" => "Unterstützt YouTube, Vimeo sowie direkte MP4-, WebM- oder OGG-Dateien."
          "admin.page.builder.icon_labels.custom" => "Eigenes Icon"
          "admin.page.builder.icon_labels.custom_placeholder" => "Nur falls du ein spezielles Icon brauchst"
          "admin.page.builder.icon_labels.presets.bolt" => "Blitz"
          "admin.page.builder.icon_labels.presets.check" => "Haken"
          "admin.page.builder.icon_labels.presets.gift" => "Geschenk"
          "admin.page.builder.icon_labels.presets.globe" => "Welt"
          "admin.page.builder.icon_labels.presets.heart" => "Herz"
          "admin.page.builder.icon_labels.presets.leaf" => "Blatt"
          "admin.page.builder.icon_labels.presets.lock" => "Schloss"
          "admin.page.builder.icon_labels.presets.phone" => "Telefon"
          "admin.page.builder.icon_labels.presets.shield" => "Schild"
          "admin.page.builder.icon_labels.presets.star" => "Stern"
          "admin.page.builder.icon_labels.presets.thumbs_up" => "Daumen"
          "admin.page.builder.icon_labels.presets.truck" => "Lieferung"
          "admin.page.builder.modal.close" => "Schließen"
          "admin.page.builder.modal.title" => "Abschnitt auswählen"
          "admin.page.builder.options.cta_variant.dark" => "Dunkel"
          "admin.page.builder.options.cta_variant.light" => "Hell"
          "admin.page.builder.options.cta_variant.primary" => "Primär (blau)"
          "admin.page.builder.options.image_position.left" => "Links"
          "admin.page.builder.options.image_position.right" => "Rechts"
          "admin.page.builder.options.newsletter_variant.dark" => "Dunkel"
          "admin.page.builder.options.newsletter_variant.light" => "Hell"
          "admin.page.builder.options.newsletter_variant.primary" => "Primär"
          "admin.page.builder.options.stars.five" => "5 Sterne"
          "admin.page.builder.options.stars.four" => "4 Sterne"
          "admin.page.builder.options.stars.one" => "1 Stern"
          "admin.page.builder.options.stars.three" => "3 Sterne"
          "admin.page.builder.options.stars.two" => "2 Sterne"
          "admin.page.builder.panel_title" => "Page Builder"
          "admin.page.builder.runtime.add_item" => "Eintrag hinzufügen"
          "admin.page.builder.runtime.add_video_hint" => "Füge einen YouTube-, Vimeo- oder direkten Videolink ein."
          "admin.page.builder.runtime.block_prefix" => "Block #%id%"
          "admin.page.builder.runtime.count" => "%count% Elemente"
          "admin.page.builder.runtime.delete" => "Löschen"
          "admin.page.builder.runtime.duplicate" => "Duplizieren"
          "admin.page.builder.runtime.empty_entries" => "Noch keine Einträge angelegt."
          "admin.page.builder.runtime.empty_sections" => "Noch keine Abschnitte – füge einen hinzu!"
          "admin.page.builder.runtime.error_prefix" => "Fehler: "
          "admin.page.builder.runtime.error_unknown" => "Unbekannt"
          "admin.page.builder.runtime.file_detected" => "Videodatei erkannt"
          "admin.page.builder.runtime.file_hint" => "Das Frontend verwendet den Link als direkt eingebundene Videodatei."
          "admin.page.builder.runtime.full_width" => "Volle Seitenbreite"
          "admin.page.builder.runtime.full_width_hint" => "kein Container, randlos"
          "admin.page.builder.runtime.image_url_placeholder" => "oder Bild-URL eingeben …"
          "admin.page.builder.runtime.item_label" => "Eintrag"
          "admin.page.builder.runtime.move_down" => "Nach unten"
          "admin.page.builder.runtime.move_up" => "Nach oben"
          "admin.page.builder.runtime.multi_select_hint" => "Leer lassen = alle Produkte nach Kategorie/Limit laden"
          "admin.page.builder.runtime.no_video_preview" => "Noch keine Vorschau"
          "admin.page.builder.runtime.no_video_selected" => "Noch kein Video ausgewählt"
          "admin.page.builder.runtime.placeholder_or_add" => "oder neuen hinzufügen"
          "admin.page.builder.runtime.placeholder_select_section" => "Abschnitt links auswählen"
          "admin.page.builder.runtime.preview_alt" => "Vorschau"
          "admin.page.builder.runtime.remove" => "Entfernen"
          "admin.page.builder.runtime.remove_image" => "Bild entfernen"
          "admin.page.builder.runtime.remove_image_title" => "Bild entfernen"
          "admin.page.builder.runtime.select_none" => "– Keine Auswahl (alle Produkte) –"
          "admin.page.builder.runtime.select_products_placeholder" => "Produkte suchen und auswählen …"
          "admin.page.builder.runtime.select_prompt" => "– Bitte wählen –"
          "admin.page.builder.runtime.template_prompt" => "Name für die neue Vorlage:"
          "admin.page.builder.runtime.template_save_failed" => "Fehler beim Speichern der Vorlage."
          "admin.page.builder.runtime.template_saved" => "Vorlage "%name%" gespeichert!"
          "admin.page.builder.runtime.unknown_type" => "Unbekannter Typ: %type%"
          "admin.page.builder.runtime.unknown_video" => "Link nicht sicher erkannt"
          "admin.page.builder.runtime.unknown_video_hint" => "Nutze am besten einen YouTube-, Vimeo- oder direkten MP4/WebM-Link."
          "admin.page.builder.runtime.unknown_video_preview" => "Für diesen Link kann aktuell keine Vorschau erzeugt werden."
          "admin.page.builder.runtime.upload_error_prefix" => "Upload-Fehler: "
          "admin.page.builder.runtime.upload_failed" => "Upload fehlgeschlagen. Bitte erneut versuchen."
          "admin.page.builder.runtime.upload_image" => "Bild hochladen"
          "admin.page.builder.runtime.upload_in_progress" => "Wird hochgeladen …"
          "admin.page.builder.runtime.video_placeholder" => "https://youtu.be/... oder https://vimeo.com/..."
          "admin.page.builder.runtime.vimeo_detected" => "Vimeo erkannt"
          "admin.page.builder.runtime.vimeo_hint" => "Der Link wird im Frontend als eingebettetes Vimeo-Video dargestellt."
          "admin.page.builder.runtime.vimeo_preview_title" => "Vimeo-Vorschau"
          "admin.page.builder.runtime.visibility_limited" => "Sichtbarkeit eingeschränkt"
          "admin.page.builder.runtime.widget_prefix" => "Widget #%id%"
          "admin.page.builder.runtime.youtube_detected" => "YouTube erkannt"
          "admin.page.builder.runtime.youtube_hint" => "Der Link wird im Frontend als eingebettetes YouTube-Video dargestellt."
          "admin.page.builder.runtime.youtube_preview_title" => "YouTube-Vorschau"
          "admin.page.builder.section_labels.content_block" => "Content-Block"
          "admin.page.builder.section_labels.counter_cards" => "Kennzahlen"
          "admin.page.builder.section_labels.cta_banner" => "CTA-Banner"
          "admin.page.builder.section_labels.faq" => "FAQ"
          "admin.page.builder.section_labels.hero" => "Hero"
          "admin.page.builder.section_labels.icon_list" => "Icon-Liste"
          "admin.page.builder.section_labels.image_text" => "Bild + Text"
          "admin.page.builder.section_labels.legacy_html" => "Legacy HTML"
          "admin.page.builder.section_labels.newsletter" => "Newsletter"
          "admin.page.builder.section_labels.pricing_table" => "Preistabelle"
          "admin.page.builder.section_labels.product_grid" => "Produkt-Grid"
          "admin.page.builder.section_labels.spacer" => "Abstand"
          "admin.page.builder.section_labels.testimonials" => "Testimonials"
          "admin.page.builder.section_labels.text" => "Text"
          "admin.page.builder.section_labels.video" => "Video"
          "admin.page.builder.section_labels.widget" => "Widget"
          "admin.page.builder.section_meta.counter_cards.add" => "Kennzahl hinzufügen"
          "admin.page.builder.section_meta.counter_cards.empty" => "Noch keine Kennzahlen angelegt."
          "admin.page.builder.section_meta.counter_cards.item_label" => "Kennzahl"
          "admin.page.builder.section_meta.faq.add" => "Frage hinzufügen"
          "admin.page.builder.section_meta.faq.empty" => "Noch keine Fragen angelegt."
          "admin.page.builder.section_meta.faq.item_label" => "FAQ"
          "admin.page.builder.section_meta.icon_list.add" => "Eintrag hinzufügen"
          "admin.page.builder.section_meta.icon_list.empty" => "Noch keine Einträge angelegt."
          "admin.page.builder.section_meta.icon_list.item_label" => "Eintrag"
          "admin.page.builder.section_meta.pricing_table.add" => "Preisspalte hinzufügen"
          "admin.page.builder.section_meta.pricing_table.empty" => "Noch keine Preisboxen angelegt."
          "admin.page.builder.section_meta.pricing_table.item_label" => "Preisspalte"
          "admin.page.builder.section_meta.testimonials.add" => "Testimonial hinzufügen"
          "admin.page.builder.section_meta.testimonials.empty" => "Noch keine Testimonials angelegt."
          "admin.page.builder.section_meta.testimonials.item_label" => "Testimonial"
          "admin.page.builder.sidebar.title" => "Abschnitte"
          "admin.page.builder.templates.built_in.content_block.name" => "Beispiel: Content-Block"
          "admin.page.builder.templates.built_in.content_block.preview_note" => "Nach dem Einfügen bitte Content-Block auswählen"
          "admin.page.builder.templates.built_in.counter_cards.name" => "Beispiel: Kennzahlen"
          "admin.page.builder.templates.built_in.counter_cards.preview_note" => "AppStrap-inspirierte Kennzahlenkarten mit optionalem Bildhintergrund"
          "admin.page.builder.templates.built_in.cta_banner.name" => "Beispiel: CTA-Banner"
          "admin.page.builder.templates.built_in.cta_banner.preview_note" => "Konversionsstarker Call-to-Action"
          "admin.page.builder.templates.built_in.faq.name" => "Beispiel: FAQ"
          "admin.page.builder.templates.built_in.faq.preview_note" => "FAQ mit zwei Beispielpunkten"
          "admin.page.builder.templates.built_in.hero.name" => "Beispiel: Hero"
          "admin.page.builder.templates.built_in.hero.preview_note" => "Vorgefertigtes Hero-Beispiel"
          "admin.page.builder.templates.built_in.icon_list.name" => "Beispiel: Icon-Liste"
          "admin.page.builder.templates.built_in.icon_list.preview_note" => "Icon-Liste mit drei Vorteilen"
          "admin.page.builder.templates.built_in.image_text.name" => "Beispiel: Bild + Text"
          "admin.page.builder.templates.built_in.image_text.preview_note" => "Bild bitte nach dem Einfügen auswählen"
          "admin.page.builder.templates.built_in.legacy_html.name" => "Beispiel: Legacy HTML"
          "admin.page.builder.templates.built_in.legacy_html.preview_note" => "Für Altdaten oder Spezialmarkup"
          "admin.page.builder.templates.built_in.newsletter.name" => "Beispiel: Newsletter"
          "admin.page.builder.templates.built_in.newsletter.preview_note" => "Inline-Anmeldeblock ist direkt an das vorhandene Newsletter-Abo angebunden"
          "admin.page.builder.templates.built_in.pricing_table.name" => "Beispiel: Preistabelle"
          "admin.page.builder.templates.built_in.pricing_table.preview_note" => "Zwei Preisstufen als Beispiel"
          "admin.page.builder.templates.built_in.product_grid.name" => "Beispiel: Produkt-Grid"
          "admin.page.builder.templates.built_in.product_grid.preview_note" => "Shop-Kartenansicht mit Beispielüberschrift"
          "admin.page.builder.templates.built_in.spacer.name" => "Beispiel: Abstand"
          "admin.page.builder.templates.built_in.spacer.preview_note" => "Zwischenraum für Layout-Trennung"
          "admin.page.builder.templates.built_in.testimonials.name" => "Beispiel: Testimonials"
          "admin.page.builder.templates.built_in.testimonials.preview_note" => "Testimonials mit Beispielbewertungen"
          "admin.page.builder.templates.built_in.text.name" => "Beispiel: Textblock"
          "admin.page.builder.templates.built_in.text.preview_note" => "Einfacher redaktioneller Textabschnitt"
          "admin.page.builder.templates.built_in.video.name" => "Beispiel: Video"
          "admin.page.builder.templates.built_in.video.preview_note" => "Video-Sektion mit Beispiel-URL"
          "admin.page.builder.templates.built_in.widget.name" => "Beispiel: Widget"
          "admin.page.builder.templates.built_in.widget.preview_note" => "Nach dem Einfügen bitte Widget auswählen"
          "admin.page.builder.templates.errors.invalid_data" => "Ungültige Daten"
          "admin.page.builder.toggle_labels.active" => "Aktiv"
          "admin.page.builder.toggle_labels.highlighted" => "Diese Preisbox hervorheben"
          "admin.page.builder.toolbar.add_section" => "Abschnitt hinzufügen"
          "admin.page.builder.toolbar.insert" => "Einfügen"
          "admin.page.builder.toolbar.insert_title" => "Vorlage einfügen"
          "admin.page.builder.toolbar.template_placeholder" => "– Vorlage wählen –"
          "admin.page.builder.upload.errors.directory_not_writable" => "Upload-Verzeichnis ist nicht beschreibbar."
          "admin.page.builder.upload.errors.file_too_large" => "Datei zu groß (max. 5 MB)."
          "admin.page.builder.upload.errors.invalid_type" => "Ungültiger Dateityp. Erlaubt: JPG, PNG, GIF, WebP."
          "admin.page.builder.upload.errors.no_file" => "Keine Datei übermittelt."
          "admin.page.builder.upload.errors.save_failed" => "Bild konnte nicht gespeichert werden."
          "admin.page.builder.visibility.actions.apply" => "Übernehmen"
          "admin.page.builder.visibility.actions.apply_done" => "Übernommen"
          "admin.page.builder.visibility.actions.save_template" => "Als Vorlage speichern"
          "admin.page.builder.visibility.actions.save_template_title" => "Abschnitt als Vorlage speichern"
          "admin.page.builder.visibility.audience.all" => "Alle Besucher"
          "admin.page.builder.visibility.audience.guests" => "Nur Gäste (nicht eingeloggt)"
          "admin.page.builder.visibility.audience.logged_in" => "Nur eingeloggte Kunden"
          "admin.page.builder.visibility.fields.audience" => "Zielgruppe"
          "admin.page.builder.visibility.fields.from" => "Sichtbar ab"
          "admin.page.builder.visibility.fields.to" => "Sichtbar bis"
          "admin.page.builder.visibility.title" => "Sichtbarkeit & Zeitplanung"
          "admin.page.edit.actions.back" => "Zurück"
          "admin.page.edit.actions.publish" => "Veröffentlichen"
          "admin.page.edit.actions.restore" => "Stand wiederherstellen"
          "admin.page.edit.actions.save_draft" => "Entwurf speichern"
          "admin.page.edit.actions.save_public" => "Öffentliche Seite speichern"
          "admin.page.edit.actions.unpublish" => "Offline schalten"
          "admin.page.edit.meta_title" => "Seite bearbeiten"
          "admin.page.edit.page_title" => "Seite bearbeiten"
          "admin.page.edit.restore_title" => "Letzten veröffentlichten Stand wiederherstellen"
          "admin.page.edit.status.draft" => "Entwurf"
          "admin.page.edit.status.published" => "Veröffentlicht"
          "admin.page.edit.status.published_at" => "Veröffentlicht: %date%"
          "admin.page.edit.tabs.builder" => "Seite & Builder"
          "admin.page.edit.tabs.revisions" => "Revisionen"
          "admin.page.edit.tabs.revisions_title" => "Revisionsverlauf anzeigen"
          "admin.page.edit.tabs.seo" => "SEO"
          "admin.page.errors.not_found" => "Seite nicht gefunden"
          "admin.page.errors.revision_not_found" => "Revision nicht gefunden"
          "admin.page.form.choices.footer_placements.legal" => "Untere Legal-Leiste"
          "admin.page.form.choices.footer_placements.main" => "Oberes Footer-Menü"
          "admin.page.form.choices.footer_placements.none" => "Nicht im Footer anzeigen"
          "admin.page.form.choices.slider_types.nfok_announcement_strip" => "Announcement Strip"
          "admin.page.form.choices.slider_types.nfok_automation_flow" => "Automation Flow"
          "admin.page.form.choices.slider_types.nfok_case_study" => "Case Study"
          "admin.page.form.choices.slider_types.nfok_commerce_hero" => "Commerce Hero"
          "admin.page.form.choices.slider_types.nfok_editorial_minimal" => "Editorial Minimal"
          "admin.page.form.choices.slider_types.nfok_feature_stack" => "Feature Stack"
          "admin.page.form.choices.slider_types.nfok_product_focus" => "Produktfokus"
          "admin.page.form.choices.slider_types.nfok_service_hero" => "NFOK Service Hero"
          "admin.page.form.choices.slider_types.nfok_technical_dark" => "Technical Dark"
          "admin.page.form.choices.slider_types.nfok_trust_metrics" => "Trust & Kennzahlen"
          "admin.page.form.choices.slider_types.none" => "Kein Slider"
          "admin.page.form.choices.slider_types.slider1" => "Legacy Slider 1"
          "admin.page.form.choices.slider_types.slider2" => "Legacy Slider 2"
          "admin.page.form.choices.slider_types.slider3" => "Legacy Slider 3"
          "admin.page.form.choices.statuses.draft" => "Entwurf (nicht öffentlich)"
          "admin.page.form.choices.statuses.published" => "Öffentlich (live sichtbar)"
          "admin.page.form.choices.templates.compact" => "Kompakt"
          "admin.page.form.choices.templates.default" => "Standard"
          "admin.page.form.choices.templates.landing" => "Landingpage"
          "admin.page.form.fields.answer" => "Antwort"
          "admin.page.form.fields.footer_placement" => "Footer-Platzierung"
          "admin.page.form.fields.is_footer_menu" => "Im Footer-Menü anzeigen"
          "admin.page.form.fields.page_template" => "Seiten-Template"
          "admin.page.form.fields.question" => "Frage"
          "admin.page.form.fields.show_in_menu" => "In Menü anzeigen"
          "admin.page.form.fields.slider_enabled" => "Slider anzeigen"
          "admin.page.form.fields.slider_type" => "Slider-Variante"
          "admin.page.form.fields.slug" => "Slug"
          "admin.page.form.fields.status" => "Status"
          "admin.page.form.fields.title" => "Titel"
          "admin.page.home.actions.delete_title" => "Löschen"
          "admin.page.home.actions.edit_title" => "Bearbeiten"
          "admin.page.home.actions.help" => "Hilfe"
          "admin.page.home.actions.help_title" => "Hilfe zu diesem Modul"
          "admin.page.home.actions.new" => "Seite anlegen"
          "admin.page.home.actions.publish_title" => "Veröffentlichen"
          "admin.page.home.actions.show_title" => "Anzeigen"
          "admin.page.home.actions.unpublish_title" => "Offline schalten"
          "admin.page.home.delete_modal.body" => "Möchten Sie die Seite %title% wirklich löschen?"
          "admin.page.home.delete_modal.cancel" => "Abbrechen"
          "admin.page.home.delete_modal.confirm" => "Löschen"
          "admin.page.home.delete_modal.title" => "Löschen bestätigen"
          "admin.page.home.headers.actions" => "Aktionen"
          "admin.page.home.headers.footer_placement" => "Footer"
          "admin.page.home.headers.id" => "ID"
          "admin.page.home.headers.published_at" => "Veröffentlicht am"
          "admin.page.home.headers.status" => "Status"
          "admin.page.home.headers.template" => "Template"
          "admin.page.home.headers.title" => "Titel"
          "admin.page.home.headers.url" => "URL"
          "admin.page.home.list_title" => "Seitenliste"
          "admin.page.home.meta_title" => "Seitenverwaltung"
          "admin.page.home.page_subtitle" => "Entwürfe, Veröffentlichungen und Builder-Templates zentral verwalten."
          "admin.page.home.page_title" => "Seitenverwaltung"
          "admin.page.home.status.draft" => "Entwurf"
          "admin.page.home.status.published" => "Veröffentlicht"
          "admin.page.home.values.empty" => "Keine Seiten gefunden."
          "admin.page.new.actions.back" => "Zurück"
          "admin.page.new.actions.save_draft" => "Entwurf anlegen"
          "admin.page.new.actions.save_public" => "Öffentliche Seite anlegen"
          "admin.page.new.meta_title" => "Neue Seite"
          "admin.page.new.page_title" => "Neue Seite anlegen"
          "admin.page.new.tabs.builder" => "Seite & Builder"
          "admin.page.new.tabs.seo" => "SEO"
          "admin.page.notifications.created" => "Seite wurde angelegt."
          "admin.page.notifications.deleted" => "Seite wurde gelöscht."
          "admin.page.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.page.notifications.no_published_version" => "Keine veröffentlichte Version vorhanden."
          "admin.page.notifications.published" => "Seite wurde veröffentlicht. Revision gespeichert."
          "admin.page.notifications.restored_published" => "Entwurf wurde auf die letzte veröffentlichte Version zurückgesetzt."
          "admin.page.notifications.unpublished" => "Seite wurde offline geschaltet. Entwurf bleibt erhalten."
          "admin.page.notifications.updated" => "Seite wurde gespeichert."
          "admin.page.revisions.actions.back" => "Zurück zum Editor"
          "admin.page.revisions.actions.delete_title" => "Revision löschen"
          "admin.page.revisions.actions.restore" => "Wiederherstellen"
          "admin.page.revisions.actions.restore_title" => "Als Entwurf wiederherstellen"
          "admin.page.revisions.delete_modal.body" => "Revision %title% vom %date% wirklich löschen?"
          "admin.page.revisions.delete_modal.cancel" => "Abbrechen"
          "admin.page.revisions.delete_modal.confirm" => "Löschen"
          "admin.page.revisions.delete_modal.title" => "Revision löschen"
          "admin.page.revisions.empty" => "Noch keine Revisionen vorhanden. Revisionen werden automatisch beim Anlegen, Speichern und Veröffentlichen erstellt."
          "admin.page.revisions.headers.actions" => "Aktionen"
          "admin.page.revisions.headers.created_at" => "Erstellt am"
          "admin.page.revisions.headers.created_by" => "Erstellt von"
          "admin.page.revisions.headers.id" => "ID"
          "admin.page.revisions.headers.label" => "Bezeichnung"
          "admin.page.revisions.headers.sections" => "Abschnitte"
          "admin.page.revisions.labels.created" => "Anlage %date%"
          "admin.page.revisions.labels.published" => "Veröffentlichung %date%"
          "admin.page.revisions.labels.updated" => "Bearbeitung %date%"
          "admin.page.revisions.list_title" => "Gespeicherte Revisionen (%count%)"
          "admin.page.revisions.meta_title" => "Revisionsverlauf – %title%"
          "admin.page.revisions.notifications.deleted" => "Revision wurde gelöscht."
          "admin.page.revisions.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.page.revisions.notifications.restored" => "Entwurf wurde auf Revision vom %date% zurückgesetzt."
          "admin.page.revisions.page_title" => "Revisionsverlauf"
          "admin.pricing.actions.apply" => "Anwenden"
          "admin.pricing.actions.back" => "Zurück"
          "admin.pricing.actions.cancel" => "Abbrechen"
          "admin.pricing.actions.close" => "Schließen"
          "admin.pricing.actions.delete" => "Löschen"
          "admin.pricing.actions.help" => "Hilfe"
          "admin.pricing.actions.new_guard" => "Neue Schutzregel"
          "admin.pricing.actions.new_rule" => "Neue Preisregel"
          "admin.pricing.actions.refresh" => "Aktualisieren"
          "admin.pricing.actions.save" => "Speichern"
          "admin.pricing.actions.to_module" => "Zum Modul"
          "admin.pricing.actions.toggle" => "Aktivieren oder deaktivieren"
          "admin.pricing.api.errors.guard_name_required" => "Ein Name für die Schutzregel ist erforderlich."
          "admin.pricing.api.errors.import_rows_array" => "Die Zeilen müssen als Array übergeben werden."
          "admin.pricing.api.errors.rule_name_required" => "Ein Regelname ist erforderlich."
          "admin.pricing.api.errors.tier_fields_required" => "Produkt, Mindestmenge und Preis sind erforderlich."
          "admin.pricing.common.no_value" => "-"
          "admin.pricing.guard_scopes.all" => "Alle Produkte"
          "admin.pricing.guard_scopes.category" => "Kategorie"
          "admin.pricing.guard_scopes.manufacturer" => "Hersteller"
          "admin.pricing.help_index.card_subtitle" => "Preisregeln, Guards, Staffelpreise"
          "admin.pricing.help_index.card_title" => "Dynamische Preisgestaltung"
          "admin.pricing.help_index.table_description" => "Preisregeln, Schutzregeln und Staffelpreise"
          "admin.pricing.help_index.table_label" => "Preisgestaltung"
          "admin.pricing.help.navigation_title" => "Navigation"
          "admin.pricing.help.navigation.api" => "API-Endpunkte"
          "admin.pricing.help.navigation.apply" => "Regeln anwenden"
          "admin.pricing.help.navigation.competitors" => "Wettbewerberpreise"
          "admin.pricing.help.navigation.guard_fields" => "Feldreferenz Guard"
          "admin.pricing.help.navigation.guards" => "Schutzregeln"
          "admin.pricing.help.navigation.overview" => "Überblick"
          "admin.pricing.help.navigation.rule_fields" => "Feldreferenz Preisregel"
          "admin.pricing.help.navigation.rules" => "Preisregeln"
          "admin.pricing.help.navigation.tiers" => "Staffelpreise"
          "admin.pricing.help.required_no" => "Nein"
          "admin.pricing.help.required_yes" => "Ja"
          "admin.pricing.help.sections.api.rows.apply" => "Regeln im Modus dry oder live anwenden"
          "admin.pricing.help.sections.api.rows.competitors_import" => "Mitbewerber-Snapshots importieren"
          "admin.pricing.help.sections.api.rows.competitors_snapshots" => "Letzte Mitbewerber-Snapshots laden"
          "admin.pricing.help.sections.api.rows.competitors_summary" => "Mitbewerber-Zusammenfassung laden"
          "admin.pricing.help.sections.api.rows.guard_create" => "Neue Schutzregel anlegen"
          "admin.pricing.help.sections.api.rows.guard_delete" => "Schutzregel löschen"
          "admin.pricing.help.sections.api.rows.guard_toggle" => "Schutzregel aktivieren oder deaktivieren"
          "admin.pricing.help.sections.api.rows.index" => "Übersicht mit Regeln, Guards und Zusatzbereichen"
          "admin.pricing.help.sections.api.rows.rule_create" => "Neue Preisregel anlegen"
          "admin.pricing.help.sections.api.rows.rule_delete" => "Preisregel löschen"
          "admin.pricing.help.sections.api.rows.rule_toggle" => "Preisregel aktivieren oder deaktivieren"
          "admin.pricing.help.sections.api.rows.tiers_delete" => "Staffelpreis löschen"
          "admin.pricing.help.sections.api.rows.tiers_list" => "Staffelpreise laden"
          "admin.pricing.help.sections.api.rows.tiers_upsert" => "Staffelpreis anlegen oder aktualisieren"
          "admin.pricing.help.sections.api.table.function" => "Funktion"
          "admin.pricing.help.sections.api.table.method" => "Methode"
          "admin.pricing.help.sections.api.table.url" => "URL"
          "admin.pricing.help.sections.api.title" => "API-Endpunkte"
          "admin.pricing.help.sections.apply.dry_bullets.affected_products" => "Zeigt, welche Produkte betroffen wären."
          "admin.pricing.help.sections.apply.dry_bullets.guard_effects" => "Zeigt, welche Schutzregeln eingreifen würden."
          "admin.pricing.help.sections.apply.dry_bullets.no_live_effect" => "Hat keine direkte Auswirkung auf den Live-Shop."
          "admin.pricing.help.sections.apply.dry_bullets.price_delta" => "Vergleicht alten und neuen Preis."
          "admin.pricing.help.sections.apply.dry_intro" => "Simuliert die Regelanwendung ohne Datenbankänderung."
          "admin.pricing.help.sections.apply.dry_title" => "Dry-Run"
          "admin.pricing.help.sections.apply.live_bullets.dry_first" => "Empfehlung: immer zuerst Dry-Run ausführen."
          "admin.pricing.help.sections.apply.live_bullets.immediate" => "Wirkt sofort auf den Live-Shop."
          "admin.pricing.help.sections.apply.live_bullets.not_automatic" => "Ist nicht automatisch rückgängig zu machen."
          "admin.pricing.help.sections.apply.live_bullets.special_price" => "Aktualisiert den in Pricing verwendeten <code>specialPrice</code>-Pfad über die Service-Logik."
          "admin.pricing.help.sections.apply.live_intro" => "Wendet die aktiven Regeln dauerhaft an."
          "admin.pricing.help.sections.apply.live_title" => "Live-Anwendung"
          "admin.pricing.help.sections.apply.parameters" => "<strong>Parameter:</strong> <code>mode</code> = <code>dry</code> oder <code>live</code>, <code>limit</code> = optionale Produktanzahl pro Durchlauf."
          "admin.pricing.help.sections.apply.title" => "Regeln anwenden"
          "admin.pricing.help.sections.competitors.bullets.data_points" => "Snapshots speichern Wettbewerber, Preis, SKU, Lagerstatus, URL und Erfassungszeitpunkt."
          "admin.pricing.help.sections.competitors.bullets.import" => "Der Import erfolgt über <code>/admin/api/pricing/competitors/import</code>."
          "admin.pricing.help.sections.competitors.bullets.snapshots" => "Die rechte Tabelle zeigt die letzten importierten Snapshots mit Produktbezug."
          "admin.pricing.help.sections.competitors.bullets.summary" => "Die Zusammenfassung gruppiert Daten der letzten 30 Tage pro Wettbewerber."
          "admin.pricing.help.sections.competitors.intro" => "Der Bereich beobachtet externe Preis-Snapshots und macht Trends für die Preissteuerung sichtbar."
          "admin.pricing.help.sections.competitors.title" => "Wettbewerberpreise"
          "admin.pricing.help.sections.guard_fields.rows.is_active" => "Aktiviert oder deaktiviert die Schutzregel."
          "admin.pricing.help.sections.guard_fields.rows.max_discount_percent" => "Maximal zulässiger Gesamtrabatt in Prozent."
          "admin.pricing.help.sections.guard_fields.rows.min_final_price" => "Unterschreitet der Endpreis diesen Wert, greift der Guard ein."
          "admin.pricing.help.sections.guard_fields.rows.name" => "Interner Name der Schutzregel."
          "admin.pricing.help.sections.guard_fields.rows.notes" => "Interne Notiz."
          "admin.pricing.help.sections.guard_fields.rows.priority" => "Höhere Zahl = frühere Prüfung."
          "admin.pricing.help.sections.guard_fields.rows.scope_type" => "all, category oder manufacturer."
          "admin.pricing.help.sections.guard_fields.rows.scope_value" => "ID oder Bezeichner des gewählten Geltungsbereichs."
          "admin.pricing.help.sections.guard_fields.rows.starts_ends_at" => "Optionaler zeitlicher Gültigkeitsbereich."
          "admin.pricing.help.sections.guard_fields.title" => "Feldreferenz: PricingGuardRule"
          "admin.pricing.help.sections.guards.description" => "Schutzregeln prüfen den <strong>berechneten Endpreis</strong> und begrenzen unerwünschte Ergebnisse nach der eigentlichen Preisregel-Anwendung."
          "admin.pricing.help.sections.guards.steps_title" => "Schritt-für-Schritt: Neue Schutzregel"
          "admin.pricing.help.sections.guards.steps.activate" => "Die Schutzregel aktivieren."
          "admin.pricing.help.sections.guards.steps.max_discount" => "<code>maxDiscountPercent</code> für den maximalen Rabatt setzen."
          "admin.pricing.help.sections.guards.steps.min_price" => "<code>minFinalPrice</code> für den absoluten Mindestpreis setzen."
          "admin.pricing.help.sections.guards.steps.open" => "Im rechten Formularbereich eine neue Schutzregel erfassen."
          "admin.pricing.help.sections.guards.steps.scope" => "Denselben Geltungsbereich wie die zugehörigen Preisregeln wählen."
          "admin.pricing.help.sections.guards.title" => "Schutzregeln (PricingGuardRule)"
          "admin.pricing.help.sections.guards.warning" => "<strong>Wichtig:</strong> Guards arbeiten auf dem Endpreis, nicht auf dem Basispreis."
          "admin.pricing.help.sections.overview.competitor_layer_text" => "Zeigt Wettbewerber-Snapshots und Zusammenfassungen für externe Preisbeobachtung."
          "admin.pricing.help.sections.overview.competitor_layer_title" => "Wettbewerber-Snapshots"
          "admin.pricing.help.sections.overview.guard_layer_text" => "Begrenzt unerwünschte Ergebnisse mit Mindestpreis- und Rabattgrenzen."
          "admin.pricing.help.sections.overview.guard_layer_title" => "Schutzregeln"
          "admin.pricing.help.sections.overview.intro" => "Das Modul <strong>Dynamische Preisgestaltung</strong> kombiniert Preisregeln, Schutzregeln, Staffelpreise und Wettbewerberdaten in einer zentralen Admin-Oberfläche."
          "admin.pricing.help.sections.overview.priority_note" => "<strong>Priorität:</strong> Regeln und Guards werden in absteigender Priorität verarbeitet. Höhere Zahl = frühere Ausführung. <strong>stopOnMatch</strong> beendet die weitere Regelkette nach dem ersten Treffer."
          "admin.pricing.help.sections.overview.rule_layer_text" => "Definiert, wie sich Preise verändern: prozentual erhöhen, prozentual senken oder fest überschreiben."
          "admin.pricing.help.sections.overview.rule_layer_title" => "Preisregeln"
          "admin.pricing.help.sections.overview.tier_layer_text" => "Verwaltet mengen- und gruppenabhängige Staffelpreise pro Produkt."
          "admin.pricing.help.sections.overview.tier_layer_title" => "Staffelpreise"
          "admin.pricing.help.sections.overview.title" => "Überblick: Das Preisgestaltungs-System"
          "admin.pricing.help.sections.rule_fields.rows.ends_at" => "Ende des Gültigkeitszeitraums."
          "admin.pricing.help.sections.rule_fields.rows.is_active" => "Regel aktiv oder inaktiv; Standard im Modul ist aktiv."
          "admin.pricing.help.sections.rule_fields.rows.max_base_price" => "Optionaler maximaler Basispreis für die Anwendung."
          "admin.pricing.help.sections.rule_fields.rows.min_base_price" => "Optionaler minimaler Basispreis für die Anwendung."
          "admin.pricing.help.sections.rule_fields.rows.name" => "Interner Name der Preisregel."
          "admin.pricing.help.sections.rule_fields.rows.notes" => "Interne Notiz zur Regel."
          "admin.pricing.help.sections.rule_fields.rows.priority" => "Höhere Zahl = frühere Verarbeitung."
          "admin.pricing.help.sections.rule_fields.rows.rule_type" => "Art der Preisanpassung."
          "admin.pricing.help.sections.rule_fields.rows.scope_type" => "all, category, manufacturer oder tag."
          "admin.pricing.help.sections.rule_fields.rows.scope_value" => "Wert oder ID des gewählten Geltungsbereichs."
          "admin.pricing.help.sections.rule_fields.rows.starts_at" => "Start des Gültigkeitszeitraums."
          "admin.pricing.help.sections.rule_fields.rows.stop_on_match" => "Beendet die weitere Regelkette nach einem Treffer."
          "admin.pricing.help.sections.rule_fields.rows.value" => "Wert der Preisänderung in Prozent oder als fixer Preis."
          "admin.pricing.help.sections.rule_fields.title" => "Feldreferenz: PricingRule"
          "admin.pricing.help.sections.rules.scope_rows.all.effect" => "Alle Produkte im Shop."
          "admin.pricing.help.sections.rules.scope_rows.all.value" => "leer"
          "admin.pricing.help.sections.rules.scope_rows.category.effect" => "Alle Produkte einer Kategorie."
          "admin.pricing.help.sections.rules.scope_rows.category.value" => "Kategorie-ID oder Bezeichner"
          "admin.pricing.help.sections.rules.scope_rows.manufacturer.effect" => "Alle Produkte eines Herstellers."
          "admin.pricing.help.sections.rules.scope_rows.manufacturer.value" => "Herstellername oder Kennung"
          "admin.pricing.help.sections.rules.scope_rows.tag.effect" => "Alle Produkte mit einem bestimmten Tag."
          "admin.pricing.help.sections.rules.scope_rows.tag.value" => "Tag-Name"
          "admin.pricing.help.sections.rules.scope_table.applies_to" => "Gilt für"
          "admin.pricing.help.sections.rules.scopes_title" => "Geltungsbereiche (scopeType)"
          "admin.pricing.help.sections.rules.steps_title" => "Schritt-für-Schritt: Neue Preisregel"
          "admin.pricing.help.sections.rules.steps.constraints" => "Optional Mindest-/Maximal-Basispreis, Gültigkeitszeitraum und stopOnMatch setzen."
          "admin.pricing.help.sections.rules.steps.open" => "Im linken Formularbereich eine neue Preisregel erfassen."
          "admin.pricing.help.sections.rules.steps.scope" => "Geltungsbereich über scopeType und optional scopeValue festlegen."
          "admin.pricing.help.sections.rules.steps.test" => "Vor dem Live-Lauf zuerst einen Dry-Run ausführen."
          "admin.pricing.help.sections.rules.steps.type" => "Einen Regeltyp auswählen."
          "admin.pricing.help.sections.rules.steps.value" => "Den numerischen Regelwert und die Priorität setzen."
          "admin.pricing.help.sections.rules.title" => "Preisregeln anlegen und verwalten"
          "admin.pricing.help.sections.rules.type_rows.fixed_override.effect" => "Setzt einen absoluten Zielpreis."
          "admin.pricing.help.sections.rules.type_rows.fixed_override.example" => "Produkt X kostet immer 9,99 €"
          "admin.pricing.help.sections.rules.type_rows.percent_decrease.effect" => "Senkt den Preis prozentual."
          "admin.pricing.help.sections.rules.type_rows.percent_decrease.example" => "-10 % auf saisonale Produkte"
          "admin.pricing.help.sections.rules.type_rows.percent_increase.effect" => "Erhöht den Preis prozentual."
          "admin.pricing.help.sections.rules.type_rows.percent_increase.example" => "+15 % auf ausgewählte Sortimente"
          "admin.pricing.help.sections.rules.type_table.effect" => "Wirkung"
          "admin.pricing.help.sections.rules.type_table.example" => "Beispiel"
          "admin.pricing.help.sections.rules.types_title" => "Verfügbare Regeltypen"
          "admin.pricing.help.sections.tiers.bullets.api" => "Das Formular arbeitet gegen <code>/admin/api/pricing/tiers</code>."
          "admin.pricing.help.sections.tiers.bullets.group" => "Optional kann eine aktive Kundengruppe als Einschränkung hinterlegt werden."
          "admin.pricing.help.sections.tiers.bullets.price" => "Der gespeicherte Preis ist ein fixer Staffelpreis pro Mindestmenge."
          "admin.pricing.help.sections.tiers.bullets.product" => "Staffelpreise werden immer einem konkreten Produkt zugeordnet."
          "admin.pricing.help.sections.tiers.bullets.quantity" => "Ab einer Mindestmenge greift der definierte Preis."
          "admin.pricing.help.sections.tiers.intro" => "Der Staffelpreis-Bereich ergänzt die dynamischen Regeln um feste Mengenpreise pro Produkt."
          "admin.pricing.help.sections.tiers.title" => "Staffelpreise"
          "admin.pricing.help.table.description" => "Beschreibung"
          "admin.pricing.help.table.field" => "Feld"
          "admin.pricing.help.table.required" => "Pflicht"
          "admin.pricing.help.table.type" => "Typ"
          "admin.pricing.help.title" => "Hilfe: Dynamische Preisgestaltung"
          "admin.pricing.help.types.boolean" => "Boolean"
          "admin.pricing.help.types.datetime" => "Datum/Zeit"
          "admin.pricing.help.types.enum" => "Enum"
          "admin.pricing.help.types.float" => "Dezimal"
          "admin.pricing.help.types.integer" => "Integer"
          "admin.pricing.help.types.text" => "Text"
          "admin.pricing.index.apply.dry_button" => "Dry-Run ausführen"
          "admin.pricing.index.apply.limit_label" => "Produktlimit (optional)"
          "admin.pricing.index.apply.limit_placeholder" => "z. B. 100"
          "admin.pricing.index.apply.live_button" => "Live-Apply ausführen"
          "admin.pricing.index.apply.live_confirm" => "Live-Apply wirklich starten? Der Pricing-Run aktualisiert gespeicherte Preiswerte."
          "admin.pricing.index.apply.live_confirm_label" => "Live-Apply starten"
          "admin.pricing.index.apply.title" => "Anwenden"
          "admin.pricing.index.competitors.in_stock_no" => "nein"
          "admin.pricing.index.competitors.in_stock_yes" => "ja"
          "admin.pricing.index.competitors.loading" => "Lade…"
          "admin.pricing.index.competitors.section_title" => "Wettbewerber-Preise"
          "admin.pricing.index.competitors.snapshots_columns.captured_at" => "Erfasst"
          "admin.pricing.index.competitors.snapshots_columns.competitor" => "Wettbewerber"
          "admin.pricing.index.competitors.snapshots_columns.in_stock" => "Lagernd"
          "admin.pricing.index.competitors.snapshots_columns.price" => "Preis"
          "admin.pricing.index.competitors.snapshots_columns.product" => "Produkt"
          "admin.pricing.index.competitors.snapshots_columns.sku" => "SKU"
          "admin.pricing.index.competitors.snapshots_empty" => "Keine Snapshots vorhanden."
          "admin.pricing.index.competitors.snapshots_load_failed" => "Snapshots konnten nicht geladen werden."
          "admin.pricing.index.competitors.snapshots_title" => "Letzte Snapshots"
          "admin.pricing.index.competitors.summary_columns.avg_price" => "Ø Preis"
          "admin.pricing.index.competitors.summary_columns.competitor" => "Wettbewerber"
          "admin.pricing.index.competitors.summary_columns.last_seen" => "Zuletzt"
          "admin.pricing.index.competitors.summary_columns.snapshots" => "Snapshots"
          "admin.pricing.index.competitors.summary_empty" => "Keine Daten vorhanden."
          "admin.pricing.index.competitors.summary_load_failed" => "Zusammenfassung konnte nicht geladen werden."
          "admin.pricing.index.competitors.summary_title" => "Zusammenfassung (letzte 30 Tage)"
          "admin.pricing.index.guard_form.active_label" => "Aktiv"
          "admin.pricing.index.guard_form.end_label" => "Ende"
          "admin.pricing.index.guard_form.max_discount_percent_placeholder" => "Max. Rabatt %"
          "admin.pricing.index.guard_form.min_final_price_placeholder" => "Min. finaler Preis"
          "admin.pricing.index.guard_form.name_placeholder" => "Name der Schutzregel"
          "admin.pricing.index.guard_form.notes_placeholder" => "Interne Notiz"
          "admin.pricing.index.guard_form.priority_placeholder" => "Priorität"
          "admin.pricing.index.guard_form.scope_value_placeholder" => "Scope-Wert"
          "admin.pricing.index.guard_form.start_label" => "Start"
          "admin.pricing.index.guard_form.submit" => "Schutzregel erstellen"
          "admin.pricing.index.guard_form.title" => "Neue Schutzregel"
          "admin.pricing.index.guards_table.columns.actions" => "Aktionen"
          "admin.pricing.index.guards_table.columns.max_discount_percent" => "Max. Rabatt %"
          "admin.pricing.index.guards_table.columns.min_final_price" => "Min. Preis"
          "admin.pricing.index.guards_table.columns.name" => "Name"
          "admin.pricing.index.guards_table.columns.priority" => "Prio"
          "admin.pricing.index.guards_table.columns.scope" => "Scope"
          "admin.pricing.index.guards_table.columns.status" => "Status"
          "admin.pricing.index.guards_table.delete_confirm" => "Schutzregel "%name%" wirklich löschen?"
          "admin.pricing.index.guards_table.empty" => "Keine Schutzregeln vorhanden."
          "admin.pricing.index.guards_table.title" => "Schutzregeln"
          "admin.pricing.index.history.columns.changed" => "Geändert"
          "admin.pricing.index.history.columns.checked" => "Geprüft"
          "admin.pricing.index.history.columns.created_at" => "Zeitpunkt"
          "admin.pricing.index.history.columns.guards" => "Guards"
          "admin.pricing.index.history.columns.id" => "ID"
          "admin.pricing.index.history.columns.mode" => "Modus"
          "admin.pricing.index.history.columns.rules" => "Regeln"
          "admin.pricing.index.history.empty" => "Noch keine Runs vorhanden."
          "admin.pricing.index.history.modes.dry" => "Dry-Run"
          "admin.pricing.index.history.modes.live" => "Live"
          "admin.pricing.index.history.title" => "Pricing-Run-Historie"
          "admin.pricing.index.page_title" => "Dynamische Preisgestaltung"
          "admin.pricing.index.rule_form.active_label" => "Aktiv"
          "admin.pricing.index.rule_form.end_label" => "Ende"
          "admin.pricing.index.rule_form.max_base_price_placeholder" => "Max. Basispreis"
          "admin.pricing.index.rule_form.min_base_price_placeholder" => "Min. Basispreis"
          "admin.pricing.index.rule_form.name_placeholder" => "Name der Preisregel"
          "admin.pricing.index.rule_form.notes_placeholder" => "Interne Notiz"
          "admin.pricing.index.rule_form.priority_placeholder" => "Priorität"
          "admin.pricing.index.rule_form.scope_value_placeholder" => "Scope-Wert (z. B. Kategorie-ID oder Hersteller)"
          "admin.pricing.index.rule_form.start_label" => "Start"
          "admin.pricing.index.rule_form.stop_on_match_label" => "Weitere Regeln nach Treffer stoppen"
          "admin.pricing.index.rule_form.submit" => "Preisregel erstellen"
          "admin.pricing.index.rule_form.title" => "Neue Preisregel"
          "admin.pricing.index.rule_form.value_placeholder" => "Wert"
          "admin.pricing.index.rules_table.columns.actions" => "Aktionen"
          "admin.pricing.index.rules_table.columns.name" => "Name"
          "admin.pricing.index.rules_table.columns.priority" => "Prio"
          "admin.pricing.index.rules_table.columns.scope" => "Scope"
          "admin.pricing.index.rules_table.columns.status" => "Status"
          "admin.pricing.index.rules_table.columns.type" => "Typ"
          "admin.pricing.index.rules_table.columns.value" => "Wert"
          "admin.pricing.index.rules_table.delete_confirm" => "Preisregel "%name%" wirklich löschen?"
          "admin.pricing.index.rules_table.empty" => "Keine Preisregeln vorhanden."
          "admin.pricing.index.rules_table.title" => "Preisregeln"
          "admin.pricing.index.stats.active_guards" => "Aktive Guards"
          "admin.pricing.index.stats.active_rules" => "Aktive Regeln"
          "admin.pricing.index.stats.total_guards" => "Guards gesamt"
          "admin.pricing.index.stats.total_rules" => "Regeln gesamt"
          "admin.pricing.index.subtitle" => "Regeln, Schutzlogik, Staffelpreise und Wettbewerberdaten in einer Oberfläche."
          "admin.pricing.index.tiers.active_label" => "Aktiv"
          "admin.pricing.index.tiers.all_groups" => "Alle Gruppen"
          "admin.pricing.index.tiers.columns.actions" => "Aktionen"
          "admin.pricing.index.tiers.columns.group" => "Gruppe"
          "admin.pricing.index.tiers.columns.min_quantity" => "Ab Menge"
          "admin.pricing.index.tiers.columns.price" => "Preis"
          "admin.pricing.index.tiers.columns.product" => "Produkt"
          "admin.pricing.index.tiers.columns.status" => "Status"
          "admin.pricing.index.tiers.delete_confirm" => "Staffelpreis wirklich löschen?"
          "admin.pricing.index.tiers.empty" => "Keine Staffelpreise vorhanden."
          "admin.pricing.index.tiers.form_title" => "Staffelpreis anlegen oder aktualisieren"
          "admin.pricing.index.tiers.group_label" => "Kundengruppe (optional)"
          "admin.pricing.index.tiers.load_failed" => "Staffelpreise konnten nicht geladen werden."
          "admin.pricing.index.tiers.loading" => "Lade…"
          "admin.pricing.index.tiers.min_quantity_label" => "Mindestmenge"
          "admin.pricing.index.tiers.min_quantity_placeholder" => "z. B. 10"
          "admin.pricing.index.tiers.notification_delete_failed" => "Staffelpreis konnte nicht gelöscht werden."
          "admin.pricing.index.tiers.notification_deleted" => "Staffelpreis wurde gelöscht."
          "admin.pricing.index.tiers.notification_invalid_input" => "Bitte Produkt, Mindestmenge und gültigen Preis eingeben."
          "admin.pricing.index.tiers.notification_save_failed" => "Fehler beim Speichern"
          "admin.pricing.index.tiers.notification_saved" => "Staffelpreis wurde gespeichert."
          "admin.pricing.index.tiers.price_label" => "Staffelpreis (Brutto €)"
          "admin.pricing.index.tiers.price_placeholder" => "z. B. 8.50"
          "admin.pricing.index.tiers.product_label" => "Produkt"
          "admin.pricing.index.tiers.product_placeholder" => "-- Produkt suchen --"
          "admin.pricing.index.tiers.section_title" => "Staffelpreise"
          "admin.pricing.index.tiers.table_title" => "Bestehende Staffelpreise"
          "admin.pricing.modal.title" => "Löschen bestätigen"
          "admin.pricing.nav.menu" => "Preisgestaltung"
          "admin.pricing.nav.monitoring" => "Monitoring-Dashboard"
          "admin.pricing.nav.submenu" => "Verwaltung"
          "admin.pricing.notifications.apply_completed" => "Pricing %mode%: %changed%/%checked% Produkte geändert (Regeln: %rules%, Guards: %guards%)."
          "admin.pricing.notifications.apply_mode_dry" => "Dry-Run"
          "admin.pricing.notifications.apply_mode_live" => "Live"
          "admin.pricing.notifications.guard_created" => "Schutzregel wurde erstellt."
          "admin.pricing.notifications.guard_deleted" => "Schutzregel wurde gelöscht."
          "admin.pricing.notifications.guard_name_required" => "Ein Name für die Schutzregel ist erforderlich."
          "admin.pricing.notifications.guard_toggled" => "Schutzregel wurde umgeschaltet."
          "admin.pricing.notifications.rule_created" => "Preisregel wurde erstellt."
          "admin.pricing.notifications.rule_deleted" => "Preisregel wurde gelöscht."
          "admin.pricing.notifications.rule_name_required" => "Ein Regelname ist erforderlich."
          "admin.pricing.notifications.rule_toggled" => "Preisregel wurde umgeschaltet."
          "admin.pricing.rule_scopes.all" => "Alle"
          "admin.pricing.rule_scopes.category" => "Kategorie"
          "admin.pricing.rule_scopes.manufacturer" => "Hersteller"
          "admin.pricing.rule_scopes.tag" => "Tag"
          "admin.pricing.rule_types.fixed_override" => "Fixpreis"
          "admin.pricing.rule_types.percent_decrease" => "Prozent senken"
          "admin.pricing.rule_types.percent_increase" => "Prozent erhöhen"
          "admin.pricing.status.active" => "aktiv"
          "admin.pricing.status.inactive" => "inaktiv"
          "admin.product_configurator.context.body" => "Nutze dieses Modul für CPU-, RAM-, GPU-, SSD- und Zubehör-Gruppen. Das alte /admin/configurable-product-Modul ist nur noch für einfache Varianten gedacht."
          "admin.product_configurator.context.cta_new" => "Neuen PC-/System-Konfigurator anlegen"
          "admin.product_configurator.context.cta_variant" => "Einfachen Varianten-Editor öffnen"
          "admin.product_configurator.context.title" => "Hauptpfad für individuelle Computer"
          "admin.product_configurator.form.actions.add_group" => "Komponenten-Gruppe hinzufügen"
          "admin.product_configurator.form.actions.add_product" => "Komponente hinzufügen"
          "admin.product_configurator.form.actions.back" => "Zurück"
          "admin.product_configurator.form.actions.cancel" => "Abbrechen"
          "admin.product_configurator.form.actions.help" => "Produkthilfe"
          "admin.product_configurator.form.actions.remove_group" => "Gruppe entfernen"
          "admin.product_configurator.form.actions.remove_product" => "Komponente entfernen"
          "admin.product_configurator.form.actions.save" => "Speichern"
          "admin.product_configurator.form.badges.group" => "Systemgruppe"
          "admin.product_configurator.form.cards.base_text" => "Lege das Hauptprodukt fest, aus dem der konfigurierbare Rechner oder Build entsteht."
          "admin.product_configurator.form.cards.base_title" => "Basis-System auswählen"
          "admin.product_configurator.form.cards.group_text" => "Jede Gruppe bildet einen echten Entscheidungsschritt im System-Build."
          "admin.product_configurator.form.cards.group_title" => "Komponenten-Gruppe aufbauen"
          "admin.product_configurator.form.empty.groups" => "Noch keine Komponenten-Gruppen angelegt. Starte z. B. mit CPU, RAM, GPU oder SSD."
          "admin.product_configurator.form.empty.products" => "Diese Gruppe enthält noch keine Komponenten. Füge passende Artikel hinzu."
          "admin.product_configurator.form.fields.base_product" => "Basis-System / Basis-Produkt"
          "admin.product_configurator.form.fields.group_name" => "Gruppenname"
          "admin.product_configurator.form.fields.groups" => "Komponenten-Gruppen"
          "admin.product_configurator.form.fields.price_reduction" => "Preisreduzierung"
          "admin.product_configurator.form.fields.product" => "Komponente"
          "admin.product_configurator.form.fields.product_collection" => "Komponenten"
          "admin.product_configurator.form.guide.items.base" => "Wähle zuerst das Basis-System aus. Es bildet die Hauptposition des konfigurierten Produkts."
          "admin.product_configurator.form.guide.items.group" => "Lege dann pro Auswahlstufe eine Komponenten-Gruppe an, z. B. CPU, RAM, GPU, SSD oder Zubehör."
          "admin.product_configurator.form.guide.items.products" => "Ordne jeder Gruppe nur Komponenten zu, die fachlich zusammengehören und später kompatibel geprüft werden können."
          "admin.product_configurator.form.guide.subtitle" => "Dies ist der Hauptpfad für individuelle Computer und andere System-Builds."
          "admin.product_configurator.form.guide.title" => "System-Build-Schnellhilfe"
          "admin.product_configurator.form.meta_title_edit" => "PC-/System-Konfigurator bearbeiten"
          "admin.product_configurator.form.meta_title_new" => "Neuer PC-/System-Konfigurator"
          "admin.product_configurator.form.notes.builder" => "Jede Gruppe bündelt austauschbare oder kombinierbare Komponenten, die zusammen eine konfigurierte Hauptposition bilden."
          "admin.product_configurator.form.notes.group_name" => "Kurz und klar benennen, z. B. CPU, RAM, GPU oder SSD."
          "admin.product_configurator.form.notes.product_search" => "Suche in großen Produktlisten nach Name oder SKU."
          "admin.product_configurator.form.notes.products" => "Ordne hier die Produkte zu, die der Kunde in dieser Gruppe wählen kann. Optional kannst du pro Komponente eine Preisreduzierung nur für diesen Konfigurator hinterlegen."
          "admin.product_configurator.form.page_subtitle" => "Baue individuelle Computer über Basisprodukt und Komponenten-Gruppen."
          "admin.product_configurator.form.page_title_edit" => "PC-/System-Konfigurator bearbeiten"
          "admin.product_configurator.form.page_title_new" => "Neuer PC-/System-Konfigurator"
          "admin.product_configurator.form.panel_title" => "Formular"
          "admin.product_configurator.form.placeholders.base_product" => "Basis-System auswählen"
          "admin.product_configurator.form.placeholders.group_name" => "z. B. CPU, RAM, GPU oder SSD"
          "admin.product_configurator.form.placeholders.price_reduction" => "0,00"
          "admin.product_configurator.form.placeholders.product" => "Komponente auswählen"
          "admin.product_configurator.form.sections.base" => "Basis-System"
          "admin.product_configurator.form.sections.builder" => "Komponenten-Builder"
          "admin.product_configurator.form.sections.groups" => "Komponenten-Gruppen"
          "admin.product_configurator.form.sections.guide" => "Build-Workflow"
          "admin.product_configurator.form.sections.products" => "Komponenten"
          "admin.product_configurator.index.actions.delete" => "Löschen"
          "admin.product_configurator.index.actions.edit" => "Bearbeiten"
          "admin.product_configurator.index.actions.help" => "Produkthilfe"
          "admin.product_configurator.index.actions.new" => "Neuer PC-/System-Konfigurator"
          "admin.product_configurator.index.delete_confirm" => "System-Konfigurator "%name%" wirklich löschen?"
          "admin.product_configurator.index.headers.actions" => "Aktionen"
          "admin.product_configurator.index.headers.base_product" => "Basis-Produkt"
          "admin.product_configurator.index.headers.groups" => "Gruppen"
          "admin.product_configurator.index.headers.id" => "ID"
          "admin.product_configurator.index.list_count" => "%count% Einträge"
          "admin.product_configurator.index.list_title" => "PC-/System-Konfiguratoren"
          "admin.product_configurator.index.meta_title" => "PC-/System-Konfigurator"
          "admin.product_configurator.index.page_subtitle" => "Hauptmodul für individuelle Computer, Workstations und Komponenten-Builds."
          "admin.product_configurator.index.page_title" => "Alle PC-/System-Konfiguratoren"
          "admin.product_configurator.index.values.empty" => "Keine PC-/System-Konfiguratoren vorhanden."
          "admin.product_configurator.index.values.no_groups" => "Keine Gruppen"
          "admin.product_configurator.notifications.created" => "System-Konfigurator wurde angelegt."
          "admin.product_configurator.notifications.deleted" => "System-Konfigurator wurde gelöscht."
          "admin.product_configurator.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.product_configurator.notifications.updated" => "System-Konfigurator wurde gespeichert."
          "admin.reviews.api.errors.bulk_missing_fields" => "IDs und Status sind erforderlich."
          "admin.reviews.api.errors.review_not_found" => "Bewertung wurde nicht gefunden."
          "admin.reviews.api.validation.invalid_status" => "Ungültiger Status."
          "admin.reviews.help_index.card_subtitle" => "Moderation, Featured und Produktfragen"
          "admin.reviews.help_index.card_title" => "Bewertungen & Q&A"
          "admin.reviews.help_index.table_description" => "Moderation, Featured und Produktfragen"
          "admin.reviews.help_index.table_label" => "Bewertungen & Q&A"
          "admin.reviews.help.actions.back" => "Zurück"
          "admin.reviews.help.actions.module" => "Zum Modul"
          "admin.reviews.help.api.rows.bulk" => "Moderiert mehrere Bewertungen in einem Request."
          "admin.reviews.help.api.rows.delete" => "Löscht eine Bewertung dauerhaft."
          "admin.reviews.help.api.rows.featured" => "Schaltet das featured-Flag einer Bewertung um."
          "admin.reviews.help.api.rows.index" => "Öffnet die Verwaltungsseite für Bewertungen."
          "admin.reviews.help.api.rows.list" => "Gibt die gefilterte Bewertungsliste inklusive Metadaten zurück."
          "admin.reviews.help.api.rows.moderate" => "Setzt den Status einer Bewertung und optional eine Admin-Notiz."
          "admin.reviews.help.api.rows.qa_answer" => "Speichert eine Antwort und setzt den Status auf answered."
          "admin.reviews.help.api.rows.qa_index" => "Öffnet die Admin-Liste für Produktfragen."
          "admin.reviews.help.api.rows.qa_reject" => "Lehnt eine Frage ab und setzt den Status auf rejected."
          "admin.reviews.help.api.rows.summary" => "Liefert die KPI-Zusammenfassung für pending, approved, rejected und spam."
          "admin.reviews.help.api.table.function" => "Funktion"
          "admin.reviews.help.api.table.method" => "Methode"
          "admin.reviews.help.api.table.url" => "URL"
          "admin.reviews.help.api.title" => "API-Endpunkte"
          "admin.reviews.help.bulk.api_note" => "API-Beispiel:"
          "admin.reviews.help.bulk.intro" => "Mehrere Bewertungen lassen sich direkt aus der Listenansicht gemeinsam verarbeiten."
          "admin.reviews.help.bulk.steps.one" => "Gewünschte Bewertungen per Checkbox markieren."
          "admin.reviews.help.bulk.steps.three" => "Die Aktion über den zentralen Admin-Bestätigungsdialog bestätigen."
          "admin.reviews.help.bulk.steps.two" => "Bulk-Aktion für Freigabe, Ablehnung oder Spam wählen."
          "admin.reviews.help.bulk.title" => "Bulk-Moderation"
          "admin.reviews.help.featured.intro" => "Featured-Reviews können im Frontend prominenter platziert oder für besondere Bereiche hervorgehoben werden."
          "admin.reviews.help.featured.points.one" => "Der Stern-Button toggelt das featured-Flag direkt in der Listenansicht."
          "admin.reviews.help.featured.points.three" => "Das Flag ergänzt die normale Moderation, ersetzt sie aber nicht."
          "admin.reviews.help.featured.points.two" => "Die API dafür ist POST /admin/reviews/api/{id}/featured."
          "admin.reviews.help.featured.title" => "Featured-Bewertungen"
          "admin.reviews.help.fields.question.rows.answer" => "Antworttext des Admins."
          "admin.reviews.help.fields.question.rows.answered_at" => "Zeitpunkt der Beantwortung."
          "admin.reviews.help.fields.question.rows.author_email" => "Optional angegebene E-Mail-Adresse."
          "admin.reviews.help.fields.question.rows.author_name" => "Name der fragenden Person."
          "admin.reviews.help.fields.question.rows.created_at" => "Zeitpunkt der Fragestellung."
          "admin.reviews.help.fields.question.rows.product" => "Referenz auf das betreffende Produkt."
          "admin.reviews.help.fields.question.rows.question" => "Vom Kunden eingereichte Frage."
          "admin.reviews.help.fields.question.rows.status" => "Status pending, answered oder rejected."
          "admin.reviews.help.fields.question.title" => "ProductQuestion"
          "admin.reviews.help.fields.review.rows.admin_note" => "Interne Moderationsnotiz, nicht für Kunden sichtbar."
          "admin.reviews.help.fields.review.rows.author_email" => "Optional hinterlegte E-Mail-Adresse."
          "admin.reviews.help.fields.review.rows.author_name" => "Anzeigename des Bewertenden."
          "admin.reviews.help.fields.review.rows.body" => "Freitextinhalt der Bewertung."
          "admin.reviews.help.fields.review.rows.created_at" => "Zeitpunkt der Erstellung."
          "admin.reviews.help.fields.review.rows.customer" => "Optional verknüpfter Shop-Kunde."
          "admin.reviews.help.fields.review.rows.featured" => "Markiert die Bewertung als hervorgehoben."
          "admin.reviews.help.fields.review.rows.moderated_at" => "Zeitpunkt der letzten Moderation."
          "admin.reviews.help.fields.review.rows.product" => "Referenz auf das bewertete Produkt."
          "admin.reviews.help.fields.review.rows.rating" => "Sternebewertung von 1 bis 5."
          "admin.reviews.help.fields.review.rows.status" => "Moderationsstatus pending, approved, rejected oder spam."
          "admin.reviews.help.fields.review.rows.title" => "Kurzer Titel der Bewertung."
          "admin.reviews.help.fields.review.rows.verified_purchase" => "Kennzeichnet Bewertungen aus einem verifizierten Kauf."
          "admin.reviews.help.fields.review.title" => "ProductReview"
          "admin.reviews.help.fields.table.description" => "Beschreibung"
          "admin.reviews.help.fields.table.field" => "Feld"
          "admin.reviews.help.fields.table.type" => "Typ"
          "admin.reviews.help.fields.title" => "Feldreferenz"
          "admin.reviews.help.fields.types.boolean" => "Boolean"
          "admin.reviews.help.fields.types.datetime" => "Datum / Zeit"
          "admin.reviews.help.fields.types.integer" => "Integer"
          "admin.reviews.help.fields.types.relation" => "Relation"
          "admin.reviews.help.fields.types.text" => "Text"
          "admin.reviews.help.navigation.api" => "API-Endpunkte"
          "admin.reviews.help.navigation.bulk" => "Bulk-Aktionen"
          "admin.reviews.help.navigation.featured" => "Featured-Bewertungen"
          "admin.reviews.help.navigation.fields" => "Feldreferenz"
          "admin.reviews.help.navigation.overview" => "Überblick"
          "admin.reviews.help.navigation.qa" => "Produktfragen (Q&A)"
          "admin.reviews.help.navigation.reviews" => "Bewertungen moderieren"
          "admin.reviews.help.navigation.title" => "Navigation"
          "admin.reviews.help.overview.cards.featured_text" => "Hebe ausgewählte Bewertungen hervor und nutze sie gezielt im Frontend."
          "admin.reviews.help.overview.cards.featured_title" => "Featured"
          "admin.reviews.help.overview.cards.moderation_text" => "Prüfe neue Bewertungen, setze Status und hinterlege interne Notizen."
          "admin.reviews.help.overview.cards.moderation_title" => "Moderation"
          "admin.reviews.help.overview.cards.qa_text" => "Beantworte offene Kundenfragen direkt unter /admin/reviews/qa."
          "admin.reviews.help.overview.cards.qa_title" => "Produktfragen"
          "admin.reviews.help.overview.intro" => "Das Modul bündelt die Moderation von Produktbewertungen und Produktfragen. Bewertungen bleiben bis zur Freigabe unsichtbar, und Fragen werden direkt über den Admin beantwortet oder abgelehnt."
          "admin.reviews.help.overview.permissions_title" => "Berechtigungen:"
          "admin.reviews.help.overview.permissions.qa_manage" => "Produktfragen anzeigen, beantworten und ablehnen"
          "admin.reviews.help.overview.permissions.review_delete" => "Bewertungen löschen"
          "admin.reviews.help.overview.permissions.review_edit" => "Featured-Status umschalten"
          "admin.reviews.help.overview.permissions.review_list" => "Bewertungen anzeigen"
          "admin.reviews.help.overview.permissions.review_manage" => "Bewertungen moderieren und Bulk-Aktionen ausführen"
          "admin.reviews.help.overview.title" => "Bewertungs- und Q&A-System: Überblick"
          "admin.reviews.help.page_title" => "Hilfe: Bewertungen & Produktfragen"
          "admin.reviews.help.qa.intro" => "Produktfragen werden über /admin/reviews/qa verwaltet. Jede Frage referenziert ein Produkt und kann beantwortet oder abgelehnt werden."
          "admin.reviews.help.qa.status_title" => "Q&A-Statusmodell"
          "admin.reviews.help.qa.status.answered" => "Frage wurde beantwortet; answeredAt enthält den Bearbeitungszeitpunkt."
          "admin.reviews.help.qa.status.pending" => "Frage ist neu eingegangen und wartet auf Bearbeitung."
          "admin.reviews.help.qa.status.rejected" => "Frage wurde abgelehnt und wird nicht weiter genutzt."
          "admin.reviews.help.qa.steps.one" => "Offene Frage prüfen und den Produktkontext kontrollieren."
          "admin.reviews.help.qa.steps.three" => "Ungeeignete oder irrelevante Fragen ablehnen."
          "admin.reviews.help.qa.steps.two" => "Antwort direkt im Formular hinterlegen und speichern."
          "admin.reviews.help.qa.title" => "Produktfragen & Antworten (Q&A)"
          "admin.reviews.help.reviews.filter_note" => "Die Liste filtert nach Status und durchsucht Produktname, Autor und Bewertungstext."
          "admin.reviews.help.reviews.intro" => "Neue Bewertungen starten im Status pending. Erst nach einer Freigabe erscheinen sie im Shop."
          "admin.reviews.help.reviews.status_title" => "Statusmodell"
          "admin.reviews.help.reviews.status.approved" => "Bewertung ist freigegeben und kann öffentlich angezeigt werden."
          "admin.reviews.help.reviews.status.pending" => "Bewertung wartet auf Prüfung und ist im Shop nicht sichtbar."
          "admin.reviews.help.reviews.status.rejected" => "Bewertung wurde verworfen, bleibt aber intern nachvollziehbar."
          "admin.reviews.help.reviews.status.spam" => "Bewertung wurde als Spam markiert und aus regulären Freigabeprozessen entfernt."
          "admin.reviews.help.reviews.steps.four" => "Bei Ablehnungen optional eine interne Admin-Notiz erfassen."
          "admin.reviews.help.reviews.steps.one" => "Statusfilter und Suche eingrenzen, um die relevanten Bewertungen schnell zu finden."
          "admin.reviews.help.reviews.steps.three" => "Bewertung freigeben, ablehnen oder als Spam markieren."
          "admin.reviews.help.reviews.steps.two" => "Inhalt, Sternebewertung, Autor und Kaufverifizierung prüfen."
          "admin.reviews.help.reviews.title" => "Bewertungen moderieren"
          "admin.reviews.index.actions.approve" => "Freigeben"
          "admin.reviews.index.actions.confirm" => "Bestätigen"
          "admin.reviews.index.actions.delete" => "Löschen"
          "admin.reviews.index.actions.reject" => "Ablehnen"
          "admin.reviews.index.actions.spam" => "Spam markieren"
          "admin.reviews.index.actions.toggle_featured" => "Featured umschalten"
          "admin.reviews.index.bulk.approve" => "Freigeben"
          "admin.reviews.index.bulk.clear" => "Auswahl aufheben"
          "admin.reviews.index.bulk.confirm" => "%count% Bewertung(en) auf "%status%" setzen?"
          "admin.reviews.index.bulk.reject" => "Ablehnen"
          "admin.reviews.index.bulk.selected" => "ausgewählt"
          "admin.reviews.index.bulk.spam" => "Als Spam markieren"
          "admin.reviews.index.filters.all_status" => "Alle Status"
          "admin.reviews.index.filters.help" => "Hilfe"
          "admin.reviews.index.filters.refresh" => "Aktualisieren"
          "admin.reviews.index.filters.search_placeholder" => "Nach Produkt, Autor oder Text suchen"
          "admin.reviews.index.help_title" => "Hilfe zu Bewertungen und Produktfragen"
          "admin.reviews.index.kpi.approved" => "Freigegeben"
          "admin.reviews.index.kpi.pending" => "Wartend"
          "admin.reviews.index.kpi.rejected" => "Abgelehnt"
          "admin.reviews.index.kpi.spam" => "Spam"
          "admin.reviews.index.list.badges.featured" => "Featured"
          "admin.reviews.index.list.badges.verified_purchase" => "Verifizierter Kauf"
          "admin.reviews.index.list.empty" => "Für diesen Filter wurden keine Bewertungen gefunden."
          "admin.reviews.index.list.headers.actions" => "Aktionen"
          "admin.reviews.index.list.headers.author" => "Autor"
          "admin.reviews.index.list.headers.content" => "Inhalt"
          "admin.reviews.index.list.headers.date" => "Datum"
          "admin.reviews.index.list.headers.product" => "Produkt"
          "admin.reviews.index.list.headers.rating" => "Bewertung"
          "admin.reviews.index.list.headers.status" => "Status"
          "admin.reviews.index.list.load_error" => "Beim Laden der Bewertungen ist ein Fehler aufgetreten."
          "admin.reviews.index.list.loading" => "Bewertungen werden geladen..."
          "admin.reviews.index.list.title" => "Bewertungsliste"
          "admin.reviews.index.list.values.no_email" => "Keine E-Mail"
          "admin.reviews.index.modals.note.cancel" => "Abbrechen"
          "admin.reviews.index.modals.note.placeholder" => "Interne Notiz (optional)"
          "admin.reviews.index.modals.note.save" => "Speichern & Moderieren"
          "admin.reviews.index.modals.note.title" => "Admin-Notiz speichern"
          "admin.reviews.index.notices.bulk_failed" => "Die Bulk-Aktion ist fehlgeschlagen."
          "admin.reviews.index.notices.bulk_success" => "%count% Bewertung(en) wurden aktualisiert."
          "admin.reviews.index.notices.delete_confirm" => "Soll diese Bewertung wirklich gelöscht werden?"
          "admin.reviews.index.notices.delete_failed" => "Die Bewertung konnte nicht gelöscht werden."
          "admin.reviews.index.notices.delete_success" => "Bewertung wurde gelöscht."
          "admin.reviews.index.notices.featured_disabled" => "Featured-Markierung wurde entfernt."
          "admin.reviews.index.notices.featured_enabled" => "Bewertung wurde als Featured markiert."
          "admin.reviews.index.notices.featured_failed" => "Featured-Status konnte nicht geändert werden."
          "admin.reviews.index.notices.moderation_failed" => "Die Moderationsaktion ist fehlgeschlagen."
          "admin.reviews.index.notices.moderation_saved" => "Bewertung wurde auf "%status%" gesetzt."
          "admin.reviews.index.page_subtitle" => "Moderation, Bulk-Aktionen und Featured-Reviews in einer Oberfläche."
          "admin.reviews.index.page_title" => "Bewertungsmoderation"
          "admin.reviews.meta.title" => "Bewertungen & Q&A"
          "admin.reviews.nav.menu" => "Bewertungen"
          "admin.reviews.nav.submenu_qa" => "Produkt Q&A"
          "admin.reviews.nav.submenu_reviews" => "Moderation"
          "admin.reviews.qa.index.actions.answer" => "Antwort speichern"
          "admin.reviews.qa.index.actions.reject" => "Ablehnen"
          "admin.reviews.qa.index.actions.reject_confirm" => "Diese Frage wirklich ablehnen?"
          "admin.reviews.qa.index.answer.existing_label" => "Vorhandene Antwort"
          "admin.reviews.qa.index.answer.placeholder" => "Antworttext"
          "admin.reviews.qa.index.page_subtitle" => "Kundenfragen beantworten und ungeeignete Inhalte direkt im Backend moderieren."
          "admin.reviews.qa.index.page_title" => "Produkt Q&A Moderation"
          "admin.reviews.qa.index.panel_title" => "Fragen"
          "admin.reviews.qa.index.table.empty" => "Keine Fragen vorhanden."
          "admin.reviews.qa.index.table.headers.actions" => "Aktionen"
          "admin.reviews.qa.index.table.headers.product" => "Produkt"
          "admin.reviews.qa.index.table.headers.question" => "Frage & Antwort"
          "admin.reviews.qa.index.table.headers.status" => "Status"
          "admin.reviews.qa.index.toolbar.help" => "Hilfe"
          "admin.reviews.qa.meta.title" => "Produkt Q&A Moderation"
          "admin.reviews.qa.notifications.answer_required" => "Die Antwort darf nicht leer sein."
          "admin.reviews.qa.notifications.answered" => "Die Frage wurde beantwortet."
          "admin.reviews.qa.notifications.rejected" => "Die Frage wurde abgelehnt."
          "admin.reviews.qa.status.answered" => "Beantwortet"
          "admin.reviews.qa.status.pending" => "Wartend"
          "admin.reviews.qa.status.rejected" => "Abgelehnt"
          "admin.reviews.status.approved" => "Freigegeben"
          "admin.reviews.status.pending" => "Wartend"
          "admin.reviews.status.rejected" => "Abgelehnt"
          "admin.reviews.status.spam" => "Spam"
          "admin.rma.api.errors.customer_not_found" => "Kunde nicht gefunden."
          "admin.rma.api.errors.not_found" => "Eintrag nicht gefunden."
          "admin.rma.api.errors.rma_not_found" => "RMA nicht gefunden."
          "admin.rma.api.validation.customer_not_found" => "Der gewählte Shop-Kunde existiert nicht."
          "admin.rma.api.validation.invalid_status" => "Ungültiger Status."
          "admin.rma.api.validation.product_not_found" => "Das gewählte Produkt existiert nicht."
          "admin.rma.api.validation.product_not_purchased" => "Das gewählte Produkt gehört nicht zu den Bestellungen des gewählten Shop-Kunden."
          "admin.rma.help_index.card_subtitle" => "Anlegen, Status, Analyse, Labels"
          "admin.rma.help_index.card_title" => "Retouren (RMA)"
          "admin.rma.help_index.table_description" => "Retourenverwaltung mit Status- und Analytikfunktionen"
          "admin.rma.help_index.table_label" => "RMA / Retouren"
          "admin.rma.help.actions.back" => "Zurück"
          "admin.rma.help.actions.module" => "Zum Modul"
          "admin.rma.help.analytics.api_label" => "API:"
          "admin.rma.help.analytics.intro" => "Der Analytics-Bereich zeigt Gründe, Statusverteilung und durchschnittliche Bearbeitungsdauer im gewählten Zeitraum."
          "admin.rma.help.analytics.items.avg_processing" => "Durchschnittliche Bearbeitungsdauer pro Grund, sofern entschieden"
          "admin.rma.help.analytics.items.reasons" => "Retourengründe mit Anzahl und Prozentanteil"
          "admin.rma.help.analytics.items.statuses" => "Statusverteilung im Zeitraum"
          "admin.rma.help.analytics.title" => "Analyse & KPIs"
          "admin.rma.help.api.rows.analytics" => "Analyse-Daten als JSON"
          "admin.rma.help.api.rows.create" => "Neue RMA anlegen"
          "admin.rma.help.api.rows.customer_products" => "Bestellte Produkte eines Shop-Kunden laden"
          "admin.rma.help.api.rows.delete" => "RMA löschen"
          "admin.rma.help.api.rows.index" => "RMA-Verwaltungsseite"
          "admin.rma.help.api.rows.label" => "Druckansicht des Retourenscheins"
          "admin.rma.help.api.rows.list" => "RMA-Liste als JSON mit Filtern"
          "admin.rma.help.api.rows.summary" => "KPI-Zusammenfassung als JSON"
          "admin.rma.help.api.rows.update_status" => "Status aktualisieren"
          "admin.rma.help.api.table.function" => "Funktion"
          "admin.rma.help.api.table.method" => "Methode"
          "admin.rma.help.api.table.url" => "URL"
          "admin.rma.help.api.title" => "API-Endpunkte"
          "admin.rma.help.create.note" => "Die Produktauswahl ist auf Artikel beschränkt, die der gewählte Shop-Kunde bereits gekauft hat."
          "admin.rma.help.create.reasons_title" => "Verfügbare Rückgabegründe:"
          "admin.rma.help.create.steps.five" => "Speichern; der Antrag wird angelegt und eine Bestätigungs-E-Mail wird, falls konfiguriert, versendet."
          "admin.rma.help.create.steps.four" => "Grund, Beschreibung und Menge festlegen."
          "admin.rma.help.create.steps.one" => "Im RMA-Modul auf "Neuer RMA" klicken."
          "admin.rma.help.create.steps.three" => "Ein Produkt aus den bisherigen Bestellungen dieses Kunden auswählen."
          "admin.rma.help.create.steps.two" => "Shop-Kunden auswählen; die E-Mail-Adresse wird automatisch übernommen."
          "admin.rma.help.create.title" => "RMA manuell anlegen (Admin)"
          "admin.rma.help.fields.rows.completed_at" => "Zeitpunkt des Abschlusses."
          "admin.rma.help.fields.rows.customer" => "Verknüpfter Kunde."
          "admin.rma.help.fields.rows.customer_email" => "Gespeicherte E-Mail-Adresse des Kunden."
          "admin.rma.help.fields.rows.customer_name" => "Gespeicherter Anzeigename des Kunden."
          "admin.rma.help.fields.rows.decided_at" => "Zeitpunkt der Genehmigung oder Ablehnung."
          "admin.rma.help.fields.rows.description" => "Freitext-Beschreibung des Kunden oder Admins."
          "admin.rma.help.fields.rows.internal_note" => "Interne Admin-Notiz."
          "admin.rma.help.fields.rows.order" => "Optional verknüpfte Bestellung."
          "admin.rma.help.fields.rows.product" => "Retourniertes Produkt."
          "admin.rma.help.fields.rows.quantity" => "Retourenmenge."
          "admin.rma.help.fields.rows.reason" => "Rückgabegrund."
          "admin.rma.help.fields.rows.refund_amount" => "Erstattungsbetrag in Euro."
          "admin.rma.help.fields.rows.requested_at" => "Zeitpunkt der Antragserstellung."
          "admin.rma.help.fields.rows.return_tracking_code" => "Trackingcode für die Rücksendung."
          "admin.rma.help.fields.rows.rma_number" => "Automatisch generierte RMA-Nummer."
          "admin.rma.help.fields.rows.status" => "Aktueller Status des Antrags."
          "admin.rma.help.fields.table.description" => "Beschreibung"
          "admin.rma.help.fields.table.field" => "Feld"
          "admin.rma.help.fields.table.type" => "Typ"
          "admin.rma.help.fields.title" => "Feldreferenz: RmaRequest"
          "admin.rma.help.fields.types.datetime" => "Datum/Zeit"
          "admin.rma.help.fields.types.decimal" => "Dezimal"
          "admin.rma.help.fields.types.enum" => "Enum"
          "admin.rma.help.fields.types.integer" => "Integer"
          "admin.rma.help.fields.types.relation" => "Relation"
          "admin.rma.help.fields.types.text" => "Text"
          "admin.rma.help.label.intro" => "Für vorhandene RMAs kann eine druckbare Retourenansicht geöffnet werden."
          "admin.rma.help.label.items.one" => "In der RMA-Liste den Druck-Button verwenden."
          "admin.rma.help.label.items.three" => "Enthält RMA-Nummer, Kunden- und Produktdaten, Grund, Tracking und Hinweise zur Rücksendung."
          "admin.rma.help.label.items.two" => "Direkt-URL: /admin/rma/label/{id}"
          "admin.rma.help.label.title" => "Retourenschein drucken"
          "admin.rma.help.navigation.analytics" => "Analyse & KPIs"
          "admin.rma.help.navigation.api" => "API-Endpunkte"
          "admin.rma.help.navigation.create" => "RMA manuell anlegen"
          "admin.rma.help.navigation.fields" => "Feldreferenz"
          "admin.rma.help.navigation.label" => "Retourenschein"
          "admin.rma.help.navigation.overview" => "Überblick"
          "admin.rma.help.navigation.title" => "Navigation"
          "admin.rma.help.navigation.workflow" => "Status-Workflow"
          "admin.rma.help.overview.intro" => "Das RMA-Modul bündelt Retourenanträge aus dem Shop und manuell angelegte Admin-RMAs in einer Oberfläche."
          "admin.rma.help.overview.permissions_label" => "Berechtigungen:"
          "admin.rma.help.overview.permissions.delete" => "Löschen"
          "admin.rma.help.overview.permissions.edit" => "Status ändern"
          "admin.rma.help.overview.permissions.list" => "Anzeigen"
          "admin.rma.help.overview.permissions.manage" => "Erstellen und verwalten"
          "admin.rma.help.overview.tiles_title" => "KPI-Kacheln auf der RMA-Seite:"
          "admin.rma.help.overview.tiles.approved" => "Genehmigte Retouren"
          "admin.rma.help.overview.tiles.completed" => "Abgeschlossene Retouren"
          "admin.rma.help.overview.tiles.in_review" => "Anträge in Prüfung"
          "admin.rma.help.overview.tiles.open" => "Offene Anträge"
          "admin.rma.help.overview.tiles.rejected" => "Abgelehnte Retouren"
          "admin.rma.help.overview.tiles.total" => "Gesamtzahl der RMAs"
          "admin.rma.help.overview.title" => "RMA-System: Überblick"
          "admin.rma.help.page_title" => "Hilfe: Retouren (RMA)"
          "admin.rma.help.workflow.intro" => "Statusänderungen werden über das Modal vorgenommen und können interne Notiz, Erstattungsbetrag und Rücksende-Tracking enthalten."
          "admin.rma.help.workflow.rows.approved.action" => "Retourenschein drucken und Tracking erfassen."
          "admin.rma.help.workflow.rows.approved.meaning" => "Retoure genehmigt."
          "admin.rma.help.workflow.rows.cancelled.action" => "Keine weitere Aktion erforderlich."
          "admin.rma.help.workflow.rows.cancelled.meaning" => "Antrag storniert."
          "admin.rma.help.workflow.rows.completed.action" => "Keine weitere Aktion erforderlich."
          "admin.rma.help.workflow.rows.completed.meaning" => "Vorgang abgeschlossen."
          "admin.rma.help.workflow.rows.in_review.action" => "Entscheidung treffen."
          "admin.rma.help.workflow.rows.in_review.meaning" => "Wird aktuell geprüft."
          "admin.rma.help.workflow.rows.open.action" => "Prüfung starten."
          "admin.rma.help.workflow.rows.open.meaning" => "Neu eingegangen."
          "admin.rma.help.workflow.rows.rejected.action" => "Begründung intern dokumentieren und Statusmail auslösen."
          "admin.rma.help.workflow.rows.rejected.meaning" => "Retoure abgelehnt."
          "admin.rma.help.workflow.table.meaning" => "Bedeutung"
          "admin.rma.help.workflow.table.next_action" => "Folgeaktion"
          "admin.rma.help.workflow.table.status" => "Status"
          "admin.rma.help.workflow.title" => "Status-Workflow"
          "admin.rma.index.analytics.avg_unavailable" => ""
          "admin.rma.index.analytics.days_180" => "Letzte 180 Tage"
          "admin.rma.index.analytics.days_30" => "Letzte 30 Tage"
          "admin.rma.index.analytics.days_365" => "Letztes Jahr"
          "admin.rma.index.analytics.days_90" => "Letzte 90 Tage"
          "admin.rma.index.analytics.days_suffix" => "Tage"
          "admin.rma.index.analytics.error" => "Analytics konnten nicht geladen werden."
          "admin.rma.index.analytics.range_label" => "Zeitraum"
          "admin.rma.index.analytics.reason_table.avg_processing" => "Ø Bearbeitungszeit"
          "admin.rma.index.analytics.reason_table.count" => "Anzahl"
          "admin.rma.index.analytics.reason_table.empty" => "Keine Daten"
          "admin.rma.index.analytics.reason_table.loading" => "Lade…"
          "admin.rma.index.analytics.reason_table.reason" => "Grund"
          "admin.rma.index.analytics.reason_table.share" => "Anteil"
          "admin.rma.index.analytics.status_table.count" => "Anzahl"
          "admin.rma.index.analytics.status_table.empty" => "Keine Daten"
          "admin.rma.index.analytics.status_table.loading" => "Lade…"
          "admin.rma.index.analytics.status_table.status" => "Status"
          "admin.rma.index.analytics.title" => "Retourengrund-Analytik"
          "admin.rma.index.buttons.delete" => "Löschen"
          "admin.rma.index.buttons.print_label" => "Retourenschein drucken"
          "admin.rma.index.buttons.status" => "Status"
          "admin.rma.index.filters.all_status" => "Alle Status"
          "admin.rma.index.filters.help" => "Hilfe"
          "admin.rma.index.filters.new" => "Neuer RMA"
          "admin.rma.index.filters.refresh" => "Aktualisieren"
          "admin.rma.index.filters.search_placeholder" => "RMA-Nr., Kunde, …"
          "admin.rma.index.help_title" => "Hilfe zu diesem Modul"
          "admin.rma.index.kpi.approved" => "Genehmigt"
          "admin.rma.index.kpi.completed" => "Abgeschlossen"
          "admin.rma.index.kpi.in_review" => "In Prüfung"
          "admin.rma.index.kpi.open" => "Offen"
          "admin.rma.index.kpi.rejected" => "Abgelehnt"
          "admin.rma.index.kpi.total" => "Gesamt"
          "admin.rma.index.list.empty" => "Keine Einträge in diesem Filter."
          "admin.rma.index.list.headers.actions" => "Aktionen"
          "admin.rma.index.list.headers.customer" => "Kunde"
          "admin.rma.index.list.headers.product" => "Produkt"
          "admin.rma.index.list.headers.reason" => "Grund"
          "admin.rma.index.list.headers.refund" => "Erstattung"
          "admin.rma.index.list.headers.requested_at" => "Eingegangen"
          "admin.rma.index.list.headers.rma_number" => "RMA-Nr."
          "admin.rma.index.list.headers.status" => "Status"
          "admin.rma.index.list.headers.tracking" => "Tracking"
          "admin.rma.index.list.load_error" => "Fehler beim Laden."
          "admin.rma.index.list.loading" => "Lade…"
          "admin.rma.index.list.title" => "RMA-Anträge"
          "admin.rma.index.modals.confirm.confirm" => "Bestätigen"
          "admin.rma.index.modals.confirm.delete_message" => "RMA-Antrag wirklich löschen?"
          "admin.rma.index.modals.create.cancel" => "Abbrechen"
          "admin.rma.index.modals.create.customer_label" => "Shop-Kunde"
          "admin.rma.index.modals.create.customer_placeholder" => "Bitte Shop-Kunden auswählen"
          "admin.rma.index.modals.create.description_label" => "Beschreibung"
          "admin.rma.index.modals.create.email_label" => "E-Mail"
          "admin.rma.index.modals.create.product_help" => "Nur Produkte aus den Bestellungen dieses Kunden."
          "admin.rma.index.modals.create.product_label" => "Produkt des Shop-Kunden"
          "admin.rma.index.modals.create.product_placeholder_empty" => "Keine bestellten Produkte gefunden"
          "admin.rma.index.modals.create.product_placeholder_error" => "Fehler beim Laden der Produkte"
          "admin.rma.index.modals.create.product_placeholder_initial" => "Bitte zuerst Shop-Kunden auswählen"
          "admin.rma.index.modals.create.product_placeholder_loading" => "Produkte werden geladen..."
          "admin.rma.index.modals.create.product_placeholder_select" => "Produkt auswählen"
          "admin.rma.index.modals.create.quantity_label" => "Menge"
          "admin.rma.index.modals.create.reason_label" => "Grund"
          "admin.rma.index.modals.create.save" => "Erstellen"
          "admin.rma.index.modals.create.title" => "Neuen RMA-Antrag erstellen"
          "admin.rma.index.modals.status.cancel" => "Abbrechen"
          "admin.rma.index.modals.status.note_label" => "Interne Notiz"
          "admin.rma.index.modals.status.note_placeholder" => "Interne Notiz (optional)"
          "admin.rma.index.modals.status.refund_label" => "Erstattungsbetrag (€)"
          "admin.rma.index.modals.status.refund_placeholder" => "Optional"
          "admin.rma.index.modals.status.save" => "Speichern"
          "admin.rma.index.modals.status.status_label" => "Neuer Status"
          "admin.rma.index.modals.status.title" => "RMA-Status aktualisieren"
          "admin.rma.index.modals.status.tracking_label" => "Retourenverfolgungscode"
          "admin.rma.index.modals.status.tracking_placeholder" => "Optional"
          "admin.rma.index.notices.create_failed" => "Erstellen fehlgeschlagen"
          "admin.rma.index.notices.created" => "RMA-Antrag wurde angelegt."
          "admin.rma.index.notices.delete_failed" => "Löschen fehlgeschlagen."
          "admin.rma.index.notices.deleted" => "RMA-Antrag wurde gelöscht."
          "admin.rma.index.notices.products_load_failed" => "Produktliste des Kunden konnte nicht geladen werden."
          "admin.rma.index.notices.select_customer" => "Bitte zuerst einen Shop-Kunden auswählen."
          "admin.rma.index.notices.select_product" => "Bitte ein Produkt des gewählten Shop-Kunden auswählen."
          "admin.rma.index.notices.status_failed" => "Status-Update fehlgeschlagen."
          "admin.rma.index.notices.status_saved" => "RMA-Status wurde gespeichert."
          "admin.rma.index.notices.unexpected_response" => "Unerwartete Antwort"
          "admin.rma.index.page_subtitle" => "Retourenanträge, Statuswechsel und Auswertungen an einem Ort."
          "admin.rma.index.page_title" => "RMA / Retourenportal"
          "admin.rma.index.values.not_available" => ""
          "admin.rma.label.back_link" => "Zurück zur Übersicht"
          "admin.rma.label.customer_title" => "Kundeninformationen"
          "admin.rma.label.description_title" => "Kundenbeschreibung"
          "admin.rma.label.fields.approved_amount" => "Genehmigter Betrag"
          "admin.rma.label.fields.email" => "E-Mail"
          "admin.rma.label.fields.item" => "Artikel"
          "admin.rma.label.fields.name" => "Name"
          "admin.rma.label.fields.order_number" => "Bestellnummer"
          "admin.rma.label.fields.quantity" => "Menge"
          "admin.rma.label.fields.reason" => "Retourengrund"
          "admin.rma.label.fields.sku" => "SKU / Art.-Nr."
          "admin.rma.label.footer.document_created" => "Dokument erstellt"
          "admin.rma.label.footer.pending" => "ausstehend"
          "admin.rma.label.footer.processed_at" => "Bearbeitet am"
          "admin.rma.label.footer.requested_at" => "Retourendatum"
          "admin.rma.label.instructions.steps.four" => "Bewahren Sie den Sendungsnachweis bis zur Bearbeitung Ihrer Retoure auf."
          "admin.rma.label.instructions.steps.one" => "Verpacken Sie den Artikel sicher im Originalkarton oder gleichwertigem Material."
          "admin.rma.label.instructions.steps.three" => "Geben Sie das Paket bei Ihrem Paketdienstleister ab."
          "admin.rma.label.instructions.steps.two" => "Legen Sie diesen Retourenschein dem Paket bei."
          "admin.rma.label.instructions.title" => "Hinweise zur Rücksendung:"
          "admin.rma.label.item_title" => "Artikelinformationen"
          "admin.rma.label.number_label" => "RMA-Nummer"
          "admin.rma.label.print_button" => "Drucken / Als PDF speichern"
          "admin.rma.label.quantity_value" => "%count% Stück"
          "admin.rma.label.refund_title" => "Erstattung"
          "admin.rma.label.sheet_subtitle" => "Bitte diesem Paket beilegen"
          "admin.rma.label.sheet_title" => "RETOURENSCHEIN"
          "admin.rma.label.title" => "Retourenschein %rmaNumber%"
          "admin.rma.label.tracking.barcode_placeholder" => "[ Barcode / QR wird durch Paketdienstleister bereitgestellt ]"
          "admin.rma.label.tracking.missing" => "Noch kein Tracking-Code zugewiesen. Bitte als Retoure ohne Voretikett einliefern."
          "admin.rma.label.tracking.title" => "Rücksende-Tracking"
          "admin.rma.meta.title" => "RMA / Retouren"
          "admin.rma.nav.menu" => "RMA / Retouren"
          "admin.rma.nav.submenu" => "RMA-Anträge"
          "admin.rma.reasons.change_of_mind" => "Meinungsänderung"
          "admin.rma.reasons.defective" => "Defekt"
          "admin.rma.reasons.not_as_described" => "Nicht wie beschrieben"
          "admin.rma.reasons.other" => "Sonstiges"
          "admin.rma.reasons.wrong_item" => "Falscher Artikel"
          "admin.rma.status.approved" => "Genehmigt"
          "admin.rma.status.cancelled" => "Storniert"
          "admin.rma.status.completed" => "Abgeschlossen"
          "admin.rma.status.in_review" => "In Prüfung"
          "admin.rma.status.open" => "Offen"
          "admin.rma.status.rejected" => "Abgelehnt"
          "admin.roles.actions.back" => "Zurück"
          "admin.roles.actions.back_to_profile_list" => "Zurück zur Profilliste"
          "admin.roles.actions.cancel" => "Abbrechen"
          "admin.roles.actions.delete" => "Löschen"
          "admin.roles.actions.edit" => "Bearbeiten"
          "admin.roles.actions.execute" => "Ausführen"
          "admin.roles.actions.help" => "Hilfe"
          "admin.roles.actions.new_profile" => "Neues Profil"
          "admin.roles.actions.save_profile" => "Profil speichern"
          "admin.roles.form.action_labels.access" => "Modulzugriff"
          "admin.roles.form.action_labels.activate" => "Aktivieren"
          "admin.roles.form.action_labels.add" => "Neu anlegen"
          "admin.roles.form.action_labels.api" => "API-Zugriff"
          "admin.roles.form.action_labels.audit" => "Audit sehen"
          "admin.roles.form.action_labels.base" => "Bereich öffnen"
          "admin.roles.form.action_labels.delete" => "Löschen"
          "admin.roles.form.action_labels.edit" => "Bearbeiten"
          "admin.roles.form.action_labels.import" => "Importieren"
          "admin.roles.form.action_labels.list" => "Übersicht sehen"
          "admin.roles.form.action_labels.manage" => "Alles verwalten"
          "admin.roles.form.action_labels.map" => "Mapping bearbeiten"
          "admin.roles.form.action_labels.preview" => "Preview öffnen"
          "admin.roles.form.action_labels.publish" => "Veröffentlichen"
          "admin.roles.form.action_labels.revisions" => "Versionen sehen"
          "admin.roles.form.action_labels.rollback" => "Rollback ausführen"
          "admin.roles.form.action_labels.run" => "Ausführen"
          "admin.roles.form.action_labels.view" => "Details sehen"
          "admin.roles.form.basics_subtitle" => "Benenne das Profil so, dass sein Einsatzzweck später in der Benutzerverwaltung sofort erkennbar ist."
          "admin.roles.form.basics_title" => "Profil-Basisdaten"
          "admin.roles.form.clear_all" => "Alle abwählen"
          "admin.roles.form.clear_group" => "Alle in dieser Gruppe abwählen"
          "admin.roles.form.collapse_all" => "Alle schließen"
          "admin.roles.form.create_title" => "Rollenprofil anlegen"
          "admin.roles.form.critical_permission" => "Weitreichende Berechtigung"
          "admin.roles.form.edit_title" => "Rollenprofil bearbeiten"
          "admin.roles.form.expand_all" => "Alle öffnen"
          "admin.roles.form.filter_placeholder" => "Modul oder Aktion filtern…"
          "admin.roles.form.modules.account" => "Eigenes Konto"
          "admin.roles.form.modules.alerts" => "Alerts"
          "admin.roles.form.modules.analytics" => "Analytics & Dashboard"
          "admin.roles.form.modules.booking_hospitality" => "Buchungen & Unterkunft"
          "admin.roles.form.modules.catalog" => "Produkte & Katalog"
          "admin.roles.form.modules.editorial" => "Redaktion"
          "admin.roles.form.modules.experiments" => "Experimente"
          "admin.roles.form.modules.import_data" => "Import & Datenpflege"
          "admin.roles.form.modules.layout" => "Navigation & Layout"
          "admin.roles.form.modules.orders_customers" => "Bestellungen & Kunden"
          "admin.roles.form.modules.other" => "Nicht zugeordnete Gruppe"
          "admin.roles.form.modules.pages" => "Seiten"
          "admin.roles.form.modules.pricing_actions" => "Preise & Aktionen"
          "admin.roles.form.modules.reviews_feeds" => "Bewertungen & Feeds"
          "admin.roles.form.modules.seo" => "SEO & FAQ"
          "admin.roles.form.modules.settings" => "Einstellungen"
          "admin.roles.form.modules.shipping_returns" => "Versand & Retouren"
          "admin.roles.form.modules.themes" => "Themes"
          "admin.roles.form.modules.users_rights" => "Benutzer & Rechte"
          "admin.roles.form.name_help" => "Der Profilname ist intern sichtbar und sollte die Aufgabe des Profils klar beschreiben."
          "admin.roles.form.name_placeholder" => "z.B. Content-Manager, Shop-Admin, Support"
          "admin.roles.form.no_filter_results" => "Keine Berechtigungen für den aktuellen Filter gefunden."
          "admin.roles.form.no_roles_available" => "Keine Rollen verfügbar."
          "admin.roles.form.permissions_subtitle" => "Die Bereiche folgen der neuen Admin-Sidebar, damit Auswahl und spätere Navigation zusammenpassen."
          "admin.roles.form.permissions_title" => "Berechtigungen"
          "admin.roles.form.presets_subtitle" => "Starte mit einer typischen Rechteauswahl und passe sie anschließend manuell an."
          "admin.roles.form.presets_title" => "Vorlage wählen"
          "admin.roles.form.presets.content.text" => "Seiten, Navigation, Layout-Bausteine und Redaktion pflegen."
          "admin.roles.form.presets.content.title" => "Content-Manager"
          "admin.roles.form.presets.marketing.text" => "Analytics, SEO, Feeds, Aktionen und Experimente steuern."
          "admin.roles.form.presets.marketing.title" => "Marketing & SEO"
          "admin.roles.form.presets.readonly.text" => "Leserechte und Hilfezugriff als sichere Ausgangsbasis."
          "admin.roles.form.presets.readonly.title" => "Nur Lesen"
          "admin.roles.form.presets.shop.text" => "Katalog, Bestellungen, Kunden, Preise und Versand betreuen."
          "admin.roles.form.presets.shop.title" => "Shop-Verwaltung"
          "admin.roles.form.presets.support.text" => "Kunden, Bestellungen, Tickets und Retouren bearbeiten."
          "admin.roles.form.presets.support.title" => "Support"
          "admin.roles.form.presets.system.text" => "Benutzer, Profile, Einstellungen und Übersetzungen verwalten."
          "admin.roles.form.presets.system.title" => "System-Admin"
          "admin.roles.form.profile_name" => "Profilname"
          "admin.roles.form.role_labels.ab_test" => "A/B-Tests"
          "admin.roles.form.role_labels.account_password" => "Eigenes Passwort"
          "admin.roles.form.role_labels.alert" => "Alerts"
          "admin.roles.form.role_labels.analytics" => "Analytics"
          "admin.roles.form.role_labels.apartment" => "Unterkünfte"
          "admin.roles.form.role_labels.b2b" => "B2B"
          "admin.roles.form.role_labels.blog" => "Blog"
          "admin.roles.form.role_labels.booking" => "Buchungen"
          "admin.roles.form.role_labels.calendar" => "Kalender"
          "admin.roles.form.role_labels.cart" => "Warenkorb"
          "admin.roles.form.role_labels.cart_cross_sell" => "Cross-Sells"
          "admin.roles.form.role_labels.cart_intelligence" => "Warenkorb-Analyse"
          "admin.roles.form.role_labels.category" => "Kategorien"
          "admin.roles.form.role_labels.configurable_product" => "Varianten"
          "admin.roles.form.role_labels.contact" => "Kontaktanfragen"
          "admin.roles.form.role_labels.content_block" => "Content-Blöcke"
          "admin.roles.form.role_labels.coupon" => "Gutscheine"
          "admin.roles.form.role_labels.customer" => "Kunden"
          "admin.roles.form.role_labels.dashboard" => "Dashboard"
          "admin.roles.form.role_labels.dashboard_api" => "Dashboard-API"
          "admin.roles.form.role_labels.dashboard_widget" => "Dashboard-Widgets"
          "admin.roles.form.role_labels.data_protection" => "Datenschutz"
          "admin.roles.form.role_labels.faq" => "FAQ"
          "admin.roles.form.role_labels.feed" => "Feeds"
          "admin.roles.form.role_labels.feed_api" => "Feed-API"
          "admin.roles.form.role_labels.footer_menu" => "Footer-Navigation"
          "admin.roles.form.role_labels.help" => "Admin-Hilfe"
          "admin.roles.form.role_labels.hotel_access" => "Hotel-Menüs"
          "admin.roles.form.role_labels.hotel_content" => "Unterkunftsinhalte"
          "admin.roles.form.role_labels.import" => "Produktimport"
          "admin.roles.form.role_labels.import_control" => "Import-Steuerung"
          "admin.roles.form.role_labels.imprint" => "Impressum"
          "admin.roles.form.role_labels.mail_template" => "Mail-Templates"
          "admin.roles.form.role_labels.menu" => "Hauptnavigation"
          "admin.roles.form.role_labels.newsletter" => "Newsletter"
          "admin.roles.form.role_labels.order" => "Bestellungen"
          "admin.roles.form.role_labels.page" => "Seiten"
          "admin.roles.form.role_labels.pricing" => "Preisregeln"
          "admin.roles.form.role_labels.pricing_api" => "Preis-API"
          "admin.roles.form.role_labels.product" => "Produktverwaltung"
          "admin.roles.form.role_labels.product_configurator" => "Produkt-Konfigurator"
          "admin.roles.form.role_labels.product_qa" => "Produktfragen"
          "admin.roles.form.role_labels.profile" => "Rollenprofile"
          "admin.roles.form.role_labels.return_request" => "Rücksendeanfragen"
          "admin.roles.form.role_labels.review" => "Bewertungen"
          "admin.roles.form.role_labels.rma" => "Retouren"
          "admin.roles.form.role_labels.section_templates" => "Abschnittsvorlagen"
          "admin.roles.form.role_labels.seo_faq" => "SEO-FAQ"
          "admin.roles.form.role_labels.shipment" => "Sendungen"
          "admin.roles.form.role_labels.shipping_method" => "Versandarten"
          "admin.roles.form.role_labels.shipping_zone" => "Versandzonen"
          "admin.roles.form.role_labels.shop" => "Produkte"
          "admin.roles.form.role_labels.shop_menu" => "Shop-Navigation"
          "admin.roles.form.role_labels.shop_user" => "Shop-Benutzer"
          "admin.roles.form.role_labels.slider" => "Slider"
          "admin.roles.form.role_labels.superuser" => "Superuser"
          "admin.roles.form.role_labels.support_ticket" => "Support-Tickets"
          "admin.roles.form.role_labels.system_config" => "Systemkonfiguration"
          "admin.roles.form.role_labels.system_panel" => "System-Panel"
          "admin.roles.form.role_labels.system_setting" => "Einstellungen"
          "admin.roles.form.role_labels.theme" => "Theme-Modul"
          "admin.roles.form.role_labels.translation" => "Übersetzungen"
          "admin.roles.form.role_labels.user" => "Admin-Benutzer"
          "admin.roles.form.role_labels.widget" => "Widgets"
          "admin.roles.form.sections.commerce" => "Commerce"
          "admin.roles.form.sections.content" => "Content"
          "admin.roles.form.sections.marketing_seo" => "Marketing & SEO"
          "admin.roles.form.sections.other" => "Weitere Rollen"
          "admin.roles.form.sections.system" => "System"
          "admin.roles.form.select_all" => "Alle auswählen"
          "admin.roles.form.select_group" => "Alle in dieser Gruppe auswählen"
          "admin.roles.form.select_one_permission" => "Bitte wähle mindestens eine Berechtigung aus."
          "admin.roles.form.select_visible" => "Sichtbare auswählen"
          "admin.roles.form.selected_permissions" => "Ausgewählte Berechtigungen"
          "admin.roles.form.show_selected" => "Nur ausgewählte"
          "admin.roles.form.subtitle" => "Stelle ein Berechtigungspaket für Backend-Benutzer zusammen und prüfe die Auswahl vor dem Speichern."
          "admin.roles.form.summary_areas" => "Betroffene Bereiche"
          "admin.roles.form.summary_critical" => "Kritische Rechte"
          "admin.roles.form.summary_hint" => "Kritische Rechte umfassen Löschen, Verwalten, Ausführen, Veröffentlichen, Aktivieren, Rollback sowie Benutzer-, Profil- und Systemzugriffe."
          "admin.roles.form.summary_name_placeholder" => "Noch kein Profilname"
          "admin.roles.form.summary_no_area" => "Noch keine Auswahl"
          "admin.roles.form.summary_selected" => "Ausgewählte Rechte"
          "admin.roles.form.summary_title" => "Auswahl prüfen"
          "admin.roles.help.admin_users_title" => "Admin-Benutzer-Rollen"
          "admin.roles.help.analytics_title" => "Analytics & Tools"
          "admin.roles.help.assignment_steps.step1" => "Admin-Benutzer → Benutzer auswählen → Bearbeiten"
          "admin.roles.help.assignment_steps.step2" => "Im Tab Rollen die gewünschten Rollen anklicken"
          "admin.roles.help.assignment_steps.step3" => "Speichern – Änderungen gelten sofort"
          "admin.roles.help.assignment_title" => "Rollen vergeben"
          "admin.roles.help.cards.list" => "Nur Anzeigen"
          "admin.roles.help.cards.manage" => "Vollzugriff im Modul"
          "admin.roles.help.cards.superuser" => "Vollzugriff auf alles"
          "admin.roles.help.columns.admin_page" => "Admin-Seite"
          "admin.roles.help.columns.description" => "Beschreibung"
          "admin.roles.help.columns.module" => "Modul"
          "admin.roles.help.columns.role" => "Rolle"
          "admin.roles.help.columns.roles" => "Rollen"
          "admin.roles.help.concept_intro" => "Das Berechtigungssystem basiert auf RBAC (Role-Based Access Control). Jede Aktion im Backend ist durch eine spezifische Rolle abgesichert."
          "admin.roles.help.concept_title" => "Rollen-Konzept"
          "admin.roles.help.content_title" => "Content-Module"
          "admin.roles.help.navigation_title" => "Navigation"
          "admin.roles.help.navigation.admin_users" => "Benutzer-Rollen"
          "admin.roles.help.navigation.analytics" => "Analytics & Tools"
          "admin.roles.help.navigation.assignment" => "Rollen vergeben"
          "admin.roles.help.navigation.concept" => "Konzept"
          "admin.roles.help.navigation.content" => "Content-Module"
          "admin.roles.help.navigation.profile_builder" => "Rollenprofil-Assistent"
          "admin.roles.help.navigation.shop" => "Shop-Module"
          "admin.roles.help.navigation.superuser" => "Superuser"
          "admin.roles.help.navigation.system" => "System-Rollen"
          "admin.roles.help.open_profiles" => "Profile öffnen"
          "admin.roles.help.profile_builder_intro" => "Das Profilformular ist nach denselben Arbeitsbereichen wie die Admin-Sidebar aufgebaut. Vorlagen setzen typische Startauswahlen, die anschließend fein angepasst werden können."
          "admin.roles.help.profile_builder_points.critical" => "Kritische Rechte sollten nur vergeben werden, wenn Löschen, Verwalten, Ausführen, Aktivieren, Rollback oder Systemzugriff wirklich benötigt wird."
          "admin.roles.help.profile_builder_points.presets" => "Vorlagen sind nur Startpunkte und überschreiben die Auswahl, solange nicht gespeichert wurde."
          "admin.roles.help.profile_builder_points.summary" => "Die Zusammenfassung zeigt Profilname, Anzahl der Rechte, kritische Rechte und betroffene Bereiche."
          "admin.roles.help.profile_builder_title" => "Rollenprofile anlegen"
          "admin.roles.help.relogin_warning" => "Benutzer müssen sich neu einloggen, damit neue Rollen wirksam werden. Die Session hält die alten Rollen bis zum Logout."
          "admin.roles.help.rows.ab_tests" => "A/B-Tests"
          "admin.roles.help.rows.admin_profiles" => "Admin-Benutzer-Profile verwalten"
          "admin.roles.help.rows.admin_users" => "Admin-Benutzer verwalten (die Admin-Backend-Logins)"
          "admin.roles.help.rows.alerts" => "System-Alerts"
          "admin.roles.help.rows.analytics" => "Analytics Cockpit"
          "admin.roles.help.rows.b2b" => "B2B"
          "admin.roles.help.rows.blog" => "Blog"
          "admin.roles.help.rows.cart" => "Warenkorb"
          "admin.roles.help.rows.cart_intelligence" => "Cart Intelligence"
          "admin.roles.help.rows.configurable_products" => "Varianten-Editor"
          "admin.roles.help.rows.content_blocks" => "Content-Blöcke"
          "admin.roles.help.rows.coupons" => "Gutscheine"
          "admin.roles.help.rows.cross_sell" => "Cross-Sells"
          "admin.roles.help.rows.customers" => "Kunden"
          "admin.roles.help.rows.dashboard" => "Dashboard anzeigen/verwalten"
          "admin.roles.help.rows.dashboard_api" => "Dashboard-API ausführen"
          "admin.roles.help.rows.feeds" => "Feeds"
          "admin.roles.help.rows.footer_menu" => "Footer-Menü"
          "admin.roles.help.rows.help_center" => "Admin-Hilfe-Bereich anzeigen"
          "admin.roles.help.rows.import" => "Import"
          "admin.roles.help.rows.main_menu" => "Hauptmenü"
          "admin.roles.help.rows.orders" => "Bestellungen"
          "admin.roles.help.rows.pages" => "Seiten (CMS)"
          "admin.roles.help.rows.pricing" => "Preisregeln"
          "admin.roles.help.rows.product_configurator" => "PC-/System-Konfigurator"
          "admin.roles.help.rows.product_qa" => "Produkt-Q&A"
          "admin.roles.help.rows.products" => "Produkte"
          "admin.roles.help.rows.reviews" => "Bewertungen"
          "admin.roles.help.rows.rma" => "Retouren (RMA)"
          "admin.roles.help.rows.seo_faq" => "SEO FAQs"
          "admin.roles.help.rows.shipments" => "Sendungen"
          "admin.roles.help.rows.shipping_methods" => "Versand (Methoden)"
          "admin.roles.help.rows.shipping_zones" => "Versand (Zonen)"
          "admin.roles.help.rows.shop_menu" => "Shop-Menü"
          "admin.roles.help.rows.shop_users" => "Shop-Benutzer"
          "admin.roles.help.rows.slider" => "Slider"
          "admin.roles.help.rows.system_config" => "Erweiterte System-Konfiguration"
          "admin.roles.help.rows.system_panel" => "System-Panel anzeigen"
          "admin.roles.help.rows.system_settings" => "System-Einstellungen verwalten"
          "admin.roles.help.rows.themes" => "Theme-Modul"
          "admin.roles.help.rows.translations" => "Übersetzungen verwalten"
          "admin.roles.help.rows.widgets" => "Widgets"
          "admin.roles.help.shop_title" => "Shop-Module"
          "admin.roles.help.suffixes_label" => "Suffixe:"
          "admin.roles.help.suffixes.add" => "anlegen"
          "admin.roles.help.suffixes.delete" => "löschen"
          "admin.roles.help.suffixes.edit" => "bearbeiten"
          "admin.roles.help.suffixes.list" => "anzeigen"
          "admin.roles.help.suffixes.manage" => "alles"
          "admin.roles.help.suffixes.run" => "ausführen"
          "admin.roles.help.suffixes.view" => "Detailansicht"
          "admin.roles.help.superuser_description" => "Vollzugriff auf alle Module, keine weiteren Rollen nötig"
          "admin.roles.help.superuser_title" => "Superuser-Rolle"
          "admin.roles.help.superuser_warning" => "ROLE_SUPERUSER sollte nur einem einzigen technischen Hauptadmin zugewiesen werden."
          "admin.roles.help.system_title" => "System-Rollen"
          "admin.roles.help.tip_label" => "Tipp:"
          "admin.roles.help.tip_text" => "Für einen Shop-Manager empfohlene Rollen-Kombination:"
          "admin.roles.help.title" => "Hilfe: Rollen & Berechtigungen"
          "admin.roles.notifications.generic_error" => "Es ist ein Fehler aufgetreten. Bitte aktualisieren Sie die Seite und versuchen Sie es erneut."
          "admin.roles.notifications.profile_created" => "Profil wurde angelegt."
          "admin.roles.notifications.profile_not_found" => "Profil nicht gefunden."
          "admin.roles.notifications.profile_saved" => "Profil wurde gespeichert."
          "admin.roles.profile_list.bulk_activate" => "Aktivieren"
          "admin.roles.profile_list.bulk_deactivate" => "Deaktivieren"
          "admin.roles.profile_list.bulk_delete" => "Löschen"
          "admin.roles.profile_list.bulk_hint" => "Wähle zuerst ein oder mehrere Profile in der Tabelle aus."
          "admin.roles.profile_list.bulk_placeholder" => "Gruppenaktion auswählen"
          "admin.roles.profile_list.bulk_select_one" => "Bitte wähle mindestens ein Profil für die Gruppenaktion aus."
          "admin.roles.profile_list.column_delete" => "Löschen"
          "admin.roles.profile_list.column_edit" => "Bearbeiten"
          "admin.roles.profile_list.column_name" => "Profilname"
          "admin.roles.profile_list.column_status" => "Status"
          "admin.roles.profile_list.delete_modal_body" => "Möchtest du das Profil "%label%" wirklich löschen?"
          "admin.roles.profile_list.delete_modal_title" => "Profil löschen"
          "admin.roles.profile_list.empty" => "Keine Profile vorhanden."
          "admin.roles.profile_list.overview_count" => "%count% Einträge"
          "admin.roles.profile_list.overview_title" => "Profilübersicht"
          "admin.roles.profile_list.page_title" => "Profile"
          "admin.roles.profile_list.status_active" => "Aktiv"
          "admin.roles.profile_list.status_inactive" => "Inaktiv"
          "admin.roles.profile_list.subtitle" => "Rollenprofile zentral verwalten, aktivieren und zu Benutzerkonten zuweisen."
          "admin.roles.profile_list.title" => "Profile"
          "admin.seo.categories.actions.manage" => "FAQs verwalten"
          "admin.seo.categories.actions.seed" => "Vorschläge als ausstehend"
          "admin.seo.categories.category_id" => "ID: %id%"
          "admin.seo.categories.empty" => "Keine Kategorien gefunden."
          "admin.seo.categories.headers.actions" => "Aktionen"
          "admin.seo.categories.headers.archived" => "Archiviert"
          "admin.seo.categories.headers.category" => "Kategorie"
          "admin.seo.categories.headers.pending" => "Ausstehend"
          "admin.seo.categories.headers.published" => "Veröffentlicht"
          "admin.seo.categories.headers.total" => "Gesamt"
          "admin.seo.categories.meta_title" => "SEO FAQ Kategorien"
          "admin.seo.categories.page_subtitle" => "Direkter Einstieg pro Kategorie und schneller Import von FAQ-Vorschlägen als pending."
          "admin.seo.categories.page_title" => "FAQ-Kategorien (%count%)"
          "admin.seo.categories.panel_title" => "Kategorieübersicht"
          "admin.seo.categories.toolbar.help" => "Hilfe"
          "admin.seo.categories.toolbar.pending" => "Ausstehende FAQs"
          "admin.seo.category.actions.archive" => "Archivieren"
          "admin.seo.category.actions.delete" => "Löschen"
          "admin.seo.category.actions.edit" => "Bearbeiten"
          "admin.seo.category.actions.publish" => "Veröffentlichen"
          "admin.seo.category.actions.save_order" => "Reihenfolge speichern"
          "admin.seo.category.confirms.archive" => "Diesen FAQ-Eintrag wirklich archivieren?"
          "admin.seo.category.confirms.delete" => "FAQ-Eintrag wirklich löschen?"
          "admin.seo.category.form.answer" => "Antwort *"
          "admin.seo.category.form.answer_hint" => "Detaillierte Antwort zum Thema"
          "admin.seo.category.form.option_pending" => "Ausstehend (Moderation)"
          "admin.seo.category.form.option_published" => "Sofort veröffentlichen"
          "admin.seo.category.form.question" => "Frage *"
          "admin.seo.category.form.question_hint" => "Maximal 500 Zeichen"
          "admin.seo.category.form.reset" => "Zurücksetzen"
          "admin.seo.category.form.save" => "FAQ speichern"
          "admin.seo.category.form.status" => "Status"
          "admin.seo.category.meta_title" => "FAQs für %name%"
          "admin.seo.category.page_title" => "FAQs für %name%"
          "admin.seo.category.pending.created" => "Erstellt am %date%"
          "admin.seo.category.pending.empty" => "Keine ausstehenden FAQs."
          "admin.seo.category.pending.missing_answer" => "Noch keine Antwort hinterlegt. Bitte zuerst bearbeiten."
          "admin.seo.category.publish_disabled_title" => "Bitte zuerst eine Antwort eintragen"
          "admin.seo.category.published.date" => "Veröffentlicht am %date%"
          "admin.seo.category.published.empty" => "Keine veröffentlichten FAQs."
          "admin.seo.category.tabs.new" => "Neue FAQ"
          "admin.seo.category.tabs.pending" => "Ausstehend (%count%)"
          "admin.seo.category.tabs.published" => "Veröffentlicht"
          "admin.seo.errors.category_not_found" => "Kategorie wurde nicht gefunden."
          "admin.seo.help_index.card_subtitle" => "Kategorie-FAQs, KI-Vorschläge und interne Links"
          "admin.seo.help_index.card_title" => "SEO & FAQ"
          "admin.seo.help_index.table_description" => "Kategorie-FAQs, Pending-Inbox und interne Linkvorschläge"
          "admin.seo.help_index.table_label" => "SEO & FAQ"
          "admin.seo.help.actions.back" => "Zurück"
          "admin.seo.help.actions.module" => "Zum Modul"
          "admin.seo.help.ai.api_label" => "API:"
          "admin.seo.help.ai.intro" => "Für jede Kategorie können automatisiert neue FAQ-Vorschläge erzeugt werden."
          "admin.seo.help.ai.steps.five" => "Anschließend manuell prüfen und gezielt veröffentlichen."
          "admin.seo.help.ai.steps.four" => "Neue Einträge landen zunächst im Status pending."
          "admin.seo.help.ai.steps.one" => "Kategorie in der FAQ-Übersicht öffnen."
          "admin.seo.help.ai.steps.three" => "Das System analysiert die Kategorie und erzeugt neue Vorschläge, sofern noch keine Dubletten vorhanden sind."
          "admin.seo.help.ai.steps.two" => "Aktion „Vorschläge als pending“ auslösen."
          "admin.seo.help.ai.title" => "KI-FAQ-Vorschläge generieren"
          "admin.seo.help.ai.warning" => "KI-Vorschläge sollten vor der Veröffentlichung immer redaktionell geprüft werden."
          "admin.seo.help.api.rows.categories" => "Alle Kategorien mit FAQ-Anzahlen"
          "admin.seo.help.api.rows.category" => "FAQs einer Kategorie anzeigen"
          "admin.seo.help.api.rows.delete_pending" => "Pending-FAQ löschen"
          "admin.seo.help.api.rows.links" => "Interne Link-Vorschläge für eine Kategorie"
          "admin.seo.help.api.rows.pending" => "Ausstehende FAQs (Pending-Inbox)"
          "admin.seo.help.api.rows.save" => "FAQ anlegen oder bearbeiten"
          "admin.seo.help.api.rows.seed" => "KI-Vorschläge generieren"
          "admin.seo.help.api.table.function" => "Funktion"
          "admin.seo.help.api.table.method" => "Methode"
          "admin.seo.help.api.table.url" => "URL"
          "admin.seo.help.api.title" => "API-Endpunkte"
          "admin.seo.help.faq.intro" => "FAQs werden pro Kategorie gepflegt und erscheinen auf der Kategorieseite als strukturierter FAQ-Abschnitt inklusive Schema.org-Auszeichnung."
          "admin.seo.help.faq.status_table.archived_meaning" => "Ausgeblendet, aber erhalten"
          "admin.seo.help.faq.status_table.archived_visibility" => "Nicht sichtbar"
          "admin.seo.help.faq.status_table.meaning" => "Bedeutung"
          "admin.seo.help.faq.status_table.pending_meaning" => "Vorschlag oder Entwurf, noch nicht freigegeben"
          "admin.seo.help.faq.status_table.pending_visibility" => "Nicht sichtbar"
          "admin.seo.help.faq.status_table.published_meaning" => "Aktive FAQ auf der Kategorieseite"
          "admin.seo.help.faq.status_table.published_visibility" => "Sichtbar im Frontend"
          "admin.seo.help.faq.status_table.status" => "Status"
          "admin.seo.help.faq.status_table.visibility" => "Sichtbarkeit"
          "admin.seo.help.faq.statuses_title" => "FAQ-Status:"
          "admin.seo.help.faq.steps_title" => "Schritt-für-Schritt: FAQ anlegen"
          "admin.seo.help.faq.steps.five" => "Speichern und Eintrag bei Bedarf später bearbeiten, archivieren oder löschen."
          "admin.seo.help.faq.steps.four" => "Status auf pending oder published setzen."
          "admin.seo.help.faq.steps.one" => "SEO → FAQ-Kategorien öffnen."
          "admin.seo.help.faq.steps.six" => "Veröffentlichte FAQs können zusätzlich per Drag-and-Drop sortiert und gespeichert werden."
          "admin.seo.help.faq.steps.three" => "Im Tab „Neue FAQ“ Frage und Antwort erfassen."
          "admin.seo.help.faq.steps.two" => "Kategorie aus der Liste auswählen."
          "admin.seo.help.faq.title" => "Kategorie-FAQs erstellen und verwalten"
          "admin.seo.help.fields.rows.answer" => "Antwortinhalt der FAQ"
          "admin.seo.help.fields.rows.category" => "Verknüpfte Produktkategorie"
          "admin.seo.help.fields.rows.created_at" => "Erstellungsdatum"
          "admin.seo.help.fields.rows.question" => "FAQ-Frage (erscheint auch als Schema.org FAQPage)"
          "admin.seo.help.fields.rows.sort_order" => "Reihenfolge auf der Seite"
          "admin.seo.help.fields.rows.status" => "pending / published / archived"
          "admin.seo.help.fields.table.description" => "Beschreibung"
          "admin.seo.help.fields.table.field" => "Feld"
          "admin.seo.help.fields.table.type" => "Typ"
          "admin.seo.help.fields.title" => "Feldreferenz: CategoryFaq"
          "admin.seo.help.fields.types.datetime" => "Datum / Zeit"
          "admin.seo.help.fields.types.enum" => "Enum"
          "admin.seo.help.fields.types.html_text" => "Text (HTML erlaubt)"
          "admin.seo.help.fields.types.integer" => "Integer"
          "admin.seo.help.fields.types.relation" => "Relation"
          "admin.seo.help.fields.types.text" => "Text"
          "admin.seo.help.links.intro" => "Der interne Link-Assistent liefert Vorschläge für verwandte Kategorien und hilft beim Aufbau einer sauberen internen Linkstruktur."
          "admin.seo.help.links.points.four" => "Unterstützt die redaktionelle Pflege thematisch passender Querverlinkungen."
          "admin.seo.help.links.points.one" => "Aufruf über /admin/seo/links/{categoryId}."
          "admin.seo.help.links.points.three" => "Bewertet die Relevanz gestuft und liefert direkt kopierbare URLs."
          "admin.seo.help.links.points.two" => "Typisiert Vorschläge als Parent, Sibling oder Verwandt."
          "admin.seo.help.links.title" => "Interne Links (Link-Assistent)"
          "admin.seo.help.meta.intro" => "Für Produkte und Kategorien stehen SEO-Metadaten in den jeweiligen Bearbeitungsformularen zur Verfügung."
          "admin.seo.help.meta.rows.description_field" => "Produkt-Edit / Kategorie-Edit"
          "admin.seo.help.meta.rows.description_length" => "150-160 Zeichen"
          "admin.seo.help.meta.rows.slug_field" => "Produkt-Edit (automatisch generiert)"
          "admin.seo.help.meta.rows.slug_length" => "URL-freundlich, keine Sonderzeichen"
          "admin.seo.help.meta.rows.title_field" => "Produkt-Edit / Kategorie-Edit"
          "admin.seo.help.meta.rows.title_length" => "50-60 Zeichen"
          "admin.seo.help.meta.table.editable" => "Wo editierbar"
          "admin.seo.help.meta.table.field" => "Feld"
          "admin.seo.help.meta.table.length" => "Empfohlene Länge"
          "admin.seo.help.meta.title" => "SEO-Meta-Felder"
          "admin.seo.help.navigation.ai" => "KI-FAQ-Vorschläge"
          "admin.seo.help.navigation.api" => "API-Endpunkte"
          "admin.seo.help.navigation.faq" => "Kategorie-FAQs"
          "admin.seo.help.navigation.fields" => "Feldreferenz"
          "admin.seo.help.navigation.links" => "Interne Links"
          "admin.seo.help.navigation.meta" => "SEO-Meta-Felder"
          "admin.seo.help.navigation.overview" => "Überblick"
          "admin.seo.help.navigation.pending" => "Ausstehende FAQs"
          "admin.seo.help.navigation.title" => "Navigation"
          "admin.seo.help.overview.cards.ai.subtitle" => "Automatisch generierte FAQ-Entwürfe"
          "admin.seo.help.overview.cards.ai.title" => "KI-Vorschläge"
          "admin.seo.help.overview.cards.faq.subtitle" => "FAQ-Abschnitte auf Kategorie-Seiten"
          "admin.seo.help.overview.cards.faq.title" => "Kategorie-FAQs"
          "admin.seo.help.overview.cards.links.subtitle" => "Verlinkungen zwischen thematisch passenden Kategorien"
          "admin.seo.help.overview.cards.links.title" => "Interne Links"
          "admin.seo.help.overview.intro" => "Das SEO-Modul bündelt Werkzeuge für Kategorie-FAQs, Pending-Moderation, KI-gestützte FAQ-Vorschläge und interne Linkempfehlungen."
          "admin.seo.help.overview.permissions_title" => "Berechtigungen:"
          "admin.seo.help.overview.title" => "SEO-Tools: Überblick"
          "admin.seo.help.page_title" => "Hilfe: SEO-Tools"
          "admin.seo.help.pending.intro" => "Alle FAQs im Status pending erscheinen gesammelt unter /admin/seo/faq/pending."
          "admin.seo.help.pending.points.one" => "Einträge können direkt zur Kategorie geöffnet und dort ergänzt oder veröffentlicht werden."
          "admin.seo.help.pending.points.three" => "Die Inbox eignet sich für tägliche redaktionelle Moderation neuer KI- oder Entwurfsinhalte."
          "admin.seo.help.pending.points.two" => "Löschen aus der Inbox entfernt den FAQ-Eintrag dauerhaft."
          "admin.seo.help.pending.title" => "Ausstehende FAQs (Pending-Inbox)"
          "admin.seo.links.actions.back_category" => "Zur Kategorie"
          "admin.seo.links.actions.copy" => "Kopieren"
          "admin.seo.links.actions.manage_faq" => "FAQs verwalten"
          "admin.seo.links.empty" => "Keine Link-Vorschläge verfügbar."
          "admin.seo.links.guidelines.four" => "Hierarchie respektieren - Parent-Links vor Sibling-Links"
          "admin.seo.links.guidelines.one" => "1-3 interne Links pro Seite - zu viele Links verwirren Besucher"
          "admin.seo.links.guidelines.three" => "Wichtige Seiten zuerst - verlinken Sie zu den verkaufs- oder konversionsstärksten Kategorien"
          "admin.seo.links.guidelines.title" => "Richtlinien für interne Links:"
          "admin.seo.links.guidelines.two" => "Relevante Anchor-Texte - vermeiden Sie "hier" oder "mehr", nutzen Sie beschreibende Texte"
          "admin.seo.links.intro" => "Diese Seite sollte auf folgende verwandte Kategorien verlinken, um die interne Linkstruktur zu verbessern:"
          "admin.seo.links.js.copy_failed" => "Link konnte nicht kopiert werden."
          "admin.seo.links.js.copy_success" => "Link wurde kopiert."
          "admin.seo.links.meta_title" => "Interne Links - %name%"
          "admin.seo.links.page_title" => "Interne Link-Vorschläge für %name%"
          "admin.seo.links.relevance.high" => "Hoch"
          "admin.seo.links.relevance.medium" => "Mittel"
          "admin.seo.links.type.cousin" => "Verwandt"
          "admin.seo.links.type.parent" => "Elternkategorie"
          "admin.seo.links.type.sibling" => "Geschwister"
          "admin.seo.nav.faq_categories" => "FAQ-Kategorien"
          "admin.seo.nav.menu" => "SEO & FAQ"
          "admin.seo.nav.pending" => "Ausstehende FAQs"
          "admin.seo.notifications.faq_archived" => "FAQ wurde archiviert."
          "admin.seo.notifications.faq_deleted" => "FAQ wurde gelöscht."
          "admin.seo.notifications.faq_not_found" => "FAQ wurde nicht gefunden."
          "admin.seo.notifications.faq_publish_failed" => "FAQ konnte nicht veröffentlicht werden. Bitte zuerst eine echte Antwort eintragen."
          "admin.seo.notifications.faq_published" => "FAQ wurde veröffentlicht."
          "admin.seo.notifications.faq_saved" => "FAQ wurde gespeichert."
          "admin.seo.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.seo.notifications.invalid_csrf_retry" => "Ungültiges CSRF-Token. Bitte erneut versuchen."
          "admin.seo.notifications.order_updated" => "Reihenfolge wurde aktualisiert."
          "admin.seo.notifications.question_answer_required" => "Frage und Antwort sind erforderlich."
          "admin.seo.notifications.reorder_failed" => "Fehler beim Sortieren: %message%"
          "admin.seo.notifications.save_failed" => "Fehler beim Speichern: %message%"
          "admin.seo.notifications.suggestions_created" => "%count% FAQ-Vorschläge für "%name%" als ausstehend angelegt."
          "admin.seo.notifications.suggestions_none" => "Keine neuen Vorschläge für "%name%" angelegt (bereits vorhanden oder keine Vorschläge verfügbar)."
          "admin.seo.pending.actions.delete" => "Löschen"
          "admin.seo.pending.actions.edit" => "Bearbeiten"
          "admin.seo.pending.delete_confirm" => "FAQ "%question%" wirklich löschen?"
          "admin.seo.pending.empty" => "Keine ausstehenden FAQs."
          "admin.seo.pending.headers.actions" => "Aktionen"
          "admin.seo.pending.headers.category" => "Kategorie"
          "admin.seo.pending.headers.created" => "Erstellt"
          "admin.seo.pending.headers.question" => "Frage"
          "admin.seo.pending.meta_title" => "Ausstehende FAQs"
          "admin.seo.pending.page_subtitle" => "Prüfe offene FAQ-Einträge vor Veröffentlichung."
          "admin.seo.pending.page_title" => "Ausstehende FAQs (%count%)"
          "admin.seo.pending.panel_title" => "Pending-FAQ-Liste"
          "admin.seo.pending.toolbar.categories" => "FAQ-Kategorien"
          "admin.settings.form.actions.back" => "Zurück"
          "admin.settings.form.actions.cancel" => "Abbrechen"
          "admin.settings.form.actions.help" => "Modulhilfe"
          "admin.settings.form.actions.save" => "Speichern"
          "admin.settings.form.choices.scopes.backend" => "Backend"
          "admin.settings.form.choices.scopes.frontend" => "Frontend"
          "admin.settings.form.choices.scopes.global" => "Global"
          "admin.settings.form.choices.types.bool" => "Boolean"
          "admin.settings.form.choices.types.float" => "Dezimalzahl"
          "admin.settings.form.choices.types.int" => "Integer"
          "admin.settings.form.choices.types.string" => "String"
          "admin.settings.form.choices.types.text" => "Text"
          "admin.settings.form.description_locked_help" => "Bei vordefinierten System-Einstellungen wird die sichtbare Beschreibung über Übersetzungen gepflegt und ist hier schreibgeschützt."
          "admin.settings.form.fields.description" => "Beschreibung"
          "admin.settings.form.fields.scope" => "Bereich"
          "admin.settings.form.fields.settings_key" => "Einstellungs-Schlüssel"
          "admin.settings.form.fields.type" => "Typ"
          "admin.settings.form.fields.value" => "Wert"
          "admin.settings.form.meta_title_edit" => "Einstellung bearbeiten"
          "admin.settings.form.meta_title_new" => "Neue System-Einstellung"
          "admin.settings.form.page_subtitle_edit" => "Aktualisiere den Eintrag %key%."
          "admin.settings.form.page_subtitle_new" => "Lege Schlüssel, Wert, Typ und Scope zentral an."
          "admin.settings.form.page_title_edit" => "Einstellung bearbeiten"
          "admin.settings.form.page_title_new" => "Neue System-Einstellung"
          "admin.settings.form.panel_title" => "Formular"
          "admin.settings.help_index.card_description" => "Liste, Panel, Zahlungen, Versand und SEO"
          "admin.settings.help_index.card_title" => "System-Einstellungen"
          "admin.settings.help_index.table_description" => "Systemweite Parameter, Panel-Konfiguration und technische Einstellungen"
          "admin.settings.help_index.table_label" => "Einstellungen"
          "admin.settings.help.actions.back" => "Zurück"
          "admin.settings.help.actions.list" => "Zur Liste"
          "admin.settings.help.actions.panel" => "Zum Panel"
          "admin.settings.help.navigation.categories" => "Kategorien"
          "admin.settings.help.navigation.keys" => "Wichtige Schlüssel"
          "admin.settings.help.navigation.overview" => "Überblick"
          "admin.settings.help.navigation.routes" => "Routen"
          "admin.settings.help.navigation.security" => "Sicherheit"
          "admin.settings.help.navigation.split" => "Liste und Panel"
          "admin.settings.help.navigation.title" => "Navigation"
          "admin.settings.help.page_title" => "Hilfe: System-Einstellungen"
          "admin.settings.help.sections.categories.headers.category" => "Kategorie"
          "admin.settings.help.sections.categories.headers.description" => "Beschreibung"
          "admin.settings.help.sections.categories.title" => "Kategorien im Panel"
          "admin.settings.help.sections.keys.headers.description" => "Beschreibung"
          "admin.settings.help.sections.keys.headers.key" => "Schlüssel"
          "admin.settings.help.sections.keys.rows.address_validation_external_enabled" => "Aktiviert eine zusätzliche externe Adressprüfung über einen konfigurierbaren Endpoint."
          "admin.settings.help.sections.keys.rows.address_validation_external_timeout" => "Maximale Wartezeit in Sekunden für die externe Adressprüfung."
          "admin.settings.help.sections.keys.rows.address_validation_external_token" => "Optionaler Bearer-Token für die Authentifizierung am externen Adressprüfservice."
          "admin.settings.help.sections.keys.rows.address_validation_external_url" => "HTTPS-URL des externen Adressprüfservices."
          "admin.settings.help.sections.keys.rows.newsletter_enabled" => "Aktiviert die Newsletter-Funktion im Shop."
          "admin.settings.help.sections.keys.rows.paypal_client_id" => "Vorbereiteter API-Schlüssel für eine spätere PayPal-Integration; aktuell ohne Live-Verdrahtung im Checkout."
          "admin.settings.help.sections.keys.rows.recaptcha_admin_login_enabled" => "Schaltet die zusätzliche Sicherheitsprüfung auf /admin/login ein."
          "admin.settings.help.sections.keys.rows.recaptcha_admin_login_variant" => "Wählt Checkbox oder Invisible für den Admin-Login."
          "admin.settings.help.sections.keys.rows.recaptcha_enabled" => "Master-Schalter für Google reCAPTCHA im Projekt."
          "admin.settings.help.sections.keys.rows.recaptcha_language" => "Optionale Sprache für das Widget; leer folgt der aktuellen Anfrage."
          "admin.settings.help.sections.keys.rows.recaptcha_public_forms_enabled" => "Aktiviert reCAPTCHA für Registrierung, Reset, Resend, Kontakt, B2B und Support."
          "admin.settings.help.sections.keys.rows.recaptcha_public_forms_secret_key" => "Optionaler eigener Secret-Key für Public-Formulare."
          "admin.settings.help.sections.keys.rows.recaptcha_public_forms_site_key" => "Optionaler eigener Site-Key für Public-Formulare."
          "admin.settings.help.sections.keys.rows.recaptcha_public_forms_variant" => "Wählt Checkbox oder Invisible für Public- und Shop-Formulare."
          "admin.settings.help.sections.keys.rows.recaptcha_secret_key" => "Geheimer Server-Schlüssel für den Admin-Login und als Fallback für Public-Formulare."
          "admin.settings.help.sections.keys.rows.recaptcha_site_key" => "Öffentlicher Schlüssel für den Admin-Login und als Fallback für Public-Formulare."
          "admin.settings.help.sections.keys.rows.shipping_flat_rate" => "Versandpauschale pro Bestellung."
          "admin.settings.help.sections.keys.rows.shop_currency" => "Standardwährung des Shops."
          "admin.settings.help.sections.keys.rows.shop_email" => "Zentrale Kontakt- und Absenderadresse."
          "admin.settings.help.sections.keys.rows.shop_meta_title" => "Standard-Meta-Titel für Shop- und Übersichtsseiten."
          "admin.settings.help.sections.keys.rows.shop_name" => "Name des Shops für Titel, E-Mails und Frontend-Ausgaben."
          "admin.settings.help.sections.keys.rows.stripe_enabled" => "Schaltet Stripe im Checkout an oder aus."
          "admin.settings.help.sections.keys.title" => "Wichtige Schlüssel"
          "admin.settings.help.sections.overview.lead" => "System-Einstellungen sind zentrale Schlüssel-Wert-Paare in der Datenbank und steuern Shop-Verhalten, Zahlungsarten, Benachrichtigungen und SEO ohne Codeänderung."
          "admin.settings.help.sections.overview.permissions_label" => "Berechtigungen:"
          "admin.settings.help.sections.overview.title" => "Überblick"
          "admin.settings.help.sections.overview.warning" => "Geheimnisse und API-Schlüssel nur in der Datenbank pflegen und niemals im Code oder in Versionierung ablegen."
          "admin.settings.help.sections.routes.headers.function" => "Funktion"
          "admin.settings.help.sections.routes.headers.method" => "Methode"
          "admin.settings.help.sections.routes.headers.url" => "URL"
          "admin.settings.help.sections.routes.rows.create" => "Neue technische Einstellung anlegen"
          "admin.settings.help.sections.routes.rows.delete" => "Bestehende Einstellung löschen"
          "admin.settings.help.sections.routes.rows.edit" => "Bestehende Einstellung bearbeiten"
          "admin.settings.help.sections.routes.rows.list" => "Alle System-Einstellungen als CRUD-Liste anzeigen"
          "admin.settings.help.sections.routes.rows.panel" => "Vordefinierte System-Einstellungen im Panel anzeigen"
          "admin.settings.help.sections.routes.title" => "Routen und Aktionen"
          "admin.settings.help.sections.security.image_hint" => "Logo- und Favicon-Uploads werden im Shop-Upload-Verzeichnis gespeichert und können im Panel direkt ersetzt werden."
          "admin.settings.help.sections.security.password_hint" => "Passwortfelder überschreiben bestehende Werte nur, wenn ein neuer Wert eingetragen wird."
          "admin.settings.help.sections.security.scope_hint" => "Die technische Scope-Information bleibt in der Listenansicht sichtbar, das Panel ist auf operative Shop-Konfiguration optimiert."
          "admin.settings.help.sections.security.secret_warning" => "Zugangsdaten und API-Schlüssel nur für berechtigte Admins zugänglich machen und produktive Werte nicht in Screenshots oder Tickets kopieren."
          "admin.settings.help.sections.security.title" => "Sicherheit und Pflege"
          "admin.settings.help.sections.split.autosave_label" => "Autosave:"
          "admin.settings.help.sections.split.autosave_text" => "Range-Slider speichern ihre Werte sofort per AJAX, alle anderen Felder beim Formular-Submit."
          "admin.settings.help.sections.split.list_label" => "Liste:"
          "admin.settings.help.sections.split.list_text" => "Die Listenansicht unter /admin/settings eignet sich für CRUD, technische Kontrolle und einzelne Schlüssel."
          "admin.settings.help.sections.split.panel_label" => "Panel:"
          "admin.settings.help.sections.split.panel_text" => "Das Panel unter /admin/system-settings bündelt die wichtigsten Shop-Parameter nach Kategorien und zeigt passende Eingabetypen."
          "admin.settings.help.sections.split.title" => "Liste und Panel"
          "admin.settings.index.actions.delete" => "Löschen"
          "admin.settings.index.actions.edit" => "Bearbeiten"
          "admin.settings.index.actions.help" => "Modulhilfe"
          "admin.settings.index.actions.new" => "Neue Einstellung"
          "admin.settings.index.actions.panel" => "Einstellungs-Panel"
          "admin.settings.index.delete_confirm" => "Einstellung "%key%" wirklich löschen?"
          "admin.settings.index.headers.actions" => "Aktionen"
          "admin.settings.index.headers.description" => "Beschreibung"
          "admin.settings.index.headers.id" => "ID"
          "admin.settings.index.headers.key" => "Key"
          "admin.settings.index.headers.scope" => "Bereich"
          "admin.settings.index.headers.type" => "Typ"
          "admin.settings.index.headers.value" => "Wert"
          "admin.settings.index.list_count" => "%count% Einträge"
          "admin.settings.index.list_title" => "System-Einstellungen"
          "admin.settings.index.meta_title" => "System-Einstellungen"
          "admin.settings.index.page_subtitle" => "Verwalte Schlüssel, Werte, Typen und Gültigkeitsbereiche zentral."
          "admin.settings.index.page_title" => "System-Einstellungen"
          "admin.settings.index.values.empty" => "Keine Einstellungen vorhanden."
          "admin.settings.notifications.created" => "Einstellung wurde angelegt."
          "admin.settings.notifications.deleted" => "Einstellung wurde gelöscht."
          "admin.settings.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.settings.notifications.updated" => "Einstellung wurde gespeichert."
          "admin.settings.panel.actions.help" => "Modulhilfe"
          "admin.settings.panel.actions.list" => "Zur Liste"
          "admin.settings.panel.actions.save" => "Einstellungen speichern"
          "admin.settings.panel.autosave_hint" => "Range-Slider werden sofort automatisch gespeichert."
          "admin.settings.panel.fields.address_validation_external_enabled.description" => "Schaltet zusätzlich zur lokalen Plausibilitätsprüfung einen externen Adressprüf-Endpoint frei."
          "admin.settings.panel.fields.address_validation_external_enabled.label" => "Externe Adressprüfung aktiv"
          "admin.settings.panel.fields.address_validation_external_timeout.description" => "Maximale Wartezeit in Sekunden für externe Adressprüfungen."
          "admin.settings.panel.fields.address_validation_external_timeout.label" => "Timeout externe Adressprüfung"
          "admin.settings.panel.fields.address_validation_external_token.description" => "Optionaler Bearer-Token für den externen Adressprüf-Endpoint."
          "admin.settings.panel.fields.address_validation_external_token.label" => "Token externe Adressprüfung"
          "admin.settings.panel.fields.address_validation_external_url.description" => "HTTPS-URL eines externen Services für Adressvalidierung und -normalisierung."
          "admin.settings.panel.fields.address_validation_external_url.label" => "Endpoint externe Adressprüfung"
          "admin.settings.panel.fields.blog_offline_message.description" => "Hinweistext für den deaktivierten Blog."
          "admin.settings.panel.fields.blog_offline_message.label" => "Offline-Hinweis Blog"
          "admin.settings.panel.fields.blog_status.description" => "Aktiviert oder deaktiviert den Blog im Frontend."
          "admin.settings.panel.fields.blog_status.label" => "Blog online"
          "admin.settings.panel.fields.cart_session_lifetime.description" => "Legt fest, wie lange ein Warenkorb ohne Aktivität gespeichert bleibt."
          "admin.settings.panel.fields.cart_session_lifetime.label" => "Warenkorb-Sitzung in Minuten"
          "admin.settings.panel.fields.data_protection_offline_message.description" => "Nachricht bei deaktivierter Datenschutzseite."
          "admin.settings.panel.fields.data_protection_offline_message.label" => "Offline-Hinweis Datenschutz"
          "admin.settings.panel.fields.data_protection_status.description" => "Steuert, ob die Datenschutzseite erreichbar ist."
          "admin.settings.panel.fields.data_protection_status.label" => "Datenschutz online"
          "admin.settings.panel.fields.imprint_offline_message.description" => "Nachricht bei deaktivierter Impressumsseite."
          "admin.settings.panel.fields.imprint_offline_message.label" => "Offline-Hinweis Impressum"
          "admin.settings.panel.fields.imprint_status.description" => "Steuert, ob die Impressumsseite erreichbar ist."
          "admin.settings.panel.fields.imprint_status.label" => "Impressum online"
          "admin.settings.panel.fields.invoice_enabled.description" => "Vorbereitungsflag für einen späteren Rechnungspfad; aktuell nicht live im Checkout."
          "admin.settings.panel.fields.invoice_enabled.label" => "Rechnung aktiv"
          "admin.settings.panel.fields.klarna_enabled.description" => "Vorbereitungsflag für eine spätere Klarna-Integration; aktuell nicht live im Checkout."
          "admin.settings.panel.fields.klarna_enabled.label" => "Klarna aktiv"
          "admin.settings.panel.fields.newsletter_enabled.description" => "Aktiviert oder deaktiviert die Newsletter-Funktion."
          "admin.settings.panel.fields.newsletter_enabled.label" => "Newsletter aktiv"
          "admin.settings.panel.fields.order_email_admin.description" => "Empfängeradresse für interne Bestellbenachrichtigungen."
          "admin.settings.panel.fields.order_email_admin.label" => "Admin-E-Mail für Bestellungen"
          "admin.settings.panel.fields.order_email_notification.description" => "Steuert, ob bei neuen Bestellungen Benachrichtigungen versendet werden."
          "admin.settings.panel.fields.order_email_notification.label" => "Bestellbenachrichtigungen aktiv"
          "admin.settings.panel.fields.paypal_client_id.description" => "Client-ID für eine spätere PayPal-Integration; derzeit ohne aktive Checkout-Verdrahtung."
          "admin.settings.panel.fields.paypal_client_id.label" => "PayPal Client ID"
          "admin.settings.panel.fields.paypal_enabled.description" => "Vorbereitungsflag für eine spätere PayPal-Integration; aktuell nicht live im Checkout."
          "admin.settings.panel.fields.paypal_enabled.label" => "PayPal aktiv"
          "admin.settings.panel.fields.prepayment_enabled.description" => "Vorbereitungsflag für einen späteren Vorkasse-Pfad; aktuell nicht live im Checkout."
          "admin.settings.panel.fields.prepayment_enabled.label" => "Vorkasse aktiv"
          "admin.settings.panel.fields.recaptcha_admin_login_enabled.description" => "Aktiviert auf der Admin-Login-Seite eine zusätzliche Google-reCAPTCHA-Prüfung."
          "admin.settings.panel.fields.recaptcha_admin_login_enabled.label" => "Admin-Login schützen"
          "admin.settings.panel.fields.recaptcha_admin_login_variant.description" => "Wählt Checkbox oder Invisible für den Admin-Login. Passende Google-Keys vorausgesetzt."
          "admin.settings.panel.fields.recaptcha_admin_login_variant.label" => "Admin-Login Variante"
          "admin.settings.panel.fields.recaptcha_enabled.description" => "Master-Schalter für Google reCAPTCHA. Wirkt nur mit vollständig hinterlegten Schlüsseln."
          "admin.settings.panel.fields.recaptcha_enabled.label" => "Google reCAPTCHA aktiv"
          "admin.settings.panel.fields.recaptcha_language.description" => "Leere Auswahl übernimmt automatisch die Sprache der aktuellen Anfrage."
          "admin.settings.panel.fields.recaptcha_language.label" => "Google reCAPTCHA Sprache"
          "admin.settings.panel.fields.recaptcha_public_forms_enabled.description" => "Aktiviert reCAPTCHA für Registrierung, Passwort-Reset, Verify-Resend, Kontakt, B2B und Support."
          "admin.settings.panel.fields.recaptcha_public_forms_enabled.label" => "Public-Formulare schützen"
          "admin.settings.panel.fields.recaptcha_public_forms_secret_key.description" => "Optionaler eigener Secret-Key für die Public-Formulare. Leer verwendet den Admin-/Fallback-Key."
          "admin.settings.panel.fields.recaptcha_public_forms_secret_key.label" => "Public-Formulare Secret-Key"
          "admin.settings.panel.fields.recaptcha_public_forms_site_key.description" => "Optionaler eigener Site-Key für die Public-Formulare. Leer verwendet den Admin-/Fallback-Key."
          "admin.settings.panel.fields.recaptcha_public_forms_site_key.label" => "Public-Formulare Site-Key"
          "admin.settings.panel.fields.recaptcha_public_forms_variant.description" => "Wählt Checkbox oder Invisible für die Public- und Shop-Formulare."
          "admin.settings.panel.fields.recaptcha_public_forms_variant.label" => "Public-Formulare Variante"
          "admin.settings.panel.fields.recaptcha_secret_key.description" => "Geheimer Serverschlüssel für den Admin-Login und als Fallback für Public-Formulare ohne eigene Keys."
          "admin.settings.panel.fields.recaptcha_secret_key.label" => "Google reCAPTCHA Secret-Key (Admin / Fallback)"
          "admin.settings.panel.fields.recaptcha_site_key.description" => "Öffentlicher Schlüssel für den Admin-Login und als Fallback für Public-Formulare ohne eigene Keys."
          "admin.settings.panel.fields.recaptcha_site_key.label" => "Google reCAPTCHA Site-Key (Admin / Fallback)"
          "admin.settings.panel.fields.shipping_flat_rate.description" => "Standard-Versandkostenbetrag pro Bestellung."
          "admin.settings.panel.fields.shipping_flat_rate.label" => "Versandpauschale"
          "admin.settings.panel.fields.shop_address.description" => "Postanschrift des Shops oder Unternehmens."
          "admin.settings.panel.fields.shop_address.label" => "Shop-Adresse"
          "admin.settings.panel.fields.shop_currency.description" => "Standardwährung des Shops als ISO-Code."
          "admin.settings.panel.fields.shop_currency.label" => "Shop-Währung"
          "admin.settings.panel.fields.shop_email.description" => "Zentrale Kontakt- und Absenderadresse des Shops."
          "admin.settings.panel.fields.shop_email.label" => "Shop-E-Mail"
          "admin.settings.panel.fields.shop_favicon.description" => "Browser-Icon des Shops."
          "admin.settings.panel.fields.shop_favicon.label" => "Favicon"
          "admin.settings.panel.fields.shop_free_shipping_threshold.description" => "Bestellwert ab dem kostenloser Versand gilt."
          "admin.settings.panel.fields.shop_free_shipping_threshold.label" => "Schwelle kostenloser Versand"
          "admin.settings.panel.fields.shop_legal_name.description" => "Juristischer Name des Betreibers für Rechtstexte und Dokumente."
          "admin.settings.panel.fields.shop_legal_name.label" => "Rechtlicher Firmenname"
          "admin.settings.panel.fields.shop_logo.description" => "Logo-Datei für Header und Markenauftritt."
          "admin.settings.panel.fields.shop_logo.label" => "Shop-Logo"
          "admin.settings.panel.fields.shop_meta_description.description" => "Standard-Meta-Beschreibung für Shop- und Übersichtsseiten."
          "admin.settings.panel.fields.shop_meta_description.label" => "Meta-Beschreibung"
          "admin.settings.panel.fields.shop_meta_title.description" => "Standard-Meta-Titel für Shop- und Übersichtsseiten."
          "admin.settings.panel.fields.shop_meta_title.label" => "Meta-Titel"
          "admin.settings.panel.fields.shop_min_order_value.description" => "Mindestbetrag, der für eine Bestellung erreicht werden muss."
          "admin.settings.panel.fields.shop_min_order_value.label" => "Mindestbestellwert"
          "admin.settings.panel.fields.shop_name.description" => "Name des Shops für Titel, E-Mails und Frontend-Ausgaben."
          "admin.settings.panel.fields.shop_name.label" => "Shop-Name"
          "admin.settings.panel.fields.shop_offline_message.description" => "Hinweistext, der angezeigt wird, wenn der Shop deaktiviert ist."
          "admin.settings.panel.fields.shop_offline_message.label" => "Offline-Hinweis Shop"
          "admin.settings.panel.fields.shop_phone.description" => "Telefonnummer für Kontakt- und Servicetexte."
          "admin.settings.panel.fields.shop_phone.label" => "Shop-Telefon"
          "admin.settings.panel.fields.shop_product_limit.description" => "Maximale Anzahl von Produkten pro Listing-Seite."
          "admin.settings.panel.fields.shop_product_limit.label" => "Produkte pro Seite"
          "admin.settings.panel.fields.shop_return_days.description" => "Anzahl der Tage für Rückgabe- oder Widerrufsangaben."
          "admin.settings.panel.fields.shop_return_days.label" => "Rückgabefrist in Tagen"
          "admin.settings.panel.fields.shop_status.description" => "Schaltet den gesamten Shop im Frontend ein oder aus."
          "admin.settings.panel.fields.shop_status.label" => "Shop online"
          "admin.settings.panel.fields.shop_tax_id.description" => "Steuerliche Kennung für Impressum und Rechnungen."
          "admin.settings.panel.fields.shop_tax_id.label" => "Steuer-ID"
          "admin.settings.panel.fields.shop_vat_included.description" => "Kennzeichnet, ob Produktpreise bereits die Mehrwertsteuer enthalten."
          "admin.settings.panel.fields.shop_vat_included.label" => "Preise inklusive MwSt."
          "admin.settings.panel.fields.shop_vat_rate.description" => "Standard-Steuersatz in Prozent."
          "admin.settings.panel.fields.shop_vat_rate.label" => "Mehrwertsteuersatz"
          "admin.settings.panel.fields.stripe_enabled.description" => "Aktiviert die Zahlungsart Stripe im Checkout."
          "admin.settings.panel.fields.stripe_enabled.label" => "Stripe aktiv"
          "admin.settings.panel.fields.stripe_public_key.description" => "Öffentlicher Stripe-Schlüssel für Frontend und Checkout."
          "admin.settings.panel.fields.stripe_public_key.label" => "Stripe Public Key"
          "admin.settings.panel.image.preview_alt" => "Vorschau"
          "admin.settings.panel.meta_title" => "Einstellungs-Panel"
          "admin.settings.panel.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.settings.panel.notifications.invalid_csrf_retry" => "Ungültiges CSRF-Token. Bitte erneut versuchen."
          "admin.settings.panel.notifications.saved" => "Einstellungen wurden gespeichert."
          "admin.settings.panel.notifications.unknown_key" => "Unbekannter Schlüssel."
          "admin.settings.panel.page_subtitle" => "Verwalte Shop-Basisdaten, Zahlungen, Benachrichtigungen und SEO zentral."
          "admin.settings.panel.page_title" => "Einstellungs-Panel"
          "admin.settings.panel.panel_title" => "Vordefinierte Einstellungen"
          "admin.settings.panel.password.existing_hint" => "Schlüssel hinterlegt. Feld leer lassen, um den bestehenden Wert zu behalten."
          "admin.settings.panel.password.missing_hint" => "Noch nicht konfiguriert."
          "admin.settings.panel.password.placeholder_existing" => "******** (gespeichert, zum Ändern neu eingeben)"
          "admin.settings.panel.password.placeholder_new" => "Schlüssel eingeben..."
          "admin.settings.panel.payment_runtime_notice" => "Aktuell ist im Live-Checkout nur Stripe freigeschaltet. PayPal, Klarna, Vorkasse und Rechnung bleiben hier bis zur echten Implementierung reine Vorbereitungsfelder."
          "admin.settings.panel.tabs.allgemein.description" => "Shop, rechtliche Seiten und Basisdaten"
          "admin.settings.panel.tabs.allgemein.label" => "Allgemein"
          "admin.settings.panel.tabs.benachrichtigungen.description" => "Bestellmails und Newsletter-Steuerung"
          "admin.settings.panel.tabs.benachrichtigungen.label" => "Benachrichtigungen"
          "admin.settings.panel.tabs.ecommerce.description" => "Preise, Versand, Limits und Rückgaben"
          "admin.settings.panel.tabs.ecommerce.label" => "E-Commerce"
          "admin.settings.panel.tabs.security.description" => "Login-Schutz, reCAPTCHA und sensible Betriebsparameter"
          "admin.settings.panel.tabs.security.label" => "Sicherheit"
          "admin.settings.panel.tabs.seo.description" => "Meta-Titel und Meta-Beschreibungen für den Shop"
          "admin.settings.panel.tabs.seo.label" => "SEO"
          "admin.settings.panel.tabs.zahlungen.description" => "Aktivierung und Zugangsdaten der Zahlungsarten"
          "admin.settings.panel.tabs.zahlungen.label" => "Zahlungen"
          "admin.settings.panel.tooltips.setting_key" => "Schlüssel: %key%"
          "admin.shipping.common.actions.back" => "Zurück"
          "admin.shipping.common.actions.cancel" => "Abbrechen"
          "admin.shipping.common.actions.delete" => "Löschen"
          "admin.shipping.common.actions.edit" => "Bearbeiten"
          "admin.shipping.common.actions.save" => "Speichern"
          "admin.shipping.common.close" => "Schließen"
          "admin.shipping.common.delete_modal_title" => "Löschen bestätigen"
          "admin.shipping.common.form_panel_title" => "Formular"
          "admin.shipping.common.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.shipping.common.nav.new" => "Neu anlegen"
          "admin.shipping.common.nav.overview" => "Übersicht"
          "admin.shipping.common.table.actions" => "Aktionen"
          "admin.shipping.common.table.carrier" => "Carrier"
          "admin.shipping.common.table.countries" => "Länder"
          "admin.shipping.common.table.date" => "Datum"
          "admin.shipping.common.table.id" => "ID"
          "admin.shipping.common.table.name" => "Name"
          "admin.shipping.common.table.price" => "Preis"
          "admin.shipping.common.table.reason" => "Grund"
          "admin.shipping.common.table.shipped_at" => "Versanddatum"
          "admin.shipping.common.table.status" => "Status"
          "admin.shipping.common.table.tracking_number" => "Trackingnummer"
          "admin.shipping.common.table.type" => "Typ"
          "admin.shipping.common.table.zone" => "Zone"
          "admin.shipping.method.fields.delivery_time" => "Lieferzeit"
          "admin.shipping.method.fields.description" => "Beschreibung"
          "admin.shipping.method.fields.name" => "Versandart"
          "admin.shipping.method.fields.price" => "Preis"
          "admin.shipping.method.fields.type" => "Typ"
          "admin.shipping.method.fields.zone" => "Versandzone"
          "admin.shipping.method.form.create_title" => "Versandart anlegen"
          "admin.shipping.method.form.edit_title" => "Versandart bearbeiten"
          "admin.shipping.method.form.subtitle" => "Pflege Versandname, Preis und Zonenzuordnung."
          "admin.shipping.method.index.create" => "Versandart anlegen"
          "admin.shipping.method.index.delete_confirm" => "Versandart "%name%" wirklich löschen?"
          "admin.shipping.method.index.panel_title" => "Versandarten Liste"
          "admin.shipping.method.index.subtitle" => "Verwalte Preise und Zonen der verfügbaren Versandmethoden."
          "admin.shipping.method.index.title" => "Versandarten"
          "admin.shipping.method.notifications.created" => "Versandart wurde angelegt."
          "admin.shipping.method.notifications.deleted" => "Versandart wurde gelöscht."
          "admin.shipping.method.notifications.updated" => "Versandart wurde gespeichert."
          "admin.shipping.method.type.pickup" => "Abholung im Geschäft"
          "admin.shipping.method.type.shipping" => "Versand"
          "admin.shipping.nav.method" => "Versandarten"
          "admin.shipping.nav.return_request" => "Retouren"
          "admin.shipping.nav.shipment" => "Sendungsverfolgung"
          "admin.shipping.nav.zone" => "Versandzonen"
          "admin.shipping.return_request.fields.reason" => "Rückgabegrund"
          "admin.shipping.return_request.fields.requested_at" => "Anfragedatum"
          "admin.shipping.return_request.fields.status" => "Status"
          "admin.shipping.return_request.form.create_title" => "Retoure anlegen"
          "admin.shipping.return_request.form.edit_title" => "Retoure bearbeiten"
          "admin.shipping.return_request.form.subtitle" => "Bearbeite Retourengrund, Status und Datum."
          "admin.shipping.return_request.index.create" => "Retoure anlegen"
          "admin.shipping.return_request.index.delete_confirm" => "Retoure #%id% wirklich löschen?"
          "admin.shipping.return_request.index.panel_title" => "Retouren Liste"
          "admin.shipping.return_request.index.subtitle" => "Behalte Gründe, Status und Bearbeitung von Retourenanfragen im Blick."
          "admin.shipping.return_request.index.title" => "Retouren"
          "admin.shipping.return_request.notifications.created" => "Rückgabeanforderung wurde angelegt."
          "admin.shipping.return_request.notifications.deleted" => "Rückgabeanforderung wurde gelöscht."
          "admin.shipping.return_request.notifications.updated" => "Rückgabeanforderung wurde gespeichert."
          "admin.shipping.shipment.fields.carrier" => "Versanddienstleister"
          "admin.shipping.shipment.fields.shipped_at" => "Versanddatum"
          "admin.shipping.shipment.fields.status" => "Status"
          "admin.shipping.shipment.fields.tracking_number" => "Trackingnummer"
          "admin.shipping.shipment.form.create_title" => "Sendung anlegen"
          "admin.shipping.shipment.form.edit_title" => "Sendung bearbeiten"
          "admin.shipping.shipment.form.subtitle" => "Verwalte Trackingnummer, Carrier und Versandstatus."
          "admin.shipping.shipment.index.create" => "Sendung anlegen"
          "admin.shipping.shipment.index.delete_confirm" => "Sendung #%id% wirklich löschen?"
          "admin.shipping.shipment.index.panel_title" => "Sendungen Liste"
          "admin.shipping.shipment.index.subtitle" => "Trackingdaten, Carrier und Status deiner Versandvorgänge zentral verwalten."
          "admin.shipping.shipment.index.title" => "Sendungen"
          "admin.shipping.shipment.notifications.created" => "Sendung wurde angelegt."
          "admin.shipping.shipment.notifications.deleted" => "Sendung wurde gelöscht."
          "admin.shipping.shipment.notifications.updated" => "Sendung wurde gespeichert."
          "admin.shipping.zone.fields.countries" => "Länder (Komma getrennt)"
          "admin.shipping.zone.fields.name" => "Versandzone"
          "admin.shipping.zone.form.create_title" => "Versandzone anlegen"
          "admin.shipping.zone.form.edit_title" => "Versandzone bearbeiten"
          "admin.shipping.zone.form.subtitle" => "Pflege Name und Länderzuordnung einer Versandzone."
          "admin.shipping.zone.index.create" => "Versandzone anlegen"
          "admin.shipping.zone.index.delete_confirm" => "Versandzone "%name%" wirklich löschen?"
          "admin.shipping.zone.index.panel_title" => "Versandzonen Liste"
          "admin.shipping.zone.index.subtitle" => "Verwalte Länderzuordnung und Struktur der Versandzonen."
          "admin.shipping.zone.index.title" => "Versandzonen"
          "admin.shipping.zone.notifications.created" => "Versandzone wurde angelegt."
          "admin.shipping.zone.notifications.deleted" => "Versandzone wurde gelöscht."
          "admin.shipping.zone.notifications.updated" => "Versandzone wurde gespeichert."
          "admin.shop_management.categories.form.create_title" => "Kategorie anlegen"
          "admin.shop_management.categories.form.edit_title" => "Kategorie bearbeiten"
          "admin.shop_management.categories.form.fields.name" => "Name"
          "admin.shop_management.categories.form.fields.parent" => "Übergeordnete Kategorie"
          "admin.shop_management.categories.form.fields.slug" => "URL-Name"
          "admin.shop_management.categories.form.tabs.main" => "Stammdaten"
          "admin.shop_management.categories.form.tabs.seo" => "SEO"
          "admin.shop_management.categories.notifications.bulk_deleted" => "%count% Kategorie(n) wurden gelöscht."
          "admin.shop_management.categories.notifications.created" => "Kategorie wurde angelegt."
          "admin.shop_management.categories.notifications.deleted_named" => "Kategorie „%name%“ wurde gelöscht."
          "admin.shop_management.categories.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.shop_management.categories.notifications.no_selection" => "Keine Kategorien ausgewählt."
          "admin.shop_management.categories.notifications.updated" => "Kategorie wurde gespeichert."
          "admin.shop_management.products.form.create_title" => "Produkt anlegen"
          "admin.shop_management.products.form.edit_title" => "Produkt bearbeiten"
          "admin.shop_management.products.form.fields.active" => "Produkt veröffentlichen"
          "admin.shop_management.products.form.fields.available" => "Kaufbar / Bestellbar"
          "admin.shop_management.products.form.fields.category" => "Kategorie"
          "admin.shop_management.products.form.fields.country_of_origin" => "Herkunftsland"
          "admin.shop_management.products.form.fields.custom1" => "Freitext 1"
          "admin.shop_management.products.form.fields.custom2" => "Freitext 2"
          "admin.shop_management.products.form.fields.delivery_time" => "Lieferzeit"
          "admin.shop_management.products.form.fields.description" => "Beschreibung"
          "admin.shop_management.products.form.fields.downloads" => "Downloads"
          "admin.shop_management.products.form.fields.ean" => "EAN/GTIN/Barcode"
          "admin.shop_management.products.form.fields.height" => "Höhe (cm)"
          "admin.shop_management.products.form.fields.label" => "Label im Produktbild"
          "admin.shop_management.products.form.fields.length" => "Länge (cm)"
          "admin.shop_management.products.form.fields.manufacturer" => "Hersteller"
          "admin.shop_management.products.form.fields.material" => "Material"
          "admin.shop_management.products.form.fields.name" => "Produktname"
          "admin.shop_management.products.form.fields.pickup_available" => "Abholung im Geschäft anbieten"
          "admin.shop_management.products.form.fields.pickup_note" => "Abholhinweis"
          "admin.shop_management.products.form.fields.pickup_only" => "Nur Abholung im Geschäft"
          "admin.shop_management.products.form.fields.price" => "Preis"
          "admin.shop_management.products.form.fields.shipping_cost" => "Versandkosten"
          "admin.shop_management.products.form.fields.shipping_method" => "Versandart"
          "admin.shop_management.products.form.fields.short_description" => "Kurzbeschreibung"
          "admin.shop_management.products.form.fields.sku" => "Artikelnummer"
          "admin.shop_management.products.form.fields.slug" => "Seitenname"
          "admin.shop_management.products.form.fields.special_price" => "Sonderpreis"
          "admin.shop_management.products.form.fields.stock" => "Lagerbestand"
          "admin.shop_management.products.form.fields.tags" => "Tags/Schlagwörter (Komma-getrennt)"
          "admin.shop_management.products.form.fields.tags_placeholder" => "z.B. Sommer, Sale, Neu"
          "admin.shop_management.products.form.fields.uvp" => "UVP/Streichpreis"
          "admin.shop_management.products.form.fields.vat" => "MwSt."
          "admin.shop_management.products.form.fields.video_url" => "Video-URL"
          "admin.shop_management.products.form.fields.weight" => "Gewicht (kg)"
          "admin.shop_management.products.form.fields.width" => "Breite (cm)"
          "admin.shop_management.products.form.image_alt" => "Produktbild"
          "admin.shop_management.products.form.image_delete" => "Löschen"
          "admin.shop_management.products.form.image_delete_confirm" => "Bild wirklich löschen?"
          "admin.shop_management.products.form.images_upload_help" => "Mehrere Bilder auswählbar. Bestehende Bilder werden rechts angezeigt."
          "admin.shop_management.products.form.images_upload_label" => "Produktbilder hochladen"
          "admin.shop_management.products.form.layout.aside.actions_title" => "Aktionen"
          "admin.shop_management.products.form.layout.aside.navigation_title" => "Schnellnavigation"
          "admin.shop_management.products.form.layout.aside.summary_title" => "Überblick"
          "admin.shop_management.products.form.layout.cards.attributes" => "Material & Zusatzfelder"
          "admin.shop_management.products.form.layout.cards.dimensions" => "Maße & Gewicht"
          "admin.shop_management.products.form.layout.cards.fulfillment" => "Versand, Bestand & Status"
          "admin.shop_management.products.form.layout.cards.gallery" => "Bestehende Galerie"
          "admin.shop_management.products.form.layout.cards.identifiers" => "Identifikation"
          "admin.shop_management.products.form.layout.cards.pricing" => "Preise & Steuer"
          "admin.shop_management.products.form.layout.cards.status" => "Status & Sichtbarkeit"
          "admin.shop_management.products.form.layout.cards.uploads" => "Uploads & Einbindungen"
          "admin.shop_management.products.form.layout.descriptions.basics" => "Lege die zentralen Shop-Daten fest, die im Listing und auf der Produktseite erscheinen."
          "admin.shop_management.products.form.layout.descriptions.commerce" => "Steuere Preislogik, Bestand, Versandart und Sichtbarkeit in einem zusammenhängenden Block."
          "admin.shop_management.products.form.layout.descriptions.content" => "Pflege Kurztext und ausführliche Beschreibung getrennt für Listen- und Detailansicht."
          "admin.shop_management.products.form.layout.descriptions.import" => "Starte mit EAN, Hersteller und Wave-Import, bevor du die restlichen Produktdaten prüfst."
          "admin.shop_management.products.form.layout.descriptions.media" => "Verwalte Galerie, Uploads und Video an einer Stelle."
          "admin.shop_management.products.form.layout.descriptions.seo" => "Meta-Daten und Open-Graph-Werte für Suchmaschinen und Social Sharing."
          "admin.shop_management.products.form.layout.descriptions.specs" => "Erfasse Maße, Material und interne Zusatzfelder ohne Medien oder SEO dazwischen."
          "admin.shop_management.products.form.layout.sections.basics" => "Stammdaten"
          "admin.shop_management.products.form.layout.sections.commerce" => "Verkauf & Versand"
          "admin.shop_management.products.form.layout.sections.content" => "Inhalte"
          "admin.shop_management.products.form.layout.sections.import" => "EAN & Wave"
          "admin.shop_management.products.form.layout.sections.media" => "Medien & Dateien"
          "admin.shop_management.products.form.layout.sections.seo" => "SEO & Metadaten"
          "admin.shop_management.products.form.layout.sections.specs" => "Technische Daten"
          "admin.shop_management.products.form.layout.subtitle" => "Pflege Stammdaten, Verkauf, Medien und SEO in einer strukturierten Arbeitsansicht."
          "admin.shop_management.products.form.layout.summary.category" => "Kategorie"
          "admin.shop_management.products.form.layout.summary.ean" => "EAN"
          "admin.shop_management.products.form.layout.summary.images" => "Bilder"
          "admin.shop_management.products.form.layout.summary.images_count" => "%count% Bild(er)"
          "admin.shop_management.products.form.layout.summary.no_value" => "Noch offen"
          "admin.shop_management.products.form.layout.summary.sku" => "Artikelnummer"
          "admin.shop_management.products.form.layout.summary.uncategorized" => "Nicht zugeordnet"
          "admin.shop_management.products.form.tabs.gallery" => "Galerie"
          "admin.shop_management.products.form.tabs.inventory" => "Lagerverwaltung"
          "admin.shop_management.products.form.tabs.product" => "Produkt"
          "admin.shop_management.products.form.tabs.seo" => "SEO"
          "admin.shop_management.products.form.wave_prefill.button" => "Daten von Wave laden"
          "admin.shop_management.products.form.wave_prefill.description" => "Lädt anhand der EAN oder, wenn keine EAN eingetragen ist, anhand der Wave-Art.-Nr. aus der Beschreibungsbox Name, Hersteller, SKU, Beschreibung, Kategoriehinweis und textbasierte SEO-Daten von Wave Distribution. Der Preis bleibt unverändert, die erkannten Produktbilder können optional beim Speichern importiert werden."
          "admin.shop_management.products.form.wave_prefill.image_import_toggle" => "Produktbilder beim Speichern importieren"
          "admin.shop_management.products.form.wave_prefill.image_preview_alt" => "Wave-Produktbild Vorschau"
          "admin.shop_management.products.form.wave_prefill.image_preview_title" => "Vorgemerkte Bildvorschau"
          "admin.shop_management.products.form.wave_prefill.invalid_ean" => "Bitte eine gültige EAN oder Wave-Art.-Nr. eingeben."
          "admin.shop_management.products.form.wave_prefill.loading" => "Wave-Daten werden geladen ..."
          "admin.shop_management.products.form.wave_prefill.not_found" => "Zum Suchwert %ean% wurde bei Wave kein passender Artikel gefunden."
          "admin.shop_management.products.form.wave_prefill.note_category_matched" => "Lokale Kategorie erkannt: %category%."
          "admin.shop_management.products.form.wave_prefill.note_category_unmatched" => "Keine lokale Kategorie für "%category%" gefunden. Bitte manuell zuordnen."
          "admin.shop_management.products.form.wave_prefill.note_image_missing" => "Für diesen Artikel wurde kein importierbares Produktbild gefunden."
          "admin.shop_management.products.form.wave_prefill.note_images_ready" => "%count% Produktbild(er) erkannt und werden beim Speichern importiert, solange die Option aktiv bleibt."
          "admin.shop_management.products.form.wave_prefill.note_price_missing" => "Es wurde kein öffentlicher Preis gefunden. Der bestehende Preis bleibt unverändert."
          "admin.shop_management.products.form.wave_prefill.server_error" => "Die Wave-Abfrage ist fehlgeschlagen. Bitte später erneut versuchen."
          "admin.shop_management.products.form.wave_prefill.source_link" => "Quelle bei Wave öffnen"
          "admin.shop_management.products.form.wave_prefill.success" => "Wave-Daten für "%name%" wurden übernommen."
          "admin.shop_management.products.form.wave_prefill.title" => "Wave-Vorbefüllung per EAN oder Wave-Art.-Nr."
          "admin.shop_management.products.list.actions.activate" => "Produkt aktivieren"
          "admin.shop_management.products.list.actions.deactivate" => "Produkt deaktivieren"
          "admin.shop_management.products.list.blocked_count" => "%count% bestellgeschützt"
          "admin.shop_management.products.list.bulk_delete" => "Ausgewählte löschen"
          "admin.shop_management.products.list.bulk_delete_confirm" => "Ausgewählte Produkte wirklich löschen? Diese Aktion ist nicht rückgängig zu machen."
          "admin.shop_management.products.list.bulk_hint" => "Diese Aktion löscht die ausgewählten Produkte dauerhaft."
          "admin.shop_management.products.list.bulk_selected" => "%count% ausgewählt"
          "admin.shop_management.products.list.columns.actions" => "Aktionen"
          "admin.shop_management.products.list.columns.active" => "Sichtbar"
          "admin.shop_management.products.list.columns.available" => "Verfügbar"
          "admin.shop_management.products.list.columns.category" => "Kategorie"
          "admin.shop_management.products.list.columns.meta_title" => "Meta Title"
          "admin.shop_management.products.list.columns.name" => "Name"
          "admin.shop_management.products.list.columns.price" => "Preis"
          "admin.shop_management.products.list.columns.quantity" => "Menge"
          "admin.shop_management.products.list.columns.shipping" => "Versand"
          "admin.shop_management.products.list.create" => "Neues Produkt"
          "admin.shop_management.products.list.deletable_count" => "%count% löschbar"
          "admin.shop_management.products.list.delete_all_deletable" => "Alle löschbaren löschen (%count%)"
          "admin.shop_management.products.list.delete_all_deletable_confirm" => "Wirklich alle %count% löschbaren Produkte löschen? %blocked% bestellgeschützte Produkte bleiben erhalten. Diese Aktion ist nicht rückgängig zu machen."
          "admin.shop_management.products.list.delete_message" => "Produkt "%name%" wirklich löschen?"
          "admin.shop_management.products.list.panel_title" => "Produktliste"
          "admin.shop_management.products.list.subtitle" => "Verwalte Sortiment, Preise, Verfügbarkeit und Metadaten zentral."
          "admin.shop_management.products.list.title" => "Produkte"
          "admin.shop_management.products.list.total_count" => "%count% gesamt"
          "admin.shop_management.products.list.values.active" => "Aktiv"
          "admin.shop_management.products.list.values.inactive" => "Inaktiv"
          "admin.shop_management.products.list.values.no" => "Nein"
          "admin.shop_management.products.list.values.pickup_available" => "Abholung möglich"
          "admin.shop_management.products.list.values.pickup_only" => "Nur Abholung"
          "admin.shop_management.products.list.values.yes" => "Ja"
          "admin.shop_management.products.notifications.activated" => "Produkt "%name%" wurde aktiviert."
          "admin.shop_management.products.notifications.all_blocked" => "Die ausgewählten Produkte sind in Bestellungen enthalten und können nicht gelöscht werden."
          "admin.shop_management.products.notifications.bulk_blocked" => "%count% Produkt(e) wurden übersprungen, da sie in Bestellungen enthalten sind."
          "admin.shop_management.products.notifications.bulk_deleted" => "%count% Produkt(e) wurden gelöscht."
          "admin.shop_management.products.notifications.created" => "Produkt wurde angelegt."
          "admin.shop_management.products.notifications.deactivated" => "Produkt "%name%" wurde deaktiviert."
          "admin.shop_management.products.notifications.delete_all_deletable" => "%count% löschbare Produkt(e) wurden gelöscht."
          "admin.shop_management.products.notifications.delete_blocked" => "Dieses Produkt ist in Bestellungen enthalten und kann nicht gelöscht werden."
          "admin.shop_management.products.notifications.deleted" => "Produkt wurde gelöscht."
          "admin.shop_management.products.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.shop_management.products.notifications.name_already_exists" => "Ein Produkt mit dem Namen "%name%" existiert bereits. Bitte einen anderen Namen wählen."
          "admin.shop_management.products.notifications.no_deletable_products" => "Es gibt aktuell keine löschbaren Produkte. Alle vorhandenen Produkte sind in Bestellungen referenziert."
          "admin.shop_management.products.notifications.no_products" => "Es sind keine Produkte vorhanden."
          "admin.shop_management.products.notifications.no_selection" => "Keine Produkte ausgewählt."
          "admin.shop_management.products.notifications.not_found" => "Produkt nicht gefunden."
          "admin.shop_management.products.notifications.updated" => "Produkt wurde gespeichert."
          "admin.shop_management.products.notifications.wave_image_import_failed" => "Mindestens ein Wave-Produktbild konnte nicht importiert werden. Das Produkt wurde nur mit den erfolgreich geladenen Bildern gespeichert."
          "admin.shop_users.form.actions.back" => "Zurück"
          "admin.shop_users.form.actions.cancel" => "Abbrechen"
          "admin.shop_users.form.actions.help" => "Hilfe"
          "admin.shop_users.form.actions.save" => "Speichern"
          "admin.shop_users.form.hints.access" => "Shop-Logins erhalten automatisch die Basisrolle ROLE_SHOP_USER. B2B-Freigaben und Preislogik werden über den verknüpften Kunden und dessen Kundengruppe gesteuert."
          "admin.shop_users.form.hints.customer" => "Wenn ein Kunde ausgewählt wird, verknüpft das System den Login mit dem Kundendatensatz. Bereits vergebene Verknüpfungen werden markiert."
          "admin.shop_users.form.hints.customer_group" => "Die Kundengruppe wird dem verknüpften Shop-Kunden zugewiesen und steuert B2B-Preisfreigaben sowie Rabatte."
          "admin.shop_users.form.hints.no_groups" => "Noch keine Kundengruppen vorhanden."
          "admin.shop_users.form.hints.password" => "Mindestens 8 Zeichen."
          "admin.shop_users.form.labels.customer" => "Shop-Kunde (Customer-Datensatz)"
          "admin.shop_users.form.labels.customer_group" => "Kundengruppe"
          "admin.shop_users.form.labels.email" => "E-Mail-Adresse"
          "admin.shop_users.form.labels.enabled" => "Konto aktiv (Benutzer kann sich einloggen)"
          "admin.shop_users.form.labels.password_edit" => "Neues Passwort"
          "admin.shop_users.form.labels.password_new" => "Passwort"
          "admin.shop_users.form.labels.password_unchanged" => "(leer lassen = unverändert)"
          "admin.shop_users.form.links.create_group" => "Jetzt anlegen"
          "admin.shop_users.form.meta_title_edit" => "Shop-Benutzer bearbeiten"
          "admin.shop_users.form.meta_title_new" => "Shop-Benutzer anlegen"
          "admin.shop_users.form.page_subtitle" => "Login-Konto, Kunden-Verknüpfung und Kundengruppe pflegen."
          "admin.shop_users.form.page_title_edit" => "Shop-Benutzer bearbeiten"
          "admin.shop_users.form.page_title_new" => "Shop-Benutzer anlegen"
          "admin.shop_users.form.placeholders.already_assigned" => "[bereits vergeben]"
          "admin.shop_users.form.placeholders.email" => "kunde@beispiel.de"
          "admin.shop_users.form.placeholders.no_customer" => "— kein Kunde verknüpft —"
          "admin.shop_users.form.placeholders.no_group" => "— keine Gruppe —"
          "admin.shop_users.form.placeholders.password_edit" => "Neues Passwort eingeben..."
          "admin.shop_users.form.placeholders.password_new" => "Mindestens 8 Zeichen"
          "admin.shop_users.form.sections.access" => "Rollen & Berechtigungen"
          "admin.shop_users.form.sections.customer" => "Verknüpfter Shop-Kunde"
          "admin.shop_users.form.sections.customer_group" => "B2B-Kundengruppe"
          "admin.shop_users.form.sections.login" => "Login-Daten"
          "admin.shop_users.form.values.discount_percent" => "(%discount%% Rabatt)"
          "admin.shop_users.help_index.card_subtitle" => "Login-Konten, Kunden-Verknüpfungen und Kundengruppen"
          "admin.shop_users.help_index.card_title" => "Shop-Benutzer"
          "admin.shop_users.help_index.table_description" => "Shop-Logins und verknüpfte Kundendatensätze verwalten"
          "admin.shop_users.help_index.table_label" => "Shop-Benutzer"
          "admin.shop_users.help.access.intro" => "Das Formular pflegt aktuell keine separaten Shop-Rollen. Jeder Shop-Benutzer erhält automatisch ROLE_SHOP_USER als Basiszugang."
          "admin.shop_users.help.access.points.one" => "Direkte Admin-Rollen gehören nie in ein Shop-Konto."
          "admin.shop_users.help.access.points.three" => "Die Anzeige „Basiszugang“ in der Liste bedeutet: keine zusätzlichen direkten Rollen gesetzt."
          "admin.shop_users.help.access.points.two" => "B2B-Freigaben und Preisregeln werden über den verknüpften Customer und dessen Kundengruppe gesteuert."
          "admin.shop_users.help.access.title" => "Rollenmodell im Frontend"
          "admin.shop_users.help.actions.back" => "Zurück"
          "admin.shop_users.help.actions.module" => "Zum Modul"
          "admin.shop_users.help.create.steps.five" => "Optional einen bestehenden Customer-Datensatz verknüpfen."
          "admin.shop_users.help.create.steps.four" => "Das Konto bei Bedarf aktivieren oder gesperrt anlegen."
          "admin.shop_users.help.create.steps.one" => "Im Modul Shop-Benutzer auf „Neu anlegen“ klicken."
          "admin.shop_users.help.create.steps.seven" => "Speichern. Das Passwort wird sicher gehasht abgelegt."
          "admin.shop_users.help.create.steps.six" => "Optional eine Kundengruppe für B2B-Preislogik zuweisen."
          "admin.shop_users.help.create.steps.three" => "Ein Passwort mit mindestens 8 Zeichen vergeben."
          "admin.shop_users.help.create.steps.two" => "Eine eindeutige E-Mail-Adresse als Login eintragen."
          "admin.shop_users.help.create.title" => "Shop-Benutzer anlegen"
          "admin.shop_users.help.fields.rows.created_at" => "Erstellungsdatum des Kontos"
          "admin.shop_users.help.fields.rows.customer_group" => "Kundengruppe am verknüpften Customer-Datensatz"
          "admin.shop_users.help.fields.rows.customer_link" => "Verknüpfung über Customer.shopUser"
          "admin.shop_users.help.fields.rows.email" => "E-Mail-Adresse als Login-Name"
          "admin.shop_users.help.fields.rows.enabled" => "Steuert, ob sich der Benutzer anmelden darf"
          "admin.shop_users.help.fields.rows.password" => "Gehashtes Passwort des Shop-Kontos"
          "admin.shop_users.help.fields.rows.roles" => "Optionale direkte Frontend-Rollen; ROLE_SHOP_USER wird automatisch ergänzt"
          "admin.shop_users.help.fields.table.description" => "Beschreibung"
          "admin.shop_users.help.fields.table.field" => "Feld"
          "admin.shop_users.help.fields.table.type" => "Typ"
          "admin.shop_users.help.fields.title" => "Feldreferenz: ShopUser und Customer-Verknüpfung"
          "admin.shop_users.help.fields.types.boolean" => "Boolean"
          "admin.shop_users.help.fields.types.datetime" => "Datum / Zeit"
          "admin.shop_users.help.fields.types.hashed_text" => "Text (Hash)"
          "admin.shop_users.help.fields.types.json_array" => "JSON-Array"
          "admin.shop_users.help.fields.types.relation" => "Relation"
          "admin.shop_users.help.fields.types.unique_text" => "Text (eindeutig)"
          "admin.shop_users.help.link.intro" => "Ein Shop-Benutzer kann mit einem bestehenden Customer-Datensatz verknüpft werden. Darüber laufen Bestellhistorie, Adressen und Kundengruppe."
          "admin.shop_users.help.link.points.one" => "customer_id verknüpft den Login mit einem vorhandenen Customer-Datensatz."
          "admin.shop_users.help.link.points.three" => "Bereits verknüpfte Kunden sind im Auswahlfeld markiert."
          "admin.shop_users.help.link.points.two" => "customer_group_id wird am verknüpften Customer gepflegt, nicht direkt am ShopUser."
          "admin.shop_users.help.link.title" => "Kunde verknüpfen"
          "admin.shop_users.help.navigation.access" => "Rollenmodell"
          "admin.shop_users.help.navigation.create" => "Benutzer anlegen"
          "admin.shop_users.help.navigation.fields" => "Feldreferenz"
          "admin.shop_users.help.navigation.link" => "Kunde verknüpfen"
          "admin.shop_users.help.navigation.overview" => "Überblick"
          "admin.shop_users.help.navigation.password" => "Passwort ändern"
          "admin.shop_users.help.navigation.separation" => "Backend vs. Frontend"
          "admin.shop_users.help.navigation.title" => "Navigation"
          "admin.shop_users.help.overview.intro" => "Das Modul verwaltet Frontend-Shop-Benutzer für den Kundenlogin. Diese Konten sind strikt von Admin-Benutzern getrennt."
          "admin.shop_users.help.overview.permissions_title" => "Berechtigung:"
          "admin.shop_users.help.overview.separation_text" => "Shop-Benutzer und Admin-Benutzer sind zwei vollständig getrennte Entitäten. Ein Shop-Benutzer erhält keinen Admin-Zugriff."
          "admin.shop_users.help.overview.separation_title" => "Wichtige Trennung:"
          "admin.shop_users.help.overview.title" => "Shop-Benutzer: Überblick"
          "admin.shop_users.help.page_title" => "Hilfe: Shop-Benutzer"
          "admin.shop_users.help.password.points.one" => "Im Bearbeitungsformular ein neues Passwort eintragen und speichern."
          "admin.shop_users.help.password.points.three" => "Das gespeicherte Passwort ist nur als sicherer Hash vorhanden und nicht im Klartext einsehbar."
          "admin.shop_users.help.password.points.two" => "Ein leeres Passwortfeld lässt das bestehende Passwort unverändert."
          "admin.shop_users.help.password.title" => "Passwort ändern"
          "admin.shop_users.help.separation.admin.entity" => "Entity: User"
          "admin.shop_users.help.separation.admin.purpose" => "Für Admin-Bereich und Backoffice-Funktionen"
          "admin.shop_users.help.separation.admin.roles" => "Rollen: ROLE_ADMIN_*"
          "admin.shop_users.help.separation.admin.title" => "Admin-Benutzer"
          "admin.shop_users.help.separation.shop.entity" => "Entity: ShopUser"
          "admin.shop_users.help.separation.shop.purpose" => "Für Frontend-Login und Kundenfunktionen"
          "admin.shop_users.help.separation.shop.roles" => "Basisrolle: ROLE_SHOP_USER"
          "admin.shop_users.help.separation.shop.title" => "Shop-Benutzer"
          "admin.shop_users.help.separation.title" => "Backend vs. Frontend – Strikte Trennung"
          "admin.shop_users.index.actions.delete" => "Löschen"
          "admin.shop_users.index.actions.edit" => "Bearbeiten"
          "admin.shop_users.index.actions.help" => "Hilfe"
          "admin.shop_users.index.actions.new" => "Shop-Benutzer anlegen"
          "admin.shop_users.index.delete_confirm" => "Shop-Benutzer "%email%" wirklich löschen?"
          "admin.shop_users.index.headers.actions" => "Aktionen"
          "admin.shop_users.index.headers.active" => "Aktiv"
          "admin.shop_users.index.headers.created" => "Erstellt"
          "admin.shop_users.index.headers.customer" => "Verknüpfter Kunde"
          "admin.shop_users.index.headers.customer_group" => "Kundengruppe (B2B)"
          "admin.shop_users.index.headers.email" => "E-Mail"
          "admin.shop_users.index.headers.id" => "ID"
          "admin.shop_users.index.headers.roles" => "Rollen"
          "admin.shop_users.index.list_count" => "%count% Einträge"
          "admin.shop_users.index.list_title" => "Shop-Benutzerliste"
          "admin.shop_users.index.meta_title" => "Shop-Benutzer"
          "admin.shop_users.index.page_subtitle" => "Login-Konten für den Shop-Frontend-Bereich verwalten und Kundengruppen zuweisen."
          "admin.shop_users.index.page_title" => "Shop-Benutzer"
          "admin.shop_users.index.values.active" => "Aktiv"
          "admin.shop_users.index.values.base_access" => "Basiszugang"
          "admin.shop_users.index.values.blocked" => "Gesperrt"
          "admin.shop_users.index.values.empty" => "Keine Shop-Benutzer vorhanden."
          "admin.shop_users.index.values.none" => ""
          "admin.shop_users.nav.menu" => "Shop-Benutzer"
          "admin.shop_users.nav.new" => "Neu anlegen"
          "admin.shop_users.nav.overview" => "Übersicht"
          "admin.shop_users.notifications.created" => "Shop-Benutzer wurde angelegt."
          "admin.shop_users.notifications.deleted" => "Shop-Benutzer wurde gelöscht."
          "admin.shop_users.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.shop_users.notifications.updated" => "Shop-Benutzer wurde gespeichert."
          "admin.shop_users.validation.email_taken" => "Diese E-Mail-Adresse ist bereits vergeben."
          "admin.shop_users.validation.invalid_email" => "Bitte eine gültige E-Mail-Adresse angeben."
          "admin.shop_users.validation.new_password_too_short" => "Das neue Passwort muss mindestens 8 Zeichen lang sein."
          "admin.shop_users.validation.password_too_short" => "Das Passwort muss mindestens 8 Zeichen lang sein."
          "admin.slider.form.actions.back" => "Zur Übersicht"
          "admin.slider.form.actions.cancel" => "Abbrechen"
          "admin.slider.form.actions.help" => "CMS-Hilfe"
          "admin.slider.form.actions.save" => "Speichern"
          "admin.slider.form.fields.background_color" => "Hintergrundfarbe"
          "admin.slider.form.fields.button_text" => "Button-Text"
          "admin.slider.form.fields.button_url" => "Button-URL"
          "admin.slider.form.fields.headline" => "Überschrift"
          "admin.slider.form.fields.image" => "Bild"
          "admin.slider.form.fields.text" => "Text"
          "admin.slider.form.fields.type" => "Slider-Typ"
          "admin.slider.form.help.background_color" => "Wird genutzt, wenn kein Bild vorhanden ist oder als Grundton unter dem Bild."
          "admin.slider.form.help.button_url" => "Absolute URLs und interne Pfade wie /shop oder /kontakt sind erlaubt."
          "admin.slider.form.help.image" => "Empfohlen: breite Hero-Grafik im Format JPG oder PNG."
          "admin.slider.form.hints.background_color" => "Diese Farbe wird im Slider als Grundton genutzt."
          "admin.slider.form.hints.best_practice_cta" => "CTA-Buttons nur setzen, wenn wirklich ein Ziel verlinkt werden soll."
          "admin.slider.form.hints.best_practice_headline" => "Kurze Headlines funktionieren im Slider deutlich besser."
          "admin.slider.form.hints.best_practice_image" => "Breite Bilder mit ruhigem Fokus wirken im Hero-Bereich am saubersten."
          "admin.slider.form.hints.live_update" => "Änderungen werden direkt im ausgewählten Slider-Typ sichtbar."
          "admin.slider.form.hints.no_image" => "Noch kein Sliderbild vorhanden."
          "admin.slider.form.meta_title_edit" => "Slider-Inhalt bearbeiten"
          "admin.slider.form.meta_title_new" => "Slider-Inhalt anlegen"
          "admin.slider.form.page_subtitle" => "Pflege Bild, Text und Button für einen Frontend-Slider in einem strukturierten Formular."
          "admin.slider.form.page_title_edit" => "Slider-Inhalt bearbeiten"
          "admin.slider.form.page_title_new" => "Slider-Inhalt anlegen"
          "admin.slider.form.placeholders.button_text" => "Jetzt entdecken"
          "admin.slider.form.placeholders.button_url" => "/shop"
          "admin.slider.form.placeholders.headline" => "z. B. Frühbucher-Angebote 2026"
          "admin.slider.form.placeholders.text" => "Kurzer Begleittext für den Slider."
          "admin.slider.form.sections.best_practices" => "Best Practices"
          "admin.slider.form.sections.content_data" => "Inhaltsdaten"
          "admin.slider.form.sections.current_image" => "Aktuelles Bild"
          "admin.slider.form.sections.preview_notes" => "Vorschau & Hinweise"
          "admin.slider.list.actions.delete" => "Löschen"
          "admin.slider.list.actions.edit" => "Bearbeiten"
          "admin.slider.list.actions.help" => "CMS-Hilfe"
          "admin.slider.list.actions.new" => "Neuen Slider anlegen"
          "admin.slider.list.active_homepage" => "Aktive Startseiten-Konfiguration: %type%."
          "admin.slider.list.delete_confirm" => "Slider "%name%" wirklich löschen?"
          "admin.slider.list.empty_section" => "Für %type% existieren aktuell keine Inhalte."
          "admin.slider.list.headers.actions" => "Aktionen"
          "admin.slider.list.headers.color" => "Farbe"
          "admin.slider.list.headers.content" => "Inhalt"
          "admin.slider.list.headers.cta" => "CTA"
          "admin.slider.list.headers.preview" => "Vorschau"
          "admin.slider.list.meta_title" => "Slider-Verwaltung"
          "admin.slider.list.page_subtitle" => "Pflege Headlines, Bilder und CTA-Links für alle drei Frontend-Slider an einem Ort."
          "admin.slider.list.page_title" => "Slider-Verwaltung"
          "admin.slider.list.section_count" => "%count% Einträge"
          "admin.slider.list.stats.active_entries" => "Aktive Einträge"
          "admin.slider.list.stats.total_badge" => "Alle Slider"
          "admin.slider.list.stats.total_label" => "Gesamt"
          "admin.slider.list.values.cta_without_text" => "CTA ohne Text"
          "admin.slider.list.values.no_cta" => "Kein CTA definiert"
          "admin.slider.list.values.no_headline" => "Ohne Überschrift"
          "admin.slider.list.values.no_image" => "Kein Bild hinterlegt"
          "admin.slider.list.values.no_text" => "Kein Begleittext hinterlegt."
          "admin.slider.list.values.no_url" => "Keine URL hinterlegt"
          "admin.slider.notifications.created" => "Slider-Inhalt wurde angelegt."
          "admin.slider.notifications.deleted" => "Slider-Inhalt wurde gelöscht."
          "admin.slider.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.slider.notifications.updated" => "Slider-Inhalt wurde gespeichert."
          "admin.slider.notifications.warning_edit" => "Hinweis: Die Startseite nutzt aktuell %active%. Dieser Eintrag liegt in %target%."
          "admin.slider.notifications.warning_new" => "Hinweis: Die Startseite nutzt aktuell %active%. Dieser neue Eintrag wurde unter %target% gespeichert."
          "admin.slider.types.slider1" => "Slider 1"
          "admin.slider.types.slider2" => "Slider 2"
          "admin.slider.types.slider3" => "Slider 3"
          "admin.support.form.create_title" => "Support-Ticket anlegen"
          "admin.support.form.edit_title" => "Support-Ticket bearbeiten"
          "admin.support.form.fields.created_at" => "Erstellt am"
          "admin.support.form.fields.message" => "Nachricht"
          "admin.support.form.fields.status" => "Status"
          "admin.support.form.fields.subject" => "Betreff"
          "admin.support.form.panel_title" => "Formular"
          "admin.support.form.subtitle" => "Steuere Betreff, Nachricht und Ticketstatus im Service-Team."
          "admin.support.list.columns.actions" => "Aktionen"
          "admin.support.list.columns.created_at" => "Erstellt am"
          "admin.support.list.columns.id" => "ID"
          "admin.support.list.columns.status" => "Status"
          "admin.support.list.columns.subject" => "Betreff"
          "admin.support.list.create" => "Ticket anlegen"
          "admin.support.list.delete_message" => "Support-Ticket "%subject%" wirklich löschen?"
          "admin.support.list.empty" => "Keine Support-Tickets vorhanden."
          "admin.support.list.panel_title" => "Ticketliste"
          "admin.support.list.subtitle" => "Verwalte Kundenanfragen inklusive Status und Bearbeitungsstand."
          "admin.support.list.title" => "Support-Tickets"
          "admin.support.notifications.created" => "Support-Ticket wurde angelegt."
          "admin.support.notifications.deleted" => "Support-Ticket wurde gelöscht."
          "admin.support.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.support.notifications.updated" => "Support-Ticket wurde gespeichert."
          "admin.support.statuses.closed" => "Geschlossen"
          "admin.support.statuses.in_progress" => "In Bearbeitung"
          "admin.support.statuses.open" => "Offen"
          "admin.theme.activation_dialog.blocked" => "Aktivierung blockiert: Mindestens ein harter Check ist offen."
          "admin.theme.activation_dialog.checklist_title" => "Nachvollziehbare Checkliste"
          "admin.theme.activation_dialog.confirm_blocked" => "Aktivierung blockiert"
          "admin.theme.activation_dialog.confirm_ready" => "Aktivieren"
          "admin.theme.activation_dialog.fetch_error" => "Die Aktivierungscheckliste konnte nicht geladen werden. Bitte Seite neu laden und erneut versuchen."
          "admin.theme.activation_dialog.items.critical_assets" => "Kritische Assets lokal vorhanden"
          "admin.theme.activation_dialog.items.duplicate_targets" => "Keine doppelten Mapping-Ziele"
          "admin.theme.activation_dialog.items.external_resources" => "Keine externen Ressourcen ohne lokale Kopie"
          "admin.theme.activation_dialog.items.invalid_mappings" => "Mapping-Ziele sind gültig"
          "admin.theme.activation_dialog.items.javascript" => "JavaScript-Fehlerbudget eingehalten"
          "admin.theme.activation_dialog.items.performance" => "Performance-Budget eingehalten"
          "admin.theme.activation_dialog.items.preview_entry" => "Preview-Einstiegsdatei vorhanden"
          "admin.theme.activation_dialog.items.rendering" => "Theme-Dateien renderbar"
          "admin.theme.activation_dialog.items.required_slots" => "Pflicht-Slots vollständig gemappt"
          "admin.theme.activation_dialog.loading" => "Aktivierungscheck wird geladen..."
          "admin.theme.activation_dialog.no_soft_warnings" => "Keine Soft-Blocker oder Hinweise vorhanden."
          "admin.theme.activation_dialog.preview_entry_missing" => "Keine darstellbare Preview-Einstiegsdatei vorhanden."
          "admin.theme.activation_dialog.ready" => "Alle harten Prüfungen sind grün. Diese Version kann aktiviert werden."
          "admin.theme.activation_dialog.rollback_point" => "Expliziter Rollback-Punkt"
          "admin.theme.activation_dialog.rollback_project" => "Projekt-Theme"
          "admin.theme.activation_dialog.rollback_project_description" => "Vor der Aktivierung ist kein Import-Theme aktiv. Ein Rollback stellt das feste Projekt-Theme wieder her."
          "admin.theme.activation_dialog.rollback_same" => "Diese Version ist bereits aktiv"
          "admin.theme.activation_dialog.rollback_same_description" => "Es wird kein neuer Rollback-Punkt benötigt."
          "admin.theme.activation_dialog.rollback_theme" => "Aktive Import-Version"
          "admin.theme.activation_dialog.soft_blockers_title" => "Soft-Blocker und Hinweise"
          "admin.theme.activation_dialog.soft_warning_label" => "Nicht blockierend, aber vor Live-Schaltung prüfen:"
          "admin.theme.audit.activation_actions.activated" => "Aktiviert"
          "admin.theme.audit.activation_actions.replaced" => "Ersetzt"
          "admin.theme.audit.activation_actions.rollback" => "Rollback"
          "admin.theme.audit.activation_headers.action" => "Ereignis"
          "admin.theme.audit.activation_headers.actor" => "Benutzer"
          "admin.theme.audit.activation_headers.previous" => "Vorherige Version"
          "admin.theme.audit.activation_headers.rollback_of" => "Rollback von"
          "admin.theme.audit.activation_headers.time" => "Zeitpunkt"
          "admin.theme.audit.activation_headers.version" => "Aktivierte Version"
          "admin.theme.audit.activations_empty" => "Für diese Version sind keine Aktivierungsereignisse protokolliert."
          "admin.theme.audit.activations_title" => "Aktivierungshistorie"
          "admin.theme.audit.change_labels.added" => "Neu"
          "admin.theme.audit.change_labels.after" => "Nachher:"
          "admin.theme.audit.change_labels.before" => "Vorher:"
          "admin.theme.audit.change_labels.changed" => "Geändert"
          "admin.theme.audit.change_labels.removed" => "Entfernt"
          "admin.theme.audit.changed_short" => "geändert"
          "admin.theme.audit.context" => "Theme: %theme% | Version: %version%"
          "admin.theme.audit.created_at" => "Erstellt am:"
          "admin.theme.audit.delta_context" => "Vergleich von Version %current% gegen die vorherige Version %baseline%."
          "admin.theme.audit.delta_sections.assets" => "Assets"
          "admin.theme.audit.delta_sections.mappings" => "Mappings"
          "admin.theme.audit.delta_sections.slots" => "Slots"
          "admin.theme.audit.delta_sections.templates" => "Templates"
          "admin.theme.audit.delta_title" => "Delta zwischen Versionen"
          "admin.theme.audit.heading" => "Theme-Audit"
          "admin.theme.audit.import_headers.details" => "Details"
          "admin.theme.audit.import_headers.duration" => "Dauer"
          "admin.theme.audit.import_headers.finished" => "Ende"
          "admin.theme.audit.import_headers.source" => "Quelle"
          "admin.theme.audit.import_headers.started" => "Start"
          "admin.theme.audit.import_headers.status" => "Status"
          "admin.theme.audit.imports_empty" => "Für diese Version sind keine Import-Jobs protokolliert."
          "admin.theme.audit.imports_title" => "Importhistorie"
          "admin.theme.audit.manifest_title" => "Manifest-Zusammenfassung"
          "admin.theme.audit.mapping" => "Mapping"
          "admin.theme.audit.metric_baseline" => "Vorher: %value%"
          "admin.theme.audit.metrics.assetBytes" => "Asset-Größe"
          "admin.theme.audit.metrics.assetTotal" => "Assets"
          "admin.theme.audit.metrics.criticalBytes" => "Kritische Asset-Größe"
          "admin.theme.audit.metrics.cssBytes" => "CSS-Größe"
          "admin.theme.audit.metrics.jsBytes" => "JS-Größe"
          "admin.theme.audit.metrics.mappingCount" => "Mappings"
          "admin.theme.audit.metrics.slotCount" => "Slots"
          "admin.theme.audit.metrics.templateCount" => "Templates"
          "admin.theme.audit.metrics.validMappingCount" => "Gültige Mappings"
          "admin.theme.audit.no_baseline" => "Für diese Version existiert noch keine ältere Version desselben Themes. Der Delta-Vergleich wird angezeigt, sobald mindestens zwei Versionen vorhanden sind."
          "admin.theme.audit.no_baseline_short" => "kein Vergleich"
          "admin.theme.audit.no_section_changes" => "Keine Änderungen in diesem Bereich."
          "admin.theme.audit.page_title" => "Theme-Audit"
          "admin.theme.audit.preview" => "Preview"
          "admin.theme.audit.raw_payload" => "Quellparameter"
          "admin.theme.audit.seconds" => "%seconds% s"
          "admin.theme.audit.stats.activations" => "Audit-Ereignisse"
          "admin.theme.audit.stats.baseline" => "Vergleichsversion"
          "admin.theme.audit.stats.imports" => "Import-Jobs"
          "admin.theme.audit.stats.version" => "Version"
          "admin.theme.audit.updated_at" => "Aktualisiert am:"
          "admin.theme.audit.version_stack_title" => "Versionen dieses Themes"
          "admin.theme.audit.version_title" => "Versionskontext"
          "admin.theme.common.audit" => "Audit"
          "admin.theme.common.back_overview" => "Zur Übersicht"
          "admin.theme.common.cancel" => "Abbrechen"
          "admin.theme.common.display_name" => "Theme-Name"
          "admin.theme.common.help" => "Hilfe"
          "admin.theme.common.html_import" => "HTML-ZIP"
          "admin.theme.common.import_inputs" => "Import-Eingaben"
          "admin.theme.common.import_wizard" => "Import Wizard"
          "admin.theme.common.live_import" => "Live-Abbild"
          "admin.theme.common.upload_limit_hint" => "Aktuelles Server-Upload-Limit: %limit%. Bei HTTP 413 muss zusätzlich das Webserver-Limit (z. B. Nginx client_max_body_size) erhöht werden."
          "admin.theme.common.wordpress_import" => "WordPress-ZIP"
          "admin.theme.controller.access.activate" => "Theme-Aktivierung ist nicht erlaubt."
          "admin.theme.controller.access.activation_checklist" => "Theme-Aktivierungscheck ist nicht erlaubt."
          "admin.theme.controller.access.deactivate" => "Theme-Deaktivierung ist nicht erlaubt."
          "admin.theme.controller.access.delete" => "Theme-Löschung ist nicht erlaubt."
          "admin.theme.controller.access.list" => "Theme-Liste ist nicht erlaubt."
          "admin.theme.controller.access.rollback" => "Theme-Rollback ist nicht erlaubt."
          "admin.theme.controller.csrf_invalid" => "Die Aktion wurde aus Sicherheitsgründen abgebrochen (ungültiger Token)."
          "admin.theme.controller.delete_active_warning" => "Aktive Themes können nicht gelöscht werden. Bitte zuerst das Projekt-Theme wiederherstellen."
          "admin.theme.controller.delete_failed" => "Theme konnte nicht gelöscht werden: %error%"
          "admin.theme.controller.delete_success" => "Theme "%theme%" wurde gelöscht. Entfernte Import-Pfade: %paths%."
          "admin.theme.controller.validation.duplicate_targets" => "Doppelte Ziele"
          "admin.theme.controller.validation.hard_errors" => "Hard-Checks"
          "admin.theme.controller.validation.invalid_mappings" => "Ungültige Mappings"
          "admin.theme.controller.validation.missing_critical_assets" => "Fehlende kritische Assets"
          "admin.theme.controller.validation.missing_required_slots" => "Fehlende Slots"
          "admin.theme.controller.validation.render_errors" => "Render-Fehler"
          "admin.theme.help_index.card_description" => "Frontend-Design, Versionierung und Aktivierung"
          "admin.theme.help_index.card_title" => "Theme-Modul"
          "admin.theme.help_index.table_description" => "Frontend-Theme-Registry, HTML-/Live-/WordPress-Import, Slot-Mapping, Preview und Aktivierung mit Audit."
          "admin.theme.help_index.table_label" => "Theme-Modul"
          "admin.theme.help.implemented_title" => "Was ist bereits umgesetzt?"
          "admin.theme.help.implemented.activation" => "Aktivierung mit Sicherheitsprüfung für Pflicht-Slot-Mappings."
          "admin.theme.help.implemented.activation_dialog" => "Aktivierungsdialog mit serverseitig geladener Checkliste, harten Blockern, Soft-Hinweisen, explizitem Rollback-Punkt und deaktiviertem Bestätigungsbutton bei offenen Hard-Checks."
          "admin.theme.help.implemented.asset_pipeline" => "Asset-Manifest mit lokaler Auslieferung aktiver Theme-Dateien über eine geschützte Theme-Asset-Route."
          "admin.theme.help.implemented.audit" => "Eigene Audit-Detailseite je Theme-Version mit Importhistorie, Aktivierungshistorie und Delta-Vergleich zur vorherigen Version."
          "admin.theme.help.implemented.builder_materialization" => "Live-Import materialisiert Hauptinhalte in native CMS-Bausteine: SliderContent, Widgets, Page-Builder-Abschnitte und editierbare Content-Blöcke."
          "admin.theme.help.implemented.deactivation" => "Projekt-Theme wiederherstellen: Aktive Import-Themes können deaktiviert werden, danach greift wieder das feste Twig-Projekt-Theme."
          "admin.theme.help.implemented.delete" => "Inaktive Import-Themes können inklusive lokaler Import-Dateien gelöscht werden."
          "admin.theme.help.implemented.frontend_runtime" => "Frontend-Integration aktiv: Projekt-Header, Projekt-Footer und Projekt-Menüs bleiben live; importierte Inhalte werden über Content-Blöcke/Page-Builder und lokale Assets eingebunden."
          "admin.theme.help.implemented.html" => "HTML-Theme-Import per ZIP mit Job-Protokoll."
          "admin.theme.help.implemented.import_origin_badges" => "Importierte Slider, Widgets und Content-Blöcke werden in ihren Admin-Listen als Theme-Import gekennzeichnet."
          "admin.theme.help.implemented.import_report_links" => "Importberichte verlinken erzeugte Slider, Widgets und Content-Blöcke direkt in gefilterte Listen und, sofern vorhanden, in die Bearbeitung."
          "admin.theme.help.implemented.import_wizard" => "Import Wizard als führender Einstieg: Quelle wählen, Pflichtangaben validieren, Rohimport ausführen, Analyse-/Normalisierungsbericht erzeugen und direkt den Mapping-Assistenten öffnen."
          "admin.theme.help.implemented.live" => "Live-Website-Abbild per URL (HTML plus Asset-Spiegelung mit Sicherheitslimits; Hauptinhalt wird zusätzlich als Content-Blöcke für den Page Builder vorbereitet)."
          "admin.theme.help.implemented.mapping" => "Mapping-Assistent mit visueller Rechtsklick-Auswahl, Element-Umrandung und Slot-Fragment-Speicherung."
          "admin.theme.help.implemented.mapping_apply" => "One-Click-Übernahme von WordPress-Vorschlägen direkt im Mapping-Assistenten."
          "admin.theme.help.implemented.mapping_visual" => "Im visuellen Mapper zeigt der Rechtsklick Elementdaten, Größe, Selector und Textauszug; die Auswahl wird als eigenes Slot-Fragment gespeichert."
          "admin.theme.help.implemented.model" => "Theme-Datenmodell mit Definitionen, Versionen, Assets, Templates, Slots und Slot-Mappings."
          "admin.theme.help.implemented.overview" => "Admin-Übersicht zur Theme- und Versionsverwaltung."
          "admin.theme.help.implemented.preflight_budgets" => "Preflight-Budgets prüfen JavaScript-Syntaxfehler, externe Ressourcen ohne lokale Kopie, Asset-Anzahl, Gesamtgröße, CSS-/JS-Größe und kritische CSS-/JS-Größe; fehlende optionale Slots erscheinen als Soft-Warnings."
          "admin.theme.help.implemented.preview" => "Preview-Ansicht vor Aktivierung mit Preflight-Status für Pflicht-Slots."
          "admin.theme.help.implemented.preview_history" => "Aktivierungs-Historie in der Preview mit Zeitpunkt, Benutzer und vorheriger Version."
          "admin.theme.help.implemented.preview_live" => "Live-Vorschau mit echter Frontend-Ansicht (iframe + neuer Tab), zusätzlich zur technischen Preflight-Analyse."
          "admin.theme.help.implemented.preview_references" => "Preview-Referenzseiten für Start, CMS-Seite, Produktliste, Produktdetail, Warenkorb und Checkout, jeweils mit der ausgewählten Theme-Version und weiter führendem Projekt-Header/-Menü/-Footer."
          "admin.theme.help.implemented.preview_token" => "Token-gesicherte Preview-Route für freigabefähige Sandbox-Links ohne Admin-Session."
          "admin.theme.help.implemented.qa" => "Erweiterte Hard-Checks für Mapping-Ziele, kritische Assets und darstellbare Preview-Einstiegsdatei."
          "admin.theme.help.implemented.rollback" => "Rollback in einem Schritt auf den vorherigen Aktivierungspunkt oder zurück zum festen Projekt-Theme."
          "admin.theme.help.implemented.wordpress" => "WordPress-Import per ZIP mit Theme-Strukturprüfung über style.css."
          "admin.theme.help.implemented.wordpress_normalization" => "Vertiefte WordPress-Normalisierung mit rekursiver Template-Erkennung (Classic + Block-Theme-Dateien) und optionalen Slots (sidebar, archive_content, search_results, notfound_content)."
          "admin.theme.help.next_title" => "Was kommt als Nächstes?"
          "admin.theme.help.next.sources" => "Nächster Schritt: Theme-Rollen vollständig härten, synchronisieren und Buttons sowie Routen konsequent je Rolle begrenzen."
          "admin.theme.help.page_title" => "Theme-Modul Hilfe"
          "admin.theme.help.rules_title" => "Wichtige Regeln"
          "admin.theme.help.rules.activation_dialog" => "Vor jeder Aktivierung muss die Checkliste im Dialog geladen werden. Der Button bleibt gesperrt, solange harte Blocker wie externe Ressourcen, JS-Fehler oder ungültige Pflicht-Mappings offen sind."
          "admin.theme.help.rules.audit" => "Jede Aktivierung wird mit Zeitstempel und vorheriger Version protokolliert."
          "admin.theme.help.rules.delete_inactive" => "Aktive Import-Themes sind vor dem Löschen geschützt und müssen zuerst deaktiviert werden."
          "admin.theme.help.rules.draft_only" => "Importierte Inhalte auf Zielseiten werden als Entwurf angelegt und erst durch Speichern/Veröffentlichen der Seite live."
          "admin.theme.help.rules.frontend_only" => "Dieses Modul ändert nur Frontend-Themes, nicht das Backend-Design."
          "admin.theme.help.rules.preflight_budgets" => "Aktivierungen werden blockiert, wenn JavaScript-Fehlerbudget, externe Ressourcen ohne lokale Kopie oder Performance-Budgets verletzt sind. Optionale Slots blockieren nicht, werden aber sichtbar als Hinweise geführt."
          "admin.theme.help.rules.project_systems" => "Projekt-Navigation, Footer, Widgets, Slider und Page Builder bleiben die führenden Systeme. Fremd-HTML dient als Importquelle, nicht als starre Live-Seite."
          "admin.theme.help.rules.project_theme" => "Ist kein Import-Theme aktiv, wird automatisch das feste Projekt-Theme aus den normalen site/*-Twig-Templates ausgeliefert."
          "admin.theme.help.rules.valid_slots" => "Aktivierung ist nur erlaubt, wenn Pflicht-Slots valide gemappt sind; Projektmenüs gelten als System-Ziele."
          "admin.theme.help.subtitle" => "Phase 1 bis 5: Registry, Versionierung, HTML-/Live-/WordPress-Import, Mapping, Preview und Aktivierungs-Historie"
          "admin.theme.html.archive_help" => "Erlaubt ist ein HTML/CSS/JS-Theme als ZIP. WordPress-Import folgt als eigene Pipeline."
          "admin.theme.html.archive_label" => "ZIP-Archiv"
          "admin.theme.html.heading" => "HTML-Theme importieren"
          "admin.theme.html.name_placeholder" => "z. B. Modern Retail Frontend"
          "admin.theme.html.page_title" => "HTML-Theme importieren"
          "admin.theme.html.submit" => "Import starten"
          "admin.theme.html.subtitle" => "Phase 2: ZIP importieren, Slots vorbereiten, danach Mapping-Assistent."
          "admin.theme.import_report.actions.edit_block" => "Content-Block #%id% bearbeiten"
          "admin.theme.import_report.actions.edit_page" => "Zielseite bearbeiten"
          "admin.theme.import_report.actions.edit_slider" => "Slider #%id% bearbeiten"
          "admin.theme.import_report.actions.edit_widget" => "Widget #%id% bearbeiten"
          "admin.theme.import_report.actions.open_blocks" => "Content-Blöcke öffnen"
          "admin.theme.import_report.actions.open_sliders" => "Slider öffnen"
          "admin.theme.import_report.actions.open_widgets" => "Widgets öffnen"
          "admin.theme.import_report.analysis.areas.blog_lists" => "Blog-/Newslisten"
          "admin.theme.import_report.analysis.areas.footer" => "Footer"
          "admin.theme.import_report.analysis.areas.forms" => "Formulare"
          "admin.theme.import_report.analysis.areas.header" => "Header"
          "admin.theme.import_report.analysis.areas.hero_slider" => "Hero/Slider"
          "admin.theme.import_report.analysis.areas.main_content" => "Hauptinhalt"
          "admin.theme.import_report.analysis.areas.navigation" => "Navigation"
          "admin.theme.import_report.analysis.areas.product_lists" => "Produktlisten"
          "admin.theme.import_report.analysis.areas.sidebar" => "Sidebar"
          "admin.theme.import_report.analysis.areas.widget_zones" => "Widget-Zonen"
          "admin.theme.import_report.analysis.coverage" => "Bereiche %detected%/%total% · Pflicht %required%/%requiredTotal%"
          "admin.theme.import_report.analysis.title" => "Theme-Analyse"
          "admin.theme.import_report.direct_title" => "Direkt bearbeiten"
          "admin.theme.import_report.items.blocks" => "Content-Blöcke"
          "admin.theme.import_report.items.sliders" => "Slider"
          "admin.theme.import_report.items.widgets" => "Widgets"
          "admin.theme.import_report.mapping_title" => "Import-Ergebnis im CMS"
          "admin.theme.import_report.metrics.blocks" => "Content-Blöcke"
          "admin.theme.import_report.metrics.sections" => "Page-Builder-Abschnitte"
          "admin.theme.import_report.metrics.sliders" => "native Slider"
          "admin.theme.import_report.metrics.widgets" => "Widgets"
          "admin.theme.import_report.no_materialization" => "Für diesen Import wurden keine nativen CMS-Bausteine protokolliert."
          "admin.theme.import_report.normalizer.coverage" => "Partials %partials% · Slots %slots% · Pflicht %required% · Assets %assets%"
          "admin.theme.import_report.normalizer.title" => "CMS-Normalisierung"
          "admin.theme.import_report.page_builder_target" => "Page-Builder-Ziel:"
          "admin.theme.import_report.raw_report" => "Rohbericht anzeigen"
          "admin.theme.import_report.section_types" => "Builder-Abschnitte:"
          "admin.theme.import_report.slider_assigned" => "Slider auf Zielseite vorbereitet"
          "admin.theme.import_report.slider_not_assigned" => "Slider angelegt, nicht automatisch zugewiesen"
          "admin.theme.import_report.slider_type" => "Slider-Typ:"
          "admin.theme.import_report.target_page" => "Zielseite:"
          "admin.theme.import_report.title" => "Erzeugte CMS-Bausteine"
          "admin.theme.index.action_titles.mapping" => "Mapping bearbeiten"
          "admin.theme.index.action_titles.preview" => "Preview öffnen"
          "admin.theme.index.activate" => "Aktivieren"
          "admin.theme.index.active_button" => "Aktiv"
          "admin.theme.index.deactivate" => "Deaktivieren"
          "admin.theme.index.deactivate_modal.body" => "Möchtest du das aktive Import-Theme deaktivieren und wieder das feste Projekt-Theme live schalten?"
          "admin.theme.index.deactivate_modal.confirm" => "Projekt-Theme aktivieren"
          "admin.theme.index.deactivate_modal.confirm_message" => "Import-Theme '%theme%' Version %version% deaktivieren und das feste Projekt-Theme wieder live schalten?"
          "admin.theme.index.deactivate_modal.title" => "Projekt-Theme wiederherstellen"
          "admin.theme.index.delete" => "Löschen"
          "admin.theme.index.delete_modal.body" => "Möchtest du dieses importierte Theme wirklich löschen?"
          "admin.theme.index.delete_modal.confirm" => "Theme löschen"
          "admin.theme.index.delete_modal.confirm_message" => "Theme '%theme%' wirklich löschen?"
          "admin.theme.index.delete_modal.title" => "Theme löschen"
          "admin.theme.index.delete_modal.warning" => "Aktive Themes können nicht gelöscht werden. Beim Löschen werden Datenbankeinträge und lokale Import-Dateien entfernt."
          "admin.theme.index.empty_version" => "kein Stand"
          "admin.theme.index.headers.action" => "Aktion"
          "admin.theme.index.headers.activated_at" => "Aktiviert am"
          "admin.theme.index.headers.active" => "Aktiv"
          "admin.theme.index.headers.slug" => "Slug"
          "admin.theme.index.headers.source" => "Quelle"
          "admin.theme.index.headers.status" => "Status"
          "admin.theme.index.headers.theme" => "Theme"
          "admin.theme.index.headers.version" => "Version"
          "admin.theme.index.heading" => "Theme-Modul"
          "admin.theme.index.html_button" => "HTML-ZIP importieren"
          "admin.theme.index.live_button" => "Live-Website importieren"
          "admin.theme.index.modal.body" => "Möchtest du dieses Theme wirklich aktivieren?"
          "admin.theme.index.modal.close" => "Schließen"
          "admin.theme.index.modal.confirm" => "Aktivieren"
          "admin.theme.index.modal.confirm_message" => "Theme '%theme%' Version %version% wirklich aktivieren?"
          "admin.theme.index.modal.title" => "Theme aktivieren"
          "admin.theme.index.no" => "Nein"
          "admin.theme.index.no_data" => "Noch keine Themes vorhanden. Import kann jetzt über den Button oben gestartet werden."
          "admin.theme.index.no_rights" => "Keine Rechte"
          "admin.theme.index.page_title" => "Theme-Modul"
          "admin.theme.index.project_theme_live" => "Projekt-Theme ist live"
          "admin.theme.index.restore_project_theme" => "Projekt-Theme wiederherstellen"
          "admin.theme.index.rollback" => "Rollback"
          "admin.theme.index.rollback_modal.body" => "Möchtest du auf den letzten Aktivierungspunkt zurückrollen?"
          "admin.theme.index.rollback_modal.confirm" => "Rollback ausführen"
          "admin.theme.index.rollback_modal.confirm_message" => "Rollback für Theme '%theme%' Version %version% ausführen?"
          "admin.theme.index.rollback_modal.note" => "Wenn vorher kein Import-Theme aktiv war, wird automatisch das feste Projekt-Theme wieder live geschaltet."
          "admin.theme.index.rollback_modal.title" => "Theme-Rollback"
          "admin.theme.index.source_labels.html_zip" => "HTML-ZIP"
          "admin.theme.index.source_labels.live_site" => "Live-Abbild"
          "admin.theme.index.source_labels.wordpress_zip" => "WordPress-ZIP"
          "admin.theme.index.status_labels.active" => "aktiv"
          "admin.theme.index.status_labels.archived" => "archiviert"
          "admin.theme.index.status_labels.draft" => "Entwurf"
          "admin.theme.index.status_labels.validated" => "geprüft"
          "admin.theme.index.subtitle" => "Phase 1 bis 5: Registry, HTML-/Live-/WordPress-Import, Mapping, Preview, Aktivierung und Audit."
          "admin.theme.index.table_title" => "Theme-Übersicht"
          "admin.theme.index.wizard_button" => "Import Wizard"
          "admin.theme.index.wordpress_button" => "WordPress-ZIP importieren"
          "admin.theme.index.yes" => "Ja"
          "admin.theme.live.heading" => "Live-Website-Abbild erstellen"
          "admin.theme.live.name_placeholder" => "z. B. Corporate Live Theme"
          "admin.theme.live.page_title" => "Live-Website-Abbild erstellen"
          "admin.theme.live.submit" => "Live-Import starten"
          "admin.theme.live.subtitle" => "Phase 4: HTML, Texte, Styles und Medien der Live-Seite spiegeln und anschließend die Slots zuordnen."
          "admin.theme.live.summary_assets" => "CSS, JavaScript, Bilder und Fonts"
          "admin.theme.live.summary_builder" => "Hauptinhalt wird als Slider, Widgets und Content-Blöcke für den Page Builder vorbereitet"
          "admin.theme.live.summary_html" => "HTML-Struktur und Texte"
          "admin.theme.live.summary_intro" => "Der Import holt das serverseitige HTML-Abbild der Startseite und spiegelt dazu die erkannten Ressourcen."
          "admin.theme.live.summary_limits" => "Maximal 300 Assets mit Größenlimit pro Datei"
          "admin.theme.live.summary_note" => "Kein Browser-Screenshot, sondern ein strukturiertes Seiten-Abbild."
          "admin.theme.live.summary_system_menu" => "Navigation und Footer bleiben Projekt-Menüs aus diesem System"
          "admin.theme.live.summary_theme" => "Die importierte Ausgabe wird als editierbares Theme-Abbild gespeichert"
          "admin.theme.live.summary_title" => "Was wird gespiegelt?"
          "admin.theme.live.target_page_help" => "Optional: Der importierte Hauptinhalt wird als Page-Builder-Entwurf auf dieser Seite angelegt. Live wird erst etwas geändert, wenn die Seite gespeichert/veröffentlicht wird."
          "admin.theme.live.target_page_label" => "Zielseite im Page Builder"
          "admin.theme.live.target_page_placeholder" => "Nur Content-Blöcke anlegen, keine Seite überschreiben"
          "admin.theme.live.url_help" => "Die Startseite wird abgerufen, HTML gespeichert und verlinkte Assets wie CSS, JS, Bilder und Fonts werden gespiegelt."
          "admin.theme.live.url_label" => "Live-URL"
          "admin.theme.live.url_placeholder" => "https://example.com"
          "admin.theme.mapping.apply_slot_recommendation" => "Empfehlung einsetzen"
          "admin.theme.mapping.apply_suggestions" => "Vorschläge übernehmen"
          "admin.theme.mapping.back" => "Zurück"
          "admin.theme.mapping.context" => "Theme: %theme% | Version: %version%"
          "admin.theme.mapping.empty" => "Keine Slots vorhanden."
          "admin.theme.mapping.headers.guidance" => "Orientierung"
          "admin.theme.mapping.headers.mapping_target" => "Zielwert"
          "admin.theme.mapping.headers.mapping_type" => "Zuordnungsart"
          "admin.theme.mapping.headers.required" => "Pflicht"
          "admin.theme.mapping.headers.slot" => "Slot"
          "admin.theme.mapping.headers.status" => "Prüfstatus"
          "admin.theme.mapping.heading" => "Slot-Mapping"
          "admin.theme.mapping.open" => "offen"
          "admin.theme.mapping.optional_badge" => "Optional"
          "admin.theme.mapping.page_title" => "Theme-Mapping"
          "admin.theme.mapping.preview" => "Preview"
          "admin.theme.mapping.quick_targets" => "Quick-Ziele"
          "admin.theme.mapping.quickstart_title" => "Schnellstart"
          "admin.theme.mapping.quickstart.step1" => "Projekt-Menüs für Header und Footer verwenden; importierte Fremd-Navigation nicht live übernehmen."
          "admin.theme.mapping.quickstart.step2" => "Hauptinhalt per visueller Auswahl oder Import-Vorschlag einem bearbeitbaren Content-/Page-Builder-Ziel zuordnen."
          "admin.theme.mapping.quickstart.step3" => "Speichern und auf grüne Validierung achten, bevor die Aktivierung erfolgt."
          "admin.theme.mapping.recommendation.default" => "Empfohlener Startwert"
          "admin.theme.mapping.recommendation.import" => "Ermittelter Vorschlag"
          "admin.theme.mapping.recommendation.project" => "Projekt-System"
          "admin.theme.mapping.recommendation.wordpress" => "Ermittelter Vorschlag"
          "admin.theme.mapping.required_badge" => "Pflicht"
          "admin.theme.mapping.runtime_hint" => "Hinweis: Öffentliche Seiten verwenden weiterhin Projekt-Header, Projekt-Footer und Projekt-Menüs. Importierte Live-Inhalte werden für Vorschau, Mapping und Page-Builder-Übernahme genutzt."
          "admin.theme.mapping.save" => "Mapping speichern"
          "admin.theme.mapping.slot_help.archive_content" => "Listing-/Archivseiten (Kategorie, Tag, Archivübersichten)."
          "admin.theme.mapping.slot_help.default" => "Diesen Slot dem passenden Theme-Bereich zuordnen. Wenn unklar, mit dem empfohlenen Ziel starten."
          "admin.theme.mapping.slot_help.footer" => "Footer-Bereich: Projekt-Footer und Footer-Menü aus dem System verwenden."
          "admin.theme.mapping.slot_help.header" => "Header-Bereich: Projekt-Header mit Logo und Systemnavigation verwenden."
          "admin.theme.mapping.slot_help.main_content" => "Hauptinhalt der Seite (wichtigster Slot für die Frontend-Ansicht)."
          "admin.theme.mapping.slot_help.notfound_content" => "Inhalt für die 404-Seite (nicht gefunden)."
          "admin.theme.mapping.slot_help.search_results" => "Ausgabe der Suchergebnisse."
          "admin.theme.mapping.slot_help.sidebar" => "Seitenspalte für ergänzende Inhalte oder Widgets."
          "admin.theme.mapping.source_preview_help" => "Die automatisch erkannten Bereiche werden hier als Vorschau gezeigt. Mit einem Klick wird der passende Zielwert in den Slot übernommen."
          "admin.theme.mapping.source_preview_title" => "Import-Abbild direkt zuordnen"
          "admin.theme.mapping.source_suggestions_help" => "Diese Zielwerte wurden aus der importierten Theme-Struktur abgeleitet und können direkt übernommen werden."
          "admin.theme.mapping.source_suggestions_title" => "Import-Vorschläge erkannt."
          "admin.theme.mapping.status_duplicates" => "Doppelte Mapping-Ziele:"
          "admin.theme.mapping.status_invalid" => "Ungültige Pflicht-Mappings:"
          "admin.theme.mapping.status_missing" => "Pflicht-Slots fehlen noch:"
          "admin.theme.mapping.status_ok" => "Pflicht-Slots sind gültig. Diese Version kann aktiviert werden."
          "admin.theme.mapping.status_required_empty" => "Pflicht-Slot ohne Ziel."
          "admin.theme.mapping.table_title" => "Mapping-Tabelle"
          "admin.theme.mapping.target_placeholder" => "z. B. site.main_nav oder cms.page.content"
          "admin.theme.mapping.type.cms_block.description" => "Verknüpft den Slot mit bearbeitbaren CMS-Inhalten, Content-Blöcken oder einer Page-Builder-Zielseite."
          "admin.theme.mapping.type.cms_block.label" => "Page-Builder / Content-Block"
          "admin.theme.mapping.type.cms_block.placeholder" => "z. B. cms.page.ueber-uns.builder"
          "admin.theme.mapping.type.custom.description" => "Empfohlen für die aktuelle Frontend-Theme-Integration. Beispiel: wp:header.php oder site.main_content."
          "admin.theme.mapping.type.custom.label" => "Theme-Bereich / Sonderziel"
          "admin.theme.mapping.type.custom.placeholder" => "z. B. wp:header.php oder site.main_content"
          "admin.theme.mapping.type.menu.description" => "Verknüpft den Slot mit der vorhandenen Projekt-Navigation, nicht mit statischer Fremd-Navigation."
          "admin.theme.mapping.type.menu.label" => "Projekt-Menü"
          "admin.theme.mapping.type.menu.placeholder" => "z. B. project.main_menu"
          "admin.theme.mapping.type.static.description" => "Statisches Ziel ohne weitere Auflösung. Nur verwenden, wenn bewusst nötig."
          "admin.theme.mapping.type.static.label" => "Statisch"
          "admin.theme.mapping.type.static.placeholder" => "z. B. static.header"
          "admin.theme.mapping.type.widget.description" => "Verknüpft den Slot mit einem Widget-Bereich."
          "admin.theme.mapping.type.widget.label" => "Widget-Bereich"
          "admin.theme.mapping.type.widget.placeholder" => "z. B. sidebar.primary"
          "admin.theme.mapping.use_this_area" => "Diesen Bereich nutzen"
          "admin.theme.mapping.valid" => "gültig"
          "admin.theme.mapping.visual.active_slot" => "Aktiver Ziel-Slot"
          "admin.theme.mapping.visual.assign" => "Auswahl diesem Slot zuordnen"
          "admin.theme.mapping.visual.empty" => "Noch kein Bereich ausgewählt."
          "admin.theme.mapping.visual.help" => "In der Vorschau ein Element anklicken zum Prüfen oder per Rechtsklick direkt dem aktiven Slot zuordnen. Das Element wird umrandet und als Slot-Fragment gespeichert."
          "admin.theme.mapping.visual.identity" => "ID / Klassen"
          "admin.theme.mapping.visual.selected_slot" => "Ziel-Slot"
          "admin.theme.mapping.visual.selector" => "Selector"
          "admin.theme.mapping.visual.size" => "Größe"
          "admin.theme.mapping.visual.tag" => "Element"
          "admin.theme.mapping.visual.text" => "Textauszug"
          "admin.theme.mapping.visual.title" => "Visuelles Rechtsklick-Mapping"
          "admin.theme.mapping.wordpress_suggestions_help" => "Diese Zielwerte wurden aus den importierten Theme-Dateien abgeleitet und können direkt übernommen werden."
          "admin.theme.mapping.wordpress_suggestions_title" => "WordPress-Vorschläge erkannt."
          "admin.theme.preview.activation_log_empty" => "Für diese Version sind noch keine Aktivierungen protokolliert."
          "admin.theme.preview.activation_log_headers.actor" => "Benutzer"
          "admin.theme.preview.activation_log_headers.previous" => "Vorherige Version"
          "admin.theme.preview.activation_log_headers.time" => "Zeitpunkt"
          "admin.theme.preview.activation_log_title" => "Aktivierungs-Historie"
          "admin.theme.preview.all_green" => "Alle Hard-Checks für diese Version sind grün."
          "admin.theme.preview.asset_critical" => "%count% kritisch"
          "admin.theme.preview.asset_fonts" => "%count% Fonts"
          "admin.theme.preview.asset_images" => "%count% Bilder"
          "admin.theme.preview.asset_total" => "%count% Assets"
          "admin.theme.preview.assets_empty" => "Für diese Version wurden keine lokalen Assets registriert."
          "admin.theme.preview.assets_headers.critical" => "Kritisch"
          "admin.theme.preview.assets_headers.path" => "Pfad"
          "admin.theme.preview.assets_headers.size" => "Größe"
          "admin.theme.preview.assets_headers.type" => "Typ"
          "admin.theme.preview.assets_registered" => "Registrierte Assets:"
          "admin.theme.preview.assets_title" => "Asset-Manifest"
          "admin.theme.preview.budget_assets" => "%count%/%limit% Assets"
          "admin.theme.preview.budget_critical" => "Kritisch %value%/%limit% MiB"
          "admin.theme.preview.budget_css" => "CSS %value%/%limit% MiB"
          "admin.theme.preview.budget_js" => "JS %value%/%limit% MiB"
          "admin.theme.preview.budget_total" => "Gesamt %value%/%limit% MiB"
          "admin.theme.preview.checks_title" => "Aktivierungs-Checks"
          "admin.theme.preview.checksum" => "Checksum:"
          "admin.theme.preview.context" => "Theme: %theme% | Version: %version%"
          "admin.theme.preview.details_title" => "Preflight-Details"
          "admin.theme.preview.device_desktop" => "Desktop"
          "admin.theme.preview.device_mobile" => "Mobil"
          "admin.theme.preview.device_tablet" => "Tablet"
          "admin.theme.preview.device_toolbar" => "Preview-Geräte"
          "admin.theme.preview.duplicate_targets" => "Doppelte Ziele:"
          "admin.theme.preview.external_resource_issues" => "Externe Ressourcen ohne lokale Kopie:"
          "admin.theme.preview.hard_errors" => "Hard-Checks:"
          "admin.theme.preview.heading" => "Theme-Preview"
          "admin.theme.preview.import_jobs_empty" => "Für diese Version ist noch kein Importbericht vorhanden."
          "admin.theme.preview.import_jobs_headers.report" => "Bericht"
          "admin.theme.preview.import_jobs_headers.source" => "Quelle"
          "admin.theme.preview.import_jobs_headers.status" => "Status"
          "admin.theme.preview.import_jobs_headers.time" => "Zeitpunkt"
          "admin.theme.preview.import_jobs_title" => "Import- und Analysebericht"
          "admin.theme.preview.import_status.failed" => "fehlgeschlagen"
          "admin.theme.preview.import_status.partial" => "teilweise"
          "admin.theme.preview.import_status.running" => "läuft"
          "admin.theme.preview.import_status.success" => "erfolgreich"
          "admin.theme.preview.install" => "Install:"
          "admin.theme.preview.invalid_mappings" => "Ungültige Mappings:"
          "admin.theme.preview.javascript_files" => "JS-Dateien"
          "admin.theme.preview.javascript_issues" => "JavaScript-Fehlerbudget:"
          "admin.theme.preview.live_help" => "Diese Vorschau rendert die ausgewählte Theme-Version auf repräsentativen Frontend-Seiten. Projekt-Header, Projekt-Menüs und Projekt-Footer bleiben dabei führend."
          "admin.theme.preview.live_title" => "Live-Vorschau (Frontend-Ansicht)"
          "admin.theme.preview.missing_critical_assets" => "Fehlende kritische Assets:"
          "admin.theme.preview.missing_required_slots" => "Fehlende Pflicht-Slots:"
          "admin.theme.preview.open_frontend_view" => "Frontend-Ansicht"
          "admin.theme.preview.open_new_tab" => "Im neuen Tab öffnen"
          "admin.theme.preview.open_token_preview" => "Token-Preview"
          "admin.theme.preview.open_token_preview_help" => "Öffnet eine signierte Vorschau-URL, die ohne Admin-Session die Sandbox-Preview und lokale Theme-Assets laden kann."
          "admin.theme.preview.optional_slot_warnings" => "Optionale Slot-Hinweise:"
          "admin.theme.preview.page_title" => "Theme-Preview"
          "admin.theme.preview.paths_title" => "Installationspfade"
          "admin.theme.preview.performance_issues" => "Performance-Budget:"
          "admin.theme.preview.preflight_blocked" => "Preflight blockiert: Vor Aktivierung müssen die offenen Punkte behoben werden."
          "admin.theme.preview.preflight_ok" => "Preflight erfolgreich: Diese Version kann aktiviert werden."
          "admin.theme.preview.public_assets" => "Public Assets:"
          "admin.theme.preview.reference_content.cart.cta" => "Zur Kasse"
          "admin.theme.preview.reference_content.cart.item" => "Position %number%"
          "admin.theme.preview.reference_content.cart.subtotal" => "Zwischensumme"
          "admin.theme.preview.reference_content.cart.summary" => "Zusammenfassung"
          "admin.theme.preview.reference_content.cart.title" => "Warenkorb"
          "admin.theme.preview.reference_content.checkout.address" => "Adresse"
          "admin.theme.preview.reference_content.checkout.cta" => "Bestellung prüfen"
          "admin.theme.preview.reference_content.checkout.firstname" => "Vorname"
          "admin.theme.preview.reference_content.checkout.items" => "Artikel"
          "admin.theme.preview.reference_content.checkout.lastname" => "Nachname"
          "admin.theme.preview.reference_content.checkout.shipping" => "Versand"
          "admin.theme.preview.reference_content.checkout.summary" => "Bestellübersicht"
          "admin.theme.preview.reference_content.checkout.title" => "Checkout"
          "admin.theme.preview.reference_content.cms_page.aside_1" => "Navigationsnahe Inhalte"
          "admin.theme.preview.reference_content.cms_page.aside_2" => "Kontakt- und Hinweisflächen"
          "admin.theme.preview.reference_content.cms_page.aside_3" => "Redaktionelle Zusatzboxen"
          "admin.theme.preview.reference_content.cms_page.aside_title" => "Seitenmodule"
          "admin.theme.preview.reference_content.cms_page.body" => "Diese Beispielseite deckt längere Inhalte, Listen und begleitende Sekundärinformationen ab."
          "admin.theme.preview.reference_content.cms_page.kicker" => "CMS-Seite"
          "admin.theme.preview.reference_content.cms_page.lead" => "Text, Sidebar und Content-Flächen prüfen Typografie, Abstände und Lesbarkeit."
          "admin.theme.preview.reference_content.cms_page.title" => "Content-Seite mit redaktionellem Aufbau"
          "admin.theme.preview.reference_content.product_detail.cta" => "In den Warenkorb"
          "admin.theme.preview.reference_content.product_detail.kicker" => "Produktdetail"
          "admin.theme.preview.reference_content.product_detail.text" => "Detailseite mit Galerie, Preis, CTA und beschreibendem Text."
          "admin.theme.preview.reference_content.product_detail.title" => "Professionelles Referenzprodukt"
          "admin.theme.preview.reference_content.product_list.filter_1" => "Software"
          "admin.theme.preview.reference_content.product_list.filter_2" => "Service"
          "admin.theme.preview.reference_content.product_list.filter_3" => "Hardware"
          "admin.theme.preview.reference_content.product_list.filter_title" => "Kategorien"
          "admin.theme.preview.reference_content.product_list.product_text" => "Kurzbeschreibung mit Preis, Karte und Produktbildfläche."
          "admin.theme.preview.reference_content.product_list.product_title" => "Referenzprodukt %number%"
          "admin.theme.preview.reference_content.start.kicker" => "Frontend-Referenz"
          "admin.theme.preview.reference_content.start.text" => "Die Referenz zeigt, wie sich globale Theme-Assets auf die Startseite auswirken."
          "admin.theme.preview.reference_content.start.title" => "Startseite mit aktiver Theme-Version"
          "admin.theme.preview.reference_descriptions.cart" => "Warenkorb-Ansicht"
          "admin.theme.preview.reference_descriptions.checkout" => "Checkout-Ansicht"
          "admin.theme.preview.reference_descriptions.cms_page" => "Content-/Landingpage-Referenz"
          "admin.theme.preview.reference_descriptions.product_detail" => "Shop-Detailansicht"
          "admin.theme.preview.reference_descriptions.product_list" => "Shop-Listenansicht"
          "admin.theme.preview.reference_descriptions.start" => "Startseiten-Referenz"
          "admin.theme.preview.reference_toolbar" => "Preview-Referenzseiten"
          "admin.theme.preview.references.cart" => "Warenkorb"
          "admin.theme.preview.references.checkout" => "Checkout"
          "admin.theme.preview.references.cms_page" => "CMS-Seite"
          "admin.theme.preview.references.product_detail" => "Produktdetail"
          "admin.theme.preview.references.product_list" => "Produktliste"
          "admin.theme.preview.references.source" => "Import-Sandbox"
          "admin.theme.preview.references.start" => "Start"
          "admin.theme.preview.render_errors" => "Render-Fehler:"
          "admin.theme.preview.slug" => "Slug:"
          "admin.theme.preview.soft_warnings" => "Hinweise:"
          "admin.theme.preview.source" => "Quelle:"
          "admin.theme.preview.source_title" => "Theme-Quelle"
          "admin.theme.preview.status" => "Status:"
          "admin.theme.preview.templates_empty" => "Für diese Version wurden noch keine Template-Dateien registriert."
          "admin.theme.preview.templates_headers.key" => "Template-Key"
          "admin.theme.preview.templates_headers.origin" => "Quelle"
          "admin.theme.preview.templates_headers.path" => "Dateipfad"
          "admin.theme.preview.templates_title" => "Erkannte Templates"
          "admin.theme.wizard.display_name_placeholder" => "z. B. Wede Soft Live-Abbild oder Avanta ZIP"
          "admin.theme.wizard.heading" => "Theme Import Wizard"
          "admin.theme.wizard.page_title" => "Theme Import Wizard"
          "admin.theme.wizard.pipeline.analysis" => "Analysebericht"
          "admin.theme.wizard.pipeline.analysis_help" => "Analyzer und Normalizer erzeugen Bericht, Partials, Asset-Manifest, Slots und Mapping-Vorschläge."
          "admin.theme.wizard.pipeline.mapping" => "Mapping-Assistent"
          "admin.theme.wizard.pipeline.mapping_help" => "Nach erfolgreichem Import öffnet der Wizard direkt die Mapping-Seite der neuen Theme-Version."
          "admin.theme.wizard.pipeline.raw_import" => "Rohimport"
          "admin.theme.wizard.pipeline.raw_import_help" => "Connectoren holen HTML, ZIP oder WordPress-Dateien und speichern das unveränderte Quellpaket."
          "admin.theme.wizard.pipeline.validate_source" => "Quelle prüfen"
          "admin.theme.wizard.pipeline.validate_source_help" => "Pflichtfelder, URL-Format, Upload-Limit und Quellstruktur werden vor dem Import geprüft."
          "admin.theme.wizard.sources.html_zip.description" => "Importiert ein HTML/Bootstrap-ZIP, erkennt Einstiegsdateien, Partials und Mapping-Vorschläge."
          "admin.theme.wizard.sources.live_site.description" => "Spiegelt eine echte Website inklusive HTML, Texten, Bildern, Styles, Assets und nativer CMS-Vorbereitung."
          "admin.theme.wizard.sources.wordpress_zip.description" => "Prüft ein WordPress-Theme-ZIP, liest Templates und normalisiert klassische sowie Block-Theme-Strukturen."
          "admin.theme.wizard.steps.pipeline" => "Analyse und Übergabe"
          "admin.theme.wizard.steps.source" => "Quelle wählen"
          "admin.theme.wizard.steps.validate" => "Quelle validieren"
          "admin.theme.wizard.submit" => "Rohimport starten und Mapping öffnen"
          "admin.theme.wizard.subtitle" => "Quelle wählen, Eingaben validieren, Rohimport starten und direkt in Analyse, Normalisierung und Mapping wechseln."
          "admin.theme.wizard.validation.html" => "Das Archiv muss ein ZIP sein. Nach dem Entpacken werden HTML-Einstiege, Assets, Partials und Pflicht-Slots erkannt."
          "admin.theme.wizard.validation.live" => "Die URL wird vor dem Import normalisiert und nur über http/https verarbeitet. Danach folgen Asset-Spiegelung, Analyse, Normalisierung und Mapping."
          "admin.theme.wizard.validation.wordpress" => "Das Archiv muss ein WordPress-Theme-ZIP mit style.css und Theme-Name sein. Danach werden Templates, optionale Slots und Mapping-Ziele vorbereitet."
          "admin.theme.wordpress.archive_help" => "Erwartet wird ein WordPress-Theme-ZIP mit style.css im Wurzelverzeichnis und einem Theme Name Header."
          "admin.theme.wordpress.archive_label" => "WordPress-ZIP"
          "admin.theme.wordpress.heading" => "WordPress-Theme importieren"
          "admin.theme.wordpress.name_placeholder" => "z. B. Magazin Theme"
          "admin.theme.wordpress.page_title" => "WordPress-Theme importieren"
          "admin.theme.wordpress.submit" => "WordPress-Import starten"
          "admin.theme.wordpress.subtitle" => "Phase 5: Theme-ZIP prüfen, WordPress-Struktur übernehmen, danach Mapping-Assistent."
          "admin.translation.actions.back" => "Zurück"
          "admin.translation.actions.cancel" => "Abbrechen"
          "admin.translation.actions.create" => "Übersetzung anlegen"
          "admin.translation.actions.delete" => "Löschen"
          "admin.translation.actions.edit" => "Bearbeiten"
          "admin.translation.actions.help" => "Hilfe"
          "admin.translation.actions.save" => "Speichern"
          "admin.translation.actions.show" => "Anzeigen"
          "admin.translation.form.create_heading" => "Übersetzung anlegen"
          "admin.translation.form.create_page_title" => "Übersetzung anlegen"
          "admin.translation.form.domain" => "Domain"
          "admin.translation.form.domain_help" => "Standardmäßig messages. Nur abweichen, wenn das Modul bewusst eine andere Domain nutzt."
          "admin.translation.form.edit_heading" => "Übersetzung bearbeiten"
          "admin.translation.form.edit_page_title" => "Übersetzung bearbeiten"
          "admin.translation.form.locale" => "Locale"
          "admin.translation.form.locale_help" => "Sprachcode, zum Beispiel de oder en."
          "admin.translation.form.panel_title" => "Formular"
          "admin.translation.form.subtitle" => "Pflege Locale, Domain, Key und Value einheitlich im Katalog."
          "admin.translation.form.translation_key" => "Key"
          "admin.translation.form.translation_key_help" => "Stabiler Schlüssel, zum Beispiel admin.translation.actions.save."
          "admin.translation.form.translation_value" => "Value"
          "admin.translation.form.translation_value_help" => "Sichtbarer Text für die gewählte Sprache."
          "admin.translation.help_index.card_subtitle" => "Locale, Domain, Keys, DB-Katalog"
          "admin.translation.help_index.card_title" => "Übersetzungen"
          "admin.translation.help_index.table_description" => "DB-Übersetzungskatalog verwalten"
          "admin.translation.help_index.table_label" => "Übersetzungen"
          "admin.translation.help.example_label" => "Beispiel:"
          "admin.translation.help.field_column" => "Feld"
          "admin.translation.help.fields_title" => "Felder"
          "admin.translation.help.fields.domain" => "Katalogbereich, standardmäßig <code>messages</code>"
          "admin.translation.help.fields.key" => "Stabiler Schlüssel wie <code>admin.translation.actions.save</code>"
          "admin.translation.help.fields.locale" => "Sprache wie <code>de</code> oder <code>en</code>"
          "admin.translation.help.fields.value" => "Der sichtbare Text für diese Sprache"
          "admin.translation.help.function_column" => "Funktion"
          "admin.translation.help.meaning_column" => "Bedeutung"
          "admin.translation.help.method_column" => "Methode"
          "admin.translation.help.navigation_title" => "Navigation"
          "admin.translation.help.navigation.fields" => "Felder"
          "admin.translation.help.navigation.overview" => "Überblick"
          "admin.translation.help.navigation.routes" => "Routen"
          "admin.translation.help.navigation.rules" => "Regeln"
          "admin.translation.help.navigation.workflow" => "Workflow"
          "admin.translation.help.open_module" => "Zum Modul"
          "admin.translation.help.overview_note" => "Die Oberfläche ist für benutzerseitige Texte gedacht. Technische Kennungen, Action-Namen oder intern ausgewertete Strings gehören nicht in diesen Katalog."
          "admin.translation.help.overview_text" => "Die Übersetzungsverwaltung pflegt den zentralen DB-Katalog für UI-Texte. Ein Eintrag wird immer über <strong>Locale</strong>, <strong>Domain</strong> und <strong>Key</strong> eindeutig bestimmt."
          "admin.translation.help.overview_title" => "Überblick"
          "admin.translation.help.routes_title" => "Routen"
          "admin.translation.help.routes.create" => "Neue Übersetzung anlegen"
          "admin.translation.help.routes.delete" => "Eintrag löschen"
          "admin.translation.help.routes.edit" => "Bestehende Übersetzung bearbeiten"
          "admin.translation.help.routes.list" => "Liste aller Übersetzungen"
          "admin.translation.help.routes.show" => "Detailansicht"
          "admin.translation.help.rules_title" => "Regeln"
          "admin.translation.help.rules.duplicates" => "Neue Einträge mit identischer Kombination werden im Formular blockiert."
          "admin.translation.help.rules.prune_scope" => "Bereinigt werden nur Einträge innerhalb des jeweils synchronisierten Prefixes."
          "admin.translation.help.rules.unique" => "Locale, Domain und Key sind zusammen eindeutig."
          "admin.translation.help.title" => "Hilfe: Übersetzungen"
          "admin.translation.help.workflow_title" => "Workflow"
          "admin.translation.help.workflow.step1" => "Texte modulweise in versionierten YAML-Dateien unter <code>translations/</code> pflegen."
          "admin.translation.help.workflow.step2" => "Per Import-Befehl in die Datenbank synchronisieren."
          "admin.translation.help.workflow.step3" => "Nur den betroffenen Prefix mit <code>--prune-missing</code> bereinigen."
          "admin.translation.index.delete_confirm" => "Übersetzung "%key%" wirklich löschen?"
          "admin.translation.index.delete_modal.title" => "Löschen bestätigen"
          "admin.translation.index.empty" => "Keine Übersetzungen gefunden."
          "admin.translation.index.empty_filtered" => "Keine Übersetzungen für die aktuelle Suche gefunden."
          "admin.translation.index.filters.active" => "Filter aktiv"
          "admin.translation.index.filters.all_domains" => "Alle Domains"
          "admin.translation.index.filters.all_locales" => "Alle Locales"
          "admin.translation.index.filters.domain" => "Domain filtern"
          "admin.translation.index.filters.locale" => "Locale filtern"
          "admin.translation.index.filters.reset" => "Zurücksetzen"
          "admin.translation.index.filters.search" => "Suche"
          "admin.translation.index.filters.submit" => "Anzeigen"
          "admin.translation.index.heading" => "Übersetzungen"
          "admin.translation.index.list_title" => "Übersetzungsliste"
          "admin.translation.index.page_title" => "Übersetzungen"
          "admin.translation.index.pagination.next" => "Weiter"
          "admin.translation.index.pagination.page" => "Seite %page% von %pages%"
          "admin.translation.index.pagination.per_page" => "Einträge pro Seite"
          "admin.translation.index.pagination.previous" => "Zurück"
          "admin.translation.index.pagination.results" => "Zeige %from%-%to% von %total% Einträgen"
          "admin.translation.index.search_placeholder" => "Nach Locale, Domain, Key oder Value suchen"
          "admin.translation.index.subtitle" => "Pflege Locale, Domain, Key und Value zentral im Übersetzungskatalog."
          "admin.translation.notifications.created" => "Übersetzung wurde angelegt."
          "admin.translation.notifications.deleted" => "Übersetzung wurde gelöscht."
          "admin.translation.notifications.duplicate_identity" => "Für diese Kombination aus Locale, Domain und Key existiert bereits ein Eintrag."
          "admin.translation.notifications.updated" => "Übersetzung wurde gespeichert."
          "admin.translation.show.heading" => "Übersetzung anzeigen"
          "admin.translation.show.page_title" => "Übersetzung anzeigen"
          "admin.translation.show.panel_title" => "Details"
          "admin.translation.show.subtitle" => "Detailansicht eines einzelnen Übersetzungseintrags."
          "admin.translation.table.actions" => "Aktionen"
          "admin.translation.table.domain" => "Domain"
          "admin.translation.table.key" => "Key"
          "admin.translation.table.locale" => "Locale"
          "admin.translation.table.value" => "Value"
          "admin.user_management.actions.apply" => "Anwenden"
          "admin.user_management.actions.back" => "Zurück"
          "admin.user_management.actions.help" => "Hilfe"
          "admin.user_management.actions.new_user" => "Neuer Benutzer"
          "admin.user_management.actions.open" => "Öffnen"
          "admin.user_management.email_lookup.backend_user_label" => "Backend-Benutzer"
          "admin.user_management.email_lookup.free" => "E-Mail ist aktuell frei"
          "admin.user_management.email_lookup.hint_label" => "Hinweis"
          "admin.user_management.email_lookup.status_label" => "Status"
          "admin.user_management.email_lookup.taken" => "E-Mail bereits vorhanden"
          "admin.user_management.email_lookup.unavailable" => "E-Mail-Prüfung derzeit nicht verfügbar"
          "admin.user_management.form.change_password_title" => "Passwort ändern"
          "admin.user_management.form.confirm_password" => "Passwort bestätigen"
          "admin.user_management.form.create_title" => "Neuer Benutzer"
          "admin.user_management.form.current_password" => "Aktuelles Passwort"
          "admin.user_management.form.edit_title" => "Benutzer bearbeiten"
          "admin.user_management.form.email_lookup_hint" => "Nach vollständiger Eingabe wird sofort auf vorhandene Backend-Benutzer geprüft."
          "admin.user_management.form.fix_inputs_body" => "Markierte Felder enthalten Fehler."
          "admin.user_management.form.fix_inputs_title" => "Bitte Eingaben korrigieren:"
          "admin.user_management.form.force_password_change" => "Passwort nach der ersten Anmeldung ändern?"
          "admin.user_management.form.legacy_admin" => "Legacy Admin (nur für Altfälle)"
          "admin.user_management.form.new_password" => "Neues Passwort"
          "admin.user_management.form.not_blank" => "Darf nicht leer sein"
          "admin.user_management.form.panel_title" => "Formular"
          "admin.user_management.form.password_mismatch" => "Die neuen Passwörter müssen identisch sein."
          "admin.user_management.form.password_strength" => "Mindestens 8 Zeichen mit Großbuchstabe, Kleinbuchstabe, Zahl und Sonderzeichen verwenden."
          "admin.user_management.form.profile" => "Wählen Sie ein Profil aus *"
          "admin.user_management.form.remove_direct_role" => "Direktrolle entfernen"
          "admin.user_management.form.reset_password_title" => "Passwort zurücksetzen"
          "admin.user_management.form.role" => "Rolle"
          "admin.user_management.form.role_help" => "Feingranulare Berechtigungen kommen aus dem zugewiesenen Profil. Direktrollen nur für Ausnahmen verwenden."
          "admin.user_management.form.role_placeholder" => "Bitte wählen"
          "admin.user_management.form.super_admin_direct" => "Super Admin (direkt)"
          "admin.user_management.help_index.card_subtitle" => "Backend-Logins, Profile, Direktrollen"
          "admin.user_management.help_index.card_title" => "Admin-Benutzer"
          "admin.user_management.help_index.table_description" => "Backend-Benutzer und Rechte verwalten"
          "admin.user_management.help_index.table_label" => "Admin-Benutzer"
          "admin.user_management.help.bulk_title" => "Bulk-Aktionen"
          "admin.user_management.help.bulk.step1" => "Gewünschte Benutzer in der Liste markieren."
          "admin.user_management.help.bulk.step2" => "Gruppenaktion auswählen, zum Beispiel deaktivieren oder löschen."
          "admin.user_management.help.bulk.step3" => "Aktion ausführen und die Rückmeldung prüfen."
          "admin.user_management.help.function_column" => "Funktion"
          "admin.user_management.help.method_column" => "Methode"
          "admin.user_management.help.navigation_title" => "Navigation"
          "admin.user_management.help.navigation.bulk" => "Bulk-Aktionen"
          "admin.user_management.help.navigation.overview" => "Überblick"
          "admin.user_management.help.navigation.passwords" => "Passwörter"
          "admin.user_management.help.navigation.profiles" => "Profile & Rollen"
          "admin.user_management.help.navigation.routes" => "Routen"
          "admin.user_management.help.open_module" => "Zum Modul"
          "admin.user_management.help.overview_text" => "Das Modul verwaltet <strong>Admin-Benutzer</strong> für das Backend. Diese Konten melden sich im Admin an und erhalten ihre Berechtigungen primär über zugewiesene Profile."
          "admin.user_management.help.overview_title" => "Überblick"
          "admin.user_management.help.passwords_title" => "Passwörter"
          "admin.user_management.help.passwords.create" => "Neue Admin-Benutzer setzen ihr Passwort beim Anlegen über das Formular."
          "admin.user_management.help.passwords.initial_change" => "Optional kann eine Passwortänderung nach der ersten Anmeldung erzwungen werden."
          "admin.user_management.help.passwords.reset" => "Bestehende Passwörter können über die Reset-Passwort-Seite neu gesetzt werden."
          "admin.user_management.help.profiles_title" => "Profile & Rollen"
          "admin.user_management.help.profiles.direct_roles" => "Direktrollen sind nur für Ausnahmen gedacht."
          "admin.user_management.help.profiles.legacy_role" => "Die Legacy-Rolle ROLE_ADMIN nur für Altfälle verwenden."
          "admin.user_management.help.profiles.profile_priority" => "Profile steuern die feingranularen Rechte im Backend."
          "admin.user_management.help.routes_title" => "Routen"
          "admin.user_management.help.routes.bulk" => "Gruppenaktion ausführen"
          "admin.user_management.help.routes.create" => "Neuen Benutzer anlegen"
          "admin.user_management.help.routes.edit" => "Bestehenden Benutzer bearbeiten"
          "admin.user_management.help.routes.list" => "Benutzerliste"
          "admin.user_management.help.routes.reset_password" => "Passwort zurücksetzen"
          "admin.user_management.help.separation_note" => "<strong>Strikte Trennung:</strong> Admin-Benutzer und Shop-Benutzer sind getrennte Welten und dürfen nie vermischt werden."
          "admin.user_management.help.title" => "Hilfe: Admin-Benutzer"
          "admin.user_management.list.columns.delete" => "Löschen"
          "admin.user_management.list.columns.edit" => "Bearbeiten"
          "admin.user_management.list.columns.email" => "E-Mail"
          "admin.user_management.list.columns.name" => "Vollständiger Name"
          "admin.user_management.list.columns.status" => "Status"
          "admin.user_management.list.columns.username" => "Benutzername"
          "admin.user_management.list.page_title" => "Benutzer"
          "admin.user_management.list.reset_password" => "Passwort zurücksetzen"
          "admin.user_management.list.subtitle" => "Benutzerkonten, Rollen und Aktivitätsstatus verwalten."
          "admin.user_management.notifications.created" => "Benutzer wurde angelegt."
          "admin.user_management.notifications.current_password_invalid" => "Das aktuelle Passwort ist nicht korrekt."
          "admin.user_management.notifications.fix_errors" => "Bitte markierte Felder prüfen und Eingaben korrigieren."
          "admin.user_management.notifications.password_changed" => "Passwort wurde geändert."
          "admin.user_management.notifications.password_reset_success" => "Passwort wurde geändert."
          "admin.user_management.notifications.updated" => "Benutzer wurde gespeichert."
          "admin.widget.form.actions.back" => "Zurück"
          "admin.widget.form.actions.cancel" => "Abbrechen"
          "admin.widget.form.actions.help" => "CMS-Hilfe"
          "admin.widget.form.actions.save" => "Speichern"
          "admin.widget.form.fields.name" => "Name"
          "admin.widget.form.fields.placeholder" => "Platzhalter"
          "admin.widget.form.fields.template_content" => "Twig-Template-Inhalt"
          "admin.widget.form.help.placeholder" => "Diesen Schlüssel verwendest du im Layout zur Ausgabe des Widgets."
          "admin.widget.form.help.template_content" => "Twig-Markup für die Ausgabe des Widget-Inhalts."
          "admin.widget.form.meta_title_edit" => "Widget bearbeiten"
          "admin.widget.form.meta_title_new" => "Widget anlegen"
          "admin.widget.form.page_subtitle_edit" => "Bearbeite Inhalte und Platzhalter des bestehenden Widgets."
          "admin.widget.form.page_subtitle_new" => "Erstelle neue Inhalte für Widget-Platzhalter im Frontend."
          "admin.widget.form.page_title_edit" => "Widget bearbeiten"
          "admin.widget.form.page_title_new" => "Widget anlegen"
          "admin.widget.form.panel_title" => "Formular"
          "admin.widget.index.actions.delete" => "Löschen"
          "admin.widget.index.actions.edit" => "Bearbeiten"
          "admin.widget.index.actions.help" => "CMS-Hilfe"
          "admin.widget.index.actions.new" => "Neues Widget"
          "admin.widget.index.delete_confirm" => "Widget "%name%" wirklich löschen?"
          "admin.widget.index.headers.actions" => "Aktionen"
          "admin.widget.index.headers.name" => "Name"
          "admin.widget.index.headers.placeholder" => "Platzhalter"
          "admin.widget.index.list_count" => "%count% Einträge"
          "admin.widget.index.list_title" => "Widget-Liste"
          "admin.widget.index.meta_title" => "Widgets"
          "admin.widget.index.page_subtitle" => "Verwalte dynamische Platzhalter-Inhalte für das Frontend."
          "admin.widget.index.page_title" => "Widgets"
          "admin.widget.index.values.empty" => "Keine Widgets vorhanden."
          "admin.widget.notifications.created" => "Widget wurde angelegt."
          "admin.widget.notifications.deleted" => "Widget wurde gelöscht."
          "admin.widget.notifications.invalid_csrf" => "Ungültiges CSRF-Token."
          "admin.widget.notifications.not_found" => "Widget wurde nicht gefunden."
          "admin.widget.notifications.updated" => "Widget wurde gespeichert."
          "backend.alertMessage.activ" => "aktiviert"
          "backend.alertMessage.create" => "erstellt"
          "backend.alertMessage.deactiv" => "deaktiviert"
          "backend.alertMessage.delete" => "gelöscht"
          "backend.alertMessage.error" => "Fehler"
          "backend.alertMessage.reset" => "zurückgesetzt"
          "backend.alertMessage.send" => "gesendet"
          "backend.alertMessage.success" => "Erfolgreich"
          "backend.alertMessage.update" => "aktualisiert"
          "backend.btnFields.add" => "hinzufügen"
          "backend.btnFields.back" => "zurück"
          "backend.btnFields.cancel" => "abbrechen"
          "backend.btnFields.close" => "schließen"
          "backend.btnFields.delete" => "löschen"
          "backend.btnFields.edit" => "bearbeiten"
          "backend.btnFields.reset" => "zurücksetzen"
          "backend.btnFields.save" => "speichern"
          "backend.btnFields.search" => "suchen"
          "backend.btnFields.send" => "senden"
          "backend.builder.ResetPasswordRequestFormType.message" => "Bitte E-Mail eintragen"
          "backend.errorMessages.changePasswordAfterFirstLogin" => "Passwort nach dem ersten Login ändern"
          "backend.errorMessages.notEmpty" => "Darf nicht leer sein"
          "backend.errorMessages.notFound" => "nicht gefunden"
          "backend.errorMessages.notFoundMessage" => "Die angeforderte Seite wurde nicht gefunden."
          "backend.errorMessages.passwordNotMatch" => "Passwörter stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchConfirm" => "Die Passwörter stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchConfirmMessage" => "Die Passwörter stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchCurrent" => "Das aktuelle Passwort stimmt nicht überein"
          "backend.errorMessages.passwordNotMatchCurrentConfirm" => "Das aktuelle Passwort und das bestätigte Passwort stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchCurrentConfirmMessage" => "Das aktuelle Passwort und das bestätigte Passwort stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchCurrentMessage" => "Das aktuelle Passwort stimmt nicht überein"
          "backend.errorMessages.passwordNotMatchCurrentNew" => "Das aktuelle Passwort und das neue Passwort dürfen nicht identisch sein"
          "backend.errorMessages.passwordNotMatchCurrentNewMessage" => "Das aktuelle Passwort und das neue Passwort dürfen nicht identisch sein"
          "backend.errorMessages.passwordNotMatchMessage" => "Die Passwörter stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchNew" => "Die neuen Passwörter stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchNewConfirm" => "Das neue Passwort und das bestätigte Passwort stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchNewConfirmMessage" => "Das neue Passwort und das bestätigte Passwort stimmen nicht überein"
          "backend.errorMessages.passwordNotMatchNewMessage" => "Die neuen Passwörter stimmen nicht überein"
          "backend.errorMessages.passwordVerify" => "Passwort bestätigen"
          "backend.global.an_unexpected_error" => "Ein unerwarteter Fehler ist aufgetreten"
          "backend.global.change_my_password" => "ändere dein Passwort"
          "backend.global.choice_action" => "Auswahl"
          "backend.global.error" => "Fehler"
          "backend.global.leave_impersonate" => "Identitätswechsel verlassen"
          "backend.global.logout" => "Abmelden"
          "backend.global.must_not_be_empty" => "Darf nicht leer sein"
          "backend.global.no_item_selected" => "kein Produkt ausgewählt"
          "backend.global.please_confirm" => "Bitte bestätigen Sie Ihre Aktion?"
          "backend.global.save" => "Speichern"
          "backend.global.success" => "Erfolgreich"
          "backend.global.welcome" => "willkommen"
          "backend.global.you_are_logged" => "Sie sind angemeldet als"
          "backend.inputFieldLabel.address" => "Adresse"
          "backend.inputFieldLabel.aufsichtsbehoerde" => "Aufsichtsbehörde"
          "backend.inputFieldLabel.berufsbezeichnung" => "Berufsbezeichnung"
          "backend.inputFieldLabel.berufsrechtlicheRegelungen" => "Berufsrechtlichen Regelungen"
          "backend.inputFieldLabel.content" => "Inhalt"
          "backend.inputFieldLabel.description" => "Beschreibung"
          "backend.inputFieldLabel.domain" => "Domain"
          "backend.inputFieldLabel.email" => "E-Mail"
          "backend.inputFieldLabel.faxnumber" => "Fax"
          "backend.inputFieldLabel.image" => "Bild"
          "backend.inputFieldLabel.inhaber" => "Inhaber"
          "backend.inputFieldLabel.kammer" => "Kammer"
          "backend.inputFieldLabel.keyword" => "Schlüsselwörter"
          "backend.inputFieldLabel.message" => "Nachricht"
          "backend.inputFieldLabel.metaDescription" => "Meta Beschreibung"
          "backend.inputFieldLabel.metaKeyword" => "Meta Schlüsselwörter"
          "backend.inputFieldLabel.name" => "Name"
          "backend.inputFieldLabel.object" => "Betreff"
          "backend.inputFieldLabel.phonenumber" => "Telefon"
          "backend.inputFieldLabel.rechtsform" => "Rechtsform"
          "backend.inputFieldLabel.surname" => "Nachname"
          "backend.inputFieldLabel.title" => "Titel"
          "backend.inputFieldLabel.ustIdNr" => "USt-IdNr"
          "backend.menu.blog" => "Blog"
          "backend.menu.breakfast" => "Frühstück"
          "backend.menu.categories" => "Kategorien"
          "backend.menu.contact" => "Kontakt"
          "backend.menu.faq" => "FAQ"
          "backend.menu.general" => "Allgemein"
          "backend.menu.history" => "Historie"
          "backend.menu.home" => "Dashbord"
          "backend.menu.hotelRoomPrice" => "Zimmer Preise"
          "backend.menu.inbox" => "Posteingang"
          "backend.menu.manage" => "Verwalten"
          "backend.menu.page" => "Seiten"
          "backend.menu.profil" => "Benutzer profile"
          "backend.menu.roomPriceContent" => "Zimmer Content"
          "backend.menu.service" => "Service"
          "backend.menu.settings" => "Einstellung"
          "backend.menu.story" => "Geschichte"
          "backend.menu.user" => "Benutzer"
          "backend.role.choice_role" => "änderung der Benutzer Rechte"
          "backend.title.blog" => "Blog"
          "backend.title.categories" => "Kategorien"
          "backend.title.contact" => "Kontakt"
          "backend.title.dashboard" => "Dashboard"
          "backend.title.faq" => "FAQ"
          "backend.title.general" => "Allgemein"
          "backend.title.history" => "Historie"
          "backend.title.inbox" => "Posteingang"
          "backend.title.manage" => "Verwalten"
          "backend.title.process" => "Bearbeiten"
          "backend.title.profil" => "Benutzer profile"
          "backend.title.resetPassword" => "Passwort zurücksetzen"
          "backend.title.roomPriceContent" => "Zimmer content"
          "backend.title.settings" => "Einstellungen"
          "backend.title.user" => "Benutzer"
          "backend.user.Activate" => "Aktivieren"
          "backend.user.add_user" => "Benutzer anlegen"
          "backend.user.cancel" => "Abbrechen"
          "backend.user.changed_password" => "Passwort geändert"
          "backend.user.changer_my_password" => "ändere mein Passwort"
          "backend.user.changer_password" => "Passwort ändern"
          "backend.user.confirm_password" => "Passwort wiederholen"
          "backend.user.current_password" => "aktuelles Passwort"
          "backend.user.deactivate" => "Deaktivieren"
          "backend.user.delete" => "Löschen"
          "backend.user.edit_user" => "Benutzer bearbeiten"
          "backend.user.email" => "E-Mail"
          "backend.user.group_actions" => "Auswahl"
          "backend.user.listing" => "Auflistung"
          "backend.user.modifier" => "Bearbeiten"
          "backend.user.modify_user" => "Benutzer bearbeiten"
          "backend.user.name" => "Alias"
          "backend.user.new_passwod_must_be" => "Die neuen Passwörter müssen identisch sein."
          "backend.user.new_password" => "neues Passwort"
          "backend.user.new_user" => "neuen Benutzer anlegen"
          "backend.user.password" => "Passwort"
          "backend.user.register" => "Registrieren"
          "backend.user.remember_password" => "wiederholen Sie Ihr aktuelles Passwort"
          "backend.user.status" => "Status"
          "backend.user.user_listing" => "Auflistung Benutzer"
          "backend.user.username" => "Benutzername"
          "frontend.arrive.train" => "Anfahrt"
          "frontend.arrive.travellers" => "für Bahnreisende"
          "frontend.b2b.quote.actions.activate" => "Aktivieren"
          "frontend.b2b.quote.actions.active" => "Aktiv"
          "frontend.b2b.quote.actions.status_details" => "Statusdetails"
          "frontend.b2b.quote.actions.submit" => "B2B-Antrag senden"
          "frontend.b2b.quote.actions.update_submit" => "Antrag aktualisieren und senden"
          "frontend.b2b.quote.actions.view_status" => "Bearbeitungsstatus ansehen"
          "frontend.b2b.quote.benefits.net_prices.text" => "Einkauf ohne MwSt. bei vorhandener USt-ID"
          "frontend.b2b.quote.benefits.net_prices.title" => "Netto-Preise"
          "frontend.b2b.quote.benefits.personal_support.text" => "Dedizierter Ansprechpartner"
          "frontend.b2b.quote.benefits.personal_support.title" => "Persönliche Betreuung"
          "frontend.b2b.quote.benefits.priority_shipping.text" => "Bevorzugte Bearbeitung Ihrer Aufträge"
          "frontend.b2b.quote.benefits.priority_shipping.title" => "Prioritäts-Versand"
          "frontend.b2b.quote.benefits.quantity_discounts.text" => "Sonderkonditionen ab Staffelmengen"
          "frontend.b2b.quote.benefits.quantity_discounts.title" => "Mengenrabatte"
          "frontend.b2b.quote.edit_mode_notice" => "Sie bearbeiten Ihren bestehenden B2B-Antrag. Mit dem Absenden wird Ihr Antrag aktualisiert und erneut eingereicht."
          "frontend.b2b.quote.errors.address_review" => "Bitte geben Sie eine eindeutige, realistische Firmenadresse an."
          "frontend.b2b.quote.errors.invalid_email" => "Bitte eine gültige E-Mail-Adresse angeben."
          "frontend.b2b.quote.errors.rate_limit" => "Zu viele B2B-Anfragen in kurzer Zeit."
          "frontend.b2b.quote.errors.required" => "Bitte alle Pflichtfelder ausfüllen."
          "frontend.b2b.quote.flashes.cancel_invalid_csrf" => "Ungültige Anfrage. Bitte erneut versuchen."
          "frontend.b2b.quote.flashes.cancelled" => "Ihr B2B-Antrag wurde zurückgezogen. Sie können ihn bei Bedarf später erneut bearbeiten und absenden."
          "frontend.b2b.quote.flashes.existing_request" => "Es existiert bereits eine laufende B2B-Anfrage."
          "frontend.b2b.quote.flashes.group_activated" => "B2B-Kondition wurde aktiviert."
          "frontend.b2b.quote.flashes.group_not_allowed" => "Nur die für Ihr Konto freigegebene B2B-Gruppe kann aktiviert werden."
          "frontend.b2b.quote.flashes.group_not_approved" => "B2B-Konditionen können erst nach genehmigter Anfrage aktiviert werden."
          "frontend.b2b.quote.flashes.no_active_request" => "Es gibt keinen laufenden Antrag, der zurückgezogen werden kann."
          "frontend.b2b.quote.flashes.submitted" => "Anfrage erfolgreich gesendet. Sie können den Bearbeitungsstatus jetzt einsehen."
          "frontend.b2b.quote.flashes.updated" => "Antrag aktualisiert und erneut eingereicht. Sie können den Bearbeitungsstatus jetzt einsehen."
          "frontend.b2b.quote.flashes.view_mode_locked" => "Netto/Brutto-Umschaltung für B2B ist erst nach Freigabe verfügbar."
          "frontend.b2b.quote.form.address" => "Straße und Hausnummer"
          "frontend.b2b.quote.form.address_placeholder" => "Musterstraße 12"
          "frontend.b2b.quote.form.annual_volume.label" => "Erwartetes Jahresvolumen"
          "frontend.b2b.quote.form.annual_volume.options.2000050000" => "20.000 - 50.000 %currency%"
          "frontend.b2b.quote.form.annual_volume.options.50000100000" => "50.000 - 100.000 %currency%"
          "frontend.b2b.quote.form.annual_volume.options.500020000" => "5.000 - 20.000 %currency%"
          "frontend.b2b.quote.form.annual_volume.options.over_100000" => "über 100.000 %currency%"
          "frontend.b2b.quote.form.annual_volume.options.under_5000" => "unter 5.000 %currency%"
          "frontend.b2b.quote.form.annual_volume.placeholder" => "Bitte wählen"
          "frontend.b2b.quote.form.city" => "Ort"
          "frontend.b2b.quote.form.city_placeholder" => "Musterstadt"
          "frontend.b2b.quote.form.company_name" => "Firmenname"
          "frontend.b2b.quote.form.company_name_placeholder" => "Musterfirma GmbH"
          "frontend.b2b.quote.form.company_type.label" => "Unternehmensform"
          "frontend.b2b.quote.form.company_type.options.ag" => "AG"
          "frontend.b2b.quote.form.company_type.options.freelancer" => "Freiberufler/in"
          "frontend.b2b.quote.form.company_type.options.gmbh" => "GmbH"
          "frontend.b2b.quote.form.company_type.options.gmbh_co_kg" => "GmbH & Co. KG"
          "frontend.b2b.quote.form.company_type.options.ohg_kg" => "OHG / KG"
          "frontend.b2b.quote.form.company_type.options.other" => "Sonstiges"
          "frontend.b2b.quote.form.company_type.options.sole_proprietorship" => "Einzelunternehmen"
          "frontend.b2b.quote.form.company_type.options.ug" => "UG (haftungsbeschränkt)"
          "frontend.b2b.quote.form.company_type.placeholder" => "Bitte wählen"
          "frontend.b2b.quote.form.consent_link" => "Datenschutzerklärung"
          "frontend.b2b.quote.form.consent_prefix" => "Ich habe die"
          "frontend.b2b.quote.form.consent_suffix" => "gelesen und stimme der Verarbeitung meiner Daten zu."
          "frontend.b2b.quote.form.contact_name" => "Ansprechpartner"
          "frontend.b2b.quote.form.contact_name_placeholder" => "Max Mustermann"
          "frontend.b2b.quote.form.country" => "Land"
          "frontend.b2b.quote.form.email" => "E-Mail"
          "frontend.b2b.quote.form.email_placeholder" => "einkauf@meinefirma.de"
          "frontend.b2b.quote.form.industry.label" => "Branche"
          "frontend.b2b.quote.form.industry.options.construction_crafts" => "Baugewerbe / Handwerk"
          "frontend.b2b.quote.form.industry.options.education_nonprofit" => "Bildung / Non-Profit"
          "frontend.b2b.quote.form.industry.options.healthcare" => "Gesundheit / Pflege"
          "frontend.b2b.quote.form.industry.options.hospitality" => "Gastronomie / Hotellerie"
          "frontend.b2b.quote.form.industry.options.industry_production" => "Industrie / Produktion"
          "frontend.b2b.quote.form.industry.options.other" => "Sonstiges"
          "frontend.b2b.quote.form.industry.options.public_sector" => "Öffentliche Verwaltung"
          "frontend.b2b.quote.form.industry.options.services" => "Dienstleistung"
          "frontend.b2b.quote.form.industry.options.trade_wholesale" => "Handel / Großhandel"
          "frontend.b2b.quote.form.industry.placeholder" => "Bitte wählen"
          "frontend.b2b.quote.form.notes" => "Nachricht / Besondere Anforderungen"
          "frontend.b2b.quote.form.notes_placeholder" => "Welche Produkte interessieren Sie? Gibt es besondere Anforderungen?"
          "frontend.b2b.quote.form.order_frequency.label" => "Bestellfrequenz"
          "frontend.b2b.quote.form.order_frequency.options.monthly" => "Monatlich"
          "frontend.b2b.quote.form.order_frequency.options.on_demand" => "Nach Bedarf"
          "frontend.b2b.quote.form.order_frequency.options.one_time" => "Einmalig / Projektbezogen"
          "frontend.b2b.quote.form.order_frequency.options.weekly" => "Wöchentlich"
          "frontend.b2b.quote.form.order_frequency.placeholder" => "Bitte wählen"
          "frontend.b2b.quote.form.phone" => "Telefon"
          "frontend.b2b.quote.form.phone_placeholder" => "+49 30 12345678"
          "frontend.b2b.quote.form.position" => "Position / Abteilung"
          "frontend.b2b.quote.form.position_placeholder" => "Einkaufsleiter"
          "frontend.b2b.quote.form.requested_group" => "Gewünschte B2B-Kondition"
          "frontend.b2b.quote.form.requested_group_help" => "Die finale Freigabe erfolgt nach Prüfung durch das Team."
          "frontend.b2b.quote.form.requested_group_placeholder" => "Bitte wählen"
          "frontend.b2b.quote.form.vat_id" => "USt-IdNr. (für Netto-Preise)"
          "frontend.b2b.quote.form.vat_id_placeholder" => "DE123456789"
          "frontend.b2b.quote.form.website" => "Website"
          "frontend.b2b.quote.form.website_placeholder" => "https://www.meinefirma.de"
          "frontend.b2b.quote.form.zip" => "PLZ"
          "frontend.b2b.quote.form.zip_placeholder" => "12345"
          "frontend.b2b.quote.hero_title" => "B2B-Registrierung"
          "frontend.b2b.quote.message_labels.address" => "Adresse"
          "frontend.b2b.quote.message_labels.annual_volume" => "Jahresvolumen"
          "frontend.b2b.quote.message_labels.company_type" => "Unternehmensform"
          "frontend.b2b.quote.message_labels.country" => "Land"
          "frontend.b2b.quote.message_labels.industry" => "Branche"
          "frontend.b2b.quote.message_labels.notes_heading" => "Nachricht"
          "frontend.b2b.quote.message_labels.order_frequency" => "Bestellfrequenz"
          "frontend.b2b.quote.message_labels.position" => "Position"
          "frontend.b2b.quote.message_labels.vat_id" => "USt-IdNr."
          "frontend.b2b.quote.message_labels.website" => "Website"
          "frontend.b2b.quote.meta_title" => "B2B-Registrierung und Angebotsanfrage"
          "frontend.b2b.quote.page_subtitle" => "Profitieren Sie von exklusiven Unternehmenskonditionen, individuellen Preisen und persönlichem Ansprechpartner."
          "frontend.b2b.quote.page_title" => "B2B-Zugang beantragen"
          "frontend.b2b.quote.price_view.gross" => "Brutto"
          "frontend.b2b.quote.price_view.net" => "Netto"
          "frontend.b2b.quote.response_time" => "Wir melden uns in der Regel innerhalb von 1-2 Werktagen bei Ihnen."
          "frontend.b2b.quote.sections.company" => "Unternehmensdaten"
          "frontend.b2b.quote.sections.contact" => "Kontaktperson"
          "frontend.b2b.quote.sections.requirements" => "Bedarfsangaben"
          "frontend.b2b.quote.sidebar.call_hours" => "Mo-Fr 9-17 Uhr"
          "frontend.b2b.quote.sidebar.call_title" => "Anruf vereinbaren"
          "frontend.b2b.quote.sidebar.conditions_locked" => "B2B-Konditionen sind aus Sicherheitsgründen erst nach genehmigter Anfrage aktivierbar."
          "frontend.b2b.quote.sidebar.conditions_title" => "B2B-Konditionen"
          "frontend.b2b.quote.sidebar.contact_text" => "Sie möchten lieber direkt sprechen?"
          "frontend.b2b.quote.sidebar.contact_title" => "Persönliche Beratung"
          "frontend.b2b.quote.sidebar.current_group" => "Gruppe:"
          "frontend.b2b.quote.sidebar.current_price_view" => "Aktuelle Preisansicht:"
          "frontend.b2b.quote.sidebar.discount_suffix" => "Rabatt"
          "frontend.b2b.quote.sidebar.email_response" => "Antwort innerhalb von 24h"
          "frontend.b2b.quote.sidebar.email_title" => "E-Mail schreiben"
          "frontend.b2b.quote.sidebar.latest_request" => "Letzter Antrag:"
          "frontend.b2b.quote.sidebar.no_groups" => "Noch keine B2B-Gruppen konfiguriert."
          "frontend.b2b.quote.sidebar.no_request" => "Es liegt noch kein B2B-Antrag vor."
          "frontend.b2b.quote.sidebar.received_at" => "Eingang:"
          "frontend.b2b.quote.sidebar.status_title" => "B2B-Status"
          "frontend.b2b.quote.status.approved" => "Genehmigt"
          "frontend.b2b.quote.status.cancelled" => "Zurückgezogen"
          "frontend.b2b.quote.status.in_review" => "In Prüfung"
          "frontend.b2b.quote.status.open" => "Offen"
          "frontend.b2b.quote.status.rejected" => "Abgelehnt"
          "frontend.b2b.status_page.actions.cancel" => "Antrag zurückziehen"
          "frontend.b2b.status_page.actions.cancel_confirm" => "Möchten Sie Ihren laufenden B2B-Antrag wirklich zurückziehen?"
          "frontend.b2b.status_page.actions.edit" => "Antrag bearbeiten"
          "frontend.b2b.status_page.actions.title" => "Aktionen"
          "frontend.b2b.status_page.actions.view_conditions" => "B2B-Konditionen ansehen"
          "frontend.b2b.status_page.current_request_title" => "Ihr aktueller Antrag"
          "frontend.b2b.status_page.fields.approved_group" => "Freigegebene Gruppe:"
          "frontend.b2b.status_page.fields.company" => "Firma:"
          "frontend.b2b.status_page.fields.contact" => "Ansprechpartner:"
          "frontend.b2b.status_page.fields.email" => "E-Mail:"
          "frontend.b2b.status_page.fields.none_selected" => "Keine Auswahl"
          "frontend.b2b.status_page.fields.requested_condition" => "Gewünschte Kondition:"
          "frontend.b2b.status_page.fields.status" => "Status:"
          "frontend.b2b.status_page.fields.submitted_at" => "Gesendet am:"
          "frontend.b2b.status_page.messages.approved" => "Ihr B2B-Antrag ist freigegeben. Sie können jetzt B2B-Konditionen aktivieren."
          "frontend.b2b.status_page.messages.cancelled" => "Ihr Antrag wurde von Ihnen zurückgezogen. Sie können ihn jederzeit über "Bearbeiten" erneut anpassen und absenden."
          "frontend.b2b.status_page.messages.in_review" => "Ihr Antrag ist in Bearbeitung. Wir melden uns in der Regel innerhalb von 1-2 Werktagen."
          "frontend.b2b.status_page.messages.none" => "Es liegt aktuell kein B2B-Antrag vor."
          "frontend.b2b.status_page.messages.rejected" => "Ihr Antrag wurde abgelehnt. Sie können eine neue Anfrage mit ergänzten Informationen senden."
          "frontend.b2b.status_page.meta_title" => "B2B Bearbeitungsstatus"
          "frontend.b2b.status_page.modal.cancel" => "Abbrechen"
          "frontend.b2b.status_page.modal.confirm" => "Zurückziehen"
          "frontend.b2b.status_page.modal.title" => "Aktion bestätigen"
          "frontend.b2b.status_page.next_steps.step_1" => "Antrag prüfen"
          "frontend.b2b.status_page.next_steps.step_2" => "Freigabe oder Rückfrage"
          "frontend.b2b.status_page.next_steps.step_3" => "B2B-Konditionen aktivieren"
          "frontend.b2b.status_page.next_steps.title" => "Nächste Schritte"
          "frontend.b2b.status_page.subtitle" => "Hier sehen Sie transparent, ob Ihr B2B-Zugang offen, in Prüfung, genehmigt oder abgelehnt ist."
          "frontend.b2b.status_page.title" => "B2B-Antrag: Bearbeitungsstatus"
          "frontend.blog.actions.edit" => "Bearbeiten"
          "frontend.blog.actions.edit_post" => "Beitrag bearbeiten"
          "frontend.blog.actions.read_more" => "Weiterlesen"
          "frontend.blog.detail.published_on" => "Veröffentlicht am %date%"
          "frontend.blog.empty.badge" => "Blog in Vorbereitung"
          "frontend.blog.empty.contact_action" => "Kontakt aufnehmen"
          "frontend.blog.empty.shop_action" => "Zum Shop"
          "frontend.blog.empty.text" => "Bis dahin finden Sie im Shop bereits alle aktuellen Produkte und erreichen uns für Rückfragen direkt über das Kontaktformular."
          "frontend.blog.empty.title" => "Neue Einblicke, Tipps und Produkt-News folgen in Kürze."
          "frontend.blog.label" => "Blog"
          "frontend.blog.meta.description" => "Alle Beiträge aus unserem Blog."
          "frontend.blog.meta.title" => "Blog"
          "frontend.breakfast.text_1" => "Jeder, der in unserem schönen NFOK übernachtet, darf sich am nächsten Tag auf ein außergewöhnlich reichhaltiges Frühstücksbuffet mit höchsten Qualitätsstandards freuen. So gestärkt starten Sie garantiert erfolgreich in Ihren Tag."
          "frontend.breakfast.text_10" => "Unser Angebot an warmen Speisen, auf Wunsch des Gastes, wie zum Beispiel: Spiegeleier"
          "frontend.breakfast.text_11" => "Am Buffet stehen Kaffee, Tee und heiße Schokolade sowie verschiedene Mineralwasser, Säfte und Tee bereit. Um Ihren Aufenthalt noch entspannter zu gestalten, bieten wir Ihnen natürlich auch die Möglichkeit, ein reichhaltiges Frühstück direkt in Ihrem Zimmer einzunehmen."
          "frontend.breakfast.text_12" => "Das reichhaltige Frühstücksbuffet steht Ihnen täglich in der Zeit von Mo.-Fr.: 07:00 bis 10:00 Uhr und Sa.-So.: 08:00 bis 10:00 Uhr."
          "frontend.breakfast.text_13" => "Für weitere Informationen, stehen Ihnen unsere freundlichen Mitarbeitenden an der Hotel- Rezeption zur Verfügung."
          "frontend.breakfast.text_2" => "Wir achten beim Einkauf besonders auf den saisonalen und regionalen Bezug der Produkte für das Frühstücksbuffet."
          "frontend.breakfast.text_3" => "Genießen Sie unser reichhaltiges Frühstücksbuffet im NFOK 35:"
          "frontend.breakfast.text_4" => "reichhaltiges Brot und Brötchenauswahl"
          "frontend.breakfast.text_5" => "Vielfältige Auswahl an Konfitüren, süße und würzige Aufstriche sowie Nutella und Honig"
          "frontend.breakfast.text_6" => "Großartige Wurst- und Käseauswahl"
          "frontend.breakfast.text_7" => "Umfassendes Angebot an Zerealien und Müslis mit Milch"
          "frontend.breakfast.text_8" => "Milchprodukte wie Joghurt- und Quark"
          "frontend.breakfast.text_9" => "Frisches Obst- und Gemüsesalate"
          "frontend.cart.actions.add_to_cart" => "In den Warenkorb"
          "frontend.cart.actions.checkout" => "Zur Kasse"
          "frontend.cart.actions.continue_shopping" => "Weiter einkaufen"
          "frontend.cart.coupon.apply" => "Anwenden"
          "frontend.cart.coupon.error" => "Coupon konnte nicht angewendet werden."
          "frontend.cart.coupon.label" => "Gutscheincode"
          "frontend.cart.coupon.placeholder" => "Code eingeben"
          "frontend.cart.coupon.success" => "Coupon erfolgreich angewendet."
          "frontend.cart.cross_sell.benefit_text" => "%label%-Vorteil:"
          "frontend.cart.cross_sell.default_label" => "Cross-Sell"
          "frontend.cart.empty.cta" => "Zum Shop"
          "frontend.cart.empty.text" => "Stöbern Sie in unserem Sortiment und fügen Sie Produkte hinzu."
          "frontend.cart.empty.title" => "Ihr Warenkorb ist leer"
          "frontend.cart.errors.cart_missing" => "Kein Warenkorb vorhanden."
          "frontend.cart.errors.item_not_found" => "Warenkorb-Position nicht gefunden."
          "frontend.cart.page_title" => "Warenkorb"
          "frontend.cart.recommendations.subtitle" => "Aktive Cross-Sell-, Up-Sell- und Bundle-Regeln aus dem Backend werden hier im Frontend ausgespielt."
          "frontend.cart.recommendations.title" => "Dazu passend"
          "frontend.cart.security_note" => "Sicher & verschlüsselt"
          "frontend.cart.summary.cross_sell_benefit" => "Cross-Sell-Vorteil"
          "frontend.cart.summary.cross_sell_hint" => "Der Cross-Sell-Vorteil ist schon in der Zwischensumme berücksichtigt und wird nicht erneut abgezogen."
          "frontend.cart.summary.discount" => "Rabatt"
          "frontend.cart.summary.discount_with_code" => "Rabatt (%code%)"
          "frontend.cart.summary.grand_total" => "Gesamt"
          "frontend.cart.summary.included_vat" => "enthaltene MwSt. (19%)"
          "frontend.cart.summary.subtotal" => "Zwischensumme"
          "frontend.cart.summary.subtotal_hint" => "Cross-Sell-Vorteile sind in dieser Zwischensumme bereits eingerechnet."
          "frontend.cart.summary.title" => "Zusammenfassung"
          "frontend.cart.summary.total_with_shipping" => "Versandkosten"
          "frontend.cart.table.no_image" => "Kein Bild"
          "frontend.cart.table.price" => "Preis"
          "frontend.cart.table.product" => "Produkt"
          "frontend.cart.table.quantity" => "Menge"
          "frontend.cart.table.remove" => "Entfernen"
          "frontend.cart.table.total" => "Summe"
          "frontend.checkout.address.city_invalid" => "Bitte geben Sie einen realistischen Ort an."
          "frontend.checkout.address.city_required" => "Bitte geben Sie einen Ort an."
          "frontend.checkout.address.country_required" => "Bitte wählen Sie ein Land aus."
          "frontend.checkout.address.country_unavailable" => "Dieses Land ist aktuell nicht für den Versand freigeschaltet."
          "frontend.checkout.address.external_invalid_response" => "Die externe Adressprüfung lieferte keine gültige Antwort."
          "frontend.checkout.address.external_unconfirmed" => "Die Adresse konnte extern nicht bestätigt werden."
          "frontend.checkout.address.external_unreachable" => "Die externe Adressprüfung war nicht erreichbar."
          "frontend.checkout.address.phone_incomplete" => "Die Telefonnummer wirkt unvollständig."
          "frontend.checkout.address.placeholder_address" => "Die Lieferadresse wirkt wie eine Platzhalteradresse."
          "frontend.checkout.address.placeholder_city" => "Der Ort wirkt wie ein Platzhalter."
          "frontend.checkout.address.postal_mismatch_de" => "PLZ und Ort passen in Deutschland nicht zusammen."
          "frontend.checkout.address.postal_unknown_de" => "Die PLZ ist in Deutschland nicht bekannt."
          "frontend.checkout.address.street_invalid" => "Bitte geben Sie eine realistische Straße mit Hausnummer oder Packstations-/Postfachadresse an."
          "frontend.checkout.address.street_required" => "Bitte geben Sie eine Straße mit Hausnummer an."
          "frontend.checkout.address.zip_invalid_country" => "Die PLZ passt nicht zum ausgewählten Land."
          "frontend.checkout.address.zip_required" => "Bitte geben Sie eine PLZ an."
          "frontend.checkout.breadcrumb.current" => "Kasse"
          "frontend.checkout.controller.address_review_warning" => "Ihre Bestellung wurde aufgenommen. Vor dem Versand prüfen wir die angegebene Adresse noch manuell."
          "frontend.checkout.controller.card_assigned" => "Die Kartenzahlung ist bereits einer anderen Bestellung zugeordnet."
          "frontend.checkout.controller.card_unconfirmed" => "Die Kartenzahlung wurde nicht erfolgreich bestätigt. Bitte prüfen Sie Ihre Zahlungsdaten."
          "frontend.checkout.controller.csrf_invalid" => "Ungültige Bestellung. Bitte versuchen Sie es erneut."
          "frontend.checkout.controller.mail_warning" => "Ihre Bestellung wurde aufgenommen, aber die Bestellbestätigung konnte derzeit nicht per E-Mail versendet werden."
          "frontend.checkout.controller.payment_invalid" => "Die gewählte Zahlungsart steht aktuell nicht zur Verfügung."
          "frontend.checkout.controller.payment_required" => "Bitte wählen Sie eine Zahlungsart."
          "frontend.checkout.controller.payment_unavailable" => "Aktuell ist keine verfügbare Zahlungsart konfiguriert."
          "frontend.checkout.controller.pickup_required" => "Mindestens ein Produkt in Ihrem Warenkorb ist nur zur Abholung verfügbar. Bitte wählen Sie Abholung im Geschäft."
          "frontend.checkout.controller.pickup_unavailable" => "Abholung ist für die aktuelle Warenkorb-Zusammenstellung nicht verfügbar."
          "frontend.checkout.controller.shipping_invalid" => "Die gewählte Versandart steht für das ausgewählte Lieferland nicht zur Verfügung."
          "frontend.checkout.controller.shipping_required" => "Bitte wählen Sie eine Versandart."
          "frontend.checkout.controller.shipping_unavailable" => "Für das ausgewählte Lieferland ist aktuell keine Versandart verfügbar."
          "frontend.checkout.coupon.applied" => "Coupon erfolgreich angewendet."
          "frontend.checkout.coupon.apply_error" => "Coupon konnte nicht angewendet werden."
          "frontend.checkout.coupon.code_required" => "Bitte geben Sie einen Gutscheincode ein."
          "frontend.checkout.coupon.empty_cart" => "Ihr Warenkorb ist leer."
          "frontend.checkout.coupon.label" => "Rabatt"
          "frontend.checkout.coupon.label_with_code" => "Rabatt (__CODE__)"
          "frontend.checkout.coupon.request_error" => "Fehler beim Anwenden des Coupons."
          "frontend.checkout.errors.summary_title" => "Bitte prüfen Sie Ihre Angaben."
          "frontend.checkout.fulfillment.pickup" => "Abholung im Geschäft"
          "frontend.checkout.fulfillment.shipping" => "Versand"
          "frontend.checkout.hero.kicker" => "Sicherer Checkout"
          "frontend.checkout.hero.subtitle" => "Adresse prüfen, Versand wählen, sicher bezahlen. Keine überflüssigen Felder, keine verwirrenden Zwischenschritte."
          "frontend.checkout.hero.title" => "Bestellung in wenigen klaren Schritten abschließen"
          "frontend.checkout.hero.trust_aria" => "Checkout Vorteile"
          "frontend.checkout.hero.trust.account" => "Kundendaten werden übernommen"
          "frontend.checkout.hero.trust.security" => "SSL-gesichert"
          "frontend.checkout.hero.trust.speed" => "Schneller Abschluss"
          "frontend.checkout.js.cardholder_fallback" => "Kunde"
          "frontend.checkout.js.stripe_confirm_error" => "Die Zahlung konnte nicht bestätigt werden."
          "frontend.checkout.js.stripe_intent_error" => "Stripe Payment Intent konnte nicht erstellt werden."
          "frontend.checkout.js.stripe_pending" => "Die Zahlung ist noch nicht abgeschlossen. Bitte prüfen Sie die Rückmeldung von Stripe."
          "frontend.checkout.js.stripe_server_error" => "Stripe Server nicht erreichbar."
          "frontend.checkout.js.stripe_unavailable" => "Kreditkartenzahlung ist momentan nicht verfügbar."
          "frontend.checkout.logged_in.text" => "Bekannte Kundendaten wurden für den Checkout vorausgefüllt und können hier noch angepasst werden."
          "frontend.checkout.logged_in.title" => "Sie sind angemeldet."
          "frontend.checkout.login.actions.forgot_password" => "Passwort vergessen?"
          "frontend.checkout.login.actions.register" => "Noch kein Konto? Registrieren"
          "frontend.checkout.login.actions.submit" => "Anmelden"
          "frontend.checkout.login.eyebrow" => "Optional"
          "frontend.checkout.login.fields.email" => "E-Mail"
          "frontend.checkout.login.fields.password" => "Passwort"
          "frontend.checkout.login.text" => "Sie können sich direkt hier einloggen und bleiben danach im Checkout. Alternativ bestellen Sie einfach als Gast weiter."
          "frontend.checkout.login.title" => "Mit Kundenkonto schneller abschließen"
          "frontend.checkout.meta.title" => "Kasse - Shop"
          "frontend.checkout.payment.methods.card.badge" => "Empfohlen"
          "frontend.checkout.payment.methods.card.meta" => "Visa, Mastercard und weitere gängige Karten werden unterstützt."
          "frontend.checkout.payment.methods.card.title" => "Kreditkarte"
          "frontend.checkout.pickup_status.collected" => "Abgeholt"
          "frontend.checkout.pickup_status.pending" => "Abholung wird vorbereitet"
          "frontend.checkout.pickup_status.ready" => "Bereit zur Abholung"
          "frontend.checkout.sections.address.billing_address" => "Rechnungsadresse"
          "frontend.checkout.sections.address.billing_toggle" => "Abweichende Rechnungsadresse angeben"
          "frontend.checkout.sections.address.eyebrow" => "Schritt 1"
          "frontend.checkout.sections.address.fields.address" => "Straße und Hausnummer"
          "frontend.checkout.sections.address.fields.city" => "Stadt"
          "frontend.checkout.sections.address.fields.country" => "Land"
          "frontend.checkout.sections.address.fields.email" => "E-Mail"
          "frontend.checkout.sections.address.fields.name" => "Name"
          "frontend.checkout.sections.address.fields.phone" => "Telefon"
          "frontend.checkout.sections.address.fields.zip" => "PLZ"
          "frontend.checkout.sections.address.shipping_address" => "Lieferadresse"
          "frontend.checkout.sections.address.text" => "Diese Daten verwenden wir für Lieferung, Rückfragen und die Rechnungsstellung. Eine abweichende Rechnungsadresse können Sie separat erfassen. Unklare Adressen werden vor dem Versand manuell geprüft."
          "frontend.checkout.sections.address.title" => "Lieferadresse und Rechnungsadresse"
          "frontend.checkout.sections.payment.card_data_text" => "Geben Sie Ihre Kartendaten ein. Adressdaten werden separat aus dem Formular verwendet."
          "frontend.checkout.sections.payment.card_data_title" => "Kartendaten"
          "frontend.checkout.sections.payment.eyebrow" => "Schritt 3"
          "frontend.checkout.sections.payment.provider" => "Stripe"
          "frontend.checkout.sections.payment.text" => "Verfügbare und live verdrahtete Zahlungsarten für den aktuellen Checkout."
          "frontend.checkout.sections.payment.title" => "Zahlungsart"
          "frontend.checkout.sections.payment.unavailable" => "Aktuell ist keine live verfügbare Zahlungsart konfiguriert."
          "frontend.checkout.sections.shipping.eyebrow" => "Schritt 2"
          "frontend.checkout.sections.shipping.pickup_text" => "Keine Versandkosten. Wir informieren Sie, sobald die Bestellung zur Abholung bereitsteht."
          "frontend.checkout.sections.shipping.pickup_unavailable_items" => "Abholung ist für diese Position(en) nicht verfügbar: %items%."
          "frontend.checkout.sections.shipping.shipping_text" => "Lieferung an die angegebene Adresse mit verfügbarer Versandart."
          "frontend.checkout.sections.shipping.text" => "Wählen Sie Versand oder Abholung. Kontakt- und Rechnungsdaten bleiben für Rückfragen und Rechnung erforderlich."
          "frontend.checkout.sections.shipping.title" => "Lieferart wählen"
          "frontend.checkout.sections.shipping.unavailable" => "Für das ausgewählte Lieferland ist aktuell keine Versandart hinterlegt."
          "frontend.checkout.steps.address" => "Adresse"
          "frontend.checkout.steps.payment" => "Zahlung"
          "frontend.checkout.steps.shipping" => "Versand"
          "frontend.checkout.steps.summary" => "Prüfen"
          "frontend.checkout.summary.back_to_cart" => "Zurück zum Warenkorb"
          "frontend.checkout.summary.count" => "%count% Positionen"
          "frontend.checkout.summary.coupon_apply" => "Anwenden"
          "frontend.checkout.summary.coupon_placeholder" => "Gutscheincode"
          "frontend.checkout.summary.cross_sell_discount" => "Cross-Sell-Vorteil"
          "frontend.checkout.summary.cross_sell_info" => "Der Cross-Sell-Vorteil ist schon in der Zwischensumme berücksichtigt und wird nicht erneut abgezogen."
          "frontend.checkout.summary.discount" => "Rabatt"
          "frontend.checkout.summary.empty" => "Ihr Warenkorb ist leer."
          "frontend.checkout.summary.eyebrow" => "Schritt 4"
          "frontend.checkout.summary.item_discount" => "%label%-Vorteil: -%discount%%"
          "frontend.checkout.summary.legal" => "Mit dem Klick auf den Button schließen Sie die Bestellung verbindlich ab."
          "frontend.checkout.summary.pickup_ready" => "Abholung nach Bereitmeldung"
          "frontend.checkout.summary.secure" => "SSL-verschlüsselte Datenübertragung"
          "frontend.checkout.summary.shipping" => "Versand"
          "frontend.checkout.summary.shipping_method" => "Versandart"
          "frontend.checkout.summary.submit" => "Zahlungspflichtig bestellen"
          "frontend.checkout.summary.subtotal" => "Zwischensumme"
          "frontend.checkout.summary.subtotal_info" => "Cross-Sell-Vorteile sind in dieser Zwischensumme bereits eingerechnet."
          "frontend.checkout.summary.title" => "Bestellung prüfen"
          "frontend.checkout.summary.total" => "Gesamt"
          "frontend.checkout.summary.tracking" => "Lieferung mit Sendungsverfolgung"
          "frontend.checkout.summary.vat" => "Enthaltene MwSt. (19%)"
          "frontend.checkout.validation.address_required" => "Bitte geben Sie eine Lieferadresse an."
          "frontend.checkout.validation.billing_address_required" => "Bitte geben Sie eine Rechnungsadresse an."
          "frontend.checkout.validation.billing_city_required" => "Bitte geben Sie einen Ort für die Rechnungsadresse an."
          "frontend.checkout.validation.billing_email_invalid" => "Bitte geben Sie eine gültige E-Mail-Adresse für die Rechnungsadresse an."
          "frontend.checkout.validation.billing_email_required" => "Bitte geben Sie die E-Mail-Adresse der Rechnungsadresse an."
          "frontend.checkout.validation.billing_name_required" => "Bitte geben Sie den Namen der Rechnungsadresse an."
          "frontend.checkout.validation.billing_zip_required" => "Bitte geben Sie eine PLZ für die Rechnungsadresse an."
          "frontend.checkout.validation.city_required" => "Bitte geben Sie einen Ort an."
          "frontend.checkout.validation.email_invalid" => "Bitte geben Sie eine gültige E-Mail-Adresse an."
          "frontend.checkout.validation.email_required" => "Bitte geben Sie Ihre E-Mail-Adresse an."
          "frontend.checkout.validation.name_required" => "Bitte geben Sie Ihren Namen an."
          "frontend.checkout.validation.zip_required" => "Bitte geben Sie eine PLZ an."
          "frontend.contact_me.info" => "Für Fragen zu unseren Dienstleistungen steht Ihnen nachfolgendes Formular zur Verfügung. Wir werden uns umgehend bei Ihnen melden."
          "frontend.footer.copyright" => "NFOK"
          "frontend.footer.hotel" => "NFOK"
          "frontend.footer.info" => "Ihr Partner für Mediendesigns, Netzwerk- Administration, IT- Beratung/Schulung, Datenbank- Management, IT- Infrastruktur und IT- Projektmanagement."
          "frontend.footer.title" => "„WORK“"
          "frontend.furnishing.living_room.tx1" => "1 Zimmer mit einem Bett und Sitzbereich."
          "frontend.furnishing.living_room.tx2" => "Schreibtisch"
          "frontend.gallery.info" => "Ein Einblick ins NFOK"
          "frontend.global.adresses.call_phonenumber" => "000000000"
          "frontend.global.adresses.city" => "Bremerhaven"
          "frontend.global.adresses.country" => "Bremen"
          "frontend.global.adresses.country_code" => "27570"
          "frontend.global.adresses.email" => "nfokwork@gmail.com"
          "frontend.global.adresses.email_txt" => "E-Mail:"
          "frontend.global.adresses.faxnumber" => "000 / 000000"
          "frontend.global.adresses.faxnumber_txt" => "Telefax:"
          "frontend.global.adresses.phonenumber" => "000 / 000000"
          "frontend.global.adresses.phonenumber_txt" => "Telefon:"
          "frontend.global.adresses.street" => "auf Anfrage!"
          "frontend.global.adresses.website" => "www.nfok.xyz"
          "frontend.global.adresses.website_txt" => "Internet:"
          "frontend.global.current_availability" => "Mo. – Fr.: 09:00 bis 18:00 Uhr"
          "frontend.global.current2_availability" => "Sa. – So.: 09:00 bis 18:00 Uhr"
          "frontend.global.input_field_names.email" => "E-Mail"
          "frontend.global.text_availability" => "Sie erreichen uns von:"
          "frontend.help.account.lead" => "Alles rund um Bestellungen, Wunschliste, Profilpflege und Retouren im Kundenkonto."
          "frontend.help.account.sections.orders.body" => """
            <ul class="help-doc-list">\n
              <li>Unter <strong>Mein Konto &rarr; Bestellungen</strong> siehst du alle bisherigen Aufträge.</li>\n
              <li>Status, Betrag, Datum und Detailansicht sind direkt verfügbar.</li>\n
              <li>Je nach Status kannst du Rechnung laden, erneut bestellen oder stornieren.</li>\n
            </ul>
            """
          "frontend.help.account.sections.orders.eyebrow" => "Bestellungen"
          "frontend.help.account.sections.orders.title" => "Historie und Auftragsdetails"
          "frontend.help.account.sections.profile.body" => """
            <ul class="help-doc-list">\n
              <li>Name, E-Mail-Adresse und weitere Kontodaten lassen sich jederzeit anpassen.</li>\n
              <li>Auch Lieferadresse und Passwort können gepflegt werden.</li>\n
              <li>Gültige Eingaben helfen dabei, Checkout und Serviceprozesse reibungslos zu halten.</li>\n
            </ul>
            """
          "frontend.help.account.sections.profile.eyebrow" => "Profilpflege"
          "frontend.help.account.sections.profile.title" => "Daten und Adresse aktualisieren"
          "frontend.help.account.sections.rma.body" => """
            <ul class="help-doc-list">\n
              <li>Retouren erreichst du über <strong>Mein Konto &rarr; Retouren</strong>.</li>\n
              <li>Es können nur geeignete, bereits gelieferte Bestellungen verwendet werden.</li>\n
              <li>Status und Verlauf jeder Rücksendung bleiben im Kundenkonto sichtbar.</li>\n
            </ul>
            """
          "frontend.help.account.sections.rma.eyebrow" => "Service"
          "frontend.help.account.sections.rma.title" => "Retouren aus dem Konto starten"
          "frontend.help.account.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Bestellungen, Profilpflege und Retouren wurden gemäß aktuellem Konto-Menü dokumentiert.</li>\n
              <li>Verlinkungen aus der Hilfe führen auf die heute vorhandenen Konto-Routen.</li>\n
              <li>Hinweise zu Datenpflege und Folgeprozessen wurden für den aktuellen Checkout-Stand angepasst.</li>\n
            </ul>
            """
          "frontend.help.account.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.account.sections.updated.title" => "Kundenkonto und Service-Bereiche"
          "frontend.help.account.sections.wishlist.body" => """
            <ul class="help-doc-list">\n
              <li>Produkte lassen sich auf der Detailseite merken.</li>\n
              <li>Gespeicherte Artikel kannst du später gesammelt vergleichen.</li>\n
              <li>Aus der Wunschliste lassen sich Produkte direkt wieder in den Warenkorb legen.</li>\n
            </ul>
            """
          "frontend.help.account.sections.wishlist.eyebrow" => "Merkliste"
          "frontend.help.account.sections.wishlist.title" => "Wunschliste für spätere Entscheidungen"
          "frontend.help.account.sidebar.links.dashboard" => "Mein Konto"
          "frontend.help.account.sidebar.links.edit" => "Profil bearbeiten"
          "frontend.help.account.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.account.sidebar.links.overview" => "Mehr Hilfe-Themen"
          "frontend.help.account.sidebar.links.title" => "Zu den wichtigsten Konto-Bereichen"
          "frontend.help.account.sidebar.note.body" => """
            <ul>\n
              <li>Bestellungen, Retouren und Support sind an einem Ort gebündelt.</li>\n
              <li>Gespeicherte Daten beschleunigen den Checkout deutlich.</li>\n
              <li>Der Kundenbereich bleibt auf deutsch und englisch konsistent verlinkt.</li>\n
            </ul>
            """
          "frontend.help.account.sidebar.note.eyebrow" => "Anmeldung lohnt sich"
          "frontend.help.account.sidebar.note.title" => "Warum das Kundenkonto zentral ist"
          "frontend.help.b2b.lead" => "Der Geschäftskundenbereich für Angebotsanfragen, gruppenspezifische Konditionen und B2B-Freischaltung."
          "frontend.help.b2b.sections.access.body" => """
            <ul class="help-doc-list">\n
              <li>B2B richtet sich an gewerbliche Kunden mit freigeschaltetem Konto.</li>\n
              <li>Nach Zuordnung zu einer passenden Gruppe können spezielle Preisregeln sichtbar werden.</li>\n
              <li>Je nach Konfiguration sind Netto-Ansicht und Angebotsanfragen möglich.</li>\n
            </ul>
            """
          "frontend.help.b2b.sections.access.eyebrow" => "Freischaltung"
          "frontend.help.b2b.sections.access.title" => "Was der B2B-Bereich bietet"
          "frontend.help.b2b.sections.request.body" => """
            <ol class="help-doc-list">\n
              <li>Lege die gewünschten Produkte in den Warenkorb.</li>\n
              <li>Öffne den B2B-Quote-Bereich.</li>\n
              <li>Prüfe Positionen und ergänze bei Bedarf eine Notiz.</li>\n
              <li>Sende die Anfrage für die interne Prüfung ab.</li>\n
            </ol>
            """
          "frontend.help.b2b.sections.request.eyebrow" => "Angebot"
          "frontend.help.b2b.sections.request.title" => "Angebotsanfrage absenden"
          "frontend.help.b2b.sections.statuses.body" => """
            <table class="table help-mini-table mb-0">\n
              <thead>\n
                <tr><th>Status</th><th>Bedeutung</th></tr>\n
              </thead>\n
              <tbody>\n
                <tr><td><span class="badge badge-warning">Offen</span></td><td>Anfrage eingegangen und in Prüfung.</td></tr>\n
                <tr><td><span class="badge badge-success">Genehmigt</span></td><td>Das Angebot ist bestätigt und kann weiterverarbeitet werden.</td></tr>\n
                <tr><td><span class="badge badge-danger">Abgelehnt</span></td><td>Die Anfrage wurde nicht freigegeben.</td></tr>\n
                <tr><td><span class="badge badge-secondary">Storniert</span></td><td>Die Anfrage wurde zurückgezogen.</td></tr>\n
              </tbody>\n
            </table>
            """
          "frontend.help.b2b.sections.statuses.eyebrow" => "Status"
          "frontend.help.b2b.sections.statuses.title" => "Wie Angebotsanfragen bewertet werden"
          "frontend.help.b2b.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Die Hilfe beschreibt den aktuellen Ablauf für Angebotsanfragen im B2B-Frontend.</li>\n
              <li>Statuswerte und Freischaltungslogik wurden an den laufenden Prozess angepasst.</li>\n
              <li>Hinweise zu Kontakt und weiteren B2B-Schritten sind auf den heutigen Stand gebracht.</li>\n
            </ul>
            """
          "frontend.help.b2b.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.b2b.sections.updated.title" => "B2B-Quote und Freischaltungslogik"
          "frontend.help.b2b.sidebar.links.contact" => "Kontakt aufnehmen"
          "frontend.help.b2b.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.b2b.sidebar.links.overview" => "Zur Hilfe"
          "frontend.help.b2b.sidebar.links.quote" => "Angebotsanfrage stellen"
          "frontend.help.b2b.sidebar.links.title" => "Nächste B2B-Schritte"
          "frontend.help.b2b.sidebar.note.body" => """
            <ul>\n
              <li>Nimm für die Freischaltung direkt Kontakt mit unserem Team auf.</li>\n
              <li>Nach erfolgreicher Prüfung werden passende Kundengruppen und Preisregeln aktiviert.</li>\n
            </ul>
            """
          "frontend.help.b2b.sidebar.note.eyebrow" => "Noch nicht freigeschaltet?"
          "frontend.help.b2b.sidebar.note.title" => "So kommst du in den B2B-Bereich"
          "frontend.help.cart.lead" => "Produkte hinzufügen, Mengen anpassen, Gutscheine anwenden und Favoriten später weiterverwenden."
          "frontend.help.cart.sections.add.body" => """
            <ol class="help-doc-list">\n
              <li>Öffne die Produktseite.</li>\n
              <li>Wähle bei Bedarf Varianten oder Pflichtoptionen.</li>\n
              <li>Klicke auf <strong>In den Warenkorb</strong>. Das Kopfmenü aktualisiert sich direkt ohne Neuladen.</li>\n
              <li>Im Header siehst du Menge und Zwischensumme sofort.</li>\n
            </ol>\n
            <div class="help-doc-callout help-doc-callout--info">Der Warenkorb arbeitet per AJAX. Du bleibst auf der aktuellen Seite und kannst direkt weiterstöbern.</div>
            """
          "frontend.help.cart.sections.add.eyebrow" => "Schritt 1"
          "frontend.help.cart.sections.add.title" => "Produkt in den Warenkorb legen"
          "frontend.help.cart.sections.coupon.body" => """
            <ol class="help-doc-list">\n
              <li>Öffne den Warenkorb.</li>\n
              <li>Trage deinen Code in das Gutschein-Feld ein.</li>\n
              <li>Klicke auf <strong>Einlösen</strong>.</li>\n
              <li>Der Rabatt wird direkt im Gesamtbetrag berücksichtigt.</li>\n
            </ol>\n
            <div class="help-doc-callout help-doc-callout--warning">Pro Bestellung ist nur ein Gutschein-Code möglich. Bedingungen wie Mindestbestellwert oder Ablaufdatum bleiben aktiv.</div>
            """
          "frontend.help.cart.sections.coupon.eyebrow" => "Schritt 3"
          "frontend.help.cart.sections.coupon.title" => "Gutschein einlösen"
          "frontend.help.cart.sections.manage.body" => """
            <p>Im Warenkorb kannst du Positionen direkt anpassen oder entfernen.</p>\n
            <ul class="help-doc-list">\n
              <li>Mengen ändern und neu berechnen lassen.</li>\n
              <li>Artikel über das Entfernen-Symbol löschen.</li>\n
              <li>Zwischensumme, Versandkosten und Gesamtbetrag sofort kontrollieren.</li>\n
              <li>Mit einem Klick in den Checkout wechseln.</li>\n
            </ul>
            """
          "frontend.help.cart.sections.manage.eyebrow" => "Schritt 2"
          "frontend.help.cart.sections.manage.title" => "Warenkorb verwalten"
          "frontend.help.cart.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Der Warenkorb arbeitet weiterhin ohne Seitenwechsel per AJAX.</li>\n
              <li>Mengen, Entfernen-Aktionen und Summenaktualisierung laufen direkt in der Cart-Ansicht.</li>\n
              <li>Gutscheinlogik und Übergabe in den Checkout sind auf den aktuellen Ablauf abgestimmt.</li>\n
            </ul>
            """
          "frontend.help.cart.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.cart.sections.updated.title" => "Warenkorb-Modul auf dem neuesten Stand"
          "frontend.help.cart.sidebar.links.cart" => "Zum Warenkorb"
          "frontend.help.cart.sidebar.links.checkout" => "Zur Kasse"
          "frontend.help.cart.sidebar.links.coupons" => "Gutschein-Hilfe"
          "frontend.help.cart.sidebar.links.eyebrow" => "Direkt starten"
          "frontend.help.cart.sidebar.links.title" => "Zu den wichtigsten Warenkorb-Aktionen"
          "frontend.help.cart.sidebar.note.body" => """
            <p>Die Wunschliste ist ideal für Produkte, die du später vergleichen oder gesammelt bestellen willst.</p>\n
            <ul>\n
              <li>Produkte auf der Detailseite merken.</li>\n
              <li>Gespeicherte Artikel später direkt in den Warenkorb legen.</li>\n
              <li>Für die Nutzung musst du als Shop-Kunde eingeloggt sein.</li>\n
            </ul>
            """
          "frontend.help.cart.sidebar.note.eyebrow" => "Merken statt kaufen"
          "frontend.help.cart.sidebar.note.title" => "Wunschliste sinnvoll nutzen"
          "frontend.help.checkout.lead" => "Adresse, Lieferart, Zahlung und Abschluss Schritt für Schritt im aktuellen Checkout-Ablauf."
          "frontend.help.checkout.sections.address.body" => """
            <ul class="help-doc-list">\n
              <li>Gib Name, Straße, Postleitzahl, Ort und Land an.</li>\n
              <li>Optional kannst du eine abweichende Rechnungsadresse nutzen.</li>\n
              <li>Wenn du eingeloggt bist, werden gespeicherte Daten vorausgefüllt.</li>\n
              <li>Fehlende oder unplausible Felder werden direkt validiert.</li>\n
            </ul>
            """
          "frontend.help.checkout.sections.address.eyebrow" => "Schritt 1"
          "frontend.help.checkout.sections.address.title" => "Lieferadresse erfassen"
          "frontend.help.checkout.sections.finish.body" => """
            <ol class="help-doc-list">\n
              <li>Kontrolliere Artikel, Lieferart, Versandkosten und Gesamtbetrag.</li>\n
              <li>Akzeptiere die erforderlichen Hinweise und Bedingungen.</li>\n
              <li>Schließe den Kauf über den finalen Checkout-Button ab.</li>\n
              <li>Nach erfolgreicher Zahlung landest du auf der Bestätigungsseite.</li>\n
            </ol>
            """
          "frontend.help.checkout.sections.finish.eyebrow" => "Schritt 4"
          "frontend.help.checkout.sections.finish.title" => "Bestellung prüfen und abschließen"
          "frontend.help.checkout.sections.payment.body" => """
            <p>Im aktuellen Live-Checkout ist die Kartenzahlung über Stripe aktiv.</p>\n
            <ul class="help-doc-list">\n
              <li>Kreditkartendaten werden im sicheren Zahlungsfenster verarbeitet.</li>\n
              <li>Weitere Zahlarten können später live dazukommen.</li>\n
              <li>Der Checkout zeigt nur Methoden an, die aktuell freigeschaltet sind.</li>\n
            </ul>\n
            <div class="help-doc-callout help-doc-callout--info">Sobald weitere Zahlarten produktiv geschaltet werden, erscheint das direkt im Checkout und auf der Zahlungsarten-Hilfe.</div>
            """
          "frontend.help.checkout.sections.payment.eyebrow" => "Schritt 3"
          "frontend.help.checkout.sections.payment.title" => "Zahlungsart bestätigen"
          "frontend.help.checkout.sections.shipping.body" => """
            <p>Wähle im Checkout entweder Versand an die angegebene Adresse oder Abholung im Geschäft. Die Kosten werden sofort neu berechnet.</p>\n
            <table class="table help-mini-table mb-0">\n
              <thead>\n
                <tr><th>Methode</th><th>Orientierung</th><th>Hinweis</th></tr>\n
              </thead>\n
              <tbody>\n
                <tr><td>Standardversand</td><td>Reguläre Zustellung</td><td>Die exakten Kosten folgen der Shop-Konfiguration.</td></tr>\n
                <tr><td>Expressversand</td><td>Schnellere Lieferung</td><td>Nur sichtbar, wenn im Shop freigeschaltet.</td></tr>\n
                <tr><td>Abholung im Geschäft</td><td>Bereitmeldung per E-Mail</td><td>Versandkosten entfallen. Kontakt- und Rechnungsdaten bleiben für Rückfragen und Rechnung Pflicht.</td></tr>\n
              </tbody>\n
            </table>
            """
          "frontend.help.checkout.sections.shipping.eyebrow" => "Schritt 2"
          "frontend.help.checkout.sections.shipping.title" => "Versand oder Abholung wählen"
          "frontend.help.checkout.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Adress-, Lieferart- und Zahlungsabschnitt folgen dem aktuell aktiven Checkout-Prozess.</li>\n
              <li>Die Kommunikation zum Bestellabschluss wurde auf den Live-Ablauf vereinheitlicht.</li>\n
              <li>Hinweise für Folgeaktionen (Bestellhistorie, Zahlungsstatus) sind auf den neuesten Stand gebracht.</li>\n
            </ul>
            """
          "frontend.help.checkout.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.checkout.sections.updated.title" => "Checkout-Flow und Bestellabschluss"
          "frontend.help.checkout.sidebar.links.checkout" => "Zur Kasse"
          "frontend.help.checkout.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.checkout.sidebar.links.orders" => "Meine Bestellungen"
          "frontend.help.checkout.sidebar.links.payment" => "Zahlungsarten"
          "frontend.help.checkout.sidebar.links.title" => "Zu den nächsten Checkout-Schritten"
          "frontend.help.checkout.sidebar.note.body" => """
            <ul>\n
              <li>Du erhältst eine Bestellbestätigung per E-Mail.</li>\n
              <li>Die Bestellung erscheint in deinem Kundenkonto.</li>\n
              <li>Versand- und Tracking-Infos oder die Bereitmeldung zur Abholung folgen, sobald der Auftrag weiterbearbeitet wird.</li>\n
            </ul>
            """
          "frontend.help.checkout.sidebar.note.eyebrow" => "Nach dem Kauf"
          "frontend.help.checkout.sidebar.note.title" => "Was anschließend passiert"
          "frontend.help.common.back_to_overview" => "Zur Hilfe-Übersicht"
          "frontend.help.common.browse_topics" => "Themen finden"
          "frontend.help.common.contact" => "Kontakt aufnehmen"
          "frontend.help.common.eyebrow" => "Hilfe-Center"
          "frontend.help.common.meta_suffix" => "Hilfe"
          "frontend.help.common.need_more_help" => "Noch Fragen?"
          "frontend.help.common.open_topic" => "Thema öffnen"
          "frontend.help.common.overview_contact" => "Kontakt"
          "frontend.help.common.overview_eyebrow" => "Service & Orientierung"
          "frontend.help.common.overview_lead" => "Schnelle Antworten, klare Schritte und direkte Links für die wichtigsten Abläufe im Shop."
          "frontend.help.common.overview_meta_title" => "Shop Hilfe & Dokumentation"
          "frontend.help.common.overview_note_text" => "Jedes Thema verbindet aktuelle Shop-Funktionen, direkte Einstiege und verständliche Hinweise zum nächsten Schritt."
          "frontend.help.common.overview_note_title" => "Was dich hier erwartet"
          "frontend.help.common.overview_shop" => "Shop öffnen"
          "frontend.help.common.overview_support_text" => "Wenn du den passenden Bereich schon kennst, springe direkt in den Shop oder nutze unser Kontaktformular."
          "frontend.help.common.overview_support_title" => "Direkt weiter"
          "frontend.help.common.overview_title" => "Hilfe-Center für Shop, Konto und Service"
          "frontend.help.common.overview_topics_lead" => "Wähle den Bereich, in dem du gerade Unterstützung brauchst."
          "frontend.help.common.overview_topics_title" => "Alle Hilfe-Themen"
          "frontend.help.common.quick_access" => "Schnellzugriff"
          "frontend.help.common.quick_summary" => "Kurzüberblick"
          "frontend.help.common.stats.direct" => "Direkte Links"
          "frontend.help.common.stats.direct_label" => "Mit einem Klick in relevante Shop-, Konto- und Servicebereiche."
          "frontend.help.common.stats.localized" => "DE + EN"
          "frontend.help.common.stats.localized_label" => "Alle Seiten sind für deutschsprachige und englische Routen vorbereitet."
          "frontend.help.common.stats.topics" => "11 Themen"
          "frontend.help.common.stats.topics_label" => "Von Warenkorb bis Retouren in einem zentralen Hilfe-Center."
          "frontend.help.common.support_text" => "Nutze die Kontaktseite für individuelle Anliegen oder springe direkt zurück in den Shop."
          "frontend.help.common.support_title" => "Wir zeigen dir den nächsten sinnvollen Schritt."
          "frontend.help.common.to_shop" => "Zum Shop"
          "frontend.help.coupons.lead" => "Gutschein-Codes einlösen, Rabattarten vergleichen und typische Probleme schnell prüfen."
          "frontend.help.coupons.sections.redeem.body" => """
            <ol class="help-doc-list">\n
              <li>Lege die gewünschten Produkte in den Warenkorb.</li>\n
              <li>Öffne den Warenkorb und trage den Code in das Eingabefeld ein.</li>\n
              <li>Bestätige den Code über <strong>Einlösen</strong>.</li>\n
              <li>Der Rabatt erscheint direkt in der aktualisierten Summe.</li>\n
            </ol>\n
            <div class="help-doc-callout help-doc-callout--info">Pro Bestellung kann nur ein Gutschein-Code gleichzeitig aktiv sein.</div>
            """
          "frontend.help.coupons.sections.redeem.eyebrow" => "Einlösen"
          "frontend.help.coupons.sections.redeem.title" => "So wird ein Gutschein aktiviert"
          "frontend.help.coupons.sections.troubleshooting.body" => """
            <ul class="help-doc-list">\n
              <li>Prüfe Mindestbestellwert und Geltungszeitraum.</li>\n
              <li>Manche Codes gelten nur für bestimmte Produkte oder Kategorien.</li>\n
              <li>Einmal-Codes können nach erfolgreicher Nutzung nicht erneut eingesetzt werden.</li>\n
              <li>Die Eingabe ist nicht case-sensitiv, Bedingungen aber trotzdem verbindlich.</li>\n
            </ul>
            """
          "frontend.help.coupons.sections.troubleshooting.eyebrow" => "Fehlersuche"
          "frontend.help.coupons.sections.troubleshooting.title" => "Wenn der Gutschein nicht funktioniert"
          "frontend.help.coupons.sections.types.body" => """
            <table class="table help-mini-table mb-0">\n
              <thead>\n
                <tr><th>Typ</th><th>Beispiel</th><th>Hinweis</th></tr>\n
              </thead>\n
              <tbody>\n
                <tr><td>Prozentrabatt</td><td>10% auf passende Produkte</td><td>Wird auf den Warenkorbwert angewendet.</td></tr>\n
                <tr><td>Festbetrag</td><td>5 EUR Rabatt</td><td>Wird direkt vom Gesamtbetrag abgezogen.</td></tr>\n
                <tr><td>Versandvorteil</td><td>Kostenloser Versand</td><td>Kann die Versandkosten reduzieren oder entfernen.</td></tr>\n
              </tbody>\n
            </table>
            """
          "frontend.help.coupons.sections.types.eyebrow" => "Rabattarten"
          "frontend.help.coupons.sections.types.title" => "Welche Gutschein-Typen es geben kann"
          "frontend.help.coupons.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Einlösen, Rabattarten und Fehlersuche wurden für den aktuellen Checkout-/Cart-Stand überarbeitet.</li>\n
              <li>Hinweise zu Bedingungen wie Mindestbestellwert und Gültigkeit sind deutlicher formuliert.</li>\n
              <li>Die Seite verweist weiterhin direkt auf Warenkorb und Shop für schnelle Prüfung.</li>\n
            </ul>
            """
          "frontend.help.coupons.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.coupons.sections.updated.title" => "Gutschein- und Rabatt-Hilfe überarbeitet"
          "frontend.help.coupons.sidebar.links.cart" => "Zum Warenkorb"
          "frontend.help.coupons.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.coupons.sidebar.links.overview" => "Zur Hilfe"
          "frontend.help.coupons.sidebar.links.shop" => "Zum Shop"
          "frontend.help.coupons.sidebar.links.title" => "Zu den passenden Shop-Aktionen"
          "frontend.help.coupons.sidebar.note.body" => """
            <ul>\n
              <li>Sale-Preise können direkt auf der Produktseite erscheinen.</li>\n
              <li>Mengenrabatte greifen automatisch, wenn sie konfiguriert sind.</li>\n
              <li>B2B-Preise werden nach erfolgreichem Login sichtbar.</li>\n
            </ul>
            """
          "frontend.help.coupons.sidebar.note.eyebrow" => "Noch mehr Vorteile"
          "frontend.help.coupons.sidebar.note.title" => "Auch ohne Code gibt es Rabatte"
          "frontend.help.nav.account.summary" => "Bestellungen, Wunschliste, Profil und Retouren in einem Kundenbereich."
          "frontend.help.nav.account.title" => "Mein Konto"
          "frontend.help.nav.b2b.summary" => "Angebotsanfragen, Freischaltung und Statuslogik für Geschäftskunden."
          "frontend.help.nav.b2b.title" => "B2B-Shop"
          "frontend.help.nav.cart.summary" => "Produkte hinzufügen, Mengen anpassen, Gutscheine anwenden und Favoriten für später merken."
          "frontend.help.nav.cart.title" => "Warenkorb & Wunschliste"
          "frontend.help.nav.checkout.summary" => "Adresse, Versand, Zahlung und Bestellabschluss Schritt für Schritt erklärt."
          "frontend.help.nav.checkout.title" => "Checkout & Bestellung"
          "frontend.help.nav.coupons.summary" => "Codes einlösen, Rabattarten verstehen und typische Fehler prüfen."
          "frontend.help.nav.coupons.title" => "Gutscheine & Rabatte"
          "frontend.help.nav.orders.summary" => "Historie, Status, Rechnung und Stornierung klar eingeordnet."
          "frontend.help.nav.orders.title" => "Meine Bestellungen"
          "frontend.help.nav.page.summary" => "Seitentypen, Navigation, Widgets und SEO-Hinweise für das Frontend."
          "frontend.help.nav.page.title" => "Seiten & Anzeigeoptionen"
          "frontend.help.nav.payment.summary" => "Live verfügbare Zahlarten, Sicherheitsniveau und Projektstatus auf einen Blick."
          "frontend.help.nav.payment.title" => "Zahlungsarten"
          "frontend.help.nav.product.summary" => "Suche, Filter, Produktdetails und konfigurierbare Varianten schnell verstehen."
          "frontend.help.nav.product.title" => "Produkte & Kategorien"
          "frontend.help.nav.reviews.summary" => "Produktbewertungen schreiben, Fragen stellen und Moderationsregeln kennen."
          "frontend.help.nav.reviews.title" => "Bewertungen & Fragen"
          "frontend.help.nav.rma.summary" => "Rücksendungen anlegen, Status verfolgen und den Ablauf sauber nachvollziehen."
          "frontend.help.nav.rma.title" => "Retouren & RMA"
          "frontend.help.orders.lead" => "Bestellhistorie verstehen, Status lesen, Rechnungen laden und Stornierungen richtig einschätzen."
          "frontend.help.orders.sections.cancel.body" => """
            <ul class="help-doc-list">\n
              <li>Solange die Bestellung noch nicht versendet wurde, kann eine Stornierung möglich sein.</li>\n
              <li>Die Aktion erscheint direkt in der Bestelldetailseite, wenn der Status es zulässt.</li>\n
              <li>Bereits gelieferte Artikel laufen über %rmaLink%.</li>\n
            </ul>
            """
          "frontend.help.orders.sections.cancel.eyebrow" => "Änderungen"
          "frontend.help.orders.sections.cancel.title" => "Wann eine Stornierung möglich ist"
          "frontend.help.orders.sections.history.body" => """
            <ol class="help-doc-list">\n
              <li>Melde dich im Kundenkonto an.</li>\n
              <li>Wechsle in den Bereich <strong>Bestellungen</strong>.</li>\n
              <li>Dort siehst du Nummer, Datum, Betrag und Status jedes Auftrags.</li>\n
              <li>Die Detailansicht zeigt Positionen, Adresse, Tracking und verfügbare Aktionen.</li>\n
            </ol>
            """
          "frontend.help.orders.sections.history.eyebrow" => "Historie"
          "frontend.help.orders.sections.history.title" => "Bestellungen im Konto aufrufen"
          "frontend.help.orders.sections.invoice.body" => """
            <ul class="help-doc-list">\n
              <li>Öffne die Bestelldetailseite.</li>\n
              <li>Nutze die Aktion für den PDF-Download.</li>\n
              <li>Rechnungen stehen abhängig vom Bestellstatus und der Zahlungsfreigabe bereit.</li>\n
            </ul>
            """
          "frontend.help.orders.sections.invoice.eyebrow" => "Dokumente"
          "frontend.help.orders.sections.invoice.title" => "Rechnung als PDF herunterladen"
          "frontend.help.orders.sections.statuses.body" => """
            <table class="table help-mini-table mb-0">\n
              <thead>\n
                <tr><th>Status</th><th>Bedeutung</th></tr>\n
              </thead>\n
              <tbody>\n
                <tr><td><span class="badge badge-warning">Offen</span></td><td>Bestellung erfasst, nächste Verarbeitung steht noch aus.</td></tr>\n
                <tr><td><span class="badge badge-info">Bezahlt</span></td><td>Die Zahlung ist bestätigt.</td></tr>\n
                <tr><td><span class="badge badge-primary">In Bearbeitung</span></td><td>Der Auftrag wird intern vorbereitet.</td></tr>\n
                <tr><td><span class="badge badge-success">Versendet</span></td><td>Das Paket ist unterwegs.</td></tr>\n
                <tr><td><span class="badge badge-success">Geliefert</span></td><td>Die Lieferung wurde abgeschlossen.</td></tr>\n
                <tr><td><span class="badge badge-danger">Storniert</span></td><td>Der Auftrag wurde gestoppt.</td></tr>\n
                <tr><td><span class="badge badge-secondary">Erstattet</span></td><td>Eine Erstattung wurde veranlasst.</td></tr>\n
              </tbody>\n
            </table>
            """
          "frontend.help.orders.sections.statuses.eyebrow" => "Statuswerte"
          "frontend.help.orders.sections.statuses.title" => "Bestellstatus richtig lesen"
          "frontend.help.orders.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Die Seite ist auf die aktuelle Bestellansicht im Kundenkonto abgestimmt.</li>\n
              <li>Statusbeschreibungen und Hinweise zu Rechnungsdownload wurden aktualisiert.</li>\n
              <li>Abgrenzung zwischen Storno und Retoure ist klarer dokumentiert.</li>\n
            </ul>
            """
          "frontend.help.orders.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.orders.sections.updated.title" => "Bestellhistorie, Status und Rechnungen"
          "frontend.help.orders.sidebar.links.account" => "Mein Konto"
          "frontend.help.orders.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.orders.sidebar.links.payment" => "Zahlungsarten"
          "frontend.help.orders.sidebar.links.rma" => "Retoure einleiten"
          "frontend.help.orders.sidebar.links.title" => "Wichtige Folgeaktionen"
          "frontend.help.orders.sidebar.note.body" => """
            <p><strong>Wo steht die Bestellnummer?</strong><br>In deiner Bestätigungs-E-Mail und in der Bestellliste im Konto.</p>\n
            <p><strong>Wo sehe ich Tracking?</strong><br>Auf der Detailseite, sobald Versanddaten verfügbar sind.</p>
            """
          "frontend.help.orders.sidebar.note.eyebrow" => "Häufige Fragen"
          "frontend.help.orders.sidebar.note.title" => "Wenn du etwas nicht findest"
          "frontend.help.page.lead" => "Wie Inhalte im Frontend strukturiert, sichtbar gemacht und sauber für Navigation und SEO genutzt werden."
          "frontend.help.page.sections.navigation.body" => """
            <ol class="help-doc-list">\n
              <li>Seiten im Backend anlegen und veröffentlichen.</li>\n
              <li>Position im Hauptmenü, oberen Footer-Menü oder in der unteren Legal-Leiste definieren.</li>\n
              <li>Sichtbarkeit pro Bereich sauber steuern.</li>\n
              <li>Slug, Titel und Meta-Daten konsistent halten.</li>\n
            </ol>\n
            <div class="help-doc-callout help-doc-callout--warning">Rechtliche Shop-Seiten wie AGB, Widerrufsbelehrung, Zahlungsarten, Versandrichtlinien und Batteriegesetz gehören in der Regel in die untere Legal-Leiste.</div>\n
            <div class="help-doc-callout help-doc-callout--info">Menüs werden im Frontend dynamisch aufgebaut. Nach dem Speichern sind Änderungen direkt sichtbar; der Seiteneditor legt dabei automatisch eine Revision an.</div>
            """
          "frontend.help.page.sections.navigation.eyebrow" => "Navigation"
          "frontend.help.page.sections.navigation.title" => "Menüs und Sichtbarkeit"
          "frontend.help.page.sections.seo.body" => """
            <ul class="help-doc-list">\n
              <li>Pflege eindeutige Titel und Meta-Descriptions.</li>\n
              <li>Vermeide doppelte Slugs und doppelte Inhalte.</li>\n
              <li>Für Page-Builder-Bilder sollten sprechende Dateinamen und Alt-Texte im Media Center gepflegt werden.</li>\n
              <li>Interne Verlinkung verbessert Orientierung und Auffindbarkeit.</li>\n
              <li>Prüfe größere Änderungen immer in Vorschau und Live-Ansicht.</li>\n
            </ul>
            """
          "frontend.help.page.sections.seo.eyebrow" => "Qualität"
          "frontend.help.page.sections.seo.title" => "SEO und technische Hinweise"
          "frontend.help.page.sections.types.body" => """
            <ul class="help-doc-list">\n
              <li><strong>Landingpages</strong> für Kampagnen und fokussierte Einstiege.</li>\n
              <li><strong>Kategorie- und Produktseiten</strong> mit dynamischen Shop-Daten.</li>\n
              <li><strong>Statische Seiten</strong> wie Impressum, Datenschutz oder AGB.</li>\n
              <li><strong>Sonderseiten</strong> für Hilfe, Kontakt oder servicebezogene Inhalte.</li>\n
              <li><strong>Cart-Grid-Abschnitte</strong> für flexible Kartenlayouts mit Spalten, Bild und Text.</li>\n
            </ul>
            """
          "frontend.help.page.sections.types.eyebrow" => "Struktur"
          "frontend.help.page.sections.types.title" => "Seitentypen im Überblick"
          "frontend.help.page.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Die Hilfe deckt die aktuelle Struktur aus Startseite, Landingpages, Shop- und Serviceseiten ab.</li>\n
              <li>Navigations- und Sichtbarkeitshinweise wurden auf den aktuellen Menü- und Footer-Aufbau angepasst.</li>\n
              <li>SEO- und Pflegehinweise orientieren sich an den heute genutzten Frontend-Content-Bausteinen.</li>\n
              <li>Footer-Seiten können getrennt im oberen Footer-Menü oder in der unteren Legal-Leiste platziert werden.</li>\n
              <li>Seiteninhalte können im Backend jetzt mit RichText-Feldern und Media-Center-Bildern gepflegt werden, damit Redakteure mehr Freiheit im Aufbau haben.</li>\n
              <li>Neu: Das Theme-Modul im Admin trennt Frontend-Design sauber vom Backend-Layout und wird in der Seitenpflege berücksichtigt.</li>\n
              <li>Zusätzlich steht ein HTML-Theme-Import mit anschließendem Slot-Mapping bereit, damit neue Layouts kontrolliert eingebunden werden.</li>\n
              <li>Neu: Systemweite Interaktions- und Aufrufstatistiken erfassen Besucher, Sessions, IP-bezogene Nutzungsprofile, Referrer, Geräte, Browser, Betriebssysteme und Länder (inklusive GeoLite2-Lookup, falls vorhanden) für Analyse, Conversion-Bewertung und Fehlerdiagnose im Frontend und Backend.</li>\n
              <li>Top-Interaktionen lassen sich im Admin jetzt bis auf Konto-/Versuchskennung, IP, Land, Browser, Route, Pfad und Payload aufklappen; Login-Erfolge und Login-Fehlschläge werden dabei als eigene Events geführt.</li>\n
            </ul>
            """
          "frontend.help.page.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.page.sections.updated.title" => "Frontend-Seiten, Navigation und Content-Struktur"
          "frontend.help.page.sections.widgets.body" => """
            <ul class="help-doc-list">\n
              <li>Nutze wiederverwendbare Content-Blöcke für wiederkehrende Inhalte.</li>\n
              <li>Setze Slider und Teaser gezielt auf Start- und Landingpages ein.</li>\n
              <li>Arbeite mit klarer Reihenfolge: Hero, Inhalt, CTA.</li>\n
              <li>Teste mobil und Desktop, damit Reihenfolge und Abstände sauber bleiben.</li>\n
            </ul>
            """
          "frontend.help.page.sections.widgets.eyebrow" => "Layout"
          "frontend.help.page.sections.widgets.title" => "Widgets, Blöcke und visuelle Hierarchie"
          "frontend.help.page.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.page.sidebar.links.overview" => "Hilfe-Übersicht"
          "frontend.help.page.sidebar.links.product" => "Produkt-Hilfe"
          "frontend.help.page.sidebar.links.shop" => "Zum Shop"
          "frontend.help.page.sidebar.links.title" => "Nächste Orientierungspunkte"
          "frontend.help.page.sidebar.note.body" => """
            <p><strong>Seite fehlt im Menü?</strong><br>Prüfe den Veröffentlichungsstatus und die Menü-Zuordnung.</p>\n
            <p><strong>Layout wirkt falsch?</strong><br>Kontrolliere Template-Auswahl, Inhaltsblöcke und Reihenfolge.</p>\n
            <p><strong>Seite wird schlecht gefunden?</strong><br>Arbeite an Titel, Description, internen Links und einer klaren Struktur.</p>
            """
          "frontend.help.page.sidebar.note.eyebrow" => "Häufige Fragen"
          "frontend.help.page.sidebar.note.title" => "Worauf du zuerst schauen solltest"
          "frontend.help.payment.lead" => "Der aktuelle Live-Stand der verfügbaren Zahlarten, Sicherheitsmechanismen und nächsten Ausbaustufen."
          "frontend.help.payment.sections.card.body" => """
            <ul class="help-doc-list">\n
              <li>Kreditkartenzahlung ist schnell und sicher im Checkout eingebunden.</li>\n
              <li>Der Zahlungsfluss läuft über Stripe.</li>\n
              <li>Nach erfolgreicher Bestätigung wird die Bestellung direkt weiterverarbeitet.</li>\n
            </ul>
            """
          "frontend.help.payment.sections.card.eyebrow" => "Live"
          "frontend.help.payment.sections.card.title" => "Kartenzahlung über Stripe"
          "frontend.help.payment.sections.other.body" => """
            <ul class="help-doc-list">\n
              <li><strong>PayPal</strong>: vorbereitet, aktuell nicht live.</li>\n
              <li><strong>Klarna</strong>: vorbereitet, aktuell nicht live.</li>\n
              <li><strong>Vorkasse</strong>: möglicher späterer Ausbau.</li>\n
              <li><strong>Rechnung</strong>: erst nach produktiver Freigabe sichtbar.</li>\n
            </ul>\n
            <div class="help-doc-callout help-doc-callout--warning">Die Hilfe spiegelt den aktuellen Live-Zustand. Nicht freigeschaltete Methoden tauchen im Checkout nicht auf.</div>
            """
          "frontend.help.payment.sections.other.eyebrow" => "Projektstatus"
          "frontend.help.payment.sections.other.title" => "Weitere Zahlarten und ihr Status"
          "frontend.help.payment.sections.security.body" => """
            <ul class="help-doc-list">\n
              <li>SSL-verschlüsselte Übertragung im Checkout.</li>\n
              <li>Sichere Zahlungsabwicklung über spezialisierte Anbieter.</li>\n
              <li>Keine unnötige Speicherung sensibler Zahlungsdaten im Shop.</li>\n
            </ul>
            """
          "frontend.help.payment.sections.security.eyebrow" => "Sicherheit"
          "frontend.help.payment.sections.security.title" => "Wie Zahlungen abgesichert werden"
          "frontend.help.payment.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Die Hilfe spiegelt den aktuell aktiven Live-Zahlungsfluss wider.</li>\n
              <li>Nicht freigeschaltete Methoden bleiben als Statushinweis dokumentiert.</li>\n
              <li>Security-Abschnitt wurde mit Fokus auf Checkout-Realität und klare Erwartung überarbeitet.</li>\n
            </ul>
            """
          "frontend.help.payment.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.payment.sections.updated.title" => "Zahlarten und Sicherheitskommunikation"
          "frontend.help.payment.sidebar.links.checkout" => "Zur Kasse"
          "frontend.help.payment.sidebar.links.checkout_help" => "Checkout-Hilfe"
          "frontend.help.payment.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.payment.sidebar.links.orders" => "Meine Bestellungen"
          "frontend.help.payment.sidebar.links.title" => "Passende nächste Schritte"
          "frontend.help.payment.sidebar.note.body" => "<p>Im Checkout werden nur Zahlarten angezeigt, die aktuell wirklich verfügbar sind. Dadurch bleiben Auswahl und Kommunikation konsistent.</p>"
          "frontend.help.payment.sidebar.note.eyebrow" => "Aktuell wichtig"
          "frontend.help.payment.sidebar.note.title" => "Was du bei Zahlarten erwarten kannst"
          "frontend.help.product.lead" => "Produkte finden, filtern, konfigurieren und alle relevanten Details sauber lesen."
          "frontend.help.product.sections.configurable.body" => """
            <ol class="help-doc-list">\n
              <li>Wähle alle benötigten Optionen wie Größe, Farbe oder Material.</li>\n
              <li>Preis und Verfügbarkeit aktualisieren sich je nach Auswahl.</li>\n
              <li>Pflichtfelder bleiben bis zur korrekten Auswahl markiert.</li>\n
              <li>Erst danach kann das Produkt in den Warenkorb gelegt werden.</li>\n
            </ol>
            """
          "frontend.help.product.sections.configurable.eyebrow" => "Varianten"
          "frontend.help.product.sections.configurable.title" => "Konfigurierbare Produkte verstehen"
          "frontend.help.product.sections.details.body" => """
            <div class="row">\n
              <div class="col-sm-6">\n
                <ul class="help-doc-list">\n
                  <li>Galerie und Produktbilder</li>\n
                  <li>Name, Preis und Verfügbarkeit</li>\n
                  <li>Kurz- und Langbeschreibung</li>\n
                  <li>Lieferhinweise, Abholoptionen und Lagerstatus; bei reiner Abholung wird keine Lieferzeit angezeigt</li>\n
                </ul>\n
              </div>\n
              <div class="col-sm-6">\n
                <ul class="help-doc-list">\n
                  <li>Artikelnummer und technische Daten</li>\n
                  <li>Bewertungen und Fragen</li>\n
                  <li>Ähnliche oder passende Produkte</li>\n
                  <li>Merken-, Kauf- und Abholhinweise</li>\n
                </ul>\n
              </div>\n
            </div>
            """
          "frontend.help.product.sections.details.eyebrow" => "Produktseite"
          "frontend.help.product.sections.details.title" => "Was du auf der Detailseite findest"
          "frontend.help.product.sections.search.body" => """
            <ul class="help-doc-list">\n
              <li>Nutze die Suche im Header oder direkt im Shop.</li>\n
              <li>Kategorien führen strukturiert durch Sortimente und Unterkategorien.</li>\n
              <li>Filter für Preis, Attribute oder Hersteller lassen sich kombinieren.</li>\n
              <li>Wenn zu wenig Treffer erscheinen, hilft oft ein kürzerer Suchbegriff.</li>\n
            </ul>
            """
          "frontend.help.product.sections.search.eyebrow" => "Orientierung"
          "frontend.help.product.sections.search.title" => "Suche, Kategorien und Filter"
          "frontend.help.product.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Suche, Kategorien und Filter entsprechen dem aktuellen Shop-Frontend.</li>\n
              <li>Produktbilder können in Karten-, Listen- und Warenkorbbereichen direkt zeigen, ob Abholung möglich ist oder der Artikel nur online bestellbar ist.</li>\n
              <li>Bilddateinamen und Alt-Texte werden zentral im Media Center gepflegt, damit Produktbilder suchmaschinenfreundlicher und barriereärmer angezeigt werden können.</li>\n
              <li>Diese Produktbild-Hinweise lassen sich in den System-Einstellungen zentral ein- oder ausblenden.</li>\n
              <li>Konfigurierbare Produkte mit Pflichtoptionen sind in der Hilfe explizit abgedeckt.</li>\n
              <li>Preis-, Verfügbarkeits- und Detailanzeigen wurden an die aktuellen Produkttemplates angepasst.</li>\n
            </ul>
            """
          "frontend.help.product.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.product.sections.updated.title" => "Produktseiten und Varianten-Logik"
          "frontend.help.product.sidebar.links.cart" => "Warenkorb-Hilfe"
          "frontend.help.product.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.product.sidebar.links.reviews" => "Bewertungen & Fragen"
          "frontend.help.product.sidebar.links.shop" => "Zum Shop"
          "frontend.help.product.sidebar.links.title" => "Nächste Einstiege im Shop"
          "frontend.help.product.sidebar.note.body" => """
            <ul>\n
              <li>Standardpreise erscheinen im Shop inklusive gesetzlicher Steuer.</li>\n
              <li>B2B-Kunden können je nach Freischaltung Netto-Preise sehen.</li>\n
              <li>Angebote, Staffelpreise und Verfügbarkeit werden direkt am Produkt angezeigt.</li>\n
            </ul>
            """
          "frontend.help.product.sidebar.note.eyebrow" => "Gut zu wissen"
          "frontend.help.product.sidebar.note.title" => "Preise und Sichtbarkeit"
          "frontend.help.reviews.lead" => "Produkte bewerten, Fragen stellen und die Moderationslogik im Frontend besser verstehen."
          "frontend.help.reviews.sections.questions.body" => """
            <ol class="help-doc-list">\n
              <li>Öffne die Produktseite.</li>\n
              <li>Nutze den Bereich für Fragen und Antworten.</li>\n
              <li>Formuliere die Frage klar und sende sie ab.</li>\n
              <li>Antworten werden nach Freigabe öffentlich sichtbar.</li>\n
            </ol>
            """
          "frontend.help.reviews.sections.questions.eyebrow" => "Q&A"
          "frontend.help.reviews.sections.questions.title" => "Produktfragen einstellen"
          "frontend.help.reviews.sections.review.body" => """
            <ol class="help-doc-list">\n
              <li>Öffne die Produktseite des passenden Artikels.</li>\n
              <li>Wechsle in den Bereich <strong>Bewertungen</strong>.</li>\n
              <li>Wähle Sterne, Titel und Text für deine Rückmeldung.</li>\n
              <li>Nach dem Absenden wird die Bewertung moderiert und später freigeschaltet.</li>\n
            </ol>
            """
          "frontend.help.reviews.sections.review.eyebrow" => "Bewertungen"
          "frontend.help.reviews.sections.review.title" => "So gibst du eine Produktbewertung ab"
          "frontend.help.reviews.sections.rules.body" => """
            <ul class="help-doc-list">\n
              <li>Bewertungen und Fragen sollten sachlich, ehrlich und hilfreich sein.</li>\n
              <li>Persönliche Daten, Beleidigungen und Werbung sind nicht erlaubt.</li>\n
              <li>Vor der Veröffentlichung prüft das Team die Inhalte.</li>\n
            </ul>
            """
          "frontend.help.reviews.sections.rules.eyebrow" => "Qualität"
          "frontend.help.reviews.sections.rules.title" => "Welche Regeln für Inhalte gelten"
          "frontend.help.reviews.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Review- und Q&A-Hinweise wurden auf den aktuellen Moderationsablauf aktualisiert.</li>\n
              <li>Inhaltliche Regeln und Freigabelogik sind jetzt klarer und konsistent dokumentiert.</li>\n
              <li>Direkte Verweise zu Produkt- und Shop-Bereichen bleiben in der Sidebar verlinkt.</li>\n
            </ul>
            """
          "frontend.help.reviews.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.reviews.sections.updated.title" => "Bewertungen, Fragen und Moderation"
          "frontend.help.reviews.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.reviews.sidebar.links.overview" => "Zur Hilfe"
          "frontend.help.reviews.sidebar.links.product" => "Produkt-Hilfe"
          "frontend.help.reviews.sidebar.links.shop" => "Zum Shop"
          "frontend.help.reviews.sidebar.links.title" => "Wo du direkt weitermachen kannst"
          "frontend.help.reviews.sidebar.note.body" => """
            <p>Bewertungen und Fragen durchlaufen eine Freigabe. So bleibt die Qualität im Frontend stabil und Missbrauch wird reduziert.</p>\n
            <ul>\n
              <li>Bewertungen erscheinen erst nach Prüfung.</li>\n
              <li>Fragen können vor der Anzeige moderiert werden.</li>\n
            </ul>
            """
          "frontend.help.reviews.sidebar.note.eyebrow" => "Moderation"
          "frontend.help.reviews.sidebar.note.title" => "Warum nicht alles sofort sichtbar ist"
          "frontend.help.rma.lead" => "Rücksendungen sauber anlegen, Begründungen angeben und den Bearbeitungsstatus nachvollziehen."
          "frontend.help.rma.sections.process.body" => """
            <ol class="help-doc-list">\n
              <li>Öffne <strong>Mein Konto &rarr; Retouren</strong>.</li>\n
              <li>Wähle eine geeignete Bestellung und das passende Produkt.</li>\n
              <li>Gib Grund, Beschreibung und Menge an.</li>\n
              <li>Sende die Anfrage ab und beobachte danach den Status im Konto.</li>\n
            </ol>
            """
          "frontend.help.rma.sections.process.eyebrow" => "Ablauf"
          "frontend.help.rma.sections.process.title" => "So läuft die Rücksendung"
          "frontend.help.rma.sections.statuses.body" => """
            <table class="table help-mini-table mb-0">\n
              <thead>\n
                <tr><th>Status</th><th>Bedeutung</th></tr>\n
              </thead>\n
              <tbody>\n
                <tr><td><span class="badge badge-warning">Offen</span></td><td>Antrag eingereicht und wartet auf Prüfung.</td></tr>\n
                <tr><td><span class="badge badge-info">In Prüfung</span></td><td>Das Team bearbeitet die Anfrage.</td></tr>\n
                <tr><td><span class="badge badge-success">Genehmigt</span></td><td>Rücksendung wurde akzeptiert und die nächsten Schritte folgen.</td></tr>\n
                <tr><td><span class="badge badge-danger">Abgelehnt</span></td><td>Die Anfrage wurde abgelehnt.</td></tr>\n
                <tr><td><span class="badge badge-secondary">Abgeschlossen</span></td><td>Der Vorgang ist vollständig beendet.</td></tr>\n
                <tr><td><span class="badge badge-light border">Storniert</span></td><td>Der Antrag wurde abgebrochen.</td></tr>\n
              </tbody>\n
            </table>
            """
          "frontend.help.rma.sections.statuses.eyebrow" => "Statuswerte"
          "frontend.help.rma.sections.statuses.title" => "Wie die Bearbeitung angezeigt wird"
          "frontend.help.rma.sections.updated.body" => """
            <ul class="help-doc-list">\n
              <li>Der Ablauf für neue Retouren orientiert sich an den aktuellen Konto-Ansichten.</li>\n
              <li>Statusbeschreibung und typische Folgeaktionen wurden inhaltlich aktualisiert.</li>\n
              <li>Direkte Einstiege zu „Meine Retouren“ und „Neue Retoure“ sind weiterhin integriert.</li>\n
            </ul>
            """
          "frontend.help.rma.sections.updated.eyebrow" => "Aktueller Stand"
          "frontend.help.rma.sections.updated.title" => "Retouren-Workflow und Statusanzeige"
          "frontend.help.rma.sections.when.body" => """
            <ul class="help-doc-list">\n
              <li>Die Bestellung sollte bereits geliefert sein.</li>\n
              <li>Pro Produkt kann nur ein aktiver Retourenvorgang gleichzeitig laufen.</li>\n
              <li>Nach abgelehnten oder stornierten Vorgängen ist später eine neue Anfrage möglich.</li>\n
            </ul>
            """
          "frontend.help.rma.sections.when.eyebrow" => "Voraussetzungen"
          "frontend.help.rma.sections.when.title" => "Wann eine Retoure möglich ist"
          "frontend.help.rma.sidebar.links.eyebrow" => "Direkt weiter"
          "frontend.help.rma.sidebar.links.my_returns" => "Meine Retouren"
          "frontend.help.rma.sidebar.links.new_return" => "Neue Retoure"
          "frontend.help.rma.sidebar.links.overview" => "Zur Hilfe"
          "frontend.help.rma.sidebar.links.title" => "In den Retouren-Bereich springen"
          "frontend.help.rma.sidebar.note.body" => """
            <p><strong>Wie lange habe ich Zeit?</strong><br>Die genaue Frist richtet sich nach deinen geltenden Bedingungen und AGB.</p>\n
            <p><strong>Wer trägt die Versandkosten?</strong><br>Bei Defekt oder Falschlieferung wird das individuell im Prozess geklärt.</p>
            """
          "frontend.help.rma.sidebar.note.eyebrow" => "Häufige Fragen"
          "frontend.help.rma.sidebar.note.title" => "Rücksendungen besser einordnen"
          "frontend.hotel.breakfast_buffet" => "Frühstücksbuffet inklusive"
          "frontend.hotel.credit_card" => "Zahlung per EC-Karte/Kreditkarte"
          "frontend.hotel.pets" => "Haustiere willkommen"
          "frontend.hotel.service" => "kostenloses WLAN"
          "frontend.menu.apartments" => "Ferienwohnungen"
          "frontend.menu.arrive" => "Anreise"
          "frontend.menu.bikers_welcome" => "Biker willkommen!"
          "frontend.menu.blog" => "Blog"
          "frontend.menu.breakfast" => "Unser Frühstück"
          "frontend.menu.contact" => "Kontakt"
          "frontend.menu.culture_leisure" => "Kultur & Freizeit"
          "frontend.menu.data_protection" => "Datenschutzerklärung"
          "frontend.menu.dyke_street_62" => "Deichstraße 62"
          "frontend.menu.dyke_street_90" => "Deichstraße 90"
          "frontend.menu.gallery" => "Bildergalerie"
          "frontend.menu.georg_street_30" => "Georgstraße 30"
          "frontend.menu.goethe_street_1" => "Goethestraße 1"
          "frontend.menu.guest_house" => "Gästehaus & Apartments"
          "frontend.menu.guesthouse" => "Gästehaus"
          "frontend.menu.guesthouse_1" => "Einzelzimmer"
          "frontend.menu.guesthouse_2" => "Doppelzimmer"
          "frontend.menu.guesthouse_3" => "3 Personen Apartment"
          "frontend.menu.guesthouse_4" => "4 Personen Apartment"
          "frontend.menu.guesthouse_5" => "5 Personen Apartment"
          "frontend.menu.guesthouse_6" => "6 Personen Apartment"
          "frontend.menu.guesthouse_7" => "7 Personen Apartment"
          "frontend.menu.guesthouse_8" => "8 Personen Apartment"
          "frontend.menu.guesthouse_9" => "9 Personen Apartment"
          "frontend.menu.home" => "Startseite"
          "frontend.menu.imprint" => "Impressum"
          "frontend.menu.information" => "Information"
          "frontend.menu.live_cam" => "Live Cam"
          "frontend.menu.prices" => "& Preise"
          "frontend.menu.privacy" => "Datenschutz"
          "frontend.menu.rooms_prices" => "Zimmer & Preise"
          "frontend.menu.service" => "Unser Service"
          "frontend.menu.shop" => "Shop"
          "frontend.menu.shop.overview" => "Übersicht"
          "frontend.menu.terms" => "AGB"
          "frontend.menu.ulmen_street_29" => "Ulmenstraße 29"
          "frontend.menu.weather" => "Wetter"
          "frontend.navigation.actions.open_sidebar" => "Seitenleiste öffnen"
          "frontend.navigation.customer.account" => "Mein Konto"
          "frontend.navigation.customer.b2b_registration" => "B2B-Registrierung"
          "frontend.navigation.customer.help" => "Hilfe"
          "frontend.navigation.customer.label" => "Shop-Kunde"
          "frontend.navigation.customer.login" => "Shop anmelden"
          "frontend.navigation.customer.logout" => "Shop abmelden"
          "frontend.navigation.locale.label" => "Sprache"
          "frontend.navigation.menu.all_products" => "Alle Produkte"
          "frontend.navigation.menu.category_fallback" => "Kategorie"
          "frontend.page_subtitle.arrive" => "zu NFOK"
          "frontend.page.login.all_rights" => "Alle Rechte vorbehalten."
          "frontend.page.login.already_member" => "Sie haben ein Benutzerkonto?"
          "frontend.page.login.btn_submit" => "Anmelden"
          "frontend.page.login.create_acount" => "Benutzerkonto anlegen"
          "frontend.page.login.domain" => "https://nfok.xyz"
          "frontend.page.login.domain_title" => "NFOK"
          "frontend.page.login.email" => "E-Mail"
          "frontend.page.login.log_in" => "Anmelden"
          "frontend.page.login.lost_your_password" => "Passwort vergessen?"
          "frontend.page.login.new_site" => "kein Benutzerkonto?"
          "frontend.page.login.password" => "Passwort"
          "frontend.page.login.remember_me" => "Erinnere dich an mich"
          "frontend.page.login.subtitle" => "NFOK"
          "frontend.page.login.title" => "NFOK WORK"
          "frontend.page.login.username" => "Benutzername"
          "frontend.page.password_rest.btn_rest_password" => "Passwort erneuern"
          "frontend.page.password_rest.rest_your_password" => "Passwort zurücksetzen"
          "frontend.page.password_rest.title" => "Passwort vergessen"
          "frontend.pagetitle.apartments" => "Ferienwohnungen"
          "frontend.pagetitle.arrive" => "Anreise"
          "frontend.pagetitle.breakfast" => "Frühstück"
          "frontend.pagetitle.contact" => "Kontakt"
          "frontend.pagetitle.contact_me" => "Wir sind hier"
          "frontend.pagetitle.dyke_street_62" => "Deichstraße 62"
          "frontend.pagetitle.dyke_street_90" => "Deichstraße 90"
          "frontend.pagetitle.gallery" => "Bildergalerie"
          "frontend.pagetitle.georg_street_30" => "Georgstraße 30"
          "frontend.pagetitle.goethe_street_1" => "Goethestraße 1"
          "frontend.pagetitle.guest_house" => "Gästehaus"
          "frontend.pagetitle.holiday_house" => "Ferienhaus"
          "frontend.pagetitle.hotel" => "NFOK"
          "frontend.pagetitle.our_and" => "Unser"
          "frontend.pagetitle.rooms_prices" => "Zimmer & Preise"
          "frontend.pagetitle.service" => "Service"
          "frontend.pagetitle.story" => "Geschichte"
          "frontend.pagetitle.title" => "NFOK"
          "frontend.pagetitle.ulmen_street_29" => "Ulmenstraße 29"
          "frontend.rooms_prices.9_room_price" => "ab 160,00 € pro Nacht inkl. Frühstücksbuffet"
          "frontend.rooms_prices.ez_room_price" => "ab 105,00 € pro Nacht inkl. Frühstücksbuffet"
          "frontend.rooms_prices.info_1" => "Die Zimmer verfügen jeweils über Dusche, WC, Haartrockner, Kabel-TV und WLAN. Aufgrund des Denkmalschutzes befindet sich das jeweils eigene Bad von zwei Einzelzimmern neben dem Zimmer."
          "frontend.rooms_prices.info_2" => "Ausstattung: Jede Wohneinheit hat verschiedene Ausstattungen und Aufteilungsvarianten."
          "frontend.rooms_prices.info_3" => "Belegungen: In unserem Gästehaus können wir Ihnen Apartments, Einzelzimmer, Doppelzimmer oder Mehrbettzimmer und Wohnungen mit unterschiedlichen Belegungsmöglichkeiten und Ausstattungen für Einzelpersonen, Paare oder Gästegruppen anbieten. Ob eine Übernachtung oder ein längerfristiger Aufenthalt – beides ist kein Problem. Alle Kategorien können jederzeit als Einzel- oder Doppelzimmer gebucht werden. Haustiere kostenfrei willkommen."
          "frontend.rooms_prices.info_4" => "Wir beraten Sie gerne am Telefon."
          "frontend.rooms_prices.info_5" => "Für offen gebliebene Fragen stehen wir Ihnen gerne zur Verfügung."
          "frontend.rooms_prices.left_img_box_price" => "105,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
          "frontend.rooms_prices.left_img_box_subprice" => "98,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
          "frontend.rooms_prices.left_img_box_subtitle" => "mit eigenem externen Bad gegenüber vom Zimmer"
          "frontend.rooms_prices.left_img_box_title" => "Einzelzimmer"
          "frontend.rooms_prices.right_img_box_price" => "128,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
          "frontend.rooms_prices.right_img_box_subprice" => "110,00 € pro Nacht inkl. Frühstücksbuffet und City-Tax"
          "frontend.rooms_prices.right_img_box_subtitle" => "als Einzelzimmer"
          "frontend.rooms_prices.right_img_box_title" => "Doppelzimmer"
          "frontend.rooms_prices.ulmen_room_price" => "ab 120,00 € pro Nacht"
          "frontend.shop_auth.login.actions.register" => "Jetzt registrieren"
          "frontend.shop_auth.login.actions.resend_confirmation" => "Bestätigungslink erneut senden"
          "frontend.shop_auth.login.actions.reset_password" => "Passwort vergessen?"
          "frontend.shop_auth.login.actions.submit" => "Anmelden"
          "frontend.shop_auth.login.breadcrumb_current" => "Anmelden"
          "frontend.shop_auth.login.fields.password" => "Passwort"
          "frontend.shop_auth.login.fields.password_placeholder" => "••••••••"
          "frontend.shop_auth.login.fields.resend_email_placeholder" => "E-Mail für Bestätigungslink"
          "frontend.shop_auth.login.fields.username" => "E-Mail / Benutzername"
          "frontend.shop_auth.login.fields.username_placeholder" => "name@beispiel.de"
          "frontend.shop_auth.login.intro_text" => "Melden Sie sich mit Ihrem Konto an"
          "frontend.shop_auth.login.intro_title" => "Willkommen zurück"
          "frontend.shop_auth.login.meta_title" => "Anmelden - Shop"
          "frontend.shop_auth.login.missing_confirmation" => "Bestätigungslink nicht mehr vorhanden?"
          "frontend.shop_auth.login.no_account" => "Noch kein Konto?"
          "frontend.shop_auth.login.page_title" => "Anmelden"
          "frontend.shop_auth.password_reset.check_email.actions.back_to_login" => "Zurück zum Login"
          "frontend.shop_auth.password_reset.check_email.actions.retry" => "Erneut versuchen"
          "frontend.shop_auth.password_reset.check_email.breadcrumb_current" => "E-Mail prüfen"
          "frontend.shop_auth.password_reset.check_email.info" => "Falls ein Konto mit dieser E-Mail-Adresse existiert, wurde ein Link zum Zurücksetzen gesendet. Der Link ist etwa %hours% Stunde(n) gültig."
          "frontend.shop_auth.password_reset.check_email.intro_text" => "Prüfen Sie Ihr Postfach für den nächsten Schritt."
          "frontend.shop_auth.password_reset.check_email.intro_title" => "Fast geschafft"
          "frontend.shop_auth.password_reset.check_email.meta_title" => "E-Mail prüfen - Passwort zurücksetzen"
          "frontend.shop_auth.password_reset.check_email.page_title" => "E-Mail prüfen"
          "frontend.shop_auth.password_reset.check_email.retry_notice" => "Keine E-Mail gefunden? Prüfen Sie bitte auch den Spam-Ordner oder fordern Sie einen neuen Link an."
          "frontend.shop_auth.password_reset.request.actions.back_to_login" => "Zurück zum Login"
          "frontend.shop_auth.password_reset.request.actions.submit" => "Link zum Zurücksetzen senden"
          "frontend.shop_auth.password_reset.request.back_notice" => "Sie kennen Ihr Passwort doch noch?"
          "frontend.shop_auth.password_reset.request.breadcrumb_current" => "Passwort zurücksetzen"
          "frontend.shop_auth.password_reset.request.fields.email" => "E-Mail-Adresse"
          "frontend.shop_auth.password_reset.request.fields.email_placeholder" => "name@beispiel.de"
          "frontend.shop_auth.password_reset.request.help_text" => "Geben Sie Ihre E-Mail-Adresse ein. Wenn ein Konto dazu existiert, senden wir Ihnen einen Link zum Zurücksetzen Ihres Passworts."
          "frontend.shop_auth.password_reset.request.intro_text" => "Fordern Sie einen sicheren Link zum Zurücksetzen Ihres Passworts an."
          "frontend.shop_auth.password_reset.request.intro_title" => "Passwort vergessen?"
          "frontend.shop_auth.password_reset.request.meta_title" => "Passwort zurücksetzen - Shop"
          "frontend.shop_auth.password_reset.request.page_title" => "Passwort zurücksetzen"
          "frontend.shop_auth.password_reset.reset.actions.back_to_login" => "Zurück zum Login"
          "frontend.shop_auth.password_reset.reset.actions.submit" => "Neues Passwort speichern"
          "frontend.shop_auth.password_reset.reset.back_notice" => "Sie möchten stattdessen wieder zum Login?"
          "frontend.shop_auth.password_reset.reset.breadcrumb_current" => "Neues Passwort setzen"
          "frontend.shop_auth.password_reset.reset.fields.password" => "Neues Passwort"
          "frontend.shop_auth.password_reset.reset.fields.password_placeholder" => "Mindestens 6 Zeichen"
          "frontend.shop_auth.password_reset.reset.fields.repeat_password" => "Passwort wiederholen"
          "frontend.shop_auth.password_reset.reset.fields.repeat_password_placeholder" => "Passwort erneut eingeben"
          "frontend.shop_auth.password_reset.reset.intro_text" => "Wählen Sie ein neues Passwort für Ihr Shop-Konto."
          "frontend.shop_auth.password_reset.reset.intro_title" => "Neues Passwort vergeben"
          "frontend.shop_auth.password_reset.reset.meta_title" => "Neues Passwort setzen - Shop"
          "frontend.shop_auth.password_reset.reset.page_title" => "Neues Passwort setzen"
          "frontend.shop_auth.register.actions.login" => "Zum Login"
          "frontend.shop_auth.register.actions.submit" => "Konto erstellen"
          "frontend.shop_auth.register.breadcrumb_current" => "Registrieren"
          "frontend.shop_auth.register.confirmation_notice" => "Nach der Registrierung senden wir Ihnen einen Bestätigungslink per E-Mail. Erst danach wird Ihr Shop-Konto freigeschaltet."
          "frontend.shop_auth.register.existing_account" => "Bereits registriert?"
          "frontend.shop_auth.register.fields.email" => "E-Mail-Adresse"
          "frontend.shop_auth.register.fields.email_placeholder" => "name@beispiel.de"
          "frontend.shop_auth.register.fields.name" => "Vollständiger Name"
          "frontend.shop_auth.register.fields.name_placeholder" => "Max Mustermann"
          "frontend.shop_auth.register.fields.password" => "Passwort"
          "frontend.shop_auth.register.fields.password_help" => "Für den Login ist zusätzlich eine Bestätigung Ihrer E-Mail-Adresse erforderlich."
          "frontend.shop_auth.register.fields.password_placeholder" => "Mindestens 8 Zeichen"
          "frontend.shop_auth.register.flashes.created" => "Konto erfolgreich erstellt. Bitte bestätigen Sie jetzt Ihre E-Mail-Adresse, bevor Sie sich anmelden."
          "frontend.shop_auth.register.flashes.email_exists" => "Diese E-Mail-Adresse ist bereits registriert."
          "frontend.shop_auth.register.flashes.invalid_csrf" => "Ungültiges Formular-Token. Bitte versuchen Sie es erneut."
          "frontend.shop_auth.register.flashes.invalid_email" => "Bitte geben Sie eine gültige E-Mail-Adresse ein."
          "frontend.shop_auth.register.flashes.password_too_short" => "Das Passwort muss mindestens 8 Zeichen lang sein."
          "frontend.shop_auth.register.flashes.pending_verification_resent" => "Für diese E-Mail-Adresse besteht bereits eine offene Registrierung. Wir haben einen neuen Bestätigungslink versendet."
          "frontend.shop_auth.register.flashes.rate_limit" => "Zu viele Registrierungsversuche."
          "frontend.shop_auth.register.flashes.required_fields" => "Bitte füllen Sie alle Felder aus."
          "frontend.shop_auth.register.intro_text" => "Registrieren Sie sich kostenlos"
          "frontend.shop_auth.register.intro_title" => "Konto erstellen"
          "frontend.shop_auth.register.meta_title" => "Konto erstellen - Shop"
          "frontend.shop_auth.register.page_title" => "Konto erstellen"
          "frontend.shop_auth.resend.flashes.invalid_csrf" => "Die Anfrage konnte aus Sicherheitsgründen nicht verarbeitet werden."
          "frontend.shop_auth.resend.flashes.invalid_email" => "Bitte geben Sie eine gültige E-Mail-Adresse ein."
          "frontend.shop_auth.resend.flashes.mail_failed" => "Die Bestätigungsmail konnte nicht sofort versendet werden. Bitte verwenden Sie die Funktion zum erneuten Senden auf der Login-Seite."
          "frontend.shop_auth.resend.flashes.rate_limit" => "Zu viele Anfragen für neue Bestätigungslinks."
          "frontend.shop_auth.resend.flashes.sent_if_exists" => "Falls für diese E-Mail-Adresse ein unbestätigtes Shop-Konto existiert, wurde ein neuer Bestätigungslink versendet."
          "frontend.shop_auth.verify.flashes.already_verified" => "Dieses Shop-Konto ist bereits bestätigt und kann direkt genutzt werden."
          "frontend.shop_auth.verify.flashes.expired_resent" => "Der Bestatigungslink war abgelaufen. Wir haben Ihnen automatisch einen neuen Link gesendet."
          "frontend.shop_auth.verify.flashes.invalid_token" => "Der Bestätigungslink ist ungültig oder wurde bereits verwendet."
          "frontend.shop_auth.verify.flashes.verified" => "Ihre E-Mail-Adresse wurde erfolgreich bestätigt. Sie können sich jetzt anmelden."
          "frontend.shop.actions.add_error" => "Fehler beim Hinzufügen zum Warenkorb"
          "frontend.shop.actions.add_to_cart" => "In den Warenkorb"
          "frontend.shop.actions.added" => "Hinzugefügt"
          "frontend.shop.actions.buy" => "Kaufen"
          "frontend.shop.actions.cart_short" => "Warenkorb"
          "frontend.shop.actions.clear_b2b_group" => "B2B-Gruppe zurücksetzen"
          "frontend.shop.actions.loading" => "Lädt..."
          "frontend.shop.actions.request_quote" => "B2B-Angebot anfragen"
          "frontend.shop.actions.watchlist_add" => "Merkliste +"
          "frontend.shop.actions.watchlist_remove" => "Merkliste -"
          "frontend.shop.actions.wishlist" => "Wunschliste"
          "frontend.shop.actions.wishlist_remove" => "Wunschliste entfernen"
          "frontend.shop.category.default_title" => "Kategorie"
          "frontend.shop.confirmation.account" => "Mein Konto"
          "frontend.shop.confirmation.breadcrumb_current" => "Bestätigung"
          "frontend.shop.confirmation.continue_shopping" => "Weiter einkaufen"
          "frontend.shop.confirmation.message" => "Ihre Bestellung wurde erfolgreich aufgenommen. Sie erhalten in Kürze eine Bestätigungs-E-Mail mit allen Details."
          "frontend.shop.confirmation.meta_title" => "Bestellung erfolgreich - Vielen Dank!"
          "frontend.shop.confirmation.page_title" => "Bestellung erfolgreich"
          "frontend.shop.confirmation.title" => "Vielen Dank für Ihre Bestellung!"
          "frontend.shop.errors.category_not_found" => "Kategorie nicht gefunden."
          "frontend.shop.errors.product_not_found" => "Produkt nicht gefunden."
          "frontend.shop.labels.sale_prefix" => "Aktion:"
          "frontend.shop.limit.per_page" => "pro Seite"
          "frontend.shop.limit.products" => "Produkte"
          "frontend.shop.no.product.image" => "Kein Bild"
          "frontend.shop.not.found.products" => "Keine Produkte gefunden."
          "frontend.shop.notifications.product_unavailable" => "Dieses Produkt ist aktuell nicht verfügbar."
          "frontend.shop.overview" => "Übersicht"
          "frontend.shop.product.labels.b2b" => "B2B"
          "frontend.shop.product.labels.gross" => "Brutto"
          "frontend.shop.product.labels.net" => "Netto"
          "frontend.shop.product.labels.price_breakdown" => "Netto: %net% | Brutto: %gross% | MwSt: %vat%%"
          "frontend.shop.product.labels.sku" => "Artikelnummer"
          "frontend.shop.product.labels.special_price" => "Sonderpreis"
          "frontend.shop.product.labels.tags" => "Schlagwörter"
          "frontend.shop.product.labels.uvp" => "UVP"
          "frontend.shop.product.labels.vat_excluded" => "zzgl. MwSt."
          "frontend.shop.product.labels.vat_included" => "inkl. MwSt."
          "frontend.shop.product.manufacturer" => "Hersteller:"
          "frontend.shop.product.pickup.available_text" => "Sie können diesen Artikel im Checkout ohne Versandkosten zur Abholung auswählen."
          "frontend.shop.product.pickup.available_title" => "Abholung im Geschäft möglich"
          "frontend.shop.product.pickup.free_shipping" => "Keine Versandkosten bei Abholung"
          "frontend.shop.product.pickup.label" => "Abholung im Geschäft"
          "frontend.shop.product.pickup.note_label" => "Hinweis zur Abholung"
          "frontend.shop.product.pickup.only_text" => "Dieser Artikel ist ausschließlich zur Abholung verfügbar. Versand wird im Checkout nicht angeboten."
          "frontend.shop.product.pickup.only_title" => "Nur Abholung im Geschäft"
          "frontend.shop.product.pickup.ready_notification" => "Bereitmeldung per E-Mail"
          "frontend.shop.product.question.answer_label" => "Antwort:"
          "frontend.shop.product.question.asked_by" => "<strong>%name%</strong> fragt:"
          "frontend.shop.product.question.default_author" => "Gast"
          "frontend.shop.product.question.email" => "E-Mail (optional)"
          "frontend.shop.product.question.email_placeholder" => "dein@email.de"
          "frontend.shop.product.question.empty" => "Noch keine beantworteten Fragen vorhanden."
          "frontend.shop.product.question.login_notice" => "%login_link_open%Jetzt anmelden%login_link_close%, um eine Frage zu stellen."
          "frontend.shop.product.question.name" => "Name"
          "frontend.shop.product.question.name_placeholder" => "Dein Name"
          "frontend.shop.product.question.question_label" => "Frage"
          "frontend.shop.product.question.required" => "Bitte eine Frage eingeben."
          "frontend.shop.product.question.submit" => "Frage absenden"
          "frontend.shop.product.question.submitted" => "Vielen Dank. Deine Frage wurde zur Moderation eingereicht."
          "frontend.shop.product.question.title" => "Fragen & Antworten"
          "frontend.shop.product.review.controller.anonymous_name" => "Anonym"
          "frontend.shop.product.review.controller.body_required" => "Bitte einen Bewertungstext eingeben."
          "frontend.shop.product.review.controller.csrf_invalid" => "Ungültiges Token. Bitte erneut versuchen."
          "frontend.shop.product.review.controller.guest_name" => "Gast"
          "frontend.shop.product.review.controller.product_not_found" => "Produkt nicht gefunden."
          "frontend.shop.product.review.controller.rating_invalid" => "Ungültige Sternebewertung."
          "frontend.shop.product.review.controller.submitted" => "Vielen Dank für Ihre Bewertung. Sie wird nach Prüfung freigeschaltet."
          "frontend.shop.product.review.count_one" => "%count% Bewertung"
          "frontend.shop.product.review.count_other" => "%count% Bewertungen"
          "frontend.shop.product.review.empty" => "Noch keine Bewertungen vorhanden."
          "frontend.shop.product.review.form.body" => "Bewertung"
          "frontend.shop.product.review.form.body_placeholder" => "Teilen Sie Ihre Erfahrungen mit diesem Produkt…"
          "frontend.shop.product.review.form.email" => "E-Mail (optional, nicht öffentlich)"
          "frontend.shop.product.review.form.email_placeholder" => "ihre@email.de"
          "frontend.shop.product.review.form.heading" => "Bewertung schreiben"
          "frontend.shop.product.review.form.moderation_notice" => "Bewertungen werden nach Prüfung freigeschaltet."
          "frontend.shop.product.review.form.name" => "Name"
          "frontend.shop.product.review.form.name_placeholder" => "Ihr Name"
          "frontend.shop.product.review.form.rating" => "Sterne-Bewertung"
          "frontend.shop.product.review.form.submit" => "Bewertung absenden"
          "frontend.shop.product.review.form.title" => "Titel (optional)"
          "frontend.shop.product.review.form.title_placeholder" => "Kurze Zusammenfassung"
          "frontend.shop.product.review.gate.customer_missing" => "Ihr Shop-Konto ist keinem Kundenprofil zugeordnet."
          "frontend.shop.product.review.gate.login_cta" => "Jetzt anmelden"
          "frontend.shop.product.review.gate.login_required" => "Nur angemeldete Shop-Kunden können bewerten."
          "frontend.shop.product.review.gate.not_allowed" => "Bewertungen sind erst nach erfolgreicher Bestellung und Erhalt des Artikels möglich."
          "frontend.shop.product.review.gate.unavailable" => "Eine Bewertung ist aktuell nicht möglich."
          "frontend.shop.product.review.heading" => "Kundenbewertungen"
          "frontend.shop.product.review.tab" => "Bewertungen"
          "frontend.shop.product.review.verified_purchase" => "Verifizierter Kauf"
          "frontend.shop.product.stock" => "Lagerbestand:"
          "frontend.shop.product.tabs.details" => "Details"
          "frontend.shop.product.tabs.questions" => "Fragen & Antworten"
          "frontend.shop.search.products.placeholder" => "Produkte suchen..."
          "frontend.shop.sidebar.categories" => "Kategorien"
          "frontend.shop.total.found" => "Produkte gefunden."
          "frontend.shop.total.products" => "Produkte"
          "frontend.single_room.with_external_bathroom.title" => "Einzelzimmer mit externem Bad"
          "frontend.slider.img_subtxt_1" => "mehr Text hier"
          "frontend.slider.img_subtxt_2" => "mehr Text hier"
          "frontend.slider.img_subtxt_3" => "mehr Text hier"
          "frontend.slider.img_txt_1" => "" Info Text Hier ""
          "frontend.slider.img_txt_2" => "" Info Text Hier ""
          "frontend.slider.img_txt_3" => "" Info Text Hier ""
        ]
      ]
      -adminDomainCache: []
      -locale: "de"
      -repo: App\Repository\TranslationRepository {#265 …}
      -defaultLocale: "de"
      -projectDir: "/var/www/nfok.xyz"
    }
    $message: Closure() {#956 …}
    $translationDomain: "validators"
  }
}
validation_groups
null

View Vars

Variable Value
action
""
attr
[]
attr_translation_parameters
[]
block_prefixes
[
  "form"
  "reset_password_request_form"
  "_reset_password_request_form"
]
cache_key
"_reset_password_request_form_reset_password_request_form"
compound
true
data
null
disabled
false
errors
Symfony\Component\Form\FormErrorIterator {#988
  -errors: []
  -form: Symfony\Component\Form\Form {#1014 …}
}
form
Symfony\Component\Form\FormView {#958 …5}
full_name
"reset_password_request_form"
help
null
help_attr
[]
help_html
false
help_translation_parameters
[]
id
"reset_password_request_form"
label
null
label_attr
[]
label_format
null
label_html
false
label_translation_parameters
[]
method
"POST"
multipart
false
name
"reset_password_request_form"
priority
0
required
true
row_attr
[]
submitted
false
translation_domain
null
unique_block_prefix
"_reset_password_request_form"
valid
true
value
null