/* Body and background */
body {
  background-color: #f0f2f5; /* Light gray background */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, sans-serif;
}

/* Main form container */
.user-form-container {
  background: #ffffff;
  border-radius: 15px; /* Softer, rounded corners */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); /* Deeper, more noticeable shadow */
  max-width: 420px; /* Slightly wider for better spacing */
  width: 100%;
  padding: 45px; /* More padding for a spacious feel */
  animation: fadeIn 0.8s ease-in-out; /* Fade-in animation */
}

/* Fade-in animation for the container */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Logo styling */
.branchLogoMain {
  width: 220px; /* Slightly smaller logo for better balance */
  margin-bottom: 25px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Label for form fields */
.user-form-container label {
  font-weight: 500;
  color: #555;
  margin-bottom: 8px;
  font-size: 14px;
}

/* Input fields */
.user-form-container .form-control {
  border-radius: 8px;
  border: 1px solid #ddd; /* Lighter border color */
  padding: 12px 15px; /* Increased padding */
  font-size: 15px;
  transition: border-color 0.3s;
}

.user-form-container .form-control:focus {
  border-color: #007bff; /* Highlight on focus */
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Password input with icon */
.password-input {
  position: relative;
}

.password-input .toggle-password {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(10%);
  cursor: pointer;
  color: #999;
  font-size: 18px;
}

/* Login button */
.user-form-container .template-btn {
  width: 100%;
  background: linear-gradient(
    45deg,
    #007bff,
    #0056b3
  ); /* Blue gradient for a modern look */
  color: #fff;
  border-radius: 8px;
  padding: 12px;
  font-size: 17px;
  border: none;
  font-weight: 600;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 123, 255, 0.2);
}

.user-form-container .template-btn:hover {
  background: linear-gradient(45deg, #0056b3, #004494);
  box-shadow: 0 6px 20px rgba(0, 123, 255, 0.3);
  transform: translateY(-2px); /* Slight lift on hover */
}

/* "Reset Password" text */
.forgot-pass-btn {
  text-align: center;
  font-size: 14px;
  color: #777;
  margin-top: 15px;
}

.forgot-pass-btn a {
  color: #007bff;
  text-decoration: none;
  font-weight: 500;
}

.forgot-pass-btn a:hover {
  text-decoration: underline;
  color: #0056b3;
}

/* Alert message styling */
#moreAttemptsAlert {
  border-radius: 8px;
  font-weight: 500;
}

/* --- Media Queries for Responsiveness --- */

/* Small devices (portrait phones, 576px and down) */
@media (max-width: 576px) {
  /* Form container on small screens */
  .user-form-container {
    width: 90%; /* Occupy most of the screen width */
    padding: 30px; /* Reduce padding to save space */
    box-shadow: none; /* Remove shadow to make it feel less like a floating card */
    border-radius: 0; /* Straighten corners for a full-width look */
  }

  /* Logo on small screens */
  .branchLogoMain {
    width: 180px; /* Make the logo slightly smaller */
    margin-bottom: 20px;
  }

  /* Input fields and labels */
  .user-form-container label,
  .user-form-container .form-control {
    font-size: 14px; /* Slightly smaller font for better fit */
  }

  /* Login button */
  .user-form-container .template-btn {
    padding: 10px; /* Reduce button padding */
    font-size: 16px; /* Slightly smaller button text */
  }
}

/* Medium devices (tablets, 768px and down) */
@media (max-width: 768px) {
  /* Form container adjustments */
  .user-form-container {
    padding: 40px;
    max-width: 380px; /* Keep it slightly narrower on tablets */
  }
}

/* Large devices (desktops, 992px and up) - No changes needed as the base design is for this size */
@media (min-width: 992px) {
  /* Base styles are already optimized for large screens. */
}

/* For Password */
/* Password input wrapper */
.password-input {
  position: relative;
  width: 100%;
}

.password-input .form-control {
  padding-right: 40px; /* icon ke liye space */
}

.password-input .toggle-password {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #999;
  font-size: 20px;
  user-select: none;
}

.password-input .toggle-password:hover {
  color: #007bff;
}

/* For Password */


/* Tingle PopUp STYLE */
.tingle-modal {
  z-index: 9999999 !important;
  background: rgb(0 0 0 / 45%) !important;
  filter: blur(0px) !important;
}

.tingle-modal-box {
  /* width: 40% !important; */
  width: 390px !important;
  max-width: 500px !important;
  border-radius: 12px !important;
}

/* @media (max-width: 750px) {
  .tingle-modal-box {
    width: 80% !important;
  }
} */

@media (max-width: 550px) {
  .tingle-modal-box {
    width: 90% !important;
  }

  .tingle-modal-box__content {
    overflow-y: hidden !important;
  }
}

@media (max-width: 540px) {
  .tingle-modal--noOverlayClose {
    display: flex !important;
  }
}

.tingle-modal-box__content {
  /* padding: 1em 1.6em 0.3em !important; */
  padding: 1.2em 1.9em 0.3em !important;
  text-align: center;
}

.tingle-modal-box__content p {
  font-size: 1.3em !important;
  color: #545454 !important;
  font-weight: 500 !important;
}

.tingle-btn {
  padding: 0.625em 1.1em !important;
  border-radius: 6px !important;
  font-weight: 500 !important;
}

.tingle-modal-box__footer {
  padding: 0.8rem 2rem 1.5rem 2rem !important;
  border-bottom-right-radius: 12px !important;
  border-bottom-left-radius: 12px !important;
  background-color: #ffffff !important;
  text-align: center !important;
}

@media (max-width: 540px) {
  .tingle-modal-box__footer .tingle-btn {
    display: inline !important;
    margin-bottom: 0 !important;
    width: auto !important;
  }
}

.tingle-btn--primary {
  background-color: rgb(25, 137, 64) !important;
}
/* Tingle PopUp STYLE */