/* =========================================================
 * Jeyber login page fix
 *
 * - Login error messages.
 * - Login success messages.
 * - Mobile layout fixes for login form.
 * ========================================================= */

/* Красная ошибка на login */
body:has(form[action*="login"]) .alert-danger,
body:has(form[action*="login"]) .messages.error,
body:has(form[action*="login"]) .notices.red,
body:has(form[action*="login"]) .notices.error,
.page-login .alert-danger,
.page-login .messages.error,
.page-login .notices.red,
.page-login .notices.error,
.login-page .alert-danger,
.login-page .messages.error,
.login-page .notices.red,
.login-page .notices.error {
  background: #cf2e4f !important;
  border: 1px solid #cf2e4f !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 0.95rem 1rem !important;
  font-size: 0.96rem !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

body:has(form[action*="login"]) .alert-danger *,
body:has(form[action*="login"]) .messages.error *,
body:has(form[action*="login"]) .notices.red *,
body:has(form[action*="login"]) .notices.error *,
.page-login .alert-danger *,
.page-login .messages.error *,
.page-login .notices.red *,
.page-login .notices.error *,
.login-page .alert-danger *,
.login-page .messages.error *,
.login-page .notices.red *,
.login-page .notices.error * {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
  fill: currentColor !important;
}

/* Success внутри контейнера #messages — белый текст */
#messages .alert-success,
#messages .alert-success * {
  color: #ffffff !important;
  text-shadow: none !important;
  opacity: 1 !important;
  fill: currentColor !important;
}

#messages .alert-success a {
  color: #ffffff !important;
  text-decoration: underline !important;
}

#messages .alert-success .close,
#messages .alert-success button.close,
#messages .alert-success span[aria-hidden="true"] {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* Login layout fix */
body:has(form[action*="login"]) .login-form,
body:has(form[action*="login"]) .login-box,
body:has(form[action*="login"]) .user-login,
body:has(form[action*="login"]) .account-box,
body:has(form[action*="login"]) form[action*="login"],
.page-login .login-form,
.page-login .login-box,
.page-login .user-login,
.page-login .account-box,
.page-login form[action*="login"],
.login-page .login-form,
.login-page .login-box,
.login-page .user-login,
.login-page .account-box,
.login-page form[action*="login"] {
  position: relative;
  z-index: 2;
}

/* Mobile fix only for login page */
@media (max-width: 768px) {
  body:has(form[action*="login"]) main,
  body:has(form[action*="login"]) .site-content,
  body:has(form[action*="login"]) .page-content,
  .page-login main,
  .page-login .site-content,
  .page-login .page-content,
  .login-page main,
  .login-page .site-content,
  .login-page .page-content {
    overflow: visible !important;
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
  }

  body:has(form[action*="login"]) main section:has(form[action*="login"]),
  body:has(form[action*="login"]) main .container:has(form[action*="login"]),
  body:has(form[action*="login"]) main .row:has(form[action*="login"]),
  body:has(form[action*="login"]) main [class*="col-"]:has(form[action*="login"]),
  .page-login main section:has(form[action*="login"]),
  .page-login main .container:has(form[action*="login"]),
  .page-login main .row:has(form[action*="login"]),
  .page-login main [class*="col-"]:has(form[action*="login"]),
  .login-page main section:has(form[action*="login"]),
  .login-page main .container:has(form[action*="login"]),
  .login-page main .row:has(form[action*="login"]),
  .login-page main [class*="col-"]:has(form[action*="login"]) {
    overflow: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    align-items: flex-start !important;
  }

  body:has(form[action*="login"]) form[action*="login"],
  body:has(form[action*="login"]) .login-form,
  body:has(form[action*="login"]) .login-box,
  body:has(form[action*="login"]) .user-login,
  body:has(form[action*="login"]) .account-box,
  .page-login form[action*="login"],
  .page-login .login-form,
  .page-login .login-box,
  .page-login .user-login,
  .page-login .account-box,
  .login-page form[action*="login"],
  .login-page .login-form,
  .login-page .login-box,
  .login-page .user-login,
  .login-page .account-box {
    display: block !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-bottom: 0.75rem !important;
    margin-bottom: 0.5rem !important;
    position: relative !important;
    z-index: 2 !important;
  }

  body:has(form[action*="login"]) form[action*="login"] .btn,
  body:has(form[action*="login"]) form[action*="login"] button,
  body:has(form[action*="login"]) form[action*="login"] input[type="submit"],
  .page-login form[action*="login"] .btn,
  .page-login form[action*="login"] button,
  .page-login form[action*="login"] input[type="submit"],
  .login-page form[action*="login"] .btn,
  .login-page form[action*="login"] button,
  .login-page form[action*="login"] input[type="submit"] {
    display: block !important;
    width: 100% !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    position: relative !important;
    z-index: 3 !important;
  }

  body:has(form[action*="login"]) img,
  .page-login img,
  .login-page img {
    max-width: 100% !important;
    height: auto !important;
  }
}