diff --git a/frontend/src/components/RuntimePresentation.tsx b/frontend/src/components/RuntimePresentation.tsx
index 14d4d48..17d53cf 100644
--- a/frontend/src/components/RuntimePresentation.tsx
+++ b/frontend/src/components/RuntimePresentation.tsx
@@ -548,20 +548,34 @@ export default function RuntimePresentation({
if (isLoading) {
return (
-
-
Loading presentation...
-
+ <>
+
+
+
+
+
+
+
Loading presentation...
+
+ >
);
}
if (error) {
return (
-
+ <>
+
+
+
+
+
+
+ >
);
}
@@ -572,6 +586,13 @@ export default function RuntimePresentation({
{project?.name || 'Presentation'}
+ {/* Dark theme for browser UI and background */}
+
+
+
+
{faviconUrl && }
{ogImageUrl && (
<>
diff --git a/frontend/src/pages/p/[projectSlug]/index.tsx b/frontend/src/pages/p/[projectSlug]/index.tsx
index 860898b..437a55d 100644
--- a/frontend/src/pages/p/[projectSlug]/index.tsx
+++ b/frontend/src/pages/p/[projectSlug]/index.tsx
@@ -5,6 +5,7 @@
import { ReactElement } from 'react';
import { useRouter } from 'next/router';
+import Head from 'next/head';
import RuntimePresentation from '../../../components/RuntimePresentation';
import LayoutGuest from '../../../layouts/Guest';
@@ -14,9 +15,16 @@ export default function ProductionPresentation() {
if (!projectSlug || typeof projectSlug !== 'string') {
return (
-
+ <>
+
+
+
+
+
+
+ >
);
}
diff --git a/frontend/src/pages/p/[projectSlug]/stage.tsx b/frontend/src/pages/p/[projectSlug]/stage.tsx
index 1a93e02..ff8cff3 100644
--- a/frontend/src/pages/p/[projectSlug]/stage.tsx
+++ b/frontend/src/pages/p/[projectSlug]/stage.tsx
@@ -5,6 +5,7 @@
import { ReactElement } from 'react';
import { useRouter } from 'next/router';
+import Head from 'next/head';
import RuntimePresentation from '../../../components/RuntimePresentation';
import LayoutAuthenticated from '../../../layouts/Authenticated';
@@ -14,9 +15,16 @@ export default function StagePresentation() {
if (!projectSlug || typeof projectSlug !== 'string') {
return (
-
+ <>
+
+
+
+
+
+
+ >
);
}