/* RecruitmentDB overrides. Keep vendor theme files unchanged. */
:root {
	--rdb-focus-color: #0d6efd;
}

:focus-visible {
	outline: 3px solid var(--rdb-focus-color);
	outline-offset: 2px;
}

.skip-link {
	background: #fff;
	left: 1rem;
	padding: 0.75rem 1rem;
	position: fixed;
	top: -5rem;
	z-index: 1100;
}

.skip-link:focus {
	top: 1rem;
}

.app-sidebar .menu-link[aria-current="page"] {
	font-weight: 600;
}

.app-header .navbar-user form,
.app-header .navbar-user .dropdown-item {
	margin: 0;
}

.app-header .navbar-user .dropdown-item {
	text-align: left;
	width: 100%;
}

.app-sidebar .menu-profile-link {
	cursor: default;
}

.app-sidebar-minify-btn {
	background: transparent;
	color: inherit;
}

.login-branding-footer {
	border-top: 1px solid var(--bs-border-color);
	font-size: 0.75rem;
	margin-top: 2rem;
	padding-top: 1rem;
}

.requirement-list-panel {
	border: 0;
	border-radius: 0.75rem;
	box-shadow: 0 0.125rem 0.75rem rgba(31, 45, 61, 0.07);
}

.requirement-table thead th {
	background: #f7f9fc;
	border-bottom: 0;
	color: #6c757d;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 0.85rem 1rem;
	text-transform: uppercase;
}

.requirement-table tbody td {
	border-bottom: 1px solid rgba(0, 0, 0, 0.055);
	padding: 1rem;
}

.requirement-table tbody tr:last-child td {
	border-bottom: 0;
}

.requirement-table tbody tr:hover {
	background: rgba(52, 143, 226, 0.035);
}

#document-requirements-table_wrapper .dataTables_filter input,
#document-requirements-table_wrapper .dataTables_length select {
	border-color: #e5e9f0;
	border-radius: 0.5rem;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
