.wil-cev-card {
	--wil-cev-blue: #0071e3;
	--wil-cev-card-bg: #fff;
	--wil-cev-text: #1d1d1f;
	--wil-cev-muted: #6e6e73;
	--wil-cev-border: #e5e5e7;
	--wil-cev-button-bg: #252a33;
	--wil-cev-button-text: #fff;
	--wil-cev-success: #157f3b;
	--wil-cev-error: #b42318;
	box-sizing: border-box;
	position: relative;
	isolation: isolate;
	margin: 20px 0;
	padding: 38px;
	border: 0 !important;
	outline: 0 !important;
	border-radius: 30px;
	background: rgba(255, 255, 255, .94);
	color: var(--wil-cev-text);
	box-shadow: 0 28px 80px rgba(15, 23, 42, .14), 0 8px 28px rgba(15, 23, 42, .07);
	-webkit-backdrop-filter: blur(28px) saturate(145%);
	backdrop-filter: blur(28px) saturate(145%);
	font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

.wil-cev-card * {
	box-sizing: border-box;
}

.wil-cev-brand-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 86px;
	max-height: 86px;
	margin: 0 0 30px;
	border-radius: 17px;
	object-fit: contain;
	box-shadow: 0 8px 24px rgba(15, 23, 42, .09);
}

.wil-cev-heading {
	display: flex;
	gap: 18px;
	align-items: center;
	margin: 0;
}

.wil-cev-heading h3 {
	margin: 0 0 6px !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	letter-spacing: -.035em !important;
	line-height: 1.08 !important;
	color: var(--wil-cev-text) !important;
}

.wil-cev-heading p {
	margin: 0 !important;
	max-width: 520px;
	color: var(--wil-cev-muted) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	letter-spacing: -.01em;
	line-height: 1.45 !important;
}

.wil-cev-icon {
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	flex: 0 0 50px;
	border: 1px solid rgba(255, 255, 255, .82);
	border-radius: 50%;
	background: linear-gradient(145deg, #f8fbff 0%, #e8f3ff 100%);
	color: var(--wil-cev-blue);
	box-shadow: 0 10px 26px rgba(0, 113, 227, .12), inset 0 1px 0 rgba(255, 255, 255, .92);
	font-size: 24px;
	font-weight: 800;
}

.wil-cev-label {
	display: block;
	margin: 26px 0 9px;
	color: var(--wil-cev-text);
	font-size: 13px;
	font-weight: 650;
	letter-spacing: -.005em;
}

.wil-cev-own-email {
	width: 100% !important;
	min-height: 52px !important;
	padding: 0 16px !important;
	border: 1px solid var(--wil-cev-border) !important;
	border: 1px solid color-mix(in srgb, var(--wil-cev-border) 88%, #c7c7cc) !important;
	border-radius: 14px !important;
	background: rgba(250, 250, 252, .82) !important;
	color: var(--wil-cev-text) !important;
	box-shadow: inset 0 1px 1px rgba(15, 23, 42, .02) !important;
	font-size: 16px !important;
	transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.wil-cev-own-email:focus {
	outline: 0 !important;
	border-color: var(--wil-cev-blue) !important;
	background: #fff !important;
	box-shadow: 0 0 0 4px rgba(0, 113, 227, .12) !important;
}

.wil-cev-status {
	min-height: 20px;
	margin-top: 18px;
	font-size: 14px;
	line-height: 1.45;
}

.wil-cev-status:empty {
	min-height: 0;
	margin-top: 0;
}

.wil-cev-status.is-error {
	color: var(--wil-cev-error);
}

.wil-cev-status.is-success {
	color: var(--wil-cev-success);
	font-weight: 650;
}

.wil-cev-status.is-info {
	color: #536170;
}

.wil-cev-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-top: 24px;
}

.wil-cev-card button.button,
.wil-cev-card .button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 16px;
	min-height: 50px !important;
	padding: 0 22px !important;
	border-radius: 14px !important;
	font-size: 15px !important;
	font-weight: 650 !important;
	letter-spacing: -.012em !important;
	line-height: 1 !important;
	box-shadow: none !important;
	-webkit-appearance: none;
	appearance: none;
	touch-action: manipulation;
	transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease, opacity .16s ease;
}

.wil-cev-card button.alt,
.wil-cev-card .button.alt {
	background: var(--wil-cev-button-bg) !important;
	color: var(--wil-cev-button-text) !important;
	border-color: var(--wil-cev-button-bg) !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, .16) !important;
}

.wil-cev-card button.alt::after,
.wil-cev-card .button.alt::after {
	content: "→";
	font-size: 20px;
	font-weight: 400;
	line-height: 1;
	transform: translateY(-1px);
}

.wil-cev-card button.alt:hover,
.wil-cev-card .button.alt:hover {
	filter: brightness(.94);
	transform: translateY(-1px);
	box-shadow: 0 12px 28px rgba(15, 23, 42, .2) !important;
}

.wil-cev-card button.alt:active,
.wil-cev-card .button.alt:active {
	transform: translateY(0) scale(.99);
}

.wil-cev-card button.button:not(.alt):not(.button-link) {
	border: 1px solid var(--wil-cev-border) !important;
	background: rgba(246, 246, 248, .9) !important;
	color: var(--wil-cev-text) !important;
}

.wil-cev-card button:disabled {
	opacity: .48 !important;
	cursor: not-allowed !important;
	transform: none !important;
}

.wil-cev-code-stage[hidden],
.wil-cev-send-stage[hidden],
.wil-cev-email-editor[hidden],
.wil-cev-otp[hidden],
.wil-cev-code-actions[hidden] {
	display: none !important;
}

.wil-cev-code-stage {
	margin-top: 28px;
}

.wil-cev-sent-to {
	margin: 0 0 13px !important;
	color: #536170 !important;
	font-size: 15px !important;
	line-height: 1.45 !important;
}

.wil-cev-otp {
	display: flex;
	gap: 12px;
	flex-wrap: nowrap;
	align-items: center;
}

.wil-cev-digit {
	width: 68px !important;
	height: 72px !important;
	min-width: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--wil-cev-border) !important;
	border: 1px solid color-mix(in srgb, var(--wil-cev-border) 86%, #c7c7cc) !important;
	border-radius: 17px !important;
	background: rgba(252, 252, 253, .88) !important;
	text-align: center !important;
	font-size: 29px !important;
	font-weight: 560 !important;
	font-variant-numeric: tabular-nums;
	line-height: 72px !important;
	color: var(--wil-cev-text) !important;
	box-shadow: 0 7px 18px rgba(15, 23, 42, .045), inset 0 1px 0 rgba(255, 255, 255, .9) !important;
	-webkit-appearance: none;
	appearance: none;
	touch-action: manipulation;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease, transform .16s ease;
}

.wil-cev-digit:hover {
	background: #fff !important;
}

.wil-cev-digit:focus {
	outline: 0 !important;
	border-color: var(--wil-cev-blue) !important;
	background: #fff !important;
	box-shadow: 0 0 0 4px rgba(0, 113, 227, .12), 0 8px 22px rgba(15, 23, 42, .06) !important;
	transform: translateY(-1px);
}

.wil-cev-change {
	padding: 9px 5px !important;
	color: var(--wil-cev-blue) !important;
	text-decoration: none !important;
	font-size: 14px !important;
	font-weight: 600 !important;
}

.wil-cev-change:hover {
	text-decoration: underline !important;
	text-underline-offset: 3px;
}

.wil-cev-email-editor {
	margin-top: 6px;
	padding: 0;
}

.wil-cev-email-editor .wil-cev-label {
	margin-top: 0;
	font-size: 14px;
}

.wil-cev-email-editor-copy {
	margin: 0 0 12px !important;
	color: var(--wil-cev-muted) !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
}

.wil-cev-email-editor-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
}

.wil-cev-change-email-input {
	width: 100% !important;
	min-width: 0 !important;
	min-height: 52px !important;
	padding: 0 16px !important;
	border: 1px solid #d9d9dd !important;
	border-radius: 14px !important;
	background: rgba(250, 250, 252, .86) !important;
	color: var(--wil-cev-text) !important;
	box-shadow: inset 0 1px 1px rgba(15, 23, 42, .025) !important;
	font-size: 16px !important;
	-webkit-appearance: none;
	appearance: none;
}

.wil-cev-change-email-input:focus {
	outline: 0 !important;
	border-color: var(--wil-cev-blue) !important;
	background: #fff !important;
	box-shadow: 0 0 0 4px rgba(0, 113, 227, .12) !important;
}

.wil-cev-email-editor-links {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	margin-top: 12px;
}

.wil-cev-email-editor-links .button-link {
	padding: 4px 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--wil-cev-blue) !important;
	box-shadow: none !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.wil-cev-email-editor-links .button-link:hover {
	text-decoration: underline !important;
	text-underline-offset: 3px;
}

.wil-cev-turnstile {
	margin-top: 20px;
	min-height: 1px;
}

.wil-cev-footnote {
	margin-top: 30px;
	padding-top: 22px;
	border-top: 1px solid var(--wil-cev-border);
	border-top: 1px solid color-mix(in srgb, var(--wil-cev-border) 80%, transparent);
	color: #7b7b82;
	font-size: 13px;
	line-height: 1.5;
}

.wil-cev-card.is-verified {
	border-color: #b8e4c8 !important;
	border-color: color-mix(in srgb, var(--wil-cev-success) 28%, #fff) !important;
	background: #fbfffc !important;
	background: color-mix(in srgb, #fff 96%, #eaf8ef) !important;
}

.wil-cev-card.is-verified .wil-cev-icon {
	background: linear-gradient(145deg, #f5fff8, #e7f7ed);
	color: var(--wil-cev-success);
	box-shadow: 0 10px 26px rgba(21, 127, 59, .12);
	box-shadow: 0 10px 26px color-mix(in srgb, var(--wil-cev-success) 15%, transparent);
}

.wil-cev-toast {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 999999;
	max-width: 380px;
	padding: 14px 18px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 16px;
	background: rgba(29, 29, 31, .94);
	color: #fff;
	box-shadow: 0 18px 50px rgba(0, 0, 0, .24);
	-webkit-backdrop-filter: blur(18px) saturate(130%);
	backdrop-filter: blur(18px) saturate(130%);
	font: 600 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.wil-cev-toast--error {
	background: rgba(143, 29, 24, .96);
}

.wil-cev-account-notice {
	margin-bottom: 16px !important;
}

.wil-cev-modal[hidden] {
	display: none !important;
}

.wil-cev-modal {
	position: fixed;
	inset: 0;
	z-index: 999998;
	display: grid;
	place-items: center;
	padding: 24px;
}

.wil-cev-modal-backdrop {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: auto;
	background: rgba(15, 18, 24, .26);
	-webkit-backdrop-filter: blur(20px) saturate(115%);
	backdrop-filter: blur(20px) saturate(115%);
	animation: wil-cev-backdrop-in .24s ease-out both;
}

.wil-cev-modal-dialog {
	position: relative;
	z-index: 1;
	pointer-events: auto;
	width: min(720px, 100%);
	max-height: calc(100vh - 48px);
	overflow: auto;
	overscroll-behavior: contain;
	border: 0 !important;
	outline: 0 !important;
	border-radius: 30px;
	animation: wil-cev-modal-in .28s cubic-bezier(.22, .8, .25, 1) both;
}

.wil-cev-modal .wil-cev-card {
	margin: 0;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: 0 38px 110px rgba(15, 23, 42, .24), 0 14px 42px rgba(15, 23, 42, .11);
}

.wil-cev-modal-close {
	position: absolute;
	right: 18px;
	top: 18px;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0 !important;
	border-radius: 50%;
	background: rgba(238, 238, 240, .9);
	color: #54545a;
	box-shadow: 0 3px 10px rgba(15, 23, 42, .05);
	font-size: 21px;
	font-weight: 400;
	line-height: 1;
	cursor: pointer;
	transition: background .15s ease, transform .15s ease;
}

.wil-cev-modal-close:hover {
	background: #e6e6e9;
	transform: scale(1.04);
}

html.wil-cev-modal-open,
html.wil-cev-modal-open body {
	overflow: hidden;
}

.wil-cev-card[hidden] {
	display: none !important;
}

.wil-cev-customizer-preview {
	position: fixed;
	right: 28px;
	bottom: 28px;
	z-index: 999997;
	width: min(680px, calc(100vw - 56px));
	pointer-events: none;
}

.wil-cev-customizer-preview .wil-cev-card {
	margin: 0;
	box-shadow: 0 28px 85px rgba(15, 23, 42, .2), 0 8px 30px rgba(15, 23, 42, .08);
}

.wil-cev-customizer-preview .wil-cev-actions .button {
	display: inline-flex;
	align-items: center;
}

.wil-cev-card {
	text-align: left;
}

.wil-cev-card .wil-cev-heading {
	justify-content: flex-start;
}

.wil-cev-card .wil-cev-footnote {
	text-align: inherit;
}

@keyframes wil-cev-backdrop-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes wil-cev-modal-in {
	from { opacity: 0; transform: translateY(12px) scale(.985); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 640px) {
	.wil-cev-card {
		padding: 26px;
		border-radius: 25px;
	}

	.wil-cev-brand-logo {
		max-width: 70px;
		max-height: 70px;
		margin-bottom: 24px;
		border-radius: 15px;
	}

	.wil-cev-heading {
		gap: 13px;
		align-items: flex-start;
	}

	.wil-cev-icon {
		width: 44px;
		height: 44px;
		flex-basis: 44px;
		font-size: 21px;
	}

	.wil-cev-heading h3 {
		font-size: 28px !important;
	}

	.wil-cev-heading p {
		font-size: 15px !important;
	}

	.wil-cev-code-stage {
		margin-top: 24px;
	}

	.wil-cev-otp {
		gap: 7px;
		width: 100%;
	}

	.wil-cev-digit {
		width: calc((100% - 35px) / 6) !important;
		max-width: 52px !important;
		height: 55px !important;
		line-height: 55px !important;
		font-size: 23px !important;
		border-radius: 13px !important;
	}

	.wil-cev-card[data-otp-length="4"] .wil-cev-digit {
		width: 56px !important;
		max-width: 56px !important;
	}

	.wil-cev-actions .button {
		width: 100%;
	}

	.wil-cev-email-editor-row {
		grid-template-columns: 1fr;
	}

	.wil-cev-email-editor-row .button {
		width: 100%;
	}

	.wil-cev-email-editor-links {
		justify-content: space-between;
	}

	.wil-cev-change {
		width: auto !important;
	}

	.wil-cev-footnote {
		margin-top: 25px;
		padding-top: 19px;
	}

	.wil-cev-modal {
		padding: 14px;
	}

	.wil-cev-modal-dialog {
		max-height: calc(100vh - 28px);
		border-radius: 25px;
	}

	.wil-cev-modal-close {
		right: 12px;
		top: 12px;
	}

	.wil-cev-toast {
		left: 14px;
		right: 14px;
		bottom: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wil-cev-modal-backdrop,
	.wil-cev-modal-dialog,
	.wil-cev-card button,
	.wil-cev-digit,
	.wil-cev-modal-close {
		animation: none !important;
		transition: none !important;
	}
}


/* Optional email two-factor authentication. Scoped to Wil CEV only. */
.wil-cev-2fa-login-message{box-sizing:border-box;width:100%;margin:0 0 12px;padding:10px 12px;border:1px solid #e5e5e7;border-radius:9px;background:#f7f7f8;color:#4a4a50;font-size:12px;line-height:1.4}.wil-cev-2fa-login-message[hidden]{display:none!important}.wil-cev-2fa-login-message.is-error{border-color:#f0c7c3;background:#fff7f6;color:#a12b21}.wil-cev-2fa-login-message.is-success{border-color:#bfe3d0;background:#f4fbf7;color:#16794b}
.wil-cev-2fa-setting{margin:18px 0;padding:16px 18px;border:1px solid #e1e3e7;border-radius:14px;background:#f8f8f9;color:#171717}
.wil-cev-2fa-setting__label{display:flex;align-items:flex-start;gap:12px;margin:0;cursor:pointer}
.wil-cev-2fa-setting__label input{width:20px!important;height:20px!important;min-width:20px!important;margin:2px 0 0!important;accent-color:#111}
.wil-cev-2fa-setting__label span{display:grid;gap:4px}.wil-cev-2fa-setting__label strong{font-size:14px;line-height:1.3;color:#171717}.wil-cev-2fa-setting__label small{font-size:12px;line-height:1.45;color:#707078}
.wil-cev-2fa-challenge[hidden]{display:none!important}
.wil-cev-2fa-challenge{box-sizing:border-box;width:100%;margin:2px 0 16px;padding:15px;border:1px solid #dedfe3;border-radius:12px;background:#fafafa;color:#171717}
.wil-cev-2fa-challenge__head{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;margin-bottom:14px}.wil-cev-2fa-challenge__icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f0f6ff;color:#0071e3;font-weight:800}
.wil-cev-2fa-challenge__head strong{display:block;margin:0 0 3px;font-size:14px;line-height:1.3}.wil-cev-2fa-challenge__head p{margin:0;color:#707078;font-size:12px;line-height:1.4}
.wil-cev-2fa-code-label{display:grid;gap:6px;margin:0}.wil-cev-2fa-code-label>span{font-size:12px;font-weight:700;color:#3f3f46}
.wil-cev-2fa-code{box-sizing:border-box!important;width:100%!important;height:48px!important;min-height:48px!important;padding:0 14px!important;border:1px solid #cfd2d8!important;border-radius:9px!important;background:#fff!important;color:#111!important;font-size:22px!important;font-weight:700!important;letter-spacing:.28em!important;text-align:center!important;box-shadow:none!important}
.wil-cev-2fa-code:focus{outline:2px solid rgba(0,113,227,.18)!important;outline-offset:1px;border-color:#0071e3!important}
.wil-cev-2fa-message{min-height:18px;margin:8px 0 6px;color:#666;font-size:11.5px;line-height:1.35}.wil-cev-2fa-message.is-error{color:#b42318}.wil-cev-2fa-message.is-success{color:#16794b}
.wil-cev-2fa-verify{width:100%!important;min-height:42px!important;margin:0!important;border:1px solid #111!important;border-radius:8px!important;background:#111!important;color:#fff!important;font-weight:700!important;box-shadow:none!important}
.wil-cev-2fa-secondary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.wil-cev-2fa-link{min-height:0!important;margin:0!important;padding:3px 0!important;border:0!important;background:transparent!important;color:#505057!important;font-size:11.5px!important;font-weight:600!important;box-shadow:none!important;text-decoration:none!important}.wil-cev-2fa-link:hover{color:#111!important;background:transparent!important}.wil-cev-2fa-link:disabled{opacity:.5!important;cursor:default!important}
.wilml-extension-area .wil-cev-2fa-challenge{margin:0 0 6px!important;padding:13px!important;border-radius:10px!important}.wilml-extension-area .wil-cev-2fa-challenge__head{grid-template-columns:26px minmax(0,1fr);gap:8px;margin-bottom:11px}.wilml-extension-area .wil-cev-2fa-challenge__icon{width:26px;height:26px;font-size:12px}.wilml-extension-area .wil-cev-2fa-challenge__head strong{font-size:13px}.wilml-extension-area .wil-cev-2fa-challenge__head p{font-size:10.5px}.wilml-extension-area .wil-cev-2fa-code{height:42px!important;min-height:42px!important;font-size:18px!important}.wilml-extension-area .wil-cev-2fa-verify{min-height:36px!important;font-size:12px!important}
