/* Rental Office navigation layout v2.8.0 */
:root {
    --sidebar-width: 250px;
    --sidebar-collapsed-width: 78px;
}

/* The full sidebar width is fixed and never depends on the selected page. */
.app-layout:not(.sidebar-collapsed) {
    grid-template-columns: var(--sidebar-width) minmax(0, 1fr) !important;
}

.app-layout:not(.sidebar-collapsed) .sidebar {
    width: var(--sidebar-width) !important;
    min-width: var(--sidebar-width) !important;
    max-width: var(--sidebar-width) !important;
}

.app-layout.sidebar-collapsed {
    grid-template-columns: var(--sidebar-collapsed-width) minmax(0, 1fr) !important;
}

.app-layout.sidebar-collapsed .sidebar {
    width: var(--sidebar-collapsed-width) !important;
    min-width: var(--sidebar-collapsed-width) !important;
    max-width: var(--sidebar-collapsed-width) !important;
}

/* The four main actions stay above the scrolling menu. */
.sidebar-fixed-actions {
    flex: 0 0 auto;
    padding: 10px;
    gap: 6px;
    background: rgba(255, 255, 255, 0.025);
}

.sidebar-fixed-actions .sidebar-fixed-link {
    min-height: 38px;
    padding-inline: 10px;
}

.sidebar-fixed-actions .sidebar-fixed-link.active {
    color: #ffffff;
    background: #155eef;
    box-shadow: 0 6px 16px rgba(21, 94, 239, 0.22);
}

.sidebar-nav {
    min-height: 0;
}

/* Keep long menu names inside the fixed width instead of resizing the column. */
.sidebar-link b,
.sidebar-group summary b,
.sidebar-fixed-actions b,
.sidebar-group > div a {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-group > div a {
    white-space: normal;
    overflow-wrap: anywhere;
}

@media (max-width: 1100px) {
    .sidebar {
        width: var(--sidebar-width) !important;
        min-width: var(--sidebar-width) !important;
        max-width: var(--sidebar-width) !important;
    }
}
