PageSourceSearch

https://singaporecalorie.com/_next/static/chunks/04dce06853b8b6f4.js

js singaporecalorie.com collected 2026-10-01 23:52:44 UTC 138,482 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,86942,783129,a=>{"use strict";a.i(247167);let e={id:"srilanka",languageDefault:"en",languagesSupported:["en","si","ta"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"amber-500",secondary:"blue-700",gradient:"from-amber-400 via-orange-500 to-red-700",gradientFrom:"#fbbf24",gradientVia:"#f97316",gradientTo:"#b91c1c",style:"warm",accentColor:"#f59e0b",bgPrimary:"from-slate-950 via-amber-950/30 to-slate-950",bgCard:"bg-amber-500/5 border-amber-500/20",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-amber-400",buttonGradient:"from-amber-500 via-orange-500 to-red-600",progressColor:"#22c55e",glowColor:"rgba(245, 158, 11, 0.4)",appBgBase:"#0A0806",appHtmlBg:"#0A0806",appSurface:"rgba(16, 12, 8, 0.9)",appBorder:"rgba(245, 158, 11, 0.10)",appRing:"#f59e0b",appMuted:"rgba(18, 14, 10, 0.9)"},fasting:{enabled:!0,traditions:["buddhist","hindu","muslim","modern"],defaultTraditions:["buddhist","modern"],showRamadan:!0,showHinduFasts:!0,showBuddhistFasts:!0,showModernIF:!0},prayerTimes:{enabled:!1,authority:"calculated",authorityName:"Calculated (City-based)",apiSource:"calculated",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"calculated",defaultCalculationMethod:"mwl",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["hoppers","egg hoppers","string hoppers","pittu","kiribath","coconut roti","pol roti","dhal","sambol","milk rice","plain tea","milk tea","kiri te","bread","butter cake"],lunch:["rice and curry","rice & curry","bath","lamprais","biryani","kottu","fried rice","noodles","devilled chicken","fish curry","dhal curry","parippu","polos curry","ambul thiyal","chicken curry","beetroot curry","brinjal moju"],dinner:["rice and curry","kottu","string hoppers","hoppers","fried rice","noodles","soup","roti","pittu","devilled prawns","fish curry","chicken curry"],snack:["isso wade","cutlets","rolls","patties","kavum","kokis","aluwa","watalappan","pol toffee","dodol","halapa","plain tea","short eats","wade","ulundu wade"]},cuisineOptions:[{value:"Sinhalese",label:"Sinhalese"},{value:"Tamil Sri Lankan",label:"Tamil Sri Lankan"},{value:"Burgher",label:"Burgher / Dutch"},{value:"Mixed Sri Lankan",label:"Mixed Sri Lankan"},{value:"Global",label:"Global"}],pricing:{monthly:499,yearly:3499,trialDays:7,currency:{code:"LKR",symbol:"Rs",position:"before",decimals:0}},content:{brandName:"SriLankanCalorie",tagline:"Sri Lankan food, with calorie estimates and portion notes for everyday meals.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇱🇰",mascot:a.i(100540).SRILANKA_BRAND_ASSETS.logo,foodExamples:["Rice & Curry","Hoppers","Kottu","String Hoppers","Lamprais","Pol Sambol","Kiribath","Watalappan"],domain:"srilankancalorie.com",metaDescription:"Explore Sri Lankan food calorie estimates for rice and curry, hoppers, kottu and short eats. Check portion sizes and practical guides for everyday meals."},ai:{foodBias:["rice and curry","hoppers","string hoppers","kottu","pol sambol","dhal curry","fish ambul thiyal","lamprais","kiribath","pittu","watalappan","kokis","aluwa","kavum","coconut roti","egg hoppers","devilled chicken","devilled prawns","isso wade","parippu","gotukola sambol","pol roti","milk rice"],toneStyle:"friendly",culturalContext:"User is from Sri Lanka. Recognize Sri Lankan dishes from Sinhalese and Tamil cuisines. Be aware of Buddhist Poya day fasting traditions. Distinguish from Indian dishes — Sri Lankan curry is different from Indian curry.",greetingStyle:"Ayubowan"},comms:{email:{provider:"sendgrid",fromName:"SriLankanCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"SRILANKA"},otp:{provider:"firebase",widgetEnabled:!0,serverEnabled:!0,envKeyPrefix:"SRILANKA"}}},i={id:"thailand",languageDefault:"th",languagesSupported:["th","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"red-700",secondary:"amber-400",gradient:"from-red-800 via-amber-500 to-emerald-700",gradientFrom:"#8C1D18",gradientVia:"#CFA64A",gradientTo:"#2F7D61",style:"luxury",accentColor:"#CFA64A",bgPrimary:"from-stone-950 via-red-950/70 to-stone-950",bgCard:"bg-red-950/30 border-amber-300/20",textPrimary:"text-white",textSecondary:"text-white/70",textAccent:"text-amber-300",buttonGradient:"from-red-700 via-red-600 to-amber-500",progressColor:"#CFA64A",glowColor:"rgba(207, 166, 74, 0.35)",appBgBase:"#150B0B",appHtmlBg:"#150B0B",appSurface:"rgba(30, 14, 14, 0.92)",appBorder:"rgba(207, 166, 74, 0.12)",appRing:"#CFA64A",appMuted:"rgba(42, 18, 18, 0.92)",appAmbientGlow:"radial-gradient(at 18% 20%, rgba(211, 47, 47, 0.12) 0px, transparent 50%), radial-gradient(at 82% 18%, rgba(207, 166, 74, 0.1) 0px, transparent 50%), radial-gradient(at 52% 88%, rgba(47, 125, 97, 0.08) 0px, transparent 45%)",marketingSurface:"light",marketingBgBase:"#FFF8F0",marketingHtmlBg:"#FFF8F0",marketingCard:"rgba(255, 251, 245, 0.94)",marketingMuted:"#F8EEDC",marketingForeground:"#2C1313",marketingMutedForeground:"rgba(74, 43, 33, 0.72)",marketingBorder:"rgba(207, 166, 74, 0.22)"},fasting:{enabled:!0,traditions:["buddhist","modern"],defaultTraditions:["buddhist","modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!0,showModernIF:!0},mealPatterns:{breakfast:["โจ๊ก","ข้าวต้ม","ปาท่องโก๋","ไข่กระทะ","ข้าวมันไก่","กาแฟเย็น","ชาไทย"],lunch:["ผัดไทย","ข้าวกะเพรา","ข้าวมันไก่","ส้มตำ","ก๋วยเตี๋ยวเรือ","ต้มยำ","แกงเขียวหวาน"],dinner:["หมูกระทะ","ข้าวหมูกรอบ","แกงเผ็ด","ผัดซีอิ๊ว","ผัดกะเพรา","ลาบ","ข้าวขาหมู"],snack:["ลูกชิ้นปิ้ง","ข้าวเหนียวมะม่วง","โรตี","ชาไทย","ไอศกรีมกะทิ","ขนมครก"]},cuisineOptions:[{value:"Central Thai",label:"อาหารไทยภาคกลาง"},{value:"Northern Thai",label:"อาหารเหนือ"},{value:"Isan Thai",label:"อาหารอีสาน"},{value:"Southern Thai",label:"อาหารใต้"},{value:"Street Food",label:"สตรีทฟู้ด"},{value:"Global",label:"อาหารนานาชาติ"}],pricing:{monthly:99,yearly:499,trialDays:7,currency:{code:"THB",symbol:"฿",position:"before",decimals:0}},content:{brandName:"ThaiCalorie",brandNameNative:"ไทยแคลอรี่",tagline:"แอปคำนวณแคลอรี่อาหารไทยที่เข้าใจรสชาติและวิถีชีวิตแบบไทย",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇹🇭",mascot:a.i(450962).THAILAND_BRAND_ASSETS.logo,foodExamples:["Pad Thai","Tom Yum","Khao Man Gai","Som Tam","Boat Noodles","Green Curry","Moo Krob Rice","Pad Krap
1ow"],domain:"thaicalorie.com",metaDescription:"ติดตามแคลอรี่ของอาหารไทยด้วย AI เข้าใจผัดไทย ต้มยำ ข้าวมันไก่ และอาหารข้างทางแบบไทยจริง ๆ"},ai:{foodBias:["pad thai","tom yum","khao man gai","som tam","boat noodles","green curry","moo krob rice","pad krapow","pad see ew","mango sticky rice","massaman curry","larb","papaya salad","thai tea"],toneStyle:"friendly",culturalContext:"User is from Thailand. Recognize Thai cuisine across street food, one-dish rice meals, noodle bowls, curries, soups, and regional variations. Be aware of oils, condiments, coconut milk, sweet-sour-salty-spicy balance, and mixed plates from markets or food courts. Default to Thai-first phrasing with practical, local food understanding.",greetingStyle:"สวัสดี"},comms:{email:{provider:"sendgrid",fromName:"ThaiCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"THAILAND"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"THAILAND"}}},r="india";function o(a){return"us"===a?"usa":a}let t={india:{regionId:"india",version:2,auth:{methods:{phoneOtp:!0,apple:!0,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"phoneOtp",order:["phoneOtp","apple","google","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+91",allowCountryPicker:!0,placeholder:"Enter mobile number"},copy:{emailHiddenReason:"Use Phone OTP for faster sign-in.",primaryButtonText:"Continue with Phone"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!0,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},srilanka:{regionId:"srilanka",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"phoneOtp",order:["phoneOtp","google","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+94",allowCountryPicker:!1,placeholder:"Mobile number"},copy:{emailHiddenReason:"Use Phone OTP for faster sign-in.",primaryButtonText:"Continue with Phone"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},malaysia:{regionId:"malaysia",version:10,auth:{methods:{phoneOtp:!1,apple:!0,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","apple","emailVerificationCode","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+60",allowCountryPicker:!0,placeholder:"Nombor telefon"},copy:{emailHiddenReason:"Gunakan OTP telefon untuk log masuk lebih pantas.",primaryButtonText:"Teruskan dengan Telefon"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!0,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},singapore:{regionId:"singapore",version:5,auth:{methods:{phoneOtp:!0,apple:!0,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","apple","emailVerificationCode","phoneOtp","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+65",allowCountryPicker:!1,placeholder:"Mobile number"},copy:{emailHiddenReason:"Use Phone OTP for faster sign-in.",primaryButtonText:"Continue with Phone"}}
1,compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!0,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},thailand:{regionId:"thailand",version:2,auth:{methods:{phoneOtp:!1,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+66",allowCountryPicker:!0,placeholder:"เบอร์โทรศัพท์"},copy:{emailHiddenReason:"เข้าสู่ระบบด้วย Google หรืออีเมลเพื่อความรวดเร็ว",primaryButtonText:"ดำเนินการต่อด้วย Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},usa:{regionId:"usa",version:2,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!0,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","emailPassword","phoneOtp"],showOtherOptions:!0},phone:{defaultCountryCode:"+1",allowCountryPicker:!0,placeholder:"Phone number"},copy:{primaryButtonText:"Continue with Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!1,showMeasurementSystem:!0,showNotificationPreferences:!0}},canada:{regionId:"canada",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!0,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","emailPassword","phoneOtp"],showOtherOptions:!0},phone:{defaultCountryCode:"+1",allowCountryPicker:!0,placeholder:"Phone number"},copy:{primaryButtonText:"Continue with Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!0,showNotificationPreferences:!0}},france:{regionId:"france",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!0,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","emailPassword","phoneOtp"],showOtherOptions:!0},phone:{defaultCountryCode:"+33",allowCountryPicker:!0,placeholder:"Numéro de téléphone"},copy:{primaryButtonText:"Continuer avec Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,show
1FastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},japan:{regionId:"japan",version:3,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","phoneOtp","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+81",allowCountryPicker:!0,placeholder:"電話番号を入力"},copy:{emailHiddenReason:"Googleで簡単ログイン",primaryButtonText:"Googleで続ける"}},compliance:{requiresAttPrompt:!0,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},korea:{regionId:"korea",version:1,auth:{methods:{phoneOtp:!1,apple:!0,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","apple","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+82",allowCountryPicker:!1,placeholder:"전화번호 입력"},copy:{emailHiddenReason:"Google로 간편 로그인",primaryButtonText:"Google로 계속하기"}},compliance:{requiresAttPrompt:!0,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},germany:{regionId:"germany",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!0,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailPassword","emailVerificationCode","phoneOtp"],showOtherOptions:!0},phone:{defaultCountryCode:"+49",allowCountryPicker:!0,placeholder:"Telefonnummer"},copy:{primaryButtonText:"Weiter mit Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},italy:{regionId:"italy",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!0,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","emailPassword","phoneOtp"],showOtherOptions:!0},phone:{defaultCountryCode:"+39",allowCountryPicker:!0,placeholder:"Numero di telefono"},copy:{primaryButtonText:"Continua con Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},vietnam:{regionId:"vietnam",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailVerificationCode:!1,emailMagicLink:!1,guestLogin:!0},ui:{primary:"phoneOtp",order:["phoneOtp","google","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+84",allowCountryPicker:!0,placeholder:"Nhập số điện thoại"},copy:{emailHiddenReason:"Sử dụng OTP điện thoại để đăng nhập nhanh hơn.",primaryButtonText:"Tiếp tục bằng điện thoại"}}
1,compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},africa:{regionId:"africa",version:2,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"phoneOtp",order:["phoneOtp","google","emailPassword","guestLogin"],showOtherOptions:!0},phone:{defaultCountryCode:"+234",allowCountryPicker:!0,placeholder:"Enter your phone number"},copy:{emailHiddenReason:"Use Phone OTP for faster sign-in.",primaryButtonText:"Continue with Phone"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!1,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!1,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{aiPhotoLogging:!1,mealPlanner:!0,streakCelebrations:!1,premiumUpsell:!0,smartInsightsDailySummary:!0},percentage:{google:100,newOnboardingV2:100,aiPhotoLogging:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!0,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},spain:{regionId:"spain",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!0,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailPassword","emailVerificationCode","phoneOtp"],showOtherOptions:!0},phone:{defaultCountryCode:"+34",allowCountryPicker:!0,placeholder:"Número de teléfono"},copy:{primaryButtonText:"Continuar con Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},indonesia:{regionId:"indonesia",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"phoneOtp",order:["phoneOtp","google","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+62",allowCountryPicker:!0,placeholder:"Nomor telepon"},copy:{primaryButtonText:"Lanjut dengan telepon"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!0,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0}},philippines:{regionId:"philippines",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!0,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"phoneOtp",order:["phoneOtp","google","facebook","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+63",allowCountryPicker:!0,placeholder:"Phone number"},copy:{primaryButtonText:"Continue with phone"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,show
1FastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!1,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!0},mexico:{regionId:"mexico",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!0,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","phoneOtp","facebook","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+52",allowCountryPicker:!0,placeholder:"Número de teléfono"},copy:{primaryButtonText:"Continuar con Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!1},brazil:{regionId:"brazil",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!0,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","phoneOtp","facebook","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+55",allowCountryPicker:!0,placeholder:"Número de telefone"},copy:{primaryButtonText:"Continuar com o Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!1},dubai:{regionId:"dubai",version:1,auth:{methods:{phoneOtp:!1,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","emailPassword","guestLogin"],showOtherOptions:!0},phone:{defaultCountryCode:"+971",allowCountryPicker:!0,placeholder:"Mobile number"},copy:{emailHiddenReason:"Use Google or email code for a faster sign-in.",primaryButtonText:"Continue with Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!1,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{premiumUpsell:!0,mealPlanner:!0},percentage:{google:100,emailPassword:100,newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!0,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!0},qatar:{regionId:"qatar",version:1,auth:{methods:{phoneOtp:!1,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","emailPassword","guestLogin"],showOtherOptions:!0},phone:{defaultCountryCode:"+974",allowCountryPicker:!0,placeholder:"Mobile number"},copy:{emailHiddenReason:"Use Google or email code for a faster sign-in.",primaryButtonText:"Continue with Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!1,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{premiumUpsell:!0,mealPlanner:!0},percentage:{google:100,emailPassword:100,newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!0,show
1FastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!0},switzerland:{regionId:"switzerland",version:1,auth:{methods:{phoneOtp:!0,apple:!1,google:!0,facebook:!0,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!1,guestLogin:!0},ui:{primary:"google",order:["google","phoneOtp","facebook","emailPassword"],showOtherOptions:!0},phone:{defaultCountryCode:"+41",allowCountryPicker:!0,placeholder:"Telefonnummer"},copy:{primaryButtonText:"Mit Google fortfahren"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!1},turkey:{regionId:"turkey",version:1,auth:{methods:{phoneOtp:!1,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","emailPassword","guestLogin"],showOtherOptions:!0},phone:{defaultCountryCode:"+90",allowCountryPicker:!0,placeholder:"Telefon numarası"},copy:{emailHiddenReason:"Google veya e-posta ile hızlıca giriş yap.",primaryButtonText:"Google ile devam et"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!1,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{premiumUpsell:!0,mealPlanner:!0},percentage:{google:100,emailPassword:100,newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!0,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!0},egypt:{regionId:"egypt",version:1,auth:{methods:{phoneOtp:!1,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","emailPassword","guestLogin"],showOtherOptions:!0},phone:{defaultCountryCode:"+20",allowCountryPicker:!0,placeholder:"رقم الموبايل"},copy:{emailHiddenReason:"استخدم جوجل أو الإيميل للدخول بسرعة.",primaryButtonText:"المتابعة بجوجل"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!1,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{premiumUpsell:!0,mealPlanner:!0},percentage:{google:100,emailPassword:100,newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!1,showPrayerTimes:!0,showFastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!0},russia:{regionId:"russia",version:1,auth:{methods:{phoneOtp:!1,apple:!1,google:!0,facebook:!1,emailPassword:!0,emailMagicLink:!1,emailVerificationCode:!0,guestLogin:!0},ui:{primary:"google",order:["google","emailVerificationCode","emailPassword","guestLogin"],showOtherOptions:!0},phone:{defaultCountryCode:"+7",allowCountryPicker:!0,placeholder:"Номер телефона"},copy:{emailHiddenReason:"Войдите через Google или код на email.",primaryButtonText:"Продолжить с Google"}},compliance:{requiresAttPrompt:!1,usesCoarseLocation:!0,usesPreciseLocation:!1,healthDisclaimerRequired:!0,minorsAllowed:!0,dataExportRequired:!0,accountDeletionRequired:!0},rollout:{hardDisable:{premiumUpsell:!0},percentage:{newOnboardingV2:100,aiPhotoLogging:100,streakCelebrations:100},killSwitch:{}},settingsVisibility:{showEmailPreferences:!0,showPrayerTimes:!1,show
1FastingTraditions:!0,showDataExport:!1,showDeleteAccount:!0,showLanguageSelector:!0,showMeasurementSystem:!1,showNotificationPreferences:!0},supportsSharedMeals:!0,supportsRicePortionEstimation:!1}};function n(a){return t[o(a)]||t[r]}let l={google:"google",emailPassword:"emailPassword"},s={smartInsightsDailySummary:!1};function d(a){return n(a).auth.ui.order.filter(e=>(function(a,e){let i=n(a);if(!i.auth.methods[e])return!1;let r=l[e];return!r||!i.rollout.hardDisable[r]})(a,e))}function c(a,e,i){let r=n(a);if(r.rollout.killSwitch[e]||r.rollout.hardDisable[e])return!1;let o=r.rollout.percentage[e];if(void 0!==o)return!!(o>=100)||!(o<=0)&&!!i&&function(a){let e=0;for(let i=0;i<a.length;i++)e=(e<<5)-e+a.charCodeAt(i),e&=e;return Math.abs(e)}(i+e)%100<o;return!(e in s)||(s[e]??!0)}a.s(["getEnabledAuthMethods",()=>d,"getRegionCapabilities",()=>n,"isFeatureEnabled",()=>c],783129);let m={india:{id:"india",languageDefault:"en",languagesSupported:["en","ta","hi","te","gu","bn","mr"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"orange-500",secondary:"purple-600",gradient:"from-orange-400 via-pink-500 to-purple-600",gradientFrom:"#fb923c",gradientVia:"#ec4899",gradientTo:"#9333ea",style:"warm",accentColor:"#f97316",bgPrimary:"from-slate-950 via-orange-950/30 to-slate-950",bgCard:"bg-white/5 border-white/10",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-orange-400",buttonGradient:"from-orange-500 via-pink-500 to-purple-600",progressColor:"#22c55e",glowColor:"rgba(249, 115, 22, 0.4)",appBgBase:"#050A0F",appHtmlBg:"#050A0F",appSurface:"rgba(10, 18, 24, 0.9)",appBorder:"rgba(248, 250, 252, 0.08)",appRing:"#FFB454",appMuted:"rgba(15, 23, 32, 0.9)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(229, 159, 60, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(16, 201, 151, 0.06) 0px, transparent 50%), radial-gradient(at 60% 80%, rgba(229, 184, 74, 0.05) 0px, transparent 50%)"},fasting:{enabled:!0,traditions:["hindu","muslim","jain","modern"],defaultTraditions:["hindu","modern"],showRamadan:!0,showHinduFasts:!0,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!0,authority:"calculated",authorityName:"Calculated (City-based)",apiSource:"calculated",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"calculated",defaultCalculationMethod:"karachi",defaultMadhab:"hanafi",hijriAdjustment:-1},mealPatterns:{breakfast:["idli","dosa","paratha","poha","upma","uttapam","puri","cereal","oatmeal","pancake","egg","omelet","sandwich","toast"],lunch:["thali","rice","biryani","dal","roti","chapati","curry","sabzi","sambar","rasam","chole","rajma","kadhi","pulao","khichdi"],dinner:["roti","chapati","paratha","dal","sabzi","curry","biryani","pulao","rice","soup","salad"],snack:["samosa","pakora","bhaji","vada","chai","tea","coffee","lassi","juice","biscuit","cookie","chips","fruit","nuts","chocolate","ice cream"]},cuisineOptions:[{value:"South Indian",label:"South Indian"},{value:"North Indian",label:"North Indian"},{value:"Mixed Indian",label:"Mixed Indian"},{value:"Global",label:"Global"}],pricing:{monthly:299,yearly:1999,trialDays:7,currency:{code:"INR",symbol:"₹",position:"before",decimals:0}},content:{brandName:"IndianCalorie",tagline:"Where culture, science and your body finally speak the same language.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇮🇳",mascot:"/logo.webp",foodExamples:["Dosa","Idli","Biryani","Roti","Dal","Paneer Tikka","Samosa","Gulab Jamun"],domain:"indiancalorie.com",metaDescription:"Track calories the Indian way. Photo-to-nutrition AI for desi food. Supports Ekadashi, Navratri fasting."},ai:{foodBias:["dosa","idli","biryani","roti","dal","sabzi","paneer","samosa","paratha","curry","masala","chai","lassi","gulab jamun","rasgulla"],toneStyle:"friendly",culturalContext:"User is from India. Recognize Indian dishes, spices, and cooking methods. Be aware of vegetarian preferences and fasting traditions like Ekadashi and Navratri.",greetingStyle:"Namaste"},comms:{email:{provider:"msg91_email",fromName:"IndianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"INDIA"},otp:{provider:"msg91",widgetEnabled:!0,serverEnabled:!0,envKeyPrefix:"INDIA"}}},srilanka:e,malaysia:{id:"malaysia",languageDefault:"ms",languagesSupported:["ms","en","zh","ta"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"emerald-500",secondary:"teal-600",gradient:"from-emerald-400 via-teal-500 to-cyan-600",gradientFrom:"#34d399",gradientVia:"#14b8a6",gradientTo:"#0891b2",style:"halal",accentColor:"#10b981",bgPrimary:"from-slate-950 via-emerald-950/40 to-slate-950",bgCard:"bg-emerald-500/5 border-emerald-500/20",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-emerald-400",buttonGradient:"from-emerald-500 via-teal-500 to-cyan-500",progressColor:"#10b981",glowColor:"rgba(16, 185, 129, 0.4)",appBgBase:"#050F0D",appHtmlBg:"#050F0D",appSurface:"rgba(8, 20, 18, 0.9)",appBorder:"rgba(16, 185, 129, 0.10)",appRing:"#10b981",appMuted:"rgba(8, 20, 18, 0.9)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(16, 185, 129, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(20, 184, 166, 0.05) 0px, transparent 50%), radial-gradient(at 50% 80%, rgba(8, 145, 178, 0.04) 0px, transparent 50%)"},fasting:{enabled:!0,traditions:["muslim","hindu","buddhist","modern"],defaultTraditions:["muslim","modern"],showRamadan:!0,showHinduFasts:!0,showBuddhistFasts:!0,showModernIF:!0},prayerTimes:{enabled:!0,authority:"jakim",authorityName:"JAKIM (e-Solat)",apiSource:"https://api.waktusolat.app",zones:!0,hijriCalendarSource:"jakim",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["nasi lemak","roti canai","tosai","kaya toast","half boiled egg","teh tarik","kopi","dim sum","porridge","wantan mee"],lunch:["nasi campur","nasi kandar","chicken rice","laksa","mee goreng","char kway teow","satay","rendang","curry mee","nasi kerabu"],dinner:["tom yum","steamboat","satay","nasi goreng","burger","maggi goreng","roti john","seafood","soup"],snack:["kuih","pisang goreng","curry puff","keropok","cendol","ais kacang","rojak","popiah","apam balik","teh tarik"]},cuisineOptions:[{value:"Malay",label:"Masakan Melayu"},{value:"Chinese Malaysian",label:"Chinese Malaysian"},{value:"Indian Malaysian",label:"Indian Malaysian"},{value:"Mixed Malaysian",label:"Mixed Malaysian"},{value:"Global",label:"Global"}],pricing:{monthly:19.9,yearly:149.9,trialDays:7,currency:{code:"MYR",symbol:"RM",position:"before",decimals:2}},content:{brandName:"MalaysianCalorie",tagline:"Gabungan budaya, sains dan keperluan badan anda — di dalam satu platform.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇲🇾",mascot:"/malaysiancalorie_logo.webp",foodExamples:["Nasi Lemak","Roti Canai","Teh Tarik","Char Kway Teow","Satay","Laksa","Rendang","Mee Goreng"],domain:"malaysiancalorie.com",metaDescription:"Track calories the Malaysian way. AI untuk makanan Malaysia. Sokongan puasa Ramadan, sunnah fasting."},ai:{foodBias:["nasi lemak","roti canai","teh tarik","char kway teow","satay","laksa","rendang","mee goreng","nasi goreng","kuih","cendol","ais kacang","murtabak","nasi kandar","bak kut teh","hokkien mee","curry laksa","asam pedas"],toneStyle:"friendly",culturalContext:'User is from Malaysia. Recognize Malaysian dishes from Malay, Chinese, and Indian cuisines. Be aware of halal requirements and Ramadan fasting. Use "lah" occasionally for friendly tone.',greetingStyle:"Selamat"},comms:{email:{provider:"resend",fromName:"MalaysianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"MALAYSIA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"MALAYSIA"}}},singapore:{id:"singapore",languageDefault:"en",languagesSupported:["en","zh","ms","ta"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"cyan-500",secondary:"teal-600",gradient:"from-teal-400 via-cyan-500 to-sky-600",gradientFrom:"#2dd4bf",gradientVia:"#06b6d4",gradientTo:"#0284c7",style:"modern",accentColor:"#06b6d4",bgPrimary:"from-slate-950 via-slate-900 to-slate-950",bgCard:"bg-cyan-500/5 border-cyan-500/20",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-cyan-400",buttonGradient:"from-teal-500 via-cyan-500 to-sky-500",progressColor:"#06b6d4",glowColor:"rgba(6, 182, 212, 0.4)",appBgBase:"#060D12",appHtmlBg:"#060D12",appSurface:"rgba(8, 18, 28, 0.9)",appBorder:"rgba(6, 182, 212, 0.10)",appRing:"#06b6d4",appMuted:"rgba(8, 18, 28, 0.9)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(6, 182, 212, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(45, 212, 191, 0.05) 0px, transparent 50%), radial-gradient(at 50% 80%, rgba(2, 132, 199, 0.04) 0px, transparent 50%)"},fasting:{enabled:!0,traditions:["muslim","hindu","buddhist","christian","modern"],defaultTraditions:["modern"],showRamadan:!0,showHinduFasts:!0,showBuddhistFasts:!0,showModernIF:!0},prayerTimes:{enabled:!1,authority:"muis",authorityName:"MUIS",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["kaya toast","soft boiled egg","kopi","teh","congee","dim sum","roti prata","thosai","nasi lemak","bee hoon"],lunch:["chicken rice","laksa","char kway teow","wanton mee","bak chor mee","nasi padang","cai png","fish soup","hokkien mee","yong tau foo"],dinner:["zi char","steamboat","satay","bak kut teh","claypot rice","fried rice","prawn noodles","curry","rendang"],snack:["curry puff","popiah","kueh","ice k
1acang","chendol","tau huay","bubble tea","you tiao","goreng pisang","carrot cake"]},cuisineOptions:[{value:"Chinese Hawker",label:"Chinese Hawker"},{value:"Malay",label:"Malay"},{value:"Indian",label:"Indian"},{value:"Peranakan",label:"Peranakan"},{value:"Mixed Hawker",label:"Mixed Hawker"},{value:"Global",label:"Global"}],pricing:{monthly:9.99,yearly:49.98,trialDays:7,currency:{code:"SGD",symbol:"S$",position:"before",decimals:2}},content:{brandName:"SingaporeCalorie",tagline:"Track Singapore hawker food in seconds.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇸🇬",mascot:"/logos/singapore_logo.webp",foodExamples:["Chicken Rice","Laksa","Char Kway Teow","Bak Chor Mee","Roti Prata","Kaya Toast","Hokkien Mee","Satay"],domain:"singaporecalorie.com",metaDescription:"Track hawker food calories instantly. Chicken rice, laksa, char kway teow — log calories & macros fast. Built for Singapore portions."},ai:{foodBias:["chicken rice","laksa","char kway teow","bak chor mee","hokkien mee","wanton mee","roti prata","nasi lemak","kaya toast","kopi","teh","satay","carrot cake","fish soup","prawn noodles","lor mee","mee rebus","bak kut teh","chendol","ice kacang","popiah"],toneStyle:"friendly",culturalContext:"User is from Singapore. Recognize Singapore hawker dishes from Chinese, Malay, Indian, and Peranakan cuisines. Be aware of portion variants (with egg, less rice, dry/soup). Use English primarily. Support Chinese food name aliases.",greetingStyle:"Hello"},comms:{email:{provider:"resend",fromName:"SingaporeCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"SINGAPORE"},otp:{provider:"firebase",widgetEnabled:!0,serverEnabled:!0,envKeyPrefix:"SINGAPORE"}}},thailand:i,usa:{id:"usa",languageDefault:"en",languagesSupported:["en"],dateFormat:"MM/DD/YYYY",measurementSystem:"imperial",theme:{primary:"blue-500",secondary:"slate-600",gradient:"from-blue-500 via-cyan-500 to-teal-500",gradientFrom:"#3b82f6",gradientVia:"#06b6d4",gradientTo:"#14b8a6",style:"minimal",accentColor:"#3b82f6",bgPrimary:"from-slate-950 via-slate-900 to-slate-950",bgCard:"bg-white/5 border-white/10",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-blue-400",buttonGradient:"from-blue-500 via-cyan-500 to-teal-500",progressColor:"#3b82f6",glowColor:"rgba(59, 130, 246, 0.4)",appBgBase:"#0A0F1A",appHtmlBg:"#0A0F1A",appSurface:"rgba(15, 23, 42, 0.9)",appBorder:"rgba(59, 130, 246, 0.08)",appRing:"#3b82f6",appMuted:"rgba(15, 23, 42, 0.85)"},fasting:{enabled:!0,traditions:["modern","christian","jewish"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},pricing:{monthly:9.99,yearly:79.99,trialDays:7,currency:{code:"USD",symbol:"$",position:"before",decimals:2}},content:{brandName:"FastingCalorie",tagline:"Fast Smarter. Not Harder.",taglineKey:"homepage.fastingTagline",flag:"🇺🇸",foodExamples:["Avocado Toast","Protein Shake","Chicken Breast","Greek Yogurt","Salmon","Quinoa Bowl","Smoothie Bowl","Eggs Benedict"],mascot:"/logos/fastingcalorie/icon-192.png",domain:"fastingcalorie.com",metaDescription:"Learn how fasting and calories interact. Meal plans, schedules, tools, and science-backed guides for smarter fasting."},ai:{foodBias:["chicken breast","salmon","avocado","eggs","greek yogurt","protein shake","oatmeal","quinoa","brown rice","broccoli","sweet potato","almonds","spinach","turkey","cottage cheese","protein bar","bone broth","electrolytes","black coffee"],toneStyle:"formal",culturalContext:"User is from the USA. Focus on intermittent fasting science, metabolic health, and clean eating. Be evidence-based and professional. Use imperial units (lbs, feet).",greetingStyle:"Hey"},cuisineOptions:[{value:"American",label:"American"},{value:"Mediterranean",label:"Mediterranean"},{value:"Asian",label:"Asian"},{value:"Mexican",label:"Mexican"},{value:"Global",label:"Global"}],comms:{email:{provider:"resend",fromName:"FastingCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"USA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"USA"}}},canada:{id:"canada",languageDefault:"en",languagesSupported:["en","fr"],dateFormat:"YYYY-MM-DD",measurementSystem:"metric",theme:{primary:"emerald-800",secondary:"red-700",gradient:"from-[#F7FAF7] via-[#FFFFFF] to-[#E7EFE8]",gradientFrom:"#F7FAF7",gradientVia:"#FFFFFF",gradientTo:"#E7EFE8",style:"minimal",accentColor:"#A51E2D",bgPrimary:"from-[#F7FAF7] via-[#FFFFFF] to-[#E7EFE8]",bgCard:"bg-white border-[#D8E2D8]",textPrimary:"text-[#10231B]",textSecondary:"text-[#10231B]/68",textAccent:"text-[#A51E2D]",buttonGradient:"from-[#0E4B38] via-[#16624A] to-[#A51E2D]",progressColor:"#0E4B38",glowColor:"rgba(14, 75, 56, 0.22)",appBgBase:"#07120E",appHtmlBg:"#07120E",appSurface:"rgba(255, 255, 255, 0.08)",appBorder:"rgba(216, 226, 216, 0.18)",appRing:"#0E4B38",appMuted:"rgba(216, 226, 216, 0.10)",appAmbientGlow:"radial-gradient(ellipse at 18% 14%, rgba(14,75,56,0.18) 0%, transparent 58%), radial-gradient(ellipse at 84% 20%, rgba(165,30,45,0.12) 0%, transparent 56%), radial-gradient(ellipse at 50% 92%, rgba(216,226,216,0.14) 0%, transparent 72%)",marketingSurface:"light",marketingBgBase:"#F7FAF7",marketingHtmlBg:"#F7FAF7",marketingCard:"#FFFFFF",marketingMuted:"#E7EFE8",marketingForeground:"#10231B",marketingMutedForeground:"rgba(16, 35, 27, 0.68)",marketingBorder:"#D8E2D8",fontDisplay:"var(--font-fraunces), Georgia, 'Times New Roman', serif",fontBody:"var(--font-inter), system-ui, -apple-system, 'Segoe UI', sans-serif"},fasting:{enabled:!0,traditions:["modern","christian","jewish","muslim","hindu"],defaultTraditions:["modern"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},mealPatterns:{breakfast:["Tim Hortons wrap","Greek yogurt","protein oats","Montreal bagel","smoothie"],lunch:["chicken bowl","shawarma plate","sushi roll","salad box","Costco meal prep"],dinner:["grilled salmon","Swiss Chalet chicken","butter chicken","pho","stir fry"],snack:["protein bar","cottage cheese","berries","coffee","Nanaimo bar"]},cuisineOptions:[{value:"restaurant-calories",label:"Restaurant Calories"},{value:"grocery-products",label:"Grocery Products"},{value:"high-protein",label:"High Protein"},{value:"meal-prep",label:"Meal Prep"}
1,{value:"multicultural-canada",label:"Multicultural Canada"},{value:"french-canadian",label:"French-Canadian"},{value:"healthy-canada",label:"Healthy Choices"}],pricing:{monthly:9.99,yearly:79.99,trialDays:7,currency:{code:"CAD",symbol:"$",position:"before",decimals:2}},content:{brandName:"CanadianCalorie",brandNameNative:"CanadianCalorie",tagline:"Nutrition intelligence for life in Canada.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇨🇦",mascot:"/logos/canada/canada-app-icon.png",foodExamples:["Tim Hortons wraps","A&W burgers","Costco meal prep","Greek yogurt","shawarma plates","protein bowls","poutine","butter chicken"],domain:"canadiancalorie.com",metaDescription:"CanadianCalorie is nutrition intelligence for life in Canada: restaurant calories, grocery products, high-protein choices, meal prep and multicultural food."},ai:{foodBias:["canada","canadian","tim hortons","tims","a&w canada","harveys","swiss chalet","mary browns","booster juice","costco canada","kirkland","loblaws","pc products","no frills","metro","sobeys","protein bowl","greek yogurt","meal prep","shawarma plate","butter chicken","sushi roll","pho","montreal bagel","poutine","nanaimo bar","tourtiere"],toneStyle:"friendly",culturalContext:"User is in Canada. Prioritize restaurant calories, grocery products, high-protein choices, meal prep, fitness culture and multicultural everyday food. Recognize Canadian chains such as Tim Hortons, A&W Canada, Harvey's, Swiss Chalet, Mary Brown's, Booster Juice, Costco/Kirkland, Loblaws/PC, Metro and Sobeys. Provinces and cities matter for SEO and local intent. English is primary; support French Canadian names where useful.",greetingStyle:"Hi"},comms:{email:{provider:"resend",fromName:"CanadianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"CANADA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"CANADA"}}},france:{id:"france",languageDefault:"fr",languagesSupported:["fr","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"blue-800",secondary:"blue-600",gradient:"from-blue-900 via-blue-700 to-blue-600",gradientFrom:"#1e3a5f",gradientVia:"#1d4ed8",gradientTo:"#2563eb",style:"modern",accentColor:"#1D4ED8",bgPrimary:"from-slate-950 via-slate-900 to-slate-950",bgCard:"bg-blue-900/10 border-blue-800/30",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-blue-400",buttonGradient:"from-blue-900 via-blue-700 to-blue-600",progressColor:"#1D4ED8",glowColor:"rgba(29, 78, 216, 0.35)",appBgBase:"#060A14",appHtmlBg:"#060A14",appSurface:"rgba(10, 16, 30, 0.9)",appBorder:"rgba(29, 78, 216, 0.10)",appRing:"#1D4ED8",appMuted:"rgba(12, 20, 36, 0.9)"},fasting:{enabled:!0,traditions:["muslim","christian","modern"],defaultTraditions:["modern"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["croissant","pain au chocolat","baguette","brioche","café","tartine","confiture","jus d'orange","yaourt","céréales"],lunch:["salade","quiche","croque-monsieur","sandwich","jambon-beurre","soupe","omelette","salade niçoise","pan bagnat"],dinner:["steak frites","poulet rôti","boeuf bourguignon","coq au vin","ratatouille","blanquette","pot-au-feu","gratin","magret de canard"],snack:["macaron","éclair","madeleine","crêpe","gaufre","tarte","fromage","fruit","biscuit"]},cuisineOptions:[{value:"Boulangerie",label:"Boulangerie"},{value:"Bistro",label:"Bistro"},{value:"Brasserie",label:"Brasserie"},{value:"Gastronomique",label:"Gastronomique"},{value:"Régional",label:"Régional"},{value:"Global",label:"Global"}],pricing:{monthly:6.99,yearly:49.9,trialDays:7,currency:{code:"EUR",symbol:"€",position:"after",decimals:2}},content:{brandName:"FrenchCalorie",brandNameNative:"CalorieFrançaise",tagline:"Suivez vos calories, respectez la gastronomie.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇫🇷",mascot:"/logos/france/icon-192.png",foodExamples:["Croissant","Baguette","Quiche Lorraine","Steak Frites","Ratatouille","Crêpe","Boeuf Bourguignon","Fromage"],domain:"frenchcalorie.com",metaDescription:"Comptez les calories de la cuisine française. Croissant, baguette, steak frites — suivez vos macros rapidement. Adapté aux portions françaises."},ai:{foodBias:["croissant","pain au chocolat","baguette","quiche lorraine","steak frites","boeuf bourguignon","coq au vin","ratatouille","crêpe","croque-monsieur","jambon-beurre","salade niçoise","fromage","camembert","brie","roquefort","vin rouge","café","espresso","éclair","macaron"],toneStyle:"friendly",culturalContext:"User is from France. Recognize French dishes including boulangerie items, bistro classics, and regional specialties. Be aware of portion variants (demi-baguette, fromage 30g/60g). Understand butter, sauce, and cheese adjustments. Use French primarily. Respect gastronomie culture.",greetingStyle:"Bonjour"},comms:{email:{provider:"sendgrid",fromName:"FrenchCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"FRANCE"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"FRANCE"}}},japan:{id:"japan",languageDefault:"ja",languagesSupported:["ja","en"],dateFormat:"YYYY/MM/DD",measurementSystem:"metric",theme:{primary:"orange-500",secondary:"pink-400",gradient:"from-orange-400 via-pink-300 to-rose-300",gradientFrom:"#f97316",gradientVia:"#f9a8d4",gradientTo:"#fda4af",style:"kawaii",accentColor:"#f97316",bgPrimary:"from-orange-50 via-rose-50 to-amber-50",bgCard:"bg-white/80 border-orange-200/30",textPrimary:"text-slate-800",textSecondary:"text-slate-500",textAccent:"text-orange-600",buttonGradient:"from-orange-400 via-orange-500 to-rose-400",progressColor:"#f97316",glowColor:"rgba(249, 115, 22, 0.25)",appBgBase:"#0E1623",appHtmlBg:"#0E1623",appSurface:"rgba(18, 26, 38, 0.9)",appBorder:"rgba(255, 200, 170, 0.10)",appRing:"#FF8A3D",appMuted:"rgba(14, 22, 34, 0.85)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(255, 111, 174, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(255, 138, 61, 0.05) 0px, transparent 50%), radial-gradient(at 50% 80%, rgba(253, 164, 175, 0.04) 0px, transparent 50%)",marketingSurface:"light",marketingBgBase:"#F6EFE2",marketingHtmlBg:"#F6EFE2",marketingCard:"#FFFFFF",marketingMuted:"#F7F3EC",marketingForeground:"#1F1F1F",marketingMutedForeground:"#4A4A4A",marketingBorder:"#E8E3D9",fontDisplay:"var(--font-noto-serif-jp), 'Hiragino Mincho ProN', 'Yu Mincho', serif",fontBody:"var(--font-noto-sans-jp), -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Yu Gothic', sans-serif"},fasting:{enabled:!0,traditions:["buddhist","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!0,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["ご飯","味噌汁","納豆","卵焼き","焼き魚","トースト","おにぎり","ヨーグルト","シリアル","パン"],lunch:["弁当","ラーメン","うどん","そば","カレーライス","定食","丼","寿司","サンドイッチ","パスタ","焼きそば"],dinner:["焼肉","鍋","刺身","天ぷら","すき焼き","しゃぶしゃぶ","とんかつ","焼き鳥","煮物","ハンバーグ","唐揚げ"],snack:["おにぎり","団子","大福","せんべい","たい焼き","メロンパン","ポッキー","抹茶ラテ","どら焼き"]},cuisineOptions:[{value:"和食",label:"和食 (Washoku)"},{value:"洋食",label:"洋食 (Yoshoku)"},{value:"中華",label:"中華 (Chinese)"},{value:"韓国料理",label:"韓国料理 (Korean)"},{value:"イタリアン",label:"イタリアン (Italian)"},{value:"グローバル",label:"グローバル (Global)"}
1],pricing:{monthly:980,yearly:6800,trialDays:7,currency:{code:"JPY",symbol:"Â¥",position:"before",decimals:0}},content:{brandName:"BentoCalorie",brandNameNative:"ベントーカロリー",tagline:"毎日の食事を、もっとやさしく管理",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇯🇵",mascot:"/logos/japan/Mascot.webp",foodExamples:["おにぎり","ラーメン","寿司","カレーライス","唐揚げ","天ぷら","焼肉","味噌汁"],domain:"bentocalorie.com",metaDescription:"毎日の食事をAIで簡単カロリー管理。写真を撮るだけで栄養を自動分析。和食・洋食・中華に対応。BentoCalorieで健康的な食生活を。"},ai:{foodBias:["おにぎり","ラーメン","寿司","カレーライス","唐揚げ","天ぷら","焼肉","味噌汁","弁当","定食","うどん","そば","とんかつ","焼き鳥","刺身","丼","鍋","たこ焼き","お好み焼き","抹茶","コンビニ弁当","おでん","牛丼","親子丼"],toneStyle:"kawaii",culturalContext:"User is from Japan. Recognize Japanese dishes including washoku (和食), yoshoku (洋食), and Chinese-Japanese (中華). Understand bento portions, konbini food, and izakaya items. Be aware of rice serving sizes (ご飯 150g/200g/250g). Use polite Japanese (です/ます). Emphasize balance (主食・主菜・副菜) over restriction. Never use aggressive diet language.",greetingStyle:"こんにちは"},comms:{email:{provider:"resend",fromName:"BentoCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"JAPAN"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"JAPAN"}}},jp2:{id:"jp2",languageDefault:"ja",languagesSupported:["ja","en"],dateFormat:"YYYY/MM/DD",measurementSystem:"metric",theme:{primary:"rose-500",secondary:"amber-400",gradient:"from-rose-400 via-pink-300 to-amber-300",gradientFrom:"#f43f5e",gradientVia:"#f9a8d4",gradientTo:"#fcd34d",style:"kawaii",accentColor:"#f43f5e",bgPrimary:"from-rose-50 via-amber-50 to-stone-50",bgCard:"bg-white/80 border-rose-200/30",textPrimary:"text-stone-800",textSecondary:"text-stone-500",textAccent:"text-rose-600",buttonGradient:"from-rose-400 via-rose-500 to-amber-400",progressColor:"#f43f5e",glowColor:"rgba(244, 63, 94, 0.25)",appBgBase:"#0E1623",appHtmlBg:"#0E1623",appSurface:"rgba(18, 26, 38, 0.9)",appBorder:"rgba(255, 200, 170, 0.10)",appRing:"#f43f5e",appMuted:"rgba(14, 22, 34, 0.85)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(244, 63, 94, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(252, 211, 77, 0.05) 0px, transparent 50%), radial-gradient(at 50% 80%, rgba(249, 168, 212, 0.04) 0px, transparent 50%)",marketingSurface:"light",marketingBgBase:"#FFF8F0",marketingHtmlBg:"#FFF8F0",marketingCard:"#FFFFFF",marketingMuted:"#FFF4E8",marketingForeground:"#1C1917",marketingMutedForeground:"#57534E",marketingBorder:"#FCE7E7",fontDisplay:"var(--font-noto-serif-jp), 'Hiragino Mincho ProN', 'Yu Mincho', serif",fontBody:"var(--font-noto-sans-jp), -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Yu Gothic', sans-serif"},fasting:{enabled:!1,traditions:["modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!1},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["おにぎり","トースト","ヨーグルト","納豆","味噌汁"],lunch:["弁当","ラーメン","うどん","カレーライス","定食","丼"],dinner:["焼肉","鍋","刺身","天ぷら","とんかつ","唐揚げ"],snack:["団子","大福","たい焼き","抹茶ラテ","どら焼き","パフェ"]},cuisineOptions:[{value:"和食",label:"和食 (Washoku)"},{value:"洋食",label:"洋食 (Yoshoku)"},{value:"中華",label:"中華 (Chinese)"},{value:"スイーツ",label:"スイーツ (Sweets)"},{value:"コンビニ",label:"コンビニ (Convenience)"},{value:"グローバル",label:"グローバル (Global)"}
1],pricing:{monthly:980,yearly:6800,trialDays:7,currency:{code:"JPY",symbol:"Â¥",position:"before",decimals:0}},content:{brandName:"JapanCalorie",brandNameNative:"ジャパンカロリー",tagline:"日本の食を、データで知る。Japan Food Intelligence",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇯🇵",mascot:"/logos/japan/Mascot.webp",foodExamples:["抹茶スイーツ","コンビニ弁当","ラーメン","おにぎり","唐揚げ","プロテインドリンク"],domain:"japancalorie.com",metaDescription:"日本の食のトレンド・コンビニ新商品・人気ランキング・栄養データをリアルタイムに。和食・洋食・中華・スイーツを横断検索できる食の情報プラットフォーム。"},ai:{foodBias:["抹茶スイーツ","コンビニ弁当","おにぎり","ラーメン","唐揚げ","サラダチキン","プロテインドリンク","パフェ","抹茶ラテ","焼き鳥","たまごサンド","カツカレー","豚骨ラーメン","いちごスイーツ"],toneStyle:"friendly",culturalContext:"JapanCalorie is a Japanese FOOD INTELLIGENCE site (trends, convenience-store products, rankings, news, nutrition data) — not a personal tracking app. Recognize washoku/yoshoku/chuka, konbini items (7-Eleven, FamilyMart, Lawson), seasonal launches, and food trends. Use polite, editorial Japanese. Focus on what is trending and notable, with accurate nutrition sourcing.",greetingStyle:"こんにちは"},comms:{email:{provider:"resend",fromName:"JapanCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"JAPAN"},otp:{provider:"disabled",widgetEnabled:!1,serverEnabled:!1,envKeyPrefix:"JAPAN"}}},korea:{id:"korea",languageDefault:"ko",languagesSupported:["ko","en"],dateFormat:"YYYY.MM.DD",measurementSystem:"metric",theme:{primary:"pink-500",secondary:"violet-500",gradient:"from-pink-500 via-purple-500 to-violet-500",gradientFrom:"#FF4FA3",gradientVia:"#C850C0",gradientTo:"#7A5CFF",style:"modern",accentColor:"#FF4FA3",bgPrimary:"from-slate-50 via-white to-slate-50",bgCard:"bg-white border-gray-100",textPrimary:"text-gray-900",textSecondary:"text-gray-500",textAccent:"text-pink-500",buttonGradient:"from-pink-500 to-orange-500",progressColor:"#FF4FA3",glowColor:"rgba(255, 79, 163, 0.25)",appBgBase:"#0F1420",appHtmlBg:"#0F1420",appSurface:"rgba(18, 24, 38, 0.9)",appBorder:"rgba(255, 79, 163, 0.10)",appRing:"#FF4FA3",appMuted:"rgba(14, 20, 32, 0.85)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(255, 79, 163, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(122, 92, 255, 0.05) 0px, transparent 50%), radial-gradient(at 50% 80%, rgba(0, 201, 167, 0.04) 0px, transparent 50%)",fontDisplay:"'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif",fontBody:"'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif"},fasting:{enabled:!0,traditions:["buddhist","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!0,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["죽","토스트","계란","김","ë°¥","된장국","시리얼","우유","요거트","ë¹µ"],lunch:["비빔밥","김밥","라면","찌개","êµ­ë°¥","덮밥","볶음밥","냉면","칼국수","돈까스","제육볶음"],dinner:["삼겹살","갈비","불고기","찜닭","보쌈","족발","치킨","삼계탕","갈비찜","해물탕","곱창"],snack:["떡볶이","김말이","튀김","호떡","붕어빵","떡","과자","아이스크림","커피","빙수"]},cuisineOptions:[{value:"한식",label:"한식 (Korean)"},{value:"양식",label:"양식 (Western)"},{value:"중식",label:"중식 (Chinese)"},{value:"일식",label:"일식 (Japanese)"},{value:"분식",label:"분식 (Snack Bar)"},{value:"글로벌",label:"글로벌 (Global)"}],pricing:{monthly:9900,yearly:69e3,trialDays:7,currency:{code:"KRW",symbol
1:"₩",position:"before",decimals:0}},content:{brandName:"KoreanCalorie",brandNameNative:"칼로리메이트",tagline:"매일 식사를, 더 쉽고 건강하게",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇰🇷",mascot:"/logos/korea/korean_logo_draft.png",foodExamples:["비빔밥","김치찌개","삼겹살","떡볶이","김밥","불고기","라면","잡채"],domain:"koreancalorie.com",metaDescription:"매일 식사를 AI로 간편하게 칼로리 관리. 사진만 찍으면 영양을 자동 분석. 한식·양식·중식 모두 지원. 칼로리메이트로 건강한 식생활을."},ai:{foodBias:["비빔밥","김치찌개","삼겹살","떡볶이","김밥","불고기","라면","잡채","된장찌개","순두부찌개","냉면","칼국수","돈까스","제육볶음","갈비","보쌈","족발","치킨","삼계탕","김치","편의점 도시락","êµ­ë°¥","덮밥","볶음밥"],toneStyle:"modern",culturalContext:"User is from Korea. Recognize Korean dishes including hansik (한식), bunsik (분식), and Korean-Chinese (중식). Understand banchan portions, convenience store (편의점) food, and Korean BBQ items. Be aware of rice serving sizes (ë°¥ 200g/250g/300g). Use polite Korean (요체). Emphasize balance over restriction. Never use aggressive diet language. Understand K-diet trends.",greetingStyle:"안녕하세요"},comms:{email:{provider:"sendgrid",fromName:"KoreanCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"KOREA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"KOREA"}}},germany:{id:"germany",languageDefault:"de",languagesSupported:["de","en"],dateFormat:"DD.MM.YYYY",measurementSystem:"metric",theme:{primary:"amber-700",secondary:"amber-600",gradient:"from-amber-900 via-amber-700 to-amber-600",gradientFrom:"#78350f",gradientVia:"#b45309",gradientTo:"#d97706",style:"modern",accentColor:"#d97706",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-amber-900/10 border-amber-800/30",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-amber-400",buttonGradient:"from-amber-800 via-amber-600 to-amber-500",progressColor:"#d97706",glowColor:"rgba(217, 119, 6, 0.35)",appBgBase:"#0c0a09",appSurface:"rgba(28, 25, 23, 0.9)",appBorder:"rgba(245, 245, 244, 0.08)",appRing:"#d97706",appMuted:"rgba(41, 37, 36, 0.6)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(217,119,6,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(180,83,9,0.04) 0%, transparent 70%)",appHtmlBg:"#0c0a09"},fasting:{enabled:!0,traditions:["christian","muslim","modern"],defaultTraditions:["modern"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},fastingHub:{copy:{metaTitle:"Fastenkalender | Intervallfasten & Fastenzeiten",metaDescription:"Fastenkalender für Deutschland — Intervallfasten 16:8, 18:6, 20:4, christliche Fastenzeit und Ramadan. Gesundheit und Tradition im Überblick.",heroTitle:"Fastenkalender",heroSubtitle:"Intervallfasten und religiöse Fastenzeiten",popularBadge:"Beliebt",sectionWhyTitle:"Warum dein Fasten tracken?",cardReminderTitle:"Keine Fastenzeit verpassen",cardReminderBody:"Erinnerungen für religiöse und gesundheitliche Fastenzeiten",cardHealthTitle:"Gesundheitsvorteile",cardHealthBody:"Verfolge Autophagie, Ketose und Stoffwechselwerte",cardTimesTitle:"Genaue Zeiten",cardTimesBody:"Sonnenaufgang, Sonnenuntergang und Gebetszeiten regional",quickLinksTitle:"Schnellzugriff",quickLinkFoodsLabel:"🥗 Fastenfreundliche Speisen",quickLinkAppLabel:"📱 App laden"},traditions:[{id:"modern",name:"Intervallfasten",nameEnglish:"Intermittent Fasting",description:"16:8, 18:6, 20:4, OMAD — Protokolle für Gewicht und Gesundheit",icon:"sparkles",href:"/fasting-hub",highlight:!0},{id:"christian",name:"Christliche Fastenzeit",nameEnglish:"Lent (Christian Fasting)",description:"Aschermittwoch bis Karsamstag — 40 Tage Fastenzeit",icon:"heart",href:"/fasting-hub"},{id:"islamic",name:"Ramadan",nameEnglish:"Islamic Fasting",description:"Ramadan-Kalender mit Iftar- und Suhur-Zeiten für Deutschland",icon:"moon",href:"/islamic-calendar"}]},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["Brötchen","Müsli","Vollkornbrot","Marmelade","Butter","Käse","Wurst","Ei","Kaffee","Joghurt"],lunch:["Schnitzel","Bratwurst","Kartoffelsalat","Currywurst","Döner","Gulasch","Eintopf","Leberkäse","Maultaschen"],dinner:["Sauerbraten","Schweinebraten","Rouladen","Spätzle","Knödel","Sauerkraut","Braten","Kassler","Grünkohl"],snack:["Brezel","Kuchen","Apfelstrudel","Schwarzwälder Kirschtorte","Lebkuchen","Obst","Nüsse","Bier"]},cuisineOptions:[{value:"Bayerisch",label:"Bayerisch"},{value:"Norddeutsch",label:"Norddeutsch"},{value:"Schwäbisch",label:"Schwäbisch"},{value:"Rheinisch",label:"Rheinisch"},{value:"Traditionell",label:"Traditionell"},{value:"International",label:"International"}],pricing:{monthly:6.99,yearly:49.9,trialDays:7,currency:{code:"EUR",symbol:"€",position:"after",decimals:2}},content:{brandName:"GermanCalorie",brandNameNative:"DeutscheKalorien",tagline:"Kalorien zählen, die zur deutschen Küche passen.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇩🇪",mascot:"/logos/german/german-app-icon.png",foodExamples:["Schnitzel","Bratwurst","Brezel","Currywurst","Sauerbraten","Döner Kebab","Kartoffelsalat","Schwarzwälder Kirschtorte"],domain:"germancalorie.com",metaDescription:"Kalorien der deutschen Küche zählen. Schnitzel, Bratwurst, Brezel, Döner — Makros schnell erfassen. Angepasst an deutsche Portionsgrößen."}
1,ai:{foodBias:["schnitzel","bratwurst","currywurst","brezel","brötchen","sauerbraten","kartoffelsalat","sauerkraut","spätzle","knödel","döner kebab","leberkäse","maultaschen","gulasch","eintopf","schwarzwälder kirschtorte","apfelstrudel","käsekuchen","weißbier","pils","radler","kaffee","vollkornbrot"],toneStyle:"friendly",culturalContext:"Nutzer kommt aus Deutschland. Erkenne deutsche Gerichte wie Bäckerei-Produkte, Metzgerei-Waren, regionale Spezialitäten (Bayerisch, Schwäbisch, Norddeutsch). Beachte Portionsgrößen (halbes Brötchen, Scheibe Brot). Verstehe Beilagen wie Kartoffeln, Knödel, Spätzle. Verwende hauptsächlich Deutsch. Respektiere die deutsche Esskultur.",greetingStyle:"Guten Tag"},comms:{email:{provider:"sendgrid",fromName:"GermanCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"GERMANY"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"GERMANY"}}},italy:{id:"italy",languageDefault:"it",languagesSupported:["it","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"green-800",secondary:"orange-700",gradient:"from-green-900 via-green-700 to-green-600",gradientFrom:"#1a3a1a",gradientVia:"#5E6F3B",gradientTo:"#7a8c4e",style:"warm",accentColor:"#5E6F3B",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-green-900/10 border-green-800/30",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-green-400",buttonGradient:"from-green-800 via-green-700 to-green-600",progressColor:"#5E6F3B",glowColor:"rgba(94, 111, 59, 0.35)",appBgBase:"#0c0a06",appHtmlBg:"#0c0a06",appSurface:"rgba(20, 18, 12, 0.9)",appBorder:"rgba(94, 111, 59, 0.10)",appRing:"#5E6F3B",appMuted:"rgba(24, 22, 16, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(94,111,59,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(196,106,58,0.04) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["christian","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["Cornetto","Cappuccino","Espresso","Fette biscottate","Marmellata","Yogurt","Brioche","Biscotti","Caffè latte","Succo d'arancia"],lunch:["Pasta al pomodoro","Risotto","Pizza Margherita","Lasagna","Insalata caprese","Parmigiana","Minestrone","Panino","Bruschetta","Arancini"],dinner:["Ossobuco","Saltimbocca","Bistecca alla fiorentina","Pesce spada","Vitello tonnato","Polenta","Gnocchi","Ravioli","Cotoletta alla milanese"],snack:["Focaccia","Gelato","Tiramisù","Cannoli","Panna cotta","Grissini","Olive","Bruschetta","Affogato"]},cuisineOptions:[{value:"Toscana",label:"Toscana"},{value:"Napoletana",label:"Napoletana"},{value:"Siciliana",label:"Siciliana"},{value:"Romana",label:"Romana"},{value:"Milanese",label:"Milanese"},{value:"Mediterranea",label:"Mediterranea"}],pricing:{monthly:6.99,yearly:49.9,trialDays:7,currency:{code:"EUR",symbol:"€",position:"after",decimals:2}},content:{brandName:"ItalianCalorie",brandNameNative:"CalorieItaliane",tagline:"La tua alimentazione, con gusto.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇮🇹",mascot:"/logos/italy/italy-app-icon.png",foodExamples:["Pizza Margherita","Spaghetti al Pomodoro","Lasagna","Risotto","Tiramisù","Focaccia","Caprese","Gelato"],domain:"italiancalorie.com",metaDescription:"Conta le calorie della cucina italiana. Pizza, pasta, risotto, tiramisù — monitora i macronutrienti con facilità. Adattato alle porzioni italiane."},ai:{foodBias:["pizza margherita","spaghetti al pomodoro","lasagna","risotto alla milanese","parmigiana di melanzane","ossobuco","tiramisù","gelato","focaccia","bruschetta","caprese","carbonara","amatriciana","gnocchi","ravioli","tortellini","minestrone","ribollita","cannoli","panna cotta","affogato","cornetto","espresso","prosciutto","mozzarella di bufala","parmigiano reggiano"],toneStyle:"friendly",culturalContext:"L'utente viene dall'Italia. Riconosci i piatti italiani regionali (toscani, napoletani, siciliani, romani, milanesi). Comprendi le porzioni italiane (primo, secondo, contorno). Rispetta la cultura alimentare italiana: ingredienti freschi, stagionali, di qualità. Usa principalmente l'italiano. La cucina italiana è gioia e salute insieme.",greetingStyle:"Buongiorno"},comms:{email:{provider:"sendgrid",fromName:"ItalianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"ITALY"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"ITALY"}}},vietnam:{id:"vietnam",languageDefault:"vi",languagesSupported:["vi","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"green-600",secondary:"emerald-400",gradient:"from-emerald-800 via-green-600 to-teal-700",gradientFrom:"#0F2E2B",gradientVia:"#2FA36B",gradientTo:"#1A6B52",style:"modern",accentColor:"#2FA36B",bgPrimary:"from-[#0A1F1C] via-[#0F2E2B] to-[#0A1F1C]",bgCard:"bg-emerald-950/30 border-emerald-400/15",textPrimary:"text-white",textSecondary:"text-white/70",textAccent:"text-emerald-400",buttonGradient:"from-green-600 via-emerald-500 to-teal-500",progressColor:"#2FA36B",glowColor:"rgba(47, 163, 107, 0.35)",appBgBase:"#0A1F1C",appHtmlBg:"#0A1F1C",appSurface:"rgba(15, 46, 43, 0.92)",appBorder:"rgba(47, 163, 107, 0.12)",appRing:"#2FA36B",appMuted:"rgba(10, 31, 28, 0.92)",appAmbientGlow:"radial-gradient(at 18% 20%, rgba(47, 163, 107, 0.10) 0px, transparent 50%), radial-gradient(at 82% 18%, rgba(126, 217, 87, 0.08) 0px, transparent 50%), radial-gradient(at 52% 88%, rgba(214, 69, 61, 0.06) 0px, transparent 45%)",marketingSurface:"light",marketingBgBase:"#F7F4ED",marketingHtmlBg:"#F7F4ED",marketingCard:"rgba(234, 247, 241, 0.94)",marketingMuted:"#EAF7F1",marketingForeground:"#0F2E2B",marketingMutedForeground:"rgba(15, 46, 43, 0.65)",marketingBorder:"rgba(47, 163, 107, 0.18)"},fasting:{enabled:!0,traditions:["buddhist","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!0,showModernIF:!0},fastingHub:{copy:{metaTitle:"Lịch Nhịn Ăn | Nhịn Ăn Gián Đoạn & Chay Phật Giáo",metaDescription:"Lịch nhịn ăn cho Việt Nam — nhịn ăn gián đoạn 16:8, 18:6, 20:4, và ngày ăn chay theo lịch Phật giáo. Hướng dẫn sức khỏe và tâm linh.",heroTitle:"Lịch Nhịn Ăn",heroSubtitle:"Nhịn ăn gián đoạn và ngày chay cho sức khỏe",popularBadge:"Phổ biến",sectionWhyTitle:"Vì sao nên theo dõi việc nhịn ăn?",cardReminderTitle:"Không bỏ lỡ buổi chay",cardReminderBody:"Nhắc nhở cho ngày chay và các chu kỳ nhịn ăn",cardHealthTitle:"Lợi ích sức khỏe",cardHealthBody:"Theo dõi autophagy, ketosis và chỉ số chuyển hóa",cardTimesTitle:"Thời gian chính xác",cardTimesBody:"Giờ mặt trời mọc, lặn theo từng vùng tại Việt Nam",quickLinksTitle:"Liên kết nhanh",quickLinkFoodsLabel:"🥗 Món chay & nhẹ",quickLinkAppLabel:"📱 Tải ứng dụng"},traditions:[{id:"modern",name:"Nhịn Ăn Gián Đoạn",nameEnglish:"Intermittent Fasting",description:"Các chế độ 16:8, 18:6, 20:4, OMAD cho sức khỏe",icon:"sparkles",href:"/fasting-hub",highlight:!0},{id:"buddhist",name:"Ngày Ăn Chay Phật Giáo",nameEnglish:"Buddhist Vegetarian Days",description:"Mùng Một và Rằm hàng tháng theo lịch âm",icon:"sun",href:"/foods/vegetarian"}]},mealPatterns:{breakfast:["Phở","Bánh mì","Xôi","Bún riêu","Cháo","Bánh cuốn","Cà phê sữa đá"],lunch:["CÆ¡m tấm","Bún bò Huế","Bún chả","CÆ¡m bình dân","Mì Quảng","Há»§ tiếu","Bánh xèo"],dinner:["Gỏi cuốn","Lẩu","Bò lúc lắc","Cá kho tộ","Thịt kho trứng","Canh chua","Bún thịt nướng"],snack:["Bánh tráng trộn","Chè","Sinh tố","Trà đá","Kem","Bánh flan","Trái cây"]},cuisineOptions:[{value:"Northern Vietnamese",label:"Ẩm thá»±c miền Bắc"},{value:"Central Vietnamese",label:"Ẩm thá»±c miền Trung"},{value:"Southern Vietnamese",label:"Ẩm thá»±c miền Nam"},{value:"Street Food",label:"Ẩm thá»±c đường phố"},{value:"Home Cooking",label:"CÆ¡m nhà"},{value:"Global",label:"Ẩm thá»±c quốc tế"}],pricing:{monthly:79e3,yearly:59e4,trialDays:7,currency:{code:"VND",symbol:"₫",position:"after",decimals:0}},content:{brandName:"VietCalorie",brandNameNative:"VietCalorie",tagline:"Ăn ngon. Sống khỏe. AI nhận diện món Việt và tính calo tá»± động.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇻🇳",mascot:"/logos/vietnam/Viet Calorie Logo.webp",foodExamples:["Phở","Bún bò Huế","CÆ¡m tấm","Bánh mì","Gỏi cuốn","Bún chả","Há»§ tiếu","Bánh xèo"],domain:"vietcalorie.com",metaDescription:"Theo dõi calo cá»§a phở, bún bò, cÆ¡m tấm, bánh mì và hÆ¡n 500 món Việt với AI. Hiểu đúng khẩu phần Việt — rau thÆ¡m, nước chấm, topping."},ai:{foodBias:["pho","bun bo hue","com tam","banh mi","goi cuon","bun cha","hu tieu","ban
1h xeo","mi quang","bun rieu","ca kho to","thit kho trung","che","ca phe sua da"],toneStyle:"friendly",culturalContext:"User is from Vietnam. Recognize Vietnamese cuisine across phở, bún, cÆ¡m, bánh, and street food varieties. Be aware of fresh herbs (rau thÆ¡m), fish sauce (nước mắm), dipping sauces (nước chấm), rice paper, and the Northern/Central/Southern regional variations. Default to Vietnamese-first phrasing with practical, local food understanding. Recognize portion sizes including extra toppings, side herbs, and condiments.",greetingStyle:"Xin chào"},comms:{email:{provider:"sendgrid",fromName:"VietCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"VIETNAM"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"VIETNAM"}}},africa:{id:"africa",languageDefault:"en",languagesSupported:["en","sw"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"orange-500",secondary:"red-600",gradient:"from-orange-500 via-red-500 to-amber-400",gradientFrom:"#ff7a00",gradientVia:"#c1121f",gradientTo:"#f59e0b",style:"modern",accentColor:"#ff7a00",bgPrimary:"from-[#090505] via-[#180b08] to-[#090505]",bgCard:"bg-orange-500/6 border-orange-400/20",textPrimary:"text-white",textSecondary:"text-white/65",textAccent:"text-orange-400",buttonGradient:"from-orange-500 via-red-500 to-amber-500",progressColor:"#2ec4b6",glowColor:"rgba(255, 122, 0, 0.35)",appBgBase:"#080605",appHtmlBg:"#080605",appSurface:"rgba(20, 10, 8, 0.9)",appBorder:"rgba(255, 122, 0, 0.12)",appRing:"#ff7a00",appMuted:"rgba(28, 13, 10, 0.72)",appAmbientGlow:"radial-gradient(at 18% 18%, rgba(255,122,0,0.09) 0px, transparent 52%), radial-gradient(at 84% 16%, rgba(193,18,31,0.08) 0px, transparent 44%), radial-gradient(at 56% 80%, rgba(46,196,182,0.06) 0px, transparent 46%)",marketingBgBase:"#090505",marketingForeground:"#fff6ed",marketingMutedForeground:"rgba(255, 241, 230, 0.72)",marketingCard:"rgba(17, 10, 8, 0.82)",marketingBorder:"rgba(255, 122, 0, 0.14)"},fasting:{enabled:!0,traditions:["muslim","christian","modern"],defaultTraditions:["modern"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["akara","moin moin","mandazi","tea","porridge","fat cakes","chapati","shakshuka"],lunch:["jollof rice","pilau","egusi soup","ugali","nyama choma","tagine","couscous","pap"],dinner:["rice and stew","bunny chow","boerewors","harira","sukuma wiki","fried plantain","fufu","waakye"],snack:["suya","plantain chips","meat pie","chin chin","samosa","koeksister","bofrot","dates"]},cuisineOptions:[{value:"West African",label:"West African"},{value:"East African",label:"East African"},{value:"North African",label:"North African"},{value:"Southern African",label:"Southern African"},{value:"Pan-African",label:"Pan-African"},{value:"Global",label:"Global"}],pricing:{monthly:6.99,yearly:49.9,trialDays:7,currency:{code:"USD",symbol:"$",position:"before",decimals:2}},content:{brandName:"AfroCalorie",tagline:"Calories for real African meals.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🌍",mascot:"/logos/africa/africa-logo.webp",foodExamples:["Jollof Rice","Suya","Egusi Soup","Fried Plantain","Ugali","Nyama Choma","Tagine","Bunny Chow"],domain:"afrocalorie.com",metaDescription:"Track jollof, suya, egusi, ugali, tagine and more with AfroCalorie. Built for real African meals, portions, and food culture."},ai:{foodBias:["jollof rice","suya","egusi soup","fried plantain","waakye","fufu","ugali","nyama choma","sukuma wiki","pilau","pap","chakalaka","bunny chow","boerewors","tagine","couscous","shakshuka","harira"],toneStyle:"friendly",culturalContext:"User is browsing AfroCalorie, a pan-African food tracker. Recognize West, East, Southern, and North African dishes. Prioritize real meal names, portion awareness, and culturally grounded food descriptions over generic macros-first language.",greetingStyle:"Jambo"},comms:{email:{provider:"sendgrid",fromName:"AfroCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"AFRICA"},otp:{provider:"disabled",widgetEnabled:!1,serverEnabled:!1,envKeyPrefix:"AFRICA"}}},spain:{id:"spain",languageDefault:"es",languagesSupported:["es","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"amber-600",
1secondary:"red-900",gradient:"from-stone-950 via-stone-900 to-stone-950",gradientFrom:"#0F0F10",gradientVia:"#171719",gradientTo:"#1E1E20",style:"modern",accentColor:"#E6A500",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-stone-900/60 border-white/[0.08]",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-amber-400",buttonGradient:"from-amber-500 via-amber-600 to-[#C48A00]",progressColor:"#E6A500",glowColor:"rgba(230, 165, 0, 0.32)",appBgBase:"#0F0F10",appHtmlBg:"#0F0F10",appSurface:"rgba(30, 30, 32, 0.92)",appBorder:"rgba(255, 255, 255, 0.08)",appRing:"#E6A500",appMuted:"rgba(23, 23, 25, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(230,165,0,0.05) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(139,30,45,0.04) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["christian","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["Tostada","Café con leche","Churros","Magdalenas","Zumo de naranja","Pan con tomate","Tortilla","Bollería"],lunch:["Paella","Tortilla Española","Cocido","Fabada","Gazpacho","Lentejas","Arroz","Bocadillo","Ensaladilla rusa"],dinner:["Pescado a la plancha","Merluza","Pulpo a la gallega","Calamares","Gambas al ajillo","Pisto","Verduras a la plancha","Croquetas"],snack:["Tapas","Jamón ibérico","Patatas bravas","Aceitunas","Queso manchego","Pinchos","Empanada","Churros","Flan"]},cuisineOptions:[{value:"Española",label:"Española"},{value:"Mediterránea",label:"Mediterránea"},{value:"Vasca",label:"Vasca"},{value:"Catalana",label:"Catalana"},{value:"Andaluza",label:"Andaluza"},{value:"Valenciana",label:"Valenciana"},{value:"Gallega",label:"Gallega"}],pricing:{monthly:6.99,yearly:49.9,trialDays:7,currency:{code:"EUR",symbol:"€",position:"after",decimals:2}},content:{brandName:"SpanishCalorie",brandNameNative:"SpanishCalorie",tagline:"Calorías para comidas reales de España.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇪🇸",mascot:"/logos/spain/spain-app-icon.webp",foodExamples:["Paella Valenciana","Tortilla Española","Jamón Ibérico","Croquetas","Patatas Bravas","Gazpacho","Pulpo a la Gallega","Churros"],domain:"spanishcalorie.com",metaDescription:"Calorías para la comida real de España. Tapas, paella, tortilla y platos del día — registra macros con porciones reales adaptadas a la dieta mediterránea."},ai:{foodBias:["paella valenciana","tortilla española","jamón ibérico","croquetas","patatas bravas","gazpacho","salmorejo","pulpo a la gallega","fabada asturiana","cocido madrileño","pisto","pan con tomate","bocadillo","pinchos","tapas","queso manchego","aceitunas","churros con chocolate","flan","crema catalana","turrón","rioja","sangría","café con leche","horchata","cava"],toneStyle:"friendly",culturalContext:"El usuario está en España. Reconoce platos españoles regionales (vasca, catalana, andaluza, valenciana, gallega). Comprende las porciones españolas (tapa, ración, media ración, pincho). Respeta la dieta mediterránea: aceite de oliva, vegetales frescos, comidas compartidas. Usa principalmente castellano (no español latinoamericano). La comida en España es un acto social y cultural.",greetingStyle:"Hola"},comms:{email:{provider:"sendgrid",fromName:"SpanishCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"SPAIN"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"SPAIN"}}},indonesia:{id:"indonesia",languageDefault:"id",languagesSupported:["id","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"orange-500",secondary:"red-600",gradient:"from-orange-500 via-red-500 to-amber-400",gradientFrom:"#0F1115",gradientVia:"#15181E",gradientTo:"#1A1D22",style:"warm",accentColor:"#F77F00",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-stone-900/60 border-white/[0.08]",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-orange-400",buttonGradient:"from-[#D62828] via-[#E84B1A] to-[#F77F00]",progressColor:"#F77F00",glowColor:"rgba(247, 127, 0, 0.32)",appBgBase:"#0F1115",appHtmlBg:"#0F1115",appSurface:"rgba(26, 29, 34, 0.92)",appBorder:"rgba(255, 255, 255, 0.08)",appRing:"#F77F00",appMuted:"rgba(21, 24, 30, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(247,127,0,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(214,40,40,0.05) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["muslim","modern"],defaultTraditions:["muslim"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!0,authority:"aladhan",authorityName:"Aladhan (Indonesia)",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["Bubur ayam","Nasi uduk","Lontong sayur","Roti bakar","Kopi tubruk","Pisang goreng","Nasi kuning"],lunch:["Nasi goreng","Mie ayam","Gado-gado","Rendang","Soto ayam","Nasi padang","Bakso","Mie goreng"],dinner:["Sate ayam","Ayam bakar","Ikan bakar","Pecel lele","Rendang","Gulai","Soto betawi"],snack:["Pisang goreng","Martabak","Bakso","Tahu isi","Kerupuk","Es campur","Cireng"]},cuisineOptions:[{value:"Indonesia",label:"Indonesia"},{value:"Padang",label:"Padang"},{value:"Jawa",label:"Jawa"},{value:"Sunda",label:"Sunda"},{value:"Bali",label:"Bali"},{value:"Sumatera",label:"Sumatera"},{value:"Manado",label:"Manado"},{value:"Makassar",label:"Makassar"}],pricing:{monthly:39e3,yearly:199e3,trialDays:7,currency:{code:"IDR",symbol:"Rp",position:"before",decimals:0}},content:{brandName:"IndonesianCalorie",brandNameNative:"IndonesianCalorie",tagline:"Kalori untuk makanan asli Indonesia.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇮🇩",mascot:"/logos/indonesia/indonesia-app-icon.webp",foodExamples:["Nasi Goreng","Mie Ayam","Sate Ayam","Gado-Gado","Rendang","Soto Ayam","Bakso","Martabak"],domain:"indonesiancalorie.com",metaDescription:"Lacak kalori nasi goreng, mie ayam, sate, gado-gado, rendang, dan semua masakan Indonesia favoritmu — dirancang untuk porsi nyata, sambal, dan dapur Indonesia sehari-h
1ari."},ai:{foodBias:["nasi goreng","nasi uduk","nasi kuning","nasi padang","mie ayam","mie goreng","bakso","soto ayam","soto betawi","sate ayam","sate kambing","sate padang","gado-gado","pecel","karedok","rendang","gulai","rawon","opor ayam","ayam bakar","ayam goreng","pecel lele","ikan bakar","bubur ayam","lontong sayur","martabak manis","martabak telur","pisang goreng","tahu isi","kerupuk","sambal terasi","sambal matah","es campur","es teler","kopi tubruk","es jeruk"],toneStyle:"friendly",culturalContext:"Pengguna berada di Indonesia. Kenali masakan Indonesia dari berbagai daerah (Padang, Jawa, Sunda, Bali, Sumatera, Manado, Makassar). Pahami porsi khas warung dan rumah (porsi nasi, lauk, sambal, kerupuk). Hormati budaya makan: nasi sebagai makanan pokok, sambal hampir di setiap hidangan, santan dan minyak kelapa umum dipakai, makan bersama dengan keluarga adalah hal penting. Gunakan Bahasa Indonesia yang santai dan ramah — bukan formal kaku. Makanan jajanan (bakso, sate, martabak, pisang goreng) sama pentingnya dengan makanan rumah.",greetingStyle:"Halo"},comms:{email:{provider:"sendgrid",fromName:"IndonesianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"INDONESIA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"INDONESIA"}}},philippines:{id:"philippines",languageDefault:"tl",languagesSupported:["tl","en"],dateFormat:"MM/DD/YYYY",measurementSystem:"metric",theme:{primary:"orange-500",secondary:"red-600",gradient:"from-stone-950 via-stone-900 to-stone-950",gradientFrom:"#0F1115",gradientVia:"#15181E",gradientTo:"#1A1D22",style:"warm",accentColor:"#F97316",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-stone-900/60 border-white/[0.08]",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-orange-400",buttonGradient:"from-[#D62828] via-[#E84B1A] to-[#F97316]",progressColor:"#F97316",glowColor:"rgba(249, 115, 22, 0.32)",appBgBase:"#0F1115",appHtmlBg:"#0F1115",appSurface:"rgba(26, 29, 34, 0.92)",appBorder:"rgba(255, 255, 255, 0.08)",appRing:"#F97316",appMuted:"rgba(21, 24, 30, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(249,115,22,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(214,40,40,0.05) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["christian","muslim","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},mealPatterns:{breakfast:["Tapsilog","Longsilog","Tocilog","Champorado","Pandesal","Arroz caldo","Bangsilog","Cornsilog"],lunch:["Chicken Adobo","Sinigang","Kare-Kare","Lechon Kawali","Tinola","Pinakbet","Bicol Express","Laing"],dinner:["Lechon","Caldereta","Mechado","Sisig","Bulalo","Crispy Pata","Pork Adobo","Sinigang na Baboy"],snack:["Lumpia","Halo-Halo","Turon","Bibingka","Puto","Kwek-Kwek","Fish ball","Banana cue"]},cuisineOptions:[{value:"Filipino",label:"Filipino"},{value:"Tagalog",label:"Tagalog"},{value:"Visayan",label:"Visayan"},{value:"Ilocano",label:"Ilocano"},{value:"Bicolano",label:"Bicolano"},{value:"Kapampangan",label:"Kapampangan"}],pricing:{monthly:249,yearly:1990,trialDays:7,currency:{code:"PHP",symbol:"₱",position:"before",decimals:0}},content:{brandName:"PhilippinesCalorie",brandNameNative:"PhilippinesCalorie",tagline:"Calories for real Filipino meals",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇵🇭",mascot:"/logos/philippines/philippines-app-icon.webp",foodExamples:["Chicken Adobo","Sinigang","Kare-Kare","Halo-Halo","Lechon","Lumpia"],domain:"philippinescalorie.com",metaDescription:"Track calories for adobo, sinigang, lechon, kare-kare, lumpia, halo-halo, and all your favorite Filipino meals — built for real portions, rice-heavy plates, and everyday Filipino cooking."},ai:{foodBias:["chicken adobo","pork adobo","sinigang na baboy","sinigang na hipon","kare-kare","lechon","lechon kawali","crispy pata","lumpia shanghai","lumpia sariwa","lumpiang ubod","sisig","bicol express","laing","pinakbet","tinola","nilaga","bulalo","caldereta","mechado","menudo","tapsilog","longsilog","tocilog","bangsilog","arroz caldo","champorado","pandesal","halo-halo","leche flan","bibingka","puto","turon","banana cue","kwek-kwek","fish ball","isaw","betamax","pancit canton","pancit bihon","pancit palabok","sinangag","ginataang kalabasa","dinuguan"],toneStyle:"friendly",culturalContext:"User is in the Philippines. Recognize Filipino cuisine across regions (Tagalog, Visayan, Ilocano, Bicolano, Kapampangan). Understand typical Filipino portions — rice is the centerpiece of every meal, often 1-2 cups per serving. Family-style dining is the norm (shared ulam/viand with individual rice). Sawsawan (dipping sauces) like patis, toyo, suka, and calamansi are standard. Meryenda (afternoon snack) is a cultural institution. Street food (fishball, kwek-kwek, isaw, banana cue) is as important as home cooking. Silog meals (tapsilog, longsilog, tocilog) dominate breakfast. Keep tone warm, friendly, and approachable — Filipinos appreciate casual English with occasional Filipino food terms.",greetingStyle:"Hello"},comms:{email:{provider:"sendgrid",fromName:"PhilippinesCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"PHILIPPINES"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"PHILIPPINES"}}},mexico:{id:"mexico",languageDefault:"es",languagesSupported:["es","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"orange-500",secondary:"red-700",gradient:"from-red-600 via-orange-500 to-amber-400",gradientFrom:"#0F1115",gradientVia:"#15181E",gradientTo:"#1A1D22",style:"warm",accentColor:"#F97316",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-stone-900/60 border-white/[0.08]",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-orange-400",buttonGradient:"from-[#C1121F] via-[#E84B1A] to-[#F97316]",progressColor:"#F97316",glowColor:"rgba(193, 18, 31, 0.32)",appBgBase:"#0F1115",appHtmlBg:"#0F1115",appSurface:"rgba(26, 29, 34, 0.92)",appBorder:"rgba(255, 255, 255, 0.08)",appRing:"#F97316",appMuted:"rgba(21, 24, 30, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(249,115,22,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(193,18,31,0.05) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["christian","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},mealPatterns:{breakfast:["Chilaquiles","Huevos rancheros","Molletes","Tamales","Atole","Enfrijoladas"],lunch:["Tacos al pastor","Enchiladas","Pozole","S
1opa de tortilla","Mole poblano"],dinner:["Quesadillas","Tostadas","Flautas","Chiles rellenos","Carnitas"],snack:["Elotes","Churros","Esquites","Gorditas","Guacamole"]},cuisineOptions:[{value:"Mexicana",label:"Mexicana"},{value:"Oaxaqueña",label:"Oaxaqueña"},{value:"Yucateca",label:"Yucateca"},{value:"Norteña",label:"Norteña"},{value:"Tex-Mex",label:"Tex-Mex"},{value:"Puebla",label:"Puebla"},{value:"Veracruzana",label:"Veracruzana"}],pricing:{monthly:14900,yearly:99900,trialDays:7,currency:{code:"MXN",symbol:"$",position:"before",decimals:2}},content:{brandName:"MexicanCalorie",brandNameNative:"MexicanCalorie",tagline:"Calorías para comida mexicana real",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇲🇽",mascot:"/logos/mexico/mexico-app-icon.png",foodExamples:["Tacos al Pastor","Mole Poblano","Chilaquiles","Pozole","Cochinita Pibil","Elotes","Tamales","Chiles en Nogada"],domain:"mexicancalorie.com",metaDescription:"Track calories for tacos al pastor, mole poblano, chilaquiles, pozole, cochinita pibil, elotes, tamales, chiles en nogada, and all your favorite Mexican meals — built for real portions, tortilla-based plates, and everyday Mexican cooking."},ai:{foodBias:["tacos al pastor","tacos de carnitas","tacos de birria","tacos de suadero","mole poblano","mole negro","mole rojo","chilaquiles verdes","chilaquiles rojos","pozole rojo","pozole verde","pozole blanco","cochinita pibil","carnitas","barbacoa","enchiladas verdes","enchiladas rojas","enchiladas suizas","tamales de rajas","tamales de mole","tamales de elote","chiles en nogada","chiles rellenos","huevos rancheros","molletes","enfrijoladas","quesadillas","tostadas","flautas","gorditas","sopes","tlacoyos","sopa de tortilla","sopa azteca","caldo de pollo","caldo tlalpeño","elotes","esquites","churros","guacamole","pico de gallo","arroz rojo","frijoles refritos","frijoles de olla","torta ahogada","cemita poblana","pambazo","atole","champurrado","agua de horchata","agua de jamaica"],toneStyle:"friendly",culturalContext:"User is in Mexico. Recognize Mexican cuisine across regions (Oaxaqueña, Yucateca, Norteña, Poblana, Veracruzana, Tex-Mex). Understand typical Mexican portions — tortillas (corn and flour) are the centerpiece, not rice. Family-style dining is the norm (shared platters, communal salsas). Salsas and guacamole are standard accompaniments. Comida (main midday meal around 2-3 PM) is the biggest meal of the day. Street food (tacos, elotes, esquites, gorditas, tlacoyos) is as important as home cooking. Desayuno (breakfast) features huevos rancheros, chilaquiles, molletes. Keep tone warm, friendly, and approachable — use Mexican Spanish food terminology naturally.",greetingStyle:"Hola"},comms:{email:{provider:"sendgrid",fromName:"MexicanCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"MEXICO"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"MEXICO"}}},brazil:{id:"brazil",languageDefault:"pt",languagesSupported:["pt","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"green-600",secondary:"emerald-500",gradient:"from-green-500 via-emerald-400 to-yellow-400",gradientFrom:"#0F1115",gradientVia:"#15181E",gradientTo:"#1A1D22",style:"warm",accentColor:"#00A859",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-stone-900/60 border-white/[0.08]",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-green-400",buttonGradient:"from-[#007A2E] via-[#009C3B] to-[#00B84A]",progressColor:"#00A859",glowColor:"rgba(0, 156, 59, 0.32)",appBgBase:"#0F1115",appHtmlBg:"#0F1115",appSurface:"rgba(26, 29, 34, 0.92)",appBorder:"rgba(255, 255, 255, 0.08)",appRing:"#00A859",appMuted:"rgba(21, 24, 30, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(0,168,89,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(255,204,41,0.05) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["christian","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},mealPatterns:{breakfast:["Pão na Chapa","Tapioca","Pão de Queijo","Café com Leite","Misto Quente","Cuscuz"],lunch:["Feijoada","Arroz e Feijão","Moqueca","Baião de Dois","Galinhada","Virado à Paulista"],dinner:["Churrasco","Strogonoff","Macarronada","Sopa","Bife à Parmegiana"],snack:["Coxinha","Pastel","Brigadeiro","Pão de Queijo","Açaí na Tigela"]},cuisineOptions:[{value:"Brasileira",label:"Brasileira"},{value:"Nordestina",label:"Nordestina"},{value:"Mineira",label:"Mineira"},{value:"Gaúcha",label:"Gaúcha"},{value:"Baiana",label:"Baiana"},{value:"Amazônica",label:"Amazônica"},{value:"Paulista",label:"Paulista"}],pricing:{monthly:1990,yearly:14990,trialDays:7,currency:{code:"BRL",symbol:"R$",position:"before",decimals:2}},content:{brandName:"BrazilianCalorie",brandNameNative:"BrazilianCalorie",tagline:"Calorias para a comida brasileira de verdade",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇧🇷",mascot:"/logos/brazil/brazil-app-icon.png",foodExamples:["Feijoada","Pão de Queijo","Moqueca","Açaí na Tigela","Brigadeiro","Coxinha","Churrasco","Acarajé"],domain:"braziliancalorie.com",metaDescription:"Calorias e informações nutricionais para feijoada, pão de queijo, moqueca, açaí, brigadeiro, coxinha, churrasco e toda a riqueza da culinária brasileira — do Norte ao Sul, com porções reais e pratos do dia a dia."},ai:{foodBias:["feijoada","feijão tropeiro","baião de dois","arroz e feijão","moqueca baiana","moqueca capixaba","bobó de camarão","vatapá","caruru","acarajé","carne de sol","buchada de bode","cuscuz nordestino","pão de queijo","tutu de feijão","frango com quiabo","virado à paulista","churrasco","picanha","barreado","arroz carreteiro","galeto","pinhão","tacacá","pato no tucupi","maniçoba","pirarucu","tambaqui","arroz com pequi","galinhada","pamonha","empadão goiano","coxinha","pastel","bolinho de bacalhau","kibe","esfiha","brigadeiro","beijinho","quindim","cocada","pudim de leite","bolo de rolo","açaí na tigela","ta
1pioca","pão francês","misto quente","pão na chapa","caipirinha","guaraná","caldo de cana","água de coco","café com leite"],toneStyle:"friendly",culturalContext:"User is in Brazil. Recognize Brazilian cuisine across the five macro-regions — Norte (Amazonian: tacacá, pato no tucupi, açaí, pirarucu), Nordeste (acarajé, moqueca, carne de sol, baião de dois), Centro-Oeste (arroz com pequi, galinhada, pamonha), Sudeste (feijoada, pão de queijo, virado à paulista), and Sul (churrasco, barreado, chimarrão). Rice and beans (arroz e feijão) is the daily staple, not rice alone. Almoço (the midday meal) is the largest meal. Churrasco is central to weekend/social dining. Street food (coxinha, pastel, açaí, tapioca) is everywhere. Keep tone warm, friendly, and joyful — use Brazilian Portuguese food terminology naturally (lanche, almoço, café da manhã, sobremesa).",greetingStyle:"Olá"},comms:{email:{provider:"sendgrid",fromName:"BrazilianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"BRAZIL"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"BRAZIL"}}},switzerland:{id:"switzerland",languageDefault:"de",languagesSupported:["de","fr","it","en"],dateFormat:"DD.MM.YYYY",measurementSystem:"metric",theme:{primary:"red-600",secondary:"rose-500",gradient:"from-red-500 via-rose-500 to-red-400",gradientFrom:"#0F1115",gradientVia:"#15181E",gradientTo:"#1A1D22",style:"warm",accentColor:"#DA1818",bgPrimary:"from-stone-950 via-stone-900 to-stone-950",bgCard:"bg-stone-900/60 border-white/[0.08]",textPrimary:"text-white",textSecondary:"text-white/60",textAccent:"text-red-400",buttonGradient:"from-[#B30F0F] via-[#DA1818] to-[#E94444]",progressColor:"#DA1818",glowColor:"rgba(218, 24, 24, 0.32)",appBgBase:"#0F1115",appHtmlBg:"#0F1115",appSurface:"rgba(26, 29, 34, 0.92)",appBorder:"rgba(255, 255, 255, 0.08)",appRing:"#DA1818",appMuted:"rgba(21, 24, 30, 0.9)",appAmbientGlow:"radial-gradient(ellipse at 20% 50%, rgba(218,24,24,0.06) 0%, transparent 70%), radial-gradient(ellipse at 80% 20%, rgba(255,255,255,0.04) 0%, transparent 70%)"},fasting:{enabled:!0,traditions:["christian","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},mealPatterns:{breakfast:["Birchermüesli","Zopf","Brot mit Käse","Gipfeli","Ovomaltine","Café Crème"],lunch:["Rösti","Älplermagronen","Zürcher Geschnetzeltes","Cordon Bleu","Bratwurst mit Rösti","Polenta"],dinner:["Käsefondue","Raclette","Berner Platte","Capuns","Papet Vaudois","Fondue Chinoise"],snack:["Bündnerfleisch","Cervelat","Schoggi","Birnbrot","Nidelzältli","Basler Läckerli"]},cuisineOptions:[{value:"Schweizer",label:"Schweizer"},{value:"Deutschschweiz",label:"Deutschschweiz"},{value:"Romande",label:"Romande"},{value:"Ticinese",label:"Ticinese"},{value:"Bündner",label:"Bündner"},{value:"Walliser",label:"Walliser"}],pricing:{monthly:990,yearly:7900,trialDays:7,currency:{code:"CHF",symbol:"CHF",position:"before",decimals:2}},content:{brandName:"SwissCalorie",brandNameNative:"SwissCalorie",tagline:"Gesund geniessen. Bewusst leben.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇨🇭",mascot:"/logos/switzerland/switzerland-app-icon.png",foodExamples:["Käsefondue","Raclette","Rösti","Älplermagronen","Zürcher Geschnetzeltes","Birchermüesli","Cervelat","Bündnerfleisch"],domain:"swisscalorie.com",metaDescription:"Kalorien und Nährwerte für Käsefondue, Raclette, Rösti, Älplermagronen, Zürcher Geschnetzeltes, Birchermüesli und die ganze Vielfalt der Schweizer Küche — aus allen Sprachregionen, mit echten Portionen und Alltagsgerichten."},ai:{foodBias:["käsefondue","fondue moitié-moitié","raclette","rösti","älplermagronen","zürcher geschnetzeltes","cordon bleu","bratwurst","cervelat","wienerli","birchermüesli","zopf","gipfeli","basler läckerli","luxemburgerli","bündnerfleisch","capuns","pizzoccheri","maluns","gerstensuppe","berner platte","papet vaudois","malakoff","fondue chinoise","polenta","risotto","luganighe","busecca","tessiner","walliser raclette","cholera","gschwellti","tartiflette","schoggi","toblerone","meringue","doppelrahm","nidelzältli","birnbrot"],toneStyle:"formal",culturalContext:"User is in Switzerland. Recognize Swiss cuisine across the four language regions — Deutschschweiz (Rösti, Älplermagronen, Zürcher Geschnetzeltes, Bratwurst), Romandie (fondue, raclette, papet vaudois, malakoff), Ticino (polenta, risotto, luganighe, busecca) and Graubünden/Wallis (capuns, pizzoccheri, Bündnerfleisch, cholera). Cheese and alpine dairy are central — fondue and raclette are social winter staples. Portions are precise and ingredient quality matters. Use Swiss-German food terminology naturally (Zmorge, Zmittag, Znacht, Zvieri) and respect the multilingual context (German, French, Ital
1ian).",greetingStyle:"Grüezi"},comms:{email:{provider:"sendgrid",fromName:"SwissCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"SWITZERLAND"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"SWITZERLAND"}}},russia:{id:"russia",languageDefault:"ru",languagesSupported:["ru","en"],dateFormat:"DD.MM.YYYY",measurementSystem:"metric",theme:{primary:"emerald-800",secondary:"red-700",gradient:"from-[#2F5D50] via-[#B4443D] to-[#8A7D70]",gradientFrom:"#2F5D50",gradientVia:"#B4443D",gradientTo:"#8A7D70",style:"modern",accentColor:"#2F5D50",bgPrimary:"from-[#F7F5F0] via-[#EDE7DF] to-[#F7F5F0]",bgCard:"bg-white/85 border-[#E2D8CC]",textPrimary:"text-[#1F2A25]",textSecondary:"text-[#5E655F]",textAccent:"text-[#B4443D]",buttonGradient:"from-[#2F5D50] via-[#3B7566] to-[#B4443D]",progressColor:"#2F5D50",glowColor:"rgba(180, 68, 61, 0.24)",appBgBase:"#F7F5F0",appHtmlBg:"#F7F5F0",appSurface:"rgba(255, 252, 246, 0.92)",appBorder:"rgba(47, 93, 80, 0.14)",appRing:"#B4443D",appMuted:"rgba(237, 231, 223, 0.86)",appAmbientGlow:"radial-gradient(ellipse at 18% 12%, rgba(180,68,61,0.10) 0%, transparent 42%), radial-gradient(ellipse at 78% 18%, rgba(47,93,80,0.10) 0%, transparent 45%), radial-gradient(ellipse at 45% 95%, rgba(138,125,112,0.10) 0%, transparent 50%)",marketingSurface:"light",marketingBgBase:"#F7F5F0",marketingHtmlBg:"#F7F5F0",marketingCard:"#FFFCF6",marketingMuted:"#EDE7DF",marketingForeground:"#1F2A25",marketingMutedForeground:"#5E655F",marketingBorder:"rgba(47, 93, 80, 0.16)",fontDisplay:"Georgia, 'Times New Roman', serif",fontBody:"var(--font-inter), 'Noto Sans', Arial, sans-serif"},fasting:{enabled:!0,traditions:["christian","muslim","modern"],defaultTraditions:["modern"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},fastingHub:{copy:{metaTitle:"Календарь поста | Интервальное питание и православный пост",metaDescription:"Календарь поста для России: интервальное питание, Великий пост, Рамадан и мягкое планирование питания.",heroTitle:"Календарь поста",heroSubtitle:"Интервальное питание, традиции и спокойный контроль рациона",popularBadge:"Популярно",sectionWhyTitle:"Зачем отслеживать пост?",cardReminderTitle:"Напоминания без суеты",cardReminderBody:"Планируйте окна питания, постные дни и привычки заранее.",cardHealthTitle:"Баланс и самочувствие",cardHealthBody:"Отслеживайте питание мягко, без давления и экстремальных ограничений.",cardTimesTitle:"Удобный график",cardTimesBody:"Смотрите интервалы, заметки и рекомендации в одном месте.",quickLinksTitle:"Быстрый доступ",quickLinkFoodsLabel:"🥣 Постные блюда",quickLinkAppLabel:"📱 Открыть приложение"},traditions:[{id:"modern",name:"Интервальное питание",nameEnglish:"Intermittent Fasting",description:"16:8, 18:6, 20:4 и мягкие режимы для повседневной жизни",icon:"sparkles",href:"/fasting-hub",highlight:!0},{id:"christian",name:"Православный пост",nameEnglish:"Orthodox fasting",description:"Постные дни, Великий пост и питание без лишней сложности",icon:"heart",href:"/fasting-hub"},{id:"islamic",name:"Рамадан",nameEnglish:"Islamic fasting",description:"Сухур, ифтар и ежедневный график для мусульманских пользователей",icon:"moon",href:"/islamic-calendar"}]},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["каша","гречневая каша","сырники","творог","блины","оладьи","бутерброд","яйца","чай"],lunch:["борщ","щи","солянка","пельмени","котлеты","гречка","картофельное пюре","салат оливье"],dinner:["голубцы","жаркое","рыба","уха","тушеная капуста","вареники","бефстроганов"],snack:["пирожок","блины","сушки","пряники","творог","кефир","морс","квас"]},cuisineOptions:[{value:"Moscow",label:"Москва"},{value:"Saint Petersburg",label:"Санкт-Петербург"},{value:"Siberia",label:"Сибирь"},{value:"Volga",label:"Поволжье"},{value:"Ural",label:"Урал"},{value:"Far East",label:"Дальний Восток"},{value:"North Caucasus",label:"Северный Кавказ"}],pricing:{monthly:699,yearly:4990,trialDays:7,currency:{code:"RUB",symbol:"₽",position:"after",decimals:0}},content:{brandName:"RussianCalorie",brandNameNative:"РусскиеКалории",tagline:"Калории для русской кухни, без западных догадок.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇷🇺",mascot:"/logos/russia/russia-app-icon.png",foodExamples:["Борщ","Пельмени","Блин
1ы","Щи","Оливье","Гречка","Сырники","Бефстроганов","Солянка","Пирожки"],domain:"russiancalorie.com",metaDescription:"Считайте калории русской кухни: борщ, пельмени, блины, щи, оливье, гречка и домашние порции с RussianCalorie."},ai:{foodBias:["борщ","пельмени","блины","щи","солянка","окрошка","оливье","селедка под шубой","гречневая каша","сырники","творог","пирожки","вареники","голубцы","котлеты","бефстроганов","уха","рассольник","винегрет","морс","квас","кефир"],toneStyle:"friendly",culturalContext:"Пользователь из России. Распознавай русские домашние блюда, столовые, кафе, порции в тарелках, половниках, штуках и граммах. Приоритет: борщ, пельмени, блины, щи, солянка, гречка, салаты, молочные продукты и заготовки. Пиши преимущественно по-русски, избегай политических и советских визуальных клише, фокусируйся на еде и здоровье.",greetingStyle:"Привет"},comms:{email:{provider:"sendgrid",fromName:"RussianCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"RUSSIA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"RUSSIA"}}},turkey:{id:"turkey",languageDefault:"tr",languagesSupported:["tr","en"],dateFormat:"DD.MM.YYYY",measurementSystem:"metric",theme:{primary:"amber-700",secondary:"teal-600",gradient:"from-[#3B0D16] via-[#8E2B17] to-[#C46A1C]",gradientFrom:"#3B0D16",gradientVia:"#5B1A18",gradientTo:"#C46A1C",style:"warm",accentColor:"#C46A1C",bgPrimary:"from-[#120B08] via-[#24100D] to-[#3B0D16]",bgCard:"bg-[#1E120E]/70 border-[#B87333]/20",textPrimary:"text-[#FFF3E0]",textSecondary:"text-[#FFF3E0]/70",textAccent:"text-[#F2B66D]",buttonGradient:"from-[#B87333] via-[#C46A1C] to-[#F2B66D]",progressColor:"#C46A1C",glowColor:"rgba(196, 106, 28, 0.34)",appBgBase:"#120B08",appHtmlBg:"#120B08",appSurface:"rgba(30, 18, 14, 0.92)",appBorder:"rgba(184, 115, 51, 0.20)",appRing:"#C46A1C",appMuted:"rgba(59, 13, 22, 0.72)",appAmbientGlow:"radial-gradient(ellipse at 18% 18%, rgba(196,106,28,0.10) 0%, transparent 62%), radial-gradient(ellipse at 82% 28%, rgba(29,138,138,0.09) 0%, transparent 58%), radial-gradient(ellipse at 55% 92%, rgba(59,13,22,0.20) 0%, transparent 70%)",marketingSurface:"dark",marketingBgBase:"#120B08",marketingHtmlBg:"#120B08",marketingCard:"rgba(30, 18, 14, 0.78)",marketingMuted:"rgba(255, 243, 224, 0.08)",marketingForeground:"#FFF3E0",marketingMutedForeground:"rgba(255, 243, 224, 0.72)",marketingBorder:"rgba(184, 115, 51, 0.22)"},fasting:{enabled:!0,traditions:["muslim","modern"],defaultTraditions:["muslim"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!0,authority:"aladhan",authorityName:"Aladhan (Türkiye şehir bazlı)",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["Menemen","Simit","Börek","Sucuklu yumurta","Gözleme","Peynir zeytin tabağı"],lunch:["Döner dürüm","Lahmacun","Pide","Kuru fasulye pilav","Mercimek çorbası","Köfte"],dinner:["Adana kebap","İskender","Mantı","Karnıyarık","Sarma","İmam bayıldı"],snack:["Kumpir","Çiğ köfte","Midye dolma","Baklava","Lokum","Türk kahvesi","Çay"]},cuisineOptions:[{value:"Türkiye",label:"Türkiye"},{value:"İstanbul",label:"İstanbul"},{value:"Ege",label:"Ege"},{value:"Akdeniz",label:"Akdeniz"},{value:"Güneydoğu",label:"Güneydoğu"},{value:"Karadeniz",label:"Karadeniz"},{value:"Anadolu",label:"Anadolu"}],pricing:{monthly:149.99,yearly:999.99,trialDays:7,currency:{code:"TRY",symbol
1:"₺",position:"before",decimals:2}},content:{brandName:"TurkishCalorie",brandNameNative:"TurkishCalorie",tagline:"Türk yemekleri için kalori takibi.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇹🇷",mascot:"/logos/turkey/turkey-app-icon.png",foodExamples:["Menemen","Simit","Döner","Lahmacun","Mantı","Kuru Fasulye","Adana Kebap","Baklava"],domain:"turkishcalorie.com",metaDescription:"Döner, lahmacun, menemen, mantı, baklava ve ev yemeklerini gerçek Türk porsiyonlarıyla takip et. TurkishCalorie, Türk mutfağı için kalori ve makro takibi."},ai:{foodBias:["menemen","simit","börek","sucuklu yumurta","gözleme","döner","dürüm","adana kebap","urfa kebap","iskender","köfte","tavuk şiş","lahmacun","pide","kokoreç","kumpir","midye dolma","çiğ köfte","kuru fasulye","pilav","mantı","sarma","dolma","karnıyarık","imam bayıldı","mercimek çorbası","ezogelin","yayla çorbası","cacık","haydari","acılı ezme","çoban salata","baklava","künefe","sütlaç","kazandibi","lokum","Türk kahvesi","ayran","çay"],toneStyle:"friendly",culturalContext:"Kullanıcı Türkiye bağlamında yemek günlüğü tutuyor. Türk mutfağını İstanbul sofrası, esnaf lokantası, ocakbaşı, ev yemekleri, kahvaltı, çay/kahve kültürü, iftar ve sahur porsiyonlarıyla düşün. Porsiyonları 1 porsiyon, 1 dürüm, 1 dilim, 1 kase, 1 bardak çay gibi Türkiye’de kullanılan ölçülerle anlat. Türkçe doğal, net ve yerel olsun.",greetingStyle:"Merhaba"},comms:{email:{provider:"sendgrid",fromName:"TurkishCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"TURKEY"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!1,envKeyPrefix:"TURKEY"}}},egypt:{id:"egypt",languageDefault:"ar",languagesSupported:["ar","en"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"amber-700",secondary:"emerald-700",gradient:"from-[#071417] via-[#3E1017] to-[#D08A24]",gradientFrom:"#071417",gradientVia:"#3E1017",gradientTo:"#D08A24",style:"halal",accentColor:"#D08A24",bgPrimary:"from-[#071417] via-[#100B08] to-[#3E1017]",bgCard:"bg-[#17100B]/76 border-[#D08A24]/20",textPrimary:"text-[#FFF1D6]",textSecondary:"text-[#FFF1D6]/72",textAccent:"text-[#F5B65B]",buttonGradient:"from-[#A9501B] via-[#D08A24] to-[#F5B65B]",progressColor:"#D08A24",glowColor:"rgba(208, 138, 36, 0.34)",appBgBase:"#071417",appHtmlBg:"#071417",appSurface:"rgba(23, 16, 11, 0.92)",appBorder:"rgba(208, 138, 36, 0.20)",appRing:"#D08A24",appMuted:"rgba(111, 18, 36, 0.34)",appAmbientGlow:"radial-gradient(ellipse at 18% 18%, rgba(208,138,36,0.10) 0%, transparent 62%), radial-gradient(ellipse at 82% 28%, rgba(46,125,70,0.09) 0%, transparent 58%), radial-gradient(ellipse at 55% 92%, rgba(111,18,36,0.18) 0%, transparent 70%)",marketingSurface:"dark",marketingBgBase:"#071417",marketingHtmlBg:"#071417",marketingCard:"rgba(23, 16, 11, 0.80)",marketingMuted:"rgba(255, 241, 214, 0.08)",marketingForeground:"#FFF1D6",marketingMutedForeground:"rgba(255, 241, 214, 0.72)",marketingBorder:"rgba(208, 138, 36, 0.22)",fontDisplay:"system-ui, -apple-system, 'Segoe UI', Tahoma, Arial, sans-serif",fontBody:"system-ui, -apple-system, 'Segoe UI', Tahoma, Arial, sans-serif"},fasting:{enabled:!0,traditions:["muslim","modern"],defaultTraditions:["muslim"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!0,authority:"aladhan",authorityName:"Aladhan (Egyptian General Authority method)",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"egypt",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["فول مدمس","طعمية","عيش بلدي","بيض بالبسطرمة","جبنة قديمة","بطاطس محمرة"],lunch:["كشري","ملوخية","محشي","مكرونة بالبشاميل","رز معمر","مسقعة"],dinner:["كفتة مشوية","كباب","حواوشي","فتة","حمام محشي","صيادية سمك"],snack:["ساندوتش طعمية","فطير مشلتت","بسبوسة","كنافة","قصب","شاي بالنعناع"]},cuisineOptions:[{value:"مصر",label:"مصر"},{value:"القاهرة",label:"القاهرة"},{value:"الإسكندرية",label:"الإسكندرية"},{value:"الدلتا",label:"الدلتا"},{value:"الصعيد",label:"الصعيد"},{value:"النوبة",label:"النوبة"},{value:"سيناء",label:"سيناء"}],pricing:{monthly:149.99,yearly:999.99,trialDays:7,currency:{code:"EGP",symbol
1:"ج.م",position:"after",decimals:2}},content:{brandName:"EgyptCalorie",brandNameNative:"EgyptCalorie",tagline:"تتبع السعرات للأكل المصري.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇪🇬",mascot:"/logos/egypt/egypt-app-icon.png",foodExamples:["كشري","فول مدمس","طعمية","محشي","ملوخية","حواوشي","كفتة","بسبوسة"],domain:"egyptcalorie.com",metaDescription:"تتبع سعرات الكشري، الفول، الطعمية، المحشي، الملوخية، الكفتة والحلويات الشرقية بحصص مصرية حقيقية."},ai:{foodBias:["koshary","كشري","foul medames","فول مدمس","taameya","طعمية","baladi bread","عيش بلدي","hawawshi","حواوشي","molokhia","ملوخية","mahshi","محشي","warak enab","ورق عنب","kofta","كفتة","kebab","كباب","fattah","فتة","moussaka","مسقعة","macarona bechamel","مكرونة بالبشاميل","roz meammar","رز معمر","sayadeya","صيادية","fesikh","فسيخ","feteer meshaltet","فطير مشلتت","basbousa","بسبوسة","konafa","كنافة","umm ali","أم علي","sahlab","سحلب","asab","عصير قصب","mint tea","شاي بالنعناع"],toneStyle:"friendly",culturalContext:"المستخدم في سياق مصر. فكر في الأكل المصري كأكل شارع، أكل بيت، كشري، فول وطعمية، محشي، ملوخية، مشويات، أسماك إسكندراني، فطار وسحور رمضان. استخدم حصص مصرية طبيعية مثل طبق، رغيف بلدي، سندوتش، كوب، قطعة، ملعقة. العربية يجب أن تكون طبيعية وواضحة للمستخدم المصري.",greetingStyle:"أهلاً"},comms:{email:{provider:"sendgrid",fromName:"EgyptCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"EGYPT"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!1,envKeyPrefix:"EGYPT"}}},dubai:{id:"dubai",languageDefault:"en",languagesSupported:["en","ar"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"amber-500",secondary:"emerald-500",gradient:"from-[#05080D] via-[#10242C] to-[#D6A95B]",gradientFrom:"#05080D",gradientVia:"#10242C",gradientTo:"#D6A95B",style:"luxury",accentColor:"#D6A95B",bgPrimary:"from-[#05080D] via-[#0A151A] to-[#1E1208]",bgCard:"bg-[#0B1116]/78 border-[#D6A95B]/22",textPrimary:"text-[#FFF8EA]",textSecondary:"text-[#FFF8EA]/72",textAccent:"text-[#D6A95B]",buttonGradient:"from-[#A9782C] via-[#D6A95B] to-[#F7E1A7]",progressColor:"#D6A95B",glowColor:"rgba(214, 169, 91, 0.34)",appBgBase:"#05080D",appHtmlBg:"#05080D",appSurface:"rgba(9, 17, 22, 0.92)",appBorder:"rgba(214, 169, 91, 0.20)",appRing:"#D6A95B",appMuted:"rgba(15, 163, 127, 0.10)",appAmbientGlow:"radial-gradient(ellipse at 16% 14%, rgba(214,169,91,0.13) 0%, transparent 58%), radial-gradient(ellipse at 86% 24%, rgba(15,163,127,0.12) 0%, transparent 60%), radial-gradient(ellipse at 52% 94%, rgba(87,55,24,0.22) 0%, transparent 70%)",marketingSurface:"dark",marketingBgBase:"#05080D",marketingHtmlBg:"#05080D",marketingCard:"rgba(255, 248, 234, 0.92)",marketingMuted:"rgba(255, 248, 234, 0.08)",marketingForeground:"#FFF8EA",marketingMutedForeground:"rgba(255, 248, 234, 0.72)",marketingBorder:"rgba(214, 169, 91, 0.24)",fontDisplay:"var(--font-fraunces), Georgia, 'Times New Roman', serif",fontBody:"var(--font-inter), system-ui, -apple-system, 'Segoe UI', sans-serif"},fasting:{enabled:!0,traditions:["muslim","modern"],defaultTraditions:["modern","muslim"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!0,authority:"aladhan",authorityName:"Aladhan (Gulf method)",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"makkah",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["karak","balaleet","shakshuka","labneh plate","acai bowl","avocado toast"],lunch:["chicken shawarma","machboos","business lunch bowl","fattoush","grilled chicken","biryani"],dinner:["lamb ouzi","mixed grill","seafood platter","sushi platter","truffle pasta","grilled hammour"],snack:["dates","luqaimat","kunafa","arabic coffee","fresh juice","protein smoothie"]},cuisineOptions:[{value:"dubai",label:"Dubai"},{value:"emirati",label:"Emirati"},{value:"levantine",label:"Levantine"},{value:"healthy-clean",label:"Healthy & Clean"},{value:"luxury-dining",label:"Luxury Dining"},{value:"cafe-brunch",label:"Cafe & Brunch"},{value:"south-asian-dubai",label:"South Asian Dubai"}],pricing:{monthly:36.99,yearly:299.99,trialDays:7,currency:{code:"AED",symbol:"AED",position:"before",decimals:2}},content:{brandName:"DubaiCalorie",brandNameNative:"DubaiCalorie",tagline:"Eat Beautiful. Live Dubai.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇦🇪",mascot:"/logos/dubai/dubai-app-icon.png",foodExamples:["Chicken Shawarma","Lamb Ouzi","Machboos","Karak","Acai Bowl","Truffle Pasta","Kunafa","
1Luqaimat"],domain:"dubaicalorie.com",metaDescription:"Track calories for Dubai food, from Emirati classics and shawarma to beach-club brunches, business lunches, fine dining, karak and desserts."},ai:{foodBias:["dubai","emirati","machboos","lamb ouzi","harees","thareed","shawarma","chicken shawarma","beef shawarma","manakish","hummus","moutabal","fattoush","tabbouleh","mixed grill","shish tawook","hammour","seafood platter","sushi platter","truffle pasta","business lunch","beach club brunch","acai bowl","protein smoothie","karak","arabic coffee","dates","luqaimat","kunafa","umm ali","biryani","butter chicken","paratha"],toneStyle:"luxury",culturalContext:"User is in Dubai. Think Emirati food, Levantine mezze, shawarma shops, South Asian expat staples, healthy cafe culture, business lunches, luxury hotel dining, beach clubs, Ramadan iftar/suhoor, karak, dates, and realistic UAE portions such as wrap, plate, bowl, cup, glass, piece, skewer, and slice. English is primary; Arabic food names should be recognized when present.",greetingStyle:"Welcome"},comms:{email:{provider:"sendgrid",fromName:"DubaiCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"DUBAI"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!1,envKeyPrefix:"DUBAI"}}},qatar:{id:"qatar",languageDefault:"en",languagesSupported:["en","ar"],dateFormat:"DD/MM/YYYY",measurementSystem:"metric",theme:{primary:"teal-900",secondary:"amber-600",gradient:"from-[#F8F3EA] via-[#FFFDF8] to-[#D9C6A5]",gradientFrom:"#F8F3EA",gradientVia:"#FFFDF8",gradientTo:"#D9C6A5",style:"minimal",accentColor:"#B88A44",bgPrimary:"from-[#F8F3EA] via-[#FFFDF8] to-[#D9C6A5]",bgCard:"bg-[#FFFDF8]/92 border-[#D9C6A5]/70",textPrimary:"text-[#1F4D4D]",textSecondary:"text-[#1F4D4D]/72",textAccent:"text-[#B88A44]",buttonGradient:"from-[#1F4D4D] via-[#2B6865] to-[#B88A44]",progressColor:"#B88A44",glowColor:"rgba(184, 138, 68, 0.28)",appBgBase:"#102C2C",appHtmlBg:"#102C2C",appSurface:"rgba(255, 253, 248, 0.10)",appBorder:"rgba(217, 198, 165, 0.24)",appRing:"#B88A44",appMuted:"rgba(248, 243, 234, 0.10)",appAmbientGlow:"radial-gradient(ellipse at 18% 16%, rgba(184,138,68,0.16) 0%, transparent 56%), radial-gradient(ellipse at 84% 26%, rgba(31,77,77,0.18) 0%, transparent 58%), radial-gradient(ellipse at 50% 94%, rgba(217,198,165,0.16) 0%, transparent 70%)",marketingSurface:"light",marketingBgBase:"#F8F3EA",marketingHtmlBg:"#F8F3EA",marketingCard:"#FFFDF8",marketingMuted:"rgba(217, 198, 165, 0.34)",marketingForeground:"#1F4D4D",marketingMutedForeground:"rgba(31, 77, 77, 0.70)",marketingBorder:"rgba(31, 77, 77, 0.16)",fontDisplay:"var(--font-fraunces), Georgia, 'Times New Roman', serif",fontBody:"var(--font-inter), system-ui, -apple-system, 'Segoe UI', sans-serif"},fasting:{enabled:!0,traditions:["muslim","modern"],defaultTraditions:["modern","muslim"],showRamadan:!0,showHinduFasts:!1,showBuddhistFasts:!1,showModernIF:!0},prayerTimes:{enabled:!0,authority:"aladhan",authorityName:"Aladhan (Qatar city method)",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"makkah",defaultMadhab:"shafi",hijriAdjustment:0},mealPatterns:{breakfast:["balaleet","karak","arabic coffee","dates","shakshuka","paratha"],lunch:["machboos","shawarma plate","chicken biryani","mixed grill","hummus bowl","healthy cafe bowl"],dinner:["lamb machboos","madrouba","shish tawook","turkish kebab","filipino adobo","family grill platter"],snack:["dates","karak","kunafa","luqaimat","fresh juice","protein smoothie"]},cuisineOptions:[{value:"qatari",label:"Qatari Cuisine"},{value:"qatar-restaurants",label:"Restaurant Meals"},{value:"levantine-qatar",label:"Levantine Cuisine"},{value:"indian-qatar",label:"Indian in Qatar"},{value:"pakistani-qatar",label:"Pakistani in Qatar"},{value:"filipino-qatar",label:"Filipino in Qatar"},{value:"turkish-qatar",label:"Turkish in Qatar"},{value:"healthy-qatar",label:"Healthy Choices"},{value:"ramadan-qatar",label:"Ramadan & Iftar"}],pricing:{monthly:34.99,yearly:279.99,trialDays:7,currency:{code:"QAR",symbol:"QAR",position:"before",decimals:2}},content:{brandName:"QatarCalorie",brandNameNative:"QatarCalorie",tagline:"Food intelligence for modern Qatar.",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇶🇦",mascot:"/logos/qatar/qatar-app-icon.png",foodExamples:["Machboos","Arabic Coffee","Dates","Shawarma","Chicken Biryani","Hummus","Kunafa","Karak"],domain:"qatarcalorie.com",metaDescription:"QatarCalorie is the food, nutrition and restaurant guide for modern Qatar, covering Qatari dishes, expat cuisines, restaurant meals, Ramadan and healthy choices."},ai:{foodBias:["qatar","qatari","doha","machboos","lamb machboos","chicken machboos","madrouba","harees","thareed","balaleet","arabic coffee","gahwa","dates","karak","shawarma","shawarma station","hummus","fattoush","tabbouleh","falafel","shish tawook","mixed grill","nandos qatar","healthy cafe","diet cafe","chicken biryani","butter chicken","paratha","nihari","chicken karahi","adobo","pancit","sisig","doner","adana kebab","lahmacun","kunafa","luqaimat","ramadan","iftar","suhoor"],toneStyle:"friendly",culturalContext:"User is in Qatar. Think Qatari family food, Doha restaurant meals, Ramadan iftar/suhoor, healthy cafe choices, and the large Indian, Pakistani, Filipino, Egyptian, Lebane
1se and Turkish expat food cultures. Use practical Qatar portions such as plate, bowl, wrap, cup, glass, piece, skewer, date, and family platter. English is primary; Arabic food names should be recognized when present.",greetingStyle:"Welcome"},comms:{email:{provider:"sendgrid",fromName:"QatarCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"QATAR"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!1,envKeyPrefix:"QATAR"}}},china:{id:"china",languageDefault:"zh",languagesSupported:["zh","en"],dateFormat:"YYYY/MM/DD",measurementSystem:"metric",theme:{primary:"red-500",secondary:"amber-400",gradient:"from-red-500 via-rose-400 to-amber-300",gradientFrom:"#E63946",gradientVia:"#E63946",gradientTo:"#F4C430",style:"modern",accentColor:"#E63946",bgPrimary:"from-red-50 via-rose-50 to-amber-50",bgCard:"bg-white/80 border-red-200/30",textPrimary:"text-slate-800",textSecondary:"text-slate-500",textAccent:"text-red-600",buttonGradient:"from-red-500 via-red-600 to-rose-500",progressColor:"#E63946",glowColor:"rgba(230, 57, 70, 0.25)",appBgBase:"#0E1018",appHtmlBg:"#0E1018",appSurface:"rgba(22, 16, 18, 0.9)",appBorder:"rgba(255, 170, 170, 0.10)",appRing:"#E63946",appMuted:"rgba(14, 16, 24, 0.85)",appAmbientGlow:"radial-gradient(at 20% 10%, rgba(230, 57, 70, 0.06) 0px, transparent 50%), radial-gradient(at 80% 20%, rgba(244, 196, 48, 0.05) 0px, transparent 50%), radial-gradient(at 50% 80%, rgba(58, 155, 122, 0.04) 0px, transparent 50%)",marketingSurface:"light",marketingBgBase:"#FBF6EF",marketingHtmlBg:"#FBF6EF",marketingCard:"#FFFFFF",marketingMuted:"#F7F1E8",marketingForeground:"#1F1414",marketingMutedForeground:"#4A4040",marketingBorder:"#EBE3D6"},fasting:{enabled:!0,traditions:["buddhist","modern"],defaultTraditions:["modern"],showRamadan:!1,showHinduFasts:!1,showBuddhistFasts:!0,showModernIF:!0},prayerTimes:{enabled:!1,authority:"aladhan",authorityName:"Aladhan",apiSource:"https://api.aladhan.com/v1",zones:!1,hijriCalendarSource:"calculated",moonSightingMethod:"local",defaultCalculationMethod:"mwl",defaultMadhab:"hanafi",hijriAdjustment:0},mealPatterns:{breakfast:["ç²¥","包子","豆浆","油条","馒头","煎饼","小笼包","鸡蛋","面条","烧饼"],lunch:["米饭","炒面","盖浇饭","面条","饺子","炒饭","快餐","麻辣烫","便当","汤面"],dinner:["火锅","炒菜","红烧肉","清蒸鱼","宫保鸡丁","麻婆豆腐","烤鸭","小炒","汤","糖醋"],snack:["包子","春卷","月饼","糖葫芦","花生","瓜子","奶茶","豆腐花","凉皮","烧麦"]},cuisineOptions:[{value:"川菜",label:"川菜 (Sichuan)"},{value:"粤菜",label:"粤菜 (Cantonese)"},{value:"鲁菜",label:"鲁菜 (Shandong)"},{value:"淮扬菜",label:"淮扬菜 (Huaiyang)"},{value:"湘菜",label:"湘菜 (Hunan)"},{value:"全球",label:"全球 (Global)"}],pricing:{monthly:28,yearly:198,trialDays:7,currency:{code:"CNY",symbol:"Â¥",position:"before",decimals:0}},content:{brandName:"ChineseCalorie",brandNameNative:"中餐卡路里",tagline:"更懂中餐,吃得更健康",taglineKey:"onboardingV2.welcomeSubtitle",flag:"🇨🇳",mascot:"/logos/china/china-app-icon.png",foodExamples:["饺子","炒饭","火锅","宫保鸡丁","麻婆豆腐","北京烤鸭","小笼包","红烧肉"],domain:"chinesecalorie.com",metaDescription:"用AI轻松管理每日饮食热量。拍照即可自动分析营养,覆盖八大菜系。中餐卡路里,助你健康饮食。"},ai:{foodBias:["饺子","炒饭","火锅","宫保鸡丁","麻婆豆腐","北京烤鸭","小笼包","红烧肉","担担面","糖醋里脊","回锅肉","鱼香肉丝","炒面","包子","馄饨","ç²¥","春卷","烧麦","叉烧","点心","麻辣烫","酸辣汤","蛋炒饭"],toneStyle:"friendly",culturalContext:"User is from China. Recognize dishes across the eight great cuisines (八大菜系): 川菜 (Sichuan), 粤菜 (Cantonese), 鲁菜 (Sh
1andong), 淮扬菜 (Huaiyang), 湘菜 (Hunan), 闽菜, 浙菜, 徽菜. Understand rice servings (米饭 150g/200g), noodle/dumpling portions, hot-pot, and street food. Use Simplified Chinese (简体中文). Emphasize balance and fresh-seasonal eating over restriction.",greetingStyle:"你好"},comms:{email:{provider:"resend",fromName:"ChineseCalorie",fromEmail:"[email protected]",replyTo:"[email protected]",envKeyPrefix:"CHINA"},otp:{provider:"twilio",widgetEnabled:!1,serverEnabled:!0,envKeyPrefix:"CHINA"}}}},u={...m[r],content:{...m[r].content,brandName:"Calorie",brandNameNative:"Calorie",flag:"🌐",mascot:"/logo.webp"}};function g(a){if(!a)return m[r];let e=o(a);return h(e)?m[e]:u}function p(a){return h(o(a))}function h(a){return Object.prototype.hasOwnProperty.call(m,a)}function b(a,e){let{currency:i}=g(a).pricing,r=e.toFixed(i.decimals);return"before"===i.position?`${i.symbol}${r}`:`${r} ${i.symbol}`}function f(a){return a.appBgBase?{className:"",style:{background:`linear-gradient(135deg, ${a.appBgBase} 0%, ${a.appSurface||a.appBgBase} 100%)`}}:{className:`bg-gradient-to-br ${a.bgPrimary}`,style:void 0}}a.s(["formatRegionPrice",()=>b,"getAppPageBackground",()=>f,"getRegion",()=>g,"isValidRegion",()=>p],86942)}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.