/* ==========================================================
   MoMoTown · 竖屏紧凑层（compact.css）— 最后加载
   目标：手机每个板块 ≈ 一屏（≤ 720px），iPad 竖屏 ≤ 1.2 屏
   只做“少滑动”的结构调整；配色/勋章语言沿用 badge.css
   ========================================================== */

/* ============ iPad 竖屏 761–1024 ============ */
@media (min-width:761px) and (max-width:1024px){
  .section{padding:52px 22px 12px;}
  .sec-lede{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px;}
  /* 盲盒：卡片图 16:9、稀有度 2×2 且限行 */
  .card-grid{gap:18px;}
  .card{padding:12px 12px 16px;}
  .card .thumb{aspect-ratio:16/9;}
  .card h3{font-size:18px;margin:12px 6px 4px;}
  .card p{font-size:12.5px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .rarity{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;}
  .rar{padding:14px 16px;}
  .rar p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  /* 自由经营：左右并排但收紧 */
  .fr-wrap{grid-template-columns:220px 1fr;gap:16px;}
  .fr-route{padding:9px 10px;gap:9px;}
  .fr-medal{width:42px;height:42px;}
  .fr-medal svg{width:25px;height:25px;}
  .fr-route-txt b{font-size:14.5px;}
  .fr-desc{padding:12px 16px 14px;}
  .fr-desc h4{font-size:19px;}
  .fr-desc p{font-size:13px;line-height:1.6;}
  .fr-detail{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  /* 造镇图鉴 4 列 */
  .sys-grid{grid-template-columns:repeat(4,1fr);gap:10px;}
  .sys{padding:12px 6px 10px;}
  .sys .ic{width:44px;height:44px;}
  .sys .ic .ico{width:22px;height:22px;}
  .sys b{font-size:13px;}
  .sys span{font-size:10.5px;}
  /* 悬赏 2×2 */
  .path{grid-template-columns:1fr 1fr;gap:18px 28px;}
  .pstep p{font-size:12.5px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .pstep:nth-child(2) .arr{display:none;}
  /* 集市：时间轴横排在图上方 */
  .gallery{grid-template-columns:1fr;gap:12px;}
  .tl{flex-direction:row;flex-wrap:wrap;gap:8px;}
  .tl-item{flex:1 1 30%;padding:8px 10px;gap:8px;}
  .tl-item .dot{width:32px;height:32px;}
  .tl-item b{font-size:14px;}
  .tl-item span{font-size:10.5px;}
  /* 开镖 */
  .carousel{height:360px;}
  .rstep span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  /* 预约 */
  .reserve-wrap{grid-template-columns:200px 1fr;gap:20px;}
}

/* ============ 手机 ≤760 ============ */
@media (max-width:760px){
  /* ---------- 首屏：竖屏尽量多露街景 ----------
     · 画布拉高到 88svh，背景 cover 但焦点放在下方街景
     · 内容块整体缩小、压到上半区，下半区留给城镇 */
  .hero{min-height:88svh;height:auto;padding:88px 22px 0;justify-content:flex-start;}
  .hero-bg{background-position:center 58%;
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 8%,#000 96%,transparent 100%);
    mask-image:linear-gradient(180deg,transparent 0%,#000 8%,#000 96%,transparent 100%);}
  .hero-logo{width:min(50vw,230px);padding:2% 3%;}
  .hero .tagline{font-size:12.5px;margin-top:2px;letter-spacing:1px;}
  .hero .subline{font-size:11px;padding:5px 12px;margin-top:8px;max-width:88vw;border-width:2px;}
  .hero-stats{gap:6px;margin-top:8px;max-width:340px;margin-left:auto;margin-right:auto;}
  .hstat{padding:6px 4px;border-radius:12px;border-width:2px;}
  .hstat b{font-size:17px;}
  .hstat span{font-size:9.5px;line-height:1.25;}
  .hero .press{margin-top:8px;font-size:10px;}

  /* ---------- 勋章图标：给圆徽和边框之间留出呼吸空间 ---------- */
  .fr-medal{width:30px;height:30px;}
  .fr-medal svg{width:15px;height:15px;}
  .sys .ic{width:30px;height:30px;}
  .sys .ic .ico{width:13px;height:13px;}
  .feat-medal svg{width:14px;height:14px;}
  .rstep .moon .ico{width:15px;height:15px;}

  .section{padding:34px 16px 6px;}
  .sec-head{margin-bottom:6px;}
  .sec-lede{font-size:12.5px;line-height:1.65;margin-bottom:10px;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .wave-sep{margin:8px 0 0;height:20px;}

  /* ---------- 神秘盲盒：两张卡横排（图左 / 字右），稀有度 2×2 限两行 ---------- */
  .card-grid{gap:10px;}
  .card{display:grid;grid-template-columns:38% 1fr;column-gap:10px;align-items:center;padding:8px 10px 8px 8px;border-radius:14px;}
  .card .badge-num{top:-9px;left:8px;font-size:10.5px;padding:1px 7px;border-width:2px;}
  .card .thumb{grid-row:1 / span 3;aspect-ratio:1;border-radius:10px;border-width:2px;}
  .card h3{font-size:14.5px;margin:0;}
  .card p{font-size:11.5px;line-height:1.5;margin:3px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .card .tag-row{margin:5px 0 0;gap:4px;}
  .mini-tag{font-size:9.5px;padding:1px 7px;}
  .openable .lid-note{top:auto;bottom:6px;right:auto;left:50%;transform:translateX(-50%);font-size:10px;padding:2px 8px;white-space:nowrap;}
  .openable .lid-note .ico{width:11px;height:11px;}
  .deal-toast{width:94%;padding:8px 8px;}
  .deal-toast b{font-size:11.5px;}
  .deal-toast .worth{font-size:14px;}
  .rarity{gap:8px;margin-top:10px;}
  .rar{padding:9px 10px 10px;border-radius:12px;}
  .rar .lv{font-size:14px;}
  .rar .cnt{font-size:10.5px;}
  .rar p{font-size:11px;line-height:1.5;margin-top:4px;-webkit-line-clamp:2;}

  /* ---------- 自由经营：标题 + 四格 + 16:9 图 + 短说明，一屏看完 ---------- */
  .fr-headline{font-size:18px;margin:0 0 4px;}
  .fr-headline::after{display:none;}
  .fr-lede{-webkit-line-clamp:2;margin-bottom:8px;}
  .fr-wrap{gap:8px;margin-top:8px;}
  .fr-route{padding:6px 3px 5px;border-radius:12px;}
  .fr-medal{width:32px;height:32px;}
  .fr-medal svg{width:19px;height:19px;}
  .fr-route-txt b{font-size:11px;}
  .fr-route-txt small{display:none;}
  .fr-canvas{aspect-ratio:16/9;border-radius:14px;}
  .fr-canvas img{object-position:center 40%;}
  .fr-desc{margin-top:8px;padding:10px 12px 11px;border-radius:14px;}
  .fr-desc h4{font-size:15px;}
  .fr-desc p{font-size:12px;line-height:1.55;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .fr-tags{gap:5px;margin-top:6px;}
  .fr-tag{font-size:10px;padding:1px 8px;}
  .fr-detail{display:none!important;}

  /* ---------- 造镇：图鉴已 4 列；提示行收紧 ---------- */
  .town-hint{margin-top:4px;font-size:10.5px;}
  .sys-grid{margin-top:8px;}

  /* ---------- 悬赏：2×2 网格，去掉连接箭头 ---------- */
  .path{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
  .pstep{padding:10px 10px 10px;border-radius:12px;}
  .pstep h4{font-size:14px;gap:6px;}
  .pstep h4 .en{font-size:9.5px;margin-left:2px;}
  .pstep h4 .ico{width:14px;height:14px;padding:3px;}
  .pstep p{font-size:11px;line-height:1.5;margin-top:4px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
  .pstep .coin-tag{font-size:10.5px;padding:2px 8px;margin-top:6px;}
  .pstep .coin-tag .ico{width:12px;height:12px;}
  .pstep .arr{display:none;}
  #economy .badge-row{margin-top:12px!important;}

  /* ---------- 集市 ---------- */
  .gallery{gap:8px;margin-top:10px;}
  #market .badge-row{margin-top:10px!important;}

  /* ---------- 开镖：月份说明限两行；轮播矮一点 ---------- */
  .road{gap:10px 4px;margin-top:10px;}
  .rstep .moon{width:34px;height:34px;}
  .rstep .moon .ico{width:17px;height:17px;}
  .rstep .m{font-size:10px;margin-top:4px;}
  .rstep b{font-size:11.5px;}
  .rstep span{font-size:10.5px;-webkit-line-clamp:2;}
  .carousel{margin-top:8px;}

  /* ---------- 预约：去配图，表单收紧 ---------- */
  .reserve-img{display:none;}
  .reserve-wrap{margin-top:8px;}
  .reserve-card{padding:12px 12px 12px;}
  .reserve-card h3{font-size:16px;}
  .reserve-card .sub{font-size:11.5px;margin-top:3px;line-height:1.5;}
  .field{margin-top:8px;}
  .field label{font-size:11.5px;margin-bottom:3px;}
  .field input,.field select{font-size:14px;padding:9px 11px;border-radius:11px;}
  .btn-lg.reserve-btn{padding:10px 14px;font-size:14.5px;margin-top:12px;}
  .reserve-note{margin-top:8px;font-size:10.5px;line-height:1.5;}
  #reserve{padding-bottom:calc(var(--nav-h) + 24px)!important;}
  footer{padding-top:16px;}
}
