:root{--sidebar-width:260px;--sidebar-collapsed:72px;--sidebar-bg:#ffffff;--sidebar-border:#e9ecef;--sidebar-active:#DE6262}
.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:1040;transform:translateX(0);transition:width .25s ease,transform .25s ease,box-shadow .25s ease;box-shadow:0 0 0 rgba(0,0,0,0)}
.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1rem .75rem;border-bottom:1px solid var(--sidebar-border)}
.sidebar-brand{display:flex;align-items:center;gap:.5rem;color:#111;text-decoration:none;font-weight:600}
.sidebar-brand i{color:var(--sidebar-active)}
.sidebar-nav{padding:.5rem;overflow-y:auto;height:calc(100vh - 56px - 56px)}
.sidebar-footer{border-top:1px solid var(--sidebar-border);padding:.5rem}
.nav-link{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;color:#495057;border-radius:.5rem;transition:all .2s ease}
.nav-link i{width:1.25rem;text-align:center;font-size:1rem}
.nav-link:hover{background:#f8f9fa;color:#111;transform:translateX(2px)}
.nav-link.active{color:var(--sidebar-active);background:linear-gradient(135deg, rgba(222,98,98,.12), rgba(222,98,98,.06));font-weight:600}
.sidebar .nav .nav-item+.nav-item{margin-top:.125rem}
.sidebar.collapsed,body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}
.sidebar.collapsed .nav-link span,body.sidebar-collapsed .nav-link span,.sidebar.collapsed .sidebar-brand .brand-text,body.sidebar-collapsed .sidebar-brand .brand-text{opacity:0;width:0;overflow:hidden}
@media (min-width:992px){.app-main{margin-left:var(--sidebar-width);transition:margin-left .25s ease}body.sidebar-collapsed .app-main{margin-left:var(--sidebar-collapsed)}}
@media (max-width:991.98px){.sidebar{transform:translateX(-100%);box-shadow:none}body.sidebar-open .sidebar{transform:translateX(0);box-shadow:0 0 0 9999px rgba(0,0,0,.35)}}
.sidebar-pin{position:fixed;left:calc(var(--sidebar-width) + 8px);top:12px;z-index:1035;transition:left .25s ease,transform .2s ease}
body.sidebar-collapsed .sidebar-pin{left:calc(var(--sidebar-collapsed) + 8px)}
.sidebar-pin:hover{transform:translateX(2px)}
@media (max-width:991.98px){.sidebar-pin{display:none!important}}