/* ─── DataTables Custom Theme (NexLog Brand Override) ────────── */
/* Strips all default DataTables styling and applies brand theme */

/* ─── Wrapper ───────────────────────────────────────────────── */
.dataTables_wrapper {
    padding: 20px 24px;
    font-family: 'Outfit', sans-serif;
}

/* ─── Search / Filter ───────────────────────────────────────── */
.dataTables_filter {
    margin-bottom: 16px;
}

.dataTables_filter label {
    color: var(--muted);
    font-size: 0.85rem;
}

.dataTables_filter input {
    padding: 8px 14px;
    background: var(--ink);
    border: 1px solid var(--ink3);
    border-radius: var(--radius-sm);
    color: var(--cream);
    font-family: 'Outfit', sans-serif;
    font-size: 0.875rem;
    margin-left: 8px;
    transition: var(--transition);
    min-width: 240px;
}

.dataTables_filter input:focus {
    outline: none;
    border-color: var(--emerald);
    box-shadow: 0 0 0 3px rgba(0, 102, 68, 0.2);
}

/* ─── Length Selector ───────────────────────────────────────── */
.dataTables_length {
    margin-bottom: 16px;
}

.dataTables_length label {
    color: var(--muted);
    font-size: 0.85rem;
}

.dataTables_length select {
    padding: 6px 10px;
    background: var(--ink);
    border: 1px solid var(--ink3);
    border-radius: var(--radius-sm);
    color: var(--cream);
    font-family: 'Outfit', sans-serif;
    font-size: 0.85rem;
    margin: 0 6px;
}

/* ─── Table ─────────────────────────────────────────────────── */
table.dataTable {
    border-collapse: collapse !important;
    width: 100% !important;
}

table.dataTable thead th {
    background: var(--ink) !important;
    color: var(--muted) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--ink3) !important;
    font-family: 'Outfit', sans-serif !important;
}

table.dataTable thead th.sorting,
table.dataTable thead th.sorting_asc,
table.dataTable thead th.sorting_desc {
    cursor: pointer;
}

table.dataTable thead th.sorting_asc,
table.dataTable thead th.sorting_desc {
    color: var(--emerald3) !important;
}

table.dataTable tbody td {
    padding: 12px 16px !important;
    font-size: 0.875rem !important;
    color: var(--cream2) !important;
    border-bottom: 1px solid var(--ink3) !important;
    background: transparent !important;
}

table.dataTable tbody tr {
    background: transparent !important;
    transition: var(--transition);
}

table.dataTable tbody tr:hover {
    background: rgba(0, 170, 102, 0.06) !important;
}

table.dataTable tbody tr.odd {
    background: transparent !important;
}

table.dataTable tbody tr.even {
    background: rgba(14, 26, 16, 0.3) !important;
}

/* ─── Pagination ────────────────────────────────────────────── */
.dataTables_paginate {
    margin-top: 16px;
    display: flex;
    justify-content: flex-end;
    gap: 4px;
}

.dataTables_paginate .paginate_button {
    padding: 6px 12px !important;
    border-radius: var(--radius-sm) !important;
    border: 1px solid var(--ink3) !important;
    background: var(--ink2) !important;
    color: var(--cream3) !important;
    font-size: 0.8rem !important;
    font-family: 'Outfit', sans-serif !important;
    cursor: pointer;
    transition: var(--transition);
}

.dataTables_paginate .paginate_button:hover {
    background: var(--ink3) !important;
    color: var(--cream) !important;
    border-color: var(--emerald) !important;
}

.dataTables_paginate .paginate_button.current {
    background: var(--gold) !important;
    color: var(--ink) !important;
    border-color: var(--gold) !important;
    font-weight: 600 !important;
}

.dataTables_paginate .paginate_button.disabled {
    opacity: 0.3 !important;
    cursor: default !important;
}

/* ─── Info ───────────────────────────────────────────────────── */
.dataTables_info {
    color: var(--muted) !important;
    font-size: 0.8rem !important;
    margin-top: 12px;
    font-family: 'Outfit', sans-serif !important;
}

/* ─── No Records ────────────────────────────────────────────── */
.dataTables_empty {
    text-align: center !important;
    color: var(--muted) !important;
    padding: 40px !important;
    font-size: 0.9rem !important;
}

/* ─── Processing Indicator ──────────────────────────────────── */
.dataTables_processing {
    background: rgba(14, 26, 16, 0.9) !important;
    color: var(--emerald3) !important;
    border: 1px solid var(--ink3) !important;
    border-radius: var(--radius) !important;
    padding: 12px 20px !important;
    font-family: 'Outfit', sans-serif !important;
}

/* ─── Responsive Table ──────────────────────────────────────── */
.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
