*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Inter',sans-serif;
}

body{
background:#f5f5f7;
display:flex;
align-items:center;
justify-content:center;
min-height:100vh;
padding:20px;
}

.auth-card{
width:100%;
max-width:450px;
background:white;
border-radius:35px;
padding:35px;
box-shadow:0 20px 50px rgba(0,0,0,.08);
}

.logo{
font-size:26px;
font-weight:700;
margin-bottom:25px;
color:#7c3aed;
}

.auth-card h1{
font-size:36px;
margin-bottom:10px;
}

.auth-card p{
color:#666;
margin-bottom:25px;
}

form{
display:flex;
flex-direction:column;
gap:15px;
}

input{
height:56px;
border:none;
background:#f4f4f4;
border-radius:18px;
padding:0 18px;
font-size:15px;
}

button{
height:58px;
border:none;
border-radius:18px;
background:#7c3aed;
color:white;
font-size:16px;
font-weight:700;
cursor:pointer;
}

.bottom-link{
margin-top:25px;
text-align:center;
}

.bottom-link a{
color:#7c3aed;
font-weight:700;
text-decoration:none;
}

.error-box{
background:#fee2e2;
color:#b91c1c;
padding:12px;
border-radius:14px;
margin-bottom:15px;
font-size:14px;
font-weight:600;
}

.success-box{
background:#dcfce7;
color:#166534;
padding:12px;
border-radius:14px;
margin-bottom:15px;
font-size:14px;
font-weight:600;
}

.error-box{
background:#fee2e2;
color:#b91c1c;
padding:12px;
border-radius:14px;
margin-bottom:15px;
font-size:14px;
font-weight:600;
}