diff --git a/plugin/contents/ui/dancer.html b/plugin/contents/ui/dancer.html
index c80ec7a..225e296 100644
--- a/plugin/contents/ui/dancer.html
+++ b/plugin/contents/ui/dancer.html
@@ -96,13 +96,6 @@ html, body {
0%, 100% { opacity: 0.75; }
50% { opacity: 1; }
}
-@keyframes horizonBeat {
- 0% { opacity: 1; box-shadow: 0 0 60px var(--theme-color, rgba(0,220,255,1)), 0 0 140px var(--theme-color, rgba(0,200,255,0.6)), 0 0 8px #fff; filter: brightness(2.5); }
- 100% { opacity: 0.75; box-shadow: 0 0 25px rgba(0,220,255,0.8), 0 0 80px rgba(0,200,255,0.25); filter: brightness(1); }
-}
-.horizon.beat {
- animation: horizonBeat 0.45s ease-out forwards;
-}
/* ============================================================
SPECTRUM VISUALIZER (behind character)
@@ -163,8 +156,8 @@ html, body {
position: absolute;
top: 4%;
right: 2%;
- width: 110px;
- height: 110px;
+ width: 220px;
+ height: 220px;
border-radius: 6px;
box-shadow: 0 0 18px rgba(0,0,0,0.8), 0 0 8px var(--theme-color, rgba(0,220,255,0.5));
transition: opacity 0.6s ease, box-shadow 0.6s ease;
@@ -999,27 +992,14 @@ for (let i = 0; i < VU_COUNT; i++) {
// Beat detection
const BASS_BARS = 4;
-const BEAT_THRESH = 1.5;
-const BEAT_COOLDOWN = 280;
-let bassSmooth = 0, bassEma = 0, lastBeat = 0;
+let bassSmooth = 0, bassEma = 0;
const beatWrap = document.querySelector('.beat-wrap');
const horizonEl = document.querySelector('.horizon');
-function triggerBeat() {
- horizonEl.classList.remove('beat');
- void horizonEl.offsetWidth;
- horizonEl.classList.add('beat');
-}
-
function detectBeat(vals) {
const bass = vals.slice(0, BASS_BARS).reduce((s, v) => s + v, 0) / BASS_BARS;
bassSmooth = bassSmooth * 0.6 + bass * 0.4;
bassEma = bassEma * 0.96 + bass * 0.04;
- const now = performance.now();
- if (bassSmooth > bassEma * BEAT_THRESH && bassSmooth > 8 && now - lastBeat > BEAT_COOLDOWN) {
- lastBeat = now;
- triggerBeat();
- }
}
// Called with semicolon-separated CAVA values (0–100 per bar)