/* assets/css/auth.css */
.auth-wrap{
  min-height: calc(100vh - 34px - 78px - 52px - 60px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 28px 0;
}

.auth-card{
  width:min(560px, 100%);
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(2,8,23,.08);
  padding: 26px 22px;
}

.auth-title{
  font-size:30px;
  font-weight:1000;
  text-align:center;
  color:#1d4ed8;
}

.auth-sub{
  text-align:center;
  color:#64748b;
  margin-top:6px;
  margin-bottom:18px;
}

.auth-form .field{margin:10px 0}
.auth-form input{
  width:100%;
  height:46px;
  border-radius:10px;
  border:1px solid #e5e7eb;
  background:#f8fafc;
  padding:0 14px;
  outline:0;
  font-size:14px;
}
.auth-form input:focus{
  border-color: rgba(29,78,216,.55);
  box-shadow: 0 0 0 4px rgba(29,78,216,.10);
  background:#fff;
}

.auth-btn{
  width:100%;
  height:48px;
  margin-top:10px;
  border:0;
  border-radius:10px;
  background:#334155;
  color:#fff;
  font-weight:900;
  letter-spacing:.3px;
  cursor:pointer;
}
.auth-btn:hover{filter:brightness(1.05)}

.auth-links{
  margin-top:14px;
  text-align:center;
  font-weight:700;
  color:#1e40af;
}
.auth-links a{color:#1e40af}
.auth-links .sep{margin:0 8px; color:#94a3b8}

.alert{
  border-radius:12px;
  padding:12px 12px;
  font-weight:700;
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-bottom:12px;
}
.alert-danger{
  background: rgba(239,68,68,.08);
  border:1px solid rgba(239,68,68,.25);
  color:#991b1b;
}
.alert-success{
  background: rgba(34,197,94,.10);
  border:1px solid rgba(34,197,94,.25);
  color:#166534;
}