/* ==================================================================
   XjetCPA — страница входа /login
   Дизайн-система лендинга: pearl/champagne-gold liquid-glass, TT Firs Neue.
   Подключается ПОСЛЕ системного {style.css} и styles.css — переопределяет
   стоковый AdminLTE/bootstrap своими классами .xj-login__*.
   Переиспользует токены и паттерны из styles.css (.card, .form-field, .btn).
   ================================================================== */

/* фон страницы — pearl wash (var(--bg) + glow из styles.css body::after).
   body.xj-login (спецификность 0,1,1) перекрывает AdminLTE .login-page. */
body.xj-login{
  min-height:100vh;
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--f-body);
}

/* нейтрализуем дефолтные AdminLTE-обёртки, если системный {style.css} их стилизует */
.xj-login .login-box,
.xj-login .login-box-body,
.xj-login .login-logo{
  width:auto;max-width:none;margin:0;padding:0;
  background:none;border:0;box-shadow:none;color:inherit;
}

.xj-login__wrap{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:22px;
  padding:48px 20px;
}

/* стеклянная карта — паттерн .card из styles.css */
.xj-login__card{
  width:100%;
  max-width:404px;
  background:var(--glass);
  border:1px solid rgba(255,255,255,0.7);
  border-radius:var(--r-lg);
  padding:38px 34px;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:inset 0 1px 1px rgba(255,255,255,0.8), 0 24px 60px -24px rgba(120,110,92,0.22);
}

.xj-login__brand{
  display:block;
  text-align:center;
  margin:0 0 26px;
}
.xj-login__brand img{
  height:34px;width:auto;display:inline-block;vertical-align:middle;
}

.xj-login__title{
  font-family:var(--f-display);
  font-size:22px;
  font-weight:600;
  letter-spacing:-0.01em;
  line-height:1.15;
  color:var(--ink);
  text-align:center;
  margin:0 0 22px;
}

.xj-login__form{
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* поле с лидирующей иконкой */
.xj-login__field{
  position:relative;
  display:block;
}
.xj-login__ico{
  position:absolute;
  left:15px;top:50%;
  transform:translateY(-50%);
  width:18px;height:18px;
  display:flex;align-items:center;justify-content:center;
  color:var(--faint);
  pointer-events:none;
  transition:color .2s;
}
.xj-login__ico svg{width:18px;height:18px;display:block}
.xj-login__ico .fa{font-size:16px;line-height:1}

/* инпут — паттерн .form-field input из styles.css */
.xj-login__input{
  width:100%;
  padding:14px 16px 14px 44px;
  background:rgba(255,255,255,0.7);
  border:1px solid var(--border);
  border-radius:10px;
  font-family:var(--f-body);
  font-size:14px;
  color:var(--ink);
  outline:0;
  appearance:none;
  transition:border-color .2s, box-shadow .2s, background-color .2s;
}
.xj-login__input::placeholder{color:var(--faint);opacity:1}
.xj-login__input:focus{
  border-color:var(--gold);
  background:rgba(255,255,255,0.92);
  box-shadow:0 0 0 3px rgba(201,174,124,0.2);
}
.xj-login__field:focus-within .xj-login__ico{color:var(--gold-deep)}

/* submit — .btn.btn--primary (золотой градиент), на всю ширину */
.xj-login__submit{
  width:100%;
  margin-top:4px;
}

/* ссылки «забыли пароль» / «регистрация» — .btn--tertiary */
.xj-login__links{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid var(--border);
}

/* алерты ошибок/успеха/предупреждения — паттерн .form__error */
.xj-login__alert{
  padding:12px 14px;
  border-radius:10px;
  font-size:13px;
  line-height:1.45;
}
.xj-login__alert--err{
  background:rgba(166,90,74,0.08);
  border:1px solid rgba(166,90,74,0.25);
  color:var(--error);
}
.xj-login__alert--ok{
  background:rgba(92,122,85,0.10);
  border:1px solid rgba(92,122,85,0.28);
  color:var(--success);
}
.xj-login__alert--warn{
  background:rgba(201,174,124,0.12);
  border:1px solid rgba(201,174,124,0.40);
  color:var(--gold-deep);
}

.xj-login__about{
  margin-top:18px;
  font-size:13px;
  color:var(--ink-2);
  line-height:1.55;
}

.xj-login__foot{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--faint);
  margin:0;
}

#registerform .g-recaptcha{margin:2px 0}

@media (max-width:480px){
  .xj-login__wrap{padding:32px 16px}
  .xj-login__card{padding:30px 22px;border-radius:var(--r)}
  .xj-login__title{font-size:20px}
}
