:root{
  --auth-blue:#2f8df5;
  --auth-blue-hover:#247fe3;
  --auth-bg:#f4f7fb;
  --auth-text:#1f2937;
  --auth-muted:#667085;
  --auth-border:#d9e1ec;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.auth-page{
  margin:0 !important;
  min-height:100vh;
  background:var(--auth-bg) !important;
  color:var(--auth-text) !important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.auth-page .auth-shell{
  min-height:100dvh;
  display:grid;
  place-items:center;
  padding:28px 16px;
  background:linear-gradient(180deg,#f8fbff 0%,#eef5fd 100%) !important;
}
.auth-page .auth-box{
  width:min(440px,100%);
  background:#fff !important;
  color:var(--auth-text) !important;
  border:1px solid #e4ebf4;
  border-radius:18px;
  padding:32px;
  box-shadow:0 18px 50px rgba(31,65,110,.12);
}
.auth-page .auth-box h1,.auth-page .auth-box h2{
  margin:0 0 22px;
  color:#182235 !important;
  font-size:28px;
  font-weight:800;
}
.auth-page .stack{display:grid;gap:13px}
.auth-page input,.auth-page select,.auth-page textarea{
  width:100%;
  min-height:48px;
  background:#fff !important;
  color:var(--auth-text) !important;
  border:1px solid var(--auth-border) !important;
  border-radius:10px;
  padding:12px 14px;
  outline:none;
}
.auth-page input::placeholder,.auth-page textarea::placeholder{color:#98a3b3 !important}
.auth-page input:focus,.auth-page select:focus,.auth-page textarea:focus{
  border-color:var(--auth-blue) !important;
  box-shadow:0 0 0 4px rgba(47,141,245,.12) !important;
}
.auth-page button,.auth-page .btn{
  width:100%;
  min-height:48px;
  border:0 !important;
  border-radius:10px;
  background:var(--auth-blue) !important;
  color:#fff !important;
  padding:12px 18px;
  cursor:pointer;
  font-weight:800;
  box-shadow:0 8px 20px rgba(47,141,245,.20);
}
.auth-page button:hover,.auth-page .btn:hover{background:var(--auth-blue-hover) !important}
.auth-page a{color:var(--auth-blue) !important;font-weight:650;text-decoration:none}
.auth-page a:hover{text-decoration:underline}
.auth-page .auth-box p{margin:14px 0 0;color:var(--auth-muted) !important;font-size:14px}
.auth-page .error,.auth-page .err,.auth-page .no{
  color:#b42318 !important;background:#fff1f0 !important;border:1px solid #ffd5d2;border-radius:10px;padding:11px 13px;margin:0 0 16px;
}
.auth-page .ok{
  color:#067647 !important;background:#ecfdf3 !important;border:1px solid #abefc6;border-radius:10px;padding:11px 13px;margin:0 0 16px;
}
@media(max-width:640px){
  .auth-page .auth-shell{padding:16px 12px}
  .auth-page .auth-box{padding:24px 20px;border-radius:15px}
  .auth-page .auth-box h1,.auth-page .auth-box h2{font-size:25px}
}
