#useRef clear

R3F: passing ref.current as JSX prop gives static snapshot — animated child always invisible

R3F + Zustand: per-beat animations always static because setBeatProgress never called