/* IMMFIMA – globale permanente Seitenleiste V2 */
:root{
    --immfima-global-sidebar-collapsed:72px;
    --immfima-global-sidebar-expanded:250px;
    --immfima-global-sidebar-gap:14px;
}

body.global-sidebar-active{
    padding-left:calc(var(--immfima-global-sidebar-collapsed) + 28px);
    transition:padding-left .18s ease;
}

body.global-sidebar-active.global-sidebar-expanded{
    padding-left:calc(var(--immfima-global-sidebar-expanded) + 28px);
}

.global-management-sidebar{
    position:fixed;
    z-index:1200;
    left:14px;
    top:14px;
    bottom:14px;
    width:var(--immfima-global-sidebar-collapsed);
    display:flex;
    flex-direction:column;
    overflow:visible;
    border-radius:14px 0 0 14px;
    background:#103d70;
    color:#fff;
    box-shadow:0 16px 36px rgba(9,31,61,.18);
    transition:width .18s ease;
}

.global-management-sidebar.is-expanded{
    width:var(--immfima-global-sidebar-expanded);
}

.global-sidebar-head{
    position:relative;
    display:flex;
    align-items:center;
    min-height:78px;
    padding:12px 14px;
    border-bottom:1px solid rgba(255,255,255,.13);
    gap:12px;
}

.global-sidebar-mark{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:11px;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(255,255,255,.08);
    font-weight:800;
    letter-spacing:.02em;
}

.global-sidebar-brand{
    display:none;
    min-width:0;
    line-height:1.1;
}

.global-sidebar-brand b,
.global-sidebar-brand small{
    display:block;
    white-space:nowrap;
}

.global-sidebar-brand small{
    margin-top:4px;
    opacity:.7;
    font-size:.72rem;
}

.global-management-sidebar.is-expanded .global-sidebar-brand{
    display:block;
}

.global-sidebar-toggle{
    position:absolute;
    right:-15px;
    top:29px;
    width:30px;
    height:30px;
    padding:0;
    border:0;
    border-radius:50%;
    background:#fff;
    color:#103d70;
    box-shadow:0 3px 10px rgba(14,40,72,.2);
    cursor:pointer;
    font-size:1.45rem;
    line-height:30px;
    font-weight:700;
}

.global-sidebar-nav{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    align-items:stretch;
    gap:6px;
    padding:14px 10px 18px;
    overflow-y:auto;
    overflow-x:hidden;
    scrollbar-width:thin;
}

.global-sidebar-nav a{
    position:relative;
    min-height:44px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:0 13px;
    border-radius:9px;
    color:#fff !important;
    text-decoration:none !important;
    opacity:.92;
    transition:background .15s ease, opacity .15s ease;
}

.global-sidebar-nav a:hover{
    opacity:1;
    background:rgba(255,255,255,.10);
}

.global-sidebar-nav a.active{
    opacity:1;
    background:rgba(255,255,255,.14);
    box-shadow:inset 3px 0 0 #f0b400;
}

.global-sidebar-nav a > span:first-child{
    width:26px;
    min-width:26px;
    text-align:center;
    font-weight:800;
    font-size:.92rem;
}

.global-sidebar-nav a > b{
    display:none;
    white-space:nowrap;
    font-size:.82rem;
}

.global-management-sidebar.is-expanded .global-sidebar-nav a > b{
    display:block;
}

.global-sidebar-nav .sidebar-abc{
    font-size:.72rem !important;
    letter-spacing:-.02em;
}

/* Die alte Dashboard-Sidebar wird durch die globale Sidebar ersetzt. */
body.global-sidebar-active .management-shell > .management-sidebar{
    display:none !important;
}

body.global-sidebar-active .management-shell{
    grid-template-columns:minmax(0,1fr) !important;
}

body.global-sidebar-active .management-main{
    min-width:0;
}

/* Das ältere V1-Skript ist dann nicht mehr sichtbar/relevant. */
body.global-sidebar-active .sidebar-toggle[data-sidebar-toggle]{
    display:none !important;
}

@media(max-width:900px){
    body.global-sidebar-active,
    body.global-sidebar-active.global-sidebar-expanded{
        padding-left:82px;
    }

    .global-management-sidebar{
        left:6px;
        top:8px;
        bottom:8px;
        width:62px;
    }

    .global-management-sidebar.is-expanded{
        width:min(250px, calc(100vw - 20px));
    }

    .global-sidebar-nav{
        padding-left:7px;
        padding-right:7px;
    }

    .global-sidebar-nav a{
        padding-left:10px;
        padding-right:10px;
    }
}
