/* List/search-bar/item layout only -- the detail modal reuses the theme's
   own .dsbn-modal system (css/style.css) directly, see assets/scholarships.js. */

.dsbn-scholarships__controls {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin-bottom: 1.75rem;
}

.dsbn-scholarships__field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	flex: 1 1 14rem;
}

.dsbn-scholarships__field > span {
	font-family: var(--dsbn-font-body);
	font-size: 0.9rem;
	font-weight: var(--dsbn-fw-semibold);
	color: var(--dsbn-color-ink);
}

.dsbn-scholarships__month,
.dsbn-scholarships__search {
	width: 100%;
	min-height: 3rem;
	padding: 0 1rem;
	border: 1px solid var(--dsbn-color-line);
	border-radius: var(--dsbn-radius-sm);
	background: var(--dsbn-color-surface);
	font: inherit;
	font-size: 1rem;
	color: var(--dsbn-color-ink);
}

.dsbn-scholarships__month:focus,
.dsbn-scholarships__search:focus {
	outline: none;
	border-color: var(--dsbn-color-primary);
	box-shadow: 0 0 0 3px rgba(26, 153, 229, 0.22);
}

.dsbn-scholarships__list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* No unconditional `display` value on the item itself, deliberately --
   assets/scholarships.js toggles visibility via inline style.display, and
   giving this class its own competing `display` here is exactly the
   mistake that silently broke filtering in dsbn-community-connections
   (an author `display:grid` beat the browser's own `[hidden]` UA rule at
   equal specificity). Nothing here to collide with. */
.dsbn-scholarships__item {
	margin: 0;
}

.dsbn-scholarships__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	min-height: 44px;
	padding: 0.9rem 1.5rem;
	border: 1px solid var(--dsbn-color-card-border);
	border-radius: var(--dsbn-radius-sm);
	background: var(--dsbn-color-surface);
	font: inherit;
	font-size: 1.05rem;
	color: var(--dsbn-color-ink);
	text-align: left;
	cursor: pointer;
	transition: transform var(--dsbn-transition), box-shadow var(--dsbn-transition), border-color var(--dsbn-transition);
}

.dsbn-scholarships__trigger:hover,
.dsbn-scholarships__trigger:focus-visible {
	border-color: var(--dsbn-color-primary);
	box-shadow: var(--dsbn-shadow-card-hover);
	transform: translateY(-2px);
}

.dsbn-scholarships__trigger:focus-visible {
	outline: 2px solid var(--dsbn-color-primary);
	outline-offset: 2px;
}

.dsbn-scholarships__name {
	flex: 1;
}

.dsbn-scholarships__badge {
	flex-shrink: 0;
	padding: 0.25rem 0.75rem;
	border-radius: var(--dsbn-radius-pill);
	background: var(--dsbn-color-surface-tint);
	color: var(--dsbn-color-primary);
	font-size: 0.8rem;
	font-weight: var(--dsbn-fw-semibold);
}

.dsbn-scholarships__empty {
	margin: 1.5rem 0 0;
	color: var(--dsbn-color-muted);
	font-style: italic;
}

@media (max-width: 768px) {
	.dsbn-scholarships__controls {
		flex-direction: column;
		gap: 1rem;
	}

	.dsbn-scholarships__field {
		flex-basis: auto;
	}
}
