.website-logo {
  position: absolute;
  top: -60px;
  left: 40px;
  width: 250px;
  height: auto;
  z-index: 10;
}

.forgot-card {
  background: #fff;
  border-radius: 15px;
  padding: 3rem;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  transition: 0.3s;
}

.forgot-card:focus-within {
  box-shadow: 0 6px 30px rgba(0, 123, 255, 0.2);
}

.form-group {
  margin-bottom: 2rem;
}

.input-wrapper {
  position: relative;
}

.form-group i.fas {
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  color: #999;
  pointer-events: none;
  z-index: 2;
}

.form-control {
  height: 50px;
  border-radius: 50px;
  padding-left: 65px !important;
  padding-right: 20px;
  border: 1px solid #ced4da;
  transition: 0.3s;
}

.form-control:focus {
  border-color: #f48c06;
  box-shadow: 0 0 5px rgba(244, 140, 6, 0.25);
}

.btn-primary-red {
  margin-top: 10px;
  background: #dc143c !important;
  border: none !important;
  color: #fff !important;
  transition: 0.3s;
  border-radius: 6px;
  padding: 0.8rem;
  font-size: 1rem;
}

.btn-primary-red:hover {
  background: #b22222 !important;
  transform: scale(1.02);
}

.btn-primary-red:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.error-message {
  display: block;
  margin-top: 8px;
  color: #dc3545;
  font-size: 0.85rem;
  padding-left: 8px;
}

.hidden {
  visibility: hidden;
}

.visible {
  visibility: visible;
}

.custom-links {
  margin-top: 25px;
  text-align: center;
}

.custom-links a {
  text-decoration: none;
  font-weight: 600;
  color: #007bff;
}

.custom-links a:hover {
  text-decoration: underline;
}