/* ==========================================================
   YouAndYou TV v2.0 RC2
   Sidebar CSS
   Production Ready
========================================================== */


/* ===========================
   SIDEBAR
=========================== */

.sidebar{

    position:fixed;

    top:0;

    left:0;

    width:var(--sidebar-width);

    height:100vh;

    background:var(--bg2);

    border-right:1px solid var(--border);

    overflow-y:auto;

    overflow-x:hidden;

    z-index:1100;

    transition:all .25s ease;

}


/* ===========================
   HEADER
=========================== */

.sidebar-header{

    height:var(--header-height);

    display:flex;

    align-items:center;

    justify-content:center;

    padding:0 20px;

    border-bottom:1px solid var(--border);

}


.sidebar-logo{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:20px;

    font-weight:700;

    color:#fff;

}


.sidebar-logo img{

    width:42px;

    height:42px;

    border-radius:10px;

    object-fit:cover;

}


/* ===========================
   MENU
=========================== */

.sidebar-menu{

    padding:18px 10px 30px;

}


.sidebar-menu hr{

    border:none;

    border-top:1px solid var(--border);

    margin:16px 8px;

}


/* ===========================
   MENU LINK
=========================== */

.sidebar-menu a{

    display:flex;

    align-items:center;

    gap:16px;

    height:48px;

    padding:0 14px;

    margin-bottom:4px;

    border-radius:12px;

    color:var(--text-light);

    transition:var(--transition);

}


.sidebar-menu a:hover{

    background:var(--card-hover);

    color:#fff;

}


.sidebar-menu a.active{

    background:var(--primary);

    color:#fff;

}


.sidebar-menu .icon{

    width:26px;

    text-align:center;

    font-size:20px;

    flex-shrink:0;

}


.sidebar-menu .label{

    white-space:nowrap;

    overflow:hidden;

    text-overflow:ellipsis;

    font-size:15px;

    font-weight:500;

}


/* ===========================
   MINI SIDEBAR
=========================== */

.sidebar.mini{

    width:var(--sidebar-mini);

}


.sidebar.mini .sidebar-logo span{

    display:none;

}


.sidebar.mini .label{

    display:none;

}


.sidebar.mini .sidebar-menu a{

    justify-content:center;

    padding:0;

}


.sidebar.mini .icon{

    margin:0;

}


/* ===========================
   HOVER EXPAND
=========================== */

@media (min-width:993px){

.sidebar.mini:hover{

    width:var(--sidebar-width);

}

.sidebar.mini:hover .sidebar-logo span{

    display:block;

}

.sidebar.mini:hover .label{

    display:block;

}

.sidebar.mini:hover .sidebar-menu a{

    justify-content:flex-start;

    padding:0 14px;

}

}


/* ===========================
   OVERLAY
=========================== */

.sidebar-overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.55);

    opacity:0;

    visibility:hidden;

    transition:.25s;

    z-index:1090;

}


.sidebar-overlay.show{

    opacity:1;

    visibility:visible;

}


/* ===========================
   TABLET
=========================== */

@media (max-width:992px){

.sidebar{

    transform:translateX(-100%);

    width:280px;

}

.sidebar.show{

    transform:translateX(0);

}

}


/* ===========================
   MOBILE
=========================== */

@media (max-width:768px){

.sidebar{

    width:280px;

}

.sidebar-menu{

    padding-top:14px;

}

.sidebar-menu a{

    height:50px;

    font-size:15px;

}

}


/* ===========================
   SMALL MOBILE
=========================== */

@media (max-width:480px){

.sidebar{

    width:260px;

}

.sidebar-logo{

    font-size:18px;

}

.sidebar-logo img{

    width:36px;

    height:36px;

}

}


/* ===========================
   SCROLLBAR
=========================== */

.sidebar::-webkit-scrollbar{

    width:6px;

}

.sidebar::-webkit-scrollbar-thumb{

    background:#444;

    border-radius:999px;

}

.sidebar::-webkit-scrollbar-thumb:hover{

    background:#666;

}


.sidebar.show { ... }
.sidebar.collapsed { ... }
.sidebar-overlay.show { ... }
body.sidebar-open { overflow: hidden; }
