.payroll-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:25px;
}


.payroll-header h1 {
    margin:0;
    font-size:32px;
}


.payroll-header p {
    color:#64748b;
}


.payroll-period-badge {
    background:#fef3c7;
    color:#92400e;
    padding:12px 18px;
    border-radius:14px;
    font-weight:600;
}



.payroll-cards {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin-bottom:30px;
}


.payroll-card {

    background:white;
    border-radius:18px;
    padding:22px;

    box-shadow:
    0 10px 25px rgba(15,23,42,.05);
}


.payroll-card span {

    color:#64748b;
    font-size:14px;

}


.payroll-card strong {

    display:block;
    margin-top:12px;
    font-size:28px;

}



.payroll-table-box {

    background:white;
    border-radius:20px;
    padding:25px;

}


.payroll-row {

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:18px 0;

    border-bottom:1px solid #e5e7eb;

}


.employee-main {

    display:flex;
    gap:15px;
    align-items:center;

}


.avatar {

    width:45px;
    height:45px;

    border-radius:50%;

    background:#2563eb;
    color:white;

    display:flex;
    align-items:center;
    justify-content:center;

    font-weight:700;

}



.employee-details {

    display:flex;
    gap:20px;

    color:#64748b;
    font-size:14px;

}


.employee-total {

    text-align:right;

}


.employee-total strong {

    display:block;

    font-size:22px;

}


.status-paid {

    display:inline-block;

    margin-top:6px;

    background:#dcfce7;

    color:#166534;

    padding:4px 10px;

    border-radius:20px;

    font-size:12px;

}


.employee-accordion {

    border-bottom:1px solid #e5e7eb;
    padding:16px 0;

}


.employee-summary {

    display:flex;
    justify-content:space-between;
    align-items:center;

    cursor:pointer;

    list-style:none;

}


.employee-summary::-webkit-details-marker {
    display:none;
}


.employee-name h3 {

    margin:0;
    font-size:18px;

}


.employee-name span {

    color:#94a3b8;
    font-size:14px;

}



.employee-total {

    text-align:right;

}


.employee-total strong {

    font-size:22px;

}



.employee-breakdown {

    margin-top:20px;

    background:#f8fafc;

    border-radius:16px;

    padding:18px;

}



.breakdown-row,
.breakdown-total {

    display:flex;
    justify-content:space-between;

    padding:10px 0;

}



.breakdown-row span {

    color:#64748b;

}



.breakdown-total {

    margin-top:10px;

    border-top:1px solid #e2e8f0;

    font-size:18px;

}



.breakdown-total strong {

    font-size:22px;

}



.penalty strong {

    color:#ef4444;

}



.payroll-section-header {

    display:flex;
    justify-content:space-between;
    align-items:center;

}


.payroll-action-button {

    background:#111827;

    color:white;

    border:none;

    padding:12px 22px;

    border-radius:12px;

    font-size:14px;

    font-weight:600;

    cursor:pointer;

}


.payroll-action-button:hover {

    opacity:0.85;

}

