.sidebar{
    width:260px;
    height:calc(100dvh - 66px);
    position:fixed;
    left:0;
    top:66px;
    background:#7B1113;
    color:#fff;
    overflow-y:auto;
    overscroll-behavior:contain;
    transition:.3s;
    z-index:1030;
}

.sidebar.is-collapsed{
    transform:translateX(-100%);
}

.sidebar-header{
    text-align:center;
    padding:20px;
    border-bottom:1px solid rgba(255,255,255,.15);
}

.sidebar-logo{
    width:70px;
    height:70px;
    object-fit:contain;
}

.sidebar-menu{
    list-style:none;
    margin:0;
    padding:15px 0;
}

.sidebar-menu li{
    margin:5px 0;
}

.sidebar-menu a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 20px;
    color:#fff;
    text-decoration:none;
    transition:.25s;
}

.sidebar-menu a:hover{
    background:#9c1b1e;
}

.sidebar-menu a.active{
    background:#D4AF37;
    color:#000;
    font-weight:600;
}

.main-content{
    margin-left:260px;
    margin-top:86px;
    padding:25px;
    transition:margin-left .3s ease;
}

.main-content.sidebar-collapsed{
    margin-left:0;
}

.sidebar-backdrop{
    display:none;
}

@media(max-width:768px){
    .sidebar{
        width:min(86vw, 310px);
        height:calc(100dvh - 58px);
        top:58px;
        transform:translateX(-100%);
        box-shadow:4px 0 16px rgba(0,0,0,.2);
        z-index:1050;
    }

    .sidebar.show{
        transform:translateX(0);
    }

    .sidebar.is-collapsed{
        transform:translateX(-100%);
    }

    .main-content,
    .main-content.sidebar-collapsed{
        margin-left:0;
        margin-top:72px;
        padding:14px;
    }

    .sidebar-header{
        padding:14px;
    }

    .sidebar-logo{
        width:52px;
        height:52px;
    }

    .sidebar-menu{
        padding:8px 0;
    }

    .sidebar-menu a{
        padding:12px 18px;
    }

    .sidebar-backdrop.is-visible{
        position:fixed;
        inset:58px 0 0;
        display:block;
        z-index:1045;
        background:rgba(0,0,0,.38);
    }

    body.sidebar-open{
        overflow:hidden;
    }
}
