/**
 * BAITARI — ملف الترجمة المركزي
 * Central Translation File
 * Usage: include this file, then call: t('key') or BAITARI_I18N.ar.key
 */

const BAITARI_I18N = {

  // ══════════════════════════════════════════
  // ARABIC — العربية
  // ══════════════════════════════════════════
  ar: {
    dir: 'rtl', lang: 'ar',

    // App
    app_name: 'بيطري',
    app_tagline: 'منصة الرعاية البيطرية في الجزائر',

    // Nav tabs
    tab_login: 'تسجيل الدخول',
    tab_register: 'حساب جديد',

    // Buttons
    btn_login: 'دخول',
    btn_register: 'إنشاء الحساب',
    btn_next: 'التالي',
    btn_back: 'رجوع',
    btn_save: 'حفظ',
    btn_cancel: 'إلغاء',
    btn_confirm: 'تأكيد',
    btn_send: 'إرسال',
    btn_edit: 'تعديل',
    btn_delete: 'حذف',
    btn_close: 'إغلاق',
    btn_view: 'عرض',
    btn_book: 'احجز الآن',
    btn_call: 'اتصال',
    btn_done: 'تم',
    btn_logout: 'تسجيل الخروج',

    // Labels
    lbl_phone: 'رقم الهاتف',
    lbl_password: 'كلمة المرور',
    lbl_password_confirm: 'تأكيد كلمة المرور',
    lbl_name: 'الاسم الكامل',
    lbl_email: 'البريد الإلكتروني',
    lbl_email_optional: 'البريد الإلكتروني (اختياري)',
    lbl_wilaya: 'الولاية',
    lbl_remember: 'تذكّرني',
    lbl_forgot: 'نسيت كلمة المرور؟',
    lbl_terms: 'أوافق على شروط الاستخدام',
    lbl_license: 'رقم ترخيص مزاولة المهنة',

    // Placeholders
    ph_phone: '05XX XX XX XX',
    ph_password: '••••••••',
    ph_name: 'سارة بن علي',
    ph_email: 'example@gmail.com',
    ph_password_new: '8 أحرف على الأقل',
    ph_search: 'ابحث...',

    // Password strength
    pass_weak: 'ضعيفة',
    pass_medium: 'متوسطة',
    pass_good: 'جيدة',
    pass_strong: 'ممتازة',

    // Role selection
    choose_role: 'اختر نوع حسابك',
    role_pet_owner: 'صاحب حيوان',
    role_pet_owner_sub: 'قط، كلب، طائر...',
    role_farm_owner: 'مربي / مزرعة',
    role_farm_owner_sub: 'أبقار، أغنام...',
    role_vet: 'طبيب بيطري',
    role_vet_sub: 'مقدّم خدمة',
    role_clinic: 'عيادة / مركز',
    role_clinic_sub: 'فريق أطباء',

    // Footer auth
    footer_no_account: 'ليس لديك حساب؟',
    footer_signup: 'سجّل الآن',
    footer_have_account: 'لديك حساب بالفعل؟',
    footer_signin: 'سجّل الدخول',

    // Messages
    msg_login_success: 'تم الدخول بنجاح',
    msg_register_success: 'تم إنشاء حسابك بنجاح',
    msg_register_pending: 'تم إرسال طلبك، سيتم مراجعته خلال 24 ساعة',
    msg_saved: 'تم الحفظ بنجاح',
    msg_deleted: 'تم الحذف',
    msg_error: 'حدث خطأ، حاول مجدداً',
    msg_required: 'هذا الحقل مطلوب',
    msg_phone_invalid: 'أدخل رقم هاتف صحيح (10 أرقام)',
    msg_password_short: 'كلمة المرور يجب أن تكون 8 أحرف على الأقل',
    msg_password_mismatch: 'كلمتا المرور غير متطابقتين',
    msg_accept_terms: 'الرجاء الموافقة على الشروط',
    msg_choose_role: 'الرجاء اختيار نوع الحساب',
    msg_loading: 'جارٍ التحميل...',
    msg_sending: 'جارٍ الإرسال...',
    msg_no_results: 'لا توجد نتائج',
    msg_forgot_sent: 'سيتم إرسال رابط إعادة التعيين على هاتفك',

    // Navigation
    nav_home: 'الرئيسية',
    nav_search: 'البحث',
    nav_emergency: 'طوارئ',
    nav_appointments: 'المواعيد',
    nav_profile: 'حسابي',

    // Home
    greeting_morning: 'صباح الخير',
    greeting_afternoon: 'مساء الخير',
    greeting_evening: 'مساء النور',
    home_my_pets: 'حيواناتي',
    home_my_herd: 'قطيعي',
    home_add_pet: 'أضف حيواناً',
    home_nearby_vets: 'أطباء قريبون',
    home_upcoming: 'مواعيد قادمة',
    home_no_appointments: 'لا توجد مواعيد قادمة',
    home_health_tips: 'نصائح صحية',
    home_view_all: 'عرض الكل',
    home_emergency_cta: 'طوارئ',
    home_emergency_sub: 'اتصال فوري بأقرب طبيب بيطري',

    // Search
    search_vets: 'البحث عن طبيب',
    search_placeholder: 'ابحث عن طبيب بيطري...',
    filter_all: 'الكل',
    filter_available: 'متاح الآن',
    filter_home_visit: 'زيارة منزلية',
    filter_emergency: 'طوارئ',

    // Vet card
    vet_available: 'متاح الآن',
    vet_busy: 'مشغول',
    vet_offline: 'غير متاح',
    vet_reviews: 'تقييم',
    vet_experience: 'سنوات خبرة',
    vet_home_visits: 'زيارة منزلية',
    vet_accepts_emergency: 'يقبل طوارئ',
    vet_km: 'كم',

    // Booking
    book_title: 'حجز موعد',
    book_step1: 'اختر الحيوان',
    book_step2: 'اختر التاريخ',
    book_step3: 'تأكيد',
    book_select_pet: 'اختر حيوانك',
    book_visit_type: 'نوع الزيارة',
    book_clinic: 'زيارة عيادة',
    book_home: 'زيارة منزلية',
    book_notes: 'ملاحظات',
    book_notes_ph: 'اكتب أعراض الحيوان...',
    book_fee: 'رسوم الكشف',
    book_success: 'تم الحجز بنجاح',
    book_confirm_title: 'تأكيد الحجز',

    // Emergency
    emg_title: 'طلب طوارئ',
    emg_subtitle: 'سيتم إرسال طلبك لأقرب طبيب متاح فوراً',
    emg_animal_type: 'نوع الحيوان',
    emg_problem: 'وصف المشكلة',
    emg_problem_ph: 'اكتب الأعراض بسرعة...',
    emg_location: 'تحديد موقعي',
    emg_locating: 'جارٍ التحديد...',
    emg_location_set: 'تم تحديد الموقع',
    emg_send: 'إرسال طلب الطوارئ',
    emg_sent: 'تم إرسال الطلب',
    emg_vet_notified: 'تم إشعار أقرب طبيب، سيتصل بك خلال دقائق',

    // Appointments
    appt_title: 'مواعيدي',
    appt_upcoming: 'القادمة',
    appt_past: 'السابقة',
    appt_pending: 'انتظار',
    appt_confirmed: 'مؤكد',
    appt_in_progress: 'جارٍ',
    appt_completed: 'مكتمل',
    appt_cancelled: 'ملغى',
    appt_rejected: 'مرفوض',
    appt_reschedule: 'إعادة جدولة',
    appt_cancel: 'إلغاء الموعد',

    // Pets
    pet_add: 'إضافة حيوان',
    pet_name: 'اسم الحيوان',
    pet_species: 'النوع',
    pet_breed: 'السلالة',
    pet_age: 'العمر',
    pet_weight: 'الوزن (كغ)',
    pet_vaccinated: 'ملقّح',
    pet_not_vaccinated: 'غير ملقّح',
    pet_cat: 'قط',
    pet_dog: 'كلب',
    pet_bird: 'طائر',
    pet_rabbit: 'أرنب',
    pet_horse: 'حصان',
    pet_cow: 'بقرة',
    pet_sheep: 'خروف',
    pet_other: 'أخرى',

    // Farm
    farm_herd: 'القطيع',
    farm_add_group: 'إضافة مجموعة',
    farm_species: 'النوع',
    farm_count: 'العدد',
    farm_location: 'الموقع',
    farm_healthy: 'سليم',
    farm_needs_attention: 'يحتاج متابعة',
    farm_critical: 'حالة حرجة',
    farm_cattle: 'أبقار',
    farm_sheep: 'أغنام',
    farm_goats: 'ماعز',
    farm_horses: 'خيول',
    farm_poultry: 'دواجن',
    farm_camels: 'إبل',

    // Vet dashboard
    dash_today: 'مواعيد اليوم',
    dash_pending: 'بانتظار الموافقة',
    dash_rating: 'التقييم',
    dash_earnings: 'الأرباح',
    dash_available: 'متاح الآن',
    dash_unavailable: 'غير متاح',
    dash_accept: 'قبول',
    dash_reject: 'رفض',
    dash_start: 'بدء الكشف',
    dash_report: 'كتابة تقرير',

    // Medical report
    report_title: 'تقرير طبي',
    report_diagnosis: 'التشخيص',
    report_treatment: 'العلاج',
    report_prescription: 'الوصفة الطبية',
    report_next_visit: 'الزيارة القادمة',
    report_saved: 'تم حفظ التقرير الطبي',

    // Vet verification
    verify_title: 'توثيق الحساب',
    verify_subtitle: 'أرسل وثائقك لاعتماد حسابك',
    verify_pending_docs: 'حسابك بانتظار التوثيق',
    verify_submitted: 'تم إرسال الوثائق',
    verify_under_review: 'قيد المراجعة',
    verify_approved: 'تم اعتماد حسابك',
    verify_rejected: 'تم رفض طلبك',
    verify_national_id: 'بطاقة التعريف الوطنية',
    verify_diploma: 'شهادة الدكتوراه في البيطرة',
    verify_license: 'ترخيص مزاولة المهنة',
    verify_card: 'البطاقة المهنية',
    verify_required: 'إلزامي',
    verify_optional: 'اختياري',
    verify_upload: 'رفع الوثيقة',
    verify_submit: 'إرسال للمراجعة',
    verify_review_time: 'سيتم المراجعة خلال 24–48 ساعة',

    // Clinic setup
    clinic_title: 'إعداد العيادة',
    clinic_name: 'اسم العيادة',
    clinic_address: 'عنوان العيادة',
    clinic_map: 'موقع العيادة على الخريطة',
    clinic_map_hint: 'انقر على الخريطة لتحديد الموقع',
    clinic_locate: 'تحديد موقعي',
    clinic_search_addr: 'بحث بالعنوان',
    clinic_fee_clinic: 'رسوم الكشف بالعيادة',
    clinic_fee_home: 'رسوم الزيارة المنزلية',
    clinic_home_visits: 'زيارات منزلية',
    clinic_emergency: 'قبول طلبات الطوارئ',
    clinic_teleconsult: 'استشارة عن بُعد',
    clinic_saved: 'تم حفظ معلومات العيادة',

    // Medical history
    history_title: 'السجل الطبي',
    history_visits: 'الزيارات',
    history_vaccinations: 'التطعيمات',
    history_no_visits: 'لا توجد زيارات مسجلة',
    history_no_vaccinations: 'لا توجد تطعيمات مسجلة',
    history_overdue: 'تطعيمات متأخرة',
    history_vaccine: 'اللقاح',
    history_date_given: 'تاريخ الإعطاء',
    history_next_due: 'الموعد القادم',
    history_overdue_label: 'متأخر',
    history_soon_label: 'قريباً',

    // Profile
    profile_title: 'حسابي',
    profile_edit: 'تعديل الملف',
    profile_settings: 'الإعدادات',
    profile_language: 'اللغة',
    profile_theme: 'المظهر',
    profile_dark_mode: 'الوضع الليلي',
    profile_notifications: 'الإشعارات',
    profile_history: 'سجل الزيارات',

    // Admin
    admin_title: 'لوحة الإدارة',
    admin_users: 'المستخدمون',
    admin_vets: 'الأطباء البيطريون',
    admin_appointments: 'المواعيد',
    admin_emergencies: 'الطوارئ',
    admin_reports: 'التقارير',
    admin_settings: 'الإعدادات',
    admin_approve: 'اعتماد',
    admin_reject: 'رفض',
    admin_suspend: 'إيقاف',
    admin_pending_vets: 'طلبات اعتماد الأطباء',
    admin_rejection_reason: 'سبب الرفض',

    // Currency
    currency: 'دج',
  },

  // ══════════════════════════════════════════
  // FRENCH — Français
  // ══════════════════════════════════════════
  fr: {
    dir: 'ltr', lang: 'fr',

    app_name: 'Baitari',
    app_tagline: 'Plateforme vétérinaire en Algérie',

    tab_login: 'Connexion',
    tab_register: 'Créer un compte',

    btn_login: 'Se connecter',
    btn_register: 'Créer mon compte',
    btn_next: 'Suivant',
    btn_back: 'Retour',
    btn_save: 'Enregistrer',
    btn_cancel: 'Annuler',
    btn_confirm: 'Confirmer',
    btn_send: 'Envoyer',
    btn_edit: 'Modifier',
    btn_delete: 'Supprimer',
    btn_close: 'Fermer',
    btn_view: 'Voir',
    btn_book: 'Réserver',
    btn_call: 'Appeler',
    btn_done: 'Terminé',
    btn_logout: 'Déconnexion',

    lbl_phone: 'Numéro de téléphone',
    lbl_password: 'Mot de passe',
    lbl_password_confirm: 'Confirmer le mot de passe',
    lbl_name: 'Nom complet',
    lbl_email: 'Email',
    lbl_email_optional: 'Email (optionnel)',
    lbl_wilaya: 'Wilaya',
    lbl_remember: 'Se souvenir de moi',
    lbl_forgot: 'Mot de passe oublié ?',
    lbl_terms: 'Accepter les conditions utilisation',
    lbl_license: 'Numéro de licence professionnelle',

    ph_phone: '05XX XX XX XX',
    ph_password: '••••••••',
    ph_name: 'Votre nom',
    ph_email: 'example@gmail.com',
    ph_password_new: '8 caractères minimum',
    ph_search: 'Rechercher...',

    pass_weak: 'Faible',
    pass_medium: 'Moyen',
    pass_good: 'Bon',
    pass_strong: 'Excellent',

    choose_role: 'Choisissez votre type de compte',
    role_pet_owner: 'Propriétaire',
    role_pet_owner_sub: 'Chat, chien, oiseau...',
    role_farm_owner: 'Eleveur',
    role_farm_owner_sub: 'Bovins, ovins...',
    role_vet: 'Vétérinaire',
    role_vet_sub: 'Prestataire',
    role_clinic: 'Clinique',
    role_clinic_sub: 'Equipe de médecins',

    footer_no_account: 'Pas de compte ?',
    footer_signup: 'Inscription',
    footer_have_account: 'Déjà un compte ?',
    footer_signin: 'Se connecter',

    msg_login_success: 'Connexion réussie',
    msg_register_success: 'Compte créé avec succès',
    msg_register_pending: 'Demande envoyée, examen sous 24 heures',
    msg_saved: 'Enregistré avec succès',
    msg_deleted: 'Supprimé',
    msg_error: 'Une erreur est survenue',
    msg_required: 'Ce champ est obligatoire',
    msg_phone_invalid: 'Numéro de téléphone invalide (10 chiffres)',
    msg_password_short: 'Minimum 8 caractères',
    msg_password_mismatch: 'Les mots de passe ne correspondent pas',
    msg_accept_terms: 'Veuillez accepter les conditions',
    msg_choose_role: 'Veuillez choisir un type de compte',
    msg_loading: 'Chargement...',
    msg_sending: 'Envoi en cours...',
    msg_no_results: 'Aucun résultat',
    msg_forgot_sent: 'Un lien de réinitialisation sera envoyé',

    nav_home: 'Accueil',
    nav_search: 'Recherche',
    nav_emergency: 'Urgence',
    nav_appointments: 'Rendez-vous',
    nav_profile: 'Profil',

    greeting_morning: 'Bonjour',
    greeting_afternoon: 'Bon après-midi',
    greeting_evening: 'Bonsoir',
    home_my_pets: 'Mes animaux',
    home_my_herd: 'Mon troupeau',
    home_add_pet: 'Ajouter un animal',
    home_nearby_vets: 'Vétérinaires proches',
    home_upcoming: 'Prochains rendez-vous',
    home_no_appointments: 'Aucun rendez-vous prévu',
    home_health_tips: 'Conseils santé',
    home_view_all: 'Voir tout',
    home_emergency_cta: 'Urgence',
    home_emergency_sub: 'Contact immédiat avec le vétérinaire le plus proche',

    search_vets: 'Trouver un vétérinaire',
    search_placeholder: 'Rechercher un vétérinaire...',
    filter_all: 'Tous',
    filter_available: 'Disponible',
    filter_home_visit: 'Visite à domicile',
    filter_emergency: 'Urgences',

    vet_available: 'Disponible',
    vet_busy: 'Occupé',
    vet_offline: 'Hors ligne',
    vet_reviews: 'avis',
    vet_experience: 'ans exp.',
    vet_home_visits: 'Visites domicile',
    vet_accepts_emergency: 'Accepte urgences',
    vet_km: 'km',

    book_title: 'Prendre rendez-vous',
    book_step1: 'Choisir animal',
    book_step2: 'Choisir date',
    book_step3: 'Confirmer',
    book_select_pet: 'Sélectionnez votre animal',
    book_visit_type: 'Type de visite',
    book_clinic: 'En clinique',
    book_home: 'À domicile',
    book_notes: 'Notes',
    book_notes_ph: 'Décrivez les symptômes...',
    book_fee: 'Honoraires',
    book_success: 'Rendez-vous confirmé',
    book_confirm_title: 'Confirmer le rendez-vous',

    emg_title: 'Urgence vétérinaire',
    emg_subtitle: 'Votre demande sera envoyée immédiatement',
    emg_animal_type: 'Type animal',
    emg_problem: 'Décrire le problème',
    emg_problem_ph: 'Décrivez les symptômes...',
    emg_location: 'Ma position',
    emg_locating: 'Localisation...',
    emg_location_set: 'Position localisée',
    emg_send: 'Envoyer la demande',
    emg_sent: 'Demande envoyée',
    emg_vet_notified: 'Le vétérinaire le plus proche a été notifié',

    appt_title: 'Mes rendez-vous',
    appt_upcoming: 'À venir',
    appt_past: 'Passés',
    appt_pending: 'En attente',
    appt_confirmed: 'Confirmé',
    appt_in_progress: 'En cours',
    appt_completed: 'Terminé',
    appt_cancelled: 'Annulé',
    appt_rejected: 'Refusé',
    appt_reschedule: 'Reprogrammer',
    appt_cancel: 'Annuler',

    pet_add: 'Ajouter un animal',
    pet_name: 'Nom',
    pet_species: 'Espèce',
    pet_breed: 'Race',
    pet_age: 'Age',
    pet_weight: 'Poids (kg)',
    pet_vaccinated: 'Vacciné',
    pet_not_vaccinated: 'Non vacciné',
    pet_cat: 'Chat',
    pet_dog: 'Chien',
    pet_bird: 'Oiseau',
    pet_rabbit: 'Lapin',
    pet_horse: 'Cheval',
    pet_cow: 'Vache',
    pet_sheep: 'Mouton',
    pet_other: 'Autre',

    farm_herd: 'Troupeau',
    farm_add_group: 'Ajouter un groupe',
    farm_species: 'Espèce',
    farm_count: 'Effectif',
    farm_location: 'Emplacement',
    farm_healthy: 'Sain',
    farm_needs_attention: 'Attention requise',
    farm_critical: 'Critique',
    farm_cattle: 'Bovins',
    farm_sheep: 'Ovins',
    farm_goats: 'Caprins',
    farm_horses: 'Equidés',
    farm_poultry: 'Volailles',
    farm_camels: 'Camelins',

    dash_today: 'RDV aujourd\'hui',
    dash_pending: 'En attente',
    dash_rating: 'Note',
    dash_earnings: 'Revenus',
    dash_available: 'Disponible',
    dash_unavailable: 'Indisponible',
    dash_accept: 'Accepter',
    dash_reject: 'Refuser',
    dash_start: 'Démarrer',
    dash_report: 'Rédiger rapport',

    report_title: 'Rapport médical',
    report_diagnosis: 'Diagnostic',
    report_treatment: 'Traitement',
    report_prescription: 'Ordonnance',
    report_next_visit: 'Prochain rendez-vous',
    report_saved: 'Rapport médical enregistré',

    verify_title: 'Vérification du compte',
    verify_subtitle: 'Envoyez vos documents pour validation',
    verify_pending_docs: 'En attente de documents',
    verify_submitted: 'Documents soumis',
    verify_under_review: 'En cours de vérification',
    verify_approved: 'Compte validé',
    verify_rejected: 'Demande refusée',
    verify_national_id: 'Carte nationale',
    verify_diploma: 'Diplôme vétérinaire',
    verify_license: 'Licence professionnelle',
    verify_card: 'Carte professionnelle',
    verify_required: 'Obligatoire',
    verify_optional: 'Optionnel',
    verify_upload: 'Télécharger',
    verify_submit: 'Soumettre pour examen',
    verify_review_time: 'Examen sous 24 à 48 heures',

    clinic_title: 'Configurer la clinique',
    clinic_name: 'Nom de la clinique',
    clinic_address: 'Adresse',
    clinic_map: 'Localisation sur la carte',
    clinic_map_hint: 'Cliquez sur la carte pour définir la position',
    clinic_locate: 'Me localiser',
    clinic_search_addr: 'Rechercher une adresse',
    clinic_fee_clinic: 'Honoraires en clinique',
    clinic_fee_home: 'Honoraires à domicile',
    clinic_home_visits: 'Visites à domicile',
    clinic_emergency: 'Accepter les urgences',
    clinic_teleconsult: 'Téléconsultation',
    clinic_saved: 'Informations enregistrées',

    history_title: 'Historique médical',
    history_visits: 'Visites',
    history_vaccinations: 'Vaccinations',
    history_no_visits: 'Aucune visite enregistrée',
    history_no_vaccinations: 'Aucune vaccination enregistrée',
    history_overdue: 'Vaccinations en retard',
    history_vaccine: 'Vaccin',
    history_date_given: 'Date',
    history_next_due: 'Prochain rappel',
    history_overdue_label: 'En retard',
    history_soon_label: 'Bientôt',

    profile_title: 'Mon profil',
    profile_edit: 'Modifier le profil',
    profile_settings: 'Paramètres',
    profile_language: 'Langue',
    profile_theme: 'Thème',
    profile_dark_mode: 'Mode sombre',
    profile_notifications: 'Notifications',
    profile_history: 'Historique',

    admin_title: 'Administration',
    admin_users: 'Utilisateurs',
    admin_vets: 'Vétérinaires',
    admin_appointments: 'Rendez-vous',
    admin_emergencies: 'Urgences',
    admin_reports: 'Rapports',
    admin_settings: 'Paramètres',
    admin_approve: 'Approuver',
    admin_reject: 'Refuser',
    admin_suspend: 'Suspendre',
    admin_pending_vets: 'Demandes de validation',
    admin_rejection_reason: 'Motif de refus',

    currency: 'DZD',
  },

  // ══════════════════════════════════════════
  // ENGLISH
  // ══════════════════════════════════════════
  en: {
    dir: 'ltr', lang: 'en',

    app_name: 'Baitari',
    app_tagline: 'Veterinary care platform in Algeria',

    tab_login: 'Sign in',
    tab_register: 'Create account',

    btn_login: 'Sign in',
    btn_register: 'Create account',
    btn_next: 'Next',
    btn_back: 'Back',
    btn_save: 'Save',
    btn_cancel: 'Cancel',
    btn_confirm: 'Confirm',
    btn_send: 'Send',
    btn_edit: 'Edit',
    btn_delete: 'Delete',
    btn_close: 'Close',
    btn_view: 'View',
    btn_book: 'Book now',
    btn_call: 'Call',
    btn_done: 'Done',
    btn_logout: 'Logout',

    lbl_phone: 'Phone number',
    lbl_password: 'Password',
    lbl_password_confirm: 'Confirm password',
    lbl_name: 'Full name',
    lbl_email: 'Email',
    lbl_email_optional: 'Email (optional)',
    lbl_wilaya: 'Province',
    lbl_remember: 'Remember me',
    lbl_forgot: 'Forgot password?',
    lbl_terms: 'I agree to the terms of use',
    lbl_license: 'Professional license number',

    ph_phone: '05XX XX XX XX',
    ph_password: '••••••••',
    ph_name: 'Your full name',
    ph_email: 'example@gmail.com',
    ph_password_new: '8 characters minimum',
    ph_search: 'Search...',

    pass_weak: 'Weak',
    pass_medium: 'Medium',
    pass_good: 'Good',
    pass_strong: 'Strong',

    choose_role: 'Choose your account type',
    role_pet_owner: 'Pet Owner',
    role_pet_owner_sub: 'Cat, dog, bird...',
    role_farm_owner: 'Farm Owner',
    role_farm_owner_sub: 'Cattle, sheep...',
    role_vet: 'Veterinarian',
    role_vet_sub: 'Service provider',
    role_clinic: 'Clinic',
    role_clinic_sub: 'Medical team',

    footer_no_account: 'No account?',
    footer_signup: 'Sign up',
    footer_have_account: 'Already have an account?',
    footer_signin: 'Sign in',

    msg_login_success: 'Logged in successfully',
    msg_register_success: 'Account created successfully',
    msg_register_pending: 'Request sent, review within 24 hours',
    msg_saved: 'Saved successfully',
    msg_deleted: 'Deleted',
    msg_error: 'An error occurred',
    msg_required: 'This field is required',
    msg_phone_invalid: 'Invalid phone number (10 digits)',
    msg_password_short: 'Minimum 8 characters required',
    msg_password_mismatch: 'Passwords do not match',
    msg_accept_terms: 'Please accept the terms',
    msg_choose_role: 'Please choose an account type',
    msg_loading: 'Loading...',
    msg_sending: 'Sending...',
    msg_no_results: 'No results found',
    msg_forgot_sent: 'A reset link will be sent to your phone',

    nav_home: 'Home',
    nav_search: 'Search',
    nav_emergency: 'Emergency',
    nav_appointments: 'Appointments',
    nav_profile: 'Profile',

    greeting_morning: 'Good morning',
    greeting_afternoon: 'Good afternoon',
    greeting_evening: 'Good evening',
    home_my_pets: 'My Pets',
    home_my_herd: 'My Herd',
    home_add_pet: 'Add animal',
    home_nearby_vets: 'Nearby vets',
    home_upcoming: 'Upcoming appointments',
    home_no_appointments: 'No upcoming appointments',
    home_health_tips: 'Health tips',
    home_view_all: 'View all',
    home_emergency_cta: 'Emergency',
    home_emergency_sub: 'Instant contact with nearest vet',

    search_vets: 'Find a vet',
    search_placeholder: 'Search for a vet...',
    filter_all: 'All',
    filter_available: 'Available now',
    filter_home_visit: 'Home visit',
    filter_emergency: 'Emergency',

    vet_available: 'Available',
    vet_busy: 'Busy',
    vet_offline: 'Offline',
    vet_reviews: 'reviews',
    vet_experience: 'yrs exp.',
    vet_home_visits: 'Home visits',
    vet_accepts_emergency: 'Accepts emergencies',
    vet_km: 'km',

    book_title: 'Book appointment',
    book_step1: 'Choose animal',
    book_step2: 'Choose date',
    book_step3: 'Confirm',
    book_select_pet: 'Select your animal',
    book_visit_type: 'Visit type',
    book_clinic: 'Clinic visit',
    book_home: 'Home visit',
    book_notes: 'Notes',
    book_notes_ph: 'Describe symptoms...',
    book_fee: 'Consultation fee',
    book_success: 'Booking confirmed',
    book_confirm_title: 'Confirm booking',

    emg_title: 'Emergency request',
    emg_subtitle: 'Your request will be sent immediately',
    emg_animal_type: 'Animal type',
    emg_problem: 'Describe the problem',
    emg_problem_ph: 'Describe symptoms quickly...',
    emg_location: 'My location',
    emg_locating: 'Locating...',
    emg_location_set: 'Location set',
    emg_send: 'Send emergency request',
    emg_sent: 'Request sent',
    emg_vet_notified: 'The nearest vet has been notified',

    appt_title: 'My appointments',
    appt_upcoming: 'Upcoming',
    appt_past: 'Past',
    appt_pending: 'Pending',
    appt_confirmed: 'Confirmed',
    appt_in_progress: 'In progress',
    appt_completed: 'Completed',
    appt_cancelled: 'Cancelled',
    appt_rejected: 'Rejected',
    appt_reschedule: 'Reschedule',
    appt_cancel: 'Cancel appointment',

    pet_add: 'Add animal',
    pet_name: 'Animal name',
    pet_species: 'Species',
    pet_breed: 'Breed',
    pet_age: 'Age',
    pet_weight: 'Weight (kg)',
    pet_vaccinated: 'Vaccinated',
    pet_not_vaccinated: 'Not vaccinated',
    pet_cat: 'Cat',
    pet_dog: 'Dog',
    pet_bird: 'Bird',
    pet_rabbit: 'Rabbit',
    pet_horse: 'Horse',
    pet_cow: 'Cow',
    pet_sheep: 'Sheep',
    pet_other: 'Other',

    farm_herd: 'Herd',
    farm_add_group: 'Add group',
    farm_species: 'Species',
    farm_count: 'Count',
    farm_location: 'Location',
    farm_healthy: 'Healthy',
    farm_needs_attention: 'Needs attention',
    farm_critical: 'Critical',
    farm_cattle: 'Cattle',
    farm_sheep: 'Sheep',
    farm_goats: 'Goats',
    farm_horses: 'Horses',
    farm_poultry: 'Poultry',
    farm_camels: 'Camels',

    dash_today: 'Today appointments',
    dash_pending: 'Pending',
    dash_rating: 'Rating',
    dash_earnings: 'Earnings',
    dash_available: 'Available',
    dash_unavailable: 'Unavailable',
    dash_accept: 'Accept',
    dash_reject: 'Reject',
    dash_start: 'Start exam',
    dash_report: 'Write report',

    report_title: 'Medical report',
    report_diagnosis: 'Diagnosis',
    report_treatment: 'Treatment',
    report_prescription: 'Prescription',
    report_next_visit: 'Next visit',
    report_saved: 'Medical report saved',

    verify_title: 'Account verification',
    verify_subtitle: 'Submit your documents for approval',
    verify_pending_docs: 'Awaiting documents',
    verify_submitted: 'Documents submitted',
    verify_under_review: 'Under review',
    verify_approved: 'Account approved',
    verify_rejected: 'Request rejected',
    verify_national_id: 'National ID',
    verify_diploma: 'Veterinary diploma',
    verify_license: 'Professional license',
    verify_card: 'Professional card',
    verify_required: 'Required',
    verify_optional: 'Optional',
    verify_upload: 'Upload document',
    verify_submit: 'Submit for review',
    verify_review_time: 'Review within 24 to 48 hours',

    clinic_title: 'Clinic setup',
    clinic_name: 'Clinic name',
    clinic_address: 'Address',
    clinic_map: 'Location on map',
    clinic_map_hint: 'Click on the map to set location',
    clinic_locate: 'Locate me',
    clinic_search_addr: 'Search address',
    clinic_fee_clinic: 'Clinic fee',
    clinic_fee_home: 'Home visit fee',
    clinic_home_visits: 'Home visits',
    clinic_emergency: 'Accept emergencies',
    clinic_teleconsult: 'Teleconsultation',
    clinic_saved: 'Clinic info saved',

    history_title: 'Medical history',
    history_visits: 'Visits',
    history_vaccinations: 'Vaccinations',
    history_no_visits: 'No visits recorded',
    history_no_vaccinations: 'No vaccinations recorded',
    history_overdue: 'Overdue vaccinations',
    history_vaccine: 'Vaccine',
    history_date_given: 'Date given',
    history_next_due: 'Next due',
    history_overdue_label: 'Overdue',
    history_soon_label: 'Soon',

    profile_title: 'My profile',
    profile_edit: 'Edit profile',
    profile_settings: 'Settings',
    profile_language: 'Language',
    profile_theme: 'Theme',
    profile_dark_mode: 'Dark mode',
    profile_notifications: 'Notifications',
    profile_history: 'Visit history',

    admin_title: 'Admin panel',
    admin_users: 'Users',
    admin_vets: 'Veterinarians',
    admin_appointments: 'Appointments',
    admin_emergencies: 'Emergencies',
    admin_reports: 'Reports',
    admin_settings: 'Settings',
    admin_approve: 'Approve',
    admin_reject: 'Reject',
    admin_suspend: 'Suspend',
    admin_pending_vets: 'Pending vet applications',
    admin_rejection_reason: 'Rejection reason',

    currency: 'DZD',
  },
};

// ══════════════════════════════════════════
// HELPER FUNCTIONS
// ══════════════════════════════════════════

/**
 * Get current language from localStorage
 */
function getLang() {
  return localStorage.getItem('baitari_lang') || 'ar';
}

/**
 * Translate a key in the current language
 * Falls back to Arabic if key not found
 * t('btn_login') → 'دخول' / 'Se connecter' / 'Sign in'
 */
function t(key) {
  var lang = getLang();
  var L = BAITARI_I18N[lang] || BAITARI_I18N.ar;
  return L[key] !== undefined ? L[key] : (BAITARI_I18N.ar[key] || key);
}

/**
 * Apply all translations to page
 * Elements with data-i18n="key" get translated automatically
 */
function applyTranslations() {
  var lang = getLang();
  var L = BAITARI_I18N[lang] || BAITARI_I18N.ar;

  // Set HTML direction and lang
  document.documentElement.lang = L.lang;
  document.documentElement.dir  = L.dir;
  document.documentElement.setAttribute('data-lang', lang);

  // Translate text content
  document.querySelectorAll('[data-i18n]').forEach(function(el) {
    var key = el.getAttribute('data-i18n');
    if (L[key] !== undefined) el.textContent = L[key];
  });

  // Translate placeholders
  document.querySelectorAll('[data-i18n-ph]').forEach(function(el) {
    var key = el.getAttribute('data-i18n-ph');
    if (L[key] !== undefined) el.placeholder = L[key];
  });

  // Update active lang button
  ['ar','fr','en'].forEach(function(l) {
    var btn = document.getElementById('li-' + l);
    if (btn) btn.classList.toggle('on', l === lang);
  });
}

/**
 * Set language and apply
 */
function setLang(lang) {
  if (!BAITARI_I18N[lang]) return;
  localStorage.setItem('baitari_lang', lang);
  document.cookie = 'baitari_lang=' + lang + ';path=/;max-age=' + (365 * 86400);
  applyTranslations();
}

// Auto-apply on load
if (typeof document !== 'undefined') {
  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', applyTranslations);
  } else {
    applyTranslations();
  }
}
