Detect mobile viewport (window.innerWidth < 768) at startup and show a
centered 'Not yet available on mobile' message instead of the full
monitoring UI. All polling, gateway detection, and network requests are
skipped entirely on mobile viewports.
Desktop behavior is completely unchanged — the mobile check is the very
first thing in init() and returns early before any other setup runs.