/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/* Убираем отступы и поля по умолчанию */
*,
*::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: 88vw;
  height: 88.8vw;
  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: 100%;
}
.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: 39px;
  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: 55px;
  height: 55px;
  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: 92%;
  left: 92%;
  -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: 15%;
  height: 15%;
  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: #7477cc;
  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: 13.2%;
  left: 37.6%;
}
.dot-2,
.prev-dot-2 {
  top: 13.2%;
  left: 62.2%;
}
.dot-3,
.prev-dot-3 {
  top: 37.6%;
  left: 13.2%;
}
.dot-4,
.prev-dot-4 {
  top: 37.6%;
  left: 37.6%;
}
.dot-5,
.prev-dot-5 {
  top: 37.6%;
  left: 62.2%;
}
.dot-6,
.prev-dot-6 {
  top: 37.6%;
  left: 86.8%;
}
.dot-7,
.prev-dot-7 {
  top: 62.2%;
  left: 13.2%;
}
.dot-8,
.prev-dot-8 {
  top: 62.2%;
  left: 37.6%;
}
.dot-9,
.prev-dot-9 {
  top: 62.2%;
  left: 62.2%;
}
.dot-10,
.prev-dot-10 {
  top: 62.2%;
  left: 86.8%;
}
.dot-11,
.prev-dot-11 {
  top: 86.6%;
  left: 37.6%;
}
.dot-12,
.prev-dot-12 {
  top: 86.6%;
  left: 62.2%;
}
/* =========== */

.prev-dot-1 {
  top: 9.8%;
  left: 34.2%;
}

.prev-dot-2 {
  top: 9.8%;
  left: 58.6%;
}

.prev-dot-3 {
  top: 34.2%;
  left: 9.6%;
}

.prev-dot-4 {
  top: 34.2%;
  left: 34.2%;
}

.prev-dot-5 {
  top: 34.2%;
  left: 58.6%;
}

.prev-dot-6 {
  top: 34.2%;
  left: 83.2%;
}

.prev-dot-7 {
  top: 58.8%;
  left: 9.6%;
}

.prev-dot-8 {
  top: 58.8%;
  left: 34.2%;
}

.prev-dot-9 {
  top: 58.8%;
  left: 58.6%;
}

.prev-dot-10 {
  top: 58.8%;
  left: 83.2%;
}

.prev-dot-11 {
  top: 83.4%;
  left: 34.2%;
}

.prev-dot-12 {
  top: 83.4%;
  left: 58.6%;
}
/* =========== */
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 {
  position: absolute;
  width: 33vw;
  height: 33vw;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  color: #7fb009;
}
.preview-dots-wrapper.show,
.first-group.show,
.second-group.show,
.third-group.show {
  opacity: 1;
}
@media screen and (min-width: 436px) {
  .preview-dots-wrapper,
  .first-group,
  .second-group,
  .third-group {
    width: 109px;
    height: 109px;
  }
}
.first-group {
  left: 15%;
}
.first-group::after {
  content: "✔";
  position: absolute;
  top: 80%;
  left: 72%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  font-size: 26px;
  color: #7fb009 !important;
  color: inherit;
  opacity: 0;
}
.first-group.complete::after {
  opacity: 1;
}
.second-group::after {
  content: "✔";
  position: absolute;
  top: 80%;
  left: 72%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  font-size: 26px;
  color: #7fb009 !important;
  opacity: 0;
}
.second-group.complete::after {
  opacity: 1;
}
.third-group::after {
  content: "✔";
  position: absolute;
  top: 80%;
  left: 72%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  font-size: 26px;
  color: #7fb009 !important;
  opacity: 0;
}
.third-group.complete::after {
  opacity: 1;
}
.second-group {
  left: 50%;
}
.third-group {
  left: 85%;
}
.second-group::before {
  content: "";
  width: 1px;
  height: 75%;
  position: absolute;
  top: 50%;
  left: 3%;
  -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: 50%;
  left: 3%;
  -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 {
  border: 1px solid var(--main-text-color);
  background-color: #648dd469;
  width: 25%;
  height: 25%;
  position: absolute;
}

.square-medium {
  border: 1px solid var(--main-text-color);
  background-color: #648dd469;
  width: 36%;
  height: 36%;
  position: absolute;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.square-large {
  border: 1px solid var(--main-text-color);
  background-color: #648dd469;
  width: 56.8%;
  height: 56.8%;
  position: absolute;
}
.small-1 {
  top: 13%;
  left: 37%;
}
.small-2 {
  top: 37%;
  left: 12.8%;
}
.small-3 {
  top: 37%;
  left: 37%;
}
.small-4 {
  top: 37%;
  left: 61.2%;
}
.small-5 {
  top: 61.2%;
  left: 37%;
}

.medium-1 {
  top: 19.6%;
  left: 19.6%;
}
.medium-2 {
  top: 19.6%;
  left: 44%;
}
.medium-3 {
  top: 43.8%;
  left: 19.6%;
}
.medium-4 {
  top: 43.8%;
  left: 44%;
}

.large-1 {
  top: 21.4%;
  left: 21.4%;
  -webkit-transform: rotate(26.5deg);
  -ms-transform: rotate(26.5deg);
  transform: rotate(26.5deg);
}
.large-2 {
  top: 21.4%;
  left: 21.4%;
  -webkit-transform: rotate(-26.5deg);
  -ms-transform: rotate(-26.5deg);
  transform: rotate(-26.5deg);
}
.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;
}
