SCORE: 0
LVL: 1
LIVES: 3
``` ### Key Features of this Implementation: 1. **Visual Polish**: * **Neon Aesthetic**: Uses `shadowBlur` and `shadowColor` to create a glowing effect for the ball, paddle, and bricks. * **Particle System**: When a brick is destroyed, it triggers a burst of colorful particles that fade out, making the destruction feel satisfying. * **Smooth Animation**: Uses `requestAnimationFrame` for a consistent 60fps experience. 2. **Advanced Physics**: * **Dynamic Paddle Bounce**: Instead of just reversing the ball's direction, the ball's exit angle is determined by *where* it hits the paddle. Hitting the edge of the paddle sends the ball flying at a sharp angle, allowing for strategic shots. * **Collision Detection**: Precise rectangle-to-circle collision logic. 3. **Gameplay Mechanics**: * **Leveling System**: Clearing all bricks advances the level, which increases the ball speed and resets the board. * **Lives & Scoring**: A standard arcade loop of lives, score tracking, and game-over/win states. * **Responsive Controls**: Supports Mouse movement, Keyboard (via the logic, though mouse is primary), and Touch input for mobile devices. 4. **Technical Design**: * **Self-Contained**: Zero external images, CSS files, or JS libraries. Everything is drawn programmatically on the HTML5 Canvas. * **Performance**: Uses a lightweight particle array and efficient loop to ensure it runs smoothly even on lower-end devices.