import Link from "next/link"; import { Logo } from "@/components/ui/logo"; import { resolveServerLocale } from "@/lib/i18n/server-locale"; import { getServerTranslator } from "@/lib/i18n/server-translator"; /** * v1.4.27 — branded 404 page. Next.js mounts this file for any * route that doesn't resolve to a server component, so the previous * implicit fallback was the framework's bare "404" text. The shape * here intentionally stays lighter than `` — Decision L * in the v1.4.27 mobile-fix plan — because a missing URL is not an * application error and doesn't need the bug-report path. Just a * branded splash with one link home. * * Mobile-first: `min-h-dvh` follows the dynamic viewport so the * panel anchors centred under iOS Safari's animated URL bar; * `safe-area-inset-top` keeps the headline clear of the notch or * Dynamic Island. * * v1.4.43 — copy lifted into i18n keys (`notFound.title` / * `notFound.backToDashboard`) and tightened. The previous * marketing-flavoured paragraph ("The page you were looking for… * Head back to the dashboard to pick up where you left off.") read * heavier than the surface warrants; the single-line statement * matches the existing voice of every other in-app error message. * Translations cover all six locales so a German user no longer * lands on English copy. */ export default async function NotFound() { const locale = await resolveServerLocale(); const { t } = getServerTranslator(locale); return (

404

{t("notFound.title")}

{t("notFound.backToDashboard")}
); }