.sidebar-group {
    margin:2px 0;
}

.sidebar-group-toggle {
    width:100%;
    border:0;
    background:transparent;
    display:flex;
    align-items:center;
    justify-content:space-between;
    text-align:left;
    cursor:pointer;
}

.sidebar-group-toggle:hover {
    color:#cbd5e1;
}

.sidebar-chevron {
    transition:transform .18s ease;
}

.sidebar-group.is-collapsed .sidebar-chevron {
    transform:rotate(-90deg);
}

.sidebar-group-items {
    display:block;
}

.sidebar-group.is-collapsed .sidebar-group-items {
    display:none;
}

.sidebar-compact-toggle {
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    border:1px solid rgba(255,255,255,.12);
    border-radius:10px;
    padding:.5rem .65rem;
    background:rgba(255,255,255,.05);
    color:#cbd5e1;
    font-size:.82rem;
}

.sidebar-compact-toggle:hover {
    background:rgba(255,255,255,.1);
    color:#fff;
}

.app-sidebar.is-compact {
    width:var(--tt-app-sidebar-compact-width);
}

.app-sidebar.is-compact .brand-title,.app-sidebar.is-compact .brand-sub,.app-sidebar.is-compact .sidebar-group-toggle span,.app-sidebar.is-compact .sidebar-group-toggle>.sidebar-chevron,.app-sidebar.is-compact .sidebar-link span,.app-sidebar.is-compact .sidebar-compact-toggle span,.app-sidebar.is-compact .mt-auto .min-w-0,.app-sidebar.is-compact .mt-auto .btn {
    display:none!important;
}

.app-sidebar.is-compact .sidebar-group-items {
    display:block!important;
}

.app-sidebar.is-compact .sidebar-link {
    justify-content:center;
    margin:.25rem .6rem;
    padding:.78rem;
}

.app-sidebar.is-compact .sidebar-link i {
    width:auto;
    font-size:1.2rem;
}

.app-sidebar.is-compact .sidebar-section {
    height:10px;
    padding:5px;
    border-top:1px solid rgba(255,255,255,.08);
}

.app-sidebar.is-compact~.app-main {
    margin-left:var(--tt-app-sidebar-compact-width);
}

@media(max-width:991.98px) {
    .app-sidebar.is-compact~.app-main {
        margin-left:0;
    }
}

/* UIH-HOME-1 — shared sidebar visual hierarchy. Group header < active destination. */
.sidebar-group > .sidebar-group-toggle,
.offcanvas-dna .sidebar-section {
    opacity:1;
    color:#dbeafe;
    background:rgba(148,163,184,.11);
    border:1px solid rgba(203,213,225,.10);
    border-radius:10px;
    margin:.55rem .55rem .3rem;
    padding:.58rem .72rem;
    letter-spacing:.075em;
}

.sidebar-group > .sidebar-group-toggle:hover,
.sidebar-group > .sidebar-group-toggle:focus-visible {
    color:#fff;
    background:rgba(148,163,184,.17);
    border-color:rgba(203,213,225,.18);
}

.sidebar-group > .sidebar-group-toggle:focus-visible {
    outline:2px solid rgba(165,180,252,.9);
    outline-offset:2px;
}

.sidebar-group.has-active > .sidebar-group-toggle {
    color:#eef2ff;
    background:rgba(99,102,241,.16);
    border-color:rgba(129,140,248,.26);
}

.sidebar-group > .sidebar-group-toggle .sidebar-chevron {
    color:#c7d2fe;
    flex:0 0 auto;
}

.sidebar-nav .sidebar-link.active,
.offcanvas-dna .sidebar-link.active {
    color:#fff;
    background:rgba(79,70,229,.42);
    box-shadow:inset 3px 0 0 rgba(199,210,254,.95);
}

.app-sidebar.is-compact .sidebar-section {
    height:10px;
    padding:5px;
    margin:2px .6rem;
    border:0;
    border-top:1px solid rgba(255,255,255,.10);
    border-radius:0;
    background:transparent;
}


/* UIH-HOME-1.1 — mobile/offcanvas group-toggle parity. */
.offcanvas-dna .mobile-sidebar-nav .sidebar-group {
    margin:2px 0;
}

.offcanvas-dna .mobile-sidebar-nav .sidebar-group-toggle {
    width:calc(100% - 1.1rem);
    min-height:42px;
    touch-action:manipulation;
}

.offcanvas-dna .mobile-sidebar-nav .sidebar-group-toggle:focus-visible {
    outline:2px solid rgba(165,180,252,.95);
    outline-offset:2px;
}

.offcanvas-dna .mobile-sidebar-nav .sidebar-group-items {
    display:block;
}

.offcanvas-dna .mobile-sidebar-nav .sidebar-group.is-collapsed .sidebar-group-items {
    display:none;
}

@media(max-width:991.98px) {
    .offcanvas-dna .mobile-sidebar-nav {
        overflow-x:hidden;
    }
    .offcanvas-dna .mobile-sidebar-nav .sidebar-link {
        min-width:0;
    }
}
