/* === Style Café Malin - Page Inscription (mis à jour) === */

body {
  background: url('../img/fond.png') no-repeat center/cover;
  margin: 0;
  font-family: 'Poppins', sans-serif;
  background-color: #fff1e6;
  color: #3c3f42;
}

.navbar {
  background-color: #fff7ed;
  padding: 1.2rem 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 2px 5px rgba(0,0,0,0.05);
  height: 50px;
}

.nav-left {
  display: flex;
  align-items: center;
}

.nav-left img {
  height: 60px;
  filter: brightness(0) saturate(100%) invert(16%) sepia(20%) saturate(747%) hue-rotate(350deg) brightness(90%) contrast(90%);
}

.nav-right {
  display: flex;
  gap: 30px;
}

.nav-right a {
  color: #3c3f42;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  font-size: 1rem;
  padding: 6px 14px;
  border-radius: 8px;
}

.nav-right a:hover {
  background-color: #b2794c;
  color: white;
}

.login-container {
  max-width: 500px;
  margin: 80px auto;
  background: #fffaf5;
  padding: 30px 25px;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.07);
  text-align: left;
}

.login-container h2 {
  text-align: center;
  margin-bottom: 20px;
  color: #422a1d;
  font-size: 32px;
  background-color: #fffaf5;
}

form label {
  display: block;
  margin-top: 20px;
  font-weight: 500;
}

form input[type="text"],
form input[type="email"],
form input[type="password"] {
  width: 100%;
  padding: 14px;
  margin-top: 5px;
  border: 1px solid #ccc;
  border-radius: 10px;
  font-size: 16px;
  background: #fff;
  transition: border 0.3s, background-color 0.3s;
  box-sizing: border-box;
}

form input:focus,
form input:valid {
  border-color: #b2794c;
  background-color: #fcefe6;
  outline: none;
}

.password-field {
  position: relative;
}

.toggle-password {
  position: absolute;
  right: 12px;
  top: 53%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #aaa;
}

.password-strength-container {
  background-color: #f0e0d6;
  height: 8px;
  border-radius: 5px;
  overflow: hidden;
  margin: 10px 0 10px;
  display: none;
}

#password-strength-bar {
  height: 100%;
  width: 0%;
  transition: width 0.3s;
}

.password-strength-text {
  font-size: 13px;
  margin-bottom: 10px;
  display: none;
  color: #b2794c;
}

.password-rules {
  margin: 0;
  padding: 5px 0 20px 0;
  list-style: none;
}

.password-rules p {
  font-size: 13px;
  color: #703e23;
  margin: 6px 0;
  display: flex;
  align-items: center;
}

.password-rules p::before {
  content: "\f005";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 6px;
  color: #b2794c;
}

.erreur, .success {
  border: 1px solid #d8a39d;
  background-color: #fff2f0;
  color: #b23b3b;
  padding: 12px;
  margin-bottom: 20px;
  border-radius: 8px;
  font-size: 14px;
  text-align: center;
}

.success {
  background-color: #eaf8f0;
  color: #3c763d;
  border-color: #3c763d;
}

button[type="submit"] {
  background-color: #b2794c;
  color: white;
  font-weight: 600;
  padding: 14px;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  margin-top: 25px;
  width: 100%;
  font-size: 16px;
  transition: background-color 0.3s ease;
}

button[type="submit"]:hover {
  background-color: #9f5f2d;
}

.footer {
  background-color: #422a1d;
  color: white;
  text-align: center;
  padding: 20px 0;
  font-size: 0.85rem;
  margin-top: 60px;
}

@media screen and (max-width: 600px) {
  .login-container {
    padding: 20px;
    margin: 40px 15px;
  }

  .navbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .nav-left,
  .nav-right {
    flex-direction: column;
    width: 100%;
    gap: 10px;
  }

  h2 {
    font-size: 24px;
    text-align: center;
  }

  form label,
  form input[type="text"],
  form input[type="email"],
  form input[type="password"],
  .password-rules p,
  .password-strength-text,
  button[type="submit"] {
    font-size: 14px;
  }

  .toggle-password {
    right: 10px;
  }

  .footer {
    font-size: 0.75rem;
  }
}

