.disco-panel{display:none;color:#ece2fc}.speedtest-bench[data-style=disco] .disco-panel{display:block;margin:24px 0;padding:24px;border:1px solid #8e69b4;border-radius:20px;background:linear-gradient(140deg,#25172f,#111424)}
.speedtest-bench[data-style=disco] .speedtest-instruments,.speedtest-bench[data-style=disco] .bloat-instrument{display:none}.speedtest-bench[data-style=disco] .bloat-panel{grid-template-columns:1fr}
.disco-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.disco-heading p{font:700 .6rem monospace;letter-spacing:.2em;color:#c9a8da!important;margin:0 0 7px!important}.disco-heading h2{font:500 clamp(1.5rem,3vw,2.3rem) Georgia!important;color:#fae6ff!important;margin:0!important}.disco-badge{border:1px solid #dd83c1;border-radius:30px;padding:10px 16px;font:700 .65rem monospace;color:#ffc8e5}
.disco-panel #disco-status{font-size:.85rem;color:#d1bddd!important;margin:18px 0}.disco-sound{display:flex;align-items:center;gap:8px;color:#d1bddd;font-size:.85rem;margin-bottom:16px}.disco-sound input{width:auto;margin:0}
.disco-scene{width:100%;display:block;border:1px solid #766188;border-radius:16px;overflow:hidden}.disco-label{font:700 10px monospace;fill:#141020;letter-spacing:.4px}.disco-small{font:700 7px monospace;fill:#171322}.disco-neon{font:700 23px monospace;filter:drop-shadow(0 0 9px currentColor)}
.disco-vinyl{animation:disco-spin 1.8s linear infinite;animation-play-state:paused}.disco-panel[data-motion=true][data-phase=download] [data-deck=download],.disco-panel[data-motion=true][data-phase=upload] [data-deck=upload]{animation-play-state:running}
.disco-ball{transform:translateY(-170px);transition:transform 2s ease}.disco-panel[data-overdrive=true] .disco-ball{transform:translateY(0)}.disco-spots{opacity:0;transition:opacity 2s}.disco-panel[data-overdrive=true] .disco-spots{opacity:1}.disco-spots>g{animation:disco-spots 7s ease-in-out infinite alternate;animation-delay:var(--spot-delay);transform-origin:550px 75px;animation-play-state:paused}.disco-panel[data-motion=true] .disco-spots>g{animation-play-state:running}
.disco-meter{opacity:.2;animation:disco-meter 1.2s ease-in-out infinite alternate;animation-delay:calc(var(--bar)*-.16s);animation-play-state:paused}.disco-panel[data-motion=true] .disco-meter{animation-play-state:running}.disco-fader{transition:y .5s ease}
.disco-readings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 0}.disco-readings>div{padding:16px 12px;background:#141020;border:1px solid #665077;border-radius:10px;min-width:0}.disco-readings dt{font:600 .65rem monospace;letter-spacing:.1em;text-transform:uppercase;color:#c3aacb}.disco-readings dd{margin:8px 0 0;font:500 clamp(.9rem,2vw,1.5rem) Georgia;color:#fae5ff;overflow-wrap:anywhere}.disco-panel .disco-note{font-size:.72rem;line-height:1.6;color:#bcaac9!important}
@keyframes disco-spin{to{transform:rotate(360deg)}}@keyframes disco-spots{to{transform:rotate(12deg)}}@keyframes disco-meter{to{opacity:.95}}
@media(max-width:650px){.speedtest-bench[data-style=disco] .disco-panel{padding:16px 9px}.disco-readings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.disco-panel *{animation:none!important;transition:none!important}}
.disco-arm{transform:rotate(-25deg);transition:transform .8s ease}
.disco-panel[data-state=running][data-phase=download] [data-arm=download],.disco-panel[data-state=running][data-phase=upload] [data-arm=upload]{animation:disco-arm-travel var(--record-duration,10s) linear forwards;animation-play-state:paused}
.disco-panel[data-motion=true][data-phase=download] [data-arm=download],.disco-panel[data-motion=true][data-phase=upload] [data-arm=upload]{animation-play-state:running}
@keyframes disco-arm-travel{0%{transform:rotate(-25deg)}8%{transform:rotate(0deg)}100%{transform:rotate(20deg)}}
@media(prefers-reduced-motion:reduce){.disco-panel[data-state=running][data-phase=download] [data-arm=download],.disco-panel[data-state=running][data-phase=upload] [data-arm=upload]{transform:rotate(10deg)}}
.disco-mirror-tiles{animation:disco-ball-turn 12s linear infinite;animation-play-state:paused}
.disco-reflections{opacity:0;transition:opacity 2s}.disco-panel[data-overdrive=true] .disco-reflections{opacity:1}
.disco-ball-colour{animation:disco-spots 7s ease-in-out infinite alternate;animation-delay:var(--spot-delay);transform-origin:550px 75px;animation-play-state:paused;mix-blend-mode:screen}
.disco-moving-glint{animation:disco-glint-travel 7s ease-in-out infinite alternate;animation-play-state:paused}
.disco-panel[data-motion=true][data-overdrive=true] .disco-mirror-tiles,.disco-panel[data-motion=true][data-overdrive=true] .disco-ball-colour,.disco-panel[data-motion=true][data-overdrive=true] .disco-moving-glint{animation-play-state:running}
@keyframes disco-ball-turn{to{transform:translateX(-96px)}}
@keyframes disco-glint-travel{to{transform:translate(30px,8px);opacity:.45}}
@media(prefers-reduced-motion:reduce){.disco-panel .disco-mirror-tiles,.disco-panel .disco-ball-colour,.disco-panel .disco-moving-glint{animation:none!important;transition:none!important}}
.disco-neon{letter-spacing:4px}
.disco-deck-frame,.disco-rim{transition:filter .45s,stroke .45s}.disco-deck[data-fast=true] .disco-deck-frame{stroke:var(--deck-glow);filter:drop-shadow(0 0 8px var(--deck-glow))}.disco-deck[data-fast=true] .disco-rim{filter:drop-shadow(0 0 7px var(--deck-glow));stroke-width:5px}
.disco-neon[data-fast=true]{filter:drop-shadow(0 0 5px currentColor) drop-shadow(0 0 12px currentColor)}[data-channel-label=download]{color:#ff68b8}[data-channel-label=upload]{color:#59e3ee}
#disco-download[data-fast=true]{color:#ff9bd0;text-shadow:0 0 8px #ff68b8,0 0 18px #ff68b888}#disco-upload[data-fast=true]{color:#a1faff;text-shadow:0 0 8px #59e3ee,0 0 18px #59e3ee88}
