/* =========================
   SIDEBAR
========================= */

.sidebar{
    position: fixed;
    top: 75px;
    left: 0;
    width: 280px;
    height: calc(100vh - 75px);
    background: #166534;
    padding: 35px 18px;
}

/* Remove bullets */

.sidebar ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Each Menu Item */

.sidebar li{
    display: flex;
    align-items: center;
    gap: 18px;

    color: #FFFFFF;

    font-family: 'Poppins', sans-serif;
    font-size: 17px;
    font-weight: 500;

    padding: 18px 20px;

    margin-bottom: 18px;

    border-radius: 15px;

    cursor: pointer;

    transition: all .3s ease;
}

/* Icons */

.sidebar li i{
    font-size: 20px;
    width: 25px;
    text-align: center;
}

/* Active Item */

.sidebar li.active{
    background: white;
    color: #166534;
    font-weight: 600;
}

/* Hover */

.sidebar li:hover:not(.active){
    background: rgba(255,255,255,.15);
    transform: translateX(6px);
}
/* =========================================
   DESKTOP SIDEBAR
   ========================================= */

/*
   Keep your existing desktop sidebar
   styling above this section if you already
   have one.
*/


/* =========================================
   MOBILE MENU BUTTON
   ========================================= */

.menu-toggle {
    display: none;
}


/* =========================================
   MOBILE RESPONSIVE SIDEBAR
   ========================================= */

@media (max-width: 768px) {

    /* -----------------------------
       HAMBURGER BUTTON
       ----------------------------- */

    .menu-toggle {

        display: flex;

        position: fixed;

        top: 15px;
        left: 15px;

        width: 44px;
        height: 44px;

        align-items: center;
        justify-content: center;

        border: none;

        border-radius: 10px;

        cursor: pointer;

        z-index: 2000;

        font-size: 20px;

        box-shadow:
            0 5px 15px rgba(0, 0, 0, 0.15);

    }


    /* -----------------------------
       SIDEBAR
       ----------------------------- */

    .sidebar {

        position: fixed;

        top: 0;
        left: 0;

        width: min(280px, 82vw);

        height: 100vh;

        z-index: 1500;

        overflow-y: auto;

        transform: translateX(-100%);

        transition:
            transform 0.3s ease;

    }


    /* -----------------------------
       OPEN SIDEBAR
       ----------------------------- */

    .sidebar.active {

        transform: translateX(0);

    }


    /* -----------------------------
       MAIN CONTENT
       ----------------------------- */

    .chapter-main {

        width: 100%;

        max-width: 100%;

        margin-left: 0 !important;

        padding-left: 20px;
        padding-right: 20px;

        box-sizing: border-box;

    }


    /* -----------------------------
       NAVBAR
       ----------------------------- */

    .navbar {

        width: 100%;

        box-sizing: border-box;

    }


    /* -----------------------------
       CHAPTER HEADER
       ----------------------------- */

    .chapter-header {

        width: 100%;

        box-sizing: border-box;

        margin-top: 65px;

    }


    /* -----------------------------
       CARDS
       ----------------------------- */

    .slo-card,
    .summary-card,
    .mcq-card {

        width: 100%;

        max-width: 100%;

        box-sizing: border-box;

    }


    /* -----------------------------
       GRIDS
       ----------------------------- */

    .slo-grid,
    .summary-grid,
    .quiz-container {

        grid-template-columns: 1fr !important;

        width: 100%;

    }


    /* -----------------------------
       LONG TEXT
       ----------------------------- */

    .slo-card p,
    .slo-card li,
    .summary-card p,
    .summary-card li,
    .mcq-card p {

        overflow-wrap: break-word;

        word-wrap: break-word;

    }


    /* -----------------------------
       BUTTONS
       ----------------------------- */

    .slo-card button,
    .summary-card button,
    .mcq-card button {

        max-width: 100%;

    }

}


/* =========================================
   SMALL PHONES
   ========================================= */

@media (max-width: 480px) {

    .chapter-main {

        padding-left: 15px;
        padding-right: 15px;

    }


    .chapter-header {

        margin-top: 65px;

    }


    .slo-card,
    .summary-card,
    .mcq-card {

        padding: 18px !important;

        border-radius: 14px;

    }


    .chapter-header h1 {

        font-size: 25px;

        line-height: 1.25;

    }


    .chapter-header h3 {

        font-size: 17px;

    }


    .chapter-header p {

        font-size: 14px;

        line-height: 1.7;

    }


    .slo-card h3,
    .summary-card h3,
    .mcq-card h3 {

        font-size: 18px;

        line-height: 1.4;

    }


    .menu-toggle {

        width: 42px;
        height: 42px;

        top: 12px;
        left: 12px;

    }

}


/* =========================================
   VERY SMALL PHONES
   ========================================= */

@media (max-width: 360px) {

    .chapter-main {

        padding-left: 12px;
        padding-right: 12px;

    }


    .chapter-header h1 {

        font-size: 22px;

    }


    .slo-card,
    .summary-card,
    .mcq-card {

        padding: 15px !important;

    }

}