.map iframe {
  width: 100%;
  height: 900px;
}

.mapimg {
  position: absolute;
  top: 200px;
  left: 50%;
  transform: translateX(-50%);
  max-width: 450px;
  max-height: 450px;
}

.arrow {
  position: absolute;
  top: 450px;
  width: 100px;
  height: 100px;
  background: #2f7bfc;
  -webkit-mask-size: 100px;
  mask-size: 100px;
  mask-repeat: no-repeat;
  box-sizing: content-box;
}

.arrow.right {
  right: 100px;
  -webkit-mask-image: url(images/left.png);
  mask-image: url(images/left.png);
  mask-position: center center;
}

.arrow.left {
  left: 100px;
  -webkit-mask-image: url(images/right.png);
  mask-image: url(images/right.png);
  mask-position: center center;
}

.vastumap {
  margin: 10px;
  display: flex;
  justify-content: space-between;
}

.progress {
  height: 15px;
  width: 195px;
  margin: 20px auto 20px auto;
  background: aliceblue;
  mask-image: url(images/step.png);
  mask-size: auto 15px;
}

.progress__pos {
  height: 15px;
  width: 15%;
  display: block;
  background-color: yellow;
}


.zoomables {
  /*pointer-events: none;*/
  border: 1px solid black;
}

#zoomMe {
  position: absolute;
  top: 0px;
  left: 0px;
}

@media (max-width: 768px) {
  .map iframe {
    height: 350px;
  }

  .vastumap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .mapimg {
    top: 100px;
    max-width: 150px;
    max-height: 150px;
  }

  .arrow {
    position: absolute;
    top: 250px;
    width: 50px;
    height: 50px;
    background: #2f7bfc;
    mask-size: contain;
  }

  .arrow.left {
    left: 50px;
  }

  .arrow.right {
    right: 50px;
  }
}

.workarea {
  max-width: 900px;
  position: relative;
  flex: 1;
}

.infoarea {
  width: 300px;
  margin-left: 30px;
}

#hhh {
  position: absolute;
  max-width: 900px;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1 / 1;
}

@media (max-width: 768px) {
  .workarea {
    width: 100%;
    min-width: 300px;
    order: 2;
    aspect-ratio: 1;
    overflow: hidden;
  }

  #hhh {
    width: 100%;
    height: 450px;
  }

  .infoarea {
    width: 100%;
    order: 1;
    margin-left: 0px;
    margin-bottom: 20px;
    /*height: 200px;
    position: fixed;
    overflow-y: scroll;
    bottom: 0;
    width: calc(100% - 20px);
    left: 10px;
    right: 10px;*/
    background: black;
    ;
  }
}

canvas {
  border: 1px solid grey;
  position: relative;
  width: 100%;
  background: white;
  /* По умолчанию для мобильных устройств */
  height: auto;
  aspect-ratio: 1;
}

@media (min-width: 900px) {
  canvas {
    width: 100%;
    max-width: 900px;
    /* Фиксированная ширина для десктопов */
  }
}

img {
  max-width: 100%;
}

.cropper-modal {
  opacity: 0.8;
}

.cropper-point {
  width: 40px !important;
  height: 40px !important;
}

.tool{
  margin: 5px 0;
}

.tool input{
  margin: 0 3px;
} 
.tool__options {
  margin-left: 20px;
  display: none;
}

input:checked ~ div.tool__options {
  display: block;
}

.tool__row {
  margin: 5px 0 0 0;
  display: flex;
  align-items: center;
}

.tool__input[type="number"] {
  width: 60px;
}

.tool__buttons {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
}

.tool__buttons button {
  padding: 10px 30px;
  font-weight: bold;
  width: 45%;
}