/*           */
/* Preloader */
/*           */

#preloader {
    position: fixed;
    display: flex;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    background: var(--c-background-1);
}

#preloader .spinner {
    width: 40px;
    height: 40px;
    border: 2px solid var(--c-border-1);
    border-top: 4px solid var(--c-theme-1);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}


/*      */
/* Main */
/*      */

#main {
    display: flex;
    min-height: 650px;
    height: 100vh;
    justify-content: center;
    align-items: center;
    background: var(--c-background-2);
}


/*        */
/* Return */
/*        */

#main .return {
    display: flex;
    justify-content: center;
}

#main .return a {
    padding: 5px 12px;
    border-radius: 25px;
    transition: color .3s, background-color .3s;
    font-size: 11px;
    color: var(--c-foreground-2);
    background: var(--c-background-3);
}

#main .return a:hover {
    color: white;
    background: var(--c-theme-1);
}

#main .return a i::before {
    margin-right: 8px;
    font-size: 9px;
}


/*      */
/* Card */
/*      */

#main .card {
    margin: 25px 0;
    padding: 45px 35px;
    width: 350px;
    height: fit-content;
    border: none;
    border-radius: 10px;
    background: var(--c-background-1);
    box-shadow: 0px 0px 30px var(--c-shadow-1);
}

@media (max-width: 400px) {
    #main .card {
        width: 300px;
    }
}

@media (max-width: 350px) {
    #main .card {
        width: 280px;
    }
}

#main .card h2 {
    margin: 0;
    text-align: center;
    font-size: 25px;
    font-weight: 600;
    color: var(--c-theme-1);
}

#main .card .form {
    margin-top: 45px;
}

#main .card .form-group {
    margin: 15px 0;
}

#main .card .form-group:first-of-type {
    margin-top: 0;
}

#main .card .form-group:last-of-type {
    margin-top: 45px;
    margin-bottom: 0;
}

#main .card .form-control {
    padding: 10px;
    border: none;
    direction: rtl;
    border-radius: 5px;
    font-family: var(--f-family-1);
    font-size: 14px;
    background: var(--c-background-2);
}

#main .card .form-control[type="submit"] {
    transition: filter .3s;
    font-weight: 600;
    letter-spacing: .5px;
    color: white;
    background: var(--c-theme-1);
}

#main .card .form-control[type="submit"]:hover {
    filter: brightness(1.1);
}

#main .card .form-control::placeholder {
    font-size: 13px;
    color: var(--c-foreground-2);
}

#main .card .field-validation-error {
    display: block;
    margin-top: 5px;
    font-size: 12px;
}


/*       */
/* Links */
/*       */

#main .links a {
    display: block;
    margin: 4px auto;
    width: fit-content;
    transition: color .3s;
    font-size: 12px;
    color: var(--c-foreground-2);
}

#main .links a:hover {
    color: var(--c-theme-1);
}


/*          */
/* Redirect */
/*          */

#redirect {
    display: none;
}

#redirect .message {
    font-family: var(--f-family-1);
    font-size: 18px;
}