:root{
  --bg:#fff; --fg:#24292f; --muted:#57606a; --border:#d0d7de;
  --accent:#0969da; --sidebar-bg:#f6f8fa; --code-bg:#f6f8fa; --active:#0969da;
  --sidebar-w:280px; /* 侧边栏宽度，可拖拽调整并持久化 */
}
@media (prefers-color-scheme: dark){
  :root{--bg:#0d1117;--fg:#c9d1d9;--muted:#8b949e;--border:#30363d;
    --accent:#58a6ff;--sidebar-bg:#161b22;--code-bg:#161b22;--active:#58a6ff;}
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  color:var(--fg);background:var(--bg)}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:24px;
  height:56px;padding:0 20px;background:var(--bg);border-bottom:1px solid var(--border)}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;color:var(--fg)}
.brand:hover{text-decoration:none}
.brand .logo{height:28px}
.topnav{display:flex;gap:18px;font-size:14px}

.layout{display:grid;grid-template-columns:var(--sidebar-w) 6px minmax(0,1fr) 220px;max-width:1400px;margin:0 auto}
@media(max-width:1000px){.layout{grid-template-columns:1fr}.sidebar,.resizer,.page-toc{display:none}}

/* 侧边栏宽度拖拽分隔条 */
.resizer{position:sticky;top:56px;align-self:start;height:calc(100vh - 56px);
  cursor:col-resize;display:flex;justify-content:center;touch-action:none}
.resizer::before{content:"";width:1px;height:100%;background:var(--border);transition:background .12s,width .12s}
.resizer:hover::before,.resizer.dragging::before{width:3px;background:var(--accent)}
body.resizing{user-select:none;cursor:col-resize}

.sidebar{position:sticky;top:56px;align-self:start;height:calc(100vh - 56px);overflow-y:auto;
  padding:16px 10px;background:var(--sidebar-bg);border-right:1px solid var(--border)}
#filter{width:100%;padding:6px 10px;margin-bottom:10px;border:1px solid var(--border);
  border-radius:6px;background:var(--bg);color:var(--fg)}
.tree-group-title{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--muted);
  margin:14px 8px 4px}
.tree-item{display:block;padding:5px 8px;border-radius:6px;color:var(--fg);font-size:14px}
.tree-item:hover{background:rgba(127,127,127,.12);text-decoration:none}
.tree-item.active{background:var(--accent);color:#fff;font-weight:600}
.tree-item.group{color:var(--muted);font-weight:600;cursor:default}
.tree-children{margin-left:12px;border-left:1px solid var(--border);padding-left:4px}

.content{min-width:0;padding:32px 40px}
.page-toc{position:sticky;top:56px;align-self:start;height:calc(100vh - 56px);overflow-y:auto;
  padding:24px 16px;font-size:13px}
.page-toc-title{font-weight:700;color:var(--muted);margin-bottom:8px}
.page-toc ul{list-style:none;margin:0;padding:0}
.page-toc li{margin:3px 0}
.page-toc li.lvl-3{padding-left:14px;font-size:12.5px}
.page-toc a{color:var(--muted)}

/* markdown 正文 */
.markdown-body{max-width:840px}
.markdown-body h1{font-size:28px;border-bottom:1px solid var(--border);padding-bottom:.3em;margin-top:0}
.markdown-body h2{font-size:22px;border-bottom:1px solid var(--border);padding-bottom:.3em;margin-top:1.6em}
.markdown-body h3{font-size:18px;margin-top:1.4em}
.markdown-body img{max-width:100%;height:auto;border:1px solid var(--border);border-radius:6px;margin:8px 0}
.markdown-body code{background:var(--code-bg);padding:.2em .4em;border-radius:4px;font-size:85%}
.markdown-body pre{background:var(--code-bg);padding:14px;border-radius:8px;overflow:auto}
.markdown-body pre code{background:none;padding:0}
.markdown-body blockquote{border-left:4px solid var(--border);margin:0;padding:0 1em;color:var(--muted)}
.markdown-body table{border-collapse:collapse;display:block;overflow:auto}
.markdown-body th,.markdown-body td{border:1px solid var(--border);padding:6px 12px}
/* 表格第一列（如日期/时间等短标签）不换行 */
.markdown-body th:first-child,.markdown-body td:first-child{white-space:nowrap}
.markdown-body a.header-anchor{color:inherit}

/* ===== 交互式 API 接口块 (~~~[api]) ===== */
.api-block{border:1px solid var(--border);border-radius:10px;margin:20px 0;overflow:hidden;background:var(--bg)}
.api-head{display:flex;align-items:center;gap:12px;padding:14px 16px}
.api-method{color:#fff;font-weight:700;font-size:13px;letter-spacing:.5px;padding:5px 12px;border-radius:6px;text-transform:uppercase}
.api-method.get{background:#61affe}
.api-method.post{background:#49cc90}
.api-method.put{background:#fca130}
.api-method.delete{background:#f93e3e}
.api-method.patch{background:#50e3c2}
.api-path{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600;font-size:15px;color:var(--fg)}
.api-debug-btn{margin-left:auto;background:#3b5bdb;color:#fff;border:0;border-radius:6px;padding:7px 16px;font-size:14px;cursor:pointer}
.api-debug-btn:hover{background:#364fc7}
.api-debug-btn.active{background:#364fc7;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}

/* 参数表 */
.api-params{border-top:1px solid var(--border)}
.api-param{display:grid;grid-template-columns:max-content minmax(0,1fr) 240px;gap:16px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border)}
.api-p-meta{white-space:nowrap}
.api-param:last-child{border-bottom:0}
.api-p-name{font-weight:700;color:var(--fg)}
.api-p-type{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.api-p-req{display:block;color:#e5484d;font-size:13px;margin-bottom:3px}
.api-p-desc{color:var(--muted);font-size:14px;line-height:1.5}
.api-input{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--fg);font-size:14px}
.api-input:focus{outline:none;border-color:#3b5bdb;box-shadow:0 0 0 3px rgba(59,91,219,.15)}

/* 调试栏（默认隐藏，点“调试”展开） */
.api-debug-bar{display:none;gap:10px;align-items:center;padding:12px 16px;border-top:1px solid var(--border);background:var(--sidebar-bg)}
.api-debug-bar.open{display:flex}
.api-base{flex:1;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--fg);font-size:14px}
.api-send{background:#3b5bdb;color:#fff;border:0;border-radius:6px;padding:8px 18px;font-size:14px;cursor:pointer;white-space:nowrap}
.api-send:hover{background:#364fc7}
.api-status{font-size:13px;color:var(--muted);white-space:nowrap}

/* 深色标签面板 */
.api-panel{background:#282c34}
.api-tabs{display:flex;background:#21252b;border-bottom:1px solid #181a1f}
.api-tab{background:transparent;border:0;color:#9aa4b2;padding:11px 20px;font-size:14px;cursor:pointer;border-bottom:2px solid transparent}
.api-tab:hover{color:#e6e6e6}
.api-tab.active{color:#fff;background:#282c34;border-bottom-color:#61affe}
.api-tab-pane{display:none}
.api-tab-pane.active{display:block}
.api-tab-pane pre{margin:0;padding:16px 18px;background:transparent;color:#abb2bf;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.6;overflow-x:auto;white-space:pre;border-radius:0}

@media (max-width:820px){
  .api-param{grid-template-columns:1fr;gap:6px}
}
