.password {
  --font-size: 14px;
  --line-height: 20px;
  --container-margin: 0 auto;
  --container-max-width: 292px;
  --inner-width: 100%;
  --inner-padding: 12px 12px 0 12px;
  --title-font-size-line-height: 16px;
  --title-margin-bottom: 15px;
  --text-margin-bottom: 10px;
  --button-margin-top: 10px;
  --button-padding: 4px 10px;
  --button-border-radius: 2px;
  --postscript-line-height: 25px;
  --postscript-padding: 5px 5px 10px 5px;
  --postscript-margin: 10px 0 10px 0;
  --form-input-width: 100%;
  --form-input-padding: 3px 5px 3px 5px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: var(--font-size);
  line-height: var(--line-height);
  background: rgba(0, 0, 0, 0.75);
  z-index: 1000;
  transition: all 0.3s;
}
.password._access {
  opacity: 0;
}
.password__container {
  width: 100%;
  max-width: var(--container-max-width);
  margin: var(--container-margin);
}
.password__inner {
  width: var(--inner-width);
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: var(--inner-padding);
  color: #000000;
}
.password__title {
  font-size: var(--title-font-size-line-height);
  line-height: var(--title-font-size-line-height);
  font-weight: 500;
  margin-bottom: var(--title-margin-bottom);
}
.password__text {
  margin-bottom: var(--text-margin-bottom);
}
.password__button {
  margin-top: var(--button-margin-top);
  padding: var(--button-padding);
  border-radius: var(--button-border-radius);
  font-size: var(--font-size);
}
.password .postscript {
  line-height: var(--postscript-line-height);
  color: transparent;
  margin: var(--postscript-margin);
  padding: var(--postscript-padding);
  border: 1px dotted #00000060;
  color: #000000;
}
.password__link {
  color: #000000;
  border-bottom: 1px solid #00000050;
  padding-bottom: 1px;
}
.password__form {
  width: 100%;
}
.password__form-input {
  display: block;
  font-size: var(--font-size);
  width: var(--form-input-width);
  padding: var(--form-input-padding);
  border: 1px solid transparent;
  transition: all 0.3s;
}
.password__form-input._error {
  border: 1px solid #ff000090;
  box-shadow: 0 0 5px red;
  border-radius: 5px;
}

@media (min-width: 375px) {
  .password {
    --font-size: 15px;
    --container-max-width: 310px;
    --inner-padding: 13px 13px 0 13px;
    --title-font-size-line-height: 17px;
    --text-margin-bottom: 11px;
    --button-margin-top: 11px;
    --button-padding: 5px 15px;
    --postscript-padding: 7px 7px 10px 7px;
    --postscript-margin: 11px 0 11px 0;
    --form-input-padding: 4px 7px 4px 7px;
  }
}
@media (min-width: 450px) {
  .password {
    --font-size: 16px;
    --line-height: 22px;
    --container-margin: 0 auto;
    --container-max-width: 358px;
    --inner-padding: 16px 16px 0 16px;
    --title-font-size-line-height: 18px;
    --title-margin-bottom: 16px;
    --text-margin-bottom: 12px;
    --button-margin-top: 12px;
    --button-padding: 6px 17px;
    --button-border-radius: 3px;
    --postscript-line-height: 27px;
    --postscript-padding: 10px 10px 12px 10px;
    --postscript-margin: 14px 0 14px 0;
    --form-input-padding: 5px 7px 5px 7px;
  }
}
@media (min-width: 600px) {
  .password {
    --font-size: 17px;
    --line-height: 22px;
    --container-max-width: 445px;
    --inner-padding: 17px 17px 0 17px;
    --title-font-size-line-height: 19px;
    --text-margin-bottom: 14px;
    --button-margin-top: 14px;
    --button-padding: 7px 18px;
    --postscript-padding: 11px 11px 12px 11px;
    --postscript-margin: 14px 0 14px 0;
    --form-input-width: 50%;
    --form-input-padding: 6px 7px 6px 7px;
  }
}
@media (min-width: 768px) {
  .password {
    --font-size: 18px;
    --line-height: 24px;
    --container-max-width: 465px;
    --inner-padding: 17px 17px 0 17px;
    --title-font-size-line-height: 20px;
    --text-margin-bottom: 14px;
    --button-margin-top: 14px;
    --button-padding: 7px 20px;
    --postscript-padding: 11px 11px 12px 11px;
    --postscript-margin: 14px 0 19px 0;
    --form-input-padding: 6px 7px 6px 7px;
  }
}
@media (min-width: 1000px) {
  .password {
    --container-max-width: 480px;
    --inner-margin-top: 85px;
    --inner-padding: 20px 20px 0 20px;
  }
}
@media (min-width: 1200px) {
  .password {
    --inner-margin-top: 90px;
  }
}