﻿@font-face {
    font-family: 'saudi_riyal';
    src: url('../fonts/saudi_riyal.eot?bdfc4l');
    src: url('../fonts/saudi_riyal.eot?bdfc4l#iefix') format('embedded-opentype'), url('../fonts/saudi_riyal.ttf?bdfc4l') format('truetype'), url('../fonts/saudi_riyal.woff?bdfc4l') format('woff'), url('../fonts/saudi_riyal.svg?bdfc4l#saudi_riyal') format('svg');
}

:root {
    --brdcrmbbg: none;
    --brdcrmbtext: none;
    --brdcrmbitembg: none;
    --brdcrmbhighlight: #ffe082;
    --topbarhighlight: #ffe082;
    --tabBorderColor: #4DB6AC;
    --tabSelectedBackgroundColor: #4DB6AC;
    --tabSelectedForegroundColor: white;
    --popupHeadingBackgroundColor: rgb(0, 80, 190);
    --popupHeadingForegroundColor: white;
}

html, body {
    font: 10pt 'Segoe UI','Lucida Grande',Verdana,Arial,Helvetica,sans-serif;
    margin: 0em;
    padding: 0em;
    background-color: #edeef0;
    /*position: absolute;
    width: 100%;
    height: 100%;
    display: flex;*/
}

.hidden {
    display: none;
}

.text_ellipsis {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.error {
    color: red;
}

.success {
    color: green;
}

.warning {
    color: #ff8f00;
}

.script {
    color: #f57c00;
}

.info {
    color: #1976d2;
}

.color_light_green {
    color: #8bc34a;
}

.color_1 {
    color: #ff5f52;
}

.color_2 {
    color: #7e57c2;
}

.color_3 {
    color: #ffeb3b;
}

.color_4 {
    color: #2196f3;
}

.color_5 {
    color: #ffc107;
}

.color_6 {
    color: #ff7043;
}

.color_7 {
    color: #8d6e63;
}

.color_8 {
    color: #4caf50;
}

.color_9 {
    color: #00bcd4;
}

.color_10 {
    color: #7986cb;
}

.color_11 {
    color: #ffb04c;
}

.color_12 {
    color: turquoise;
}

.color_13 {
    color: blueviolet;
}

.color_14 {
    color: darkorchid;
}

.color_15 {
    color: gold;
}

.color_16 {
    color: #b9cfe5;
}

.k-grid a {
    color: blue;
    text-decoration: underline;
}

.main-layout {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
}

.main-content {
    flex: 1;
    height: 100%;
    overflow: auto;
}

.content-shortcut-area {
    padding: 0.3em;
    color: #37474F;
    border-bottom: 1px solid silver;
    display: flex;
}

.content-heading-area {
    background-color: #263238;
    padding: 0.5em;
    color: white;
}

h1 {
    padding: 0em;
    margin: 0em;
    font-size: large;
    font-weight: normal;
}

.content-shortcut-area-left {
    display: flex;
    align-items: center;
}

.content-shortcut-area-middle {
    flex: 1;
}

.content-shortcut-area-right {
    display: flex;
}

.content-shortcut-area-user-name {
    padding-left: 0.3em;
}

.content-shortcut-area-buttons {
    display: flex;
    align-items: center;
}

    .content-shortcut-area-buttons > div {
        box-sizing: border-box;
        padding: 0em 0.3em;
        border-left: 1px dotted gray;
    }

        .content-shortcut-area-buttons > div:first-child {
            border-left: none;
        }

    .content-shortcut-area-buttons a {
        text-decoration: none;
        color: inherit;
        display: block;
        padding: 0.4em 0.7em;
        border-radius: 0.2em;
    }

        .content-shortcut-area-buttons a:hover {
            background-color: #455a64;
            color: white;
        }


.content-body-area {
    padding: 0.5em;
}

/* ---------- Bar ---------- */
.headerbar {
    display: flex;
    position: relative;
    min-height: 5.5em;
    color: #eeeeee;
    align-items: center;
}

    .headerbar > div {
        flex-shrink: 0;
    }

.header_logo_container {
    margin-inline-end: 1em;
}

    .header_logo_container a {
        text-decoration: none;
        color: inherit;
    }

.headerbar_button {
    display: inline-block;
    min-width: 1.3em;
    text-align: center;
    text-decoration: none;
    color: inherit;
    font: inherit;
    font-size: 1.05em;
    padding: 0.6em 0.85em;
    border: 0.1em solid #78909c;
    border-radius: 0.3em;
    margin: 0em 0.3em;
    transition: 0.2s;
    background: transparent;
    cursor: pointer;
}

.headerbar_button_no_border {
    border: 0.1em solid black;
}

.headerbar_button:hover {
    background-color: var(--topbarhighlight);
    color: black;
    border: 0.1em solid #ff5722;
}

.headerbar_button:focus-visible,
.header_search_button:focus-visible,
.header_profile_card a:focus-visible {
    outline: 2px solid #ff5722;
    outline-offset: 2px;
}

/* round icon-only buttons (inbox, profile) */
.headerbar_icon_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 2.7em;
    height: 2.7em;
    padding: 0;
    border-radius: 50%;
    font-size: 1.1em;
}

.header_letter_icon {
    font-weight: 700;
    letter-spacing: 0;
}

/* ---------- Activity selector ---------- */
.header_activity {
    display: flex;
    align-items: center;
    margin-inline-end: 0.4em;
}

.dodaacSearch {
    align-items: center;
    border-bottom: 1px solid #607d8b;
}

    .dodaacSearch:not([style*="none"]) {
        display: flex;
    }

.header_search_button {
    padding: 0 7px;
    color: inherit;
    text-decoration: none;
}

/* ---------- Arrow button that opens the context panel ---------- */
.header_context_host {
    margin-inline-end: auto; /* pushes everything after the arrow to the right edge */
}

.headerbar_arrow_button i {
    display: inline-block;
    transition: transform 0.2s;
}

.headerbar_arrow_button.is-open {
    border-color: #ff5722;
}

    .headerbar_arrow_button.is-open i {
        transform: rotate(180deg);
    }

/* ---------- iSTELLAR logo: centred on the whole bar ---------- */
/* .header_brand stays in the row as an empty spacer (it pushes the right-hand icons to the edge).
   It is not positioned, so the pattern and the logo below are placed against .headerbar itself. */
.header_brand {
    flex: 1 1 0;
    flex-shrink: 1 !important;
    min-width: 0;
    align-self: stretch;
    display: block !important;
}

    /* pattern behind the logo */
    .header_brand::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: min(34rem, 36%);
        background-size: cover;
        background-position: center;
        -webkit-mask-image: linear-gradient(90deg, transparent, #000 48px, #000 calc(100% - 48px), transparent);
        mask-image: linear-gradient(90deg, transparent, #000 48px, #000 calc(100% - 48px), transparent);
        pointer-events: none;
    }

    /* default logo (istellar_white.png) */
    .header_brand img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 1;
        height: 3.6em;
        width: auto;
        max-width: min(30rem, 34%);
        object-fit: contain;
        pointer-events: none;
    }

        /* custom logo from the database: fixed frame, any image size is scaled to fit inside it */
        .header_brand img.header_brand_custom {
            box-sizing: border-box;
            height: 5rem;
            width: min(14rem, 90%);
            object-fit: contain;
            object-position: center;
            border-radius: 0.4rem;
        }

/* below 1400px an exactly-centred logo could touch the left items, so it sits in the free space instead */
@media (max-width: 1400px) {
    .header_brand {
        display: flex !important;
        align-items: center;
        justify-content: center;
    }

        .header_brand::before {
            display: none;
        }

        .header_brand img {
            position: static;
            transform: none;
        }
}

/* ---------- Inbox badge ---------- */
.header_badge_host {
    position: relative;
}

.header_badge {
    position: absolute;
    top: -0.5em;
    inset-inline-end: -0.4em;
    min-width: 1.5em;
    height: 1.5em;
    padding: 0 0.3em;
    box-sizing: border-box;
    border-radius: 0.75em;
    background: #c62a30;
    color: #fff;
    font-size: 0.75em;
    font-weight: 600;
    line-height: 1.5em;
    text-align: center;
}

/* ---------- Context panel (slides down, full width) ---------- */
.header_context_panel {
    position: absolute;
    inset-inline: 0;
    top: 100%;
    z-index: 1000;
    display: none;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5em;
    padding: 1.2em 1.8em;
    box-sizing: border-box;
    background-color: #111;
    color: #fff;
    border-bottom: 2px solid #ff5722;
    box-shadow: 0 14px 28px rgba(8, 8, 8, 0.3);
    transform-origin: top;
}

    .header_context_panel.is-open {
        display: grid;
        animation: header_panel_in 0.18s ease-out;
    }

    .header_context_panel > div {
        display: flex;
        flex-direction: column;
        gap: 0.3em;
        min-width: 0;
    }

.header_context_label {
    font-size: 0.75em;
    color: #b0bac5;
}

.header_context_value {
    font-size: 1.1em;
    font-weight: 600;
    overflow-wrap: anywhere;
}

@keyframes header_panel_in {
    from {
        opacity: 0;
        transform: scaleY(0.92);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

/* ---------- Dropdown menus (language / notifications keep using these) ---------- */
.header_drop_down_menu {
    position: relative;
}

.header_drop_down_menu_items {
    position: absolute;
    border-radius: 0em 0em 0.5em 0.5em;
    background-color: #323232;
    color: white;
    border: 2px solid black;
    padding: 0.5em;
    right: 0.3em;
    top: 0.6em;
    z-index: 4;
}

    .header_drop_down_menu_items a {
        white-space: nowrap;
        display: block;
        padding: 0.5em;
        margin: 0.3em;
        border-radius: 0.2em;
        text-decoration: none;
        color: inherit;
        transition: 0.2s;
    }

        .header_drop_down_menu_items a:hover {
            background-color: gray;
        }

html[dir="rtl"] .header_drop_down_menu_items {
    right: unset;
    left: 0.3em;
}

/* ---------- Profile card ---------- */
.header_profile_card {
    position: absolute;
    inset-inline-end: 0.3em;
    top: 0.6em;
    z-index: 4;
    width: 19em;
    background: #fff;
    color: #14161c;
    border-radius: 0.75em;
    box-shadow: 0 12px 32px rgba(8, 8, 8, 0.3);
    overflow: hidden;
}

    .header_profile_card a {
        text-decoration: none;
        color: inherit;
    }

.header_profile_card_head {
    display: flex;
    align-items: center;
    gap: 0.9em;
    padding: 1.2em;
    border-bottom: 1px solid #e3e6ec;
}

    .header_profile_card_head:hover {
        background: #f4f6f9;
    }

.header_avatar {
    width: 3.6em;
    height: 3.6em;
    border-radius: 50%;
    object-fit: cover;
    object-position: center top;
    flex-shrink: 0;
}

.header_avatar_icon {
    font-size: 3.6em;
    width: auto;
    height: auto;
    line-height: 1;
    color: #78909c;
}

.header_profile_name {
    font-size: 1.05em;
    font-weight: 600;
}

.header_profile_facts {
    margin: 0;
    padding: 0.9em 1.2em;
    display: flex;
    flex-direction: column;
    gap: 0.6em;
    font-size: 0.85em;
}

    .header_profile_facts > div {
        display: flex;
        justify-content: space-between;
        gap: 1em;
    }

    .header_profile_facts dt {
        color: #565d6b;
    }

    .header_profile_facts dd {
        margin: 0;
        font-weight: 600;
    }

.header_profile_logout {
    display: flex;
    align-items: center;
    gap: 0.7em;
    margin: 0.5em;
    padding: 0.8em 0.8em;
    border-radius: 0.5em;
    color: #b3222a !important;
    font-weight: 600;
    border-top: 1px solid #e3e6ec;
}

    .header_profile_logout:hover {
        background: #fdecee;
    }

/* ---------- Tablets ---------- */
@media (max-width: 1100px) {
    /* the spacer stays so the icons stay on the right; only the logo goes */
    .header_brand img,
    .header_brand::before {
        display: none;
    }

    .header_context_panel {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ---------- Phones ---------- */
@media (max-width: 700px) {
    /* two rows: menu + logo + icons on top, the activity selector on its own row below */
    .headerbar {
        flex-wrap: wrap;
        min-height: 0;
        padding: 0.4em 0;
        row-gap: 0.4em;
    }

    .header_logo_container {
        margin-inline-end: auto; /* pushes the icons to the right */
    }

        .header_logo_container img {
            width: 88px !important; /* overrides the inline width in the markup */
        }

    .headerbar > .header_activity {
        order: 1;
        flex: 1 1 0;
        flex-shrink: 1;
        min-width: 0;
        margin-inline-start: 0.3em;
    }

    .headerbar > .header_context_host {
        order: 2;
        margin-inline-end: 0;
    }

    /* long activity names are cut with "..." instead of pushing the bar wider */
    #btnChangeDodaac {
        display: block;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .header_activity .dodaacSearch {
        flex: 1;
        min-width: 0;
    }

    .header_activity .txtDODAACSearch {
        width: 100%;
    }

    /* comfortable touch targets */
    .headerbar_icon_button {
        width: 44px;
        height: 44px;
        font-size: 1em;
    }

    /* menus never wider than the screen */
    .header_profile_card {
        width: min(19em, calc(100vw - 1rem));
    }

    .header_drop_down_menu_items {
        max-width: calc(100vw - 1rem);
    }
}

/* ---------- Small phones ---------- */
@media (max-width: 480px) {
    .headerbar_button {
        margin: 0 0.15em;
    }

    .header_context_panel {
        grid-template-columns: 1fr;
        padding: 1em 1.2em;
    }
}

@media (prefers-reduced-motion: reduce) {
    .header_context_panel,
    .headerbar_arrow_button i {
        animation: none;
        transition: none;
    }
}

.menu_container {
    background-color: #323232;
    position: absolute;
    width: 50em;
    height: 50em;
    border: 0.1em solid black;
    color: white;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    overflow: hidden;
    z-index: 10000;
}

    .menu_container a {
        text-decoration: none;
        color: inherit;
        transition: 0.2s;
    }

.menu_container_body {
    padding: 1.5em 3em 1em 3em;
    flex-grow: 1;
    overflow: auto;
    display: flex;
    flex-direction: column;
}

.menu_close_button {
    position: absolute;
    right: 0.5em;
    top: 0.2em;
    display: block;
    color: #9e9e9e !important;
}

html[dir="rtl"] .menu_close_button {
    right: unset;
    left: 0.5em;
}

.menu_searchbox_border {
    padding: 0.5em 1em;
    background-color: #242424;
    color: #cdcdcd;
    display: flex;
    border-radius: 0.3em;
    column-gap: 1em;
    align-items: center;
    border: 0.1em solid #403f3f;
}

    .menu_searchbox_border:focus-within {
        border-bottom: 0.2em solid #4dd0e1;
        margin-bottom: -0.1em;
    }

.menu_searchbox_container {
    /*padding: 1em 3em 1em 3em;*/
}

.menu_search_box {
    border: none;
    flex-grow: 1;
    outline: none;
    background-color: inherit;
    color: inherit;
}

.menu_nav_area {
    min-height: 10em;
}

.menu_favorite_heading {
    font-size: medium;
    padding: 1em 1em 1em 0em;
    font-weight: bold;
}

.menu_favorite_nav_area {
    height: 10.5em;
    overflow: auto;
    flex-shrink: 0;
}

    .menu_favorite_nav_area::-webkit-scrollbar {
        width: 0.5em;
        background-color: #757575;
    }

    .menu_favorite_nav_area::-webkit-scrollbar-thumb {
        background-color: #9e9e9e;
        outline: 1px solid white;
    }

    .menu_favorite_nav_area::-webkit-scrollbar-button {
        background-color: #9e9e9e;
        height: 0.5em;
    }

.menu_favorite_icons {
    display: flex;
    flex-wrap: wrap;
    /*grid-template-columns: repeat(4, 1fr);*/
    gap: 0.5em;
}

    .menu_favorite_icons a {
        display: block;
        text-align: center;
        width: calc(25% - 0.5em);
        height: 5em;
    }

        .menu_favorite_icons a > div:first-child {
            font-size: large;
        }

        .menu_favorite_icons a > div:last-child {
            font-size: small;
            text-overflow: ellipsis;
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
        }

.menu_favorite_icon_not_defined {
    display: flex;
    justify-content: center;
    height: 100%;
    font-size: medium;
    text-align: center;
}

    .menu_favorite_icon_not_defined a {
        text-decoration: underline;
    }

    .menu_favorite_icon_not_defined > div {
        align-self: center;
    }

.menu_browse_heading {
    font-size: medium;
    padding: 1em 1em 1em 0em;
    font-weight: bold;
}

.menu_icons_area {
    /*min-height: 36em;*/
    overflow: auto;
    display: flex;
}

    .menu_icons_area > div {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

.menu_browse_icons {
    display: flex;
    /*grid-template-columns: repeat(4, 1fr);*/
    flex-wrap: wrap;
    gap: 0.5em;
}

    .menu_browse_icons a {
        display: block;
        text-align: center;
        width: calc(25% - 0.5em);
        height: 5.5em;
    }

        .menu_browse_icons a > div:first-child {
            font-size: x-large;
        }

        .menu_browse_icons a > div:last-child {
            text-overflow: ellipsis;
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
        }

.menu_container a:hover {
    background-color: #464646;
    /*outline:1px solid silver;*/
    border-radius: 0.3em;
    /*color: black;*/
}

.menu_container_footer {
    font-size: small;
    padding: 0.5em 0.5em 0.5em 1em;
    background-color: #262626;
    border-top: 1px solid #403f3f;
    color: #9f9f9f;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.customer_name_area {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
    display: inline-block;
    margin-left: 10px;
}

.panel-left {
    padding-inline-end: 0.5em;
}

.panel-middle {
    padding-inline-start: 0.5em;
}

.panel-right {
    padding-inline-start: 0.5em;
}


@media (max-width: 800px) {
    .menu_container_footer {
        flex-direction: column;
        padding: 1em;
        align-items: flex-start;
    }

    .customer_name_area {
        max-width: 100% !important;
        margin-left: 0px !important;
        white-space: normal;
        text-overflow: unset;
    }

    .panel-left {
        padding-inline-end: 0em;
    }

    .panel-right {
        padding-inline-start: 0em;
    }
}

.menu_browse_area {
    padding-top: 1em;
}

.menu_browse_area_top_bar {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.menu_browse_area_heading_container {
    /*font-size: small;*/
    flex-grow: 1;
    display: flex;
    gap: 0.4em;
}

    .menu_browse_area_heading_container i {
        margin-top: 0.2em;
    }

    .menu_browse_area_heading_container > div:nth-child(2) {
        display: flex;
        gap: 0.4em;
    }

.menu_browse_area_heading {
    white-space: nowrap;
}

.menu_browse_area_subheading {
}

.menu_browse_area_back {
    padding: 0.5em;
    white-space: nowrap;
}

html[dir="rtl"] .menu-back-button-left {
    display: none;
}

html:not([dir]), html[dir="ltr"] .menu-back-button-right {
    display: none;
}

.menu_browse_area_items {
    overflow: auto;
}

.menu_browse_area_sub_heading_area, .menu_browse_area_links_area {
    display: flex;
    flex-wrap: wrap;
    padding: 1em 0em 0em 1em;
}

    .menu_browse_area_sub_heading_area i.fas {
        color: #ffeb3b;
    }

    .menu_browse_area_links_area i.fas {
        color: #64b5f6;
    }

.menu_browse_area_items a {
    display: flex;
    width: 100%;
    /*height: 4em;*/
    column-gap: 0.5em;
    padding: 0.5em;
    box-sizing: border-box;
}

    .menu_browse_area_items a span {
        display: block;
    }


.menu_search_result_area {
    margin-top: 0.3em;
    overflow: auto;
}

.menu_search_result_links_area {
    display: flex;
    flex-shrink: 0;
    flex-wrap: wrap;
    padding-inline-end: 0.3em;
    padding-block-end: 0.3em;
}

    .menu_search_result_links_area > div {
        width: 100%;
        padding: 0.4em;
        box-sizing: border-box;
        /*border:0.1em solid transparent;*/
    }

        .menu_search_result_links_area > div[data-selected=true] {
            border: 0.1em solid yellow;
            padding: 0.3em;
        }

        .menu_search_result_links_area > div > div:nth-child(1) {
            font-size: small;
            color: gray;
            padding-left: 0.3em;
        }

            .menu_search_result_links_area > div > div:nth-child(1) a:hover {
                background-color: inherit;
                text-decoration: underline;
            }

        .menu_search_result_links_area > div > div:nth-child(2) {
            margin-top: 0.2em;
        }

            .menu_search_result_links_area > div > div:nth-child(2) a {
                display: block;
                padding: 0.3em 0.3em;
            }

.menu_loading_bar {
    width: 100%;
    height: 2px;
}


.bar_anim {
    height: 100%;
    position: relative;
    overflow: hidden;
}

    .bar_anim div {
        width: 10%;
        height: 100%;
        background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(184,184,184,1) 48%, rgba(255,255,255,0) 100%);
        position: absolute;
        animation-name: left_to_right;
        animation-duration: 2s;
        animation-iteration-count: infinite;
    }

.brdcrmb {
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    /*color: white;*/
    position: relative;
    background-color: var(--brdcrmbbg);
}

    .brdcrmb::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: var(--brdcrmbbg);
        z-index: -1;
    }

.brdcrmb_item {
    display: block;
    padding: 0.3em 1em;
    position: relative;
    text-decoration: none;
    color: var(--brdcrmbtext);
    margin: 0em 0.1em;
    z-index: 1;
}

    .brdcrmb_item::before, .brdcrmb_item::after {
        content: "";
        width: 100%;
        position: absolute;
        height: 50%;
        left: 0;
        background-color: var(--brdcrmbitembg);
        z-index: -1;
    }

    .brdcrmb_item::before {
        top: 0;
        transform: skew(30deg);
    }

    .brdcrmb_item::after {
        bottom: 0;
        transform: skew(-30deg);
    }

    .brdcrmb_item:not(:last-child):hover:hover::before,
    .brdcrmb_item:not(:last-child):hover::after {
        background-color: var(--brdcrmbhighlight);
        border-inline-end-color: var(--brdcrmbhighlight);
    }

html[dir="rtl"] .brdcrmb_item::before {
    top: 0;
    transform: skew(-30deg);
}

html[dir="rtl"] .brdcrmb_item::after {
    bottom: 0;
    transform: skew(30deg);
}

.error-message-line {
    background-color: yellow;
    color: red;
}

.alert-box {
    position: fixed;
    top: 0;
    width: 50%;
    left: 25%;
    border-radius: 0em 0em 0.5em 0.5em;
    padding: 0.8em;
    box-sizing: border-box;
    z-index: 90012;
    font-size: medium;
}

.alert-box-warning {
    background-color: #fff9c4;
    border: 2px solid #ff9800;
}

.alert-box-success {
    background-color: #c8e6c9;
    border: 2px solid #4caf50;
}

.alert-box-error {
    background-color: #ffebee;
    border: 2px solid #d32f2f;
}

.alert-box-info {
    background-color: #e0f5ff;
    border: 2px solid #0288d1;
}

.alert-box-content {
    display: flex;
}

.alert-box-script {
    background-color: #fff3e0;
    border: 2px solid #f57c00;
}

.alert-box-icon-container {
    width: 1.8em;
    text-align: center;
    font-size: 1.5em;
}

.alert-box-message-container {
    max-height: 8em;
    align-self: center;
    overflow: auto;
    flex: 1;
    padding: 0em 0.5em;
}

.error-message-anchor:visited {
    color: blue;
}

.alert-box-close-container {
    width: 1.5em;
    text-align: center;
}

    .alert-box-close-container button {
        border: none;
        outline: none;
        background: inherit;
        color: #757575;
        cursor: pointer;
        font-size: 1.2em;
    }

        .alert-box-close-container button:hover {
            color: #212121;
        }

.error-message-popupbody {
    white-space: break-spaces;
}

.k-textbox .k-i-search {
    right: -2px;
    top: 50%;
    margin: -8px 0 0;
    position: absolute;
    font-size: large;
}

.k-space-right {
    width: 100%;
    /* padding-right: 1.9em; */
    display: block;
    background-color: #e0e0e0;
    padding: 0.2em 1.8em 0.2em 0.2em;
    border-radius: 0.3em;
    position: relative;
}

.k-pager-numbers .k-link {
    border-radius: 0em;
}

.k-pager-nav {
    border-radius: 0em;
}

.k-list * {
    flex-grow: 1;
}

#toolbarMain, .sticky {
    position: sticky;
    top: 0px;
    z-index: 3;
}

.k-window-titlebar {
    background-color: var(--popupHeadingBackgroundColor);
    color: var(--popupHeadingForegroundColor);
}

.k-tabstrip-item {
    /*background-color: #cedce3;*/
    /*background-color: #607D8B;*/
}

.k-tabstrip-items-wrapper .k-item:active, .k-tabstrip-items-wrapper .k-item.k-active, .k-tabstrip-items-wrapper .k-item.k-selected {
    background-color: #4DB6AC;
    /*background-image: linear-gradient(0deg, #CFD8DC, white);*/
    border-bottom: #CFD8DC;
    color: var(--tabSelectedForegroundColor);
    background-color: var(--tabSelectedBackgroundColor);
}

.k-tabstrip-items .k-item {
    /*border-inline-end: 1px solid silver;
    border-bottom: 1px solid silver;
    color: black;*/
    /*border-inline-end: 1px solid black;*/
    /*border-bottom: 2px solid #4DB6AC;*/

    background-color: #EEEEEE;
    color: gray;
}

.k-tabstrip-content, .k-tabstrip > .k-content {
    /*background-color: #CFD8DC;*/
    border-color: #CFD8DC;
}

.k-tabstrip-top > .k-tabstrip-items-wrapper {
    border-color: var(--tabBorderColor);
    border-bottom-width: 3px;
}

    .k-tabstrip-top > .k-tabstrip-items-wrapper .k-item {
        border-start-end-radius: 10px;
        border-start-start-radius: 10px;
        margin: 0em 0.5em;
    }

.k-tabstrip.k-tabstrip-scrollable > .k-tabstrip-items-wrapper {
    border-bottom-width: 3px;
}

.at-formlegendgroup {
    background-color: White;
}

/*.wms-button-container {
    display:flex;
    flex-wrap:wrap;
    align-content: space-evenly;
    gap:0.5em;
}*/
/*.wms-button-container button {
    flex-basis: calc(50% - 0.5em);

}*/
.row-container {
}

    .row-container > div {
        margin-block-end: 0.5em;
        display: flex;
        gap: 0.5em;
        flex-wrap: wrap;
        justify-content: space-between;
    }

        .row-container > div:last-child {
            margin-block-end: 0em;
        }

.row-col1 {
}

    .row-col1 > * {
        flex-basis: calc(100% - 0.5em);
        flex-grow: 0;
        flex-shrink: 0;
    }

.row-col2 {
}

    .row-col2 > * {
        flex-basis: calc(50% - 0.5em);
        flex-grow: 0;
        flex-shrink: 0;
    }

.row-col3 {
}

    .row-col3 > * {
        flex-basis: calc(33.33% - 0.5em);
        flex-grow: 0;
        flex-shrink: 0;
    }

.msg-popup-cont {
    display: flex;
    flex-wrap: nowrap;
    height: 100%;
}

.msg-popup-icon-cont {
    flex-grow: 0;
    flex-shrink: 0;
    font-size: 2.5em;
    text-align: center;
    padding: 0em 0.5em;
}

.msg-popup-body-cont {
    overflow: auto;
    flex-grow: 1;
    padding-top: 0.6em;
}

.msg-popup-body {
    font: inherit;
    font-size: inherit;
    margin: 0em;
    padding: 0em;
    white-space: pre-wrap;
}

.multipidbox_cont {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.3em;
    align-items: center;
}

    .multipidbox_cont .multipidbox_name {
        box-sizing: border-box;
        border: none;
        background-color: inherit;
        width: 100%;
        display: block;
    }

    .multipidbox_cont .multipidbox_delete {
        display: block;
        height: 1em;
        align-self: center;
    }


@keyframes left_to_right {
    from {
        left: -10%;
    }

    to {
        left: 100%;
    }
}

@media (max-width: 800px), (max-height:650px) {
    .menu_container {
        left: 0px;
        top: 0px;
        width: 100%;
        /*min-height: 100%;*/
        height: 100%;
    }

    input[type="text"] {
        font-size: 12pt;
    }
}

@media (min-width: 800px) and (max-height:650px) {
    .menu_browse_area_items a {
        width: 50%;
    }

    .menu_search_result_links_area > div {
        width: 50%;
    }
}

@media (max-width: 550px) {
    .menu_container_body {
        padding: 1.5em 1em 1em 1em;
    }

    .menu_favorite_icons a {
        width: calc(33% - 0.5em);
    }

    .menu_browse_icons a {
        width: calc(33% - 0.5em);
    }

    .menu_browse_area_heading_container > div:nth-child(2) {
        flex-wrap: wrap;
    }

    #profileDropdown span {
        display: none;
    }

    .content-shortcut-area-buttons a span {
        display: none;
    }

    .breadcrumbs__item {
        border-top: 1px dotted white;
        border-bottom: 1px dotted white;
    }

    .alert-box {
        width: calc(100% - 2em);
        left: 0;
        margin: 0em 1em;
    }
}

.cardcolleft {
    padding-inline-end: 0.5em;
    margin-top: 1em;
}

.cardcolright {
    padding-inline-start: 0.5em;
    margin-top: 1em;
}

.doc-image-cont {
    height: 250px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .doc-image-cont img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
    }

.content-overlay-loading {
    background-color: rgba(255, 255, 255, 0.6);
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    justify-content: center;
}

@media (max-width: 1200px) {
    .cardcolleft {
        padding-inline-end: 0em;
    }

    .cardcolright {
        padding-inline-start: 0em;
    }
}

.gridcelllink {
    color: #5200FF !important;
    text-decoration: underline !important;
    cursor: pointer;
}

.gridcelllink-black {
    color: #000000 !important;
    cursor: pointer;
}

.pid-tooltip-cont {
    background-color: white;
    color: black;
}

.pid-tooltip-info {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.5em;
}

.pid-tooltip-img-cont {
    width: 150px;
    height: 150px;
    padding: 0.5em;
}

    .pid-tooltip-img-cont img {
        width: 100%;
        height: 100%;
    }

.pid-tooltip-data {
    flex-grow: 1;
    overflow: auto;
    height: 100%;
    padding: 0.5em 0em;
}

.pid-tooltip-name {
}

.pid-tooltip-footer {
    text-align: right;
    border-top: 1px solid #ccc;
    padding: 5px;
    background-color: #f2f2f2
}

    .pid-tooltip-footer a {
    }

.pid-tooltip-uic {
    margin-inline-start: 1em;
}

.pid-tooltip-add1 {
    margin-top: 1em;
}

.gridcelllink2 {
    color: #5200FF !important;
    cursor: pointer;
}

.gl-account-level1 {
    background-color: #A6A6A6 !important;
}

.gl-account-level2 {
    background-color: #BFBFBF !important;
}

.gl-account-level3 {
    background-color: #D9D9D9 !important;
}

.gl-account-level4 {
    background-color: #F2F2F2 !important;
}

/*.gl-account-level5 {
    background-color: white !important;
}*/

a.not-link {
    text-decoration: none;
    color: inherit;
}

span.grid-aggregate-row {
    font-weight: bold;
}

.stretched-grid-container {
    position: relative;
}

    .stretched-grid-container .k-grid {
        height: 100%;
        display: flex !important;
    }

    .stretched-grid-container .k-grid-content {
        height: initial !important;
        flex-grow: 1;
    }

.yellow-icon {
    color: #E6AF00;
}

.green-icon {
    color: #008000;
}

.blue-icon {
    color: #1976D2;
}

.red-icon {
    color: #FF0000;
}

.orange-icon {
    color: #FFA500;
}

.purple-icon {
    color: #800080;
}

.gray-icon {
    color: #5e5e5e;
}

.qtyDiscrepancyWarningBox {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 12px;
    padding: 12px 14px;
    background-color: #FFF8E1;
    border: 1px solid #F0C36D;
    border-left: 4px solid #E6AF00;
    border-radius: 4px;
}

.qtyDiscrepancyWarningBox-header {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.qtyDiscrepancyWarningBox-icon {
    font-size: 18px;
    margin-top: 2px;
    color: #E6AF00;
}

.qtyDiscrepancyWarningBox-text {
    font-size: 13px;
    color: #5c4b13;
    line-height: 1.4;
}

.qtyDiscrepancyWarningBox-actions {
    display: flex;
    justify-content: flex-end;
}

.qtyDiscrepancyWarningBox-button {
    background-color: #E6AF00 !important;
    border-color: #E6AF00 !important;
    color: #fff !important;
}

    .qtyDiscrepancyWarningBox-button:hover {
        background-color: #cc9a00 !important;
        border-color: #cc9a00 !important;
    }

.k-orgchart-card {
    width: 330px;
    border-width: 1px
}

.content-h-center {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
}

.small-prg-bar-cont {
    width: 50%;
    height: 15px;
    background-color: #e3f2fd;
    border: 1px solid gray;
    border-radius: 5px;
}

    .small-prg-bar-cont div {
        height: 100%;
        background-color: #1976D2;
    }

.headcont {
    display: flex;
    padding: 4px 10px 4px 10px;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1em;
}

.h1cont {
    flex: 1;
    min-width: 0;
}

.h1helpcont {
    display: flex;
    flex: 1;
}

.helpicon {
    width: 18px;
    vertical-align: middle;
    margin-inline-start: 0.5em;
}

.globalsearchcont {
    flex: 0 0 300px;
}

.globalsearchwrap {
    background-color: #616161;
    color: #dcdcdc;
    padding: 2px;
    display: flex;
    align-items: center;
}

    .globalsearchwrap span {
        display: flex;
        flex-basis: 1.5em;
        text-align: center;
    }

    .globalsearchwrap > div {
        flex-grow: 1;
    }

    .globalsearchwrap input {
        border: none;
        box-sizing: border-box;
        font-family: inherit;
        background: inherit;
    }

        .globalsearchwrap input::-webkit-input-placeholder {
            font-style: italic;
            color: #dcdcdc;
        }

.k-list-item-text::before {
    content: none;
}

.cardicon {
    font-size: 5vw;
    text-align: center;
    color: #455a64;
}

.k-progressbar {
    background-color: black;
}

.k-rtl {
    height: inherit;
}

/* Highlight the entire row if it contains a span with data-row-highlight="true" */
tr:has(span[data-row-highlight="true"]) td {
    background-color: #e1aaa6 !important;
}

tr:has(span[data-row-highlight="adjustmentReason"]) td {
    background-color: #e0d987 !important;
}

tr:has(span[data-row-highlight="absentLines"]) td {
    background-color: #CBC3E3 !important;
}

tr:has(span[data-row-highlight="excusedHours"]) td {
    background-color: #ADD8E6 !important;
}

td:has(span[data-column-highlight="urgentLines"]) {
    background-color: orangered !important;
    box-shadow: inset 0 0 0 4px white;
    background-clip: padding-box;
}

/* Saudi Riyal - Icon styling  - Start */
[class^="icon-"], [class*=" icon-"] {
    font-family: 'saudi_riyal' !important;
    font-style: normal;
    font-weight: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-saudi-riyal:before {
    content: "\e900";
    margin-top: 8px;
    padding-top: 8px;
    margin-left: 5px;
}

.icon-saudi-riyal {
    margin-top: 0.7em;
    margin-left: 0.7em;
}

.cont-icon-saudi-riyal {
    background-color: whitesmoke;
    border-color: #a99f9a;
    border-radius: 4px;
}

.input-icon-saudi-riyal {
    border-left: none;
    border-radius: 0px;
}

.icon-saudi-riyal-readonly {
    margin: 0em;
    border-color: #a99f9a;
    border-style: solid;
    border-width: 1px;
    padding: 4px !important;
    line-height: 1.7em !important;
    border-right: none;
}
/* Saudi Riyal - Icon styling  - End */
.vc {
    display: flex;
    flex-direction: column;
}

.vc-ht-100 {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.vc-itm-stretched {
    flex: 1;
    min-height: 0;
}

.vc-itm-fixed {
    flex: 0 0 auto;
}

.vc-item-grow-1 {
    flex-grow: 1;
}

.status-button {
    text-align: center;
    display: block;
    padding: 0.2em 0.5em;
    width: 100px;
    border-radius: 0.3em;
    color: white !important;
    font-size: small;
    transition: filter 0.2s ease;
    text-decoration: none !important;
}

    .status-button:hover {
        filter: brightness(1.3) saturate(0.9);
        text-decoration: none !important;
        color: black !important;
    }

    .status-button[data-status="Not Started" i] {
        background-color: #ffeb3b;
        color: black !important;
    }

    .status-button[data-status="In-Progress" i] {
        background-color: #ff9800;
    }

    .status-button[data-status="Completed" i] {
        background-color: #4caf50;
    }

    .status-button[data-status="Canceled" i] {
        background-color: red;
    }

    .status-button[data-status="Not Required" i] {
        background-color: silver;
    }

.g21-msg-box {
    text-align: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.g21-msg-box-msg {
    font-size: large;
    font-weight: bold;
    padding: 20px
}

.g21-msg-box-btn {
}

.status-box {
    padding: 0.5em;
    border-radius: 0.3em;
}

.yellow-back {
    background-color: #ffeb3b;
    color: black;
}

.green-back {
    background-color: #4caf50;
    color: white;
}

.blue-back {
    background-color: #1e88e5;
    color: white;
}

.red-back {
    background-color: #d32f2f;
    color: white;
}

.black-back {
    background-color: black;
    color: white;
}

.orange-back {
    background-color: orange;
    color: black;
}

.gray-back {
    background-color: gray;
    color: white;
}

.hc {
    display: flex;
    flex-direction: row;
    align-items: center;
}

    .hc > * {
        flex: 1;
        min-width: 0;
        overflow: auto;
    }

@media (max-width: 768px) {
    .h1cont {
        flex: 0 0 100%;
    }

    .globalsearchcont {
        flex: 0 0 100%;
    }

    .hc {
        display: block;
    }

        .hc > * {
            flex: none;
            width: 100%;
            min-width: unset;
        }
}


.status-score-button {
    text-align: center;
    display: block;
    padding: 0.2em 0.5em;
    width: 200px;
    border-radius: 0.3em;
    color: white !important;
    font-size: small;
    transition: filter 0.2s ease;
    text-decoration: none !important;
}

    .status-score-button:hover {
        filter: brightness(1.3) saturate(0.9);
        text-decoration: none !important;
        color: black !important;
    }

    .status-score-button i {
        margin-left: 10px;
    }

    .status-score-button[data-status="1" i] {
        background-color: #E74C3C;
        color: black !important;
    }

    .status-score-button[data-status="2" i] {
        background-color: #E67E22;
    }

    .status-score-button[data-status="3" i] {
        background-color: #F1C40F;
    }

    .status-score-button[data-status="4" i] {
        background-color: #2ECC71;
    }

    .status-score-button[data-status="5" i] {
        background-color: #27AE60;
    }

.performance-panel {
    padding-top: 10px;
}


.help-icon {
    font-size: large;
    margin: 0 7px;
    color: #90CAF9;
    text-decoration: none;
}

.dropdowntablerow {
    display: flex;
    /*border-bottom: 1px dotted gray;*/
}

    /*.dropdowntablerow:first-child {
    border-top: 1px dotted gray;
}*/

    .dropdowntablerow > div {
        flex: 1;
        flex-shrink: 0;
        border-left: 1px dotted gray;
        padding: 0.3em;
    }

        .dropdowntablerow > div:last-child {
            border-right: 1px dotted gray;
        }

.g21-daterange-field .k-floating-label-container {
    width: 100%;
}

    .g21-daterange-field .k-floating-label-container .k-dateinput {
        width: 100%;
    }

/* MLU dropdowns rendered as font-awesome icons (icon-class-property-name) */
.g21-mlu-icon {
    font-size: 1.25rem;
    line-height: 1.4em;
    vertical-align: middle;
}

/* keeps the readonly box the same height as a normal readonly field even when
   the value is empty, an empty div would otherwise collapse to its padding */
.g21-mlu-icon-readonly {
    min-height: calc(1.7em + 10px);
}

/* maintenance status symbols rendered as font-awesome icons
   (window.G21.UI.getStatusSymbolImageTag), these replace the
   /images/Status_*.png files the grids used to show. The icons are not
   colored, they inherit the text color of the cell they sit in. */
.g21-status-symbol-icon {
    display: block;
    text-align: center;
    font-size: 1.25rem;
    line-height: 1.4em;
}

/* a page shown inside the correspondence window of the inbox (?embedded=1): no application header or breadcrumbs */
html.g21-embedded .headerbar,
html.g21-embedded .header_other_buttons_pulldown,
html.g21-embedded .brdcrmb,
html.g21-embedded #topHeaderBarExtendedArea {
    display: none !important;
}
