// Data for the home page
const FEATURED_EVENT = {
  badge: "THIS SAT",
  promotion: "UFC Vegas 123",
  venue: "Meta APEX",
  city: "Las Vegas, NV",
  date: "Sat, October 31 2026",
  dateShort: "OCT 31",
  startsAt: "2026-10-31T20:00:00-04:00",
  prelimsAt: "2026-10-31T17:00:00-04:00",
  calId: "oct31",
  mainCardET: "8:00 PM ET",
  prelimsET: "5:00 PM ET",
  broadcast: "Paramount+",
  // Australian watch link, shown in the hero only on fight day (Paramount+ channel on Prime Video AU). null hides it.
  watchAU: { label: "Prime Video", url: "https://www.primevideo.com/detail/0QYSLXYFL4MMVTFFU13M6WY85A" },
  fightCount: 12,
  divisionLabel: "Lightweight · 5 Rounds",
  href: "/events/ufc-vegas-123-moicano-nolan.html",
  status: "upcoming",
  red: {
    first: "Renato",
    last: "Moicano",
    nickname: "",
    flag: "🇧🇷",
    country: "Brazil",
    record: "21-7-1",
    age: 37,
    height: "5'11\"",
    reach: "72\"",
    stance: "",
    rank: "#12 LW",
    odds: "−125",
    moneyline: -125,
    streak: "UFC since 2014 · 2 KO, 11 SUB wins",
    notes: "Ranked #12 with 29 pro fights and 11 submission wins. The 37-year-old trains at American Top Team and gives up four inches in height to Nolan.",
  },
  blue: {
    first: "Tom",
    last: "Nolan",
    nickname: "Big Train",
    flag: "🇦🇺",
    country: "Australia",
    record: "11-1",
    age: 26,
    height: "6'3\"",
    reach: "73\"",
    stance: "",
    rank: "#14 LW",
    odds: "+105",
    moneyline: 105,
    streak: "UFC since 2024 · 5 KO, 1 SUB wins",
    notes: "Ranked #14 and 11-1. Trains at Team Compton Training Centre, is 11 years younger than Moicano and has four inches of height and an inch of reach.",
  },
  prediction: {
    method: "Decision",
    pct: 47,
    consensus: "Close on UFC.com (Moicano -125, Nolan +105): Nolan's youth and size against Moicano's 11 submission wins",
  },
  coMain: null,
};

// Next-next event — teased as a small "on deck" strip while FEATURED_EVENT is still upcoming.
// Set to null when there's nothing queued up yet; OnDeck renders nothing in that case.
// When FEATURED_EVENT changes at the next per-event update, this is usually what becomes
// the new FEATURED_EVENT — clear it (or replace it) at that point.
const UPCOMING_EVENT = {
  label: "ON DECK",
  promotion: "UFC Fight Night",
  matchup: "Cortes Acosta vs Walker",
  blurb: "Heavyweight main event at the Meta APEX",
  date: "Sat, November 7 2026",
  dateShort: "NOV 7",
  venue: "Meta APEX, Las Vegas",
  href: "/index.html#schedule",
};

// BEGIN UPCOMING_SCHEDULE (generated by scripts/sync_upcoming.py from upcoming.json. Do not edit by hand)
const UPCOMING_SCHEDULE = [
  {
    id: "oct31",
    iso: "2026-10-31",
    startsAt: "2026-10-31T20:00:00-04:00",
    kind: "Fight Night",
    label: "UFC Fight Night 292",
    red: "Renato Moicano",
    redRank: "#12",
    blue: "Tom Nolan",
    blueRank: "#14",
    division: "Lightweight",
    coMain: "",
    notable: "Yana Santos (#6) vs Luana Santos (#7)",
    venue: "Meta APEX",
    city: "Las Vegas, NV",
    mainET: "8:00 PM ET",
    fights: 12,
    href: "/events/ufc-vegas-123-moicano-nolan.html",
    card: null,
    art: "https://www.ufc.com/images/styles/background_image_xl/s3/2026-10/103126-ufc-fight-night-moicano-vs-nolan-EVENT-ART.jpg?h=d1cb525d&itok=Rx7jVk5n",
  },
  {
    id: "nov7",
    iso: "2026-11-07",
    startsAt: "2026-11-07T20:00:00-05:00",
    kind: "Fight Night",
    label: "UFC Fight Night",
    red: "Waldo Cortes Acosta",
    redRank: "#6",
    blue: "Johnny Walker",
    blueRank: "",
    division: "Heavyweight",
    coMain: "",
    notable: "Tatiana Suarez (#2) vs Virna Jandiroba (#3)",
    venue: "Meta APEX",
    city: "Las Vegas, NV",
    mainET: "8:00 PM ET",
    fights: 14,
    href: null,
    card: "/events/ufc-las-vegas-cortes-acosta-walker-card.html",
    art: null,
  },
  {
    id: "ufc334",
    iso: "2026-11-14",
    startsAt: "2026-11-14T21:00:00-05:00",
    kind: "PPV",
    label: "UFC 334",
    red: "Ciryl Gane",
    redRank: "C",
    blue: "Josh Hokit",
    blueRank: "#4",
    division: "Heavyweight Title",
    coMain: "Kayla Harrison vs Amanda Nunes (women's bantamweight title)",
    notable: "Uroš Medić (#12) vs Kevin Holland (#15)",
    venue: "Madison Square Garden",
    city: "New York, NY",
    mainET: "9:00 PM ET",
    fights: 12,
    href: null,
    card: "/events/ufc-334-gane-hokit-card.html",
    art: "https://www.ufc.com/images/styles/background_image_xl/s3/2026-10/111426-ufc-334-gane-vs-hokit-EVENT-ART.jpg?h=d1cb525d&itok=1tWXl9Qq",
  },
  {
    id: "nov21",
    iso: "2026-11-21",
    startsAt: "2026-11-21T13:00:00-05:00",
    kind: "Fight Night",
    label: "UFC Fight Night 294",
    red: "Jiří Procházka",
    redRank: "#2",
    blue: "Navajo Stirling",
    blueRank: "#5",
    division: "Light Heavyweight",
    coMain: "Aljamain Sterling (#4) vs Kevin Vallejos (#9)",
    notable: "Dan Hooker (#13) vs Brian Ortega",
    venue: "ABHA Arena",
    city: "Doha, Qatar",
    mainET: "1:00 PM ET",
    fights: 9,
    href: null,
    card: "/events/ufc-doha-prochazka-stirling-card.html",
    art: "https://www.ufc.com/images/styles/background_image_xl/s3/2026-10/112126-ufc-fight-night-prochazka-vs-stirling-EVENT-ART.jpg?h=d1cb525d&itok=WOTZV_vV",
  },
  {
    id: "ufc335",
    iso: "2026-12-12",
    startsAt: "2026-12-12T21:00:00-05:00",
    kind: "PPV",
    label: "UFC 335",
    red: "Charles Oliveira",
    redRank: "#3",
    blue: "Diego Lopes",
    blueRank: "",
    division: "Lightweight",
    coMain: "Sergei Pavlovich (#3) vs Alex Pereira (heavyweight)",
    notable: "Joe Pyfer (#6) vs Bo Nickal (#14)",
    venue: "T-Mobile Arena",
    city: "Las Vegas, NV",
    mainET: "9:00 PM ET",
    fights: null,
    href: null,
    card: "/events/ufc-335-oliveira-lopes-card.html",
    art: null,
  },
  {
    id: "ufc336",
    iso: "2027-01-30",
    startsAt: "2027-01-30T21:00:00-05:00",
    kind: "PPV",
    label: "UFC 336",
    red: "Joshua Van",
    redRank: "C",
    blue: "Manel Kape",
    blueRank: "#2",
    division: "Flyweight Title",
    coMain: "Carlos Prates vs Michael Morales (welterweight interim title)",
    notable: "",
    venue: "Scotiabank Arena",
    city: "Toronto, ON",
    mainET: "9:00 PM ET",
    fights: null,
    href: null,
    card: "/events/ufc-336-van-kape-card.html",
    art: null,
  },
];
// END UPCOMING_SCHEDULE

// BEGIN PAST_EVENTS (generated by scripts/sync_past.py from events.json, latest 6. Do not edit by hand)
const PAST_EVENTS = [
  {
    id: "ufc333",
    href: "/events/ufc-333-volkanovski-evloev-results.html",
    kind: "PPV",
    title: "Volkanovski",
    titleVs: "vs.",
    title2: "Evloev",
    promo: "UFC 333 · Abu Dhabi",
    venue: "Etihad Arena",
    city: "Abu Dhabi, UAE",
    date: "Oct 24 2026",
    dateNum: "10.24",
    fights: 14,
    finishes: 7,
    bonuses: 3,
    redName: "Alexander Volkanovski",
    redFlag: "🇦🇺",
    blueName: "Movsar Evloev",
    blueFlag: "🇷🇺",
    division: "Featherweight Title",
    result: "Volkanovski via TKO R2 (4:54)",
    resultWinner: "red",
    headline: "Volkanovski stops the unbeaten Evloev in round two for a record ninth featherweight title win",
  },
  {
    id: "oct17",
    href: "/events/ufc-edmonton-buckley-malott-results.html",
    kind: "Fight Night",
    title: "Buckley",
    titleVs: "vs.",
    title2: "Malott",
    promo: "UFC Fight Night 291 · Edmonton",
    venue: "Rogers Place",
    city: "Edmonton, AB",
    date: "Oct 17 2026",
    dateNum: "10.17",
    fights: 13,
    finishes: 12,
    bonuses: 4,
    redName: "Joaquin Buckley",
    redFlag: "🇺🇸",
    blueName: "Mike Malott",
    blueFlag: "🇨🇦",
    division: "Welterweight",
    result: "Malott via KO R2 (2:32)",
    resultWinner: "blue",
    headline: "Malott knees Buckley out in round two as Edmonton ties the modern record with 12 finishes",
  },
  {
    id: "oct10",
    href: "/events/ufc-vegas-122-allen-duncan-results.html",
    kind: "Fight Night",
    title: "Allen",
    titleVs: "vs.",
    title2: "Duncan",
    promo: "UFC Fight Night 290 · Las Vegas",
    venue: "Meta APEX",
    city: "Las Vegas, NV",
    date: "Oct 10 2026",
    dateNum: "10.10",
    fights: 12,
    finishes: 9,
    bonuses: 4,
    redName: "Brendan Allen",
    redFlag: "🇺🇸",
    blueName: "Christian Leroy Duncan",
    blueFlag: "🇬🇧",
    division: "Middleweight",
    result: "Allen via SUB R5 (2:46)",
    resultWinner: "red",
    headline: "Allen submits Duncan in the fifth round on a night of nine finishes and a rare majority draw",
  },
  {
    id: "ufc332",
    href: "/events/ufc-332-silva-wang-results.html",
    kind: "PPV",
    title: "Silva",
    titleVs: "vs.",
    title2: "Wang",
    promo: "UFC 332 · Salt Lake City",
    venue: "Delta Center",
    city: "Salt Lake City, UT",
    date: "Oct 3 2026",
    dateNum: "10.03",
    fights: 14,
    finishes: 11,
    bonuses: 4,
    redName: "Natalia Silva",
    redFlag: "🇧🇷",
    blueName: "Wang Cong",
    blueFlag: "🇨🇳",
    division: "Women's Flyweight",
    result: "Silva via UD (48-47, 48-47, 49-46)",
    resultWinner: "red",
    headline: "Silva wins the vacant women's flyweight title on a record night of 11 knockouts",
  },
  {
    id: "sep26",
    href: "/events/ufc-vegas-121-rosas-barcelos-results.html",
    kind: "Fight Night",
    title: "Rosas Jr.",
    titleVs: "vs.",
    title2: "Barcelos",
    promo: "UFC Fight Night 289 · Las Vegas",
    venue: "Meta APEX",
    city: "Las Vegas, NV",
    date: "Sep 26 2026",
    dateNum: "09.26",
    fights: 12,
    finishes: 9,
    bonuses: 3,
    redName: "Raul Rosas Jr.",
    redFlag: "🇺🇸",
    blueName: "Raoni Barcelos",
    blueFlag: "🇧🇷",
    division: "Bantamweight",
    result: "Rosas Jr. via KO R5 (1:38)",
    resultWinner: "red",
    headline: "Rosas Jr. slams Barcelos to a fifth-round knockout in a Fight of the Night main event",
  },
  {
    id: "ufc331",
    href: "/events/ufc-331-van-pantoja-2-results.html",
    kind: "PPV",
    title: "Van",
    titleVs: "vs.",
    title2: "Pantoja 2",
    promo: "UFC 331 · Los Angeles",
    venue: "Crypto.com Arena",
    city: "Los Angeles, CA",
    date: "Sep 19 2026",
    dateNum: "09.19",
    fights: 12,
    finishes: 7,
    bonuses: 3,
    redName: "Joshua Van",
    redFlag: "🇲🇲",
    blueName: "Alexandre Pantoja",
    blueFlag: "🇧🇷",
    division: "Flyweight",
    result: "Van via UD (49-46, 48-47, 50-45)",
    resultWinner: "red",
    headline: "Van retains the flyweight title in a Fight of the Night rematch with Pantoja",
  },
];
// END PAST_EVENTS

const NAV_LINKS = [
  { label: "Home", href: "/index.html", active: true },
  { label: "UFC Vegas 122", href: "/index.html" },
  { label: "Rankings", href: "#" },
];

// Derived (inert; SiteNav is not mounted). Full list lives in events.json.
const PAST_NAV = PAST_EVENTS.map((e) => ({ name: e.title + " vs " + e.title2, date: e.date, href: e.href }));

// Live ticker: UFC Vegas 122 preview (Allen vs Duncan, October 10)
const TICKER_ITEMS = [
  { tag: "NEXT",   text: "UFC Vegas 122: Brendan Allen (-145) meets Christian Leroy Duncan (+120) in a middleweight main event at Meta APEX", emphasis: "live" },
  { tag: "ODDS",   text: "Allen -145 favourite, Duncan +120 with a four-inch reach edge (79 to 75). Camilo vs Herbert (LW) co-main", emphasis: "red" },
  { tag: "CARD",   text: "UFC Vegas 122 · Oct 10 · Meta APEX · 12 fights · Paramount+ prelims 5PM ET / main card 8PM ET", emphasis: "neutral" },
  { tag: "RESULT", text: "UFC Vegas 121: Raul Rosas Jr. slams Raoni Barcelos to a fifth-round KO in a Fight of the Night main event", emphasis: "blue" },
  { tag: "RESULT", text: "UFC 331: Joshua Van retains the flyweight title over Alexandre Pantoja by unanimous decision", emphasis: "neutral" },
];

Object.assign(window, { FEATURED_EVENT, UPCOMING_EVENT, UPCOMING_SCHEDULE, PAST_EVENTS, NAV_LINKS, PAST_NAV, TICKER_ITEMS });
