/* global window */
// Roadmap data: milestones arranged as bands (row groups) of rows; each row has
// cells either placed in a specific year column, or spanning multiple years.

const ROADMAP = /*EDITMODE-BEGIN*/{
  "student_name": "Your Student",
  "current_grade": 10,
  "date_label": "Spring 2026"
}/*EDITMODE-END*/;

const YEARS = [
  { id: 9,  label: "9th" },
  { id: 10, label: "10th" },
  { id: 11, label: "11th" },
  { id: 12, label: "12th" },
];

// Each milestone has: id, label, icon, from (year), to (year, inclusive), track,
// optional meta (small line under label), optional accent: true, and detail fields.
const MILESTONES = [
  // ========== ACADEMIC LANE ==========
  // Band: Coursework
  {
    id: "course-planning",
    track: "academic", band: "coursework",
    label: "Course planning",
    from: 9, to: 9,
    meta: "Map four-year rigor",
    stage: "Discovery",
    icon: "BookOpen",
    blurb: "Lay out every semester of the four years. The 5–4 rule: four years in each core (English, Math through Calc, History, Science, Language).",
    details: [
      "Confirm a path to Calculus by senior year",
      "Plan two of Biology, Chemistry, Physics",
      "Language through level 3 at minimum",
      "Identify honors + AP/IB options the school offers"
    ]
  },
  {
    id: "rigor-alignment",
    track: "academic", band: "coursework",
    label: "Academic alignment and progressive rigor",
    from: 10, to: 12,
    meta: "Pick relevant classes, year over year",
    stage: "Growth",
    icon: "TrendUp",
    blurb: "Every year, the rigor moves in one direction: up. You earn the next course by handling the current one — not by padding the transcript.",
    details: [
      "300-level in relevant subjects by 11th",
      "400-level (AP/IB/Honors) by 12th",
      "Prefer Calculus in 11th (or earlier) if ready",
      "Senior year schedule is still read closely by admissions"
    ]
  },

  // Band: Testing
  {
    id: "psat",
    track: "academic", band: "testing",
    label: "PSAT",
    from: 10, to: 10,
    meta: "October, find what your baseline is",
    stage: "Discovery",
    icon: "Target",
    blurb: "Sophomore PSAT sets the baseline for the junior-year PSAT/NMSQT, which is the one that matters for National Merit, and official SAT."
  },
  {
    id: "sat-act",
    track: "academic", band: "testing",
    label: "SAT / ACT",
    from: 11, to: 11,
    meta: "Be ready to take it twice; lock score by fall senior year",
    stage: "Planning",
    icon: "ClipboardCheck",
    blurb: "Plan two sittings. Start prep sophomore summer, sit in spring or early junior year, retake if needed. Most students are done before senior year starts."
  },

  // Band: Major
  {
    id: "interest-areas",
    track: "academic", band: "major",
    label: "Identify interest areas",
    from: 9, to: 10,
    meta: "What's drawing them in?",
    stage: "Discovery",
    icon: "Compass",
    blurb: "Before picking a major, notice what subjects they keep returning to — in and out of school. That's the raw material."
  },
  {
    id: "pick-major",
    track: "academic", band: "major",
    label: "Pick major direction",
    from: 11, to: 11,
    meta: "STEM · Humanities · Arts · etc.",
    stage: "Planning",
    icon: "MapPin",
    blurb: "Narrow to a direction. Competitive majors, especially business and STEM, need earlier planning to build a story around."
  },
  {
    id: "finalize-major",
    track: "academic", band: "major",
    label: "Finalize major choice",
    from: 12, to: 12,
    meta: "Majors are critical to application strategy",
    stage: "Planning",
    icon: "ClipboardCheck",
    blurb: "By the time applications go out, the major is decided. Some schools admit by major, some make switching difficult later — the choice quietly shapes which schools to apply to and how to position the file."
  },

  // Band: College
  {
    id: "college-research",
    track: "academic", band: "college",
    label: "College research",
    from: 10, to: 11,
    meta: "Visit, read, talk to alumni",
    stage: "Discovery",
    icon: "Search",
    blurb: "Public vs. private. In-state vs. out-of-state. Visit campuses. Talk to current students. Read net price calculators."
  },
  {
    id: "college-list",
    track: "academic", band: "college",
    label: "College list building",
    from: 11, to: 11,
    meta: "Reach, target, likely",
    stage: "Planning",
    icon: "ListChecks",
    blurb: "A balanced list, built on fit — academic, financial, social. Not prestige chasing."
  },
  {
    id: "applications",
    track: "academic", band: "college",
    label: "College applications",
    from: 12, to: 12,
    meta: "Common App, UC, supplements",
    stage: "Planning",
    icon: "FileText",
    blurb: "Essays get drafted over the summer before senior year. Supplements are written with care. Early application strategies are planned where strategy calls for it."
  },
  {
    id: "letters",
    track: "academic", band: "college",
    label: "Letters of rec",
    from: 11, to: 12,
    meta: "Ask junior spring",
    stage: "Planning",
    icon: "Mail",
    blurb: "Two teachers who know the student's academic work. Ask junior spring, share context over the summer, thank in the fall."
  },
  {
    id: "financial-aid",
    track: "academic", band: "college",
    label: "Financial aid",
    from: 12, to: 12,
    meta: "FAFSA Oct 1 · CSS Oct 1",
    stage: "Planning",
    icon: "Wallet",
    blurb: "FAFSA and CSS historically open October 1. Net price calculators months earlier so the list reflects what's actually affordable."
  },

  // ========== NON-ACADEMIC LANE ==========
  // Band: Extracurriculars
  {
    id: "get-involved",
    track: "nonacademic", band: "ecs",
    label: "Get involved in ECs",
    from: 9, to: 9,
    meta: "Sample widely",
    stage: "Discovery",
    icon: "Users",
    blurb: "Sample widely in 9th. Clubs, teams, volunteering, a job. The only wrong answer is doing nothing."
  },
  {
    id: "intentional-interests",
    track: "nonacademic", band: "ecs",
    label: "Intentional interests",
    from: 10, to: 10,
    meta: "Determine hobbies vs. priorities",
    stage: "Planning",
    icon: "Filter",
    blurb: "By 10th, start separating hobbies from priorities. Priorities get more time and produce real work. Hobbies stay hobbies."
  },
  {
    id: "leadership",
    track: "nonacademic", band: "ecs",
    label: "Continued involvement + leadership growth",
    from: 10, to: 12,
    meta: "Depth over breadth",
    stage: "Growth",
    icon: "ArrowUpRight",
    blurb: "Stay with the priorities. Take on more responsibility. Move from participant to organizer to the person creating ideas and making them happen."
  },

  // Band: Big Achievement — TERRACOTTA moment of the page
  {
    id: "big-brainstorm",
    track: "nonacademic", band: "big",
    label: "Brainstorm the Big Achievement",
    from: 9, to: 9,
    meta: "Strengths × opportunity",
    stage: "Discovery",
    icon: "Lightbulb",
    blurb: "One project that differentiates you from everybody else. Authentic to the student, difficult enough to be real, specific enough to be described in a sentence."
  },
  {
    id: "big-work",
    track: "nonacademic", band: "big",
    label: "Work on the Big Achievement",
    from: 10, to: 11,
    meta: "The centerpiece",
    stage: "Growth",
    icon: "Hammer",
    accent: true,
    blurb: "One thing you built, done seriously — that's the differentiator. At least two years of real work, not a summer activity listed on a résumé.",
    details: [
      "Input: genuine interest, time, effort",
      "Output: an initiative that is difficult, specific, uncommon",
      "Evidence: a tangible deliverable that exists at the end",
      "Voice: they can describe it, unprompted, in plain language"
    ]
  },
  {
    id: "big-complete",
    track: "nonacademic", band: "big",
    label: "Big Achievement completed",
    from: 12, to: 12,
    meta: "Shipped and documented",
    stage: "Planning",
    icon: "CheckCircle",
    blurb: "By the time applications are written, the work exists. The essays describe what happened, not what is hoped for."
  },

  // Band: Summers
  {
    id: "summer-9",
    track: "nonacademic", band: "summers",
    label: "9th grade summer",
    from: 9, to: 9,
    meta: "Deepen one interest",
    stage: "Discovery",
    icon: "Sun",
    blurb: "Uninterrupted time. Pick one of the sampled interests and explore deeper. A course, a camp, a project, a job."
  },
  {
    id: "summer-10",
    track: "nonacademic", band: "summers",
    label: "10th grade summer",
    from: 10, to: 10,
    meta: "Build on the Big Achievement",
    stage: "Growth",
    icon: "Sun",
    blurb: "Biggest uninterrupted block of the high school career. Spent on the priorities, not the hobbies. Search for avenues outside of what is offered at school."
  },
  {
    id: "summer-11",
    track: "nonacademic", band: "summers",
    label: "11th grade summer",
    from: 11, to: 11,
    meta: "Essays + finish strong",
    stage: "Planning",
    icon: "Sun",
    blurb: "Essays are drafted before senior year begins. This summer is the last push on the Big Achievement or any other summer activities. Don't spend senior year writing essays about sophomore year."
  },
];

// Outcomes shown at bottom strip
const OUTCOMES = [
  { eyebrow: "Blocks of life", name: "Direction & identity", desc: "A clear shape of who they are and what they're moving toward." },
  { eyebrow: "Confidence",     name: "Earned, not given",     desc: "From doing hard things and finishing them." },
  { eyebrow: "Readiness",      name: "Intellectually prepared", desc: "The coursework load of college will not be a shock." },
  { eyebrow: "Initiative",     name: "Self-starting",        desc: "They ask, they research, they begin — without prompt." },
  { eyebrow: "Unspoken truth",   name: "A real story to tell", desc: "Not a résumé. A life, specifically described and path started by them." },
];

// Band metadata — label + subtitle shown on the left column
const BANDS = [
  { id: "coursework", track: "academic",    eyebrow: "Academic", name: "Coursework",        sub: "5-4 rule. Four years of each core subject.", stage: "Growth" },
  { id: "testing",    track: "academic",    eyebrow: "Academic", name: "Testing",           sub: "PSAT, then SAT or ACT. Locked before senior year.", stage: "Planning" },
  { id: "major",      track: "academic",    eyebrow: "Academic", name: "Major",             sub: "From interest area to direction to declared major.", stage: "Discovery → Planning" },
  { id: "college",    track: "academic",    eyebrow: "Academic", name: "College",           sub: "Research, list, applications, letters, aid.", stage: "Planning" },

  { id: "ecs",        track: "nonacademic", eyebrow: "Non-academic", name: "Extracurriculars",  sub: "Sample, narrow, deepen, lead.", stage: "Discovery → Growth" },
  { id: "big",        track: "nonacademic", eyebrow: "Non-academic", name: "The Big Achievement", sub: "One thing, built seriously, over 3-4 years.", stage: "Growth" },
  { id: "summers",    track: "nonacademic", eyebrow: "Non-academic", name: "The Summers",       sub: "Uninterrupted time. Where the real work happens.", stage: "Growth" },
];

window.ROADMAP = ROADMAP;
window.YEARS = YEARS;
window.MILESTONES = MILESTONES;
window.OUTCOMES = OUTCOMES;
window.BANDS = BANDS;
