* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

body {
  margin: 0;
  color: #ececec;
  font-family: 'Quicksand' !important;
}

h1 {
  font-size: 32px;
}

h1 > small {
  font-size: 20px;
}

#menu a, #menu a:hover, #admin a, #admin a:hover, .marker-image-author a, .marker-image-author a:hover {
  color: wheat !important;
}

.leaflet-control > a, .leaflet-control > a:hover, .leaflet-control-layers-base, .leaflet-control-layers-expanded {
  color: #ececec;
  background-color: #1a1a1a !important;
}

hr {
  border-top: 1px dotted #ececec;
}

#map {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
}

#markerTypes, #markers {
  display: none;
}

#menu {
  position: absolute;
  bottom: 0;
  background: #1a1a1a;
  width: 100%;
  z-index: 9999;
  padding: 10px 80px;
}

#admin {
  background: #1a1a1a;
  width: 100%;
  min-height: 100%;
  position: absolute;
  padding: 50px 30%;
}

#admin > #map {
  display: none;
}

.togglemenu {
  cursor: pointer;
  font-size: 18px;
  margin: 0;
  position: absolute;
  top: 50%;
  right: 0;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.filter-check:hover {
  cursor: pointer;
}

.filter-upper {
  width: 100%;
}

.filter-icon {
  max-height: 25px;
  max-width: 25px;
}

.filter-child {
  font-size: 12px;
}

.filter-child > .filter-icon {
  height: 20px;
}

.filter-children-group {
  margin-top: -6vh;
}

.menu-content {
  display: none;
}

.single-filters {
  margin-right: 15px;
}

.menu-filters {
  padding-left: 20px;
}

.filter > label > input[type="checkbox"], .filter > .filter-upper > label > input[type="checkbox"] {
  display: none;
}

.loginform {
  background: #1a1a1a;
  padding: 50px 30%;
  height: 100%;
  width: 100%;
  position: absolute;
}

.loginform > form > button {
  margin-top: 30px;
}

.leaflet-control-layers-separator, .leaflet-control-layers-overlays {
  display: none;
}

.leaflet-popup-content-wrapper, .leaflet-popup-tip {
  background: #1a1a1a;
  color: #ececec;
}

.leaflet-popup-content-wrapper {
  width: 600px;
  font-family: "Quicksand";
}

.leaflet-popup-content {
  width: 100% !important;
  margin: 0;
  padding: 13px 19px;
}

.marker-title {
  border-bottom: 1px solid rgba(230, 230, 230, 0.5);
  margin-bottom: 10px;
}

.marker-image-author {
  margin: 5px 0;
  width: 100%;
  text-align: right;
}

.marker-description {
  margin: 10px 0;
  font-size: 17px;
}

.marker-color-buttons {
  margin: 5px 0;
}

.marker-color-button {
  display: inline-block;
  border: 1px solid #555555;
  padding: 3px 8px;
  border-radius: 5px;
  cursor: pointer;
}

.marker-color-button.active {
  border-color: #cccccc;
}

.popup-bottom {
  position: relative;
}

.leaflet-popup-tip-container {
  display: none;
}

.menu-links {
  border-top: 1px solid rgba(240, 240, 240, 0.3);
  margin-top: 8px;
  padding-top: 5px;
  width: 100%;
}

.menu-links > span {
  font-size: 14px;
}

.menu-links > a {
  float: right;
  margin: 0px 5px;
}

.description-disabled {
  color: #ffc5c5;
  font-weight: 500;
}

#sidemenu-marker {
  position: absolute;
  right: 0;
  top: -140px;
}

.btn-marker {
  margin: 10px;
  background: #1a1a1a;
  padding: 10px;
  border-radius: 10px;
  font-size: 20px;
}

#sidemenu-export {
  position: absolute;
  right: 0;
  top: -80px;
}

.btn-export {
  margin: 10px;
  background: #1a1a1a;
  padding: 10px;
  border-radius: 10px;
  font-size: 20px;
  cursor: pointer;
}

.btn-marker-actualbutton {
  cursor: pointer;
}

.btn-clear {
  position: absolute;
  right: 0;
  top: 0;
  margin: 20px;
  padding: 5px 8px;
  background: darkred;
  border-radius: 5px;
  cursor: pointer;
}

.marker-subcontent {
  display: none;
  width: 20vw;
  font-size: 14px;
  display: none;
}

.btn-insert {
  display: inline-block;
  margin-left: 15px;
  padding: 5px 8px;
  background: #2a4a4a;
  border-radius: 5px;
  cursor: pointer;
}

.input-coordinates {
  margin-top: 10px;
}

.easyPrintHolder .fullSizeClass { 
  background-image: url(data:image/svg+xml;utf8;base64,PD9...go=);
}

#loading-overlay {
  display: none;
  background-color: rgba(0,0,0,0.6);
  position: absolute;
  width: 100vw;
  height: 100vw;
  z-index: 15000;
  text-align: center;
  padding-top: 40vh;
}

.hidden {
  display: none;
}