*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 var(--font-sans)}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;height:56px;padding:0 24px;background:var(--ink);color:var(--text-on-ink);border-bottom:2px solid var(--gold)}
.top .logo{font:600 20px var(--font-serif);color:var(--text-on-ink);text-decoration:none;letter-spacing:.02em}
.top .sep{color:var(--text-on-ink-2)}.top .here{color:var(--text-on-ink-2)}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--ink-line);color:var(--text-on-ink);border-radius:4px;padding:4px 10px;font:inherit;font-size:13px}
.layout{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:1180px;margin:0 auto}
.side{position:sticky;top:56px;align-self:start;max-height:calc(100vh - 56px);overflow:auto;padding:24px 16px 40px 24px;border-right:1px solid var(--line)}
.side a{display:block;padding:4px 8px;color:var(--text-2);text-decoration:none;font-size:14px;line-height:1.4;border-radius:4px}
.side a.d2{margin-top:10px;color:var(--text);font-weight:600}.side a.d3{padding-left:20px;font-size:13px}
.side a:hover{background:var(--jade-wash);color:var(--ink)}
.doc{padding:32px 40px 96px;min-width:0}
.doc h1{font:600 34px/1.2 var(--font-serif);color:var(--ink);margin:0 0 12px}
.doc h2{font:600 24px/1.3 var(--font-serif);color:var(--ink);margin:48px 0 12px;padding-top:24px;border-top:1px solid var(--line)}
.doc h3{font:600 18px/1.4 var(--font-sans);color:var(--ink);margin:32px 0 8px}
.doc hr{display:none}.doc p,.doc li{max-width:78ch}
.anchor{margin-left:-1em;padding-right:.3em;color:var(--gold);text-decoration:none;opacity:0;font-weight:400}
h2:hover .anchor,h3:hover .anchor{opacity:1}
.doc a{color:var(--jade)}.doc strong{color:var(--ink)}
.doc code{font:13px var(--font-mono);background:var(--line-soft);padding:1px 5px;border-radius:3px}
.doc pre{background:var(--ink-deep);color:#E8EFEA;border-radius:6px;padding:16px 18px;overflow:auto;border-left:3px solid var(--gold);line-height:1.55}
.doc pre code{background:none;padding:0;color:inherit;font-size:13px}
.tbl{overflow-x:auto;margin:14px 0}.doc table{border-collapse:collapse;width:100%;font-size:14px;background:var(--surface)}
.doc th,.doc td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--line-soft);vertical-align:top}
.doc thead th{border-bottom:1px solid var(--line);color:var(--text-2);font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.hljs-string{color:#9FD8B8}.hljs-number,.hljs-literal{color:#E0BE6C}.hljs-keyword,.hljs-built_in{color:#8EC5E8}.hljs-comment{color:#8A9A92}.hljs-attr,.hljs-property{color:#F0D58C}
@media(max-width:860px){.layout{display:block}.burger{display:block}.top{padding:0 16px}.doc{padding:24px 16px 72px}
.side{display:none;position:fixed;inset:56px 0 0 0;max-height:none;background:var(--bg);z-index:4;border:0}body.nav-open .side{display:block}.anchor{display:none}}
