:root{color-scheme:light dark;--canvas:#fffdf7;--surface:#f0f1e9;--ink:#233127;--muted:#58695c;--rule:#d1d7cc;--forest:#275840}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:16px/1.7 system-ui,sans-serif}a{color:var(--forest);text-underline-offset:3px}header,footer{padding:22px clamp(18px,5vw,70px);border-bottom:1px solid var(--rule)}header{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}header nav{display:flex;gap:20px;flex-wrap:wrap}.brand{font-size:1.2rem;font-weight:700;text-decoration:none}.docs-layout{max-width:1200px;margin:auto;padding:38px 24px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:50px}.docs-nav{position:sticky;top:20px;align-self:start}.docs-nav a{display:block;padding:8px 10px;text-decoration:none;border-radius:5px}.docs-nav a[aria-current=page]{background:var(--surface);font-weight:600}.docs-content{min-width:0;max-width:800px}.docs-content h1{font-size:clamp(2rem,4vw,2.8rem);line-height:1.15;margin-top:0}.docs-content h2{font-size:1.4rem;margin-top:2rem}.docs-content h3{font-size:1.1rem}.docs-content pre{overflow:auto;padding:18px;border:1px solid var(--rule);border-radius:7px;background:var(--surface);font-size:.84rem}.docs-content code{overflow-wrap:anywhere}.docs-content table{display:block;overflow:auto;border-collapse:collapse;font-size:.87rem;max-width:100%}th,td{padding:10px 12px;border:1px solid var(--rule);text-align:left;vertical-align:top}.docs-content p,.docs-content li{overflow-wrap:anywhere}.docs-source{margin:3rem 0 1rem;padding-top:1rem;border-top:1px solid var(--rule);font-size:.82rem;color:var(--muted)}a:focus-visible{outline:2px solid var(--forest);outline-offset:4px}.skip{position:absolute;left:10px;top:-100px}.skip:focus{top:10px;background:var(--canvas);padding:10px}@media(prefers-color-scheme:dark){:root{--canvas:#17251d;--surface:#22372a;--ink:#f5f6ec;--muted:#b7c6b5;--rule:#44604b;--forest:#b7d9b4}}@media(max-width:760px){.docs-layout{grid-template-columns:1fr;gap:24px;padding:24px 18px}.docs-nav{position:static;display:flex;overflow:auto;gap:8px;border-bottom:1px solid var(--rule);padding-bottom:14px}.docs-nav a{white-space:nowrap}header{padding:18px}.docs-content pre{max-width:100%}}