ImGui's SDL backend already applies the display density via
io.DisplayFramebufferScale (used by ImGui_ImplVulkan_RenderDrawData), but
the UI backend was additionally multiplying the same DPI ratio into the
font atlas size and theme geometry. On HiDPI displays this scaled the UI
twice, making it appear far too large.
Split the logical (point-space) UI scale from the display/framebuffer DPI
ratio: the font atlas is still rasterized at native DPI for crispness, but
applyThemeToImGui cancels it via FontGlobalScale so logical text/geometry
stay constant across display densities.