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

.student-sidebar{

    width:290px;
    min-width:290px;
    height:100vh;

    background:#ffffff;

    border-right:1px solid #e8eef8;

    display:flex;
    flex-direction:column;

    position:fixed;
    left:0;
    top:0;

    overflow-x:hidden;
    overflow-y:auto;

    transition:width .35s ease,min-width .35s ease;

    z-index:1000;

}

.student-sidebar.collapsed{

    width:90px;

    min-width:90px;

}

/*==========================================
  BRAND
==========================================*/

.sidebar-brand{

    padding:30px 20px;

    transition:all .35s ease;

}

.brand-link{

    display:flex;

    align-items:center;

    gap:15px;

    text-decoration:none;

}

.brand-link img{

    width:58px;

    height:58px;

    border-radius:14px;

    object-fit:cover;

    flex-shrink:0;

}

.brand-text{

    transition:.3s;

    white-space:nowrap;

}

.brand-text h2{

    font-size:24px;

    color:#1d3557;

    margin-bottom:3px;

    font-weight:700;

}

.brand-text span{

    color:#6c757d;

    font-size:13px;

}

.student-sidebar.collapsed .brand-text{

    opacity:0;

    width:0;

    overflow:hidden;

}

/*==========================================
  SECTION
==========================================*/

.sidebar-section{

    padding:28px 20px 10px;

}

.sidebar-title{

    color:#96a4b9;

    font-size:12px;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:18px;

}

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

.sidebar-menu{

    list-style:none;

}

.sidebar-menu li{

    margin-bottom:8px;

}

.sidebar-menu a{

    display:flex;

    align-items:center;

    gap:15px;

    text-decoration:none;

    padding:14px 18px;

    border-radius:14px;

    color:#3b4b66;

    font-weight:500;

    transition:.30s;

}

.sidebar-menu a i{

    width:22px;

    font-size:18px;

    text-align:center;

}

/* Hover */

.sidebar-menu a:hover{

    background:#eef5ff;

    color:#2563eb;

}

/* Active */

.sidebar-menu a.active{

    background:linear-gradient(135deg,#2563eb,#7c3aed);

    color:#ffffff;

    box-shadow:0 12px 25px rgba(37,99,235,.18);

}

/*==========================================
  UPGRADE CARD
==========================================*/

.upgrade-card{

    margin:25px 20px 30px;

    padding:25px;

    border-radius:20px;

    background:linear-gradient(135deg,#2563eb,#7c3aed);

    color:#ffffff;

    text-align:center;

    margin-top:auto;

}

.upgrade-icon{

    width:60px;

    height:60px;

    margin:auto;

    margin-bottom:18px;

    border-radius:50%;

    background:rgba(255,255,255,.18);

    display:flex;

    justify-content:center;

    align-items:center;

}

.upgrade-icon i{

    font-size:24px;

}

.upgrade-card h3{

    margin-bottom:12px;

    font-size:22px;

}

.upgrade-card p{

    font-size:14px;

    line-height:1.7;

    opacity:.92;

    margin-bottom:22px;

}

.upgrade-btn{

    display:inline-block;

    padding:12px 28px;

    border-radius:30px;

    text-decoration:none;

    background:#ffffff;

    color:#2563eb;

    font-weight:700;

    transition:.30s;

}

.upgrade-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 12px 25px rgba(0,0,0,.15);

}

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

.student-sidebar::-webkit-scrollbar{

    width:6px;

}

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

    background:#d6dce8;

    border-radius:30px;

}

.sidebar-title{

    padding:0 25px;

    margin:25px 0 10px;

    font-size:.78rem;

    font-weight:700;

    letter-spacing:2px;

    color:#8b95a7;

    transition:.3s;

}

.student-sidebar.collapsed .sidebar-title{

    opacity:0;

    height:0;

    margin:0;

    overflow:hidden;

}

.sidebar-menu{

    list-style:none;

    padding:0;

    margin:0;

}

.sidebar-menu li{

    margin:8px 15px;

}

.sidebar-menu a{

    display:flex;

    align-items:center;

    gap:18px;

    padding:15px 18px;

    border-radius:14px;

    color:#20304f;

    text-decoration:none;

    font-weight:600;

    transition:.25s;

}

.sidebar-menu a:hover{

    background:#edf4ff;

}

.sidebar-menu a.active{

    background:linear-gradient(135deg,#2563eb,#7c3aed);

    color:#ffffff;

}

.sidebar-menu i{

    width:24px;

    text-align:center;

    font-size:18px;

    flex-shrink:0;

}

.sidebar-menu span{

    transition:.3s;

    white-space:nowrap;

}

.student-sidebar.collapsed .sidebar-menu span{

    opacity:0;

    width:0;

    overflow:hidden;

}

.student-sidebar.collapsed .sidebar-menu a{

    justify-content:center;

}

.student-sidebar.collapsed .upgrade-text,

.student-sidebar.collapsed .upgrade-btn{

    display:none;

}

.student-sidebar.collapsed .upgrade-card{

    padding:18px;

    text-align:center;

}

.student-sidebar.collapsed .upgrade-icon{

    margin:auto;

}

.dashboard-content{

    margin-left:290px;

    transition:margin-left .35s ease;

}

.dashboard-content.expanded{

    margin-left:90px;

}