/* Docs site styles. Static, no build step. */
:root{--bg:#fff;--fg:#1f2933;--muted:#616e7c;--line:#e4e7eb;--accent:#2563eb;--code-bg:#f5f7fa;--side:#fafbfc;--warn:#fff7e6;--warn-line:#f5b942;--note:#eef5ff;--note-line:#7aa7f5}
@media (prefers-color-scheme:dark){:root{--bg:#14171c;--fg:#dde3ea;--muted:#9aa5b1;--line:#2b313a;--accent:#7aa7ff;--code-bg:#1d222a;--side:#171b21;--warn:#2b2414;--warn-line:#a37a1f;--note:#18243a;--note-line:#3d62a8}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:1rem}
body{margin:0;font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--fg);background:var(--bg)}
a{color:var(--accent)}
#layout{display:flex;min-height:100vh}
#sidebar{width:270px;flex:none;background:var(--side);border-right:1px solid var(--line);padding:1rem;position:sticky;top:0;height:100vh;overflow:auto;font-size:14px}
#sidebar h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1.2rem 0 .3rem}
#sidebar ul{list-style:none;margin:0;padding:0}
#sidebar a{display:block;padding:.15rem .4rem;border-radius:4px;text-decoration:none;color:var(--fg)}
#sidebar a:hover{background:var(--line)}
#sidebar a.current{font-weight:600;color:var(--accent)}
#sidebar .brand{font-weight:700;font-size:16px;display:block;margin-bottom:.5rem}
main{flex:1;max-width:860px;padding:2rem 2.5rem 6rem;min-width:0}
h1{font-size:2rem;margin-top:0}
h2{font-size:1.45rem;margin-top:2.6rem;padding-top:.8rem;border-top:1px solid var(--line)}
h3{font-size:1.15rem;margin-top:1.8rem}
h2 .anchor,h3 .anchor{opacity:0;margin-left:.4rem;text-decoration:none;font-weight:400}
h2:hover .anchor,h3:hover .anchor{opacity:1}
.lead{font-size:1.15rem;color:var(--muted)}
code{background:var(--code-bg);padding:.1em .35em;border-radius:4px;font:0.9em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
pre{background:var(--code-bg);border:1px solid var(--line);border-radius:6px;padding:.9rem 1rem;overflow:auto;position:relative;line-height:1.45}
pre code{background:none;padding:0;font-size:13.5px}
.copy{position:absolute;top:.4rem;right:.4rem;font-size:12px;padding:.15rem .5rem;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:4px;cursor:pointer}
table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:15px}
th,td{border:1px solid var(--line);padding:.4rem .6rem;text-align:left;vertical-align:top}
th{background:var(--code-bg)}
.note,.warning{padding:.7rem 1rem;border-left:4px solid var(--note-line);background:var(--note);border-radius:4px;margin:1rem 0}
.warning{border-color:var(--warn-line);background:var(--warn)}
#toc{border:1px solid var(--line);border-radius:6px;padding:.6rem 1rem;margin:1.5rem 0;background:var(--side)}
#toc ul{margin:.2rem 0;padding-left:1.2rem}
form.vars{border:1px solid var(--line);background:var(--side);border-radius:6px;padding:.8rem 1rem;margin:1rem 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.6rem 1rem}
form.vars legend{font-weight:600}
form.vars label{display:flex;flex-direction:column;font-size:13px;color:var(--muted)}
form.vars input{font:14px ui-monospace,Menlo,monospace;padding:.3rem .4rem;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--fg)}
.changelog li{margin:.3rem 0}
.changelog time{font-weight:600;margin-right:.5rem}
@media (max-width:800px){#layout{display:block}#sidebar{position:static;width:auto;height:auto}main{padding:1rem}}
@media print{#sidebar,.copy{display:none}main{max-width:none}}
