.hftm-athlete-selector {
	color: var(--hf-text-color, #ffffff);
	display: grid;
	gap: 0.8rem;
}

.hftm-athlete-selector__title,
.hftm-athlete-selector__field,
.hftm-athlete-selector__hint,
.hftm-athlete-selector__manual-title {
	margin: 0;
}

.hftm-athlete-selector__title {
	color: var(--hf-text-color, #ffffff);
	font-size: 1rem;
}

.hftm-athlete-selector__hint {
	color: var(--hf-text-muted, rgba(255, 255, 255, 0.72));
	font-size: 0.92rem;
	line-height: 1.45;
}

.hftm-athlete-selector__divider {
	align-items: center;
	color: var(--hf-text-muted, rgba(255, 255, 255, 0.72));
	display: grid;
	font-size: 0.76rem;
	font-weight: 800;
	gap: 0.75rem;
	grid-template-columns: 1fr auto 1fr;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.hftm-athlete-selector__divider[hidden] {
	display: none;
}

.hftm-athlete-selector__divider::before,
.hftm-athlete-selector__divider::after {
	background: var(--hf-border-color, rgba(255, 255, 255, 0.12));
	content: "";
	height: 1px;
}

.hftm-athlete-selector__divider span {
	color: var(--hf-accent-color, #32cd32);
}

.hftm-athlete-selector__manual-title {
	color: var(--hf-text-color, #ffffff);
	font-size: 0.92rem;
	font-weight: 800;
	grid-column: 1 / -1;
}

.hftm-athlete-selector__manual {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: minmax(0, 1.35fr) minmax(135px, 0.65fr);
}

.hftm-athlete-selector__manual[hidden] {
	display: none;
}

.hftm-athlete-selector label {
	color: var(--hf-text-color, #ffffff);
	display: block;
	font-weight: 700;
	margin: 0 0 0.35rem;
}

.hftm-athlete-selector input,
.hftm-athlete-selector select {
	background: var(--hf-card-background-lighter, #222222);
	border: 2px solid var(--hf-border-color, rgba(255, 255, 255, 0.12));
	border-radius: 6px;
	box-sizing: border-box;
	color: var(--hf-text-color, #ffffff);
	min-height: 38px;
	padding: 8px 10px;
	width: 100%;
}

.hftm-athlete-selector select option {
	background: var(--hf-card-background-lighter, #222222);
	color: var(--hf-text-color, #ffffff);
}

.hftm-athlete-selector input::placeholder {
	color: var(--hf-text-muted, rgba(255, 255, 255, 0.72));
}

.hftm-athlete-selector input:focus,
.hftm-athlete-selector select:focus {
	background: var(--hf-card-background-lighter, #222222);
	border-color: var(--hf-accent-color, #32cd32);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--hf-accent-color, #32cd32) 22%, transparent);
	color: var(--hf-text-color, #ffffff);
	outline: none;
}

@media (max-width: 520px) {
	.hftm-athlete-selector__manual {
		grid-template-columns: 1fr;
	}
}
