body,
body.login,
html {
    height: 100%;
    width: 100%
}

:root {
    --primary-color: #8963EA;
    --primary-hover-start: #732dd3;
    --primary-hover-end: #8963ea;
    --background-color: #0e0c27;
    --card-background: #ffffff;
    --text-color: #0e0c27;
    --button-text-color: #ffffff;
    --link-color: #8963EA;
    --font-family: 'Segoe UI', Roboto, sans-serif;
    --card-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
    --max-width-login: 400px;
    --max-height-login: 90vh
}

body,
html {
    margin: 0;
    padding: 0;
    overflow: hidden
}

body.login {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-family: var(--font-family)
}

#login {
    padding: 40px;
    border-radius: 15px;
    width: 100%;
    max-width: var(--max-width-login);
    text-align: center;
    background: 0 0;
    box-shadow: none;
    border: none;
    max-height: var(--max-height-login);
    overflow-y: auto
}

#login h1 {
    display: none
}

#login form {
    border: none !important;
    box-shadow: none !important
}

#login label {
    display: block;
    margin-bottom: 5px;
    color: var(--text-color);
    font-weight: 700;
    text-align: left
}

#login input[type=password],
#login input[type=text] {
    width: 100%;
    padding: 10px;
    margin-bottom: 15px;
    border: none;
    border-radius: 4px;
    box-sizing: border-box;
    background-color: var(--ngw-login-field-bg, #e9e9e9);
    color: var(--ngw-login-field-text, #0e0c27)
}

#login .forgetmenot {
    display: flex;
    align-items: center;
    margin-bottom: 15px
}

#login .forgetmenot input {
    margin-right: 8px
}

#login .button-primary {
    width: 100%;
    background: var(--primary-color);
    border: none;
    color: var(--button-text-color);
    padding: 12px;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 4px;
    cursor: pointer;
    transition: background .4s
}

#login .button-primary:hover {
    background: var(--primary-hover-start)
}

#backtoblog,
#nav,
.language-switcher,
.privacy-policy-page-link,
.screen-reader-text,
.sr-made-with-love {
    display: none !important
}

@media (max-width:480px) {
    #login {
        padding: 20px;
        margin: 10px 15px;
        width: 90%;
        max-height: 100vh;
        overflow-y: auto
    }

    body.login {
        background-size: cover;
        background-position: center center
    }

    #login input[type=password],
    #login input[type=text] {
        font-size: 14px
    }
}

.g-recaptcha {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    margin-bottom: 20px
}
