Reduce both page.tsx files below the 500-LOC hard cap by extracting
all inline tab components and API helpers into colocated _components/.
- loeschfristen/page.tsx: 2720 → 467 LOC
- vvt/page.tsx: 2297 → 256 LOC
New files: LoeschkonzeptTab, loeschfristen/api, TabDokument, TabProcessor
Updated: TabVerzeichnis (template picker + badge), vvt/api (template helpers)
Fixed: VVTLinkSection wrong field name (linkedVVTActivityIds), VendorLinkSection added
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Split two oversized page files into _components/ directories following
Next.js 15 conventions and the 500-LOC hard cap:
- loeschfristen/page.tsx (2322 LOC -> 412 LOC orchestrator + 6 components)
- dsb-portal/page.tsx (2068 LOC -> 135 LOC orchestrator + 9 components)
All component files stay under 500 lines. Build verified.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>