/* css/auth.css — форма входа
   Версия: 2026-10-30.1 */

.auth-body{
  min-height:100vh;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, #E3E8F4 0%, #F8F9FA 100%);
  padding:20px;
}
.auth-wrap{width:100%;max-width:420px;}
.auth-card{
  background:#fff;border-radius:16px;
  padding:32px 28px;
  box-shadow:0 10px 30px rgba(26,60,139,.12);
  border:1px solid #e5e7eb;
  display:flex;flex-direction:column;
}
.auth-title{
  font-size:26px;font-weight:700;color:var(--primary-blue);
  margin:0 0 4px 0;text-align:center;
}
.auth-subtitle{
  font-size:14px;color:var(--muted);
  margin:0 0 4px 0;text-align:center;
}
.auth-subtitle + .auth-subtitle{margin-bottom:20px;}

.auth-label{
  font-size:14px;font-weight:600;color:#374151;
  margin:14px 0 6px 0;display:block;
}
.auth-input{
  width:100%;height:48px;
  border-radius:10px;border:1px solid #D1D5DB;
  padding:0 14px;font-size:16px;font-family:inherit;
  color:#111827;background:#fff;
  outline:none;transition:border-color .15s, box-shadow .15s;
}
.auth-input:focus{
  border-color:var(--primary-blue);
  box-shadow:0 0 0 3px rgba(26,60,139,.12);
}

.auth-pass-wrap{position:relative;}
.auth-pass-wrap .auth-input{padding-right:46px;}
.auth-pass-toggle{
  position:absolute;right:6px;top:50%;transform:translateY(-50%);
  width:36px;height:36px;border:none;background:transparent;
  cursor:pointer;font-size:16px;color:var(--muted);
  border-radius:8px;
}
.auth-pass-toggle:hover{background:var(--field-gray);}

.auth-submit{
  margin-top:22px;height:50px;
  background:var(--primary-blue);color:#fff;
  border:none;border-radius:25px;
  font-size:16px;font-weight:700;
  cursor:pointer;transition:opacity .15s;
}
.auth-submit:hover{opacity:.92;}

.auth-links{
  margin-top:16px;text-align:center;
  font-size:14px;
}

.auth-error{
  background:#FEF2F2;color:var(--rating-red);
  border:1px solid #FECACA;border-radius:10px;
  padding:10px 12px;font-size:14px;font-weight:500;
  margin:12px 0 4px 0;
}
.auth-flash{
  border-radius:10px;padding:10px 12px;
  font-size:14px;font-weight:500;margin:12px 0 4px 0;
  border:1px solid transparent;
}
.auth-flash.ok{background:#ECFDF5;color:#065F46;border-color:#A7F3D0;}
.auth-flash.err{background:#FEF2F2;color:#991B1B;border-color:#FECACA;}

@media (max-width:480px){
  .auth-card{padding:24px 20px;}
  .auth-title{font-size:22px;}
  .auth-input,.auth-submit{height:46px;}
}