Frontend: - Fix smart_select.js to properly render mask overlay - Add marching ants border around selection - Calculate selection bounds from mask - Trigger re-render after mask is loaded Backend: - Fix inpaint endpoint to call edit_image() instead of inpaint() - The AI providers use edit_image() method, not inpaint()