
:root{--ink:#1f2328;--mut:#656d76;--line:#d8dee4;--acc:#0b5cad;--bg:#fff;--soft:#f6f8fa}
*{box-sizing:border-box}
body{margin:0;font:15px/1.75 -apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg)}
.wrap{max-width:920px;margin:0 auto;padding:0 20px}
a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}
.top{border-bottom:1px solid var(--line);background:var(--soft)}
.top-in{display:flex;align-items:center;justify-content:space-between;height:56px}
.brand{font-weight:700;color:var(--ink);font-size:16px}.brand span{color:var(--mut);font-weight:400;font-size:12px;margin-left:6px}
.nav a{margin-left:16px;color:var(--mut);font-size:14px}.nav a.on{color:var(--acc);font-weight:600}
.hero{padding:36px 0 8px}.hero h1{margin:0 0 10px;font-size:28px}.hero p{color:var(--mut);max-width:44em}
h2{font-size:20px;margin:36px 0 14px}h2 small{color:var(--mut);font-weight:400;font-size:13px;margin-left:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.card{border:1px solid var(--line);border-radius:8px;padding:14px 16px;display:block;color:var(--ink);background:var(--bg)}
.card:hover{border-color:var(--acc);text-decoration:none;box-shadow:0 1px 6px rgba(0,0,0,.06)}
.card-top{display:flex;gap:8px;align-items:baseline;margin-bottom:6px}
.num{font:700 12px/1 ui-monospace,monospace;color:#fff;background:var(--acc);border-radius:4px;padding:3px 7px}
.card-title{font-weight:600}.card p{margin:0;font-size:13px;color:var(--mut)}
table{border-collapse:collapse;width:100%;margin:8px 0}
th,td{border:1px solid var(--line);padding:8px 12px;text-align:left;vertical-align:top}th{background:var(--soft)}
code{background:var(--soft);border-radius:4px;padding:1px 5px;font-size:13px}
.toc{border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin:18px 0;background:var(--soft)}
.toc-t{font-weight:600;font-size:13px;margin-bottom:6px}
.toc a{display:block;color:var(--mut);font-size:13px;padding:1px 0}
.toc a.toc-3{padding-left:16px}
.main{padding-bottom:40px}
.foot{border-top:1px solid var(--line);color:var(--mut);font-size:13px;padding:18px 0;margin-top:40px}
.md pre{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow:auto}
.md img{max-width:100%}
