.page {
    height: 100%;
    cursor: default;
}

.page__body {
    max-width: 1920px;
    min-height: 100%;
    display: grid;
    grid-template-rows: min-content 1fr min-content;
    margin: 0 auto;
    font-family: Calibri, Arial, Helvetica, sans-serif;
}

.page__body--center {
    text-align: center;
}

.page__body--auth {
    background-size: cover;
    background-image: url('bg__1920.jpg');
    background-repeat: no-repeat;
    background-position-y: bottom;
    background-position-x: center;
}

.page__main {
    margin: auto;
    padding: 0 20px;
}

.page__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 20px 0;
}

.page__footer {
    background-image: url('bg__1920.jpg');
    background-repeat: no-repeat;
    background-position-y: bottom;
    background-position-x: center;
    background-size: cover;
    min-height: 100px;
}

.logo {
    cursor: pointer;
    text-decoration: none;
    color: #5ea55f;
    font-size: 36px;
}

.logo:hover {
    text-decoration: underline;
}

.menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}

.menu__item {
    display: inline-block;
    margin-right: 5px;
    border-radius: 50px;
    transition: all .5s linear;
}

.menu__item:hover {
    box-shadow: 0 0 10px green;
    transition: all .3s linear;
}

.menu__item--profile {
    background-image: url("ico__profile.png");
    width: 40px;
    height: 40px;
    display: block;
    background-size: contain;
}

.menu__item--chat {
    background-image: url("ico__chat.png");
    width: 40px;
    height: 40px;
    display: block;
    background-size: contain;
}

.menu__item--menu {
    background-image: url("ico__menu.png");
    width: 40px;
    height: 40px;
    display: block;
    background-size: contain;
}

.menu__link {
    cursor: pointer;
}

.menu__link:hover {
    cursor: pointer;
    text-decoration: underline;
}

.menu__button {
    border: none;
    background: none;
}

.page__title {
    font-weight: normal;
    color: #61a460;
    font-size: 36px;
}

.form-auth {
    margin: 0;
    width: 300px;
}

.form-auth__input {
    padding: 20px;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 20px;
    background-color: #eded83;
    border: none;
    color: #00503c;
}

.form-auth__input::placeholder {
    text-transform: lowercase;
    color: #00503c;
}

.form-auth__button {
    padding: 20px;
    text-transform: uppercase;
    width: 100%;
    background-color: #61a461;
    border: none;
    color: white;
    transition: all .5s linear;
    cursor: pointer;
}

.form-auth__button:hover {
    background: linear-gradient(to right, #eded83, #61a461);
    transition: all .3s linear;
    box-shadow: 0 0 10px #eded83;
}

.copyright {
    font-size: 14px;
    background-color: white;
    display: block;
    width: fit-content;
    padding: 2px 10px;
    margin: 0 auto 10px;
}

.message-status {
	text-align: center;
    font-size: 14px;
    background-color: cornflowerblue;
    color: white;
    padding: 5px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    transition: all .8s linear;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
}

.message-status--error {
    background-color: #ed3dc2;
}

.message-status--ok {
    background-color: cornflowerblue;
}

.message-status--hide {
    display: none;
    transition: all .8s linear;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
      -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
    clip: rect(0 0 0 0);
    overflow: hidden;
}

@media (min-width: 660px) {
    .page__body {
        background-size: initial;
        background-image: url('bg__1920.jpg');
        background-repeat: no-repeat;
        background-position-y: bottom;
        background-position-x: center;
    }

    .page__main {
        margin: initial;
    }

    .page__main--center {
        margin: auto;
    }

    .page__footer {
        background: none;
        min-height: initial;
    }

    .logo {
        font-size: 36px;
    }
}