@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
}

body {
  width: 100%;
  background: rgb(222, 184, 135);
}

section {
  width: 100%;
  height: 88vh;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  font-family: "Montserrat";
}

.form-box {
  width: 650px;
  height: 550px;
  background: rgba(24, 14, 1, 0.541);
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 20px;
  -webkit-backdrop-filter: blur(15px);
          backdrop-filter: blur(15px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.form-value {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/* форма логина */
form {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
}
form > h2 {
  font-size: 2em;
  color: #000;
  text-align: center;
}

/* поле ввода 'Логин, Пароль'*/
.inputbox {
  position: relative;
  margin: 30px 0;
  width: 80%;
  border-bottom: 2px solid #fff;
}
.inputbox label {
  position: absolute;
  top: 40%;
  left: 5px;
  transform: translateY(-50%);
  font-size: 1.3em;
  pointer-events: none;
  transition: 0.5s;
  color: #fff;
}
.inputbox input {
  width: 100%;
  height: 50px;
  background: transparent;
  border: none;
  outline: none;
  padding: 0 35px 0 5px;
  color: #fff;
  font-size: 1.1em;
}
.inputbox input:focus ~ label, .inputbox input:valid ~ label {
  top: -10px;
}
.inputbox .icon {
  position: absolute;
  right: 8px;
  width: 35px;
  top: 11px;
}

/* кнопка видимости пароля */
.toggle-password {
  position: absolute;
  right: -25px;
  top: 70%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #fff;
}

/* иконкa */
.icon-visibility {
  width: 35px;
}

/* 'Остаться в системе, Забыли пароль?' */
.forget {
  width: 100%;
  margin: -15px 0 15px;
  font-size: 0.9em;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.forget input {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  position: relative;
  width: 1.5em;
  height: 1.5em;
  border: 1px solid #adb5bd;
  border-radius: 0.25em;
  outline: none;
  margin-right: 10px;
}
.forget input:checked::before {
  content: "✔"; /* Unicode для галочки */
  width: 100%;
  background-color: #0b76ef;
  border-color: #0b76ef;
  border-radius: 0.25em;
  display: flex;
  justify-content: center;
  color: white;
  font-size: 1em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.forget input:focus + label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.forget label {
  width: 70%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.forget label a {
  color: #fff;
  text-decoration: none;
}
.forget label a:hover {
  text-decoration: underline;
}

/* кнопка 'Войти' */
.btn_log_in {
  width: 80%;
  height: 45px;
  border-radius: 40px;
  background: #000;
  color: #fff;
  border: none;
  outline: none;
  cursor: pointer;
  font-size: 1em;
  font-weight: 600;
}
.btn_log_in:hover {
  background: #fff;
  color: #000;
  font-size: larger;
  transition: 0.3s;
}

/* поле 'Зарегестрироваться' */
.register {
  font-size: 0.9em;
  color: #fff;
  text-align: center;
  margin: 25px 0 10px;
}
.register p a {
  text-decoration: none;
  color: #fff;
  font-weight: 600;
}
.register p a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 840px) {
  .form-box {
    width: 90%;
  }
}