/**
 * Canvas DataTable: style overrides
 *
 * Provides CSS custom properties for the DataTable block.
 * Depends on bs-datatable.css (DataTables 1.13.6 library).
 *
 * @package Canvas_Core
 * @since   1.0.0
 */

.cnvs-datatable {
	--cnvs-dt-header-bg: transparent;
	--cnvs-dt-header-color: inherit;
	--cnvs-dt-body-bg: transparent;
	--cnvs-dt-body-color: inherit;
	--cnvs-dt-border-color: var(--bs-border-color);
	--cnvs-dt-stripe-bg: rgba(0, 0, 0, .05);
	--cnvs-dt-hover-bg: rgba(0, 0, 0, .075);
	--cnvs-dt-pagination-color: inherit;
	--cnvs-dt-pagination-active-color: #fff;
	--cnvs-dt-pagination-active-bg: var(--cnvs-themecolor);
}

/* Header */
.cnvs-datatable thead th,
.cnvs-datatable thead td {
	background-color: var(--cnvs-dt-header-bg);
	color: var(--cnvs-dt-header-color);
}

/* Body */
.cnvs-datatable tbody td {
	color: var(--cnvs-dt-body-color);
}
.cnvs-datatable tbody tr {
	background-color: var(--cnvs-dt-body-bg);
}

/* Bordered */
.cnvs-datatable .table-bordered th,
.cnvs-datatable .table-bordered td {
	border-color: var(--cnvs-dt-border-color);
}

/* Stripe */
.cnvs-datatable .table-striped > tbody > tr:nth-of-type(odd) > * {
	background-color: var(--cnvs-dt-stripe-bg);
}

/* Hover */
.cnvs-datatable .table-hover > tbody > tr:hover > * {
	background-color: var(--cnvs-dt-hover-bg);
}

/* Pagination */
.cnvs-datatable .dataTables_paginate .page-link {
	color: var(--cnvs-dt-pagination-color);
}
.cnvs-datatable .dataTables_paginate .page-item.active .page-link {
	background-color: var(--cnvs-dt-pagination-active-bg);
	border-color: var(--cnvs-dt-pagination-active-bg);
	color: var(--cnvs-dt-pagination-active-color);
}

/* Search & length inputs */
.cnvs-datatable .dataTables_filter input,
.cnvs-datatable .dataTables_length select {
	border: 1px solid var(--cnvs-dt-border-color);
	border-radius: var(--bs-border-radius);
	padding: .375rem .75rem;
}

/* Info text */
.cnvs-datatable .dataTables_info {
	color: var(--cnvs-dt-body-color);
	opacity: .75;
}
