-- ═══════════════════════════════════════════════════════════════
-- 031: Phase 3 — new achievement catalog
--
-- Adds 38 achievements covering features that landed since the original
-- 36 were seeded: exam-prep (exam9), textbooks, classroom/board,
-- biochemistry, live-quiz, flashcards, hangman/crossword, plus a new
-- 'social' group for class & leaderboard wins and a few stretch goals
-- in 'consistency' (streak_100, goal_30, early-bird / night-owl).
--
-- Inserts use INSERT OR IGNORE so re-runs are safe; backend
-- seedAchievements() will keep title/icon/desc/sort_order in sync on
-- every boot via UPDATE.
--
-- A new top-level group 'exam' slots between 'consistency' (400) and
-- 'exploration' (500). Group display metadata is hard-coded in both
-- backend (gamification/_shared.ACHIEVEMENT_GROUPS) and frontend
-- (profile.html ACH_GROUPS); keep them in sync.
-- ═══════════════════════════════════════════════════════════════

INSERT OR IGNORE INTO achievements
  (slug, title, icon, category, description, group_slug, track, tier, sort_order)
VALUES
  -- ── consistency extensions ─────────────────────────────────
  ('streak_100',  'Сто дней подряд',     'flame',         'streak',  'Невероятная серия — 100 дней активности подряд',                              'consistency', 'streak',      4, 440),
  ('goal_30',     'Цель: 30 дней',        'target',        'streak',  '30 дней подряд выполнять цель дня',                                            'consistency', 'goal_streak', 1, 450),
  ('early_bird',  'Ранняя пташка',        'sunrise',       'streak',  'Активность до 9 утра',                                                         'consistency', 'time',        1, 460),
  ('night_owl',   'Ночная сова',          'moon',          'streak',  'Активность после 23:00',                                                       'consistency', 'time',        2, 470),

  -- ── exam-prep (math9) ──────────────────────────────────────
  ('exam_first',           'Старт экзамена',        'flag',         'exam', 'Решена первая задача экзамена 9 класса',                              'exam', 'exam_attempts', 1, 700),
  ('exam_25_attempts',     '25 задач экзамена',     'list-checks',  'exam', '25 решённых попыток в банке экзамена',                                'exam', 'exam_attempts', 2, 710),
  ('exam_100_attempts',    '100 задач экзамена',    'check-square', 'exam', '100 решённых попыток в банке экзамена',                               'exam', 'exam_attempts', 3, 720),
  ('exam_variant_clear',   'Чистый вариант',        'crown',        'exam', 'Все 10 задач варианта решены верно',                                  'exam', 'variants',      1, 730),
  ('exam_5_variants',      '5 вариантов',           'layers',       'exam', '5 разных вариантов закрыто целиком',                                  'exam', 'variants',      2, 740),
  ('exam_topic_master',    'Мастер темы',           'target',       'exam', '≥90% точности на одной из подтем (≥10 попыток)',                       'exam', 'topic',         1, 750),
  ('exam_mock_done',       'Первый пробник',        'timer',        'exam', 'Завершён первый пробный экзамен',                                     'exam', 'mock',          1, 760),
  ('exam_mock_pass',       'Пробник сдан',          'badge-check',  'exam', 'Балл ≥ 7 на пробном экзамене',                                        'exam', 'mock',          2, 770),
  ('exam_mock_perfect',    'Пробник на 10',         'trophy',       'exam', 'Идеальные 10 баллов на пробном экзамене',                              'exam', 'mock',          3, 780),

  -- ── mastery extensions (textbooks + flashcards) ────────────
  ('tb_first_para',  'Открыл параграф',     'book-marked',   'theory', 'Прочитан первый параграф учебника',                                          'mastery', 'tb_progress', 1, 800),
  ('tb_chapter_done','Глава закрыта',       'book-check',    'theory', 'Все параграфы одной главы пройдены',                                         'mastery', 'tb_progress', 2, 810),
  ('tb_book_done',   'Учебник целиком',     'book-up',       'theory', 'Все параграфы учебника пройдены',                                            'mastery', 'tb_progress', 3, 820),
  ('tb_3_books',     'Полка из трёх',       'library-big',   'theory', '3 учебника закрыто полностью',                                               'mastery', 'tb_progress', 4, 830),
  ('fc_first_deck',  'Первая колода',       'layers',        'theory', 'Все карточки одной колоды разок повторены',                                  'mastery', 'flashcards',  1, 840),
  ('fc_100_cards',   '100 карточек',        'rotate-cw',     'theory', '100 повторов карточек в сумме',                                              'mastery', 'flashcards',  2, 850),
  ('fc_1000_cards',  '1000 карточек',       'sparkles',      'theory', '1000 повторов карточек в сумме',                                             'mastery', 'flashcards',  3, 860),

  -- ── exploration extensions (biochem / games / pet) ─────────
  ('bc_first_molecule', 'Первая молекула',   'flask-round',     'lab', 'Собрана первая молекула в био-конструкторе',                                  'exploration', 'biochem',    1, 870),
  ('bc_5_challenges',   '5 био-задач',       'beaker',          'lab', '5 биохимических задач решено',                                                'exploration', 'biochem',    2, 880),
  ('bc_20_challenges',  '20 био-задач',      'atom',            'lab', '20 биохимических задач решено',                                               'exploration', 'biochem',    3, 890),
  ('game_win_5',        '5 побед в играх',   'gamepad-2',       'volume','5 побед в Виселице или Кроссворде суммарно',                                'exploration', 'minigames',  1, 900),
  ('game_win_25',       '25 побед в играх',  'gamepad',         'volume','25 побед в Виселице или Кроссворде суммарно',                               'exploration', 'minigames',  2, 910),
  ('pet_streak_7',      'Заботливый',        'heart',           'volume','7 дней подряд гладить питомца',                                              'exploration', 'pet',        1, 920),
  ('pet_streak_30',     'Лучший друг',       'paw-print',       'volume','30 дней подряд гладить питомца',                                             'exploration', 'pet',        2, 930),

  -- ── social (NEW group) ─────────────────────────────────────
  ('lb_top10',          'Топ-10 недели',     'trending-up',     'volume', 'Попасть в топ-10 лидерборда недели',                                       'social', 'leaderboard',     1, 1000),
  ('lb_top1',           'Первое место',      'medal',           'volume', '№1 в лидерборде недели',                                                   'social', 'leaderboard',     2, 1010),
  ('lq_first',          'Первый live-quiz',  'radio',           'volume', 'Принять участие в первом live-квизе',                                      'social', 'live_quiz',       1, 1020),
  ('lq_3_quizzes',      '3 live-квиза',      'megaphone',       'volume', 'Принять участие в 3 live-квизах',                                          'social', 'live_quiz',       2, 1030),
  ('cr_first_join',     'Первое подключение','door-open',       'volume', 'Первое подключение к уроку в classroom',                                   'social', 'classroom',       1, 1040),
  ('cr_5_lessons',      '5 уроков',          'presentation',    'volume', 'Посещено 5 уроков classroom',                                              'social', 'classroom',       2, 1050),
  ('cr_25_lessons',     '25 уроков',         'school',          'volume', 'Посещено 25 уроков classroom',                                             'social', 'classroom',       3, 1060),
  ('class_5_members',   'Учитель: 5 учеников','users',          'start',  'Учитель: класс из ≥5 учеников',                                            'social', 'teacher',         1, 1070),
  ('class_25_members',  'Учитель: 25 учеников','users-2',       'start',  'Учитель: класс из ≥25 учеников',                                           'social', 'teacher',         2, 1080),
  ('parent_link',       'Связан с родителем','user-plus',       'start',  'Связь с родителем установлена',                                            'social', 'family',          1, 1090);
