/* WAWP OTP login — Woodmart sidebar, /login/, /signup/, My Account. */

/* --- Hide redundant WAWP / fast-login copy --- */
.wawp-switch-form,
.wawp-form-footer-link,
.wawp-back-to-email-options,
.js-wawp-back-to-email-options,
.js-wawp-email-back-link,
#wawp_email_back_link {
	display: none !important;
}

/* WAWP email password field (patched overrides also whitelist #wawp_password_merged). */
body.primeneu-wawp-login-active #customer_login input#wawp_password_merged,
body.woocommerce-account #customer_login input#wawp_password_merged,
.login-form-side .woocommerce-form-login .wawp-otp-login-form #wawp_password_merged,
.login-form-side .woocommerce-form-login .wawp-otp-login-form .js-wawp-password-input,
.woocommerce-form-login .wawp-otp-login-form #wawp_password_merged,
.woocommerce-form-login .wawp-otp-login-form .js-wawp-password-input,
.primeneu-wawp-auth-page .wawp-otp-login-form #wawp_password_merged,
.primeneu-wawp-auth-page .wawp-otp-login-form .js-wawp-password-input {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
	min-height: var(--wd-form-height, 42px);
}

body.primeneu-wawp-login-active #customer_login .js-wawp-password-group:not(.wawp-hide),
body.woocommerce-account #customer_login .js-wawp-password-group:not(.wawp-hide),
.login-form-side .woocommerce-form-login .wawp-otp-login-form .js-wawp-password-group:not(.wawp-hide),
.woocommerce-form-login .wawp-otp-login-form .js-wawp-password-group:not(.wawp-hide),
.primeneu-wawp-auth-page .wawp-otp-login-form .js-wawp-password-group:not(.wawp-hide) {
	display: flex !important;
	flex-direction: column;
}

body.primeneu-wawp-login-active #customer_login .password-container,
body.woocommerce-account #customer_login .password-container {
	display: flex !important;
	width: 100%;
}

/* --- Match Woodmart Google / Facebook social login buttons --- */
.login-form-side .wawp-otp-login-form .wawp-btn,
.login-form-side .wawp-fast-login-container .wawp-btn,
.login-form-side #wawp-signup-form .wawp-btn,
body.primeneu-wawp-login-active .wawp-otp-login-form .wawp-btn,
body.primeneu-wawp-login-active .wawp-fast-login-container .wawp-btn,
body.primeneu-wawp-login-active #wawp-signup-form .wawp-btn,
.primeneu-wawp-auth-page .wawp-otp-login-form .wawp-btn,
.primeneu-wawp-auth-page #wawp-signup-form .wawp-btn,
.woocommerce-account .wawp-otp-login-form .wawp-btn,
.woocommerce-account #wawp-signup-form .wawp-btn {
	position: relative;
	flex: 1 1 48px !important;
	width: 100% !important;
	max-width: var(--primeneu-wawp-control-max, 400px);
	min-height: 48px;
	height: auto;
	margin-inline: auto;
	padding: 12px 20px !important;
	border: none !important;
	border-radius: var(--btn-accented-brd-radius, var(--button-radius)) !important;
	box-shadow: none !important;
	color: #fff !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	justify-content: center;
	--btn-box-shadow-hover: inset 0 0 0 1000px rgba(0, 0, 0, 0.1);
	transition: filter 0.2s ease, box-shadow 0.2s ease;
}

.login-form-side .wawp-otp-login-form .wawp-btn:hover,
.login-form-side .wawp-fast-login-container .wawp-btn:hover,
body.primeneu-wawp-login-active .wawp-otp-login-form .wawp-btn:hover,
body.primeneu-wawp-login-active #wawp-signup-form .wawp-btn:hover,
.primeneu-wawp-auth-page .wawp-otp-login-form .wawp-btn:hover,
.primeneu-wawp-auth-page #wawp-signup-form .wawp-btn:hover,
.woocommerce-account .wawp-otp-login-form .wawp-btn:hover {
	filter: brightness(0.95);
	box-shadow: var(--btn-box-shadow-hover) !important;
	opacity: 1;
}

/* Icon-left layout only on primary method buttons (WhatsApp, Continue with Email, etc.). */
.login-form-side .wawp-action-buttons > .wawp-request-btn [class*=" ri-"],
.login-form-side .wawp-action-buttons > .wawp-request-btn [class^="ri-"],
.login-form-side .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password) [class*=" ri-"],
.login-form-side .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password) [class^="ri-"],
body.primeneu-wawp-login-active .wawp-action-buttons > .wawp-request-btn [class*=" ri-"],
body.primeneu-wawp-login-active .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password) [class*=" ri-"],
.primeneu-wawp-auth-page .wawp-action-buttons > .wawp-request-btn [class*=" ri-"],
.primeneu-wawp-auth-page .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password) [class*=" ri-"],
.woocommerce-account .wawp-action-buttons > .wawp-request-btn [class*=" ri-"],
.woocommerce-account .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password) [class*=" ri-"] {
	position: absolute;
	inset-inline-start: calc(12px + (var(--btn-accented-brd-radius, 25px) / 4));
	font-size: 20px;
	margin: 0;
}

.login-form-side .wawp-action-buttons > .wawp-request-btn,
.login-form-side .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password):not(.js-wawp-show-password-btn),
body.primeneu-wawp-login-active .wawp-action-buttons > .wawp-request-btn,
body.primeneu-wawp-login-active .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password):not(.js-wawp-show-password-btn),
.primeneu-wawp-auth-page .wawp-action-buttons > .wawp-request-btn,
.primeneu-wawp-auth-page .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password):not(.js-wawp-show-password-btn),
.woocommerce-account .wawp-action-buttons > .wawp-request-btn,
.woocommerce-account .wawp-action-buttons > .wawp-btn-green:not(.js-wawp-login-submit-password):not(.js-wawp-show-password-btn) {
	padding: 12px 16px 12px 48px !important;
}

/* Confirm, Resend, Login — centered label (no left icon offset). */
.login-form-side .wawp-verify-row .wawp-btn,
.login-form-side .wawp-resend-otp-btn,
.login-form-side .js-wawp-login-submit-password,
.login-form-side #wawp_verify_otp_phone,
body.primeneu-wawp-login-active .wawp-verify-row .wawp-btn,
body.primeneu-wawp-login-active .wawp-resend-otp-btn,
body.primeneu-wawp-login-active .js-wawp-login-submit-password,
body.primeneu-wawp-login-active #wawp_verify_otp_phone,
body.primeneu-wawp-login-active #wawp_verify_otp_email_merged,
.primeneu-wawp-auth-page .wawp-verify-row .wawp-btn,
.primeneu-wawp-auth-page .wawp-resend-otp-btn,
.primeneu-wawp-auth-page .js-wawp-login-submit-password,
.primeneu-wawp-auth-page #wawp_verify_otp_phone,
.primeneu-wawp-auth-page #wawp_verify_otp_email_merged,
.woocommerce-account .wawp-verify-row .wawp-btn,
.woocommerce-account .wawp-resend-otp-btn,
.woocommerce-account .js-wawp-login-submit-password,
.woocommerce-account #wawp_verify_otp_phone,
.woocommerce-account #wawp_verify_otp_email_merged,
.woocommerce-account #wawp_resend_otp_phone,
.woocommerce-account #wawp_resend_otp_email_merged,
.woocommerce-account .js-wawp-show-password-btn {
	padding: 12px 20px !important;
	text-align: center !important;
	justify-content: center !important;
}

.login-form-side .wawp-verify-row .wawp-btn [class*=" ri-"],
.login-form-side .wawp-verify-row .wawp-btn [class^="ri-"],
.login-form-side .js-wawp-login-submit-password [class*=" ri-"],
.login-form-side .js-wawp-login-submit-password [class^="ri-"],
.primeneu-wawp-auth-page .wawp-verify-row .wawp-btn [class*=" ri-"],
.primeneu-wawp-auth-page .js-wawp-login-submit-password [class*=" ri-"],
.woocommerce-account .wawp-verify-row .wawp-btn [class*=" ri-"],
.woocommerce-account .js-wawp-login-submit-password [class*=" ri-"],
.woocommerce-account #wawp_login_submit_password [class*=" ri-"] {
	position: static !important;
	inset-inline-start: auto !important;
	margin: 0 !important;
}

/* Wrong number? → Edit number (pill button, rounded). */
.wawp-otp-resend .wawp-edit-button.wawp-edit-phone,
.wawp-otp-login-form .wawp-edit-button.wawp-edit-phone {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-inline-start: 8px;
	padding: 6px 16px;
	border: 1px solid var(--primary-blue, #1b61e7);
	border-radius: var(--btn-accented-brd-radius, var(--button-radius, 25px));
	background-color: var(--light-bg, #f6f5f8);
	color: var(--primary-blue, #1b61e7) !important;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none !important;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.wawp-otp-resend .wawp-edit-button.wawp-edit-phone:hover,
.wawp-otp-login-form .wawp-edit-button.wawp-edit-phone:hover {
	background-color: var(--primary-blue, #1b61e7);
	color: var(--white, #fff) !important;
	opacity: 1;
}

/* Stack action buttons like .wd-social-login column */
.login-form-side .wawp-action-buttons,
body.primeneu-wawp-login-active .wawp-action-buttons,
.primeneu-wawp-auth-page .wawp-action-buttons,
.woocommerce-account .wawp-action-buttons {
	flex-direction: column !important;
	align-items: center;
	gap: 15px !important;
	width: 100%;
}

.login-form-side .wawp-action-buttons .wawp-btn,
body.primeneu-wawp-login-active .wawp-action-buttons .wawp-btn,
.primeneu-wawp-auth-page .wawp-action-buttons .wawp-btn,
.woocommerce-account .wawp-action-buttons .wawp-btn {
	width: 100% !important;
	max-width: var(--primeneu-wawp-control-max, 400px);
}

/* Brand colors (shape matches social; hues unchanged) */
.login-form-side .wawp-btn-green,
.login-form-side .wawp-request-btn[data-method="whatsapp"],
.primeneu-wawp-auth-page .wawp-btn-green,
.primeneu-wawp-auth-page .wawp-request-btn[data-method="whatsapp"],
.woocommerce-account .wawp-btn-green,
.woocommerce-account .wawp-request-btn[data-method="whatsapp"] {
	background-color: #25d366 !important;
}

.login-form-side .js-wawp-request-otp-email,
.primeneu-wawp-auth-page .js-wawp-request-otp-email,
.woocommerce-account .js-wawp-request-otp-email {
	background-color: var(--success-green, #22c55e) !important;
}

.login-form-side .wawp-btn-red,
.login-form-side .js-wawp-show-password-btn,
.login-form-side .js-wawp-login-submit-password,
.primeneu-wawp-auth-page .wawp-btn-red,
.primeneu-wawp-auth-page .js-wawp-show-password-btn,
.primeneu-wawp-auth-page .js-wawp-login-submit-password,
.woocommerce-account .wawp-btn-red,
.woocommerce-account .js-wawp-show-password-btn,
.woocommerce-account .js-wawp-login-submit-password {
	background-color: #dc2626 !important;
}

.login-form-side .wawp-btn-blue,
.login-form-side .js-wawp-verify-otp-email,
.primeneu-wawp-auth-page .wawp-btn-blue,
.primeneu-wawp-auth-page .js-wawp-verify-otp-email,
.woocommerce-account .wawp-btn-blue,
.woocommerce-account .js-wawp-verify-otp-email {
	background-color: var(--primary-blue, #4285f4) !important;
}

.login-form-side #wawp-signup-form .wawp-submit-button,
.login-form-side #wawp-signup-form .wawp-primary-btn,
.primeneu-wawp-auth-page #wawp-signup-form .wawp-submit-button,
.primeneu-wawp-auth-page #wawp-signup-form .wawp-primary-btn,
.woocommerce-account #wawp-signup-form .wawp-submit-button {
	background-color: var(--primary-blue, #1b61e7) !important;
}

/* OTP verify row: full-width stacked buttons */
.login-form-side .wawp-verify-row,
.primeneu-wawp-auth-page .wawp-verify-row,
.woocommerce-account .wawp-verify-row {
	flex-direction: column !important;
	align-items: center;
	gap: 15px !important;
}

.login-form-side .wawp-verify-row .wawp-btn,
.primeneu-wawp-auth-page .wawp-verify-row .wawp-btn,
.woocommerce-account .wawp-verify-row .wawp-btn {
	flex: 1 1 48px !important;
	width: 100% !important;
	max-width: var(--primeneu-wawp-control-max, 400px);
}

/* --- Dedicated /login/ & /signup/ pages: centered form, no blog sidebar --- */
body.primeneu-wawp-auth-page .wd-sidebar,
body.primeneu-wawp-auth-page aside.sidebar-container,
body.primeneu-wawp-auth-page .wd-sidebar-opener {
	display: none !important;
}

body.primeneu-wawp-auth-page .wd-content-layout,
body.primeneu-wawp-auth-page .website-wrapper .wd-grid-g {
	justify-content: center;
}

body.primeneu-wawp-auth-page .wd-content-area {
	flex: 0 0 100% !important;
	max-width: 100% !important;
	width: 100% !important;
}

/*
 * Logged-out forms — match /my-account/ DOM + spacing.
 * Reference: #customer_login (500px) → .wawp-fast-login-container (450px + 10px pad).
 */
body.primeneu-wawp-login-active {
	--primeneu-wawp-shell-max: 500px;
	--primeneu-wawp-inner-max: 450px;
	--primeneu-wawp-inner-pad: 10px;
	--primeneu-wawp-control-max: 400px;
}

/* Outer column (my-account / my-account-mobile). */
body.primeneu-wawp-login-active #customer_login.wd-grid-f-col {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: var(--primeneu-wawp-shell-max);
	width: 100%;
}

/* Inner shell — same as WAWP inline on /my-account/ .wawp-fast-login-container. */
body.primeneu-wawp-login-active .wawp-fast-login-container,
body.primeneu-wawp-login-active main.wd-content-layout > .wawp-fast-login-container,
body.primeneu-wawp-login-active article.entry-content > .wawp-otp-login-form,
body.primeneu-wawp-login-active article.entry-content > #wawp-signup-container,
body.primeneu-wawp-login-active #wawp-signup-container {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--primeneu-wawp-inner-max) !important;
	padding: var(--primeneu-wawp-inner-pad) !important;
	width: 100% !important;
}

body.primeneu-wawp-login-active .wawp-fast-login-container .wawp-otp-login-form {
	margin-inline: 0;
	max-width: none !important;
	padding: 0 !important;
	width: 100%;
}

/* Prevent Elementor / page wrappers from centering labels or stretching fields. */
body.primeneu-wawp-auth-page.primeneu-wawp-login-active article.entry-content,
body.primeneu-wawp-auth-page.primeneu-wawp-login-active main.wd-content-layout {
	text-align: start;
}

/*
 * Control column — tabs, fields, and buttons one width (see /my-account/).
 * Phone Login / Email Login tabs must match button width, not the outer shell.
 */
body.primeneu-wawp-login-active .wawp-otp-login-form > .wawp-tabs,
body.primeneu-wawp-login-active .wawp-otp-login-form > .wawp-tab-content,
body.primeneu-wawp-login-active .wawp-otp-login-form .wawp-action-buttons,
body.primeneu-wawp-login-active .wawp-otp-login-form .wawp-form-group:not(.wawp-action-buttons),
body.primeneu-wawp-login-active .wawp-otp-login-form .wawp-email-autocomplete-wrapper,
body.primeneu-wawp-login-active #wawp-signup-form,
body.primeneu-wawp-login-active #wawp-signup-form .wawp-form-group {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: var(--primeneu-wawp-control-max);
	width: 100%;
}

body.primeneu-wawp-login-active .wawp-form-group {
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
	position: relative;
}

body.primeneu-wawp-login-active .wawp-form-group label {
	color: #434960;
	display: block;
	font-size: 12px;
	font-weight: 500;
	margin-bottom: 6px;
	text-align: start;
	text-transform: capitalize;
}

body.primeneu-wawp-login-active .wawp-form-group .wawp-form-control,
body.primeneu-wawp-login-active .wawp-form-group input[type="email"],
body.primeneu-wawp-login-active .wawp-form-group input[type="password"],
body.primeneu-wawp-login-active .wawp-form-group input[type="tel"],
body.primeneu-wawp-login-active .wawp-form-group input[type="text"],
body.primeneu-wawp-login-active .wawp-form-group input[type="url"],
body.primeneu-wawp-login-active .wawp-form-group textarea,
body.primeneu-wawp-login-active .wawp-otp-login-form input:not([type="hidden"]) {
	background-color: #fff !important;
	border: 1px solid #ccc !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	flex: 1 1 auto !important;
	font-family: inherit !important;
	font-size: 14px !important;
	margin-bottom: 10px !important;
	max-height: 48px !important;
	min-height: 48px !important;
	padding: 0 1rem !important;
	width: 100% !important;
}

body.primeneu-wawp-login-active .wawp-form-group .iti {
	display: block !important;
	height: 48px !important;
	width: 100% !important;
}

body.primeneu-wawp-login-active .wawp-form-group .iti input[type="tel"] {
	padding-left: 50px !important;
}

body.primeneu-wawp-login-active .wawp-login-branding,
body.primeneu-wawp-login-active #wawp-signup-branding,
body.primeneu-wawp-login-active .wawp-login-description {
	text-align: center;
}

body.primeneu-wawp-login-active .wawp-otp-login-form > .wawp-tabs .wawp-tab-list {
	width: 100%;
}

/* Logged-in auth pages: status card only (640px in payment-status-pages.css). */
body.primeneu-auth-logged-in-page.primeneu-wawp-auth-page main.wd-content-layout,
body.primeneu-auth-logged-in-page.primeneu-wawp-auth-page article.entry-content {
	margin-inline: auto;
	max-width: none;
	text-align: initial;
	width: 100%;
}

body.primeneu-wawp-auth-page .wd-social-login {
	flex-direction: column;
	align-items: center;
	width: 100%;
}

/* Sidebar panel: WAWP + social buttons share width */
.login-form-side .wawp-otp-login-form,
.login-form-side .wawp-fast-login-container {
	width: 100%;
	max-width: 400px;
	margin-inline: auto;
}

.login-form-side .wawp-separator + .wawp-custom-shortcodes,
.login-form-side .wd-social-login {
	margin-top: 15px;
}

.awp-otp-login-form,
.wawp-otp-login-form {
	border-radius: var(--button-radius);
}

/*
 * Footer clearance: Woodmart #customer_login is a multi-column grid; the register
 * promo column and short main column let the footer sit too close to Google/Facebook.
 */
body.primeneu-wawp-login-active #customer_login.wd-grid-f-col {
	--wd-col-lg: 1;
	--wd-col-md: 1;
	--wd-col-sm: 1;
	display: block !important;
}

body.primeneu-wawp-login-active #customer_login .wd-col.col-register,
body.primeneu-wawp-login-active #customer_login .wd-col.col-register-text,
body.primeneu-wawp-login-active #customer_login .col-register,
body.primeneu-wawp-login-active #customer_login .col-register-text {
	display: none !important;
	height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.primeneu-wawp-login-active .wd-registration-page {
	margin-bottom: 0;
	padding-bottom: 24px;
}

body.primeneu-wawp-login-active .woocommerce-form-login .wd-login-divider,
body.primeneu-wawp-login-active #customer_login .wd-login-divider {
	margin-top: 24px;
}

/* Modest gap between social buttons and site footer (avoid stacking large paddings). */
body.primeneu-wawp-login-active .woocommerce-form-login .wd-social-login,
body.primeneu-wawp-login-active #customer_login .wd-social-login {
	margin-top: 16px !important;
	margin-bottom: 24px !important;
}

body.primeneu-wawp-login-active .wd-page-content.main-page-wrapper,
body.primeneu-wawp-login-active main.wd-content-layout {
	padding-bottom: 24px !important;
	padding-top: 0px;
}

body.primeneu-wawp-login-active .wd-footer.footer-container {
	position: relative;
	z-index: 1;
	margin-top: 24px !important;
	clear: both;
}

/* --- Loading: centered ring (theme icon-left rules break ri-loader-5-line) --- */
.login-form-side .wawp-btn.is-loading,
.login-form-side .wawp-request-btn.is-loading,
.primeneu-wawp-auth-page .wawp-btn.is-loading,
.primeneu-wawp-auth-page .wawp-request-btn.is-loading,
.woocommerce-account .wawp-btn.is-loading,
.woocommerce-account .wawp-request-btn.is-loading {
	color: transparent !important;
	pointer-events: none;
}

.login-form-side .wawp-btn.is-loading > i,
.login-form-side .wawp-request-btn.is-loading > i,
.primeneu-wawp-auth-page .wawp-btn.is-loading > i,
.primeneu-wawp-auth-page .wawp-request-btn.is-loading > i,
.woocommerce-account .wawp-btn.is-loading > i,
.woocommerce-account .wawp-request-btn.is-loading > i {
	display: none !important;
	position: static !important;
	inset: auto !important;
	margin: 0 !important;
}

.login-form-side .wawp-btn.is-loading::after,
.login-form-side .wawp-request-btn.is-loading::after,
.primeneu-wawp-auth-page .wawp-btn.is-loading::after,
.primeneu-wawp-auth-page .wawp-request-btn.is-loading::after,
.woocommerce-account .wawp-btn.is-loading::after,
.woocommerce-account .wawp-request-btn.is-loading::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 22px;
	height: 22px;
	margin: -11px 0 0 -11px;
	border: 2px solid rgba(255, 255, 255, 0.35);
	border-top-color: #fff;
	border-radius: 50%;
	animation: primeneu-wawp-spin 0.65s linear infinite;
}

@keyframes primeneu-wawp-spin {
	to {
		transform: rotate(360deg);
	}
}

/* --- Lock alternate login methods while one flow is active --- */
.primeneu-wawp-login-locked .wawp-tab:not(.primeneu-wawp-allow-interaction),
.primeneu-wawp-login-locked .wd-social-login a:not(.primeneu-wawp-allow-interaction),
.primeneu-wawp-login-locked .wd-social-login button:not(.primeneu-wawp-allow-interaction),
.primeneu-wawp-login-locked .wd-social-login .btn:not(.primeneu-wawp-allow-interaction),
.primeneu-wawp-login-locked .wawp-request-btn:not(.primeneu-wawp-allow-interaction):not(.is-loading),
.primeneu-wawp-login-locked .wawp-action-buttons > .wawp-btn:not(.primeneu-wawp-allow-interaction):not(.is-loading):not(.wawp-edit-phone),
.primeneu-wawp-login-locked .js-wawp-show-password-btn:not(.primeneu-wawp-allow-interaction),
.primeneu-wawp-login-locked .js-wawp-request-otp-email:not(.primeneu-wawp-allow-interaction),
.primeneu-wawp-login-locked .js-wawp-login-submit-password:not(.primeneu-wawp-allow-interaction) {
	pointer-events: none !important;
	opacity: 0.55;
	cursor: not-allowed !important;
}
