
html, body { height: 100% }

* {
    box-sizing: border-box;
  }
  
  body {
    font-family: Arial, Helvetica, sans-serif;
    margin: 0;
  }
  
  .header {
    padding: 1px;
    text-align: center;
    background: #808080;
    color: #cecece;
    box-shadow: 0 8px 16px 0 #00000080;
    z-index: 10;
    position: fixed;
    width: 100%;
  }
  
  .header h1 {
    font-size: 30px;
    color: white;
  }
    
  .main {   
    z-index: 0;
  }
    

  .main img {
      display: block;
      width: 980px;
  }

.mainMap {
  z-index: 0;
    position: relative;
    top: 110px;
  }
  
  .mainMap img {
    display: block;
    width: 980px;
  }




  .class {
    position: absolute;
    display: inline-block;

    border-spacing: 50px;
    border-color: #00bbff;
    border-width: 0px;
    border-style: solid;

    transition-duration: .1s;

    text-align: center;
  }
  .classClickable {
    cursor: pointer;
  }
  .class:hover {
    border-spacing: 50px;
    border-color: #00bbff;
    border-width: 6px;
    border-style: solid;

    transition-duration: .3s;
  }
  .class:hover p {
    font-size: large;
    box-shadow: 5px 5px 6px 2px #0000004d;
  }
  .classClickable:active {
    border-spacing: 50px;
    border-color: #008ec2;
    border-width: 6px;
    border-style: solid;

    transition-duration: .2s;
  }

  .class p {
    width: fit-content;
    background-color: #1fa789;
    color: #dfdfdf;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -100%);
    padding: 2px;
    border-radius: 0px;
    border: 3px #0a6357 solid;
    box-shadow: 2px 2px 2px 2px #0000004d;
    transition-duration: 500ms;
    font-weight: bold;
    cursor: default;
  }

  .class p:hover {
    opacity: .5;
  }

  .classClickable p {
    cursor: pointer;
  }

  .class p img {
    width: 16px;
    height: 16px;
    display: inline;
    margin-right: 3px;
  }

  .classNone p {
    background-color: #636363 !important;
    color: #dfdfdf !important;
    border: 3px #4d4d4d solid !important;
  }

/* Tooltip */
.class .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: #474747;
  color: #e0e0e0;
  text-align: center;
  padding: 5px 0;
  border-radius: 0px;

  /* Position the tooltip text */
  position: absolute;
  z-index: 1;
  bottom: 105%;
  left: 50%;
  margin-left: -60px;

  /* Fade in tooltip */
  opacity: 0;
  transition: opacity 0.3s;

  pointer-events: none;
}
.class .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #474747 transparent transparent transparent;
}
.class:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}



.movement {
  cursor: pointer;
  position: absolute;
  display: inline-block;

  border-spacing: 50px;
  border-color: #00ff40;
  border-width: 0px;
  border-style: solid;

  transition-duration: .1s;

  text-align: center;
}
.movement:hover {
  border-spacing: 50px;
  border-color: #00ff40;
  border-width: 6px;
  border-style: solid;

  transition-duration: .3s;
}
.movement:hover p {
  font-size: large;
  box-shadow: 5px 5px 6px 2px #0000004d;
}
.movement:active {
  border-spacing: 50px;
  border-color: #00c241;
  border-width: 6px;
  border-style: solid;

  transition-duration: .2s;
}

.movement p {
  background-color:#00ff40;
  box-shadow: 2px 2px 2px 2px #0000004d;
  border: 3px #008844 solid;
  padding: 0px 2px;
  font-weight: bold;
  border-radius: 0px;
  white-space: nowrap;
  transition-duration: 500ms;

  width: fit-content;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -100%);
}

.movement p:hover {
  opacity: .5;
}

.movement p img {
  width: 16px;
  height: 16px;
  display: inline;
}

/* Tooltip */
.movement .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: #474747;
  color: #e0e0e0;
  text-align: center;
  padding: 5px 0;
  border-radius: 0px;

  /* Position the tooltip text */
  position: absolute;
  z-index: 1;
  bottom: 105%;
  left: 50%;
  margin-left: -60px;

  /* Fade in tooltip */
  opacity: 0;
  transition: opacity 0.3s;

  pointer-events: none;
}
.movement .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #474747 transparent transparent transparent;
}
.movement:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}


.place {
  position: absolute;
  display: inline-block;

  /*border: red 1px solid;*/

  transition-duration: .1s;

  text-align: center;
}
.place:hover {
  transition-duration: .3s;
  width: 100px;
}

.place img {
  width: 16px;
  height: 16px;
  display: inline;
  margin-right: 3px;
}

.place p {
  background-color:#00bbff;
  border: 3px #0061a1 solid;
  box-shadow: 2px 2px 2px 2px #0000004d;
  padding: 0px 2px;
  font-weight: bold;
  border-radius: 0px;
  white-space: nowrap;
  transition-duration: 500ms;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -100%);
  cursor: default;
  overflow: hidden;
  max-width: fit-content;
  width: 25px;
}

.place p:hover {
  opacity: .5;
}
.place:hover p {
  transition-duration: .7s;
  transition-delay: 0s;
  width: 150px;
}

.addExtraWidthToMarker:hover p {
  width: 200px;
}

/* Tooltip */
.place .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: #474747;
  color: #e0e0e0;
  text-align: center;
  padding: 5px 0;
  border-radius: 0px;

  /* Position the tooltip text */
  position: absolute;
  z-index: 1;
  bottom: 105%;
  left: 50%;
  margin-left: -60px;

  /* Fade in tooltip */
  opacity: 0;
  transition: opacity 0.3s;

  pointer-events: none;
}

.place .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #474747 transparent transparent transparent;
}

.place:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}

.selected {
  border: 3px solid #ffe600 !important;
}
