body.rdcl-woo-account #customer_login {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: min(100%, 1080px);
	margin: 0 auto clamp(36px, 6vw, 72px);
	padding: 0;
	overflow: hidden;
	border: 1px solid #e7e7eb;
	border-radius: var(--rdcl-woo-radius, 22px);
	background: rgba(255,255,255,.96);
	box-shadow: 0 18px 54px rgba(20,16,23,.1);
}

body.rdcl-woo-account #customer_login::after {
	display: none;
}

body.rdcl-woo-account #customer_login > .col {
	width: auto;
	max-width: none;
	padding: clamp(28px, 4vw, 48px) !important;
	border: 0;
}

body.rdcl-woo-account #customer_login > .col + .col {
	border-left: 1px solid #ececf0;
}

body.rdcl-woo-account #customer_login h2 {
	margin: 0 0 24px;
	color: #17141a;
	font-size: clamp(22px, 2.2vw, 28px);
	font-weight: 750;
	letter-spacing: -.02em;
	text-transform: none;
}

body.rdcl-woo-account #customer_login form {
	display: flex;
	flex-direction: column;
}

body.rdcl-woo-account #customer_login .form-row {
	margin: 0 0 18px;
}

body.rdcl-woo-account #customer_login label {
	color: #2b2630;
	font-size: 13px;
	font-weight: 650;
}

body.rdcl-woo-account #customer_login .input-text {
	width: 100%;
	min-height: 50px;
	margin-top: 7px;
	padding: 10px 14px;
	border: 1px solid #d9d7dd;
	border-radius: 10px;
	background: #fff;
	box-shadow: inset 0 1px 2px rgba(16,12,18,.04);
	font-size: 16px;
	transition: border-color .18s ease, box-shadow .18s ease;
}

body.rdcl-woo-account #customer_login .input-text:focus {
	border-color: var(--rdcl-woo-accent, #ff168f);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--rdcl-woo-accent, #ff168f) 18%, transparent);
	outline: 0;
}

body.rdcl-woo-account.rdcl-woo-any-password #customer_login .woocommerce-password-strength,
body.rdcl-woo-account.rdcl-woo-any-password #customer_login .woocommerce-password-hint {
	display: none;
}

body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap {
	width: 100%;
	margin: 4px 0 18px;
	padding: 11px;
	border: 1px solid #e4e2e7;
	border-radius: 11px;
	background: #faf9fb;
}

/*
 * Cloudflare leaves interaction-only and execute widgets empty until a
 * challenge is required. Collapse the decorative shell in that state so an
 * invisible widget does not look like an empty form field. The normal shell
 * returns automatically as soon as Cloudflare inserts challenge markup.
 */
body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap:has(> .cf-turnstile[data-appearance="interaction-only"]),
body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap:has(> .cf-turnstile[data-appearance="execute"]) {
	width: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap:has(> .cf-turnstile[data-appearance="interaction-only"] iframe),
body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap:has(> .cf-turnstile[data-appearance="execute"] iframe),
body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap:has(> .rdcl-turnstile-label),
body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap:has(> .rdcl-turnstile-status:not([hidden])) {
	margin: 4px 0 18px;
	padding: 11px;
	border: 1px solid #e4e2e7;
	border-radius: 11px;
	background: #faf9fb;
}

body.rdcl-woo-account #customer_login .rdcl-turnstile-label {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 8px;
	color: #59535e;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.25;
}

body.rdcl-woo-account #customer_login .rdcl-turnstile-label::before {
	content: "✓";
	display: inline-flex;
	width: 17px;
	height: 17px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: color-mix(in srgb, var(--rdcl-woo-accent, #ff168f) 12%, #fff);
	color: var(--rdcl-woo-accent, #ff168f);
	font-size: 11px;
	font-weight: 800;
}

body.rdcl-woo-account #customer_login .rdcl-turnstile-status {
	margin: 8px 0 0;
	color: #59535e;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
}

body.rdcl-woo-account #customer_login .rdcl-turnstile-status.is-error {
	color: var(--rdcl-woo-accent, #ff168f);
}

body.rdcl-woo-account #customer_login .cf-turnstile,
body.rdcl-woo-account #customer_login .cf-turnstile iframe {
	max-width: 100%;
}

body.rdcl-woo-account #customer_login form > .cf-turnstile {
	margin: 4px 0 18px;
}

body.rdcl-woo-account #customer_login .cf-turnstile-br {
	display: none;
}

body.rdcl-woo-account #customer_login .woocommerce-form-login > .form-row:has(.woocommerce-form-login__submit) {
	display: grid;
	grid-template-columns: 1fr;
	gap: 13px;
}

body.rdcl-woo-account #customer_login .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

body.rdcl-woo-account #customer_login input[type="checkbox"] {
	width: 19px;
	height: 19px;
	margin: 0;
	border-radius: 5px;
}

body.rdcl-woo-account #customer_login .woocommerce-button,
body.rdcl-woo-account #customer_login button[type="submit"] {
	width: 100%;
	min-height: 50px;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--rdcl-woo-accent, #ff168f) 82%, #000);
	border-radius: 10px;
	background: var(--rdcl-woo-accent, #ff168f);
	box-shadow: 0 10px 22px color-mix(in srgb, var(--rdcl-woo-accent, #ff168f) 18%, transparent);
	color: #fff;
	font-size: 14px;
	font-weight: 750;
	letter-spacing: .02em;
}

body.rdcl-woo-account #customer_login .woocommerce-button:hover,
body.rdcl-woo-account #customer_login button[type="submit"]:hover,
body.rdcl-woo-account #customer_login .woocommerce-button:focus,
body.rdcl-woo-account #customer_login button[type="submit"]:focus {
	background: var(--rdcl-woo-accent, #ff168f);
	color: #fff;
	filter: brightness(1.05);
}

body.rdcl-woo-account #customer_login .lost_password {
	margin: -5px 0 22px;
}

body.rdcl-woo-account #customer_login .rdlwa-login-button-wrap {
	margin-top: 10px;
}

body.rdcl-woo-account #customer_login .rdlwa-login-button-wrap.rdcl-social-first {
	position: relative;
	margin-top: 34px;
}

body.rdcl-woo-account #customer_login .rdlwa-login-button-wrap.rdcl-social-first::before {
	content: attr(data-divider);
	position: absolute;
	top: -24px;
	left: 50%;
	padding: 0 10px;
	background: #fff;
	color: #77717a;
	font-size: 12px;
	font-weight: 500;
	white-space: nowrap;
	transform: translateX(-50%);
	z-index: 1;
}

body.rdcl-woo-account #customer_login .rdlwa-login-button-wrap.rdcl-social-first::after {
	content: "";
	position: absolute;
	top: -16px;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 1px;
	background: #e5e3e8;
}

/*
 * The login column has a Remember me row and password-reset link that the
 * registration column does not need. Reserve equivalent visual rows on wide
 * screens so both primary actions and both social-login stacks line up.
 */
@media (min-width: 850px) {
	body.rdcl-woo-account #customer_login .woocommerce-form-register:has(> .woocommerce-privacy-policy-text:empty) > .woocommerce-privacy-policy-text:empty {
		margin: 0;
	}

	body.rdcl-woo-account #customer_login .woocommerce-form-register:has(> .woocommerce-privacy-policy-text:empty) > .form-row:has(button[type="submit"]) {
		display: grid;
		grid-template-columns: 1fr;
		gap: 18px;
		margin-bottom: 61px;
	}

	body.rdcl-woo-account #customer_login .woocommerce-form-register:has(> .woocommerce-privacy-policy-text:empty) > .form-row:has(button[type="submit"])::before {
		content: "";
		display: block;
		height: 21px;
	}
}

.rdcl-woo-tabs {
	display: none;
}

@media (max-width: 849px) {
	body.rdcl-woo-account #customer_login {
		display: block;
		width: calc(100% - 30px);
		margin-bottom: 42px;
		border-radius: min(var(--rdcl-woo-radius, 22px), 22px);
	}

	body.rdcl-woo-account #customer_login > .col {
		padding: 26px 22px 30px !important;
	}

	body.rdcl-woo-account #customer_login > .col + .col {
		border: 0;
	}

	.rdcl-woo-tabs {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 4px;
		width: calc(100% - 30px);
		margin: 0 auto 16px;
		padding: 4px;
		border: 1px solid #dfdce3;
		border-radius: 13px;
		background: rgba(244, 242, 245, .92);
		box-shadow: inset 0 1px 2px rgba(24, 18, 28, .04);
	}

	.rdcl-woo-tab {
		-webkit-appearance: none;
		appearance: none;
		height: 40px;
		min-height: 0;
		margin: 0 !important;
		padding: 0 14px;
		border: 0;
		border-radius: 13px;
		background: transparent;
		box-shadow: none;
		color: #625c66;
		font-family: inherit;
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .015em;
		line-height: 1;
		text-transform: none;
	}

	.rdcl-woo-tab.is-active {
		background: var(--rdcl-woo-accent, #ff168f);
		box-shadow: 0 4px 12px color-mix(in srgb, var(--rdcl-woo-accent, #ff168f) 16%, transparent);
		color: #fff;
	}

	.rdcl-woo-tab:focus-visible {
		outline: 2px solid color-mix(in srgb, var(--rdcl-woo-accent, #ff168f) 65%, #fff);
		outline-offset: 2px;
	}

	body.rdcl-woo-account #customer_login.is-tabbed > .col:not(.is-active) {
		display: none;
	}

	body.rdcl-woo-account #customer_login h2 {
		display: none;
	}
}

@media (max-width: 380px) {
	body.rdcl-woo-account #customer_login .rdcl-turnstile-wrap {
		margin-right: -4px;
		margin-left: -4px;
		width: calc(100% + 8px);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.rdcl-woo-account #customer_login *,
	.rdcl-woo-tabs * {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}
