/* DeepSeek Harness 学习课程 · 共享样式 */
:root{
  --bg:#f6f7f9; --card:#fff; --ink:#1f2937; --muted:#64748b; --line:#e5e7eb;
  --sc:#0e7490;
  --code-bg:#0f172a; --code-ink:#e2e8f0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif;background:var(--bg);color:var(--ink);line-height:1.85;font-size:15.5px}
.wrap{max-width:920px;margin:0 auto;padding:0 22px 70px}
a{color:#2563eb;text-decoration:none}
a:hover{text-decoration:underline}
p{margin:10px 0}
ul,ol{margin:8px 0;padding-left:24px}
li{margin:5px 0}

/* 页头 */
.hero{background:linear-gradient(135deg,#0f172a 0%,color-mix(in srgb,var(--sc) 50%,#0f172a) 100%);color:#e2e8f0;padding:40px 22px 30px;margin-bottom:32px}
.hero .inner{max-width:920px;margin:0 auto}
.hero .crumb{font-size:13px;color:#94a3b8;margin-bottom:14px}
.hero .crumb a{color:#7dd3fc}
.lbadge{display:inline-flex;align-items:center;gap:8px;font-family:ui-monospace,Consolas,monospace;font-size:13px;font-weight:700;background:var(--sc);color:#fff;border-radius:7px;padding:3px 12px;letter-spacing:.5px}
.hero h1{margin:14px 0 8px;font-size:27px;color:#fff;line-height:1.35}
.hero .sub{color:#a5bdd0;font-size:15px;margin:0}
.hero .meta{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}
.hero .meta span{font-size:12.5px;padding:2px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.22);color:#cbd5e1}

/* 章节 */
h2.sec{font-size:20px;margin:38px 0 4px;padding-left:12px;border-left:5px solid var(--sc);line-height:1.4}
h2.sec .en{font-size:12.5px;color:var(--muted);font-weight:400;margin-left:8px}
h3{font-size:16.5px;margin:26px 0 6px}
h4{font-size:15px;margin:20px 0 6px}

/* 提示框 */
.note{border-radius:11px;padding:14px 18px;margin:16px 0;font-size:14.5px;border:1px solid}
.note.info{background:#eff6ff;border-color:#bfdbfe}
.note.warn{background:#fffbeb;border-color:#fde68a}
.note.tip{background:#f0fdf4;border-color:#bbf7d0}
.note b:first-child{display:inline}

/* 术语卡 */
.terms{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;margin:16px 0}
.term-card{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--sc);border-radius:10px;padding:11px 14px;font-size:13.5px}
.term-card .t-name{font-weight:700;font-size:14px;margin-bottom:3px}
.term-card .t-name code{font-size:12.5px}
.term-card .t-plain{color:#475569}

/* 代码 */
code{font-family:ui-monospace,Consolas,"Courier New",monospace;font-size:.87em;background:#eef2f7;border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:#0f172a;white-space:nowrap}
pre{background:var(--code-bg);color:var(--code-ink);border-radius:11px;padding:16px 19px;overflow-x:auto;font-size:13px;line-height:1.75;margin:14px 0}
pre code{background:none;border:none;padding:0;color:inherit;white-space:pre;font-size:inherit}
pre .cm{color:#7c8db0}     /* 注释 */
pre .kw{color:#93c5fd}     /* 关键字 */
pre .st{color:#fdba74}     /* 字符串 */
pre .fn{color:#f0abfc}     /* 函数 */
pre .tag{color:#6ee7b7}    /* 高亮标记 */
.code-title{font-size:12.5px;color:var(--muted);margin:-6px 0 0 2px}

/* 表格 */
table.tbl{border-collapse:collapse;width:100%;background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden;font-size:14px;margin:14px 0}
table.tbl th{background:#f1f5f9;text-align:left;padding:9px 14px;font-size:12.5px;color:#334155;border-bottom:1px solid var(--line)}
table.tbl td{padding:9px 14px;border-bottom:1px solid #f1f5f9;vertical-align:top}
table.tbl tr:last-child td{border-bottom:none}
table.tbl code{white-space:nowrap}

/* 流程图 */
.flow{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin:16px 0}
.flow .fbox{background:#fff;border:1.5px solid var(--sc);border-radius:10px;padding:9px 13px;font-size:13.5px;text-align:center;flex:1;min-width:110px;display:flex;flex-direction:column;justify-content:center}
.flow .fbox b{color:var(--sc)}
.flow .fbox small{color:var(--muted);font-size:12px;line-height:1.5}
.flow .arr{align-self:center;color:var(--sc);font-size:18px;font-weight:700;flex:0 0 auto}

/* 对比卡 */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
@media(max-width:700px){.grid2{grid-template-columns:1fr}}
.cmp{border-radius:11px;padding:14px 17px;font-size:14px;border:1.5px solid}
.cmp.bad{border-color:#fca5a5;background:#fef2f2}
.cmp.good{border-color:#86efac;background:#f0fdf4}
.cmp h4{margin:0 0 8px;font-size:14.5px}
.cmp.bad h4{color:#b91c1c}.cmp.good h4{color:#15803d}

/* 练习 */
.exercise{background:#fff;border:2px dashed var(--sc);border-radius:13px;padding:18px 22px;margin:22px 0}
.exercise .ex-title{font-weight:700;font-size:15.5px;color:var(--sc);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.exercise ol,.exercise ul{margin:6px 0}
.exercise .expected{margin-top:10px;font-size:13.5px;color:var(--muted);border-top:1px dashed var(--line);padding-top:8px}

/* 自测 */
.quiz{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px 22px;margin:24px 0}
.quiz .q-title{font-weight:700;font-size:15.5px;margin-bottom:6px}
.quiz details{border:1px solid var(--line);border-radius:9px;padding:10px 15px;margin:8px 0;background:#fafbfc}
.quiz summary{cursor:pointer;font-weight:600;font-size:14px;color:#334155}
.quiz details .ans{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line);font-size:14px;color:#166534}

/* 参考与翻页 */
.refs{background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px 18px;margin:24px 0;font-size:13.5px;color:var(--muted)}
.refs b{color:#334155}
.pagenav{display:flex;justify-content:space-between;gap:12px;margin-top:36px}
.pagenav a{flex:1;background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 18px;font-size:14px;color:#334155}
.pagenav a:hover{border-color:var(--sc);text-decoration:none}
.pagenav .next{text-align:right}
.pagenav small{display:block;color:var(--muted);font-size:12px;margin-bottom:2px}
footer.copy{margin-top:30px;color:var(--muted);font-size:12.5px;border-top:1px solid var(--line);padding-top:14px}

/* 行内强调 */
.kw{font-weight:700;color:var(--sc)}
.duo{color:#475569}
.duo::before{content:"〔通俗〕";font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:0 4px;margin-right:5px;vertical-align:1px}
