.auth {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    background: #F6F5F7;
    display: none;
    z-index: 9999;
    font-family: 'Montserrat', sans-serif;
}

.form__group.form__row {
    display: flex;
    align-items: center;
}

.auth.open {
    display: flex;
}

.auth__container {
    position: relative;
    background: #FFFFFF;
    box-shadow: var(--medium-shadow);
    border-radius: 8px;
    overflow: hidden;
    width: 800px;
    z-index: 5;
}

.auth__row {
    display: flex;
    flex-wrap: wrap;
    height: 80vh;
}

.auth__header {
    position: absolute;
    top: 0;
    left: 0;
    width: 400px;
    height: 100%;
    background: linear-gradient(45deg, var(--primary-color), var(--primary-color-hover));
    color: var(--primary-color-text);
    z-index: 9;
    transform: translateX(0);
    transition: .5s;
}

.auth__cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.form--register, .form--auth, .form--recovery {
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 400px;
    height: 100%;
    opacity: 0;
    transition: .75s;
}

form.form.form--auth {
    left: 400px;
}

.auth--set .form--auth {
    opacity: 1;
}

.auth--reg .form--register {
    opacity: 1;
}

.auth--rec .form--recovery {
    opacity: 1;
}

.auth__column .form > div {
    width: 100%;
}

.authCover, .registerCover, .recoveryCover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    padding: 2em;
    align-items: center;
    text-align: center;
    opacity: 0;
    transition: .5s;
}

.auth--set .authCover {
    opacity: 1;
    z-index: 5;
}

.auth--reg .registerCover {
    opacity: 1;
    z-index: 5;
}

.auth--rec .recoveryCover {
    opacity: 1;
    z-index: 5;
}

.auth__header-button {
    display: flex;
    flex-direction: column;
    gap: 1em;
    padding: 1em;
}

.auth--reg .auth__header, .auth--rec .auth__header {
    transform: translateX(400px);
}

.auth__header-link {
    border: 1px solid var(--primary-color-text);
    color: var(--primary-color-text);
    padding: 15px 35px;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: -1px;
    font-weight: 500;
    font-size: .9em;
    transition: .3s;
    cursor: pointer;
}

.auth__header-link:hover {
    background: var(--primary-color-text);
    color: var(--primary-color);
}

.auth__column .form {
    padding: 3em;
    text-align: center;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}

.auth__title h2 {
    font-weight: 900;
    font-size: 1.2em;
}

input.form__input {
    box-sizing: border-box;
    padding: 15px;
    border: 0;
    width: 100%;
    background: #EEEEEE;
    font-size: .9em;
}

.auth .form__group {
    padding: 0.5em 0;
}

.form__group.form__checkbox {
    padding: 0.5em 0;
}

.form__button {
    padding-top: 0.5em;
    position: relative;
    z-index: 1;
    justify-content: center;
}

button.form__submit {
    border: 0;
    background: var(--primary-color);
    color: var(--primary-color-text);
    border-radius: 50px;
    padding: 15px 35px;
    cursor: pointer;
    transition: .3s;
}

button.form__submit:hover {
    background: var(--primary-color-hover);
}

.authClose {
    display: none;
}
[data-input="password"] {
    -webkit-text-security: disc;
    text-security: disc;
}
[data-input="password"].active {
    -webkit-text-security: none;
    text-security: none;
}

.form__group {
    position: relative;
    z-index: 9;
}

.form__group-eye {
    position: absolute;
    top: 0;
    right: 0;
    padding: 1.3em;
    cursor: pointer;
    color: #808080;
}

.form__group-eye i:after {
    content: '';
    position: absolute;
    top: 0.45em;
    left: -0.25em;
    width: 24px;
    height: 1px;
    background: #808080;
    transform: rotate(-45deg);
}

.form__group-eye.active {
    color: #000000;
}

.form__group-eye.active i:after {
    display: none;
}

@media (max-width: 800px) {
    .auth__container {
        width: 100%;
        height: 100vh;
        border-radius: 0;
        overflow-y: auto;
    }

    .auth__header {
        width: 100%;
        height: 315px;
    }

    .auth--reg .auth__header, .auth--rec .auth__header {
        transform: translateX(0);
    }

    .auth__column {
        position: absolute;
        top: 315px;
        width: 100vw;
    }

    .auth__row.auth--set {
        flex-wrap: nowrap;
    }

    form.form.form--auth {
        left: 0;
    }

    .auth__column .form > div {
        padding-bottom: 3em;
    }

    .auth__column .form {
        width: 100%;
        padding: 2em 1em;
    }

    .authClose {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        padding: 1em;
        font-size: 1.4em;
        cursor: pointer;
        z-index: 99;
    }
}