/* 移动端统一样式 · 2026-10-21 · 替换此前所有补丁 */
@media (max-width: 768px) {
  html { overflow-x: hidden; -webkit-text-size-adjust: 100%; }
  body { font-size: 16px !important; line-height: 1.72 !important; }

  /* ---------- 顶部导航：一行紧凑，无大留白 ---------- */
  header, .site-header {
    height: 56px !important; min-height: 56px !important; padding: 0 !important;
    display: flex !important; align-items: center !important; justify-content: space-between !important;
    position: sticky !important; top: 0 !important; z-index: 900 !important;
  }
  header > div, header .header-inner, header .nav-inner, header .nav-shell, header .topbar, header .nav-wrap {
    display: flex !important; align-items: center !important; justify-content: space-between !important;
    width: 100% !important; height: 56px !important; min-height: 56px !important;
    padding: 0 16px !important; margin: 0 !important; gap: 10px !important; flex-wrap: nowrap !important;
  }
  header .brand, header a.brand { flex: 0 0 auto !important; font-size: 15px !important; margin: 0 !important; padding: 0 !important; gap: 8px !important; }
  header .brand-mark, header .brand svg { width: 22px !important; height: 22px !important; flex: 0 0 auto !important; }
  header nav, header .nav-links, header .primary-nav, header .main-nav, header .desktop-nav { display: none !important; }

  header [class*="header-actions"], header [class*="nav-actions"], header .header-cta-group {
    margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: row !important;
    align-items: center !important; gap: 8px !important; flex: 0 0 auto !important; width: auto !important; height: auto !important;
  }
  header [class*="cta"], header .nav-demo, header .header-cta {
    height: 34px !important; min-height: 34px !important; padding: 0 13px !important;
    font-size: 13px !important; line-height: 34px !important; border-radius: 9px !important; margin: 0 !important;
  }
  header [class*="menu-toggle"], header [class*="nav-toggle"] {
    position: static !important; transform: none !important; top: auto !important; right: auto !important;
    width: 38px !important; height: 38px !important; min-width: 38px !important; margin: 0 !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    visibility: visible !important; opacity: 1 !important; flex: 0 0 auto !important;
  }

  /* ---------- 内容区：左右 18px，不留空 ---------- */
  .container, .wrap, .wrapper, .inner, .shell, section, main, footer, .section {
    padding-left: 18px !important; padding-right: 18px !important;
  }
  section, .section { padding-top: 34px !important; padding-bottom: 34px !important; }
  .glass, .glass-panel, .card, .panel, [class*="card"], [class*="panel"] {
    padding: 16px !important; border-radius: 16px !important; margin-left: 0 !important; margin-right: 0 !important;
  }

  /* ---------- 排版 ---------- */
  h1 { font-size: 26px !important; line-height: 1.3 !important; letter-spacing: -.01em !important; margin: 0 0 12px !important; }
  h2 { font-size: 20px !important; line-height: 1.38 !important; margin: 0 0 10px !important; }
  h3 { font-size: 17px !important; line-height: 1.45 !important; margin: 0 0 8px !important; }
  h4 { font-size: 16px !important; line-height: 1.45 !important; }
  p, li, dd, dt, blockquote { font-size: 16px !important; line-height: 1.72 !important; }
  .eyebrow, .kicker, [class*="eyebrow"], [class*="label"] { font-size: 12px !important; letter-spacing: .06em !important; }
  .lead, [class*="lead"], [class*="desc"] { font-size: 15px !important; line-height: 1.7 !important; }

  /* ---------- 图片 ---------- */
  img { max-width: 100% !important; height: auto !important; }
  [class*="hero"] img, [class*="scene"] img, [class*="media"] img, [class*="photo"] img, figure img {
    width: 100% !important; max-height: 230px !important; object-fit: cover !important; border-radius: 14px !important;
    margin: 12px 0 0 !important;
  }
  figure { margin: 0 !important; }

  /* ---------- 布局：单列 ---------- */
  [class*="grid"], [class*="cols"], [class*="cards"] { display: grid !important; grid-template-columns: 1fr !important; gap: 14px !important; }
  [class*="split"], [class*="two-col"], [class*="row"] { display: block !important; }
  [class*="actions"], [class*="buttons"], [class*="cta-group"] { display: flex !important; flex-direction: column !important; gap: 10px !important; }
  [class*="button"], [class*="btn"], .button, .btn { min-height: 44px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; padding: 11px 18px !important; font-size: 15px !important; }
  table { display: block !important; overflow-x: auto !important; max-width: 100% !important; }
  pre, code { white-space: pre-wrap !important; word-break: break-word !important; font-size: 13px !important; }

  * { overflow-wrap: break-word; word-break: break-word; }
  h1, h2, h3 { word-break: normal !important; text-wrap: balance; }
}

/* ---------- 三道杠展开菜单面板 ---------- */
#__menuPanel {
  position: fixed !important; left: 0 !important; right: 0 !important; top: 0 !important;
  width: 100% !important; z-index: 99999 !important; background: #fff !important;
  box-shadow: 0 20px 50px rgba(22,35,58,.22) !important;
  border-bottom: 2px solid #DDE2EA !important;
  padding: 12px 18px 20px !important; display: none; max-height: 86vh; overflow-y: auto;
}
#__menuPanel.__open { display: block !important; }
#__menuPanel .__close { display: flex !important; justify-content: flex-end !important; height: 40px; }
#__menuPanel .__close span { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;
  font-size: 20px; color: #16233A; }
#__menuPanel a {
  display: block !important; width: 100% !important; text-align: left !important;
  padding: 15px 2px !important; font-size: 17px !important; line-height: 1.4 !important;
  color: #16233A !important; text-decoration: none !important;
  border-bottom: 1px solid #EEF1F6 !important; background: transparent !important;
}
#__menuPanel a:last-child { border-bottom: 0 !important; }
#__menuPanel a.__cta {
  margin-top: 14px !important; background: #FF5A1F !important; color: #fff !important;
  text-align: center !important; border-radius: 12px !important; border: 0 !important;
  font-weight: 600 !important; padding: 15px 2px !important; min-height: 0 !important;
}
html.__navopen, html.__navopen body { overflow: hidden !important; }

/* ---------- 首屏收紧：消大面积留白 + 按钮不被拉伸 ---------- */
@media (max-width: 768px) {
  [class*="hero"], .hero { padding-top: 14px !important; padding-bottom: 20px !important; }
  [class*="hero"] > *:first-child, .hero > *:first-child { margin-top: 0 !important; }
  [class*="eyebrow"], [class*="kicker"] { margin: 0 0 8px !important; }
  h1 { margin: 0 0 10px !important; }
  [class*="lede"], [class*="lead"] { margin: 0 0 16px !important; }
  [class*="button"], [class*="btn"], .button, .btn {
    flex: 0 0 auto !important; align-self: flex-start !important;
    height: auto !important; max-height: 48px !important; min-height: 44px !important;
    width: 100% !important; margin: 0 !important;
  }
  [class*="actions"] > *, [class*="buttons"] > *, [class*="cta-group"] > * {
    flex: 0 0 auto !important; align-self: stretch !important; max-height: 52px !important;
  }
  .glass-panel, [class*="glass-panel"] { padding: 16px !important; }
  section + section { margin-top: 0 !important; }
}

@media (max-width: 768px) {
  [class*="metrics"], [class*="stats"], [class*="metric-row"] {
    display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px 14px !important;
    margin: 18px 0 !important; width: 100% !important;
  }
  [class*="metric"] { width: auto !important; min-width: 0 !important; position: static !important; }
  [class*="hero"] figure, [class*="hero"] picture { margin: 16px 0 0 !important; width: 100% !important; }
  [class*="hero"] figure img, [class*="hero"] picture img { width: 100% !important; height: auto !important; max-height: 240px !important; object-fit: cover !important; border-radius: 14px !important; }
}

/* ---------- 修正：盒模型 + header 只留三道杠 ---------- */
*, *::before, *::after { box-sizing: border-box !important; }
@media (max-width: 768px) {
  header > div, header .header-inner, header .nav-inner, header .nav-shell, header .topbar, header .nav-wrap {
    box-sizing: border-box !important; width: 100% !important; max-width: 100% !important;
    padding: 0 14px !important; margin: 0 !important;
  }
  header { overflow: visible !important; }
  header [class*="cta"], header .nav-demo, header .header-cta, header [class*="header-actions"] > a {
    display: none !important; visibility: hidden !important;
  }
  header [class*="header-actions"], header [class*="nav-actions"] { margin-left: auto !important; }
  header [class*="menu-toggle"], header [class*="nav-toggle"] {
    position: static !important; margin: 0 0 0 auto !important; width: 40px !important; height: 40px !important;
    min-width: 40px !important; border: 1px solid #DDE2EA !important; border-radius: 10px !important;
    background: #fff !important; display: inline-flex !important; align-items: center !important;
    justify-content: center !important; flex: 0 0 auto !important;
  }
  header [class*="menu-toggle"] svg, header [class*="nav-toggle"] svg {
    display: block !important; width: 20px !important; height: 20px !important;
    stroke: #16233A !important; color: #16233A !important; flex: 0 0 auto !important;
  }
  header [class*="menu-toggle"] svg path, header [class*="nav-toggle"] svg path {
    stroke: #16233A !important; stroke-width: 1.8 !important; fill: none !important;
  }
}

@media (max-width: 768px) {
  header { position: relative !important; }
  header [class*="menu-toggle"], header [class*="nav-toggle"] {
    position: absolute !important; right: 14px !important; left: auto !important;
    top: 50% !important; transform: translateY(-50%) !important;
    margin: 0 !important; width: 40px !important; height: 40px !important;
    min-width: 40px !important; z-index: 950 !important;
  }
  header .header-inner, header .nav-inner, header .nav-shell, header .topbar, header .nav-wrap, header > div {
    padding-right: 62px !important;
  }
}

@media (max-width: 768px) {
  [class*="hero-inner"] { display: block !important; padding-left: 0 !important; padding-right: 0 !important; width: 100% !important; max-width: 100% !important; }
  main { padding-left: 0 !important; padding-right: 0 !important; }
  .container { padding-left: 0 !important; padding-right: 0 !important; }
  [class*="hero-inner"] > .glass, [class*="hero-inner"] .glass-panel, [class*="hero-inner"] [class*="glass"] {
    width: 100% !important; max-width: 100% !important; margin: 0 !important;
  }
  [class*="glass"] { max-width: 100% !important; }
  .gidx { max-width: 100% !important; }
}

/* ---------- 2026-10-30 手机端细节修复 ---------- */
@media (max-width: 768px) {
  /* ① 顶部那个「预约演示」按钮在窄屏被挤出屏幕 → 直接不显示（菜单里有） */
  header .header-action, header a.button-primary, header a.button { display: none !important; }

  /* ② 三档对比表：真横向滚动，页面本身不左右跑 */
  .table-shell, [class*="table-shell"], [class*="table-wrap"], [role="region"] {
    overflow-x: auto !important; -webkit-overflow-scrolling: touch !important;
    max-width: 100% !important; border-radius: 12px !important;
  }
  .table-shell .comparison-table, .comparison-table { min-width: 720px !important; }
  section, main, footer, .container, .wrap { max-width: 100% !important; }

  /* ③ 首屏大图的修正只写在 index.html 里（别的页面也有 .hero-media，全局改会弄坏）*/

  /* ④ 9~11px 的标签抬到 12px，别在手机上糊成一团 */
  .step-no, .flow-step__index, .result-index, .scope-type, .signal-line__code,
  .labor-status, .flow-token, .tier-cycle, .boundary-media-caption,
  .gidx__n, .gidx__h, figcaption, small { font-size: 12px !important; line-height: 1.45 !important; }

  /* ⑤ 兜底：任何行内元素都不许撑破屏幕 */
  img, table, pre, video, svg { max-width: 100% !important; }
}

@media (max-width: 400px) {
  .table-shell .comparison-table, .comparison-table { min-width: 660px !important; }
  .hero-media, [class*="hero-media"] { max-height: 330px !important; }
}
