/* ====================================
   TABLE COMPONENTS
   PRISM Insurance Brokers Limited
   ==================================== */

table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin-top: 10px;
}

table thead th {
    background: var(--light-color) !important;     /* #f4f6fb PRISM light */
    color: var(--primary-color) !important;        /* Navy header text */
    font-weight: 600 !important;
    text-transform: uppercase !important;
    font-size: var(--font-size-xs) !important;
    letter-spacing: 0.5px !important;
    padding: var(--spacing-md) !important;
    position: relative !important;
    text-align: center !important;
    border-bottom: 2px solid var(--accent-color) !important;   /* Gold accent underline */
}

table td {
    padding: var(--spacing-md) !important;
    vertical-align: middle;
    font-size: var(--font-size-sm);
    color: var(--text-dark);
    border-bottom: 1px solid var(--border-color);
}

table tbody tr:hover {
    background: var(--hover-bg);                   /* rgba(26,79,214,0.06) */
}


/* ── Action Buttons / Dropdowns ── */
.dropstart {
    display: flex;
    gap: var(--spacing-sm);
    align-items: center;
}

.dropstart .dropdown-menu {
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-sm);
    box-shadow: var(--shadow-medium);
    padding: var(--spacing-sm) 0;
    margin-top: 0.25rem;
}

.dropstart .dropdown-item {
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--font-size-sm);
    color: var(--text-dark);
    transition: var(--transition-fast);
}

.dropstart .dropdown-item:hover {
    background: rgba(26, 79, 214, 0.08);
    color: var(--secondary-color);             /* PRISM blue */
}

.dropstart .dropdown-item i {
    margin-right: var(--spacing-sm);
    color: var(--secondary-color);
}

.btn-del {
    cursor: pointer;
    padding-top: 5px;
    padding-bottom: 5px;
    width: 100%;
    text-align: left;
    justify-content: start;
}
.btn-del:hover {
    background: rgba(220, 38, 38, 0.08);
    color: var(--danger-color);
}


/* ── DataTable Styling ── */
.dataTables_wrapper table.dataTable thead th {
    border-bottom: 0;
}
.dataTables_wrapper table.dataTable.no-footer {
    border-bottom: 0;
}
.dataTables_wrapper .dataTables_filter {
    margin-bottom: var(--spacing-lg);
}
.dataTables_wrapper .dataTables_filter input {
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-sm);
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--font-size-sm);
    width: 300px;
}
.dataTables_wrapper .dataTables_filter input:focus {
    outline: none;
    border-color: var(--secondary-color);
    box-shadow: 0 0 0 3px rgba(26, 79, 214, 0.1);
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    border: none;
    background: none;
    color: var(--text-muted);
    padding: var(--spacing-xs) var(--spacing-sm);
    margin: 0 0.125rem;
    border-radius: 6px;
    font-size: var(--font-size-sm);
    transition: var(--transition-fast);
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: var(--light-color) !important;
    color: var(--secondary-color) !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: var(--primary-color) !important;   /* Navy active page */
    border-color: var(--primary-color) !important;
    color: white !important;
}
