When people talk about a single plain HTML file, it implies that all markup and code is contained in the file and no libraries are being used

No it doesn't

Yes it does