- Add M PLUS 1 variable weight font (100-900) to src/renderer/fonts/
- Add @font-face declaration in style.css
- Update default fontFamily for primary and secondary subtitles
- Add macOS (Hiragino Sans) and Windows (Yu Gothic) fallbacks
- Update build script to copy fonts dir to dist/renderer/
Share config discovery logic between main and launcher so XDG/home and SubMiner/subminer precedence stay consistent. Add regression tests for resolution order and keep config path/show behavior stable.
Remove configurable isLapis sentence/audio field overrides so sentence cards always map to Sentence and SentenceAudio. Update types and docs to reflect the simplified config surface.
Detach --background launches from terminals with quieter runtime output, make wrapper/plugin overlay start explicit, and allow trailing commas in JSONC configs for safer hot-reload edits. Includes pending Anki/docs/backlog updates in this unreleased batch.
- map segmented Yomitan lines into single logical tokens and improve candidate selection heuristics
- limit frequency lookup to selected token text with POS-based exclusions and add debug logging hook
- add standalone Yomitan parser test script, deterministic utility-script shutdown, and docs/backlog updates
- Extract remaining runtime helper clusters from main.ts into dedicated modules for readability:\n - src/main/jlpt-runtime.ts\n - src/main/media-runtime.ts\n - src/main/overlay-visibility-runtime.ts\n- Wire main.ts to use the new runtime services and remove duplicated in-file helpers.\n- Preserve existing behavior via full typecheck + test:fast verification.\n- Finalize and archive TASK-56 backlog entry; update TASK-54 with completion metadata and summary.