> maybe the real problem here is that CSS can drastically change the visual order of elements.
Well yeah, that's exactly the problem, and this is the solution. There's no option here to stop CSS from being able to change visual order, that ship has sailed. So these properties provide a means to adjust reading order as well, so it matches the visual order.