/* 原生 App 内嵌模式的差量样式（/shu?saved=<id>&embed=1）。
 *
 * 全部规则都挂在 .embed 之下，网页端不受任何影响——所以这份文件可以无条件引入，
 * 也不必去动 styles.css（那份是 immutable 缓存，改一次全站都要 bump ?v）。
 *
 * 原则：只留命书内容区，页面外壳一律隐藏——那些由原生控件承担。
 */

/* —— 页面外壳：顶栏、题款、起盘表单、SEO 区、页脚 ——
 * 四条线（/shu /he /gua /qimen）共用同一套区块类名，所以按类名收口，
 * 不要按各页的 id 逐个列——加一条线就漏一处。 */
.embed .topbar,
.embed .p-lede,
.embed .p-form,
.embed .main-foot,
.embed #empty-state,
.embed .shu-seo,
.embed .he-seo,
.embed .he-faq,
.embed .bk-faq {
  display: none !important;
}

/* —— 下载 PDF：网页那套是「隐藏表单 + iframe 触发下载」，WKWebView 不支持下载，
 * 点了毫无反应。App 的阅读页顶栏有原生的「存 PDF」，这里把死按钮藏掉，
 * 免得两个入口一个能用一个不能用。 */
.embed #ai-download,
.embed #ai-download-pdf,
.embed #gua-download,
.embed #gua-dl-pdf,
.embed #qimen-download,
.embed #syn-download,
.embed #syn-dl-pdf {
  display: none !important;
}

/* —— 续问区：由原生对话屏承担，WebView 里不再出现 ——
 * 各页容器 id 不同（#ai-followup / #syn-followup / #gua-followup / #qimen-followup），
 * 但都带 .ai-followup 类，按类名一网打尽。 */
.embed .ai-followup,
.embed .followup-workspace,
.embed [data-followup-focus] {
  display: none !important;
}

/* —— 去掉为页面外壳留的留白，让正文顶到 WebView 边缘 —— */
.embed body {
  background: var(--ivory);
}

.embed .page {
  padding-top: 0;
  padding-bottom: 0;
}

.embed .main {
  padding-top: 0;
}

.embed .p-result {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

/* —— 抹掉 WebView 的网页痕迹 —— */
.embed body {
  /* 长按不弹「拷贝 / 查询」系统菜单；正文仍可正常滚动。 */
  -webkit-touch-callout: none;
  /* 滚动链：到底了不要把橡皮筋传给原生滚动视图，否则两层一起弹很廉价。 */
  overscroll-behavior: none;
}

/* 正文本身仍允许选中（用户要复制某句命书是合理需求），
   但界面元素不该能被选中——那是网页才有的行为。 */
.embed .sec-head,
.embed .sn,
.embed figcaption,
.embed table th {
  -webkit-user-select: none;
  user-select: none;
}

/* 点击高亮方块是移动网页最明显的破绽之一。 */
.embed * {
  -webkit-tap-highlight-color: transparent;
}

/* ═══ 夜间（App 的深色外观，/shu?...&embed=1&dark=1）═══
 *
 * 当初 App 把 `UIUserInterfaceStyle` 锁成 Light，理由正是这一块：阅读页是
 * 「原生壳 + WebView」，网页没有夜间 → 深色壳里嵌一块刺眼的白。这一节就是补上它。
 *
 * ⚠️ 参数名叫 `dark` 而**不是 `night`**，这一条别改回去（2026-08-08 踩过）：
 * `shu.html` / `index.html` 上挂着 `night.js`，它的触发条件就是 `?night`——
 * 用 night 当参数名会顺手点亮网页那套「深夜案头」场景（吊灯 + 光锥 + 暖亮纸），
 * 它注入的 night.css 会把纸改回**亮**的，正好和这一节对着干。
 *
 * 也别拿 `/night.css` 顶替本节：那份是场景（房间黑、纸仍亮），而 embed 模式下
 * WebView 里只有那张纸、没有房间，套上去等于没改。
 *
 * 取值与原生侧 `Design/Theme.swift` 的 Ink 深色一档**一一对应**，两边要一起动，
 * 否则 WebView 与原生壳会差出一道边。
 */
html.embed.dark {
  --parchment: #131314;
  --ivory: #1d1d1f;
  --warm-sand: #2a2a2d;
  --tag-bg: #2a2a2d;
  --brand: #ecebe9;
  --brand-light: #c7c5c1;
  /* 这两个是 styles.css 里另立门户的深色令牌（h1 吃的就是 --near-black），
     漏掉它们的后果是标题在深色下几乎隐形——2026-08-08 渲染出来才看见。
     加新令牌时记得回来补这一节。 */
  --near-black: #ecebe9;
  --dark-warm: #d8d5cd;
  --stone: #97958f;
  --olive: #aeaba4;
  --gold: #8a8880;
  --seal: #c0625a;
  --seal-soft: #ce7b70;
  --border: #3c3c40;
  --border-soft: #2c2c30;
  color-scheme: dark;
}

/* 纸面本身。`.embed body` 上面已经写死了 `var(--ivory)`，变量一换就跟着走；
   `.page` 在 styles.css 里另有自己的底色，这里一并压平。 */
html.embed.dark body,
html.embed.dark .page {
  background: var(--ivory);
}

/* 表格斑马纹与表头底：浅色那套用的是接近白的定值，夜里会烧眼。 */
html.embed.dark table th {
  background: var(--warm-sand);
}
html.embed.dark table tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.02);
}

/* 正文里几块用「白色半透明」当抬起面的板子。浅色下是微微提亮，深色下 28% 白
   会浮成一块奶灰，比正文还抢眼——换成同样思路但适配深底的极淡提亮。
   （`.sec-head .sn` 不在此列：它是白字压朱底，两种模式都成立，别去动它。） */
html.embed.dark .observation-card,
html.embed.dark .next-steps {
  background: rgba(255, 255, 255, 0.045);
}

/* 图片与插画是按浅色纸调的，夜里整片发光——压一档亮度，别让它成为屏幕上最亮的东西。 */
html.embed.dark img,
html.embed.dark svg {
  filter: brightness(0.86);
}
