/* ============================================================
   mobile.css — 手机端显示适配（≤640px）
   所有规则包在 @media (max-width: 640px) 内，不影响桌面端。
   引入位置：各 HTML <head> 中 main.css 之后。
   ============================================================ */

@media (max-width: 640px) {

  /* ---------- 1. 底部固定 Tab 栏 ---------- */
  /* HTML 中引用了 safe-area-bottom 类但 main.css 未定义，这里补上：
     iPhone 刘海屏底部安全区，避免 Tab 栏贴到 Home 指示条 */
  body > nav.fixed.bottom-0.safe-area-bottom {
    height: calc(3.5rem + env(safe-area-inset-bottom, 0px));
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  /* 页脚在 <main pb-16> 之外，会被固定 Tab 栏遮住最后一行。
     只有存在底部 Tab 栏的页面（body 直接子级有 fixed nav）才加底部留白；
     contact.html / admin.html 无 Tab 栏，不受影响 */
  body:has(> nav.fixed.bottom-0) > footer {
    padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0px));
  }

  /* ---------- 2. 表单：防 iOS 聚焦自动缩放（字号 <16px 会触发） ---------- */
  input[type="text"],
  input[type="tel"],
  input[type="password"],
  input[type="email"],
  input[type="number"],
  input[type="search"],
  input:not([type]),
  select,
  textarea {
    font-size: 16px;
  }

  /* ---------- 3. 顶部导航：登录/注册按钮可点高度 ≥40px ---------- */
  body > nav.sticky a[href="login.html"],
  body > nav.sticky a[href="register.html"] {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
  }

  /* ---------- 4. 首页 Hero 底部双按钮：375px 下第二个按钮被裁切 ----------
     btn-primary/btn-secondary 全站仅用于 Hero，缩小水平内边距保证完整显示 */
  a.btn-primary.px-8,
  a.btn-secondary.px-8 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  /* 极端窄屏（<360px）允许折行 */
  a.btn-primary,
  a.btn-secondary {
    white-space: nowrap;
  }

  /* ---------- 5. 客服悬浮按钮避开底部 Tab 栏安全区 ---------- */
  body > a.fixed[href*="contact"] {
    bottom: calc(74px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ---------- 6. AI 前端升级板块移动适配（深度分析卡片/专家团/复盘） ---------- */
@media (max-width: 640px) {
  /* 正反辩论两卡并排 → 单列 */
  .aix-debate { grid-template-columns: 1fr; }
  /* 比分参考四卡 → 2x2 */
  .aix-scores { grid-template-columns: repeat(2, 1fr); }
  /* 概率条数值字号收窄，防止小屏挤压 */
  .aix-bar-val { width: 46px; font-size: 16px; }
  /* 专家卡/策略卡最小列宽收紧，避免 360px 屏横向溢出 */
  .stg-experts { grid-template-columns: 1fr; }
  .stg-strategies { grid-template-columns: 1fr; }
  /* 资金分配表允许横向滚动而非撑破版面 */
  .stg-table { min-width: 520px; }
  .stg-table-wrap, .card:has(> .stg-table) { overflow-x: auto; }
  /* 复盘卡单列 */
  .rev-grid { grid-template-columns: 1fr; }
}
