diff --git a/config/fileload.php b/config/fileload.php
index 9997f4a..a3ade69 100644
--- a/config/fileload.php
+++ b/config/fileload.php
@@ -37,13 +37,42 @@ $GLOBALS['app_base_url'] = APP_URL_PRIMARY;
$GLOBALS['app_api_base'] = $apiBaseUrl;
$GLOBALS['app_version'] = "{$mainversion}.{$subversion}.{$patchversion}";
-if (!function_exists('render_app_version_badge')) {
- function render_app_version_badge(): void
+if (!function_exists('get_version_badge_markup')) {
+ function get_version_badge_markup(): string
{
+ $version = $GLOBALS['app_version'] ?? null;
+ if (!$version || php_sapi_name() === 'cli') {
+ return '';
+ }
+ $versionText = htmlspecialchars((string)$version, ENT_QUOTES, 'UTF-8');
+
+ ob_start();
+ ?>
+
+
+
-.app-version-badge{position:fixed;right:12px;bottom:12px;z-index:2147483000;font-size:12px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0f172a;background:rgba(248,250,252,.85);border:1px solid rgba(148,163,184,.6);border-radius:999px;padding:4px 10px;box-shadow:0 8px 20px rgba(15,23,42,.15);backdrop-filter:blur(6px);}
-@media print {.app-version-badge{display:none}}
-
-
-HTML;
- }
-}
-
-if (!defined('APP_VERSION_BADGE_REGISTERED')) {
- register_shutdown_function('render_app_version_badge');
+ });
define('APP_VERSION_BADGE_REGISTERED', true);
}