/* Tab-uri autentificare — fără Tailwind hidden (!important) pe panouri */
.piese-auth-hidden {
	display: none !important;
}

/* Butoane submit — text centrat (WP inserează <br> în buton) */
.modal-login .button-login .piese-auth-submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100%;
	min-height: 3.125rem;
	height: 3.125rem;
	margin-top: 0 !important;
	padding: 0 1.25rem !important;
	border: none;
	box-sizing: border-box;
	line-height: 1.2 !important;
	font-size: 0.6875rem !important;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	cursor: pointer;
	color: #fff !important;
}

.modal-login .button-login .piese-auth-submit br {
	display: none !important;
}

.modal-login .button-login .piese-auth-btn-text {
	display: block;
	line-height: 1.2;
}

.piese-myaccount-auth .woocommerce-notices-wrapper,
.modal-login .woocommerce-notices-wrapper,
.account-form-popup .woocommerce-notices-wrapper {
	margin: 0 0 1rem;
}

.piese-myaccount-auth .woocommerce-error,
.piese-myaccount-auth .woocommerce-message,
.modal-login .woocommerce-error,
.modal-login .woocommerce-message {
	list-style: none;
	margin: 0 0 0.75rem;
	padding: 0.75rem 1rem;
	border-radius: 6px;
	font-size: 0.875rem;
}

.piese-myaccount-auth .woocommerce-error,
.modal-login .woocommerce-error {
	background: #fdecea;
	color: #b42318;
	border: 1px solid #f5c2c0;
}

.piese-myaccount-auth .woocommerce-message,
.modal-login .woocommerce-message {
	background: #ecfdf3;
	color: #1a7f37;
	border: 1px solid #b7ebc6;
}

.piese-auth-mode-lost .login-title {
	display: none !important;
}

.piese-auth-lost-heading.piese-auth-hidden {
	display: none !important;
}

.modal-login .piese-back-to-login {
	font: inherit;
}

/* Rând login: Ține-mă minte + link parolă */
.modal-login .piese-remember-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem 1rem;
	padding-top: 0.875rem;
	margin-top: 0.25rem;
}

.modal-login .piese-remember-label {
	display: inline-flex;
	align-items: center;
	gap: 0.625rem;
	margin: 0;
	cursor: pointer;
	user-select: none;
	line-height: 1.25;
	max-width: 100%;
}

.modal-login .piese-remember-text {
	font-size: 0.75rem;
	font-weight: 500;
	color: var(--rbb-general-body-text-color, #444);
}

.modal-login .piese-remember-control {
	position: relative;
	flex-shrink: 0;
	width: 1.125rem;
	height: 1.125rem;
	display: inline-block;
}

.modal-login .piese-remember-input {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	opacity: 0;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	min-height: 0 !important;
}

.modal-login .piese-remember-box {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	border: 1px solid #c8c8c8;
	border-radius: 4px;
	background: #fff;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.modal-login .piese-remember-box::after {
	content: "";
	display: block;
	width: 0.3125rem;
	height: 0.5625rem;
	margin-top: -1px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg) scale(0);
	opacity: 0;
	transition: transform 0.15s ease, opacity 0.15s ease;
}

/* :has() + clasă .is-checked — WP inserează <br> între input și box, deci input + box nu funcționează */
.modal-login .piese-remember-control:has(.piese-remember-input:checked) .piese-remember-box,
.modal-login .piese-remember-control.is-checked .piese-remember-box {
	border-color: var(--rbb-general-primary-color, #e85d04);
	background: var(--rbb-general-primary-color, #e85d04);
	box-shadow: 0 0 0 1px var(--rbb-general-primary-color, #e85d04);
}

.modal-login .piese-remember-control:has(.piese-remember-input:checked) .piese-remember-box::after,
.modal-login .piese-remember-control.is-checked .piese-remember-box::after {
	transform: rotate(45deg) scale(1);
	opacity: 1;
}

.modal-login .piese-remember-control:has(.piese-remember-input:focus-visible) .piese-remember-box,
.modal-login .piese-remember-control.is-focused .piese-remember-box {
	outline: 2px solid var(--rbb-general-primary-color, #e85d04);
	outline-offset: 2px;
}

.modal-login .piese-remember-label:hover .piese-remember-box {
	border-color: var(--rbb-general-primary-color, #e85d04);
}

.modal-login .piese-forgot-link {
	flex-shrink: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font: inherit;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.25;
	color: var(--rbb-general-body-text-color, #444);
	cursor: pointer;
	text-decoration: none;
	transition: color 0.2s ease;
}

.modal-login .piese-forgot-link:hover,
.modal-login .piese-forgot-link:focus-visible {
	color: var(--rbb-general-link-hover-color, #e85d04);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Dezactivează pseudo-checkbox-ul vechi din tema Automize (popup) */
.account-form-popup .modal-login .remember-lost label::before,
.account-form-popup .modal-login .remember-lost label::after,
.account-form-popup .modal-login .remember-lost .remember label::before,
.account-form-popup .modal-login .remember-lost .remember label::after {
	content: none !important;
	display: none !important;
}

/* Markup vechi (input.hidden) — până se actualizează template-ul pe server */
.modal-login .remember-lost .remember {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-height: 1.125rem;
	padding-left: 1.625rem;
}

.modal-login .remember-lost .remember input[name='rememberme'] {
	position: absolute !important;
	left: 0 !important;
	top: 50% !important;
	transform: translateY(-50%);
	width: 1.125rem !important;
	height: 1.125rem !important;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 0 !important;
	display: block !important;
	clip: auto !important;
	clip-path: none !important;
	z-index: 2 !important;
	cursor: pointer !important;
	border: 0 !important;
	min-height: 0 !important;
}

.modal-login .remember-lost .remember label {
	position: relative;
	display: inline-block;
	margin: 0;
	padding-left: 0;
	cursor: pointer;
	line-height: 1.25;
}

.modal-login .remember-lost .remember label::before {
	content: '' !important;
	display: block !important;
	position: absolute;
	left: -1.625rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1.125rem;
	height: 1.125rem;
	border: 1px solid #c8c8c8;
	border-radius: 4px;
	background: #fff;
	box-sizing: border-box;
}

.modal-login .remember-lost .remember label::after {
	content: '' !important;
	display: block !important;
	position: absolute;
	left: calc(-1.625rem + 5px);
	top: 50%;
	width: 0.3125rem;
	height: 0.5625rem;
	margin-top: -2px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: translateY(-50%) rotate(45deg) scale(0);
	opacity: 0;
	transition: transform 0.15s ease, opacity 0.15s ease;
}

.modal-login .remember-lost .remember input[name='rememberme']:checked + label::before {
	border-color: var(--rbb-general-primary-color, #e85d04);
	background: var(--rbb-general-primary-color, #e85d04);
}

.modal-login .remember-lost .remember input[name='rememberme']:checked + label::after {
	transform: translateY(-50%) rotate(45deg) scale(1);
	opacity: 1;
}
