/* ============================================================
   Serein 移动端适配覆盖层
   ------------------------------------------------------------
   只在 ≤768px / ≤430px 生效，桌面端零影响。
   必须最后加载（放在 </head> 前最后一行）才会覆盖各页自带规则。

   设计原则：
     1. 只补「各页自带宽断点没覆盖到」的部分，不推翻页面原有移动端规则
     2. 不改任何 display —— 否则会把页面故意隐藏的导航项/模块显示回来
     3. 真正需要治的只有三件事：横向溢出、导航不换行、hero 字号没收敛
   引用（绝对路径，任意深度页面可用）：
     <link rel="stylesheet" href="/assets/css/serein-mobile.css?v=YYYYMMDDx">
   ============================================================ */

/* ---------- 0. 溢出总闸（任意宽度都安全） ---------- */
html, body {
  overflow-x: hidden;
  max-width: 100%;
  overscroll-behavior-x: none;
}
img, svg, video, canvas, iframe { max-width: 100%; }
table, pre { max-width: 100%; }
pre, .editor {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 768px) {
  /* ---------- 1. 导航：放不下自动折行，不再挤成一团 ---------- */
  nav {
    flex-wrap: wrap;
    row-gap: 8px;
    height: auto;
    min-height: 56px;
    padding: 12px 4vw;
  }
  nav .nr {
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px 16px;
    font-size: 12px;
    line-height: 1.4;
  }
  nav .b { font-size: 12px; letter-spacing: .12em; }

  /* ---------- 2. Hero 字号收敛 ----------
     选择器只命中「没有 class 的 #hero h1」：
       · 命中   首页(Aero) / Aero索引(AERO) / 关于 / 1.2.1 详情
       · 排除   welcome 的 <h1 class="wc-name">（自带 640 断点，不抢）
     1.2.1 详情页的大标题是 vw 制的 .ink.hero-title 子元素，
     与 h1 自身的字号无关，改这里不会影响它。 */
  #hero h1:not([class]) {
    font-size: clamp(52px, 15vw, 110px);
    line-height: .95;
  }
  #hero .coord, #hero .hdesc, #hero .sub p { font-size: 14px; }

  /* ---------- 3. 区块标题兜底（页面自身 780 断点已写过，防漏） ---------- */
  #entries .ehd h2, #wd .hd h2, #stmt h2, #close h2, #release .rhd h2 {
    font-size: clamp(26px, 7vw, 44px);
  }

  /* ---------- 4. CTA 按钮组：窄屏留出竖向间距 ---------- */
  .hcta { row-gap: 12px; }
}

@media (max-width: 430px) {
  #hero h1:not([class]) { font-size: clamp(44px, 16vw, 80px); }

  /* 导航项再压一档，5 个入口一行放得下的概率更高 */
  nav .nr { gap: 8px 12px; font-size: 11px; }
  nav .b { font-size: 11px; }

  /* 卡片内边距收紧，避免内容贴边 */
  .entry, .feat, .an, .card { padding-left: 18px; padding-right: 18px; }

  /* 数据宫格：2 列在 390px 下仍偏挤，改单列 */
  .stats { grid-template-columns: 1fr; }

  /* CTA：满宽按钮，更方便拇指点 */
  .hcta { flex-direction: column; align-items: stretch; }
  .hcta .hbtn, .hcta .hbtn-dark, .hcta .hbtn-out { justify-content: center; }
}
