import {
    Card,
    CardContent,
    CardDescription,
    CardHeader,
    CardTitle,
} from '@/components/ui/card';
import { home } from '@/routes';
import { Link } from '@inertiajs/react';
import { type PropsWithChildren } from 'react';

export default function AuthCardLayout({
    children,
    title,
    description,
}: PropsWithChildren<{
    name?: string;
    title?: string;
    description?: string;
}>) {
    return (
        <div className="m-0 flex min-h-svh flex-col items-center justify-center gap-6 bg-gradient-to-t from-sky-100 via-sky-50 to-white p-6 md:p-10">
            <div className="flex w-full max-w-md flex-col gap-6">
                <Link
                    href={home()}
                    className="flex items-center gap-2 self-center font-medium"
                >
                    <div className="flex flex-col items-center justify-center">
                        <img
                            src="/logo.png"
                            alt="Logo"
                            className="h-18 w-18 object-contain drop-shadow-lg"
                        />
                        <span className="mt-3 text-center text-sm font-bold text-sky-800 uppercase">
                            {title}
                            <p className="font-normal text-black normal-case">
                                {description}
                            </p>
                        </span>
                    </div>
                </Link>

                <div className="flex flex-col gap-6">
                    <Card className="m-0 rounded-2xl border-0 bg-white/95 p-0 shadow-xl backdrop-blur-sm">
                        <CardHeader className="text-center">
                            <CardTitle className="text-xl text-gray-900"></CardTitle>
                            <CardDescription className="text-gray-500"></CardDescription>
                        </CardHeader>
                        <CardContent className="pb-6">{children}</CardContent>
                    </Card>
                </div>
            </div>
        </div>
    );
}
