html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
}

body {
  overscroll-behavior-y: contain;
}

body::after{
  position:absolute; width:0; height:0; overflow:hidden; z-index:-1;
  content:
    url(images/findplaces.svg)
    url(images/layers.svg)
    url(images/centerme.svg)
    url(images/back.svg)
    url(images/more.svg)
    url(images/send.svg)
    url(images/search.svg)
    url(images/plus.svg)
    url(images/minus.svg)
    url(images/map.svg)
    url(images/more.svg)
    url(images/close.svg)
    url(images/unchecked.svg)
    url(images/checked.svg)
    url(images/uploading.svg)
    url(images/fullscreen.svg)
    url(images/walking_on.svg)
    url(images/walking_off.svg)
  ;
}

div {
/*  user-select: none; */
}

.tabcontainer {
  position:absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background-color: #cccccc;
}

.tab {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  overflow: hidden;
  margin: 0px;
  padding: 0px;
  background-color: #EEEEEE;
  display: none;
}

.place {
  position: relative;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  background-position: left top;
  background-color: #FFFFFF;
  background-origin: content-box;
  box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.1);
  border-radius: 2px;
  margin: 4px;
  border: 0px;
  left: 0px;
  right: 0px;
  height: 64px;
}

.place.removing {
  background-color: #CCCCCC;
}

.place.recent {
  background-image: url(images/recent.png);
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-position: 2px 2px;
}

.placeicon {
  position: absolute;
  border: 0px;
  margin: 8px;
  padding: 0px;
  left: 0px;
  width: 50px;
  height: 50px;
  background-repeat: no-repeat;
  background-size: 48px 48px;
  background-position: center;
  background-color: #efefef;
  background-origin: content-box;
  border-radius: 25px;
  border: 0px;
}

.placerating {
  position: absolute;
  left: 64px;
  top: 8px;
  height: 9px;
  background-image: url(images/star1.svg);
  background-size: auto 9px;
  background-repeat: no-repeat;
}

.placerating::before {
  position: absolute;
  content: '';
  left: 0px;
  bottom: 0px;
  width: 50px;
  height: 9px;
  background-image: url(images/star2.svg);
  background-size: auto 9px;
  background-repeat: no-repeat;
}

.placetitle {
  position: absolute;
  border: 0px;
  margin: 0px;
  top: 10px;
  padding: 0px;
  left: 64px;
  right: 58px;
  height: 24px;
  line-height: 24px;
  font-size: 16px;
  font-weight: bold;
  overflow: hidden;
  white-space: nowrap;
}

.placetitle:after {
  position: absolute;
  right: 0;
  top: 0;
  width: 16px;
  height: 100%;
  background-image: linear-gradient(to right, rgba(255,255,255,0), white);
  content: " ";
}

.placedetail {
  position: absolute;
  border: 0px;
  margin: 0px;
  bottom: 14px;
  padding: 0px;
  left: 64px;
  right: 58px;
  height: 20px;
  line-height: 24px;
  font-size: 12px;
  overflow: hidden;
  white-space: nowrap;
  font-family: 'Roboto Condensed', sans-serif;
}

.placedetail:after {
  position: absolute;
  right: 0;
  top: 0;
  width: 16px;
  height: 100%;
  background-image: linear-gradient(to right, rgba(255,255,255,0), white);
  content: " ";
}

.placedistance {
  position: absolute;
  border: 0px;
  margin: 0px;
  margin-top: 16px;
  padding: 0px;
  right: 8px;
  width: 48px;
  height: 20px;
  line-height: 24px;
  color: #000000;
  font-size: 12px;
  font-weight: bolder;
  text-align: center;
  white-space: nowrap;
  font-family: 'Roboto Condensed', sans-serif;
}

.placeheading {
  position: absolute;
  border: 0px;
  margin: 0px;
  margin-top: 28px;
  padding: 0px;
  right: 8px;
  width: 48px;
  height: 20px;
  line-height: 24px;
  color: #000000;
  font-size: 12px;
  font-weight: bolder;
  text-align: center;
  white-space: nowrap;
  font-family: 'Roboto Condensed', sans-serif;
}

.placedirection {
  position: absolute;
  border: 0px;
  margin: 0px;
  margin-top: 40px;
  padding: 0px;
  right: 8px;
  width: 48px;
  height: 20px;
  line-height: 24px;
  color: #aaaaaa;
  font-size: 12px;
  text-align: center;
  white-space: nowrap;
}

.placearrow {
  position: absolute;
  border: 0px;
  margin: 4px;
  right: 0px;
  width: 56px;
  height: 56px;
  background-image: url(images/arrow.png?1);
  opacity: 0.5;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 52px 52px;
  background-origin: content-box;
  border-radius: 32px;
}

.placemsgcount {
  position: absolute;
  right: 64px;
  top: 6px;
  border: 0px;
  margin: 0px;
  font-size: 12px;
  color: #FF0000;
  text-align: right;
}

.message {
  max-width: 80%;
  clear: both;
  float: left;
  padding: 2px;
  padding-left: 8px;
  padding-right: 8px;
  color: #000000;
  background-color: #FFFFFF;
  box-shadow: 0px 8px 8px 0px rgba(0, 0, 0, .2);
  margin-top: 8px;
  margin-left: 14px;
  border-radius: 0px 8px 8px 8px;
  border: 0px;
  word-wrap: break-word;
  text-align: left;
}

.message:before{
  content:" ";
  position:absolute; left:4px; margin-top:-2px; z-index:1;
  display:block;
  border-bottom: 10px solid transparent;
  border-right: 10px solid #FFFFFF;
}

.message2 {
  max-width: 80%;
  clear: both;
  float: left;
  padding: 2px;
  padding-left: 8px;
  padding-right: 8px;
  color: #000000;
  background-color: #FFFFFF;
  box-shadow: 0px 8px 8px 0px rgba(0, 0, 0, .2);
  margin-top: 2px;
  margin-left: 14px;
  border-radius: 8px;
  border: 0px;
  word-wrap: break-word;
  text-align: left;
}

.botmessage {
  max-width: 80%;
  clear: both;
  float: left;
  padding: 2px;
  padding-left: 8px;
  padding-right: 8px;
  color: #0000AA;
  background-color: #FFFFCC;
  box-shadow: 0px 8px 8px 0px rgba(0, 0, 0, .2);
  margin-top: 8px;
  margin-left: 14px;
  border-radius: 0px 8px 8px 8px;
  border: 0px;
  word-wrap: break-word;
  text-align: left;
}

.botmessage:before{
  content:" ";
  position:absolute; left:4px; margin-top:-2px; z-index:1;
  display:block;
  border-bottom: 10px solid transparent;
  border-right: 10px solid #FFFFCC;
}

.botmessage2 {
  max-width: 80%;
  clear: both;
  float: left;
  padding: 2px;
  padding-left: 8px;
  padding-right: 8px;
  color: #0000AA;
  background-color: #FFFFCC;
  box-shadow: 0px 8px 8px 0px rgba(0, 0, 0, .2);
  margin-top: 2px;
  margin-left: 14px;
  border-radius: 8px;
  border: 0px;
  word-wrap: break-word;
  text-align: left;
}

.mymessage {
  max-width: 80%;
  clear: both;
  float: right;
  padding: 2px;
  padding-left: 8px;
  padding-right: 8px;
  color: #000000;
  background-color: #CFF3FF;
  box-shadow: 0px 8px 8px 0px rgba(0, 0, 0, .2);
  margin-top: 8px;
  margin-right: 14px;
  border-radius: 8px 0px 8px 8px;
  border: 0px;
  word-wrap: break-word;
  text-align: left;
}

.mymessage:before{
  content:" ";
  position:absolute; right:4px; margin-top:-2px; z-index:1;
  display:block;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #CFF3FF;
}

.mymessage2 {
  max-width: 80%;
  clear: both;
  float: right;
  padding: 2px;
  padding-left: 8px;
  padding-right: 8px;
  color: #000000;
  background-color: #CFF3FF;
  box-shadow: 0px 8px 8px 0px rgba(0, 0, 0, .2);
  margin-top: 2px;
  margin-right: 14px;
  border-radius: 8px;
  border: 0px;
  word-wrap: break-word;
  text-align: left;
}

.messagetitle {
  margin-top: 0px;
  margin-bottom: 4px;
  font-size: 8pt;
}

.messagetext {
  margin-top: 4px;
  margin-bottom: 4px;
  font-size: 12pt;
}

.messagetext>img, .messagetext>*>img, .messagetext>*>*>img, .messagetext>*>*>*>img,
.messagetext>*>*>*>*>img, .messagetext>*>*>*>*>*>img, #messagetext>img, #messagetext>*>img {
  max-width: 100%;
}

.attachlink {
  text-decoration: none;
}

.attachphoto {
  height: auto;
  position: relative;
  max-width: 100%;
  padding: 0px;
  margin: 4px;
}

.attachfile {
  height: 46px;
  position: relative;
  max-width: 100%;
  border-radius: 4px;
  background-color: #16a1d0;
  padding: 4px;
  margin: 4px;
  text-align: center;
  text-decoration: none;
  background-image: url(images/file.svg?1);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 32px 32px;
  background-origin: content-box;
  display: inline-block;
  width: 48px;
}

.attachname {
  position: absolute;
  bottom: 0px;
  color: #FFFFFF;
  left: 0px;
  right: 0px;
  white-space: nowrap;
  overflow: hidden;
  margin: 4px;
  line-height: 10px;
  font-size: 10px;
}

.attachimg {
  max-width: 100%;
  border-radius: 4px;
}

.attachicon {
  left: 0px;
  width: 48px;
  height: 48px;
}

.attachprogress {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000, -1px 1px 1px #000000, -1px -1px 1px #000000, 1px -1px 1px #000000;
  font-size: 18px;
  font-weight: bold;
  pointer-events: none;
}

.selected {
  border: 2px solid #888888;
}

#mapcontainer {
  position:absolute;
  top: 48px;
  bottom: 48px;
  left: 0px;
  right: 0px;
  z-index: 10;
  display: none;
}

/*
#map { // rotating map
  position: absolute;
  top: -200px;
  bottom: -200px;
  left: -200px;
  right: -200px;
  z-index: 0;
}
*/

#map {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 0;
}

.mapcontrol {
  position: absolute;
  width: 40px;
  height: 40px;
  padding: 0px;
  margin: 8px;
  background-color: #ffffff;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border: 1px #aaaaaa;
  border-radius: 1px;
  box-shadow: 0px 0px 2px 1px #aaaaaa;
  outline: 0;
  z-index: 1;
  opacity: 0.6;
}

#findplaces {
  right: 48px;
  bottom: 0px;
  background-image: url(images/findplaces.svg?2);
}

#changemap {
  right: 96px;
  bottom: 0px;
  background-image: url(images/layers.svg);
}

#centerme {
  right: 0px;
  bottom: 0px;
  background-image: url(images/centerme.svg?1);
}

#zoomin {
  right: 0px;
  bottom: 96px;
  background-image: url(images/plus.svg?1);
}

#zoomout {
  right: 0px;
  bottom: 48px;
  background-image: url(images/minus.svg?1);
}

#heatmap {
  left: 48px;
  bottom: 0px;
  background-image: url(images/heatmap.svg);
}

#pointa {
  left: 0px;
  top: 0px;
}

#pointb {
  left: 48px;
  top: 0px;
}

#startwalk {
  left: 96px;
  top: 0px;
}

#stopwalk {
  left: 144px;
  top: 0px;
}

#messageplace {
  position: absolute;
  padding-left: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 0px;
  left: 0px;
  right: 0px;
  top: 0px;
  height: 48px;
  line-height: 48px;
  overflow: hidden;
  background-color: #16a1d0;
  z-index: 20;
  box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.5);
}

#messageplaceback {
  position: absolute;
  padding: 0px;
  left: 0px;
  width: 48px;
  top: 0px;
  bottom: 0px;
  background-image: url(images/back.svg);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
}

#messageplacetitle {
  position: absolute;
  padding: 0px;
  left: 48px;
  right: 48px;
  top: 0px;
  bottom: 0px;
  line-height: 48px;
  overflow: hidden;
  white-space: nowrap;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
}

#btnmessagesmenu {
  position: absolute;
  padding: 0px;
  right: 0px;
  width: 48px;
  top: 0px;
  bottom: 0px;
  background-image: url(images/more.svg);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
}

#messagesmenu {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  z-index: 50;
  display: none;
}

#messagesmenuitems {
  position: absolute;
  right: 4px;
  top: 50px;
  width: 192px;
  min-height: 48px;
  z-index: 50;
  background-color: #ffffff;
  box-shadow: 0px 0px 4px 8px rgba(0, 0, 0, 0.1);
  transition: all .5s;
}

#messagelist {
  position:absolute;
  top: 48px;
  bottom: 52px;
  left:0px;
  right:0px;
  overflow: auto;
  text-align: center;
  color: #16a1d0;
  background-color: transparent;
  padding-top: 16px;
  padding-bottom: 16px;
  z-index: 10;
}

#arrowdown {
  position:absolute;
  bottom: 58px;
  right: 5px;
  width: 32px;
  height: 32px;
  margin-right: 4px;
  background-color: #FFFFFF;
  background-image: url(images/arrowdown.svg?1);
  background-size: 28px 28px;
  background-repeat: no-repeat;
  background-position: center;
  border: 0px;
  border-radius: 16px;
  z-index: 15;
  display: none;
}

#messagebar {
  background-color: #eeeeee;
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;
  height: 52px;
  padding: 0px;
  margin: 0px;
  border: 0px;
  z-index: 15;
}

#messagetext {
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 50px;
  margin: 0px;
  margin-left: 4px;
  margin-bottom: 4px;
  padding: 0px;
  padding-left: 36px;
  padding-right: 36px;
  border: 1px solid #ffffff;
  background-color: #ffffff;
  border-radius: 20px;
  outline-width: 0;
  min-height: 40px;
  max-height: 128px;
  overflow: auto;
  line-height: 40px;
  box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.1);
  display: inline-block;
  font-size: 18px;
}

#messagebutton {
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 42px;
  height: 42px;
  margin: 0px;
  margin-right: 4px;
  margin-bottom: 4px;
  padding: 0px;
  border: 0px;
  border-radius: 21px;
  background-color: #16a1d0;
  background-image: url(images/send.svg);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: 13px, center;
  box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.1);
}

#messagebutton:disabled {
  background-color: #CCCCCC;
}

#attachbutton {
  position: absolute;
  bottom: 0px;
  left: 4px;
  width: 42px;
  height: 42px;
  margin: 0px;
  margin-right: 4px;
  margin-bottom: 4px;
  padding: 0px;
  border: 0px;
  border-radius: 21px;
  background-image: url(images/attach.svg);
  background-size: 18px;
  background-repeat: no-repeat;
  background-position: center;
}

#attachphotobutton {
  position: absolute;
  margin: 0px;
  padding: 0px;
  bottom: 0px;
  right: 46px;
  width: 42px;
  height: 42px;
  margin-right: 4px;
  margin-bottom: 4px;
  border: 0px;
  border-radius: 21px;
  background-image: url(images/camera.svg?a);
  background-size: 24px;
  background-repeat: no-repeat;
  background-position: center;
}

#placesheader {
  position: absolute;
  background-color: #16a1d0;
  padding: 0px;
  left: 0px;
  right: 0px;
  top: 0px;
  height: 48px;
  line-height: 48px;
  color: #FFFFFF;
  box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.5);
  z-index: 20;
}

#headertitle {
  position: absolute;
  left: 48px;
  right: 48px;
  top: 0px;
  white-space: nowrap;
  font-size: 18px;
  font-weight: bold;
}

#headerstatus {
  position: absolute;
  right: 0px;
  width: 48px;
  height: 48px;
  background-size: 28px 28px;
  background-repeat: no-repeat;
  background-position: center;
}

.walking_on {
  background-image: url(images/walking_on.svg);
}

.walking_off {
  background-image: url(images/walking_off.svg);
}

#placesfooter {
  position: absolute;
  background-color: #16a1d0;
  padding: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  height: 48px;
  box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.5);
  z-index: 20;
}

#compass {
  position: absolute;
  padding: 0px;
  left: 0px;
  width: 48px;
  height: 48px;
  background-image: url(images/compass.png?1);
  background-size: 32px 32px;
  background-repeat: no-repeat;
  background-position: center;
}

#tracking {
  position: absolute;
  padding: 0px;
  left: 0px;
  width: 48px;
  height: 48px;
  top: 0px;
  background-image: url(images/tracking.svg?1);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
}

#recent {
  position: absolute;
  padding: 0px;
  left: 48px;
  width: 48px;
  height: 48px;
  top: 0px;
  background-image: url(images/star.svg);
  background-size: 32px 32px;
  background-repeat: no-repeat;
  background-position: center;
}

#topplaces {
  position: absolute;
  padding: 0px;
  left: 96px;
  width: 48px;
  height: 48px;
  top: 0px;
  background-image: url(images/note.svg);
  background-size: 28px 28px;
  background-repeat: no-repeat;
  background-position: center;
}

#placeoptionstext {
  position: absolute;
  margin: 4px;
  padding: 0px;
  padding-right: 48px;
  padding-left: 16px;
  left: 144px;
  right: 136px;
  top: 0px;
  bottom: 0px;
  line-height: 40px;
  color: #000000;
  background-color: #ffffff;
  overflow: auto;
  outline-width: 0;
  transition: all .5s;
  white-space: nowrap;
  border-radius: 24px 0px 0px 24px;
}

#placeoptionstext:focus {
}

#placeoptionssearch {
  position: absolute;
  margin: 4px;
  padding: 0px;
  right: 96px;
  width: 40px;
  top: 0px;
  bottom: 0px;
  background-image: url(images/search.svg);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #FFFFFF;
  border-radius: 0px 24px 24px 0px;
}

#maptoggle {
  position: absolute;
  padding: 0px;
  right: 48px;
  width: 48px;
  top: 0px;
  bottom: 0px;
  background-image: url(images/map.svg);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
}

#btnplacesmenu {
  position: absolute;
  padding: 0px;
  right: 0px;
  width: 48px;
  top: 0px;
  bottom: 0px;
  background-image: url(images/more.svg);
  background-size: 24px 24px;
  background-repeat: no-repeat;
  background-position: center;
}

#placesmenu {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  z-index: 50;
  display: none;
}

#placesmenuitems {
  position: absolute;
  right: 4px;
  bottom: 50px;
  width: 192px;
  min-height: 48px;
  z-index: 55;
  background-color: #ffffff;
  box-shadow: 0px 0px 8px 4px rgba(0, 0, 0, 0.1);
  transition: all .5s;
}

#places {
  position: absolute;
  top: 48px;
  left: 0px;
  right: 0px;
  bottom: 48px;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0px;
  display: none;
}

#place {
  position: fixed;
  background-color: #FFFFFF;
  box-shadow: 1px 1px 4px 2px rgba(0, 0, 0, 0.1);
  margin: 16px;
  padding: 0px;
  border-radius: 4px;
  border: 0px;
  left: 0px;
  right: 0px;
  top: 48px;
  bottom: 0px;
  z-index: 30;
  display: none;
}

#placeinfotitle {
  padding: 4px;
  padding-right: 32px;
  font-size: 20px;
  font-weight: bold;
  z-index: 35;
}

#placeinfoaddress {
  padding: 4px;
  z-index: 35;
}

#placeinforating {
  padding: 4px;
  z-index: 35;
}

#placeinfomap {
  position: absolute;
  background-color: #FFFFFF;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  top: 128px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  margin: 8px;
  z-index: 30;
}

#btnhideplace {
  position: absolute;
  background-image: url(images/close.svg);
  background-repeat: no-repeat;
  background-size: 32px 32px;
  background-position: center;
  right: 0px;
  top: 0px;
  width: 32px;
  height: 32px;
  z-index: 50;
}

.loader {
  border: 4px solid #cccccc;
  border-radius: 50%;
  border-top: 4px solid #16a1d0;
  width: 32px;
  height: 32px;
  animation: spin 2s linear infinite;
  margin-left: auto;
  margin-right: auto;
  margin-top: 100px;
}

.loader_checkin {
  border: 4px solid #cccccc;
  border-radius: 50%;
  border-top: 4px solid #555555;
  width: 32px;
  height: 32px;
  animation: spin 2s linear infinite;
  margin-left: auto;
  margin-right: auto;
  margin-top: 100px;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

#messagelist::-webkit-scrollbar {
  width: 2px;
}

#messagelist::-webkit-scrollbar-thumb {
  background-color: #16a1d0;
}

#places::-webkit-scrollbar {
  width: 2px;
}

#places::-webkit-scrollbar-thumb {
  background-color: #16a1d0;
}

#tablog {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 100px;
  height: 240px;
  z-index: 70;
  display: none;
}

#log {
  position: absolute;
  left: 0px;
  width: 100%;
  bottom: 0px;
  top: 0px;
  font-size: 10px;
}

.divcheck, .divbutton {
  left: 0px;
  right: 0px;
  height: 48px;
  line-height: 48px;
  padding-left: 32px;
  border-bottom: 1px solid #EEEEEE;
  border-left: 6px solid #FFFFFF;
  background-repeat: no-repeat;
  background-position: left;
  background-origin: padding-box;
  transition: all .5s;
  outline-width: 0;
}

.divcheck {
  background-size: 20px 20px;
  background-image: url(images/unchecked.svg);
}

.divcheck[selected="true"] {
  background-image: url(images/checked.svg);
  transition: all .5s;
}

.selectitem {
  left: 0px;
  right: 0px;
  height: 48px;
  border: 0px;
  outline-width: 0;
  padding-left: 20px;
}

.divbutton {
  background-size: 28px 28px;
}

#btninstallwebapp {
  background-image: url(images/logo32.png);
}

.snackbar {
  visibility: hidden;
  padding: 16px;
  left: 32px;
  right: 32px;
  background-color: #16a1d0;
  color: #FFFFFF;
  text-align: center;
  border-radius: 2px;
  position: absolute;
  z-index: 100;
  top: 64px;
  font-size: 16px;
}

.snackbar.show {
  visibility: visible;
  animation: fadein 0.5s, fadeout 0.5s 2.5s;
}

@keyframes fadein {
  from {opacity: 0;}
  to {opacity: 1;}
}

@keyframes fadeout {
  from {opacity: 1;}
  to {opacity: 0;}
}

#canvas {
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  opacity: 0.1;
}

.blink {
  background-color: #16a1d0 !important;
  animation: fadeinblink 0.2s;
}

@keyframes fadeinblink {
  from {background-color: #16a1d0;}
  to {background-color: #57c0e4;}
}

input[type="file"] {
    display: none;
}

#crosshair {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  pointer-events: none;
}

#pointa, #pointb, #startwalk, #stopwalk, #heatmap {
  display: none;
}

.marker {
  cursor: pointer;
}

.marker:before {
  font-size: 12px;
  font-family : 'Roboto', sans-serif;
  font-weight: bolder;
  content: var(--content, "");
  position: fixed;
/* 
  top: 0;
  left: 50%;
  transform: translate(-50%);
*/
  top: 100%;
  left: 50%;
  transform: translate(-50%);
  text-align: center;
  line-height: 95%;
  background-color: #ffffff;
  color: #000000;
/*  text-shadow:
    2px 2px 2px #FFFFFF,
    -2px 2px 2px #FFFFFF,
    2px -2px 2px #FFFFFF,
    -2px -2px 2px #FFFFFF;
  box-shadow:
    4px 4px 4px #FFFFFF,
    -4px 4px 4px #FFFFFF,
    4px -4px 4px #FFFFFF,
    -4px -4px 4px #FFFFFF;
  box-shadow:
    2px 2px 2px #FFFFFF,
    -2px 2px 2px #FFFFFF,
    2px -2px 2px #FFFFFF,
    -2px -2px 2px #FFFFFF;
*/
  box-shadow: 0 1px 2px #000000;
  padding: 4px;
/*  border-radius: 50%; */
  border-radius: 3px;
  border: 0px solid #000000;
  z-index: 100;
}

@font-face {
    font-family: 'Roboto';
    src: local('Roboto Thin'), local('Roboto-Thin'), url('fonts/Robotothin.woff2') format('woff2'), url('fonts/Robotothin.woff') format('woff'), url('fonts/Robotothin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Thin Italic'), local('Roboto-ThinItalic'), url('fonts/Robotothinitalic.woff2') format('woff2'), url('fonts/Robotothinitalic.woff') format('woff'), url('fonts/Robotothinitalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Light'), local('Roboto-Light'), url('fonts/Robotolight.woff2') format('woff2'), url('fonts/Robotolight.woff') format('woff'), url('fonts/Robotolight.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Light Italic'), local('Roboto-LightItalic'), url('fonts/Robotolightitalic.woff2') format('woff2'), url('fonts/Robotolightitalic.woff') format('woff'), url('fonts/Robotolightitalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto'), local('Roboto-Regular'), url('fonts/Roboto.woff2') format('woff2'), url('fonts/Roboto.woff') format('woff'), url('fonts/Roboto.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Italic'), local('Roboto-Italic'), url('fonts/Robotoitalic.woff2') format('woff2'), url('fonts/Robotoitalic.woff') format('woff'), url('fonts/Robotoitalic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Medium'), local('Roboto-Medium'), url('fonts/Robotomedium.woff2') format('woff2'), url('fonts/Robotomedium.woff') format('woff'), url('fonts/Robotomedium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Medium Italic'), local('Roboto-MediumItalic'), url('fonts/Robotomediumitalic.woff2') format('woff2'), url('fonts/Robotomediumitalic.woff') format('woff'), url('fonts/Robotomediumitalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Bold'), local('Roboto-Bold'), url('fonts/Robotobold.woff2') format('woff2'), url('fonts/Robotobold.woff') format('woff'), url('fonts/Robotobold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url('fonts/Robotobolditalic.woff2') format('woff2'), url('fonts/Robotobolditalic.woff') format('woff'), url('fonts/Robotobolditalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Black'), local('Roboto-Black'), url('fonts/Robotoblack.woff2') format('woff2'), url('fonts/Robotoblack.woff') format('woff'), url('fonts/Robotoblack.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto';
    src: local('Roboto Black Italic'), local('Roboto-BlackItalic'), url('fonts/Robotoblackitalic.woff2') format('woff2'), url('fonts/Robotoblackitalic.woff') format('woff'), url('fonts/Robotoblackitalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: local('Roboto Condensed Light'), local('RobotoCondensed-Light'), url('fonts/Robotocondensedlight.woff2') format('woff2'), url('fonts/Robotocondensedlight.woff') format('woff'), url('fonts/Robotocondensedlight.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto Condensed';
    src: local('Roboto Condensed Light Italic'), local('RobotoCondensed-LightItalic'), url('fonts/Robotocondensedlightitalic.woff2') format('woff2'), url('fonts/Robotocondensedlightitalic.woff') format('woff'), url('fonts/Robotocondensedlightitalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto Condensed';
    src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('fonts/Robotocondensed.woff2') format('woff2'), url('fonts/Robotocondensed.woff') format('woff'), url('fonts/Robotocondensed.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto Condensed';
    src: local('Roboto Condensed Italic'), local('RobotoCondensed-Italic'), url('fonts/Robotocondenseditalic.woff2') format('woff2'), url('fonts/Robotocondenseditalic.woff') format('woff'), url('fonts/Robotocondenseditalic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'Roboto Condensed';
    src: local('Roboto Condensed Bold'), local('RobotoCondensed-Bold'), url('fonts/Robotocondensedbold.woff2') format('woff2'), url('fonts/Robotocondensedbold.woff') format('woff'), url('fonts/Robotocondensedbold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Roboto Condensed';
    src: local('Roboto Condensed Bold Italic'), local('RobotoCondensed-BoldItalic'), url('fonts/Robotocondensedbolditalic.woff2') format('woff2'), url('fonts/Robotocondensedbolditalic.woff') format('woff'), url('fonts/Robotocondensedbolditalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}
