Changed - Command spy now respects a per-player toggle (permission still required).
- Reduced method complexity in `
ChatService` and `
RuleEngine` via helper extraction.
Added: - ChatColor2 compatibility: apply player chat colour (and `
&#RRGGBB`) when BubbleChat is rendering messages.
- New config toggles under `
chat.chatcolor2.*` to control ChatColor2 integration.
- Unit tests for `
TextSanitizer` hex/code handling.