/* website/assets/css/doc-style.css — 文档页布局 */
.doc-layout { display: flex; min-height: calc(100vh - 57px); }
.doc-sidebar {
  width: 300px; min-width: 300px; padding: 20px 16px;
  border-right: 1px solid var(--border-color);
  overflow-y: auto; height: calc(100vh - 57px);
  position: sticky; top: 57px;
  background: var(--bg-secondary);
}
.doc-main { flex: 1; padding: 32px 48px; min-width: 0; }
/* 板块访问校验前隐藏正文，防无权内容闪现（doc-main.js 校验通过后加 body.auth-ok 才显示） */
.doc-main, .subsystem-dev-main { visibility: hidden; }
body.auth-ok .doc-main, body.auth-ok .subsystem-dev-main { visibility: visible; }
/* 锚点定位补偿 sticky 导航栏（57px）：原生 # 跳转与 scrollIntoView 均生效 */
.doc-main [id], .subsystem-dev-main [id] { scroll-margin-top: 70px; }
.doc-main h1 { font-family: var(--font-display); color: var(--accent-cyan); margin-bottom: 20px; }
/* 各级标题统一页标题的蓝色（accent-cyan） */
.doc-main h2 { color: var(--accent-cyan); margin: 28px 0 12px; }
.doc-main h3 { color: var(--accent-cyan); margin: 20px 0 10px; }
.doc-main h4 { color: var(--accent-cyan); margin: 16px 0 8px; }
.doc-main p { margin: 12px 0; color: var(--text-secondary); line-height: 1.8; }
.doc-main li { margin: 6px 0; color: var(--text-secondary); }
.doc-main ul, .doc-main ol { margin: 12px 24px; }
.doc-main img { max-width: 100%; border-radius: 6px; }
.doc-main table { border-collapse: collapse; margin: 16px 0; width: 100%; }
.doc-main th, .doc-main td { border: 1px solid var(--border-color); padding: 8px 12px; text-align: left; font-size: 0.9rem; }
.doc-main th { background: rgba(0, 212, 255, 0.08); color: var(--accent-cyan); }
.doc-main code {
  font-family: var(--font-code); background: var(--bg-secondary);
  padding: 2px 6px; border-radius: 3px; font-size: 0.88rem;
  color: var(--accent-cyan);
}
.doc-main pre { background: var(--bg-secondary); border: 1px solid var(--border-color);
  border-radius: 6px; padding: 16px; overflow-x: auto; margin: 16px 0; }
.doc-main pre code { background: none; padding: 0; color: var(--text-primary); }
.doc-main blockquote { border-left: 3px solid var(--accent-cyan);
  padding: 4px 16px; margin: 16px 0; color: var(--text-secondary); background: rgba(0,212,255,0.04); }

/* 文档中心索引 */
.section-index { display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 20px; }
.entry { background: var(--bg-card); border: 1px solid var(--border-color);
  border-radius: 8px; padding: 18px 20px; transition: all 0.3s; }
.entry:hover { border-color: var(--accent-cyan); box-shadow: var(--glow-cyan); }
.entry h5 { margin-bottom: 6px; }
.entry h5 a { color: var(--accent-cyan); text-decoration: none; }
.entry p { color: var(--text-secondary); font-size: 0.88rem; margin: 0; }
.entry .lead { color: var(--text-secondary); margin-bottom: 12px; }

/* 树状菜单 */
.tree-node { margin: 1px 0; }
.tree-label {
  display: flex; align-items: center; gap: 6px;
  padding: 5px 10px; border-radius: 4px;
  color: var(--text-secondary); font-size: 0.88rem;
  cursor: pointer; user-select: none;
}
.tree-label:hover { color: var(--accent-cyan); background: rgba(0, 212, 255, 0.06); }
.tree-label.active { color: var(--accent-cyan); background: rgba(0, 212, 255, 0.12); }
.tree-label .arrow { font-size: 0.6rem; transition: transform 0.2s; width: 12px; display: inline-block; flex-shrink: 0; }
.tree-label .arrow.open { transform: rotate(90deg); }
.tree-label a { color: inherit; text-decoration: none; flex: 1; }
.tree-icon { font-size: 0.82rem; width: 18px; text-align: center; flex-shrink: 0; }
.tree-children { padding-left: 14px; display: none; }
.tree-children.open { display: block; }

/* 移动端 */
@media (max-width: 768px) {
  .doc-layout { flex-direction: column; }
  .doc-sidebar { width: 100%; min-width: 0; height: auto; position: static; max-height: 300px; }
  .doc-main { padding: 24px 16px; }
}

/* 文档栏目列表（文档中心/新手教程等）：题目大于说明文字 */
.section-index .entry h5 a { font-size: 19.2px; }
.section-index .entry p { font-size: 15.94px; }

/* ===== 双碳手册：步骤数字方框 ===== */
.doc-main .manual-step { display: flex; align-items: center; gap: 12px; margin: 12px 0; }
.doc-main .manual-step-number {
  flex: 0 0 auto; width: 28px; height: 28px; border-radius: 7px;
  background: var(--accent-cyan);
  color: #fff; font-weight: 700; font-size: 0.95rem;
  display: flex; align-items: center; justify-content: center;
}
/* 深色主题：主题色为亮青色，白字对比不足，改用浅色调背景 + 主题色文字（去掉渐变与发光特效） */
body:not(.light) .doc-main .manual-step-number {
  background: rgba(0, 212, 255, 0.15);
  color: var(--accent-cyan);
}
.doc-main .manual-step-content { flex: 1; min-width: 0; }
.doc-main .manual-step-content p { margin: 0; }

/* ===== 双碳手册：callout 提示块（浅前景色背景 + 主题色左装饰） ===== */
.doc-main .callout.info {
  background: rgba(0, 212, 255, 0.08);
  border-left: 4px solid var(--accent-cyan);
  border-radius: 8px;
  padding: 4px 16px;
  margin: 16px 0;
}
.doc-main .callout.info table { margin: 0; border-collapse: collapse; }
.doc-main .callout.info td { border: none; padding: 8px 4px; background: none; }
.doc-main .callout.info td:first-child {
  width: 0; padding: 0; border: none; background: none; /* 去掉第 2 个竖条纹，仅保留 border-left */
}
.doc-main .callout.info p { margin: 0; }
.doc-main .callout.info strong { color: var(--accent-cyan); }
