/* Login Page Styles with Full Page Background */
:root {
  --primary: #007BFF;
}

a {
  color: #007BFF;
}

a:hover {
  color: #0065cd;
}

/* Full page background for all login sections */
#page-login .for-login,
#page-login .for-forgot,
#page-login .for-signup,
#page-login .for-email-login {
  padding: 0 !important;
  background: url('/assets/datavalue_theme_15/images/background_kkys.jpeg') no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
  min-height: 100vh;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 80px !important;
}

/* Dark overlay for better readability */
#page-login .for-login::before,
#page-login .for-forgot::before,
#page-login .for-signup::before,
#page-login .for-email-login::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

/* Login card with glassmorphism effect */
#page-login .page-card {
  max-width: 480px !important;
  width: 100%;
  display: block;
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 20px !important;
  box-shadow: 0 20px 60px 0 rgba(0, 0, 0, 0.35) !important;
  position: relative;
  z-index: 2;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.3);
  overflow: hidden;
}

#page-login .page-card .text-center.sign-up-message {
  font-weight: 600;
  font-size: 14px;
  position: relative;
  margin-top: 20px;
}

/* Hide the old split layout background */
#page-login .page-card .login-content-bg {
  display: none;
}

/* Full width form */
#page-login .page-card .login-content-form {
  width: 100%;
  padding: 45px 40px 40px 40px;
}

/* Button styles */
#page-login .page-card .login-content-form .btn-login,
#page-login .page-card .login-content-form .btn-signup,
#page-login .page-card .login-content-form .btn-forgot {
  background: rgb(0, 123, 255);
  background: linear-gradient(-90deg, rgb(0, 123, 255) 0%, rgb(0, 101, 205) 100%);
  height: 50px !important;
  border-radius: 25px !important;
  font-size: 16px;
}

#page-login .page-card .login-content-form .forgot-password-message {
  margin-top: 15px;
}

#page-login .page-card .login-content-form span.toggle-password.text-muted {
  top: 14px !important;
  right: 14px !important;
  opacity: 0.7;
  transition: all 0.2s ease-in-out;
}

#page-login .page-card .login-content-form span.toggle-password.text-muted:hover {
  opacity: 1;
}

/* Form layout */
.for-login .page-card form,
.for-forgot .page-card form,
.for-signup .page-card form,
.for-email-login .page-card form {
  max-width: 100%;
  margin: 0 auto;
}

.for-login .page-card,
.for-forgot .page-card,
.for-signup .page-card,
.for-email-login .page-card {
  max-width: 480px;
  padding: 0;
  box-shadow: 0 20px 60px 0 rgba(0, 0, 0, 0.35);
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.for-login .page-card-head img,
.for-forgot .page-card-head img,
.for-signup .page-card-head img,
.for-email-login .page-card-head img {
  max-height: 62px;
  margin-bottom: 40px;
}

.form-label {
  cursor: pointer;
}

/* Form controls */
#page-login .form-control {
  background: #ffffff !important;
  border: 1px solid #D8D6DE !important;
  height: 50px !important;
  padding-left: 40px;
  transition: all 0.2s ease-in-out;
}

#page-login .form-control:focus.is-valid,
#page-login .form-control:focus {
  box-shadow: 0 3px 10px 0 rgba(37, 143, 231, 0.25) !important;
  border-color: #007BFF !important;
  padding-left: 43px;
  outline: 0;
}

.for-login .page-card .page-card-body .forgot-password-message > *,
.for-forgot .page-card .page-card-body .forgot-password-message > *,
.for-signup .page-card .page-card-body .forgot-password-message > *,
.for-email-login .page-card .page-card-body .forgot-password-message > * {
  font-size: 14px;
}

.for-login .page-card .page-card-body .forgot-password-message > *:hover,
.for-forgot .page-card .page-card-body .forgot-password-message > *:hover,
.for-signup .page-card .page-card-body .forgot-password-message > *:hover,
.for-email-login .page-card .page-card-body .forgot-password-message > *:hover {
  color: #007BFF;
}

#page-login h2 {
  margin-top: 0;
  font-weight: 700;
}

/* Page content styles */
#page-login .page_content {
  background-color: #f5f5f5;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 300;
}

#page-login .page_content .page-card {
  position: relative;
  z-index: 315;
}

#page-login .page_content .login-page-slideshow-container {
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 310;
}

#page-login .page_content .login-page-slideshow-container .login-page-slideshow-item {
  height: 100vh;
}

#page-login .page_content .login-page-slideshow-container .login-page-slideshow-item > img {
  height: 100%;
  width: 100%;
  max-width: initial;
  display: block;
}

#page-login .page_content .login-page-slideshow-container:after {
  background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(0, 0, 0, 0) 0px, rgba(0, 0, 0, 0.9) 100%) repeat scroll 0 0;
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  display: block;
  content: "";
  z-index: 312;
}

#page-login .page_content.full-background {
  top: 0px;
}

#page-login .page_content.min-background {
  top: 74px;
}

#page-login .page_content.min-background .login-page-slideshow-container {
  top: 74px;
}

#page-login .page_content.widget-background-transparent .page-card .login-content-bg {
  background: transparent;
}

#page-login .page_content.widget-background-transparent .page-card {
  padding-top: 45px !important;
  padding-bottom: 45px !important;
  background-color: rgba(255, 255, 255, 0.75) !important;
  border: 2px solid rgba(255, 255, 255, 0.75) !important;
  box-shadow: 0px 2px 14px -6px #000 !important;
  color: #000000 !important;
  position: relative;
  z-index: 315;
}

#page-login .page_content.widget-background-transparent .page-card .form-control {
  border: 1px solid #8d8d8d !important;
}

#page-login .page_content.widget-background-transparent .page-card .form-control:focus {
  border-color: var(--primary) !important;
}

#page-login .page_content.widget-background-transparent .page-card > a {
  color: #000;
}

/* Field icons */
.for-email-login .page-card .page-card-body .field-icon,
.for-forgot .page-card .page-card-body .field-icon,
.for-login .page-card .page-card-body .field-icon,
.for-signup .page-card .page-card-body .field-icon {
  left: 14px;
  top: 15px;
}

/* Mobile responsive styles */
@media (max-width: 600px) {
  .for-login,
  .for-forgot,
  .for-signup,
  .for-email-login {
    margin: 0px;
    background-position: center center;
    padding: 30px 15px !important;
    justify-content: center;
  }

  .for-login .page-card-head,
  .for-forgot .page-card-head,
  .for-signup .page-card-head,
  .for-email-login .page-card-head {
    margin-bottom: 20px;
  }

  #page-login .for-login,
  #page-login .for-forgot,
  #page-login .for-signup,
  #page-login .for-email-login {
    padding: 30px 15px !important;
    padding-right: 15px !important;
  }

  #page-login .page-card {
    max-width: 100% !important;
    margin: 0 10px;
  }

  #page-login .page-card .login-content-bg {
    display: none;
  }

  #page-login .page-card .login-content-form {
    width: 100%;
    padding: 30px 20px;
  }

  .for-login .page-card,
  .for-forgot .page-card,
  .for-signup .page-card,
  .for-email-login .page-card {
    padding: 20px;
  }
}
