body {
	margin: 0;
	padding: 0;
	height: 100vh;
	width: 100vw;
	font-family: Optima, Candara, 'Noto Sans', source-sans-pro, sans-serif;
	font-weight: normal;
	font-size: 1em;
	accent-color: orange;
	box-sizing: border-box;
}
#map {
	height: 100%;
	width: 100%;
}

#info {
	z-index: 1000;
	position: absolute;
	top: 10px;
	right: 10px;
	padding: 1ex 1em;
	border: 1px solid #aaa;
	border-radius: 10px;
	background-color: rgba(255, 255, 255, 0.66);
	backdrop-filter: blur(3px);
	box-shadow: 3px 3px 8px 0px #333;
	display: flex;
	flex-direction: column;
	row-gap: .5ex;
}
#infoHeader {
	display: flex;
	justify-content: space-between;
	column-gap: 1rem;
}
#infoHeader h1, #toggleMenu {
	font-size: 1.1em;
	text-wrap: nowrap;
	margin: 0;
}
#toggleMenu {
	padding-inline: .3em;
	cursor: pointer;
	min-width: 1.6rem; /* avoid floundering element when toggling */
}

.legend_element label {
	display: block;
	width: 100%;
	color: white;
	padding: .3ex .3em;
}
.legend_element {
	border-radius: 5px;
	font-weight: 500;
}
.legend_element:hover {
	animation: hoverMenu .3s;
	transform: scale(1.05);
}
@keyframes hoverMenu {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.05);
  }
}
.legend_element input {
	display: none;
}
.legend_element:not(:has(input:checked)) {
	filter: brightness(0.7);
}
.info_element {
	font-weight: 500;
	display: flex;
	justify-content: space-between;
	& a {
		color: inherit;
		text-decoration: none;
	}
}


.leaflet-popup-content h3 { /* todo: find better solution for small containers without image! */
	min-width: 300px;
}
