Missing ob_start() meant HTML was output before POST handler ran, so header() redirects silently failed after saving changes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>