/* ============================================================
   榕膳记 · App 外壳层
   只在「原生 App 内」或「已添加到桌面的 PWA」里生效（由 app-shell.js
   给 <html> 加上 .rsj-app 类来触发），普通浏览器访问网站不受影响，
   避免和浏览器自带的地址栏／工具栏打架。

   解决的是「看起来还是网页」的那几个细节：
   1. 长按会弹浏览器的复制/搜索菜单、文字能选中  → 全部关掉
   2. 安卓上还有滚动条、有橡皮筋回弹            → 隐掉、收住

   ⚠️ 2026-10-18 老板要求「底部标签栏没用，整个去掉」——
   原来第 3 条「补一个真的底部标签栏」已删除，连带删掉了为它预留的
   body 底部留白和 .fab 上移。导航改走首页入口卡片 + 各页返回按钮。
   ============================================================ */

/* ---------- 1. 抹掉浏览器痕迹 ---------- */

/* 长按不弹系统菜单（图片另存为、复制、搜索） */
html.rsj-app {
  -webkit-touch-callout: none;
}

/* 文字不可选中 —— 这是网页和 App 手感差异最明显的一处。
   输入框、文本域必须放开，否则店员没法编辑。 */
html.rsj-app body {
  -webkit-user-select: none;
  user-select: none;
}
html.rsj-app input,
html.rsj-app textarea,
html.rsj-app [contenteditable="true"] {
  -webkit-user-select: text;
  user-select: text;
  -webkit-touch-callout: default;
}

/* 安卓 WebView 默认会画滚动条，真 App 里没有这种东西 */
html.rsj-app ::-webkit-scrollbar {
  width: 0;
  height: 0;
}
html.rsj-app body,
html.rsj-app .wrap,
html.rsj-app main {
  scrollbar-width: none;
}

/* 拖到顶/底时的橡皮筋回弹收住，别露出白色底 */
html.rsj-app body {
  overscroll-behavior-y: none;
}

/* 输入框聚焦时 iOS/WebView 会整页放大，锁住 */
html.rsj-app input,
html.rsj-app textarea,
html.rsj-app select {
  font-size: 16px;
}

/* ---------- 3. 顶部状态栏留白 ---------- */
/* 原生壳里状态栏是品牌色，页面内容不应该顶到系统状态栏底下。
   只在确实没有自己顶栏的页面由 JS 决定要不要加这个类。 */
html.rsj-app.rsj-need-topgap body {
  padding-top: env(safe-area-inset-top, 0px);
}

/* ---------- 3.5 下载入口不再藏 ---------- */
/* 原来这里在 App 里把首页的「下载安卓 App」卡片、安装页的 APK 面板一起
   display:none —— 逻辑是「已经装了就别再劝人装」。2026-10-22 老板的反馈：
   「缓存出来了 下载APP就没了，每次都这样，有时候打开也是没的，什么情况」——
   同一个首页在浏览器里六个、在 App 里五个，他以为是坏了。宁可就多余一块，
   也不要让人猜哪里少了东西。首页六件事从此在任何环境下都一样。
   （[data-rsj-hide-in-app] 这个通用钩子保留：别的地方要藏还是能藏。） */
html.rsj-app [data-rsj-hide-in-app] {
  display: none !important;
}

/* ---------- 4. 滚动性能 ---------- */
/* 页面背景有两层全屏 fixed 伪元素：一层多道 radial-gradient，
   一层 repeating-linear-gradient 纸纹 + mask-image。
   在桌面浏览器上没问题，但安卓 WebView 滚动时它们会跟着每帧重绘，
   是中低端手机「滚一卡顿一下」的主因。

   处理：纸纹层直接不渲染（视觉上几乎看不出差别）；
   渐变层强制提升为独立合成层，滚动时不再重绘。 */
html.rsj-app body::after {
  display: none !important;
}
html.rsj-app body::before {
  transform: translateZ(0);
  backface-visibility: hidden;
}
