:root{--ink:#1f2933;--mut:#6b7280;--line:#e5e7eb;--bg:#f7f8fa;--card:#fff;--acc:#2563eb;--warn:#b45309;--warnbg:#fffbeb}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--ink);line-height:1.75}
.banner{background:var(--warnbg);color:var(--warn);text-align:center;font-size:13px;padding:6px 12px;border-bottom:1px solid #fde68a}
.wrap{max-width:860px;margin:0 auto;padding:24px 20px 64px}
nav.top{display:flex;gap:16px;flex-wrap:wrap;align-items:baseline;margin-bottom:20px;font-size:14px}
nav.top a{color:var(--acc);text-decoration:none}
nav.top a:hover{text-decoration:underline}
nav.top .crumb{color:var(--mut)}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:24px 28px;margin-bottom:20px}
h1{font-size:26px;line-height:1.4;margin:0 0 12px}
h2{font-size:20px;margin:28px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--line)}
h3{font-size:17px;margin:22px 0 8px}
h4{font-size:15px;margin:16px 0 6px}
a{color:var(--acc)}
table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px;display:block;overflow-x:auto}
th,td{border:1px solid var(--line);padding:6px 12px;text-align:left;white-space:nowrap}
th{background:#f3f4f6}
code{background:#f3f4f6;border-radius:4px;padding:1px 6px;font-size:.92em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
pre{background:#111827;color:#e5e7eb;border-radius:8px;padding:14px 16px;overflow-x:auto;font-size:13px}
pre code{background:none;color:inherit;padding:0}
blockquote{border-left:3px solid var(--line);margin:12px 0;padding:4px 16px;color:var(--mut)}
.meta{color:var(--mut);font-size:13px}
ul.grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
ul.grid li{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px}
ul.grid li a{font-weight:600;text-decoration:none}
ul.grid li p{margin:6px 0 0;font-size:13px;color:var(--mut)}
footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--line);color:var(--mut);font-size:13px;text-align:center}
.tag{display:inline-block;background:#eef2ff;color:#4338ca;border-radius:999px;padding:1px 10px;font-size:12px;margin-left:8px}
