aboutsummaryrefslogtreecommitdiff
path: root/main.html
diff options
context:
space:
mode:
Diffstat (limited to 'main.html')
-rw-r--r--main.html35
1 files changed, 32 insertions, 3 deletions
diff --git a/main.html b/main.html
index e548b81..8d8a931 100644
--- a/main.html
+++ b/main.html
@@ -849,6 +849,35 @@
animation: float-in 0.15s ease-out;
}
</style>
+ <!-- Early persistence restore — apply saved theme + font-size BEFORE bundle loads to prevent FOUC -->
+ <script>
+ (function() {
+ try {
+ // Restore font size
+ var fs = localStorage.getItem('webx11_font_size');
+ if (fs) { document.documentElement.style.fontSize = fs + 'px'; }
+ // Restore theme
+ var theme = localStorage.getItem('webx11_active_theme');
+ if (theme) {
+ var themesRaw = localStorage.getItem('webx11_themes');
+ var defaults = {
+ 'dark': { '--bg-color': '#000000', '--bg-secondary': '#0a0a0a', '--bg-tertiary': '#111111', '--text-color': '#00ff00', '--text-muted': '#888888', '--accent-color': '#00aa00', '--border-color': '#005500' },
+ 'light': { '--bg-color': '#ffffff', '--bg-secondary': '#f5f5f5', '--bg-tertiary': '#eeeeee', '--text-color': '#222222', '--text-muted': '#888888', '--accent-color': '#0066cc', '--border-color': '#cccccc' },
+ 'amber': { '--bg-color': '#1a0f00', '--bg-secondary': '#2a1a00', '--bg-tertiary': '#332200', '--text-color': '#ffaa00', '--text-muted': '#886600', '--accent-color': '#ff8800', '--border-color': '#663300' },
+ 'cyber': { '--bg-color': '#000a14', '--bg-secondary': '#001a2e', '--bg-tertiary': '#002240', '--text-color': '#00ffff', '--text-muted': '#0088aa', '--accent-color': '#ff00ff', '--border-color': '#004466' },
+ 'ocean': { '--bg-color': '#0a1628', '--bg-secondary': '#0f2240', '--bg-tertiary': '#142e54', '--text-color': '#88ddff', '--text-muted': '#5599bb', '--accent-color': '#00aaff', '--border-color': '#1a4470' },
+ 'forest': { '--bg-color': '#0a1a0e', '--bg-secondary': '#0f2814', '--bg-tertiary': '#14361c', '--text-color': '#88dd88', '--text-muted': '#559955', '--accent-color': '#33cc33', '--border-color': '#1a4a22' },
+ 'monochrome': { '--bg-color': '#0a0a0a', '--bg-secondary': '#181818', '--bg-tertiary': '#222222', '--text-color': '#cccccc', '--text-muted': '#666666', '--accent-color': '#999999', '--border-color': '#333333' },
+ 'sunset': { '--bg-color': '#1a0a14', '--bg-secondary': '#2a1220', '--bg-tertiary': '#3a1a2c', '--text-color': '#ffbb99', '--text-muted': '#cc7755', '--accent-color': '#ff6644', '--border-color': '#552233' },
+ 'midnight': { '--bg-color': '#050510', '--bg-secondary': '#0a0a20', '--bg-tertiary': '#101030', '--text-color': '#aaaaee', '--text-muted': '#555588', '--accent-color': '#6666ff', '--border-color': '#1a1a3a' }
+ };
+ if (themesRaw) { try { Object.assign(defaults, JSON.parse(themesRaw)); } catch(e){} }
+ var t = defaults[theme];
+ if (t) { for (var k in t) { document.documentElement.style.setProperty(k, t[k]); } }
+ }
+ } catch(e) {}
+ })();
+ </script>
</head>
<body>
<header>
@@ -1281,11 +1310,11 @@
</script>
<!-- v4.5.63: A2A scratchpad fixes + agent-register arg fix -->
-<script src="modules/core/core-bundle.js?v=2026-06-18-v4.5.70"></script>
-<script src="modules/ext/critical-ext-bundle.js?v=2026-06-18-v4.5.70"></script>
+<script src="modules/core/core-bundle.js?v=2026-06-18-v4.5.74"></script>
+<script src="modules/ext/critical-ext-bundle.js?v=2026-06-18-v4.5.74"></script>
<!-- Async dependency-ordered module loader now only initializes terminal and loads optional ext modules -->
-<script src="modules/core/module-loader.js?v=2026-06-18-v4.5.70"></script>
+<script src="modules/core/module-loader.js?v=2026-06-18-v4.5.74"></script>
<script>
// ═══ ONE TRUE VERSION SOURCE ═══