Personally, if correctly configured (and with a strong password), I treat this setup as more secure than anything more complex that I could assemble for myself.
It’s very easy to accidentally screw up the configuration. Nginx is generally reverse-proxying some other server; if that server is exposed in any other way than via Nginx, your security is gone.
If you ever transmit the password over http (rather than https) by accident, your security is gone.
If you are somehow treating the three accounts as separate within the underlying application, I wouldn’t trust the security of that part; I only use nginx with htpasswd to gate security of single-user apps.
If you’re just serving static files, it’s harder to mess up and most of these comments don’t apply.
My experience has been that remote use of VS Code over SSH is completely seamless. I never had to install any packages or do anything to manage VS Code state on the server side. It handles everything itself.