* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style: none;
}
body {
  font-family: sans-serif;
  font-size: 16px;
  line-height: 1;
}
#page {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
#map {
  position: relative;
  flex-grow: 1;
}
#map .mode-menu {
  position: absolute;
  left: 0;
  top: 108px;
  background: white;
}
#map .mode-menu .items .item a {
  display: block;
  width: 48px;
  height: 56px;
  text-decoration: none;
  color: black;
  position: relative;
  text-align: center;
}
#map .mode-menu .items .item a .label {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 4px;
  line-height: 1.7;
  font-size: 7.5px;
}
#map .mode-menu .items .item a .icon {
  position: absolute;
  width: 100%;
  left: 0;
  top: 4px;
  font-size: 24px;
  line-height: 1.3;
}
#map .mode-menu .items .item a:hover {
  background: lightblue;
}
#map .mode-menu .items .item.active a {
  background: lightskyblue;
}
#menu {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  background: white;
}
#menu .items {
  display: flex;
  flex-wrap: wrap;
}
#menu .items .item a {
  display: block;
  text-transform: none;
  color: black;
  width: 64px;
  height: 64px;
  position: relative;
  text-align: center;
}
#menu .items .item a .label {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  line-height: 1.7;
  font-size: 10px;
}
#menu .items .item a .icon {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  font-size: 32px;
  line-height: 1.3;
}
#menu .items .item a .additional-icon {
  position: absolute;
  width: 50%;
  right: 0;
  top: 32px;
  font-size: 16px;
  text-shadow: 0 0 4px white;
}
#menu .items .item a:hover {
  background: lightblue;
}
#menu .items .item a:hover .additional-icon {
  text-shadow: 0 0 4px lightblue;
}
#menu .items .item.opened a {
  background: lightskyblue;
}
#menu .items .item.opened a .additional-icon {
  text-shadow: 0 0 4px lightskyblue;
}
@media (max-width: 480px) {
  #menu {
    position: relative;
  }
}
.map_newWalk_distance {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  background: white;
  padding: 4px;
}
