Issue #3590939: Modernize block_visibility_groups for Drupal 10/11
Issue #3590939: Modernize block_visibility_groups for Drupal 10/11 with typing, attributes, and code cleanup
- Add return types and typed properties across the codebase for PHP 8+ compatibility
- Convert annotations to PHP attributes (ConfigEntityType, Condition)
- Refactor BlockVisibilityGroup entity with strict typing and improved method signatures
- Update service usage and dependency injection patterns (notably ConditionGroup)
- Normalize naming conventions (e.g., camelCase properties)
- Improve safety with null coalescing and explicit return values
- Update logging to use exception messages instead of objects
- Clean up docblocks, comments, and formatting to meet coding standards
- Remove dead code and outdated TODOs
- Update tests to align with new property access patterns
Closes #3590939