// ============================================================
// Login.jsx — Tela de login com Google
// ============================================================
const Login = ({ onSignIn, loading, error }) => {
return (
{/* Logo */}
Bem-vindo de volta
Entre com sua conta Google para acessar ou criar sua planilha de leads.
{error && (
⚠ {error}
)}
Seus dados ficam na sua própria conta Google.
Nenhuma informação é armazenada em servidores externos.
);
};
const ls = {
screen: {
minHeight: '100vh', background: '#0d1020',
display: 'flex', alignItems: 'center', justifyContent: 'center',
padding: 24,
},
card: {
background: '#151828', border: '1px solid #1e2235', borderRadius: 16,
padding: '40px 44px', width: '100%', maxWidth: 420,
boxShadow: '0 24px 60px rgba(0,0,0,0.5)',
display: 'flex', flexDirection: 'column', alignItems: 'center', gap: 0,
},
logoWrap: { display: 'flex', alignItems: 'center', gap: 12, marginBottom: 28 },
logoMark: {
width: 52, height: 52, borderRadius: 14, background: '#1a1d2e',
border: '1px solid #1e2235', display: 'flex', alignItems: 'center', justifyContent: 'center',
},
logoName: { fontSize: 20, fontWeight: 800, color: '#e8eaf0', letterSpacing: 1 },
logoSub: { fontSize: 11, color: '#4a4f6a', marginTop: 2 },
divider: { width: '100%', height: 1, background: '#1e2235', marginBottom: 28 },
headline: { fontSize: 22, fontWeight: 700, color: '#e8eaf0', marginBottom: 10, textAlign: 'center' },
subline: { fontSize: 13, color: '#6b7194', textAlign: 'center', lineHeight: 1.6, marginBottom: 28 },
errorBox: {
background: 'rgba(251,146,60,0.1)', border: '1px solid rgba(251,146,60,0.3)',
borderRadius: 8, padding: '10px 14px', fontSize: 12, color: '#fb923c',
marginBottom: 16, width: '100%', textAlign: 'center',
},
googleBtn: {
display: 'flex', alignItems: 'center', justifyContent: 'center', gap: 12,
width: '100%', padding: '13px 20px', borderRadius: 10,
background: '#fff', border: 'none', cursor: 'pointer',
fontSize: 14, fontWeight: 600, color: '#1a1a2e', fontFamily: 'inherit',
transition: 'opacity 0.15s', boxShadow: '0 2px 8px rgba(0,0,0,0.3)',
},
spinner: { fontSize: 16 },
footer: {
marginTop: 24, fontSize: 11, color: '#4a4f6a', textAlign: 'center', lineHeight: 1.7,
},
};