/**
 * Inline Auth component (email → code login embedded in a host surface,
 * e.g. the store cart footer). Mobile-first; uses theme.json tokens.
 */

.xtra-inline-auth {
	position: relative;
	text-align: center;
}

.xtra-inline-auth__step {
	display: none;
}

.xtra-inline-auth__step.is-active {
	display: block;
}

.xtra-inline-auth__heading {
	margin: 0 0 0.9rem;
	font-weight: 600;
	font-size: clamp(1rem, 0.95rem + 0.3vw, 1.125rem);
	color: var(--wp--preset--color--navy, #37474f);
}

.xtra-inline-auth__subheading {
	margin: 0 0 0.75rem;
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	color: var(--wp--preset--color--contrast-2, #555);
}

.xtra-inline-auth__email-form {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.xtra-inline-auth__email-input {
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.65rem 0.85rem;
	border: 1px solid var(--wp--preset--color--border, #ccc);
	border-radius: var(--wp--custom--radius, 6px);
	font-size: 1rem;
}

.xtra-inline-auth__email-input:focus {
	outline: 2px solid var(--wp--preset--color--primary, #007cba);
	outline-offset: 1px;
}

.xtra-inline-auth__submit,
.xtra-inline-auth__confirm,
.xtra-inline-auth__verify {
	cursor: pointer;
	white-space: nowrap;
}

.xtra-inline-auth__submit[disabled],
.xtra-inline-auth__confirm[disabled],
.xtra-inline-auth__verify[disabled] {
	opacity: 0.6;
	cursor: default;
}

.xtra-inline-auth__code-inputs {
	display: flex;
	justify-content: center;
	gap: clamp(0.3rem, 1vw, 0.5rem);
	margin: 0.75rem 0;
}

.xtra-inline-auth__code-input {
	width: clamp(2.1rem, 8vw, 2.75rem);
	height: clamp(2.6rem, 10vw, 3.25rem);
	text-align: center;
	font-size: clamp(1.15rem, 4vw, 1.5rem);
	font-weight: 600;
	border: 1px solid var(--wp--preset--color--border, #ccc);
	border-radius: var(--wp--custom--radius, 6px);
}

.xtra-inline-auth__code-input:focus {
	outline: 2px solid var(--wp--preset--color--primary, #007cba);
	outline-offset: 1px;
}

.xtra-inline-auth__hint {
	margin: 0.5rem 0 0;
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	color: var(--wp--preset--color--contrast-2, #555);
}

.xtra-inline-auth__back {
	/* Own row, always — never beside the primary action */
	display: block;
	margin-inline: auto;
	margin-top: 0.75rem;
	padding: 0;
	background: none;
	border: none;
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	color: var(--wp--preset--color--contrast-2, #555);
	text-decoration: underline;
	cursor: pointer;
}

.xtra-inline-auth__confirm {
	margin-top: 0.25rem;
}

.xtra-inline-auth__error {
	margin-top: 0.75rem;
	padding: 0.6rem 0.85rem;
	border-radius: var(--wp--custom--radius, 6px);
	background: color-mix(
		in srgb,
		var(--wp--preset--color--error, #b71c1c) 9%,
		var(--wp--preset--color--base, #fff)
	);
	color: var(--wp--preset--color--error, #b71c1c);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
}

.xtra-inline-auth__complete-message {
	color: var(--wp--preset--color--primary, #007cba);
}
