Baseline preserved: no intentional public/admin style or theme changes in this pass.

Fixes applied:
- Fixed footer JS apiBase path so visitor ping can run again from public and admin pages.
- Kept listener stats placeholder behavior intact until stream details are configured.
- Reworked admin delete/clear actions for contact messages, comments, requests, and join applications to stable POST/key-based handling.
- Fixed chat public API paths so chat works on local/test installs and not only at domain root.
- Hardened chat JSON writes with locking.
- Fixed admin poll permissions by loading auth before POST handling.
- Added shared admin denial helper used by multiple admin tools.
- Updated homepage comment handling to respect comments_enabled and to read approved comments from both legacy line format and block format.

Files changed:
- includes/footer.php
- admin/includes/admin_lib.php
- admin/contact.php
- admin/comments.php
- admin/applications.php
- admin/requests.php
- admin/poll.php
- admin/chat.php
- api/chat_get.php
- api/chat_post.php
- chat.php
- index.php
- requests.php
