/* Основные стили для body */
body {
  background-image: url(../images/low-angle-office.webp);
  background-attachment: fixed;
  background-size: cover;
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  height: 100%;
  overflow-x: hidden; /* Скрывает горизонтальную прокрутку */
}

/* Контейнер квиза */
.quiz {
  width: 100%;
  max-width: 900px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 150px auto 0; /* Уменьшен отступ сверху */
  user-select: none;
}

/* Форма квиза */
.quiz__form {
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
  padding: 50px;
  border-radius: 5px;
  border: none;
}

/* Легенда с аватаром и вопросом */
.quiz__fieldset {
  margin-bottom: 50px;
}

.quiz__legend {
  display: flex;
  align-items: center;
  background-color: #f1f1f1;
  padding: 15px;
  border-radius: 5px;
  margin-bottom: 20px;
  width: 100%;
}

.quiz__ava {
  width: 60px;
  margin-right: 20px;
}

/* Вопрос */
.quiz__question p:first-child {
  text-transform: uppercase;
  font-weight: 500;
}

/* Прогресс бар */
.quiz__progress {
  width: 100%;
  height: 10px;
  margin-bottom: 20px;
}

.quiz__progress-line {
  width: 100%;
  height: 10px;
  background-color: #ddd;
  border-radius: 5px;
}

.quiz__progress-fill {
  width: 20%;
  height: 10px;
  background: linear-gradient(45deg, #1fadff 0, #2684bb 100%);
  border-radius: 5px;
  transition: width 0.3s;
}

/* Ответы */
.quiz__answer {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.quiz__answer-item {
  display: flex;
  align-items: center;
  border: 1px solid #bbb;
  padding: 10px;
  border-radius: 5px;
  cursor: pointer;
}

.quiz__answer-item-circle {
  width: 25px;
  height: 25px;
  border-radius: 5px;
  border: 1px solid #bbb;
  margin-right: 15px;
  position: relative;
}

.quiz__answer-item-circle:after {
  width: 20px;
  height: 22px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: url(../img/check.svg);
  opacity: 0;
  transition: opacity 0.3s;
}

.quiz__answer-item-text {
  line-height: 1.5;
}

.quiz__answer-item input {
  display: none;
}

.quiz__answer-item input:checked + .quiz__answer-item-circle {
  border: 1px solid #2684bb;
}

.quiz__answer-item input:checked + .quiz__answer-item-circle:after {
  opacity: 1;
}

/* Контейнер для кнопок */
.quiz__buttons {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 0;
}

.quiz__button {
  padding: 10px 25px;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(45deg, #1fadff 0, #2684bb 100%);
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-align: center;
  min-width: 150px;
}

.quiz__button:hover {
  background-color: #0056b3;
}

.quiz__button:active {
  background-color: #004085;
}

/* Анимации для переходов */
.quiz__answers.transition {
  transition: opacity 0.4s ease;
  opacity: 1;
}

.quiz__answers.hidden {
  opacity: 0;
}

/* Прогресс инфо */
.quiz__progress-info {
  font-size: 14px;
  text-align: center;
  margin-bottom: 10px;
  color: #555;
}

/* Стиль для ввода телефона */
.phone-input {
  width: 100%;
  padding: 12px;
  margin-top: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 16px;
  box-sizing: border-box;
}

.phone-input::placeholder {
  color: #aaa;
}

/* Мобильные стили для кнопок */
@media (max-width: 768px) {
  .quiz__buttons {
    flex-direction: column; /* Кнопки идут одна под другой */
    gap: 10px; /* Расстояние между кнопками */
  }

  .quiz__button {
    min-width: 100%; /* Кнопки занимают всю ширину контейнера */
    padding: 12px 20px; /* Увеличены отступы для мобильных устройств */
    font-size: 12px; /* Размер шрифта для кнопок на мобильных */
  }
}

/* Мобильная версия */
@media (max-width: 600px) {
  body {
    font-size: 12px;
    overflow-x: auto; /* Включает горизонтальную прокрутку для мобильных устройств */
  }

  .quiz__question p {
    font-size: 14px;
  }

  .quiz__progress-info {
    font-size: 12px;
  }

  .quiz__buttons {
    flex-direction: column;
    gap: 10px;
  }

  .quiz__buttons button {
    font-size: 14px;
    padding: 10px 20px;
  }

  .quiz__buttons button.quiz__button {
    width: 100%;
  }

  .container {
    padding-top: 180px; /* Увеличен отступ сверху для мобильных устройств */
    min-height: 100vh; /* Обеспечивает минимальную высоту для контейнера */
  }
}

/* Для обычных экранов скрываем вертикальную прокрутку */
@media (min-width: 601px) {
  body {
    overflow-y: hidden;
  }
}

/* Контейнер для фиксированной области */
.container {
  height: 30vh;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 100px; /* Отступ сверху для обычных экранов */
}