This was really good! Tough, but quite fun, and replaying earlier phases rarely felt like a chore, since it's fun to find opportunities to deal lots of damage with the parry during those phases.
If I had one criticism it would be that it was really hard to gauge where exactly the player's hitbox is on their sprite, which is fairly important for dodging some of the harder patterns.