This was really cool. I am brand new to Replit and this was the first game I have played on here. I was able to beat the cyclone on 3x3 after 1:23; I am pretty bad at these puzzles.
Nice! I think you've done a great job. Just a few suggestions - have you considered breaking your code into smaller chunks? script.js is 462 lines which is very long and difficult to follow. It would be better to use object classes.
Also, it's better to use document.querySelector and document.querySelectorAll instead of getElementById