exportPdf gains a test seam: a window.__edentextPdfSink takes the bytes instead of doc.save(), whose download hangs in headless Chromium. The smoke test clicks the real export menu over the imported corpus document and asserts %PDF magic and a plausible size. The test browser is pinned to en-US so the labels it clicks are deterministic across machines.