{
    "app": {
        "name": "EverShelf",
        "loading": "Laden..."
    },
    "nav": {
        "title": "EverShelf",
        "home": "Home",
        "inventory": "Vorrat",
        "recipes": "Rezepte",
        "shopping": "Einkauf",
        "log": "Verlauf"
    },
    "btn": {
        "back": "← Zurück",
        "save": "💾 Speichern",
        "cancel": "✕ Abbrechen",
        "close": "Schließen",
        "add": "✅ Hinzufügen",
        "delete": "Löschen",
        "edit": "✏️ Bearbeiten",
        "search": "🔍 Suchen",
        "go": "✅ Los",
        "toggle_password": "👁️ Anzeigen/Ausblenden",
        "load_more": "Mehr laden...",
        "save_config": "💾 Konfiguration speichern",
        "save_product": "💾 Produkt speichern",
        "restart": "↺ Neustart",
        "reset_default": "↺ Standard wiederherstellen",
        "save_info": "💾 Info speichern",
        "retry": "🔄 Erneut versuchen"
    },
    "locations": {
        "dispensa": "Vorratskammer",
        "frigo": "Kühlschrank",
        "freezer": "Gefrierschrank",
        "altro": "Sonstiges"
    },
    "categories": {
        "latticini": "Milchprodukte",
        "carne": "Fleisch",
        "pesce": "Fisch",
        "frutta": "Obst",
        "verdura": "Gemüse",
        "pasta": "Pasta & Reis",
        "pane": "Brot & Backwaren",
        "surgelati": "Tiefkühl",
        "bevande": "Getränke",
        "condimenti": "Gewürze",
        "snack": "Snacks & Süßes",
        "conserve": "Konserven",
        "cereali": "Getreide & Hülsenfrüchte",
        "igiene": "Hygiene",
        "pulizia": "Reinigung",
        "altro": "Sonstiges",
        "select": "-- Auswählen --"
    },
    "units": {
        "pz": "Stk",
        "conf": "Pkg",
        "g": "g",
        "ml": "ml",
        "pieces": "Stück",
        "grams": "Gramm",
        "box": "Packung",
        "boxes": "Packungen"
    },
    "shopping_sections": {
        "frutta_verdura": "Obst & Gemüse",
        "carne_pesce": "Fleisch & Fisch",
        "latticini": "Milchprodukte & Frisches",
        "pane_dolci": "Brot & Süßes",
        "pasta": "Pasta & Getreide",
        "conserve": "Konserven & Soßen",
        "surgelati": "Tiefkühl",
        "bevande": "Getränke",
        "pulizia_igiene": "Reinigung & Hygiene",
        "altro": "Sonstiges"
    },
    "dashboard": {
        "expired_title": "🚫 Abgelaufen",
        "expiring_title": "⏰ Bald ablaufend",
        "stats_period": "📊 Letzte 30 Tage",
        "opened_title": "📦 Geöffnete Produkte",
        "review_title": "🔍 Zu prüfen",
        "review_hint": "Mengen, die ungewöhnlich erscheinen. Bestätigen oder ändern.",
        "quick_recipe": "🍳 Schnelles Rezept mit ablaufenden Produkten",
        "banner_review_title": "Ungewöhnliche Menge",
        "banner_review_action_ok": "Ist korrekt",
        "banner_review_action_finish": "🗑️ Alles aufgebraucht",
        "banner_review_action_edit": "Korrigieren",
        "banner_review_action_weigh": "Wiegen",
        "banner_review_dismiss": "Ignorieren",
        "banner_prediction_title": "Ungewöhnlicher Verbrauch",
        "banner_prediction_hint": "Laut Vorhersage stimmt diese Menge nicht mit dem erwarteten Verbrauch überein.",
        "banner_prediction_action_confirm": "{qty} {unit} bestätigen",
        "banner_prediction_action_weigh": "Jetzt wiegen",
        "banner_prediction_action_edit": "Menge aktualisieren",
        "banner_expired_title": "Abgelaufenes Produkt",
        "banner_expired_today": "Heute abgelaufen",
        "banner_expired_days": "Seit {days} Tagen abgelaufen",
        "banner_expired_action_use": "Trotzdem verwenden",
        "banner_expired_action_throw": "Habe ich weggeworfen",
        "banner_expired_action_edit": "Datum korrigieren",
        "banner_anomaly_action_edit": "Bestand korrigieren",
        "banner_anomaly_action_dismiss": "Menge ist korrekt",
        "banner_expiring_title": "Bald ablaufend",
        "banner_expiring_today": "Läuft heute ab!",
        "banner_expiring_tomorrow": "Läuft morgen ab",
        "banner_expiring_days": "Läuft in {days} Tagen ab",
        "banner_expiring_action_use": "Jetzt verwenden",
        "banner_finished_title": "aufgebraucht?",
        "banner_finished_detail": "Ich habe vermerkt, dass {name} auf null gesunken ist. Ist es wirklich leer, oder hast du noch welches?",
        "banner_finished_action_yes": "Ja, aufgebraucht",
        "banner_finished_action_no": "Nein, ich habe noch welches",
        "banner_review_unusual_pkg_title": "Ungewöhnliche Packungsgröße",
        "banner_review_unusual_pkg_detail": "Du hast eine Packung von {qty} {unit} eingestellt — die Größe scheint sehr groß. Überprüfe ob es korrekt ist.",
        "banner_review_low_qty_title": "Sehr geringe Menge",
        "banner_review_low_qty_detail": "Du hast nur {qty} im Bestand — das scheint sehr wenig, möglicherweise ein Eingabefehler. Bestätige wenn korrekt.",
        "banner_review_high_qty_title": "Ungewöhnlich hohe Menge",
        "banner_review_high_qty_detail": "Du hast {qty} im Bestand — die Zahl scheint sehr hoch. Bestätige wenn korrekt oder korrigiere.",
        "banner_prediction_rate_day": "Durchschnitt ~{n} {unit}/Tag",
        "banner_prediction_rate_week": "Durchschnitt ~{n} {unit}/Woche",
        "banner_prediction_days_ago": "Vor {n} Tagen aufgefüllt",
        "banner_prediction_more": "Ich erwartete {expected} {unit}{time}, du hast aber {actual} {unit}. Hast du Bestand ohne Buchung hinzugefügt?",
        "banner_prediction_less": "Ich erwartete {expected} {unit}{time}, du hast aber nur {actual} {unit}. Hast du mehr als üblich verbraucht?",
        "banner_finished_zero": "Bestand zeigt null, aber gespeicherte Buchungen deuten an, dass es nicht leer sein sollte.",
        "banner_finished_expected": "Laut Aufzeichnungen solltest du noch {qty} {unit} haben.",
        "banner_finished_check": "Kannst du nachschauen?",
        "banner_anomaly_phantom_title": "mehr Bestand als erwartet",
        "banner_anomaly_phantom_detail": "Bestand zeigt {inv_qty} {unit}, aber laut Buchungen solltest du nur {expected_qty} {unit} haben. Hast du Bestand ohne Buchung hinzugefügt?",
        "banner_anomaly_untracked_title": "Anfangsbestand nicht als Eingang gebucht",
        "banner_anomaly_untracked_detail": "Du hast <strong>{inv_qty} {unit}</strong> im Bestand, aber die gebuchten Abgänge übersteigen die Eingänge — der Anfangsbestand wurde wahrscheinlich nie als \"Eingang\" erfasst. Bitte korrigiere die Menge oder trage die fehlenden Eingänge nach."
,
        "banner_anomaly_ghost_title": "weniger Bestand als erwartet",
        "banner_anomaly_ghost_detail": "Laut Buchungen solltest du {expected_qty} {unit} von {name} haben, aber der Bestand zeigt nur {inv_qty} {unit}. Hast du etwas ohne Buchung entnommen?",
        "consumed": "Verbraucht: {n} ({pct}%)",
        "wasted": "Weggeworfen: {n} ({pct}%)",
        "more_opened": "und {n} weitere geöffnet...",
        "banner_expired_detail": "{when} · du hast noch <strong>{qty}</strong>."
    },
    "inventory": {
        "title": "Vorrat",
        "filter_all": "Alle",
        "search_placeholder": "🔍 Produkt suchen...",
        "recent_title": "🕐 Zuletzt verwendet",
        "popular_title": "⭐ Meistverwendet",
        "empty": "Keine Produkte hier.\nScanne ein Produkt, um es hinzuzufügen!",
        "no_items_found": "Keine Bestandseinträge gefunden",
        "qty_remainder_suffix": "übrig",
        "vacuum_badge": "🫙 Vakuumiert",
        "opened_badge": "📭 Geöffnet",
        "label_expiry": "📅 Ablaufdatum",
        "label_storage": "🫙 Aufbewahrung",
        "label_status": "📭 Status",
        "opened_since": "Geöffnet seit {date}",
        "label_position": "📍 Standort",
        "label_quantity": "📦 Menge",
        "label_added": "📅 Hinzugefügt",
        "empty_text": "Keine Produkte hier.<br>Scanne ein Produkt, um es hinzuzufügen!",
        "empty_db": "Keine Produkte in der Datenbank.<br>Scanne ein Produkt, um loszulegen!"
    },
    "scan": {
        "title": "Produkt scannen",
        "mode_shopping": "🛒 Einkaufsmodus",
        "mode_shopping_end": "✅ Einkauf beenden",
        "zoom": "Zoom",
        "barcode_placeholder": "Barcode eingeben...",
        "quick_name_divider": "oder Name eingeben",
        "quick_name_placeholder": "z.B.: Äpfel, Zucchini, Brot...",
        "manual_entry": "✏️ Manuelle Eingabe",
        "ai_identify": "🤖 Mit KI identifizieren",
        "hint": "Barcode scannen, Produktname eingeben oder KI zur Identifikation nutzen",
        "debug_toggle": "🐛 Debug Log",
        "barcode_acquired": "🔖 Barcode gescannt: {code}",
        "scan_barcode": "🔖 Barcode scannen",
        "create_named": "{name} erstellen",
        "new_without_barcode": "Neues Produkt ohne Barcode"
    },
    "action": {
        "title": "Was möchtest du tun?",
        "add_btn": "📥 HINZUFÜGEN",
        "add_sub": "in Vorrat/Kühlschrank",
        "use_btn": "📤 VERWENDEN / VERBRAUCHEN",
        "use_sub": "aus Vorrat/Kühlschrank",
        "have_title": "📦 Schon auf Lager!",
        "add_more_sub": "weitere Menge",
        "use_qty_sub": "wie viel verwendet",
        "throw_btn": "🗑️ ENTSORGEN",
        "throw_sub": "wegwerfen",
        "edit_sub": "Ablauf, Ort…"
    },
    "add": {
        "title": "Zum Vorrat hinzufügen",
        "location_label": "📍 Wohin?",
        "quantity_label": "📦 Menge",
        "conf_size_label": "📦 Jede Packung enthält:",
        "conf_size_placeholder": "z.B. 300",
        "vacuum_label": "🫙 Vakuumiert",
        "vacuum_hint": "Ablaufdatum wird automatisch verlängert",
        "submit": "✅ Hinzufügen",
        "purchase_type_label": "🛒 Dieses Produkt ist...",
        "new_btn": "🆕 Gerade gekauft",
        "existing_btn": "📦 Hatte ich schon",
        "remaining_label": "📦 Verbleibende Menge",
        "remaining_hint": "Ungefähr wie viel ist noch übrig?",
        "remaining_full": "🟢 Voll",
        "remaining_half": "🟠 Halb",
        "estimated_expiry": "Geschätzte Haltbarkeit:",
        "suffix_freezer": "(Tiefkühler)",
        "suffix_vacuum": "(vakuumversiegelt)",
        "hint_modify": "📝 Du kannst das Datum ändern oder mit der Kamera scannen",
        "scan_expiry_title": "📷 Ablaufdatum scannen",
        "product_added": "✅ {name} hinzugefügt!{qty}",
        "suffix_freezer_vacuum": "(Tiefkühler + vakuumversiegelt)"
    },
    "use": {
        "title": "Verwenden / Verbrauchen",
        "location_label": "📍 Woher?",
        "quantity_label": "Wie viel hast du benutzt?",
        "change": "ändern",
        "partial_hint": "Oder genaue Menge angeben:",
        "partial_piece_hint": "Hast du nur einen Teil verwendet?",
        "piece": "Stück",
        "one_whole": "1 ganzes",
        "use_all": "🗑️ ALLES verwendet / Aufgebraucht",
        "submit": "📤 Diese Menge verwenden",
        "available": "📦 Verfügbar:",
        "opened_badge": "GEOEFFNET",
        "not_in_inventory": "⚠️ Produkt nicht im Bestand.",
        "expiry_warning": "⚠️ Verwende zuerst die{loc}, die am {date} abläuft — {when}!",
        "throw_title": "🗑️ Produkt entsorgen",
        "throw_all": "🗑️ ALLES entsorgen ({qty})",
        "throw_qty_label": "Wie viel wegwerfen?",
        "throw_qty_hint": "oder Menge angeben:",
        "throw_partial_btn": "🗑️ Diese Menge entsorgen",
        "when_expired": "seit {n} Tagen abgelaufen",
        "when_today": "läuft <strong>heute</strong> ab",
        "when_tomorrow": "läuft <strong>morgen</strong> ab",
        "when_days": "läuft in <strong>{n} Tagen</strong> ab",
        "toast_used": "📤 {qty} von {name} verwendet",
        "toast_bring": "🛒 Produkt aufgebraucht → zu Bring! hinzugefügt",
        "toast_opened_finished": "🔓 Geöffnete Packung von {name} aufgebraucht!",
        "disambiguation_hint": "Was meinst du mit \"alles aufgebraucht\"?",
        "disambiguation_all": "🗑️ ALLES verbraucht ({qty})",
        "error_exceeds_stock": "⚠️ Du kannst nicht mehr verwenden als du verfügbar hast!"
    },
    "product": {
        "title_new": "Neues Produkt",
        "title_edit": "Produkt bearbeiten",
        "ai_fill": "📷 Foto machen und mit KI identifizieren",
        "ai_fill_hint": "KI füllt die Produktfelder automatisch aus",
        "name_label": "🏷️ Produktname *",
        "name_placeholder": "z.B.: Vollmilch, Penne Nudeln...",
        "brand_label": "🏢 Marke",
        "brand_placeholder": "z.B.: Barilla, Müller, Knorr...",
        "category_label": "📂 Kategorie",
        "unit_label": "📏 Maßeinheit",
        "default_qty_label": "🔢 Standardmenge",
        "conf_size_label": "📦 Jede Packung enthält:",
        "conf_size_placeholder": "z.B. 300",
        "notes_label": "📝 Notizen",
        "notes_placeholder": "z.B.: laktosefrei, bio, nach dem Öffnen im Kühlschrank aufbewahren...",
        "barcode_label": "🔖 Barcode",
        "barcode_placeholder": "Barcode (falls vorhanden)",
        "barcode_hint": "⚠️ Barcode hinzufügen, damit du beim nächsten Einkauf nur scannen musst!",
        "submit": "💾 Produkt speichern",
        "name_required": "Produktname eingeben",
        "conf_size_required": "Packungsinhalt angeben",
        "expiry_estimated": "Geschätztes Ablaufdatum:",
        "scan_expiry": "Ablaufdatum scannen",
        "expiry_hint": "📝 Du kannst das Datum ändern oder mit der Kamera scannen",
        "add_batch": "📦 + Charge mit anderem Ablaufdatum",
        "package_info": "📦 Packung: {info}",
        "edit_catalog": "⚙️ Produktinfo bearbeiten (Name, Marke, Kategorie…)",
        "not_recognized": "⚠️ Produkt nicht erkannt",
        "edit_info": "✏️ Informationen bearbeiten",
        "modify_details": "BEARBEITEN\nAblauf, Ort…",
        "already_in_pantry": "📋 Bereits im Vorratsschrank",
        "no_barcode": "Kein Barcode"
    },
    "products": {
        "title": "📦 Alle Produkte",
        "search_placeholder": "🔍 Produkt suchen...",
        "empty": "Keine Produkte in der Datenbank.\nScanne ein Produkt zum Starten!",
        "no_category": "Keine Produkte in dieser Kategorie"
    },
    "recipes": {
        "title": "🍳 Rezepte",
        "generate": "✨ Neues Rezept generieren",
        "archive_empty": "Keine Rezepte gespeichert. Erstelle dein erstes Rezept!",
        "dialog_title": "🍳 Rezept",
        "dialog_desc": "Ich erstelle ein gesundes Rezept mit Zutaten aus dem Vorrat und priorisiere Produkte mit nahendem Ablaufdatum.",
        "meal_label": "🕐 Für welche Mahlzeit?",
        "persons_label": "👥 Für wie viele Personen?",
        "meal_type_label": "🎯 Art der Mahlzeit",
        "opt_fast": "⚡ Schnelle Mahlzeit",
        "opt_light": "🥗 Kleiner Hunger",
        "opt_expiry": "⏰ Ablaufdaten priorisieren",
        "opt_healthy": "💚 Extra gesund",
        "opt_opened": "📦 Geöffnete Produkte priorisieren",
        "opt_zero_waste": "♻️ Zero Waste",
        "generate_btn": "✨ Rezept generieren",
        "loading_msg": "Rezept wird vorbereitet...",
        "start_cooking": "👨‍🍳 Kochmodus",
        "regenerate": "🔄 Noch eins generieren",
        "close_btn": "✅ Schließen",
        "ingredients_title": "🧾 Zutaten",
        "steps_title": "👨‍🍳 Zubereitung",
        "no_steps": "Keine Zubereitungsschritte verfügbar",
        "generate_error": "Fehler bei der Generierung",
        "persons_short": "Pers.",
        "use_ingredient_title": "Zutat verwenden",
        "recipe_qty_label": "Rezept",
        "from_where_label": "Von wo?",
        "amount_label": "Wie viel",
        "use_amount_btn": "Diese Menge verwenden",
        "use_all_btn": "ALLES verwenden / Aufgebraucht",
        "packs_label": "Packungen",
        "quantity_in_total": "Menge in {unit} (gesamt: {total})",
        "packs_of_have": "Packungen à {size} (du hast {count} Pack.)",
        "scale_wait_stable": "10s stabiles Gewicht für Auto-Ausfüllen abwarten…",
        "ingredient_scaled_toast": "📦 Zutat vom Vorrat abgezogen!",
        "finished_added_bring_toast": "🛒 Produkt aufgebraucht → zu Bring! hinzugefügt!",
        "load_error": "Fehler beim Laden"
    },
    "shopping": {
        "title": "🛒 Einkaufsliste",
        "bring_loading": "Verbindung zu Bring!...",
        "bring_not_configured": "Bring! ist nicht konfiguriert. Füge E-Mail und Passwort in den <a href='#' onclick=\"showPage('settings');return false;\">Einstellungen</a> hinzu.",
        "tab_to_buy": "🛍️ Zu kaufen",
        "tab_forecast": "🧠 Vorhersage",
        "total_label": "💰 Geschätzter Gesamtbetrag",
        "section_to_buy": "🛍️ Zu kaufen",
        "suggestions_title": "💡 KI-Vorschläge",
        "suggestions_add": "✅ Ausgewählte zu Bring! hinzufügen",
        "search_prices": "🔍 Alle Preise suchen",
        "suggest_btn": "🤖 Einkaufsvorschläge",
        "smart_title": "🧠 Intelligente Vorhersagen",
        "smart_empty": "Keine Vorhersagen verfügbar.<br>Füge Produkte zur Vorratskammer hinzu, um intelligente Vorhersagen zu erhalten.",
        "smart_filter_all": "Alle",
        "smart_filter_critical": "🔴 Dringend",
        "smart_filter_high": "🟠 Bald",
        "smart_filter_medium": "🟡 Planen",
        "smart_filter_low": "🟢 Vorhersage",
        "smart_add": "🛒 Ausgewählte zu Bring! hinzufügen",
        "empty": "Einkaufsliste leer!\nNutze den Button unten, um Vorschläge zu generieren.",
        "already_in_list": "🛒 \"{name}\" ist bereits in der Einkaufsliste",
        "already_in_list_short": "ℹ️ Bereits in der Einkaufsliste",
        "add_prompt": "Möchtest du es zur Einkaufsliste hinzufügen?",
        "smart_already": "📊 Intelligenter Einkauf sagt bereits {name} voraus",
        "all_searched": "Alle Produkte wurden bereits gesucht. Nutze 🔄 für einzelne Suchen.",
        "search_complete": "Suche abgeschlossen: {count} Produkte",
        "removed_sufficient": "🧹 {removed} Produkt(e) mit ausreichendem Bestand von der Liste entfernt",
        "bring_badge": "🛒 Schon auf Bring!",
        "add_urgent_toast": "🔴 {n} dringende(s) Produkt(e) automatisch zu Bring! hinzugefügt",
        "migration_done": "✅ {migrated} aktualisiert, {skipped} bereits ok",
        "added_to_bring": "🛒 {n} Produkte zu Bring! hinzugefügt",
        "added_to_bring_skip": "{n} bereits vorhanden",
        "all_on_bring": "Alle Produkte waren bereits auf Bring!",
        "freq_high": "📈 Häufig",
        "freq_regular": "📊 Regelmäßig",
        "freq_occasional": "📉 Gelegentlich",
        "out_of_stock": "Ausverkauft",
        "scan_toast": "📷 Scannen: {name}",
        "empty_category": "Keine Produkte in dieser Kategorie",
        "session_empty": "🛒 Noch keine Produkte",
        "urgency_critical": "Dringend",
        "urgency_high": "Bald",
        "urgency_medium": "Planen",
        "urgency_low": "Vorschau",
        "urgency_medium_short": "Mittel",
        "urgency_low_short": "Ok",
        "tag_urgent": "🔴 Dringend",
        "tag_priority": "⭐ Priorität",
        "tag_check": "✅ Prüfen",
        "smart_already_predicted": "📊 Einkauf wird bereits vorhergesagt: <strong>{name}</strong>{urgency}.",
        "item_removed": "✅ {name} von der Liste entfernt!",
        "urgency_spec_critical": "⚡ Dringend",
        "urgency_spec_high": "🟠 Bald",
        "bring_add_n": "{n} zu Bring! hinzufügen",
        "bring_add_selected": "Ausgewählte zu Bring! hinzufügen",
        "bring_adding": "Wird hinzugefügt...",
        "bring_added_one": "1 Produkt zu Bring! hinzugefügt",
        "bring_added_many": "{n} Produkte zu Bring! hinzugefügt",
        "bring_skipped": "({n} bereits in Liste)",
        "force_sync": "Bring!-Synchronisierung erzwingen",
        "scan_target_label": "Du suchst",
        "scan_target_found": "Gefunden! Aus Liste entfernen",
        "bring_add_one": "1 Produkt zu Bring! hinzufügen",
        "bring_add_many": "{n} Produkte zu Bring! hinzufügen",
        "syncing": "Synchronisiere…",
        "sync_done": "Synchronisierung abgeschlossen",
        "price_searching": "Suche...",
        "search_action": "Suchen",
        "open_action": "Öffnen",
        "not_found": "Nicht gefunden",
        "search_price": "Preis suchen",
        "tap_to_scan": "Zum Scannen tippen",
        "tag_title": "Tag",
        "remove_title": "Entfernen",
        "found_count": "{found}/{total} Produkte gefunden",
        "savings_offers": "· 🏷️ Du sparst €{amount} mit Angeboten",
        "searching_progress": "Suche {current}/{total}...",
        "remove_error": "Fehler beim Entfernen",
        "suggest_loading": "Analyse läuft...",
        "suggest_error": "Fehler bei der Vorschlagserstellung",
        "priority_high": "Hoch",
        "priority_medium": "Mittel",
        "priority_low": "Niedrig"
    },
    "ai": {
        "title": "🤖 KI-Identifikation",
        "capture": "📸 Foto aufnehmen",
        "retake": "🔄 Neu aufnehmen",
        "hint": "Mache ein Foto des Produkts und die KI versucht es zu identifizieren",
        "identifying": "🤖 Identifiziere Produkt...",
        "no_api_key": "⚠️ Gemini API-Schlüssel nicht konfiguriert.\n<small>Füge GEMINI_API_KEY in der .env Datei auf dem Server hinzu.</small>",
        "fields_filled": "✅ Felder von KI ausgefüllt",
        "use_data": "✅ KI-Daten verwenden",
        "use_data_no_barcode": "✅ KI-Daten verwenden (ohne Barcode)"
    },
    "log": {
        "title": "� Verlauf",
        "type_added": "Hinzugefügt",
        "type_waste": "Entsorgt",
        "type_used": "Verwendet",
        "type_bring": "Zu Bring! hinzugefügt",
        "undone_badge": "Rückgängig",
        "undo_title": "Diese Operation rückgängig machen",
        "load_error": "Fehler beim Laden des Verlaufs",
        "empty": "Keine Operationen aufgezeichnet.",
        "undo_action_remove": "Entfernen von",
        "undo_action_restore": "Wiederherstellen von",
        "undo_confirm": "Vorgang rückgängig machen?\n→ {action} {name}",
        "undo_success": "↩ Vorgang rückgängig gemacht für {name}",
        "already_undone": "Vorgang bereits rückgängig gemacht",
        "too_old": "Vorgänge älter als 24 Stunden können nicht rückgängig gemacht werden",
        "undo_error": "Fehler beim Rückgängigmachen"
    },
    "chat": {
        "title": "Gemini Chef",
        "welcome": "Hallo! Ich bin dein Küchenassistent",
        "welcome_desc": "Frag mich, dir einen Saft, einen Snack, ein schnelles Gericht zu machen... Ich kenne deinen Vorrat, deine Geräte und deine Vorlieben!",
        "suggestion_snack": "🍿 Schneller Snack",
        "suggestion_juice": "🥤 Saft/Smoothie",
        "suggestion_light": "🥗 Etwas Leichtes",
        "suggestion_expiry": "⏰ Ablaufende nutzen",
        "clear": "Neues Gespräch",
        "placeholder": "Frag etwas...",
        "cleared": "Chat geleert",
        "suggestion_snack_text": "Was kann ich als schnellen Snack machen?",
        "suggestion_juice_text": "Mach mir einen Saft oder Smoothie mit dem was ich habe",
        "suggestion_light_text": "Ich habe Hunger, möchte aber etwas Leichtes",
        "suggestion_expiry_text": "Was läuft bald ab und wie kann ich es verwenden?"
    },
    "cooking": {
        "close": "Schließen",
        "tts_btn": "Vorlesen",
        "restart": "↺ Neustart",
        "replay": "🔊 Nochmal",
        "timer": "⏱️ {time} · Timer",
        "prev": "◀ Zurück",
        "next": "Weiter ▶",
        "ingredient_used": "✔️ Abgezogen",
        "ingredient_use_btn": "📦 Verwenden",
        "ingredient_deduct_title": "Von Vorrat abziehen",
        "timer_expired_tts": "Timer {label} abgelaufen!",
        "timer_warning_tts": "Achtung! {label}: noch 10 Sekunden!",
        "recipe_done_tts": "Rezept abgeschlossen! Guten Appetit!",
        "expires_chip": "läuft ab {date}",
        "finish": "✅ Fertig"
    },
    "settings": {
        "title": "⚙️ Einstellungen",
        "tab_api": "API Keys",
        "tab_bring": "Bring!",
        "tab_recipe": "Rezepte",
        "tab_mealplan": "Wochenplan",
        "tab_appliances": "Geräte",
        "tab_spesa": "Online-Einkauf",
        "tab_camera": "Kamera",
        "tab_security": "Sicherheit",
        "tab_tts": "Sprache (TTS)",
        "tab_language": "Sprache",
        "tab_scale": "Smart-Waage",
        "gemini": {
            "title": "🤖 Google Gemini AI",
            "hint": "API-Schlüssel für Produkterkennung, Ablaufdaten und Rezepte.",
            "key_label": "Gemini API Key"
        },
        "bring": {
            "title": "🛒 Bring! Einkaufsliste",
            "hint": "Zugangsdaten für die Bring! Einkaufslisten-Integration.",
            "email_label": "📧 Bring! E-Mail",
            "password_label": "🔒 Bring! Passwort"
        },
        "recipe": {
            "title": "🍳 Rezept-Einstellungen",
            "hint": "Konfiguriere die Standardoptionen für die Rezeptgenerierung.",
            "persons_label": "👥 Standard-Portionen",
            "options_label": "🎯 Standard-Rezeptoptionen",
            "fast": "⚡ Schnelles Gericht",
            "light": "🥗 Leichte Mahlzeit",
            "expiry": "⏰ Ablauf-Priorität",
            "healthy": "💚 Extra Gesund",
            "opened": "📦 Offene Produkte zuerst",
            "zerowaste": "♻️ Keine Verschwendung",
            "dietary_label": "🚫 Unverträglichkeiten / Einschränkungen",
            "dietary_placeholder": "z.B.: glutenfrei, laktosefrei, vegetarisch..."
        },
        "mealplan": {
            "title": "📅 Wöchentlicher Essensplan",
            "hint": "Lege die Mahlzeitenart für jeden Tag fest. Wird als Leitfaden bei der Rezeptgenerierung verwendet.",
            "enabled": "✅ Wöchentlichen Essensplan aktivieren",
            "legend": "🌤️ = Mittagessen · 🌙 = Abendessen · Tippe auf ein Badge, um es zu ändern.",
            "types_title": "📋 Verfügbare Typen"
        },
        "appliances": {
            "title": "🔌 Verfügbare Geräte",
            "hint": "Gib an, welche Geräte du hast. Sie werden bei der Rezeptgenerierung berücksichtigt.",
            "new_placeholder": "z.B.: Brotbackmaschine, Thermomix, Heißluftfritteuse...",
            "quick_title": "Schnell hinzufügen:",
            "oven": "🔥 Backofen",
            "microwave": "📡 Mikrowelle",
            "air_fryer": "🍟 Heißluftfritteuse",
            "bread_maker": "🍞 Brotbackmaschine",
            "bimby": "🤖 Thermomix/Cookeo",
            "mixer": "🌀 Küchenmaschine",
            "steamer": "♨️ Dampfgarer",
            "pressure_cooker": "🫕 Schnellkochtopf",
            "toaster": "🍞 Toaster",
            "blender": "🍹 Mixer",
            "empty": "Keine Geräte hinzugefügt"
        },
        "spesa": {
            "title": "🛍️ Online-Einkauf",
            "hint": "Online-Einkaufsanbieter konfigurieren.",
            "provider_label": "🏪 Anbieter",
            "email_label": "📧 E-Mail",
            "password_label": "🔒 Passwort",
            "login_btn": "🔐 Anmelden",
            "ai_prompt_label": "🤖 KI-Produktauswahl Prompt",
            "ai_prompt_placeholder": "Anweisungen für die KI bei der Auswahl zwischen mehreren Produkten...",
            "ai_prompt_hint": "Die KI verwendet diesen Prompt zur Auswahl des passendsten Produkts. Leer lassen für Standardverhalten.",
            "configure_first": "Konfiguriere zuerst den Online-Einkauf in den Einstellungen",
            "missing_credentials": "E-Mail und Passwort eingeben",
            "login_in_progress": "Anmeldung läuft...",
            "login_error_prefix": "Fehler:",
            "login_network_error_prefix": "Netzwerkfehler:",
            "login_success_default": "Anmeldung erfolgreich!",
            "result_name_label": "Name",
            "result_card_label": "Karte",
            "result_pickup_label": "Abholpunkt",
            "result_points_label": "Treuepunkte",
            "connected_relogin": "✅ Verbunden — Erneut anmelden",
            "connected_as": "Verbunden als {name}"
        },
        "camera": {
            "title": "📷 Kamera",
            "hint": "Wähle die Kamera für Barcode-Scanning und KI-Identifikation.",
            "device_label": "📸 Standardkamera",
            "back": "📱 Rückkamera (Standard)",
            "front": "🤳 Frontkamera",
            "devices_hint": "Bei mehreren Kameras kannst du nach Freigabe der Berechtigungen eine bestimmte aus der Liste oben wählen.",
            "detect_btn": "🔄 Kameras erkennen"
        },
        "security": {
            "title": "🔒 HTTPS-Zertifikat",
            "hint": "Wenn der Browser den Fehler \"Verbindung nicht sicher\" (ERR_CERT_AUTHORITY_INVALID) zeigt, installiere das CA-Zertifikat auf dem Gerät.",
            "download_btn": "📥 CA-Zertifikat herunterladen"
        },
        "tts": {
            "title": "🔊 Sprache & TTS",
            "hint": "Sprachsynthese über externe REST-API konfigurieren. Rezeptschritte und abgelaufene Timer werden an den Endpunkt gesendet.",
            "enabled": "✅ TTS aktivieren",
            "url_label": "🌐 Endpunkt-URL",
            "method_label": "📡 HTTP-Methode",
            "auth_label": "🔐 Authentifizierung",
            "auth_bearer": "Bearer Token",
            "auth_custom": "Benutzerdefinierter Header",
            "auth_none": "Keine",
            "token_label": "🔑 Bearer Token",
            "custom_header_name": "📋 Header-Name",
            "custom_header_value": "📋 Header-Wert",
            "content_type_label": "📄 Content-Type",
            "payload_key_label": "🗝️ Textfeld im Payload",
            "payload_key_hint": "Name des JSON-Feldes für den zu lesenden Text (z.B.: message, text).",
            "extra_fields_label": "➕ Zusätzliche Felder (JSON)",
            "extra_fields_placeholder": "{\"entity_id\": \"media_player.living_room\"}",
            "extra_fields_hint": "Zusätzliche Felder im Payload, im JSON-Format. Leer lassen wenn nicht benötigt.",
            "test_btn": "🔊 Testansage senden"
        },
        "language": {
            "title": "🌐 Sprache",
            "hint": "Wähle die Sprache der Benutzeroberfläche.",
            "label": "🌐 Sprache",
            "restart_notice": "Die Seite wird neu geladen, um die neue Sprache anzuwenden."
        },
        "screensaver": {
            "label": "Bildschirmschoner aktivieren",
            "card_title": "🌙 Bildschirmschoner",
            "card_hint": "Zeigt nach 5 Minuten Inaktivität eine Uhr mit nützlichen Fakten. Standardmäßig deaktiviert."
        },
        "scale": {
            "title": "⚖️ Smart-Waage",
            "hint": "Verbinde eine Bluetooth-Waage über das Android-Gateway, um das Gewicht automatisch auszulesen.",
            "tab": "Smart-Waage",
            "enabled": "✅ Smart-Waage aktivieren",
            "url_label": "🌐 WebSocket-Gateway-URL",
            "url_placeholder": "ws://192.168.1.x:8765",
            "url_hint": "URL der Android-App (gleiches WLAN). z.B.:",
            "test_btn": "🔗 Verbindung testen",
            "download_btn": "📥 Android-Gateway herunterladen (APK)",
            "download_hint": "Android-App als Brücke zwischen BLE-Waage und EverShelf.",
            "download_sub": "Quellcode: evershelf-scale-gateway/ im Projektstamm"
        },
        "kiosk": {
            "hint": "Verwandeln Sie ein Android-Tablet in ein EverShelf-Panel mit integriertem BLE-Waagen-Gateway.",
            "download_btn": "📥 EverShelf Kiosk herunterladen (APK)",
            "download_sub": "Vollbild-Kioskmodus + integriertes Waagen-Gateway. Quellcode: evershelf-kiosk/"
        },
        "saved": "✅ Konfiguration gespeichert!",
        "saved_local": "✅ Konfiguration lokal gespeichert",
        "saved_local_error": "⚠️ Lokal gespeichert, Serverfehler: {error}"
    },
    "expiry": {
        "today": "HEUTE",
        "tomorrow": "Morgen",
        "days": "{days} Tage",
        "expired_days": "Seit {days}T",
        "expired_yesterday": "Seit gestern",
        "expired_today": "Heute",
        "badge_today": "⚠️ Läuft heute ab!",
        "badge_tomorrow": "⏰ Morgen",
        "badge_tomorrow_long": "⏰ Läuft morgen ab",
        "badge_days": "⏰ {n} Tage",
        "badge_expired_ago": "⚠️ Seit {n}T abgel.",
        "badge_expired": "⛔ Abgelaufen!",
        "badge_stable": "✅ Stabil",
        "badge_expiring_short": "⏰ Läuft in {n}T ab",
        "badge_ok_still": "✅ Noch {n}T",
        "badge_expires_red": "🔴 In {n}T",
        "badge_expires_yellow": "🟡 In {n}T",
        "badge_expired_bare": "⚠️ Abgelaufen",
        "badge_expires_warn": "⚠️ In {n}T",
        "badge_days_left": "⏳ ~{n}T übrig",
        "days_approx": "~{n} Tage",
        "weeks_approx": "~{n} Wochen",
        "months_approx": "~{n} Monate",
        "years_approx": "~{n} Jahre",
        "expired_today_long": "Heute abgelaufen",
        "expired_ago_long": "Seit {n} Tagen abgelaufen",
        "expired_suffix": "— Abgelaufen!",
        "expired_suffix_ok": "— Abgelaufen (noch ok)",
        "expired_suffix_warning": "— Abgelaufen (erst prüfen)",
        "days_compact": "{n}T"
    },
    "status": {
        "ok": "OK",
        "check": "Prüfen",
        "discard": "Entsorgen",
        "tip_freezer_ok": "Im Gefrierschrank: noch sicher (~{n}T Puffer)",
        "tip_freezer_check": "Seit langem im Gefrierschrank, könnte an Qualität verloren haben. Bald verbrauchen",
        "tip_freezer_danger": "Zu lange im Gefrierschrank, Gefrierbrand- und Qualitätsverlust-Risiko",
        "tip_highRisk_check": "Kürzlich abgelaufen, Geruch und Aussehen vor dem Verzehr prüfen",
        "tip_highRisk_danger": "Verderbliches Produkt abgelaufen: aus Sicherheitsgründen entsorgen",
        "tip_medRisk_check1": "Aussehen und Geruch vor dem Verzehr prüfen",
        "tip_medRisk_check2": "Schon eine Weile abgelaufen, vor dem Verzehr gut prüfen",
        "tip_medRisk_danger": "Zu lange seit dem Ablaufdatum, lieber entsorgen",
        "tip_lowRisk_ok": "Haltbares Produkt, noch sicher zu verzehren",
        "tip_lowRisk_check": "Seit über einem Monat abgelaufen, Verpackungsintegrität prüfen",
        "tip_lowRisk_danger": "Zu lange abgelaufen, besser kein Risiko eingehen"
    },
    "toast": {
        "product_saved": "Produkt gespeichert!",
        "product_created": "Produkt erstellt!",
        "product_updated": "✅ Produkt aktualisiert!",
        "product_removed": "Produkt entfernt",
        "updated": "Aktualisiert!",
        "quantity_confirmed": "✓ Menge bestätigt",
        "added_to_inventory": "✅ {name} hinzugefügt!",
        "removed_from_list": "✅ {name} von der Liste entfernt!",
        "removed_from_list_short": "Von der Liste entfernt",
        "added_to_shopping": "🛒 Zur Einkaufsliste hinzugefügt!",
        "removed_from_shopping": "🛒 Von der Einkaufsliste entfernt",
        "finished_to_bring": "🛒 Produkt aufgebraucht → zu Bring! hinzugefügt",
        "thrown_away": "🗑️ {name} weggeworfen!",
        "thrown_away_partial": "🗑️ {qty} {unit} von {name} weggeworfen",
        "product_finished_confirmed": "✅ Entfernt — wieder hinzufügen, wenn du nachkaufst",
        "appliance_added": "Gerät hinzugefügt",
        "item_added": "{name} hinzugefügt"
    },
    "antiwaste": {
        "title": "🌱 Anti-Verschwendungs-Bericht",
        "grade_label": "Note",
        "you": "Du",
        "avg_label": "Ø",
        "better": "🎉 Du verlierst {diff}% weniger als der {country}!",
        "worse": "⚠️ Du verlierst mehr als der {country}. Verbesserungspotenzial!",
        "on_par": "→ Du liegst beim {country}. Du kannst noch besser werden!",
        "saved_money": "~{amount}/Monat gespart",
        "saved_meals": "~{n} Mahlzeiten gerettet",
        "saved_co2": "{n} kg CO₂ eingespart",
        "trend_title": "Trend (letzte 3 Monate)",
        "months_ago_2": "-60 Tage",
        "months_ago_1": "-30 Tage",
        "this_month": "Jetzt",
        "country_it": "ital. Durchschnitt",
        "country_de": "dt. Durchschnitt",
        "country_en": "US-Durchschnitt",
        "source": "Quellen: REDUCE, Eurostat, USDA 2021",
        "live_on": "Live-Daten",
        "live_off": "Offline",
        "meals": "Mahlzeiten",
        "annual_info": "📅 Du ~{you} kg/Jahr · Ø ~{avg} kg/Jahr",
        "badge_rate": "Verlustquote",
        "badge_saved_money": "gespart vs Ø",
        "badge_wasted": "verloren",
        "badge_better": "weniger als Ø"
    },
    "error": {
        "generic": "Fehler",
        "network": "Netzwerkfehler",
        "no_api_key": "API-Schluessel in den Einstellungen konfigurieren",
        "loading": "Fehler beim Laden des Produkts",
        "not_found": "Produkt nicht gefunden",
        "not_found_manual": "Produkt nicht gefunden. Manuell eingeben.",
        "search": "Suchfehler. Nochmal versuchen.",
        "search_short": "Suchfehler",
        "save": "Fehler beim Speichern",
        "connection": "Verbindungsfehler",
        "camera": "Kamera nicht verfügbar",
        "bring_add": "Fehler beim Hinzufügen zu Bring!",
        "bring_connection": "Bring! Verbindungsfehler",
        "identification": "Identifikationsfehler",
        "ai_quota": "KI-Kontingent erschöpft. Bitte in ein paar Minuten erneut versuchen.",
        "barcode_empty": "Barcode eingeben",
        "barcode_format": "Barcode darf nur Zahlen enthalten (4-14 Ziffern)",
        "min_chars": "Mindestens 2 Zeichen eingeben",
        "not_in_inventory": "Produkt nicht im Bestand",
        "appliance_exists": "Gerät bereits vorhanden",
        "already_exists": "Bereits vorhanden",
        "network_retry": "Verbindungsfehler. Erneut versuchen.",
        "select_items": "Wähle mindestens ein Produkt aus"
    },
    "confirm": {
        "remove_item": "Möchtest du dieses Produkt wirklich aus dem Bestand entfernen?",
        "kiosk_exit": "Kioskmodus verlassen?"
    },
    "edit": {
        "title": "{name} bearbeiten",
        "unknown_hint": "Produktname und Informationen eingeben",
        "label_name": "🏷️ Produktname"
    },
    "screensaver": {
        "recipe_btn": "Rezepte",
        "scan_btn": "Produkt scannen"
    },
    "days": {
        "mon": "Montag",
        "tue": "Dienstag",
        "wed": "Mittwoch",
        "thu": "Donnerstag",
        "fri": "Freitag",
        "sat": "Samstag",
        "sun": "Sonntag",
        "mon_short": "Mo",
        "tue_short": "Di",
        "wed_short": "Mi",
        "thu_short": "Do",
        "fri_short": "Fr",
        "sat_short": "Sa",
        "sun_short": "So"
    },
    "meal_types": {
        "lunch": "Mittagessen",
        "dinner": "Abendessen",
        "colazione": "Frühstück",
        "merenda": "Nachmittagssnack",
        "dolce": "Dessert",
        "succo": "Fruchtsaft",
        "pranzo": "Mittagessen",
        "cena": "Abendessen"
    },
    "scale": {
        "status_connected": "Waage verbunden",
        "status_searching": "Gateway verbunden, warte auf Waage…",
        "status_disconnected": "Waagen-Gateway nicht erreichbar",
        "status_error": "Verbindungsfehler zum Gateway",
        "not_connected": "Waagen-Gateway nicht verbunden",
        "read_btn": "⚖️ Von Waage lesen",
        "reading_title": "Waage lesen",
        "place_on_scale": "Produkt auf die Waage legen…",
        "waiting_stable": "Das Gewicht wird automatisch erfasst, wenn die Messung stabil ist.",
        "no_url": "Gateway-URL eingeben",
        "testing": "⏳ Verbindung wird getestet…",
        "connected_ok": "Gateway-Verbindung erfolgreich!",
        "timeout": "Timeout: keine Antwort vom Gateway",
        "error_connect": "Verbindung zum Gateway nicht möglich",
        "tab": "Smart-Waage",
        "low_weight": "Gewicht < 10 g · manuell eingeben\n(Auto-Erkennung erfordert mind. 10 g)",
        "density_hint": "(Dichte {density} g/ml)",
        "ml_hint": "(wird in ml umgerechnet)",
        "weight_detected": "Gewicht erkannt — 10s Stabilität abwarten…",
        "weight_too_low": "Gewicht zu niedrig — warten…",
        "stable": "✓ Stabil",
        "auto_confirm": "✅ {val} {unit} — Auto-Bestätigung in 5s (tippen zum Abbrechen)",
        "cancelled_replace": "Abgebrochen — lege die Zutat wieder auf die Waage, um fortzufahren"
    },
    "prediction": {
        "expected_qty": "Erwartet: {expected} {unit}",
        "actual_qty": "Aktuell: {actual} {unit}",
        "check_suggestion": "Überprüfe oder wiege die Restmenge"
    },
    "date": {
        "today": "📅 Heute",
        "yesterday": "📅 Gestern"
    },
    "scanner": {
        "title_barcode": "🔖 Barcode scannen",
        "barcode_hint": "Produktbarcode einrahmen",
        "barcode_manual_placeholder": "Oder manuell eingeben...",
        "barcode_use_btn": "✅ Diesen Code verwenden",
        "ai_identifying": "🤖 Produkt wird erkannt...",
        "ai_analyzing": "🤖 KI-Analyse läuft...",
        "product_label_hint": "Produktetikett einrahmen",
        "expiry_label_hint": "Ablaufdatum auf dem Produkt einrahmen",
        "capture_btn": "📸 Aufnehmen",
        "capture_photo_btn": "📸 Foto aufnehmen",
        "retake_btn": "🔄 Erneut aufnehmen",
        "camera_error_hint": "Stelle sicher, dass du HTTPS verwendest und Kameraberechtigungen erteilt hast.<br>Du kannst den Barcode manuell eingeben oder die KI-Identifikation verwenden.",
        "no_barcode": "Kein Barcode"
    },
    "lowstock": {
        "title": "⚠️ Wird knapp!",
        "message": "{name} wird knapp — nur noch {qty} übrig.",
        "question": "Möchtest du es zur Einkaufsliste hinzufügen?",
        "yes": "🛒 Ja, zu Bring! hinzufügen",
        "no": "Nein, passt für jetzt"
    },
    "move": {
        "title": "📦 Den Rest bewegen?",
        "question": "Möchtest du {thing} von {name} an einen anderen Ort bewegen?",
        "question_short": "Möchtest du {thing} an einen anderen Ort bewegen?",
        "thing_opened": "die offene Packung",
        "thing_rest": "den Rest",
        "stay_btn": "Nein, bleibt in {location}",
        "moved_toast": "📦 Offene Packung bewegt nach {location}",
        "vacuum_restore": "🫙 Vakuum wiederherstellen"
    },
    "nova": {
        "1": "Unverarbeitet",
        "2": "Kulinarische Zutat",
        "3": "Verarbeitet",
        "4": "Hochverarbeitet"
    },
    "meal_plan_types": {
        "pasta": "Pasta",
        "riso": "Reis",
        "carne": "Fleisch",
        "pesce": "Fisch",
        "legumi": "Hülsenfrüchte",
        "uova": "Eier",
        "formaggio": "Käse",
        "pizza": "Pizza",
        "affettati": "Aufschnitt",
        "verdure": "Gemüse",
        "zuppa": "Suppe",
        "insalata": "Salat",
        "pane": "Brot/Sandwich",
        "dolce": "Dessert",
        "libero": "Frei"
    },
    "meal_sub": {
        "dolce_torta": "Kuchen",
        "dolce_crema": "Creme / Pudding",
        "dolce_crumble": "Crumble / Tarte",
        "dolce_biscotti": "Kekse / Gebäck",
        "dolce_frutta": "Fruchtdessert",
        "succo_dolce": "Süß / Fruchtig",
        "succo_energizzante": "Energetisierend",
        "succo_detox": "Detox / Grün",
        "succo_rinfrescante": "Erfrischend",
        "succo_vitaminico": "Vitamin / Zitrus"
    },
    "meal_plan": {
        "reset_success": "Wochenplan zurückgesetzt",
        "suggested_by": "vom Wochenplan vorgeschlagen"
    },
    "kiosk_session": {
        "first_item": "Erstes Produkt: {name}!",
        "items_two_four": "{n} Artikel — Trägheit überwinden 🚀",
        "items_five_nine": "{n} Artikel — super Tempo! 💪",
        "items_ten_twenty": "{n} Artikel — fast Rekord 🏆",
        "items_twenty_plus": "{n} Artikel — epischer Einkauf! 🛒🔥",
        "duplicates_one": "1 Duplikat (gleiches Produkt zweimal)",
        "duplicates_many": "{n} Duplikate (mehrfach genommen)",
        "top_category": "Top-Kategorie: {cat} ({count}×)",
        "items_fallback": "{n} Artikel hinzugefügt"
    }
}