&crispyfont I spent too long figuring this out, but I finally got resizing and zoom working the way I want. By default zooming in the browser just scales everything up uniformly and gets blurry, but I wanted some elements to stay the same while some other text changes size. I only have 3 sizes of font currently, but it picks the one that's closest to the target size for the selected zoom (or a multiple of one of the sizes). That way it should stay aligned to the device pixels and look sharp. It's mostly working, so next step is to create some more font sizes