.wrap{width:100%;max-width:min(860px, 92vw);margin:0 auto;padding:0 var(--gutter)}

.nav{
  position:fixed;top:0;left:0;right:0;z-index:60;
  background:color-mix(in srgb,var(--bg0) 90%,transparent);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
body{padding-top:64px}
section[id],h2[id],h3[id]{scroll-margin-top:82px}
.nav-in{display:flex;align-items:center;gap:18px;height:64px;max-width:min(1600px, 93vw);margin:0 auto}
.brand{display:flex;align-items:center;gap:11px;font-size:var(--fs-5);font-weight:var(--fw-bold);letter-spacing:-.4px}
.brand img{width:32px;height:32px;object-fit:contain;display:block}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:10px}
.back{font-size:var(--fs-3);font-weight:var(--fw-medium);color:var(--t2);padding:8px 12px;border-radius:var(--radius-sm);transition:.14s}
.back:hover{color:var(--t1);background:var(--bg3)}

.doc{padding:56px 0 80px}
.doc-h{padding-bottom:26px;border-bottom:1px solid var(--line2);margin-bottom:36px}
.doc-h h1{font-size:clamp(28px,4vw,38px);font-weight:var(--fw-bold);letter-spacing:-1.4px}
.doc-h .updated{font-size:var(--fs-2);color:var(--t3);margin-top:12px}
.doc-h .lede{font-size:var(--fs-4);color:var(--t2);line-height:1.75;margin-top:16px}

.toc{
  background:var(--bg2);border:1px solid var(--card-line);border-radius:var(--radius);
  padding:18px 20px;margin-bottom:40px;
}
.toc-h{font-size:var(--fs-1);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:1px;color:var(--t3);margin-bottom:12px}
.toc ol{margin:0;padding-left:20px;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
@media(max-width:640px){.toc ol{grid-template-columns:1fr}}
.toc a{font-size:var(--fs-3);color:var(--t2);transition:color .14s}
.toc a:hover{color:var(--brand)}
.toc li::marker{color:var(--t3);font-size:var(--fs-2)}

.doc section{margin-bottom:38px;scroll-margin-top:84px}
.doc h2{font-size:var(--fs-6);font-weight:var(--fw-semi);letter-spacing:-.4px;margin-bottom:14px}
.doc h3{font-size:var(--fs-4);font-weight:var(--fw-semi);margin:20px 0 8px}
.doc p{font-size:var(--fs-4);color:var(--t2);line-height:1.8;margin-bottom:14px}
.doc ul{margin:0 0 14px;padding-left:20px}
.doc li{font-size:var(--fs-4);color:var(--t2);line-height:1.8;margin-bottom:7px}
.doc li::marker{color:var(--t3)}
.doc b{color:var(--t1);font-weight:var(--fw-semi)}
.doc code{font-family:var(--mono);font-size:var(--fs-3);color:var(--brand)}
.doc a{color:var(--brand)}
.doc a:hover{text-decoration:underline}

.callout{
  display:flex;gap:12px;background:var(--brand-soft);border:1px solid var(--brand-line);
  border-left:3px solid var(--brand);border-radius:var(--radius-sm);
  padding:14px 16px;margin:24px 0;
}
.callout p{font-size:var(--fs-3);margin:0;color:var(--t2);line-height:1.7}

.doc-foot{border-top:1px solid var(--line);padding:26px 0;font-size:var(--fs-2);color:var(--t3)}
.doc-foot .wrap{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.doc-foot a{color:var(--t2)}
.doc-foot a:hover{color:var(--t1)}
.doc-theme{display:flex;align-items:center;margin-left:auto}
.doc-foot > .wrap > span{margin-left:0}
@media(max-width:560px){.doc-theme{margin-left:0}}
.doc-theme .theme-seg button{font-size:var(--fs-2);line-height:1}
