You can write styles at only apply in high-contrast or reduced-motion mode.
Use relative text sizes so you the user agent can use a value for the root font size that isn’t 16px.
Use buttons for buttons, links for links, and <dialog> for dialogs etc.
I’ve thought about just making more web apps that have nearly no styling, maybe just some layout, but otherwise relying on the user agent styles. That’s a ton of user customizability for FREE! And honestly, it usually doesn’t look that bad.