/* --------------------------------------------------------------------------
   Firm switcher bar. Each rule below replaces an inline style attribute that
   was sitting in _TopNavigation.cshtml.
   -------------------------------------------------------------------------- */

/* header menu styles */

.milliman-header-verbiage {
    font-size: 1.9em;
    font-weight: normal;
}

.lilo.profile {
    padding-left: 1rem;
    color: #fff;
    margin-top: 0px;
    cursor: pointer;
}

.lilo.profile:hover {
    color: var( --bs-gray-400 );
}

/* Collapsed by default; global-navbar.js toggles .is-visible. Was a
   `style="display:none"` attribute driven by jQuery .toggle(). */
.profile-toggle {
    display: none;
    position: absolute;
    top: var( --navbar-height );
    right: 1.25rem;
    height: auto;
    width: auto;
    z-index: 99;
    background-color: #fff;
    padding: 1rem;
}

.profile-toggle.is-visible {
    display: block;
    box-shadow: var(--shadow-md);
    border-bottom-left-radius: var( --radius-sm );
    border-bottom-right-radius: var( --radius-sm );
}

.profile-toggle a.logout-link {
    display: inline-block;
    text-decoration: none;
    margin-top: 20px;
}

.profile-toggle a.logout-link:hover {
    text-decoration: underline;
}

.profile-toggle p.username {
    font-weight: bold;
    font-size: 0.9rem;
}

.profile-toggle p.firm {
    font-size: 0.85rem;
}

.profile-toggle p.email {
    font-size: 0.85rem;
    padding-bottom: 10px;
    border-bottom: 2px solid #ccc;
}

.form-modal-footer {
    background-color: var(--c-brand);
    color: white;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    gap: 0.25em;
}

.topnav-firm-dropdown-bar {
    display: flex;
    flex-grow: 1;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    overflow: visible;
}

.firm-dropdown-label 
{
    font-size: 0.65rem;
}

#firmCombo {
    --navbar-combo-h: 2em;
    --navbar-combo-r: 4px;
    --navbar-combo-border: #c6c6c6;
    --navbar-combo-bg: #f4f4f4;
    --navbar-combo-bg-hover: #e8e8e8;
    --navbar-combo-seam: rgba(0, 0, 0, 0.10);
    position: relative;
    flex: 1;
    min-width: 0;
}

#firmCombo.cds--combo-box.cds--list-box--sm {
    block-size: 2rem;
    max-block-size: 2rem;
}

/* The clickable field. Deliberately keyed off .firm-dropdown-combo__field rather
than the bare Carbon .cds--list-box__field: _TopNavigation's firm switcher
carries that Carbon class too, and a bare rule restyled it on report pages
only. */
#firmCombo .firm-dropdown-combo__field {
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    height: var(--navbar-combo-h);
    margin: 0;
    padding: 0;
    background: var(--navbar-combo-bg);
    border: 1px solid var(--navbar-combo-border);
    border-radius: var(--navbar-combo-r);
    outline: none;
    overflow: hidden;
    cursor: pointer;
    appearance: none;
    font-family: inherit;
    font-size: 100%;
    text-align: start;
    text-overflow: ellipsis;
    vertical-align: top;
    white-space: nowrap;
}

#firmCombo .firm-dropdown-combo__input:hover,
#firmCombo .firm-dropdown-combo__input:focus-within,
#firmCombo .firm-dropdown-combo__input:active {
    box-shadow: 0 2px 5px inset var(--navbar-combo-bg-hover);
}

#firmCombo .cds--list-box__menu-icon:hover,
#firmCombo .cds--list-box__menu-icon:focus-within,
#firmCombo .cds--list-box__menu-icon:active {
    box-shadow: 0 2px 5px inset var(--navbar-combo-bg-hover);
}

/* Leading search glyph.
NOTE: absolutely positioned at left:10px yet sized to the full control height
(var(--navbar-combo-h)). That is the surviving result of two rules that used to fight
over this element; preserved as-is so the rendering does not change. */
#firmCombo .firm-dropdown-combo__icon {
    position: absolute;
    left: 10px;
    top: 50%;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--navbar-combo-h);
    height: var(--navbar-combo-h);
    flex-shrink: 0;
    transform: translateY(-50%);
    pointer-events: none;
    color: var(--c-text-muted);
}

#firmCombo .firm-dropdown-combo__icon svg {
    width: 16px;
    height: 16px;
}

/* The search input. Horizontal padding keeps the text clear of the leading
glyph and the trailing chevron, and stays !important to beat Carbon's own
.cds--text-input padding. */
#firmCombo .firm-dropdown-combo__input {
    flex: 1 1 auto;
    min-width: 0;
    height: var(--navbar-combo-h);
    padding-block: 0;
    padding-left: 42px !important;
    padding-right: 36px !important;
    background: transparent;
    border: 0;
    outline: none;
    font-weight: 500 !important;
    color: var(--c-text-secondary) !important;
}

#firmCombo .firm-dropdown-combo__input::placeholder {
    color: var(--c-text-muted) !important;
}

/* Trailing chevron button. */
#firmCombo .cds--list-box__menu-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--navbar-combo-h);
    height: var(--navbar-combo-h);
    flex-shrink: 0;
    background: transparent;
    border: 0;
    border-left: 1px solid var(--navbar-combo-seam);
}


/* --------------------------------------------------------------------------
MENU
-------------------------------------------------------------------------- */
#firmCombo .cds--list-box__menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 9999;
    max-height: 280px;
    overflow-y: auto;
    background: var(--c-surface);
    border: 1px solid var(--c-border);
    border-top: none;
    border-radius: 0 0 var(--radius-sm) var(--radius-sm);
    margin-top: calc( 0px - var( --navbar-combo-r ) - 1px);
    box-shadow: var(--shadow-md);
}

/* Closed by default; js/shared/global-navbar.js adds .is-open to reveal it.
Replaces the style="display:none" that used to sit on #firmMenu in
_TopNavigation.cshtml  -  keeping it in CSS means the script never has to write
to element.style, so the cascade stays the single source of truth. */
#firmCombo .firm-dropdown-combo__menu {
    display: none;
}

#firmCombo .firm-dropdown-combo__menu.is-open {
    display: block;
}

/* Applied by the type-ahead filter in js/shared/global-navbar.js. */
#firmCombo .cds--list-box__menu-item.is-filtered-out {
    display: none;
}

#firmCombo .cds--list-box__menu-item {
    padding: 0.25rem 1rem;
    block-size: auto;
    color: var(--c-text-primary);
    cursor: pointer;
    border-bottom: 1px solid var(--c-border);
    border-block-start-color: transparent;
    transition: background var(--t);
}

        /* Carbon fixes the height of the option's inner wrappers; unset so a long
   firm name can wrap instead of being clipped. */
#firmCombo .cds--list-box__menu-item * {
    block-size: auto;
    border-block-start-color: transparent;
    padding: 0.15em 0;
}

#firmCombo .cds--list-box__menu-item:last-child {
    border-bottom: none;
}

#firmCombo .cds--list-box__menu-item:hover {
    background: var(--c-accent-lt);
}

#firmCombo .cds--list-box__menu-item__option {
    display: flex;
    align-items: center;
}

#firmCombo .cds--list-box__menu-item__text {
    font-size: 0.8rem;
}

.topnav.large-device 
{
    height: var( --navbar-height )
}

.nav-about-us-link-wrapper {
    display: flex;
    justify-content: flex-end;
    width: 14ch;
}

.nav-contact-us-link-wrapper {
    display: flex;
    justify-content: flex-end;
    width: 10ch;
}




/* media  queries */
@media screen and (max-width: 768px) {
    .profile-toggle {
        display: none;
    }

    #profile-dropdown-toggle {
        display: none;
    }
}