html,
body {
  margin: 0;

  height: 100%;

  font-family: "Segoe UI", sans-serif;
}

body {
  background: radial-gradient(
    circle at center,
    #edf2f7 0%,
    #d9e4f1 55%,
    #c6d9ee 100%
  );
}

.login-page {
  min-height: 100vh;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  align-items: center;
}

.login-container {
  margin-top: 50px;

  display: flex;

  flex-direction: column;

  align-items: center;
}

.top-logo-container {
  margin-bottom: 35px;
}

.railman-logo {
  width: 220px;

  height: auto;
}

.login-form-container {
  width: 360px;
}

.input-group {
  margin-bottom: 22px;
  position: relative;
}
.input-icon {
  position: absolute;

  left: 12px;

  top: 50%;

  transform: translateY(-50%);

  color: #777;

  font-size: 16px;
}

.input-group input {
  width: 100%;

  box-sizing: border-box;

  padding: 14px 45px 14px 40px;

  border: none;

  border-bottom: 1px solid #9da8b5;

  background: rgba(255, 255, 255, 0.25);

  font-size: 14px;

  outline: none;
}
.password-toggle {
  position: absolute;

  right: 10px;

  top: 50%;

  transform: translateY(-50%);

  border: none;

  background: none;

  cursor: pointer;

  font-size: 16px;
}

.login-btn {
  width: 140px;

  height: 38px;

  display: block;

  margin: 0 auto;

  border: none;

  border-radius: 4px;

  background: #2f77c4;

  color: white;

  font-size: 15px;

  font-weight: 600;

  cursor: pointer;

  transition: 0.2s ease;
}

.login-btn:hover {
  background: #255fa1;
}

.footer-branding {
  display: flex;

  flex-direction: column;

  align-items: center;

  margin-bottom: 30px;
}

.apna-logo {
  width: 340px;

  height: auto;

  margin-bottom: 15px;
}

.footer-links {
  color: #555;

  font-size: 13px;
}

.alert {
  border-radius: 8px;

  padding: 14px;

  margin-bottom: 18px;

  font-size: 14px;
}

.alert-error {
  background: #fff2f2;

  border-left: 4px solid #dc3545;

  color: #8b1e1e;
}

.alert-warning {
  background: #fff8e5;

  border-left: 4px solid #f0ad4e;

  color: #8a6d3b;
}

.alert-success {
  background: #edf9f0;

  border-left: 4px solid #28a745;

  color: #155724;
}
