- convert_all_gems_to_perfect: revert to _open_cube_from_inventory() — cube lives
in character inventory, not stash PERSONAL tab
- After opening cube, switch to GEMS tab; ctrl+shift+click sends gems directly from
GEMS tab into the open cube without an inventory roundtrip
- testbed _gems_all: add left_inventory_ready() fallback so stash-open detection
works with new D2R UI (GoldBtnStash template doesn't match new UI)
Co-Authored-By: Claude Sonnet 4.6 <[email protected]>