/* Portal invitation workbench (flex push + theme nav rows). Imported here so the
   rules ship with this already-linked sheet even if App.razor omits a separate link. */
@import url("portal-workbench.css");

/* ── Structure / width ───────────────────────────── */
.sidebar-menu.e-sidebar {
    width: var(--site-nav-expanded) !important;
    transition: width .22s ease;
    box-sizing: border-box;
}

    .sidebar-menu.e-sidebar.e-dock.e-close {
        width: var(--site-nav-collapsed) !important;
    }

.sidebar-menu .e-menu-wrapper,
.sidebar-menu .e-menu-container {
    width: 100% !important;
    background: inherit !important;
    overflow: visible !important;
}

/* Fluent2: `ul .e-menu-item` uses padding: 0 12px; vertical `.e-blankicon` adds ~34px extra left — url/leaf rows sit inset vs flyout headers.
   Row inset comes from anchors below (14px); neutralize LI padding so every primary row shares one left edge. Keep extra right padding on caret rows for the absolute caret. */
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item {
    padding-left: 0 !important;
}

.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item:not(.e-menu-caret-icon) {
    padding-right: 0 !important;
}

.e-bigger .sidebar-menu .e-menu-container:not(.e-hamburger):not(.e-rtl) ul.e-vertical > li.e-menu-item.e-blankicon {
    padding-left: 0 !important;
}

/* Caret/flyout rows (expanded sidebar only): inset LI so icons line up with url rows; collapsed dock resets LI padding elsewhere. */
.sidebar-menu:not(.e-close) .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon,
.sidebar-menu:not(.e-close) .e-menu-container ul.e-ul > li.e-menu-item.e-menu-caret-icon {
    padding-left: 15px !important;
}

.sidebar-menu:not(.e-close) .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon > .e-anchor,
.sidebar-menu:not(.e-close) .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon > a.e-anchor,
.sidebar-menu:not(.e-close) .e-menu-container ul.e-ul > li.e-menu-item.e-menu-caret-icon > .e-anchor,
.sidebar-menu:not(.e-close) .e-menu-container ul.e-ul > li.e-menu-item.e-menu-caret-icon > a.e-anchor {
    padding-left: 0 !important;
}

/* ── Reset + base ───────────────────────────────── */
.sidebar-menu .e-menu-item,
.sidebar-menu .e-menu-item:hover,
.sidebar-menu .e-menu-item.is-current,
.sidebar-menu .e-menu-item[aria-current="page"] {
    background: transparent !important;
}

    .sidebar-menu .e-menu-item,
    .sidebar-menu .e-menu-item * {
        color: var(--nav-text) !important;
    }

        .sidebar-menu .e-menu-item .e-menu-icon {
            background: transparent !important;
        }

/* Idle rows: white/neutral glyphs; cyan only when aria-current / data-parent-current / active blocks below apply. */
.sidebar-menu .e-menu-item:not([aria-current="page"]):not([data-parent-current="true"]):not(.is-current) .e-menu-icon,
.sidebar-menu .e-menu-item:not([aria-current="page"]):not([data-parent-current="true"]):not(.is-current) .bi,
.sidebar-menu .e-menu-item:not([aria-current="page"]):not([data-parent-current="true"]):not(.is-current) .material-symbols-outlined,
.sidebar-menu .e-menu-item:not([aria-current="page"]):not([data-parent-current="true"]):not(.is-current) .e-caret {
    color: var(--nav-text) !important;
}

/* ── Compact row / anchor ───────────────────────── */
.sidebar-menu .e-menu-item {
    position: relative;
    /* Vertical spacing only; full-width row (no left/right gaps) */
    margin: 2px 0;
    padding: 0;
    border-radius: 10px;
}

    .sidebar-menu .e-menu-item > .e-anchor,
    .sidebar-menu .e-menu-item > a.e-menu-url,
    .sidebar-menu .e-menu-item > a.e-menu-text {
        display: block;
    /* 3px gap between 3px bar (left:8,width:3 => right:11) and icon/text starting at 14px */
    padding: 4px 14px 4px 14px;
        min-height: 30px;
        line-height: 20px;
        border-radius: 10px;
        text-decoration: none;
        color: inherit !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        background: transparent !important;
    }

        .sidebar-menu .e-menu-item > .e-anchor > .e-anchor-wrap,
        .sidebar-menu .e-menu-item > a.e-menu-url > .e-anchor-wrap,
        .sidebar-menu .e-menu-item > a.e-menu-text > .e-anchor-wrap {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        /* layout.css defines global .bi { margin-right: 0.75rem }; nav rows already use gap — strip extra horizontal margin so Login (no Url) lines up with link rows */
        .sidebar-menu .e-menu-item .e-anchor-wrap .bi,
        .sidebar-menu .e-menu-item .e-anchor-wrap .e-menu-icon {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }

    /* Items without Url (e.g. Login) render as span.e-anchor — match link affordance */
    .sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item > span.e-anchor {
        cursor: pointer;
    }
        /* Kill ripple/glow */
        .sidebar-menu .e-ripple-element,
        .sidebar-menu .e-menu-item > .e-anchor::before,
        .sidebar-menu .e-menu-item > .e-anchor::after,
        .sidebar-menu .e-menu-item > a.e-menu-url::before,
        .sidebar-menu .e-menu-item > a.e-menu-url::after,
        .sidebar-menu .e-menu-item > a.e-menu-text::before,
        .sidebar-menu .e-menu-item > a.e-menu-text::after {
            display: none !important;
            content: none !important;
        }

    /* ── Accent rail: left of the 24px icon column (anchor padding-left 14px → icon starts at 14px). ── */
    .sidebar-menu .e-menu-item::after {
        content: "";
        position: absolute;
        left: 5px; /* 3px bar occupies 5–8px — clear gap before icon at 14px */
        top: 50%;
        transform: translateY(-50%);
        width: 3px;
        height: 66%;
        max-height: 28px;
        border-radius: 6px;
        background: transparent;
        pointer-events: none;
        z-index: 3;
    }

    /* Caret / flyout header rows: LI has +15px inset; icon column starts ~15px */
    .sidebar-menu:not(.e-close) .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon::after {
        left: 8px; /* 8–11px rail, gap before content at 15px */
    }

    /* Collapsed dock: keep rail on the left edge of the strip (icons are centered ~13–37px) */
    .sidebar-menu.e-dock.e-close .e-menu-container ul.e-vertical > li.e-menu-item::after {
        left: 4px;
        transform: translateY(-50%);
        height: 24px;
        max-height: none;
    }

    /* Hover (non-active) */
    .sidebar-menu .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not(.e-selected):not(.e-disabled):hover::after {
        background: linear-gradient(180deg,#7fe6ff,#13b6ff);
        box-shadow: 0 0 0 1px rgba(255,255,255,.15) inset, 0 2px 6px rgb(var(--bomsync-shadow-rgb) / 0.26);
    }

    .sidebar-menu .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not([data-parent-current="true"]):not(.e-selected):not(.e-disabled):hover > .e-anchor,
    .sidebar-menu .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not([data-parent-current="true"]):not(.e-selected):not(.e-disabled):hover > a.e-menu-url,
    .sidebar-menu .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not([data-parent-current="true"]):not(.e-selected):not(.e-disabled):hover > a.e-menu-text,
    .sidebar-menu .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not([data-parent-current="true"]):not(.e-selected):not(.e-disabled):hover .e-menu-icon,
    .sidebar-menu .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not([data-parent-current="true"]):not(.e-selected):not(.e-disabled):hover .e-caret {
        color: var(--nav-text) !important;
    }

    /* Active (persists) - mark current route and selected caret parents */
    .sidebar-menu .e-menu-item.is-current::after,
    .sidebar-menu .e-menu-item[aria-current="page"]::after,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"])::after,
    .sidebar-menu .e-menu-item.e-selected::after {
        background: linear-gradient(180deg,#9ff0ff,#10c4ff) !important;
        box-shadow: 0 0 0 1px rgba(255,255,255,.25) inset, 0 2px 6px rgb(var(--bomsync-shadow-rgb) / 0.3) !important;
    }

    .sidebar-menu .e-menu-item.is-current,
    .sidebar-menu .e-menu-item[aria-current="page"],
    .sidebar-menu .e-menu-item.e-selected {
        /* Ensure the LI spans full width of the sidebar with squared edges */
        margin: 0;
        border-radius: 0;
    }

    .sidebar-menu .e-menu-item.is-current > .e-anchor,
    .sidebar-menu .e-menu-item.is-current > a.e-menu-url,
    .sidebar-menu .e-menu-item.is-current > a.e-menu-text,
    .sidebar-menu .e-menu-item[aria-current="page"] > .e-anchor,
    .sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-url,
    .sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-text,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > a.e-menu-url,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > .e-anchor,
    .sidebar-menu .e-menu-item.e-selected > .e-anchor,
    .sidebar-menu .e-menu-item.e-selected > a.e-menu-url,
    .sidebar-menu .e-menu-item.e-selected > a.e-menu-text {
        /* Full-width highlight strip (no rounded corners) like child sidebar */
        background: var(--bs-active-bg) !important;
        border-radius: 0;
    }

    .sidebar-menu .e-menu-item.is-current .e-menu-icon,
    .sidebar-menu .e-menu-item.is-current .bi,
    .sidebar-menu .e-menu-item.is-current .material-symbols-outlined,
    .sidebar-menu .e-menu-item.is-current .e-caret,
    .sidebar-menu .e-menu-item[aria-current="page"] > .e-anchor,
    .sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-url,
    .sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-text,
    .sidebar-menu .e-menu-item[aria-current="page"] .e-menu-icon,
    .sidebar-menu .e-menu-item[aria-current="page"] .bi,
    .sidebar-menu .e-menu-item[aria-current="page"] .material-symbols-outlined,
    .sidebar-menu .e-menu-item[aria-current="page"] .e-caret,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > a.e-menu-url,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > a.e-menu-text,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > .e-anchor,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .e-menu-icon,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .bi,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .material-symbols-outlined,
    .sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .e-caret,
    .sidebar-menu .e-menu-item.e-selected > .e-anchor,
    .sidebar-menu .e-menu-item.e-selected > a.e-menu-url,
    .sidebar-menu .e-menu-item.e-selected > a.e-menu-text,
    .sidebar-menu .e-menu-item.e-selected .e-menu-icon,
    .sidebar-menu .e-menu-item.e-selected .bi,
    .sidebar-menu .e-menu-item.e-selected .material-symbols-outlined,
    .sidebar-menu .e-menu-item.e-selected .e-caret {
        color: var(--nav-active-fg) !important;
        font-weight: 600;
    }

    /* Flyout parent while a descendant route is active (see ShellNavMenu MarkCurrent data-parent-current). */
    .sidebar-menu .e-menu-item[data-parent-current="true"]::after {
        background: linear-gradient(180deg,#9ff0ff,#10c4ff) !important;
        box-shadow: 0 0 0 1px rgba(255,255,255,.25) inset, 0 2px 6px rgb(var(--bomsync-shadow-rgb) / 0.3) !important;
    }

    .sidebar-menu .e-menu-item[data-parent-current="true"] {
        margin: 0;
        border-radius: 0;
    }

    .sidebar-menu .e-menu-item[data-parent-current="true"] > .e-anchor,
    .sidebar-menu .e-menu-item[data-parent-current="true"] > a.e-menu-url,
    .sidebar-menu .e-menu-item[data-parent-current="true"] > a.e-menu-text {
        background: var(--bs-active-bg) !important;
        border-radius: 0;
    }

    .sidebar-menu .e-menu-item[data-parent-current="true"] > .e-anchor,
    .sidebar-menu .e-menu-item[data-parent-current="true"] > a.e-menu-url,
    .sidebar-menu .e-menu-item[data-parent-current="true"] > a.e-menu-text,
    .sidebar-menu .e-menu-item[data-parent-current="true"] .e-menu-icon,
    .sidebar-menu .e-menu-item[data-parent-current="true"] .bi,
    .sidebar-menu .e-menu-item[data-parent-current="true"] .material-symbols-outlined,
    .sidebar-menu .e-menu-item[data-parent-current="true"] .e-caret {
        color: var(--nav-active-fg) !important;
        font-weight: 600;
    }

/* ── Submenus (inherit bar, override bg if needed) ───────────── */
.sidebar-menu .e-ul {
    background: rgba(17,27,44,.96);
    border: 1px solid rgba(255,255,255,.06);
    box-shadow: var(--bomsync-shadow-lg);
    z-index: 1300;
}

    .sidebar-menu .e-ul .e-menu-item:not(.is-current):not([aria-current="page"]):not(:has(> a[aria-current="page"])):not(.e-selected):not(.e-disabled):hover::after {
        background: linear-gradient(180deg,#7fe6ff,#13b6ff);
        box-shadow: 0 0 0 1px rgba(255,255,255,.15) inset, 0 2px 6px rgb(var(--bomsync-shadow-rgb) / 0.26);
    }

.e-contextmenu-container {
    z-index: 1500 !important; /* Ensure this is above other UI elements */
}

/* Root flyout rows: caret parents use .e-anchor + a hard transparent anchor reset — restore the same translucent cyan as leaf rows. */
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon:not(.e-disabled):hover > a,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon:not(.e-disabled).e-focused > a,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon:not(.e-disabled):hover > .e-anchor,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-menu-caret-icon:not(.e-disabled).e-focused > .e-anchor {
    background: var(--bs-hover-bg) !important;
}

/* Syncfusion may keep .e-selected on a shorter URL prefix while a sibling leaf matches — hide stray chrome unless current is marked on <li> or on the child <a>. */
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"]))::after {
    background: transparent !important;
    box-shadow: none !important;
}

.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"])) > .e-anchor,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"])) > a.e-menu-url {
    background: transparent !important;
    border-radius: 10px;
    font-weight: 400 !important;
}

.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"])) .e-menu-icon,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"])) .bi,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"])) .material-symbols-outlined,
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.e-selected:not([aria-current="page"]):not([data-parent-current="true"]):not(:has(> a[aria-current="page"])) .e-caret {
    color: var(--nav-text) !important;
    font-weight: 400 !important;
}

/* ===== Geoffrey freeze override 2026-10-13 — Dark selected / hover / focus contrast
 * AUTHORIZED CSS-only (navmenu.module.js / ShellNavMenu lifecycle / SfMenu params untouched).
 * Fluent2 + color-scheme:dark paints opaque white/light wash on .e-selected / .e-focused /
 * hover while idle Dark rules keep on-dark text → illegible parents when a subleaf opens
 * (e.g. ADMIN → SETTINGS → BUSINESS). Use cool navy/cyan nav-active language instead. */

/* Kill opaque white / near-white washes on LI + anchors (sidebar + all portaled flyout levels). */
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:hover,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:hover,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:hover,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:hover {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* Hover (non-disabled): soft cyan wash + cyan text/icons (Admin .bn-leaf:hover parity) */
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover > .e-anchor,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover > a.e-menu-url,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover > a.e-menu-url,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover > a.e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover > a.e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover > a,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover > .e-anchor,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover > a,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover > a {
    background: var(--bs-hover-bg, rgba(95, 158, 160, 0.20)) !important;
    background-color: var(--bs-hover-bg, rgba(95, 158, 160, 0.20)) !important;
    background-image: none !important;
    border-radius: 0 !important;
    color: var(--nav-hover-fg, #0b97d4) !important;
}

html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover .e-menu-icon,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover .e-menu-icon,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover .bi,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover .bi,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover .material-symbols-outlined,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover .material-symbols-outlined,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item:not(.e-disabled):hover .e-caret,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item:not(.e-disabled):hover .e-caret,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .e-menu-icon,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .e-menu-icon,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .bi,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .bi,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .material-symbols-outlined,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .material-symbols-outlined,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .e-caret,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .e-caret {
    color: var(--nav-hover-fg, #0b97d4) !important;
    opacity: 1 !important;
}

/* Selected + focused + parent-of-open-submenu: cyan active wash + cyan text/icons (never white).
 * Overrides the Light-theme “clear stray .e-selected” transparent reset for Dark only so
 * Fluent2 white selection cannot show through under on-dark labels. */
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected > .e-anchor,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected > a.e-menu-url,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected > a.e-menu-url,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected > a.e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected > a.e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected > a,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused > .e-anchor,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused > a.e-menu-url,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused > a.e-menu-url,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused > a.e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused > a.e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused > a,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected > .e-anchor,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected > a,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused > .e-anchor,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused > a,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused > a {
    background: var(--bs-active-bg, rgba(106, 215, 255, 0.16)) !important;
    background-color: var(--bs-active-bg, rgba(106, 215, 255, 0.16)) !important;
    background-image: none !important;
    color: var(--bs-cyan, #6ad7ff) !important;
    border-color: transparent !important;
}

html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected .e-menu-icon,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected .e-menu-icon,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected .bi,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected .bi,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected .material-symbols-outlined,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected .material-symbols-outlined,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected .e-caret,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected .e-caret,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected .e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused .e-menu-icon,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused .e-menu-icon,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused .bi,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused .bi,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused .material-symbols-outlined,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused .material-symbols-outlined,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused .e-caret,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused .e-caret,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-focused .e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-focused .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .e-menu-icon,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .e-menu-icon,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .bi,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .bi,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .material-symbols-outlined,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .material-symbols-outlined,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .e-caret,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .e-caret,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .e-menu-text,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .e-menu-icon,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .e-menu-icon,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .bi,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .bi,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .material-symbols-outlined,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .material-symbols-outlined,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .e-caret,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .e-caret,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .e-menu-text,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-focused .e-menu-text {
    color: var(--bs-cyan, #6ad7ff) !important;
    opacity: 1 !important;
}

/* Selected+hover / selected+focused: keep cyan active (do not fall back to white Fluent hover). */
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected:hover > .e-anchor,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected:hover > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected:hover > a,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected:hover > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected.e-focused > .e-anchor,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected.e-focused > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected.e-focused > a,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected.e-focused > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected:hover > .e-anchor,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected:hover > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected:hover > a,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected:hover > a,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-focused > .e-anchor,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-focused > .e-anchor,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-focused > a,
html[data-bomsync-theme-preview="dark"] body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-focused > a {
    background: color-mix(in srgb, var(--bs-cyan, #6ad7ff) 28%, rgba(47, 84, 133, 0.85)) !important;
    background-color: color-mix(in srgb, var(--bs-cyan, #6ad7ff) 28%, rgba(47, 84, 133, 0.85)) !important;
    background-image: none !important;
    color: var(--bs-cyan, #6ad7ff) !important;
}


/* ===== Geoffrey authorized 2026-10-21 — Admin bn-leaf hover/selection parity (CSS-only)
 * Gold: Admin .bn-leaf / .bn-leaf--active (admin-shell.css) — full-width wash + cyan text + left bar.
 * Root cause: layout.css sets expanded/flyout anchors to inline-flex → wash shrink-wraps glyphs.
 * Untouched: navmenu.module.js, ShellNavMenu lifecycle, SfMenu params, flyout purge JS.
 */

/* Full-width row anchors (override layout.css inline-flex shrink-wrap) */
.sidebar-menu:not(.e-dock.e-close) .e-menu-container ul.e-vertical > li.e-menu-item > a,
.sidebar-menu:not(.e-dock.e-close) .e-menu-container ul.e-vertical > li.e-menu-item > .e-anchor,
.sidebar-menu:not(.e-dock.e-close) .e-menu-container ul.e-vertical > li.e-menu-item > a.e-menu-url,
.sidebar-menu:not(.e-dock.e-close) .e-menu-container ul.e-vertical > li.e-menu-item > a.e-menu-text,
body > .e-menu-popup.e-popup-open .e-menu-item > a,
body > .e-menu-popup.e-popup-open .e-menu-item > .e-anchor {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Hover (all themes): faint full-width wash + cyan text — not white, not a tight pill */
.sidebar-menu .e-menu-item:not(.e-disabled):hover > .e-anchor,
.sidebar-menu .e-menu-item:not(.e-disabled):hover > a.e-menu-url,
.sidebar-menu .e-menu-item:not(.e-disabled):hover > a.e-menu-text,
.sidebar-menu .e-menu-item:not(.e-disabled):hover > a,
body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover > .e-anchor,
body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover > a {
    border-radius: 0 !important;
    color: var(--nav-hover-fg, #0b97d4) !important;
}

.sidebar-menu .e-menu-item:not(.e-disabled):hover .e-menu-icon,
.sidebar-menu .e-menu-item:not(.e-disabled):hover .bi,
.sidebar-menu .e-menu-item:not(.e-disabled):hover .material-symbols-outlined,
.sidebar-menu .e-menu-item:not(.e-disabled):hover .e-caret,
body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .e-menu-icon,
body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .bi,
body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .material-symbols-outlined,
body > .e-menu-popup.e-popup-open .e-menu-item:not(.e-disabled):hover .e-caret {
    color: var(--nav-hover-fg, #0b97d4) !important;
}

/* Current / active leaf: cyan text (left rail already via ::after + is-current / aria-current) */
.sidebar-menu .e-menu-item.is-current > .e-anchor,
.sidebar-menu .e-menu-item.is-current > a.e-menu-url,
.sidebar-menu .e-menu-item.is-current > a.e-menu-text,
.sidebar-menu .e-menu-item[aria-current="page"] > .e-anchor,
.sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-url,
.sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-text,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > .e-anchor,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > a.e-menu-url,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > a.e-menu-text,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current > .e-anchor,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current > a,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] > .e-anchor,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] > a,
body > .e-menu-popup.e-popup-open .e-menu-item:has(> a[aria-current="page"]) > .e-anchor,
body > .e-menu-popup.e-popup-open .e-menu-item:has(> a[aria-current="page"]) > a {
    border-radius: 0 !important;
    color: var(--nav-active-fg, #10C4FF) !important;
}

.sidebar-menu .e-menu-item.is-current .e-menu-icon,
.sidebar-menu .e-menu-item.is-current .bi,
.sidebar-menu .e-menu-item.is-current .material-symbols-outlined,
.sidebar-menu .e-menu-item.is-current .e-caret,
.sidebar-menu .e-menu-item[aria-current="page"] .e-menu-icon,
.sidebar-menu .e-menu-item[aria-current="page"] .bi,
.sidebar-menu .e-menu-item[aria-current="page"] .material-symbols-outlined,
.sidebar-menu .e-menu-item[aria-current="page"] .e-caret,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .e-menu-icon,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .bi,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .material-symbols-outlined,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) .e-caret,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current .e-menu-icon,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current .bi,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current .e-caret,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] .e-menu-icon,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] .bi,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] .e-caret {
    color: var(--nav-active-fg, #10C4FF) !important;
}

/* Selected wash: square full-width strip (no rounded pill) */
.sidebar-menu .e-menu-item.is-current > .e-anchor,
.sidebar-menu .e-menu-item[aria-current="page"] > .e-anchor,
.sidebar-menu .e-menu-item[aria-current="page"] > a.e-menu-url,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > .e-anchor,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]) > a.e-menu-url,
.sidebar-menu .e-menu-item.e-selected > .e-anchor,
.sidebar-menu .e-menu-item.e-selected > a.e-menu-url,
.sidebar-menu .e-menu-item.e-selected > a.e-menu-text,
body > .e-menu-popup.e-popup-open .e-menu-item.e-selected > .e-anchor,
body > .e-menu-popup.e-popup-open .e-menu-item.e-selected > a {
    border-radius: 0 !important;
}


/* ===== Geoffrey authorized 2026-10-22 — selected label cyan + leafless bar center (CSS-only)
 * (1) Label spans (.e-menu-text / * under selected) stayed white: base `.e-menu-item *`
 *     and layout.css `.e-menu-text` beat anchor-only cyan. Force cyan on all descendants
 *     for is-current / aria-current / data-parent-current / e-selected (icons already cyan).
 * (2) Leafless selected ::after rail sat ~3–4px low vs icon/text; flyout caret parents OK —
 *     re-center only :not(.e-menu-caret-icon). No nav JS / lifecycle changes.
 */

/* Selected / current / parent-current: cyan label text (not white).
 * Include caret .e-selected (open flyout parent) — exclude stray prefix .e-selected via later reset. */
.sidebar-menu .e-menu-container .e-menu-item.is-current,
.sidebar-menu .e-menu-container .e-menu-item.is-current *,
.sidebar-menu .e-menu-container .e-menu-item.is-current .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item[aria-current="page"],
.sidebar-menu .e-menu-container .e-menu-item[aria-current="page"] *,
.sidebar-menu .e-menu-container .e-menu-item[aria-current="page"] .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item:has(> a[aria-current="page"]),
.sidebar-menu .e-menu-container .e-menu-item:has(> a[aria-current="page"]) *,
.sidebar-menu .e-menu-container .e-menu-item:has(> a[aria-current="page"]) .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item[data-parent-current="true"],
.sidebar-menu .e-menu-container .e-menu-item[data-parent-current="true"] *,
.sidebar-menu .e-menu-container .e-menu-item[data-parent-current="true"] .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item.e-selected.e-menu-caret-icon,
.sidebar-menu .e-menu-container .e-menu-item.e-selected.e-menu-caret-icon *,
.sidebar-menu .e-menu-container .e-menu-item.e-selected.e-menu-caret-icon .e-menu-text,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current *,
body > .e-menu-popup.e-popup-open .e-menu-item.is-current .e-menu-text,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"],
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] *,
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"] .e-menu-text,
body > .e-menu-popup.e-popup-open .e-menu-item:has(> a[aria-current="page"]),
body > .e-menu-popup.e-popup-open .e-menu-item:has(> a[aria-current="page"]) *,
body > .e-menu-popup.e-popup-open .e-menu-item[data-parent-current="true"],
body > .e-menu-popup.e-popup-open .e-menu-item[data-parent-current="true"] *,
body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-menu-caret-icon,
body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-menu-caret-icon *,
body > .e-menu-popup.e-popup-open .e-menu-item.e-selected.e-menu-caret-icon .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.is-current,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.is-current,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.is-current *,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.is-current *,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.is-current .e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.is-current .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item[aria-current="page"] .e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item[aria-current="page"] .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item[data-parent-current="true"] .e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item[data-parent-current="true"] .e-menu-text,
html[data-bomsync-theme="dark"]:not([data-bomsync-theme-preview]) .sidebar-menu .e-menu-item.e-selected.e-menu-caret-icon .e-menu-text,
html[data-bomsync-theme-preview="dark"] .sidebar-menu .e-menu-item.e-selected.e-menu-caret-icon .e-menu-text {
    color: var(--nav-active-fg, #10C4FF) !important;
}

/* Leafless current leaf: cyan label too (RFIS-style; not caret) */
.sidebar-menu .e-menu-container .e-menu-item.is-current:not(.e-menu-caret-icon) .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon) .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon) .e-menu-text,
.sidebar-menu .e-menu-container .e-menu-item.is-current:not(.e-menu-caret-icon) > a,
.sidebar-menu .e-menu-container .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon) > a {
    color: var(--nav-active-fg, #10C4FF) !important;
}

/* Leafless selected left bar — share caret flyout-parent LI ::after geometry.
 * Root cause: Fluent/Syncfusion leafless LIs can be taller than the padded anchor wash;
 * % + translateY centering on that taller LI drops the rail ~3–4px vs wash.
 * Fix: shrink-wrap leafless current LIs to the wash/anchor box so the shared
 * LI ::after (top:50% + translateY(-50%) + height:66% + max-height:28px) is
 * pixel-identical to caret parents. Do NOT invent a second transform/top recipe.
 * Caret .e-menu-caret-icon rows: untouched. */
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item.is-current:not(.e-menu-caret-icon),
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item[aria-current="page"]:not(.e-menu-caret-icon),
.sidebar-menu .e-menu-container ul.e-vertical > li.e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon),
.sidebar-menu .e-menu-container ul.e-ul > li.e-menu-item.is-current:not(.e-menu-caret-icon),
.sidebar-menu .e-menu-container ul.e-ul > li.e-menu-item[aria-current="page"]:not(.e-menu-caret-icon),
.sidebar-menu .e-menu-container ul.e-ul > li.e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon),
body > .e-menu-popup.e-popup-open .e-menu-item.is-current:not(.e-menu-caret-icon),
body > .e-menu-popup.e-popup-open .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon),
body > .e-menu-popup.e-popup-open .e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon) {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: normal !important;
    align-items: stretch !important;
    display: block !important; /* defeat Fluent flex leftover space under the wash */
}

/* Ensure wash/anchor fills the shrink-wrapped LI (no empty band under the rail) */
.sidebar-menu .e-menu-item.is-current:not(.e-menu-caret-icon) > .e-anchor,
.sidebar-menu .e-menu-item.is-current:not(.e-menu-caret-icon) > a.e-menu-url,
.sidebar-menu .e-menu-item.is-current:not(.e-menu-caret-icon) > a.e-menu-text,
.sidebar-menu .e-menu-item.is-current:not(.e-menu-caret-icon) > a,
.sidebar-menu .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon) > .e-anchor,
.sidebar-menu .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon) > a.e-menu-url,
.sidebar-menu .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon) > a.e-menu-text,
.sidebar-menu .e-menu-item[aria-current="page"]:not(.e-menu-caret-icon) > a,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon) > .e-anchor,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon) > a.e-menu-url,
.sidebar-menu .e-menu-item:has(> a[aria-current="page"]):not(.e-menu-caret-icon) > a {
    min-height: 30px !important;
    height: 100% !important;
}

