/* ===== Fourier · đèn LED sống theo sóng âm · MacBook ===== */
/* Lớp sáng nằm trên phím đang bật; độ đậm = --coc-snd (0…1) do FFT tính. Im lặng thì về 0. Chỉ đổi opacity nên rất nhẹ. */
body:not(.coc-compact) :is(#keyboard,#scaleKeyboard) .key:is(.active-lh,.active-rh,.active-sc,.playing-lh,.playing-rh,.playing-sc)::before{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:1;
  /* đèn LED hắt lên từ mép trước của phím + quầng màu lan ra hai bên */
  background:radial-gradient(ellipse 85% 34% at 50% 95%,rgba(255,248,227,.95),rgba(255,248,227,0) 72%),linear-gradient(180deg,rgba(255,248,227,0) 45%,rgba(255,248,227,.18) 100%);
  box-shadow:0 0 10px 2px var(--sky),0 0 24px 6px var(--sky);
  opacity:var(--coc-snd,0);will-change:opacity;
}
body:not(.coc-compact) :is(#keyboard,#scaleKeyboard) .key:is(.playing-lh,.playing-rh,.playing-sc)::before{opacity:var(--coc-snd,.7)}
body:not(.coc-compact) :is(#keyboard,#scaleKeyboard) .key:is(.active-sc,.playing-sc)::before{box-shadow:0 0 10px 2px rgba(232,80,63,.85),0 0 24px 6px rgba(232,80,63,.6)}
body:not(.coc-compact) :is(#keyboard,#scaleKeyboard) .key.active-sc:not(.playing-sc)::before{box-shadow:0 0 10px 2px var(--teal),0 0 24px 6px var(--teal)}
/* Chấm guitar: vầng sáng quanh hạt */
body:not(.coc-compact) .fretboard :is(.fb-dot:is(.root,.tone,.guitar-note-playing),.fb-mark.guitar-note-playing)::before{
  content:'';position:absolute;inset:-6px;border-radius:50%;pointer-events:none;
  box-shadow:0 0 16px 5px #b5321b,0 0 0 2px rgba(255,244,211,.9);
  opacity:var(--coc-snd,0);will-change:opacity;
}
body:not(.coc-compact) .fretboard .fb-dot.tone:not(.guitar-note-playing)::before{box-shadow:0 0 16px 5px var(--blue),0 0 0 2px rgba(255,244,211,.9)}
body:not(.coc-compact) .fretboard :is(.fb-dot,.fb-mark).guitar-note-playing::before{opacity:var(--coc-snd,.7)}
/* Công tắc hiệu ứng tắt (hoặc máy bật giảm chuyển động): không còn đèn, kể cả quầng tĩnh của phím đang phát */
html.coc-fx-off :is(#keyboard,#scaleKeyboard) .key::before,html.coc-fx-off .fretboard :is(.fb-dot,.fb-mark)::before{display:none}
