html,
body {
    min-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: auto;
}

.tenant-sidebar,
.employee-sidebar {
    height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.tenant-shell,
.employee-shell,
.tenant-content,
.employee-content {
    overflow: visible;
}

.tenant-nav-group {
    display: grid;
    gap: 3px;
}

.tenant-nav-group-toggle {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 10px;
    color: #8da4c5;
    display: flex;
    font-size: .68rem;
    font-weight: 800;
    gap: 10px;
    letter-spacing: .1em;
    padding: 10px 14px;
    text-align: left;
    text-transform: uppercase;
    width: 100%;
}

.tenant-nav-group-toggle:hover,
.tenant-nav-group-toggle:focus-visible {
    background: rgba(255,255,255,.07);
    color: #fff;
    outline: none;
}

.tenant-nav-group-toggle .bi-chevron-down {
    margin-left: auto;
    transition: transform .2s ease;
}

.tenant-nav-group-toggle[aria-expanded="false"] .bi-chevron-down {
    transform: rotate(-90deg);
}

.tenant-nav-submenu {
    display: grid;
    gap: 3px;
    padding-left: 8px;
}

.tenant-nav-submenu[hidden] {
    display: none;
}

.tenant-nav-submenu a {
    font-size: .84rem !important;
    padding-block: 10px !important;
}

@media (max-width: 820px) {
    body.mobile-menu-open {
        overflow: hidden;
    }

    .tenant-nav-group-toggle {
        min-height: 44px;
    }
}
