/* ============================================================
   Carzello — i18n (EN / AR / RU) + RTL
   Covers app chrome + high-frequency UI strings. Vehicle data
   (makes, models, VINs) is left as-is.
   ============================================================ */

const STRINGS = {
  EN: {
    // nav
    "nav.buy": "Buy", "nav.watchlist": "Watchlist", "nav.bids": "My bids",
    "nav.purchases": "Purchases", "nav.account": "Account", "nav.sell": "Sell",
    "nav.notifications": "Notifications",
    // hero / browse
    "hero.trust": "Graded & condition-guaranteed",
    "hero.eyebrow": "Wholesale marketplace",
    "hero.title1": "Buy cars", "hero.title2": "direct from Sayarah",
    "hero.sub": "Our own inventory plus cars consigned by trusted dealers and companies — every lot graded, condition-reported, and priced to your door in the GCC & Central Asia.",
    "hero.liveLots": "Live lots", "hero.liveLanes": "Live lanes", "hero.carsSold": "Delivery ports", "hero.arbitration": "Arbitration",
    "tag.owned": "Sayarah stock", "tag.consigned": "Consignment", "chip.sayarah": "Sayarah stock",
    "search.placeholder": "Search VIN, make, lot…",
    "browse.vehicles": "vehicles", "browse.endingSoon": "ending soon", "browse.filters": "Filters",
    "sort.ending": "Ending soon", "sort.grade": "Highest AutoGrade", "sort.low": "Price: low → high",
    "sort.high": "Price: high → low", "sort.miles": "Lowest mileage",
    "chip.all": "All", "chip.watching": "Watching", "chip.noReserve": "No reserve",
    // bidding
    "bid.current": "Current bid", "bid.ends": "Ends in", "bid.bids": "bids", "bid.reserveMet": "Reserve met",
    "bid.reserveNotMet": "Reserve not met", "bid.noReserve": "No reserve", "bid.winning": "You're winning",
    "bid.outbid": "Outbid", "bid.proxyMax": "Proxy · set max", "bid.exact": "Bid exact",
    "bid.setProxy": "Set proxy max", "bid.place": "Place bid", "bid.buyNow": "Buy Now",
    "bid.makeOffer": "Make offer", "bid.enterLive": "Enter live bidding room", "bid.min": "Minimum next",
    "bid.bidders": "bidders",
    // market
    "mkt.value": "Market value", "mkt.greatBuy": "Great buy", "mkt.below": "Below market",
    "mkt.at": "At market", "mkt.above": "Above market", "mkt.save": "save",
    "mkt.estimate": "Carzello estimate", "mkt.recent": "Recent comparable sales", "mkt.sold": "sold",
    "mkt.disclaimer": "From Carzello closed-auction comps, grade-adjusted. An estimate, not a guarantee.",
    "pay.due":"Payment due","pay.overdue":"Overdue","pay.defaulted":"Defaulted","pay.paid":"Paid","pay.delivered":"Delivered","pay.storageAccruing":"Storage accruing","pay.totalDue":"Total due now","pay.penalty":"Penalty","pay.storageDue":"Storage due","pay.payNow":"Pay now","pay.pickup":"Mark picked up","pay.fileArb":"File arbitration · 48h window","pay.winningBid":"Winning bid","pay.buyerFees":"Buyer fees","pay.lateFee":"Late fee","pay.defaultPenalty":"Default penalty","pay.storage":"Storage","pay.gatePass":"Gate pass · cleared for pickup","pay.passCode":"Pass code","pay.issued":"Issued","claim.title":"File arbitration","claim.issue":"What's the issue?","claim.amount":"Claimed amount (USD, optional)","claim.submit":"Submit claim",
    // offer
    "offer.title": "Make an offer", "offer.sub": "Binding offer sent to the seller.",
    "offer.amount": "Your offer (USD)", "offer.send": "Send offer", "offer.pending": "Offer pending — awaiting seller",
    "offer.countered": "Seller countered", "offer.acceptCounter": "Accept counter", "offer.decline": "Decline",
    "offer.accepted": "Offer accepted", "offer.declined": "Offer declined",
    // common
    "c.watch": "Watch", "c.watching": "Watching", "c.checkout": "Checkout", "c.viewLot": "View lot",
    "c.inventory": "Inventory", "c.highBid": "High bid", "c.ended": "Ended", "c.won": "Won", "c.lost": "Lost",
    "c.buyingPower": "Buying power", "c.available": "available",
    "confirm.title": "Confirm your bid", "confirm.buytitle": "Confirm purchase",
    "confirm.review": "Please review — this is binding.", "confirm.binding": "Bids are binding and cannot be retracted once placed.",
    "confirm.place": "Confirm bid", "confirm.buy": "Confirm purchase", "confirm.cancel": "Cancel",
    "confirm.proxy": "Proxy max", "confirm.exact": "Your bid", "confirm.buynow": "Buy Now price",
    "confirm.ifwin": "If you win", "confirm.total": "Total due", "confirm.fees": "Buyer fees",
    "fee.approx": "approx.", "fee.freightNote": "Freight is an estimate — the final cost may be lower or higher.",
  },
  AR: {
    "nav.buy": "شراء", "nav.watchlist": "المفضلة", "nav.bids": "مزايداتي",
    "nav.purchases": "مشترياتي", "nav.account": "حسابي", "nav.sell": "بيع",
    "nav.notifications": "الإشعارات",
    "hero.trust": "مصنّفة ومضمونة الحالة",
    "hero.eyebrow": "سوق الجملة",
    "hero.title1": "اشترِ سيارات", "hero.title2": "مباشرة من سيّارة",
    "hero.sub": "مخزوننا الخاص بالإضافة إلى سيارات بضاعة أمانة من تجّار وشركات موثوقين — كل سيارة مصنّفة وبتقرير حالة وبسعر يصل إلى بابك في الخليج وآسيا الوسطى.",
    "hero.liveLots": "سيارات مباشرة", "hero.liveLanes": "مسارات مباشرة", "hero.carsSold": "موانئ التسليم", "hero.arbitration": "التحكيم",
    "tag.owned": "مخزون سيّارة", "tag.consigned": "بضاعة أمانة", "chip.sayarah": "مخزون سيّارة",
    "search.placeholder": "ابحث عن الهيكل أو الماركة أو رقم القطعة…",
    "browse.vehicles": "سيارة", "browse.endingSoon": "تنتهي قريباً", "browse.filters": "تصفية",
    "sort.ending": "تنتهي قريباً", "sort.grade": "أعلى تقييم", "sort.low": "السعر: من الأقل",
    "sort.high": "السعر: من الأعلى", "sort.miles": "الأقل مسافة",
    "chip.all": "الكل", "chip.watching": "المفضلة", "chip.noReserve": "بدون حد أدنى",
    "bid.current": "المزايدة الحالية", "bid.ends": "تنتهي خلال", "bid.bids": "مزايدة", "bid.reserveMet": "تحقق الحد الأدنى",
    "bid.reserveNotMet": "لم يتحقق الحد", "bid.noReserve": "بدون حد أدنى", "bid.winning": "أنت الأعلى",
    "bid.outbid": "تمت المزايدة عليك", "bid.proxyMax": "وكيل · الحد الأقصى", "bid.exact": "مبلغ محدد",
    "bid.setProxy": "تعيين الحد الأقصى", "bid.place": "قدّم مزايدة", "bid.buyNow": "اشترِ الآن",
    "bid.makeOffer": "قدّم عرضاً", "bid.enterLive": "ادخل غرفة المزاد المباشر", "bid.min": "أدنى مزايدة تالية",
    "bid.bidders": "مزايدين",
    "mkt.value": "القيمة السوقية", "mkt.greatBuy": "صفقة ممتازة", "mkt.below": "أقل من السوق",
    "mkt.at": "بسعر السوق", "mkt.above": "أعلى من السوق", "mkt.save": "توفير",
    "mkt.estimate": "تقدير كارزيلو", "mkt.recent": "مبيعات مشابهة حديثة", "mkt.sold": "مُباعة",
    "mkt.disclaimer": "من مبيعات مزادات كارزيلو المغلقة، معدّلة حسب التقييم. تقدير وليس ضماناً.",
    "pay.due":"الدفع مستحق","pay.overdue":"متأخر","pay.defaulted":"متعثّر","pay.paid":"مدفوع","pay.delivered":"تم التسليم","pay.storageAccruing":"رسوم تخزين متراكمة","pay.totalDue":"الإجمالي المستحق الآن","pay.penalty":"غرامة","pay.storageDue":"رسوم التخزين","pay.payNow":"ادفع الآن","pay.pickup":"تم الاستلام","pay.fileArb":"تقديم تحكيم · خلال ٤٨ ساعة","pay.winningBid":"المزايدة الفائزة","pay.buyerFees":"رسوم المشتري","pay.lateFee":"رسوم تأخير","pay.defaultPenalty":"غرامة التعثّر","pay.storage":"تخزين","pay.gatePass":"تصريح خروج · جاهز للاستلام","pay.passCode":"رمز التصريح","pay.issued":"صدر","claim.title":"تقديم تحكيم","claim.issue":"ما المشكلة؟","claim.amount":"المبلغ المطالب به (دولار، اختياري)","claim.submit":"إرسال الطلب",
    "offer.title": "قدّم عرضاً", "offer.sub": "عرض مُلزم يُرسل إلى البائع.",
    "offer.amount": "عرضك (دولار)", "offer.send": "إرسال العرض", "offer.pending": "العرض قيد المراجعة — بانتظار البائع",
    "offer.countered": "عرض مضاد من البائع", "offer.acceptCounter": "قبول العرض المضاد", "offer.decline": "رفض",
    "offer.accepted": "تم قبول العرض", "offer.declined": "تم رفض العرض",
    "c.watch": "متابعة", "c.watching": "في المفضلة", "c.checkout": "إتمام الشراء", "c.viewLot": "عرض السيارة",
    "c.inventory": "المخزون", "c.highBid": "أعلى مزايدة", "c.ended": "انتهى", "c.won": "فزت", "c.lost": "خسرت",
    "c.buyingPower": "القدرة الشرائية", "c.available": "متاح",
    "confirm.title": "تأكيد مزايدتك", "confirm.buytitle": "تأكيد الشراء",
    "confirm.review": "يرجى المراجعة — هذه المزايدة مُلزمة.", "confirm.binding": "المزايدات مُلزمة ولا يمكن التراجع عنها بعد تقديمها.",
    "confirm.place": "تأكيد المزايدة", "confirm.buy": "تأكيد الشراء", "confirm.cancel": "إلغاء",
    "confirm.proxy": "الحد الأقصى", "confirm.exact": "مزايدتك", "confirm.buynow": "سعر الشراء الفوري",
    "confirm.ifwin": "إذا فزت", "confirm.total": "الإجمالي المستحق", "confirm.fees": "رسوم المشتري",
    "fee.approx": "تقريبي", "fee.freightNote": "كلفة الشحن تقديرية — قد تكون أقل أو أعلى.",
  },
  RU: {
    "nav.buy": "Купить", "nav.watchlist": "Избранное", "nav.bids": "Мои ставки",
    "nav.purchases": "Покупки", "nav.account": "Аккаунт", "nav.sell": "Продать",
    "nav.notifications": "Уведомления",
    "hero.trust": "Оценка состояния и гарантия",
    "hero.eyebrow": "Оптовый маркетплейс",
    "hero.title1": "Покупайте авто", "hero.title2": "напрямую у Sayarah",
    "hero.sub": "Наш собственный сток плюс автомобили на консигнации от проверенных дилеров и компаний — каждый лот с оценкой и отчётом о состоянии, с доставкой до двери в GCC и Центральную Азию.",
    "hero.liveLots": "Лотов в эфире", "hero.liveLanes": "Живых потоков", "hero.carsSold": "Портов доставки", "hero.arbitration": "Арбитраж",
    "tag.owned": "Сток Sayarah", "tag.consigned": "Консигнация", "chip.sayarah": "Сток Sayarah",
    "search.placeholder": "Поиск по VIN, марке, лоту…",
    "browse.vehicles": "авто", "browse.endingSoon": "скоро финиш", "browse.filters": "Фильтры",
    "sort.ending": "Скоро финиш", "sort.grade": "Высший AutoGrade", "sort.low": "Цена: по возрастанию",
    "sort.high": "Цена: по убыванию", "sort.miles": "Меньший пробег",
    "chip.all": "Все", "chip.watching": "Избранное", "chip.noReserve": "Без резерва",
    "bid.current": "Текущая ставка", "bid.ends": "До конца", "bid.bids": "ставок", "bid.reserveMet": "Резерв достигнут",
    "bid.reserveNotMet": "Резерв не достигнут", "bid.noReserve": "Без резерва", "bid.winning": "Вы лидируете",
    "bid.outbid": "Ставка перебита", "bid.proxyMax": "Прокси · макс.", "bid.exact": "Точная ставка",
    "bid.setProxy": "Задать максимум", "bid.place": "Сделать ставку", "bid.buyNow": "Купить сейчас",
    "bid.makeOffer": "Предложить цену", "bid.enterLive": "Войти в зал торгов", "bid.min": "Мин. след. ставка",
    "bid.bidders": "участников",
    "mkt.value": "Рыночная цена", "mkt.greatBuy": "Отличная цена", "mkt.below": "Ниже рынка",
    "mkt.at": "По рынку", "mkt.above": "Выше рынка", "mkt.save": "выгода",
    "mkt.estimate": "Оценка Carzello", "mkt.recent": "Недавние похожие продажи", "mkt.sold": "продано",
    "mkt.disclaimer": "По закрытым аукционам Carzello, с поправкой на класс. Оценка, не гарантия.",
    "pay.due":"Платёж к оплате","pay.overdue":"Просрочено","pay.defaulted":"Дефолт","pay.paid":"Оплачено","pay.delivered":"Доставлено","pay.storageAccruing":"Начисляется хранение","pay.totalDue":"Итого к оплате","pay.penalty":"Штраф","pay.storageDue":"Плата за хранение","pay.payNow":"Оплатить","pay.pickup":"Отметить вывоз","pay.fileArb":"Подать арбитраж · окно 48ч","pay.winningBid":"Победившая ставка","pay.buyerFees":"Сборы покупателя","pay.lateFee":"Пеня","pay.defaultPenalty":"Штраф за дефолт","pay.storage":"Хранение","pay.gatePass":"Пропуск · готово к вывозу","pay.passCode":"Код пропуска","pay.issued":"Выдан","claim.title":"Подать арбитраж","claim.issue":"В чём проблема?","claim.amount":"Сумма претензии (USD, опц.)","claim.submit":"Отправить претензию",
    "offer.title": "Сделать предложение", "offer.sub": "Обязывающее предложение продавцу.",
    "offer.amount": "Ваше предложение (USD)", "offer.send": "Отправить", "offer.pending": "Предложение на рассмотрении",
    "offer.countered": "Встречное предложение", "offer.acceptCounter": "Принять встречное", "offer.decline": "Отклонить",
    "offer.accepted": "Предложение принято", "offer.declined": "Предложение отклонено",
    "c.watch": "Следить", "c.watching": "В избранном", "c.checkout": "Оформить", "c.viewLot": "Открыть лот",
    "c.inventory": "Каталог", "c.highBid": "Ставка", "c.ended": "Завершён", "c.won": "Выигран", "c.lost": "Проигран",
    "c.buyingPower": "Покупная способность", "c.available": "доступно",
    "confirm.title": "Подтвердите ставку", "confirm.buytitle": "Подтвердите покупку",
    "confirm.review": "Проверьте — это обязывающая ставка.", "confirm.binding": "Ставки обязывающие и не могут быть отозваны после подачи.",
    "confirm.place": "Подтвердить ставку", "confirm.buy": "Подтвердить покупку", "confirm.cancel": "Отмена",
    "confirm.proxy": "Максимум", "confirm.exact": "Ваша ставка", "confirm.buynow": "Цена «Купить сейчас»",
    "confirm.ifwin": "Если выиграете", "confirm.total": "Итого к оплате", "confirm.fees": "Сборы покупателя",
    "fee.approx": "прибл.", "fee.freightNote": "Фрахт ориентировочный — итоговая стоимость может быть ниже или выше.",
  },
  FA: { // Dari
    "nav.buy": "خرید", "nav.watchlist": "نشان‌شده‌ها", "nav.bids": "مزایده‌های من",
    "nav.purchases": "خریدهای من", "nav.account": "حساب من", "nav.sell": "فروش",
    "nav.notifications": "اعلان‌ها",
    "hero.trust": "درجه‌بندی‌شده و با ضمانت وضعیت",
    "hero.eyebrow": "بازار عمده‌فروشی",
    "hero.title1": "خودرو بخرید", "hero.title2": "مستقیم از سیارا",
    "hero.sub": "موجودی خودِ ما به‌علاوهٔ خودروهای امانی از دلال‌ها و شرکت‌های مورد اعتماد — هر خودرو درجه‌بندی و دارای گزارش وضعیت، با قیمت تا درب منزل شما در خلیج و آسیای میانه.",
    "hero.liveLots": "خودروهای زنده", "hero.liveLanes": "لاین‌های زنده", "hero.carsSold": "بنادر تحویل", "hero.arbitration": "داوری",
    "tag.owned": "موجودی سیارا", "tag.consigned": "امانی", "chip.sayarah": "موجودی سیارا",
    "search.placeholder": "جستجوی شماره شاسی، برند، لات…",
    "browse.vehicles": "خودرو", "browse.endingSoon": "به‌زودی پایان", "browse.filters": "فیلترها",
    "sort.ending": "به‌زودی پایان", "sort.grade": "بالاترین درجه", "sort.low": "قیمت: کم به زیاد",
    "sort.high": "قیمت: زیاد به کم", "sort.miles": "کمترین کارکرد",
    "chip.all": "همه", "chip.watching": "نشان‌شده‌ها", "chip.noReserve": "بدون حد رزرو",
    "bid.current": "پیشنهاد فعلی", "bid.ends": "پایان در", "bid.bids": "پیشنهاد", "bid.reserveMet": "حد رزرو رسید",
    "bid.reserveNotMet": "حد رزرو نرسید", "bid.noReserve": "بدون حد رزرو", "bid.winning": "شما برنده‌اید",
    "bid.outbid": "پیشنهاد بالاتر خورد", "bid.proxyMax": "نماینده · حداکثر", "bid.exact": "مبلغ دقیق",
    "bid.setProxy": "تعیین حداکثر", "bid.place": "ثبت پیشنهاد", "bid.buyNow": "خرید فوری",
    "bid.makeOffer": "ارائه پیشنهاد", "bid.enterLive": "ورود به اتاق حراج زنده", "bid.min": "حداقل پیشنهاد بعدی",
    "bid.bidders": "پیشنهاددهنده",
    "mkt.value": "ارزش بازار", "mkt.greatBuy": "خرید عالی", "mkt.below": "زیر بازار",
    "mkt.at": "قیمت بازار", "mkt.above": "بالای بازار", "mkt.save": "صرفه‌جویی",
    "mkt.estimate": "برآورد سیارا", "mkt.recent": "فروش‌های مشابه اخیر", "mkt.sold": "فروخته‌شده",
    "mkt.disclaimer": "از فروش‌های بسته‌شدهٔ سیارا، تنظیم‌شده بر اساس درجه. یک برآورد، نه تضمین.",
    "pay.due":"پرداخت سررسید","pay.overdue":"معوق","pay.defaulted":"نکول‌شده","pay.paid":"پرداخت‌شده","pay.delivered":"تحویل شد","pay.storageAccruing":"هزینه انبار در حال افزایش","pay.totalDue":"مجموع قابل پرداخت اکنون","pay.penalty":"جریمه","pay.storageDue":"هزینه انبار","pay.payNow":"اکنون پرداخت کنید","pay.pickup":"تحویل گرفته شد","pay.fileArb":"ثبت داوری · پنجره ۴۸ ساعته","pay.winningBid":"پیشنهاد برنده","pay.buyerFees":"هزینه‌های خریدار","pay.lateFee":"هزینه تأخیر","pay.defaultPenalty":"جریمه نکول","pay.storage":"انبار","pay.gatePass":"مجوز خروج · آماده تحویل","pay.passCode":"کد مجوز","pay.issued":"صادر شد","claim.title":"ثبت داوری","claim.issue":"مشکل چیست؟","claim.amount":"مبلغ ادعا (دلار، اختیاری)","claim.submit":"ثبت ادعا",
    "offer.title": "ارائه پیشنهاد", "offer.sub": "پیشنهاد الزام‌آور برای فروشنده ارسال می‌شود.",
    "offer.amount": "پیشنهاد شما (دلار)", "offer.send": "ارسال پیشنهاد", "offer.pending": "پیشنهاد در انتظار — منتظر فروشنده",
    "offer.countered": "پیشنهاد متقابل فروشنده", "offer.acceptCounter": "پذیرش پیشنهاد متقابل", "offer.decline": "رد",
    "offer.accepted": "پیشنهاد پذیرفته شد", "offer.declined": "پیشنهاد رد شد",
    "c.watch": "تماشا", "c.watching": "در حال تماشا", "c.checkout": "تسویه", "c.viewLot": "مشاهده خودرو",
    "c.inventory": "موجودی", "c.highBid": "بالاترین پیشنهاد", "c.ended": "پایان‌یافته", "c.won": "برنده", "c.lost": "بازنده",
    "c.buyingPower": "توان خرید", "c.available": "موجود",
    "confirm.title": "تأیید پیشنهاد شما", "confirm.buytitle": "تأیید خرید",
    "confirm.review": "لطفاً بازبینی کنید — این پیشنهاد الزام‌آور است.", "confirm.binding": "پیشنهادها الزام‌آور هستند و پس از ثبت قابل لغو نیستند.",
    "confirm.place": "تأیید پیشنهاد", "confirm.buy": "تأیید خرید", "confirm.cancel": "لغو",
    "confirm.proxy": "حداکثر", "confirm.exact": "پیشنهاد شما", "confirm.buynow": "قیمت خرید فوری",
    "confirm.ifwin": "اگر برنده شوید", "confirm.total": "مجموع قابل پرداخت", "confirm.fees": "هزینه‌های خریدار",
    "fee.approx": "تقریبی", "fee.freightNote": "هزینه حمل تخمینی است — ممکن است کمتر یا بیشتر شود.",
  },
  PS: { // Pashto
    "nav.buy": "پېرود", "nav.watchlist": "د کتنې لیست", "nav.bids": "زما وړاندیزونه",
    "nav.purchases": "زما پېرودنې", "nav.account": "زما حساب", "nav.sell": "پلورل",
    "nav.notifications": "خبرتیاوې",
    "hero.trust": "درجه بندي شوي او د حالت تضمین",
    "hero.eyebrow": "د لوی پلور بازار",
    "hero.title1": "موټر واخلئ", "hero.title2": "مستقیم له سیاره",
    "hero.sub": "زموږ خپل ذخیره او د باوري سوداګرو او شرکتونو امانتي موټر — هر موټر درجه‌بندي شوی او د حالت راپور لري، ستاسو تر کور پورې په بیه د خلیج او منځنۍ آسیا کې.",
    "hero.liveLots": "ژوندي موټر", "hero.liveLanes": "ژوندي لینونه", "hero.carsSold": "د تحویلۍ بندرونه", "hero.arbitration": "منځګړیتوب",
    "tag.owned": "د سیاره ذخیره", "tag.consigned": "امانتي", "chip.sayarah": "د سیاره ذخیره",
    "search.placeholder": "د شاسي نمبر، برانډ، لاټ ولټوئ…",
    "browse.vehicles": "موټر", "browse.endingSoon": "ژر پای ته رسیږي", "browse.filters": "فلټرونه",
    "sort.ending": "ژر پای", "sort.grade": "لوړه درجه", "sort.low": "بیه: له ټیټ تر لوړ",
    "sort.high": "بیه: له لوړ تر ټیټ", "sort.miles": "ټیټ مزل",
    "chip.all": "ټول", "chip.watching": "کتل کیږي", "chip.noReserve": "بې حده",
    "bid.current": "اوسنی وړاندیز", "bid.ends": "پای ته رسیږي په", "bid.bids": "وړاندیز", "bid.reserveMet": "حد بشپړ شو",
    "bid.reserveNotMet": "حد بشپړ نشو", "bid.noReserve": "بې حده", "bid.winning": "تاسو ګټونکی یاست",
    "bid.outbid": "لوړ وړاندیز وشو", "bid.proxyMax": "استازی · اعظمي", "bid.exact": "دقیقه بیه",
    "bid.setProxy": "اعظمي ټاکل", "bid.place": "وړاندیز ثبتول", "bid.buyNow": "همدا اوس واخلئ",
    "bid.makeOffer": "وړاندیز وکړئ", "bid.enterLive": "ژوندي لیلام خونې ته ننوتل", "bid.min": "راتلونکی لږ تر لږه وړاندیز",
    "bid.bidders": "وړاندیزوونکي",
    "mkt.value": "د بازار ارزښت", "mkt.greatBuy": "ښه پېرود", "mkt.below": "تر بازار ښکته",
    "mkt.at": "د بازار بیه", "mkt.above": "تر بازار پورته", "mkt.save": "سپمول",
    "mkt.estimate": "د سیاره اټکل", "mkt.recent": "وروستي ورته پلورونه", "mkt.sold": "پلورل شوي",
    "mkt.disclaimer": "د سیاره له تړل شویو پلورونو، د درجې له مخې سم شوي. یو اټکل، نه تضمین.",
    "pay.due":"تادیه پاتې ده","pay.overdue":"ځنډېدلی","pay.defaulted":"نه تادیه شوی","pay.paid":"تادیه شوی","pay.delivered":"وسپارل شو","pay.storageAccruing":"د ګودام فیس مخ په زیاتیدو","pay.totalDue":"اوس ټول د ورکړې وړ","pay.penalty":"جریمه","pay.storageDue":"د ګودام فیس","pay.payNow":"اوس یې ورکړئ","pay.pickup":"واخیستل شو","pay.fileArb":"منځګړیتوب · ۴۸ ساعته کړکۍ","pay.winningBid":"ګټونکی وړاندیز","pay.buyerFees":"د پېرودونکي فیسونه","pay.lateFee":"د ځنډ فیس","pay.defaultPenalty":"د نه‌تادیې جریمه","pay.storage":"ګودام","pay.gatePass":"د وتلو اجازه · چمتو","pay.passCode":"د اجازې کوډ","pay.issued":"صادر شو","claim.title":"منځګړیتوب ثبتول","claim.issue":"ستونزه څه ده؟","claim.amount":"ادعا شوې اندازه (ډالر، اختیاري)","claim.submit":"ادعا ثبتول",
    "offer.title": "وړاندیز وکړئ", "offer.sub": "یو الزامي وړاندیز پلورونکي ته لیږل کیږي.",
    "offer.amount": "ستاسو وړاندیز (ډالر)", "offer.send": "وړاندیز لیږل", "offer.pending": "وړاندیز په تمه — د پلورونکي په تمه",
    "offer.countered": "د پلورونکي متقابل وړاندیز", "offer.acceptCounter": "متقابل وړاندیز منل", "offer.decline": "ردول",
    "offer.accepted": "وړاندیز ومنل شو", "offer.declined": "وړاندیز رد شو",
    "c.watch": "کتل", "c.watching": "کتل کیږي", "c.checkout": "تصفیه", "c.viewLot": "موټر کتل",
    "c.inventory": "موجودي", "c.highBid": "لوړ وړاندیز", "c.ended": "پای ته ورسید", "c.won": "وګټل", "c.lost": "وبایلل",
    "c.buyingPower": "د پېرود توان", "c.available": "شته",
    "confirm.title": "خپل وړاندیز تایید کړئ", "confirm.buytitle": "پېرود تایید کړئ",
    "confirm.review": "مهرباني وکړئ بیاکتنه وکړئ — دا الزامي دی.", "confirm.binding": "وړاندیزونه الزامي دي او د ثبت وروسته بیرته نه شي اخیستل کیدی.",
    "confirm.place": "وړاندیز تایید", "confirm.buy": "پېرود تایید", "confirm.cancel": "لغوه",
    "confirm.proxy": "اعظمي", "confirm.exact": "ستاسو وړاندیز", "confirm.buynow": "د همدا اوس پېرود بیه",
    "confirm.ifwin": "که وګټئ", "confirm.total": "ټول د ورکړې وړ", "confirm.fees": "د پېرودونکي فیسونه",
    "fee.approx": "نږدې", "fee.freightNote": "د لیږد لګښت اټکلي دی — ښايي لږ یا ډیر شي.",
  },
};

const RTL_LANGS = ["AR", "FA", "PS"];
const LANGS = [
  { code: "EN", label: "EN", native: "English" },
  { code: "AR", label: "AR", native: "العربية" },
  { code: "FA", label: "FA", native: "دری" },
  { code: "PS", label: "PS", native: "پښتو" },
  { code: "RU", label: "RU", native: "Русский" },
];

function useT() {
  const s = useStore();
  const lang = s.lang || "EN";
  const t = (key) => (STRINGS[lang] && STRINGS[lang][key]) || STRINGS.EN[key] || key;
  return { t, lang, isRTL: RTL_LANGS.includes(lang) };
}

function LangSwitch({ compact }) {
  const s = useStore();
  const cur = s.lang || "EN";
  const [open, setOpen] = useState(false);
  return (
    <div style={{ position: "relative" }}>
      <button className="iconbtn" aria-label="Change language" aria-haspopup="true" aria-expanded={open} style={{ width: "auto", padding: "0 11px", gap: 6, fontWeight: 800, fontSize: 12.5, letterSpacing: ".06em" }} onClick={() => setOpen(o => !o)}>
        <I.globe width="15" height="15" />{cur}<I.chevD width="11" height="11" />
      </button>
      {open && (
        <>
          <div style={{ position: "fixed", inset: 0, zIndex: 90 }} onClick={() => setOpen(false)} />
          <div className="card" style={{ position: "absolute", right: 0, top: 44, zIndex: 95, minWidth: 150, boxShadow: "var(--shadow-3)", padding: 4 }}>
            {LANGS.map(l => (
              <button key={l.code} className="checkline" style={{ width: "100%", fontWeight: cur === l.code ? 800 : 600, color: cur === l.code ? "var(--brand)" : "var(--fg-2)" }}
                onClick={() => { Engine.setLang(l.code); setOpen(false); }}>
                <span style={{ fontFamily: "var(--mono)", width: 26 }}>{l.label}</span>{l.native}
                {cur === l.code && <I.check width="13" height="13" style={{ marginLeft: "auto" }} />}
              </button>
            ))}
          </div>
        </>
      )}
    </div>
  );
}

Object.assign(window, { STRINGS, LANGS, RTL_LANGS, useT, LangSwitch });
