/* ── 增强数据(v3 重做)──
   颗粒度 = 天。每天一张迷你街区图;每站带"吃什么";每段带"怎么走"。
   旧 data.jsx 不动,这是独立的新结构。

   DAY  = { day, area, areaDesc, map:{water,waterLabel}, stops:[STOP] }
   STOP = { id,name,kind,time,stay,oneliner,desc,tags,eat:[],tips,lnglat,
            leg:{mode,min,dist,note} | null }   // leg = 从上一站到达这里怎么走
   mode: walk 步行 | bike 骑行 | bus 公交 | car 驾车
*/

const TRIP3 = {
  destination: "大理",
  region: "云南 · 苍山洱海",
  plan: {
    id: "classic", title: "经典环海 · 3天2晚",
    summary: "古城起步,顺时针绕洱海,双廊收尾。",
    days: [
      {
        day: 1, area: "大理古城", areaDesc: "南诏古都的烟火与文艺,先在古城里慢慢热身,黄昏去海边收第一个日落。",
        map: { water: "e", waterLabel: "洱海" },
        stops: [
          {
            id: "nanmen", name: "大理古城南门", kind: "sight", time: "09:30", stay: "40min",
            oneliner: "城楼下拍一张,旅程正式开始。",
            desc: "古城地标城门,清晨人少光好。登城楼可俯瞰复兴路直通北门,远处苍山做背景。",
            tags: ["地标", "免费", "出片"], eat: [], tips: "8:30 前到几乎无人,出片最佳。",
            lnglat: [100.158, 25.683], leg: null,
          },
          {
            id: "renmin", name: "人民路", kind: "food", time: "10:30", stay: "2h",
            oneliner: "一条街吃遍乳扇、烤乳饼、破酥粑粑。",
            desc: "古城最有烟火气的斜街,小吃摊、旧书摊、手作店混在一起。空着肚子来,从街头吃到街尾。",
            tags: ["小吃", "逛街", "人气"],
            eat: ["乳扇(烤/炸)", "烤乳饼", "破酥粑粑", "稀豆粉", "木瓜水"],
            tips: "乳扇玫瑰酱口味最受欢迎;稀豆粉配油条当早午饭。",
            lnglat: [100.161, 25.689],
            leg: { mode: "walk", min: 5, dist: "300m", note: "出南门沿复兴路向北步行,左拐即到人民路口。" },
          },
          {
            id: "chuangdan", name: "床单厂艺术区", kind: "cafe", time: "14:00", stay: "1.5h",
            oneliner: "旧厂房改的院子,咖啡和小店都好拍。",
            desc: "老床单厂改造的文创园,独立咖啡、买手店、展览扎堆,斑驳墙面很适合出片。午后阳光斜进院子最好看。",
            tags: ["咖啡", "文艺", "出片"],
            eat: ["云南小粒手冲", "玫瑰拿铁", "现烤司康"],
            tips: "院子里多家咖啡,挑有院落座位的那家。",
            lnglat: [100.155, 25.696],
            leg: { mode: "walk", min: 8, dist: "650m", note: "穿过古城西侧巷子,跟着'床单厂'指示牌走。" },
          },
          {
            id: "caicun", name: "才村码头", kind: "photo", time: "17:00", stay: "1.5h",
            oneliner: "离古城最近的洱海落日机位。",
            desc: "古城东侧最近的海边码头,黄昏天空染成蜜桃色,海面铺金。海边有海景餐厅,可边吃边看日落。",
            tags: ["日落", "骑行", "出片"],
            eat: ["洱海烤鱼", "海景下午茶", "酸辣鱼"],
            tips: "带件外套,湖边风大;日落时间随季节查当天。",
            lnglat: [100.196, 25.687],
            leg: { mode: "bike", min: 22, dist: "6km", note: "古城租电动车,南绕古城后沿才村路一路向东到海边(无直穿路);不骑车可打车约12min。" },
          },
        ],
      },
      {
        day: 2, area: "海北 · 喜洲", areaDesc: "白族建筑与万亩稻田,海西最松弛的一段,傍晚渡到双廊住海景房。",
        map: { water: "e", waterLabel: "洱海" },
        stops: [
          {
            id: "xizhou", name: "喜洲古镇", kind: "sight", time: "09:30", stay: "2h",
            oneliner: "白族大院 + 转角楼,慢慢逛一上午。",
            desc: "保存完好的白族聚落,严家大院的三坊一照壁值得细看。镇口破酥粑粑刚出炉时最香。",
            tags: ["古镇", "白族", "人气"],
            eat: ["喜洲破酥粑粑", "白族三道茶", "凉鸡米线"],
            tips: "粑粑认现烤的小摊,甜咸各来一个。",
            lnglat: [100.116, 25.852], leg: null,
          },
          {
            id: "haishe", name: "海舌生态公园", kind: "nature", time: "12:00", stay: "1.5h",
            oneliner: "伸进洱海的一条绿舌头,大树成框。",
            desc: "窄窄的半岛探入湖中,两侧都是水,尽头大青树是经典机位。人少安静。",
            tags: ["自然", "安静", "出片"],
            eat: ["园外小吃摊", "烤乳扇"],
            tips: "中午顶光偏硬,树荫下拍人像更好。",
            lnglat: [100.128, 25.860],
            leg: { mode: "bike", min: 12, dist: "3km", note: "从喜洲骑共享电动车,沿环海路向湖边走。" },
          },
          {
            id: "daotian", name: "海西稻田", kind: "photo", time: "15:00", stay: "1h",
            oneliner: "苍山做背景的金色稻浪。",
            desc: "秋天大片金黄稻田,苍山十九峰在后铺开。骑车沿乡道走走停停最舒服。",
            tags: ["稻田", "骑行", "季节限定"],
            eat: ["田边果园杨梅汁"],
            tips: "9-10月稻熟最佳;其它季节是绿/翻耕田。",
            lnglat: [100.110, 25.820],
            leg: { mode: "bike", min: 18, dist: "5km", note: "海舌折返向南,走田间小路;注意防晒。" },
          },
          {
            id: "shuanglang", name: "双廊古镇", kind: "stay", time: "17:30", stay: "住一晚",
            oneliner: "海景客栈住一晚,推窗就是洱海。",
            desc: "洱海东北岸小镇,海景客栈密集。傍晚到,赶上日落和夜里海风刚刚好。",
            tags: ["海景房", "住宿", "推荐"],
            eat: ["双廊海鲜", "白族酸辣鱼", "海景咖啡"],
            tips: "提前订带无边阳台的房;旺季周末要早订。",
            lnglat: [100.241, 25.873],
            leg: { mode: "car", min: 40, dist: "28km", note: "稻田区打车/包车渡到东岸双廊,沿环海路风景一路。" },
          },
        ],
      },
      {
        day: 3, area: "海东 · 双廊", areaDesc: "环海东路的机位串烧,返程前再把公路大片和海鸥拍个够。",
        map: { water: "w", waterLabel: "洱海" },
        stops: [
          {
            id: "xiaoputuo", name: "小普陀", kind: "sight", time: "09:00", stay: "40min",
            oneliner: "湖心一座小岛庙,海鸥很多。",
            desc: "洱海里的袖珍小岛,上面一座阁楼。冬天有红嘴鸥,能拍到鸟群掠过水面。",
            tags: ["小岛", "海鸥", "出片"],
            eat: ["岸边烤乳扇", "玫瑰冰粉"],
            tips: "冬季买把鸥粮,海鸥会成群飞来入镜。",
            lnglat: [100.245, 25.800], leg: null,
          },
          {
            id: "swan", name: "环海东路 S 湾", kind: "photo", time: "10:30", stay: "1h",
            oneliner: "公路 + 洱海 + 苍山的封面机位。",
            desc: "一段贴海面的 S 形公路,小红书同款封面就出在这。注意往来车辆,安全第一。",
            tags: ["公路", "封面", "出片"],
            eat: ["路边鲜榨果汁"],
            tips: "清晨车少光柔;拍照务必站在安全护栏内侧。",
            lnglat: [100.255, 25.778],
            leg: { mode: "bike", min: 10, dist: "2.5km", note: "沿环海东路向南骑行,一路贴着海。" },
          },
          {
            id: "wase", name: "挖色镇", kind: "food", time: "12:30", stay: "1.5h",
            oneliner: "海边小馆,一锅洱海鱼收尾。",
            desc: "相对原生态的湖东小镇,午饭点一份酸辣洱海鱼或乳扇炒饭,性价比高、人少。",
            tags: ["本地菜", "人少", "实惠"],
            eat: ["酸辣洱海鱼", "乳扇炒饭", "海稍鱼"],
            tips: "挑本地人多的小馆;鱼按斤称,先问价。",
            lnglat: [100.270, 25.745],
            leg: { mode: "bike", min: 14, dist: "4km", note: "继续沿环海东路南行到挖色镇口。" },
          },
        ],
      },
    ],
  },
};

const TRANSPORT = {
  walk: { label: "步行", color: "#7C8A5E" },
  bike: { label: "骑行", color: "#B05E3B" },
  bus:  { label: "公交", color: "#6E86A8" },
  car:  { label: "驾车", color: "#A8769A" },
};

/* 小红书向的补充信息:评分 / 人均 / 招牌标签 / 热度 / 图片关键词 */
const STOP_EXTRA = {
  nanmen:    { rating: 4.7, price: "免费", badge: "必打卡",   hot: "2.3w 收藏", signature: "城楼日出机位", img: "dali,old,town,gate,china", lock: 11 },
  renmin:    { rating: 4.8, price: "人均 ¥40", badge: "宝藏美食街", hot: "5.1w 收藏", signature: "乳扇玫瑰酱", img: "chinese,street,food,snack", lock: 12 },
  chuangdan: { rating: 4.6, price: "人均 ¥55", badge: "文艺出片", hot: "1.8w 收藏", signature: "院落手冲咖啡", img: "cafe,coffee,courtyard", lock: 13 },
  caicun:    { rating: 4.9, price: "人均 ¥80", badge: "落日天花板", hot: "6.7w 收藏", signature: "蜜桃色日落", img: "erhai,lake,sunset,dock", lock: 14 },
  xizhou:    { rating: 4.7, price: "人均 ¥35", badge: "白族风情", hot: "3.4w 收藏", signature: "严家大院", img: "yunnan,village,architecture,china", lock: 15 },
  haishe:    { rating: 4.5, price: "免费", badge: "小众安静",   hot: "9k 收藏",  signature: "大青树取景框", img: "lake,park,green,tree", lock: 16 },
  daotian:   { rating: 4.8, price: "免费", badge: "季节限定",   hot: "2.1w 收藏", signature: "苍山金稻浪", img: "rice,field,terrace,mountain", lock: 17 },
  shuanglang:{ rating: 4.8, price: "房 ¥420起", badge: "海景房", hot: "4.9w 收藏", signature: "无边阳台看海", img: "lake,hotel,view,china", lock: 18 },
  xiaoputuo: { rating: 4.6, price: "免费", badge: "海鸥成群",   hot: "1.5w 收藏", signature: "湖心阁 + 红嘴鸥", img: "lake,temple,island,bird", lock: 19 },
  swan:      { rating: 4.9, price: "免费", badge: "封面机位",   hot: "8.2w 收藏", signature: "S 湾公路大片", img: "road,lake,mountain,scenic", lock: 20 },
  wase:      { rating: 4.5, price: "人均 ¥60", badge: "人少实惠", hot: "7k 收藏",  signature: "酸辣洱海鱼", img: "fish,chinese,food", lock: 21 },
};

Object.assign(window, { TRIP3, TRANSPORT, STOP_EXTRA });
