Template
Every page was importing Header and Footer and repeating the same store name, logo, copyright and nav links. Hoisting both into the root layout renders them once, and a new config/site.ts holds the values they shared. The body becomes a flex column so the footer sits at the bottom of short pages. not-found and error now render inside that chrome, so their full-viewport centering drops to 60vh. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01D1vsTA4MX6qFd7nqSAKtdV
21 lines
565 B
TypeScript
21 lines
565 B
TypeScript
"use client";
|
|
|
|
import React from 'react';
|
|
import Link from 'next/link';
|
|
|
|
export default function NotFound() {
|
|
return (
|
|
<div className="flex items-center justify-center min-h-[60vh]">
|
|
<div className="flex items-center gap-6">
|
|
<div className="text-lg font-medium text-black font-sans whitespace-nowrap">
|
|
404
|
|
</div>
|
|
<div className="border-l border-gray-300 h-6"></div>
|
|
<div className="text-sm text-gray-700 font-sans max-w-lg">
|
|
This page could not be found.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|