Almost Heaven final function audit fixes

This pass intentionally did not change page styling or content structure.

Fixed in this pass:
- Homepage fatal caused by mb_strimwidth dependency on servers without mbstring.
- Homepage featured news/event excerpts now use a safe fallback helper.
- News page and /news/index.php now display published post images properly.
- Media path resolution hardened for admin/public image values.
- Chat post API no longer depends on mbstring.
- File Finder search no longer depends on mbstring.
- Stream/listener config normalized to Almost Heaven's 6969 port in shared stream/stats files.
- Admin dashboard external Icecast link aligned to 6969.

Files changed:
- includes/media_helpers.php
- index.php
- news.php
- news/index.php
- admin/includes/admin_lib.php
- api/chat_post.php
- admin/file-finder.php
- includes/stream_lib.php
- api/stats.php
- data/nowplaying.php
- cloudflare/stream-worker.js
- admin/dashboard.php
