:root {
    --keycloak-logo-url: url('../img/logo_neutre.png');
    --keycloak-logo-width: 264px;
    --keycloak-logo-height: 100px;
    --main-color-dark: var(--pf-v5-global--palette--purple-600);
    --main-color: var(--pf-v5-global--palette--purple-500);
    --main-color-light: var(--pf-v5-global--palette--purple-400);
    --text-color: var(--pf-v5-global--palette--black-1000);
    --paper-color: rgba(255, 255, 255, 0.26);
    --secondary-color-dark: var(--pf-v5-global--palette--orange-300);
    --secondary-color: var(--pf-v5-global--palette--orange-200);
    --secondary-color-light: var(--pf-v5-global--palette--orange-100);
    --button-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 4px -1px, rgba(0, 0, 0, 0.14) 0 4px 5px 0px, rgba(0, 0, 0, 0.12) 0 1px 10px 0px;
    --keycloak-bg: linear-gradient(315deg, var(--main-color-light) 0%, var(--secondary-color) 100%);
    --keycloak-mobile-bg: linear-gradient(315deg, var(--main-color-light) 0%, var(--secondary-color) 100%);
}

/*Texts*/
.pf-v5-c-login__main {
    color: var(--text-color);
}

/*Links*/
a {
    color: var(--text-color);
}

a:hover {
    color: var(--text-color);
}

/*Background*/
.login-pf body {
    background: var(--keycloak-bg);
    background-size: cover;
    height: 100%;
}

@media (max-width: 767px) {
    .login-pf body {
        background: var(--keycloak-mobile-bg);
    }
}

/*Logo*/
@media (max-width: 767px) {
    div.kc-logo-text {
        transform: scale(0.75);
    }
}

/*Login Card*/
@media (min-width: 576px) {
    .pf-v5-c-login {
        align-items: flex-start;
    }
}

.pf-v5-c-login__main-header {
    border-top: 0;
}

.pf-v5-c-login__main {
    background: var(--paper-color);
}

.pf-v5-c-login {
    padding-block-end: inherit;
    padding-block-start: inherit;
}

/*Buttons*/
.pf-v5-c-button.pf-m-block {
    width: inherit;
}

.pf-v5-c-button.pf-m-primary {
    background-color: var(--main-color);
    border-radius: var(--pf-v5-global--BorderRadius--lg);
    border: 1px solid var(--main-color-dark);
    font-size: var(--pf-v5-global--FontSize--sm);
}

.pf-v5-c-button.pf-m-primary:hover {
    background-color: var(--main-color-dark);
    box-shadow: var(--button-box-shadow);
}

.pf-v5-c-button.pf-m-aria-disabled, .pf-v5-c-button.pf-m-disabled, .pf-v5-c-button:disabled {
    color: inherit;
}

/*Buttons Forgotten Password*/
a.pf-v5-c-button.pf-m-secondary.pf-m-block {
    color: var(--text-color);
    width: max-content;
    font-size: var(--pf-v5-global--FontSize--sm);
}

a:hover.pf-v5-c-button.pf-m-secondary.pf-m-block {
    text-decoration: underline;
}

a.pf-v5-c-button.pf-m-secondary.pf-m-block:after {
    border: none;
}

.pf-v5-c-form__actions {
    flex-direction: column-reverse;
}

/*Forms -- Included Password Forms*/
.pf-v5-c-form__label-text {
    font-weight: inherit;
}

.pf-v5-c-form-control:before, .pf-v5-c-button.pf-m-control, .pf-v5-c-alert.pf-m-inline {
    border: 1px solid transparent;
}

.pf-v5-c-form-control:hover:before, .pf-v5-c-button.pf-m-control:hover {
    border-bottom: 2px solid var(--secondary-color-dark);
}

.pf-v5-c-form-control.pf-m-error:before, .pf-v5-c-alert.pf-m-danger {
    border-color: var(--pf-v5-global--danger-color--200);
}

.pf-v5-c-form-control:after {
    border-block-end: none;
}

.pf-v5-c-button.pf-m-control {
    --pf-v5-c-button--after--BorderColor: #ffffff00;
    padding-block-end: inherit;
    padding-block-start: inherit;
}

.pf-v5-c-form-control > :is(input,select,textarea):focus {
    outline: none;
    box-shadow: inset 1px 1px 8px 3px var(--secondary-color-light);
}

.pf-v5-c-form-control.pf-m-error > :is(input,select,textarea):focus {
    outline-color: var(--pf-v5-global--danger-color--200);
}

.pf-v5-c-check__label {
    color: var(--text-color);
}

.pf-v5-c-helper-text__item {
    display: flex;
    justify-content: flex-end;
}

/*Contrast Error*/
.pf-v5-c-helper-text__item.pf-m-error {
    background: var(--pf-v5-global--palette--red-50);
}

/*Footer Items Links*/
.pf-v5-c-login__main-footer-band {
    border-block-start: 1px solid var(--paper-color);
}

.pf-v5-c-login__main-footer-links-item-link svg {
    fill: var(--text-color);
}

.pf-v5-c-login__main-footer-links-item-link svg:hover {
    fill: var(--main-color);
}

.pf-v5-c-login__main-footer-links-item-link > span > span {
    display: none;
}

.pf-v5-c-login__main-footer-links-item-link:hover > span > span {
    display: block;
    position: absolute;
}

/*Info Wrapper*/
div#kc-info-wrapper {
    padding-top: 20px;
    text-align: justify;
    font-size: var(--pf-v5-global--FontSize--sm);
    color: var(--text-color);
}