Chess on the ATmosphere checkmate.blue
chess

Clean up lexicons: add variant, remove challengerColor, enforce opponent master

- Add variant field to both game and challenge lexicons/types - Remove redundant challengerColor from challenge (color is already determined by the game record white/black fields) - Enforce opponent check on challenge acceptance so directed challenges can only be accepted by the intended player - Sync SPEC.md lexicon blocks with actual lexicon files (add lastMoveAt, variant; fix resultReason values)