body {
  background-color: black;
  text-align: center;
  overflow-x: hidden;
}

h2 {
  color: white;
  font-family: Arial, Helvetica, sans-serif;
}

#canvas {
  background-color: #2a5;
}

input {
  display: none;
}

label,
button {
  font-size: 18px;
  padding: 2px 8px;
  margin: 0.3rem;
  margin-top: 0.8rem;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.3s ease;
  border-radius: 5px;
  color: rgba(256, 256, 256);
  border: 2px double transparent;
  background-image: linear-gradient(rgb(13, 14, 33), rgb(13, 14, 33)),
    radial-gradient(circle at left top, rgb(1, 110, 218), rgb(217, 0, 192));
  background-origin: border-box;
  background-clip: padding-box, border-box;
}

.disabled {
  background: gray;
  filter: grayscale(100%);
}

button:hover {
  transition: all 0.3s ease;
  box-shadow: rgba(111, 76, 255, 0.5) 0px 0px 20px 0px;
}

#infoPanel,
#osmPanel {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  width: 100vw;
  height: 105vh;
  display: none;
}

#infoPanel > div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 60vh;
  width: 65vw;
  background: rgb(58, 58, 58);
  color: white;
  overflow: auto;
}

#osmPanel > div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

ul {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 1.1rem;
}

a {
  color: aqua;
}

span {
  padding: 2px 8px;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.3s ease;
  border-radius: 5px;
  color: rgba(256, 256, 256);
  border: 2px double transparent;
  background-image: linear-gradient(rgb(13, 14, 33), rgb(13, 14, 33)),
    radial-gradient(circle at left top, rgb(1, 110, 218), rgb(217, 0, 192));
  background-origin: border-box;
  background-clip: padding-box, border-box;
}
