:root{color-scheme:light;--paper:#f5f3ed;--ink:#20262b;--muted:#566068;--line:#cdd2d1;--panel:#eaece8;--card:#fbfaf6;--accent:#a83f27;--focus:#b44328;--code:#eef0eb;--font:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font:16px/1.6 var(--font);color:var(--ink);background:var(--paper)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#111821;--ink:#edf0f2;--muted:#b4bec5;--line:#394750;--panel:#19232e;--card:#202d37;--accent:#f0a088;--focus:#f0a088;--code:#17222d}}
:root[data-theme=dark]{color-scheme:dark;--paper:#111821;--ink:#edf0f2;--muted:#b4bec5;--line:#394750;--panel:#19232e;--card:#202d37;--accent:#f0a088;--focus:#f0a088;--code:#17222d}
*{box-sizing:border-box}body{margin:0}html{scroll-padding-top:2rem}[hidden]{display:none!important}a{color:var(--accent);text-underline-offset:.22em}button,input,select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:.3rem}button,select{cursor:pointer;min-height:44px;padding:.45rem .7rem}button:hover{border-color:var(--accent)}input{min-height:44px;padding:.5rem;min-width:0}a,button,input,select,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:fixed;z-index:10;left:1rem;top:-5rem;padding:.8rem 1.2rem;background:var(--ink);color:var(--paper)}.skip-link:focus{top:1rem}.site-header{display:flex;gap:2rem;align-items:center;max-width:1500px;margin:auto;padding:1.2rem 2rem;border-bottom:1px solid var(--line)}.wordmark{font-size:2.1rem;letter-spacing:-.08em;font-weight:750;text-decoration:none;color:var(--ink);line-height:1}.wordmark span{color:var(--accent)}.site-header nav{display:flex;gap:1.4rem;align-items:center;flex:1;font-size:.88rem}.site-header nav a{color:var(--ink);text-decoration:none}.theme-label{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.theme-label select{min-height:40px}.docs-shell{max-width:1500px;margin:auto;display:grid;grid-template-columns:240px minmax(0,1fr);gap:3.25rem;padding:2rem}.docs-sidebar{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto;padding-right:1rem;font-size:.88rem}.docs-navigation>summary{font-weight:650;cursor:pointer;margin-bottom:1rem}.docs-sidebar nav{display:grid;gap:.15rem}.docs-sidebar a{display:block;text-decoration:none;color:var(--ink);padding:.45rem .6rem;border-radius:.25rem}.docs-sidebar a:hover,.docs-sidebar [aria-current=page]{background:var(--panel);color:var(--accent)}.nav-group{font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin:1.2rem 0 .35rem .6rem}.docs-sidebar form label{font-size:.75rem;color:var(--muted);display:block;margin-bottom:.4rem}.search-box{display:flex;gap:.25rem}.search-box input{width:100%;min-width:0}.search-box button{font-size:.75rem;padding:.35rem}.docs-content{min-width:0;max-width:960px}.breadcrumb{display:flex;flex-wrap:wrap;gap:.45rem;font-size:.75rem;color:var(--muted);margin-bottom:1rem}.breadcrumb a{color:var(--muted)}h1{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.055em;line-height:1.15;font-weight:600;margin:1.5rem 0}h2{font-size:1.5rem;line-height:1.25;letter-spacing:-.025em;margin:2.4rem 0 1rem}h3{font-size:1.15rem;margin:2rem 0 .8rem}h4{font-size:1rem}p,li{color:var(--muted)}p{margin:1rem 0}strong{color:var(--ink)}.heading-anchor{margin-left:.4em;opacity:.45;font-size:.65em;text-decoration:none}.heading-anchor:hover,.heading-anchor:focus{opacity:1}.page-contents{background:var(--panel);padding:.85rem 1rem;border:1px solid var(--line);border-radius:.4rem;margin-bottom:1.7rem}.page-contents summary{cursor:pointer;font-size:.8rem;font-weight:600}.page-contents nav{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;margin-top:.65rem;max-height:16rem;overflow:auto}.page-contents a{font-size:.78rem}.page-contents .toc-level-3{color:var(--muted)}pre{max-width:100%;overflow:auto;padding:1.2rem;border:1px solid var(--line);background:var(--code);border-radius:.35rem;font:.79rem/1.75 ui-monospace,SFMono-Regular,Consolas,monospace}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}p code,li code,td code{background:var(--code);border-radius:3px;padding:.12rem .25rem;overflow-wrap:anywhere}table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.85rem;margin:1.5rem 0}td,th{border-bottom:1px solid var(--line);padding:.7rem .6rem;vertical-align:top;text-align:left;overflow-wrap:anywhere}th{color:var(--ink)}td{color:var(--muted)}blockquote,.callout{margin:1.3rem 0;border-left:3px solid var(--accent);padding:.8rem 1.2rem;background:var(--panel)}img{max-width:100%;height:auto}.docs-content>p>img[src$=".svg"]{background:#fff;padding:.5rem;border-radius:.35rem}.reading-order{display:flex;justify-content:space-between;gap:1rem;margin:3rem 0 1.4rem;border-top:1px solid var(--line);padding-top:1.5rem}.reading-order a{text-decoration:none;max-width:48%;font-size:.95rem}.reading-order span{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.source-note{font-size:.73rem;color:var(--muted);border-top:1px solid var(--line);padding:1.4rem 0 3rem}.demo-card{margin:1.5rem 0 2rem;border:1px solid var(--line);border-radius:.4rem;background:var(--panel);overflow:hidden}.demo-poster{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#101822}.demo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;padding:.8rem}.demo-actions a{font-size:.8rem}.demo-card figcaption{font-size:.78rem;color:var(--muted);padding:.3rem .9rem .9rem}.demo-card iframe{width:100%;height:clamp(28rem,58vw,35rem);border:0;display:block;background:var(--paper)}.topic-index{padding-left:1.4rem}.topic-index li{margin:.45rem 0;font-size:.88rem}
@media(max-width:900px){.site-header{gap:1rem;padding:1rem}.site-header nav{flex-wrap:wrap;gap:.65rem;font-size:.8rem}.theme-label{display:grid;gap:0;font-size:.65rem}.docs-shell{grid-template-columns:1fr;gap:1.25rem;padding:1rem}.docs-sidebar{position:static;max-height:none;padding:0;border-bottom:1px solid var(--line);padding-bottom:1rem}.docs-sidebar nav{display:flex;flex-wrap:wrap;gap:.25rem}.docs-sidebar nav .nav-group{flex-basis:100%;margin-top:.7rem}.docs-sidebar a{font-size:.8rem;padding:.35rem .5rem}.docs-sidebar form{max-width:30rem}.docs-content{max-width:100%}.docs-navigation>summary{margin-bottom:.7rem}.page-contents{margin-bottom:1rem}h1{font-size:2.4rem}.demo-actions button{font-size:.85rem}pre{font-size:.73rem;padding:.8rem}td,th{padding:.55rem .35rem;font-size:.78rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

pre.docstring {white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font);font-size:.9rem}
/* Long source-derived API symbols must wrap instead of widening the document. */
h1,h2,h3,h4,.breadcrumb,.page-contents a {overflow-wrap:anywhere}

/* Technical prose and links may contain long slash-separated tokens.
 * Wrap them within the document; code blocks retain their own scroll area. */
.docs-content { overflow-wrap: anywhere; }
