TypeScript 97.6%
SQL 1.4%
JavaScript 0.5%
1import Link from "next/link";2import { SpinzaWordmark } from "@/components/brand/logo";34/** Centered auth layout — logo, card, legal footer. No app navigation. */5export default function AuthLayout({ children }: { children: React.ReactNode }) {6 return (7 <div className="relative flex min-h-dvh flex-col" style={{ paddingTop: "var(--safe-top)", paddingBottom: "var(--safe-bottom)" }}>8 <div className="pointer-events-none absolute inset-0 bg-[radial-gradient(ellipse_at_50%_-10%,rgba(201,169,97,0.14),transparent_55%)]" />9 <header className="relative flex h-16 items-center justify-center">10 <Link href="/" aria-label="Spinza home" className="focus-ring rounded-md">11 <SpinzaWordmark />12 </Link>13 </header>14 <main className="relative flex flex-1 flex-col items-center justify-center px-4 py-8">15 <div className="w-full max-w-[440px]">{children}</div>16 </main>17 <footer className="relative px-4 pb-6 text-center text-[12px] text-fg-4">18 <p>Virtual credits only. No deposits. No withdrawals. No cash value. 18+.</p>19 <nav className="mt-2 flex flex-wrap justify-center gap-x-4 gap-y-1" aria-label="Legal">20 <Link href="/legal/terms" className="hover:text-fg-2">21 Terms22 </Link>23 <Link href="/legal/privacy" className="hover:text-fg-2">24 Privacy25 </Link>26 <Link href="/responsible-play" className="hover:text-fg-2">27 Responsible play28 </Link>29 <Link href="/how-it-works" className="hover:text-fg-2">30 How it works31 </Link>32 </nav>33 </footer>34 </div>35 );36}37