.payment-summary { background: #f0f5fc; border: 1px solid #dce6f4; border-radius: .75rem; padding: 1rem; overflow-wrap: anywhere; }
.payment-dropzone { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: .4rem; padding: 1.4rem .75rem; border: 2px dashed #b7cbe7; border-radius: .75rem; background: #f8faff; cursor: pointer; text-align: center; transition: background .15s, border-color .15s; }
.payment-dropzone:hover, .payment-dropzone.dragover { background: #eaf2ff; border-color: #0d6efd; }
.payment-dropzone:focus-within { outline: 3px solid #9ec5fe; }
.payment-receipt { display: block; width: 100%; max-height: 55vh; object-fit: contain; background: #f8f9fa; }
#paymentModal .modal-body { overflow-wrap: anywhere; }
#paymentModal .modal-footer { background: #fff; }
#paymentModal .btn { min-height: 44px; }
.payment-history-item { border: 1px solid #dee2e6; border-radius: .5rem; padding: .8rem; margin-bottom: .75rem; }
#payment-options { overflow-wrap: anywhere; }
#payment-options .flex-grow-1 { min-width: 0; }
.participant-toolbar, .participant-counts { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.participant-counts { column-gap: 1rem; }
.participant-counts strong { color: #343a40; }
.participants-table { width: 100%; table-layout: fixed; font-size: .875rem; }
.participants-table th, .participants-table td { padding: .75rem .5rem; overflow-wrap: anywhere; }
.participants-table th:first-child { width: 2rem; }
.participants-table th:nth-child(2) { width: 9rem; }
.participants-table th:nth-child(6) { width: 8rem; }
.participants-table th:nth-child(7) { width: 10rem; }
.participants-table .participant-actions-heading { width: 12rem; }
.participants-table .badge { white-space: normal; line-height: 1.4; text-align: left; }
.participants-table tbody tr { background: #fff; }
.participant-actions { display: grid; gap: .5rem; }
.participant-actions form { margin: 0; }
.participant-primary-action, .participant-primary-action > .btn { width: 100%; }
.participant-secondary-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.participant-actions .btn { min-height: 38px; display: flex; align-items: center; justify-content: center; white-space: nowrap; }
.participant-actions .dropdown-item { min-height: 44px; }
.participant-actions .dropdown-menu { min-width: 13rem; }
@media (max-width: 1399.98px) {
    .participants-table, .participants-table tbody { display: block; width: 100%; }
    .participants-table thead { display: none; }
    .participants-table tbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; }
    .participants-table .participant-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .875rem 1rem; padding: 1rem; border: 1px solid #dee2e6; border-radius: .75rem; box-shadow: 0 1px 3px rgba(0,0,0,.04); }
    .participants-table td { display: block; min-width: 0; padding: 0; border: 0; box-shadow: none; }
    .participants-table td:first-child { display: none; }
    .participants-table td[data-label]::before { content: attr(data-label); display: block; margin-bottom: .25rem; color: #6c757d; font-size: .75rem; font-weight: 500; }
    .participants-table td:nth-child(2) { grid-column: 1 / -1; padding-bottom: .75rem; border-bottom: 1px solid #edf0f3; font-size: 1rem; }
    .participants-table td:nth-child(2)::before, .participants-table td.participant-actions-cell::before { display: none; }
    .participants-table .participant-actions-cell { grid-column: 1 / -1; padding-top: .875rem; border-top: 1px solid #edf0f3; }
    .participant-actions .btn { min-height: 44px; }
}
@media (max-width: 767.98px) {
    .participants-table tbody { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 575.98px) {
    #paymentModal .modal-footer { gap: .5rem; }
    #paymentModal .modal-footer .btn { flex: 1 1 42%; margin: 0; }
    #paymentModal .modal-footer #paymentSubmit { flex-basis: 100%; }
    #payment-options .payment-option-list .list-group-item > .d-flex { flex-wrap: wrap; }

}
