/* Local font bindings, independent behavior, accessible states and demo boundaries. */
@font-face{font-family:'Plex Mono';src:url('/assets/plex-mono.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--font-plex-sans:Plex;--font-plex-mono:'Plex Mono'}
body>.app{min-height:100vh}.app .body{flex:1;display:flex;align-items:stretch}.app .main{padding:28px 24px;min-width:0}.app .content{max-width:880px;margin:0 auto}.app .banner p{font-size:22px;line-height:1.08;font-weight:600}
.replica-note{max-width:64ch;font-size:12px;color:var(--ink-2);border-left:2px solid var(--line-2);padding-left:10px;margin:14px 0}.form-feedback:empty{display:none}.form-feedback{max-width:360px;font-size:13px;color:var(--proof)}.page-provenance{max-width:880px;margin:26px auto 0;font-size:11px;color:var(--ink-2)}
.sort-heading{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;white-space:nowrap}.sort-heading:hover{color:var(--ink)}th[aria-sort=ascending],th[aria-sort=descending]{color:var(--ink)}.docs-main pre{position:relative}.copy-code{position:absolute;top:7px;right:7px;font:11px/1.4 var(--font-sans);padding:3px 7px;background:var(--surface);border:1px solid var(--line-2);border-radius:5px;color:var(--ink-2);cursor:pointer}.copy-code:hover{color:var(--ink);border-color:var(--ink)}.docs-main pre code{display:block;padding-right:40px}.docs-toc a[aria-current=location]{color:var(--acc);border-left-color:var(--acc)}h1,h2,.step{scroll-margin-top:18px}.docs-main table{display:block;overflow-x:auto;max-width:100%}.docs-main table td,.docs-main table th{min-width:75px}.app input{min-width:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--acc);outline-offset:3px}button,a{touch-action:manipulation}.skip{top:-120px}.skip:focus{top:8px}pre{max-width:100%;overflow-x:auto}code{overflow-wrap:anywhere}.ptable{max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}.energy-grid.paused .energy-block{animation-play-state:paused}.motion-control{position:absolute;bottom:-24px;right:0;background:none;border:0;font-size:11px;color:var(--ink-2);cursor:pointer;padding:4px}.motion-control:hover{color:var(--ink)}.hero-viz{position:relative}.app footer code{font-family:var(--font-mono)}
@media(max-width:700px){.docs-main table{font-size:13px}.docs-main pre{font-size:12px}.docs-main pre code{padding-right:0}.copy-code{position:static;display:block;margin:0 0 8px auto}.page-provenance{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.energy-block,.engy-glow{animation:none!important}.motion-control{display:none}*{scroll-behavior:auto!important}}

.hero.motion-paused .engy-glow{animation-play-state:paused}
/* Shared shell breakpoints take precedence over page-specific source excerpts. */
@media(max-width:900px){.app .topbar{display:flex;flex-wrap:nowrap;min-width:0;padding:14px 16px}.app .topbar-end{display:contents}.app .topnotice{display:none}.app .topmenu{display:flex;flex-shrink:0;gap:14px;margin-left:auto}.app .topmenu a{margin-left:0;font-size:13px}.app .topbar-right{flex-shrink:0;gap:8px;margin-left:12px}.app .theme-toggle{width:27px;height:27px}.app .btn{padding:8px 12px;font-size:12px}}
@media(max-width:480px){.app .topbar{flex-wrap:wrap;row-gap:10px}.app .topmenu{order:3;justify-content:center;width:100%;margin-left:0}.app .topbar-right{margin-left:auto}}
