*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Убираем стандартные стили для форм */
input,
button,
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  font-family: inherit;
  font-size: inherit;
  background: none;
}

/* Отключаем стили для ссылок в Safari */
a {
  text-decoration: none;
  color: inherit;
}

/* Сброс стилей для изображений */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Убираем дефолтный стиль списков */
ul,
ol {
  list-style: none;
}

/* Сброс стилей для таблиц */
table {
  border-collapse: collapse;
  width: 100%;
}

/* Убираем стили для кнопок и ссылок */
button,
a {
  cursor: pointer;
}

/* Убираем тени в Safari */
input:focus,
textarea:focus,
button:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}

/* Для корректной работы с flexbox в Safari */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Убираем стили для полосы прокрутки */
::-webkit-scrollbar {
  display: none;
}

/* Обработаем Safari специфичные проблемы с формами */
input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

/* Убираем прозрачность для фона на кнопках в Safari */
button {
  background-color: transparent;
  border: none;
  padding: 0;
}

/* Сброс стилей для SVG в Safari */
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Отключаем стили для пустых элементов, таких как div */
:empty {
  display: block;
}

/* Отключение трансформации для кнопок и ссылок */
button:focus,
a:focus {
  outline: none;
}

/* Для input и textarea */
input,
textarea {
  font-size: 100%;
  line-height: 1.4;
  padding: 0;
}

/* =========== */
.card__wrap .main .card__img {
  width: 85vw;
  height: 85vw;
  margin-top: 0;
}
@media screen and (min-width: 436px) {
  .card__wrap .main .card__img {
    width: 88%;
    height: auto;
  }
}
.main .restart.restart-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 35px;
  height: 35px;
  position: absolute;
  top: 7px;
  left: 81%;
  cursor: pointer;
  z-index: 2;
}
.card__wrap-blocked .main .restart.restart-icon {
  display: none;
}
.text-confirm-answer {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--main-text-color);
  font-size: 18px;
  text-align: center;
  width: 48%;
}
.text-confirm-answer.transparent {
  opacity: 0;
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
}
.for-float-wrapper .card__text {
  text-align: start;
  margin-top: 12px;
  margin-bottom: 30px;
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
  font-size: 18px;
}
.card__wrap .interactive-container {
  width: 88%;
  margin: 0 auto;
  min-height: 20%;
  height: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.count-answer {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
  color: var(--main-text-color);
}
.progress-content {
  width: 92%;
  height: 92%;
  border-radius: 50%;
  background-color: white;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.progress-container {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: conic-gradient(rgb(100, 141, 212) 0deg, rgb(211, 211, 211) 0deg);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 1;
  -webkit-transition: all 250ms;
  -o-transition: all 250ms;
  transition: all 250ms;
  position: absolute;
  top: 94%;
  left: 89%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.progress-container.transparent {
  opacity: 0;
}

.markup-interactive {
  width: 100%;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.card__wrap-blocked .card__text-explanations {
  margin-top: 6%;
}
.card__wrap-blocked .dot,
.card__wrap-blocked #drawingCanvas {
  opacity: 0;
}

.card__wrap .main {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-select: none; /* Для iOS */
  -ms-user-select: none; /* Для IE/Edge */
}
.dots-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
}
.dot {
  width: 11%;
  height: 11%;
  background: transparent;
  background-color: transparent;
  border-radius: 50%;
  position: absolute;
  cursor: pointer;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 9;
}
.prev-dot {
  width: 7%;
  height: 7%;
  background: #ff3b3b;
  border-radius: 50%;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  pointer-events: none;
  z-index: 1;
}
.dot-1,
.prev-dot-1 {
  top: 4%;
  left: 50%;
}
.dot-2,
.prev-dot-2 {
  top: 4%;
  left: 72.8%;
}
.dot-3,
.prev-dot-3 {
  top: 27%;
  left: 4.4%;
}
.dot-4,
.prev-dot-4 {
  top: 27%;
  left: 27.2%;
}
.dot-5,
.prev-dot-5 {
  top: 27%;
  left: 50%;
}
.dot-6,
.prev-dot-6 {
  top: 27%;
  left: 72.8%;
}
.dot-7,
.prev-dot-7 {
  top: 50%;
  left: 4.4%;
}
.dot-8,
.prev-dot-8 {
  top: 50%;
  left: 27.2%;
}
.dot-9,
.prev-dot-9 {
  top: 50%;
  left: 50%;
}
.dot-10,
.prev-dot-10 {
  top: 50%;
  left: 72.8%;
}
.dot-11,
.prev-dot-11 {
  top: 50%;
  left: 95.4%;
}
.dot-12,
.prev-dot-12 {
  top: 73.2%;
  left: 27.2%;
}
.dot-13,
.prev-dot-13 {
  top: 73.2%;
  left: 50%;
}
.dot-14,
.prev-dot-14 {
  top: 73.2%;
  left: 72.8%;
}
.dot-15,
.prev-dot-15 {
  top: 73.2%;
  left: 95.4%;
}
.dot-16,
.prev-dot-16 {
  top: 96.2%;
  left: 27.2%;
}
.dot-17,
.prev-dot-17 {
  top: 96.2%;
  left: 50%;
}

/* =========== */

/* =========== */
canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background: transparent; */
  z-index: 10;
}
.preview-dots-wrapper {
  z-index: 1;
}
.preview-dots-wrapper,
.first-group,
.second-group,
.third-group,
.fourth-group,
.fifth-group,
.sixth-group {
  position: absolute;
  width: 18vw;
  height: 18vw;
  top: 28%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  color: #7fb009;
}
.fourth-group,
.fifth-group,
.sixth-group {
  top: 80%;
}
.preview-dots-wrapper.show,
.first-group.show,
.second-group.show,
.third-group.show,
.fourth-group.show,
.fifth-group.show,
.sixth-group.show {
  opacity: 1;
}
@media screen and (min-width: 436px) {
  .preview-dots-wrapper,
  .first-group,
  .second-group,
  .third-group,
  .fourth-group,
  .fifth-group,
  .sixth-group {
    width: 80px;
    height: 80px;
  }
}

.first-group::after,
.second-group::after,
.third-group::after,
.fourth-group::after,
.fifth-group::after,
.sixth-group::after {
  content: "";
  width: 18%;
  height: 18%;
  position: absolute;
  top: 93%;
  left: 78%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background-image: url(../img/699/checkMark.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
}
.first-group.complete::after,
.second-group.complete::after,
.third-group.complete::after,
.fourth-group.complete::after,
.fifth-group.complete::after,
.sixth-group.complete::after {
  opacity: 1;
}
.first-group,
.fourth-group {
  left: 15%;
}
.second-group,
.fifth-group {
  left: 50%;
}
.third-group,
.sixth-group {
  left: 85%;
}
/* .second-group::before {
  content: "";
  width: 1px;
  height: 75%;
  position: absolute;
  top: 54%;
  left: 7%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: silver;
}
.third-group::before {
  content: "";
  width: 1px;
  height: 75%;
  position: absolute;
  top: 54%;
  left: 7%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: silver;
} */
.square {
  -webkit-transition: all 350ms;
  -o-transition: all 350ms;
  transition: all 350ms;
  opacity: 0;
}
.square.show {
  opacity: 1;
}
.square-small,
.square-medium,
.square-medium-two,
.square-large,
.square-big,
.square-big-two {
  border: 1px solid #ff3b3b;
  border: 1px solid var(--main-text-color);
  background-color: #648dd469;
  width: 24%;
  height: 24%;
  position: absolute;
}
.square-small {
  width: 24%;
  height: 24%;
}

.square-medium {
  width: 33%;
  height: 33%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.square-medium-two {
  width: 47%;
  height: 47%;
}

.square-large {
  width: 53%;
  height: 53%;
  -webkit-transform: rotate(64deg);
  -ms-transform: rotate(64deg);
  transform: rotate(64deg);
}
.square-big {
  width: 74%;
  height: 74%;
  -webkit-transform: rotate(72deg);
  -ms-transform: rotate(72deg);
  transform: rotate(72deg);
}
.square-big-two {
  width: 66%;
  height: 66%;

  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.small-1 {
  top: 6.6%;
  left: 53.4%;
}
.small-2 {
  top: 29.4%;
  left: 7.2%;
}
.small-3 {
  top: 29.4%;
  left: 30.4%;
}
.small-4 {
  top: 29.4%;
  left: 53.6%;
}
.small-5 {
  top: 53%;
  left: 30.4%;
}
.small-6 {
  top: 53%;
  left: 53.6%;
}
.small-7 {
  top: 53%;
  left: 76.2%;
}
.small-8 {
  top: 76%;
  left: 30.4%;
}

.medium-1 {
  top: 13.4%;
  left: 37%;
}
.medium-2 {
  top: 36.4%;
  left: 60%;
}
.medium-3 {
  top: 36.4%;
  left: 14.8%;
}
.medium-4 {
  top: 59.4%;
  left: 37%;
}
.medium-5 {
  top: 36.4%;
  left: 37%;
}

.medium-two-1 {
  top: 29.4%;
  left: 30%;
}

.large-1 {
  top: 16%;
  left: 38%;
}
.large-2 {
  top: 38%;
  left: 38%;
}
.large-3 {
  top: 16%;
  left: 15%;
}
.large-4 {
  top: 38%;
  left: 15%;
}

.big-1 {
  top: 16.6%;
  left: 16.6%;
}
.big-two-1 {
  top: 21%;
  left: 21%;
}

.card__wrap-blocked .interactive-container {
  display: none;
}
.card__wrap .bookmark-switch-text {
  top: 30%;
}
.preview-text {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 50%;
  text-align: center;
  color: gray;
  font-size: 19px;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  opacity: 1;
}

@media screen and (min-width: 436px) {
  .preview-text {
    width: 54%;
  }
}
.preview-text.transparent {
  top: 0;
  left: 150%;
  width: 0;
  color: transparent;
  font-size: 0px;
  opacity: 0;
}
