/* 绿管通 3.0 · 静态站移动端适配 */
:root { --lvt-safe-top: env(safe-area-inset-top, 0px); --lvt-safe-bottom: env(safe-area-inset-bottom, 0px); }
html, body { max-width: 100%; overflow-x: hidden; -webkit-text-size-adjust: 100%; }
body { padding-bottom: var(--lvt-safe-bottom); }
img, video, canvas, svg { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; max-width: 100%; }
button, [role="button"], a { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
/* 顶部/底部固定条避开刘海与手势区 */
header, [class*="sticky"], [class*="fixed"] { padding-top: var(--lvt-safe-top); }
@media (max-width: 768px) {
  body { font-size: 14px; }
  .container, [class*="max-w-"] { padding-left: 12px !important; padding-right: 12px !important; }
  table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  table thead, table tbody, table tr { display: table; width: 100%; min-width: max-content; }
  table th, table td { white-space: nowrap; }
  [class*="grid-cols-"] { grid-template-columns: 1fr !important; }
  [class*="flex-row"], [class*="flex "] { flex-wrap: wrap; }
  textarea { min-height: 88px; }
  .dialog, [role="dialog"], [class*="modal"] { max-width: calc(100vw - 24px) !important; max-height: 88vh !important; overflow-y: auto !important; }
  /* 主包内固定底部提示条与聊天挂件避免遮挡 */
  #rt-boot-fail { padding-bottom: calc(10px + var(--lvt-safe-bottom)) !important; }
  [id*="chat"], [class*="chat-widget"] { max-width: 100vw !important; }
}
@media (max-width: 480px) {
  h1 { font-size: 1.35rem; } h2 { font-size: 1.2rem; } h3 { font-size: 1.05rem; }
  button, .btn, [role="button"] { min-height: 40px; }
  input, select { min-height: 40px; }
}
@media (hover: none) and (pointer: coarse) {
  button:hover, a:hover { filter: none !important; }
}
