'use client';

import { useEffect, useRef } from 'react';
import { signOut } from 'next-auth/react';

export default function LogoutPage() {
  const hasStarted = useRef(false);

  useEffect(() => {
    if (hasStarted.current) return;
    hasStarted.current = true;

    // Clear localStorage tokens
    localStorage.removeItem('accessToken');
    localStorage.removeItem('refreshToken');
    localStorage.removeItem('user');

    // Sign out via NextAuth (clears session cookie), then manually redirect
    signOut({ redirect: false })
      .then(() => {
        window.location.href = '/login';
      })
      .catch(() => {
        window.location.href = '/login';
      });

    // Safety fallback - if signOut hangs, redirect after 3 seconds
    setTimeout(() => {
      window.location.href = '/login';
    }, 3000);
  }, []);

  return (
    <div className="min-h-screen flex items-center justify-center bg-white">
      <div className="text-center">
        <div className="w-12 h-12 border-4 border-[#e58625] border-t-transparent rounded-full animate-spin mx-auto mb-6" />
        <h1 className="font-fractul font-bold text-[24px] text-[#00293D] mb-2">
          Signing Out
        </h1>
        <p className="font-serif text-[14px] text-[#00293D]/60">
          Please wait while we securely log you out...
        </p>
      </div>
    </div>
  );
}
