/* Shared presentation for USCBC's wpDataTables trackers. */
.wpDataTablesWrapper.uscbc-tracker {
	--tracker-navy: var(--c_a2, #002243);
	--tracker-blue: var(--c_a4, #003365);
	--tracker-gold: var(--c_a3, #e2ac56);
	--tracker-red: var(--c_a1, #af1414);
	--tracker-ink: var(--c_d1, #151515);
	--tracker-muted: var(--c_d2, #555);
	--tracker-rule: #d9dee3;
	--tracker-surface: #f6f8fa;
	font-family: parabolica, system-ui, sans-serif;
	margin: 0 0 40px;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toolbar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
	align-items: end;
	gap: 16px;
	margin: 0 0 16px;
	padding: 16px;
	background: var(--tracker-surface);
	border: 1px solid var(--tracker-rule);
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-primary-filters {
	display: grid;
	grid-template-columns: repeat(2, minmax(160px, 1fr)) auto;
	align-items: end;
	gap: 12px;
	margin: 0 !important;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-filter,
.wpDataTablesWrapper.uscbc-tracker .dataTables_filter label,
.wpDataTablesWrapper.uscbc-tracker .dataTables_length label {
	display: grid;
	gap: 6px;
	margin: 0;
	font-family: parabolica, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--tracker-ink);
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-filter-select,
.wpDataTablesWrapper.uscbc-tracker .dataTables_filter input[type="search"],
.wpDataTablesWrapper.uscbc-tracker .dataTables_length .dropdown-toggle {
	width: 100% !important;
	height: 44px !important;
	min-height: 44px;
	margin: 0 !important;
	padding: 10px 12px !important;
	font-family: parabolica, system-ui, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.25 !important;
	color: var(--tracker-ink) !important;
	background: #fff !important;
	border: 1px solid #8a949e !important;
	border-radius: 2px !important;
	box-shadow: none !important;
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_length select.wdt-selectpicker {
	width: 1px !important;
	height: 1px !important;
	min-height: 0;
	padding: 0 !important;
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_filter,
.wpDataTablesWrapper.uscbc-tracker .dataTables_length {
	float: none !important;
	width: 100%;
	margin: 0;
	text-align: left;
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_length .bootstrap-select {
	width: 88px !important;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-reset {
	min-height: 44px;
	padding: 10px 14px;
	font-family: parabolica, system-ui, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.25;
	white-space: nowrap;
	color: var(--tracker-navy);
	background: #fff;
	border: 1px solid var(--tracker-navy);
	border-radius: 2px;
	box-shadow: none !important;
	cursor: pointer;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-reset:hover {
	color: #fff;
	background: var(--tracker-navy);
}

.wpDataTablesWrapper.uscbc-tracker :is(input, select, button):focus-visible,
.wpDataTablesWrapper.uscbc-tracker .paginate_button:focus-visible {
	outline: 3px solid var(--tracker-gold) !important;
	outline-offset: 2px;
}

.wpDataTablesWrapper.uscbc-tracker div.wdtscroll {
	width: 100%;
	overflow: visible;
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable,
.wpDataTablesWrapper.uscbc-tracker table.wpDataTable.scroll {
	width: 100% !important;
	table-layout: fixed;
	margin-bottom: 16px;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--tracker-rule);
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > thead > tr > th {
	padding: 12px !important;
	font-family: parabolica-text, parabolica, system-ui, sans-serif;
	font-size: 14px !important;
	font-weight: 700;
	line-height: 1.25 !important;
	white-space: normal;
	color: #fff !important;
	background: var(--tracker-navy) !important;
	border: 0;
	border-right: 1px solid rgb(255 255 255 / 20%);
	box-shadow: none;
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > thead > tr > th:last-child {
	border-right: 0;
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr:not(.uscbc-tracker-details) > td {
	padding: 9px 12px !important;
	font-family: parabolica, system-ui, sans-serif;
	font-size: 14px !important;
	font-weight: 400;
	line-height: 1.4 !important;
	vertical-align: middle;
	white-space: normal;
	color: var(--tracker-ink);
	background: #fff !important;
	border: 0;
	border-bottom: 1px solid var(--tracker-rule);
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr:not(.uscbc-tracker-details):hover > td,
.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr.is-details-open > td {
	background: #f0f5f9 !important;
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable .uscbc-tracker-column {
	width: var(--tracker-column-width, auto);
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable .uscbc-tracker-column.is-hidden,
.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tfoot {
	display: none !important;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-details-header {
	cursor: default;
	text-align: center;
	white-space: nowrap;
	pointer-events: none;
}

.wpDataTablesWrapper.uscbc-tracker td.uscbc-tracker-mobile-action {
	text-align: center;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-title-text {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	width: auto !important;
	min-width: 0 !important;
	max-width: none;
	height: 32px !important;
	min-height: 32px !important;
	margin: 0;
	padding: 0 9px;
	vertical-align: middle;
	font-family: parabolica, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	color: var(--tracker-navy);
	background: #fff;
	border: 1px solid var(--tracker-navy);
	border-radius: 2px;
	box-shadow: none !important;
	cursor: pointer;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle:hover {
	color: #fff;
	background: var(--tracker-navy);
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle-icon {
	display: block;
	width: 7px;
	height: 7px;
	border-right: 2px solid currentcolor;
	border-bottom: 2px solid currentcolor;
	transform: rotate(45deg) translate(-1px, -1px);
	transition: transform 160ms ease;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle[aria-expanded="true"] .uscbc-tracker-toggle-icon {
	transform: rotate(225deg) translate(-1px, -1px);
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle-label {
	white-space: nowrap;
}

.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr.uscbc-tracker-details > td {
	height: auto !important;
	padding: 16px 20px 20px;
	overflow: visible !important;
	white-space: normal;
	background: #f0f5f9;
	border: 0;
	border-bottom: 1px solid var(--tracker-rule);
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-detail-content dl {
	display: grid;
	grid-template-columns: minmax(128px, 0.25fr) minmax(0, 1fr);
	gap: 8px 20px;
	margin: 0;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-detail-content dt,
.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-detail-content dd {
	margin: 0;
	font-family: parabolica, system-ui, sans-serif;
	font-size: 15px;
	line-height: 1.5;
}

.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-detail-content dt {
	font-weight: 700;
	color: var(--tracker-navy);
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_info {
	margin-top: 12px;
	font-family: parabolica, system-ui, sans-serif;
	font-size: 13px;
	color: var(--tracker-muted);
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_paginate {
	display: flex;
	align-items: center;
	gap: 3px;
	height: auto;
	margin-top: 8px;
	font-family: parabolica, system-ui, sans-serif;
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_paginate .paginate_button {
	min-width: 36px;
	min-height: 36px;
	padding: 6px 10px;
	text-align: center;
	color: var(--tracker-navy) !important;
	background: #fff !important;
	border: 1px solid var(--tracker-rule) !important;
	border-radius: 2px;
}

.wpDataTablesWrapper.uscbc-tracker .dataTables_paginate .paginate_button.current,
.wpDataTablesWrapper.uscbc-tracker .dataTables_paginate .paginate_button:hover {
	color: #fff !important;
	background: var(--tracker-navy) !important;
	border-color: var(--tracker-navy) !important;
}

@media (max-width: 1000px) {
	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toolbar {
		grid-template-columns: 1fr 1fr;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-primary-filters {
		grid-column: 1 / -1;
	}
}

@media (max-width: 700px) {
	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toolbar,
	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-primary-filters {
		grid-template-columns: 1fr;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toolbar {
		padding: 14px;
	}

	.wpDataTablesWrapper.uscbc-tracker .dataTables_length .bootstrap-select {
		width: 100% !important;
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable,
	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody {
		display: block;
		width: 100% !important;
		border: 0;
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > thead {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr:not(.uscbc-tracker-details) {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 10px 16px;
		margin: 0 0 12px;
		padding: 16px;
		background: #fff;
		border: 1px solid var(--tracker-rule);
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr:not(.uscbc-tracker-details) > td {
		display: block;
		width: auto !important;
		height: auto !important;
		padding: 0 !important;
		overflow: visible;
		background: transparent !important;
		border: 0;
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr:not(.uscbc-tracker-details) > td.is-hidden {
		display: none !important;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-bottom-left {
		grid-column: 1;
		grid-row: 3;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-top-left {
		grid-column: 1;
		grid-row: 1;
		font-weight: 700;
		color: var(--tracker-navy);
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-top-right {
		grid-column: 2;
		grid-row: 1;
		text-align: right;
		color: var(--tracker-muted);
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-title {
		grid-column: 1 / -1;
		grid-row: 2;
		font-size: 16px;
		font-weight: 600;
		line-height: 1.35;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-bottom-right {
		grid-column: 2;
		grid-row: 3;
		align-self: center;
		text-align: right;
		font-size: 13px;
		color: var(--tracker-muted);
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-full {
		grid-column: 1 / -1;
		grid-row: 3;
		color: var(--tracker-muted);
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-mobile-action {
		display: block !important;
		grid-column: 1 / -1;
		grid-row: 4;
		width: auto !important;
		text-align: left;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle {
		width: 100% !important;
		height: 36px !important;
		min-height: 36px !important;
		padding: 0 12px;
		border-radius: 2px;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle-label::after {
		content: " details";
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle-icon {
		margin-right: 8px;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-toggle-label {
		position: static;
		width: auto;
		height: auto;
		margin: 0;
		overflow: visible;
		clip: auto;
		font-size: 13px;
		font-weight: 600;
		white-space: normal;
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr.uscbc-tracker-details {
		display: block;
		margin: -12px 0 12px;
	}

	.wpDataTablesWrapper.uscbc-tracker table.wpDataTable > tbody > tr.uscbc-tracker-details > td {
		display: block;
		padding: 16px;
		border: 1px solid var(--tracker-rule);
		border-top: 3px solid var(--tracker-gold);
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-detail-content dl {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.wpDataTablesWrapper.uscbc-tracker .uscbc-tracker-detail-content dd + dt {
		margin-top: 12px;
	}

	.wpDataTablesWrapper.uscbc-tracker .dataTables_info,
	.wpDataTablesWrapper.uscbc-tracker .dataTables_paginate {
		float: none !important;
		width: 100%;
	}

	.wpDataTablesWrapper.uscbc-tracker .dataTables_paginate {
		justify-content: center;
		flex-wrap: wrap;
	}
}
