45d74ce5d7
- pf2e classes now show the defining 1st-level choice (instinct / doctrine / bloodline / mystery / racket / implement / thesis / …) in the wizard's subclass picker, like 5e. Curated PF2E_SUBCLASSES in pf2e/progression.ts, merged into the class during the wizard's pf2e enrich step. - replaced every remaining native dialog with a themed Modal: - PlayerView session-password prompt → password Modal - Settings cloud-conflict confirm → "Use cloud / Keep this device" Modal - SessionControl host-password prompt → host Modal (optional password) - MapEditor text-label prompt → label Modal (captures the click point) No window.confirm / window.prompt / window.alert remain in the app. Realtime e2e updated for the host Modal (Host → Start hosting). Gate: 293 unit + 35 e2e + 2 realtime; tsc + app/server build clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>