// Duyuf design tokens — Brand: ضيوف
// Camel, Pastel Brown, Dark Charcoal — Alexandria typography.

const DuyufTokens = {
  // Brand
  camel: '#C19872',
  camelDeep: '#A87F5A',
  camelSoft: '#E8D5C2',
  camelMist: '#F5EBE0',
  pastelBrown: '#7F6D5F',
  ink: '#1F1B17',
  inkSoft: '#3C342D',
  charcoal: '#333333',

  // Surfaces (warm)
  cream: '#FAF6F1',
  creamDeep: '#F2EBE2',
  white: '#FFFFFF',
  hairline: 'rgba(31,27,23,0.08)',
  hairlineStrong: 'rgba(31,27,23,0.14)',

  // Functional — derived strictly from brand palette (camel · pastel brown · charcoal)
  success: '#7F6D5F',        // pastel brown — confirmed / verified
  warn: '#A87F5A',           // camel deep — heads-up / limited seats
  danger: '#5C3D2E',          // dark camel-charcoal blend — cancel / error
  info: '#7F6D5F',           // pastel brown

  // Dark
  darkBg: '#15110D',
  darkSurface: '#1F1A15',
  darkSurfaceHi: '#2B241D',
  darkText: '#F2EBE2',
  darkMuted: 'rgba(242,235,226,0.6)',
  darkHairline: 'rgba(242,235,226,0.10)',

  // Radii
  rXs: 6, rSm: 10, rMd: 14, rLg: 20, rXl: 28, rFull: 999,

  // Shadows
  cardShadow: '0 1px 2px rgba(31,27,23,0.06), 0 8px 24px rgba(31,27,23,0.06)',
  heroShadow: '0 12px 32px rgba(127,109,95,0.18)',
};

// Theme-aware palette
function useDuyufTheme(t) {
  const T = DuyufTokens;
  const dark = t?.dark;
  return {
    ...T,
    isDark: !!dark,
    bg: dark ? T.darkBg : T.cream,
    surface: dark ? T.darkSurface : T.white,
    surfaceAlt: dark ? T.darkSurfaceHi : T.creamDeep,
    text: dark ? T.darkText : T.ink,
    textMuted: dark ? T.darkMuted : 'rgba(31,27,23,0.55)',
    textFaint: dark ? 'rgba(242,235,226,0.4)' : 'rgba(31,27,23,0.35)',
    hairline: dark ? T.darkHairline : T.hairline,
    primary: T.camel,
    primaryDeep: T.camelDeep,
    accent: T.pastelBrown,
  };
}

// Localized strings  (AR | EN | UR)
const L = {
  ar: {
    appName: 'ضيوف',
    tagline: 'رحلة ميسّرة إلى بيت الله',
    welcome: 'أهلاً بضيوف الرحمن',
    onb1Title: 'باقاتٌ موثوقة',
    onb1Body: 'احجز عمرتك بالطائرة أو بالحافلة من مزودين موثوقين.',
    onb2Title: 'فندقٌ وطيران',
    onb2Body: 'فنادق قرب الحرمين وأفضل أسعار الرحلات.',
    onb3Title: 'مع تنقّلٍ مريح',
    onb3Body: 'احجز وسيلة التنقّل وتابع رحلتك برمز QR واحد.',
    skip: 'تخطّي', next: 'التالي', begin: 'لنبدأ',
    home: 'الرئيسية', explore: 'استكشف', trips: 'رحلاتي', wallet: 'المحفظة', me: 'حسابي',
    services: 'الخدمات', umrahFlight: 'عمرة بالطائرة', umrahBus: 'عمرة بالحافلة',
    flights: 'طيران', hotels: 'فنادق', transport: 'مواصلات', packages: 'باقات',
    forYou: 'مختارٌ لك', popularPackages: 'الأكثر طلباً', nearHaram: 'قرب الحرم',
    searchPh: 'ابحث عن وجهة، فندق، أو باقة…',
    from: 'من', to: 'إلى', depart: 'الذهاب', return_: 'العودة', travelers: 'المسافرون',
    nights: 'ليالٍ', persons: 'مسافر', search: 'بحث',
    book: 'احجز الآن', continue_: 'متابعة', confirm: 'تأكيد الحجز',
    seeAll: 'عرض الكل', from2: 'يبدأ من', perPerson: '/ للفرد',
    days: 'أيام', stars: 'نجوم', rating: 'تقييم',
    saved: 'المحفوظات', notifications: 'الإشعارات', referral: 'صديق يدعو صديقاً',
    promo: 'كود الخصم', mybookings: 'حجوزاتي', upcoming: 'القادمة', completed: 'منتهية',
    pay: 'ادفع', total: 'الإجمالي', sar: 'ر.س',
    qrTitle: 'رمز الحجز', qrSub: 'أظهر هذا الرمز عند تسجيل الدخول',
    bookingRef: 'رقم الحجز',
    addTraveler: 'إضافة مسافر', savedTravelers: 'مسافرون محفوظون',
    promoApplied: 'تم تطبيق الكود',
    wallet: 'المحفظة', balance: 'الرصيد المتاح', topup: 'إضافة رصيد', withdraw: 'سحب',
    transactions: 'المعاملات', recharged: 'شُحنت المحفظة', refund: 'استرداد', payment: 'دفع',
    profile: 'الملف الشخصي', settings: 'الإعدادات', language: 'اللغة', theme: 'المظهر',
    signOut: 'تسجيل الخروج', personalInfo: 'المعلومات الشخصية', paymentMethods: 'وسائل الدفع',
    help: 'مساعدة', about: 'حول التطبيق',
    // provider
    provider: 'لوحة المزوّد', revenue: 'الإيرادات', bookings: 'الحجوزات', scanner: 'الماسح',
    seats: 'المقاعد', newPackage: 'باقة جديدة', dashboard: 'الملخص',
    today: 'اليوم', week: 'الأسبوع', month: 'الشهر',
    confirmed: 'مؤكّد', pending: 'بالانتظار', cancelled: 'ملغى',
    step: 'خطوة', of: 'من',
    pkgBasics: 'البيانات الأساسية', pkgItin: 'البرنامج', pkgSeats: 'المقاعد والأسعار', pkgReview: 'مراجعة',
    pkgName: 'اسم الباقة', pkgType: 'نوع الرحلة', pkgDur: 'المدة', pkgDeparture: 'تاريخ المغادرة',
    save: 'حفظ', publish: 'نشر', back: 'رجوع',
  },
  en: {
    appName: 'Duyuf',
    tagline: 'A guided journey to the holy sites',
    welcome: 'Welcome, guests of Allah',
    onb1Title: 'Trusted packages',
    onb1Body: 'Book Umrah by flight or bus with verified providers.',
    onb2Title: 'Hotels & flights',
    onb2Body: 'Stays near the Haram, fairly priced flights.',
    onb3Title: 'Move with ease',
    onb3Body: 'Reserve transport and follow your trip with one QR.',
    skip: 'Skip', next: 'Next', begin: 'Begin',
    home: 'Home', explore: 'Explore', trips: 'Trips', wallet: 'Wallet', me: 'Profile',
    services: 'Services', umrahFlight: 'Umrah · Flight', umrahBus: 'Umrah · Bus',
    flights: 'Flights', hotels: 'Hotels', transport: 'Transport', packages: 'Packages',
    forYou: 'Picked for you', popularPackages: 'Most booked', nearHaram: 'Near the Haram',
    searchPh: 'Search destinations, hotels, packages…',
    from: 'From', to: 'To', depart: 'Depart', return_: 'Return', travelers: 'Travelers',
    nights: 'nights', persons: 'guests', search: 'Search',
    book: 'Book now', continue_: 'Continue', confirm: 'Confirm booking',
    seeAll: 'See all', from2: 'from', perPerson: '/ person',
    days: 'days', stars: 'stars', rating: 'rating',
    saved: 'Saved', notifications: 'Notifications', referral: 'Refer & earn',
    promo: 'Promo code', mybookings: 'My bookings', upcoming: 'Upcoming', completed: 'Completed',
    pay: 'Pay', total: 'Total', sar: 'SAR',
    qrTitle: 'Boarding QR', qrSub: 'Show this code at check-in',
    bookingRef: 'Booking ref',
    addTraveler: 'Add traveler', savedTravelers: 'Saved travelers',
    promoApplied: 'Promo applied',
    balance: 'Available balance', topup: 'Top up', withdraw: 'Withdraw',
    transactions: 'Transactions', recharged: 'Top-up', refund: 'Refund', payment: 'Payment',
    profile: 'Profile', settings: 'Settings', language: 'Language', theme: 'Appearance',
    signOut: 'Sign out', personalInfo: 'Personal info', paymentMethods: 'Payment methods',
    help: 'Help', about: 'About',
    provider: 'Provider', revenue: 'Revenue', bookings: 'Bookings', scanner: 'Scanner',
    seats: 'Seats', newPackage: 'New package', dashboard: 'Dashboard',
    today: 'Today', week: 'This week', month: 'This month',
    confirmed: 'Confirmed', pending: 'Pending', cancelled: 'Cancelled',
    step: 'Step', of: 'of',
    pkgBasics: 'Basics', pkgItin: 'Itinerary', pkgSeats: 'Seats & pricing', pkgReview: 'Review',
    pkgName: 'Package name', pkgType: 'Trip type', pkgDur: 'Duration', pkgDeparture: 'Departure',
    save: 'Save', publish: 'Publish', back: 'Back',
  },
  ur: {
    appName: 'ضیوف',
    tagline: 'حرمین کا آسان سفر',
    welcome: 'اللہ کے مہمانوں کو خوش آمدید',
    onb1Title: 'قابل اعتماد پیکیجز',
    onb1Body: 'تصدیق شدہ فراہم کنندگان کے ساتھ پرواز یا بس پر عمرہ بک کریں۔',
    onb2Title: 'ہوٹل اور پروازیں',
    onb2Body: 'حرم کے قریب رہائش، مناسب قیمت پر پروازیں۔',
    onb3Title: 'آسان سفر',
    onb3Body: 'ٹرانسپورٹ بک کریں اور ایک QR سے سفر کی پیروی کریں۔',
    skip: 'چھوڑیں', next: 'اگلا', begin: 'شروع کریں',
    home: 'ہوم', explore: 'دریافت', trips: 'سفر', wallet: 'والٹ', me: 'پروفائل',
    services: 'خدمات', umrahFlight: 'پرواز سے عمرہ', umrahBus: 'بس سے عمرہ',
    flights: 'پروازیں', hotels: 'ہوٹل', transport: 'ٹرانسپورٹ', packages: 'پیکیجز',
    forYou: 'آپ کے لیے', popularPackages: 'مقبول ترین', nearHaram: 'حرم کے قریب',
    searchPh: 'منزل، ہوٹل یا پیکیج تلاش کریں…',
    from: 'سے', to: 'تک', depart: 'روانگی', return_: 'واپسی', travelers: 'مسافر',
    nights: 'راتیں', persons: 'مسافر', search: 'تلاش',
    book: 'ابھی بک کریں', continue_: 'جاری رکھیں', confirm: 'بکنگ کی تصدیق',
    seeAll: 'سب دیکھیں', from2: 'سے شروع', perPerson: '/ فی شخص',
    days: 'دن', stars: 'ستارے', rating: 'درجہ بندی',
    saved: 'محفوظ', notifications: 'اطلاعات', referral: 'دوست کو دعوت دیں',
    promo: 'پرومو کوڈ', mybookings: 'میری بکنگز', upcoming: 'آنے والی', completed: 'مکمل',
    pay: 'ادا کریں', total: 'کل', sar: 'ر.س',
    qrTitle: 'بکنگ QR', qrSub: 'چیک ان پر یہ کوڈ دکھائیں',
    bookingRef: 'بکنگ نمبر',
    addTraveler: 'مسافر شامل کریں', savedTravelers: 'محفوظ مسافر',
    promoApplied: 'پرومو لاگو ہوا',
    balance: 'دستیاب بیلنس', topup: 'ٹاپ اپ', withdraw: 'نکالیں',
    transactions: 'لین دین', recharged: 'ٹاپ اپ', refund: 'واپسی', payment: 'ادائیگی',
    profile: 'پروفائل', settings: 'سیٹنگز', language: 'زبان', theme: 'تھیم',
    signOut: 'سائن آؤٹ', personalInfo: 'ذاتی معلومات', paymentMethods: 'ادائیگی کے طریقے',
    help: 'مدد', about: 'متعلق',
    provider: 'فراہم کنندہ', revenue: 'آمدنی', bookings: 'بکنگز', scanner: 'اسکینر',
    seats: 'سیٹیں', newPackage: 'نیا پیکیج', dashboard: 'ڈیش بورڈ',
    today: 'آج', week: 'اس ہفتے', month: 'اس مہینے',
    confirmed: 'تصدیق شدہ', pending: 'زیر التواء', cancelled: 'منسوخ',
    step: 'مرحلہ', of: 'از',
    pkgBasics: 'بنیادی', pkgItin: 'پروگرام', pkgSeats: 'سیٹیں اور قیمت', pkgReview: 'جائزہ',
    pkgName: 'پیکیج کا نام', pkgType: 'سفر کی قسم', pkgDur: 'مدت', pkgDeparture: 'روانگی',
    save: 'محفوظ کریں', publish: 'شائع کریں', back: 'واپس',
  },
};

const RTL_LANGS = new Set(['ar', 'ur']);
const isRTL = (lang) => RTL_LANGS.has(lang);

Object.assign(window, { DuyufTokens, useDuyufTheme, L, isRTL });
