/* search shortcode wrapper */
.scry_ms_aj_search {
	width: 100%;
	box-sizing: border-box;
	color: var(--scry_ms_aj_text_color, #111111);
}

/* full-width search bar */
.scry_ms_aj_search-bar {
	width: 100%;
	margin: 0 0 0.75em;
}

.scry_ms_aj_search-input {
	width: 100%;
	box-sizing: border-box;
	padding: var(--scry_ms_aj_input_padding, 0.5rem 0.75rem);
	font-size: var(--scry_ms_aj_input_font_size, 1em);
	height: var(--scry_ms_aj_input_height, auto);
	color: var(--scry_ms_aj_text_color, #111111);
	background: var(--scry_ms_aj_bg_color, #ffffff);
	border: var(--scry_ms_aj_border_width, 1px) solid var(--scry_ms_aj_border_color, #dddddd);
	border-radius: var(--scry_ms_aj_border_radius, 4px);
}

.scry_ms_aj_search-input:focus {
	outline: 2px solid var(--scry_ms_aj_checked_color, #2271b1);
	outline-offset: 1px;
}

/* muted results count */
.scry_ms_aj_stat-report {
	display: block;
	margin: 0 0 0.5em;
	font-size: 0.6125em;
	color: #888;
}

/* blank results area; height from --scry_ms_aj_height */
.scry_ms_aj_results {
	position: relative;
	width: 100%;
	height: var(--scry_ms_aj_height, 400px);
	box-sizing: border-box;
	overflow: auto;
	color: var(--scry_ms_aj_text_color, #111111);
	background: var(--scry_ms_aj_bg_color, #ffffff);
	border: var(--scry_ms_aj_border_width, 1px) solid var(--scry_ms_aj_border_color, #dddddd);
	border-radius: var(--scry_ms_aj_border_radius, 4px);
	/* Firefox: thumb then track */
	scrollbar-color: var(--scry_ms_aj_border_color, #dddddd) var(--scry_ms_aj_checked_color, #2271b1);
	scrollbar-width: thin;
}

/* WebKit: thumb = border color, track = accent */
.scry_ms_aj_results::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

.scry_ms_aj_results::-webkit-scrollbar-track {
	background: var(--scry_ms_aj_checked_color, #2271b1);
}

.scry_ms_aj_results::-webkit-scrollbar-thumb {
	background: var(--scry_ms_aj_border_color, #dddddd);
	border-radius: var(--scry_ms_aj_border_radius, 4px);
}

.scry_ms_aj_results-placeholder {
	margin: 0;
	color: #666;
	padding: 0.5rem 0.75rem;
}

/* ajax search result items (rendered_ajax.php) */
.scry_ms_aj_results-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.scry_ms_aj_result-item {
	margin: 0;
	padding: 0 1rem;
}

.scry_ms_aj_result-item:hover {
	background: color-mix(in srgb, var(--scry_ms_aj_checked_color, #2271b1) 12%, transparent);
}

.scry_ms_aj_result-divider {
	border: 0;
	border-top: 1px solid var(--scry_ms_aj_border_color, #eeeeee);
	margin: 0;
}

.scry_ms_aj_result-link {
	display: flex;
	align-items: center;
	gap: 0.75em;
	padding: 0.5rem 0;
	text-decoration: none;
	color: inherit;
}

.scry_ms_aj_result-thumb {
	width: 40px;
	height: 40px;
	object-fit: cover;
	flex-shrink: 0;
}

.scry_ms_aj_result-title {
	flex: 1;
	min-width: 0;
}

.scry_ms_aj_results-empty {
	margin: 0.5rem 0.75rem;
	color: #666;
}

.scry_ms_aj_loader {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	color: #666;
	pointer-events: none;
	z-index: 1;
}

/* dedicated spinner below results while the next infinite-scroll page loads */
.scry_ms_aj_infinite-loader {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.75rem 0 1rem;
	flex-shrink: 0;
	color: #666;
	pointer-events: none;
}

.scry_ms_aj_loader-inner,
.scry_ms_aj_loader-inner-inner {
	display: flex;
	align-items: center;
	justify-content: center;
}

.scry_ms_aj_loader-inner-inner-inner {
	width: 1.5rem;
	height: 1.5rem;
	border: 2px solid #ddd;
	border-top-color: #666;
	border-radius: 50%;
	animation: scry_ms_aj_spin 0.7s linear infinite;
}

@keyframes scry_ms_aj_spin {
	to {
		transform: rotate(360deg);
	}
}

/* standard pagination controls */
.scry_ms_aj_pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin-top: 0.75rem;
}

.scry_ms_aj_pagination-pages {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}

.scry_ms_aj_pagination-prev,
.scry_ms_aj_pagination-next,
.scry_ms_aj_pagination-page {
	min-width: 2rem;
	padding: 0.25rem 0.5rem;
	border: var(--scry_ms_aj_border_width, 1px) solid var(--scry_ms_aj_border_color, #dddddd);
	border-radius: var(--scry_ms_aj_border_radius, 4px);
	background: var(--scry_ms_aj_bg_color, #ffffff);
	color: var(--scry_ms_aj_text_color, #111111);
	cursor: pointer;
}

.scry_ms_aj_pagination-page-current,
.scry_ms_aj_pagination-prev:hover:not(:disabled),
.scry_ms_aj_pagination-next:hover:not(:disabled),
.scry_ms_aj_pagination-page:hover {
	border-color: var(--scry_ms_aj_checked_color, #2271b1);
	color: var(--scry_ms_aj_checked_color, #2271b1);
}

.scry_ms_aj_pagination-prev:disabled,
.scry_ms_aj_pagination-next:disabled {
	opacity: 0.45;
	cursor: default;
}

.scry_ms_aj_page-size {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	margin-top: 0.5rem;
	font-size: 0.875em;
}

.scry_ms_aj_infinite-sentinel {
	height: 24px;
	width: 100%;
	flex-shrink: 0;
	pointer-events: none;
}

/* utility classes */
.scry_ms_aj_hidden {
	display: none;
}