{
  "grades": ["Playgroup", "Nursery", "Prep", "Kindergarten", "Grade 1", "Grade 2", "Grade 3", "Grade 4", "Grade 5"],
  "gradeOffset": 3,
  "subjects": {
    "math":    { "name": "Math",           "emoji": "🧮", "color": "#7c5cff" },
    "reading": { "name": "Reading",        "emoji": "📚", "color": "#ff6b6b" },
    "world":   { "name": "Explore",        "emoji": "🌍", "color": "#2ec4b6" },
    "algebra": { "name": "Algebra Quest",  "emoji": "🧩", "color": "#4d96ff", "path": true },
    "games":   { "name": "Brain Games",    "emoji": "🧠", "color": "#ef476f" },
    "create":  { "name": "Play & Create",  "emoji": "🎨", "color": "#ffb020" }
  },
  "topics": [
    { "id": "shapes",          "subject": "math", "name": "Shapes",           "emoji": "🔷", "grades": [-3, 0] },
    { "id": "sizes",           "subject": "math", "name": "Big & Small",      "emoji": "📏", "grades": [-3, -1] },
    { "id": "counting",        "subject": "math", "name": "Counting",         "emoji": "🔢", "grades": [-2, 1] },
    { "id": "patterns",        "subject": "math", "name": "Patterns",         "emoji": "🔁", "grades": [-2, 2] },
    { "id": "compare",         "subject": "math", "name": "Compare Numbers",  "emoji": "🐊", "grades": [-1, 3] },
    { "id": "addition",        "subject": "math", "name": "Addition",         "emoji": "➕", "grades": [-1, 4] },
    { "id": "missing-number",  "subject": "math", "name": "Missing Numbers",  "emoji": "🕳️", "grades": [0, 2] },
    { "id": "number-bonds",    "subject": "math", "name": "Make the Number",  "emoji": "🔟", "grades": [0, 2], "pro": true },
    { "id": "subtraction",     "subject": "math", "name": "Subtraction",      "emoji": "➖", "grades": [0, 4] },
    { "id": "time",            "subject": "math", "name": "Telling Time",     "emoji": "🕒", "grades": [1, 3] },
    { "id": "even-odd",        "subject": "math", "name": "Even & Odd",       "emoji": "⚖️", "grades": [1, 3], "pro": true },
    { "id": "money",           "subject": "math", "name": "Money",            "emoji": "💰", "grades": [1, 3], "pro": true },
    { "id": "saving-spending", "subject": "math", "name": "Saving & Spending", "emoji": "🐷", "grades": [0, 4] },
    { "id": "pictographs",     "subject": "math", "name": "Picture Graphs",   "emoji": "📊", "grades": [1, 3], "pro": true },
    { "id": "place-value",     "subject": "math", "name": "Place Value",      "emoji": "🏛️", "grades": [1, 4] },
    { "id": "geometry",        "subject": "math", "name": "Sides & Areas",    "emoji": "📐", "grades": [1, 4], "pro": true },
    { "id": "word-problems",   "subject": "math", "name": "Word Problems",    "emoji": "📝", "grades": [1, 5] },
    { "id": "multiplication",  "subject": "math", "name": "Multiplication",   "emoji": "✖️", "grades": [2, 5] },
    { "id": "fractions",       "subject": "math", "name": "Fractions",        "emoji": "🍕", "grades": [2, 5] },
    { "id": "division",        "subject": "math", "name": "Division",         "emoji": "➗", "grades": [3, 5] },
    { "id": "rounding",        "subject": "math", "name": "Rounding",         "emoji": "🎯", "grades": [3, 5], "pro": true },
    { "id": "decimals",        "subject": "math", "name": "Decimals",         "emoji": "🔘", "grades": [4, 5], "pro": true },
    { "id": "solids",          "subject": "math", "name": "3D Shapes",        "emoji": "🧊", "grades": [-1, 3] },
    { "id": "doubles",         "subject": "math", "name": "Doubles & Halves", "emoji": "✌️", "grades": [0, 4] },
    { "id": "measurement",     "subject": "math", "name": "Measuring",        "emoji": "🧰", "grades": [0, 5] },
    { "id": "angles",          "subject": "math", "name": "Angles",           "emoji": "🔺", "grades": [3, 5], "pro": true },
    { "id": "factors",         "subject": "math", "name": "Factors & Primes", "emoji": "🔑", "grades": [3, 5], "pro": true },
    { "id": "mental-math",     "subject": "math", "name": "Mental Math",      "emoji": "⚡", "grades": [1, 5] },
    { "id": "sequences",       "subject": "math", "name": "Sequences",        "emoji": "🔢", "grades": [2, 5] },
    { "id": "area-volume",     "subject": "math", "name": "Area & Volume",    "emoji": "📦", "grades": [2, 5] },
    { "id": "order-ops",       "subject": "math", "name": "Order of Operations", "emoji": "🧮", "grades": [3, 5] },
    { "id": "logic",           "subject": "math", "name": "Logic & Reasoning", "emoji": "🕵️", "grades": [1, 5] },
    { "id": "integers",        "subject": "math", "name": "Negative Numbers", "emoji": "🌡️", "grades": [3, 5], "pro": true },
    { "id": "percent-ratio",   "subject": "math", "name": "Percent & Ratio",  "emoji": "💯", "grades": [3, 5], "pro": true },
    { "id": "coordinates",     "subject": "math", "name": "Coordinates & Graphs", "emoji": "📍", "grades": [3, 5], "pro": true },
    { "id": "probability",     "subject": "math", "name": "Chance & Data",    "emoji": "🎲", "grades": [3, 5], "pro": true },

    { "id": "abc",             "subject": "reading", "name": "ABC Letters",      "emoji": "🅰️", "grades": [-2, 0] },
    { "id": "letters",         "subject": "reading", "name": "Letters & Sounds", "emoji": "🔤", "grades": [-1, 1] },
    { "id": "rhymes",          "subject": "reading", "name": "Rhyming Words",    "emoji": "🎵", "grades": [-1, 2] },
    { "id": "comprehension",   "subject": "reading", "name": "Story Time",       "emoji": "📖", "grades": [-1, 5], "bank": "stories", "length": 6 },
    { "id": "sight-words",     "subject": "reading", "name": "Sight Words",      "emoji": "👀", "grades": [0, 2] },
    { "id": "missing-vowel",   "subject": "reading", "name": "Missing Vowels",   "emoji": "🔡", "grades": [0, 2], "pro": true },
    { "id": "opposites",       "subject": "reading", "name": "Opposites",        "emoji": "↔️", "grades": [1, 4] },
    { "id": "spelling",        "subject": "reading", "name": "Spelling",         "emoji": "✏️", "grades": [1, 5] },
    { "id": "plurals",         "subject": "reading", "name": "One & Many",       "emoji": "👯", "grades": [1, 3], "pro": true },
    { "id": "sentence-order",  "subject": "reading", "name": "Sentence Builder", "emoji": "🧱", "grades": [1, 3], "pro": true },
    { "id": "punctuation",     "subject": "reading", "name": "Punctuation",      "emoji": "❗", "grades": [1, 4], "pro": true },
    { "id": "riddles",         "subject": "reading", "name": "Riddles",          "emoji": "🤔", "grades": [1, 5], "pro": true, "bank": "riddles" },
    { "id": "synonyms",        "subject": "reading", "name": "Same Meaning",     "emoji": "🔗", "grades": [2, 5] },
    { "id": "parts-of-speech", "subject": "reading", "name": "Word Types",       "emoji": "🏷️", "grades": [2, 5], "pro": true },
    { "id": "vocabulary",      "subject": "reading", "name": "Word Meanings",    "emoji": "📘", "grades": [2, 5], "pro": true, "bank": "vocab" },
    { "id": "compound-words",  "subject": "reading", "name": "Compound Words",   "emoji": "🌻", "grades": [0, 3] },
    { "id": "word-links",      "subject": "reading", "name": "Word Links",       "emoji": "🧲", "grades": [0, 5] },
    { "id": "homophones",      "subject": "reading", "name": "Sound-Alikes",     "emoji": "👂", "grades": [1, 5] },
    { "id": "affixes",         "subject": "reading", "name": "Prefixes & Suffixes", "emoji": "🧷", "grades": [2, 5], "pro": true },

    { "id": "colors",          "subject": "world", "name": "Colors",            "emoji": "🌈", "grades": [-3, -1] },
    { "id": "animal-sounds",   "subject": "world", "name": "Animal Sounds",     "emoji": "🐮", "grades": [-3, 0] },
    { "id": "odd-one-out",     "subject": "world", "name": "Odd One Out",       "emoji": "🧺", "grades": [-2, 2] },
    { "id": "animals",         "subject": "world", "name": "Animal World",      "emoji": "🦁", "grades": [-2, 3], "bank": "world" },
    { "id": "nature",          "subject": "world", "name": "Plants & Weather",  "emoji": "🌦️", "grades": [-1, 3], "bank": "world" },
    { "id": "body",            "subject": "world", "name": "My Body & Health",  "emoji": "💪", "grades": [-1, 4], "pro": true, "bank": "world" },
    { "id": "space",           "subject": "world", "name": "Space",             "emoji": "🚀", "grades": [0, 5], "pro": true, "bank": "world" },
    { "id": "science",         "subject": "world", "name": "Science Lab",       "emoji": "🔬", "grades": [0, 5], "pro": true, "bank": "world" },
    { "id": "geography",       "subject": "world", "name": "Our World",         "emoji": "🗺️", "grades": [0, 5], "pro": true, "bank": "world" },
    { "id": "community",       "subject": "world", "name": "Helpers & Safety",  "emoji": "🚒", "grades": [-2, 1], "bank": "world" },
    { "id": "dinosaurs",       "subject": "world", "name": "Dinosaurs",         "emoji": "🦕", "grades": [-1, 3], "bank": "world" },
    { "id": "history",         "subject": "world", "name": "People & Inventions", "emoji": "💡", "grades": [1, 5], "pro": true, "bank": "world" },

    { "id": "alg-expressions",  "subject": "algebra", "name": "1 · Variables & Expressions", "emoji": "🔤", "grades": [2, 5], "lesson": true },
    { "id": "alg-substitution", "subject": "algebra", "name": "2 · Substitution",            "emoji": "🔁", "grades": [3, 5], "lesson": true, "requires": ["alg-expressions"] },
    { "id": "alg-like-terms",   "subject": "algebra", "name": "3 · Like Terms",              "emoji": "🧺", "grades": [3, 5], "lesson": true, "requires": ["alg-substitution"] },
    { "id": "alg-balance",      "subject": "algebra", "name": "4 · Balancing Equations",     "emoji": "⚖️", "grades": [2, 5], "lesson": true, "requires": ["alg-expressions"] },
    { "id": "alg-one-step",     "subject": "algebra", "name": "5 · One-Step Equations",      "emoji": "1️⃣", "grades": [2, 5], "lesson": true, "requires": ["alg-balance"] },
    { "id": "alg-two-step",     "subject": "algebra", "name": "6 · Two-Step Equations",      "emoji": "2️⃣", "grades": [3, 5], "lesson": true, "requires": ["alg-one-step"], "pro": true },
    { "id": "alg-distributive", "subject": "algebra", "name": "7 · Brackets (Distributive)", "emoji": "🎁", "grades": [4, 5], "lesson": true, "requires": ["alg-like-terms", "alg-two-step"], "pro": true },
    { "id": "alg-both-sides",   "subject": "algebra", "name": "8 · Variables on Both Sides", "emoji": "↔️", "grades": [4, 5], "lesson": true, "requires": ["alg-distributive"], "pro": true },
    { "id": "alg-neg-frac",     "subject": "algebra", "name": "9 · Negatives & Fractions",   "emoji": "➗", "grades": [4, 5], "lesson": true, "requires": ["alg-two-step"], "pro": true },
    { "id": "alg-word",         "subject": "algebra", "name": "10 · Word Problems",          "emoji": "📝", "grades": [3, 5], "lesson": true, "requires": ["alg-two-step"], "pro": true },
    { "id": "alg-functions",    "subject": "algebra", "name": "11 · Patterns & Functions",   "emoji": "📈", "grades": [3, 5], "lesson": true, "requires": ["alg-substitution"], "pro": true },
    { "id": "alg-mixed",        "subject": "algebra", "name": "12 · Mixed Mastery",          "emoji": "🏆", "grades": [4, 5], "lesson": true, "requires": ["alg-both-sides", "alg-word"], "pro": true },

    { "id": "petal-puzzles",   "subject": "games", "name": "Petal Puzzles",  "emoji": "🌼", "grades": [0, 5],  "kind": "activity" },
    { "id": "speed-sums",      "subject": "games", "name": "Speed Sums",     "emoji": "⚡", "grades": [0, 5],  "kind": "activity" },
    { "id": "hit-target",      "subject": "games", "name": "Hit the Target", "emoji": "🏹", "grades": [1, 5],  "kind": "activity", "pro": true },
    { "id": "sudoku",          "subject": "games", "name": "Mini Sudoku",    "emoji": "🔳", "grades": [-1, 5], "kind": "activity", "pro": true },
    { "id": "copy-cat",        "subject": "games", "name": "Copy Cat",       "emoji": "🐱", "grades": [-3, 5], "kind": "activity" },
    { "id": "bubble-pop",      "subject": "games", "name": "Bubble Pop",     "emoji": "🫧", "grades": [-1, 5], "kind": "activity" },
    { "id": "word-builder",    "subject": "games", "name": "Word Builder",   "emoji": "🏗️", "grades": [-1, 3], "kind": "activity" },
    { "id": "number-line",     "subject": "games", "name": "Number Line Hop", "emoji": "🐸", "grades": [0, 5], "kind": "activity" },
    { "id": "pair-up",         "subject": "games", "name": "Number Pairs",   "emoji": "🤝", "grades": [0, 5], "kind": "activity", "pro": true },
    { "id": "daily-challenge", "subject": "games", "name": "Daily Challenge", "emoji": "📅", "grades": [0, 5], "kind": "activity" },
    { "id": "equation-balance","subject": "games", "name": "Equation Balance", "emoji": "⚖️", "grades": [2, 5], "kind": "activity" },
    { "id": "sequence-detective","subject": "games", "name": "Sequence Detective", "emoji": "🔍", "grades": [1, 5], "kind": "activity" },
    { "id": "fraction-builder","subject": "games", "name": "Fraction Builder", "emoji": "🍫", "grades": [2, 5], "kind": "activity" },
    { "id": "logic-grid",      "subject": "games", "name": "Logic Grid",     "emoji": "🧩", "grades": [2, 5], "kind": "activity", "pro": true },
    { "id": "area-builder",    "subject": "games", "name": "Area Builder",   "emoji": "🟪", "grades": [2, 5], "kind": "activity" },

    { "id": "coloring",       "subject": "create", "name": "Color Studio",   "emoji": "🖍️", "grades": [-3, 5], "kind": "activity", "bank": "coloring" },
    { "id": "paint",           "subject": "create", "name": "Paint Studio",   "emoji": "🎨", "grades": [-3, 5], "kind": "activity" },
    { "id": "memory",          "subject": "create", "name": "Memory Match",   "emoji": "🃏", "grades": [-3, 5], "kind": "activity" },
    { "id": "jigsaw",          "subject": "create", "name": "Jigsaw Puzzles", "emoji": "🧩", "grades": [-3, 5], "kind": "activity", "bank": "coloring" },
    { "id": "maze",            "subject": "create", "name": "Mazes",          "emoji": "🌀", "grades": [-2, 5], "kind": "activity", "pro": true },
    { "id": "slide",           "subject": "create", "name": "Slide Puzzles",  "emoji": "🔲", "grades": [0, 5],  "kind": "activity", "pro": true, "bank": "coloring" }
  ]
}
