#contenu {
  height: 100dvh;
}

#map {
  margin-top: 5px;
  overflow: auto;
}

#participants {
  margin-top: 5px;
}

#participants button {
  margin-right: 3px;
  margin-top: 2px;
}

#participants button.selected {
  background-color: lightblue;
}

.custom-text {
  background: white;
  padding: 8px 12px;
  margin: 10px;
  font-size: 14px;
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
}

@media (orientation: portrait) {
  #participants, .custom-text, #participants button {
    font-size: 0.5rem;
  }
}

@media (width < 1250px) {
  #contenu {
    display: flex;
    flex-direction: column;
  }

  #map {
    flex: 1;
  }
}

@media (min-width: 1250px) {
  #contenu {
    display: grid;
    align-content: start;
    grid-template-columns: 1fr 200px;
    grid-template-rows: auto 1fr;
    gap: 10px;
  }

  #slide {
    grid-column: 1 / 3;
    grid-row: 1;
    height: fit-content;
  }

  #participants {
    grid-column: 2;
    grid-row: 2;
    line-height: 25px;
  }

  #participants span {
    display: block;
  }

  #map {
    grid-column: 1;
    grid-row: 2;
  }
}
