// i18n strings for Tom Lee Academy. Two locales: en, zh (Traditional Chinese).
// Strings are flat keys, looked up via t(key, lang).

const TL_STRINGS = {
  // ── Common ──
  'app.brand':              { en: 'Tom Lee Academy',           zh: '通利琴行音樂學院' },
  'role.teacher':           { en: 'Teacher',                   zh: '導師' },
  'role.parent':            { en: 'Parent',                    zh: '家長' },
  'lang.toggle':            { en: '中文',                       zh: 'EN' },

  // ── Login ──
  'login.title':            { en: 'Sign in to your studio',    zh: '登入導師工作室' },
  'login.subtitle':         { en: 'Tom Lee Academy · Teacher portal', zh: '通利音樂學院 · 導師專用' },
  'login.email':            { en: 'Staff email',               zh: '員工電郵' },
  'login.password':         { en: 'Password',                  zh: '密碼' },
  'login.signin':           { en: 'Sign in',                   zh: '登入' },
  'login.forgot':           { en: 'Forgot password?',          zh: '忘記密碼？' },
  'login.help':             { en: 'Need help? Contact your branch manager.', zh: '需要協助？請聯絡分行經理。' },
  'login.email.ph':         { en: 'name@tomleemusic.com',      zh: 'name@tomleemusic.com' },

  // ── Schedule ──
  'sched.today':            { en: 'Today',                     zh: '今天' },
  'sched.tomorrow':         { en: 'Tomorrow',                  zh: '明天' },
  'sched.summary':          { en: '{n} lessons · {done} logged · {todo} to go', zh: '{n} 堂課 · 已記錄 {done} · 餘 {todo}' },
  'sched.live':             { en: '● Live',                    zh: '● 直播中' },
  'sched.endOfDay':         { en: 'End of schedule',           zh: '今日課堂完畢' },
  'sched.studio':           { en: 'Studio',                    zh: '琴室' },
  'sched.minShort':         { en: 'MIN',                       zh: '分鐘' },

  // ── Day labels ──
  'dow.MON': { en: 'MON', zh: '一' },
  'dow.TUE': { en: 'TUE', zh: '二' },
  'dow.WED': { en: 'WED', zh: '三' },
  'dow.THU': { en: 'THU', zh: '四' },
  'dow.FRI': { en: 'FRI', zh: '五' },
  'dow.SAT': { en: 'SAT', zh: '六' },
  'dow.SUN': { en: 'SUN', zh: '日' },

  // ── Status ──
  'status.completed':       { en: 'Logged',                    zh: '已記錄' },
  'status.pending':         { en: 'Pending',                   zh: '待記錄' },
  'status.upcoming':        { en: 'Upcoming',                  zh: '未開始' },
  'status.absent':          { en: 'Absent',                    zh: '缺席' },
  'status.today':           { en: 'TODAY',                     zh: '今天' },

  // ── Lesson detail ──
  'lesson.back':            { en: 'Schedule',                  zh: '課表' },
  'lesson.lessonOf':        { en: 'Lesson · {time} · {dur} min', zh: '課堂 · {time} · {dur} 分鐘' },
  'lesson.attendance':      { en: 'Attendance',                zh: '出席' },
  'lesson.attended':        { en: 'Attended',                  zh: '出席' },
  'lesson.absentBtn':       { en: 'Absent',                    zh: '缺席' },
  'lesson.fromLast':        { en: 'From last lesson',          zh: '上堂回顧' },
  'lesson.pieces':          { en: 'Pieces practiced',          zh: '練習曲目' },
  'lesson.addPiece':        { en: 'Add piece',                 zh: '新增曲目' },
  'lesson.technique':       { en: 'Technique notes',           zh: '技巧筆記' },
  'lesson.technique.ph':    { en: 'Scales, posture, exercises. What did we work on technically?', zh: '音階、姿勢、練習。今堂技術重點？' },
  'lesson.homework':        { en: 'Homework for next week',    zh: '下週功課' },
  'lesson.homework.ph':     { en: 'What should they practice? Be specific — tempo, bars, hands.', zh: '請註明：速度、小節、左/右手等。' },
  'lesson.remark':          { en: 'Remark for parent',         zh: '給家長的評語' },
  'lesson.remark.ph':       { en: "A warm, encouraging note for the parent. They'll see this on WhatsApp.", zh: '一段給家長的鼓勵說話，會經 WhatsApp 發送。' },
  'lesson.reasonAbsent':    { en: 'Reason (optional)',         zh: '缺席原因（選填）' },
  'lesson.absent.ph':       { en: 'Sick, family event, etc. The parent will get a gentle WhatsApp note.', zh: '病假、家庭事項等。家長會收到溫馨提示。' },
  'lesson.attach.audio':    { en: 'Audio',                     zh: '錄音' },
  'lesson.attach.photo':    { en: 'Photo',                     zh: '相片' },
  'lesson.attach.file':     { en: 'File',                      zh: '檔案' },
  'lesson.draft':           { en: 'Save draft',                zh: '儲存草稿' },
  'lesson.save':            { en: 'Save & notify parent',      zh: '儲存並通知家長' },
  'lesson.homeworkSet':     { en: 'Homework set',              zh: '已派功課' },
  'lesson.skillRating':     { en: 'Skill ratings',             zh: '技能評分' },
  'lesson.skill.tone':      { en: 'Tone',                      zh: '音色' },
  'lesson.skill.rhythm':    { en: 'Rhythm',                    zh: '節奏' },
  'lesson.skill.posture':   { en: 'Posture',                   zh: '姿勢' },
  'lesson.skill.musicality':{ en: 'Musicality',                zh: '音樂感' },
  'lesson.mood':            { en: 'How did the lesson feel?',  zh: '今堂氣氛如何？' },
  'lesson.mood.great':      { en: 'Great',                     zh: '極佳' },
  'lesson.mood.good':       { en: 'Good',                      zh: '良好' },
  'lesson.mood.steady':     { en: 'Steady',                    zh: '平穩' },
  'lesson.mood.tough':      { en: 'Tough day',                 zh: '較吃力' },
  'lesson.nextFocus':       { en: 'Focus for next lesson',     zh: '下堂重點' },
  'lesson.nextFocus.ph':    { en: 'One sentence — what will we tackle next time?', zh: '一句話 — 下堂要解決甚麼？' },
  'lesson.minutesPracticed':{ en: 'Time on each piece (min)',  zh: '各曲目用時（分鐘）' },
  'lesson.tags':            { en: 'Quick tags',                zh: '快速標籤' },

  // ── Saved ──
  'saved.title':            { en: 'Handbook saved for {name}.', zh: '已為 {name} 儲存課堂手冊。' },
  'saved.body':             { en: '{parent} will receive the summary on WhatsApp shortly. They can tap the link to read your full remark and listen to the audio.',
                              zh: '{parent} 將會於 WhatsApp 收到課堂摘要，可點擊連結閱讀完整評語及收聽錄音。' },
  'saved.sentTo':           { en: 'Sent to',                   zh: '已發送至' },
  'saved.next':             { en: 'Next lesson',               zh: '下一堂' },
  'saved.justLogged':       { en: 'Lesson logged',             zh: '已記錄課堂' },

  // ── Parent view ──
  'parent.heroSub':         { en: "{name}'s progress",          zh: '{name} 的學習進度' },
  'parent.term':            { en: 'Spring term, week 12',      zh: '春季學期 · 第 12 週' },
  'parent.metric.lessons':  { en: 'lessons',                   zh: '堂' },
  'parent.metric.lessonsSub':{ en: 'this term',                zh: '本學期' },
  'parent.metric.streak':   { en: 'day streak',                zh: '日連續' },
  'parent.metric.streakSub':{ en: 'of practice',               zh: '練習' },
  'parent.metric.overall':  { en: 'overall',                   zh: '整體' },
  'parent.metric.overallSub':{ en: '↑ from 3.2',               zh: '↑ 由 3.2' },
  'parent.upcoming':        { en: 'Upcoming',                  zh: '即將上課' },
  'parent.latest':          { en: 'Latest from Ms. Chen',      zh: '陳老師最新評語' },
  'parent.viewAll':         { en: 'View all',                  zh: '查看全部' },
  'parent.skill':           { en: 'Skill progression',         zh: '技能進展' },
  'parent.last4':           { en: 'Last 4 months',             zh: '近 4 個月' },
  'parent.practice':        { en: 'Practice this fortnight',   zh: '近兩週練習' },
  'parent.repertoire':      { en: 'Repertoire',                zh: '曲目集' },
  'parent.npieces':         { en: '{n} pieces',                zh: '{n} 首' },
  'parent.messages':        { en: 'Messages',                  zh: '訊息' },
  'parent.weekly':          { en: 'This week',                 zh: '本週' },
  'parent.goal':            { en: 'Goal',                      zh: '目標' },
  'parent.foot':            { en: 'Tom Lee Academy · Member since Sep 2024', zh: '通利音樂學院 · 會員自 2024 年 9 月' },
  'parent.replyChen':       { en: 'Reply to Ms. Chen',         zh: '回覆陳老師' },
  'parent.absent':          { en: 'Absent — sick leave.',      zh: '缺席 — 病假。' },
  'parent.homework.lbl':    { en: 'Homework · ',               zh: '功課 · ' },
  'parent.tab.home':        { en: 'Home',                      zh: '主頁' },
  'parent.tab.lessons':     { en: 'Lessons',                   zh: '課堂' },
  'parent.tab.handbook':    { en: 'Handbook',                  zh: '手冊' },
  'parent.tab.messages':    { en: 'Messages',                  zh: '訊息' },

  // ── Misc ──
  'misc.studio4':           { en: 'Studio 4',                  zh: '4 號琴室' },
  'misc.tuesdayApril':      { en: 'Tuesday · April',           zh: '星期二 · 四月' },
};

function tlLang() {
  return (typeof window !== 'undefined' && window.__tlLang) || 'en';
}

function t(key, vars) {
  const lang = tlLang();
  const entry = TL_STRINGS[key];
  if (!entry) return key;
  let s = entry[lang] || entry.en || key;
  if (vars) {
    Object.keys(vars).forEach(k => {
      s = s.replace(new RegExp('\\{' + k + '\\}', 'g'), vars[k]);
    });
  }
  return s;
}

window.TL_STRINGS = TL_STRINGS;
window.t = t;
window.tlLang = tlLang;
