Vite automatically rewrites code-split dynamic import calls with a preload step so that when A is requested, C is fetched in parallel instead of having an extra network roundtrip. On top of that, Vite automatically extracts the CSS used by modules in an async chunk and generates a separate file for it.