feat: implement width-primary resolution detection with filename parsing
Replace legacy height-only detection with enhanced width-based logic that
properly handles letterboxed content. Fixes issue where 1280x536 content
was misclassified due to reduced height from letterboxing.
Key changes:
- Width-primary detection: use width as main indicator, height as confidence meter
- Filename parsing: extract resolution/HDR info from filenames as additional source
- Cross-validation: combine filename and stream data for accuracy
- 3D content support: properly detect SBS/OU formats
- Remove all legacy height-only detection paths
Fixes letterboxed content detection (1280x536 → 720p correctly)
Affects both single poster and batch processing workflows
Breaking: removes legacy detection fallbacks, requires enhanced detector