html, body {
  height: 100%;
  margin: 0;
  font-family: sans-serif;
}

#map {
  height: 100vh;
  width: 100%;
  position: relative;
  z-index: 0;
}

/* Überschrift oben links */
#title-box {
  position: absolute;
  top: 20px;
  left: 20px;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 10px 20px;
  border-radius: 12px;
  border: 2px solid #000;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  z-index: 1000;
  color: #000099;
  font-size: 1.5rem;
  font-weight: bold;
}

#filter-box {
  position: absolute;
  top: 80px;
  left: 20px;
  background: rgba(255,255,255,0.9);
  padding: 10px;
  border-radius: 12px;
  border: 2px solid #000;
  box-shadow: 0 0 5px rgba(0,0,0,0.2);
  z-index: 1000;
  color: #000099;
  font-size: 14px;
}
#filter-box label {
  display: block;
  margin-bottom: 5px;
}


.leaflet-control-layers {
  top: 80px;
  background: rgba(255,255,255,0.9);
  padding: 10px;
  border-radius: 12px;
  border: 2px solid #000 !important;
  box-shadow: 0 0 5px rgba(0,0,0,0.2);
  z-index: 1000;
  color: #000099;
  font-size: 14px;
}

.leaflet-control-layers label {
  margin-bottom: 5px;
}

.123marker-multinet {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid white;
  background: conic-gradient(
    magenta 0% 25%,       /* D1 */
    deeppink 25% 50%,     /* D1LTE */
    red 50% 75%,          /* D2 */
    orange 75% 100%       /* D2LTE */
  );
  box-shadow: 0 0 2px #333;
}

.legend-icon {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid black;
  margin-right: 5px;
  vertical-align: text-bottom;
}
