Act as a Creative Frontend Developer. Create a self-contained "Retro Pixel Art Editor" within a single `index.html` file using HTML5, Custom CSS (no Tailwind for this one), and Vanilla JavaScript. Core Requirements: 1. Canvas/Grid System: - Provide a way for the user to select the canvas resolution (e.g., 16x16 or 32x32). - Generate a pure DOM-based grid (using flexbox or CSS grid) where each cell acts as a pixel. 2. Drawing Tools: - A native color picker ``. - A "Draw" mode and an "Eraser" mode. - Continuous drawing: The user should be able to click, hold, and drag their mouse across the grid to color multiple cells smoothly (listen to mousedown, mouseenter, and mouseup events). 3. Utility Features: - A "Clear Canvas" button. - A "Download as PNG" button: Use HTML5 Canvas API in the background to draw the current state of the DOM grid and trigger a download of the resulting image. 4. Styling: - Give the app a nostalgic, retro aesthetic (pixelated fonts, boxy UI). Output the complete, fully functioning code in one single block. Ensure the mouse-drag drawing logic feels responsive and doesn't miss cells when the mouse moves quickly.