.profile-section{

    padding:40px 20px;

    background:#f5f7fb;

}

.profile-dashboard{

    max-width:1200px;

    margin:auto;

}

/* HEADER */

.profile-header{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    margin-bottom:30px;

}

.profile-banner{

    height:80px;

    background:linear-gradient(
    135deg,
    #2563eb,
    #4f46e5
    );

}

.profile-info{

    text-align:center;

    padding:0 20px 15px;

    margin-top:-45px;

}

.profile-info img{

    width:90px;

    height:90px;

    border-radius:50%;

    border:6px solid white;

    object-fit:cover;

}

.profile-info h1{

    margin-top:10px;

    margin-bottom:5px;

    font-size:28px;

    color:#0f172a;

}

.profile-info p{

    color:#64748b;

    font-size:20px;

    margin-top:10px;

    margin:5px 0;

}

.member-badge{

    display:inline-block;

    margin-top:20px;

    padding:12px 24px;

    background:#eef4ff;

    color:#2563eb;

    border-radius:50px;

    font-weight:600;

}

/* STATS */

.stats-row{

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    gap:20px;

    margin-bottom:30px;

}

.stats-card{

    background:white;

    border-radius:20px;

    padding:25px;

    display:flex;

    gap:20px;

    align-items:center;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.stats-icon{

    font-size:34px;

}

.stats-content h2{

    margin:0;

    color:#2563eb;

}

.stats-content p{

    margin:6px 0;

    font-weight:600;

}

.stats-content span{

    color:#64748b;

    font-size:14px;

}

/* DASHBOARD GRID */

.dashboard-grid{

    display:grid;

    grid-template-columns:
    1fr 1fr;

    gap:25px;

    margin-bottom:30px;

}

.dashboard-card{

    background:white;

    border-radius:20px;

    padding:25px;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.dashboard-card h2{

    margin-bottom:25px;

}

/* ACTIONS */

.action-list{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.action-item{

    background:#f8fafc;

    padding:18px 20px;

    border-radius:14px;

    text-decoration:none;

    color:#0f172a;

    font-weight:600;

    transition:.3s;

}

.action-item:hover{

    background:#eef4ff;

    transform:translateY(-2px);

}

/* RECENT TESTS */

.test-item{

    display:flex;

    justify-content:space-between;

    padding:16px 0;

    border-bottom:1px solid #e5e7eb;

}

.test-item:last-child{

    border-bottom:none;

}

/* BOTTOM */

.bottom-cards{

    display:grid;

    grid-template-columns:
    1fr 1fr 1fr;

    gap:20px;

}

.bottom-card{

    background:white;

    border-radius:20px;

    padding:25px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.bottom-card h3{

    margin-bottom:10px;

}

.bottom-card p{

    font-size:22px;

    font-weight:700;

    color:#2563eb;

}

#logoutBtn{

    width:100%;

    background:#2563eb;

    color:white;

    border:none;

    padding:16px;

    border-radius:12px;

    cursor:pointer;

    font-weight:600;

    font-size:16px;

}

#logoutBtn:hover{

    opacity:.9;

}

/* =========================================
   PROGRESS CARD
========================================= */

.progress-card{

    background:#fff;

    border-radius:20px;

    padding:25px;

    margin:25px 0;

    box-shadow:
    0 10px 25px rgba(0,0,0,.08);

}

.progress-card h2{

    margin-bottom:15px;

}

.progress-bar{

    width:100%;

    height:14px;

    background:#e5e7eb;

    border-radius:20px;

    overflow:hidden;

}

.progress-fill{

    width:0%;

    height:100%;

    background:#2563eb;

    transition:.4s;

}

.progress-card p{

    margin-top:10px;

    font-weight:600;

}

.progress-sections{

    margin-top:20px;

    display:grid;

    grid-template-columns:
    repeat(2,1fr);

    gap:12px;

}

.certificate-btn{

display:inline-block;

background:#2563eb;

color:white;

padding:15px 30px;

border-radius:12px;

text-decoration:none;

font-weight:600;

margin:20px 0;

}

.certificate-btn:hover{

opacity:.9;

}

/* =========================================
   BADGES
========================================= */

.badges-card{

background:#fff;

padding:25px;

border-radius:20px;

margin:25px 0;

box-shadow:
0 10px 25px rgba(0,0,0,.08);

}

.badges-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:15px;

margin-top:20px;

}

.badge-item{

padding:15px;

text-align:center;

border-radius:12px;

background:#e5e7eb;

color:#6b7280;

font-weight:600;

}

.badge-earned{

background:#dcfce7;

color:#15803d;

}

@media(max-width:768px){

.badges-grid{

grid-template-columns:
1fr 1fr;

}

}

@media(max-width:768px){

.progress-sections{

    grid-template-columns:1fr;

}

}

/* MOBILE */

@media(max-width:900px){

    .stats-row{

        grid-template-columns:
        repeat(2,1fr);

    }

    .dashboard-grid{

        grid-template-columns:
        1fr;

    }

    .bottom-cards{

        grid-template-columns:
        1fr;

    }

}

@media(max-width:600px){

    .stats-row{

        grid-template-columns:
        1fr;

    }

    .profile-info h1{

        font-size:30px;

    }

    .profile-info p{

        font-size:16px;

    }

}
