:root {
    --common-white-cl: #FFFFFF;
    --common-black-cl: #000000;

    --layout-bg-cl: #18181C;
    --popup-bg-cl: #181D27;
    --validation-message-bg-cl: #b75a5a;
    --popup-border-cl: #FFFFFF26;

    --input-background-cl: #FFFFFF0D;
    --input-border-cl: #FFFFFF59;
    --input-label-cl: #FFFFFFA6;

    --link-cl: #26BBFF;
    --button-cl: #38B85D;
    
    --input-border-radius: 10px;

    --common-font-family: 'Inter', sans-serif;

    --normal-font-weight: 400;
    --bold-font-weight: 600;

    /*text*/
    --text-small-font-size: 14px;
    --text-normal-font-size: 16px;
    --text-large-font-size: 18px;
    --text-xlarge-font-size: 20px;
}

* {
    font-family: var(--common-font-family) !important;
}

body {
    font-size: 16px;
    font-family: var(--common-font-family) !important;
}

span.fa.fa-fw.fa-exclamation-triangle,
span.fa.fa-fw.fa-check-circle,
i.fa.fa-eye,
i.fa.fa-eye-slash {
    font-family: FontAwesome !important;
}


.login-pf body {
    background: var(--layout-bg-cl);
}

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

/* header */
.login-pf #kc-header {
    margin-bottom: 100px;
    opacity: 1;
    filter: blur(160px);
    background: linear-gradient(90deg, #101014 0%, #1E4EB4 31.25%, #0BB3AF 64%, #101014 100%), linear-gradient(180deg, rgba(16, 16, 20, 0) -53.33%, #101014 100%), linear-gradient(0deg, rgba(0, 113, 100, 0.15), rgba(0, 113, 100, 0.15));
}

.login-pf #kc-header-wrapper {
    /*content: url('../img/logo.svg');*/
    padding: 20px;
    height: 86px;
    visibility: hidden;
}
/* header */

/* login popup */
h1#kc-page-title {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 30px;
    font-weight: var(--bold-font-weight);
    line-height: 38px;
    letter-spacing: 0%;
}

div.rfc-logo {
    content: url('../img/logo.svg');
    height: fit-content;
    display: flex;
    justify-self: center;
    margin-bottom: 15px;
}

div.rfc-trusted-by-clients {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;
}

div.rfc-trusted-by-logo {
    width: 80px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
}

.rfc-trusted-by-logo.rfc-impact {
    background-image: url(../img/impact-logo.svg);
    width: 85px;
    height: 25px;
}

.rfc-trusted-by-logo.rfc-redeem {
    background-image: url(../img/redeem-logo.svg);
}

.rfc-trusted-by-logo.rfc-solid {
    background-image: url(../img/solid-logo.svg);
    width: 85px;
    height: 25px;
}

.rfc-trusted-by-logo.rfc-sharenet {
    background-image: url(../img/sharenet-logo.svg);
    width: 95px;
    height: 25px;
}

.rfc-registration-link-wrapper {
    margin-top: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rfc-registration-link-title {
    color: var(--input-label-cl);
    font-weight: var(--normal-font-weight);
    font-size: var(--text-normal-font-size);
    line-height: 24px;
    letter-spacing: 0%;
    text-align: center;
    padding-bottom: 16px;
}

a.rfc-registration-link {
    font-weight: var(--normal-font-weight);
    font-size: var(--text-normal-font-size);
    line-height: 24px;
    letter-spacing: 0%;
    text-align: center;
}

.login-pf-page .card-pf {
    border-radius: 24px;
    max-width: 520px;
    background: var(--popup-bg-cl);
    color: var(--common-white-cl);
    margin: 0 auto;
    position: relative;
    border: 1px solid var(--popup-border-cl);
}

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

.form-group {
    margin-bottom: 0;
}

.form-group label.pf-c-form__label.pf-c-form__label-text {
    color: var(--input-label-cl);
    font-weight: var(--normal-font-weight);
    font-size: var(--text-small-font-size);
    line-height: 20px;
    letter-spacing: 0%;
    margin-bottom: 7px;
    margin-top: 10px;
}

.form-group .pf-c-input-group {
    background: var(--input-background-cl);
    border-radius: var(--input-border-radius);
    border: 1px solid var(--input-border-cl);
}

.form-group input.pf-c-form-control {
    background: var(--input-background-cl);
    border-radius: var(--input-border-radius);
    color: var(--common-white-cl);
    font-size: var(--text-small-font-size);
    border: none;
    height: 40px;
}

.form-group input.pf-c-form-control[name=username],
.form-group input.pf-c-form-control[name=email] {
    border: 1px solid var(--input-border-cl);
}

.form-group input.pf-c-form-control[name=password],
.form-group input.pf-c-form-control[name=password-new],
.form-group input.pf-c-form-control[name=password-confirm] {
    border-radius: var(--input-border-radius) 0 0 var(--input-border-radius);
    background: transparent;
}

.form-group .pf-c-input-group button.pf-c-button.pf-m-control {
    background: transparent;
    border-radius: 0 var(--input-border-radius) var(--input-border-radius) 0;
    color: var(--common-white-cl);
    margin-left: 0;
}

.pf-c-button.pf-m-control:after {
    border: none;
}

.form-group input.pf-c-form-control:focus-visible {
    border: none;
}

a {
    color: var(--link-cl);
    font-weight: var(--normal-font-weight);
    font-size: var(--text-small-font-size);
    line-height: 20px;
    letter-spacing: 0%;
}

a:focus,
.form-group .login-pf-settings div span a:focus {
    outline: none;
}

.login-pf a:hover {
    text-decoration: none;
}

.checkbox label {
    color: var(--common-white-cl);
}

.checkbox input[type=checkbox] {
    accent-color: var(--button-cl);
    height: 15px;
    width: 15px;
    margin-top: 5px;
}

.login-pf-page .login-pf-settings div {
    align-self: center;
    margin-top: 7px;
}

div#kc-form-buttons {
    margin-top: 25px;
}

.form-group input.pf-c-button.pf-m-primary.pf-m-block.btn-lg {
    background: var(--button-cl);
    border-radius: 8px;
    font-weight: var(--bold-font-weight);
    font-size: var(--text-normal-font-size);
    border: none;
    color: var(--common-white-cl);
    height: 40px;
}

.pf-c-form__helper-text.pf-m-error {
    color: var(--common-white-cl);
    background-color: var(--validation-message-bg-cl);
    border-radius: 8px;
    padding: 7px 15px;
    display: inline-block;
    font-size: var(--text-small-font-size);
}
/* login popup */

/* reset password */
/*div#kc-form-options,*/
.alert-warning.pf-c-alert.pf-m-inline.pf-m-warning {
    margin-bottom: 20px;
}
/* reset password */
