Weight behavior goes against the convention i.e. lighter weights don't float to the top as they should.
I created 2 tax types: Tax type A and Tax type B. I then created 2 tax rates: Tax rate 1 (type A) and tax rate 2 (type B). Initially, both tax types have a weight of '0'. In the checkout, by default, Tax 1 is displayed above Tax 2.
If, for some reason, I want Tax rate 2 to be displayed above Tax rate 1, logically I would assign e.g. '-5' to Tax type B so that it is lighter than Tax type A. But when I do that, nothing changes. When Tax type B weight is set to '+5' (compared to '0' for Tax type A), it then is displayed above Tax type A.