/* Sortable Column Headers */
.sortable {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

.sortable:hover a {
    text-decoration: underline !important;
}

.sortable-active {
    cursor: pointer;
    user-select: none;
    font-weight: 600;
}

.sortable-active:hover a {
    text-decoration: underline !important;
}

/* Sort Icons */
.sort-icon {
    display: inline-block;
    margin-left: 0.5rem;
    transition: opacity 0.2s ease;
}

.sort-icon.inactive {
    opacity: 0.3;
    color: #6c757d;
}

.sort-icon.active-asc {
    opacity: 1;
    color: #0077b6;
}

.sort-icon.active-desc {
    opacity: 1;
    color: #0077b6;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .sortable {
        padding: 0.5rem 0.25rem !important;
    }
    
    .sort-icon {
        margin-left: 0.25rem;
        font-size: 0.85rem;
    }
}
