:root {
  --primary-color: #000000;
  --secondary-color: #FFFFFF;
  --active-color: #FFBCA2;
  --font-style: 'Questrial';
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
  font-family: var(--font-style), 'Ranchers', cursive;
  background-color: var(--primary-color);
  width: 100vw;
  height: 100vh;
  justify-content: center;
  align-items: center;
  position: relative;
}

.body-pict {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./views/img/main.jpg);
  position: absolute;
  z-index: 0;
}

.bode-hide-picture {
  background-image: none;
}

.main {
  height: 100%;
  display: flex;
  flex-direction: column;
  z-index: 20;
}

.header_container {
  height: 5%;
}

.page_container {
  height: 60%;
}

.navbar {
  color: var(--secondary-color);
  position: relative;
  padding: 5px;
}

.navbar-home,
.navbar-score {
  margin-top: 5px;
  text-decoration: none;
  color: var(--secondary-color);
  font-size: 18px;
  cursor: pointer;
  transition: 0.8s;
}

.navbar-home:hover,
.navbar-score:hover {
  color: var(--active-color);
}

.navbar-menu {
  visibility: hidden;
  width: 50%;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-top: 20px;
}

.navbar-menu-visible {
  visibility: visible;
}

.navbar-logo {
  width: 166px;
  height: 62px;
  background: no-repeat center url(./views/svg/navbar-logo.svg);
  background-size: cover;
}

.setting-button {
  top: 30px;
  right: 70px;
  width: 36px;
  height: 36px;
  background: none;
  border: none;
  background-image: url(./views/svg/settings.svg);
  cursor: pointer;
  position: absolute;
  z-index: 20;
}

.setting-button-x {
  top: 30px;
  right: 70px;
  width: 36px;
  height: 36px;
  background: none;
  border: none;
  background-image: url(./views/svg/close-outline.svg);
  cursor: pointer;
  position: absolute;
}

.setting-return {
  top: 30px;
  left: 10%;
  position: absolute;
  color: var(--secondary-color);
  font-size: 22px;
  text-decoration: none;
  transition: 0.8s;
}

.setting-return:hover {
  color: var(--active-color);
}

.home {
  height: 500px;
  color: var(--secondary-color);
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  z-index: 10;
}

.logo {
  width: 440px;
  height: 164px;
  background-image: url(./views/svg/logo.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 10;
}

.home-buttons {
  z-index: 20;
}

.artist-button,
.picture-button {
  width: 287px;
  height: 62px;
  border: 1px solid var(--secondary-color);
  border-radius: 31px;
  background: none;
  color: var(--secondary-color);
  font-size: 22px;
  font-family: var(--font-style), 'Ranchers', cursive;
  transition: 0.8s;
  cursor: pointer;
  margin-top: 10px;
  z-index: 100;
}

.artist-button:hover,
.picture-button:hover {
  color: var(--primary-color);
  background-color:  var(--secondary-color);
}

.artist-button:active,
.picture-button:active {
  color: var(--primary-color);
  background-color:  var(--active-color);
}

.footer {
  bottom: 0;
  width: 100%;
  position: relative;
}

.footer-content {
  bottom: 10px;
  left: 0;
  width: 100%;
  display: flex;
  padding: 0 40px;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  position: fixed;
}

.rs-scool {
  width: 85px;
  height: 31px;
  background: url(./views/svg/rs_school.svg) center no-repeat;
  background-size: cover;
  display: block;
}

.rs-scool a {
  display: block;
  width: 80px;
  height: 30px;
}


.developer{
  color: var(--secondary-color);
  font-size: 16px;
}

.developer a {
  text-decoration: none;
  color: #fff;
}

@media (max-width: 768px) {
  .logo {
    width: 320px;
    height: 120px;
  }

  .home-buttons {
    display: flex;
    flex-direction: column;
  }

  .home {
    height: 300px;
  }

}

@media (max-width: 520px) {
  .setting-button {
    top: 20px;
    right: 20px;
  }

  .logo {
    width: 166px;
    height: 62px;
  }

  .home-buttons {
    display: flex;
    flex-direction: column;
  }
  .home {
    height: 250px;
  }

  .footer-content {
    height: 50px;
    padding: 0 10px;
  }

  .developer{
    font-size: 14px;
  }

}

@media (max-width: 420px) {
  .navbar-menu {
    width: 60%;
    flex-wrap: wrap;
    margin: 10px 0 0 8px;
  }

  .setting-button {
  top: 25px;
  right: 25px;
  }

  .logo {
    width: 166px;
    height: 62px;
  }

  .home-buttons {
    display: flex;
    flex-direction: column;
  }
  .home {
    height: 50%;
    padding-top: 60%;
  }

  .footer_container {
    height: 5%;
  }

  .footer-content {
    height: 50px;
    padding: 0 10px;
  }

  .rs-scool {
    width: 61px;
    height: 23px;
  }
  
  .developer{
    font-size: 12px;
  }
}

/* ------------------------------- Settins -------------------------------*/

.setting-block {
  margin-top: 80px;
  margin-left: 10%;
  display: flex;
  flex-direction: column;
}

.volume-text {
  color: var(--secondary-color);
  font-size: 34px;
}

.progress {
  background: linear-gradient(to right, var(--active-color) 0%, var(--active-color) 40%, #fff 40%, #fff 100%);
  height: 2px;
  width: 400px;
  outline: none;
  transition: background 450ms ease-in;
  -webkit-appearance: none;
}

.progress::-webkit-slider-thumb {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  -webkit-appearance: none;
  cursor: ew-resize;
  background: #fff;
}

.volume {
  width: 400px;
  height: 140px;
}

.volume-low,
.volume-hight {
  color: #A4A4A4;
  background-color:  var(--primary-color);
  cursor: pointer;
}

.volume-icons {
  display: flex;
  justify-content: space-between;
}

.switch-btn {
  display: inline-block;
  width: 48px; /* ширина */
  height: 28px; /* высота */
  border-radius: 19px; /* радиус скругления */
  background: #bfbfbf; /* цвет фона */
  z-index: 0;
  margin: 0;
  padding: 0;
  border: none;
  cursor: pointer;
  position: relative;
  transition-duration: 300ms; /* анимация */
}
.switch-btn::after {
  content: "";
  height: 24px; /* высота кнопки */
  width: 24px; /* ширина кнопки */
  border-radius: 17px;
  background: #fff; /* цвет кнопки */
  top: 3px; /* положение кнопки по вертикали относительно основы */
  left: 3px; /* положение кнопки по горизонтали относительно основы */
  transition-duration: 300ms; /* анимация */
  position: absolute;
  z-index: 1;
}
.switch-on {
  background: var(--active-color);
}
.switch-on::after {
  left: 24px;
}

.time-switch {
  width: 100px;
  padding-top: 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.switch-text {
  color: #A4A4A4;
  font-size: 20px;
}

.time-answer {
  padding-top: 3%;
}

.answer-block {
  width: 120px;
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
}

.answer-btn-low {
  width: 36px;
  height: 36px;
  font-size: 30px;
  background-color: var(--active-color);
  border: none;
  border-radius: 50%;
}

.answer-btn-height {
  width: 36px;
  height: 36px;
  font-size: 30px;
  background-color: var(--secondary-color);
  border: none;
  border-radius: 50%;
}

.time-sec {
  color: #A4A4A4;
  font-size: 20px;
}

.save-buttons {
  right: 5%;
  margin-top: 10px;
  position: absolute;
}

.save-buttons-default,
.save-buttons-save {
  width: 287px;
  height: 62px;
  font-size: 22px;
  color: var(--secondary-color);
  background-color:  var(--primary-color);
  border: 1px solid var(--secondary-color);
  border-radius: 31px;
  transition: 0.8s;
  cursor: pointer;
}


.save-buttons-default:hover,
.save-buttons-save:hover {
  color: var(--primary-color);
  background-color: var(--secondary-color);
}

.save-buttons-default:active,
.save-buttons-save:active {
  color: var(--primary-color);
  background-color: var(--active-color);
}

@media (max-width: 420px) {
  .setting-block {
    align-items: center;
    margin: 20% 0 0;
  }

  .volume-text {
    text-align: center;
    font-size: 28px;
  }

  .volume {
    width: 260px;
    height: 110px;
  }

  .progress {
    width: 240px;
  }

  .switch-text {
    font-size: 20px;
  }

  .time-switch {
    display: flex;
    align-items: center;
    width: auto;
    padding: 5px 10% 0 10%;
  }

  .answer-block{
    display: flex;
    align-items: center;
    width: auto;
    padding: 5px 10% 0 10%;
  }
    
  .save-buttons-default,
  .save-buttons-save {
    margin-top: 6%;
    width: 140px;
    height: 55px;
  }
}