/* ============================================================
   TABLES
   ============================================================ */
.table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { padding: 12px 16px; text-align: left; border-bottom: 1px solid var(--border-light); vertical-align: middle; }
.table th {
    background: var(--bg-body);
    font-weight: 600;
    font-size: var(--font-size-sm);
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}
.table tbody tr:nth-child(even) td { background: var(--bg-striped); }
[data-theme="dark"] .table tbody tr:nth-child(even) td { background: rgba(255,255,255,0.02); }
.table td a, .table td a:visited { color: var(--color-primary); text-decoration: none; }
.table td a:hover { text-decoration: underline; }
.table td a.btn, .table td a.btn:visited { color: var(--text-on-primary); text-decoration: none; }
.table td a.btn:hover { text-decoration: none; }
.table td .form-select { color: var(--text-primary); background-color: var(--input-bg); }
.table td .form-select option { color: #1e293b; background-color: #fff; }
[data-theme="dark"] .table td .form-select option { color: #e2e8f0; background-color: #232340; }
.table tbody tr:hover td { background: rgba(44, 43, 128, 0.12); }

/* Sort icons */
[class*="-sortable"], .dok-sort { cursor: pointer; user-select: none; }
[class*="-sort-icon"], .sort-arrow {
    color: var(--color-primary);
    font-size: 11px;
    margin-left: 2px;
}
[data-theme="dark"] [class*="-sort-icon"],
[data-theme="dark"] .sort-arrow { color: var(--text-primary); }
