A die became untouchable — fixed once, then fixed for real
What changed
CI caught a die that couldn't be dragged: a tap aimed at it hit a signature rune button instead, silently casting a signature and spending Conviction. dd1c1c32 ranked the dice tray's zIndex (31) above the signature column's (30) and shipped inside PR #306. The same failure recurred in the very next verify-mobile run — zIndex only resolves within a shared stacking context, and react-native-web's default position: relative; z-index: 0 on the tray's parent View trapped the 31 inside its own context while the column floated as a sibling at the root level with an explicit 30, so the column always won regardless of the tray's internal ranking. c15f4119 moved SignatureColumn to render as the tray layer's own sibling inside content, making the 31-vs-30 comparison real in any browser's stacking-context resolution.
Why it changed
player-facing — the same frame is reachable in a real fight, where the cost is a mis-tap that silently spends Conviction. /fix-ci (run 34781667060) diagnosed and landed the real fix after the first attempt's reasoning turned out to be correct about the symptom but wrong about the mechanism.