	html, body, div, h1, h2, h3, h4, h5 {
			font-family: 'Arial', sans-serif;
		}

	:root {
			--app-fixed-top-offset: 58px;
			--app-fixed-bottom-offset: 64px;
		}

	html {
			scroll-padding-top: var(--app-fixed-top-offset);
		}

	#rows,
	#rightColumn,
	#verificationParentContainer,
	#verificationScheduleContainer,
	#verificationsContainer,
	#verificationDiv,
	#scheduleDiv {
			scroll-margin-top: var(--app-fixed-top-offset);
		}

label {
		font-weight: bold;
	}

.htmx-indicator {
		opacity: 0;
		transition: opacity 500ms ease-in;
	}

.htmx-request .htmx-indicator {
		opacity: 1
	}

.htmx-request.htmx-indicator {
			opacity: 1
		}

.search-modern {
		--search-ink: #162b44;
		--search-muted: #5d7591;
		--search-border: #d6e5f2;
		--search-surface: #ffffff;
		--search-surface-soft: #f7fbff;
		margin: 12px;
		padding: 16px;
		border: 1px solid var(--search-border);
		border-radius: 12px;
		background: linear-gradient(145deg, #f7fbff 0%, #edf5fc 52%, #f9fcff 100%);
		box-shadow: 0 18px 36px rgba(16, 42, 72, 0.12);
		position: relative;
		overflow: hidden;
		animation: search-shell-fade 320ms ease-out;
	}

.search-modern::before,
.search-modern::after {
		content: '';
		position: absolute;
		border-radius: 50%;
		pointer-events: none;
	}

.search-modern::before {
		top: -150px;
		right: -90px;
		width: 300px;
		height: 300px;
		background: radial-gradient(circle, rgba(32, 147, 170, 0.23) 0%, rgba(32, 147, 170, 0) 72%);
	}

.search-modern::after {
		bottom: -170px;
		left: -90px;
		width: 280px;
		height: 280px;
		background: radial-gradient(circle, rgba(255, 168, 70, 0.16) 0%, rgba(255, 168, 70, 0) 72%);
	}

.search-modern>* {
		position: relative;
		z-index: 1;
	}

.search-modern,
.search-modern h1,
.search-modern h2,
.search-modern h3,
.search-modern h4,
.search-modern h5,
.search-modern td,
.search-modern th,
.search-modern button {
		font-family: "Trebuchet MS", "Verdana", "Tahoma", sans-serif;
	}

.search-modern .search-layout {
		display: grid;
		grid-template-columns: minmax(0, 2.1fr) minmax(300px, 1fr);
		gap: 16px;
		align-items: start;
	}

.search-modern .search-view-intro {
		margin: 2px 0 12px;
		padding: 10px 12px;
		border: 1px solid #d7e6f4;
		border-radius: 8px;
		background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%);
		box-shadow: 0 8px 16px rgba(16, 42, 72, 0.08);
	}

.search-modern .search-view-title {
		display: flex;
		align-items: center;
		gap: 8px;
		font-size: 16px;
		font-weight: 700;
		color: #17314d;
	}

.search-modern .search-view-query {
		margin-top: 4px;
		font-size: 12px;
		color: #57718f;
	}

.search-modern #leftColumn,
.search-modern #rightColumn {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		min-width: 0;
	}

.search-modern .search-panel {
		background: var(--search-surface) !important;
		border: 1px solid var(--search-border);
		border-radius: 10px;
		box-shadow: 0 10px 22px rgba(16, 42, 72, 0.1);
		animation: search-card-rise 340ms ease both;
		overflow: hidden;
	}

.search-modern .search-scroll {
		max-height: calc(100vh - 190px);
		overflow-y: auto;
		overflow-x: hidden;
	}

.search-modern .search-main-scroll {
		padding: 12px;
	}

.search-modern .search-side-scroll {
		padding: 12px;
	}

.search-modern .search-toolbar {
		z-index: 80;
		position: sticky;
		top: 0;
		border: 1px solid #d6e4f1 !important;
		border-radius: 8px !important;
		border-collapse: separate !important;
		border-spacing: 0 !important;
		overflow: hidden;
		background: rgba(247, 251, 255, 0.96) !important;
		backdrop-filter: blur(8px);
		box-shadow: 0 7px 16px rgba(20, 52, 83, 0.1);
		margin-bottom: 12px !important;
	}

.search-modern .search-toolbar td {
		padding: 8px !important;
	}

.search-modern .search-toolbar-button {
		margin: 2px 6px 2px 0;
		border-radius: 6px !important;
		border: 1px solid #cddded !important;
		background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%) !important;
		color: #17324f !important;
		font-weight: 700;
		transition: transform 140ms ease, box-shadow 140ms ease, border-color 140ms ease;
	}

.search-modern .search-toolbar-button:hover {
		transform: translateY(-1px);
		border-color: #b8cde2 !important;
		box-shadow: 0 8px 16px rgba(16, 42, 72, 0.16);
	}

.search-modern.search-table-view #hazardTable {
		width: 100% !important;
		border-collapse: separate !important;
		border-spacing: 0 10px !important;
	}

.search-modern.search-table-view #hazardTable>tbody>tr.HAZARD>td {
		background: #f39a12 !important;
		color: #1e2f43 !important;
		border-top: none !important;
		border-bottom: none !important;
	}

.search-modern.search-table-view #hazardTable>tbody>tr.HAZARD>td:first-child {
		border-left: none !important;
		border-radius: 8px 0 0 8px;
	}

.search-modern.search-table-view #hazardTable>tbody>tr.HAZARD>td:last-child {
		border-right: none !important;
		border-radius: 0 8px 8px 0;
	}

.search-modern.search-table-view #hazardTable tr.PARENT>td {
		border-top: none !important;
		border-bottom: none !important;
	}

.search-modern.search-table-view #hazardTable tr.PARENT>td:first-child {
		border-left: none !important;
	}

.search-modern.search-table-view #hazardTable tr.PARENT>td:last-child {
		border-right: none !important;
	}

.search-modern.search-table-view #hazardTable tr.DF>td {
		background: #fff3e4 !important;
		color: #273b53 !important;
	}

.search-modern.search-table-view #hazardTable tr.search-df-row {
		display: table-row !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
	}

.search-modern.search-table-view #hazardTable tr.search-df-row > td {
		background: #ffeb3b !important;
		color: #000 !important;
		border-top: none !important;
		border-bottom: none !important;
	}

.search-modern.search-table-view #hazardTable tr.search-df-row > td:first-child {
		border-left: none !important;
		border-radius: 8px 0 0 8px;
	}

.search-modern.search-table-view #hazardTable tr.search-df-row > td:last-child {
		border-right: none !important;
		border-radius: 0 8px 8px 0;
	}

.search-modern.search-table-view #hazardTable tr.search-parent-row {
		display: table-row !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
	}

/* Re-assert [hidden] over the display:table-row !important rules on
   tr.search-df-row and tr.search-parent-row above — otherwise
   toggleLevel*() in accordion.js cannot hide those rows when filtering
   by level in the Table View. Must sit *after* both rules so it wins
   the cascade at equal specificity. */
.search-modern.search-table-view #hazardTable tr[hidden] {
		display: none !important;
	}

.search-modern.search-table-view #hazardTable tr.search-parent-row > td {
		color: #f4f8ff !important;
		border-top: none !important;
		border-bottom: none !important;
	}

.search-modern.search-table-view #hazardTable tr.search-parent-row > td:first-child {
		border-radius: 8px 0 0 8px;
	}

.search-modern.search-table-view #hazardTable tr.search-parent-row > td:last-child {
		border-radius: 0 8px 8px 0;
		border-right: none !important;
	}

.search-modern.search-table-view #hazardTable tr.search-cause-row > td {
		background: #2a86cb !important;
	}

.search-modern.search-table-view #hazardTable tr.search-cause-row > td:first-child {
		border-left: none !important;
	}

.search-modern.search-table-view #hazardTable tr.search-outcome-row > td {
		background: #e53935 !important;
	}

.search-modern.search-table-view #hazardTable tr.search-outcome-row > td:first-child {
		border-left: none !important;
	}

.search-modern.search-table-view #hazardTable>tbody>tr.HAZARD,
.search-modern.search-table-view #hazardTable tr.search-parent-row,
.search-modern.search-table-view #hazardTable tr.search-df-row {
		border: none !important;
		box-shadow: none !important;
	}

.search-modern .search-control-row > td {
		background: #ffffff;
		border-top: 1px solid #e4edf6;
		border-bottom: 1px solid #e4edf6;
	}

.search-modern .search-control-row > td:first-child {
		border-left: 1px solid #e4edf6;
		border-radius: 6px 0 0 6px;
	}

.search-modern .search-control-row > td:last-child {
		border-right: 1px solid #e4edf6;
		border-radius: 0 6px 6px 0;
	}

.search-modern .search-control-row:hover > td {
		background: #eef5ff !important;
	}

.search-modern.search-table-view #hazardTable tr.search-control-row.DFC > td {
		background: #fff9df;
	}

.search-modern.search-table-view #hazardTable tr.search-control-row.DFC:hover > td {
		background: #fff2b8 !important;
	}

.search-modern.search-table-view #hazardTable tr.search-control-row.PC > td:first-child {
		border-left: 1px solid #e4edf6;
	}

.search-modern.search-table-view #hazardTable tr.search-control-row.DFC > td:first-child {
		border-left: 1px solid #e4edf6;
	}

.search-modern.search-table-view #hazardTable tr.w3-transparent td {
		background: transparent !important;
		border: none !important;
	}

.search-modern .search-empty-row td,
.search-modern .search-empty-row {
		padding: 16px 12px;
		text-align: center;
		color: var(--search-muted);
		background: #ffffff;
		border: 1px dashed #c7d9eb;
		border-radius: 8px;
	}

.search-modern .search-stats-shell {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

.search-modern .search-stats-header-card {
		background: var(--search-surface);
		border: 1px solid var(--search-border);
		border-radius: 8px;
		padding: 12px;
		box-shadow: 0 8px 16px rgba(16, 42, 72, 0.08);
	}

.search-modern .search-stats-header-card table td {
		border: none !important;
	}

.search-modern .search-stats-search-text {
		font-size: 21px;
		font-weight: 700;
		color: var(--search-ink);
		line-height: 1.25;
	}

.search-modern .search-stats-search-criteria {
		font-size: 12px;
		color: var(--search-muted);
	}

.search-modern .search-stats-shell>.w3-blue-grey.w3-container {
		border: 1px solid #d4e2f0;
		border-bottom: none;
		border-radius: 8px 8px 0 0;
		background: linear-gradient(180deg, #2f4660 0%, #24374d 100%) !important;
		padding: 8px 12px !important;
	}

.search-modern .search-stats-shell>.w3-blue-grey.w3-container h5 {
		margin: 0 !important;
		font-size: 15px;
		font-weight: 700;
	}

.search-modern .search-stats-shell>div[style*="max-height: 180px"] {
		max-height: 220px !important;
		overflow: auto;
		border: 1px solid #d4e2f0;
		border-top: none;
		border-radius: 0 0 8px 8px;
		background: #ffffff;
		box-shadow: 0 8px 16px rgba(16, 42, 72, 0.08);
	}

.search-modern .search-stats-shell>div[style*="max-height: 180px"] table tr td {
		border-bottom: 1px solid #ebf2f9;
	}

.search-modern .search-stats-shell>div[style*="max-height: 180px"] table tr:last-child td {
		border-bottom: none;
	}

.search-modern.search-diagram-view .search-bowtie-main hr {
		border: none !important;
		border-top: 1px solid #d7e6f4 !important;
	}

.search-modern.search-diagram-view .search-bowtie-hazard-table {
		margin-bottom: 10px;
	}

.search-modern.search-diagram-view .search-bowtie-node {
		border-radius: 8px;
		border: 1px solid rgba(255, 255, 255, 0.65);
		box-shadow: 0 10px 20px rgba(17, 39, 64, 0.16);
		padding: 10px;
	}

.search-modern.search-diagram-view .search-bowtie-hazard {
		width: min(220px, 100%) !important;
		min-height: 82px !important;
	}

.search-modern.search-diagram-view .search-bowtie-side {
		width: 140px !important;
		max-width: 140px !important;
		min-width: 140px !important;
		min-height: 82px !important;
		padding: 10px 8px !important;
		border-radius: 8px;
		box-shadow: 0 7px 14px rgba(14, 34, 56, 0.14);
	}

.search-modern.search-diagram-view .search-bowtie-top-event {
		border: 3px solid rgba(255, 255, 255, 0.72);
		box-shadow: 0 10px 22px rgba(14, 34, 56, 0.18);
	}

.search-modern.search-diagram-view .search-bowtie-controls tr td {
		border-bottom: 1px solid #e8f1f8;
	}

.search-modern.search-diagram-view .search-bowtie-controls tr:last-child td {
		border-bottom: none;
	}

.search-modern.search-diagram-view .search-bowtie-controls tr.search-control-row > td {
		border-radius: 6px;
		box-shadow: 0 6px 12px rgba(19, 45, 73, 0.08);
	}

.search-modern.search-diagram-view .search-bowtie-controls tr.search-control-row.DFC > td {
		background: #fff7d9;
	}

@keyframes search-shell-fade {
		from {
			opacity: 0;
			transform: translateY(8px);
		}

		to {
			opacity: 1;
			transform: translateY(0);
		}
	}

@keyframes search-card-rise {
		from {
			opacity: 0;
			transform: translateY(6px);
		}

		to {
			opacity: 1;
			transform: translateY(0);
		}
	}

@media (max-width: 1100px) {
		.search-modern .search-layout {
			grid-template-columns: 1fr;
		}

		.search-modern .search-scroll {
			max-height: none;
		}
	}

	@media (max-width: 760px) {
				:root {
					--app-fixed-top-offset: 52px;
					--app-fixed-bottom-offset: 56px;
				}

				.search-modern {
					margin: 6px;
					padding: 10px;
				border-radius: 8px;
			}

		.search-modern .search-main-scroll,
		.search-modern .search-side-scroll {
			padding: 8px;
		}

		.search-modern .search-toolbar td {
			padding: 6px !important;
		}

			.search-modern .search-toolbar-button {
				margin: 2px 4px 2px 0;
			}
		}

	.dashboard-modern .dashboard-single-layout {
			grid-template-columns: minmax(0, 1fr);
		}

	.dashboard-modern .dashboard-toolbar {
			margin-bottom: 12px;
		}

	.dashboard-modern .dashboard-table-wrap {
			border: 1px solid #d6e4f1;
			border-radius: 8px;
			background: #ffffff;
			box-shadow: 0 8px 16px rgba(16, 42, 72, 0.08);
			overflow: auto;
		}

	.dashboard-modern .dashboard-data-table {
			width: 100% !important;
			border-collapse: separate !important;
			border-spacing: 0 !important;
		}

	.dashboard-modern .dashboard-data-table thead th {
			position: sticky;
			top: 0;
			z-index: 2;
			background: linear-gradient(180deg, #2f4660 0%, #24374d 100%);
			color: #ffffff !important;
			font-weight: 700;
			font-size: 12px;
			text-transform: uppercase;
			letter-spacing: 0.04em;
			padding: 10px;
			border: none !important;
			white-space: nowrap;
		}

	.dashboard-modern .dashboard-data-table tbody td {
			padding: 8px 10px;
			border-bottom: 1px solid #e8f0f8;
			color: #1b324c;
			background: #ffffff;
			vertical-align: middle;
		}

	.dashboard-modern .dashboard-data-table tbody tr:nth-child(even) td {
			background: #f8fbff;
		}

	.dashboard-modern .dashboard-data-table tbody tr:hover td {
			background: #edf5ff !important;
		}

	.dashboard-modern .dashboard-data-table tbody tr:last-child td {
			border-bottom: none;
		}

	.dashboard-modern .account-dashboard-table tbody td:first-child {
			width: 240px;
			font-weight: 700;
			white-space: nowrap;
		}

	.dashboard-modern .account-dashboard-table tbody td:last-child {
			font-family: "Consolas", "Courier New", monospace;
			color: #58738f;
			font-size: 11px;
			white-space: nowrap;
		}

	.dashboard-modern .dashboard-side-stack {
			display: flex;
			flex-direction: column;
			gap: 12px;
		}

	.dashboard-modern .dashboard-side-card {
			background: #ffffff;
			border: 1px solid #d6e4f1;
			border-radius: 8px;
			padding: 12px;
			box-shadow: 0 8px 16px rgba(16, 42, 72, 0.08);
		}

	.dashboard-modern .dashboard-side-card h5 {
			margin: 0 0 10px;
			color: #17314d;
		}

	.dashboard-modern .dashboard-kpi-table {
			width: 100%;
			border-collapse: separate;
			border-spacing: 8px 0;
		}

	.dashboard-modern .dashboard-kpi-table td {
			width: 50%;
			text-align: center;
			padding: 12px 10px;
			border: 1px solid #dce9f6;
			border-radius: 6px;
			background: #f7fbff;
		}

	.dashboard-modern .dashboard-kpi-table h1 {
			margin: 0 0 4px;
			color: #17314d;
			font-size: 28px;
		}

	.dashboard-modern .dashboard-kpi-table h5 {
			margin: 0;
			color: #54708d;
			font-size: 12px;
			font-weight: 700;
		}

	.dashboard-modern .dashboard-pagination {
			margin-top: 12px;
			padding: 10px 12px;
			border: 1px solid #d7e6f4;
			border-radius: 8px;
			background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%);
			box-shadow: 0 7px 14px rgba(16, 42, 72, 0.08);
		}

	.dashboard-modern .dashboard-empty-state {
			padding: 28px 20px;
			text-align: center;
			color: #5d7591;
			border: 1px dashed #c7d9eb;
			border-radius: 8px;
			background: #ffffff;
		}

	.dashboard-modern .verification-status-title {
			text-align: center;
			margin: 0 0 10px;
		}

	.dashboard-modern .verification-status-grid {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			gap: 6px;
		}

	.dashboard-modern .verification-status-badge {
			display: inline-flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			text-align: center;
			height: 58px;
			width: 58px;
			border-radius: 8px;
			font-size: 14px;
			font-weight: 700;
			border: 1px solid rgba(255, 255, 255, 0.45);
			box-shadow: 0 8px 14px rgba(15, 39, 64, 0.14);
			transition: transform 140ms ease, box-shadow 140ms ease;
		}

	.dashboard-modern .verification-status-badge:hover {
			transform: translateY(-1px);
			box-shadow: 0 10px 16px rgba(15, 39, 64, 0.18);
		}

	.crud-root {
			z-index: 10;
			left: 0;
			right: 0;
			bottom: var(--app-fixed-bottom-offset);
			width: auto !important;
			box-sizing: border-box;
		}

	.crud-modern.crud-shell {
			margin: 10px;
			padding: 18px;
			height: 100%;
			box-sizing: border-box;
		}

	.crud-modern .crud-layout {
			grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.15fr);
			gap: 18px;
			align-items: stretch;
			height: 100%;
			min-height: 0;
		}

	.crud-modern .crud-panel {
			min-width: 0;
			height: auto;
			min-height: 0;
		}

	.crud-modern .crud-column-content {
			height: 100%;
			overflow-y: auto;
			overflow-x: hidden;
			padding: 28px 28px 34px;
			box-sizing: border-box;
		}

	.crud-modern .crud-column-content > * + * {
			margin-top: 18px;
		}

	.crud-modern .crud-list-shell,
	.crud-modern .crud-edit-shell,
	.crud-modern .crud-form-shell {
			display: flex;
			flex-direction: column;
			gap: 16px;
			padding: 8px;
		}

	.crud-modern .crud-view-intro {
			margin-bottom: 0;
			padding: 14px 16px;
		}

	.crud-modern .crud-view-header {
			display: flex;
			align-items: flex-start;
			justify-content: space-between;
			gap: 12px;
			flex-wrap: wrap;
		}

	.crud-modern .crud-view-actions {
			display: flex;
			flex-wrap: wrap;
			justify-content: flex-end;
			gap: 10px;
		}

	.crud-modern .crud-view-dot {
			padding: 0 6px;
			color: #8aa2bc;
		}

	.crud-modern .crud-icon-button {
			display: inline-flex;
			align-items: center;
			gap: 8px;
			padding: 10px 14px;
			border: 1px solid #d2e2f0;
			border-radius: 6px;
			background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%);
			color: #17324f;
			font-weight: 700;
			text-decoration: none;
			box-shadow: none;
			transition: transform 140ms ease, border-color 140ms ease;
		}

	.crud-modern .crud-icon-button:hover {
			transform: translateY(-1px);
			border-color: #b8cde2;
			box-shadow: none;
		}

	.crud-modern .crud-toolbar-form {
			margin-bottom: 0;
		}

	.crud-modern .crud-toolbar {
			display: grid;
			grid-template-columns: minmax(90px, 120px) minmax(0, 1fr) auto;
			gap: 14px;
			align-items: end;
			padding: 14px 16px;
			border: 1px solid #d6e4f1;
			border-radius: 8px;
			background: rgba(247, 251, 255, 0.96);
			backdrop-filter: blur(8px);
			box-shadow: 0 7px 16px rgba(20, 52, 83, 0.1);
			position: sticky;
			top: 0;
			z-index: 6;
		}

	.crud-modern .crud-toolbar-field label,
	.crud-modern .crud-edit-form label,
	.crud-modern .crud-form-table label {
			display: inline-block;
			margin-bottom: 5px;
			font-size: 12px;
			font-weight: 700;
			letter-spacing: 0.02em;
			color: #27435f;
			line-height: 1.35;
		}

	.crud-modern .crud-checkbox-field {
			display: flex !important;
			align-items: center;
			gap: 10px;
			width: 100%;
			margin: 2px 0 10px;
			line-height: 1.2;
			vertical-align: middle;
		}

	.crud-modern .crud-checkbox-field span {
			display: inline-block;
			margin: 0;
			font-size: 12px;
			font-weight: 700;
			letter-spacing: 0.02em;
			color: #27435f;
			line-height: 1.2;
		}

	.crud-modern .crud-toolbar-field {
			display: flex;
			flex-direction: column;
			gap: 0;
		}

	.crud-modern .crud-toolbar input:not([type="checkbox"]):not([type="hidden"]),
	.crud-modern .crud-toolbar select {
			height: 44px !important;
			min-height: 44px;
			box-sizing: border-box;
		}

	.crud-modern input:not([type="checkbox"]):not([type="hidden"]),
	.crud-modern input[type="password"],
	.crud-modern input[type="email"],
	.crud-modern input[type="date"],
	.crud-modern input[type="datetime-local"],
	.crud-modern select,
	.crud-modern textarea {
			width: 100%;
			border: 1px solid #cddded !important;
			border-radius: 8px !important;
			background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
			color: #17324f !important;
			box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
			transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
			padding: 10px 12px !important;
		}

	.crud-modern textarea {
			min-height: 120px;
			padding: 12px 14px !important;
			resize: vertical;
		}

	.crud-modern input:focus,
	.crud-modern select:focus,
	.crud-modern textarea:focus {
			outline: none;
			border-color: #7ca8ce !important;
			box-shadow: 0 0 0 3px rgba(57, 122, 180, 0.14);
		}

	.crud-modern input[disabled],
	.crud-modern select[disabled],
	.crud-modern textarea[disabled] {
			background: linear-gradient(180deg, #f1f5f8 0%, #e8eef4 100%) !important;
			color: #6f8296 !important;
			box-shadow: none;
		}

	.crud-modern input[type="checkbox"] {
			accent-color: #2f6ea5;
			width: 18px !important;
			height: 18px !important;
			min-width: 18px;
			min-height: 18px;
			transform: none;
			margin: 0 !important;
			vertical-align: middle;
			flex: 0 0 auto;
		}

	.crud-modern .crud-checkbox-field .w3-check {
			position: static !important;
			top: auto !important;
			left: auto !important;
		}

	.crud-modern .crud-toolbar-submit {
			display: flex;
			align-items: end;
			height: 44px;
		}

	.crud-modern .crud-toolbar-button,
	.crud-modern .crud-action-bar .w3-button,
	.crud-modern .crud-shortcut-grid .w3-button,
	.crud-modern .crud-modal-actions .w3-button {
			height: auto !important;
			min-height: 42px;
			padding: 10px 14px;
			border-radius: 6px !important;
			border: 1px solid #cddded !important;
			background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%) !important;
			color: #17324f !important;
			font-weight: 700;
			box-shadow: none;
			transition: transform 140ms ease, border-color 140ms ease;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 8px;
			box-sizing: border-box;
		}

	.crud-modern .crud-toolbar-button:hover,
	.crud-modern .crud-action-bar .w3-button:hover,
	.crud-modern .crud-shortcut-grid .w3-button:hover,
	.crud-modern .crud-modal-actions .w3-button:hover {
			transform: translateY(-1px);
			border-color: #b8cde2 !important;
			box-shadow: none;
		}

	.crud-modern .crud-list-table-wrap,
	.crud-modern .crud-form-table-wrap,
	.crud-modern .crud-detail-table-wrap {
			margin-bottom: 0;
		}

	.crud-modern .crud-form-table-wrap,
	.crud-modern .crud-detail-table-wrap {
			padding: 16px;
		}

	.crud-modern .crud-list-table tbody tr[hx-post],
	.crud-modern .crud-detail-table tbody tr[hx-post],
	.crud-modern #verificationScheduleTable tbody tr[hx-post],
	.crud-modern #verificationListTable tbody tr[hx-post] {
			cursor: pointer;
		}

	.crud-modern .crud-list-table tbody td[colspan] {
			padding: 28px 20px;
			text-align: center !important;
			color: #5d7591;
			border-bottom: none;
			background: #ffffff;
		}

	.crud-modern .crud-sort-link {
			display: inline-flex;
			align-items: center;
			gap: 6px;
		}

	.crud-modern .crud-form-table {
			width: 100%;
			border-collapse: separate;
			border-spacing: 0 12px;
		}

	.crud-modern .crud-form-table > tbody > tr > td {
			padding: 0 12px 0 0;
			vertical-align: top;
		}

	.crud-modern .crud-form-table > tbody > tr > td:last-child {
			padding-right: 0;
		}

	.crud-modern .crud-form-table .w3-table,
	.crud-modern .crud-detail-table .w3-table {
			background: transparent;
		}

	.crud-modern .crud-form-table td > input:not([type="checkbox"]):not([type="hidden"]),
	.crud-modern .crud-form-table td > select,
	.crud-modern .crud-form-table td > textarea {
			display: block;
			margin-bottom: 10px;
		}

	.crud-modern .crud-form-table td > label:not(:first-child) {
			margin-top: 8px;
		}

	.crud-modern .crud-form-table td > br,
	.crud-modern .crud-form-table td > br + br {
			display: none;
		}

	.crud-modern .crud-form-table td > table {
			margin-top: 4px;
		}

	.crud-modern .crud-form-table td > input[type="checkbox"] {
			margin: 8px 8px 10px 0;
			vertical-align: middle;
		}

	.crud-modern .crud-form-table td > .crud-checkbox-field + input:not([type="checkbox"]):not([type="hidden"]),
	.crud-modern .crud-form-table td > .crud-checkbox-field + select,
	.crud-modern .crud-form-table td > .crud-checkbox-field + textarea {
			margin-top: 2px;
		}

	.crud-modern .crud-detail-stack,
	.crud-modern .crud-verification-stack {
			display: flex;
			flex-direction: column;
			gap: 18px;
		}

	.crud-modern .crud-detail-table td,
	.crud-modern .crud-detail-table th {
			padding: 12px 14px;
		}

	.crud-modern .crud-detail-table table td,
	.crud-modern .crud-detail-table table th {
			border: none !important;
			background: transparent !important;
			padding: 6px 0;
		}

	.crud-modern .crud-action-bar {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			gap: 10px;
			padding: 8px 4px 4px;
		}

	.crud-modern .crud-action-bar > span {
			display: none !important;
		}

	.crud-modern .crud-shortcuts {
			margin: 6px 8px 0;
			padding: 16px;
			border: 1px solid #d6e4f1;
			border-radius: 10px;
			background: #ffffff;
			box-shadow: 0 10px 22px rgba(16, 42, 72, 0.08);
			display: flex;
			flex-direction: column;
			gap: 16px;
		}

	.crud-modern .crud-shortcuts .crud-view-intro {
			padding: 0;
			margin: 0;
			border: none;
			background: transparent;
			box-shadow: none;
		}

	.crud-modern .crud-shortcut-grid {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
			gap: 14px;
			align-items: stretch;
		}

	.crud-modern .crud-shortcut-grid .w3-button {
			width: 100% !important;
			justify-content: center;
			padding: 12px 16px;
		}

	.crud-modern .crud-pagination {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 14px;
			flex-wrap: wrap;
			margin: 6px 4px 0;
			padding: 12px 14px 14px;
		}

	.crud-modern .crud-pagination-links {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 8px;
			padding: 2px 0 4px;
		}

	.crud-modern .crud-page-link {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 38px;
			min-height: 38px;
			padding: 8px 12px;
			border: 1px solid #d2e2f0;
			border-radius: 6px;
			background: #ffffff;
			color: #24415d;
			font-weight: 700;
			box-shadow: none;
			box-sizing: border-box;
		}

	.crud-modern .crud-page-link.is-current {
			background: linear-gradient(180deg, #2f4660 0%, #24374d 100%);
			border-color: #24374d;
			color: #ffffff;
		}

	.crud-modern .crud-pagination-ellipsis,
	.crud-modern .crud-pagination-summary {
			color: #5d7591;
			font-weight: 700;
		}

	.crud-modern .crud-section-heading {
			margin-bottom: 0;
		}

	.crud-modern .crud-swal-popup {
			margin-top: 70px;
		}

	.crud-modern pre.w3-tiny {
			display: inline-block;
			margin: 10px 8px 14px;
			padding: 8px 12px;
			border: 1px solid #d7e6f4;
			border-radius: 6px;
			background: #ffffff;
			color: #58738f;
		}

	.crud-modern .w3-modal {
			background: rgba(17, 33, 53, 0.48);
			padding: 24px;
		}

	.crud-modern .w3-modal-content {
			background: linear-gradient(180deg, #ffffff 0%, #f6fbff 100%);
			border: 1px solid #d7e6f4;
			border-radius: 12px;
			box-shadow: 0 24px 48px rgba(17, 39, 64, 0.22);
			overflow: hidden;
		}

	.crud-modern .crud-modal-header,
	.crud-modern .w3-modal-content > header {
			background: linear-gradient(180deg, #2f4660 0%, #24374d 100%) !important;
			color: #ffffff;
			padding: 12px 16px;
		}

	.crud-modern .crud-modal-header h4,
	.crud-modern .w3-modal-content > header h4 {
			margin: 0;
		}

	.crud-modern .crud-modal-body,
	.crud-modern .w3-modal-content > .w3-container {
			background: transparent;
		}

	.crud-modern .crud-modal-actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 10px;
			padding: 0 16px 18px;
		}

	.crud-modern #rightColumn {
			position: relative;
		}

	.crud-modern .revision-documents-modal {
			position: absolute !important;
			inset: 0;
			width: auto;
			height: auto;
			padding: 18px 14px 14px;
			box-sizing: border-box;
			overflow: hidden;
			background: rgba(18, 37, 59, 0.42);
			border-radius: 12px;
			z-index: 30;
		}

	.crud-modern .revision-documents-modal-content {
			--revision-documents-control-height: 38px;
			width: 100%;
			max-width: none;
			min-width: 0 !important;
			height: 100%;
			max-height: 100%;
			margin: 0;
			display: flex;
			flex-direction: column;
		}

	.crud-modern .revision-documents-modal-body {
			flex: 1;
			min-height: 0;
			padding: 14px !important;
			overflow: hidden;
		}

	.crud-modern .revision-documents-stack {
			display: flex;
			flex-direction: column;
			gap: 14px;
		}

	.crud-modern .revision-documents-section {
			padding: 14px;
			border: 1px solid #d7e6f4;
			border-radius: 10px;
			background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
			box-shadow: 0 8px 16px rgba(16, 42, 72, 0.08);
		}

	.crud-modern .revision-documents-modal label {
			margin-bottom: 6px;
			font-size: 11px;
			line-height: 1.25;
		}

	.crud-modern .revision-documents-modal input:not([type="checkbox"]):not([type="hidden"]),
	.crud-modern .revision-documents-modal select {
			height: var(--revision-documents-control-height) !important;
			min-height: var(--revision-documents-control-height);
			padding: 8px 10px !important;
		}

	.crud-modern .revision-documents-table {
			width: 100%;
			border-collapse: separate;
			border-spacing: 0 12px;
		}

	.crud-modern .revision-documents-table td {
			padding: 0 10px 0 0;
			vertical-align: top;
		}

	.crud-modern .revision-documents-table td:last-child {
			padding-right: 0;
		}

	.crud-modern .revision-documents-table td.revision-documents-select-cell {
			width: 52%;
		}

	.crud-modern .revision-documents-table td.revision-documents-actions-cell {
			width: 48%;
			vertical-align: bottom;
		}

	.crud-modern .revision-documents-actions {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 8px;
			align-items: end;
			justify-content: stretch;
			height: auto;
			padding-top: 18px;
		}

	.crud-modern .revision-documents-actions .w3-button {
			margin: 0 !important;
			width: 100% !important;
			min-width: 0;
			height: var(--revision-documents-control-height) !important;
			min-height: var(--revision-documents-control-height);
			padding: 0 10px;
			font-size: 12px;
		}

	.crud-modern .revision-documents-footer {
			justify-content: flex-start;
			gap: 10px;
			padding-top: 2px;
		}

	.crud-modern .revision-documents-uploader {
			margin: 0;
			width: 100%;
			padding: 0;
			border: 0;
		}

	.crud-modern .revision-documents-upload-shell {
			padding: 12px;
		}

	.crud-modern .revision-documents-upload-shell .uppy-Dashboard-inner,
	.crud-modern .revision-documents-upload-shell .uppy-Dashboard--animateOpenClose {
			width: 100% !important;
			max-width: 100% !important;
			height: 104px !important;
			min-height: 104px !important;
			border-radius: 10px;
			border-color: #d7e6f4;
			box-shadow: none;
		}

	.crud-modern .revision-documents-upload-shell .uppy-Dashboard-innerWrap {
			border-radius: 10px;
		}

	.crud-modern .revision-documents-upload-shell .uppy-Dashboard-AddFiles {
			border-radius: 8px;
		}

	@media (max-width: 1100px) {
			.crud-modern .crud-layout {
				grid-template-columns: 1fr;
			}

			.crud-modern .crud-panel {
				height: auto;
			}

			.crud-modern .crud-column-content {
				height: auto;
				max-height: none;
			}

			.crud-modern .revision-documents-modal {
				padding: 14px 10px 10px;
			}

			.crud-modern .revision-documents-actions {
				grid-template-columns: repeat(3, minmax(0, 1fr));
			}
		}

	@media (max-width: 760px) {
			.crud-modern.crud-shell {
				margin: 6px;
				padding: 12px;
			}

			.crud-modern .crud-column-content {
				padding: 20px 20px 24px;
			}

			.crud-modern .crud-list-shell,
			.crud-modern .crud-edit-shell,
			.crud-modern .crud-form-shell {
				padding: 4px;
			}

			.crud-modern .crud-shortcuts {
				margin: 4px 4px 0;
				padding: 12px;
				gap: 12px;
			}

			.crud-modern .crud-toolbar {
				grid-template-columns: 1fr;
				position: static;
				padding: 12px;
			}

			.crud-modern .crud-toolbar-submit {
				display: block;
				height: auto;
			}

			.crud-modern .crud-toolbar-button {
				width: 100%;
				height: 44px !important;
			}

			.crud-modern .revision-documents-modal {
				padding: 10px 8px 8px;
				border-radius: 10px;
			}

			.crud-modern .revision-documents-modal-body {
				padding: 12px !important;
			}

			.crud-modern .revision-documents-section,
			.crud-modern .revision-documents-upload-shell {
				padding: 12px;
			}

			.crud-modern .revision-documents-table,
			.crud-modern .revision-documents-table tbody,
			.crud-modern .revision-documents-table tr,
			.crud-modern .revision-documents-table td {
				display: block;
				width: 100% !important;
			}

			.crud-modern .revision-documents-table td {
				padding: 0 0 10px;
			}

			.crud-modern .revision-documents-actions {
				display: flex;
				flex-wrap: wrap;
				padding-top: 0;
			}

			.crud-modern .revision-documents-actions .w3-button,
			.crud-modern .revision-documents-footer .w3-button {
				width: 100% !important;
			}

			.crud-modern .crud-form-table,
			.crud-modern .crud-form-table tbody,
			.crud-modern .crud-form-table tr,
			.crud-modern .crud-form-table td {
				display: block;
				width: 100%;
			}

			.crud-modern .crud-form-table > tbody > tr > td {
				padding: 0 0 12px;
			}

			.crud-modern .crud-form-table-wrap,
			.crud-modern .crud-detail-table-wrap {
				padding: 12px;
			}
		}

	/* ====================================================================
	   Login - modernised card layout
	   Replaces the legacy table-based login panel with a soft, rounded
	   card. Sits as the page-level w3-display-middle element.
	   ==================================================================== */

	.login-modern {
			width: min(420px, 92vw) !important;
			max-width: 92vw;
			background: #ffffff !important;
			border: 1px solid #d6e4f1 !important;
			border-radius: 12px !important;
			box-shadow: 0 26px 52px rgba(17, 39, 64, 0.16);
			overflow: hidden;
			color: #17324f;
			font-family: "Trebuchet MS", "Verdana", "Tahoma", sans-serif;
			animation: login-card-rise 360ms ease-out;
		}

	.login-modern,
	.login-modern h1,
	.login-modern h2,
	.login-modern h3,
	.login-modern h4,
	.login-modern h5,
	.login-modern p,
	.login-modern label,
	.login-modern button,
	.login-modern input {
			font-family: "Trebuchet MS", "Verdana", "Tahoma", sans-serif;
		}

	.login-modern .login-hero {
			position: relative;
			width: 100%;
			aspect-ratio: 349 / 161;
			background: linear-gradient(180deg, #2f4660 0%, #24374d 100%);
			overflow: hidden;
		}

	.login-modern .login-hero img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}

	.login-modern .login-hero::after {
			content: '';
			position: absolute;
			inset: 0;
			background: linear-gradient(180deg, rgba(17, 39, 64, 0) 55%, rgba(17, 39, 64, 0.45) 100%);
			pointer-events: none;
		}

	.login-modern .login-brand {
			position: absolute;
			left: 18px;
			bottom: 12px;
			right: 18px;
			z-index: 1;
			color: #ffffff;
			font-weight: 700;
			font-size: 18px;
			letter-spacing: 0.01em;
			text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
		}

	.login-modern .login-body {
			padding: 22px 26px 18px;
			display: flex;
			flex-direction: column;
			gap: 14px;
		}

	.login-modern .login-intro {
			margin: 0;
			font-size: 13px;
			line-height: 1.5;
			color: #57718f;
		}

	.login-modern .login-field {
			display: flex;
			flex-direction: column;
			gap: 6px;
		}

	.login-modern .login-label {
			font-size: 11px;
			font-weight: 700;
			letter-spacing: 0.04em;
			text-transform: uppercase;
			color: #27435f;
		}

	.login-modern .login-input {
			width: 100%;
			padding: 11px 14px !important;
			font-size: 14px;
			color: #17324f !important;
			background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
			border: 1px solid #d6e4f1 !important;
			border-radius: 8px !important;
			box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
			transition: border-color 140ms ease, box-shadow 140ms ease;
			box-sizing: border-box;
		}

	.login-modern .login-input:focus {
			outline: none;
			border-color: #7ca8ce !important;
			box-shadow: 0 0 0 3px rgba(57, 122, 180, 0.18);
		}

	.login-modern .login-input::placeholder {
			color: #8aa2bc;
		}

	.login-modern .login-button {
			width: 100%;
			padding: 12px 16px;
			font-size: 14px;
			font-weight: 700;
			letter-spacing: 0.01em;
			border-radius: 8px;
			cursor: pointer;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 10px;
			transition: transform 140ms ease, box-shadow 140ms ease, border-color 140ms ease;
			box-sizing: border-box;
		}

	.login-modern .login-button-primary {
			border: 1px solid #24374d;
			background: linear-gradient(180deg, #2f4660 0%, #24374d 100%);
			color: #ffffff;
		}

	.login-modern .login-button-primary:hover {
			transform: translateY(-1px);
			box-shadow: 0 12px 22px rgba(16, 42, 72, 0.22);
		}

	.login-modern .login-button-primary i {
			color: #ffffff !important;
		}

	.login-modern .login-button-secondary {
			border: 1px solid #d6e4f1;
			background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%);
			color: #17324f;
		}

	.login-modern .login-button-secondary:hover {
			transform: translateY(-1px);
			border-color: #b8cde2;
			box-shadow: 0 10px 18px rgba(16, 42, 72, 0.12);
		}

	.login-modern .login-button-stack {
			display: flex;
			flex-direction: column;
			gap: 10px;
		}

	.login-modern .login-message {
			margin: 4px 0 0;
			padding: 10px 12px;
			font-size: 12.5px;
			line-height: 1.4;
			text-align: center;
			border-radius: 6px;
			border: 1px solid transparent;
		}

	.login-modern .login-message-error {
			background: #fdecec;
			color: #8a1c1c;
			border-color: #f5c2c2;
		}

	.login-modern .login-message-success {
			background: #e8f5e9;
			color: #1b5e20;
			border-color: #b9dfb9;
		}

	.login-modern .login-message-warning {
			background: #fff8e1;
			color: #6b4a00;
			border-color: #ffe6a3;
		}

	.login-modern .login-info {
			margin: 0;
			padding: 12px 14px;
			font-size: 13px;
			line-height: 1.5;
			color: #2c4866;
			background: #f7fbff;
			border: 1px solid #e1ebf6;
			border-radius: 8px;
		}

	.login-modern .login-info p { margin: 0 0 8px; }
	.login-modern .login-info p:last-child { margin: 0; }

	.login-modern .login-partner {
			display: flex;
			justify-content: center;
			padding: 6px 0 2px;
			opacity: 0.85;
		}

	.login-modern .login-partner img {
			max-width: 150px;
			height: auto;
		}

	.login-modern .login-footer {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 6px;
			padding: 10px 16px;
			background: #f7fbff;
			border-top: 1px solid #ebf2f9;
		}

	.login-modern .login-footer-group {
			display: flex;
			align-items: center;
			gap: 4px;
			flex-wrap: wrap;
		}

	.login-modern .login-footer-link {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			padding: 6px 10px;
			font-size: 11.5px;
			font-weight: 600;
			color: #4a627d;
			background: transparent;
			border: 0;
			border-radius: 5px;
			cursor: pointer;
			transition: background 140ms ease, color 140ms ease;
		}

	.login-modern .login-footer-link:hover {
			background: #ffffff;
			color: #17324f;
			box-shadow: 0 4px 10px rgba(16, 42, 72, 0.08);
		}

	.login-modern .login-footer-link i {
			font-size: 12px;
		}

	@keyframes login-card-rise {
			from { opacity: 0; transform: translate(-50%, calc(-50% + 8px)); }
			to   { opacity: 1; transform: translate(-50%, -50%); }
		}

	@media (max-width: 480px) {
			.login-modern { width: 92vw !important; }
			.login-modern .login-body { padding: 18px 18px 14px; }
			.login-modern .login-footer { padding: 8px 12px; }
		}

	/* ---------------------------------------------------------------
	   Barrier details panel (search-edit) inside the right column.
	   When HTMX swaps the search-edit content into #rightColumn, the
	   surrounding .search-side-scroll wrapper (which carries the 12px
	   padding for the initial stats view) is discarded, so the
	   "Barrier Details" heading card ends up flush against the panel
	   border. Pad the right column directly when the barrier-details
	   stack is present, and give the heading a little more breathing
	   room above the orange hazard row.
	   --------------------------------------------------------------- */

	.search-modern .barrier-detail-view {
			padding: 14px;
			display: flex;
			flex-direction: column;
			gap: 12px;
		}

	.search-modern .barrier-detail-view > .search-view-intro.crud-section-heading {
			margin: 0;
		}

	.search-modern .barrier-detail-view > .crud-detail-stack,
	.search-modern .barrier-detail-view > .crud-verification-stack {
			margin: 0;
		}

	.search-modern .barrier-detail-view > pre {
			margin: 4px 2px 0;
		}

	/* ---------------------------------------------------------------
	   Verification section inside the search view (right column).
	   The snippet-list-schedules / snippet-list-verifications partials
	   use classes scoped to .crud-modern (.crud-view-header,
	   .crud-icon-button, .crud-verification-stack) and
	   .dashboard-modern (.dashboard-empty-state). When included from
	   search-edit-view.php the parent shell is .search-modern, so
	   those rules never apply, causing the Create Plan action to wrap
	   under the title and the empty-state text to render with no
	   container padding. Mirror the needed rules here.
	   --------------------------------------------------------------- */

	.search-modern .crud-verification-stack {
			display: flex;
			flex-direction: column;
			gap: 12px;
			margin-top: 12px;
		}

	.search-modern .crud-view-intro .crud-view-header {
			display: flex;
			flex-wrap: nowrap;
			align-items: center;
			justify-content: space-between;
			gap: 10px;
		}

	.search-modern .crud-view-intro .crud-view-header > .search-view-title {
			flex: 1 1 auto;
			min-width: 0;
		}

	.search-modern .crud-view-intro .crud-icon-button {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			padding: 6px 10px;
			border: 1px solid #d2e2f0;
			border-radius: 6px;
			background: linear-gradient(180deg, #ffffff 0%, #f2f8ff 100%);
			color: #17324f;
			font-size: 12px;
			font-weight: 700;
			text-decoration: none;
			white-space: nowrap;
			flex: 0 0 auto;
			transition: transform 140ms ease, border-color 140ms ease;
		}

	.search-modern .crud-view-intro .crud-icon-button:hover {
			transform: translateY(-1px);
			border-color: #b8cde2;
		}

	.search-modern .dashboard-empty-state,
	.crud-modern .dashboard-empty-state {
			padding: 14px 16px;
			margin: 8px 0 0;
			text-align: center;
			color: #5d7591;
			border: 1px dashed #c7d9eb;
			border-radius: 8px;
			background: #ffffff;
		}

	.search-modern #verificationScheduleRowsContainer,
	.search-modern #verificationsRowsContainer {
			padding: 0 2px;
		}

/* ===== Top Navigation Bar — Dark Theme ===== */
.bs-top-menu {
	background-color: #1c2333 !important;
	color: #e8eaf0 !important;
}

/* Remove the white box appearance from dropdown containers sitting on the dark bar */
#topMenu .w3-dropdown-hover {
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
}

/* Restore white panel for the actual dropdown content */
#topMenu .w3-dropdown-content {
	background-color: #ffffff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	top: 100% !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Dropdown trigger buttons — transparent on the dark bar */
#topMenu .w3-dropdown-hover > button {
	background-color: transparent !important;
	color: #e8eaf0 !important;
}
#topMenu .w3-dropdown-hover > button:hover {
	background-color: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
}

/* White icons in dropdown trigger buttons */
#topMenu .w3-dropdown-hover > button i {
	color: #ffffff !important;
}

/* White icon for the home shortcut (direct span child of td) */
#topMenu table tr td > span i {
	color: #ffffff !important;
}
#topMenu table tr td > span {
	color: #e8eaf0;
}

/* White icons inside search and selector forms */
#topMenu form span i {
	color: #ffffff !important;
}

/* Constrain dbFieldSelect-generated selects in the top bar */
#topMenu .w3-menuSelector {
	height: 24px !important;
	padding-top: 2px !important;
	padding-bottom: 2px !important;
}

/* ===== Bottom Footer Bar — Dark Theme ===== */
#bottomMenu {
	background-color: #1c2333 !important;
	color: #e8eaf0 !important;
}
#bottomMenu a,
#bottomMenu .w3-button,
#bottomMenu .w3-bar-item {
	color: #e8eaf0 !important;
}
#bottomMenu .w3-button:hover,
#bottomMenu .w3-bar-item:hover {
	background-color: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
}

/* ====================================================================
   Barrier Verification page — content spacing improvements
   Scoped to #verificationDiv so other CRUD forms are unaffected.
   ==================================================================== */
#verificationDiv .crud-form-table {
	border-spacing: 0 22px !important;
}

#verificationDiv .crud-form-table > tbody > tr > td {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
	padding-right: 18px !important;
	line-height: 1.55 !important;
	vertical-align: middle !important;
}

#verificationDiv .crud-form-table > tbody > tr > td:last-child {
	padding-right: 0 !important;
}

#verificationDiv .crud-form-table label {
	display: block !important;
	margin-bottom: 10px !important;
}

#verificationDiv .crud-form-table td > input:not([type="checkbox"]):not([type="hidden"]),
#verificationDiv .crud-form-table td > select,
#verificationDiv .crud-form-table td > textarea {
	margin-bottom: 0 !important;
}

#verificationDiv.crud-form-shell {
	gap: 22px !important;
	padding: 14px !important;
}

#verificationDiv .crud-form-table-wrap {
	padding: 10px 20px !important;
}

#verificationDiv .crud-action-bar {
	margin-top: 14px !important;
	margin-bottom: 18px !important;
	padding: 10px 12px !important;
	gap: 6px !important;
	justify-content: flex-start !important;
	flex-wrap: nowrap !important;
}

#verificationDiv .crud-action-bar > button {
	width: 108px !important;
	min-width: 0 !important;
	flex: 0 0 auto !important;
}

#verificationDiv #evidenceFiles {
	margin-top: 18px !important;
	padding: 0 20px 18px !important;
}

#verificationDiv #evidenceFiles > .w3-container {
	padding: 0 !important;
}

#verificationDiv #evidenceFiles .w3-table {
	margin-bottom: 14px !important;
}

