Split the entry function into a public reentrant entry that accepts either string or List[str], and a private _parse_lines engine that container detectors will recurse into. No behavior change for existing callers; all 16 parser tests still pass. Prep for Phase 3c: callout/toggle/columns/page-mention block coverage. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>