/* dev_docs */
/* ===== 开发者文档：统一为「页首 + 文档卡」结构，与站内其它插件页同一语言 ===== */
.dev-docs-page{display:grid;gap:14px;min-width:0}
.dev-docs-page>*{min-width:0;max-width:100%}
.dev-docs-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;min-width:0}
.dev-docs-head-main{min-width:0}
.dev-docs-head h1{margin:0;font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.01em;color:var(--text)}
.dev-docs-head p{margin:4px 0 0;font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.5}
.dev-docs-head-count{flex:0 0 auto;font-size:var(--font-size-xs);color:var(--text-subtle)}

/* 文档卡：白底 14px 圆角，内文限宽保证可读性 */
.dev-docs-doc{min-width:0;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.dev-docs-doc>*{max-width:760px}
.dev-docs-doc>.markdown-table-wrap,.dev-docs-doc>.dev-docs-code{max-width:100%}
.dev-docs-doc>.markdown-table-wrap{scrollbar-gutter:auto}

/* ===== 移动端目录：药丸托盘（与全站 tab-bar 同源） ===== */
.dev-docs-toc{display:none}

/* ===== 侧栏目录 ===== */
.dev-docs-sidebar-card{position:sticky;top:12px}
.dev-docs-sidebar-nav{display:grid;gap:1px;margin-top:10px;max-height:calc(100vh - 140px);overflow-y:auto;scrollbar-width:thin}
.dev-docs-sidebar-link{display:block;padding:7px 10px;border-radius:8px;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.4;text-decoration:none;transition:background .15s ease,color .15s ease}
.dev-docs-sidebar-link:hover{background:var(--brand-soft);color:var(--brand)}

/* ===== 正文排版 ===== */
.dev-docs-doc h1,.dev-docs-doc h2,.dev-docs-doc h3,.dev-docs-doc h4{color:var(--text);line-height:1.4}
/* 首个小标题（markdown 的一级标题）作为文档标题，与页首去重后弱化显示 */
.dev-docs-doc>h1:first-child{margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:var(--font-size-lg);font-weight:700}
.dev-docs-doc h2{margin:26px 0 10px;font-size:var(--font-size-lg);font-weight:700}
.dev-docs-doc h3{margin:18px 0 8px;font-size:var(--font-size-md);font-weight:700}
.dev-docs-doc h4{margin:14px 0 6px;font-size:var(--font-size-md);font-weight:600;color:var(--text-muted)}
/* 章节锚点：为固定顶栏预留滚动余量 */
.dev-docs-doc h2[id]{scroll-margin-top:76px}
.dev-docs-doc h2+h3{margin-top:10px}
.dev-docs-doc p{margin:10px 0;font-size:var(--font-size-md);line-height:1.8;color:var(--text);overflow-wrap:anywhere}
.dev-docs-doc a{color:var(--brand);text-decoration:none;border-bottom:1px solid var(--brand-soft)}
.dev-docs-doc a:hover{border-bottom-color:var(--brand)}
.dev-docs-doc strong{font-weight:700;color:var(--text)}
.dev-docs-doc em{font-style:italic;color:var(--text-muted)}
.dev-docs-doc code{padding:2px 6px;border-radius:6px;background:var(--brand-soft);color:var(--brand-hover);font-family:var(--font-mono);font-size:.92em;overflow-wrap:anywhere;word-break:break-word}

/* 列表 */
.dev-docs-list{margin:10px 0;padding-left:22px;font-size:var(--font-size-md);line-height:1.8;color:var(--text);overflow-wrap:anywhere}
.dev-docs-list li{margin:4px 0}
.dev-docs-list li::marker{color:var(--text-subtle)}

/* 代码块 */
.dev-docs-code{margin:12px 0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);overflow-x:auto;font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:1.65;color:var(--text)}
.dev-docs-code code{padding:0;background:transparent;color:inherit;font-size:inherit}

/* 表格 */
.dev-docs-doc>.markdown-table-wrap{max-width:100%;margin:12px 0;overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.dev-docs-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}
.dev-docs-table th,.dev-docs-table td{padding:9px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.dev-docs-table th{background:var(--brand-soft);font-weight:700;color:var(--text);white-space:nowrap}
.dev-docs-table tr:last-child td{border-bottom:0}
.dev-docs-table tbody tr:hover{background:var(--bg)}

/* 引用 */
.dev-docs-doc blockquote{margin:12px 0;padding:8px 14px;border-left:3px solid var(--brand-soft);border-radius:0 8px 8px 0;background:var(--bg);color:var(--text-muted);font-size:var(--font-size-md);line-height:1.8}
.dev-docs-doc blockquote p{margin:0;font-size:inherit;color:inherit}

@media(max-width:720px){
    .dev-docs-page{gap:10px}
    .dev-docs-head h1{font-size:var(--font-size-lg)}
    .dev-docs-doc{padding:16px 14px}
    .dev-docs-doc h2{margin-top:22px}
    /* 移动端展示药丸目录（横向滚动单行） */
    .dev-docs-toc{display:flex;flex-wrap:nowrap;gap:4px;margin:0;padding:5px;box-sizing:border-box;width:100%;max-width:100%;border:1px solid var(--line);border-radius:999px;background:var(--panel);overflow-x:auto;scrollbar-width:none}
    .dev-docs-toc::-webkit-scrollbar{display:none}
    .dev-docs-toc-link{flex:0 0 auto;padding:6px 13px;border:0;border-radius:999px;background:transparent;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:600;line-height:1;white-space:nowrap}
    .dev-docs-toc-link:hover{background:var(--brand-soft);color:var(--brand)}
}
.post-content .markdown-table-wrap{box-sizing:border-box;width:100%;max-width:100%;margin:10px 0 12px;overflow-x:auto}.markdown-table-wrap{box-sizing:border-box;width:100%;max-width:100%;margin:10px 0 12px;overflow-x:auto}.markdown-table-wrap table{width:100%;min-width:0;table-layout:auto;border-collapse:collapse;border:1px solid var(--line);background:var(--panel);font-size:var(--font-size-md);line-height:1.5}.markdown-table-wrap th{min-width:6em;padding:7px 9px;border:1px solid var(--line);text-align:left;vertical-align:top}.markdown-table-wrap td{min-width:6em;padding:7px 9px;border:1px solid var(--line);text-align:left;vertical-align:top}@media(max-width:720px){.markdown-table-wrap table{width:100%;min-width:max-content}}@media(max-width:720px){.markdown-table-wrap th{min-width:max-content}}@media(max-width:720px){.markdown-table-wrap td{min-width:max-content}}@media(max-width:720px){.markdown-table-wrap th{min-width:0;max-width:min(72vw,360px);overflow-wrap:anywhere}}@media(max-width:720px){.markdown-table-wrap td{min-width:0;max-width:min(72vw,360px);overflow-wrap:anywhere}}