/* =============================================================
   Login system styles — extracted snippet
   Source: legacy site theme style.css (Eterna template + Fred's
   customizations). Scope: login / signup / OTP / password reset +
   contributor pages only. Loaded by templates/authentification/*.
   ============================================================= */

/* --- General (auth pages) --- */
body {
  font-family: "Open Sans", sans-serif;
  color: #444444;
  overflow-x: hidden;
}

a {
  color: #FF0000;
}

a:hover {
  color: #e6573f;
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Raleway", sans-serif;
}

/* --- Auth links --- */
.auth-links a {
  font-size: 16px;
}

@media (max-width: 575px) {
  .auth-links a { font-size: 14px; }
  .auth-links i { font-size: 13px; }
}

/* --- Login / signup / OTP / reset form card --- */
.login-form {
  max-width: 600px;
  width: 100%;
  margin: 20px auto;
  padding: 0 10px;
}

.login-form form {
  background: #fff;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
  padding: 30px;
  border-radius: 12px;
}

.login-form img {
  max-width: 120px;
  height: auto;
}

.login-form input,
.login-form button {
  width: 100%;
}

@media (max-width: 576px) {
  .login-form { padding: 10px; margin: 10px; }
  .login-form form { padding: 20px; }
  h4 { font-size: 1.1rem; }
}

.login-form .btn {
  margin-bottom: 10px;
}

/* Primary button: base / hover / active */
.login-form .btn-primary {
  background-color: #0d6efd !important;
  color: white !important;
  font-weight: bold !important;
  border: none;
  padding: 10px;
  border-radius: 6px;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.login-form .btn-primary:hover {
  background-color: #0b5ed7 !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transform: translateY(-1px);
  cursor: pointer;
}

.login-form .btn-primary:active {
  transform: translateY(0px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Links inside the small helper text */
.login-form small a {
  color: #000000 !important;
  text-decoration: none;
  font-weight: 400;
}

.login-form small a:hover {
  color: #333333 !important;
  text-decoration: underline;
}

.text-muted {
  color: #6c757d !important;
}

/* Password show/hide eye icon (fix by Fred, Jan 10 2026) */
.login-form .input-group-text {
  background-color: #fff !important;
  border-left: none !important;
  color: #6c757d;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

.login-form #password {
  border-right: none !important;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.login-form .input-group:focus-within {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  border-radius: 8px;
}

.login-form .input-group:focus-within .form-control,
.login-form .input-group:focus-within .input-group-text {
  border-color: #86b7fe !important;
}

#togglePassword:hover {
  color: #0d6efd !important;
}

/* --- Contributor application / contribution pages --- */
.author-contribution {
  width: 100%;
  max-width: 1200px;
  margin: 10px auto;
}

.author-contribution form {
  margin-bottom: 15px;
  background: white;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.3);
  padding: 30px;
  border-top: 1px solid;
  border-radius: 10px;
}

@media (max-width: 768px) {
  .author-contribution {
    max-width: 100%;
    padding: 0 10px;
  }
}

@media (max-width: 576px) {
  .container,
  .author-contribution,
  .card {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}
