.htest-hub { max-width: 900px; margin: 0 auto; font-family: inherit; color: var(--htest-text, #1f2937); }

.htest-hub-search {
	background: var(--htest-bg-soft, #faf7f5);
	border-radius: var(--htest-radius, 14px);
	padding: 26px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-bottom: 36px;
}
.htest-hub-search label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; color: var(--htest-text, #1f2937); }
.htest-hub-search input, .htest-hub-search select {
	padding: 10px 12px; border: 1px solid #e0d8d3; border-radius: 8px; font-size: 14px; font-weight: 400; box-sizing: border-box;
}
.htest-hub-autocomplete {
	position: absolute; left: 0; right: 0; top: 100%; margin-top: 2px; background: #fff;
	border: 1px solid var(--htest-border, #eaeaea); border-radius: 8px; box-shadow: 0 6px 18px rgba(0,0,0,.1);
	z-index: 20; max-height: 220px; overflow-y: auto;
}
.htest-hub-autocomplete-item { padding: 8px 12px; font-size: 13px; font-weight: 400; cursor: pointer; }
.htest-hub-autocomplete-item:hover { background: var(--htest-bg-soft, #faf7f5); }
.htest-hub-search button {
	grid-column: 1 / -1;
	margin-top: 4px;
	padding: 13px;
	border: none;
	border-radius: 8px;
	background: var(--htest-accent, #e8611c);
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	letter-spacing: .02em;
}
.htest-hub-search button:hover { background: var(--htest-accent-dark, #c94f11); }

@media (max-width: 600px) {
	.htest-hub-search { grid-template-columns: 1fr; }
}

.htest-hub-categories {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px;
}
@media (max-width: 800px) {
	.htest-hub-categories { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
	.htest-hub-categories { grid-template-columns: 1fr; }
}

.htest-hub-category h3 {
	font-size: 15px;
	font-weight: 700;
	margin: 0 0 12px;
	color: var(--htest-accent-dark, #c94f11);
	border-bottom: 2px solid var(--htest-bg-soft, #faf7f5);
	padding-bottom: 8px;
}
.htest-hub-category ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.htest-hub-category a {
	color: var(--htest-text, #1f2937);
	text-decoration: none;
	font-size: 14px;
}
.htest-hub-category a:hover { color: var(--htest-accent, #e8611c); text-decoration: underline; }
