.ops-rework-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}

.ops-rework-heading h2,
.ops-rework-heading p {
	margin: 0;
}

.ops-rework-heading p {
	margin-top: 5px;
	color: #5d6975;
}

.ops-rework-filter {
	display: grid;
	grid-template-columns: repeat(2, minmax(145px, 0.75fr)) minmax(155px, 0.85fr) minmax(190px, 1fr) minmax(260px, 1.5fr) auto;
	gap: 12px;
	align-items: end;
}

.ops-rework-filter label {
	display: grid;
	gap: 5px;
	font-weight: 700;
	font-size: 0.82rem;
	color: #334155;
}

.ops-rework-filter input,
.ops-rework-filter select {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
}

.ops-rework-filter button {
	white-space: nowrap;
}

.ops-rework-overall h2,
.ops-rework-location-card h2 {
	margin-top: 0;
}

.ops-rework-overall-grid,
.ops-rework-location-metrics {
	display: grid;
	grid-template-columns: repeat(6, minmax(105px, 1fr));
	gap: 10px;
}

.ops-rework-overall-grid span,
.ops-rework-location-metrics span {
	display: grid;
	gap: 5px;
	padding: 12px;
	border: 1px solid #d7e0e8;
	border-radius: 8px;
	background: #f7fafc;
	text-align: center;
}

.ops-rework-overall-grid small,
.ops-rework-location-metrics small {
	color: #64748b;
	font-size: 0.76rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.ops-rework-overall-grid b,
.ops-rework-location-metrics b {
	color: #173f61;
	font-size: 1.35rem;
}

.ops-rework-active-filters {
	margin: 14px 0 0;
	padding: 9px 11px;
	border-left: 4px solid var(--ops-accent-color, #2f6f9f);
	background: #f2f7fb;
	color: #465565;
}

.ops-rework-location-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.ops-rework-location-grid .panel {
	margin: 0;
}

.ops-rework-location-metrics {
	grid-template-columns: repeat(3, minmax(95px, 1fr));
}

.ops-rework-operator-wrap,
.ops-rework-detail-wrap {
	max-width: 100%;
	overflow: auto;
	border: 1px solid #d7e0e8;
	border-radius: 8px;
}

.ops-rework-operator-wrap {
	max-height: 420px;
}

.ops-rework-detail-wrap {
	max-height: 68vh;
}

.ops-rework-operator-table,
.ops-rework-detail-table {
	margin: 0;
}

.ops-rework-operator-table thead th,
.ops-rework-detail-table thead th {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #1f4f7a;
	color: #fff;
}

.ops-rework-detail-table {
	min-width: 1480px;
}

.ops-rework-detail-table td {
	vertical-align: top;
}

.ops-rework-hours {
	font-weight: 800;
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.ops-rework-job,
.ops-rework-instance {
	min-width: 125px;
}

.ops-rework-job a,
.ops-rework-instance b {
	display: block;
	font-weight: 800;
}

.ops-rework-job small,
.ops-rework-instance small {
	display: block;
	margin-top: 4px;
	color: #64748b;
	line-height: 1.25;
}

.ops-rework-status {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 999px;
	font-weight: 800;
	font-size: 0.75rem;
}

.ops-rework-status-completed {
	background: #dcfce7;
	color: #166534;
}

.ops-rework-status-open {
	background: #ffedd5;
	color: #9a3412;
}

.ops-rework-notes {
	min-width: 120px;
}

.ops-rework-notes summary {
	cursor: pointer;
	color: #185c88;
	font-weight: 700;
}

.ops-rework-notes div {
	margin-top: 7px;
	padding: 8px;
	min-width: 190px;
	max-width: 320px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	line-height: 1.35;
}

.ops-rework-muted {
	color: #94a3b8;
}

.ops-rework-empty {
	padding: 24px !important;
	text-align: center;
	color: #64748b;
}

.ops-rework-method summary {
	cursor: pointer;
	font-weight: 800;
	color: #173f61;
}

@media (max-width: 1180px) {
	.ops-rework-filter {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ops-rework-overall-grid {
		grid-template-columns: repeat(3, minmax(100px, 1fr));
	}
}

@media (max-width: 760px) {
	.ops-rework-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.ops-rework-filter,
	.ops-rework-location-grid {
		grid-template-columns: 1fr;
	}

	.ops-rework-overall-grid,
	.ops-rework-location-metrics {
		grid-template-columns: repeat(2, minmax(100px, 1fr));
	}
}

@media print {
	.ops-rework-filter,
	.ops-rework-heading .button,
	.nav {
		display: none !important;
	}

	.ops-rework-detail-wrap,
	.ops-rework-operator-wrap {
		max-height: none;
		overflow: visible;
	}

	.ops-rework-detail-table {
		min-width: 0;
		font-size: 7pt;
	}
}
