.component {
    margin-bottom: 2rem;
    padding: 1.5rem;
    border: 1px solid #585a5d;
    border-radius: 0.375rem;
    background-color: #20374C;
}

.table {
    --bs-table-accent-bg: transparent;
}

/* Custom Table Styling */
.sortable {
    cursor: pointer;
    user-select: none;
    position: relative;
}

.sortable:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

.sortable i {
    opacity: 0.6;
    transition: opacity 0.2s;
}

.sortable:hover i {
    opacity: 1;
}

.sortable i.fa-sort-up,
.sortable i.fa-sort-down {
    opacity: 1;
    color: #ffc107;
}

/* Filter Card Styling */
.card {
    border: 1px solid #585a5d;
    background-color: #2c3e50;
}

.card-header {
    background-color: #34495e;
    border-bottom: 1px solid #585a5d;
    color: white;
}

.card-body {
    background-color: #2c3e50;
    color: white;
}

/* Form Controls in Dark Theme */
.form-control,
.form-select {
    background-color: #34495e;
    border: 1px solid #585a5d;
    color: white;
}

.form-control:focus,
.form-select:focus {
    background-color: #34495e;
    border-color: #ffc107;
    color: white;
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.25);
}

.form-control::placeholder {
    color: #adb5bd;
}

.form-label {
    color: white;
    font-weight: 500;
}

/* Pagination Styling */
.pagination .page-link {
    background-color: #34495e;
    border: 1px solid #585a5d;
    color: white;
}

.pagination .page-link:hover {
    background-color: #ffc107;
    border-color: #ffc107;
    color: #000;
}

.pagination .page-item.active .page-link {
    background-color: #ffc107;
    border-color: #ffc107;
    color: #000;
}

.pagination .page-item.disabled .page-link {
    background-color: #495057;
    border-color: #585a5d;
    color: #6c757d;
}

/* Results Info Styling */
#resultsInfo {
    color: #adb5bd;
    font-size: 0.9rem;
}