/**
 * Zoekveld (header) en resultatenpagina.
 * Aparte stylesheet zodat style.css ongemoeid blijft.
 */

.isoc-search {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	padding: 0.15rem 0.15rem 0.15rem 0.6rem;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.isoc-search:focus-within {
	border-color: var(--color-accent);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.isoc-search__field {
	border: 0;
	background: transparent;
	font: inherit;
	font-size: 0.88rem;
	color: var(--color-text);
	padding: 0.35rem 0;
	width: 11rem;
	max-width: 100%;
}

.isoc-search__field::placeholder {
	color: var(--color-muted);
	opacity: 0.8;
}

.isoc-search__field:focus {
	outline: none;
}

.isoc-search__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	background: var(--color-accent);
	color: #fff;
	border-radius: calc(var(--radius) - 4px);
	padding: 0.4rem 0.55rem;
	cursor: pointer;
	line-height: 0;
	transition: background 0.15s ease;
}

.isoc-search__submit:hover,
.isoc-search__submit:focus-visible {
	background: var(--color-accent-hover);
}

/* Op smalle schermen staat het veld onder het logo; laat het meegroeien. */
@media (max-width: 640px) {
	.isoc-header-tools {
		flex-wrap: wrap;
	}

	.isoc-search {
		order: 2;
		width: 100%;
	}

	.isoc-search__field {
		width: 100%;
		flex: 1 1 auto;
	}
}

/* --- Resultatenpagina --- */

.isoc-search-results__head {
	margin-bottom: var(--space-lg);
}

.isoc-search-results__title {
	margin: 0 0 var(--space-md);
	font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.1rem);
	line-height: 1.2;
}

.isoc-search-results__term {
	color: var(--color-accent);
	overflow-wrap: anywhere;
}

.isoc-search-results__head .isoc-search {
	max-width: 26rem;
}

.isoc-search-results__head .isoc-search__field {
	width: 100%;
	flex: 1 1 auto;
}

.isoc-search-results__count {
	margin: var(--space-sm) 0 0;
	color: var(--color-muted);
	font-size: 0.9rem;
}

.isoc-search-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--space-md);
}

.isoc-search-list__item {
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	padding: var(--space-md);
}

.isoc-search-list__kind {
	display: inline-block;
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-muted);
	margin-bottom: 0.35rem;
}

.isoc-search-list__title {
	margin: 0 0 0.4rem;
	font-size: 1.12rem;
	line-height: 1.35;
}

.isoc-search-list__title a {
	color: var(--color-text);
	text-decoration: none;
}

.isoc-search-list__title a:hover,
.isoc-search-list__title a:focus-visible {
	color: var(--color-accent);
	text-decoration: underline;
}

.isoc-search-list__excerpt {
	margin: 0;
	color: var(--color-muted);
	font-size: 0.94rem;
	line-height: 1.6;
}

.isoc-search-empty {
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	padding: var(--space-lg);
}

.isoc-search-empty__title {
	margin: 0 0 var(--space-sm);
	font-size: 1.25rem;
}

.isoc-search-empty__links {
	margin: var(--space-sm) 0 0;
	padding-left: 1.1rem;
	display: grid;
	gap: 0.3rem;
}
