/* ============================================================
   移动端兼容补丁（iPhone 14 / iOS Safari / 安卓微信内置浏览器）
   由 _deploy 统一注入，勿在各页面重复写兼容样式
   ============================================================ */
:root { --sat: env(safe-area-inset-top, 0px); --sab: env(safe-area-inset-bottom, 0px); --sal: env(safe-area-inset-left, 0px); --sar: env(safe-area-inset-right, 0px); }

/* 1) 底部固定导航/按钮避开 Home 指示条 */
.bottom-nav, .tabbar, .tab-bar, .action-bar, .footer-bar, .fixed-bottom, .submit-bar, .bottom-bar {
  padding-bottom: calc(6px + var(--sab)) !important;
}
.page { padding-bottom: calc(72px + var(--sab)) !important; }

/* 2) 顶部固定栏避开灵动岛/状态栏 */
.header, .topbar, .nav-bar, .navbar, .fixed-top, .page-header { padding-top: var(--sat); }

/* 3) iOS Safari 地址栏伸缩导致 100vh 溢出：用动态视口高度兜底 */
.page-full, .full-screen, .fullscreen { min-height: 100vh; min-height: -webkit-fill-available; min-height: 100dvh; }

/* 4) 输入框字号 <16px 会触发 iOS 聚焦自动放大页面 */
@media screen and (max-width: 900px) {
  input, select, textarea { font-size: 16px !important; }
  input[type=number] { -moz-appearance: textfield; appearance: textfield; }
  input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
}

/* 5) 滚动惯性 */
.scroll, .scroll-box, .list, .table-wrap, .table-responsive, .tabs { -webkit-overflow-scrolling: touch; }

/* 6) 宽表格横向滚动，不撑破页面 */
table { max-width: 100%; }
.table-wrap, .table-responsive, .card table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* 7) 图片与长文本不溢出 */
img { max-width: 100%; height: auto; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { word-break: break-word; overflow-wrap: anywhere; }

/* 8) 去掉安卓/微信点击灰块，给出点击反馈 */
a, button, .btn, [onclick], .tab, .tab-item { -webkit-tap-highlight-color: transparent; }
a:active, button:active, .btn:active, .tab:active { opacity: .72; }

/* 9) 毛玻璃（iOS 需要 -webkit- 前缀） */
.blur, .backdrop, .glass { -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }

/* 10) 输入可选择、弹窗可滚动 */
input, textarea { -webkit-user-select: text; user-select: text; }
.modal, .popup, .dialog { max-height: 86vh; max-height: 86dvh; overflow-y: auto; -webkit-overflow-scrolling: touch; }

/* 11) 横屏/小平板：栅格自动收敛 */
@media screen and (max-width: 380px) {
  .grid, .form-grid { grid-template-columns: 1fr !important; }
}