feat: captive portal auto-detect + DNS fallback + clean udhcpc script
- After WiFi connects, curl connectivity check (gstatic 204)
- Auto-follow redirects to clear simple captive portals
- DNS: always add 8.8.8.8 + 1.1.1.1 as fallback in udhcpc script
- Log portal status for debugging
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>