## What

Brief description of the change.

## Why

What problem does this solve? Link to the related issue: Fixes #

## How

How does this work? Anything non-obvious about the approach?

## Testing

How did you test this?

- [ ] Tested locally (fresh install)
- [ ] Tested locally (update from previous version)
- [ ] Added/updated tests
- [ ] Tested on mobile browser

## Checklist

- [ ] Code follows existing patterns and style
- [ ] No `console.log` left in production code
- [ ] TypeScript — no new `any` types without justification
- [ ] Commit messages follow conventional commits
