.bds-form {
	--bds-accent: #2563eb;
	--bds-ok: #15803d;
	--bds-bad: #b91c1c;
	--bds-line: #d1d5db;
	max-width: 560px;
	margin: 0 auto;
	font-size: 16px;
}
.bds-form [hidden] { display: none !important; }
.bds-field { margin: 0 0 18px; border: 0; padding: 0; }
.bds-field > label,
.bds-field legend { display: block; font-weight: 600; margin-bottom: 6px; padding: 0; }
.bds-form input[type="text"],
.bds-form input[type="email"],
.bds-form input[type="tel"] {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid var(--bds-line);
	border-radius: 8px;
	background: #fff;
	color: #111;
	font-size: 16px;
}
.bds-form input:focus { outline: 2px solid var(--bds-accent); outline-offset: 1px; }
.bds-choice label { display: inline-flex; align-items: center; gap: 6px; margin-right: 20px; font-weight: 400; }
.bds-search-row { display: flex; gap: 8px; }
.bds-search-row input { flex: 1; min-width: 0; }

.bds-btn {
	border: 0;
	border-radius: 8px;
	padding: 12px 20px;
	background: var(--bds-accent);
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	cursor: pointer;
}
.bds-btn:disabled { opacity: .6; cursor: wait; }
.bds-btn-submit { width: 100%; padding: 14px; }

.bds-results { margin-top: 12px; }
.bds-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid var(--bds-line);
	border-radius: 8px;
	margin-bottom: 8px;
}
.bds-domain { flex: 1; font-weight: 600; word-break: break-all; }
.bds-badge { font-size: 13px; font-weight: 600; }
.bds-row.is-available .bds-badge { color: var(--bds-ok); }
.bds-row.is-taken .bds-badge { color: var(--bds-bad); }
.bds-row.is-taken .bds-domain { color: #6b7280; text-decoration: line-through; }
.bds-row.is-unknown .bds-badge { color: #6b7280; }
.bds-pick {
	border: 1px solid var(--bds-ok);
	background: #fff;
	color: var(--bds-ok);
	border-radius: 6px;
	padding: 6px 12px;
	font-weight: 600;
	cursor: pointer;
}
.bds-pick.is-picked { background: var(--bds-ok); color: #fff; }
.bds-picked { margin: 8px 0 0; }
.bds-loading { color: #6b7280; }
.bds-error { color: var(--bds-bad); }

.bds-msg { margin-top: 14px; font-weight: 600; }
.bds-msg.is-ok { color: var(--bds-ok); }
.bds-msg.is-error { color: var(--bds-bad); }

.bds-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 480px) {
	.bds-search-row { flex-direction: column; }
	.bds-choice label { display: flex; margin: 0 0 6px; }
}
