diff --git a/index.html b/index.html
index adb3013..aafc423 100644
--- a/index.html
+++ b/index.html
@@ -4,7 +4,7 @@
-
+
diff --git a/package.json b/package.json
index f4ee2e7..2992738 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "amerc-site",
- "version": "0.77.0-docsmobile",
+ "version": "0.78.0-loadscreen",
"private": true,
"type": "module",
"scripts": {
diff --git a/src/Scene2D.jsx b/src/Scene2D.jsx
index 7b0a985..6caba8f 100644
--- a/src/Scene2D.jsx
+++ b/src/Scene2D.jsx
@@ -10,7 +10,7 @@ import { api } from './api.js';
const Menu = ({ size = 20 }) => ();
const X = ({ size = 20 }) => ();
-const RELEASE = '0.77.0-docsmobile';
+const RELEASE = '0.78.0-loadscreen';
const NAV = [
{ id: 'home', label: 'Tavern' },
diff --git a/src/main.jsx b/src/main.jsx
index 06893f0..c27eefe 100644
--- a/src/main.jsx
+++ b/src/main.jsx
@@ -45,10 +45,17 @@ class ErrorBoundary extends React.Component {
}
}
+const Loading = () => (
+
+
+ amerc
+
+);
+
createRoot(document.getElementById('root')).render(
- Loading amerc…}>
+ }>
diff --git a/src/styles.css b/src/styles.css
index da38ad7..36dc8cd 100644
--- a/src/styles.css
+++ b/src/styles.css
@@ -1487,3 +1487,10 @@ button {
.docs-side { width: 100%; max-height: 210px; overflow-y: auto; border-right: none; border-bottom: 2px solid #1b2536; }
.docs-main { padding: 20px 16px; }
}
+
+/* branded app loading screen (Suspense fallback) (0.78) */
+.app-loading { position: fixed; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; background: radial-gradient(circle at 50% 38%, #160d22, #07060c 70%); }
+.app-loading-gem { width: 28px; height: 28px; background: linear-gradient(135deg, #5fe6ff, #1f86c4); box-shadow: 0 0 0 3px #07273a, 0 0 22px rgba(39,216,255,0.5); animation: app-pulse 1.3s ease-in-out infinite; }
+.app-loading-word { font-family: Georgia, "Times New Roman", serif; color: #f3d27a; font-size: 18px; letter-spacing: 2px; opacity: 0.85; }
+@keyframes app-pulse { 0%, 100% { transform: rotate(45deg) scale(1); opacity: 0.7; } 50% { transform: rotate(45deg) scale(1.16); opacity: 1; } }
+@media (prefers-reduced-motion: reduce) { .app-loading-gem { animation: none; transform: rotate(45deg); } }