Very good! I'd say it's a finished game already.
The only issue that I had was with the movement inertia - most of the time I'd press the movement button and keep it pressing. And then, when I wanted to stop, I'd release it only to move one more unnecessary tile and die or take a color that I didn't want. I'd suggest to make controls more precise.
Puzzle designs made me think of the level dynamics. It's interesting how some of them looked simple, but were complex to solve, and others looked complex, but were very straightforward. Some of them contained several solutions. I think a player would need some sort of this dynamic, when levels do not just become more complicated, but from time to time allow the player to relax a little and do something simple and linear, even if it looks complicated. Nevertheless, it's surprising, like, what happened, did the game just gave up on making harder levels :)?
Very good job, solid work!