/* sortable-table.css — Stili per tabelle ordinabili e filtrabili */

/* Header sortabili */
th.st-sortable {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
    transition: color 0.15s;
}
th.st-sortable:hover {
    color: #0d6efd;
}
.st-sort-icon {
    font-size: 0.7em;
    opacity: 0.4;
    transition: opacity 0.15s;
    display: inline;
}
th.st-asc .st-sort-icon,
th.st-desc .st-sort-icon {
    opacity: 1;
    color: #0d6efd;
}

/* Board Portal override - usa colore indigo */
.bp-table th.st-sortable:hover,
.bp-table th.st-asc .st-sort-icon,
.bp-table th.st-desc .st-sort-icon {
    color: var(--bp-indigo, #4f46e5);
}

/* Contract Management override - usa colore teal */
.cm-table th.st-sortable:hover,
.cm-table th.st-asc .st-sort-icon,
.cm-table th.st-desc .st-sort-icon {
    color: var(--cm-teal, #14b8a6);
}

/* Barra filtri inline per tabelle admin */
.st-filter-bar {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
    padding: 0.6rem 1rem;
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    font-size: 0.85rem;
}
.st-filter-bar label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6c757d;
    margin-bottom: 0;
    text-transform: uppercase;
    white-space: nowrap;
}
.st-filter-bar input,
.st-filter-bar select {
    font-size: 0.82rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    border: 1px solid #dee2e6;
    max-width: 200px;
}
.st-filter-bar input:focus,
.st-filter-bar select:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.15rem rgba(13, 110, 253, 0.15);
}

/* Board Portal filter bar override */
.bp-card .st-filter-bar {
    background: #fafbff;
    border-color: #e8eaf6;
}
.bp-card .st-filter-bar input:focus,
.bp-card .st-filter-bar select:focus {
    border-color: var(--bp-indigo, #4f46e5);
    box-shadow: 0 0 0 0.15rem rgba(79, 70, 229, 0.12);
}

/* Conteggio risultati filtrati */
.st-filter-count {
    font-size: 0.78rem;
    color: #6c757d;
    margin-left: auto;
}
