Downscaling in one step is why resized images look soft
Ask a browser to draw a 4000 pixel image into a 400 pixel box and it samples a small fraction of the source pixels — roughly one in ten — and discards the rest. Fine detail does not average out; it aliases into noise. This is why a resized logo often looks worse than the same logo exported at the right size from the original.
The fix is to go in stages: halve the image repeatedly until the last step is less than a factor of two, so each step averages neighbouring pixels properly. It costs a few milliseconds and the difference on text, edges and fine texture is plainly visible. That is what happens here on every resize, without a setting for it, because there is no case where the worse result is preferable.
Three ways to say what you want
Exact pixels is for when something has told you a number. The aspect lock keeps the other dimension in proportion as you type; switch it off only if you genuinely intend to distort the image, which is almost never.
Percentage is for when you just want it smaller and do not care about the exact figure. Halving is the safe default for a photo destined for the web.
Fit inside a box is for rules of the form "the longest edge must be under 1920". Portrait and landscape images both end up compliant without you having to work out which dimension is the constraint.
Enlarging, and why it disappoints
Making an image bigger cannot add detail that was never captured. Doubling a 400 pixel image produces a 800 pixel image containing 400 pixels of information and a great deal of interpolation — softer, not sharper. Modern upscaling models can hallucinate convincing detail, but that is a fundamentally different operation from resizing and it is not what any browser does natively.
If you need a larger version, going back to the original source is the only real answer. Where a small enlargement is unavoidable, keep it under about 150% and expect softness.
Everything here happens in this browser tab. The image is decoded, redrawn and re-encoded by the Canvas API on your own device, and the result is assembled in memory and handed to you as a download. Nothing is uploaded, which you can confirm in about fifteen seconds with the network panel open.