
/* ===== 文档中心在线阅读页（dr-）：布局 DNA 对齐视频播放页（vp-） ===== */
.dr-layout { display:flex; gap:24px; margin-top:24px; align-items:flex-start; }
.dr-sidebar {
  width:300px; flex-shrink:0; position:sticky; top:88px;
  max-height:calc(100vh - 108px); overflow-y:auto;
  background:#fff; border:1px solid var(--border-light,#e5e9f0);
  border-radius:12px; padding:10px; scrollbar-width:thin;
}
.dr-sidebar::-webkit-scrollbar { width:5px; }
.dr-sidebar::-webkit-scrollbar-thumb { background:rgba(13,37,64,.18); border-radius:3px; }
.dr-side-head { display:flex; align-items:center; gap:8px; padding:8px 10px 8px; }
.dr-side-title { flex:1; min-width:0; font-size:14px; font-weight:700; color:var(--text,#1e2a3a); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dr-side-cnt { flex-shrink:0; font-size:11px; font-weight:600; color:var(--text-light,#64748b); margin-left:6px; }
.dr-list { display:flex; flex-direction:column; gap:2px; }
.dr-item {
  display:flex; align-items:center; gap:10px; padding:7px 8px;
  border-radius:8px; text-decoration:none;
  border-left:3px solid transparent;
  transition:background .18s ease, border-color .18s ease;
}
.dr-item:hover { background:var(--bg-light,#f3f6fb); }
.dr-item.active { background:var(--primary,#1565c0); border-left-color:#f5a623; }
.dr-item-thumb { flex:0 0 56px; width:56px; height:56px; border-radius:6px; overflow:hidden; background:#f3f6fb; display:flex; align-items:center; justify-content:center; }
.dr-item-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.dr-thumb-ph { font-size:22px; color:#9db6d8; }
.dr-item-info { flex:1; min-width:0; }
.dr-item-name {
  font-size:13px; line-height:1.45; color:var(--text,#1e2a3a);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.dr-item-sub { display:block; font-size:11px; color:var(--text-lighter,#94a3b8); margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dr-item.active .dr-item-name { color:#fff; font-weight:600; }
.dr-item.active .dr-item-sub { color:rgba(255,255,255,.75); }
.dr-side-more {
  display:block; margin:8px 4px 4px; padding:8px 10px;
  font-size:12.5px; color:var(--primary,#1565c0); text-decoration:none;
  border-top:1px solid var(--border-light,#eef2f7); border-radius:0 0 8px 8px;
}
.dr-side-more:hover { color:var(--primary-dark,#0d4fa0); text-decoration:underline; }

/* #mtdoc3：左栏目录树 + 一键收起 */
.dr-side-btn {
  flex-shrink:0; border:1px solid var(--border-light,#e5e9f0); background:#fff;
  color:var(--text-light,#64748b); font-size:11.5px; font-weight:600; font-family:inherit;
  padding:3px 9px; border-radius:6px; cursor:pointer; transition:all .18s ease;
}
.dr-side-btn:hover { border-color:var(--primary,#1565c0); color:var(--primary,#1565c0); }
.dr-tree { border-top:1px solid var(--border-light,#eef2f7); padding:6px 4px; }
.dr-tree-list, .dr-tree-sub { list-style:none; margin:0; padding:0; }
.dr-tree-item {
  display:flex; align-items:center; gap:6px; padding:6px 8px; margin:1px 0;
  border-radius:7px; font-size:13px; color:var(--text,#1e2a3a); text-decoration:none;
  transition:background .15s ease;
}
.dr-tree-item:hover { background:var(--bg-light,#f3f6fb); }
.dr-tree-item.active { background:rgba(21,101,192,.09); color:var(--primary-dark,#0d4fa0); font-weight:700; }
.dr-tree-item.active .dr-tree-label { position:relative; padding-left:10px; }
.dr-tree-item.active .dr-tree-label::before {
  content:''; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:5px; height:5px; border-radius:2px; background:var(--primary,#1565c0);
}
.dr-tree-label { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dr-tree-cnt { flex-shrink:0; font-size:10.5px; font-weight:600; color:var(--text-lighter,#94a3b8); background:var(--bg-light,#f3f6fb); padding:1px 6px; border-radius:8px; }
.dr-tree-item.active .dr-tree-cnt { color:var(--primary-dark,#0d4fa0); background:rgba(21,101,192,.12); }
.dr-tree-sub { padding-left:14px; }
.dr-tree-sub .dr-tree-item { font-size:12.5px; padding:5px 8px; }
.dr-tree-sub.sub2 { padding-left:16px; }
.dr-tree-sub.sub2 .dr-tree-item { font-size:12px; color:var(--text-light,#64748b); }
.dr-tree-sub.sub2 .dr-tree-item.active { color:var(--primary-dark,#0d4fa0); }
/* 一键收起：左栏隐藏、右栏占满 */
.dr-layout.side-hidden .dr-sidebar { display:none; }
.dr-layout.side-hidden .dr-main { width:100%; max-width:100%; }
.dr-side-show-btn {
  display:inline-flex; align-items:center; gap:5px; margin-bottom:10px;
  border:1px solid var(--border-light,#e5e9f0); background:#fff;
  color:var(--text-light,#64748b); font-size:12px; font-weight:600; font-family:inherit;
  padding:6px 12px; border-radius:8px; cursor:pointer; transition:all .18s ease;
}
.dr-side-show-btn:hover { border-color:var(--primary,#1565c0); color:var(--primary,#1565c0); }
/* #mtdoc4：手风琴树头（二级节点） */
.dr-tree-acc {
  display:flex; align-items:center; gap:6px; width:100%; padding:8px 10px; margin:2px 0;
  border:1px solid var(--border-light,#e5e9f0); border-radius:8px; background:var(--bg-light,#f3f6fb);
  font-size:13.5px; font-weight:700; color:var(--text,#1e2a3a); font-family:inherit;
  cursor:pointer; text-align:left; transition:all .18s ease;
}
.dr-tree-acc:hover { border-color:var(--primary,#1565c0); color:var(--primary-dark,#0d4fa0); }
.dr-tree-acc-arrow { flex-shrink:0; font-size:11px; color:var(--primary,#1565c0); transition:transform .18s ease; }
.dr-tree-acc[aria-expanded="false"] .dr-tree-acc-arrow { transform:rotate(-90deg); }
.dr-tree-acc[aria-expanded="false"] + .dr-tree-subs { display:none; }
.dr-tree-subs { list-style:none; margin:4px 0 0; padding:0 0 0 10px; }
/* #mtdoc6：目录节点 = details 手风琴，展开文档清单 */
.dr-tree-cat summary { list-style:none; cursor:pointer; user-select:none; }
.dr-tree-cat summary::-webkit-details-marker { display:none; }
.dr-tree-arrow { flex-shrink:0; font-size:10px; color:var(--text-lighter,#94a3b8); transition:transform .15s ease; }
.dr-tree-cat[open] > summary .dr-tree-arrow { transform:rotate(90deg); }
.dr-tree-cat.on-path > summary .dr-tree-label { font-weight:700; color:var(--primary-dark,#0d4fa0); }
.dr-tree-cat.sub3 { margin:2px 0 2px 14px; }
.dr-tree-docs { list-style:none; margin:2px 0 4px; padding:0 0 0 14px; }
.dr-doc-item {
  display:flex; align-items:center; gap:6px; padding:5px 8px; margin:1px 0;
  border-radius:6px; font-size:12px; color:var(--text,#1e2a3a); text-decoration:none;
  transition:background .15s ease;
}
.dr-doc-item:hover { background:var(--bg-light,#f3f6fb); }
.dr-doc-item.active { background:var(--primary,#1565c0); color:#fff; font-weight:600; }
.dr-doc-item.active .dr-doc-ico { filter:brightness(3); }
.dr-doc-name { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
/* #mtdoc6：PJAX/切换加载遮罩（消灭 iframe 白条期） */
.dr-loadmask {
  position:absolute; inset:0; z-index:6; display:flex; align-items:center; justify-content:center; gap:8px;
  background:rgba(248,250,252,.94); color:#64748b; font-size:14px; font-weight:600;
}
.dr-loadmask[hidden] { display:none; }
.dr-tree-subs.sub3 { padding-left:14px; margin-top:2px; }
.dr-tree-subs.sub3 .dr-tree-item { font-size:12.5px; padding:5px 8px; }
/* #mtdoc4：阅读窗口加高（基准），收起左栏后等比例再 +1/4 */
.dr-reader-box .docs-ebook-frame { height:calc(100vh - 250px); min-height:660px; }
.dr-layout.side-hidden .dr-reader-box .docs-ebook-frame { height:calc((100vh - 250px)*1.25); min-height:825px; }
@media (max-width:768px) {
  .dr-reader-box .docs-ebook-frame { height:520px; min-height:0; }
  .dr-layout.side-hidden .dr-reader-box .docs-ebook-frame { height:520px; }
}

/* ----- 右栏 ----- */
.dr-main { flex:1; min-width:0; }
.dr-reader-box {
  position:relative; width:100%;
  /* 2026-08-31 #978：照搬产品详情页被认可的式样——不固定高度，随页面内容完整展开。
     旧 height:calc(100vh-300px) 固定盒 + 按宽度适配的 A4 竖版页面 → 下半截被 overflow:hidden 裁掉。
     min-height 兼容锁定态（.dr-lock 为 inset:0 绝对定位）与加载态。 */
  min-height:560px;
  background:#f8fafc; border:1px solid var(--border-light,#e5e9f0);
  border-radius:12px; overflow:hidden;
  box-shadow:0 14px 34px rgba(13,37,64,.12);
}
/* 在线阅读器（产品详情页同款「产品资料（在线版）」iframe，由 product-ebook-panel.php 渲染）：
   中和资料区默认的黄色边框/虚线分隔，使阅读器在卡片内干净铺满，且面板常显 */
.dr-reader-box .docs-panel { display:block; margin-top:0; border-top:0; padding-top:0; }
.dr-reader-box .docs-panel-item { border-color:transparent; background:transparent; }

/* 锁定占位（无权限：不输出真实 URL） */
.dr-lock {
  position:absolute; inset:0;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px;
  background:linear-gradient(160deg,#f4f7fb 0%,#eaf1f9 100%);
  color:#64748b; text-align:center; padding:30px;
}
.dr-lock-icon { font-size:46px; }
.dr-lock h2 { font-size:20px; color:#1e293b; margin:8px 0 4px; }
.dr-lock p { font-size:14px; margin:0 0 18px; }
.dr-lock-btn {
  display:inline-block; background:#2a6eb0; color:#fff; text-decoration:none;
  padding:11px 30px; border-radius:8px; font-size:14px; font-weight:600;
  transition:background .18s ease, transform .18s ease;
}
.dr-lock-btn:hover { background:#1f5a94; transform:translateY(-1px); }
.dr-lock-btn.dr-lock-dim { background:#e2e8f0; color:#64748b; cursor:not-allowed; transform:none; }
.dr-lock-tip { font-size:12px; color:#94a3b8; margin-top:14px; }
.dr-lock-tip a { color:#2563eb; }

.dr-title { display:flex; align-items:center; flex-wrap:wrap; gap:10px; font-size:22px; font-weight:800; color:var(--text,#1e2a3a); margin:18px 0 10px; line-height:1.4; }
.dr-badge { flex-shrink:0; font-size:11px; font-weight:700; color:#1565c0; background:#e7f0fb; padding:3px 9px; border-radius:4px; }
.dr-meta {
  display:flex; align-items:center; flex-wrap:wrap; gap:16px;
  font-size:13px; color:var(--text-light,#64748b);
  padding-bottom:14px; border-bottom:1px solid var(--border-light,#eef2f7);
}
.dr-meta b { color:#334155; font-weight:600; }
.dr-meta-link { color:var(--primary,#1565c0); text-decoration:none; }
.dr-meta-link:hover { text-decoration:underline; }
/* #mtdoc2：「复制链接分享 / 新窗口打开」已移除，meta 右侧改放关联产品引导 */
.dr-act-prod { color:#fff; background:var(--primary,#1565c0); border-color:var(--primary,#1565c0); font-weight:600; }
.dr-act-prod:hover { background:var(--primary-dark,#0d4fa0); }
/* #mtdoc2b：关联产品醒目卡（图文） */
.dr-pcard {
  display:flex; align-items:center; gap:14px; margin-top:14px; padding:12px 16px;
  border:1.5px solid var(--primary,#1565c0); border-radius:12px;
  background:linear-gradient(135deg, rgba(21,101,192,.06), rgba(21,101,192,.12));
  text-decoration:none; transition:box-shadow .18s ease, transform .18s ease;
}
.dr-pcard:hover { box-shadow:0 8px 22px rgba(13,37,64,.16); transform:translateY(-1px); }
.dr-pcard-thumb {
  flex:0 0 64px; width:64px; height:64px; border-radius:8px; overflow:hidden;
  background:#fff; border:1px solid var(--border-light,#e5e9f0);
  display:flex; align-items:center; justify-content:center;
}
.dr-pcard-thumb img { width:100%; height:100%; object-fit:contain; display:block; }
.dr-pcard-ph { font-size:26px; color:#9db6d8; }
.dr-pcard-info { flex:1; min-width:0; }
.dr-pcard-tag {
  display:inline-block; font-size:11px; font-weight:700; color:#fff;
  background:var(--primary,#1565c0); padding:2px 8px; border-radius:4px; margin-bottom:4px;
}
.dr-pcard-name {
  display:block; font-size:15px; font-weight:700; color:var(--text,#1e2a3a);
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; line-height:1.4;
}
.dr-pcard-sub { display:block; font-size:12px; color:var(--text-light,#64748b); margin-top:2px; }
.dr-pcard-go {
  flex-shrink:0; font-size:13px; font-weight:700; color:#fff;
  background:var(--primary,#1565c0); padding:9px 16px; border-radius:8px;
  transition:background .18s ease;
}
.dr-pcard:hover .dr-pcard-go { background:var(--primary-dark,#0d4fa0); }
.dr-meta-acts { display:inline-flex; gap:8px; margin-left:auto; }
.dr-act-btn {
  display:inline-block; font-size:12.5px; padding:6px 14px; border-radius:6px;
  color:#1565c0; border:1px solid #1565c0; background:#fff; text-decoration:none;
  transition:background .18s ease;
}
.dr-act-btn:hover { background:#e7f0fb; }
.dr-act-dl { color:#fff; background:#1565c0; border-color:#1565c0; }
.dr-act-dl:hover { background:#0d4fa0; }

/* 相关产品（胶囊，对齐视频页「相关机型」） */
.dr-products { margin-top:16px; }
.dr-prod-head { font-size:13px; font-weight:700; color:var(--primary-dark,#0d4fa0); margin-bottom:8px; }
.dr-prod-row { display:flex; flex-wrap:wrap; gap:8px; }
.dr-prod-link {
  display:inline-flex; align-items:center; gap:6px; max-width:320px;
  font-size:13px; color:var(--primary-dark,#0d4fa0); text-decoration:none; font-weight:600;
}
.dr-prod-link:hover { color:var(--primary,#1565c0); text-decoration:underline; }
.dr-prod-link.cur { background:#e7f0fb; border-color:#1565c0; color:#0d4fa0; font-weight:600; }
.dr-prod-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.dr-nav { display:flex; gap:10px; margin-top:18px; flex-wrap:wrap; }
.dr-nav-btn { min-width:110px; text-align:center; }
.dr-back { margin-left:auto; }

/* ----- 响应式（对齐视频页断点） ----- */
@media (max-width:900px) {
  .dr-layout { flex-direction:column; gap:16px; }
  .dr-sidebar { width:100%; position:static; max-height:360px; order:2; }
  /* align-items:flex-start 在 column 布局下会让主栏按内容收缩(fit-content)，
     flipbook 工具栏最大内容宽 > 可用宽 → 页面横向溢出（箭头被推出视口）；
     移动端强制主栏占满整行 */
  .dr-main { order:1; width:100%; max-width:100%; }
  /* 阅读器 iframe 高 480px（移动端），盒子随内容展开，避免被固定高度裁切 */
  .dr-reader-box { min-height:480px; }
  .dr-item-thumb { flex-basis:48px; width:48px; height:48px; }
  .dr-title { font-size:18px; }
  .dr-meta-acts { margin-left:0; }
  .dr-pcard { flex-wrap:wrap; gap:10px; padding:11px 12px; }
  .dr-pcard-thumb { flex-basis:52px; width:52px; height:52px; }
  .dr-pcard-name { white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
  .dr-pcard-go { width:100%; text-align:center; }
  .dr-nav-btn { min-width:0; flex:1; }
  .dr-back { margin-left:0; }
  .dr-prod-link { padding:6px 10px; font-size:12px; }
  .dr-prod-link { max-width:100%; }
}

/* #bizcta 阅读页右栏业务承接三卡 + 左栏分页 */
.dr-bizcta{margin-top:34px;}
.dr-pager{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 10px 4px;border-top:1px solid var(--border-light,#eef2f7);margin-top:4px;}
.dr-pg-btn{border:1px solid var(--border,#e2e8f0);background:#fff;color:var(--text-light,#64748b);border-radius:4px;width:26px;height:24px;line-height:1;font-size:12px;font-family:inherit;cursor:pointer;transition:all .18s;}
.dr-pg-btn:hover:not(:disabled){border-color:var(--primary,#A67C52);color:var(--primary,#A67C52);}
.dr-pg-btn:disabled{opacity:.4;cursor:not-allowed;}
.dr-pg-info{font-size:11px;color:var(--text-light,#64748b);}
.dr-list .dr-item[hidden]{display:none !important;}
