"""
zones.py — Letter zones and challenges for the Letters skill pack.

Challenge types used here:
  - "quiz" : multiple choice — shows options A/B/C/D, player types letter
  - "fill_blank" : player types a short answer

All designed for a 7-year-old learning to read.
"""

ZONE_ORDER = [
    "letter_garden",
    "vowel_pond",
    "blend_bridge",
    "word_workshop",
    "sentence_city",
    "rhyming_river",
    "sight_word_station",
    "reading_full_sentences",
    "word_building",
    "story_time",
    "punctuation_plaza",
]

ZONES = {
    "letter_garden": {
        "id": "letter_garden",
        "name": "The Letter Garden",
        "description": "Learn the sounds of the alphabet",
        "level_required": 1,
        "challenges": [
            {
                "id": "lg_01",
                "title": "The Letter A",
                "type": "quiz",
                "question": "What sound does the letter [bold yellow]A[/bold yellow] make at the start of the word [bold white]apple[/bold white]?",
                "lesson": "A says 'ah' — like when a doctor says 'say ahh!' Think: [bold yellow]A[/bold yellow] for [bold white]apple[/bold white].",
                "options": ["'ay' (like in cake)", "'ah' (like in apple)", "'ee' (like in feel)", "'oh' (like in open)"],
                "answer": "b",
                "hints": ["Think of the word APPLE. What's the very first sound?", "Try saying 'apple' really slowly: aaa-pple"],
                "xp": 30,
            },
            {
                "id": "lg_02",
                "title": "The Letter B",
                "type": "quiz",
                "question": "What sound does [bold yellow]B[/bold yellow] make? Which word starts with a B sound?",
                "lesson": "B says 'buh' — a soft popping sound with your lips. [bold yellow]B[/bold yellow] for [bold white]ball[/bold white], [bold white]boat[/bold white], [bold white]bear[/bold white].",
                "options": ["Dog", "Ball", "Cat", "Fish"],
                "answer": "b",
                "hints": ["Close your lips and make a small pop — that's the B sound!", "Ball starts with B"],
                "xp": 30,
            },
            {
                "id": "lg_03",
                "title": "The Letter C",
                "type": "quiz",
                "question": "The letter [bold yellow]C[/bold yellow] can say 'kuh'. Which of these starts with that sound?",
                "lesson": "[bold yellow]C[/bold yellow] usually says 'kuh' like in [bold white]cat[/bold white] or [bold white]cup[/bold white].",
                "options": ["Elephant", "Apple", "Cat", "Uncle"],
                "answer": "c",
                "hints": ["Cat, cake, cup — they all start with the same sound!", "It's the same sound as K!"],
                "xp": 30,
            },
            {
                "id": "lg_04",
                "title": "The Letter D",
                "type": "quiz",
                "question": "What letter makes the first sound in [bold white]dog[/bold white]?",
                "lesson": "[bold yellow]D[/bold yellow] says 'duh'. Your tongue taps the roof of your mouth. [bold white]Dog, door, duck[/bold white] — all start with D!",
                "options": ["B", "G", "D", "P"],
                "answer": "c",
                "hints": ["Say 'dog' slowly. What's the very first sound?", "D-D-Dog — there it is!"],
                "xp": 30,
            },
            {
                "id": "lg_05",
                "title": "Letters F and G",
                "type": "quiz",
                "question": "Which word starts with the letter [bold yellow]F[/bold yellow]?",
                "lesson": "[bold yellow]F[/bold yellow] says 'fff' — your top teeth touch your bottom lip. [bold white]Fish, frog, flower[/bold white] all start with F!",
                "options": ["Goat", "Hat", "Fish", "Ball"],
                "answer": "c",
                "hints": ["Put your top teeth on your bottom lip and blow — that's F!", "Fish starts with F"],
                "xp": 30,
            },
            {
                "id": "lg_06",
                "title": "Letters H and J",
                "type": "quiz",
                "question": "What letter makes the beginning sound in [bold white]jump[/bold white]?",
                "lesson": "[bold yellow]J[/bold yellow] says 'juh' — like [bold white]jump, jelly, jar[/bold white]. It's a bouncy sound!",
                "options": ["H", "J", "G", "Y"],
                "answer": "b",
                "hints": ["Jump! Say it out loud — what's that very first sound?", "J-J-Jump!"],
                "xp": 30,
            },
            {
                "id": "lg_07",
                "title": "Letters K and L",
                "type": "quiz",
                "question": "Which word starts with the [bold yellow]L[/bold yellow] sound?",
                "lesson": "[bold yellow]L[/bold yellow] says 'lll' — your tongue touches behind your top teeth and stays there while air flows around it. [bold white]Lion, lamp, leaf[/bold white] start with L.",
                "options": ["Kite", "Lion", "Mouse", "Nest"],
                "answer": "b",
                "hints": ["L sounds like the start of 'lullaby'", "Say 'lll' — it flows! Lion starts with that sound."],
                "xp": 30,
            },
            {
                "id": "lg_08",
                "title": "Letters M and N",
                "type": "quiz",
                "question": "What letter do you hear at the start of [bold white]moon[/bold white]?",
                "lesson": "[bold yellow]M[/bold yellow] says 'mmm' — close your lips and hum. [bold white]Moon, mouse, milk, mom[/bold white] — all start with M!",
                "options": ["N", "W", "M", "B"],
                "answer": "c",
                "hints": ["Close your mouth and hum. That's the M sound!", "Moon, milk, mom — mmm!"],
                "xp": 30,
            },
            {
                "id": "lg_boss",
                "title": "P, Q, R, S, and T — The Big Five",
                "type": "quiz",
                "question": "Which letter makes the sound at the start of [bold white]star[/bold white]?",
                "lesson": "[bold yellow]S[/bold yellow] says 'sss' — like a snake! [bold white]Sun, star, snake, sock[/bold white] — all start with S.",
                "options": ["T", "P", "S", "R"],
                "answer": "c",
                "hints": ["Hiss like a snake — that's the S sound!", "Star begins with S!"],
                "xp": 60,
                "is_boss": True,
            },
        ],
    },

    "vowel_pond": {
        "id": "vowel_pond",
        "name": "The Vowel Pond",
        "description": "Master the five vowels and their sounds",
        "level_required": 2,
        "challenges": [
            {
                "id": "vp_01",
                "title": "Short A",
                "type": "quiz",
                "question": "Which word has the short [bold yellow]A[/bold yellow] sound (like in [bold white]cat[/bold white])?",
                "lesson": "Short A says 'aaa' — like in [bold white]cat, hat, map, cap[/bold white]. It's quick and flat.",
                "options": ["cake", "cat", "make", "lake"],
                "answer": "b",
                "hints": ["Short A is quick — like 'aaa' in a sneeze!", "Cat: C-aaa-T. That's the short A!"],
                "xp": 35,
            },
            {
                "id": "vp_02",
                "title": "Short E",
                "type": "quiz",
                "question": "Which word uses the short [bold yellow]E[/bold yellow] sound (like in [bold white]bed[/bold white])?",
                "lesson": "Short E says 'ehh' — like in [bold white]bed, red, hen, ten[/bold white].",
                "options": ["tree", "bee", "red", "see"],
                "answer": "c",
                "hints": ["Short E sounds like the middle of the word 'bed'", "Bed, red, hen — ehh!"],
                "xp": 35,
            },
            {
                "id": "vp_03",
                "title": "Short I",
                "type": "quiz",
                "question": "Which word has the short [bold yellow]I[/bold yellow] sound (like in [bold white]pig[/bold white])?",
                "lesson": "Short I says 'ihh' — like in [bold white]pig, big, sit, tip[/bold white]. It's a small, quick sound.",
                "options": ["pie", "bike", "pig", "like"],
                "answer": "c",
                "hints": ["Short I is quick — like the middle of 'sit'", "Pig: P-ihh-G. Short I!"],
                "xp": 35,
            },
            {
                "id": "vp_04",
                "title": "Short O",
                "type": "quiz",
                "question": "Which word uses the short [bold yellow]O[/bold yellow] sound (like in [bold white]hot[/bold white])?",
                "lesson": "Short O says 'ahh' — like in [bold white]hot, dog, pop, top[/bold white]. Your mouth opens wide!",
                "options": ["home", "hot", "hope", "hole"],
                "answer": "b",
                "hints": ["Open your mouth wide — that's the short O!", "Hot: H-ahh-T. Short O!"],
                "xp": 35,
            },
            {
                "id": "vp_05",
                "title": "Short U",
                "type": "quiz",
                "question": "Which word has the short [bold yellow]U[/bold yellow] sound (like in [bold white]cup[/bold white])?",
                "lesson": "Short U says 'uh' — like in [bold white]cup, bug, sun, run[/bold white].",
                "options": ["cube", "mule", "cup", "rule"],
                "answer": "c",
                "hints": ["Short U is the sound in 'uh-oh'!", "Cup: C-uh-P. Short U!"],
                "xp": 35,
            },
            {
                "id": "vp_06",
                "title": "Long A",
                "type": "quiz",
                "question": "Which word has the long [bold yellow]A[/bold yellow] sound — where it says its own name, 'AY'?",
                "lesson": "Long A says 'AY' — like in [bold white]cake, lake, name, game[/bold white]. It says its own name!",
                "options": ["cat", "cap", "cake", "can"],
                "answer": "c",
                "hints": ["Long A says its own name — AY!", "Cake: C-AY-K. Long A says 'ay'!"],
                "xp": 35,
            },
            {
                "id": "vp_boss",
                "title": "All Five Vowels",
                "type": "quiz",
                "question": "The word [bold white]bite[/bold white] has which vowel in the middle, making a long sound?",
                "lesson": "Long I says its own name — 'EYE'. In [bold white]bite, kite, like, mine[/bold white], the I says 'I'!",
                "options": ["A", "E", "I", "O"],
                "answer": "c",
                "hints": ["Bite: B-EYE-T. What vowel says 'EYE'?", "I says its own name in 'bite'!"],
                "xp": 70,
                "is_boss": True,
            },
        ],
    },

    "blend_bridge": {
        "id": "blend_bridge",
        "name": "The Blend Bridge",
        "description": "Put two consonants together",
        "level_required": 3,
        "challenges": [
            {
                "id": "bb_01",
                "title": "The BR Blend",
                "type": "quiz",
                "question": "What two letters do you hear at the start of [bold white]bread[/bold white]?",
                "lesson": "[bold yellow]BR[/bold yellow] — B and R together, fast! [bold white]Bread, brown, branch, bridge[/bold white] all start with BR.",
                "options": ["BL", "PR", "BR", "TR"],
                "answer": "c",
                "hints": ["Say 'bread' slowly: BR-ead. Two letters, one quick sound!", "B + R = BR"],
                "xp": 40,
            },
            {
                "id": "bb_02",
                "title": "The ST Blend",
                "type": "quiz",
                "question": "Which word starts with the [bold yellow]ST[/bold yellow] blend?",
                "lesson": "[bold yellow]ST[/bold yellow] — S and T together! [bold white]Star, stop, stick, storm[/bold white] all start with ST.",
                "options": ["Spin", "Star", "Train", "Frog"],
                "answer": "b",
                "hints": ["ST sounds like you're about to say STOP!", "Star — S-T-ar"],
                "xp": 40,
            },
            {
                "id": "bb_03",
                "title": "The PL Blend",
                "type": "quiz",
                "question": "What blend do you hear at the start of [bold white]plant[/bold white]?",
                "lesson": "[bold yellow]PL[/bold yellow] — P and L, side by side. [bold white]Plant, play, plate, place[/bold white] — all start with PL.",
                "options": ["FL", "GL", "BL", "PL"],
                "answer": "d",
                "hints": ["Plant, play, please — what two letters are they sharing?", "P + L = PL"],
                "xp": 40,
            },
            {
                "id": "bb_04",
                "title": "The TR Blend",
                "type": "quiz",
                "question": "Which word begins with [bold yellow]TR[/bold yellow]?",
                "lesson": "[bold yellow]TR[/bold yellow] — T and R together. [bold white]Tree, truck, train, trip[/bold white] all start with TR!",
                "options": ["Snake", "Tree", "Flower", "Crab"],
                "answer": "b",
                "hints": ["TR sounds like a truck engine starting!", "Tree: TR-ee"],
                "xp": 40,
            },
            {
                "id": "bb_05",
                "title": "The FL Blend",
                "type": "quiz",
                "question": "What blend starts the word [bold white]flower[/bold white]?",
                "lesson": "[bold yellow]FL[/bold yellow] — F and L. [bold white]Flower, fly, flag, float[/bold white]. The air flows out with FL!",
                "options": ["BL", "FR", "FL", "GL"],
                "answer": "c",
                "hints": ["Flower, fly, flag — they all start the same way!", "F + L = FL"],
                "xp": 40,
            },
            {
                "id": "bb_boss",
                "title": "Three-Letter Blends",
                "type": "quiz",
                "question": "What THREE letters do you hear at the start of [bold white]string[/bold white]?",
                "lesson": "[bold yellow]STR[/bold yellow] — S, T, and R all together! [bold white]String, strong, stream, straw[/bold white].",
                "options": ["SHR", "SPR", "STR", "SCR"],
                "answer": "c",
                "hints": ["String: S-T-R-ing. Three letters, one quick blend!", "S + T + R = STR"],
                "xp": 80,
                "is_boss": True,
            },
        ],
    },

    "word_workshop": {
        "id": "word_workshop",
        "name": "The Word Workshop",
        "description": "Build and read real words",
        "level_required": 4,
        "challenges": [
            {
                "id": "ww_01",
                "title": "Three-Letter Words",
                "type": "fill_blank",
                "question": "Fill in the missing letter:\n[bold white]C _ T[/bold white]\n(It's a fluffy animal that says meow)",
                "lesson": "Sound it out: C-?-T. What vowel sound is in the middle of [bold white]cat[/bold white]?",
                "answer": "a",
                "hints": ["Cat has the short A sound in the middle!", "C-aaa-T = CAT"],
                "xp": 45,
            },
            {
                "id": "ww_02",
                "title": "More Three-Letter Words",
                "type": "fill_blank",
                "question": "Fill in the missing letter:\n[bold white]S _ N[/bold white]\n(It shines in the sky during the day)",
                "lesson": "[bold white]Sun[/bold white] has the short U sound in the middle: S-uh-N.",
                "answer": "u",
                "hints": ["Think of a sunny day — SUN has a short U sound!", "S-uh-N = SUN"],
                "xp": 45,
            },
            {
                "id": "ww_03",
                "title": "Reading a CVC Word",
                "type": "quiz",
                "question": "What does this word say? [bold white]HOP[/bold white]",
                "lesson": "[bold white]HOP[/bold white] — H-O-P. Short O in the middle. Bunnies hop!",
                "options": ["hip", "heap", "hop", "help"],
                "answer": "c",
                "hints": ["H-O-P. Sound each letter out!", "What does a bunny do? HOP!"],
                "xp": 45,
            },
            {
                "id": "ww_04",
                "title": "Silent E Words",
                "type": "quiz",
                "question": "Add a silent E to [bold white]cap[/bold white]. What new word do you get?",
                "lesson": "A silent E at the end makes the vowel say its long sound! [bold white]cap → cape[/bold white], [bold white]pin → pine[/bold white], [bold white]hop → hope[/bold white].",
                "options": ["cup", "cape", "cop", "cap"],
                "answer": "b",
                "hints": ["Silent E is a magic letter — it changes the vowel's sound!", "cap + e = cape (like a superhero wears!)"],
                "xp": 50,
            },
            {
                "id": "ww_05",
                "title": "Compound Words",
                "type": "quiz",
                "question": "What do you get when you put [bold yellow]SUN[/bold yellow] and [bold yellow]FLOWER[/bold yellow] together?",
                "lesson": "Compound words are two words joined together! [bold white]Sun + flower = sunflower[/bold white]. The meaning is mixed together too!",
                "options": ["Raindrop", "Sunflower", "Butterfly", "Snowball"],
                "answer": "b",
                "hints": ["Sun + flower = ?", "It's a tall flower that faces the sun!"],
                "xp": 50,
            },
            {
                "id": "ww_boss",
                "title": "A Longer Word",
                "type": "quiz",
                "question": "Sound out this word: [bold white]BASKET[/bold white]\nHow many syllables (beats) does it have?",
                "lesson": "[bold white]BAS-KET[/bold white] — two syllables! Clap once for BAS, once for KET. Longer words have multiple beats.",
                "options": ["1", "2", "3", "4"],
                "answer": "b",
                "hints": ["Clap as you say it: BAS (clap) KET (clap)", "BAS-KET = two claps = two syllables!"],
                "xp": 90,
                "is_boss": True,
            },
        ],
    },

    "rhyming_river": {
        "id": "rhyming_river",
        "name": "The Rhyming River",
        "description": "Words that sound the same at the end",
        "level_required": 6,
        "challenges": [
            {
                "id": "rr_01",
                "title": "The -AT Family",
                "type": "quiz",
                "question": "Which word rhymes with [bold white]cat[/bold white]?",
                "lesson": "Rhyming words share the same ending sound. [bold yellow]Cat[/bold yellow] ends in '-at'. So do [bold white]hat, bat, mat, sat[/bold white] — they're all in the same rhyme family!",
                "options": ["dog", "cup", "hat", "pen"],
                "answer": "c",
                "hints": ["Cat ends in '-at'. Listen for another word ending in '-at'!", "Hat: H-AT. Cat: C-AT. Same ending!"],
                "xp": 30,
            },
            {
                "id": "rr_02",
                "title": "The -OG Family",
                "type": "quiz",
                "question": "Puck floats over the river, which shimmers with rhymes. Which word does NOT rhyme with [bold white]dog[/bold white]?",
                "lesson": "Dog, log, fog, hog all end in '-og'. They flow down the same part of the river together! A word that doesn't share that ending doesn't rhyme.",
                "options": ["log", "fog", "hog", "dig"],
                "answer": "d",
                "hints": ["Dog ends in '-og'. Do all four words end in '-og'?", "Log, fog, hog all end in '-og'. What about 'dig'?"],
                "xp": 30,
            },
            {
                "id": "rr_03",
                "title": "The -UN Family",
                "type": "quiz",
                "question": "Which word rhymes with [bold white]sun[/bold white]?",
                "lesson": "[bold yellow]Sun[/bold yellow] ends in '-un'. The '-un' family is full of happy words: [bold white]run, fun, bun, gun[/bold white]. They all dance together on the river!",
                "options": ["sit", "run", "top", "map"],
                "answer": "b",
                "hints": ["Sun ends in '-un'. Which word also ends in '-un'?", "Run: R-UN. Sun: S-UN. Same ending!"],
                "xp": 30,
            },
            {
                "id": "rr_04",
                "title": "Spot the Rhyme",
                "type": "quiz",
                "question": "Do [bold white]hop[/bold white] and [bold white]top[/bold white] rhyme?",
                "lesson": "Hop ends in '-op'. Top also ends in '-op'. When two words share their ending sound, they rhyme — like two little boats floating side by side!",
                "options": ["Yes, they rhyme!", "No, they don't rhyme", "Only if they start the same", "I'm not sure"],
                "answer": "a",
                "hints": ["Hop: h-OP. Top: t-OP. Do the endings sound the same?", "'-op' and '-op' — they match!"],
                "xp": 35,
            },
            {
                "id": "rr_05",
                "title": "Find the Odd One Out",
                "type": "quiz",
                "question": "Three of these words rhyme. Which one is the odd one out?\n[bold white]king — ring — sing — lamp[/bold white]",
                "lesson": "King, ring, and sing all end in '-ing'. Lamp ends in '-amp'. Lamp doesn't belong in this rhyme family!",
                "options": ["king", "ring", "sing", "lamp"],
                "answer": "d",
                "hints": ["Say each word out loud. Three share the same ending sound!", "King, ring, sing all end in '-ing'. What about lamp?"],
                "xp": 35,
            },
            {
                "id": "rr_boss",
                "title": "Complete the Rhyme",
                "type": "quiz",
                "question": "Puck sings a little poem:\n[bold white]I see a frog,\nSitting on a ___.[/bold white]\nWhich word completes the rhyme?",
                "lesson": "Frog ends in '-og'. To complete the rhyme, we need a word that also ends in '-og'. Log is perfect — and frogs really do sit on logs!",
                "options": ["rock", "pond", "log", "leaf"],
                "answer": "c",
                "hints": ["Frog ends in '-og'. What word on the list also ends in '-og'?", "Log — frogs love sitting on logs by the river!"],
                "xp": 70,
                "is_boss": True,
            },
        ],
    },

    "sight_word_station": {
        "id": "sight_word_station",
        "name": "The Sight Word Station",
        "description": "Words every reader needs to know by heart",
        "level_required": 7,
        "challenges": [
            {
                "id": "sw_01",
                "title": "The Most Magic Word",
                "type": "quiz",
                "question": "Which word is [bold yellow]THE[/bold yellow]?",
                "lesson": "[bold yellow]The[/bold yellow] is the most common word in the English language! Puck calls it the most magic word, because it shows up in almost every sentence you'll ever read.",
                "options": ["teh", "hte", "the", "tbe"],
                "answer": "c",
                "hints": ["The starts with T-H. Look for T-H-E!", "T-H-E spells THE."],
                "xp": 25,
            },
            {
                "id": "sw_02",
                "title": "Small but Mighty Words",
                "type": "quiz",
                "question": "Which sentence uses the word [bold yellow]and[/bold yellow] correctly?",
                "lesson": "[bold yellow]And[/bold yellow], [bold yellow]is[/bold yellow], [bold yellow]it[/bold yellow], [bold yellow]in[/bold yellow], [bold yellow]on[/bold yellow] — these tiny words are everywhere! Puck says: memorize them by heart, because they're the glue that holds sentences together.",
                "options": ["The cat sat and.", "The cat and dog play.", "And the the cat.", "Is on and it."],
                "answer": "b",
                "hints": ["'And' joins two things together — like cat AND dog!", "Look for the sentence that makes sense with 'and' in the middle."],
                "xp": 30,
            },
            {
                "id": "sw_03",
                "title": "Was, Are, His, Her",
                "type": "quiz",
                "question": "Fill in the blank:\n[bold white]The dog wagged ___ tail.[/bold white]\nWhich sight word fits?",
                "lesson": "[bold yellow]His[/bold yellow] and [bold yellow]her[/bold yellow] tell us who something belongs to. His is for a boy or a male animal. Her is for a girl or a female animal.",
                "options": ["was", "are", "its", "they"],
                "answer": "c",
                "hints": ["We need a word that means 'belonging to the dog'.", "'Its' means belonging to it — the dog wagged its own tail!"],
                "xp": 30,
            },
            {
                "id": "sw_04",
                "title": "Question Words",
                "type": "quiz",
                "question": "Puck asks: 'Which word would start a question about a place?'\n[bold white]___ do you live?[/bold white]",
                "lesson": "[bold yellow]What, when, where, how[/bold yellow] are sight words that start questions. Where asks about a place. When asks about time. What asks about a thing. How asks about the way something works.",
                "options": ["What", "When", "Where", "How"],
                "answer": "c",
                "hints": ["The blank asks about a PLACE — where you live.", "WHERE asks about places!"],
                "xp": 35,
            },
            {
                "id": "sw_05",
                "title": "Read the Sentence",
                "type": "quiz",
                "question": "Read this sentence carefully:\n[bold white]They are going to the park.[/bold white]\n\nHow many sight words are in this sentence?",
                "lesson": "They, are, to, the — that's [bold yellow]4 sight words[/bold yellow]! Sight words are so common that good readers recognize them instantly, without sounding them out.",
                "options": ["2", "3", "4", "5"],
                "answer": "c",
                "hints": ["Look for: they, are, to, the — small common words!", "They... are... to... the. Count them!"],
                "xp": 35,
            },
            {
                "id": "sw_boss",
                "title": "Fill in the Story",
                "type": "quiz",
                "question": "Choose the sight word that best completes this sentence:\n[bold white]Puck ___ very small and very bright.[/bold white]",
                "lesson": "[bold yellow]Was[/bold yellow] tells us about something in the past. Puck WAS small and bright — that's how we describe things that already happened!",
                "options": ["is", "was", "are", "were"],
                "answer": "b",
                "hints": ["This sentence is about something in the past — Puck already IS those things, but this sentence tells us Puck WAS that way.", "Was is the past of 'is' — one person, past tense!"],
                "xp": 70,
                "is_boss": True,
            },
        ],
    },

    "reading_full_sentences": {
        "id": "reading_full_sentences",
        "name": "The Reading Room",
        "description": "Read a sentence and understand what it means",
        "level_required": 8,
        "challenges": [
            {
                "id": "rf_01",
                "title": "Who Is It About?",
                "type": "quiz",
                "question": "Read this sentence:\n[bold white]The bird sings.[/bold white]\n\nWho is the sentence about?",
                "lesson": "Every sentence has someone or something it's about — we call that the subject. In [bold white]The bird sings[/bold white], the bird is the subject. The bird is the one doing the action!",
                "options": ["The tree", "The nest", "The bird", "The song"],
                "answer": "c",
                "hints": ["Who is doing something in this sentence?", "The bird is doing the singing — the bird is what the sentence is about!"],
                "xp": 35,
            },
            {
                "id": "rf_02",
                "title": "What Are They Doing?",
                "type": "quiz",
                "question": "Read this sentence:\n[bold white]The dog runs fast.[/bold white]\n\nWhat is the dog doing?",
                "lesson": "The action word tells us what's happening. [bold white]Runs[/bold white] is the action word here — it tells us what the dog is doing. Fast tells us HOW it runs!",
                "options": ["sleeping", "eating", "running", "jumping"],
                "answer": "c",
                "hints": ["Look for the word that tells what the dog is DOING.", "Runs — the dog is running!"],
                "xp": 35,
            },
            {
                "id": "rf_03",
                "title": "Where Does It Happen?",
                "type": "quiz",
                "question": "Read this sentence:\n[bold white]The frog sat by the pond.[/bold white]\n\nWhere did the frog sit?",
                "lesson": "Sentences often tell us WHERE something happens. [bold white]By the pond[/bold white] tells us the frog's location. Look for words like by, in, on, under, and next to — they show where!",
                "options": ["in the tree", "on a log", "by the pond", "under a leaf"],
                "answer": "c",
                "hints": ["Look for the word that tells WHERE something is.", "By the pond — that's where the frog sat!"],
                "xp": 35,
            },
            {
                "id": "rf_04",
                "title": "A Two-Sentence Story",
                "type": "quiz",
                "question": "Read these two sentences:\n[bold white]Nell found a little cat. The cat was orange and fluffy.[/bold white]\n\nWhat color was the cat?",
                "lesson": "When you read more than one sentence, each one adds more information. The first sentence tells us Nell found a cat. The second tells us MORE about that cat — its color and how it felt!",
                "options": ["gray and soft", "black and small", "orange and fluffy", "white and thin"],
                "answer": "c",
                "hints": ["Read the second sentence — it tells you more about the cat.", "The cat was orange and fluffy!"],
                "xp": 40,
            },
            {
                "id": "rf_05",
                "title": "Who Did What?",
                "type": "quiz",
                "question": "Read this:\n[bold white]Puck flew to the window. Nell waved hello.[/bold white]\n\nWho waved hello?",
                "lesson": "When a story has more than one character, we have to pay attention to who is doing what! Puck flew — Nell waved. Each sentence tells us what ONE person did.",
                "options": ["Puck", "Nell", "The cat", "The window"],
                "answer": "b",
                "hints": ["The second sentence tells us who waved.", "Nell waved hello — Nell is in the second sentence!"],
                "xp": 40,
            },
            {
                "id": "rf_boss",
                "title": "A Mini Story",
                "type": "quiz",
                "question": "Read this whole story:\n[bold white]It was a rainy day. Nell stayed inside with her book. Puck kept her company all afternoon.[/bold white]\n\nWhat was the weather like?",
                "lesson": "A paragraph tells us a whole little story. The very first sentence gives us important information — like setting the scene! It was a RAINY day — that's why Nell stayed inside.",
                "options": ["sunny and warm", "cold and snowy", "rainy", "windy"],
                "answer": "c",
                "hints": ["The first sentence tells you about the weather!", "It was a rainy day."],
                "xp": 80,
                "is_boss": True,
            },
        ],
    },

    "sentence_city": {
        "id": "sentence_city",
        "name": "Sentence City",
        "description": "Read complete sentences",
        "level_required": 5,
        "challenges": [
            {
                "id": "sc_01",
                "title": "A Simple Sentence",
                "type": "quiz",
                "question": "Read this sentence:\n[bold white]The cat sat on the mat.[/bold white]\n\nWhere did the cat sit?",
                "lesson": "A sentence tells us a complete thought. Who? (the cat) Did what? (sat) Where? (on the mat).",
                "options": ["On the floor", "On the mat", "On the bed", "In the tree"],
                "answer": "b",
                "hints": ["Read the sentence again — it tells you exactly where!", "On the...?"],
                "xp": 50,
            },
            {
                "id": "sc_02",
                "title": "Describing Words",
                "type": "quiz",
                "question": "Read this:\n[bold white]The big red ball rolled down the hill.[/bold white]\n\nWhat two words describe the ball?",
                "lesson": "Describing words (adjectives) tell us more about things. In [bold white]big red ball[/bold white], 'big' and 'red' describe the ball.",
                "options": ["round and fast", "small and blue", "big and red", "soft and heavy"],
                "answer": "c",
                "hints": ["Look for the words that come before 'ball'", "Big __ ball — what color is it?"],
                "xp": 55,
            },
            {
                "id": "sc_03",
                "title": "Action Words",
                "type": "quiz",
                "question": "Read this:\n[bold white]The happy dog jumped over the fence.[/bold white]\n\nWhat action word (verb) is in this sentence?",
                "lesson": "Action words (verbs) tell us what's happening. [bold white]Jumped[/bold white] is the action word — it tells us what the dog did.",
                "options": ["happy", "dog", "jumped", "fence"],
                "answer": "c",
                "hints": ["What did the dog DO?", "Jumped! That's the action!"],
                "xp": 55,
            },
            {
                "id": "sc_04",
                "title": "Question Sentences",
                "type": "quiz",
                "question": "Read this question:\n[bold white]Is today a sunny day?[/bold white]\n\nHow do you know this is a question?",
                "lesson": "Questions end with a question mark [bold yellow]?[/bold yellow]. They ask something instead of telling something.",
                "options": ["It starts with Is", "It ends with a question mark ?", "It has the word 'day'", "All of the above"],
                "answer": "d",
                "hints": ["Look at the punctuation at the end!", "Questions start with words like Is, Are, Can, Do — and end with ?"],
                "xp": 55,
            },
            {
                "id": "sc_05",
                "title": "Reading for Meaning",
                "type": "quiz",
                "question": "Read carefully:\n[bold white]Nell loved books more than anything. Every night she read one story before bed.[/bold white]\n\nHow often did Nell read a story?",
                "lesson": "Good readers understand the meaning behind words. [bold white]Every night[/bold white] means she read [italic]each and every[/italic] night — not just sometimes!",
                "options": ["Sometimes", "Every night", "Only on weekends", "Once a week"],
                "answer": "b",
                "hints": ["Look for the words about time — 'every night'", "Every night means each night!"],
                "xp": 60,
            },
            {
                "id": "sc_boss",
                "title": "A Whole Paragraph",
                "type": "quiz",
                "question": "Read this:\n[bold white]Puck lived inside the book. When Nell opened the pages, Puck flew out to say hello. Puck was small but very wise, and knew every letter and every word.[/bold white]\n\nWhat is this paragraph mostly about?",
                "lesson": "A paragraph is a group of sentences about one main idea. This paragraph is about Puck — who Puck is and what Puck knows.",
                "options": ["What Nell likes to eat", "Who Puck is", "How to open a book", "What letters are"],
                "answer": "b",
                "hints": ["Every sentence in this paragraph mentions Puck!", "The paragraph tells you about Puck — where Puck lives, what Puck does, what Puck knows."],
                "xp": 100,
                "is_boss": True,
            },
        ],
    },

    "word_building": {
        "id": "word_building",
        "name": "The Word Building Workshop",
        "description": "Snap letters together to build real words",
        "level_required": 9,
        "challenges": [
            {
                "id": "wb_01",
                "title": "S + UN",
                "type": "quiz",
                "question": "What do you get when you put [bold yellow]S[/bold yellow] + [bold yellow]UN[/bold yellow] together?",
                "lesson": "S + UN = [bold yellow]SUN[/bold yellow]! The S sound at the front, then 'un' — and you have the word for the big bright star in the sky!",
                "options": ["sun", "son", "sin", "sat"],
                "answer": "a",
                "hints": ["Say the S sound, then say UN — what word does that make?", "S... UN... SUN! Like the shining sun!"],
                "xp": 30,
            },
            {
                "id": "wb_02",
                "title": "H + AT",
                "type": "quiz",
                "question": "Add the letter [bold yellow]H[/bold yellow] before [bold yellow]AT[/bold yellow] — what word do you make?",
                "lesson": "H + AT = [bold yellow]HAT[/bold yellow]! You wear a hat on your head. The H sound at the front snaps right onto AT.",
                "options": ["hot", "hat", "hit", "hut"],
                "answer": "b",
                "hints": ["Say 'H' then say 'AT' quickly — listen to what word pops out!", "H... AT... HAT! You wear it on your head!"],
                "xp": 30,
            },
            {
                "id": "wb_03",
                "title": "Which Letters Make BIG?",
                "type": "quiz",
                "question": "Which set of letters spells the word [bold yellow]BIG[/bold yellow]?",
                "lesson": "[bold yellow]B-I-G[/bold yellow] spells BIG. The B sound, the short I sound (like in [italic]igloo[/italic]), and the G sound at the end.",
                "options": ["b-i-g", "b-e-g", "b-o-g", "b-u-g"],
                "answer": "a",
                "hints": ["BIG has the short I sound — like in igloo!", "B... I... G. Not E, not O, not U — it's I!"],
                "xp": 35,
            },
            {
                "id": "wb_04",
                "title": "Change the First Letter",
                "type": "quiz",
                "question": "Change the first letter of [bold yellow]CAT[/bold yellow] to [bold yellow]M[/bold yellow]. What new word do you make?",
                "lesson": "CAT → [bold yellow]MAT[/bold yellow]! Just swap the C for an M. A mat is something you put on the floor — like a doormat!",
                "options": ["mat", "met", "mit", "mut"],
                "answer": "a",
                "hints": ["Take away the C from CAT and put M in its place!", "M + AT = ?"],
                "xp": 35,
            },
            {
                "id": "wb_05",
                "title": "A Real Word",
                "type": "quiz",
                "question": "Which of these is a real word?",
                "lesson": "[bold yellow]PLOP[/bold yellow] is a real word! It's the sound something makes when it lands in water — plop! The others are just made-up letter jumbles.",
                "options": ["trf", "plop", "xkq", "bvz"],
                "answer": "b",
                "hints": ["Try saying each one out loud — which one sounds like a real English word?", "Plop! Like when a frog jumps into a pond — plop!"],
                "xp": 35,
            },
            {
                "id": "wb_boss",
                "title": "Put the Letters in Order",
                "type": "quiz",
                "question": "Put these letters in order to make a real word: [bold yellow]T, A, S[/bold yellow]",
                "lesson": "T, A, S → [bold yellow]SAT[/bold yellow]! When you arrange the letters S-A-T, you get the word SAT — like 'The cat [italic]sat[/italic] on the mat.'",
                "options": ["sat", "tsa", "ats", "tas"],
                "answer": "a",
                "hints": ["Try putting S first — S, then A, then T. What word is that?", "SAT — like 'I sat down in my chair.'"],
                "xp": 60,
                "is_boss": True,
            },
        ],
    },

    "story_time": {
        "id": "story_time",
        "name": "Story Time Theater",
        "description": "Read little stories and answer questions",
        "level_required": 10,
        "challenges": [
            {
                "id": "st_01",
                "title": "The Cat on the Mat",
                "type": "quiz",
                "question": "[bold white]\"The cat sat on the mat. The cat was fat.\"[/bold white]\n\nWhat did the cat sit on?",
                "lesson": "The story says: 'The cat sat on the [bold yellow]mat[/bold yellow].' Reading carefully means finding the exact answer in the words!",
                "options": ["a rug", "the mat", "a chair", "the floor"],
                "answer": "b",
                "hints": ["Read the first sentence again — where did the cat sit?", "The cat sat on the... mat!"],
                "xp": 30,
            },
            {
                "id": "st_02",
                "title": "Describing the Cat",
                "type": "quiz",
                "question": "[bold white]\"The cat sat on the mat. The cat was fat.\"[/bold white]\n\nHow is the cat described?",
                "lesson": "The story says 'The cat was [bold yellow]fat[/bold yellow].' That word tells us what the cat is like — it describes the cat!",
                "options": ["thin", "small", "fat", "fast"],
                "answer": "c",
                "hints": ["Look at the second sentence — it uses a describing word about the cat!", "The cat was... fat!"],
                "xp": 30,
            },
            {
                "id": "st_03",
                "title": "Ben's Hat",
                "type": "quiz",
                "question": "[bold white]\"Ben has a red hat. He loves his hat.\"[/bold white]\n\nWhat color is Ben's hat?",
                "lesson": "The story says Ben has a [bold yellow]red[/bold yellow] hat. Color words help us picture what things look like!",
                "options": ["blue", "green", "red", "yellow"],
                "answer": "c",
                "hints": ["Read the first sentence — what color word do you see?", "Ben has a... red hat!"],
                "xp": 30,
            },
            {
                "id": "st_04",
                "title": "How Ben Feels",
                "type": "quiz",
                "question": "[bold white]\"Ben has a red hat. He loves his hat.\"[/bold white]\n\nHow does Ben feel about his hat?",
                "lesson": "'He [bold yellow]loves[/bold yellow] his hat' tells us Ben's feelings. Love is a very strong, happy feeling!",
                "options": ["sad", "loves it", "lost it", "broke it"],
                "answer": "b",
                "hints": ["Read the second sentence — what word tells you how Ben feels?", "He... loves his hat!"],
                "xp": 35,
            },
            {
                "id": "st_05",
                "title": "The Running Dog",
                "type": "quiz",
                "question": "[bold white]\"The big dog ran fast to get the ball.\"[/bold white]\n\nWhat did the dog run to get?",
                "lesson": "The dog ran to get [bold yellow]the ball[/bold yellow]. Reading tells us the reason the dog ran — to fetch!",
                "options": ["a stick", "a bone", "the ball", "a toy"],
                "answer": "c",
                "hints": ["Read to the end of the sentence — what was the dog going for?", "The dog ran to get... the ball!"],
                "xp": 35,
            },
            {
                "id": "st_boss",
                "title": "Lily and the Bird",
                "type": "quiz",
                "question": "[bold white]\"Lily saw a little bird in the tree. The bird sang a song. Lily smiled.\"[/bold white]\n\nWhy did Lily smile?",
                "lesson": "Lily smiled because [bold yellow]the bird sang[/bold yellow] a song. Good readers look for the reason behind what happens — the [italic]why[/italic]!",
                "options": ["she was hungry", "the bird sang", "it was sunny", "she was tired"],
                "answer": "b",
                "hints": ["What happened just before Lily smiled?", "The bird sang a song... and then Lily smiled. The bird's singing made her happy!"],
                "xp": 60,
                "is_boss": True,
            },
        ],
    },

    "punctuation_plaza": {
        "id": "punctuation_plaza",
        "name": "Punctuation Plaza",
        "description": "Learn the marks that give writing its voice",
        "level_required": 11,
        "challenges": [
            {
                "id": "pp_01",
                "title": "The Period",
                "type": "quiz",
                "question": "What mark do we put at the end of a sentence that tells us something?",
                "lesson": "A [bold yellow]period[/bold yellow] (.) ends a sentence that tells us something. [bold white]The cat sat on the mat.[/bold white] See the dot at the end? That's a period!",
                "options": ["!", ".", "?", ","],
                "answer": "b",
                "hints": ["It's a tiny dot.", "A sentence that tells us something ends with a period."],
                "xp": 30,
            },
            {
                "id": "pp_02",
                "title": "The Question Mark",
                "type": "quiz",
                "question": "What mark do we put at the end of a question?",
                "lesson": "A [bold yellow]question mark[/bold yellow] (?) goes at the end of a question. [bold white]Where is my hat?[/bold white] The ? tells us someone wants an answer!",
                "options": [".", "!", ",", "?"],
                "answer": "d",
                "hints": ["When you ask something, you need a special mark.", "It looks like a curly hook with a dot — ?"],
                "xp": 30,
            },
            {
                "id": "pp_03",
                "title": "The Exclamation Mark",
                "type": "quiz",
                "question": "What mark shows excitement or surprise?",
                "lesson": "An [bold yellow]exclamation mark[/bold yellow] (!) shows strong feeling — excitement, surprise, or emphasis. [bold white]I won the race![/bold white] That ! shows how thrilled we are!",
                "options": ["?", ".", "!", ","],
                "answer": "c",
                "hints": ["It's used when something is exciting or surprising.", "It looks like a straight line with a dot below — !"],
                "xp": 30,
            },
            {
                "id": "pp_04",
                "title": "Right Punctuation",
                "type": "quiz",
                "question": "Which sentence uses the correct punctuation?",
                "lesson": "[bold white]Where are you going?[/bold white] is a question, so it needs a question mark at the end. Every sentence needs the right mark to say what kind of sentence it is!",
                "options": ["Where are you going?", "Where are you going!", "Where are you going.", "Where are you going"],
                "answer": "a",
                "hints": ["This sentence is asking something — what mark goes after a question?", "A question needs a ? at the end."],
                "xp": 30,
            },
            {
                "id": "pp_05",
                "title": "The Comma",
                "type": "quiz",
                "question": "What does a comma do in a sentence?",
                "lesson": "A [bold yellow]comma[/bold yellow] (,) creates a small pause. [bold white]I like cats, dogs, and rabbits.[/bold white] Without commas, all those words would rush together!",
                "options": ["ends a sentence", "shows a small pause", "shows surprise", "asks a question"],
                "answer": "b",
                "hints": ["When you read out loud, a comma is where you take a tiny breath.", "It separates items in a list and creates pauses."],
                "xp": 30,
            },
            {
                "id": "pp_boss",
                "title": "Finish the Sentence",
                "type": "quiz",
                "question": "\"The dog ran fast__\" — which mark correctly completes this sentence?",
                "lesson": "[bold white]The dog ran fast.[/bold white] This sentence tells us something — it's not a question and it's not especially exciting, so it ends with a [bold yellow]period[/bold yellow].",
                "options": ["?", "!", ".", ","],
                "answer": "c",
                "hints": ["Is this sentence asking something? Is it showing strong excitement?", "It's telling us a fact — the dog ran fast. A period ends a telling sentence."],
                "xp": 60,
                "is_boss": True,
            },
        ],
    },
}
