/* 全站环境适配层：各页样式之后加载，统一安全区与基础渲染 */

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* 安全区基准改用真实 env()，去掉各页面里 44px 的硬编码兜底 */
html:root{
  --safe-t: env(safe-area-inset-top, 0px);
  --safe-b: env(safe-area-inset-bottom, 0px);
}

/* App 内置 WebView：内容本就在系统状态栏下方，不再额外留白 */
html:root.in-app{
  --safe-t: 0px;
  --safe-b: 0px;
}

/* 浏览器全屏（PWA）时 Android 的 env() 常返回 0，补一个状态栏高度 */
@media (display-mode: standalone){
  html:root:not(.in-app):not(.ios){
    --safe-t: max(env(safe-area-inset-top, 0px), 24px);
  }
}

/* ===== 全站禁止文本选中与长按系统菜单 =====
   注意：不要用 * 或 body 直接压 user-select / touch-callout，
   否则输入框的光标拖拽会被一起禁用。这里只作用于非表单元素。 */
/* 注意：-webkit-touch-callout 会让 WebView 连输入框的光标手柄一起禁掉，这里不用它，
   长按系统菜单交给 ui-adapt.js 的 contextmenu 拦截处理 */
body :not(input):not(textarea):not(select):not([contenteditable]):not(.allow-select){
  -webkit-user-select:none;
  -moz-user-select:none;
  user-select:none;
}
/* user-select 在 Blink 里是继承属性，表单元素必须显式恢复，否则光标无法选中/拖动 */
input, textarea, select,
[contenteditable="true"], [contenteditable=""],
.allow-select, .allow-select *{
  -webkit-user-select:text !important;
  -moz-user-select:text !important;
  user-select:text !important;
}
