3b2fb99b37
The PC id counter lived in a module-level let that reset to 0 on every page load. After rehydrating PCs from localStorage, the next create would hand out pc-1 again, colliding with an existing id. That broke React's keyed reconciliation and caused the wrong PC to be deleted (deletePlayerCharacter matches the first occurrence of the id, so deleting the new pc-1 would remove the rehydrated one instead). Derive the next id from the max numeric suffix of existing characters at the moment of creation. No more shared counter, so no more reset on reload and no collision after import.