diff --git a/frontend/app/(protected)/map/page.tsx b/frontend/app/(protected)/map/page.tsx
index ac2539d3..68d3ca7f 100644
--- a/frontend/app/(protected)/map/page.tsx
+++ b/frontend/app/(protected)/map/page.tsx
@@ -1,10 +1,12 @@
"use client";
import dynamic from "next/dynamic";
+import { clientOnlyBundleBoundary } from "@/lib/bundle-config";
-const MapPageContent = dynamic(() => import("./MapPageContent"), {
- ssr: false,
-});
+const MapPageContent = dynamic(
+ () => import("./MapPageContent"),
+ clientOnlyBundleBoundary,
+);
export default function MapPage() {
return ;
diff --git a/frontend/app/[locale]/(protected)/layout.tsx b/frontend/app/[locale]/(protected)/layout.tsx
index c9ad4c43..47df3f9f 100644
--- a/frontend/app/[locale]/(protected)/layout.tsx
+++ b/frontend/app/[locale]/(protected)/layout.tsx
@@ -2,6 +2,7 @@ import { getTranslations, setRequestLocale } from "next-intl/server";
import { Link } from "@/i18n/navigation";
import LanguageSwitcher from "@/components/LanguageSwitcher";
import NotificationBell from "@/components/layout/NotificationBell";
+import { SessionExpiryGuard } from "@/components/SessionExpiryGuard";
export const dynamic = "force-dynamic";
@@ -20,6 +21,7 @@ export default async function ProtectedLayout({
return (
+