.form-group {
  margin-bottom: 16px;
}

label.visually-hidden {
  display: none;
}

label.input-label {
  display: inline-block;
  margin-bottom: 4px;
}

.input-wrapper {
  margin: 0 18px 0 18px;
}

.password-wrapper {
  position: relative;
  margin: 0 45px 0 18px;
}

input[type='text'],
input[type='password'] {
  box-sizing: content-box;
  display: block;
  font-size: 20px;
  line-height: 130%;
  color: white;
  width: 100%;

  background-color: transparent;
  outline: none;
  border: 1px solid grey;
  border-radius: 8px;

  transition: border-color 0.2s ease;
}

input[type='text'], input[type='password'] {
  padding: 14px 18px 14px 18px;
  margin: 0 -18px 0 -18px;
}

.password-wrapper input[type='text'], input[type='password'] {
  padding: 14px 45px 14px 18px;
  margin: 0 -45px 0 -18px;
}

input[type='text']:focus,
input[type='password']:focus {
  border-color: white;
}

input[type='text']::placeholder,
input[type='password']::placeholder {
  color: grey;
}
input[type='text']:-ms-input-placeholder,
input[type='password']:-ms-input-placeholder {
  color: grey;
}

small.is-invalid {
  display: inline-block;
  margin-top: 4px;
  font-size: 16px;
  line-height: 120%;
  color: #f14668;
}

.checkbox input[type='checkbox'] {
  accent-color: #ef6000;
  cursor: pointer;
}

.checkbox label {
  margin-left: 8px;
  cursor: pointer;
}

.toggle-password {
  position: absolute;
  right: -35px;
  top: 13px;

  width: 30px;
  height: 30px;
  background-color: transparent;
  border: none;
  background-image: url("/assets/eye-11f648e0.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px 24px;
  cursor: pointer;
  border-radius: 4px;
  padding: 0;
}


/* Состояние "закрытый глаз" */
.toggle-password.active {
  background-image: url("/assets/eye-off-891c72eb.png");
}