Upload a .fb2 file — all paragraphs will be numbered. Clicking a
paragraph sends a request to OpenRouter for translation and shows
the result below the original.
The first translation will ask for an API key and store it in
localStorage. Translations are cached
locally (per file/language/paragraph).