:root{
  --red:#e53935;
  --blue:#1565c0;
  --bg:#f5f7fa;
  --card:#ffffff;
  --border:#e0e6ed;
}

*{box-sizing:border-box}

body{
  margin:0;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:system-ui,sans-serif;
  background:linear-gradient(135deg,#e3f2fd,#ffffff);
}

.auth-card{
  width:100%;
  max-width:380px;
  background:var(--card);
  border-radius:18px;
  padding:28px;
  box-shadow:0 20px 40px rgba(0,0,0,.15);
  animation:slideUp .6s ease;
}

@keyframes slideUp{
  from{transform:translateY(40px);opacity:0}
  to{transform:translateY(0);opacity:1}
}

h1{
  margin:0 0 6px;
}

.sub{
  font-size:13px;
  color:#6b7280;
  margin-bottom:18px;
}

label{
  font-size:12px;
  margin-top:12px;
  display:block;
}

input{
  width:100%;
  padding:12px;
  border-radius:999px;
  border:1px solid var(--border);
  margin-top:4px;
  outline:none;
}

input:focus{
  border-color:var(--blue);
}

button{
  width:100%;
  margin-top:20px;
  padding:12px;
  border:none;
  border-radius:999px;
  font-weight:600;
  color:#fff;
  background:linear-gradient(90deg,var(--blue),var(--red));
  cursor:pointer;
  transition:transform .2s;
}

button:hover{
  transform:translateY(-1px);
}

.switch{
  margin-top:14px;
  font-size:13px;
  text-align:center;
}

.switch a{
  color:var(--blue);
  text-decoration:none;
  font-weight:600;
}
