/*!
 * Sonic — Sound · Audio · Acoustics
 * © 2026 Durand R. Begault & Michael Cohen. All rights reserved.
 */.rw{--rw-panel: #161a21;--rw-line: #262c37;--rw-ink: #dfe3ea;--rw-dim: #8b93a0;--rw-faint: #7f8794;--rw-btn: #222833;--rw-btn-line: #333b48;--rw-on: #3a4d6b;--rw-on-line: #4f6a94;color:var(--rw-ink);outline:none}.rw h3{font-size:13px;letter-spacing:.01em;color:#c3c9d4;margin:0 0 10px;font-weight:600}.rw .rw-note{font-size:11px;color:var(--rw-faint);line-height:1.5;font-weight:400}.rw .rw-steprow{margin-top:6px;opacity:.95}.rw .rw-steprow .rw-boxlabel{font-style:italic}.rw .rw-steprow .rw-cellwrap{border-top:1px dashed var(--rw-faint);padding-top:4px}.rw .rw-stepcell{display:flex;align-items:center;justify-content:center;font-family:ui-monospace,Menlo,monospace;font-size:10px;font-weight:700;line-height:1;color:transparent;background:none;border:1px solid transparent;cursor:default}.rw .rw-stepcell.on{color:var(--rw-ink, #fff);background:var(--rw-faint);border-color:var(--rw-faint)}.rw .rw-stepnote{margin-top:4px}.rw .rw-stepcall{font-family:ui-monospace,Menlo,monospace;font-weight:700;letter-spacing:.06em}.rw .rw-btn.rw-stepadd{font-size:10px;padding:1px 6px;margin-left:4px;vertical-align:baseline}.rw .rw-kitspec{font-family:ui-monospace,Menlo,monospace;color:var(--rw-ink, inherit);font-weight:600}.rw .rw-mono{font-family:ui-monospace,Menlo,monospace}.rw .rw-panel{background:var(--rw-panel);border:1px solid var(--rw-line);border-radius:12px;padding:12px 14px;margin-bottom:14px}.rw .rw-top{margin-bottom:14px}.rw .rw-transport{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:var(--rw-panel);border:1px solid var(--rw-line);border-radius:12px;padding:12px 14px}.rw .rw-stage{display:grid;grid-template-columns:minmax(340px,1fr) minmax(300px,360px);gap:16px;align-items:start}.rw .rw-views{display:flex;flex-direction:column;gap:14px;min-width:0}.rw .rw-views .rw-gridpanel{margin-top:0}.rw .rw-wheel-card{max-width:560px;width:100%;align-self:center}.rw .rw-wheel-card{background:var(--rw-panel);border:1px solid var(--rw-line);border-radius:12px;padding:12px}.rw .rw-canvas{width:100%;height:auto;display:block;border-radius:10px;background:#0e1a26;touch-action:none;cursor:crosshair}.rw .rw-hud{font-size:11px;color:var(--rw-faint);line-height:1.5;margin-top:8px}@media (max-width: 1000px){.rw .rw-stage{grid-template-columns:1fr}.rw .rw-wheel-card{position:static;max-width:520px}}@media (max-width: 640px){.rw .rw-stage{gap:12px}.rw .rw-views{gap:10px}.rw .rw-wheel-card{max-width:none;padding:8px}.rw .rw-panel{padding:10px}.rw .rw-boxes,.rw .rw-score{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (orientation: landscape) and (max-height: 520px){.rw .rw-stage{grid-template-columns:minmax(280px,1fr) minmax(260px,320px);gap:10px}.rw .rw-wheel-card{max-width:46vh;padding:6px}.rw .rw-panel{padding:8px 10px}.rw .rw-side{max-height:none}}.rw button{font:inherit;font-size:12px;background:var(--rw-btn);color:var(--rw-ink);border:1px solid var(--rw-btn-line);border-radius:7px;padding:5px 9px;cursor:pointer}.rw button:hover{background:#2b3340}.rw button:focus-visible{outline:2px solid #6ea8e6;outline-offset:2px}.rw button.on,.rw button.active,.rw .rw-btn[aria-pressed=true]{background:var(--rw-on);border-color:var(--rw-on-line);color:#fff}.rw select,.rw input[type=text]{font:inherit;font-size:12px;background:var(--rw-btn);color:var(--rw-ink);border:1px solid var(--rw-btn-line);border-radius:7px;padding:4px 7px;max-width:100%}.rw input[type=range]{width:100%;accent-color:#5f9fe0}.rw .rw-lab{display:flex;flex-flow:row wrap;align-items:baseline;column-gap:6px;row-gap:2px;font-size:12px;color:#aeb4bf;min-width:0;padding-top:2px}.rw .rw-lab--inline{flex:1 1 12em}.rw .rw-val{font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--rw-dim);margin-left:auto}.rw .rw-lab>input,.rw .rw-lab>select{flex:1 0 100%;margin:1px 0 0}.rw .rw-grid2{row-gap:14px}.rw .rw-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px}.rw .rw-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px 12px}.rw .rw-transport .rw-lab{flex:1 1 130px}.rw .rw-transport .rw-play{min-width:5.5em}.rw .rw-status{margin-top:8px;font-size:11px;color:#9ccfa0;min-height:1.2em}.rw .rw-tracks{display:flex;flex-direction:column;gap:4px}.rw .rw-track{display:flex;align-items:center;gap:7px;padding:4px 6px;border-radius:7px;border:1px solid transparent}.rw .rw-track.sel{border-color:var(--rw-on-line);background:#3a4d6b47}.rw .rw-swatch{width:14px;height:14px;border-radius:4px;border:none;padding:0;flex:0 0 auto;cursor:pointer}.rw .rw-tname{font-size:12px;cursor:pointer;flex:1 1 auto}.rw .rw-tmeta{font-family:ui-monospace,Menlo,monospace;font-size:10px;color:var(--rw-faint)}.rw .rw-mini{font-size:10px;padding:2px 6px;border-radius:5px;line-height:1.4}.rw .rw-gridpanel{margin-top:16px}.rw .rw-boxes{display:flex;flex-direction:column;gap:6px}.rw .rw-boxrow{display:grid;grid-template-columns:5.5em 1fr;gap:8px;align-items:center;padding:3px 4px;border-radius:6px}.rw .rw-boxrow.sel{background:#3a4d6b38}.rw .rw-boxlabel{font-size:11px;font-family:ui-monospace,Menlo,monospace;text-align:right;overflow:hidden;text-overflow:ellipsis}.rw .rw-cells{display:grid;gap:4px}.rw .rw-cell{height:26px;min-width:0;padding:0;border-radius:4px;background:#1b212b;border:1px solid #2b3340}.rw .rw-cell.beat{border-color:#46536b}.rw .rw-cell:hover{filter:brightness(1.35)}@media (max-width: 640px){.rw .rw-boxrow{grid-template-columns:1fr}.rw .rw-boxlabel{text-align:left}.rw .rw-cell{height:20px}}.rw .rw-stats{width:100%;border-collapse:collapse;font-size:12px}.rw .rw-stats td{padding:3px 4px;vertical-align:top}.rw .rw-stats td:first-child{color:var(--rw-dim);white-space:nowrap;width:9.5em}.rw .rw-stats tr+tr td{border-top:1px solid rgba(255,255,255,.05)}.rw .rw-bank{display:inline-flex;align-items:center;gap:3px}.rw .rw-bankbtn{min-width:2.2em}.rw .rw-bankbtn.has{border-color:#5f9fe0;color:#cfe4fb}@media (prefers-reduced-motion: reduce){.rw *{transition:none!important}}.rw .rw-presets{max-height:320px;overflow-y:auto;overflow-x:auto;scrollbar-gutter:stable;padding-right:10px}.rw .rw-ptable th:last-child,.rw .rw-ptable td:last-child{padding-right:6px}.rw .rw-ptable{border-collapse:collapse;width:100%;font-size:12px}.rw .rw-ptable th,.rw .rw-ptable td{padding:1px 2px;text-align:center}.rw .rw-ptable thead th{position:sticky;top:0;background:var(--rw-panel);padding-bottom:4px;z-index:1}.rw .rw-pname{text-align:left;color:#aeb4bf;white-space:nowrap;padding-right:8px}.rw .rw-plen{font-family:ui-monospace,Menlo,monospace;font-size:10px;color:var(--rw-faint);margin-left:6px}.rw .rw-swatch--head{width:10px;height:10px;display:inline-block;margin:0 auto 2px}.rw .rw-pcolname{display:block;font-family:ui-monospace,Menlo,monospace;font-size:10px;color:var(--rw-faint)}.rw .rw-pcell{width:22px;height:20px;padding:0;border-radius:4px;font-size:11px;line-height:1;color:#0e1a26;background:#1b212b;border:1px solid #2b3340}.rw .rw-pcell:hover{filter:brightness(1.4)}.rw .rw-pcell.on{color:#0e1a26;font-weight:700;border-color:transparent}.rw .rw-ptable tbody tr:hover .rw-pname{color:#dfe3ea}.rw .rw-kits{margin-top:0}.rw .rw-kit{font-size:11px;padding:4px 8px}.rw [data-out=kithint]{margin-top:8px;min-height:1.2em}.rw .rw-ms{width:24px;height:22px;padding:0;flex:0 0 auto;background:var(--rw-btn);border:1px solid var(--rw-btn-line);border-radius:5px}.rw .rw-ms .harm-icon{font-size:13px}.rw .rw-cellwrap{position:relative;min-width:0}.rw .rw-boxhead{position:absolute;top:-2px;bottom:-2px;left:0;width:2px;border-radius:1px;opacity:0;pointer-events:none;will-change:transform}.rw .rw-cell.hit{filter:brightness(1.9);box-shadow:0 0 0 1px #ffffffbf}@media (prefers-reduced-motion: reduce){.rw .rw-boxhead{transition:none}}.rw kbd.rw-key{font-family:ui-monospace,Menlo,monospace;font-size:9px;line-height:1;padding:2px 4px;margin-left:5px;border-radius:3px;border:1px solid var(--rw-btn-line);background:#ffffff0f;color:var(--rw-faint);vertical-align:middle}.rw button.active kbd.rw-key{color:#ffffffbf}.rw .rw-track.primary{box-shadow:inset 3px 0 0 var(--rw-on-line)}.rw .rw-prow{background:none;border:none;padding:1px 3px;text-align:left;color:#aeb4bf;font:inherit;font-size:12px;width:100%;border-radius:4px}.rw .rw-prow:hover{background:#ffffff0f;color:#dfe3ea}.rw .rw-prow.active{background:var(--rw-on);color:#fff}.rw .rw-cell{transition:transform .12s ease}@media (prefers-reduced-motion: reduce){.rw .rw-cell{transition:none}}.rw .rw-selfview{position:absolute;top:20px;right:20px;width:108px;height:81px;object-fit:cover;border-radius:8px;border:1px solid var(--rw-on-line);background:#000;transform:scaleX(-1);z-index:2;box-shadow:0 4px 16px #00000080}.rw .rw-selfview[hidden]{display:none}@media (max-width: 640px){.rw .rw-selfview{width:76px;height:57px;top:16px;right:16px}}.rw .rw-clap-row{align-items:center;gap:.6rem}.rw .rw-clap-row .rw-btn.active{background:var(--rw-accent, #2a9d8f);color:#08131a}.rw .rw-family{flex-direction:column;align-items:flex-start;gap:.45rem}.rw .rw-family-lead{line-height:1.5}.rw .rw-family-btns{display:flex;flex-wrap:wrap;gap:.3rem}.rw .rw-btn-sm{padding:.18rem .5rem;font-size:.82em;min-width:2.1em}.rw .rw-fam-reich{border-color:#e9c46a;color:#e9c46a}.rw .rw-prow{display:flex;align-items:baseline;gap:.4rem}.rw .rw-pall{margin-left:auto;font-size:.72em;letter-spacing:.02em;opacity:.55;white-space:nowrap;font-family:var(--rw-mono, ui-monospace, monospace)}.rw .rw-prow:hover .rw-pall,.rw .rw-prow.active .rw-pall{opacity:.9}.rw .rw-pcell.part{color:#ffffffbf;font-weight:700}.rw .rw-score{color:var(--rw-ink, #cfd6e4);overflow-x:auto}.rw .rw-score-svg{width:100%;min-width:520px;height:auto;display:block}.rw .rw-kitview{color:var(--rw-ink, #cfd6e4)}.rw .rw-kit-svg{width:100%;max-width:460px;height:auto;display:block;margin:0 auto}.rw .rw-kit-piece{transition:none}.rw .rw-kit-piece.is-idle{opacity:.42}.rw .rw-kit-glow{filter:blur(6px)}.rw .rw-kit-piece{cursor:pointer}.rw .rw-kit-piece:focus-visible{outline:2px solid var(--rw-focus, #7dd3fc);outline-offset:2px}.rw .rw-kitgroup{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-bottom:7px}.rw .rw-kitgroup-name{flex:0 0 100%;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--rw-dim, #8892a6);margin-bottom:1px}.rw details.rw-kitgroup{display:block;margin-bottom:5px}.rw .rw-kitgroup-name{display:flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--rw-dim, #8892a6);padding:2px 0}.rw .rw-kitgroup-name::-webkit-details-marker{display:none}.rw .rw-kitgroup-name:before{content:"\25b8";font-size:.8em;transition:transform .12s ease}.rw details.rw-kitgroup[open]>.rw-kitgroup-name:before{transform:rotate(90deg)}.rw .rw-kitgroup-name:hover{color:var(--rw-ink, #cfd6e4)}.rw .rw-kitgroup-count{opacity:.6;font-variant-numeric:tabular-nums}.rw .rw-kitgroup-body{display:flex;flex-wrap:wrap;gap:4px;padding:3px 0 4px 12px}@media (prefers-reduced-motion: reduce){.rw .rw-kitgroup-name:before{transition:none}}.rw details.rw-kitsection{display:block;margin-bottom:6px}.rw .rw-kitsection-name{display:flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--rw-ink, #cfd6e4);padding:3px 0;border-bottom:1px solid var(--rw-rule, #2b3340)}.rw .rw-kitsection-name::-webkit-details-marker{display:none}.rw .rw-kitsection-name:before{content:"\25b8";font-size:.85em;transition:transform .12s ease}.rw details.rw-kitsection[open]>.rw-kitsection-name:before{transform:rotate(90deg)}.rw .rw-kitsection-name:hover{color:#fff}.rw .rw-kitsection-body{padding:4px 0 2px 10px}@media (prefers-reduced-motion: reduce){.rw .rw-kitsection-name:before{transition:none}}
