
/* =========================
   Register page (scoped)
   ========================= */

#register-page{
  padding:64px 16px;
}

#register-page .register-container{
  max-width:680px;
  margin:0 auto;
}

#register-page .register-card{
  background:#ffffff;
  border:1px solid #e4e7f0;
  border-radius:16px;
  padding:36px 34px 32px;
  box-shadow:0 20px 40px rgba(15,23,42,.12);
}

/* Header card */

#register-page .header{
  text-align:center;
  margin-bottom:28px;
}

#register-page h1{
  margin:0;
  font-size:30px;
  letter-spacing:-.02em;
}

#register-page .header p{
  margin-top:6px;
  font-size:14px;
  color:#475569;
}

/* Form */

#register-page form{
  display:grid;
  gap:18px;
}

#register-page .grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

@media (max-width:640px){
  #register-page .grid-2{
	grid-template-columns:1fr;
  }
}

#register-page .field label,
#register-page legend{
  font-size:13px;
  color:#475569;
  margin-bottom:6px;
  display:block;
}

#register-page input,
#register-page select{
  width:100%;
  padding:12px;
  border-radius:12px;
  border:1px solid #e4e7f0;
  background:#f8fafc;
  font-size:15px;
  color:#0f172a;
}

#register-page input:focus,
#register-page select:focus{
  outline:none;
  border-color:#7c3aed;
  box-shadow:0 0 0 3px rgba(124,58,237,.15);
}

/* Radio */

#register-page fieldset{
  border:0;
  padding:0;
}

#register-page .radio-group{
  display:flex;
  gap:18px;
  margin-top:6px;
}

#register-page .radio-group label{
  font-size:14px;
  color:#0f172a;
}

/* Captcha */

#register-page .captcha-box{
  display:flex;
  gap:12px;
  margin-top:6px;
}

/* --- Checkbox à droite (ultra robuste) --- */

#register-page .checkbox-row{
  display:grid !important;
  grid-template-columns: auto 22px !important; /* texte | checkbox */
  align-items:start !important;
  gap:8px !important;

  width: fit-content;          /* ← clé */
  max-width:100%;
  margin:auto;
}

/* Empêche le texte de passer sous la checkbox */
#register-page .checkbox-row label{
  max-width:100%;
  margin:0 !important;
  line-height:1.45;
}


#register-page .checkbox-row input[type="checkbox"]{
  width:18px !important;
  height:18px !important;
  margin-top:2px !important;
  justify-self:end !important;
}

#register-page .checkbox-row a{
  color:#7c3aed !important;
  text-decoration:none !important;
  pointer-events:auto !important;
}

#register-page .checkbox-row a:hover{
  text-decoration:underline !important;
}

/* Button */

#register-page button{
  margin-top:8px;
  width:100%;
  padding:14px;
  border-radius:14px;
  border:none;
  background:linear-gradient(135deg, #7c3aed, #3b82f6);
  color:#ffffff;
  font-size:16px;
  font-weight:600;
  cursor:pointer;
  box-shadow:0 14px 28px rgba(124,58,237,.25);
}

#register-page button:hover{
  filter:brightness(1.05);
}