.login-pf body {
    background: #36404a url('../img/bg.jpg') no-repeat center center fixed;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card-pf {
    width: 300px;
    border: 0;
    padding: 0 !important;
    border-radius: 5px;
    box-shadow: 0 0 40px 4px #111118;
}

.card-pf #kc-login {
    height: 70px;
    background: #36404A;
    color: #fff;
    text-transform: uppercase;
    border-radius: 0 0 4px 4px;
}

.forge-rock-on #kc-login {
    border-radius: 0;
    height: 42px;
}

.card-pf #kc-login.with-radius {
    border-radius: 0 0 4px 4px;
    height: 70px;
}

.card-pf #kc-login:hover {
    opacity: .8;
}

.card-pf .form-group {
    padding-left: 20px;
    padding-right: 20px;
}

.card-pf .form-group#kc-form-buttons {
    padding: 0;
}

.login-pf-page {
    margin-top: -40px;
    padding-top: 0;
}

.login-pf-page-header {
    display: none;
}

.login-pf-header {
    height: 110px;
    background: #E3E3E3FF url("../img/minsky_logo.svg") center no-repeat;
    background-size: 220px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    margin-bottom: 0 !important;
}

.login-pf-header #kc-page-title {
    display: none;
}

#kc-info {
    margin: 0;
}

#kc-info-wrapper {
    width: 100%;
    background: none;
    padding: 0 10px 10px 10px;
    font-size: 11px;
}

#kc-form-buttons {
    padding: 0;
    margin-top: 13px;
}

#kc-form-buttons > input {
    height: 70px;
    background: #36404A;
    color: #fff;
    text-transform: uppercase;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.login-pf-page .login-pf-settings {
    justify-content: center;
}

.form-group {
    margin-bottom: 13px;
}


.form-group.login-pf-settings.login-page {
    padding: 0;
}

.form-group.login-pf-settings span > a {
    color: rgba(0, 0, 0, 0.87);
    font-size: 12px;
}

/*.form-group > label[for="username"], .form-group > label[for="password"] {*/
/*    display: none;*/
/*}*/

.minsky-input-wrapper {
    border-radius: 3px;
    border: 1px solid #f1f1f1;
    position: relative;
    background: #f1f1f1 url("../img/ico_login.svg") no-repeat 15px 15px;
    transition: border-color 0.8s;
    padding-left: 40px;
    background-size: 12px;
}

.minsky-input-wrapper:focus-within {
    border-color: #a0a0a0;
}

.minsky-input-wrapper.password {
    background: #f1f1f1 url("../img/ico_password.svg") no-repeat 15px 13px;
    background-size: 11px;
}

.minsky-input-wrapper input {
    border: 0;
    outline: none;
    font-size: 12px;
    padding-left: 12px;
    height: 40px;
}

#kc-content-wrapper {
    margin-top: 0;
}

#kc-content-wrapper .alert-warning,
#kc-content-wrapper .alert-success,
#kc-content-wrapper .alert-error{
    display: flex;
    align-items: center;
}

#kc-content-wrapper .alert-warning {
    margin-bottom: 10px;

}

#kc-content-wrapper #kc-info-message{
    padding: 10px 20px;
}
#kc-content-wrapper #kc-info-message .instruction{
    padding: 0 0 10px 0;
}

#kc-content-wrapper > .instruction{
    padding: 0 20px 20px;
    margin: 0;
}

#kc-content-wrapper #kc-error-message {
    padding: 0 20px 20px 20px;
}

#kc-content-wrapper #kc-error-message > .instruction {
    margin-bottom: 10px;
    margin-top: 20px;
    padding: 0;
}


#kc-form-wrapper {
    margin-top: 20px;
}

#kc-reset-password-form {
    margin-top: 20px;
}

#backToApplication {
    color: rgba(0, 0, 0, 0.87);
    font-size: 12px;
}

#kc-info.login-pf-signup {
    display: none;
}

.label-wrapper {
    text-align: center;
    margin-bottom: 15px;
}
#kc-social-providers{
    padding: 0;
    background: #36404A;
    border-radius: 0 0 4px 4px;
    overflow: hidden;

    > hr{
        margin: 0 auto;
        width: calc(100% - 30px);
    }

    > h4{
        font-size: 9px;
        margin: 5px 0 0 0;
        padding: 0;
        color: #fff;
    }

    > ul.kc-social-links{
        margin: 0;

        > li{
            height: 42px;
            display: flex;
            align-items: center;
        }

        > li > a.pf-c-button.pf-m-control{
            margin: 0;
            margin-top: -1px;
            padding: 10px 4px;
            font-size: 14px;
            color: #fff;
            background: none;

            &::after{
                border: 0;
            }

            &:hover {
                background-color: #5e666e;
            }
        }

    }
}

/* Logout confirm: wrapper in logout-confirm.ftl only */
.kc-logout-confirm .card-pf #kc-logout {
    height: 70px;
    background: #36404A;
    color: #fff;
    text-transform: uppercase;
    border-radius: 0 0 4px 4px;
}

.kc-logout-confirm .forge-rock-on #kc-logout {
    border-radius: 0;
    height: 42px;
}

.kc-logout-confirm > .instruction.label-wrapper {
    padding: 12px 0;
}

.kc-logout-confirm #kc-logout-confirm {
    margin-top: 0;
}

.kc-logout-confirm form.form-actions {
    margin: 0;
}

.kc-logout-confirm #kc-form-buttons {
    margin-top: 0;
}

.kc-logout-confirm #kc-form-buttons.form-group {
    margin-bottom: 0;
}

.kc-logout-confirm .card-pf #kc-form-buttons > input#kc-logout,
.kc-logout-confirm #kc-form-buttons > input#kc-logout:focus,
.kc-logout-confirm #kc-form-buttons > input#kc-logout:focus-visible {
    border: 0;
    outline: none;
    box-shadow: none;
}

.kc-logout-confirm .card-pf #kc-form-buttons > input#kc-logout:hover {
    opacity: 1;
    background-color: #5e666e;
}

.kc-logout-confirm #kc-social-providers > ul.kc-social-links > li > a.pf-c-button,
.kc-logout-confirm #kc-social-providers > ul.kc-social-links > li > a.pf-c-button:hover,
.kc-logout-confirm #kc-social-providers > ul.kc-social-links > li > a.pf-c-button:focus,
.kc-logout-confirm #kc-social-providers > ul.kc-social-links > li > a.pf-c-button:focus-visible {
    text-decoration: none;
}

.kc-logout-confirm #kc-social-providers.kc-logout-confirm-footer {
    padding: 0;
}

.kc-logout-confirm #kc-social-providers > ul.kc-social-links {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

.kc-logout-confirm #kc-social-providers > ul.kc-social-links > li {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
}

.kc-logout-confirm #kc-social-providers > ul.kc-social-links > li > a.pf-c-button {
    display: block;
    width: 100%;
    margin: 0;
    padding: 10px 0;
    text-align: center;
}

.kc-logout-confirm #kc-social-providers .kc-social-provider-name {
    text-decoration: none;
}

@media (max-width: 768px) {
    .kc-logout-confirm #kc-social-providers.kc-logout-confirm-footer {
        cursor: auto;
        pointer-events: auto;
        background: #36404A;
    }

    .kc-logout-confirm #kc-social-providers.kc-logout-confirm-footer li > a {
        opacity: 1;
    }
}

a.pf-c-button.pf-m-block.btn-lg {
    display: flex;
    align-items: center;
    justify-content: center;
}

.gov-message{
    position:  absolute;
    left: 0;
    right: 0;
    top: 0;
    background: #2E363F;
    color: #fff;
    padding: 10px;
    font-size: 12px;
    line-height: 17px;
}


.modal-agreement{
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    transition: .3s;

    &.hide{
        display: none;
    }

    > .modal-agreement-content{
        width: 648px;
        border-radius: 8px;
        background: #fff;
        color: #262B31;
        font-weight: 400;
        font-size: 13px;
        padding: 24px;

        > .modal-agreement__title{
            font-weight: bold;
            font-size: 15px;
            margin-bottom: 18px;
        }

        > .modal-agreement__info{
            background: #FFF8E6 url("../img/ico_info.svg") no-repeat left 12px top 18px;
            margin-top: 12px;
            margin-bottom: 24px;
            padding: 12px 12px 12px 44px;
            font-weight: 700;
            border-radius: 8px;
        }

        > .modal-agreement__button{
            width: 100%;

            > button{
                width: 100%;
                background: #128A78;
                color: #fff;
                height: 36px;
                line-height: 36px;
                font-size: 15px;
                border: none;
                border-radius: 8px;

                &:hover{
                    opacity: .8;
                }
            }
        }
    }
}


@media (max-width: 768px) {
    #kc-social-providers {
        cursor: not-allowed;
        pointer-events: none;
        background: #62646a;

        & li > a {
            opacity: 0.5;
        }
    }
}

@media (max-width: 400px) {
    .modal-agreement {
        .modal-agreement-content{
            margin: 8px;
            font-size: 12px;
            height: 98%;
            display: flex;
            flex-direction: column;

            > .modal-agreement__title{
                font-size: 14px;
            }
        }

        .modal-agreement__text{
            height: 100%;
            overflow-y: auto;
        }
    }
}

@media (min-width: 400px) and (max-width: 768px) {
    .modal-agreement {
        .modal-agreement-content{
            width: 100%;
            margin: 24px;
            font-size: 12px;
        }
    }
}
