/* Collapse before navigation and account controls compete for the available width. */
.site-navigation .navbar-collapse, .site-navigation .nav-item { min-width: 0; }
.site-navigation .app-main-menu, .site-navigation .app-account-menu { align-items: center; }
.site-navigation .nav-link, .site-navigation .dropdown-item { white-space: nowrap; overflow-wrap: normal; }
.site-navigation .dropdown-menu { width: max-content; min-width: 100%; }
@media (max-width: 1199.98px) {
    .site-navigation .navbar-collapse {
        max-height: calc(100vh - 100px);
        max-height: calc(100dvh - 100px);
        overflow-y: auto;
    }
    .site-navigation .app-main-menu, .site-navigation .app-account-menu {
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100%;
        margin: 0 !important;
        padding: .5rem 0;
    }
    .site-navigation .nav-link { display: flex; align-items: center; gap: .35rem; margin-right: 0 !important; }
    .site-navigation .dropdown-menu {
        position: static !important; transform: none !important;
        width: 100%; min-width: 0; max-width: 100%;
        margin: .25rem 0 !important;
    }
    .site-navigation .app-account-menu { border-top: 1px solid var(--bs-border-color); }
    .site-navigation .navbar-brand img { max-width: min(45vw, 160px); height: auto; }
}