/* ══════════════════════════════════════
   Tables Component
   ══════════════════════════════════════ */

.table-wrapper {
    overflow-x: auto;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-xl);
    background: var(--bg-card);
}

.table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-sm);
}

.table th,
.table td {
    padding: var(--space-4) var(--space-5);
    text-align: inherit;
    white-space: nowrap;
}

.table thead th {
    background: var(--bg-tertiary);
    color: var(--text-secondary);
    font-weight: 600;
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid var(--border-color);
}

.table tbody tr {
    border-bottom: 1px solid var(--border-light);
    transition: background var(--transition-fast);
}

.table tbody tr:last-child {
    border-bottom: none;
}

.table tbody tr:hover {
    background: var(--bg-card-hover);
}

/* ── Status Badges ── */
.status-badge {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-3);
    font-size: var(--text-xs);
    font-weight: 600;
    border-radius: var(--radius-full);
}

.status-badge::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.status-badge--success { background: var(--success-bg); color: var(--success); }
.status-badge--warning { background: var(--warning-bg); color: var(--warning); }
.status-badge--error { background: var(--error-bg); color: var(--error); }
.status-badge--info { background: var(--info-bg); color: var(--info); }
.status-badge--neutral { background: var(--neutral-100); color: var(--neutral-500); }

@media (max-width: 768px) {
    .table-wrapper {
        border-radius: var(--radius-md);
        margin: 0 -var(--space-4);
        border-left: none;
        border-right: none;
    }
    .table th, .table td {
        padding: var(--space-3) var(--space-4);
    }
}
