/* doc.css —— 流程副驾 详情页 / 架构页 专用「干净文档风」（独立于 portfolio 的 vCard 样式） */
*{box-sizing:border-box}
:root{
  --bg:#ffffff; --text:#242019; --ink:#34302A; --muted:#6E675C; --faint:#A49C8E;
  --line:#EDE9E0; --line-2:#E0DACE; --accent:#3A352F; --accent-soft:#F1EEE7;
  --code-bg:#F5F3EE; --panel:#FAF8F3;
  --mono:"SF Mono",ui-monospace,"JetBrains Mono",Menlo,monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);
  font-size:15px;line-height:1.78;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

.doc-wrap{display:flex;max-width:1440px;margin:0 auto;align-items:flex-start}

/* ── 左侧目录 ── */
.toc{position:sticky;top:0;flex:0 0 258px;height:100vh;overflow-y:auto;
  padding:34px 18px 64px;border-right:1px solid var(--line)}
.toc .brand{font-size:13.5px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.toc .brand .en{color:var(--muted);font-weight:500}
.toc .back{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--ink);font-weight:600;
  margin:8px 0 22px;padding:6px 13px;border:1px solid var(--line-2);border-radius:8px;background:var(--panel)}
.toc .back:hover{color:var(--text);border-color:var(--faint);background:var(--accent-soft);text-decoration:none}
/* 移动端固定悬浮返回（目录隐藏时兜底） */
.back-fab{display:none;position:fixed;top:12px;left:12px;z-index:50;align-items:center;gap:5px;
  font-size:13px;font-weight:600;color:var(--text);background:#fff;border:1px solid var(--line-2);
  border-radius:20px;padding:7px 15px;box-shadow:0 3px 12px rgba(60,50,40,.14)}
@media(max-width:880px){.back-fab{display:inline-flex}}
.toc nav ul{list-style:none;margin:0;padding:0}
.toc nav > ul > li{margin:1px 0}
.toc nav > ul > li > a{display:block;padding:5px 10px;border-radius:6px;font-size:13.5px;
  color:var(--text);font-weight:500;border-left:2px solid transparent;line-height:1.5}
.toc nav ul ul{margin:1px 0 5px}
.toc nav ul ul a{display:block;padding:3px 10px 3px 22px;font-size:12.5px;color:var(--muted);
  border-left:2px solid transparent;line-height:1.5;border-radius:5px}
.toc nav a:hover{background:var(--accent-soft);text-decoration:none}
.toc nav a.active{color:var(--accent);background:var(--accent-soft);border-left-color:var(--accent);font-weight:600}

/* ── 正文 ── */
.doc-main{flex:1 1 auto;min-width:0;max-width:1080px;padding:46px 68px 110px}
.doc-head h1{font-size:29px;font-weight:700;letter-spacing:-.015em;margin:0 0 9px}
.doc-head .sub{font-size:15.5px;color:var(--muted);margin:0 0 18px;line-height:1.7}
.doc-meta{display:flex;flex-wrap:wrap;gap:9px 20px;font-size:13px;color:var(--muted);
  padding-bottom:22px;border-bottom:1px solid var(--line)}
.doc-meta b{color:var(--text);font-weight:600}
.doc-meta .pill{font-size:11.5px;color:var(--accent);background:var(--accent-soft);border-radius:5px;padding:2px 9px}

section.s{padding-top:38px;scroll-margin-top:16px}
section.s > h2{font-size:21px;font-weight:650;margin:0 0 13px;letter-spacing:-.01em}
section.s h3{font-size:16.5px;font-weight:600;margin:28px 0 9px;color:var(--text);scroll-margin-top:16px}
section.s h2 .n,section.s h3 .n{color:var(--faint);font-weight:600;margin-right:11px;font-variant-numeric:tabular-nums}
section.s p{margin:0 0 13px;color:var(--ink)}
section.s p b,section.s li b{color:var(--text);font-weight:600}
section.s ul{margin:6px 0 14px;padding-left:0;list-style:none}
section.s ul li{position:relative;padding-left:19px;margin:7px 0;color:var(--ink)}
section.s ul li::before{content:"";position:absolute;left:3px;top:11px;width:5px;height:5px;border-radius:50%;background:var(--faint)}

/* note 框（克制，只一条左竖线） */
.note{border-left:3px solid var(--accent);background:var(--panel);padding:13px 17px;
  border-radius:0 8px 8px 0;margin:15px 0;font-size:14px;color:var(--ink)}
.note .nt{font-size:11.5px;font-weight:700;color:var(--accent);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.note p{margin:0}

/* Agent 详解：目标用户 / 场景 / 功能架构 / 信息处理链路（定义式，无边框） */
dl.ag{margin:12px 0 4px;display:grid;grid-template-columns:98px 1fr;gap:10px 16px}
dl.ag dt{font-weight:600;color:var(--muted);font-size:13.5px;padding-top:1px}
dl.ag dd{margin:0;color:var(--ink)}
dl.ag dd.chain b{color:var(--text);font-weight:600}
dl.ag dd .llm{font-size:11.5px;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:0 5px;white-space:nowrap}
@media(max-width:560px){dl.ag{grid-template-columns:1fr;gap:3px 0}dl.ag dt{margin-top:9px}}

/* 模块「场景 / Agent / 确定性」三行 */
.triple{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin:10px 0 6px}
.triple .r{display:flex;gap:14px;padding:11px 16px;border-top:1px solid var(--line);font-size:13.5px}
.triple .r:first-child{border-top:0}
.triple .r .k{flex:0 0 62px;font-size:12px;font-weight:600;color:var(--muted);padding-top:1px}
.triple .r .v{color:var(--ink)}
.triple .r .v b{color:var(--text)}

/* 图 */
figure.fig{margin:18px 0;border:1px solid var(--line);border-radius:11px;padding:22px 20px 12px;background:var(--panel)}
figure.fig svg{display:block;width:100%;height:auto}
figure.fig .cap,figure.shot .cap{font-size:12.5px;color:var(--muted);text-align:center;margin-top:12px}
figure.shot{margin:16px 0;border:1px solid var(--line);border-radius:11px;padding:8px;background:var(--panel)}
figure.shot img{display:block;width:100%;border-radius:7px;cursor:zoom-in;transition:opacity .15s}
figure.shot img:hover{opacity:.9}

/* 点击放大 · 灯箱 */
.lb{position:fixed;inset:0;z-index:99;background:rgba(20,16,12,.86);display:none;
  align-items:center;justify-content:center;padding:28px;cursor:zoom-out;backdrop-filter:blur(2px)}
.lb.on{display:flex}
.lb img{max-width:96vw;max-height:92vh;border-radius:8px;box-shadow:0 10px 50px rgba(0,0,0,.5)}
.lb .x{position:fixed;top:18px;right:24px;color:#fff;font-size:30px;line-height:1;opacity:.8;cursor:pointer}
.lb .x:hover{opacity:1}
figure.shot .ph{min-height:148px;border:1.5px dashed var(--line-2);border-radius:7px;display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--muted);
  font-size:12.5px;text-align:center;padding:18px;background:#fafbfc}
figure.shot .ph b{color:var(--text);font-size:13px}
figure.shot .ph code{font-family:var(--mono);font-size:11px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:4px;padding:1px 6px}
.shot-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.shot-grid figure.shot{margin:0}

/* 表 */
table.dt{width:100%;border-collapse:collapse;font-size:13.5px;margin:10px 0 14px}
table.dt th,table.dt td{text-align:left;padding:9px 14px;border:1px solid var(--line);vertical-align:top}
table.dt th{background:var(--code-bg);font-weight:600;font-size:12.5px;color:var(--muted)}
table.dt td{color:var(--ink)}

/* 量化结果 */
.stats{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}
.stats .st{flex:1 1 150px;border:1px solid var(--line);border-radius:10px;padding:15px 16px;background:var(--panel)}
.stats .st .big{font-size:20px;font-weight:700;color:var(--text)}
.stats .st .big.dim{color:var(--faint)}
.stats .st .k{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.55}

/* 跳转技术架构页 */
.gonext{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border:1px solid var(--line-2);
  border-radius:11px;padding:16px 18px;margin:18px 0;background:var(--accent-soft)}
.gonext .gx{flex:1;min-width:210px;font-size:13.5px;color:var(--ink)}
.gonext .gx b{color:var(--text)}
.gonext a.b{font-size:13px;font-weight:600;color:#fff;background:var(--accent);border-radius:7px;padding:9px 17px;white-space:nowrap}
.gonext a.b:hover{text-decoration:none;opacity:.92}

/* 行内 code + 管线 ASCII 块 */
section.s code{font-family:var(--mono);font-size:12.5px;background:var(--code-bg);border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:var(--ink)}
.arch-flow{font-family:var(--mono);font-size:12.5px;line-height:1.75;white-space:pre;overflow-x:auto;
  background:var(--code-bg);border:1px solid var(--line);border-radius:9px;padding:14px 16px;color:var(--ink);margin:13px 0}

/* 技术栈标签 */
.tags2{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.tags2 .t{font-size:12.5px;color:var(--muted);background:var(--code-bg);border:1px solid var(--line);border-radius:20px;padding:4px 12px}

@media (max-width:880px){
  .toc{display:none}
  .doc-main{max-width:none;padding:30px 18px 80px}
}
@media (max-width:680px){
  .shot-grid{grid-template-columns:1fr}
}
