/* ============================================================
   手册正文排版（章节/案例内容页）
   ============================================================ */

.doc-layout{display:grid;grid-template-columns:1fr;gap:26px;padding-bottom:40px}
/* 单栏（无侧栏目录的页面，如案例详情） */
.doc-layout.single{max-width:900px;margin:0 auto;grid-template-columns:1fr}
@media(min-width:1000px){
  .doc-layout{grid-template-columns:230px 1fr}
  .doc-layout.single{grid-template-columns:1fr}
  .doc-toc{position:sticky;top:76px;align-self:start;max-height:calc(100vh - 96px);overflow:auto}
}

/* 左侧文档目录 */
.doc-toc{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px 6px;font-size:13px;
}
.doc-toc .toc-title{
  font-size:12px;font-weight:800;letter-spacing:2px;color:var(--gold-dark);
  padding:0 14px 10px;border-bottom:1px solid var(--line);margin-bottom:8px;
}
.doc-toc a{
  display:block;padding:6px 14px;color:var(--gray);border-left:2px solid transparent;
  border-radius:0 8px 8px 0;line-height:1.5;
}
.doc-toc a:hover{color:var(--navy);background:var(--tint)}
.doc-toc a.on{color:var(--navy);font-weight:700;border-left-color:var(--gold);background:var(--tint)}

/* 正文 */
.doc-body{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:40px 46px;
}
@media(max-width:760px){.doc-body{padding:24px 18px}}

.doc-head{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:28px}
.doc-head .kicker{
  font-size:12.5px;font-weight:800;color:var(--gold-dark);letter-spacing:2.5px;margin-bottom:8px;
}
.doc-head h1{font-size:27px;font-weight:900;color:var(--navy);line-height:1.4;letter-spacing:.5px}
.doc-head .meta{font-size:12.5px;color:var(--gray-light);margin-top:8px;display:flex;gap:14px;flex-wrap:wrap}

.doc-body h2{
  font-size:21px;font-weight:900;color:var(--navy);margin:40px 0 14px;
  padding-left:14px;border-left:4px solid var(--gold);line-height:1.45;
}
.doc-body h3{font-size:17.5px;font-weight:800;color:var(--ink);margin:28px 0 10px}
.doc-body h4{font-size:15.5px;font-weight:800;color:var(--gray);margin:22px 0 8px}
.doc-body p{margin:12px 0;color:var(--gray);font-size:15.5px}
.doc-body strong{color:var(--ink)}
.doc-body a{color:var(--navy-soft);border-bottom:1px solid rgba(27,69,104,.3)}
.doc-body ul,.doc-body ol{margin:12px 0 12px 4px;padding-left:22px;color:var(--gray)}
.doc-body li{margin:6px 0;font-size:15.5px}
.doc-body blockquote{
  border-left:3px solid var(--gold);background:var(--gold-pale);
  border-radius:0 10px 10px 0;padding:12px 18px;margin:16px 0;color:var(--gray);
}
.doc-body blockquote p{margin:4px 0}
.doc-body code{
  font-family:"JetBrains Mono",Consolas,"Courier New",monospace;
  background:var(--tint);color:var(--navy-soft);border-radius:5px;
  padding:1.5px 7px;font-size:.88em;
}
.doc-body pre{
  background:var(--navy-deep);border-radius:10px;padding:18px 20px;overflow-x:auto;
  margin:16px 0;line-height:1.7;
}
.doc-body pre code{background:none;color:#D9E4EE;padding:0;font-size:13.5px}
.doc-body table{
  width:100%;border-collapse:collapse;margin:18px 0;font-size:14px;
  display:block;overflow-x:auto;
}
.doc-body th{
  background:var(--tint);color:var(--navy);font-weight:800;text-align:left;
  padding:10px 14px;border:1px solid var(--line);white-space:nowrap;
}
.doc-body td{padding:9px 14px;border:1px solid var(--line);color:var(--gray);vertical-align:top}
.doc-body tr:nth-child(even) td{background:#FAFBFD}
.doc-body img{border-radius:10px;border:1px solid var(--line);display:block;margin:16px auto;max-width:100%}
.doc-body hr{border:none;border-top:1px solid var(--line);margin:30px 0}

/* 提示容器（对应 VitePress ::: tip / warning） */
.doc-body .custom-block{
  border-radius:10px;padding:14px 18px;margin:16px 0;font-size:14.5px;border:1px solid;
}
.doc-body .custom-block .custom-block-title{font-weight:800;margin-bottom:4px;font-size:14px}
.doc-body .custom-block.tip{background:#EEF6F2;border-color:rgba(30,142,110,.35)}
.doc-body .custom-block.tip .custom-block-title{color:var(--green)}
.doc-body .custom-block.warning{background:#FBF4E8;border-color:rgba(183,146,86,.45)}
.doc-body .custom-block.warning .custom-block-title{color:var(--gold-dark)}
.doc-body .custom-block.danger{background:#FBEEEE;border-color:rgba(214,69,69,.35)}
.doc-body .custom-block.danger .custom-block-title{color:var(--red)}
.doc-body .custom-block.info{background:var(--tint);border-color:rgba(12,46,74,.25)}
.doc-body .custom-block.info .custom-block-title{color:var(--navy)}
.doc-body .custom-block p{margin:4px 0;font-size:14.5px}

/* 章末导航 */
.doc-nav{
  display:flex;justify-content:space-between;gap:14px;margin-top:44px;padding-top:22px;
  border-top:1px solid var(--line);flex-wrap:wrap;
}
.doc-nav a{
  border:1px solid var(--line);border-radius:10px;padding:10px 18px;background:#fff;
  font-size:14px;font-weight:700;color:var(--navy);max-width:46%;
}
.doc-nav a:hover{border-color:var(--gold);box-shadow:var(--shadow)}
.doc-nav a small{display:block;font-size:11px;color:var(--gray-light);font-weight:400}
.doc-nav .next{margin-left:auto;text-align:right}
