body,
html {
  background-color: #f1f1f1;
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  padding: 0;
  /* Comment out the following two lines during dev for an easier life */
  cursor: none;
  overflow: hidden;
}

@keyframes pulsateStore {
  0% {
    fill: #b30437;
  }
  50% {
    fill: #43b02a;
  }
  100% {
    fill: #b30437;
  }
}

.map {
  max-width: 100%;
  /*height: 858px;*/
  height: 1455px;
}

.map [id^="store-"].active {
  fill: #43b02a !important;
  /* animation: pulsateStore 2s infinite; */
}
.map [id^="sign-"].active path#signback {
  fill: #43b02a;
}

.map .youarehere {
  fill: #43b02a;
}

.map #youarehere-btn path {
  fill: #43b02a;
}
.map #youarehere-circle.active {
  fill: #43b02a;
}

.map [id^="escalator-"].active {
  stroke: #43b02a;
}

.direction-line {
  stroke: #43b02a;
  stroke-width: 3px;
  stroke-dasharray: 3, 3;
  animation: dash 60s linear infinite;
  fill: none;
}
@keyframes dash {
  to {
    stroke-dashoffset: -1000;
  }
}

#store-info {
  position: absolute;
  margin-top: -200px;
  /*margin-top: -340px;*/
  padding: 20px;
  width: 44vw;
  font-size: 1.1em;
  left: 30px;
}
#store-info .store-name {
  font-weight: bold;
}

#infoscreen-player {
  width: 100%;
  height: 505px;
  display: none;
}
#infoscreen-player.infoscreen-player-show {
  display: block;
}

.mallList {
  background-color: #252831;
  color: #fff;
  clear: both;
  font-size: 10px;
  padding-bottom: 20px;
  display: flex;
}
.mallList.mallList-hide {
  display: none;
}

.category-row {
  flex: 1;
  padding-right: 5%;
}
.category .category-name {
  padding-top: 1em;
  padding-bottom: 1em;
  padding-left: 5px;
  padding-right: 5px;
  font-size: 16px;
  /*cursor: pointer;*/
}
.category.activeCategory .category-name {
  background-color: #43b02a;
}

.storeList .store {
  font-size: 1em;
  padding: 0.5em;
  padding-left: 5px;
  padding-right: 5px;
  display: flex;

  /*cursor: pointer;*/
}
.category:last-child .storeList .store {
  padding-right: 1em;
}
.storeList .store.activeStore {
  background-color: #43b02a;
}

#store-info-attention {
  transition: all 0.2s;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 20%;
  left: calc(50% - (13em / 2));
  width: 13em;
  background: white;
  padding: 1em;
  border-radius: 10px;
  box-shadow: 0px 0px 100px rgba(0, 0, 0, 0.7);
  font-size: 2em;
  text-align: center;
}
.attention-show {
  opacity: 1 !important;
  top: 40% !important;
  visibility: visible !important;
}

@keyframes pulsateUseractivity {
  0% {
    background: #fff;
    transform: scale(1);
  }
  50% {
    background: yellow;
    transform: scale(1.2);
  }
  100% {
    background: #fff;
    transform: scale(1);
  }
}

#useractivity-modal {
  transition: all 0.2s;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 20%;
  left: calc(50% - (13em / 2));
  width: 13em;
  background: white;
  padding: 1em;
  border-radius: 10px;
  box-shadow: 0px 0px 100px rgba(0, 0, 0, 0.7);
  font-size: 2em;
  text-align: center;
  animation: pulsateUseractivity 2s infinite;
}
.useractivity-show {
  opacity: 1 !important;
  top: 40% !important;
  visibility: visible !important;
}
