:root {
    --ifood-main-color: #ea1d2c;
    --ifood-text-color: #3e3e3e;
    --ifood-bg-color: #f4f4f4;
    --ifood-bg-dark-color: #e4e4e4;
    --white-color: #fff;
    --pf-v5-global--primary-color--100: var(--ifood-main-color);
}

* {
    outline-style: none;
}

body {
    margin: 0;
}

body,
#app {
    height: 100%;
}

.pf-v5-c-menu__item-text,
.pf-v5-c-form__group-control .pf-v5-c-menu-toggle__text,
.pf-v5-c-form-control input[type="text"] {
    color: var(--ifood-text-color);
}

.pf-v5-c-masthead,
.pf-v5-c-toolbar,
.pf-v5-c-masthead__content,
.pf-v5-c-button.pf-m-primary,
.pf-v5-c-data-list__item-action button[data-testrole="remove"] {
    background-color: var(--ifood-main-color);
}

.pf-v5-c-page__sidebar-body {
    background-color: var(--ifood-bg-color);
}

.pf-v5-c-content,
.pf-v5-c-nav__link,
.pf-v5-c-page__main,
.pf-v5-c-data-list__cell,
.pf-v5-c-modal-box__body,
.pf-v5-c-modal-box__header,
.pf-v5-c-jump-links__link-text,
.pf-v5-c-description-list__term,
.pf-v5-c-description-list__text,
.pf-v5-l-grid__item,
.pf-v5-l-grid__item .pf-v5-svg,
.pf-v5-c-menu-toggle__toggle-icon .pf-v5-svg {
    color: var(--ifood-text-color) !important;
}

.pf-v5-c-nav__link:hover,
.pf-v5-c-nav__link:focus,
.pf-v5-c-nav__link.pf-m-hover,
.pf-v5-c-nav__link.pf-m-current,
.pf-v5-c-nav__link.pf-m-current:hover,
.pf-v5-c-nav__item.pf-m-current:not(.pf-m-expanded) .pf-v5-c-nav__link {
    background-color: var(--ifood-bg-dark-color);
}

.pf-v5-c-nav__link:before,
.pf-v5-c-nav__item.pf-m-expandable:before,
.pf-v5-c-toolbar__item .pf-v5-c-menu-toggle:before {
    border: none;
}

.pf-v5-c-data-list__expandable-content-body .session-title {
    font-weight: bold;
    color: var(--ifood-text-color);
}

.pf-v5-c-data-list__expandable-content-body .pf-v5-l-grid__item button {
    margin: 2% 0 1% 0;
}

.pf-v5-c-nav__link:after,
.pf-v5-c-jump-links__link:before,
.pf-v5-c-form-control:hover:after,
.pf-v5-c-button.pf-m-secondary:after,
.pf-v5-c-form-control:focus-within:after,
.pf-v5-c-toolbar__item .pf-v5-c-menu-toggle:after,
.pf-v5-c-page__main .pf-v5-c-menu-toggle:hover:after,
.pf-v5-c-page__main .pf-v5-c-menu-toggle:focus-within:after {
    border-color: var(--ifood-main-color) !important;
}

.pf-v5-c-menu-toggle.pf-m-expanded {
    --pf-v5-c-menu-toggle--after--BorderBottomColor: var(--ifood-main-color) !important;
}

.pf-v5-c-button.pf-m-link,
.pf-v5-c-button.pf-m-secondary {
    color: var(--ifood-main-color);
}

.pf-v5-c-toolbar__item .pf-v5-svg {
    color: var(--white-color) !important;
}

.pf-v5-c-page__main-section:has(#basic-authentication-categ-title) > ul > li {
    padding-bottom: 2%;
}

#save-btn,
#cancel-btn,
.pf-v5-c-jump-links,
.pf-v5-l-grid.pf-m-gutter hr,
.pf-v5-c-form__label-required,
.pf-v5-l-split__item:has(#refresh-page),
.pf-v5-c-toolbar__item:has(.pf-v5-c-avatar),
section[aria-label="device-sessions-content"] .pf-v5-c-button,
.pf-v5-c-page__main-section:has(#basic-authentication-categ-title) > ul .pf-v5-c-data-list__item-action {
    display: none;
}

.pf-v5-c-toolbar__item:has(.pf-v5-c-menu-toggle) {
    margin-inline-end: unset;
}

.pf-v5-c-spinner {
    position: fixed;
    width: 100%;
    height: 7%;
    top: 43%;
    left: 0;
}

.container {
    padding: 0;
    margin: 0;
    width: 100%;
}

.keycloak__loading-container {
    height: 100vh;
    width: 100%;
    color: var(--ifood-text-color);
    background-color: var(--white-color) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 0;
}

@media only screen and (max-device-width: 740px) {
    #refresh-page {
        padding: 5% 5% 5% 0;
    }

    #applications-list {
        border-bottom: 0.5em solid var(--pf-v5-global--BorderColor--300) !important;
    }

    #applications-list .pf-v5-c-data-list__item {
        border-block-end: none !important;
    }

    #applications-list-header,
    section[aria-label="device-sessions-content"] .pf-v5-l-grid__item:has(.pf-v5-svg),
    .pf-v5-c-data-list__item .pf-v5-c-data-list__item-row > .pf-v5-c-data-list__item-control {
        display: none;
    }

    #applications-list,
    .signed-in-device-list {
        margin-bottom: 2em;
    }

    .pf-v5-c-data-list {
        border: none !important;
    }

    .pf-v5-c-masthead {
        display: flex;
    }

    .pf-v5-c-data-list__item-content,
    .pf-v5-c-data-list__expandable-content,
    .pf-v5-l-grid:has(.pf-v5-l-grid__item) {
        display: block !important;
    }

    .pf-v5-l-grid__item section {
        margin-top: 0 !important;
    }

    .pf-v5-c-form__group.pf-m-action {
        margin-block-start: unset;
    }

    .pf-v5-c-page__main-section .pf-v5-c-content {
        padding-bottom: 10%;
    }

    .pf-v5-c-page__main-section {
        padding-block-end: unset !important;
    }

    .pf-v5-c-data-list__item-action:has(button),
    .pf-v5-c-page__main-section:has(.pf-v5-c-form),
    .pf-v5-c-page__main-section:has(.pf-v5-l-split),
    .pf-v5-c-page__main-section:has(#applications-list) {
        padding-block-start: unset !important;
    }

    .pf-v5-c-page__main-section:has(.pf-v5-c-form) {
        padding-block-end: var(--pf-v5-global--spacer--xl) !important;
    }

    .pf-v5-c-data-list__item-row {
        border-top: 0.5em solid var(--pf-v5-global--BorderColor--300);
    }

    .pf-v5-c-data-list__item-row,
    .pf-v5-c-data-list__expandable-content {
        padding-inline-end: unset !important;
    }

    .pf-v5-c-data-list__expandable-content {
        padding-inline-start: unset !important;
    }

    .pf-v5-c-data-list__expandable-content-body .pf-v5-l-grid__item button {
        margin: 5% 0;
    }

    .pf-v5-c-data-list__item-action:has(button) {
        margin-inline-start: unset;
    }

    .pf-v5-l-grid__item:has(.session-title) {
        margin-top: 2%;
        margin-bottom: 7%;
    }

    .pf-m-gutter {
        display: block !important;
    }
}

@media only screen and (prefers-color-scheme: dark) {
    .pf-v5-theme-dark {
        --ifood-text-color: var(--white-color);
        --ifood-bg-color: var(--pf-v5-global--BackgroundColor--dark-100);
        --ifood-bg-dark-color: var(--pf-v5-global--BackgroundColor--dark-300);
        --pf-v5-c-page__main-section--m-light--BackgroundColor: var(--pf-v5-global--BackgroundColor--dark-200);
        --pf-v5-c-data-list__item--Border: 0.5em solid var(--pf-v5-c-page__main-section--m-light--BackgroundColor);
    }

    .pf-v5-theme-dark .keycloak__loading-container {
        color: var(--white-color);
        background-color: var(--pf-v5-global--BackgroundColor--dark-100);
    }

    .pf-v5-theme-dark .pf-v5-c-masthead .pf-v5-c-button.pf-m-plain {
        --pf-v5-c-button--m-plain--Color: var(--white-color);
    }

    .pf-v5-theme-dark .pf-v5-c-button.pf-m-primary:hover {
        --pf-v5-c-button--m-primary--Color: var(--white-color);
    }

    .pf-v5-theme-dark .pf-v5-c-button {
        color: var(--white-color);
    }

    .pf-v5-theme-dark .pf-v5-c-button.pf-m-link, .pf-v5-c-button.pf-m-secondary {
        color: var(--ifood-main-color);
    }
}

@media only screen and (max-device-width: 740px) and (prefers-color-scheme: dark) {
    .pf-v5-theme-dark #applications-list {
        border-bottom: var(--pf-v5-c-data-list__item--Border) !important;
    }

    .pf-v5-theme-dark .pf-v5-c-data-list__item-row {
        border-top: var(--pf-v5-c-data-list__item--Border);
    }

    .pf-v5-theme-dark .pf-v5-c-data-list__item {
        border-block-end: var(--pf-v5-c-data-list__item--Border) !important;
    }
}
