/* Accelerated Sentinel for User Registration — widget */

.ascur-widget {
	--ascur-bg: #f6f7f9;
	--ascur-border: #d7dbe0;
	--ascur-text: #1f2933;
	--ascur-accent: #2563eb;
	--ascur-ok: #16a34a;
	--ascur-err: #dc2626;
	display: block;
	margin: 14px 0;
	font-family: inherit;
}

@media (prefers-color-scheme: dark) {
	.ascur-widget {
		--ascur-bg: #1f2530;
		--ascur-border: #39424f;
		--ascur-text: #e6e9ee;
	}
}

/* Honeypot — hidden but submitted; kept out of tab order + a11y tree. */
.ascur-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.ascur-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	padding: 8px 14px;
	background: var(--ascur-bg);
	border: 1px solid var(--ascur-border);
	border-radius: 8px;
	color: var(--ascur-text);
	font-size: 14px;
	line-height: 1.3;
	max-width: 320px;
	box-sizing: border-box;
}

.ascur-spinner {
	width: 18px; height: 18px;
	border: 2px solid var(--ascur-border);
	border-top-color: var(--ascur-accent);
	border-radius: 50%;
	flex: 0 0 auto;
	display: none;
	animation: ascur-spin 0.7s linear infinite;
}

.ascur-check { width: 18px; height: 18px; flex: 0 0 auto; display: none; position: relative; }
.ascur-check::after {
	content: ""; position: absolute; left: 5px; top: 1px;
	width: 5px; height: 10px;
	border: solid var(--ascur-ok); border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.ascur-state-working .ascur-spinner { display: inline-block; }
.ascur-state-done .ascur-check { display: inline-block; }
.ascur-state-done .ascur-text { color: var(--ascur-ok); }
.ascur-state-error .ascur-text { color: var(--ascur-err); }

@keyframes ascur-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .ascur-spinner { animation-duration: 1.6s; } }
