import { getAdminUser } from "@/lib/admin-permissions";
import AdminAccessDenied from "@/components/admin/AdminAccessDenied";
import CommandCenterDashboard from "@/components/admin/CommandCenterDashboard";
import { redirect } from "next/navigation";
import { Major_Mono_Display, JetBrains_Mono, Inter_Tight } from "next/font/google";
import "./command-center.css";

/**
 * Command Center — Operations Schematic
 *
 * Industrial mission-control feel: phosphor amber on near-black, dense data,
 * CAD-style corner crosshairs, brand ticker, serial-numbered sections. Three
 * typefaces working in concert: Major Mono Display (wordmark only), JetBrains
 * Mono (all labels/numbers/timestamps), Inter Tight (descriptive body copy).
 */
const majorMono = Major_Mono_Display({
  subsets: ["latin"],
  weight: "400",
  variable: "--cc-font-mono-major",
  display: "swap",
});

const jetbrainsMono = JetBrains_Mono({
  subsets: ["latin"],
  variable: "--cc-font-mono",
  display: "swap",
  weight: ["400", "500", "600", "700"],
});

const interTight = Inter_Tight({
  subsets: ["latin"],
  variable: "--cc-font-body",
  display: "swap",
  weight: ["400", "500", "600"],
});

export default async function CommandCenterPage() {
  const adminUser = await getAdminUser();
  if (!adminUser) return <AdminAccessDenied />;
  if (adminUser.role !== "platform_admin") return <AdminAccessDenied message="Platform admin access required." />;
  if (adminUser.must_change_password) redirect("/change-password");

  return (
    <div
      className={`${majorMono.variable} ${jetbrainsMono.variable} ${interTight.variable} cc-schematic`}
    >
      <CommandCenterDashboard />
    </div>
  );
}
