/* cb-critical.css — L3 split from cocobook-reading.css; sitewide shell/tokens/fonts. No copy changes. */
/* ==========================================================================
   CocoBook Docs — I · 安静（全站）
   对标 design/wpcy-doc-shell-prototypes/i-anjing.html
   字：Windfonts 普惠体(壳) + 思源黑体 CJK(读)
   标：Motuicons Phosphor Light（cocobook-icons.js）
   无品牌绿 · #10491 独立
   ========================================================================== */
/* cb-tokens:state v1 */
:root{--cb-hover:rgba(10,10,10,.045);--cb-hover-strong:rgba(10,10,10,.075);--cb-focus-ring:#0a0a0a;--cb-focus-glow:rgba(10,10,10,.05);--cb-dim:.75}
html.cb-dark,html.dark-mode{--cb-hover:rgba(255,255,255,.05);--cb-hover-strong:rgba(255,255,255,.09);--cb-focus-ring:#f0f0f0;--cb-focus-glow:rgba(255,255,255,.05);--cb-dim:.75}
:root {
  --cb-ink: #4a4a4a;
  --cb-ink-title: #3a3a3a;
  --cb-ink-near: #0a0a0a;
  --cb-muted: #6b6b6b;
  --cb-muted-2: #aaaaaa;
  --cb-line: #e8e8e8;
  --cb-line-soft: #eeeeee;
  --cb-canvas: #f3f3f3;
  --cb-paper: #ffffff;
  --cb-well: #f0f0f0;
  --cb-fill: #f7f7f7;
  --cb-accent: #0a0a0a;
  --cb-on-accent: #ffffff;

  --cb-font-ui-plain: "wenfeng-albbpht", "PingFang SC", "Hiragino Sans GB",
    "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;
  --cb-font-ui: "CB Brand UI", "wenfeng-albbpht", "PingFang SC", "Hiragino Sans GB",
    "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;
  --cb-font-body: "wenfeng-syhtcjk", "PingFang SC", "Hiragino Sans GB",
    "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;
  --cb-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --cb-fs-ui: 13px;
  --cb-fs-meta: 12px;
  --cb-fs-label: 11px;
  --cb-lh-ui: 1.45;
  --cb-measure: 40rem;
  --cb-shell: 1120px;
  --cb-aside: 220px;
  --cb-radius: 12px;
  --cb-radius-sm: 8px;
  /* tabler88 圆角刻度：--cb-radius(12) / --cb-radius-sm(8) 沿用 */
  --cb-radius-2xs: 4px;
  --cb-radius-xs: 6px;
  --cb-radius-md: 10px;
  --cb-radius-lg: 14px;
  --cb-radius-xl: 16px;
  --cb-radius-pill: 999px;
  --cb-shadow: 0 0 10px rgba(10, 10, 10, 0.06);
  --cb-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --cb-dur: 160ms;
  --cb-icon: 16px;

  --color-primary: #0a0a0a !important;
  --color-primary-light: rgba(10, 10, 10, 0.06) !important;
  --color-link: #0a0a0a !important;
  --color-page: #0a0a0a !important;
  --color-chapter: #3a3a3a !important;
  --color-book: #3a3a3a !important;
  --color-bookshelf: #3a3a3a !important;
  --font-body: var(--cb-font-body);
  --font-heading: var(--cb-font-ui)}
/* —— 基座 —— */
html {
  font-size: 16px;
  background: var(--cb-canvas) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
html, body {
  font-family: var(--cb-font-ui) !important;
  font-size: var(--cb-fs-ui) !important;
  font-weight: 400 !important;
  line-height: var(--cb-lh-ui) !important;
  letter-spacing: 0.02em !important;
  color: var(--cb-ink) !important;
  background: var(--cb-canvas) !important;
}
body { min-height: 100vh; padding-bottom: 4.5rem; }
/* —— 图标 —— */
.svg-icon,
svg.svg-icon {
  width: var(--cb-icon) !important;
  height: var(--cb-icon) !important;
  min-width: var(--cb-icon);
  color: var(--cb-muted) !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 0.9;
  flex: 0 0 auto;
  vertical-align: -0.15em;
  transition: color var(--cb-dur) var(--cb-ease), opacity var(--cb-dur) var(--cb-ease);
}
a:hover .svg-icon,
button:hover .svg-icon,
.text-link:hover .svg-icon { color: var(--cb-ink-near) !important; opacity: 1; }
.icon .svg-icon,
.entity-list-item .icon .svg-icon {
  width: 15px !important;
  height: 15px !important;
  color: var(--cb-muted-2) !important;
}
header .header-links a .svg-icon {
  width: 15px !important;
  height: 15px !important;
}
header .search-box input,
header #header-search-box-input,
header input[type="search"],
header input[type="text"],
.global-search input {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--cb-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: 1.85rem !important;
  padding: 0 0.15rem !important;
  font-family: var(--cb-font-ui) !important;
  font-size: var(--cb-fs-ui) !important;
  font-weight: 400 !important;
  color: var(--cb-ink-near) !important;
  letter-spacing: 0.02em;
  -webkit-appearance: none !important;
  appearance: none !important;
}
header .search-box button,
header .search-box .svg-icon {
  color: var(--cb-muted) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
/* ==========================================================================
   页脚
   ========================================================================== */
.cb-footer {
  position: relative;
  margin-top: 2rem;
  padding: 1.75rem 1.5rem 2.25rem;
  border-top: 1px solid var(--cb-line);
  background: transparent;
  text-align: center;
}
.cb-footer__inner {
  max-width: var(--cb-shell);
  margin: 0 auto;
  font-family: var(--cb-font-ui);
  font-size: var(--cb-fs-meta);
  color: var(--cb-muted-2);
  letter-spacing: 0.06em;
}
.cb-footer a { color: var(--cb-muted); }
.cb-footer a:hover { color: var(--cb-ink-near); opacity: 1; }
.cb-footer__sep { margin: 0 0.55rem; opacity: 0.5; }
/* 原 BookStack 若有 footer */
footer#footer,
body > footer:not(.cb-footer) {
  background: transparent !important;
  border-top: 1px solid var(--cb-line) !important;
  color: var(--cb-muted-2) !important;
  font-size: var(--cb-fs-meta) !important;
  box-shadow: none !important;
}
.icon-list-item .svg-icon {
  color: var(--cb-muted-2) !important;
  width: 15px !important;
  height: 15px !important;
}
.entity-meta .svg-icon { width: 13px !important; height: 13px !important; }
.breadcrumbs .outline-hover,
a.outline-hover,
.breadcrumbs .svg-icon {
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.grid-card .svg-icon { width: 12px !important; height: 12px !important; color: #bbb !important; }
/* ==========================================================================
   深色：仍安静
   ========================================================================== */
html.cb-dark,
html.cb-dark body {
  --cb-ink: #b0b0b0;
  --cb-ink-title: #c8c8c8;
  --cb-ink-near: #f0f0f0;
  --cb-muted: #a1a1a1;
  --cb-muted-2: #666;
  --cb-line: #2a2a2a;
  --cb-line-soft: #262626;
  --cb-canvas: #141414;
  --cb-paper: #1c1c1c;
  --cb-well: #242424;
  --cb-fill: #222;
  --cb-accent: #f0f0f0;
  --cb-on-accent: #111;
  --cb-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
  --color-primary: #f0f0f0 !important;
  --color-primary-light: rgba(240, 240, 240, 0.08) !important;
  --color-link: #f0f0f0 !important;
  background: var(--cb-canvas) !important;
}
html.cb-dark .cb-footer { border-top-color: var(--cb-line); }
/* == Tabler 细线图标 == */
/* 覆盖上方 .svg-icon { fill: currentColor !important; stroke: none !important } */
svg.svg-icon[data-cb-set="tabler"],
header svg.svg-icon[data-cb-set="tabler"] { fill: none !important; stroke: currentColor !important; overflow: visible; }
svg.svg-icon[data-cb-set="tabler"] [fill="none"] { fill: none !important; }
svg.svg-icon[data-cb-set="tabler"] [stroke="currentColor"] { stroke: currentColor !important; }
/* == Tabler 尺寸与对齐 == */
/* 统一正方形尺寸：三档 16 / 15 / 13；清掉 BookStack 的 relative+bottom 偏移 */
svg.svg-icon[data-cb-set="tabler"] {
  --cb-i: var(--cb-icon, 16px);
  width: var(--cb-i) !important;
  height: var(--cb-i) !important;
  min-width: var(--cb-i) !important;
  min-height: var(--cb-i) !important;
  max-width: none !important;
  aspect-ratio: 1 / 1;
  flex: 0 0 var(--cb-i) !important;
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  vertical-align: -0.18em !important;
}
header .header-links a svg.svg-icon[data-cb-set="tabler"],
.icon svg.svg-icon[data-cb-set="tabler"],
.entity-list-item .icon svg.svg-icon[data-cb-set="tabler"],
.contents-list svg.svg-icon[data-cb-set="tabler"],
.icon-list-item svg.svg-icon[data-cb-set="tabler"],
.breadcrumbs svg.svg-icon[data-cb-set="tabler"] { --cb-i: 15px; }
.entity-meta svg.svg-icon[data-cb-set="tabler"],
.grid-card p svg.svg-icon[data-cb-set="tabler"],
small svg.svg-icon[data-cb-set="tabler"],
.text-muted svg.svg-icon[data-cb-set="tabler"] { --cb-i: 13px; vertical-align: -0.16em !important; }
header .header-links a svg.svg-icon[data-cb-set="tabler"],
.back-to-top .inner svg.svg-icon[data-cb-set="tabler"],
.icon-list-item svg.svg-icon[data-cb-set="tabler"],
.entity-meta-item svg.svg-icon[data-cb-set="tabler"] { vertical-align: 0 !important; }
.featured-image-container-wrap svg.svg-icon[data-cb-set="tabler"] {
  --cb-i: 28px;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%);
  color: var(--cb-muted-2) !important;
  opacity: 0.7;
}
.entity-meta .entity-meta-item svg.svg-icon[data-cb-set="tabler"] { margin-top: 0.22em !important; }
.grid-card .featured-image-container-wrap:has(> .featured-image-container:not([style*="background-image"])) > .svg-icon {
  position: static !important;
  transform: none !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  fill: currentColor !important;
  opacity: .8;
}
.tag-item .svg-icon { width: 12px !important; height: 12px !important; margin-right: 4px !important; opacity: .6; fill: currentColor; }
header form.search-box > #header-search-box-button {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 16px !important;
  height: 16px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  z-index: 1;
}
header form.search-box > #header-search-box-button .svg-icon {
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  position: static !important;
}
header form.search-box > #header-search-box-input {
  width: 100% !important;
  padding: 0 0.25rem 0 1.4rem !important;
  text-indent: 0 !important;
}
.activity-list-item small svg.svg-icon {
  width: 12px !important;
  height: 12px !important;
  margin: 0 !important;
  position: static !important;
  vertical-align: 0 !important;
}
.grid-card .grid-card-footer svg.svg-icon {
  width: 12px !important;
  height: 12px !important;
  margin: 0 !important;
  position: static !important;
}
.book-contents .entity-list-item > .icon svg.svg-icon {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 0 !important;
  bottom: 0 !important;
  fill: none !important;
  stroke: currentColor !important;
  background: transparent !important;
  opacity: 1 !important;
}
.book-contents .entity-list-item > .icon svg.svg-icon * {
  fill: none !important;
  stroke: currentColor !important;
}
.entity-meta .entity-meta-item svg.svg-icon {
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  color: var(--cb-side-faint) !important;
}
.actions .icon-list-item svg.svg-icon {
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  color: var(--cb-side-faint) !important;
}
.actions .icon-list-item:hover svg.svg-icon { color: var(--color-primary) !important; }
.book-contents .entity-list-item > .icon svg.svg-icon,
.book-contents .entity-list-item .icon svg {
  display: block !important;
}
/* 14. tabler11：正文 14px 及内部元素同比调整 + 全局字重 400 */
/* 14.1 正文基准 */
:root {
  --cb-fs: 14px;
  --cb-lh: 1.85;
}
/* 14.5 全局字重 400（含侧栏标题、人名、目录条目、书架标题、排序、当前项） */
body,
body *,
body *::before,
body *::after {
  font-weight: 400 !important;
}
body { font-synthesis: none; }
/* 15. tabler12：全局字重 400（提高优先级，压过带类名/ID 的 !important 规则） */
html body *:not(#cb-w400-a):not(#cb-w400-b),
html body *:not(#cb-w400-a):not(#cb-w400-b)::before,
html body *:not(#cb-w400-a):not(#cb-w400-b)::after {
  font-weight: 400 !important;
}
/* ===== tabler20 · 页眉工具栏 / 搜索 / 面包屑 / 返回顶部 / 下载 / 全宽 / 专注 / 字号 / 深色 ===== */
/* 1. 页眉：Logo 去掉 -12px 负边距，与页眉 24px 起点对齐；搜索框加宽加高 */
header#header { min-height: 52px; align-items: center !important; }
header#header .logo { margin: 0 !important; }
header#header form.search-box { width: 360px !important; max-width: 100%; height: 32px !important; margin: 0 !important; }
header#header form.search-box > #header-search-box-input {
  width: 100% !important; height: 32px !important; padding: 0 56px 0 34px !important;
  border: 1px solid transparent !important; border-radius: var(--cb-radius-sm) !important;
  background: rgba(0, 0, 0, .045) !important; font-size: 13px !important;
  transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}
header#header form.search-box > #header-search-box-input:focus {
  background: #fff !important; border-color: rgba(0, 0, 0, .14) !important;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, .04) !important; outline: none !important;
}
header#header #header-search-box-button { left: 11px !important; top: 8px !important; opacity: .55; }
header#header form.search-box:focus-within .cb-kbd { opacity: 0; }
header#header form.search-box [refs="global-search@suggestions"] {
  width: 520px !important; max-width: calc(100vw - 32px) !important; overflow: hidden}
.cb-focus-exit { display: none; }
html.cb-focus .cb-focus-exit {
  display: inline-flex; align-items: center; gap: 6px; position: fixed; top: 16px; right: 16px; z-index: 80;
  height: 32px; padding: 0 12px; border: 0; border-radius: var(--cb-radius-pill); background: rgba(17, 24, 39, .06);
  color: inherit; font-size: 12px; opacity: .6; cursor: pointer; transition: opacity .15s ease;
}
html.cb-focus .cb-focus-exit:hover { opacity: 1; }
.cb-focus-exit svg { width: 14px; height: 14px; }
/* 8. 深色外观 */
html.cb-dark { color-scheme: dark; }
html.cb-dark body { background: #0f1115 !important; color: #e4e4e7 !important; }
html.cb-dark header#header .logo, html.cb-dark header#header .links a { color: #e4e4e7 !important; }
html.cb-dark header#header form.search-box > #header-search-box-input { background: rgba(255, 255, 255, .06) !important; color: #e4e4e7 !important; }
html.cb-dark header#header form.search-box > #header-search-box-input:focus { background: #1b1f27 !important; border-color: #2f3542 !important; }
/* dark5-5 页头搜索框 A（Feng 18:32 经 Designer）：原样取自 /workspace/cb-darkfix/options/搜索框-A-中性实底.css。上一行偏蓝的 #1b1f27/#2f3542 被它覆盖（不删，保持差异最小）；
   z-index:3 那条浅色也生效：浅色点进搜索框后放大镜也能看见了。 */
/* 搜索框 A：中性实底。点进去后底色 #1a1a1a、边框 #2e2e2e，去掉 3px 外圈；图标变亮成 #c8c8c8。
   替换 reading.css L2200 的 #1b1f27 / #2f3542（偏蓝）。图标问题来自 L2498–2499（浅色的 #3a3a3a 在深色下也生效）。 */
html.cb-dark header#header form.search-box > #header-search-box-input:focus:not(#_){background:#1a1a1a!important;border-color:#2e2e2e!important;box-shadow:none!important}
html.cb-dark #header .search-box:focus-within #header-search-box-button:not(#_){color:#c8c8c8!important}
/* 放大镜被盖住的根因：BookStack 给输入框设了 z-index:2（dist/styles.css "header .search-box input"），
   主题 L2378 给放大镜按钮也是 z-index:2，但按钮在 DOM 里排在输入框前面，所以输入框一变成实底（点进去后），图标就被盖住。
   浅色模式点进去后同样看不到图标（白底盖住）。把按钮抬到 3： */
#header form.search-box > #header-search-box-button:not(#_){z-index:3!important}
html.cb-dark .card, html.cb-dark main.content-wrap.card { background: #171a21 !important; color: #e4e4e7 !important; box-shadow: 0 0 0 1px #232833 !important; }
html.cb-dark .text-muted, html.cb-dark .cb-dl-menu small, html.cb-dark .cb-dl-title { color: #8b93a1 !important; }
html.cb-dark .entity-list-item:hover{ background: #1f2430 !important; }
html.cb-dark input, html.cb-dark textarea, html.cb-dark select { background: #1b1f27 !important; color: #e4e4e7 !important; border-color: #2a2f3a !important; }
html.cb-dark .cb-dl-menu, html.cb-dark .dropdown-menu, html.cb-dark .dropdown-search-dropdown,
html.cb-dark header#header form.search-box [refs="global-search@suggestions"] { background: #1b1f27 !important; color: #e4e4e7 !important; box-shadow: 0 16px 40px rgba(0, 0, 0, .5), 0 0 0 1px #2a2f3a !important; }
html.cb-dark .cb-tool:hover, html.cb-dark .cb-tool[aria-pressed="true"], html.cb-dark .cb-dl-menu a:hover,
html.cb-dark nav.breadcrumbs > a.icon-list-item:hover, html.cb-dark nav.breadcrumbs .dropdown-search-toggle-breadcrumb:hover { background: var(--cb-hover-strong) !important; }
html.cb-dark .cb-tool-sep { background: rgba(255, 255, 255, .12); }
html.cb-dark .cb-kbd { border-color: rgba(255, 255, 255, .16); color: #8b93a1; }
html.cb-dark .cb-toast { background: #e8e8e8; color: #1a1a1a; }
html.cb-dark.cb-focus .cb-focus-exit { background: rgba(255, 255, 255, .08); }
/* 4. 搜索结果面板：去掉原生 -48px 左偏，与输入框左缘对齐 */
header#header form.search-box [refs="global-search@suggestions"] { left: 0 !important; right: auto !important; margin-left: 0 !important; }
/* tabler25 · 顶栏对齐与统一 Tabler 图标尺寸：放大镜垂直居中、图标统一 16px、字号标记对齐、导航高度 32 */
#header .search-box button{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;margin:0!important;height:16px!important;width:16px!important;line-height:0!important;display:inline-flex!important;align-items:center;justify-content:center;padding:0!important;}
#header .search-box button svg{width:16px!important;height:16px!important;margin:0!important;top:0!important;}
#header .search-box input::placeholder{line-height:normal;}
#header .header-links .links > a,#header .header-links .links > * > a{height:32px!important;display:inline-flex!important;align-items:center!important;gap:6px;padding-top:0!important;padding-bottom:0!important;}
#header .header-links .links svg.svg-icon{width:16px!important;height:16px!important;margin:0!important;top:0!important;}
/* tabler26 · 放大镜：top 8px 已居中，去掉 translateY 叠加；窄屏专用的「搜索」链接在宽屏重新隐藏 */
#header #header-search-box-button,#header .search-box #header-search-box-button{top:8px!important;transform:none!important;}
#header #header-search-box-button svg{vertical-align:top!important;}
@media (min-width:1000px){
  #header .header-links .links > a.hide-over-l,#header .header-links .links > * > a.hide-over-l{display:none!important;}
}
html.cb-dark #main-content #comments.cb-discuss:hover,html.cb-dark #main-content #comments.cb-discuss:focus-within{background:var(--cb-hover)!important;border-color:rgba(255,255,255,.14)!important;box-shadow:0 4px 18px rgba(0,0,0,.35)!important;}
/* ===== tabler28 · 搜索下拉 / 面包屑下拉 / 返回顶部 精修 ===== */
/* ---------- 1. 全局 live search 下拉 ---------- */
#header .global-search-suggestions.card {
  top: calc(100% + 8px) !important;
  padding: 6px !important;
  border: 1px solid rgba(10, 10, 10, .08) !important;
  border-radius: var(--cb-radius) !important;
  background: #fff !important;
  box-shadow: 0 12px 32px rgba(10, 10, 10, .10), 0 2px 6px rgba(10, 10, 10, .04) !important;
  overflow: hidden !important;
}
#header .global-search-suggestions [refs="global-search@suggestion-results"] { padding: 0 !important; }
#header .global-search-suggestions .entity-list { display: flex !important; flex-direction: column !important; gap: 2px !important; margin: 0 !important; }
#header .global-search-suggestions .entity-list-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 9px 10px !important;
  border: 0 !important;
  border-radius: var(--cb-radius-sm) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background-color .15s ease !important;
}
#header .global-search-suggestions .entity-list-item:hover,
#header .global-search-suggestions .entity-list-item:focus-visible,
#header .global-search-suggestions .entity-list-item.selected { background: var(--cb-hover) !important; outline: none !important; }
#header .global-search-suggestions .entity-list-item > .icon {
  flex: 0 0 16px !important;
  width: 16px !important; height: 16px !important;
  margin: 2px 0 0 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: none !important; border: 0 !important; border-radius: 0 !important;
  opacity: .65 !important;
}
#header .global-search-suggestions .entity-list-item > .icon svg { width: 16px !important; height: 16px !important; margin: 0 !important; }
#header .global-search-suggestions .entity-list-item > .content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  display: flex !important; flex-direction: column !important; gap: 2px !important;
}
#header .global-search-suggestions .entity-list-item-name {
  margin: 0 !important;
  font-size: 14px !important; font-weight: 400 !important; line-height: 1.45 !important;
  color: #0a0a0a !important;
  white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
  writing-mode: horizontal-tb !important;
}
#header .global-search-suggestions .entity-item-snippet { margin: 0 !important; }
#header .global-search-suggestions .entity-item-snippet p {
  margin: 0 !important;
  font-size: 12px !important; line-height: 1.55 !important; color: var(--cb-muted) !important;
  display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important;
}
#header .global-search-suggestions .entity-item-snippet:empty { display: none !important; }
#header .global-search-suggestions .entity-list-item .text-muted,
#header .global-search-suggestions .entity-list-item .entity-meta { font-size: 12px !important; color: var(--cb-muted) !important; }
#header .global-search-suggestions .cb-item-meta { display: none !important; }
#header .global-search-suggestions > a,
#header .global-search-suggestions .global-search-view-all {
  display: block !important; margin: 4px 0 0 !important; padding: 9px 10px !important;
  border-top: 1px solid rgba(10, 10, 10, .06) !important; border-radius: 0 0 8px 8px !important;
  font-size: 13px !important; color: #4a4a4a !important; text-align: center !important;
}
/* 搜索框放大镜：垂直居中、可见 */
#header .search-box { position: relative !important; }
#header-search-box-button {
  position: absolute !important; top: 50% !important; left: 12px !important;
  transform: translateY(-50%) !important; margin: 0 !important;
  width: 16px !important; height: 16px !important; padding: 0 !important;
  display: flex !important; align-items: center !important; justify-content: center !important; visibility: visible !important; z-index: 2 !important;
  background: none !important; border: 0 !important}
#header-search-box-button svg { width: 16px !important; height: 16px !important; margin: 0 !important; display: block !important; }
.back-to-top .inner svg.svg-icon { width: 18px !important; height: 18px !important; margin: 0 !important; display: block !important; }
/* ---------- 深色 ---------- */
html.cb-dark #header .global-search-suggestions.card,
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown { background: #1c1c1c !important; border-color: rgba(255, 255, 255, .08) !important; box-shadow: 0 12px 32px rgba(0, 0, 0, .45) !important; }
html.cb-dark #header .global-search-suggestions .entity-list-item-name { color: #ededed !important; }
html.cb-dark #header .global-search-suggestions .entity-item-snippet p { color: #8e8e8e !important; }
html.cb-dark #header .global-search-suggestions .entity-list-item:hover,
html.cb-dark #header .global-search-suggestions .entity-list-item.selected,
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .entity-list-item:hover { background: var(--cb-hover) !important; }
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .entity-list-item { color: #d8d8d8 !important; }
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .dropdown-search-search { background: rgba(255, 255, 255, .04) !important; border-color: rgba(255, 255, 255, .08) !important; }
/* ===== tabler30 · 深色模式返回顶部进度环颜色 ===== */
html.cb-dark .back-to-top-container .back-to-top-progress path { stroke: rgba(255, 255, 255, .78) !important; }
html.cb-dark .back-to-top-container > .back-to-top { background: #1c1c1c !important; border-color: rgba(255, 255, 255, .10) !important; color: #e5e5e5 !important; box-shadow: 0 0 10px rgba(0, 0, 0, .35) !important; }
/* ===== tabler31 · 下拉图标与页眉工具栏同款 / 去 hr 分隔 / 放大镜可见 ===== */
#header .global-search-suggestions .entity-list > hr,
nav.breadcrumbs .dropdown-search-dropdown .entity-list > hr { display: none !important; }
#header .global-search-suggestions .entity-list,
nav.breadcrumbs .dropdown-search-dropdown .entity-list { gap: 2px !important; }
/* 图标：统一 #888、不透明、16px、描边 1.5、无填充无底 —— 与工具栏一致 */
#header .global-search-suggestions .entity-list-item > .icon,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item > .icon {
  color: #888 !important; opacity: 1 !important;
  background: none !important; border: 0 !important; box-shadow: none !important;
}
#header .global-search-suggestions .entity-list-item > .icon svg,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item > .icon svg,
#header .global-search-suggestions .entity-list-item > .icon svg *,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item > .icon svg * {
  color: inherit !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.5px !important;
}
#header .global-search-suggestions .entity-list-item:hover > .icon,
#header .global-search-suggestions .entity-list-item.selected > .icon,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item:hover > .icon { color: #3a3a3a !important; }
/* 页眉放大镜 */
#header-search-box-button { opacity: 1 !important; color: var(--cb-muted) !important; }
#header-search-box-button svg, #header-search-box-button svg * { fill: none !important; stroke: currentColor !important; stroke-width: 1.5px !important; }
#header .search-box input:focus ~ #header-search-box-button,
#header .search-box:focus-within #header-search-box-button { color: #3a3a3a !important; }
/* 深色 */
html.cb-dark #header .global-search-suggestions .entity-list-item > .icon,
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .entity-list-item > .icon,
html.cb-dark #header-search-box-button { color: #8e8e8e !important; }
html.cb-dark #header .global-search-suggestions .entity-list-item:hover > .icon,
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .entity-list-item:hover > .icon { color: #e5e5e5 !important; }
/* ===== tabler32 · 搜索下拉「查看全部」改为卡片底部整行链接 ===== */
#header .global-search-suggestions .card-footer-link,
#header .global-search-suggestions button.text-button.card-footer-link {
  position: static !important; inset: auto !important; transform: none !important;
  display: flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important;
  width: 100% !important; height: 36px !important; min-width: 0 !important;
  margin: 4px 0 0 !important; padding: 0 10px !important;
  border: 0 !important; border-top: 1px solid rgba(10, 10, 10, .06) !important; border-radius: 0 0 8px 8px !important;
  background: transparent !important; box-shadow: none !important;
  font-size: 13px !important; font-weight: 400 !important; line-height: 1 !important; color: #6a6a6a !important;
  white-space: nowrap !important; writing-mode: horizontal-tb !important; cursor: pointer !important;
}
#header .global-search-suggestions .card-footer-link:hover,
#header .global-search-suggestions .card-footer-link:focus-visible { color: #0a0a0a !important; background: var(--cb-hover) !important; outline: none !important; }
#header .global-search-suggestions .card-footer-link svg { width: 14px !important; height: 14px !important; margin: 0 !important; flex: none !important; }
html.cb-dark #header .global-search-suggestions .card-footer-link { color: #a1a1a6 !important; border-top-color: rgba(255, 255, 255, .08) !important; }
html.cb-dark #header .global-search-suggestions .card-footer-link:hover { color: #f2f2f2 !important; background: var(--cb-hover) !important; }
/* 深色 */
html.cb-dark .cb-dl-menu { color: #ededed !important; background: #1c1c1c !important; border-color: rgba(255, 255, 255, .08) !important}
html.cb-dark .cb-dl-menu > a[role="menuitem"] { color: #8e8e8e !important; }
html.cb-dark .cb-dl-menu > a[role="menuitem"] > b { color: #ededed !important; }
html.cb-dark .cb-dl-menu > a[role="menuitem"] > small { color: #8e8e8e !important; }
html.cb-dark .cb-dl-menu > a[role="menuitem"]:hover { background: var(--cb-hover) !important; color: #e5e5e5 !important; }
html.cb-dark .cb-tools .cb-dl-btn[aria-expanded="true"], html.cb-dark .cb-tools .cb-dl-btn.is-open { background: var(--cb-hover-strong) !important; color: #f2f2f2 !important; }
/* 深色 */
html.cb-dark .cb-dl-menu { box-shadow: 0 10px 28px rgba(0, 0, 0, .45) !important; }
html.cb-dark .cb-dl-menu .cb-dl-title { color: #7c7c82 !important; }
html.cb-dark .cb-dl-menu > a[role="menuitem"]:focus, html.cb-dark .cb-dl-menu > a[role="menuitem"]:focus-visible { background: var(--cb-hover) !important; color: #e5e5e5 !important; }
html.cb-dark .cb-dl-menu > a[role="menuitem"]:active { background: var(--cb-hover-strong) !important; }
/* ===== tabler36 · 三个下拉统一规格（对齐下载菜单）===== */
/* 外框 */
header#header .global-search-suggestions.card,
#header .global-search-suggestions.card,
nav.breadcrumbs .dropdown-search-dropdown,
nav.breadcrumbs .dropdown-search-dropdown.card {
  padding: 4px !important; border: 1px solid rgba(10, 10, 10, .08) !important; border-radius: var(--cb-radius-md) !important; background: #fff !important;
  box-shadow: 0 10px 28px rgba(10, 10, 10, .09), 0 1px 4px rgba(10, 10, 10, .04) !important;
}
header#header .global-search-suggestions .entity-list,
nav.breadcrumbs .dropdown-search-dropdown .entity-list { gap: 0 !important; }
/* 条目 */
header#header .global-search-suggestions .entity-list-item {
  gap: 10px !important; padding: 6px 8px !important; border-radius: var(--cb-radius-xs) !important; align-items: flex-start !important;
}
header#header .global-search-suggestions .entity-list-item:active,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item:active { background: var(--cb-hover-strong) !important; }
/* 图标统一 16px */
header#header .global-search-suggestions .entity-list-item > .icon,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item > .icon {
  flex: 0 0 16px !important; width: 16px !important; height: 16px !important;
}
header#header .global-search-suggestions .entity-list-item > .icon { margin: 1px 0 0 !important; }
header#header .global-search-suggestions .entity-list-item > .icon svg,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item > .icon svg { width: 16px !important; height: 16px !important; }
/* 文字：主 13 / 次 11.5 */
header#header .global-search-suggestions .entity-list-item > .content { gap: 1px !important; }
header#header .global-search-suggestions .entity-list-item-name,
nav.breadcrumbs .dropdown-search-dropdown .entity-list-item-name { font-size: 13px !important; line-height: 1.35 !important; font-weight: 400 !important; }
header#header .global-search-suggestions .entity-item-snippet {
  display: flex !important; flex-direction: column !important; gap: 1px !important; margin: 0 !important;
  font-size: 12px!important; line-height: 1.45 !important; color: var(--cb-muted) !important;
}
header#header .global-search-suggestions .entity-item-snippet > span,
header#header .global-search-suggestions .entity-item-snippet .text-book,
header#header .global-search-suggestions .entity-item-snippet .text-chapter {
  font-size: 12px!important; line-height: 1.45 !important; color: var(--cb-muted) !important; font-weight: 400 !important;
  white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
}
header#header .global-search-suggestions .entity-item-snippet p { font-size: 12px!important; line-height: 1.45 !important; color: var(--cb-muted) !important; }
header#header .global-search-suggestions .entity-item-snippet p:empty { display: none !important; }
/* 查看全部 */
header#header .global-search-suggestions .card-footer-link,
header#header .global-search-suggestions button.text-button.card-footer-link {
  height: 32px !important; margin: 4px 0 0 !important; font-size: 12px !important; border-radius: 0 0 6px 6px !important;
}
header#header .global-search-suggestions .card-footer-link svg { width: 12px !important; height: 12px !important; }
/* 深色 */
html.cb-dark header#header .global-search-suggestions.card,
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown { background: #1c1c1c !important; border-color: rgba(255, 255, 255, .08) !important; box-shadow: 0 10px 28px rgba(0, 0, 0, .45) !important; }
html.cb-dark header#header .global-search-suggestions .entity-item-snippet,
html.cb-dark header#header .global-search-suggestions .entity-item-snippet p { color: #8e8e8e !important; }
html.cb-dark header#header .global-search-suggestions .entity-item-snippet > span,
html.cb-dark header#header .global-search-suggestions .entity-item-snippet .text-book,
html.cb-dark header#header .global-search-suggestions .entity-item-snippet .text-chapter { color: #6e6e73 !important; }
html.cb-dark header#header .global-search-suggestions .entity-list-item:active,
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .entity-list-item:active { background: var(--cb-hover-strong) !important; }
html.cb-dark nav.breadcrumbs .dropdown-search-dropdown .dropdown-search-search:focus-within { border-color: rgba(255, 255, 255, .2) !important; background: var(--cb-hover) !important; }
/* ===== tabler36c · 搜索下拉外框对齐统一规格（覆盖 2406 行旧规则）===== */
header#header form.search-box [refs="global-search@suggestions"] {
  padding: 4px !important; border: 1px solid rgba(10, 10, 10, .08) !important; border-radius: var(--cb-radius-md) !important; background: #fff !important;
  box-shadow: 0 10px 28px rgba(10, 10, 10, .09), 0 1px 4px rgba(10, 10, 10, .04) !important;
}
html.cb-dark header#header form.search-box [refs="global-search@suggestions"] { background: #1c1c1c !important; border-color: rgba(255, 255, 255, .08) !important; box-shadow: 0 10px 28px rgba(0, 0, 0, .45) !important; }
header#header form.search-box{transition:opacity .2s ease}
html.cb-dark .cb-cover{background:#242427!important}
html.cb-dark .cb-cover::before{background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1.3px)}
html.cb-dark .cb-hero-panel{background:rgba(28,28,28,.92);border-color:rgba(255,255,255,.08)}
html.cb-dark .cb-hero-panel-head span{color:#a1a1a1}
html.cb-dark .cb-hero-panel-head a{color:#7d7d7d!important}
html.cb-dark .cb-hero-panel-head a:hover{color:#ededed!important}
html.cb-dark .cb-hero-row+.cb-hero-row{box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
html.cb-dark .cb-hero-row:hover{background:var(--cb-hover);box-shadow:none}
html.cb-dark .cb-hero-row-name{color:#ededed}
html.cb-dark .cb-hero-row-sub{color:#7d7d7d}
html.cb-dark .cb-hero-row-sub i{background:#555}
html.cb-dark .cb-cover-initial{color:rgba(255,255,255,.1)}
html.cb-dark .cb-hero-panel{box-shadow:0 12px 32px rgba(0,0,0,.35)!important}
html.cb-dark .cb-hero-row-time{color:#7d7d7d}
html.cb-dark .cb-cta-sub{color:#a1a1a1}
html.cb-dark .cb-cta-btn{background:transparent;border-color:rgba(255,255,255,.14);color:#ededed!important}
html.cb-dark .cb-cta-btn:hover{border-color:rgba(255,255,255,.28)}
html.cb-dark .cb-cta-btn--primary{background:#ededed;border-color:#ededed;color:#111!important}
html.cb-dark .cb-avatars img{box-shadow:0 0 0 2px #1c1c1c}
html.cb-dark .cb-avatar-slot{background:#232326;border-color:rgba(255,255,255,.18);box-shadow:0 0 0 2px #1c1c1c}
html.cb-dark .cb-join .cb-join-title,html.cb-dark .cb-join-stats dd,html.cb-dark .cb-recent-name{color:#ededed!important}
html.cb-dark .cb-join-sub{color:#a1a1a1}
html.cb-dark .cb-join-stats,html.cb-dark .cb-join-stats div+div,html.cb-dark .cb-recent-item{border-color:rgba(255,255,255,.06)}
html.cb-dark .cb-recent{background:#1c1c1c;border-color:rgba(255,255,255,.08)}
html.cb-dark .cb-recent-time,html.cb-dark .cb-recent-meta{color:#7d7d7d}
html.cb-dark .cb-lib-head{border-bottom-color:rgba(255,255,255,.06)}
html.cb-dark .cb-lib .cb-lib-title,html.cb-dark .cb-lib-empty-title{color:#ededed!important}
html.cb-dark .cb-lib-sub,html.cb-dark .cb-lib-row-desc,html.cb-dark .cb-lib-empty-sub{color:#a1a1a1}
html.cb-dark .cb-lib-list,html.cb-dark .cb-lib-pager .pagination a,html.cb-dark .cb-lib-pager .pagination span{background:#1c1c1c;border-color:rgba(255,255,255,.08);color:#d4d4d4!important}
html.cb-dark .cb-lib-row{border-top-color:rgba(255,255,255,.06)}
html.cb-dark .cb-lib-row-meta{color:#7d7d7d}
html.cb-dark .cb-lib-chip{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);color:#d4d4d4!important}
html.cb-dark .cb-lib-chip:hover{background:var(--cb-hover-strong);border-color:rgba(255,255,255,.2)}
html.cb-dark .cb-lib-pager .pagination .active span{background:#ededed;border-color:#ededed;color:#111!important}
html.cb-dark .cb-lib-empty{border-color:rgba(255,255,255,.14)}
html.cb-dark .cb-lib-empty-ico{background:#242427;color:#8e8e8e}
/* ===== tabler45: entity pages, tags, search, revisions, sort ===== */
.container.cb-wide{max-width:1120px!important}
.container.cb-wide > main.content-wrap.cb-lib{padding-top:40px!important}
.container.cb-wide > .my-s + main.content-wrap.cb-lib{padding-top:16px!important}
/* dark */
html.cb-dark .list-sort,html.cb-dark .cb-field,html.cb-dark .cb-tag-list,html.cb-dark .cb-rev-list,html.cb-dark .cb-search-filters,html.cb-dark .cb-search-filters input[type=text],html.cb-dark .cb-search-filters input[type=date],html.cb-dark .cb-search-results .entity-list,html.cb-dark .cb-ent .book-contents.entity-list{background:#1c1c1c!important;border-color:rgba(255,255,255,.1)!important}
html.cb-dark .cb-ent-head,html.cb-dark .cb-tag-row,html.cb-dark .cb-rev{border-color:rgba(255,255,255,.08)!important}
html.cb-dark .list-sort-toggle{border-right-color:rgba(255,255,255,.1)!important}
html.cb-dark .cb-lib .cb-ent-title,html.cb-dark .cb-lib .cb-ent-bar-title,html.cb-dark .cb-rev-name,html.cb-dark .list-sort-toggle,html.cb-dark .cb-field input[type=text],html.cb-dark .cb-search-filters h5,html.cb-dark .cb-tag-stat--total,html.cb-dark .cb-rev.is-current .cb-rev-num{color:#ececec!important}
html.cb-dark .cb-ent-desc,html.cb-dark .cb-lib .cb-rev-sum,html.cb-dark .cb-search-filters{color:#b4b4b4}
html.cb-dark .cb-tag-stat,html.cb-dark .cb-badge{background:rgba(255,255,255,.07);color:#c4c4c4!important}
html.cb-dark .cb-badge--on{background:rgba(120,190,130,.16);color:#9fd3a8!important}
html.cb-dark .list-sort-toggle:hover,html.cb-dark .list-sort-dir:hover,html.cb-dark .cb-rev-actions > a:hover,html.cb-dark .cb-rev-actions > .dropdown-container > a:hover,html.cb-dark .cb-ent .book-contents > .entity-list-item:hover,html.cb-dark .cb-search-results .entity-list-item:hover,html.cb-dark .cb-tag-stat:hover{background:var(--cb-hover)!important}
html.cb-dark .cb-rev-actions > a,html.cb-dark .cb-rev-actions > .dropdown-container > a{color:#c4c4c4!important}
html.cb-dark .cb-field-btn,html.cb-dark .cb-search-filters button.button{background:#ececec!important;color:#111!important}
.list-sort-container .list-sort-dir .svg-icon{display:block;width:16px!important;height:16px!important;margin:0!important;top:0!important}
html.cb-dark .list-sort-container .list-sort{border-color:rgba(255,255,255,.1)!important}
html.cb-dark .list-sort-container .list-sort-toggle{border-inline-end-color:rgba(255,255,255,.1)!important}
html.cb-dark .cb-sr{background:#1c1c1c;border-color:rgba(255,255,255,.08)}
html.cb-dark .cb-sr:hover{border-color:rgba(255,255,255,.16)}
html.cb-dark .cb-sr-title{color:#ececec!important}
html.cb-dark .cb-sr-excerpt{color:#8e8e8e}
html.cb-dark .cb-sr-type,html.cb-dark .cb-sr-tag,html.cb-dark .cb-sr-ico{background:rgba(255,255,255,.07);color:#a1a1a6}
html.cb-dark .cb-sr mark,html.cb-dark .cb-sr-excerpt strong{background:rgba(255,204,64,.22)}
html.cb-dark .cb-search-filters{background:#1c1c1c!important;border-color:rgba(255,255,255,.08)!important}
html.cb-dark .cb-search-filters h5,html.cb-dark .cb-search-filters label{color:#ececec!important}
html.cb-dark .cb-search-filters input[type=text],html.cb-dark .cb-search-filters input[type=date]{background:#232325!important;border-color:rgba(255,255,255,.1)!important;color:#ececec!important}
html.cb-dark .cb-ent-read{background:#ececec;color:#111!important}
html.cb-dark .cb-act-title a,html.cb-dark .cb-act-title span{color:#c8c8cd!important}
/* 7. 深色模式 */
html.cb-dark .cb-ent .cb-ent-meta i{background:#555}
html.cb-dark .cb-ent .cb-ent-head .cb-cover-initial{color:rgba(255,255,255,.14)!important}
html.cb-dark .activity-list > .activity-list-item:hover{background:var(--cb-hover)!important}
html.cb-dark .activity-list > .activity-list-item:hover .cb-act-title a{color:#fff!important}
html.cb-dark .cb-ent .cb-ent-head{background:#1c1c1c!important;border-color:rgba(255,255,255,.08)!important}
html.cb-dark .cb-ent .cb-ent-title{color:#f2f2f2!important}
html.cb-dark .cb-ent .cb-ent-desc{color:#a1a1a6!important}
html body .activity-list > .activity-list-item > .cb-act-body{margin:0!important;padding:0!important}
html body .cb-lib-shelves.is-grid .cb-lib-shelf-link[class]{font-size:15px!important;font-weight:500!important;line-height:1.45!important;color:#0a0a0a!important}
html body .cb-lib-shelves.is-grid .cb-lib-shelf .cb-lib-chips{margin-top:14px!important}
/* 5. 用户页 */
html body .cb-user{max-width:1080px!important;padding:32px 20px 64px!important}
html body .cb-user-name{margin:4px 0!important;font-size:22px!important;font-weight:500!important;line-height:1.35!important;color:#0a0a0a!important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
html body .cb-user-sub{margin:0!important;font-size:13px!important;line-height:1.6!important;color:var(--cb-muted)!important}
html body .cb-user-card-head h2{display:flex;align-items:center;gap:8px;margin:0!important;font-size:15px!important;font-weight:500!important;line-height:1.5!important;color:#0a0a0a!important}
html body .cb-user-empty{margin:0!important;font-size:13px!important;color:var(--cb-muted)!important}
html body .cb-user .entity-list[class]{margin:0!important;padding:0!important;border:0!important}
html body .cb-user .entity-list-item[class]{display:flex!important;align-items:flex-start;gap:12px;margin:0 -12px!important;padding:11px 12px!important;border:0!important;border-radius:var(--cb-radius-md)!important;background:transparent!important;box-shadow:none!important;color:inherit!important;text-decoration:none!important;transition:background-color .12s ease}
html body .cb-user .entity-list-item[class]:hover{background:var(--cb-hover)!important}
html body .cb-user .entity-list-item[class] > .icon{flex:none;width:18px;margin:2px 0 0!important;color:var(--cb-muted)!important}
html body .cb-user .entity-list-item[class] > .icon svg{width:16px!important;height:16px!important}
html body .cb-user .entity-list-item[class] .content{flex:1 1 auto;min-width:0;padding:0!important}
html body .cb-user .entity-list-item[class] .entity-list-item-name{margin:0!important;font-size:14px!important;line-height:1.55!important;font-weight:500!important;color:#0a0a0a!important}
html body .cb-user .entity-list-item[class] .entity-item-snippet,html body .cb-user .entity-list-item[class] .content .text-muted{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;margin:2px 0 0!important;font-size:13px!important;line-height:1.6!important;color:var(--cb-muted)!important}
html body .cb-user .entity-list-item[class] .cb-item-meta{flex:none;margin-left:auto;padding-top:2px;font-size:12px;line-height:1.6;color:var(--cb-muted);white-space:nowrap}
html body .cb-user-activity .activity-list[class]{display:flex!important;flex-direction:column!important;gap:2px!important;margin:0!important;padding:0!important}
html body .cb-user-activity .activity-list > .activity-list-item[class]{display:block!important;margin:0 -10px!important;padding:9px 10px!important;border:0!important;border-radius:var(--cb-radius-sm)!important;background:transparent!important}
html body .cb-user-activity .activity-list > .activity-list-item[class]:hover{background:var(--cb-hover)!important}
@media (max-width:480px){html body .cb-user{padding:20px 14px 48px!important}.cb-user-hero{gap:16px;padding:18px}.cb-user-av{width:60px;height:60px;border-radius:var(--cb-radius-lg)}html body .cb-user-name{font-size:20px!important}.cb-user-card{padding:16px}.cb-user-stat{padding:8px 10px}.cb-user-stat strong{font-size:17px}}
/* 6. 暗色 */
html.cb-dark body .cb-lib-shelves.is-grid .cb-lib-shelf-link[class]{color:#f2f2f2!important}
html.cb-dark .cb-user-hero,html.cb-dark .cb-user-card{background:#1c1c1c;border-color:rgba(255,255,255,.08)}
html.cb-dark body .cb-user-name,html.cb-dark body .cb-user-card-head h2,html.cb-dark .cb-user-stat strong,html.cb-dark body .cb-user .entity-list-item[class] .entity-list-item-name{color:#f2f2f2!important}
html.cb-dark .cb-user-stat{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}
html.cb-dark .cb-user-stat:hover{background:var(--cb-hover-strong);border-color:rgba(255,255,255,.16)}
html.cb-dark .cb-user-count{background:rgba(255,255,255,.08);color:#9a9a9a}
html.cb-dark body .cb-user .entity-list-item[class]:hover,html.cb-dark body .cb-user-activity .activity-list > .activity-list-item[class]:hover{background:var(--cb-hover)!important}
html.cb-dark .cb-bn-tog:hover{color:#f2f2f2}
/* tabler58：书籍导航书名行做成标题卡片（小字「当前书籍」+ 书名），去掉空图标留白，焦点框改为键盘可见描边 */
/* tabler59：复制链接工具条对齐重做 + 页面导航精修（连续细线、当前段加深、悬停反馈、两行截断） */
/* 59.1 工具条外壳 */
html body .pointer[class]{width:360px!important;max-width:calc(100vw - 24px)!important;padding:6px!important;gap:6px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:var(--cb-radius-md)!important;background:#fff!important;box-shadow:0 10px 28px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05)!important}
html body .pointer[class]::before{bottom:-6px!important;width:11px!important;height:11px!important;margin-inline-start:-5.5px!important;border-right:1px solid rgba(10,10,10,.1)!important;border-bottom:1px solid rgba(10,10,10,.1)!important;border-bottom-right-radius:2px!important;background:#fff!important}
html body .pointer[class] > [refs]{flex:1 1 auto!important;min-width:0!important;gap:6px!important;align-items:center!important}
/* 59.2 左侧模式按钮 / 编辑链接：30px 方形图标按钮 */
html body .pointer[class] button[refs="pointer@mode-toggle"],html body .pointer[class] > [refs] > a.button,html body .pointer[class] > a.button{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:none!important;width:30px!important;min-width:30px!important;height:30px!important;margin:0!important;padding:0!important;border:0!important;border-radius:6px!important;background:transparent!important;box-shadow:none!important;color:#737373!important;line-height:1!important;transition:background-color .12s ease,color .12s ease}
html body .pointer[class] button[refs="pointer@mode-toggle"]:hover,html body .pointer[class] a.button:hover{background:var(--cb-hover)!important;color:#0a0a0a!important}
/* 59.3 输入框 + 复制按钮：一个整体 */
html body .pointer[class] .input-group{display:flex!important;align-items:stretch!important;flex:1 1 auto!important;min-width:0!important;height:30px!important;margin:0!important;padding:0!important;border:1px solid rgba(10,10,10,.12)!important;border-radius:6px!important;background:#fafafa!important;overflow:hidden!important;box-shadow:none!important;transition:border-color .12s ease}
html body .pointer[class] .input-group:focus-within{border-color:rgba(10,10,10,.3)!important}
html body .pointer[class] .input-group input[type=text]{flex:1 1 auto!important;min-width:0!important;width:auto!important;height:28px!important;margin:0!important;padding:0 10px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;font:12px/28px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;color:#404040!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .pointer[class] .input-group input[type=text]::selection{background:rgba(10,10,10,.1)!important}
html body .pointer[class] .input-group .button{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:none!important;width:32px!important;min-width:32px!important;height:28px!important;margin:0!important;padding:0!important;border:0!important;border-left:1px solid rgba(10,10,10,.1)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#525252!important;line-height:1!important;transition:background-color .12s ease,color .12s ease}
html body .pointer[class] .input-group .button:hover{background:var(--cb-hover)!important;color:#0a0a0a!important}
html body .pointer[class] .svg-icon,html body .pointer[class] button svg,html body .pointer[class] a.button svg{width:15px!important;height:15px!important;margin:0!important;top:0!important;vertical-align:middle!important}
html body .pointer[class] button:focus-visible,html body .pointer[class] a.button:focus-visible{outline:none!important;box-shadow:inset 0 0 0 2px rgba(10,10,10,.18)!important}
/* 59.4 工具条深色 */
html.cb-dark body .pointer[class],html.cb-dark body .pointer[class]::before{background:#1f1f21!important;border-color:rgba(255,255,255,.1)!important}
html.cb-dark body .pointer[class] .input-group{background:#161618!important;border-color:rgba(255,255,255,.12)!important}
html.cb-dark body .pointer[class] .input-group input[type=text]{color:#d4d4d4!important}
html.cb-dark body .pointer[class] .input-group .button{border-left-color:rgba(255,255,255,.1)!important;color:#a3a3a3!important}
html.cb-dark body .pointer[class] button:hover,html.cb-dark body .pointer[class] a.button:hover{background:var(--cb-hover)!important;color:#fafafa!important}
/* 59.5 页面导航：连续细线 + 当前段加深 */
html body .sidebar-page-nav[class]::after{top:12px!important;bottom:12px!important;background-color:rgba(10,10,10,.1)!important}
html body .sidebar-page-nav[class] .page-nav-item{padding-left:18px!important}
html body .sidebar-page-nav[class] .page-nav-item.h2,html body .sidebar-page-nav[class] .page-nav-item.h3{padding-left:30px!important}
html body .sidebar-page-nav[class] .page-nav-item.h4,html body .sidebar-page-nav[class] .page-nav-item.h5,html body .sidebar-page-nav[class] .page-nav-item.h6{padding-left:42px!important}
html body .sidebar-page-nav[class] .page-nav-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:transparent;z-index:0;transition:background-color .15s ease}
html body .sidebar-page-nav[class] li.current-heading::before{background:rgba(10,10,10,.55)}
html body .sidebar-page-nav[class] .page-nav-item a{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;padding:5px 0!important;font-size:13px!important;line-height:1.55!important;font-weight:400!important;color:#737373!important;text-decoration:none!important;transition:color .12s ease}
html body .sidebar-page-nav[class] .page-nav-item a:hover{color:#0a0a0a!important}
html body .sidebar-page-nav[class] li.current-heading > a{color:#0a0a0a!important;font-weight:500!important}
html body .sidebar-page-nav[class] .sidebar-page-nav-bullet{left:-2.5px!important;top:calc(5px + .775em - 3px)!important;width:6px!important;height:6px!important;box-shadow:0 0 0 2px var(--cb-canvas,#f3f3f3)!important;transition:transform .15s ease,background-color .15s ease}
html body .sidebar-page-nav[class] li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#cfd2d6!important}
html body .sidebar-page-nav[class] li.current-heading .sidebar-page-nav-bullet{background-color:#0a0a0a!important}
html body .sidebar-page-nav[class] .page-nav-item:hover .sidebar-page-nav-bullet{transform:scale(1.35)}
html body .sidebar-page-nav[class] .page-nav-item.h2 .sidebar-page-nav-bullet,html body .sidebar-page-nav[class] .page-nav-item.h3 .sidebar-page-nav-bullet,html body .sidebar-page-nav[class] .page-nav-item.h4 .sidebar-page-nav-bullet,html body .sidebar-page-nav[class] .page-nav-item.h5 .sidebar-page-nav-bullet,html body .sidebar-page-nav[class] .page-nav-item.h6 .sidebar-page-nav-bullet{left:-1.5px!important;width:4px!important;height:4px!important;top:calc(5px + .775em - 2px)!important}
html body .sidebar-page-nav[class] .page-nav-item a:focus-visible{outline:none!important;border-radius:var(--cb-radius-2xs);box-shadow:0 0 0 2px rgba(10,10,10,.14)!important}
/* 59.6 页面导航深色 */
html.cb-dark body .sidebar-page-nav[class]::after{background-color:rgba(255,255,255,.12)!important}
html.cb-dark body .sidebar-page-nav[class] li.current-heading::before{background:rgba(255,255,255,.6)}
html.cb-dark body .sidebar-page-nav[class] .page-nav-item a{color:#9a9a9a!important}
html.cb-dark body .sidebar-page-nav[class] .page-nav-item a:hover,html.cb-dark body .sidebar-page-nav[class] li.current-heading > a{color:#f5f5f5!important}
html.cb-dark body .sidebar-page-nav[class] li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#4a4a4d!important}
html.cb-dark body .sidebar-page-nav[class] li.current-heading .sidebar-page-nav-bullet{background-color:#f5f5f5!important}
html.cb-dark body .sidebar-page-nav[class] .sidebar-page-nav-bullet{box-shadow:0 0 0 2px var(--cb-canvas,#111)!important}
/* tabler60：书籍导航字号统一 12px */
/* tabler61：user 页面按首页/书籍页版式重做（cb-me）+ 独立页面 特点 / 使用指南 / 404（cb-pg / cb-gd / cb-404） */
/* 61.1 user 页面 */
html body .cb-me{max-width:1040px!important;margin:0 auto!important;padding:48px 24px 80px!important;color:#1a1a1a}
html body .cb-me-kicker{display:flex;align-items:center;gap:6px;margin:0!important;font-size:12px!important;line-height:1.5!important;color:var(--cb-muted)!important}
html body .cb-me-name{margin:4px 0 0!important;font-size:28px!important;line-height:1.3!important;font-weight:400!important;letter-spacing:-.01em;color:#1a1a1a!important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
html body .cb-me-meta{display:flex;flex-wrap:wrap;align-items:center;margin:6px 0 0!important;font-size:13px!important;line-height:1.6!important;color:var(--cb-muted)!important}
html body .cb-me-sec-head h2{display:flex;align-items:baseline;gap:8px;margin:0!important;font-size:16px!important;line-height:1.4!important;font-weight:400!important;color:#1a1a1a!important}
html body .cb-me .cb-me-cover[class]{position:relative;flex:none;display:flex;align-items:center;justify-content:center;width:60px!important;height:80px!important;min-height:0!important;margin:0!important;padding:0!important;border-radius:var(--cb-radius-sm)!important;overflow:hidden;aspect-ratio:auto!important}
html body .cb-me .cb-me-cover[class] img{display:block;width:100%!important;height:100%!important;object-fit:cover}
html body .cb-me .cb-me-cover[class] .cb-cover-initial{font-size:22px!important;line-height:1!important}
html body .cb-me-empty p{margin:0!important;font-size:14px!important;color:#6e6e6e!important}
@media (max-width:640px){html body .cb-me{padding:28px 16px 56px!important}.cb-me-head{flex-wrap:wrap;gap:16px}.cb-me-av{width:60px;height:60px;border-radius:var(--cb-radius)}html body .cb-me-name{font-size:22px!important}.cb-me-edit{order:3;width:100%;justify-content:center}.cb-me-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cb-me-stat:nth-child(3){border-left:0}.cb-me-stat:nth-child(n+3){border-top:1px solid rgba(10,10,10,.06)}.cb-me-stat{padding:14px 16px}.cb-me-cards{grid-template-columns:minmax(0,1fr)}.cb-me-row-book{display:none}}
html.cb-dark body .cb-me,html.cb-dark body .cb-me-name,html.cb-dark body .cb-me-sec-head h2,html.cb-dark .cb-me-stat strong,html.cb-dark .cb-me-row-name,html.cb-dark .cb-me-card-name,html.cb-dark .cb-me-edit,html.cb-dark .cb-me-empty a{color:#ededed!important}
html.cb-dark .cb-me-kicker i{background:#ededed}
html.cb-dark .cb-me-stats,html.cb-dark .cb-me-list,html.cb-dark .cb-me-card,html.cb-dark .cb-me-panel,html.cb-dark .cb-me-edit{background:#1c1c1c;border-color:rgba(255,255,255,.08)}
html.cb-dark .cb-me-stat+.cb-me-stat,html.cb-dark .cb-me-stat:nth-child(n+3){border-color:rgba(255,255,255,.06)}
html.cb-dark .cb-me-stat:hover,html.cb-dark .cb-me-row:hover,html.cb-dark .cb-me-edit:hover{background:var(--cb-hover)}
html.cb-dark .cb-me-card:hover{}
html.cb-dark .cb-me-stat.is-zero strong{color:#555}
html.cb-dark body .cb-me-empty{border-color:rgba(255,255,255,.14)}
html.cb-dark .cb-me-av{background:#2a2a2a;box-shadow:0 0 0 1px rgba(255,255,255,.08)}
html body .cb-404-code{margin:0!important;font-size:96px!important;line-height:1!important;font-weight:300!important;letter-spacing:-.04em;color:#e4e4e7!important;font-variant-numeric:tabular-nums;user-select:none}
html body .cb-404-title{margin:20px 0 0!important;font-size:22px!important;line-height:1.35!important;font-weight:400!important;color:#1a1a1a!important}
html body .cb-404-sub{margin:10px auto 0!important;max-width:440px;font-size:14px!important;line-height:1.75!important;color:#6e6e6e!important;text-wrap:pretty}
html.cb-dark body .cb-404-code{color:#2e2e30!important}
/* tabler61-fix: user 页无标题阴影 */
html body .cb-me header,html body .cb-me .cb-me-head,html body .cb-me .cb-me-sec-head,html body .cb-me .cb-me-sec-head h2{position:static!important;box-shadow:none!important;background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html body .cb-me .cb-me-head{background:transparent!important}
/* ===== tabler62：书籍 / 书架列表页 单栏宽版面（去掉三栏）===== */
html body .cb-lib-page{max-width:1120px!important;margin:0 auto!important;padding:40px 24px 80px!important;box-sizing:border-box}
html body .cb-lib-page > main.cb-lib{padding:0!important;margin:0!important;max-width:none!important}
/* 页头：标题左，工具右 */
html body .cb-lib-page .cb-lib-head{align-items:flex-end!important;gap:24px!important;margin:0 0 28px!important;padding:0 0 22px!important;border-bottom:1px solid rgba(10,10,10,.08)!important}
html body .cb-lib-page .cb-lib-title{font-size:28px!important;font-weight:400!important;letter-spacing:-.01em!important;color:#1a1a1a!important;margin:0 0 6px!important;line-height:1.25!important}
html body .cb-lib-page .cb-lib-sub{font-size:14px!important;color:#6e6e6e!important;margin:0!important}
html body .cb-lib-page .cb-lib-tools{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
/* 页头操作按钮 */
html body .cb-lib-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
html body .cb-lib-actions .cb-lib-act[class]{display:inline-flex!important;align-items:center!important;gap:6px!important;height:32px!important;padding:0 12px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:var(--cb-radius-sm)!important;background:#fff!important;color:#3a3a3a!important;font-size:13px!important;line-height:1!important;text-decoration:none!important;white-space:nowrap!important;transition:border-color .15s ease,background-color .15s ease,color .15s ease!important}
html body .cb-lib-actions .cb-lib-act[class]:hover{border-color:rgba(10,10,10,.22)!important;color:#0a0a0a!important}
html body .cb-lib-actions .cb-lib-act svg{width:15px!important;height:15px!important;margin:0!important;fill:currentColor}
html body .cb-lib-actions .cb-lib-act--primary[class]{background:#0a0a0a!important;border-color:#0a0a0a!important;color:#fff!important}
html body .cb-lib-actions .cb-lib-act--primary[class]:hover{background:#262626!important;border-color:#262626!important;color:#fff!important}
/* 视图切换（核心 entities.view-toggle）收进一个 32px 方块 */
html body .cb-lib-act-toggle{display:inline-flex;align-items:center}
html body .cb-lib-act-toggle form{display:inline-flex!important;margin:0!important}
html body .cb-lib-act-toggle .icon-list-item[class],html body .cb-lib-act-toggle button[class]{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;width:32px!important;height:32px!important;padding:0!important;margin:0!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:var(--cb-radius-sm)!important;background:#fff!important;color:#3a3a3a!important;font-size:0!important;line-height:0!important;cursor:pointer!important;overflow:hidden!important}
html body .cb-lib-act-toggle .icon-list-item[class]:hover,html body .cb-lib-act-toggle button[class]:hover{border-color:rgba(10,10,10,.22)!important;color:#0a0a0a!important}
html body .cb-lib-act-toggle .icon-list-item > span,html body .cb-lib-act-toggle button > span{display:inline-flex!important;margin:0!important;padding:0!important}
html body .cb-lib-act-toggle .icon-list-item > span:not(:first-child),html body .cb-lib-act-toggle button > span:not(:first-child){display:none!important}
html body .cb-lib-act-toggle svg{width:15px!important;height:15px!important;margin:0!important;fill:currentColor}
/* 列表：宽版面自适应列数 */
html body .cb-lib-page .cb-lib-books[class]{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important;gap:20px!important}
html body .cb-lib-page .cb-lib-shelves.is-grid[class]{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(330px,1fr))!important;gap:20px!important}
html body .cb-lib-page .cb-lib-shelves.is-list[class],html body .cb-lib-page .cb-lib-list[class]{max-width:none!important}
html body .cb-lib-page .cb-lib-pager{margin-top:28px!important}
/* 深色 */
html.cb-dark body .cb-lib-page .cb-lib-head{border-bottom-color:rgba(255,255,255,.08)!important}
html.cb-dark body .cb-lib-page .cb-lib-title{color:#f2f2f2!important}
html.cb-dark body .cb-lib-page .cb-lib-sub{color:#9a9a9a!important}
html.cb-dark body .cb-lib-actions .cb-lib-act[class],html.cb-dark body .cb-lib-act-toggle .icon-list-item[class],html.cb-dark body .cb-lib-act-toggle button[class]{background:#1c1c1c!important;border-color:rgba(255,255,255,.1)!important;color:#d4d4d4!important}
html.cb-dark body .cb-lib-actions .cb-lib-act[class]:hover,html.cb-dark body .cb-lib-act-toggle .icon-list-item[class]:hover,html.cb-dark body .cb-lib-act-toggle button[class]:hover{border-color:rgba(255,255,255,.24)!important;color:#fff!important}
html.cb-dark body .cb-lib-actions .cb-lib-act--primary[class]{background:#f2f2f2!important;border-color:#f2f2f2!important;color:#0a0a0a!important}
html.cb-dark body .cb-lib-actions .cb-lib-act--primary[class]:hover{background:#fff!important;color:#0a0a0a!important}
html.cb-dark body .cb-lib-more{border-top-color:rgba(255,255,255,.08)}
html.cb-dark body .cb-lib-more .cb-lib-more-title[class]{color:#8a8a8a!important}
html.cb-dark body .cb-lib-more-list a{color:#c8c8c8!important}
html.cb-dark body .cb-lib-more-list a:hover{background:var(--cb-hover)!important;color:#fff!important}
/* tabler64：列表页发现区（新书 / 新书架 / 尚未上架的书）、特点页 hero、指南页页眉与侧边导航、页脚与首页站点入口 */
/* ---- 列表页发现区 ---- */
html body .cb-disc{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:28px 44px;margin:48px 0 8px;padding:32px 0 0;border-top:1px solid rgba(10,10,10,.08)}
html body .cb-disc.is-solo,html body .cb-disc.no-new{grid-template-columns:minmax(0,1fr)}
html body .cb-disc-main,html body .cb-disc-side{min-width:0}
html body .cb-disc-side{display:flex;flex-direction:column;gap:28px}
html body .cb-disc.no-new .cb-disc-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px 44px}
html body .cb-disc-head{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;min-width:0}
html body .cb-disc .cb-disc-title[class]{flex:none;margin:0!important;padding:0!important;font-size:15px!important;font-weight:600!important;letter-spacing:0!important;line-height:1.4!important;color:#0a0a0a!important;background:none!important;border:0!important;box-shadow:none!important}
html body .cb-disc-hint{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--cb-muted)}
html body .cb-disc-more{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#5a5a5a!important;text-decoration:none!important;white-space:nowrap}
html body .cb-disc-more:hover{color:#0a0a0a!important}
html body .cb-disc-more svg{transition:transform .15s ease}
html body .cb-disc-more:hover svg{transform:translateX(2px)}
html body .cb-disc-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
html body .cb-disc.is-solo .cb-disc-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
html body .cb-disc.is-solo .cb-disc-cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}
html body .cb-disc.is-solo .cb-disc-cards--1,html body .cb-disc.is-solo .cb-disc-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
html body .cb-disc-card{display:flex;align-items:flex-start;gap:14px;min-width:0;padding:14px;border:1px solid rgba(10,10,10,.08);border-radius:var(--cb-radius);background:#fff;color:inherit!important;text-decoration:none!important;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
html body .cb-disc-card:hover{}
html body .cb-disc-cover{position:relative;flex:none;display:flex;align-items:center;justify-content:center;width:52px;height:68px;border-radius:4px 8px 8px 4px;overflow:hidden;font-size:20px;font-weight:600;line-height:1}
html body .cb-disc--shelves .cb-disc-cover{width:68px;height:52px;border-radius:var(--cb-radius-sm)}
html body .cb-disc--books .cb-disc-cover:not(.has-img)::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:currentColor;opacity:.16}
html body .cb-disc--shelves .cb-disc-cover:not(.has-img)::after{content:"";position:absolute;left:10px;right:10px;bottom:9px;height:2px;border-radius:2px;background:currentColor;opacity:.22}
html body .cb-disc-cover img{display:block;width:100%;height:100%;object-fit:cover}
html body .cb-disc-t0{background:#f3f1ed;color:var(--cb-ink-near)}
html body .cb-disc-t1{background:#eef1f4;color:var(--cb-ink-near)}
html body .cb-disc-t2{background:#eef2ef;color:var(--cb-ink-near)}
html body .cb-disc-t3{background:#f2f0f4;color:var(--cb-ink-near)}
html body .cb-disc-t4{background:#f4f1ec;color:var(--cb-ink-near)}
html body .cb-disc-t5{background:#eef0f1;color:var(--cb-ink-near)}
html body .cb-disc-card-body{flex:1;min-width:0;align-self:stretch;display:flex;flex-direction:column;gap:5px}
html body .cb-disc-name{display:flex;align-items:center;gap:6px;min-width:0;font-size:14px;font-weight:600;line-height:1.45;color:#0a0a0a}
html body .cb-disc-name>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .cb-disc-badge{flex:none;padding:0 6px;border-radius:var(--cb-radius-pill);background:#0a0a0a;color:#fff;font-style:normal;font-size:11px;font-weight:600;line-height:18px}
html body .cb-disc-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.6;color:#6b6b6b}
html body .cb-disc-stack{display:flex;flex-wrap:wrap;gap:3px 10px;min-width:0;font-size:12px;color:#5a5a5a}
html body .cb-disc-stack>span{display:inline-flex;align-items:center;gap:5px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
html body .cb-disc .cb-hero-dot{display:inline-block;flex:none;width:6px;height:6px;border-radius:50%}
html body .cb-disc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;padding-top:2px;font-size:12px;color:var(--cb-muted)}
html body .cb-disc-meta>i{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.6}
html body .cb-disc.is-solo .cb-disc-card{flex-direction:column;gap:12px}
html body .cb-disc.is-solo .cb-disc-cover{width:100%;height:auto;aspect-ratio:16/9;border-radius:var(--cb-radius-sm);font-size:28px}
html body .cb-disc--books.is-solo .cb-disc-cover:not(.has-img)::before{width:8px}
html body .cb-disc-list{list-style:none!important;margin:0!important;padding:0!important}
html body .cb-disc-list li{margin:0!important;padding:0!important}
html body .cb-disc-list a{display:flex;align-items:center;gap:10px;margin:0 -10px;padding:8px 10px;border-radius:var(--cb-radius-sm);color:#3a3a3a!important;font-size:14px;line-height:1.5;text-decoration:none!important;transition:background-color .15s ease,color .15s ease}
html body .cb-disc-list a:hover{background:var(--cb-hover);color:#0a0a0a!important}
html body .cb-disc-n{flex:none;display:inline-flex;align-items:center;justify-content:center;width:18px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--cb-muted)}
html body .cb-disc-rank--rank li:nth-child(-n+3) .cb-disc-n{color:#0a0a0a}
html body .cb-disc-li-text{flex:1;min-width:0;display:flex;flex-direction:column}
html body .cb-disc-li-name,html body .cb-disc-li-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .cb-disc-li-sub{font-size:12px;color:var(--cb-muted)}
html body .cb-disc-li-meta{flex:none;font-size:12px;color:var(--cb-muted);font-variant-numeric:tabular-nums}
/* ---- 页脚与首页入口 ---- */
html body .cb-footer__site.is-active{color:#0a0a0a!important;font-weight:500}
/* ---- 深色 ---- */
html.cb-dark body .cb-disc{border-top-color:rgba(255,255,255,.08)}
html.cb-dark body .cb-disc .cb-disc-title[class],html.cb-dark body .cb-disc-name{color:#f5f5f5!important}
html.cb-dark body .cb-disc-more{color:#a3a3a3!important}
html.cb-dark body .cb-disc-more:hover{color:#fff!important}
html.cb-dark body .cb-disc-card{background:#141414;border-color:rgba(255,255,255,.08)}
html.cb-dark body .cb-disc-card:hover{}
html.cb-dark body .cb-disc-desc{color:#a3a3a3}
html.cb-dark body .cb-disc-stack{color:#c8c8c8}
html.cb-dark body .cb-disc-badge{background:#fff;color:#0a0a0a}
html.cb-dark body .cb-disc-t0{background:color-mix(in srgb,#f3f1ed 12%,#1c1c1c);color:#e4e4e7}
html.cb-dark body .cb-disc-t1{background:color-mix(in srgb,#eef1f4 12%,#1c1c1c);color:#e4e4e7}
html.cb-dark body .cb-disc-t2{background:color-mix(in srgb,#eef2ef 12%,#1c1c1c);color:#e4e4e7}
html.cb-dark body .cb-disc-t3{background:color-mix(in srgb,#f2f0f4 12%,#1c1c1c);color:#e4e4e7}
html.cb-dark body .cb-disc-t4{background:color-mix(in srgb,#f4f1ec 12%,#1c1c1c);color:#e4e4e7}
html.cb-dark body .cb-disc-t5{background:color-mix(in srgb,#eef0f1 12%,#1c1c1c);color:#e4e4e7}
html.cb-dark body .cb-disc-list a{color:#c8c8c8!important}
html.cb-dark body .cb-disc-list a:hover{background:var(--cb-hover);color:#fff!important}
html.cb-dark body .cb-disc-rank--rank li:nth-child(-n+3) .cb-disc-n{color:#f5f5f5}
html.cb-dark body .cb-disc-n,html.cb-dark body .cb-disc-li-sub,html.cb-dark body .cb-disc-li-meta{color:#737373}
html.cb-dark body .cb-footer__site.is-active{color:#fff!important}
@keyframes cb-sp-pulse{0%{transform:scale(.6);opacity:.35}100%{transform:scale(1.7);opacity:0}}
html body .cb-footer.cb-footer--v2{display:block;margin-top:72px;padding:56px 24px 32px;border-top:1px solid #e8e8e6;background:transparent;text-align:left;font-size:.875rem;line-height:1.6;color:var(--cb-muted,#6b6b6b)}
html.cb-dark body .cb-footer.cb-footer--v2{border-top-color:#262626;color:#a1a1a0}
html.cb-dark .cb-fo-logo,html.cb-dark .cb-fo-h{color:#f1f1f0!important}
html.cb-dark .cb-fo-bar{border-top-color:#262626}
/* tabler66-end */
/* tabler66b：书籍 / 书架两段式视图切换 */
html body .cb-lib-act-toggle{width:auto!important;height:auto!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
html body .cb-vs{align-items:center}
html body .cb-vs form{display:contents;margin:0}
html body .cb-vs-btn{display:inline-flex;align-items:center;gap:6px;height:28px;margin:0;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#6b6b6b;font-size:13px;line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}
html body .cb-vs-btn svg{width:15px;height:15px;margin:0;fill:currentColor}
html body .cb-vs-btn:hover{color:#0a0a0a}
html body .cb-vs-btn.is-on{background:#fff;color:#0a0a0a;box-shadow:0 1px 2px rgba(10,10,10,.08),0 0 0 1px rgba(10,10,10,.06)}
html body .cb-vs-btn:focus-visible{outline:2px solid #0a0a0a;outline-offset:1px}
html.cb-dark body .cb-vs{border-color:rgba(255,255,255,.1)}
html.cb-dark body .cb-vs-btn{color:#a3a3a3}
html.cb-dark body .cb-vs-btn:hover{color:#f5f5f5}
html.cb-dark body .cb-vs-btn.is-on{background:#2a2a2a;color:#f5f5f5;box-shadow:0 0 0 1px rgba(255,255,255,.08)}
html.cb-dark body .cb-vs-btn:focus-visible{outline-color:#f5f5f5}
@media (max-width:560px){html body .cb-vs-btn{padding:0 8px}html body .cb-vs-btn span{display:none}}
@media (prefers-reduced-motion:reduce){html body .cb-vs-btn{transition:none}}
/* tabler66c-end */
/* tabler67: 单按钮视图切换 */
html body .cb-vs{display:inline-flex;gap:0;margin:0;padding:0;border:0;background:transparent;border-radius:var(--cb-radius-sm)}
html body .cb-vs .cb-vs-btn{height:32px;padding:0 12px;border:1px solid rgba(10,10,10,.12);border-radius:var(--cb-radius-sm);background:#fff;color:#3a3a3a;box-shadow:none}
html body .cb-vs .cb-vs-btn:hover{background:var(--cb-fill);color:#0a0a0a}
html.cb-dark body .cb-vs{background:transparent}
html.cb-dark body .cb-vs .cb-vs-btn{background:#1a1a1a;border-color:rgba(255,255,255,.12);color:#d4d4d4}
html.cb-dark body .cb-vs .cb-vs-btn:hover{background:#262626;color:#f5f5f5}
@media (max-width:560px){html body .cb-vs .cb-vs-btn{padding:0 9px}}
/* tabler69: 两行简洁页脚（上行导航，下行版权与备案）+ 版权行间距 */
html body .cb-footer .cb-fm{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex-wrap:nowrap;white-space:normal;text-align:center}
html body .cb-footer .cb-fm-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;margin:0}
html body .cb-footer .cb-fm-links a{font-size:13px;color:#525252;text-decoration:none}
html body .cb-footer .cb-fm-links a:hover,html body .cb-footer .cb-fm-links a.is-active{color:#0a0a0a}
html body .cb-footer .cb-fm-legal,html body .cb-footer .cb-fo-legal{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;margin:0;font-size:12px;line-height:1.6;color:var(--cb-muted)}
html body .cb-footer .cb-fm-legal{justify-content:center}
html body .cb-footer .cb-fm-legal a,html body .cb-footer .cb-fo-legal a{color:inherit;text-decoration:none}
html body .cb-footer .cb-fm-legal a:hover,html body .cb-footer .cb-fo-legal a:hover{color:#525252}
html.cb-dark body .cb-footer .cb-fm-links a{color:#a3a3a3}
html.cb-dark body .cb-footer .cb-fm-links a:hover,html.cb-dark body .cb-footer .cb-fm-links a.is-active{color:#f5f5f5}
html.cb-dark body .cb-footer .cb-fm-legal,html.cb-dark body .cb-footer .cb-fo-legal{color:#737373}
html.cb-dark body .cb-footer .cb-fm-legal a:hover,html.cb-dark body .cb-footer .cb-fo-legal a:hover{color:#d4d4d4}
/* tabler73：首页/站点页大页脚版权行 —— 品牌版权与主体/备案分层，点号分隔，右链对齐 */
html body .cb-footer.cb-footer--v2 .cb-fo-bar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px;max-width:1120px;margin:40px auto 0;padding-top:20px;border-top:1px solid rgba(10,10,10,.08);font-size:13px;line-height:1.55;color:var(--cb-muted)}
html body .cb-footer.cb-footer--v2 .cb-fo-meta{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1 1 280px}
html body .cb-footer.cb-footer--v2 .cb-fo-copy,html body .cb-footer.cb-footer--v2 .cb-fo-legal{display:flex;flex-wrap:wrap;align-items:center;gap:0 8px;margin:0}
html body .cb-footer.cb-footer--v2 .cb-fo-copy-main{color:#525252;font-weight:500;letter-spacing:.01em}
html body .cb-footer.cb-footer--v2 .cb-fo-sep{color:#c4c4c4;font-weight:400;user-select:none}
html body .cb-footer.cb-footer--v2 .cb-fo-op,html body .cb-footer.cb-footer--v2 .cb-fo-icp{color:var(--cb-muted)}
html body .cb-footer.cb-footer--v2 .cb-fo-icp{text-decoration:none;border-bottom:1px solid transparent;transition:color .15s ease,border-color .15s ease}
html body .cb-footer.cb-footer--v2 .cb-fo-icp:hover{color:#525252;border-bottom-color:rgba(82,82,82,.35)}
html body .cb-footer.cb-footer--v2 .cb-fo-bar-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 16px;margin:0;flex:0 0 auto}
html body .cb-footer.cb-footer--v2 .cb-fo-bar-links a{color:#6b6b6b;text-decoration:none;letter-spacing:.01em;transition:color .15s ease}
html body .cb-footer.cb-footer--v2 .cb-fo-bar-links a:hover{color:#0a0a0a}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-bar{border-top-color:rgba(255,255,255,.08);color:#737373}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-copy-main{color:#a3a3a3}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-sep{color:#404040}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-op,html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-icp{color:#737373}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-icp:hover{color:#d4d4d4;border-bottom-color:rgba(212,212,212,.35)}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-bar-links a{color:#a3a3a3}
html.cb-dark body .cb-footer.cb-footer--v2 .cb-fo-bar-links a:hover{color:#f5f5f5}
@media (max-width:640px){
html body .cb-footer.cb-footer--v2 .cb-fo-bar{align-items:flex-start;gap:14px}
html body .cb-footer.cb-footer--v2 .cb-fo-bar-links{justify-content:flex-start;width:100%}
}
@media (prefers-reduced-motion:reduce){
html body .cb-footer.cb-footer--v2 .cb-fo-icp,html body .cb-footer.cb-footer--v2 .cb-fo-bar-links a{transition:none}
}
html.cb-dark header#header{
  background:#111113!important;
  color:#e4e4e7!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
html.cb-dark nav.breadcrumbs,
html.cb-dark nav.breadcrumbs a,
html.cb-dark nav.breadcrumbs .icon-list-item{color:#a1a1a1!important;background:transparent!important}
html.cb-dark #main-content #comments.cb-discuss{
  background:#1c1c1c!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
  color:#c8c8cd!important;
}
html.cb-dark body > footer.cb-footer,
html.cb-dark #cb-footer{
  background:transparent!important;
  border-top-color:rgba(255,255,255,.08)!important;
  color:#a1a1a1!important;
}
@media (prefers-reduced-motion:reduce){
html.cb-dark #main-content #comments.cb-discuss{transition:none!important}
}
/* tabler74-end */
/* tabler75：深色模式全站补齐 —— 上一页/下一页、讨论区、CTA、移动端 tabs、搜索按钮 */
html.cb-dark #sibling-navigation a{
  background:#1a1a1d!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#ececef!important;
  box-shadow:none!important;
}
html.cb-dark #sibling-navigation a:hover,
html.cb-dark #sibling-navigation a:focus-visible{
  background:#222226!important;
  border-color:rgba(255,255,255,.28)!important;
}
html.cb-dark #sibling-navigation a > .text-muted{
  color:#a1a1a1!important;
}
html.cb-dark #sibling-navigation .icon-list-item,
html.cb-dark #sibling-navigation .icon-list-item > span,
html.cb-dark #sibling-navigation .icon-list-item > span:last-child,
html.cb-dark #sibling-navigation a .inline-block{
  color:#e8e8ea!important;
  background:transparent!important;
}
html.cb-dark #sibling-navigation .svg-icon,
html.cb-dark #sibling-navigation svg,
html.cb-dark #sibling-navigation .text-page{
  color:#a1a1a1!important;
  fill:currentColor!important;
}
html.cb-dark #main-content #comments.cb-discuss,
html.cb-dark #comments.cb-discuss{
  background:#1c1c1c!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#e4e4e7!important;
  box-shadow:none!important;
}
html.cb-dark #main-content #comments.cb-discuss:hover,
html.cb-dark #main-content #comments.cb-discuss:focus-within{
  background:#1c1c1f!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:none!important;
}
html.cb-dark #comments,
html.cb-dark #comments .wpcy-pc-discuss__gate,
html.cb-dark #comments .wpcy-pc-discuss__text,
html.cb-dark #comments .cb-discuss__src,
html.cb-dark #comments .wpcy-pc-discuss__gate *{
  color:#c8c8cd!important;
}
html.cb-dark #comments a:not(.wpcy-pc-discuss__btn){
  color:#93c5fd!important;
}
html.cb-dark #comments a:not(.wpcy-pc-discuss__btn):hover{
  color:#bfdbfe!important;
}
html.cb-dark #comments .wpcy-pc-discuss__btn,
html.cb-dark #comments a.wpcy-pc-discuss__btn{
  background:#f4f4f4!important;
  color:#111113!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
}
html.cb-dark #comments .wpcy-pc-discuss__btn:hover{
  background:#ffffff!important;
  color:#000!important;
}
html.cb-dark .cb-cta-link--primary,
html.cb-dark a.cb-cta-link--primary{
  background:#1c1c1f!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#f4f4f4!important;
}
html.cb-dark .cb-cta-link--primary:hover{
  border-color:rgba(255,255,255,.28)!important;
  background:#222226!important;
}
html.cb-dark .cb-ent-read,
html.cb-dark a.cb-ent-read{
  background:#f4f4f4!important;
  color:#111113!important;
  border-color:transparent!important;
}
html.cb-dark .cb-ent-read:hover{
  background:#ffffff!important;
  color:#000!important;
}
html.cb-dark .cb-field-btn,
html.cb-dark .cb-search-filters button.button,
html.cb-dark .cb-search-filters .button{
  background:#f4f4f4!important;
  color:#111113!important;
  border-color:transparent!important;
}
html.cb-dark .tag-item,
html.cb-dark .tag-item.primary-background-light{
  background:#1c1c1f!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#c8c8cd!important;
}
html.cb-dark .cb-fm-links a{color:#a1a1a1!important}
html.cb-dark .cb-fm-links a:hover,
html.cb-dark .cb-fm-links a.is-active{color:#f4f4f4!important}
html.cb-dark .cb-fm-legal{color:#737373!important}
/* tabler75-end */
/* tabler76：深色模式评论表单 + 书籍导航树 —— 去掉白底/深字/暗蓝选中 */
html.cb-dark #product-comments-root,
html.cb-dark #product-comments-root .pc-panel,
html.cb-dark #product-comments-root .pc-panel-body,
html.cb-dark #product-comments-root .pc-thread,
html.cb-dark #product-comments-root .pc-form,
html.cb-dark #comments .pc-shell{
  background:transparent!important;
  color:#e4e4e7!important;
}
html.cb-dark #product-comments-root .pc-sub,
html.cb-dark #product-comments-root .pc-identity-hint,
html.cb-dark #product-comments-root .pc-hint,
html.cb-dark #product-comments-root .pc-count,
html.cb-dark #product-comments-root .pc-opt-hint{
  color:#a1a1a1!important;
}
html.cb-dark #product-comments-root .pc-label-text,
html.cb-dark #product-comments-root label,
html.cb-dark #product-comments-root .pc-msg,
html.cb-dark #product-comments-root .pc-opt{
  color:#c8c8cd!important;
}
html.cb-dark #product-comments-root .pc-empty{
  background:#1a1a1d!important;
  border:1px solid rgba(255,255,255,.1)!important;
  color:#a1a1a1!important;
  box-shadow:none!important;
}
html.cb-dark #product-comments-root .pc-empty strong{
  color:#f4f4f4!important;
}
html.cb-dark #product-comments-root .pc-empty p{
  color:#a1a1a1!important;
}
html.cb-dark #product-comments-root .pc-session-guest{
  background:#1a1a1d!important;
  border:1px solid rgba(255,255,255,.1)!important;
  color:#c8c8cd!important;
}
html.cb-dark #product-comments-root .pc-session-login,
html.cb-dark #product-comments-root .pc-session-sync{
  color:#c8c8cd!important;
}
html.cb-dark #product-comments-root .pc-session-login a,
html.cb-dark #product-comments-root a{
  color:#93c5fd!important;
}
html.cb-dark #product-comments-root input,
html.cb-dark #product-comments-root textarea,
html.cb-dark #product-comments-root select{
  background:#121214!important;
  color:#f4f4f4!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:none!important;
  caret-color:#f4f4f4!important;
}
html.cb-dark #product-comments-root input::placeholder,
html.cb-dark #product-comments-root textarea::placeholder{
  color:#737373!important;
  opacity:1!important;
}
html.cb-dark #product-comments-root input:focus,
html.cb-dark #product-comments-root textarea:focus{
  border-color:rgba(255,255,255,.32)!important;
  outline:none!important;
  background:#161618!important;
}
html.cb-dark #product-comments-root .pc-actions > button,
html.cb-dark #product-comments-root button[type=submit]{
  background:#f4f4f4!important;
  color:#111113!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
}
html.cb-dark #product-comments-root .pc-actions > button:hover,
html.cb-dark #product-comments-root button[type=submit]:hover{
  background:#ffffff!important;
  color:#000!important;
}
html.cb-dark .tag-item a{color:#c8c8cd!important}
/* 分页当前页 */
html.cb-dark .pagination .page-item.active .page-link{
  background:#2a2a2e!important;
  color:#f4f4f4!important;
  border-color:rgba(255,255,255,.22)!important;
}
html.cb-dark .pagination .page-link:hover{
  background:#242428!important;
  color:#fff!important;
}
/* tabler79：书籍导航对齐 —— 标题/当前书籍/条目/展开按钮统一 10px 文字起点；选中态与卡片区分 */
/* tabler80：当前书籍卡片对齐 —— 去掉 -10px 外扩，文字与条目同在 10px 起点（1px 边框 + 9px 内边距） */
/* tabler81：图标水印 —— 当前书籍卡片右下角淡色大图标 */
/* tabler82：图标水印体系 + 书架网格卡片书目改竖排列表 */
:root{
  --cb-wm-book:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 4v16H7a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z'/%3E%3Cpath d='M19 16H7a2 2 0 0 0-2 2'/%3E%3Cpath d='M9 8h6'/%3E%3C/svg%3E");
  --cb-wm-books:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z'/%3E%3Cpath d='M9 5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z'/%3E%3Cpath d='M5 8h4'/%3E%3Cpath d='M9 16h4'/%3E%3Cpath d='M13.8 4.56l2.18-.53c.56-.14 1.13.19 1.28.73l3.7 13.42a1.02 1.02 0 0 1-.64 1.22l-2.31.57c-.56.14-1.13-.19-1.28-.73L13.04 5.82a1.02 1.02 0 0 1 .76-1.26z'/%3E%3Cpath d='M14 9l4-1'/%3E%3Cpath d='M16 16l3.92-.98'/%3E%3C/svg%3E");
  --cb-wm-users:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7a4 4 0 1 0 8 0a4 4 0 1 0-8 0'/%3E%3Cpath d='M3 21v-2a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v2'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3Cpath d='M21 21v-2a4 4 0 0 0-3-3.85'/%3E%3C/svg%3E");
  --cb-wm-clock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 0 0-18 0'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
  --cb-wm-msg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 14l-3-3h-7a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h9a1 1 0 0 1 1 1v10'/%3E%3Cpath d='M14 15v2a1 1 0 0 1-1 1H6l-3 3V11a1 1 0 0 1 1-1h2'/%3E%3C/svg%3E");
  --cb-wm-spark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 18a2 2 0 0 1 2 2a2 2 0 0 1 2-2a2 2 0 0 1-2-2a2 2 0 0 1-2 2zm0-12a2 2 0 0 1 2 2a2 2 0 0 1 2-2a2 2 0 0 1-2-2a2 2 0 0 1-2 2zM9 18a6 6 0 0 1 6-6a6 6 0 0 1-6-6a6 6 0 0 1-6 6a6 6 0 0 1 6 6z'/%3E%3C/svg%3E");
  --cb-wm-help:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 18 0a9 9 0 1 0-18 0'/%3E%3Cpath d='M12 17v.01'/%3E%3Cpath d='M12 13.5a1.5 1.5 0 0 1 1-1.5a2.6 2.6 0 1 0-3-4'/%3E%3C/svg%3E");
  --cb-wm-bulb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h1m8-9v1m8 8h1M5.6 5.6l.7.7m12.1-.7l-.7.7'/%3E%3Cpath d='M9 16a5 5 0 1 1 6 0a3.5 3.5 0 0 0-1 3a2 2 0 0 1-4 0a3.5 3.5 0 0 0-1-3'/%3E%3Cpath d='M9.7 17h4.6'/%3E%3C/svg%3E");
  --cb-wm-chart:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 13a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z'/%3E%3Cpath d='M15 9a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1z'/%3E%3Cpath d='M9 5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1z'/%3E%3Cpath d='M4 20h14'/%3E%3C/svg%3E");
  --cb-wm-rocket:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13a8 8 0 0 1 7 7a6 6 0 0 0 3-5a9 9 0 0 0 6-8a3 3 0 0 0-3-3a9 9 0 0 0-8 6a6 6 0 0 0-5 3'/%3E%3Cpath d='M7 14a6 6 0 0 0-3 6a6 6 0 0 0 6-3'/%3E%3Cpath d='M14 9a1 1 0 1 0 2 0a1 1 0 1 0-2 0'/%3E%3C/svg%3E");
}
html body .cb-ent-head{--cb-wm:var(--cb-wm-book);--cb-wm-s:120px;--cb-wm-b:-28px;--cb-wm-r:-14px}
html body aside.cb-join{--cb-wm:var(--cb-wm-users);--cb-wm-s:120px;--cb-wm-b:-26px}
html body .cb-recent{--cb-wm:var(--cb-wm-clock);--cb-wm-s:140px;--cb-wm-b:-34px;--cb-wm-r:-20px;--cb-wm-o:.045}
html body a.cb-disc-card{--cb-wm:var(--cb-wm-spark);--cb-wm-s:64px;--cb-wm-b:-14px;--cb-wm-r:-10px}
html body section.cb-discuss{--cb-wm:var(--cb-wm-msg);--cb-wm-s:80px;--cb-wm-b:-20px}
/* 卡片自带图标的克隆水印（JS 注入 .cb-wm-clone） */
html body .cb-wm-clone{
  position:absolute;
  right:-14px;
  bottom:-20px;
  width:88px;
  height:88px;
  color:#0a0a0a;
  opacity:.055;
  transform:rotate(-12deg);
  transform-origin:70% 70%;
  pointer-events:none;
  z-index:-1;
  transition:opacity .25s ease,transform .35s ease;
}
html body .cb-wm-clone svg{width:100%!important;height:100%!important;stroke-width:1.3;display:block}
html body .has-wm:hover .cb-wm-clone{opacity:.1;transform:rotate(-6deg) translate(-2px,-2px)}
html.cb-dark body .cb-wm-clone{color:#ffffff;opacity:.06}
html.cb-dark body .has-wm:hover .cb-wm-clone{opacity:.1}
/* 书架网格卡片：书目改为竖排列表（列表视图保留胶囊） */
html body .cb-lib-shelves.is-grid .cb-lib-shelf .cb-lib-chips[class]{
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  margin-top:14px!important;
  border-top:1px solid rgba(10,10,10,.06);
}
html body .cb-lib-shelves.is-grid .cb-lib-chip[class]{
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  height:36px!important;
  padding:0 2px!important;
  gap:9px!important;
  border:0!important;
  border-bottom:1px solid rgba(10,10,10,.06)!important;
  border-radius:0!important;
  background:transparent!important;
  font-size:13px!important;
  color:#3a3a3a!important;
}
html body .cb-lib-shelves.is-grid .cb-lib-chip[class]::after{
  content:"→";
  margin-left:auto;
  padding-left:8px;
  font-size:12px;
  color:var(--cb-muted);
  opacity:0;
  transform:translateX(-3px);
  transition:opacity .15s ease,transform .15s ease;
}
html body .cb-lib-shelves.is-grid .cb-lib-chip[class]:hover{color:#0a0a0a!important;background:transparent!important}
html body .cb-lib-shelves.is-grid .cb-lib-chip[class]:hover::after{opacity:1;transform:none}
html body .cb-lib-shelves.is-grid .cb-lib-chip[class]:last-child{border-bottom:0!important}
html body .cb-lib-shelves.is-grid .cb-lib-chip--more[class]{font-size:0!important;color:var(--cb-muted)!important}
html body .cb-lib-shelves.is-grid .cb-lib-chip--more[class]::before{content:"查看全部书籍";font-size:13px}
html body .cb-lib-shelves.is-grid .cb-lib-chip--more[class]::after{font-size:12px;opacity:.7;transform:none}
html.cb-dark body .cb-lib-shelves.is-grid .cb-lib-shelf .cb-lib-chips[class]{border-top-color:rgba(255,255,255,.07)}
html.cb-dark body .cb-lib-shelves.is-grid .cb-lib-chip[class]{border-bottom-color:rgba(255,255,255,.07)!important;color:#c8c8cd!important;background:transparent!important}
html.cb-dark body .cb-lib-shelves.is-grid .cb-lib-chip[class]:hover{color:#ffffff!important}
html.cb-dark body .cb-lib-shelves.is-grid .cb-lib-chip--more[class]{color:#8b8b94!important}
/* tabler83：排序下拉深色 / 下载导出菜单 / 简洁页脚与评论框悬停加深 */
@keyframes cb83-pop{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
/* 1. 排序下拉 深色 */
html.cb-dark .list-sort .dropdown-menu{background:#1c1c1c!important;color:#c8c8cd!important;border-color:rgba(255,255,255,.08)!important;box-shadow:0 14px 36px -12px rgba(0,0,0,.6)!important}
html.cb-dark .list-sort .dropdown-menu .text-item{color:#c8c8cd!important;background:transparent!important}
html.cb-dark .list-sort .dropdown-menu .text-item:hover,html.cb-dark .list-sort .dropdown-menu .text-item:focus-visible{background:var(--cb-hover)!important;color:#ffffff!important;outline:none}
html.cb-dark .list-sort .dropdown-menu li.active .text-item{background:rgba(255,255,255,.1)!important;color:#ffffff!important}
html.cb-dark .list-sort-container .list-sort{background:#1c1c1c!important}
html.cb-dark .list-sort-container .list-sort-toggle,html.cb-dark .list-sort-container .list-sort-dir{color:#c8c8cd!important}
html.cb-dark .list-sort-toggle::after{border-color:#8e8e8e!important}
html.cb-dark .list-sort-container .list-sort-toggle:hover,html.cb-dark .list-sort-container .list-sort-dir:hover{background:var(--cb-hover)!important;color:#ffffff!important}
/* 3. 评论框 悬停加深 */
html body section.cb-discuss:hover::after,html body section.cb-discuss:focus-within::after{opacity:calc(var(--cb-wm-o,.06) + .05);transform:rotate(-6deg) translate(-2px,-2px)}
/* cb-fix190 最终版（Feng 12:23「水印选 B：只去掉评论卡上的」）：评论引导卡不显示水印，其他卡片不变 */
html body section.cb-discuss:not(#_)::after{content:none!important;display:none!important}
/* 3. 文章页简洁页脚 水印 */
html body .cb-footer--mini .cb-fm{position:relative;isolation:isolate;overflow:hidden;--cb-wm:var(--cb-wm-book);--cb-wm-s:72px;--cb-wm-b:-24px;--cb-wm-r:-6px;--cb-wm-o:.05}
html body .cb-footer--mini .cb-fm::after{position:absolute;right:var(--cb-wm-r);bottom:var(--cb-wm-b);width:var(--cb-wm-s);height:var(--cb-wm-s);background-color:var(--cb-wm-c,#0a0a0a);opacity:var(--cb-wm-o);transform:rotate(-12deg);transform-origin:70% 70%;pointer-events:none;z-index:-1;transition:opacity .25s ease,transform .35s ease}
html body .cb-footer--mini .cb-fm:hover::after{opacity:calc(var(--cb-wm-o) + .05);transform:rotate(-6deg) translate(-2px,-2px)}
html.cb-dark body .cb-footer--mini .cb-fm{--cb-wm-c:#ffffff;--cb-wm-o:.05}
/* tabler85: 浏览器 theme-color 统一来源（阅读器脚本读取） */
:root{--cb-theme-color:#f3f3f3}
html.cb-dark{--cb-theme-color:#111113}
html.cb-dark .cb-side-park[data-cb-place="start"] { border-bottom-color: var(--cb-line, #2a2a2a) !important; }
html.cb-dark .cb-side-park[data-cb-place="end"] { border-top-color: var(--cb-line, #2a2a2a) !important; }
/* tabler98-end */
/* tabler105-start: 标签胶囊重整 —— 导入元数据标签不对读者展示；真标签名字完整、长值省略 */
html body .tag-item.tag-item[data-name="source"],
html body .tag-item.tag-item[data-name^="wp-"]{display:none!important}
html body section:has(> .tag-item):not(:has(> .tag-item:not([data-name="source"]):not([data-name^="wp-"]))){display:none!important}
html body .tag-item.tag-item{display:inline-flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:0!important;max-width:100%!important;min-width:0!important;height:26px!important;margin:0 6px 6px 0!important;padding:0!important;border:0!important;border-radius:var(--cb-radius-pill)!important;background:#f4f4f4!important;box-shadow:none!important;font-size:12px!important;font-weight:400!important;line-height:1!important;overflow:hidden!important;vertical-align:top;transition:background-color .15s ease}
html body .tag-item.tag-item:hover{background:#eceef1!important}
html body .tag-item .tag-name,
html body .tag-item .tag-value{display:flex!important;align-items:center!important;height:100%!important;padding:0!important;border:0!important;background:transparent!important;white-space:nowrap!important;max-width:none!important}
html body .tag-item .tag-name{flex:0 0 auto!important;overflow:visible!important;padding:0 10px!important;color:#4a4a4a!important}
html body .tag-item .tag-name:only-child{padding-right:11px!important}
html body .tag-item .tag-value{flex:0 1 auto!important;min-width:0!important;overflow:hidden!important;padding:0 11px 0 0!important;color:var(--cb-muted)!important}
html body .tag-item .tag-value::before{content:"\00B7";flex:none;margin:0 6px 0 -4px;color:#d4d4d4}
html body .tag-item .tag-name a,
html body .tag-item .tag-value a{display:flex!important;align-items:center!important;min-width:0;color:inherit!important;text-decoration:none!important}
html body .tag-item .tag-value a{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;max-width:200px}
html body .tag-item .tag-name a:hover,
html body .tag-item .tag-value a:hover{color:#1f1f1f!important}
html body .tag-item .svg-icon{flex:none;width:12px!important;height:12px!important;margin:0 5px 0 0!important;top:0!important;opacity:.55;fill:currentColor}
html.cb-dark body .tag-item.tag-item{background:rgba(255,255,255,.07)!important}
html.cb-dark body .tag-item.tag-item:hover{background:rgba(255,255,255,.11)!important}
html.cb-dark body .tag-item .tag-name{color:#c8c8cd!important}
html.cb-dark body .tag-item .tag-value{color:#8e8e8e!important}
html.cb-dark body .tag-item .tag-value::before{color:#4a4a4a}
html.cb-dark body .tag-item .tag-name a:hover,html.cb-dark body .tag-item .tag-value a:hover{color:#f4f4f4!important}
/* tabler106-end */
/* tabler107-start: 发现区卡片（新书架 / 新书 / 尚未上架的书）重整：等高、拆品牌英文、轻徽章、去装饰 */
html body .cb-disc .cb-disc-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:1fr!important;gap:14px!important}
html body .cb-disc .cb-disc-cards--1{grid-template-columns:minmax(0,1fr)!important}
html body .cb-disc .cb-disc-card{position:relative!important;display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;align-items:start!important;gap:14px!important;height:100%!important;min-height:132px;box-sizing:border-box!important;margin:0!important;padding:18px!important;border:1px solid rgba(10,10,10,.07)!important;border-radius:12px!important;background:#fff!important;background-image:none!important;box-shadow:none!important;color:inherit!important;text-decoration:none!important;overflow:hidden!important;transition:border-color .15s ease,background-color .15s ease}
html body .cb-disc .cb-disc-card::before,
html body .cb-disc .cb-disc-card::after,
html body .cb-disc .cb-disc-card-body::before,
html body .cb-disc .cb-disc-card-body::after{content:none!important;display:none!important;background:none!important}
html body .cb-disc .cb-disc-card:hover{}
html body .cb-disc .cb-disc-cover{width:44px!important;height:44px!important;border-radius:10px!important;font-size:17px!important;font-weight:400!important}
html body .cb-disc .cb-disc-card-body{display:flex!important;flex-direction:column!important;gap:6px!important;min-width:0!important;height:100%!important}
html body .cb-disc .cb-disc-name{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:8px!important;min-width:0!important;font-size:15px!important;font-weight:500!important;line-height:1.4!important;color:#1a1a1a!important}
html body .cb-disc .cb-disc-name-t{flex:none;white-space:nowrap}
html body .cb-disc .cb-disc-en{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:400;letter-spacing:.01em;color:#a0a0a5}
html body .cb-disc .cb-disc-badge{flex:none;margin:0 0 0 auto!important;padding:1px 7px!important;border:0!important;border-radius:999px!important;background:#fff3e6!important;color:#9a520c!important;font-style:normal!important;font-size:11px!important;font-weight:500!important;line-height:1.6!important}
html body .cb-disc .cb-disc-desc{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;margin:0!important;font-size:13px!important;line-height:1.6!important;color:#6e6e73!important}
html body .cb-disc .cb-disc-stack{display:flex!important;flex-wrap:wrap!important;gap:4px 12px!important;margin:2px 0 0!important;font-size:13px!important;color:#55555a!important}
html body .cb-disc .cb-disc-stack > span{display:inline-flex!important;align-items:center!important;gap:6px!important;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .cb-disc .cb-disc-stack .cb-hero-dot{width:6px!important;height:6px!important}
html body .cb-disc .cb-disc-meta{display:flex!important;align-items:center!important;gap:8px!important;margin-top:auto!important;padding-top:6px!important;font-size:12px!important;color:#a0a0a5!important}
html body .cb-disc .cb-disc-meta > i{width:3px;height:3px;border-radius:50%;background:#d4d4d4}
html body .cb-disc .cb-disc-meta .is-empty{color:var(--cb-muted)!important}
html.cb-dark body .cb-disc .cb-disc-card{background:#1c1c1c!important;border-color:rgba(255,255,255,.08)!important}
html.cb-dark body .cb-disc .cb-disc-card:hover{}
html.cb-dark body .cb-disc .cb-disc-name{color:#ececec!important}
html.cb-dark body .cb-disc .cb-disc-en,html.cb-dark body .cb-disc .cb-disc-meta{color:#7c7c82!important}
html.cb-dark body .cb-disc .cb-disc-desc{color:#9a9aa0!important}
html.cb-dark body .cb-disc .cb-disc-stack{color:#b4b4ba!important}
html.cb-dark body .cb-disc .cb-disc-badge{background:rgba(232,146,58,.14)!important;color:#e8923a!important}
html.cb-dark body .cb-disc .cb-disc-meta > i{background:#4a4a50}
/* tabler107-end */
/* tabler109-start: 回复框、页脚改用核心 fade-in-when-active（同上一页/下一页）；去掉页脚右下角水印图标 */
html body .cb-footer--mini .cb-fm::after{content:none!important;display:none!important;background:none!important;-webkit-mask:none!important;mask:none!important}
/* tabler109-end */
/* ===== tabler110 · 顶栏三段式 + 阅读工具条（面包屑 + 版式分段 + 阅读设置弹层 + 复制/下载） ===== */
@media (min-width:1000px){
  html body header#header.grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,400px) minmax(0,1fr)!important;align-items:center!important;column-gap:24px!important;min-height:56px!important}
  html body header#header .flex-container-row{display:flex!important;align-items:center!important;gap:20px!important;min-width:0}
  html body header#header .flex-container-column.hide-under-l{justify-self:stretch;min-width:0}
  html body header#header form.search-box{width:100%!important;max-width:400px!important;margin:0 auto!important}
  html body header#header .header-links{justify-self:end;min-width:0}
  html body header#header .header-links .links > a.cb-hd-orig{display:none!important}
}
header#header .header-links .links{display:flex!important;align-items:center!important;gap:6px}
header#header .cb-hd-nav{display:flex;align-items:center;gap:2px}
header#header .cb-hd-nav a{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border-radius:8px;font-size:14px;color:#555;text-decoration:none;transition:background .12s ease,color .12s ease}
header#header .cb-hd-nav a:hover{background:rgba(10,10,10,.05);color:#111}
header#header .cb-hd-nav a.is-active{background:rgba(10,10,10,.07);color:#111;font-weight:500}
header#header .cb-hd-nav svg.svg-icon{width:16px;height:16px;margin:0;top:0}
@media (max-width:999px){header#header .cb-hd-nav{display:none!important}}
html.cb-wide .cb-rbar-in{max-width:none}
html.cb-focus .cb-rbar{display:none!important}
html.cb-dark .cb-rbar{border-bottom-color:rgba(255,255,255,.06)}
html.cb-dark header#header .cb-hd-nav a{color:#a1a1a1}
html.cb-dark header#header .cb-hd-nav a:hover,html.cb-dark header#header .cb-hd-nav a.is-active{background:rgba(255,255,255,.07);color:#f4f4f4}
html.cb-dark .cb-seg,html.cb-dark .cb-chips,html.cb-dark .cb-rset-m .cb-chip{background:rgba(255,255,255,.06)}
html.cb-dark .cb-seg .cb-tool[aria-pressed=true],html.cb-dark .cb-chip[aria-pressed=true]{box-shadow:none}
html.cb-dark .cb-chip{color:#a1a1a1}
html.cb-dark .cb-rset-h{color:#8e8e8e}
html.cb-dark .cb-rset-panel{background:#1c1c1c;box-shadow:0 12px 32px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.08)}
@media (max-width:760px){html.cb-dark .cb-rbar{background:#111113}}
/* ===== tabler111 · 修正：主导航紧跟 logo、阅读条面包屑无常驻底色、工具组间距统一 ===== */
html body header#header .flex-container-row{justify-content:flex-start!important}
html body header#header .flex-container-row .mobile-menu-toggle{margin-left:auto!important}
header#header .cb-hd-nav{margin-left:4px}
html.cb-dark .cb-rbar-crumb nav.breadcrumbs > a.icon-list-item:hover,
html.cb-dark .cb-rbar-crumb nav.breadcrumbs .dropdown-search-toggle-breadcrumb:hover{background:var(--cb-hover-strong)!important}
/* ===== tabler112 · 修正：阅读条层级与不透明度、设置弹层不换行、面包屑下拉按钮与分隔符一致 ===== */
html body header#header{z-index:30}
html.cb-dark .cb-rbar{background:rgba(19,22,28,.96)!important}
html.cb-rset-open .cb-rbar{z-index:40!important}
html.cb-rset-open .cb-rset-mask{z-index:35!important}
html.cb-dark .cb-seg .cb-tool[aria-pressed=true],html.cb-dark .cb-chip[aria-pressed=true]{background:#3a404d!important;color:#fff!important}
html.cb-dark .cb-rbar-crumb nav.breadcrumbs .dropdown-search-toggle-breadcrumb:hover{background:var(--cb-hover-strong)!important}
/* tabler114: focus mode really hides header (beats header grid rule) */
html.cb-focus body header#header.grid,html.cb-focus body header#header{display:none!important}
html.cb-focus .cb-rset-mask,html.cb-focus .cb-rset-panel{display:none!important}
/* tabler115: reader bar bg follows header (light/dark), header toggle to hide reader bar */
html body .cb-rbar.cb-rbar{background:var(--cb-rbar-bg,rgba(243,243,243,.96))!important}
html.cb-bar-off body .cb-rbar{display:none!important}
html:not(:has(.cb-rbar)) .cb-hd-bar{display:none!important}
header#header .cb-hd-bar[aria-pressed=false]{opacity:.55}
header#header .cb-hd-bar[aria-pressed=false]:hover{opacity:1}
html.cb-dark main.content-wrap.cb-lib{background:none!important;border:0!important}
html.cb-dark.cb-focus #main-content .content-wrap.card{background:transparent!important;border:0!important}
html.cb-dark .cb-rbar-crumb .cb-crumb-more:hover{background:var(--cb-hover-strong)}
/* tabler124 · 左栏「操作」：下载/导出按钮与修订历史、分隔线同宽同左缘，悬停底色不再外溢 */
html body .actions .icon-list{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;max-width:100%!important}
html body .actions .icon-list > *,html body .actions .icon-list > hr{width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}
/* tabler126 · 页眉 / 阅读条 / 页脚 统一内容宽度：同一 frame + gutter，背景铺满，内容边缘对齐 */
html body header#header.grid{padding-left:var(--cb-frame-pad)!important;padding-right:var(--cb-frame-pad)!important;max-width:none!important;box-sizing:border-box!important}
html body .cb-rbar-in,html.cb-wide body .cb-rbar-in{max-width:none!important;margin:0!important;padding-left:var(--cb-frame-pad)!important;padding-right:var(--cb-frame-pad)!important;box-sizing:border-box!important}
html body #cb-footer.cb-footer{padding-left:var(--cb-frame-pad)!important;padding-right:var(--cb-frame-pad)!important;max-width:none!important;box-sizing:border-box!important}
html body #cb-footer .cb-fo,html body #cb-footer .cb-fo-cols,html body #cb-footer .cb-fo-bar,html body #cb-footer .cb-fm{max-width:none!important;margin-left:0!important;margin-right:0!important}
/* tabler128 · 全站宽度统一
   frame = 页眉 / 阅读条 / 页脚 内容宽，对齐阅读页三栏容器（1360）
   page  = 内容页主体内容宽（1072，盒子 1120 含左右 24） */
:root{--cb-frame:1360px;--cb-page:1072px;--cb-gutter:24px;--cb-frame-pad:max(var(--cb-gutter),calc((100% - var(--cb-frame)) / 2))}
@media (max-width:760px){:root{--cb-gutter:12px}}
html.cb-wide{--cb-frame-pad:max(var(--cb-gutter),calc((100% - var(--cb-frame)) / 2))}
/* tabler129 · 页眉头像下拉菜单：a / button 统一网格、整行悬停、焦点圈 */
html body header#header .user-name{display:inline-flex!important;align-items:center!important;gap:8px!important;height:32px!important;padding:0 8px 0 4px!important;border-radius:999px!important;outline:none!important;box-shadow:none!important;background:transparent!important;transition:background .12s ease}
html body header#header .user-name:hover{background:var(--cb-hover,var(--cb-fill))!important}
html body header#header .user-name:focus-visible{box-shadow:0 0 0 2px rgba(10,10,10,.18)!important}
html body header#header .user-name .avatar{width:26px!important;height:26px!important;margin:0!important;border-radius:50%!important}
html body header#header .user-name .name{font-size:14px!important;color:inherit}
html body header#header .user-name > svg{width:14px!important;height:14px!important;margin:0!important;top:0!important;opacity:.6}
html body header#header .dropdown-container .dropdown-menu{min-width:212px!important;padding:6px!important;border:1px solid rgba(10,10,10,.08)!important;border-radius:var(--cb-radius-md,10px)!important;background:#fff!important;box-shadow:0 14px 36px -14px rgba(10,10,10,.22)!important;animation:cb83-pop .14s ease both;transform-origin:top right}
html body header#header .dropdown-container .dropdown-menu li{margin:0!important;padding:0!important;list-style:none}
html body header#header .dropdown-container .dropdown-menu form{display:block!important;margin:0!important}
html body header#header .dropdown-container .dropdown-menu .icon-item{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;align-items:center!important;column-gap:10px!important;width:100%!important;min-height:34px!important;margin:0!important;padding:7px 10px!important;border:0!important;border-radius:var(--cb-radius-xs,6px)!important;background:transparent!important;box-shadow:none!important;outline:none!important;font:inherit!important;font-size:14px!important;line-height:20px!important;color:#2a2a2a!important;text-align:left!important;text-decoration:none!important;cursor:pointer;box-sizing:border-box!important}
html body header#header .dropdown-container .dropdown-menu .icon-item > svg{width:18px!important;height:18px!important;margin:0!important;top:0!important;justify-self:center;color:#6b6b6b}
html body header#header .dropdown-container .dropdown-menu .icon-item > div,html body header#header .dropdown-container .dropdown-menu .icon-item > span{margin:0!important;padding:0!important;min-width:0}
html body header#header .dropdown-container .dropdown-menu .icon-item:hover,html body header#header .dropdown-container .dropdown-menu .icon-item:focus-visible{background:var(--cb-hover,var(--cb-fill))!important;color:#0a0a0a!important}
html body header#header .dropdown-container .dropdown-menu .icon-item:hover > svg{color:#0a0a0a}
html body header#header .dropdown-container .dropdown-menu hr{margin:6px 4px!important;border:0!important;border-top:1px solid rgba(10,10,10,.07)!important;height:0!important}
html.cb-dark body header#header .dropdown-container .dropdown-menu{background:#1c1c1c!important;border-color:rgba(255,255,255,.08)!important;box-shadow:0 14px 36px -12px rgba(0,0,0,.6)!important}
html.cb-dark body header#header .dropdown-container .dropdown-menu .icon-item{color:#c8c8cd!important}
html.cb-dark body header#header .dropdown-container .dropdown-menu .icon-item > svg{color:#a1a1a1}
html.cb-dark body header#header .dropdown-container .dropdown-menu .icon-item:hover,html.cb-dark body header#header .dropdown-container .dropdown-menu .icon-item:focus-visible{background:var(--cb-hover,rgba(255,255,255,.08))!important;color:#fff!important}
html.cb-dark body header#header .dropdown-container .dropdown-menu .icon-item:hover > svg{color:#fff}
html.cb-dark body header#header .dropdown-container .dropdown-menu hr{border-top-color:rgba(255,255,255,.08)!important}
html.cb-dark body header#header .user-name:focus-visible{box-shadow:0 0 0 2px rgba(255,255,255,.25)!important}
@media (prefers-reduced-motion:reduce){html body header#header .dropdown-container .dropdown-menu{animation:none!important}}
/* tabler130 · 深浅模式按钮图标包在 span 里：同样 18px 对齐 */
html body header#header .dropdown-container .dropdown-menu .icon-item > span:first-child{display:flex!important;align-items:center!important;justify-content:center!important;width:18px!important;height:18px!important}
html body header#header .dropdown-container .dropdown-menu .icon-item > span > svg{width:18px!important;height:18px!important;margin:0!important;top:0!important;color:#6b6b6b}
html.cb-dark body header#header .dropdown-container .dropdown-menu .icon-item > span > svg{color:#a1a1a1}
html body header#header .dropdown-container .dropdown-menu .icon-item:hover > span > svg{color:currentColor}
/* tabler131 · 登录后页面（设置 / 我的账户 / 用户 / 角色 / Webhook / 审计 / 维护 / 回收站 / 收藏）统一样式
   作用域：#main-content > .container.medium / .container.small；不碰阅读页、编辑器、前台列表 */
html body #main-content > .container:is(.medium,.small){max-width:calc(var(--cb-page,1072px) + 2 * var(--cb-gutter,24px))!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;padding:32px var(--cb-gutter,24px) 72px!important;box-sizing:border-box!important}
html body #main-content > .container:is(.medium,.small) .grid.right-focus{grid-template-columns:minmax(0,1fr) minmax(0,3fr)!important;column-gap:40px!important;align-items:start}
@media (max-width:1000px){html body #main-content > .container:is(.medium,.small) .grid.right-focus{grid-template-columns:minmax(0,1fr)!important;row-gap:24px!important}}
/* 顶部设置标签栏 */
html body #main-content .active-link-list:not(.in-sidebar){display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:6px!important;margin:0 0 28px!important;padding:0!important}
html body #main-content .active-link-list:not(.in-sidebar) > a{display:inline-flex!important;align-items:center!important;gap:6px!important;height:32px!important;margin:0!important;padding:0 12px!important;border-radius:999px!important;font-size:14px!important;color:#555!important;text-decoration:none!important;background:transparent!important;transition:background .12s ease,color .12s ease}
html body #main-content .active-link-list:not(.in-sidebar) > a:hover{background:var(--cb-hover,var(--cb-fill))!important;color:#0a0a0a!important}
html body #main-content .active-link-list:not(.in-sidebar) > a.active{background:#1a1a1a!important;color:#fff!important}
html body #main-content .active-link-list > a svg{width:16px!important;height:16px!important;margin:0!important;top:0!important;flex:none}
/* 左侧分类导航 */
html body #main-content .active-link-list.in-sidebar{display:flex!important;flex-direction:column!important;gap:2px!important;margin:0!important;padding:0!important}
html body #main-content .active-link-list.in-sidebar > a{display:flex!important;align-items:center!important;gap:10px!important;min-height:34px!important;margin:0!important;padding:7px 10px!important;border-radius:var(--cb-radius-xs,6px)!important;font-size:14px!important;line-height:20px!important;color:#3a3a3a!important;text-decoration:none!important;background:transparent!important}
html body #main-content .active-link-list.in-sidebar > a:hover{background:var(--cb-hover,var(--cb-fill))!important;color:#0a0a0a!important}
html body #main-content .active-link-list.in-sidebar > a.active{background:#f1f1f1!important;color:#0a0a0a!important;font-weight:600!important}
html body #main-content > .container:is(.medium,.small) h5{margin:0 0 10px!important;padding:0 10px!important;font-size:12px!important;font-weight:600!important;letter-spacing:.02em;text-transform:none!important;color:var(--cb-muted)!important}
html body #main-content > .container:is(.medium,.small) h5.mt-xl{margin-top:28px!important}
html body #main-content > .container:is(.medium,.small) .sticky-top-m{top:calc(var(--cb-rbar-top,56px) + 16px)}
/* 卡片 */
html body #main-content > .container:is(.medium,.small) .card{border:1px solid rgba(10,10,10,.08)!important;border-radius:var(--cb-radius-md,10px)!important;box-shadow:none!important;background:#fff!important}
html body #main-content > .container:is(.medium,.small) .card.content-wrap{padding:28px 32px!important}
html body #main-content > .container:is(.medium,.small) .card + .card{margin-top:20px!important}
html body #main-content > .container:is(.medium,.small) .card h1.list-heading,html body #main-content > .container:is(.medium,.small) .card h2.list-heading{margin:0 0 8px!important;font-size:20px!important;font-weight:600!important;line-height:1.35!important;color:#0a0a0a!important}
html body #main-content > .container:is(.medium,.small) .card h2.list-heading{font-size:17px!important}
html body #main-content > .container:is(.medium,.small) .text-muted,html body #main-content > .container:is(.medium,.small) .card p.small{color:var(--cb-muted)!important}
/* 设置项 */
html body #main-content .setting-list > div{padding:20px 0!important;margin:0!important;border-bottom:1px solid rgba(10,10,10,.06)}
html body #main-content .setting-list > div:last-child{border-bottom:0}
html body #main-content .setting-list .grid.half{column-gap:32px!important;align-items:start}
html body #main-content .setting-list-label{display:block;margin:0 0 4px!important;font-size:14px!important;font-weight:600!important;color:#1a1a1a!important}
html body #main-content .setting-list .small,html body #main-content .setting-list p.small{font-size:13px!important;line-height:1.6!important;color:var(--cb-muted)!important}
/* 表单控件 */
html body #main-content > .container:is(.medium,.small) :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=search],input[type=date],input[type=tel],select),html body #main-content > .container:is(.medium,.small) .input-base{height:36px!important;padding:0 12px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:var(--cb-radius-xs,6px)!important;background:#fff!important;box-shadow:none!important;font-size:14px!important;color:#1a1a1a!important;transition:border-color .12s ease,box-shadow .12s ease;box-sizing:border-box}
html body #main-content > .container:is(.medium,.small) textarea{min-height:96px;padding:10px 12px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:var(--cb-radius-xs,6px)!important;background:#fff!important;box-shadow:none!important;font-size:14px!important;line-height:1.6!important}
html body #main-content > .container:is(.medium,.small) :is(input,select,textarea):focus{outline:none!important;border-color:rgba(10,10,10,.4)!important;box-shadow:0 0 0 3px rgba(10,10,10,.08)!important}
html body #main-content > .container:is(.medium,.small) label:not(.toggle-switch):not(.custom-checkbox){font-size:14px;font-weight:500;color:#2a2a2a}
html body #main-content > .container:is(.medium,.small) :is(input[type=checkbox],input[type=radio]){accent-color:#1a1a1a}
html body #main-content > .container:is(.medium,.small) .toggle-switch-checkbox:checked + .toggle-switch-sprite,html body #main-content > .container:is(.medium,.small) .toggle-switch input:checked + span{background-color:#1a1a1a!important}
/* 按钮 */
html body #main-content > .container:is(.medium,.small) :is(.button,button.button){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;height:34px!important;margin:0!important;padding:0 14px!important;border-radius:var(--cb-radius-xs,6px)!important;border:1px solid #1a1a1a!important;background:#1a1a1a!important;color:#fff!important;box-shadow:none!important;font-size:14px!important;font-weight:500!important;line-height:1!important;text-transform:none!important;text-decoration:none!important;transition:background .12s ease}
html body #main-content > .container:is(.medium,.small) :is(.button,button.button):hover{background:#000!important;border-color:#000!important}
html body #main-content > .container:is(.medium,.small) .button.outline{background:#fff!important;color:#1a1a1a!important;border-color:rgba(10,10,10,.14)!important}
html body #main-content > .container:is(.medium,.small) .button.outline:hover{background:var(--cb-hover,var(--cb-fill))!important}
html body #main-content > .container:is(.medium,.small) .button.text{background:transparent!important;border-color:transparent!important;color:#555!important}
html body #main-content > .container:is(.medium,.small) .button.text:hover{background:var(--cb-hover,var(--cb-fill))!important;color:#0a0a0a!important}
html body #main-content > .container:is(.medium,.small) .button svg{width:16px!important;height:16px!important;margin:0!important;top:0!important}
html body #main-content > .container:is(.medium,.small) .form-group.text-right,html body #main-content > .container:is(.medium,.small) .text-right{gap:8px}
/* 表格与列表行 */
html body #main-content > .container:is(.medium,.small) table.table{width:100%;border-collapse:collapse!important}
html body #main-content > .container:is(.medium,.small) table.table th{padding:10px 12px!important;font-size:12px!important;font-weight:600!important;color:var(--cb-muted)!important;text-align:left;border-bottom:1px solid rgba(10,10,10,.08)!important;background:transparent!important}
html body #main-content > .container:is(.medium,.small) table.table td{padding:12px!important;font-size:14px!important;border-bottom:1px solid rgba(10,10,10,.06)!important;vertical-align:middle!important}
html body #main-content > .container:is(.medium,.small) table.table tr:hover td{background:#fafafa}
html body #main-content > .container:is(.medium,.small) .item-list-row{padding:12px 4px!important;border-top:1px solid rgba(10,10,10,.06)!important;border-radius:0!important}
html body #main-content > .container:is(.medium,.small) .item-list-row:hover{background:#fafafa!important}
html body #main-content > .container:is(.medium,.small) .item-list-row.header{font-size:12px!important;font-weight:600!important;color:var(--cb-muted)!important;background:transparent!important}
/* 深色模式 */
html.cb-dark body #main-content .active-link-list:not(.in-sidebar) > a{color:#a1a1a1!important}
html.cb-dark body #main-content .active-link-list > a:hover{background:var(--cb-hover,rgba(255,255,255,.08))!important;color:#fff!important}
html.cb-dark body #main-content .active-link-list:not(.in-sidebar) > a.active{background:#f4f4f4!important;color:#1c1c1c!important}
html.cb-dark body #main-content .active-link-list.in-sidebar > a{color:#c8c8cd!important}
html.cb-dark body #main-content .active-link-list.in-sidebar > a.active{background:rgba(255,255,255,.1)!important;color:#fff!important}
html.cb-dark body #main-content > .container:is(.medium,.small) .card{background:#1c1c1c!important;border-color:rgba(255,255,255,.08)!important}
html.cb-dark body #main-content > .container:is(.medium,.small) .card :is(h1,h2).list-heading,html.cb-dark body #main-content .setting-list-label{color:#f4f4f4!important}
html.cb-dark body #main-content > .container:is(.medium,.small) h5,html.cb-dark body #main-content > .container:is(.medium,.small) .text-muted,html.cb-dark body #main-content .setting-list .small{color:#8e8e8e!important}
html.cb-dark body #main-content .setting-list > div{border-bottom-color:rgba(255,255,255,.06)}
html.cb-dark body #main-content > .container:is(.medium,.small) :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=search],input[type=date],input[type=tel],select,textarea),html.cb-dark body #main-content > .container:is(.medium,.small) .input-base{background:#111113!important;border-color:rgba(255,255,255,.12)!important;color:#e4e4e7!important}
html.cb-dark body #main-content > .container:is(.medium,.small) :is(input,select,textarea):focus{border-color:rgba(255,255,255,.35)!important;box-shadow:0 0 0 3px rgba(255,255,255,.08)!important}
html.cb-dark body #main-content > .container:is(.medium,.small) label:not(.toggle-switch):not(.custom-checkbox){color:#c8c8cd}
html.cb-dark body #main-content > .container:is(.medium,.small) :is(input[type=checkbox],input[type=radio]){accent-color:#f4f4f4}
html.cb-dark body #main-content > .container:is(.medium,.small) :is(.button,button.button){background:#f4f4f4!important;border-color:#f4f4f4!important;color:#1c1c1c!important}
html.cb-dark body #main-content > .container:is(.medium,.small) :is(.button,button.button):hover{background:#fff!important;border-color:#fff!important}
html.cb-dark body #main-content > .container:is(.medium,.small) .button.outline{background:transparent!important;color:#e4e4e7!important;border-color:rgba(255,255,255,.14)!important}
html.cb-dark body #main-content > .container:is(.medium,.small) .button.text{background:transparent!important;border-color:transparent!important;color:#a1a1a1!important}
html.cb-dark body #main-content > .container:is(.medium,.small) :is(.button.outline,.button.text):hover{background:var(--cb-hover,rgba(255,255,255,.08))!important;color:#fff!important}
html.cb-dark body #main-content > .container:is(.medium,.small) table.table th{color:#8e8e8e!important;border-bottom-color:rgba(255,255,255,.08)!important}
html.cb-dark body #main-content > .container:is(.medium,.small) table.table td,html.cb-dark body #main-content > .container:is(.medium,.small) .item-list-row{border-color:rgba(255,255,255,.06)!important}
html.cb-dark body #main-content > .container:is(.medium,.small) table.table tr:hover td,html.cb-dark body #main-content > .container:is(.medium,.small) .item-list-row:hover{background:rgba(255,255,255,.03)!important}
/* tabler132 · 左栏「操作」：链接 / 表单按钮(关注·收藏) / 下载导出 三类行统一左缘、图标列与整行悬停 */
html body .actions .icon-list form{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
html body .actions .icon-list .icon-list-item > span:first-child{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 18px!important;width:18px!important;min-width:18px!important;height:18px!important;margin:0!important;padding:0!important;background:transparent!important}
html body .actions .icon-list .icon-list-item > span:first-child > svg,html body .actions .icon-list .icon-list-item svg.svg-icon{width:16px!important;height:16px!important;min-width:16px!important;margin:0!important;top:0!important}
html body .actions .icon-list .icon-list-item > span:last-child{margin:0!important;padding:0!important}
html body .actions .icon-list .icon-list-item:not(:hover):not(:focus-visible):not([aria-expanded='true']){background:transparent!important}
html body .actions .icon-list .icon-list-item:hover svg.svg-icon{color:currentColor!important}
html body .actions .icon-list > hr{margin:8px 0!important}
/* tabler133 · 系统页面统一 */
/* 作用域 S：#main-content > .container（small / medium / 默认），排除 very-small(登录)、cb-wide、cb-lib-page 等前台自定义页 */
/* 1 · 默认 .container（权限 / 排序 / 修订 / 审计 / 回收站）与 small/medium 同一套框架 */
html body #main-content > .container:not(.small,.medium,.very-small,.cb-wide,.cb-lib-page,#home-default,.api-docs,.px-xl){max-width:calc(var(--cb-frame,1360px) + 2 * var(--cb-gutter,24px))!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;padding:32px var(--cb-gutter,24px) 72px!important;box-sizing:border-box!important}
html body #main-content > .container:not(.small,.medium,.very-small,.cb-wide,.cb-lib-page,#home-default,.api-docs,.px-xl):has(form[action$="/permissions"]){max-width:calc(var(--cb-page,1072px) + 2 * var(--cb-gutter,24px))!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) > .my-s:first-child{margin:0 0 16px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card.content-wrap,html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) main.card{padding:28px 32px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card + .card{margin-top:20px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(h1,h2).list-heading{margin:0 0 6px!important;font-size:20px!important;font-weight:600!important;line-height:1.35!important;color:#0a0a0a!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) h2.list-heading{font-size:17px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(h1,h2).list-heading + p{margin:0 0 20px!important;font-size:14px!important;line-height:1.65!important;color:var(--cb-muted)!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) form > h1.list-heading,html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card > h1.list-heading:has(+ form){margin-bottom:20px!important}
/* 2 · 字号节奏：辅助文字 12.5px、按钮式文字链接 13px */
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.text-small,small,p.small,.small):not(sup){font-size:13px!important;line-height:1.6!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(p.small,p.text-small,.text-muted.small,small.text-muted,.text-muted.text-small){color:var(--cb-muted)!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) sup{font-size:11px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(label,.label,.setting-list-label){letter-spacing:0}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .toggle-switch > span.label,html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) label.checkbox,html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) label:has(> input[type=checkbox]){font-size:14px!important;font-weight:400!important;color:#2a2a2a!important}
html body :is(#main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs),.popup-body,.floating-toolbox) button.text-button:not(.icon-list-item),html body :is(#main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs),.floating-toolbox) a.text-button{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:28px!important;margin:0!important;padding:4px 8px!important;border:0!important;border-radius:6px!important;background:transparent!important;font-size:13px!important;font-weight:500!important;line-height:1.4!important;color:#3a3a3a!important;text-decoration:none!important;cursor:pointer;transition:background-color .12s ease,color .12s ease}
html body :is(#main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs),.popup-body,.floating-toolbox) :is(button,a).text-button:hover{background:var(--cb-hover,rgba(10,10,10,.045))!important;color:#0a0a0a!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .text-button.text-muted{color:var(--cb-muted)!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .sep{display:inline-block;margin:0 2px;color:#d4d4d4}
/* 3 · 默认 .container 内的输入框 / 按钮 / 下拉，与 tabler131 一致；select 补回箭头 */
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=search],input[type=date],input:not([type]),select),html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .input-base{height:36px!important;padding:0 12px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:var(--cb-radius-xs,6px)!important;background-color:#fff!important;box-shadow:none!important;font-size:14px!important;color:#1a1a1a!important;box-sizing:border-box}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .input-base.height-auto{height:auto!important;min-height:36px!important;display:flex!important;align-items:center!important;padding:6px 12px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) select:not(#_){-webkit-appearance:none!important;appearance:none!important;padding-right:34px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6l6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important;background-size:16px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(input,select,textarea,.input-base):focus{outline:none!important;border-color:rgba(10,10,10,.4)!important;box-shadow:0 0 0 3px rgba(10,10,10,.08)!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.button,button.button,label.button){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;height:34px!important;margin:0!important;padding:0 14px!important;border-radius:var(--cb-radius-xs,6px)!important;border:1px solid #1a1a1a!important;background:#1a1a1a!important;color:#fff!important;box-shadow:none!important;font-size:14px!important;font-weight:500!important;line-height:1!important;text-transform:none!important;text-decoration:none!important;cursor:pointer;white-space:nowrap}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.button,button.button):not(.outline):hover{background:#000!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .button.outline{background:#fff!important;color:#1a1a1a!important;border-color:rgba(10,10,10,.14)!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .button.outline:hover{background:var(--cb-fill)!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.form-group.text-right,.text-right,.flex-container-row.justify-flex-end):has(> .button){display:flex!important;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group{margin-bottom:18px}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group > label:first-child{display:block;margin:0 0 6px!important;padding:0!important;font-size:14px!important;font-weight:500!important;color:#2a2a2a!important}
/* 4 · 复选框（custom-checkbox）：16px 圆角方块，勾选为主色实心 + 白色对勾 */
html body :is(#main-content,.popup-body) .toggle-switch{display:inline-flex!important;align-items:center!important;gap:8px!important;cursor:pointer}
html body :is(#main-content,.popup-body) .toggle-switch > .custom-checkbox{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 16px;width:16px!important;height:16px!important;margin:0!important;border:1.5px solid rgba(10,10,10,.28)!important;border-radius:4px!important;background:#fff!important;box-sizing:border-box;transition:background-color .12s ease,border-color .12s ease}
html body :is(#main-content,.popup-body) .toggle-switch > .custom-checkbox svg{width:12px!important;height:12px!important;margin:0!important;top:0!important;color:#fff!important;fill:none;stroke-width:2.2;opacity:0;transform:none!important}
html body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox{background:#1a1a1a!important;border-color:#1a1a1a!important}
html body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox svg{opacity:1}
html body :is(#main-content,.popup-body) .toggle-switch > .custom-checkbox:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(10,10,10,.12)}
html body :is(#main-content,.popup-body) .toggle-switch input:disabled + .custom-checkbox{opacity:.45}
/* 5 · 折叠区块（封面 / 标签 / 模板 / 外部认证 ID）：细边框卡片 + 14px 标题 + 线性箭头 */
html body #main-content .form-group.collapsible{padding:0 20px!important;margin-bottom:14px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:var(--cb-radius-sm,10px)!important;background:#fff}
html body #main-content .form-group.collapsible > .collapse-title{display:flex!important;align-items:center;width:calc(100% + 40px)!important;margin:0 -20px!important;padding:14px 20px!important;border:0!important;background:transparent!important;border-radius:var(--cb-radius-sm,10px)}
html body #main-content .form-group.collapsible > .collapse-title:hover{background:#fafafa!important}
html body #main-content .form-group.collapsible > .collapse-title label{display:flex!important;align-items:center;gap:10px;margin:0!important;padding:0!important;font-size:14px!important;font-weight:600!important;color:#1a1a1a!important}
html body #main-content .form-group.collapsible > .collapse-title label:before{content:''!important;flex:0 0 16px;width:16px;height:16px;margin:0!important;background:currentColor;opacity:.55;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6l-6 6'/%3E%3C/svg%3E") center/16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6l-6 6'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .18s ease!important}
html body #main-content .form-group.collapsible.open > .collapse-title label:before{transform:rotate(90deg)!important}
html body #main-content .form-group.collapsible.open > .collapse-title{border-bottom-left-radius:0;border-bottom-right-radius:0}
html body #main-content .form-group.collapsible > .collapse-content{padding:2px 0 20px 26px!important}
html body #main-content .form-group.collapsible > .collapse-content > p.small:first-child,html body #main-content .form-group.collapsible .tags > p.small{margin:0 0 14px!important}
/* 7 · 标签编辑：去掉卡片与灰色拖拽条，行 = 手柄 | 名称 | 值 | 删除 */
html body :is(#main-content,.floating-toolbox) .tags > button.text-button{margin:4px 0 0 20px!important}
html body :is(#main-content,.floating-toolbox) .tags > button.text-button:before{content:'+';font-size:16px;line-height:1;font-weight:400}
html body :is(#main-content,.floating-toolbox) .tags > p.small a{font-weight:500;color:#1a1a1a;text-decoration:underline;text-underline-offset:2px;text-decoration-color:rgba(10,10,10,.25)}
/* 8 · 页面选择器（默认页面模板）：输入框 + 「选择 / 重置」同排 */
html body #main-content [component="page-picker"]{display:flex!important;flex-wrap:wrap;align-items:center;gap:6px}
html body #main-content [component="page-picker"] > .input-base{flex:1 1 0;min-width:0;margin:0!important}
html body #main-content [component="page-picker"] [hidden],html body #main-content [component="page-picker"] > .sep{display:none!important}
html body #main-content [component="page-picker"] > br{display:none}
html body #main-content .collapse-content > .flex-container-row:has([component="page-picker"]){align-items:flex-start!important;gap:16px 32px!important}
html body #main-content .collapse-content > .flex-container-row:has([component="page-picker"]) > .min-width-m{flex:0 0 320px;max-width:100%}
/* 9 · 实体列表（书架书籍、移动/复制选择器）：图标 16px + 间距；滚动框圆角 */
html body #main-content :is(.scroll-box,input.scroll-box-search,.scroll-box-header-item){border-color:rgba(10,10,10,.12)!important}
html body #main-content .scroll-box{border-radius:0 0 var(--cb-radius-xs,6px) var(--cb-radius-xs,6px)!important}
html body #main-content :is(input.scroll-box-search,.scroll-box-header-item){border-radius:var(--cb-radius-xs,6px) var(--cb-radius-xs,6px) 0 0!important;height:38px!important;display:flex;align-items:center}
html body #main-content .scroll-box-header-item > span{font-size:13px!important;color:var(--cb-muted)!important;padding:0 12px!important}
html body #main-content .scroll-box-item{min-height:40px;font-size:14px!important;border-color:rgba(10,10,10,.06)!important}
html body #main-content .scroll-box-item > [class^="text-"]{display:flex;align-items:center;gap:8px}
html body #main-content .scroll-box-item :is(svg.svg-icon){width:16px!important;height:16px!important;margin:0!important;top:0!important}
html body #main-content .scroll-box-item .handle{color:var(--cb-muted)}
html body #main-content .entity-list-item > .icon,html body .popup-body .entity-list-item > .icon{flex:0 0 auto}
/* 10 · 修订列表：操作列不再竖排 */
html body #main-content .item-list-row > .actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:0 2px;white-space:nowrap}
html body #main-content .item-list-row > .actions :is(.actions > a,.dropdown-container > a){display:inline-flex;align-items:center;min-height:26px;padding:2px 6px;border-radius:6px;font-size:13px!important;color:#3a3a3a}
html body #main-content .item-list-row > .actions :is(.actions > a,.dropdown-container > a):hover{background:var(--cb-hover,rgba(10,10,10,.045));text-decoration:none}
html body #main-content .item-list-row > .actions > i{font-size:13px;color:var(--cb-muted);padding:0 6px}
html body #main-content .item-list-row > .actions > span.text-muted{color:#d4d4d4!important;opacity:1!important}
html body #main-content .item-list-row > .actions .dropdown-menu{min-width:240px;white-space:normal}
html body #main-content .item-list-row.strong,html body #main-content .item-list-row.bold{font-size:12px!important;font-weight:600!important;color:var(--cb-muted)!important}
/* 12 · 书籍排序：外框与分组线变浅，圆角统一 */
html body #main-content .sort-box,html body #main-content .sort-box:hover{border:1px solid rgba(10,10,10,.1)!important;border-radius:var(--cb-radius-sm,10px)!important;box-shadow:none!important}
html body #main-content .sort-box-options{display:flex!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:wrap;padding:4px 14px 12px!important}
html body #main-content .sort-box .entity-list-item{border:0!important}
html body #main-content .sort-box-options .button{height:30px!important;padding:0 10px!important;font-size:13px!important}
html body #main-content .sort-box :is(ul.sortable-page-sublist,.sort-list){border-color:rgba(10,10,10,.1)!important}
html body #main-content .sort-box li{border-color:rgba(10,10,10,.06)!important}
/* 13 · 权限行与角色权限矩阵 */
html body #main-content .content-permissions-row,html body #main-content .item-list-row:has(.toggle-switch){align-items:center}
html body #main-content .permissions-table th,html body #main-content .permissions-table td{padding:10px 12px!important;vertical-align:middle!important;border-color:rgba(10,10,10,.06)!important}
html body #main-content .item-list-row .toggle-switch > span.label{font-size:13px!important}
/* 14 · 页面编辑器：铺满视口、隐藏页脚、标题输入框、工具箱中性色 */
html body.flexbox > #cb-footer,html body.flexbox > footer{display:none!important}
html body.flexbox{height:100vh!important;max-height:100vh!important;overflow:hidden!important}
html body.flexbox > #content{display:flex!important;flex:1 1 auto!important;min-height:0!important}
html body.flexbox #main-content.flex-fill{display:flex!important;flex:1 1 auto;min-height:0}
html body.flexbox #main-content .title-input.page-title input#name{height:56px!important;padding:0 24px!important;border:0!important;box-shadow:none!important;background:transparent!important;font-size:22px!important;font-weight:600!important;line-height:1.3!important;color:#0a0a0a!important}
html body.flexbox #main-content .title-input.page-title input#name::placeholder{color:#a3a3a3;font-weight:500}
html body.flexbox #main-content .title-input.page-title{border-bottom:1px solid rgba(10,10,10,.06)}
html body .floating-toolbox{border:1px solid rgba(10,10,10,.08)!important;border-radius:var(--cb-radius-md,10px)!important;box-shadow:none!important;overflow:hidden}
html body .floating-toolbox .tabs{border-inline-end-color:rgba(10,10,10,.08)!important}
html body .floating-toolbox .tabs-inner > button{color:var(--cb-muted)!important}
html body .floating-toolbox .tabs-inner > button:hover,html body .floating-toolbox.open .tabs-inner > button.active{color:#0a0a0a!important}
html body .floating-toolbox .tabs-inner > button:hover:after,html body .floating-toolbox.open .tabs-inner > button.active:after{background-color:#0a0a0a!important;opacity:.05!important}
html body .floating-toolbox.open .tabs-inner > button.active{border-inline-end:2px solid #1a1a1a!important}
html body .floating-toolbox.open .toolbox-toggle{background-color:var(--cb-hover-strong,rgba(10,10,10,.075))!important}
html body .floating-toolbox h4{font-size:17px!important;font-weight:600!important;color:#0a0a0a!important;margin-top:18px!important}
html body .floating-toolbox :is(.text-small,small,p.small,.small){font-size:13px!important;line-height:1.6!important}
html body .floating-toolbox .tags > button.text-button{margin-left:16px!important}
/* 15 · 弹窗（图片管理 / 选择项目 / 代码 / 附件）：白色标题栏、圆角、柔和阴影 */
html body .popup-background{background-color:rgba(10,10,10,.38)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
html body .popup-body{border:1px solid rgba(10,10,10,.08)!important;border-radius:14px!important;box-shadow:0 24px 64px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.06)!important;background:#fff!important}
html body .popup-header{height:52px!important;align-items:center!important;padding:0 8px 0 20px!important;background:#fff!important;color:#0a0a0a!important;border-bottom:1px solid rgba(10,10,10,.08)!important}
html body .popup-header .popup-title{flex:1;padding:0!important;font-size:15px!important;font-weight:600!important;line-height:52px!important;color:#0a0a0a!important}
html body .popup-header button{display:inline-flex!important;align-items:center;gap:6px;height:32px!important;padding:0 10px!important;border-radius:8px!important;color:#3a3a3a!important;font-size:13px!important;background:transparent!important}
html body .popup-header button:hover{background:var(--cb-hover,rgba(10,10,10,.045))!important;color:#0a0a0a!important}
html body .popup-header button svg{width:16px!important;height:16px!important;margin:0!important;top:0!important}
html body .popup-header .popup-header-close{width:32px!important;padding:0!important;justify-content:center}
html body .popup-footer{align-items:center!important;min-height:56px!important;padding:0 16px!important;gap:8px;background:#fafafa!important;border-top:1px solid rgba(10,10,10,.08)!important}
html body .popup-footer .button{height:34px!important;margin:0!important;padding:0 16px!important;border-radius:8px!important;border:1px solid #1a1a1a!important;background:#1a1a1a!important;color:#fff!important;font-size:14px!important;font-weight:500!important}
html body .popup-footer .button:hover{background:#000!important}
html body .popup-footer .button.outline{background:#fff!important;color:#1a1a1a!important;border-color:rgba(10,10,10,.14)!important}
html body .popup-body :is(.text-small,small,p.small,.small){font-size:13px!important;line-height:1.6!important}
html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(h1,h2).list-heading{color:#f4f4f4!important}
html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(h1,h2).list-heading + p,html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(p.small,p.text-small,.text-muted.small,small.text-muted,.text-muted.text-small){color:#8e8e8e!important}
html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.button,button.button,label.button):not(.outline){background:#f4f4f4!important;border-color:#f4f4f4!important;color:#1c1c1c!important}
html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .button.outline{background:transparent!important;color:#e4e4e7!important;border-color:rgba(255,255,255,.14)!important}
html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .button.outline:hover{background:rgba(255,255,255,.06)!important}
html.cb-dark body :is(#main-content > .container,.popup-body,.floating-toolbox) :is(button,a).text-button:not(#_){color:#c8c8cd!important}
html.cb-dark body :is(#main-content,.floating-toolbox) .tags > p.small a{color:#e4e4e7!important;text-decoration-color:rgba(255,255,255,.3)}
html.cb-dark body :is(#main-content > .container,.popup-body,.floating-toolbox) :is(button,a).text-button:not(#_):hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
html.cb-dark body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.toggle-switch > span.label,label.checkbox,.form-group > label:first-child){color:#c8c8cd!important}
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch > .custom-checkbox{background:#111113!important;border-color:rgba(255,255,255,.28)!important}
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox{background:#f4f4f4!important;border-color:#f4f4f4!important}
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch > .custom-checkbox svg{color:#1c1c1c!important}
/* dark5-4 设置页复选框 A（Feng 18:32 经 Designer）：原样取自 /workspace/cb-darkfix/options/复选框-A-勾选反白.css。
   原因：上两行（现网 L5899/L5900）的深色勾选白底被现网 L5639 浅色设置页规则（#1a1a1a!important，选择器更重）改回深底，对勾 #1c1c1c 画在深底上看不见；这里用 :not(#_) 压过 L5639。 */
/* 复选框 A：勾选反白（和浅色模式对称：浅色是黑底白勾，深色是白底黑勾）
   未勾选保持现状：#111113 底 + 28% 白框。勾选：#f0f0f0 实心 + 深色对勾。
   :not(#_) 用来压过 reading.css L5639 那条浅色规则（它的优先级比 L5899 深色规则高）。 */
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch > .custom-checkbox:not(#_){background:#111113!important;border:1px solid rgba(255,255,255,.28)!important}
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox:not(#_){background:#f0f0f0!important;border-color:#f0f0f0!important}
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox:not(#_) svg,
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox:not(#_) svg *{color:#111113!important;fill:currentColor!important}
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox:not(#_) svg[data-cb-set=tabler],
html.cb-dark body :is(#main-content,.popup-body) .toggle-switch input:checked + .custom-checkbox:not(#_) svg[data-cb-set=tabler] *{fill:none!important;stroke:currentColor!important}
html.cb-dark body #main-content .form-group.collapsible{background:transparent;border-color:rgba(255,255,255,.1)!important}
html.cb-dark body #main-content .form-group.collapsible > .collapse-title:hover{background:rgba(255,255,255,.03)!important}
html.cb-dark body #main-content .form-group.collapsible > .collapse-title label{color:#f4f4f4!important}
html.cb-dark body #main-content .item-list-row > .actions :is(.actions > a,.dropdown-container > a){color:#c8c8cd}
html.cb-dark body.flexbox #main-content .title-input.page-title input#name{color:#f4f4f4!important}
html.cb-dark body.flexbox #main-content .title-input.page-title{border-bottom-color:rgba(255,255,255,.06)}
html.cb-dark body .floating-toolbox{border-color:rgba(255,255,255,.08)!important}
html.cb-dark body .floating-toolbox .tabs-inner > button:hover,html.cb-dark body .floating-toolbox.open .tabs-inner > button.active,html.cb-dark body .floating-toolbox h4{color:#f4f4f4!important}
html.cb-dark body .floating-toolbox .tabs-inner > button:hover:after,html.cb-dark body .floating-toolbox.open .tabs-inner > button.active:after{background-color:#fff!important}
html.cb-dark body .floating-toolbox.open .tabs-inner > button.active{border-inline-end-color:#f4f4f4!important}
html.cb-dark body .popup-body,html.cb-dark body .popup-header{background:#1c1c1c!important;border-color:rgba(255,255,255,.08)!important}
html.cb-dark body .popup-header .popup-title{color:#f4f4f4!important}
html.cb-dark body .popup-header button{color:#c8c8cd!important}
html.cb-dark body .popup-header button:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
html.cb-dark body .popup-footer .button{background:#f4f4f4!important;border-color:#f4f4f4!important;color:#1c1c1c!important}
/* tabler134 · 系统页面细化 */
/* 1 节奏：卡片 32/12、标题 24、字段 24、label→控件 8、控件统一 36 高 */
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.card.content-wrap,main.card):not(#_){padding:32px!important;border-radius:12px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card :is(h1,h2).list-heading:not(#_){margin:0 0 24px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card :is(h1,h2).list-heading:not(#_):has(+ p),html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card .flex-container-row:has(> .list-heading):has(+ p) :is(h1,h2).list-heading:not(#_){margin-bottom:8px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card :is(h1,h2).list-heading + p:not(#_),html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card .flex-container-row:has(> .list-heading) + p:not(#_){margin:0 0 24px!important;font-size:13px!important;line-height:1.6!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .card .flex-container-row:has(> .list-heading):not(#_){margin-bottom:8px!important;row-gap:8px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group:not(#_):not(.collapsible){margin-bottom:24px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group > label:first-child:not(#_),html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group[collapsible]:not(.collapsible) > .collapse-title label:not(#_){margin:0 0 8px!important;line-height:20px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.button,button.button,label.button):not(#_){height:36px!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.text-right,.form-group.text-right):has(> .button):not(#_){margin:32px 0 0 auto!important;gap:8px!important}
/* 2 折叠式“复制/移动目的地”标签：与普通 label 同一左缘 */
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group[collapsible]:not(.collapsible) > .collapse-title:not(#_){display:flex!important;align-items:center;gap:6px;width:auto!important;margin:0 0 8px!important;padding:0!important;border:0!important;background:none!important;color:inherit!important}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group[collapsible]:not(.collapsible) > .collapse-title label:not(#_){margin:0!important;padding:0!important;font-size:14px!important;font-weight:500!important;cursor:pointer}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group[collapsible]:not(.collapsible) > .collapse-title:after{content:'';width:14px;height:14px;background:currentColor;opacity:.5;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6l6-6'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .15s}
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) .form-group[collapsible].open:not(.collapsible) > .collapse-title:after{transform:rotate(180deg)}
/* 4 两栏设置行：flex 行与 grid 行统一 32 列距（我的账户“语言”下拉右偏 4px） */
html body #main-content .setting-list .flex-container-row.gap-l:not(#_){column-gap:32px!important}
html body #main-content .setting-list > div:not(#_){padding:24px 0!important}
html body #main-content .setting-list > div:first-child:not(#_){padding-top:0!important}
html body #main-content .setting-list > div:last-child:not(#_){padding-bottom:8px!important}
html body #main-content .setting-list-label:not(#_){margin:0 0 4px!important;line-height:20px!important}
html body #main-content .setting-list :is(p.small,p.text-small,.small):not(#_){margin:0!important;font-size:13px!important;line-height:1.6!important}
html body #main-content .setting-list .stretch-inputs:not(#_) > :is(input,select){width:100%!important}
/* 5 修订列表：表头与行列宽一致 */
html body #main-content .item-list:has(.item-list-row > .actions) > .item-list-row > div:not(#_){flex-basis:0!important;min-width:0!important}
html body #main-content .item-list:has(.item-list-row > .actions) > .item-list-row > .fit-content:not(#_){flex:0 0 56px!important}
html body #main-content .item-list:has(.item-list-row > .actions) > .item-list-row > div:last-child:not(#_){justify-content:flex-end;text-align:right;padding-left:16px!important;padding-right:16px!important}
/* 6 小字统一 ≥12.5 */
html body #main-content > .container:not(.very-small,.cb-wide,.cb-lib-page,.api-docs) :is(.toggle-switch span.bold,.sort-box label,.permissions-table .bold,label.toggle-switch > span):not(#_){font-size:13px!important}
/* 7 顶部间距：页头→首个块统一 32 */
html body #main-content > .container.medium > .grid.right-focus.my-xl:not(#_){margin-top:0!important}
html body #main-content > .container > main.mt-xxl:not(#_),html body #main-content > .container > .card.mt-xxl:not(#_){margin-top:0!important}
/* 9 配色方案标签：标签文字与面板内容左缘对齐 */
html body #main-content .tab-container > .controls-card:not(#_){padding:0!important;border-bottom:1px solid rgba(10,10,10,.08)!important;gap:4px}
html body #main-content .tab-container > .controls-card > button:not(#_){padding:12px 16px!important;font-size:14px!important}
html body #main-content .tab-container > .p-m:not(#_){padding:16px!important}
/* 10 小字补漏 */
html body #main-content label[for=role_select] .bold:not(#_),html body #main-content label[for=auto-sort]:not(#_),html body #main-content .user-list-item a:not(#_){font-size:13px!important}
html body #main-content details.sort-box:not(#_){padding:0!important;border-radius:12px!important;overflow:hidden}
html body #main-content .tab-container .sub-card:not(#_){border:1px solid rgba(10,10,10,.08)!important;border-top:0!important;border-radius:0 0 12px 12px!important;box-shadow:none!important}
html body #main-content [component=setting-color-picker] label:not(#_){display:block;margin:0 0 4px!important}
html body #main-content [component=setting-color-picker] .text-button:not(#_){padding:0!important;font-size:13px!important}
html body #main-content [component=setting-color-picker] .sep:not(#_){margin:0 8px;opacity:.4}
html body #main-content [component=setting-color-picker] input[type=color]:not(#_){width:56px!important;height:32px!important;padding:2px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;background:#fff!important;cursor:pointer}
/* dark */
html.cb-dark body #main-content .tab-container .sub-card:not(#_){border-color:rgba(255,255,255,.08)!important;background:transparent!important}
html.cb-dark body #main-content [component=setting-color-picker] input[type=color]:not(#_){border-color:rgba(255,255,255,.14)!important;background:#1c1c1c!important}
html.cb-dark body #main-content .tab-container > .controls-card:not(#_){border-bottom-color:rgba(255,255,255,.08)!important}
html body .tox .tox-editor-header:not(#_){background:#fafafa!important;border-bottom:1px solid rgba(10,10,10,.08)!important;box-shadow:none!important;padding:0!important}
html body .tox :is(.tox-toolbar,.tox-toolbar__primary,.tox-toolbar__overflow,.tox-toolbar-overlord):not(#_){background:transparent!important;background-image:none!important}
html body .tox .tox-toolbar__group:not(#_){padding:0 6px!important;border-color:rgba(10,10,10,.08)!important}
html body .tox :is(.tox-tbtn,.tox-split-button):not(#_){height:30px!important;margin:4px 1px!important;border-radius:6px!important;color:#3a3a3a!important}
html body .tox .tox-tbtn:not(#_):hover,html body .tox .tox-split-button:not(#_):hover{background:rgba(10,10,10,.06)!important;box-shadow:none!important}
html body .tox .tox-tbtn--enabled:not(#_),html body .tox .tox-tbtn--enabled:hover{background:rgba(10,10,10,.09)!important;color:#0a0a0a!important}
html body .tox .tox-tbtn svg{fill:currentColor!important}
html body .tox .tox-tbtn--select .tox-tbtn__select-label{font-size:13px!important;font-weight:500!important}
html body .tox .tox-statusbar:not(#_){height:28px!important;border-top:1px solid rgba(10,10,10,.06)!important;background:#fafafa!important;font-size:12px!important;color:var(--cb-muted)!important}
html body .tox :is(.tox-menu,.tox-collection--list,.tox-pop__dialog):not(#_){border:1px solid rgba(10,10,10,.1)!important;border-radius:10px!important;box-shadow:0 12px 32px -8px rgba(10,10,10,.18),0 2px 6px rgba(10,10,10,.06)!important;background:#fff!important;padding:4px!important}
html body .tox .tox-collection__item:not(#_){border-radius:6px!important;padding:6px 10px!important;font-size:14px!important;color:#2a2a2a!important}
html body .tox .tox-collection__item--active:not(#_){background:rgba(10,10,10,.05)!important;color:#0a0a0a!important}
html body .tox .tox-dialog:not(#_){border:1px solid rgba(10,10,10,.08)!important;border-radius:14px!important;box-shadow:0 24px 64px -12px rgba(10,10,10,.28)!important}
html body .tox :is(.tox-dialog__header,.tox-dialog__footer):not(#_){border-color:rgba(10,10,10,.08)!important;background:#fff!important}
html body .tox .tox-dialog__title{font-size:16px!important;font-weight:600!important}
html body .tox :is(.tox-textfield,.tox-listboxfield .tox-listbox--select,.tox-textarea):not(#_){min-height:36px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;box-shadow:none!important;font-size:14px!important}
html body .tox :is(.tox-textfield,.tox-textarea,.tox-listbox--select):focus{border-color:rgba(10,10,10,.4)!important;box-shadow:0 0 0 3px rgba(10,10,10,.08)!important}
html body .tox .tox-button:not(.tox-button--secondary,.tox-button--naked):not(#_){background:#1a1a1a!important;border-color:#1a1a1a!important;border-radius:8px!important;font-weight:500!important}
html body .tox .tox-button--secondary:not(#_){background:#fff!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;color:#1a1a1a!important}
html body .editor-dropdown-menu:not(#_),html body .editor-format-menu .editor-dropdown-menu:not(#_){border:1px solid rgba(10,10,10,.1)!important;border-radius:10px!important;box-shadow:0 12px 32px -8px rgba(10,10,10,.18)!important;padding:4px!important;background:#fff!important}
html body .editor-form-modal:not(#_){border-radius:14px!important;border:1px solid rgba(10,10,10,.08)!important;box-shadow:0 24px 64px -12px rgba(10,10,10,.28)!important}
html body .editor-form-modal-header:not(#_){padding:14px 20px!important;border-bottom:1px solid rgba(10,10,10,.08)!important;background:#fff!important;color:#0a0a0a!important;font-size:16px!important;font-weight:600!important}
/* 标签自动补全 */
html body .suggestion-box:not(#_){margin-top:4px!important;padding:4px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 12px 32px -8px rgba(10,10,10,.18)!important;list-style:none}
/* cb-fix190 最终版（Feng 2026-10-29 12:23「下拉选 A：选中行圆角灰底」）：标签值下拉 = 一张清单，选中/悬停整行圆角灰底；替换原 L6098–L6100 */
html body .suggestion-box li:not(#_):not(#__){margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
html body .suggestion-box li > .text-item:not(#_):not(#__){display:block!important;margin:0!important;padding:7px 10px!important;border:0!important;border-radius:6px!important;outline:none!important;background:transparent!important;font-size:14px!important;line-height:20px!important;color:#2a2a2a!important;cursor:pointer}
html body .suggestion-box li > .text-item:is(:hover,:focus,:focus-visible):not(#_):not(#__){background:var(--cb-hover-strong)!important;color:#0a0a0a!important;outline:none!important}
html.cb-dark body .suggestion-box li > .text-item:not(#_):not(#__){color:#c8c8cd!important}
html.cb-dark body .suggestion-box li > .text-item:is(:hover,:focus,:focus-visible):not(#_):not(#__){color:#fff!important}
/* 8 · 模态窗口：遮罩、外壳、页头、页脚、确认框 */
html body .popup-background:not(#_){background:rgba(10,10,10,.42)!important;backdrop-filter:none;-webkit-backdrop-filter:none}
html body .popup-background .popup-body:not(#_){border:1px solid rgba(10,10,10,.08)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 24px 64px -12px rgba(10,10,10,.32),0 4px 12px rgba(10,10,10,.06)!important;overflow:hidden!important}
html body .popup-background .popup-header:not(#_){display:flex!important;align-items:center!important;min-height:52px!important;padding:0 8px 0 20px!important;background:#fff!important;color:#0a0a0a!important;border-bottom:1px solid rgba(10,10,10,.08)!important}
html body .popup-background .popup-title:not(#_){flex:1;margin:0!important;padding:0!important;font-size:16px!important;font-weight:600!important;line-height:1.4!important;color:#0a0a0a!important}
html body .popup-background .popup-header-close:not(#_){display:inline-flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;padding:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--cb-muted)!important;cursor:pointer}
html body .popup-background .popup-header-close:not(#_):hover{background:rgba(10,10,10,.06)!important;color:#0a0a0a!important}
html body .popup-background .popup-header-close svg{width:18px!important;height:18px!important;fill:currentColor!important;margin:0!important}
html body .popup-background .popup-body > :is(.px-l,.p-l,.px-m,.p-m,.popup-content):not(#_){padding:20px!important}
html body .popup-background .popup-body p:not(#_){font-size:14px!important;line-height:1.65!important;color:#3a3a3a!important}
html body .popup-background .popup-footer:not(#_){display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:8px!important;padding:12px 20px!important;border-top:1px solid rgba(10,10,10,.08)!important;background:#fafafa!important}
html body .popup-background .popup-body .text-right:has(> .button){display:flex!important;justify-content:flex-end!important;gap:8px!important}
html body .popup-background .popup-body.very-small:not(#_){max-width:440px!important}
html body .popup-background .popup-body.small:not(#_){max-width:640px!important}
/* 10 · 控件：开关、复选框、单选、下拉菜单项、加载与状态 */
html body .toggle-switch input[type=checkbox] + span.switch:not(#_){width:34px!important;height:20px!important;border-radius:999px!important;background:#d4d4d4!important;transition:background-color .15s ease}
html body .toggle-switch input[type=checkbox] + span.switch:not(#_)::before{width:16px!important;height:16px!important;top:2px!important;left:2px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,10,10,.25)!important;transition:transform .15s ease!important}
html body .toggle-switch input[type=checkbox]:checked + span.switch:not(#_){background:#1a1a1a!important}
html body .toggle-switch input[type=checkbox]:checked + span.switch:not(#_)::before{transform:translateX(14px)!important;left:2px!important}
html body .toggle-switch input[type=checkbox]:focus-visible + span.switch{box-shadow:0 0 0 3px rgba(10,10,10,.12)!important}
html body .dropdown-menu :is(.icon-item,a,button):not(#_):is(.text-neg){color:#dc2626!important}
html body .dropdown-menu :is(.icon-item,a,button):not(#_):is(.text-warn){color:#b45309!important}
html body .dropdown-menu :is(.icon-item,a,button):not(#_):is(.text-pos){color:#15803d!important}
html body .dropdown-menu hr:not(#_){margin:4px 0!important;border:0!important;border-top:1px solid rgba(10,10,10,.08)!important}
html body .dropdown-search-item:not(#_){border-radius:6px!important;padding:6px 10px!important;font-size:14px!important}
html body .dropdown-search .dropdown-search-search input:not(#_){height:34px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;font-size:14px!important}
html body .status-indicator-active{background:#16a34a!important}
html body .status-indicator-inactive{background:#a3a3a3!important}
html body .loading-container > div{background:#1a1a1a!important}
/* 11 · 列表：行高、悬停、排序条、分页、空状态 */
html body #main-content .item-list-row:not(#_){min-height:48px!important;padding:8px 16px!important;border-bottom:1px solid rgba(10,10,10,.06)!important;transition:background-color .12s ease}
html body #main-content .item-list-row:not(.flex-container-row.items-center.py-xs):hover{background:rgba(10,10,10,.02)!important}
html body #main-content .item-list > .item-list-row:first-child:not(#_){border-top:1px solid rgba(10,10,10,.06)!important}
html body #main-content .item-list-row :is(.text-small,.text-muted){font-size:13px!important;color:var(--cb-muted)!important}
html body #main-content .pagination:not(#_){display:inline-flex!important;flex-wrap:wrap;gap:4px!important;margin:12px 0!important;padding:0!important;list-style:none!important}
html body #main-content .pagination li > :is(a,span):not(#_){display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:34px!important;height:34px!important;padding:0 10px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:8px!important;background:#fff!important;font-size:14px!important;color:#2a2a2a!important;text-decoration:none!important}
html body #main-content .pagination li > a:hover{background:var(--cb-fill)!important}
html body #main-content .pagination li.active > span:not(#_){background:#1a1a1a!important;border-color:#1a1a1a!important;color:#fff!important}
html body #main-content .pagination li.disabled > span:not(#_){color:#c4c4cc!important;background:#fafafa!important}
html body #main-content :is(.entity-list,.item-list) > p.text-muted:only-child,html body #main-content .empty-text:not(#_){padding:40px 16px!important;text-align:center!important;font-size:14px!important;color:var(--cb-muted)!important;border:1px dashed rgba(10,10,10,.12)!important;border-radius:12px!important}
html.cb-dark body .toggle-switch input[type=checkbox]:checked + span.switch:not(#_)::before{background:#1c1c1c!important}
html body #entity-selector-wrap .popup-body .form-group:not(#_){height:min(480px,62vh)!important;min-height:0!important;margin:0!important}
/* 2 · 弹窗页头里的非关闭按钮（图片管理器「上传」、代码编辑器「历史」）：原生是白字，页头已改白底，改回深色描边按钮 */
html body .popup-background .popup-header button:not(.popup-header-close):not(#_){display:inline-flex!important;align-items:center!important;gap:6px!important;height:32px!important;margin:0 4px 0 0!important;padding:0 12px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;background:#fff!important;color:#2a2a2a!important;font-size:13px!important;font-weight:500!important;line-height:1!important;cursor:pointer}
html body .popup-background .popup-header button:not(.popup-header-close):not(#_):hover{background:var(--cb-fill)!important;color:#0a0a0a!important}
html body .popup-background .popup-header button:not(.popup-header-close) svg{width:16px!important;height:16px!important;fill:currentColor!important;margin:0!important}
html body .popup-background .popup-header .dropdown-menu:not(#_){color:#2a2a2a!important}
html body .popup-background .popup-header .dropdown-menu button:not(#_){border:0!important;height:auto!important;width:100%!important;justify-content:flex-start!important;padding:6px 10px!important;margin:0!important}
html body .popup-background .popup-footer button.button:not(#_){color:#fff!important;border-radius:8px!important;padding:0 16px!important}
html body .popup-background .popup-footer button.button[disabled]:not(#_){background:#e4e4e7!important;border-color:#e4e4e7!important;color:var(--cb-muted)!important;cursor:not-allowed}
html body .popup-background .popup-body:not(.small,.very-small):not(#_){width:min(1200px,calc(100vw - 48px))!important}
/* 5 · 新版所见即所得（Lexical）：弹窗、表单、标签页、右键/上下文工具条、分隔线 */
html body .editor-modal-wrapper:not(#_){background:rgba(10,10,10,.42)!important;backdrop-filter:none;-webkit-backdrop-filter:none}
html body .editor-modal:not(#_){border:1px solid rgba(10,10,10,.08)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 24px 64px -12px rgba(10,10,10,.32)!important;overflow:hidden!important}
html body .editor-modal-header:not(#_){display:flex!important;align-items:center!important;min-height:52px!important;padding:0 8px 0 20px!important;background:#fff!important;border-bottom:1px solid rgba(10,10,10,.08)!important;color:#0a0a0a!important}
html body .editor-modal-title:not(#_){flex:1;font-size:16px!important;font-weight:600!important;color:#0a0a0a!important}
html body .editor-modal-close:not(#_){display:inline-flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--cb-muted)!important;cursor:pointer}
html body .editor-modal-close:not(#_):hover{background:rgba(10,10,10,.06)!important;color:#0a0a0a!important}
html body .editor-modal-close svg{fill:currentColor!important}
html body .editor-modal-body:not(#_){padding:20px!important}
html body .editor-form-field-wrapper:not(#_){margin-bottom:16px!important}
html body .editor-form-field-label:not(#_){display:block!important;margin:0 0 6px!important;font-size:13px!important;font-weight:500!important;color:#2a2a2a!important}
html body .editor-form-field-input:not(#_){width:100%!important;height:36px!important;padding:0 12px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;font-size:14px!important;color:#1a1a1a!important;box-sizing:border-box}
html body textarea.editor-form-field-input:not(#_){height:auto!important;min-height:80px!important;padding:8px 12px!important}
html body .editor-form-field-input:focus{outline:none!important;border-color:rgba(10,10,10,.4)!important;box-shadow:0 0 0 3px rgba(10,10,10,.08)!important}
html body .editor-form-actions:not(#_){display:flex!important;justify-content:flex-end!important;gap:8px!important;margin:20px -20px -20px!important;padding:12px 20px!important;border-top:1px solid rgba(10,10,10,.08)!important;background:#fafafa!important}
html body .editor-form-actions > button:not(#_){height:34px!important;margin:0!important;padding:0 16px!important;border-radius:8px!important;font-size:14px!important;font-weight:500!important;cursor:pointer}
html body .editor-form-action-primary:not(#_){border:1px solid #1a1a1a!important;background:#1a1a1a!important;color:#fff!important}
html body .editor-form-action-primary:not(#_):hover{background:#000!important}
html body .editor-form-action-secondary:not(#_){border:1px solid rgba(10,10,10,.14)!important;background:#fff!important;color:#1a1a1a!important}
html body .editor-form-action-secondary:not(#_):hover{background:var(--cb-fill)!important}
html body .editor-form-tab-controls:not(#_){display:flex!important;gap:2px!important;margin:-4px 0 16px!important;padding:2px!important;border-radius:8px!important;background:var(--cb-fill)!important;border:0!important}
html body .editor-form-tab-control:not(#_){flex:1;height:30px!important;border:0!important;border-radius:6px!important;background:transparent!important;font-size:13px!important;font-weight:500!important;color:var(--cb-muted)!important;cursor:pointer}
html body .editor-form-tab-control[aria-selected=true]:not(#_){background:#fff!important;color:#0a0a0a!important;box-shadow:0 1px 2px rgba(10,10,10,.12)!important}
html body .editor-container .editor-button:not(#_){height:30px!important;min-width:30px!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#3a3a3a!important}
html body .editor-container .editor-button:not(#_):hover{background:rgba(10,10,10,.06)!important}
html body .editor-container .editor-button-active:not(#_){background:rgba(10,10,10,.09)!important;color:#0a0a0a!important}
html body .editor-container .editor-button[disabled]:not(#_){opacity:.35!important}
html body .editor-container .editor-separator:not(#_){width:1px!important;height:18px!important;margin:0 6px!important;background:rgba(10,10,10,.12)!important;border:0!important}
html body .editor-context-toolbar:not(#_){padding:3px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 10px 28px -8px rgba(10,10,10,.22)!important}
html body .editor-dropdown-menu:not(#_){padding:4px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 12px 32px -8px rgba(10,10,10,.18)!important}
html body .editor-dropdown-menu .editor-button:not(#_){border-radius:6px!important}
html body .editor-dropdown-menu-vertical .editor-button:not(#_){justify-content:flex-start!important;padding:0 10px!important;font-size:14px!important}
html body .editor-table-creator-cell:not(#_){border-radius:3px!important;border-color:rgba(10,10,10,.14)!important}
html body .editor-table-creator-cell.active:not(#_){background:#1a1a1a!important;border-color:#1a1a1a!important}
/* 6 · 上传区与上传进度卡片：主色青绿改为中性色 */
html body .dropzone-landing-area:not(#_){padding:16px 20px!important;border:1.5px dashed rgba(10,10,10,.18)!important;border-radius:12px!important;background:#fafafa!important;color:var(--cb-muted)!important;font-size:13px!important}
html body .dropzone-overlay:not(#_){border:2px dashed rgba(255,255,255,.6)!important;border-radius:12px!important;background:rgba(26,26,26,.82)!important;color:#fff!important;font-style:normal!important;font-size:15px!important;font-weight:500!important}
html body .dropzone-file-item:not(#_){border:1px solid rgba(10,10,10,.08)!important;border-radius:10px!important;box-shadow:0 12px 32px -8px rgba(10,10,10,.22)!important}
html body .dropzone-file-item-image-wrap:not(#_){background:var(--cb-fill)!important}
html body .dropzone-file-item-progress:not(#_){background:#1a1a1a!important}
html body .dropzone-file-item-label:not(#_){font-size:13px!important;font-weight:600!important;color:#0a0a0a!important}
/* 7 · 编辑工具箱：各标签页内边距、模板搜索、评论区、附件说明 */
html body .floating-toolbox .toolbox-tab-content > .px-l:not(#_),html body .floating-toolbox .toolbox-tab-content > :is(.files,.comment-container-compact,#link-form-container,#edit-form-container):not(#_){padding:16px!important}
html body .floating-toolbox .tabs .toolbox-toggle:not(#_){color:var(--cb-muted)!important}
html body .floating-toolbox .tabs .toolbox-toggle svg,html body .floating-toolbox .tabs button svg{width:18px!important;height:18px!important;fill:currentColor!important}
html body .floating-toolbox hr:not(#_){margin:12px 0!important;border:0!important;border-top:1px solid rgba(10,10,10,.08)!important}
html body .floating-toolbox .files .flex-container-row:has(> .button){gap:8px!important;flex-wrap:wrap}
html body .floating-toolbox .files .button.small:not(#_){height:32px!important;padding:0 12px!important;font-size:13px!important}
html body .floating-toolbox .files .text-warn:not(#_){color:#b45309!important}
html body .floating-toolbox .tags > .text-button:not(#_){margin-top:4px!important}
html body .floating-toolbox .search-box.flexible:not(#_){display:flex!important;align-items:center!important;height:36px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;background:#fff!important;overflow:hidden}
html body .floating-toolbox .search-box.flexible input:not(#_){flex:1;height:34px!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body .floating-toolbox .search-box.flexible:focus-within{border-color:rgba(10,10,10,.4)!important;box-shadow:0 0 0 3px rgba(10,10,10,.08)!important}
html body .floating-toolbox .search-box.flexible button:not(#_){width:34px!important;height:34px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--cb-muted)!important}
html body .floating-toolbox [refs="template-manager@list"] .card:not(#_),html body .floating-toolbox .template-item:not(#_){margin:0 0 8px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:10px!important;box-shadow:none!important;overflow:hidden}
html body .floating-toolbox .comment-container-compact .comment-box:not(#_){border:1px solid rgba(10,10,10,.08)!important;border-radius:10px!important;box-shadow:none!important;margin-bottom:8px!important}
html body .floating-toolbox .section-expander summary:not(#_){font-size:13px!important;font-weight:500!important;color:#4a4a4a!important;cursor:pointer}
/* ===== tabler139 · 目录章节重设计：颜色自动跟随书籍色调（cb-acc-0~5，与 cb-dot 同源） ===== */
/* --cb-acc-l：浅色模式用的加深色（文字/图标可读）；--cb-acc-d：深色模式直接用 cb-dot 淡色 */
html body .cb-ent{--cb-acc-l:#6b6b6b;--cb-acc-d:#a3a3a3}
html body .cb-ent.cb-acc-0{--cb-acc-l:#9a7b3f;--cb-acc-d:#d8c7a3}
html body .cb-ent.cb-acc-1{--cb-acc-l:#4f6f99;--cb-acc-d:#a8bedb}
html body .cb-ent.cb-acc-2{--cb-acc-l:#4f7d4a;--cb-acc-d:#afcca9}
html body .cb-ent.cb-acc-3{--cb-acc-l:#7a5fa3;--cb-acc-d:#c4b2dc}
html body .cb-ent.cb-acc-4{--cb-acc-l:#b0743a;--cb-acc-d:#e2bf9b}
html body .cb-ent.cb-acc-5{--cb-acc-l:#66737b;--cb-acc-d:#b6bec3}
html body .cb-ent{--cb-acc:var(--cb-acc-l)}
html.cb-dark body .cb-ent{--cb-acc:var(--cb-acc-d)}
/* ==== tabler156: 书籍排序页 / 拥有者选择器 / 通知条 ==== */
/* ---------- 1 · 书籍排序页 ---------- */
html body #main-content [component=book-sort] .sort-box::before{display:none!important}
html body #main-content [component=book-sort] details.sort-box:not(#_):not(#__){padding:0!important;margin:0 0 16px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:12px!important;box-shadow:none!important;background:#fff!important;overflow:visible!important}
html body #main-content [component=book-sort] details.sort-box > summary:not(#_){padding:12px 16px!important;margin:0!important}
html body #main-content [component=book-sort] details.sort-box > summary h5:not(#_){margin:0!important;gap:8px!important;font-size:15px!important;font-weight:600!important;color:#1a1a1a!important}
html body #main-content [component=book-sort] details.sort-box > summary .caret-container:not(#_){display:flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;margin:0!important;color:var(--cb-muted)!important}
html body #main-content [component=book-sort] details.sort-box > summary .caret-container svg{width:14px!important;height:14px!important;margin:0!important;top:0!important}
html body #main-content [component=book-sort] details.sort-box > summary .entity-list-item:not(#_){padding:0!important;gap:8px!important;color:#1a1a1a!important}
html body #main-content [component=book-sort] .sort-box-options:not(#_):not(#__){padding:0 16px 14px!important;margin:0!important;gap:6px!important;border-bottom:1px solid rgba(10,10,10,.06)!important}
html body #main-content [component=book-sort] ul.sort-list:not(#_):not(#__){margin:0!important;padding:6px 8px 8px!important;border:0!important}
html body #main-content [component=book-sort] .sort-list li:not(#_):not(#__){margin:0!important;padding:0!important;border:0!important;background:transparent!important}
/* 每一行：手柄 24 / 内容 1fr / 操作 auto，统一 40 高 */
html body #main-content [component=book-sort] .sort-list > li > .flex-container-row:not(#_),html body #main-content [component=book-sort] .sort-list li.text-page:not(#_):not(#__){display:flex!important;align-items:center!important;min-height:40px!important;padding:0 4px 0 0!important;border-radius:8px!important}
html body #main-content [component=book-sort] .sort-list > li > .flex-container-row:hover,html body #main-content [component=book-sort] .sort-list li.text-page:hover{background:rgba(10,10,10,.035)!important}
html body #main-content [component=book-sort] .sort-list-handle:not(#_):not(#__){flex:0 0 24px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:40px!important;padding:0!important;color:#c4c4c8!important}
html body #main-content [component=book-sort] .sort-list-handle svg{width:14px!important;height:14px!important;margin:0!important;top:0!important}
html body #main-content [component=book-sort] .sort-list .entity-list-item:not(#_):not(#__){flex:1 1 auto!important;min-width:0!important;display:flex!important;align-items:center!important;gap:8px!important;padding:0 8px 0 2px!important;margin:0!important;border:0!important;background:transparent!important;font-size:14px!important;color:#2a2a2a!important}
html body #main-content [component=book-sort] .sort-list .entity-list-item > span:first-child svg{width:16px!important;height:16px!important;margin:0!important;top:0!important}
html body #main-content [component=book-sort] .sort-box-actions:not(#_):not(#__){flex:0 0 auto!important;margin-left:auto!important;padding:0!important;gap:2px!important}
html body #main-content [component=book-sort] .sort-box-actions .icon-button:not(#_):not(#__){display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;padding:0!important;border-radius:6px!important;color:var(--cb-muted)!important}
html body #main-content [component=book-sort] .sort-box-actions .icon-button:hover{background:rgba(10,10,10,.06)!important;color:#1a1a1a!important}
html body #main-content [component=book-sort] .sort-box-actions .icon-button svg{width:15px!important;height:15px!important;margin:0!important;top:0!important}
/* 章节下的页面：缩进 + 左侧细线，不再套框 */
html body #main-content [component=book-sort] ul.sortable-page-sublist:not(#_):not(#__){margin:2px 0 6px 28px!important;padding:0 0 0 6px!important;border:0!important;border-left:1px solid rgba(10,10,10,.08)!important;border-radius:0!important;background:transparent!important;min-height:8px}
/* 头部说明与自动排序 */
html body #main-content [component=book-sort] > .flex-container-row p.text-muted:not(#_){font-size:13px!important;line-height:1.7!important;color:var(--cb-muted)!important}
html body #main-content [component=book-sort] > .flex-container-row label[for=auto-sort]:not(#_){display:block!important;margin:0 0 6px!important;font-size:13px!important;color:#4a4a4a!important}
html body #main-content [component=book-sort] > .flex-container-row p.small:not(#_){margin:8px 0 0!important}
html body #main-content [component=book-sort] > .flex-container-row p.small a.text-button:not(#_):not(#__){padding:0!important;margin:0!important;height:auto!important;background:transparent!important;font-size:13px!important;color:#4a4a4a!important;text-decoration:underline;text-underline-offset:3px}
/* ---------- 2 · 拥有者等用户选择器 ---------- */
html body .dropdown-search[components~=user-select]:not(#_){position:relative!important}
html body #main-content .card:has(.dropdown-search[components~=user-select]):not(#_){overflow:visible!important}
html body .dropdown-search[components~=user-select] .dropdown-search-dropdown:not(#_):not(#__){top:calc(100% + 6px)!important;right:0!important;left:auto!important;margin:0!important;width:max(100%,260px)!important;min-height:0!important;padding:6px!important;border:1px solid rgba(10,10,10,.08)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 12px 32px -8px rgba(10,10,10,.18)!important;z-index:90!important;box-sizing:border-box!important}
html body .dropdown-search[components~=user-select] .dropdown-search-search:not(#_):not(#__){position:relative!important;display:block!important;height:auto!important;margin:0 0 6px!important;padding:0!important;border:0!important;background:transparent!important}
html body .dropdown-search[components~=user-select] .dropdown-search-search > .svg-icon:not(#_):not(#__),html body .dropdown-search[components~=user-select] .dropdown-search-search > svg:not(#_):not(#__){position:absolute!important;left:10px!important;right:auto!important;top:50%!important;transform:translateY(-50%)!important;width:14px!important;height:14px!important;margin:0!important;fill:var(--cb-muted)!important;color:var(--cb-muted)!important;pointer-events:none;z-index:1}
html body .dropdown-search[components~=user-select] .dropdown-search-search input:not(#_):not(#__){display:block!important;width:100%!important;height:34px!important;margin:0!important;padding:0 10px 0 32px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:8px!important;box-shadow:none!important;outline:none!important;background:#fff!important;font-size:14px!important;box-sizing:border-box!important}
html body .dropdown-search[components~=user-select] .dropdown-search-search input:not(#_):not(#__):focus{border-color:rgba(10,10,10,.35)!important;box-shadow:none!important}
html body .dropdown-search[components~=user-select] .dropdown-search-list:not(#_){max-height:280px!important;overflow-y:auto!important;margin:0!important;padding:0!important}
html body .dropdown-search[components~=user-select] .dropdown-search-item:not(#_):not(#__){display:flex!important;align-items:center!important;gap:10px!important;min-height:36px!important;padding:6px 10px!important;border-radius:6px!important;font-size:14px!important;color:#2a2a2a!important;text-decoration:none!important}
html body .dropdown-search[components~=user-select] .dropdown-search-item:hover,html body .dropdown-search[components~=user-select] .dropdown-search-item:focus{background:rgba(10,10,10,.05)!important;outline:none!important}
html body .dropdown-search[components~=user-select] .dropdown-search-item .avatar:not(#_){width:22px!important;height:22px!important;margin:0!important;border-radius:50%!important}
html body .dropdown-search[components~=user-select] .dropdown-search-item:first-child span:not(#_){color:var(--cb-muted)!important}
/* ---------- 3 · 通知条（收藏 / 关注 / 保存等） ---------- */
html body .notification:not(#_):not(#__){top:16px!important;right:16px!important;margin:0!important;padding:12px 12px 12px 14px!important;grid-template-columns:18px minmax(0,1fr) 24px!important;column-gap:10px!important;align-items:center!important;min-width:260px;max-width:380px!important;background:#fff!important;border:1px solid rgba(10,10,10,.08)!important;border-inline-start:1px solid rgba(10,10,10,.08)!important;border-radius:12px!important;box-shadow:0 12px 32px -12px rgba(10,10,10,.28)!important;font-size:14px!important}
html body .notification:not(#_):not(#__) > svg{width:18px!important;height:18px!important;padding:0!important;margin:0!important;top:0!important}
html body .notification:not(#_):not(#__) > span{color:#1a1a1a!important;line-height:1.5!important;font-size:14px!important}
html body .notification .dismiss:not(#_):not(#__){display:flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:24px!important;margin:0!important;border-radius:6px!important}
html body .notification .dismiss:hover{background:rgba(10,10,10,.06)!important}
html body .notification .dismiss svg:not(#_){width:14px!important;height:14px!important;padding:0!important;margin:0!important;color:var(--cb-muted)!important;fill:currentColor!important}
html body .notification.pos:not(#_) > svg{color:#16a34a!important;fill:#16a34a!important}
html body .notification.neg:not(#_) > svg{color:#dc2626!important;fill:#dc2626!important}
html body .notification.warning:not(#_) > svg{color:#d97706!important;fill:#d97706!important}
/* ---------- dark ---------- */
html.dark-mode body #main-content [component=book-sort] details.sort-box:not(#_):not(#__){background:transparent!important;border-color:rgba(255,255,255,.1)!important}
html.dark-mode body #main-content [component=book-sort] :is(.sort-box-options,ul.sortable-page-sublist):not(#_):not(#__){border-color:rgba(255,255,255,.08)!important}
html.dark-mode body #main-content [component=book-sort] .sort-list .entity-list-item:not(#_):not(#__),html.dark-mode body #main-content [component=book-sort] details.sort-box > summary h5:not(#_){color:#e4e4e7!important}
html.dark-mode body #main-content [component=book-sort] .sort-list > li > .flex-container-row:hover,html.dark-mode body #main-content [component=book-sort] .sort-list li.text-page:hover{background:rgba(255,255,255,.05)!important}
html.dark-mode body .dropdown-search[components~=user-select] .dropdown-search-dropdown:not(#_):not(#__){background:#1c1c1c!important;border-color:rgba(255,255,255,.1)!important;box-shadow:0 12px 32px rgba(0,0,0,.45)!important}
html.dark-mode body .dropdown-search[components~=user-select] .dropdown-search-search input:not(#_):not(#__){background:transparent!important;border-color:rgba(255,255,255,.14)!important;color:#e4e4e7!important}
html.dark-mode body .dropdown-search[components~=user-select] .dropdown-search-item:not(#_):not(#__){color:#e4e4e7!important}
html.dark-mode body .dropdown-search[components~=user-select] .dropdown-search-item:hover{background:rgba(255,255,255,.06)!important}
html.dark-mode body .notification:not(#_):not(#__){background:#1c1c1c!important;border-color:rgba(255,255,255,.1)!important;box-shadow:0 12px 32px rgba(0,0,0,.5)!important}
html.dark-mode body .notification:not(#_):not(#__) > span{color:#e4e4e7!important}
/* ==== tabler157: 选择项目弹窗结构 / 空状态 / 排序页与选择器图标去底色 ==== */
/* 1 · 弹窗：固定高度，标题-搜索-列表-底栏 四段，列表吃满剩余空间 */
html body #entity-selector-wrap .popup-body:not(#_):not(#__){display:flex!important;flex-direction:column!important;height:min(600px,calc(100vh - 48px))!important;max-height:calc(100vh - 48px)!important;overflow:hidden!important}
html body #entity-selector-wrap .popup-body > .popup-header:not(#_):not(#__),html body #entity-selector-wrap .popup-body > .popup-footer:not(#_):not(#__){flex:0 0 auto!important}
html body #main-content [component=book-sort] .sort-list li.text-chapter > .flex-container-row .entity-list-item > span:first-child:not(#_){color:#4a4a4a!important}
html body #main-content [component=book-sort] .sort-list li.text-page .entity-list-item > span:first-child:not(#_){color:var(--cb-muted)!important}
html body #main-content [components~="add-remove-rows"] > button.text-button:not(#_):not(#__){display:inline-flex!important;align-items:center!important;height:32px!important;margin:4px 0 0!important;padding:0!important;border:0!important;background:transparent!important;font-size:14px!important;font-weight:500!important;color:#1a1a1a!important}
html body #main-content [components~="add-remove-rows"] > button.text-button:not(#_):not(#__):hover{color:#4a4a4a!important;text-decoration:underline!important;text-underline-offset:3px}
/* 4. settings sidebar: headings, links and version block share one left edge */
html body #main-content > .container .grid.right-focus > div:first-child > h5:not(#_):not(#__):not(#___){margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;padding-inline:0!important;font-size:13px!important;font-weight:500!important;color:var(--cb-muted)!important;letter-spacing:.02em}
html body #main-content > .container .grid.right-focus > div:first-child > nav.active-link-list.in-sidebar:not(#_):not(#__){max-width:260px!important;margin:0 0 0 -10px!important;padding:0!important}
html body #main-content > .container .grid.right-focus > div:first-child > nav.active-link-list.in-sidebar > a:not(#_):not(#__){padding:7px 10px!important;margin:0!important}
html body #main-content > .container .grid.right-focus > div:first-child > .py-xs:not(#_):not(#__){margin:0!important;padding:4px 0 0!important;padding-inline:0!important;font-size:14px!important;line-height:1.8!important}
html.dark-mode body #main-content [components~="add-remove-rows"] > button.text-button:not(#_):not(#__){color:#e4e4e7!important}
html body [components~="add-remove-rows"] > [component="sortable-list"]:not(#_):not(#__){margin:12px 0 0!important;padding:0!important}
html body [components~="add-remove-rows"] > button.text-button:not(#_):not(#__):not(#___){display:inline-flex!important;align-items:center!important;height:32px!important;margin:4px 0 0!important;padding:0!important;border:0!important;background:transparent!important;font-size:14px!important;font-weight:500!important;color:#1a1a1a!important}
html body [components~="add-remove-rows"] > button.text-button:not(#_):not(#__):not(#___):hover{color:#4a4a4a!important;text-decoration:underline!important;text-underline-offset:3px}
html.dark-mode body [components~="add-remove-rows"] > button.text-button:not(#_):not(#__):not(#___){color:#e4e4e7!important}
/* 2. list toolbar: pagination left, sort flush right, same height */
html body #main-content .card.content-wrap > .flex-container-row.justify-space-between > .flex-none:has(> .list-sort-container):not(#_):not(#__){display:flex!important;justify-content:flex-end!important;flex:0 0 auto!important;min-width:0!important;margin-left:auto!important;padding-right:0!important;padding-left:0!important}
html body #main-content .card.content-wrap .list-sort-container:not(#_):not(#__){display:inline-flex!important;align-items:center!important;gap:8px!important;margin:0!important;margin-left:auto!important}
html body #main-content .card.content-wrap .list-sort-container .list-sort:not(#_):not(#__){display:inline-flex!important;align-items:stretch!important;height:34px!important;box-sizing:border-box!important}
html body #main-content .card.content-wrap .list-sort-container :is(.list-sort-toggle,.list-sort-dir):not(#_):not(#__){height:100%!important;display:inline-flex!important;align-items:center!important}
html body #main-content .card.content-wrap .list-sort-container .list-sort-label:not(#_):not(#__){margin:0!important;font-size:13px!important;color:var(--cb-muted)!important}
/* 3. audit columns: header and rows use same 2:3 ratio inside the IP/date group */
html body #main-content .item-list > .item-list-row > .flex-container-row.flex-3 > div:first-child:not(#_):not(#__){flex:2 1 0!important;min-width:0!important}
html body #main-content .item-list > .item-list-row > .flex-container-row.flex-3 > div:last-child:not(#_):not(#__){flex:3 1 0!important;min-width:0!important;text-align:right!important;font-variant-numeric:tabular-nums}
html body #main-content .item-list > .item-list-row:not(#_):not(#__){align-items:center!important}
/* 4. entity icon links in list rows: gap + vertical centering */
html body #main-content .item-list-row a.icon-list-item:not(#_):not(#__),html body #main-content .item-list-row a:has(> .icon):not(#_):not(#__){display:inline-flex!important;align-items:center!important;gap:6px!important;min-width:0!important;max-width:100%!important;line-height:1.4!important}
html body #main-content .item-list-row a:is(.icon-list-item,:has(> .icon)) > :is(.icon,span:first-child:has(svg)):not(#_):not(#__){display:inline-flex!important;flex:0 0 16px!important;width:16px!important;height:16px!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;background:transparent!important;color:var(--cb-muted)!important}
html body #main-content .item-list-row a:is(.icon-list-item,:has(> .icon)) svg:not(#_):not(#__){width:15px!important;height:15px!important;margin:0!important;top:0!important;fill:currentColor!important}
html body #main-content .item-list-row a:is(.icon-list-item,:has(> .icon)) > span:last-child:not(#_){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html.dark-mode body #main-content .item-list-row a:is(.icon-list-item,:has(> .icon)) > .icon:not(#_):not(#__){color:#737373!important}
/* 2. icon + name pairs inside list rows (recycle bin item / parent, etc.) */
html body #main-content .item-list-row .flex-container-row.items-center:has(> .icon):not(#_):not(#__){gap:6px!important;min-width:0!important}
html body #main-content .item-list-row .flex-container-row.items-center > .icon:not(#_):not(#__){display:inline-flex!important;flex:0 0 16px!important;width:16px!important;height:16px!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;background:transparent!important;color:var(--cb-muted)!important}
html body #main-content .item-list-row .flex-container-row.items-center > .icon svg:not(#_):not(#__){width:15px!important;height:15px!important;margin:0!important;top:0!important;fill:currentColor!important}
html body #main-content .item-list-row .flex-container-row.items-center:has(> .icon) > div:not(#_){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body #main-content .item-list-row .pl-l.block.inline :is(.text-chapter,.text-page):not(#_){display:inline-flex;align-items:center;gap:4px;font-size:13px!important;color:var(--cb-muted)!important}
html body #main-content .item-list-row .pl-l.block.inline svg:not(#_){width:13px!important;height:13px!important;margin:0!important;top:0!important}
/* 3. users list: tighter avatar */
html body #main-content .item-list-row > .flex-container-row.gap-l:has(> img.avatar):not(#_):not(#__){gap:12px!important}
html body #main-content .item-list-row img.avatar.med:not(#_):not(#__){width:32px!important;height:32px!important;flex:0 0 32px!important;border-radius:50%!important}
html body #main-content .item-list-row > .flex-container-row:has(> img.avatar) > a:not(#_){line-height:1.45!important;min-width:0}
/* 4. list toolbar search (users / roles / webhooks): consistent box matching sort control height */
html body #main-content .card.content-wrap > .flex-container-row.justify-space-between:has(.list-sort-container):not(#_):not(#__){margin:16px 0 12px!important;gap:12px!important;align-items:center!important}
html body #main-content .card.content-wrap > .flex-container-row.justify-space-between:has(.list-sort-container) form[method=get] input[name=search]:not(#_):not(#__):not(#___){width:260px!important;max-width:100%!important;height:34px!important;margin:0!important;padding:0 10px 0 32px!important;border:1px solid rgba(10,10,10,.12)!important;border-radius:8px!important;box-shadow:none!important;font-size:14px!important;line-height:32px!important;color:#1a1a1a!important;box-sizing:border-box!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 10px center!important}
html body #main-content .card.content-wrap > .flex-container-row.justify-space-between:has(.list-sort-container) form[method=get] input[name=search]:not(#_):not(#__):not(#___):focus{border-color:rgba(10,10,10,.32)!important;box-shadow:0 0 0 3px rgba(10,10,10,.06)!important;outline:none!important}
html body #main-content .card.content-wrap > .flex-container-row.justify-space-between:has(.list-sort-container) > .justify-flex-end:not(#_):not(#__){display:flex!important;justify-content:flex-end!important;margin-left:auto!important}
/* dark */
html.dark-mode body #main-content .card.content-wrap > .flex-container-row.justify-space-between:has(.list-sort-container) form[method=get] input[name=search]:not(#_):not(#__):not(#___){background-color:transparent!important;border-color:rgba(255,255,255,.12)!important;color:#e4e4e7!important}
html.dark-mode body #main-content .item-list-row .flex-container-row.items-center > .icon:not(#_):not(#__){color:#737373!important}
/* tabler163: audit related column readable text (icon-link div) + sort-dir button not clipped */
html body #main-content .item-list-row a.flex-container-row:has(> .icon):not(#_):not(#__){display:inline-flex!important;align-items:center!important;gap:6px!important;min-width:0!important;max-width:100%!important;text-decoration:none!important}
html body #main-content .item-list-row a:has(> .icon) > div:not(#_):not(#__){flex:0 1 auto!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:14px!important;color:#3a3a3a!important;opacity:1!important}
html body #main-content .item-list-row a:has(> .icon):hover > div:not(#_):not(#__){color:#0a0a0a!important;text-decoration:underline!important;text-underline-offset:3px}
:is(html.dark-mode,html.cb-dark) body #main-content .item-list-row a:has(> .icon) > div:not(#_):not(#__){color:#c8c8cd!important}
:is(html.dark-mode,html.cb-dark) body #main-content .item-list-row a:has(> .icon):hover > div:not(#_):not(#__){color:#ffffff!important}
:is(html.dark-mode,html.cb-dark) body #main-content .item-list-row a:has(> .icon) > .icon:not(#_):not(#__):not(#___){color:#a1a1a1!important;opacity:1!important}
:is(html.dark-mode,html.cb-dark) body #main-content .item-list-row > .flex-3 > div:not(#_){color:#c8c8cd}
/* sort direction button: fixed width, centered icon */
html body #main-content .card.content-wrap .list-sort-container .list-sort:not(#_):not(#__):not(#___){flex:0 0 auto!important;max-width:none!important;overflow:hidden}
html body #main-content .card.content-wrap .list-sort-container .list-sort .list-sort-dir:not(#_):not(#__):not(#___){display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 34px!important;width:34px!important;min-width:34px!important;padding:0!important;overflow:visible!important}
html body #main-content .card.content-wrap .list-sort-container .list-sort-dir svg:not(#_):not(#__):not(#___){flex:0 0 16px!important;width:16px!important;height:16px!important;margin:0!important;top:0!important}
/* tabler164: sort dropdown visible, audit table, article source chip, feedback card, hide related docs, tag rows */
/* 1. sort dropdown: undo tabler163 clipping */
html body #main-content .card.content-wrap .list-sort-container .list-sort:not(#_):not(#__):not(#___):not(#____){overflow:visible!important;position:relative}
html body #main-content .card.content-wrap .list-sort-container .list-sort-toggle:not(#_):not(#__):not(#___){border-radius:8px 0 0 8px!important}
html body #main-content .card.content-wrap .list-sort-container .list-sort .list-sort-dir:not(#_):not(#__):not(#___):not(#____){border-radius:0 8px 8px 0!important;overflow:hidden!important}
html body #main-content .card.content-wrap .list-sort-container .dropdown-menu:not(#_):not(#__):not(#___){z-index:60!important;min-width:180px!important;margin-top:4px!important}
/* 4. feedback: compact one-line card, line icons */
html body .cb-fb:not(#_):not(#__){margin:2.5rem 0 1rem!important;padding:12px 12px 12px 18px!important;border:1px solid rgba(10,10,10,.07)!important;border-radius:12px!important;background:#fafafa!important}
html body .cb-fb .cb-fb-ask:not(#_):not(#__){display:flex!important;flex-wrap:wrap;align-items:center!important;justify-content:space-between!important;gap:12px!important}
html body .cb-fb .cb-fb-q:not(#_):not(#__){margin:0!important;font-size:14px!important;font-weight:500!important;color:#3a3a3a!important}
html body .cb-fb .cb-fb-btn:not(#_):not(#__){display:inline-flex!important;align-items:center!important;gap:6px!important;height:32px!important;padding:0 12px!important;margin:0 0 0 6px!important;border:1px solid rgba(10,10,10,.12)!important;border-radius:8px!important;background:#ffffff!important;color:#3a3a3a!important;font-size:13px!important;font-weight:500!important;line-height:1!important;box-shadow:none!important;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
html body .cb-fb .cb-fb-btn > span[aria-hidden]:not(#_):not(#__){display:none!important}
html body .cb-fb .cb-fb-btn::before{content:'';background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 11v8a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-7a1 1 0 0 1 1-1h3a4 4 0 0 0 4-4V6a2 2 0 0 1 4 0v5h3a2 2 0 0 1 2 2l-1 5a2 3 0 0 1-2 2h-7a3 3 0 0 1-3-3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 11v8a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-7a1 1 0 0 1 1-1h3a4 4 0 0 0 4-4V6a2 2 0 0 1 4 0v5h3a2 2 0 0 1 2 2l-1 5a2 3 0 0 1-2 2h-7a3 3 0 0 1-3-3'/%3E%3C/svg%3E") center/contain no-repeat}
html body .cb-fb .cb-fb-btn[data-cb-fb-vote='0']::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 13V5a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h3a4 4 0 0 1 4 4v1a2 2 0 0 0 4 0v-5h3a2 2 0 0 0 2-2l-1-5a2 3 0 0 0-2-2h-7a3 3 0 0 0-3 3'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 13V5a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h3a4 4 0 0 1 4 4v1a2 2 0 0 0 4 0v-5h3a2 2 0 0 0 2-2l-1-5a2 3 0 0 0-2-2h-7a3 3 0 0 0-3 3'/%3E%3C/svg%3E")}
html body .cb-fb .cb-fb-btn:hover:not(#_):not(#__){background:var(--cb-fill)!important;border-color:rgba(10,10,10,.2)!important;color:#1a1a1a!important}
html body .cb-fb .cb-fb-btn[aria-pressed='true']:not(#_):not(#__){background:#1a1a1a!important;border-color:#1a1a1a!important;color:#ffffff!important}
html body .cb-fb .cb-fb-more:not(#_){margin-top:12px!important;padding-top:12px!important;border-top:1px solid rgba(10,10,10,.07)!important}
html body .cb-fb .cb-fb-chip:not(#_){border-radius:999px!important}
html body .cb-fb .cb-fb-done:not(#_){margin:0!important;font-weight:500;color:#3a3a3a}
html:is(.dark-mode,.cb-dark) body .cb-fb:not(#_):not(#__){background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.08)!important}
html:is(.dark-mode,.cb-dark) body .cb-fb :is(.cb-fb-q,.cb-fb-done):not(#_):not(#__){color:#c8c8cd!important}
html:is(.dark-mode,.cb-dark) body .cb-fb .cb-fb-btn:not(#_):not(#__){background:transparent!important;border-color:rgba(255,255,255,.14)!important;color:#c8c8cd!important}
html:is(.dark-mode,.cb-dark) body .cb-fb .cb-fb-btn:hover:not(#_):not(#__){background:rgba(255,255,255,.08)!important;color:#ffffff!important}
html:is(.dark-mode,.cb-dark) body .cb-fb .cb-fb-btn[aria-pressed='true']:not(#_):not(#__){background:#f4f4f4!important;border-color:#f4f4f4!important;color:#1c1c1c!important}
html:is(.dark-mode,.cb-dark) body .cb-fb .cb-fb-more:not(#_){border-top-color:rgba(255,255,255,.08)!important}
/* 5. related docs: all same-chapter today, duplicates TOC + prev/next -> hidden by default (delete this rule to restore) */
html body :is(.cb-related,[aria-labelledby='cb-related-h'],.cb-related-h,ul:has(> li > .cb-related-link),ol:has(> li > .cb-related-link),section:has(> .cb-related-h),aside:has(> .cb-related-h),nav:has(> .cb-related-h)):not(#_):not(#__){display:none!important}
html body #main-content .card.content-wrap .item-list-row label.bold:not(#_):not(#__){font-size:14px!important;font-weight:500!important;color:#2a2a2a}
html body #main-content .card.content-wrap .item-list-row input.shortcut-input:not(#_):not(#__){width:128px!important;height:30px!important;padding:0 8px!important;border:1px solid rgba(10,10,10,.12)!important;border-radius:6px!important;background:#fafafa!important;font:12.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;text-align:center!important;box-shadow:none!important}
html body #main-content .card.content-wrap .item-list-row .small.text-muted.italic:not(#_){font-style:normal!important;font-size:12px!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
html body #main-content .card.content-wrap .flex-container-row.wrap.gap-m > .item-list.flex:not(#_):not(#__):not(#___){margin-top:0!important}
html:is(.dark-mode,.cb-dark) body #main-content .card.content-wrap .item-list-row label.bold:not(#_):not(#__){color:#e4e4e7}
html:is(.dark-mode,.cb-dark) body #main-content .card.content-wrap .item-list-row input.shortcut-input:not(#_):not(#__){background:#1a1a1a!important;border-color:rgba(255,255,255,.12)!important;color:#e4e4e7!important}
/* --- 3. 关注（watch）下拉菜单：加留白、分层级、去分隔线 --- */
html body .dropdown-menu:has(> li > button[name=level]):not(#_):not(#__){min-width:300px!important;max-width:min(360px,92vw)!important;padding:6px!important}
html body .dropdown-menu:has(> li > button[name=level]) > li[role=presentation]:not(#_):not(#__){display:none!important}
html body .dropdown-menu:has(> li > button[name=level]) > li + li:not(#_):not(#__){margin-top:2px!important}
html body .dropdown-menu button[name=level].icon-item:not(#_):not(#__):not(#___){display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;align-items:start!important;column-gap:10px!important;width:100%!important;min-height:0!important;padding:10px 12px!important;border-radius:8px!important;text-align:left!important;line-height:1.5!important;white-space:normal!important}
html body .dropdown-menu button[name=level].icon-item > span:first-child:not(#_):not(#__){display:flex!important;align-items:center;justify-content:center;width:18px!important;height:18px!important;margin:2px 0 0!important;padding:0!important}
html body .dropdown-menu button[name=level].icon-item > span:first-child svg:not(#_){width:16px!important;height:16px!important;margin:0!important;top:0!important}
html body .dropdown-menu button[name=level].icon-item .mb-xxs:not(#_):not(#__){margin:0 0 3px!important}
html body .dropdown-menu button[name=level].icon-item strong:not(#_){font-size:14px!important;font-weight:600!important;color:#1a1a1a}
html body .dropdown-menu button[name=level].icon-item .text-small:not(#_):not(#__){font-size:12px!important;line-height:1.6!important;color:#6b6b6b!important}
html body .dropdown-menu:has(> li > button[name=level]) > li:last-child > a:not(#_):not(#__){display:block!important;margin:4px 0 0!important;padding:10px 12px 6px!important;border-top:1px solid rgba(10,10,10,.07)!important;font-size:12px!important;line-height:1.5!important}
html:is(.dark-mode,.cb-dark) body .dropdown-menu button[name=level].icon-item strong:not(#_){color:#f4f4f4}
html:is(.dark-mode,.cb-dark) body .dropdown-menu button[name=level].icon-item .text-small:not(#_):not(#__){color:#a1a1a1!important}
html:is(.dark-mode,.cb-dark) body .dropdown-menu:has(> li > button[name=level]) > li:last-child > a:not(#_):not(#__){border-top-color:rgba(255,255,255,.08)!important}
/* --- 4. 评论区：字号、头像链接（评论图片样式与放大已由挂件 20261029e 自带，主题侧不再写） --- */
html body #comments .pc-cooked{font-size:15px!important;line-height:1.75!important;color:#2a2a2a}
html body #comments .pc-cooked :is(p,li){font-size:inherit!important;line-height:inherit!important}
html body #comments .pc-name{font-size:14px!important;font-weight:600!important}
html body #comments .pc-meta{font-size:13px!important;gap:8px!important;align-items:center!important}
html body #comments .pc-meta time{font-size:13px!important}
html body #comments .pc-reply-btn{font-size:13px!important}
html body #comments .pc-av-link{display:inline-flex!important;flex:0 0 40px!important;align-self:flex-start!important;width:40px!important;height:40px!important;margin:0!important;padding:0!important;border-radius:50%!important;line-height:0!important;outline:none!important;text-decoration:none!important}
html body #comments .pc-av-link:focus-visible{outline:2px solid var(--color-primary,#0a0a0a)!important;outline-offset:2px!important}
html body #comments .pc-av{display:block!important;width:40px!important;height:40px!important;border-radius:50%!important;object-fit:cover}
html body #comments .pc-cooked hr{margin:12px 0!important;border:0!important;border-top:1px solid rgba(10,10,10,.06)!important}
html:is(.dark-mode,.cb-dark) body #comments .pc-cooked{color:#e4e4e7}
/* --- 5. 正文图片灯箱（只管 .page-content；评论图片交给挂件自己的 .pc-lb） --- */
html.cb-lb-lock{overflow:hidden!important}
/* ===== cb-tabler167: 反馈组件还原 tabler165 外观，仅缩小字号与尺寸 ===== */
html body .cb-fb:not(#_):not(#__):not(#___){padding:8px 8px 8px 14px!important}
html body .cb-fb .cb-fb-ask:not(#_):not(#__):not(#___){gap:8px!important}
html body .cb-fb .cb-fb-q:not(#_):not(#__):not(#___){font-size:13px!important}
html body .cb-fb .cb-fb-btn:not(#_):not(#__):not(#___){height:28px!important;padding:0 10px!important;margin:0 0 0 4px!important;gap:4px!important;font-size:13px!important}
html body .cb-fb .cb-fb-btn::before{flex:0 0 14px!important;width:14px!important;height:14px!important}
html body .cb-fb :is(.cb-fb-chip span,textarea,.cb-fb-done,.cb-fb-err):not(#_):not(#__){font-size:13px!important}
/* ===== cb-tabler168: 评论头像列宽/间距修正、内嵌模式隐藏悬浮入口（深色变量块由部署脚本从组件 CSS 生成后追加） ===== */
html body #comments .pc-item{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;column-gap:12px!important;row-gap:6px!important;align-items:start!important;padding:14px 0!important}
html body #comments .pc-body{min-width:0!important}
html body #comments .pc-meta{line-height:1.4!important;margin-bottom:2px!important}
html body #comments .pc-av-link,html body #comments .pc-item > .pc-av{grid-column:1!important;align-self:start!important}
html body:has(#comments .pc-mode-inline) .pc-launcher,html body:has(#comments.is-open) .pc-launcher{display:none!important}
/* cb-tabler168 dark: 站点 cb-dark/dark-mode 时套用组件自带深色配色 */
html:is(.cb-dark,.dark-mode) body .pc-shell{
  --pc-ink: #e4e4e7 !important;
  --pc-muted: #a1a1a1 !important;
  --pc-faint: #737373 !important;
  --pc-line: #2e2e32 !important;
  --pc-paper: #1f1f22 !important;
  --pc-tile: #26262a !important;
  --pc-field: #1c1c1c !important;
  --pc-hover: #2a2a2e !important;
  --pc-focus: #4a4a4a !important;
  --pc-mark: #6b8ef5 !important;
}
html:is(.cb-dark,.dark-mode) body #comments .pc-item{border-bottom-color:rgba(255,255,255,.07)!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-item:last-child{border-bottom:0!important}
/* ===== cb-tabler169: 文末页脚重设计——细线分隔，一行：左「有帮助吗 + 有用/没用」，右「文档托管至 xx 官网」 ===== */
html body .cb-doc-foot:not(#_){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;margin:2.75rem 0 1rem;padding:14px 0 0;border-top:1px solid rgba(10,10,10,.08)}
/* 反馈：去卡片，变成一行轻量控件 */
html body .cb-doc-foot > .cb-fb:not(#_):not(#__):not(#___){order:1;flex:1 1 auto;min-width:0;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:13px!important}
html body .cb-doc-foot .cb-fb .cb-fb-ask:not(#_):not(#__):not(#___){display:flex!important;flex-wrap:wrap;align-items:center!important;justify-content:flex-start!important;gap:10px!important}
html body .cb-doc-foot .cb-fb .cb-fb-q:not(#_):not(#__):not(#___){font-size:13px!important;font-weight:400!important;color:var(--cb-muted)!important}
html body .cb-doc-foot .cb-fb .cb-fb-btns:not(#_):not(#__):not(#___){display:inline-flex!important;gap:6px!important}
html body .cb-doc-foot .cb-fb .cb-fb-btn:not(#_):not(#__):not(#___){height:26px!important;margin:0!important;padding:0 9px!important;gap:4px!important;border:1px solid rgba(10,10,10,.1)!important;border-radius:6px!important;background:transparent!important;color:#4a4a4a!important;font-size:13px!important;font-weight:400!important;box-shadow:none!important}
html body .cb-doc-foot .cb-fb .cb-fb-btn::before{flex:0 0 13px!important;width:13px!important;height:13px!important}
html body .cb-doc-foot .cb-fb .cb-fb-btn:hover:not(#_):not(#__):not(#___),html body .cb-doc-foot .cb-fb .cb-fb-btn:focus-visible:not(#_):not(#__):not(#___){background:var(--cb-fill)!important;border-color:rgba(10,10,10,.18)!important;color:#1a1a1a!important}
html body .cb-doc-foot .cb-fb .cb-fb-btn[aria-pressed='true']:not(#_):not(#__):not(#___){background:#1a1a1a!important;border-color:#1a1a1a!important;color:#fff!important}
html body .cb-doc-foot .cb-fb .cb-fb-done:not(#_):not(#__):not(#___){margin:0!important;font-size:13px!important;color:var(--cb-muted)!important}
html body .cb-doc-foot .cb-fb .cb-fb-err:not(#_):not(#__){margin:6px 0 0!important;font-size:13px!important}
/* 点「没用」后：原因面板占满整行，来源链接换到下一行 */
html body .cb-doc-foot:has(.cb-fb-more:not([hidden])) > .cb-fb:not(#_):not(#__):not(#___){flex-basis:100%}
html body .cb-doc-foot .cb-fb .cb-fb-more:not([hidden]):not(#_):not(#__){display:grid!important;gap:10px!important;margin-top:4px!important;padding:12px 14px!important;border:1px solid rgba(10,10,10,.08)!important;border-radius:10px!important;background:#fafafa!important}
html body .cb-doc-foot .cb-fb .cb-fb-more .cb-fb-q:not(#_):not(#__):not(#___){color:#3a3a3a!important}
html body .cb-doc-foot .cb-fb .cb-fb-chip span:not(#_):not(#__){padding:3px 10px!important;border-radius:6px!important;font-size:13px!important}
html body .cb-doc-foot .cb-fb .cb-fb-more textarea:not(#_):not(#__){font-size:13px!important;border-radius:8px!important}
html body .cb-doc-foot .cb-fb .cb-fb-actions .button:not(#_):not(#__){height:30px!important;padding:0 14px!important;font-size:13px!important}
html body .cb-doc-foot .cb-fb .cb-fb-actions .text-button:not(#_):not(#__){font-size:13px!important}
/* 来源：去胶囊，变成右侧灰色小字链接 */
html body .cb-doc-foot > .cb-brand-link:not(#_):not(#__):not(#___){order:2;flex:0 0 auto;display:inline-flex!important;align-items:center;gap:4px;margin:0!important;padding:0!important;font-size:13px!important;line-height:1.5!important}
html body .cb-doc-foot .cb-brand-link .cb-brand-k:not(#_):not(#__){font-size:13px!important;color:var(--cb-muted)!important;margin:0!important}
html body .cb-doc-foot .cb-brand-link a:not(#_):not(#__):not(#___){display:inline-flex!important;align-items:center!important;gap:4px!important;height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#4a4a4a!important;font-size:13px!important;text-decoration:none!important;box-shadow:none!important}
html body .cb-doc-foot .cb-brand-link a::before{display:none!important}
html body .cb-doc-foot .cb-brand-link a::after{flex:0 0 11px!important;width:11px!important;height:11px!important}
html body .cb-doc-foot .cb-brand-link a:hover:not(#_):not(#__):not(#___){color:#1a1a1a!important;text-decoration:underline!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
/* 深色 */
html:is(.dark-mode,.cb-dark) body .cb-doc-foot:not(#_){border-top-color:rgba(255,255,255,.08)}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb :is(.cb-fb-q,.cb-fb-done):not(#_):not(#__):not(#___){color:#a1a1a1!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb .cb-fb-btn:not(#_):not(#__):not(#___){border-color:rgba(255,255,255,.12)!important;color:#c8c8cd!important;background:transparent!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb .cb-fb-btn:hover:not(#_):not(#__):not(#___),html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb .cb-fb-btn:focus-visible:not(#_):not(#__):not(#___){background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.2)!important;color:#fff!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb .cb-fb-btn[aria-pressed='true']:not(#_):not(#__):not(#___){background:#f4f4f4!important;border-color:#f4f4f4!important;color:#1c1c1c!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb .cb-fb-more:not([hidden]):not(#_):not(#__){background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.08)!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-fb .cb-fb-more .cb-fb-q:not(#_):not(#__):not(#___){color:#c8c8cd!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-brand-link .cb-brand-k:not(#_):not(#__){color:#737373!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-brand-link a:not(#_):not(#__):not(#___){color:#a1a1a1!important;background:transparent!important}
html:is(.dark-mode,.cb-dark) body .cb-doc-foot .cb-brand-link a:hover:not(#_):not(#__):not(#___){color:#f4f4f4!important}
/* 窄屏：上下排 */
@media (max-width:640px){html body .cb-doc-foot:not(#_){flex-direction:column;align-items:flex-start;gap:12px}}
@media print{html body .cb-doc-foot{display:none!important}}
html body .cb-doc-foot:not(:has(*)){display:none!important}
/* ===== cb-tabler170: 评论区深色模式补全（压过 cocobook-discuss.css 写死的浅色）+ 隐藏悬浮入口 ===== */
html body:has(#comments) .pc-launcher{display:none!important}
html:is(.cb-dark,.dark-mode) body #comments :is(.pc-form,.pc-list,.pc-thread,.pc-panel-body,.pc-panel-head,.pc-actions){border-color:#2e2e32!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form{border-top-color:rgba(255,255,255,.08)!important}
html:is(.cb-dark,.dark-mode) body #comments hr{border-color:rgba(255,255,255,.08)!important;background:rgba(255,255,255,.08)!important}
html:is(.cb-dark,.dark-mode) body #comments :is(.pc-session,.pc-session-login,.pc-session-guest){background:#26262a!important;border:1px solid #2e2e32!important;color:#c8c8cd!important}
/* innerbox A（Feng 18:23 经 Designer）：深色登录提示只留外框（.pc-session-guest），里层 p.pc-session-login 去底色和边线。
   上一行把外层和里层都加了框，这条（优先级 1,3,2 > 1,2,2）只撤里层；浅色本来就只有外框。来源 /workspace/cb-innerbox/登录框-A-保留外框.css 原样。 */
html:is(.cb-dark,.dark-mode) body #comments .pc-session-guest .pc-session-login{background:transparent!important;border:0!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-session :is(span,strong,p){color:#c8c8cd!important}
/* dark5-1 登录链接 A + dark5-2 头像边 A（Feng 18:32 经 Designer），原样取自 /workspace/cb-innerbox/round2/。
   原来这里（现网 L7240）是 `.pc-session a{color:#8fb0ff!important}`，一直被 L4691 的 #93c5fd 盖住没生效，已删。 */
/* 登录链接 A：浅灰白字 #e4e4e4 + 35% 淡下划线，对应浅色的墨色链接（浅色的下划线是 1px 底边，这里只改颜色）。仅深色。 */
html:is(.cb-dark,.dark-mode) body #comments .pc-session-guest .pc-session-login a{color:#e4e4e4!important;border-bottom-color:rgba(228,228,228,.35)!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-session-guest .pc-session-login a:hover{color:#f4f4f4!important;border-bottom-color:currentColor!important}
/* 头像边 A：边线改成深色中性 #2e2e2e。仅深色。 */
html:is(.cb-dark,.dark-mode) body #comments .pc-session-guest .pc-avatar-preview{border-color:#2e2e2e!important}
/* replybar 乙（Designer 16:49）：原 4 条深色 .pc-reply-ctx/.pc-reply-cancel !important 覆盖已删，改用文末 --pc-reply-* 变量（挂件 20261029g 起读取）。 */
html:is(.cb-dark,.dark-mode) body #comments .pc-form :is(label,.pc-label-text){color:#a1a1a1!important}
html:is(.cb-dark,.dark-mode) body #comments :is(.pc-hint,.pc-identity-hint,.pc-count,.pc-opt-hint,.pc-field-hint,.pc-muted,.pc-faint){color:#8b8b93!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form :is(input:not([type=hidden]),textarea){background:#1c1c1c!important;border:1px solid #2e2e32!important;color:#e4e4e7!important;box-shadow:none!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form :is(input,textarea):focus{border-color:#4a4a4a!important;box-shadow:0 0 0 3px rgba(255,255,255,.06)!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form :is(input,textarea)::placeholder{color:#737373!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form button[type=submit]{background:#e4e4e7!important;color:#1c1c1c!important;border:0!important;box-shadow:none!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form button[type=submit]:hover:not(:disabled){background:#fff!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-form button[type=submit]:disabled{background:#3a3a3a!important;color:#a1a1a1!important}
html:is(.cb-dark,.dark-mode) body #comments.cb-discuss{border-color:rgba(255,255,255,.08)!important}
html:is(.cb-dark,.dark-mode) body #comments .cb-discuss__src a{text-decoration-color:rgba(255,255,255,.25)!important}
html:is(.cb-dark,.dark-mode) body #comments .wpcy-pc-discuss__btn{background:#e4e4e7!important;color:#1c1c1c!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-reply-btn{color:#8b8b93!important}
html:is(.cb-dark,.dark-mode) body #comments .pc-reply-btn:hover{color:#e4e4e7!important}
/* ===== cb-tabler171: 选区工具条右侧 编辑/评论 按钮对齐 + 深色 ===== */
html body .pointer[class] > div:not([refs]){display:flex!important;align-items:center!important;gap:2px!important;flex:none!important;margin:0!important;padding:0!important}
html body .pointer[class] > div:not([refs]) > :is(a,button).button{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:none!important;width:30px!important;min-width:30px!important;height:30px!important;margin:0!important;padding:0!important;border:0!important;border-radius:var(--cb-radius-sm,6px)!important;background:transparent!important;box-shadow:none!important;color:#525252!important;line-height:1!important}
html body .pointer[class] > div:not([refs]) > :is(a,button).button:hover{background:var(--cb-hover,rgba(10,10,10,.06))!important;color:#0a0a0a!important}
html body .pointer[class] > div:not([refs]) > :is(a,button).button svg{width:15px!important;height:15px!important;margin:0!important;top:0!important;fill:currentColor!important}
html body .pointer[class] > div:not([refs]):not(:empty){padding-left:6px!important;border-left:1px solid rgba(10,10,10,.08)!important}
html body .pointer[class] > div:empty{display:none!important}
html.cb-dark body .pointer[class] > div:not([refs]) > :is(a,button).button{background:transparent!important;color:#a3a3a3!important}
html.cb-dark body .pointer[class] > div:not([refs]) > :is(a,button).button:hover{background:rgba(255,255,255,.08)!important;color:#fafafa!important}
html.cb-dark body .pointer[class] > div:not([refs]):not(:empty){border-left-color:rgba(255,255,255,.1)!important}
/* ===== cb-tabler172: 评论数量徽标 ===== */
html body #comments .wpcy-pc-discuss__gate .cb-discuss__count{display:inline-flex!important;align-items:center!important;height:24px!important;padding:0 9px!important;margin-right:8px!important;border-radius:999px!important;background:rgba(10,10,10,.05)!important;color:#525252!important;font-size:13px!important;font-weight:500!important;white-space:nowrap!important;line-height:1!important}
html body #comments .pc-panel-head .cb-head-count{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:20px!important;height:18px!important;padding:0 6px!important;margin-left:6px!important;border-radius:999px!important;background:rgba(10,10,10,.06)!important;color:#525252!important;font-size:12px!important;font-weight:500!important;vertical-align:1px!important;line-height:1!important}
html:is(.cb-dark,.dark-mode) body #comments :is(.cb-discuss__count,.cb-head-count){background:rgba(255,255,255,.08)!important;color:#c4c4c8!important}
/* ===== cb-tabler173: 标签行统一网格（含最后一行）+ 书架编辑列表深色可读性 ===== */
html body #main-content [component=shelf-sort] .scroll-box-item:not(#_){opacity:1!important;color:#1a1a1a!important}
html body #main-content [component=shelf-sort] .scroll-box-item > .text-book:not(#_){color:#1a1a1a!important;opacity:1!important}
html body #main-content [component=shelf-sort] .scroll-box-item > .text-book svg:not(#_){color:var(--color-book,#077b70)!important;fill:currentColor!important}
html.cb-dark body #main-content [component=shelf-sort] .scroll-box-item:not(#_){color:#e4e4e7!important;border-color:rgba(255,255,255,.06)!important}
html.cb-dark body #main-content [component=shelf-sort] .scroll-box-item > .text-book:not(#_){color:#e4e4e7!important}
html.cb-dark body #main-content [component=shelf-sort] .scroll-box-item > .text-book svg:not(#_){color:#a1a1a1!important}
html.cb-dark body #main-content [component=shelf-sort] .scroll-box-item :is(.handle,.icon-button):not(#_){color:#8b8b93!important;opacity:1!important}
html.cb-dark body #main-content [component=shelf-sort] .scroll-box-item .icon-button:not(#_):hover{color:#fafafa!important;background:rgba(255,255,255,.08)!important}
html.cb-dark body #main-content [component=shelf-sort] .scroll-box-item:not(#_):hover{background:rgba(255,255,255,.04)!important}
html body .cb-ent .cb-toc-chap-head:not(#_){grid-template-columns:32px minmax(0,1fr) auto!important;gap:14px!important;padding:14px!important;border-radius:var(--cb-radius-md,10px)!important;transition:background-color .15s ease}
html body .cb-ent .cb-toc-chap-head:not(#_):hover{background:color-mix(in srgb,var(--cb-acc) 6%,transparent)!important}
html body .cb-ent .cb-toc-chap-ico:not(#_){width:32px!important;height:32px!important;border-radius:8px!important;background:color-mix(in srgb,var(--cb-acc) 12%,#fff)!important;color:var(--cb-acc)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cb-acc) 14%,transparent)}
html body .cb-ent .cb-toc-chap-ico svg:not(#_){width:16px!important;height:16px!important;color:inherit!important}
html body .cb-ent .cb-toc-chap-text:not(#_){gap:2px!important}
html body .cb-ent .cb-toc-chap-kicker:not(#_){font-size:12px!important;font-weight:500!important;letter-spacing:.06em!important;line-height:1.4!important;color:var(--cb-acc)!important}
html body .cb-ent .cb-toc-chap-name:not(#_),html body .cb-ent .cb-toc-chap-head:hover .cb-toc-chap-name:not(#_){font-size:16px!important;font-weight:600!important;line-height:1.45!important;color:#1a1a1a!important}
html body .cb-ent .cb-toc-chap-count:not(#_){padding:2px 10px!important;background:color-mix(in srgb,var(--cb-acc) 9%,var(--cb-fill))!important;color:color-mix(in srgb,var(--cb-acc) 72%,#4a4a4a)!important;font-size:12px!important;font-weight:500!important}
html body .cb-ent .cb-toc-sub:not(#_){margin:0 0 8px!important}
html body .cb-ent .cb-toc-sub:not(#_)::before{left:29.5px!important;top:0!important;bottom:24px!important;width:1px!important;background:color-mix(in srgb,var(--cb-acc) 22%,transparent)!important}
html body .cb-ent .cb-toc-sub .cb-toc-page > a:not(#_){padding:10px 14px 10px 48px!important}
html body .cb-ent .cb-toc-sub .cb-toc-page:not(#_)::after{left:26.5px!important;width:7px!important;height:7px!important;margin-top:-3.5px!important;background:#fff!important;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--cb-acc) 45%,transparent)!important}
html body .cb-ent .cb-toc-sub .cb-toc-page:not(#_):hover::after{background:var(--cb-acc)!important;box-shadow:0 0 0 1.5px var(--cb-acc),0 0 0 4px color-mix(in srgb,var(--cb-acc) 14%,transparent)!important}
html body .cb-ent .cb-toc-sub .cb-toc-page + .cb-toc-page:not(#_)::before{left:48px!important}
html body .cb-ent .cb-toc-sub .cb-toc-num:not(#_){font-size:12px!important;color:color-mix(in srgb,var(--cb-acc) 55%,var(--cb-muted))!important;font-variant-numeric:tabular-nums}
html body .cb-ent .cb-toc-sub .cb-toc-page > a:hover .cb-toc-num:not(#_){color:var(--cb-acc)!important}
html body .cb-ent--chapter .cb-cover--chapter .cb-toc-chap-ico:not(#_){width:44px!important;height:44px!important;border-radius:12px!important;background:rgba(255,255,255,.72)!important;box-shadow:none}
html body .cb-ent--chapter .cb-cover--chapter .cb-toc-chap-ico svg:not(#_){width:22px!important;height:22px!important;color:var(--cb-acc)!important}
/* dark */
html.cb-dark .cb-toc,html.cb-dark .cb-ent .cb-toc{background:#1a1a1d!important;border-color:rgba(255,255,255,.1)!important}
html.cb-dark .cb-toc-page > a,html.cb-dark .cb-toc a{color:#c8c8cd!important}
html.cb-dark .cb-toc-chap-head{color:#ececec!important}
html.cb-dark .cb-ent .cb-toc-title{color:#e4e4e7!important}
html.cb-dark .cb-toc-page > a:hover{background:var(--cb-hover)!important;color:#f4f4f4!important;box-shadow:none!important}
html.cb-dark .cb-ent .cb-toc-page + .cb-toc-page::before{background:rgba(255,255,255,.06)}
html.cb-dark .cb-ent .cb-toc > li + .cb-toc-chapter,html.cb-dark .cb-ent .cb-toc > .cb-toc-chapter + li{border-top-color:rgba(255,255,255,.07)!important}
html.cb-dark body .cb-ent .cb-toc-chap-head:not(#_):hover{background:color-mix(in srgb,var(--cb-acc) 8%,transparent)!important}
html.cb-dark body .cb-ent .cb-toc-chap-ico:not(#_){background:color-mix(in srgb,var(--cb-acc) 16%,transparent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cb-acc) 20%,transparent)}
html.cb-dark body .cb-ent .cb-toc-chap-name:not(#_),html.cb-dark body .cb-ent .cb-toc-chap-head:hover .cb-toc-chap-name:not(#_){color:#f4f4f4!important}
html.cb-dark body .cb-ent .cb-toc-chap-count:not(#_){background:color-mix(in srgb,var(--cb-acc) 12%,transparent)!important;color:color-mix(in srgb,var(--cb-acc) 80%,#a1a1a1)!important}
html.cb-dark body .cb-ent .cb-toc-sub:not(#_)::before{background:color-mix(in srgb,var(--cb-acc) 24%,transparent)!important}
html.cb-dark body .cb-ent .cb-toc-sub .cb-toc-page:not(#_)::after{background:#1c1c1c!important;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--cb-acc) 50%,transparent)!important}
html.cb-dark body .cb-ent .cb-toc-sub .cb-toc-page:not(#_):hover::after{background:var(--cb-acc)!important;box-shadow:0 0 0 1.5px var(--cb-acc),0 0 0 4px color-mix(in srgb,var(--cb-acc) 18%,transparent)!important}
html.cb-dark body .cb-ent .cb-toc-sub .cb-toc-num:not(#_){color:color-mix(in srgb,var(--cb-acc) 60%,#737373)!important}
html.cb-dark body .cb-ent--chapter .cb-cover--chapter .cb-toc-chap-ico:not(#_){background:rgba(0,0,0,.28)!important}
/* /cb-tabler177 */
/* cb-tabler178 book-tree: unified left sidebar book navigation (#book-tree). Faithful rewrite of the layered .book-tree/#book-tree rules; values are the previously winning ones. */
html body #book-tree:not(#_){list-style:none!important;padding:0 2px!important;border-left:0!important;background:transparent!important}
html body #book-tree > h5:not(#_){margin:0 0 10px!important;padding:0!important;text-indent:0!important}
html body #book-tree .sidebar-page-list:not(#_){margin-top:2px!important;margin-left:0!important;padding-left:0!important;border-left:0!important}
html body #book-tree .sidebar-page-list > li:not(#_){margin:0 0 1px!important;padding:0!important;border:0!important;background:transparent!important}
html body #book-tree .sidebar-page-list > li[hidden]:not(#_){display:none!important}
html body #book-tree .sidebar-page-list > li.list-item-chapter:not(#_){position:relative!important;margin:2px 0!important}
html body #book-tree .sidebar-page-list > li.list-item-book + li.list-item-chapter:not(#_){margin-top:0!important}
/* rows: shared base */
html body #book-tree .entity-list-item:not(#_){display:flex!important;align-items:flex-start!important;gap:8px!important;min-height:0!important;margin:0!important;padding:8px 10px!important;border:0!important;border-radius:var(--cb-radius-sm)!important;background:transparent!important;box-shadow:none!important;color:var(--cb-side-text)!important;transition:background-color .15s ease,color .15s ease}
html body #book-tree a.entity-list-item:not(#_):hover,html body #book-tree a.entity-list-item.selected:not(#_){color:var(--cb-ink-near)!important}
html body #book-tree .entity-list-item:focus-visible:not(#_){outline:2px solid rgba(10,10,10,.28)!important;outline-offset:1px!important}
html body #book-tree .entity-list-item > .content:not(#_){padding:0!important}
html body #book-tree .entity-list-item-name:not(#_){margin:0!important}
/* current book card */
html body #book-tree li.list-item-book > a.entity-list-item.book:not(#_){position:relative!important;display:flex!important;align-items:center!important;gap:0!important;width:auto!important;margin:0 0 8px!important;padding:10px 12px 11px 10px!important;border:1px solid rgba(10,10,10,.08)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;outline:none!important;overflow:hidden!important;isolation:isolate;transition:border-color .12s ease,background-color .12s ease}
html body #book-tree li.list-item-book > a.entity-list-item.book:not(#_):hover{border-color:rgba(10,10,10,.16)!important;background:#fff!important}
html body #book-tree li.list-item-book > a.entity-list-item.book > .icon:not(#_),html body #book-tree li.list-item-book > a.entity-list-item.book > .cb-item-meta:not(#_){display:none!important}
html body #book-tree li.list-item-book > a.entity-list-item.book > .content:not(#_){position:relative;z-index:1;flex:1 1 auto;min-width:0;margin-left:0!important;padding:0!important}
html body #book-tree li.list-item-book > a.entity-list-item.book > .content:not(#_)::before{content:'当前书籍';display:block;margin:0 0 3px!important;font-size:11px!important;font-weight:500;line-height:1.5;letter-spacing:.08em!important;color:var(--cb-muted)!important}
html body #book-tree li.list-item-book > a.entity-list-item.book .entity-list-item-name:not(#_){margin:0!important;padding-left:0!important;font-size:14px!important;line-height:1.45!important;color:#0a0a0a!important}
html body #book-tree li.list-item-book > a.entity-list-item.book:not(#_)::after{content:"";position:absolute;right:-10px;bottom:-16px;width:64px;height:64px;background-color:#0a0a0a;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 4v16H7a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z'/%3E%3Cpath d='M19 16H7a2 2 0 0 0-2 2'/%3E%3Cpath d='M9 8h6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 4v16H7a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z'/%3E%3Cpath d='M19 16H7a2 2 0 0 0-2 2'/%3E%3Cpath d='M9 8h6'/%3E%3C/svg%3E") center/contain no-repeat;opacity:.07;transform:rotate(-12deg);transform-origin:70% 70%;pointer-events:none;z-index:0;transition:opacity .25s ease,transform .35s ease}
html body #book-tree li.list-item-book > a.entity-list-item.book:not(#_):hover::after{opacity:.12;transform:rotate(-6deg) translate(-2px,-2px)}
/* chapter row */
html body #book-tree li.list-item-chapter > a.entity-list-item:not(#_){padding:7px 10px!important;border-radius:6px!important;transition:background-color .15s ease}
html body #book-tree li.list-item-chapter:has(.chapter-contents-toggle) > a.entity-list-item:not(#_){padding-right:36px!important}
html body #book-tree li.list-item-chapter > a.entity-list-item.selected:not(#_){background:rgba(10,10,10,.055)!important}
html body #book-tree li.list-item-chapter > a.entity-list-item:not(#_):hover{background:rgba(10,10,10,.04)!important}
html body #book-tree li.list-item-chapter > a.entity-list-item > .icon:not(#_){display:flex!important;flex:0 0 15px!important;width:15px!important;height:20px!important;margin:0!important;align-items:center!important;justify-content:center!important;color:var(--cb-muted)!important}
html body #book-tree li.list-item-chapter > a.entity-list-item > .icon svg:not(#_){display:block!important;width:15px!important;height:15px!important;margin:0!important;top:0!important;fill:currentColor!important}
html body #book-tree li.list-item-chapter > a.entity-list-item:hover > .icon:not(#_){color:#4a4a4a!important}
html body #book-tree li.list-item-chapter:has(.entity-list-item.selected) > a.entity-list-item > .icon:not(#_){color:#1a1a1a!important}
html body #book-tree li.list-item-chapter > a.entity-list-item .entity-list-item-name:not(#_){font-size:13px!important;line-height:20px!important;color:#1a1a1a!important}
html body #book-tree li.list-item-chapter:has(.entity-list-item.selected) > a.entity-list-item .entity-list-item-name:not(#_){color:#0a0a0a!important}
/* chapter: child menu wrapper */
html body #book-tree .entity-list-item.no-hover:not(#_),html body #book-tree .entity-list-item.no-hover:not(#_):hover{display:block!important;padding:0!important;border-radius:0!important;background:transparent!important}
html body #book-tree li.list-item-chapter > .entity-list-item.no-hover:not(#_){position:static!important}
html body #book-tree .entity-list-item.no-hover > .icon:not(#_){display:none!important}
html body #book-tree .entity-list-item.no-hover > .content:not(#_){position:static!important;display:block!important;width:100%!important;margin:0!important;padding:0!important}
html body #book-tree .chapter-child-menu:not(#_){position:static!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
/* chapter: expand toggle (icon-only, right side of the chapter row) */
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle:not(#_){position:absolute!important;top:5px!important;right:4px!important;z-index:1!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;width:24px!important;height:24px!important;margin:0!important;padding:0!important;border:0!important;border-radius:6px!important;background:transparent!important;font-size:12px!important;line-height:18px!important;color:var(--cb-muted)!important;cursor:pointer;transition:background-color .15s ease,color .15s ease}
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle:not(#_):hover{background:rgba(10,10,10,.06)!important;color:#1a1a1a!important}
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle.open:not(#_){color:#4a4a4a!important}
html body #book-tree .chapter-child-menu .chapter-contents-toggle:focus-visible:not(#_){outline:2px solid rgba(10,10,10,.28)!important;outline-offset:1px!important}
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle > span:not(#_){position:absolute!important;display:block!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle svg:not(#_):not(#__){display:none!important}
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle:not(#_):not(#__)::after{content:''!important;display:block!important;box-sizing:content-box!important;width:5px!important;height:5px!important;margin:0!important;border:0!important;border-right:1.5px solid currentColor!important;border-bottom:1.5px solid currentColor!important;background:none!important;transform:translateY(-1.5px) rotate(45deg)!important;transition:transform .15s ease!important}
html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle.open:not(#_):not(#__)::after,html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle[aria-expanded='true']:not(#_):not(#__)::after{transform:translateY(1.5px) rotate(-135deg)!important}
/* chapter: page list */
html body #book-tree .chapter-child-menu ul.chapter-contents-list:not(#_){margin:2px 0 6px 17px!important;padding:0!important;border:0!important;border-left:1px solid rgba(10,10,10,.09)!important;border-radius:0!important;background:transparent!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li:not(#_){margin:0 0 1px!important;padding:0!important;border:0!important;background:transparent!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item:not(#_){position:relative!important;margin:0 0 0 4px!important;padding:6px 10px 6px 11px!important;border-radius:6px!important;transition:background-color .15s ease}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item:not(#_):hover{background:rgba(10,10,10,.04)!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item.selected:not(#_){background:rgba(10,10,10,.055)!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item > .icon:not(#_),html body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item > .icon:not(#_){display:none!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item .entity-list-item-name:not(#_){font-size:13px!important;line-height:19px!important;color:#4a4a4a!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item:hover .entity-list-item-name:not(#_){color:#1a1a1a!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item.selected .entity-list-item-name:not(#_){color:#0a0a0a!important}
html body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item.selected:not(#_)::before{content:''!important;display:block!important;position:absolute!important;left:-5.5px!important;top:7px!important;bottom:7px!important;width:2px!important;height:auto!important;border-radius:2px!important;background:#1a1a1a!important}
/* top-level page row (book without chapter). Note: kept as before, light-mode selected state has no highlight. */
html body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item:not(#_){padding:7px 10px!important;border-radius:6px!important}
html body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item:not(#_):hover{background:rgba(10,10,10,.04)!important}
html body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item .entity-list-item-name:not(#_){font-size:13px!important;line-height:20px!important;color:#3a3a3a!important}
/* "more" toggle injected by cocobook */
html body #book-tree .cb-bn-more:not(#_){margin:2px 0 0!important;padding:0!important;list-style:none}
html body #book-tree .cb-bn-tog:not(#_){margin:0!important;padding:6px 10px!important;border-radius:6px!important;background:transparent!important;font-size:12px!important;color:var(--cb-muted)!important;outline:none!important}
html body #book-tree .cb-bn-tog:not(#_):hover{background:rgba(10,10,10,.04)!important;color:#1a1a1a!important}
html body #book-tree .cb-bn-tog:focus-visible:not(#_){outline:2px solid rgba(10,10,10,.28)!important;outline-offset:1px!important}
/* dark */
html.cb-dark body #book-tree:not(#_){color:#c8c8cd!important}
html.cb-dark body #book-tree .entity-list-item:not(#_),html.cb-dark body #book-tree a.entity-list-item:not(#_):hover{color:#c8c8cd!important}
html.cb-dark body #book-tree a.entity-list-item.selected:not(#_),html.cb-dark body #book-tree a.entity-list-item.book:not(#_),html.cb-dark body #book-tree a.entity-list-item.book:not(#_):hover{color:#f4f4f4!important}
html.cb-dark body #book-tree .entity-list-item:focus-visible:not(#_),html.cb-dark body #book-tree .cb-bn-tog:focus-visible:not(#_),html.cb-dark body #book-tree .chapter-child-menu .chapter-contents-toggle:focus-visible:not(#_){outline-color:var(--cb-focus-ring)!important}
html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book:not(#_),html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book:not(#_):hover{background:#1a1a1d!important;border-color:rgba(255,255,255,.1)!important}
html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book:not(#_):hover{border-color:rgba(255,255,255,.2)!important}
html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book > .content:not(#_)::before{color:#737373!important}
html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book .entity-list-item-name:not(#_){color:#fafafa!important}
html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book:not(#_)::after{background-color:#ffffff;opacity:.06}
html.cb-dark body #book-tree li.list-item-book > a.entity-list-item.book:not(#_):hover::after{opacity:.1}
html.cb-dark body #book-tree li.list-item-chapter > a.entity-list-item.selected:not(#_),html.cb-dark body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item.selected:not(#_){background:rgba(255,255,255,.07)!important}
html.cb-dark body #book-tree li.list-item-chapter > a.entity-list-item:not(#_):hover,html.cb-dark body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item:not(#_):hover,html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item:not(#_):hover,html.cb-dark body #book-tree .cb-bn-tog:not(#_):hover{background:rgba(255,255,255,.05)!important}
html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item.selected:not(#_){background:rgba(255,255,255,.07)!important}
html.cb-dark body #book-tree li.list-item-chapter > a.entity-list-item > .icon:not(#_){color:#737373!important}
html.cb-dark body #book-tree li.list-item-chapter > a.entity-list-item:hover > .icon:not(#_){color:#c8c8cd!important}
html.cb-dark body #book-tree li.list-item-chapter:has(.entity-list-item.selected) > a.entity-list-item > .icon:not(#_){color:#e4e4e7!important}
html.cb-dark body #book-tree li.list-item-chapter > a.entity-list-item .entity-list-item-name:not(#_){color:#ececee!important}
html.cb-dark body #book-tree li.list-item-chapter:has(.entity-list-item.selected) > a.entity-list-item .entity-list-item-name:not(#_){color:#fafafa!important}
html.cb-dark body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle:not(#_){color:#737373!important}
html.cb-dark body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle:not(#_):hover{background:rgba(255,255,255,.08)!important;color:#f4f4f4!important}
html.cb-dark body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle.open:not(#_){color:#a1a1a1!important}
html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list:not(#_){border-left-color:rgba(255,255,255,.1)!important}
html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item .entity-list-item-name:not(#_),html.cb-dark body #book-tree .sidebar-page-list > li.list-item-page > a.entity-list-item .entity-list-item-name:not(#_){color:#a1a1a1!important}
html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item:hover .entity-list-item-name:not(#_){color:#f4f4f4!important}
html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item.selected .entity-list-item-name:not(#_){color:#fafafa!important}
html.cb-dark body #book-tree .chapter-child-menu ul.chapter-contents-list > li > a.entity-list-item.selected:not(#_)::before{background:#f4f4f4!important}
html.cb-dark body #book-tree .cb-bn-tog:not(#_){color:#737373!important}
html.cb-dark body #book-tree .cb-bn-tog:not(#_):hover{color:#f4f4f4!important}
@media (prefers-reduced-motion:reduce){html body #book-tree .entity-list-item:not(#_),html body #book-tree .chapter-contents-toggle:not(#_),html body #book-tree li.list-item-book > a.entity-list-item.book:not(#_)::after{transition:none!important}html body #book-tree li.list-item-chapter .chapter-child-menu .chapter-contents-toggle:not(#_):not(#__)::after{transition:none!important}}
/* /cb-tabler178 */
/* cb-tabler179: Expletus Sans latin + dark readability */
@font-face{font-family:'Expletus Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-wght-normal.woff2) format('woff2-variations'),url(/theme/cocobook/expletus-sans-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Expletus Sans';font-style:italic;font-weight:400 700;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-wght-italic.woff2) format('woff2-variations'),url(/theme/cocobook/expletus-sans-latin-wght-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--cb-font-ui-plain:"wenfeng-albbpht", "PingFang SC", "Hiragino Sans GB",
    "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;--cb-font-ui:"CB Brand UI", "wenfeng-albbpht", "PingFang SC", "Hiragino Sans GB",
    "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;--cb-font-body:"wenfeng-syhtcjk", "PingFang SC", "Hiragino Sans GB",
    "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif}
/* Latin weights: body 400, UI 500, headings 600-700, logo upright 600 */
html body header#header .logo:not(#_),html body header#header .logo .logo-text:not(#_){font-family:var(--cb-font-ui)!important;font-style:normal!important;font-weight:600!important;letter-spacing:.01em}
html.cb-dark body .cb-ent:not(#_){--cb-acc:var(--cb-acc-d,var(--cb-acc-l,#a1a1a1))}
html.cb-dark body .cb-ent .cb-toc-sub .cb-toc-num:not(#_){color:color-mix(in srgb,var(--cb-acc) 30%,#a1a1a1)!important}
html.cb-dark body .cb-ent .cb-toc-sub .cb-toc-page > a:hover .cb-toc-num:not(#_){color:color-mix(in srgb,var(--cb-acc) 35%,#e4e4e7)!important}
html.cb-dark body .cb-ent .cb-toc-chap-count:not(#_){background:color-mix(in srgb,var(--cb-acc) 14%,rgba(255,255,255,.07))!important;color:color-mix(in srgb,var(--cb-acc) 30%,#c8c8cd)!important}
html.cb-dark body .cb-cta-link-text small:not(#_){color:#8e8e8e}
html.cb-dark body .cb-footer :is(.cb-fm-legal,.cb-fo-legal):not(#_):not(#__){color:#8e8e8e!important}
html.cb-dark body .entity-meta:not(#_),html.cb-dark body .entity-meta .entity-meta-item:not(#_){color:#8e8e8e!important}
html.cb-dark body .activity-list .cb-act-meta a.cb-act-user:not(#_){color:#9a9aa0!important}
html.cb-dark body .cb-doc-foot .cb-brand-link .cb-brand-k:not(#_):not(#__):not(#___){color:#8e8e8e!important}
html.cb-dark body #book-tree .cb-bn-tog:not(#_):not(#__){color:#8e8e8e!important}
html.cb-dark body > a[href="#main-content"]:not(#_){background:#1c1c1c!important;color:#f4f4f4!important}
/* lists, search */
html.cb-dark body .cb-disc-list :is(.cb-disc-li-meta,.cb-disc-n,.cb-disc-li-sub):not(#_){color:#8e8e8e!important}
html.cb-dark body .cb-disc-card :is(.cb-disc-en,.cb-disc-meta,.cb-disc-meta span):not(#_){color:#919197!important}
html.cb-dark body .cb-sr .cb-sr-excerpt strong:not(#_){color:#f4f4f4!important}
html.cb-dark body #main-content .form-table td:not(#_){color:#8e8e8e}
/* /cb-tabler179 */
/* cb-tabler180 深色可读性：回收站统计 / 错误页 / 首页提问卡 / 收藏列表 */
/* 1. 维护页回收站统计（p.text-bookshelf/.text-book/.text-chapter/.text-page） */
html.cb-dark body .card :is(p,div):is(.text-bookshelf,.text-book,.text-chapter,.text-page):not(#_){color:#c8c8cd!important}
html.cb-dark body .card :is(p,div):is(.text-bookshelf,.text-book,.text-chapter,.text-page) svg:not(#_){color:#a1a1a1!important;fill:currentColor!important}
/* 2. BookStack 通用错误页（errors/500：card > #main-content.body 嵌套） */
html body .container.small > main.card > #main-content.body:not(#_){background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;min-height:0!important}
html body .container.small > main.card > #main-content.body > h3:not(#_){margin:0 0 8px!important;font-size:20px!important;font-weight:600!important;line-height:1.35!important;color:#0a0a0a!important}
html body .container.small > main.card > #main-content.body > h5:not(#_){margin:0 0 20px!important;padding:0!important;font-size:14px!important;font-weight:400!important;line-height:1.65!important;letter-spacing:0!important;text-transform:none!important;color:#4a4a4a!important}
html.cb-dark body .container.small > main.card > #main-content.body > h3:not(#_){color:#f4f4f4!important}
html.cb-dark body .container.small > main.card > #main-content.body > h5:not(#_){color:#a1a1a1!important}
html.cb-dark body .cb-cta-link .cb-cta-link-text small:not(#_){color:#a1a1a1!important}
/* 4. 收藏列表 /favourites（.book-contents 内条目名 #1f2328） */
html.cb-dark body .book-contents .entity-list-item .entity-list-item-name:not(#_){color:#e4e4e7!important}
html.cb-dark body .book-contents .entity-list-item:hover .entity-list-item-name:not(#_){color:#fafafa!important}
html.cb-dark body .book-contents .entity-list-item .entity-item-snippet p:not(#_){color:#8e8e8e!important}
html.cb-dark body .book-contents .entity-list-item > .icon:not(#_){color:#a1a1a1!important}
html.cb-dark body .book-contents .entity-list-item .cb-item-meta:not(#_){color:#8e8e8e!important}
/* /cb-tabler180 */
/* cb-tabler181 设置 › 定制：深色可读性；深色链接改读后台主颜色 */
/* 1. 颜色选择器标签（BookStack 给 label 加了 .text-dark） */
html.cb-dark body #main-content [component=setting-color-picker] label.text-dark:not(#_){color:#e4e4e7!important}
html.cb-dark body #main-content [component=setting-color-picker] .text-button.text-muted:not(#_){color:#a1a1a1!important}
html.cb-dark body #main-content [component=setting-color-picker] .text-button.text-muted:not(#_):hover{color:#f4f4f4!important}
html.cb-dark body #main-content [component=setting-color-picker] .sep:not(#_){color:#4a4a4a!important;opacity:1}
/* 2. 浅色/深色模式标签页 */
html body #main-content .tab-container > .controls-card > button:not(#_){color:var(--cb-muted)!important}
html body #main-content .tab-container > .controls-card > button[aria-selected=true]:not(#_){color:#0a0a0a!important}
html.cb-dark body #main-content .tab-container > .controls-card > button:not(#_){color:#8e8e8e!important}
html.cb-dark body #main-content .tab-container > .controls-card > button:not(#_):hover{color:#c8c8cd!important}
html.cb-dark body #main-content .tab-container > .controls-card > button[aria-selected=true]:not(#_){color:#f4f4f4!important;border-bottom-color:#f4f4f4!important}
html.cb-dark body #main-content .tab-container > .controls-card > button svg:not(#_){fill:currentColor!important}
/* 3. 面板内分隔线 */
html.cb-dark body #main-content .tab-container .sub-card hr:not(#_){height:1px!important;border:0!important;background:rgba(255,255,255,.08)!important}
/* /cb-tabler181 */
/* cb-tabler182: Expletus Sans only for logo + headings; CJK glyphs follow the active UI/reading stack */
html body header#header .logo:not(#_),html body header#header .logo .logo-text:not(#_){font-family:"Expletus Sans",var(--cb-font-ui)!important}
/* /cb-tabler182 */
/* cb-tabler183: settings customization layout */
html body #main-content .tab-container > .controls-card > button[role=tab]:not(#_):not(#__):not(#___):not(#____){display:inline-flex!important;align-items:center!important;gap:6px!important}
html body #main-content .tab-container > .controls-card > button[role=tab] .svg-icon:not(#_):not(#__):not(#___):not(#____){width:15px!important;height:15px!important;margin:0!important;top:0!important;flex:none}
html body #main-content [component=setting-color-picker]:not(#_):not(#__):not(#___):not(#____){display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;max-width:340px;margin:0 0 20px!important}
html body #main-content [component=setting-color-picker] > div:not(#_):not(#__):not(#___):not(#____){min-width:0;margin:0!important;padding:0!important}
html body #main-content [component=setting-color-picker] > div:last-child:not(#_):not(#__):not(#___):not(#____){flex:none!important;display:flex;align-items:center}
html body #main-content [component=setting-color-picker] label:not(#_):not(#__):not(#___):not(#____){margin:0 0 2px!important;line-height:20px!important}
html body #main-content .tab-container [role=tabpanel] .grid.half > div > [component=setting-color-picker]:last-child:not(#_):not(#__):not(#___):not(#____){margin-bottom:0!important}
html body #main-content .tab-container [role=tabpanel] > .grid.half:not(#_):not(#__):not(#___):not(#____){column-gap:48px!important;row-gap:20px!important;padding-top:16px!important}
html body #main-content .tab-container [role=tabpanel] > hr:not(#_):not(#__):not(#___):not(#____){margin:20px 0!important}
html body #main-content .tab-container > .sub-card > [role=tabpanel]:not(#_):not(#__):not(#___):not(#____){padding:20px!important}
html body #main-content [components~='add-remove-rows'] > button.text-button:not(#_):not(#__):not(#___):not(#____){display:inline-flex!important;align-items:center!important;gap:6px!important;margin-top:4px!important;padding:7px 14px!important;border:1px dashed rgba(10,10,10,.2)!important;border-radius:8px!important;font-size:13px!important;font-weight:500!important;color:#3a3a3a!important;background:transparent!important}
html body #main-content [components~='add-remove-rows'] > button.text-button:not(#_):not(#__):not(#___):not(#____)::before{content:'+';font-size:15px;line-height:1}
html body #main-content [components~='add-remove-rows'] > button.text-button:not(#_):not(#__):not(#___):not(#____):hover{border-color:rgba(10,10,10,.4)!important;background:rgba(10,10,10,.03)!important;color:#0a0a0a!important}
html.cb-dark body #main-content [components~='add-remove-rows'] > button.text-button:not(#_):not(#__):not(#___):not(#____){border-color:rgba(255,255,255,.18)!important;color:#c8c8cd!important}
html.cb-dark body #main-content [components~='add-remove-rows'] > button.text-button:not(#_):not(#__):not(#___):not(#____):hover{border-color:rgba(255,255,255,.36)!important;background:rgba(255,255,255,.04)!important;color:#fafafa!important}
html body #main-content [component=setting-color-picker]:not(#_):not(#__):not(#___):not(#____):not(#_____){flex-direction:row-reverse!important;justify-content:flex-end!important;gap:14px!important;max-width:none!important}
html body #main-content [component=setting-color-picker] label:not(#_):not(#__):not(#___):not(#____):not(#_____){display:block!important;margin:0 0 2px!important}
html body #main-content [component=setting-color-picker] .text-button:not(#_):not(#__):not(#___):not(#____):not(#_____){padding:0!important;margin:0!important;background:transparent!important;box-shadow:none!important;color:var(--cb-muted)!important;font-size:13px!important}
html body #main-content [component=setting-color-picker] .text-button:not(#_):not(#__):not(#___):not(#____):not(#_____):hover,html body #main-content [component=setting-color-picker] .text-button:not(#_):not(#__):not(#___):not(#____):not(#_____):focus-visible{background:transparent!important;color:#0a0a0a!important;text-decoration:underline!important;text-underline-offset:3px}
html body #main-content [component=setting-color-picker] .sep:not(#_):not(#__):not(#___):not(#____):not(#_____){margin:0 6px!important;padding:0!important;opacity:.35!important}
html body #main-content [component=setting-color-picker] > div:first-child:not(#_):not(#__):not(#___):not(#____):not(#_____){display:flex!important;flex-wrap:wrap!important;align-items:center!important;column-gap:0!important}
html body #main-content [component=setting-color-picker] > div:first-child > label:not(#_):not(#__):not(#___):not(#____):not(#_____){flex:0 0 100%!important}
html body #main-content [component=setting-color-picker] > div:first-child > :is(.text-button,.sep):not(#_):not(#__):not(#___):not(#____):not(#_____){min-width:0!important;width:auto!important;flex:none!important;line-height:18px!important}
html.cb-dark body #main-content [component=setting-color-picker] .text-button:not(#_):not(#__):not(#___):not(#____):not(#_____){color:#8e8e8e!important}
html.cb-dark body #main-content [component=setting-color-picker] .text-button:not(#_):not(#__):not(#___):not(#____):not(#_____):hover,html.cb-dark body #main-content [component=setting-color-picker] .text-button:not(#_):not(#__):not(#___):not(#____):not(#_____):focus-visible{color:#fafafa!important}
html body header#header .dropdown-container .dropdown-menu[style*="bottom: initial"]:not([style*="position: fixed"]){top:calc(100% + 8px)!important}
html body header#header .dropdown-menu li:has(form[action*="toggle-dark-mode"]),html body header#header .dropdown-menu li:has(form[action*="toggle-dark-mode"]) + li[role=presentation]{display:none!important}
/* /cb-tabler186 */
/* cb-tabler187: fix v5 */
/* 标题：中文保持 400，英文字母 h1/h2 = 700、h3-h6 = 600。
   做法：元素字重仍是 400（中文字体不加粗、不假粗），英文字母由只含拉丁字符的「Expletus 700/600 静态字体」显示（字体文件本身就是粗体，声明为 400）。 */
@font-face{font-family:'CB Expletus 700';font-style:normal;font-weight:400;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-700-normal-static.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'CB Expletus 700';font-style:italic;font-weight:400;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-700-italic-static.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'CB Expletus 600';font-style:normal;font-weight:400;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-600-normal-static.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'CB Expletus 600';font-style:italic;font-weight:400;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-600-italic-static.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* /cb-tabler187 */
/* cb-tabler188: fix v6 */
/* 依据：2026-10-29 审计 + DS 规范 1793157。编号同审计。 */
/* H5 站点页：中文标题 400；英文字母用只含拉丁字符的静态粗体（文件本身是粗体，声明 400，不会把中文加粗或假粗） */
@font-face{font-family:'CB Body Latin 700';font-style:normal;font-weight:400;font-display:swap;src:url(/theme/cocobook/noto-sans-sc-latin-700-static.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF}
@font-face{font-family:'CB Body Latin 600';font-style:normal;font-weight:400;font-display:swap;src:url(/theme/cocobook/noto-sans-sc-latin-600-static.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF}
@font-face{font-family:'CB UI Latin 700';font-style:normal;font-weight:400;font-display:swap;src:url(/theme/cocobook/albbpht-latin-700-static.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF}
@font-face{font-family:'CB UI Latin 600';font-style:normal;font-weight:400;font-display:swap;src:url(/theme/cocobook/albbpht-latin-500-static.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF}
/* H1 标签页：标签名显示、三列对齐（名字 | 数量 | 不重复值）；系统标签在模板里已不输出 */
html body .cb-tags .cb-tag-row:not(#_):not(#__){display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr) auto;grid-template-areas:"name stats more";align-items:center;column-gap:16px;row-gap:8px}
html body .cb-tags .cb-tag-row-name:not(#_):not(#__){display:block!important;grid-area:name;min-width:0}
html body .cb-tags .cb-tag-row-stats:not(#_):not(#__){grid-area:stats;justify-content:flex-start}
html body .cb-tags .cb-tag-row-more:not(#_):not(#__){grid-area:more;min-width:0;text-align:right;color:var(--cb-muted)!important}
html body .cb-tags :is(.cb-tag-row-name,.cb-filter-bar) .tag-item.tag-item[data-name]:not(#_):not(#__){display:inline-flex!important}
html body .cb-tags .cb-filter-bar:not(#_):not(#__){display:flex!important}
html body .list-sort-label:not(#_):not(#__){white-space:nowrap;flex:none}
/* H3 搜索筛选勾选框：墨色；M17 勾选框加大到 18px，整行可点 */
html body .cb-search-filters input[type=checkbox]:not(#_):not(#__),html body .cb-search-filters input[type=radio]:not(#_):not(#__){accent-color:var(--cb-accent);width:18px;height:18px}
html body .cb-search-filters label.checkbox:not(#_):not(#__){display:inline-flex;align-items:center;gap:6px;min-height:32px;cursor:pointer}
/* H7 焦点：全站一种。颜色只读 --cb-focus-ring 一个变量（现在是墨 F1；Feng 若选 F2 灰，只改文件开头 :root 那一处） */
/* cb-fix190 最终版（Feng 12:23「Tab 黑框选 A：全站链接和按钮」）：2px 墨色焦点框只给链接、按钮等，只在键盘操作时出现；输入框、编辑区不套框，回到边框加深+3px 淡光圈。替换原 L7741，删除原 L7742–L7744 */
html body :is(a,button,summary,[role=button],[tabindex]:not(input,select,textarea,[contenteditable],.text-item)):focus-visible:not(#_):not(#__){outline:2px solid var(--cb-focus-ring)!important;outline-offset:2px!important;box-shadow:none!important}
html body .basic-editor-container .editor-content-area:focus:not(#_):not(#__){outline:none!important}
/* H13 手机菜单 */
@media (max-width:1000px){
  html body header#header:not(#_):not(#__){position:relative}
  html body header#header .mobile-menu-toggle:not(#_):not(#__){display:inline-flex!important;align-items:center!important;justify-content:center!important;width:44px!important;height:44px!important;min-width:44px!important;margin:-12px -12px -12px auto!important;padding:0!important;border:0!important;background:transparent!important}
  html body header#header .header-links.show:not(#_):not(#__){position:absolute!important;top:100%!important;right:12px!important;left:auto!important;bottom:auto!important;z-index:60!important;width:220px!important;max-width:calc(100vw - 24px)!important;height:auto!important;margin:4px 0 0!important;padding:6px!important;border:1px solid rgba(10,10,10,.08)!important;border-radius:var(--cb-radius-md,10px)!important;background:var(--cb-paper,#fff)!important;box-shadow:0 0 10px rgba(10,10,10,.06)!important}
  html body header#header .header-links.show .links:not(#_):not(#__){display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:stretch!important;gap:2px!important}
  html body header#header .header-links.show .links > a:not(#_):not(#__){flex:1 1 100%!important}
  html body header#header .header-links.show .links > button:not(#_):not(#__){flex:0 0 44px!important;width:44px!important;justify-content:center!important;padding:0!important;margin-top:4px!important}
  html body header#header .header-links.show .links > :is(a,button:not(.cb-hd-bar)):not(#_):not(#__){display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:44px!important;height:auto!important;padding:0 12px!important;border-radius:var(--cb-radius-xs,6px)!important;color:var(--cb-muted)!important}
  html body header#header .header-links.show .links > a.is-active:not(#_):not(#__){color:var(--cb-accent)!important;background:var(--cb-hover)!important}
  html.cb-dark body header#header .header-links.show:not(#_):not(#__){border-color:rgba(255,255,255,.1)!important}
}
/* 鼠标或手指点过的按钮不出虚线框（键盘 Tab 时仍显示上面的统一焦点框） */
html body header#header .mobile-menu-toggle:focus:not(:focus-visible):not(#_):not(#__){outline:none!important}
html body :is(.popup-background,.editor-modal-wrapper):not(#_):not(#__){background:rgba(0,0,0,.4)!important}
html.cb-dark body :is(.cb-sr-tag em,.tag-item .tag-value a,.tag-item .tag-value):not(#_):not(#__){color:#a1a1a1!important}
html.cb-dark body .cb-tags .cb-filter-bar > span:not(#_):not(#__){color:#a1a1a1!important}
html.cb-dark body .cb-tags .cb-filter-bar .cb-filter-clear:not(#_):not(#__){color:#e4e4e7!important}
/* M6 书封（Feng 10-29 07:54：书封不算渐变例外）：深色不再所有书一个色，按每本书的书色 12% 混进深底，和 H12 新书封面同一做法 */
html.cb-dark body .cb-cover.cb-tone-0:not(#_){background:color-mix(in srgb,#f0ece6 12%,#1c1c1c)!important}
html.cb-dark body .cb-cover.cb-tone-1:not(#_){background:color-mix(in srgb,#e8edf3 12%,#1c1c1c)!important}
html.cb-dark body .cb-cover.cb-tone-2:not(#_){background:color-mix(in srgb,#e9f0ea 12%,#1c1c1c)!important}
html.cb-dark body .cb-cover.cb-tone-3:not(#_){background:color-mix(in srgb,#eeeaf2 12%,#1c1c1c)!important}
html.cb-dark body .cb-cover.cb-tone-4:not(#_){background:color-mix(in srgb,#f3ebe3 12%,#1c1c1c)!important}
html.cb-dark body .cb-cover.cb-tone-5:not(#_){background:color-mix(in srgb,#eaedee 12%,#1c1c1c)!important}
/* /cb-tabler189b */
/* cb-tabler190: fix v7 */
/* 依据：Designer 10-29 10:10 纯现网复查（tabler188）+ DS ac7a200。编号同审计。 */
/* 2 焦点：书目录里的当前书卡原来 outline:none（两种主题都没有焦点框），补上统一的 2px 实线；颜色读 --cb-focus-ring（浅 #0a0a0a / 深 #f0f0f0） */
html body #book-tree li.list-item-book > a.entity-list-item.book:focus-visible:not(#_):not(#__){outline:2px solid var(--cb-focus-ring)!important;outline-offset:2px!important}
html body #book-tree li.list-item-book:not(#_){overflow:visible}
/* 8 灯箱：大图没载入时不出白块——先放已经载好的缩略图，大图到了再换；连缩略图都没有时只显示中性的「正在加载」文字（不用毛玻璃，不用动画） */
html body .cb-lb .cb-lb-load:not(#_){position:absolute;left:50%;bottom:20px;transform:translateX(-50%);margin:0;padding:0;font-size:13px;line-height:1.6;color:#a1a1a1;white-space:nowrap;pointer-events:none}
html body .cb-lb:not(.is-loading):not(.is-error) .cb-lb-load:not(#_){display:none}
html body .cb-lb.is-empty .cb-lb-img:not(#_){visibility:hidden;width:0;height:0}
html body .cb-lb.is-empty .cb-lb-load:not(#_){bottom:auto;top:50%;transform:translate(-50%,-50%)}
/* L9 关于 / 特点 / 帮助与支持：卡片角上的图标水印旋转后伸出卡片 6px，手机上把页面撑到 396；卡片裁掉超出部分 */
html body .has-wm:not(#_){overflow:hidden}
html.cb-dark body .cb-hero-panel:not(#_):not(#__){box-shadow:0 0 10px rgba(0,0,0,.35)!important}
html body :is(.list-sort .dropdown-menu,header#header .dropdown-container .dropdown-menu):not(#_):not(#__){box-shadow:0 2px 8px rgba(10,10,10,.12),0 0 0 1px rgba(10,10,10,.06)!important}
/* M18 登录：输入框和全站一样（1px 中性边框、圆角 8）；「登录」用墨底主按钮、整行宽 */
html body #login-form :is(input[type=email],input[type=text],input[type=password]):not(#_):not(#__){box-sizing:border-box!important;width:100%!important;height:40px!important;padding:0 12px!important;border:1px solid rgba(10,10,10,.14)!important;border-radius:var(--cb-radius-sm,8px)!important;background:var(--cb-paper,#fff)!important;box-shadow:none!important;font-size:14px!important;color:var(--cb-ink-near)!important}
html.cb-dark body #login-form :is(input[type=email],input[type=text],input[type=password]):not(#_):not(#__){border-color:rgba(255,255,255,.14)!important;background:#1c1c1c!important}
/* cb-fix190 最终版：登录框焦点 = 边框加深 + 3px 淡光圈（同后台表单 L5721），替换原 L7865 */
html body #login-form :is(input[type=email],input[type=text],input[type=password]):focus:not(#_):not(#__){outline:none!important;border-color:rgba(10,10,10,.4)!important;box-shadow:0 0 0 3px rgba(10,10,10,.08)!important}
html.cb-dark body #login-form :is(input[type=email],input[type=text],input[type=password]):focus:not(#_):not(#__){border-color:rgba(255,255,255,.4)!important;box-shadow:0 0 0 3px rgba(255,255,255,.08)!important}
html body #login-form button.button:not(#_):not(#__){display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:40px!important;margin:0!important;padding:0 16px!important;border:0!important;border-radius:var(--cb-radius-sm,8px)!important;background:#0a0a0a!important;color:#fff!important;font-size:14px!important;font-weight:400!important;box-shadow:none!important}
html.cb-dark body #login-form button.button:not(#_):not(#__){background:#f0f0f0!important;color:#111113!important}
html body #login-form .grid.half:has(button.button):not(#_):not(#__){display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important}
html body #login-form .grid.half:has(button.button) > div:not(#_):not(#__){text-align:left!important}
/* M19 讨论条「参与讨论 / 回复」：中灰实底 r9 → 描边次按钮 r8（不和正文抢视线）；评论提交按钮墨底 r8 */
html body #comments .wpcy-pc-discuss__btn:not(#_):not(#__):not(#___){border:1px solid rgba(10,10,10,.16)!important;border-radius:var(--cb-radius-sm,8px)!important;background:transparent!important;color:var(--cb-ink-near)!important;box-shadow:none!important}
html body #comments .wpcy-pc-discuss__btn:hover:not(#_):not(#__):not(#___){background:var(--cb-hover)!important;color:var(--cb-ink-near)!important}
html.cb-dark body #comments .wpcy-pc-discuss__btn:not(#_):not(#__):not(#___){border-color:rgba(255,255,255,.16)!important;background:transparent!important;color:#f0f0f0!important}
html.cb-dark body #comments .wpcy-pc-discuss__btn:hover:not(#_):not(#__):not(#___){background:var(--cb-hover)!important;color:#fff!important}
html body #comments .wpcy-pc-comments .pc-form button[type=submit]:not(#_):not(#__){border-radius:var(--cb-radius-sm,8px)!important;background:#0a0a0a!important}
html.cb-dark body #comments .wpcy-pc-comments .pc-form button[type=submit]:not(#_):not(#__){background:#f0f0f0!important;color:#111113!important}
/* /cb-tabler190 */
/* cb-brandfont（测试副本）：品牌英文字体 Expletus 用于整个界面，只有正文内容不用。
   做法：界面字体变量 --cb-font-ui 最前面加「CB Brand UI」（只含拉丁字母和西文标点，中文仍走原来的字体）；
   原来的界面字体另存为 --cb-font-ui-plain，给不该用品牌字体的地方用。
   数字：不放进品牌字体，日期、计数仍是原来的字体（Expletus 数字是比例宽，列表里对不齐）。 */
@font-face{font-family:'CB Brand UI';font-style:normal;font-weight:400 700;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-wght-normal.woff2) format('woff2-variations'),url(/theme/cocobook/expletus-sans-latin-wght-normal.woff2) format('woff2');unicode-range:U+0020-002F,U+003A-007E,U+00A0-00B6,U+00B8-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2013,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:'CB Brand UI';font-style:italic;font-weight:400 700;font-display:swap;src:url(/theme/cocobook/expletus-sans-latin-wght-italic.woff2) format('woff2-variations'),url(/theme/cocobook/expletus-sans-latin-wght-italic.woff2) format('woff2');unicode-range:U+0020-002F,U+003A-007E,U+00A0-00B6,U+00B8-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2013,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
html body :is(input,textarea)::placeholder{font-family:var(--cb-font-ui-plain)!important}
/* 4 设置标签统一：选中项的图标跟文字同色（浅色白、深色 #1c1c1c），不再是灰色 */
html body #main-content .active-link-list > a svg.svg-icon{color:currentColor!important;opacity:1!important}
/* 附加 F（提案，未放进最终版）：深色模式下，没填网站的评论人名字、「回复 某某」几乎看不见。
   实测：名字 #0a0a0a、「回复 读者」#191616，评论区底色 #1c1c1f，对比度约 1.16:1。
   原因在主题（不是挂件）：cocobook-discuss.css L45–49 用 `html:not([data-theme]) .wpcy-pc-comments .pc-shell`（优先级 0,3,1）
   把 --pc-ink 固定成 #0a0a0a、--pc-mark 固定成 #191616；reading.css L7168 的深色变量块
   `html:is(.cb-dark,.dark-mode) body .pc-shell`（0,2,2）比它弱，所以深色变量没生效。
   带链接的名字有 L4689 单独改成 #93c5fd，所以没出问题。
   提案用 #a1a1a1（对比度 6.58:1）。如果想和浅色一样用正文墨色，可以改成 #e4e4e7（13.4:1）。 */
/* comment-name-dark（Designer 17:06）：评论组件给能跳论坛的名字输出 <a class="pc-name">（只有待同步的才是 span），
   原来只写 span.pc-name，带链接的名字被上面 L4691 `html.cb-dark #comments a:not(.wpcy-pc-discuss__btn)` 的 #93c5fd 盖住。
   现在 a/span 都点名（优先级 1,2,3 > 1,2,2），只管颜色；悬停颜色见下一条 dark5-3。 */
html:is(.cb-dark,.dark-mode) body #comments :is(a.pc-name,span.pc-name,.pc-reply-to){color:#a1a1a1!important}
/* dark5-3 深色名字悬停（Feng 18:32 经 Designer）：a.pc-name、span.pc-name、.pc-reply-to 悬停都用 #e4e4e7，不再是 L4691/L4694 链接蓝的悬停 #bfdbfe。
   优先级 (1,3,3) 高于 L4694 `html.cb-dark #comments a:not(.wpcy-pc-discuss__btn):hover` 的 (1,3,2)，也高于上一行 (1,2,3)。 */
html:is(.cb-dark,.dark-mode) body #comments :is(a.pc-name,span.pc-name,.pc-reply-to):hover{color:#e4e4e7!important}
/* smalltext A 12px（Feng 18:47 在 Designer 处定）：原样取自 /workspace/cb-smalltext/css/A-12px-主题.css。
   组件里这两处写的是 0.66×--pc-rem，CocoBook 13px 下只有 8.58px；只改字号和行高，颜色仍由上面几条管。 */
/* CocoBook 评论小字 — 方案 A：12px（和日期、提示同级）
   放主题 cocobook-reading.css 末尾（只影响 CocoBook，不影响 WP）。 */
html body #comments .pc-reply-to{font-size:12px!important;line-height:1.4!important}
html body #comments .pc-cooked :is(aside.quote,.quote) .title{font-size:12px!important;line-height:1.35!important}
/* .pc-identity-hint 现网已被 cocobook-discuss.css L115 设为 12px!important，A 方案无需再改 */
/* ===== 提议给 Bot（主题侧，需 Feng 批准；不加也能用） ===== */
/* 1 参考文献总目：从内容页跳过来时，落点那一组铺一层浅灰底，约 3 秒淡出；不画边框、不加颜色 */
@keyframes cb-ref-arrive{0%,60%{background-color:var(--cb-well);box-shadow:0 0 0 10px var(--cb-well)}100%{background-color:transparent;box-shadow:0 0 0 10px transparent}}
/* 3 详细信息里的「参考资料」行 */
html body #page-details .cb-refs-meta svg.svg-icon{flex:none}
html body #page-details .cb-refs-list{display:block;margin-top:2px}
html body #page-details .cb-refs-list > span{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.6;opacity:.85}
/* 3b 侧栏行由主题模块 cocobook-refs-meta 输出成单独一块 entity-meta（同许可那一行的做法），补上与上一条的 6px 间距 */
html body .entity-meta.cb-refs-d{margin-top:6px!important}
/* B：「文档托管至」挪进右栏「详细信息」一行；页尾只留「这篇文档对你有帮助吗？」。
   行的样式与「被 N 个页面引用」同一套：12px、图标 13px 线宽 1.5、链接 1px 下划线 35%、悬停变实。 */
html body #page-details .entity-meta.cb-host-d{margin-top:6px!important}
html body #page-details .cb-host-meta svg.svg-icon{flex:none}
html body #page-details .cb-host-meta a{white-space:nowrap}
html body #page-details .cb-host-ext{display:inline-block;width:11px;height:11px;margin-left:3px;vertical-align:-1px;opacity:.55;text-decoration:none}
/* ===== replybar 乙 变量（Designer 16:49；来源 product-comments docs/designer/cocobook-reply-bar-theme-patch.css @ 49d9af4，只读取用）=====
   挂件 20261029g 读这些变量；现网挂件仍是 20261029f 时这几行不起作用也不伤外观。L7242 深色留言框 3px 焦点光圈未动。 */
html body #comments .pc-shell{--pc-reply-bg:#f5f5f5;--pc-reply-muted:#6b6b6b;--pc-reply-name:#0a0a0a;--pc-reply-line:#d8d8d8;--pc-reply-line-focus:#d8d8d8;--pc-field-radius:8px}
html:is(.cb-dark,.dark-mode) body #comments .pc-shell{--pc-reply-line:#2e2e32;--pc-reply-line-focus:#4a4a4a;--pc-reply-bg:#242424;--pc-reply-muted:#8b8b93;--pc-reply-name:#a1a1a1}
html:is(.cb-dark,.dark-mode) body #comments .pc-reply-ctx strong{color:#a1a1a1}
