Handle \ on Windows, normalize to /