.center-wrapper {
        min-height: 100vh;
        display: flex;
        justify-content: center; /* Horizontal center */
        align-items: center; /* Vertical center */
    }
    .main-container {
        max-width: 1100px; /* Width limit */
        width: 100%;
    }
    .side {
        background: #fff;
        border-radius: 10px;
        padding: 20px 0px;
        box-shadow: 0 6px 16px rgba(0,24,92,0.08);
    }
    .side .nav-link {
        padding: 0.6rem 1rem;
        border-radius: 8px;
        color: #183b56;
        font-weight: 500;
        transition: background 0.15s;
    }
    .side .nav-link.active,
    .side .nav-link:hover {
        background: #e3edef;
        color: #125382;
    }
    .side .badge {
        font-size: 0.95em;
        margin-top: 12px;
    }
    .side .btn {
        margin-top: 0.8rem;
        width: 100%;
    }
    .unit-card {
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 2px 12px #dde4f0;
        margin-bottom: 1.6rem;
        transition: transform 0.08s;
    }
    .unit-card:hover {
        transform: translateY(-2px) scale(1.01);
    }
    .section-title {
        font-weight: 700;
        font-size: 1.15rem;
        margin-bottom: 0.5rem;
        color: #053366;
        display: flex;
        align-items: center;
        gap: 8px;
        cursor: pointer;
    }
    .unit-circle {
        border: 2px solid #b5c6e0;
        display: inline-block;
        width: 27px;
        height: 27px;
        border-radius: 50%;
        line-height: 25px;
        text-align: center;
        font-size: 14px;
        background: #f7fafd;
        transition: background 0.2s;
    }
    .unit-circle.mastery {
        background: #acd6ff;
    }
    .unit-progress-bar {
        height: 7px;
        border-radius: 5px;
        background: #e0e7ef;
        overflow: hidden;
        margin-top: 9px;
        margin-bottom: 1.7rem;
    }
    .progress-fill {
        background: #34a1eb;
        height: 100%;
        width: 65%;
        border-radius: 5px;
        transition: width 0.35s;
    }
    .main {
      padding: 20px 0px;
    }
    @media (max-width: 991px) {
        .center-wrapper {
            align-items: flex-start; /* Mobile pe top se start ho */
            padding: 20px 0;
        }
        .side {
            min-width: 100%;
            margin-bottom: 1.2rem;
        }
    }
    @media (max-width: 575px) {
        .section-title {
            font-size: 1.03rem;
        }
    }