/* ═══════════ 文档页(docs.html) ═══════════
沿用 site.css 的设计 token(--bg-、--text-、--line-、--accent 系列)。
注意:CSS 注释文本里绝不能出现星号+斜杠紧邻的序列(如 `--bg-* /` 写在一起),
会提前闭合注释、吞掉紧随其后的整条规则(本次 body padding-top 被吞实踩)。
遵守站点设计纪律:无光晕、无圆角套娃、带文字容器固定高度、内容区不另开滚动容器。 */
body {
padding-top: var(--topbar-h); /* topbar 是 fixed,把内容顶下来 */
}
/* 顶栏配套:当前页「文档」高亮;「‹ 首页」桌面隐藏(brand 即返回入口),移动端放行显示 */
.docs-nav-current { color: var(--text-1); }
.docs-back-home { display: none; }
.docs-layout {
max-width: var(--page-max);
margin: 0 auto;
padding: 40px 32px 96px;
display: grid;
grid-template-columns: 216px minmax(0, 1fr);
gap: 56px;
}
/* ───── 左侧目录 ───── */
.docs-side {
position: sticky;
top: calc(var(--topbar-h) + 40px);
align-self: start;
}
.docs-side-title {
margin: 0 0 10px;
padding: 0 12px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.08em;
color: var(--text-3);
text-transform: uppercase;
}
.docs-nav a {
display: block;
height: 36px;
line-height: 36px;
padding: 0 12px;
border-radius: 6px;
font-size: 14px;
color: var(--text-2);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
transition: color 0.15s ease, background-color 0.15s ease;
}
.docs-nav a:hover {
color: var(--text-1);
background: rgba(168, 180, 210, 0.06);
}
.docs-nav a.active {
color: var(--text-1);
background: rgba(168, 180, 210, 0.1);
font-weight: 560;
}
/* 语言切换:目录末尾成员(桌面端竖排项同风格,上方留白分隔;移动端见 @media chips 化) */
.docs-lang-toggle {
display: block;
width: 100%;
margin-top: 14px;
height: 36px;
padding: 0 12px;
background: none;
border: 0;
border-radius: 6px;
font-family: inherit;
font-size: 14px;
color: var(--text-3);
text-align: left;
cursor: pointer;
transition: color 0.15s ease, background-color 0.15s ease;
}
.docs-lang-toggle:hover {
color: var(--text-1);
background: rgba(168, 180, 210, 0.06);
}
/* ───── 右侧内容 ───── */
.docs-content {
max-width: 760px;
font-size: 15px;
line-height: 1.8;
color: var(--text-2);
}
.docs-content > :first-child { margin-top: 0; }
.docs-content h1 {
margin: 0 0 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--line);
font-size: 27px;
font-weight: 700;
line-height: 1.3;
color: var(--text-1);
}
.docs-content h2 {
margin: 42px 0 14px;
font-size: 20px;
font-weight: 650;
line-height: 1.35;
color: var(--text-1);
}
.docs-content h3 {
margin: 30px 0 10px;
font-size: 16px;
font-weight: 650;
line-height: 1.4;
color: var(--text-1);
}
.docs-content h4 {
margin: 24px 0 8px;
font-size: 15px;
font-weight: 650;
color: var(--text-1);
}
.docs-content p,
.docs-content ul,
.docs-content ol { margin: 0 0 14px; }
/* 列表缩进:site.css 第 36 行的 * 通配重置(margin:0;padding:0)清掉了 ul/ol 的默认
padding-left,outside 圆点因此跑到内容区左外侧;补回缩进让圆点落在内容区内、文字对齐。 */
.docs-content ul { padding-left: 1.4em; }
.docs-content ol { padding-left: 1.6em; }
.docs-content li { margin: 4px 0; }
.docs-content li::marker { color: var(--text-3); }
.docs-content li > ul,
.docs-content li > ol { margin: 4px 0; }
.docs-content strong { color: var(--text-1); font-weight: 620; }
.docs-content a {
color: var(--accent);
text-decoration: none;
border-bottom: 1px solid transparent;
transition: color 0.15s ease, border-color 0.15s ease;
}
.docs-content a:hover {
color: var(--accent-strong);
border-bottom-color: var(--accent-strong);
}
.docs-content code {
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
font-size: 0.88em;
background: rgba(168, 180, 210, 0.1);
padding: 2px 6px;
border-radius: 4px;
color: var(--text-1);
}
.docs-content pre {
margin: 0 0 16px;
padding: 14px 16px;
background: var(--bg-panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow-x: auto;
}
.docs-content pre code {
background: none;
padding: 0;
border-radius: 0;
font-size: 13px;
line-height: 1.7;
color: var(--text-1);
}
/* 引用块:内部 p 若继承段落 margin-bottom 会把块底撑高、竖线随之拉长,
文字视觉偏上(实测上 2px 下 16px);块内段落去 margin,padding 上下对称,竖线与文字同高对齐。 */
.docs-content blockquote {
margin: 0 0 14px;
padding: 10px 0 10px 16px;
border-left: 2px solid var(--line-strong);
color: var(--text-3);
}
.docs-content blockquote p { margin: 0; }
.docs-content blockquote p + p { margin-top: 8px; }
.docs-content hr {
margin: 32px 0;
border: 0;
border-top: 1px solid var(--line);
}
.docs-content table {
width: 100%;
margin: 0 0 16px;
border-collapse: collapse;
font-size: 14px;
line-height: 1.6;
}
.docs-content th,
.docs-content td {
padding: 8px 12px;
border-bottom: 1px solid var(--line);
text-align: left;
vertical-align: top;
}
.docs-content th {
color: var(--text-1);
font-weight: 620;
white-space: nowrap;
}
.docs-content img { max-width: 100%; }
/* 表格与代码块的横向滚动条做细窄适配,不暴露原生粗滚动条 */
.docs-content pre::-webkit-scrollbar,
.docs-content table::-webkit-scrollbar { height: 8px; }
.docs-content pre::-webkit-scrollbar-thumb,
.docs-content table::-webkit-scrollbar-thumb {
background: rgba(168, 180, 210, 0.18);
border-radius: 4px;
}
/* 加载与错误占位 */
.docs-loading,
.docs-error {
padding: 48px 0;
font-size: 14px;
color: var(--text-3);
}
.docs-error { color: var(--text-2); }
/* 窄屏:目录折到内容上方,不再分栏;顶栏放行返回入口;表格块内横滚防拶破版面 */
@media (max-width: 860px) {
.docs-layout {
/* 必须 minmax(0,1fr) 而非 1fr:1fr = minmax(auto,1fr),grid auto 下限是 min-content,
pre/table 的最小内容宽度会撑破列(本次移动端正文被右裁实踩);0 下限才能压住。 */
grid-template-columns: minmax(0, 1fr);
gap: 20px;
padding: 24px 20px 72px;
}
/* 返回首页:site.css 在移动端隐藏全部 .topnav-link(0,1,0),用更高优先级选择器(0,2,0)单独放行 */
.topnav .docs-back-home { display: inline-flex; align-items: center; }
/* 目录 = 单行横向滚动 chips 条(原本 inline-block 两行挤压、末项被裁断) */
.docs-side {
position: static;
padding-bottom: 14px;
border-bottom: 1px solid var(--line);
}
.docs-side-title { display: none; }
.docs-nav {
display: flex;
gap: 8px;
overflow-x: auto;
padding-bottom: 2px;
scrollbar-width: none; /* 隐藏横向滚动条 */
}
.docs-nav::-webkit-scrollbar { display: none; }
.docs-nav a {
flex: none;
display: inline-flex;
align-items: center;
height: 32px;
line-height: normal;
padding: 0 12px;
background: var(--bg-panel);
border: 1px solid var(--line);
border-radius: 999px;
white-space: nowrap;
}
.docs-nav a.active {
background: rgba(168, 180, 210, 0.14);
border-color: var(--line-strong);
}
/* 语言切换 = chips 条尾部成员(与 chip 同高同形) */
.docs-lang-toggle {
flex: none;
display: inline-flex;
align-items: center;
width: auto;
margin-top: 0;
height: 32px;
padding: 0 12px;
background: var(--bg-panel);
border: 1px dashed var(--line-strong);
border-radius: 999px;
white-space: nowrap;
}
/* 内容防超宽:长行断词;表格 display:block 后块内横滚(不顶破页面) */
.docs-content { max-width: 100%; overflow-wrap: break-word; }
.docs-content table { display: block; overflow-x: auto; }
.docs-content h1 { font-size: 23px; }
.docs-content h2 { font-size: 18px; }
}