:root{--fg:#1b1f24;--muted:#57606a;--accent:#3b5bdb;--bg:#fff;--soft:#f6f8fa;--line:#d0d7de}
*{box-sizing:border-box}
body{margin:0;color:var(--fg);background:var(--bg);font:17px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
.site-header{position:sticky;top:0;z-index:1;background:#fffffff2;border-bottom:1px solid var(--line);padding:.6rem 1.25rem;display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;align-items:center;backdrop-filter:blur(6px)}
.brand{font-weight:700;color:var(--fg)}
.site-header ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem .9rem;font-size:.92rem}
.site-header a[aria-current]{color:var(--fg);font-weight:600;border-bottom:2px solid var(--accent)}
.doc{max-width:46rem;margin:0 auto;padding:1.5rem 1.25rem 2rem}
.doc h1{font-size:2rem;line-height:1.25;margin:1rem 0 1.25rem}
.doc h2{margin-top:2.2rem;padding-bottom:.25rem;border-bottom:1px solid var(--line)}
.doc h3{margin-top:1.6rem}
.doc li{margin:.25rem 0}
table{border-collapse:collapse;width:100%;font-size:.94rem;margin:1rem 0;display:block;overflow-x:auto}
th,td{border:1px solid var(--line);padding:.45rem .7rem;text-align:left;vertical-align:top}
th{background:var(--soft)}
code{font-size:.88em;background:var(--soft);padding:.1em .3em;border-radius:4px}
pre{background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:.9rem 1rem;overflow-x:auto;line-height:1.45}
pre code{background:none;padding:0}
figure.diagram{margin:2rem 0;padding:1rem;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:center}
figure.diagram img{max-width:100%;height:auto}
figure.diagram figcaption{color:var(--muted);font-size:.9rem;margin-top:.5rem}
details.source{margin:-1rem 0 1.5rem;font-size:.9rem}
details.source summary{cursor:pointer;color:var(--muted)}
.pager{max-width:46rem;margin:0 auto 3rem;padding:1rem 1.25rem;border-top:1px solid var(--line);display:flex;justify-content:space-between}
figure.diagram.tall img{width:24rem}
figure.diagram.wide{width:min(72rem,calc(100vw - 2rem));margin-left:50%;transform:translateX(-50%)}
figure.diagram.wide img{width:100%}
