#performance .sp-panel{position:absolute;left:0;top:0;box-sizing:border-box;min-width:0;padding:10px;background:#203e50;border:1px solid #628ca0;border-radius:10px;color:white;overflow:auto;overscroll-behavior:contain;touch-action:pan-y}
#performance .sp-panel h3{font-size:16px;margin:0 0 4px;line-height:1.2}#performance #sp-name{font-size:14px;font-weight:bold;margin:0 0 6px;overflow-wrap:anywhere}
#performance #sp-empty,#performance #sp-hint{font-size:12px;line-height:1.25;margin:6px 0;color:#d9ecf4}
#performance #sp-wave{width:100%;height:34px;display:block;border-radius:5px;margin:0 0 6px}#performance #sp-wave[hidden]{display:none}
#performance .sp-panel button,#performance .sp-panel select{min-height:44px;font-size:13px;padding:6px;border-radius:7px;box-sizing:border-box}#performance #sp-preview,#performance #sp-mode{width:100%;background:#315e71;color:white}
#performance #sp-controls{padding:0;margin:5px 0;border:0;min-width:0}#performance .sp-label,#performance .sp-pitch-label{display:flex;align-items:center;justify-content:space-between;font-size:13px;min-height:22px;gap:6px}
#performance .sp-panel input[type=range]{display:block;width:100%;box-sizing:border-box;min-height:30px;margin:0;touch-action:pan-y}
#performance .sp-pitch-label label{flex:1}#performance #sp-reset{min-height:44px;background:#315e71;color:white;padding:4px 8px}
#performance .sp-playing-row{display:flex;gap:8px;padding:10px 4px;border-bottom:1px solid #4b6c7d;font-size:13px;overflow-wrap:anywhere}#performance .sp-playing-row>span:first-child{color:#a5e294}#performance .sp-playing-row small{display:block;color:#c5dfea;margin-top:3px}#performance .sp-queued>span:first-child{color:#ffd086}#performance .sp-idle{font-size:14px;color:#c5dfea}
#performance .sp-panel.sp-below{position:static;width:100%;max-width:600px;height:auto!important;max-height:470px;margin:16px auto 0}#performance .sp-below #sp-perform{max-height:320px;overflow:auto}
#performance .sp-panel button:focus-visible,#performance .sp-panel select:focus-visible,#performance .sp-panel input:focus-visible{outline:3px solid #ffdc83;outline-offset:1px}
#performance .sp-panel [disabled],#performance .sp-panel fieldset:disabled{opacity:.55}#performance .sp-panel [hidden]{display:none}
/* Three compact control rows; each input retains a 44px touch target. */
#performance #sp-controls{display:grid;grid-template-columns:66px minmax(0,1fr) 62px;gap:4px 6px;align-items:center}
#performance label[for=sp-volume]{grid-column:1;grid-row:1;display:block}#performance label[for=sp-volume] output{display:block}
#performance #sp-volume{grid-column:2/4;grid-row:1;min-height:44px}
#performance .sp-pitch-label{display:contents}#performance label[for=sp-pitch]{grid-column:1;grid-row:2;font-size:13px}#performance #sp-pitch-value{display:block}
#performance #sp-pitch{grid-column:2;grid-row:2;min-height:44px}#performance #sp-reset{grid-column:3;grid-row:2}
#performance label[for=sp-mode]{grid-column:1;grid-row:3}#performance #sp-mode{grid-column:2/4;grid-row:3}
