'use client'; import { useState } from 'react'; import Link from 'next/link'; import { PawPrint, Eye, EyeOff, Mail, Lock } from 'lucide-react'; import type { Metadata } from 'next'; export default function LoginPage() { const [showPass, setShowPass] = useState(false); const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); const [loading, setLoading] = useState(false); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); setLoading(true); // TODO: substituir por NextAuth signIn quando NEXTAUTH_SECRET estiver configurado setTimeout(() => setLoading(false), 1200); }; return (
{/* Brand mark */}
PawLink

Bem-vindo de volta.

Não tens conta?{' '} ((e.target as HTMLElement).style.textDecorationColor = 'var(--color-terra)')} onMouseLeave={e => ((e.target as HTMLElement).style.textDecorationColor = 'transparent')} > Criar conta grátis

{/* Email field */}
setEmail(e.target.value)} placeholder="o.teu@email.pt" required autoComplete="email" style={{ width: '100%', padding: '12px 16px 12px 40px', background: 'var(--color-bg)', border: '1.5px solid var(--color-border)', borderRadius: '10px', fontFamily: 'var(--font-body)', fontSize: '15px', color: 'var(--color-text)', outline: 'none', transition: 'border-color 180ms ease', minHeight: '48px', }} onFocus={e => (e.target.style.borderColor = 'var(--color-terra)')} onBlur={e => (e.target.style.borderColor = 'var(--color-border)')} />
{/* Password field */}
Esqueceste-a?
setPassword(e.target.value)} placeholder="••••••••" required autoComplete="current-password" style={{ width: '100%', padding: '12px 44px 12px 40px', background: 'var(--color-bg)', border: '1.5px solid var(--color-border)', borderRadius: '10px', fontFamily: 'var(--font-body)', fontSize: '15px', color: 'var(--color-text)', outline: 'none', transition: 'border-color 180ms ease', minHeight: '48px', }} onFocus={e => (e.target.style.borderColor = 'var(--color-terra)')} onBlur={e => (e.target.style.borderColor = 'var(--color-border)')} />
{/* Submit */}
{/* Divider */}
ou

Ao entrar, aceitas os nossos{' '} Termos de Utilização {' '}e a nossa{' '} Política de Privacidade.

); }