/* conditions.css — Page 3 : VOS CONDITIONS ACTUELLES DE LOGEMENT */

/* ===== Bloc "Vous êtes" ===== */
.conditions-vousetes{
  margin-bottom:18px;
  font-size:.9rem;
}

.conditions-vousetes h3{
  margin:0 0 6px;
  font-size:.9rem;
}

.conditions-vousetes-cols{
  display:flex;
  flex-wrap:wrap;
  gap:32px;
  align-items:flex-start;
}

.conditions-col{
  flex:1 1 260px;
}

.conditions-col label{
  display:block;
  margin-bottom:6px;
}

.conditions-vousetes input[type="radio"]{
  position:relative;
  top:0;
}

.conditions-autre-label{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:26px;
}

.conditions-autre-input{
  width:0;
  max-width:0;
  padding:0;
  margin-left:0;
  border:0;
  font:inherit;
  overflow:hidden;

  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(-6px);

  transition:
    opacity .14s ease,
    transform .14s ease,
    max-width .14s ease,
    visibility 0s linear .14s;
}

.conditions-autre-label--active .conditions-autre-input{
  width:200px;
  max-width:200px;
  padding:2px 4px;
  margin-left:4px;
  border:1px solid #b3b3b3;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(0);

  transition:
    opacity .14s ease,
    transform .14s ease,
    max-width .14s ease,
    visibility 0s;
}

/* ===== Adresse actuelle ===== */
.conditions-adresse{
  margin-bottom:16px;
  font-size:.9rem;
}

.conditions-adresse h3{
  margin:0 0 4px;
  font-size:.9rem;
}

.adresse-ligne-unique{
  display:flex;
  flex-wrap:nowrap;
  gap:12px;
  align-items:flex-end;
}

.adresse-col{
  display:flex;
  flex-direction:column;
  font-size:.9rem;
}

.adresse-col input{
  padding:3px 5px;
  font:inherit;
}

.adresse-rue{ flex:1.6 1 0; }
.adresse-ville{ flex:1.2 1 0; }
.adresse-cp{ flex:0 0 90px; }

/* ===== Demande / N° de logement social ===== */
.conditions-logement-social{
  margin-bottom:0;
  font-size:.9rem;
}

.conditions-logement-social h3{
  margin:0 0 4px;
  font-size:.9rem;
}

.logement-social-etat{
  display:flex;
  gap:18px;
  align-items:center;
  margin:2px 0 6px;
}

.logement-social-etat input[type="radio"]{
  position:relative;
  top:-4px;
}

.logement-social-etat label{
  display:flex;
  align-items:center;
  gap:4px;
}

.logement-social-num-wrapper{
  display:none;
  margin:10px 0;
}

.logement-social-num-wrapper label{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.logement-social-num-wrapper input{
  padding:3px 5px;
  font:inherit;
  width:16ch;
}

/* ===== N° CAF + N° Sécurité sociale ===== */
.conditions-numeros{
  margin-bottom:16px;
  font-size:.9rem;
}

.numero-ligne{
  margin-bottom:10px;
}
.numero-ligne:last-child{
  margin-bottom:0;
}

.numero-ligne label{
  display:block;
}

.numero-ligne input{
  padding:3px 5px;
  font:inherit;
}

#num_caf{ width:13ch; }
#num_secu{ width:28ch; }

.logement-social-num-wrapper input,
#num_caf,
#num_secu{
  text-align:center;
}

.logement-social-num-wrapper input::placeholder,
#num_caf::placeholder,
#num_secu::placeholder{
  text-align:center;
}

.logement-social-num-wrapper input::-webkit-input-placeholder,
#num_caf::-webkit-input-placeholder,
#num_secu::-webkit-input-placeholder{
  text-align:center;
}

#situation_autre_texte{
  text-align:left;
}

/* ===== Moyen de locomotion ===== */
.conditions-locomotion{
  margin-bottom:4px;
  font-size:.9rem;
}

.conditions-locomotion h3{
  margin:0 0 4px;
  font-size:.9rem;
}

.locomotion-options{
  display:flex;
  flex-wrap:wrap;
  gap:20px;
}

.locomotion-options label{
  display:flex;
  align-items:center;
  gap:6px;
}

@media (max-width:768px){
  .adresse-ligne-unique{
    flex-wrap:wrap;
  }

  .adresse-rue,
  .adresse-ville,
  .adresse-cp{
    flex:1 1 100%;
  }
}

/* Ajustements responsive page 3 */
.conditions-vousetes-cols{
  column-gap:32px;
  row-gap:0;
}

.conditions-autre-label{
  gap:4px;
}

.conditions-autre-input{
  margin-left:0;
}

@media (max-width:599px){
  .conditions-vousetes-cols{
    flex-direction:column;
    gap:0;
  }

  .conditions-col{
    width:100%;
    flex:0 0 auto;
  }

  .conditions-col label{
    margin-bottom:6px;
  }

  .conditions-autre-label{
    width:100%;
  }
}
