/*
|--------------------------------------------------------------------------
| NoviDesk V160.152B — Collapsible Desktop Sidebar
|--------------------------------------------------------------------------
| Desktop-only icon rail for the default NoviDesk theme.
| Keeps all existing navigation links/permissions intact and only changes
| presentation when the user collapses the sidebar.
|--------------------------------------------------------------------------
*/

@media (min-width:851px){

html[data-bg-theme="novidesk-premium"] .bg-desktop-owner-shell{
    transition:grid-template-columns .20s cubic-bezier(.2,.8,.2,1)!important;
}

html[data-bg-theme="novidesk-premium"] .bg-desktop-sidebar{
    overflow:visible!important;
    transition:
        width .20s cubic-bezier(.2,.8,.2,1),
        min-width .20s cubic-bezier(.2,.8,.2,1),
        padding .20s cubic-bezier(.2,.8,.2,1),
        box-shadow .20s ease!important;
}

html[data-bg-theme="novidesk-premium"] .bg-desktop-owner-stage{
    min-width:0!important;
}

html[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle{
    position:absolute!important;
    z-index:20!important;
    top:28px!important;
    right:-14px!important;
    width:29px!important;
    min-width:29px!important;
    height:29px!important;
    min-height:29px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid #D7E6ED!important;
    border-radius:10px!important;
    background:#FFFFFF!important;
    color:#526F81!important;
    box-shadow:0 7px 18px rgba(31,78,103,.13)!important;
    cursor:pointer!important;
    transition:
        color .16s ease,
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease,
        transform .20s cubic-bezier(.2,.8,.2,1)!important;
}

html[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle:hover{
    border-color:#BFDCE8!important;
    background:#F2F9FC!important;
    color:#2F7F9F!important;
    box-shadow:0 8px 20px rgba(31,78,103,.16)!important;
}

html[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle:focus-visible{
    outline:3px solid rgba(47,127,159,.18)!important;
    outline-offset:2px!important;
}

html[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle svg{
    width:15px!important;
    height:15px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    transition:transform .20s cubic-bezier(.2,.8,.2,1)!important;
}

/* Smoothly fade labels while width changes. */
html[data-bg-theme="novidesk-premium"] .bg-sidebar-brand-copy,
html[data-bg-theme="novidesk-premium"] .bg-sidebar-company,
html[data-bg-theme="novidesk-premium"] .nd-v148f-sidebar-group,
html[data-bg-theme="novidesk-premium"] .bg-sidebar-link-text,
html[data-bg-theme="novidesk-premium"] .nd-v148f-user-copy{
    transition:opacity .12s ease, transform .16s ease!important;
}

/* ---------------- Collapsed icon rail ---------------- */

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-desktop-owner-shell{
    grid-template-columns:76px minmax(0,1fr)!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-desktop-sidebar{
    width:76px!important;
    min-width:76px!important;
    padding:14px 8px 10px!important;
    gap:9px!important;
    box-shadow:7px 0 24px rgba(31,78,103,.05)!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle svg{
    transform:rotate(180deg)!important;
}

/* Brand becomes the top rail icon. */
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-brand{
    min-height:54px!important;
    padding:3px 0 11px!important;
    justify-content:center!important;
    gap:0!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-brand .bg-sidebar-brand-mark.bg-sidebar-brand-logo{
    width:43px!important;
    height:43px!important;
    min-width:43px!important;
    flex-basis:43px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-brand-copy{
    display:none!important;
}

/* Company, context and location remain available after expanding the rail. */
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-company{
    display:none!important;
}

/* Navigation */
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-nav{
    align-items:center!important;
    padding:2px 0 6px!important;
    gap:5px!important;
    scrollbar-width:none!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-nav::-webkit-scrollbar{
    display:none!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .nd-v148f-sidebar-group{
    display:none!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-link{
    position:relative!important;
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    margin:0 auto!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    border-radius:13px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-link-text{
    display:none!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-ico{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    flex-basis:32px!important;
    border-radius:10px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-ico svg{
    width:17px!important;
    height:17px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-link.active{
    border-color:#C7E1EC!important;
    background:linear-gradient(135deg,#E7F4FA 0%,#D9ECF5 100%)!important;
    box-shadow:0 6px 15px rgba(47,127,159,.10)!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-counter{
    position:absolute!important;
    z-index:2!important;
    top:-3px!important;
    right:-4px!important;
    min-width:17px!important;
    height:17px!important;
    padding:0 4px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:8px!important;
    border:2px solid #FFFFFF!important;
    border-radius:999px!important;
}

/* Compact account area while keeping every existing action accessible. */
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-bottom{
    width:58px!important;
    margin:0 auto!important;
    padding:6px!important;
    gap:6px!important;
    border-radius:15px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-user{
    min-height:42px!important;
    padding:4px!important;
    justify-content:center!important;
    gap:0!important;
    border-radius:11px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .nd-v148f-user-copy{
    display:none!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .nd-v148f-user-avatar{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    flex-basis:32px!important;
    border-radius:10px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-bottom-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:4px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-mini-action,
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-logout{
    min-height:31px!important;
    height:31px!important;
    padding:0!important;
    gap:0!important;
    border-radius:9px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-mini-action > span:not(.nd-v148f-action-icon),
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-logout > span:not(.nd-v148f-action-icon){
    display:none!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-bottom-actions > .bg-sidebar-owner-lock-form,
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-bottom-actions > .bg-sidebar-owner-lock{
    position:static!important;
    top:auto!important;
    right:auto!important;
    width:auto!important;
    margin:0!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-owner-lock-form{
    min-width:0!important;
    display:flex!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-owner-lock{
    width:100%!important;
    min-width:0!important;
    height:31px!important;
    min-height:31px!important;
    border-radius:9px!important;
}

html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-sidebar-owner-lock svg{
    width:15px!important;
    height:15px!important;
}

/* Give the enlarged workspace a little more breathing room without changing page layout. */
html.nd-v152-sidebar-collapsed[data-bg-theme="novidesk-premium"] .bg-desktop-owner-stage > main.container{
    max-width:none!important;
}

/* Respect users who prefer less motion. */
@media (prefers-reduced-motion:reduce){
    html[data-bg-theme="novidesk-premium"] .bg-desktop-owner-shell,
    html[data-bg-theme="novidesk-premium"] .bg-desktop-sidebar,
    html[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle,
    html[data-bg-theme="novidesk-premium"] .nd-v152-sidebar-toggle svg,
    html[data-bg-theme="novidesk-premium"] .bg-sidebar-brand-copy,
    html[data-bg-theme="novidesk-premium"] .bg-sidebar-company,
    html[data-bg-theme="novidesk-premium"] .nd-v148f-sidebar-group,
    html[data-bg-theme="novidesk-premium"] .bg-sidebar-link-text,
    html[data-bg-theme="novidesk-premium"] .nd-v148f-user-copy{
        transition:none!important;
    }
}

}

/* Mobile navigation is deliberately untouched. */
@media (max-width:850px){
    .nd-v152-sidebar-toggle{
        display:none!important;
    }
}
