/* dazi-ui.css — 全站共享 UI 适配层 v2026102101
   借鉴 ltv2 适配规则的页面版: 触控 44px 下限 / hover 仅指针设备 / 安全区 / 三档断点 / 引擎降级分支。
   本层只做覆盖与增强, 不改各页结构; 须在各页自身样式(training-list.css 等)之后加载。 */

/* ===== 按钮: 纯色体系(去渐变去投影), active 变暗, 悬浮仅指针设备 ===== */
:root {
  --ui-brand: #5b5bd6;
  --ui-brand-strong: #4a4ac2;
  --ui-brand-tint: rgba(91, 91, 214, .08);
  --ui-dim: #5b6478;
  --ui-line: #e6e8ee;
}
.level-card .ops .btn {
  min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 12px; padding: 0 14px; font-size: 14px; line-height: 1; letter-spacing: .02em;
  touch-action: manipulation; -webkit-tap-highlight-color: transparent; user-select: none;
  transition: background .15s, color .15s, border-color .15s, opacity .15s;
  transform: none; box-shadow: none;
}
.btn-play { background: var(--ui-brand); color: #fff; }
.btn-rank { background: #fff; color: var(--ui-dim); border: 1.5px solid var(--ui-line); flex: 0 0 88px; }
.level-card.locked .btn-play { background: #c3cde0; }
.btn-play:active, .btn-rank:active { opacity: .82; }
@media (hover: hover) {
  .btn-play:hover { background: var(--ui-brand-strong); filter: none; }
  .btn-rank:hover { background: var(--ui-brand-tint); border-color: var(--ui-brand); color: var(--ui-brand-strong); }
}
/* 触屏: 取消卡片位移式悬浮(防粘滞), 保留桌面悬浮提升 */
@media (hover: none) {
  .level-card:not(.locked):hover { transform: none; box-shadow: 0 12px 28px -14px rgba(70, 80, 140, .18); }
  .btn-play:hover { background: var(--ui-brand); filter: none; }
  .btn-rank:hover { background: #fff; color: var(--ui-dim); border-color: var(--ui-line); }
}
/* VIP 卡悬浮光晕与按钮投影统一取消(纯色体系) */
.level-card.vip:hover .btn-play { box-shadow: none; }

/* ===== 通用胶囊/链接按钮触控下限(各页 .btn / .pill 类兜底) ===== */
a.btn, button.btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }

/* ===== 三档断点(与 ltv2 一致): 560 / 760 / 960 ===== */
@media (max-width: 560px) {
  .page-wrap { padding: 16px 12px calc(46px + env(safe-area-inset-bottom, 0px)); }
  .page-head h1 { font-size: 22px; }
  .page-head .sub { font-size: 12px; }
  .level-grid { grid-template-columns: 1fr; gap: 12px; }
  .level-card { padding: 14px; border-radius: 14px; }
  .level-card .ops { gap: 10px; margin-top: 4px; }
  .group-title { font-size: 15px; margin-bottom: 10px; }
  .group-section { margin-bottom: 20px; }
}
@media (min-width: 561px) and (max-width: 760px) {
  .level-grid { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
}
@media (min-width: 761px) and (max-width: 960px) {
  .level-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
}

/* ===== 排行榜弹窗触控行高 ===== */
.rank-table td { padding: 12px 8px; }
@media (max-width: 560px) { .rank-table { font-size: 13px; } }

/* ===== 引擎分支(Gecko 不支持 css zoom: 页面如需缩放走 transform, 由 data-engine 区分) ===== */
html[data-engine="gecko"] .ui-zoom-only { display: none; }

/* ===== 微信内嵌: 视频自动播放受限时由各页 JS 降级, 此处只做标记钩子 ===== */
