/* Global Portal navigation aligned with the Workflow Performance design. */
#topNavBar .top-navigation-icon {
    display: inline-block;
    height: 14px;
    overflow: visible;
    vertical-align: middle;
    width: 17.5px;
}

#topNavBar .top-navigation-icon--overview {
    transform: rotate(-90deg) scaleY(-1);
}

/* #notiElement is always 35px wide and position: relative at every breakpoint;
   only its height changes (28px vs 35px), and calc(50% - 7px) resolves to the
   same top offset as the flex-centered 14px bell icon regardless of that height,
   so this rule does not need to be duplicated per media query. */
#topNavBar .page-head .notifications-menu #notiElement .button-badge {
    align-items: center;
    border-radius: 5px;
    display: inline-flex;
    height: 10px;
    justify-content: center;
    left: auto;
    line-height: 10px;
    padding: 0 3px;
    right: 7px;
    top: calc(50% - 7px);
}

@media screen and (min-width: 992px) {
    #topNavBar {
        background: #fff;
        border: 0;
        border-bottom: 1px solid #e5e7eb;
        box-sizing: border-box;
        box-shadow: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);
        height: 57px;
        margin-bottom: 0 !important;
        min-height: 57px;
    }

    #topNavBar .page-head {
        background: #fff !important;
        height: 57px;
        padding: 0 !important;
    }

    #topNavBar .page-head > header {
        align-items: center;
        box-sizing: border-box;
        display: grid;
        grid-template-columns: 291px max-content max-content;
        height: 56px;
        justify-content: space-between;
        margin: 0 !important;
        max-width: none;
        padding: 0 21px;
        position: relative;
        width: 100%;
    }

    #topNavBar .page-head .logo {
        align-items: center;
        display: flex;
        grid-column: 1;
        height: 49px;
        position: static;
        width: 291px;
    }

    #topNavBar .page-head .logo a {
        align-items: center;
        display: flex;
        height: 49px;
    }

    #topNavBar .page-head .logo img {
        max-height: 49px;
        max-width: 291px;
    }

    #topNavBar .page-head .controls {
        align-items: center;
        display: flex;
        float: none;
        grid-column: 2;
        height: 56px;
        padding-left: 0 !important;
        padding-top: 0;
        position: static;
        width: auto !important;
    }

    #topNavBar .page-head .icon-list {
        align-items: stretch;
        display: flex;
        height: 56px;
        margin: 0;
        padding: 0;
    }

    #topNavBar .page-head .icon-list > li,
    #topNavBar .page-head .icon-list > li.current,
    #topNavBar .page-head .icon-list > li:hover {
        animation: none !important;
        border: 0 !important;
        box-sizing: border-box;
        float: none;
        height: 56px;
        padding: 0;
        position: relative;
    }

    #topNavBar .page-head .icon-list > li + li {
        margin-left: 3.5px;
    }

    #topNavBar .page-head .icon-list .dropdown-menu.sub-menu {
        margin-left: 0 !important;
        margin-top: 0 !important;
    }

    #topNavBar .page-head .icon-list > li.current::after,
    #topNavBar .page-head .icon-list > li:hover::after {
        background: #0067d2;
        border-radius: 9999px;
        bottom: 0;
        content: "";
        height: 2px;
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        z-index: 2;
    }

    #topNavBar .page-head .icon-list > li > a,
    #topNavBar .page-head .icon-list > li > a:visited,
    #topNavBar .page-head .icon-list > li > .dropdown > a,
    #topNavBar .page-head .icon-list > li > .dropdown > a:visited {
        align-items: center;
        box-sizing: border-box;
        color: #6b7280;
        display: flex;
        float: none;
        font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        font-size: 14px;
        font-weight: 500;
        gap: 7px;
        height: 56px;
        padding: 0 14px;
        transition: background-color .2s ease, color .2s ease;
    }

    #topNavBar .page-head .icon-list > li > a:hover,
    #topNavBar .page-head .icon-list > li > .dropdown > a:hover {
        background: rgba(245, 247, 249, .8);
        color: #6b7280;
    }

    #topNavBar .page-head .icon-list .menu-text {
        color: #6b7280 !important;
        margin-left: 0;
        white-space: nowrap;
    }

    #topNavBar .page-head .top-navigation-icon {
        color: #6b7280 !important;
        display: block;
        flex: 0 0 17.5px;
        height: 14px;
        overflow: visible;
        width: 17.5px;
    }

    #topNavBar .page-head .top-navigation-icon--overview {
        transform: rotate(-90deg) scaleY(-1);
    }

    #topNavBar .page-head .icon-list > li:first-child > a,
    #topNavBar .page-head .icon-list > li:first-child > .dropdown > a {
        padding-right: 21px;
    }

    #topNavBar .page-head .top-navigation-user-actions {
        align-items: center;
        display: flex;
        gap: 7px;
        grid-column: 3;
        height: 28px;
        justify-self: end;
    }

    #topNavBar .page-head .notifications-menu,
    #topNavBar .page-head .notifications-menu > div,
    #topNavBar .page-head .notifications-menu .navbar-nav,
    #topNavBar .page-head .notifications-menu .nav-item {
        align-items: center;
        display: flex;
        float: none !important;
        height: 28px !important;
        margin: 0;
        padding: 0;
        position: static !important;
        width: 35px !important;
    }

    #topNavBar .page-head .notifications-menu #notiElement {
        align-items: center;
        box-sizing: border-box;
        display: flex;
        height: 28px !important;
        justify-content: center;
        padding: 7px;
        position: relative;
        transition: background-color .2s ease;
        width: 35px !important;
    }

    #topNavBar .page-head .notifications-menu #notiElement:hover,
    #topNavBar .page-head .actions .profile-navigation-button:hover {
        background: #f3f4f6;
    }

    #topNavBar .page-head .notifications-menu .top-navigation-icon,
    #topNavBar .page-head .actions .top-navigation-icon {
        color: #4b5563 !important;
    }

    #topNavBar .page-head .actions {
        align-items: center;
        display: flex;
        float: none;
        grid-column: auto !important;
        height: 28px !important;
        padding: 0;
        text-align: left;
        width: auto !important;
    }

    #topNavBar .page-head .actions > .dropdown {
        align-items: center;
        display: flex;
        float: none !important;
        height: 28px !important;
        width: auto !important;
    }

    #topNavBar .page-head .actions .top-navigation-user-group {
        align-items: center;
        border-left: 1px solid #e5e7eb;
        display: flex;
        gap: 10.5px;
        height: 28px !important;
        margin: 0;
        padding: 0 0 0 11.5px;
    }

    #topNavBar .page-head .actions .top-navigation-user-group > .nav-item {
        align-items: center;
        display: flex;
        height: 28px !important;
        margin: 0;
        padding: 0;
    }

    #topNavBar .page-head .actions .active-username {
        align-items: center;
        color: #111827 !important;
        display: flex;
        font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        font-size: 14px;
        font-weight: 500;
        height: 20px;
        line-height: 20px;
        margin: -2px 0 0 !important;
        max-width: none;
        min-width: 0;
        padding: 0;
        white-space: nowrap;
    }

    #topNavBar .page-head .actions .active-username span {
        color: #111827 !important;
        display: inline;
        height: auto;
        line-height: 20px;
        max-width: none;
        overflow: visible;
    }

    #topNavBar .page-head .actions .hover-item > .dropdown {
        align-items: center;
        display: flex;
        height: 28px !important;
    }

    #topNavBar .page-head .actions .profile-navigation-button {
        align-items: center;
        box-sizing: border-box;
        display: flex;
        height: 28px !important;
        justify-content: center;
        padding: 7px;
        transition: background-color .2s ease;
        width: 35px !important;
    }

    #topNavBar .page-head .help-center-container,
    #topNavBar .page-head .help-center-wrapper,
    #topNavBar .page-head .help-center-container .navbar-nav,
    #topNavBar .page-head .help-center-item {
        align-items: center;
        display: flex;
        float: none;
        height: 28px;
        margin: 0;
        padding: 0;
        width: 35px;
    }

    #topNavBar .page-head #helpCenterToggle {
        align-items: center;
        box-sizing: border-box;
        display: flex;
        height: 28px;
        justify-content: center;
        padding: 7px;
        transition: background-color .2s ease;
        width: 35px;
    }

    #topNavBar .page-head #helpCenterToggle:hover {
        background: #f3f4f6;
    }

    #topNavBar .page-head .help-icon {
        display: block;
        height: 14px;
        margin: 0;
        width: 14px;
    }
}

@media screen and (min-width: 1443px) {
    #topNavBar .page-head .icon-list .menu-text {
        display: inline !important;
    }
}

@media screen and (max-width: 991px) {
    #topNavBar .page-head .top-navigation-user-actions {
        align-items: center;
        display: flex;
        float: right;
        gap: 7px;
        height: 80px;
        justify-content: flex-end;
        margin: 0;
        padding: 0;
    }

    #topNavBar .page-head .notifications-menu,
    #topNavBar .page-head .notifications-menu > div,
    #topNavBar .page-head .notifications-menu .navbar-nav,
    #topNavBar .page-head .notifications-menu .nav-item,
    #topNavBar .page-head .actions,
    #topNavBar .page-head .actions > .dropdown,
    #topNavBar .page-head .actions .top-navigation-user-group,
    #topNavBar .page-head .actions .top-navigation-user-group > .nav-item,
    #topNavBar .page-head .help-center-container,
    #topNavBar .page-head .help-center-wrapper,
    #topNavBar .page-head .help-center-container .navbar-nav,
    #topNavBar .page-head .help-center-item {
        align-items: center !important;
        display: flex !important;
        float: none !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
    }

    #topNavBar .page-head .actions .top-navigation-user-group {
        gap: 10.5px;
    }

    #topNavBar .page-head .notifications-menu #notiElement,
    #topNavBar .page-head .actions .profile-navigation-button,
    #topNavBar .page-head #helpCenterToggle {
        align-items: center;
        box-sizing: border-box;
        display: flex !important;
        height: 35px !important;
        justify-content: center;
        padding: 7px !important;
        position: relative;
        transition: background-color .2s ease;
        width: 35px !important;
    }

    #topNavBar .page-head .notifications-menu #notiElement:hover,
    #topNavBar .page-head .actions .profile-navigation-button:hover,
    #topNavBar .page-head #helpCenterToggle:hover {
        background: #f3f4f6;
    }

    #topNavBar .page-head .notifications-menu .top-navigation-icon,
    #topNavBar .page-head .actions .top-navigation-icon {
        color: #4b5563 !important;
    }

    #topNavBar .page-head .help-icon {
        display: block;
        height: 14px;
        margin: 0;
        width: 14px;
    }

    #topNavBar .page-head .actions .active-username {
        align-items: center;
        color: #111827 !important;
        display: flex;
        font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        font-size: 14px;
        font-weight: 500;
        height: 20px;
        line-height: 20px;
        margin: -2px 0 0 !important;
        max-width: 110px;
        min-width: 0;
        overflow: hidden;
        padding: 0;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}
