## Description

<!-- What does this PR do? Why is this change needed? -->

## Type of change

- [ ] Bug fix
- [ ] New feature
- [ ] Refactoring (no behavior change)
- [ ] Documentation
- [ ] CI/CD
- [ ] Chromium patches

## Checklist

- [ ] `ruff check src/` passes
- [ ] `ruff format --check src/` passes
- [ ] Tests pass (`pytest`)
- [ ] Docs updated (if applicable)
- [ ] CHANGELOG.md updated (if user-facing change)
