body{
    background: transparent;
    font-family: "Times New Roman", Times, serif;
}

/* ===================================
Accordion
=================================== */

.custom-accordion-btn{
    background: linear-gradient(to right,#004aad,#00acc1);
    color: white !important;
    font-size: 18px;   /* reduced for professional look */
    font-weight: 600;
    padding: 16px 20px;
    border-radius: 12px !important;
    line-height: 1.4;
}

.custom-accordion-btn:not(.collapsed){
    background: linear-gradient(to right,#004aad,#00acc1);
    color: white !important;
}

.custom-accordion-btn:focus{
    box-shadow: none;
}

.accordion-button::after{
    filter: brightness(0) invert(1);
}

/* ===================================
Class Box
=================================== */

.class-box{
    background: linear-gradient(135deg,#a1c4fd,#c2e9fb);
    border-radius: 15px;
    padding: 20px;
    min-height: 380px;
}

.class-title{
    text-align: center;
    color: white;
    font-size: 24px;   /* balanced heading size */
    font-weight: 700;
    margin-bottom: 20px;
    letter-spacing: 0.5px;
}

/* ===================================
Student Card
=================================== */

.student-card{
    background: white;
    border-radius: 15px;
    padding: 15px;
    text-align: center;
    box-shadow: 0px 2px 10px rgba(0,0,0,0.1);
}

.student-img{
    width: 140px;
    height: 140px;
    object-fit: cover;
    border-radius: 10px;
}

.student-name{
    margin-top: 12px;
    font-size: 17px;   /* cleaner professional size */
    font-weight: 600;
    color: #003366;
    line-height: 1.4;
}

.position-badge{
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 14px;   /* professional badge size */
    font-weight: 500;
}