:root{
  --bg:#07090d; --bg2:#0d1117; --card:rgba(255,255,255,.035); --border:rgba(255,255,255,.08);
  --text:#e8edf5; --dim:#9aa4b2; --dim2:#5c6572;
  --green:#34d399; --cyan:#22d3ee; --blue:#60a5fa; --violet:#a78bfa; --amber:#fbbf24;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:"PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;font-size:14.5px;line-height:1.8}
a{color:inherit;text-decoration:none}
.top{display:flex;align-items:center;gap:18px;padding:13px 32px;border-bottom:1px solid var(--border);position:sticky;top:0;background:rgba(7,9,13,.8);backdrop-filter:blur(12px);z-index:20}
.top .logo{display:flex;align-items:center;gap:9px;font-weight:700;font-size:16px}
.top .logo img{width:30px;height:30px;border-radius:8px}
.top .logo small{color:var(--dim2);font-weight:400;font-size:11px;letter-spacing:2px}
.top .sp{flex:1}
.top a.l{color:var(--dim);font-size:13px}
.top a.l:hover{color:var(--cyan)}
.layout{display:flex;max-width:1200px;margin:0 auto;gap:0;min-height:calc(100vh - 60px)}
aside{width:230px;flex-shrink:0;padding:26px 14px;border-right:1px solid var(--border)}
aside .grp{font-size:11px;letter-spacing:2px;color:var(--dim2);padding:14px 14px 6px}
aside a{display:block;padding:8px 14px;border-radius:8px;color:var(--dim);font-size:13.5px;margin-bottom:2px;transition:all .15s}
aside a:hover{color:var(--text);background:rgba(255,255,255,.04)}
aside a.on{color:var(--green);background:rgba(52,211,153,.1)}
main{flex:1;padding:34px 40px 80px;min-width:0;max-width:820px}
.crumbs{color:var(--dim2);font-size:12px;margin-bottom:18px}
main h1{font-size:28px;font-weight:800;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:24px}
main h1 em{font-style:normal;background:linear-gradient(90deg,#34d399,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent}
main h2{font-size:19px;font-weight:700;margin:36px 0 12px;padding-left:12px;border-left:3px solid var(--green)}
main h3{font-size:15.5px;font-weight:600;margin:24px 0 8px;color:#c9d3e0}
main p{color:var(--dim);margin:10px 0}
main p b,main li b{color:var(--text);font-weight:600}
main ul,main ol{color:var(--dim);padding-left:22px;margin:10px 0}
main li{margin:6px 0}
main a{color:var(--cyan)}
code{font-family:Consolas,"Courier New",monospace;font-size:12.5px;background:rgba(34,211,238,.08);color:#7dd3fc;border:1px solid rgba(34,211,238,.15);border-radius:5px;padding:1.5px 7px;word-break:break-all}
.pre{background:#0b0f16;border:1px solid var(--border);border-radius:10px;padding:16px 18px;font-family:Consolas,monospace;font-size:12.5px;line-height:1.9;color:#9ecbff;overflow-x:auto;white-space:pre;margin:12px 0}
.pre .cm{color:var(--dim2)}
.pre .hl{color:#5eead4}
.tip{border:1px solid rgba(52,211,153,.3);background:rgba(52,211,153,.06);border-radius:10px;padding:12px 16px;color:#a7f3d0;font-size:13px;margin:14px 0}
.warn{border:1px solid rgba(251,191,36,.3);background:rgba(251,191,36,.06);border-radius:10px;padding:12px 16px;color:#fde68a;font-size:13px;margin:14px 0}
.steps-big{counter-reset:s;margin:16px 0}
.steps-big .st{position:relative;padding:0 0 26px 52px}
.steps-big .st::before{counter-increment:s;content:counter(s);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#34d399,#22d3ee);color:#04211a;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px}
.steps-big .st::after{content:"";position:absolute;left:15.5px;top:38px;bottom:4px;width:1px;background:var(--border)}
.steps-big .st:last-child::after{display:none}
.steps-big .st b{display:block;font-size:15px;margin-bottom:4px}
.steps-big .st p{margin:2px 0}
.pager{display:flex;gap:12px;margin-top:52px;padding-top:22px;border-top:1px solid var(--border)}
.pager a{flex:1;border:1px solid var(--border);border-radius:10px;padding:14px 18px;transition:all .15s}
.pager a:hover{border-color:rgba(34,211,238,.4)}
.pager a small{display:block;color:var(--dim2);font-size:11px}
.pager a b{color:var(--cyan);font-size:14px}
.pager a.next{text-align:right}
footer{text-align:center;color:var(--dim2);font-size:12px;padding:26px;border-top:1px solid var(--border)}
@media(max-width:860px){aside{display:none}main{padding:26px 20px 60px}.top{padding:12px 18px}}

