.docs-root{--doc-bg: #000;--doc-bg-soft: #0a0a0f;--doc-fg: #c8d4dc;--doc-fg-dim: #6e7a82;--doc-accent: #00f0ff;--doc-accent-dim: #006e7a;--doc-accent-glow: rgba(0, 240, 255, .45);--doc-border: #00f0ff;--doc-border-dim: #062b32;--doc-grid: rgba(0, 240, 255, .04);--doc-mono: "JetBrains Mono", "IBM Plex Mono", "SF Mono", Menlo, Consolas, monospace;--doc-sans: "Inter", system-ui, sans-serif;position:fixed;inset:0;overflow:auto;background:radial-gradient(ellipse at top right,rgba(0,240,255,.04),transparent 50%),linear-gradient(transparent 95%,var(--doc-grid) 95%) 0 0 / 24px 24px,linear-gradient(90deg,transparent 95%,var(--doc-grid) 95%) 0 0 / 24px 24px,var(--doc-bg);color:var(--doc-fg);font-family:var(--doc-mono);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}.docs-root *{box-sizing:border-box}.docs-root .shell{max-width:1080px;margin:0 auto;padding:0 24px 60px}.docs-root .topbar{border-bottom:1px solid var(--doc-border-dim);padding:18px 0 14px;display:flex;justify-content:space-between;align-items:baseline;margin-bottom:28px;gap:1.4rem;flex-wrap:wrap}.docs-root .brand{font-family:var(--doc-sans);font-weight:500;font-size:1rem;letter-spacing:.04em}.docs-root .brand a{color:var(--doc-accent);text-shadow:0 0 8px var(--doc-accent-glow);text-decoration:none;border:0}.docs-root nav{display:flex;gap:1.4rem;font-size:.86rem;align-items:baseline}.docs-root nav a{color:var(--doc-fg-dim);text-decoration:none;border-bottom:1px solid transparent;transition:color .12s,border-color .12s}.docs-root nav a:hover,.docs-root nav a.active{color:var(--doc-accent);text-shadow:0 0 6px var(--doc-accent-glow)}.docs-root nav a.back{margin-left:1rem;border-left:1px solid var(--doc-border-dim);padding-left:1.4rem}.docs-root main{min-height:60vh}.docs-root .footer{border-top:1px solid var(--doc-border-dim);margin-top:60px;padding:20px 0 0;font-size:.8em;color:var(--doc-fg-dim)}.docs-root .footer a{color:var(--doc-accent);text-decoration:none}.docs-root.docs-root a{color:var(--doc-accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .12s}.docs-root.docs-root a:hover{border-bottom-color:var(--doc-accent);text-shadow:0 0 6px var(--doc-accent-glow)}.docs-root h1,.docs-root h2,.docs-root h3,.docs-root h4{font-family:var(--doc-sans);font-weight:500;letter-spacing:-.01em;color:var(--doc-fg)}.docs-root h1{font-size:1.75rem;margin:0 0 1rem}.docs-root h2{font-size:1.25rem;margin:2.5rem 0 .75rem;color:var(--doc-accent);border-bottom:1px solid var(--doc-border-dim);padding-bottom:.4rem}.docs-root h3{font-size:1rem;margin:1.5rem 0 .5rem}.docs-root h4{font-size:.86rem;margin:1.2rem 0 .4rem}.docs-root p{margin:.6rem 0;max-width:64ch}.docs-root ul,.docs-root ol{padding-left:1.4rem;max-width:64ch}.docs-root li{margin:.2rem 0}.docs-root code,.docs-root pre{font-family:var(--doc-mono);background:var(--doc-bg-soft);border:1px solid var(--doc-border-dim)}.docs-root code{padding:1px 5px;font-size:.9em}.docs-root pre{padding:.75rem 1rem;overflow-x:auto;line-height:1.45}.docs-root pre code{border:0;padding:0;background:transparent}.docs-root table{border-collapse:collapse;margin:1rem 0;font-size:.92em}.docs-root th,.docs-root td{text-align:left;padding:6px 12px;border:1px solid var(--doc-border-dim)}.docs-root th{color:var(--doc-accent);font-weight:500}.docs-root .hero{border:1px solid var(--doc-border-dim);padding:28px 32px;margin-bottom:36px;position:relative}.docs-root .hero:before{content:"";position:absolute;top:-1px;left:-1px;width:12px;height:12px;border-top:1px solid var(--doc-accent);border-left:1px solid var(--doc-accent)}.docs-root .hero:after{content:"";position:absolute;bottom:-1px;right:-1px;width:12px;height:12px;border-bottom:1px solid var(--doc-accent);border-right:1px solid var(--doc-accent)}.docs-root .hero h1{color:var(--doc-accent);text-shadow:0 0 12px var(--doc-accent-glow);margin:0 0 .4rem}.docs-root .hero .sub{font-size:.92em;color:var(--doc-fg-dim)}.docs-root .banner{border:1px dashed var(--doc-border-dim);padding:12px 16px;margin:1.5rem 0;font-size:.88em;color:var(--doc-fg-dim)}.docs-root .tag{display:inline-block;border:1px solid var(--doc-border-dim);color:var(--doc-fg-dim);padding:1px 8px;font-size:.72em;letter-spacing:.06em;text-transform:uppercase}.docs-root .tag.singleton{color:var(--doc-accent);border-color:var(--doc-accent-dim)}.docs-root .module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:18px;margin:1rem 0 2rem}.docs-root .mod-card{border:1px solid var(--doc-border-dim);background:var(--doc-bg);padding:16px 18px 18px;transition:border-color .16s,box-shadow .16s}.docs-root .mod-card:hover{border-color:var(--doc-accent);box-shadow:0 0 0 1px var(--doc-accent-glow),inset 0 0 24px #00f0ff0d}.docs-root .mod-card .head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--doc-border-dim);padding-bottom:6px;margin-bottom:10px}.docs-root .mod-card .name{font-family:var(--doc-sans);color:var(--doc-accent);font-size:1rem;letter-spacing:.02em}.docs-root .mod-card .name a{color:inherit}.docs-root .mod-card .cat{font-size:.72em;color:var(--doc-fg-dim);letter-spacing:.06em;text-transform:uppercase}.docs-root .mod-card .desc{font-size:.88em;color:var(--doc-fg);margin:0 0 10px}.docs-root .mod-card .ports{font-size:.78em}.docs-root .mod-card .ports h4{font-family:var(--doc-mono);font-size:.72em;font-weight:600;color:var(--doc-accent-dim);margin:8px 0 4px;letter-spacing:.08em;text-transform:uppercase}.docs-root .mod-card .ports table{width:100%;margin:0}.docs-root .mod-card .ports td{padding:3px 6px;font-size:.92em}.docs-root .mod-card .ports td:first-child{color:var(--doc-accent);white-space:nowrap;width:1%}.docs-root .mod-card .ports td:nth-child(2){color:var(--doc-fg-dim);white-space:nowrap;width:1%}.docs-root .mod-card .ports td:nth-child(3){color:var(--doc-fg)}.docs-root .mod-card .source-link{display:inline-block;margin-top:12px;font-size:.78em;color:var(--doc-fg-dim)}.docs-root .mod-card .source-link:hover{color:var(--doc-accent)}.docs-root .io-svg{width:100%;height:auto;display:block;margin:4px 0 10px;background:var(--doc-bg-soft);border:1px solid var(--doc-border-dim)}.docs-root .io-svg .box{fill:none;stroke:var(--doc-accent);stroke-width:1}.docs-root .io-svg .label-name{fill:var(--doc-accent);font-family:var(--doc-mono);font-size:9px}.docs-root .io-svg .label-type{fill:var(--doc-fg-dim);font-family:var(--doc-mono);font-size:8px}.docs-root .io-svg .header-text{fill:var(--doc-fg);font-family:Inter,sans-serif;font-size:12px;font-weight:500}.docs-root .io-svg .legend-text{fill:var(--doc-fg-dim);font-family:var(--doc-mono);font-size:8px}.docs-root .io-svg .pin-audio{stroke:var(--doc-accent);fill:var(--doc-accent)}.docs-root .io-svg .pin-cv{stroke:#ff8a00;fill:#ff8a00}.docs-root .io-svg .pin-gate{stroke:#ff3df0;fill:#ff3df0}.docs-root .io-svg .pin-pitch{stroke:#6effd6;fill:#6effd6}.docs-root .io-svg .pin-polyPitchGate{stroke:#a78bfa;fill:#a78bfa}.docs-root .cat-list{display:flex;gap:1.2rem;flex-wrap:wrap;margin:0 0 1rem;font-size:.86em}.docs-root .cat-list a{color:var(--doc-fg-dim)}.docs-root .cat-list a:hover{color:var(--doc-accent)}.docs-root section.cat-section{margin:2rem 0}.docs-root section.cat-section>h2{scroll-margin-top:80px}
