This is pretty cool.
At first I thought "Just put the squares in a square, what could be more efficient?" but the solutions are quite interesting.
I understand that with the time limit not all nice-to-have features can be realized, but should you continue on this game: It'd be nice if you could lock squares in place, so that you don't knock them back and if the lock rotation also could work for 45° rotations.