.status-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%; /* Cree un cercle */
  margin-right: 5px;
}

.status-ok {
  background-color: green;
}

.status-ko {
  background-color: red;
}

.status-low-power {
  background-color: orange;
}

.status-reserve {
  background-color: #8A2BE2;
}

.user-status {
  font-size: 14px;
  color: black;
  display: flex;
  align-items: center;
  gap: 8px;
}

/* Responsive : si écran trop petit, passe sous le titre */
@media (max-width: 768px) {
  #site-list > div {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
}

/* Agrandir les popups Leaflet */
.leaflet-popup-content {
  font-size: 40px;   /* Taille du texte plus grande */
  line-height: 1.5;  /* Espacement agréable */
  min-width: 250px;  /* Largeur minimum */
  max-width: 450px;  /* Largeur maximum */
}

.leaflet-popup-content-wrapper {
  padding: 20px;     /* Plus d’espace autour du texte */
  font-weight: 500;  /* Texte un peu plus gras pour la lisibilité */
}

.action-edit {
  color: blue;

  cursor: pointer;
  margin-right: 8px;
}

.action-delete {
  color: red;

  cursor: pointer;
}

#map-container {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  width: 100%;
  max-width: 1100px;  /* limite la largeur totale */
  margin: 0 auto;
}

#map {
  flex: 0 0 700px;    /* largeur fixe pour la carte */
  height: 400px;
  border: 1px solid #ccc;
  border-radius: 12px;
}

#map-legend {
  flex: 0 0 200px;    /* largeur fixe pour la légende */
  background: transparent;
  border: none;
  font-size: 14px;
  line-height: 1.6;
  margin-top: 10px;
}

#map-legend h4 {
  margin: 0 0 5px 0;
  font-weight: 600;
}

#map-legend ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#map-legend li {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
}

.legend-dot {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  margin-right: 8px;
  border: 1px solid #333;
}

/* Responsive : empile carte + légende seulement en dessous de 900px */
@media (max-width: 900px) {
  #map-container {
    flex-direction: column;
    align-items: center;
  }

  #map {
    width: 95%;
    flex: none;
  }

  #map-legend {
    width: 95%;
    text-align: center;
  }
}
