44 lines
1.5 KiB
HTML
44 lines
1.5 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<meta name="color-scheme" content="light dark">
|
|
<title>MotoVaultPro</title>
|
|
|
|
<!-- Dark mode initialization - MUST run before any other scripts -->
|
|
<!-- This prevents iOS 26 Safari from overriding our dark mode preference -->
|
|
<script>
|
|
(function() {
|
|
try {
|
|
const stored = localStorage.getItem('motovaultpro-mobile-settings');
|
|
const settings = stored ? JSON.parse(stored) : {};
|
|
|
|
// Check user preference, fall back to system preference
|
|
const prefersDark = settings.darkMode !== undefined
|
|
? settings.darkMode
|
|
: window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
|
|
if (prefersDark) {
|
|
document.documentElement.classList.add('dark');
|
|
} else {
|
|
document.documentElement.classList.remove('dark');
|
|
}
|
|
} catch (e) {
|
|
// Fallback to system preference on error
|
|
if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
document.documentElement.classList.add('dark');
|
|
}
|
|
}
|
|
})();
|
|
</script>
|
|
|
|
<!-- Runtime config MUST load synchronously before any module scripts -->
|
|
<script src="/config.js"></script>
|
|
</head>
|
|
<body>
|
|
<div id="root"></div>
|
|
<script type="module" src="/src/main.tsx"></script>
|
|
</body>
|
|
</html> |