/**
 * Queen Cademy — Hebrew RTL login (wp-login.php skin)
 * Spec: login-design-brief.md / login-page-design.png
 */

:root {
	--qc-brand-deep: var(--qc-color-indigo);
	--qc-brand-deep-2: var(--qc-color-indigo);
	--qc-accent: var(--qc-color-violet);
	--qc-accent-hover: var(--qc-color-violet);
	--qc-text: var(--qc-color-navy);
	--qc-text-muted: var(--qc-color-text-secondary);
	--qc-border: var(--qc-color-divider);
	--qc-border-focus: var(--qc-color-violet);
	--qc-input-bg: var(--qc-color-white);
	--qc-radius: 10px;
	--qc-font: "Ploni ML v2 AAA", "Heebo", "Assistant", "Segoe UI", Tahoma, sans-serif;
	--qc-mint: #14b8a6;
	--qc-mint-soft: #d8f5ef;
}

/*
 * Unlock WP core `html, body { height: 100% }` (login.css) so the document
 * can grow and the page can scroll. qc-login.css only loads on this skin.
 * Do not set height: 100vh/dvh or overflow:hidden on the shell / white card.
 * overflow-x: clip avoids a scrollport (unlike hidden) while clipping sideways.
 */
html {
	height: auto !important;
	max-height: none !important;
	overflow-x: clip;
	overflow-y: visible;
}

/* ─── Reset BuddyBoss / core login chrome for this skin ─── */
body.login.qc-hebrew-login {
	/* LTR grid so panel order matches the mockup: form | brand.
	   Inner panels set direction:rtl for Hebrew copy. */
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
	grid-template-areas: "form brand";
	direction: ltr;
	height: auto !important; /* beat WP height:100% — allow page scroll */
	max-height: none !important;
	min-height: 100vh;
	margin: 0;
	padding: 0;
	background: var(--qc-color-white);
	font-family: var(--qc-font);
	color: var(--qc-text);
	overflow-x: clip;
	overflow-y: visible; /* document/viewport scrolls; no body scroll lock */
}

body.login.qc-hebrew-login #login {
	grid-area: form;
	direction: rtl;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 48px 56px 40px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center; /* center form column in the white panel */
	position: relative !important; /* beat BuddyBoss login-split absolute */
	right: auto !important;
	left: auto !important;
	top: auto !important;
	transform: none !important;
	background: var(--qc-color-white);
	min-height: 100vh;
	z-index: 1;
	isolation: isolate;
}

body.login.qc-hebrew-login .qc-brand-panel {
	grid-area: brand;
	direction: rtl;
	position: relative;
	/* Solid deep purple matching 1-login-hebrew.pdf */
	background: var(--qc-color-indigo);
	color: var(--qc-color-white);
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	/* Physical right = 80px (RTL start). Left stays 56px. Top 80px lives on __inner. */
	padding: 0 80px 80px 56px;
	box-sizing: border-box;
	overflow: hidden; /* crown may extend; logo credit stays inside padding */
}

/* Hide default WP/BuddyBoss bits we replace */
body.login.qc-hebrew-login #login > h1,
body.login.qc-hebrew-login #login h1.wp-login-logo,
body.login.qc-hebrew-login #backtoblog,
body.login.qc-hebrew-login #nav,
body.login.qc-hebrew-login .privacy-policy-page-link,
body.login.qc-hebrew-login .language-switcher,
body.login.qc-hebrew-login .login-split,
body.login.qc-hebrew-login .wp-tooltip {
	display: none !important;
}

/* Help link — top of form panel (visual top-start in design = top-left of form in mockup) */
body.login.qc-hebrew-login .qc-login-help {
	position: absolute;
	top: 28px;
	left: 40px;
	right: auto;
	font-size: 14px;
	color: var(--qc-color-navy);
	z-index: 2;
	direction: rtl;
}

body.login.qc-hebrew-login .qc-login-help a {
	color: var(--qc-accent);
	font-weight: 700;
	text-decoration: none;
}

body.login.qc-hebrew-login .qc-login-help a:hover {
	text-decoration: underline;
}

/* Heading — stacked + centered (BuddyBoss uses flex row here; override hard) */
body.login.qc-hebrew-login .qc-login-heading,
body.login.qc-hebrew-login .login-heading,
body.login.qc-hebrew-login #login .login-heading {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important; /* RTL: start = right side of form */
	justify-content: flex-start !important;
	width: 100%;
	max-width: 420px;
	text-align: right !important;
	margin: 0 0 32px !important;
	padding: 0 !important;
}

body.login.qc-hebrew-login .qc-login-heading h2,
body.login.qc-hebrew-login .login-heading h2,
body.login.qc-hebrew-login #login .login-heading h2 {
	display: block !important;
	width: 100%;
	margin: 0 !important;
	margin-right: 0 !important; /* undo BuddyBoss margin-right:auto */
	margin-left: 0 !important;
	padding: 0;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--qc-color-navy);
	letter-spacing: -0.02em;
	text-align: right !important;
	float: none !important;
}

body.login.qc-hebrew-login .qc-login-subtitle,
body.login.qc-hebrew-login .login-heading .qc-login-subtitle,
body.login.qc-hebrew-login #login .login-heading p {
	display: block !important;
	width: 100%;
	margin: 0 !important;
	padding: 0;
	padding-top: 10px;
	font-size: 18px;
	font-weight: 400;
	color: var(--qc-color-navy);
	line-height: 1.45;
	text-align: right !important;
	float: none !important;
}

/* Form shell */
body.login.qc-hebrew-login #loginform,
body.login.qc-hebrew-login #lostpasswordform,
body.login.qc-hebrew-login #resetpassform {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	width: 100%;
	max-width: 420px;
}

body.login.qc-hebrew-login #login form p,
body.login.qc-hebrew-login #login form .user-pass-wrap {
	margin-bottom: 22px;
}

/* Kill BuddyBoss decorative field icons if any leak through */
body.login.qc-hebrew-login #loginform .user-pass-wrap:before,
body.login.qc-hebrew-login #loginform p:before,
body.login.qc-hebrew-login #loginform label:before,
body.login.qc-hebrew-login #loginform .input:before {
	content: none !important;
	display: none !important;
}

body.login.qc-hebrew-login #loginform label,
body.login.qc-hebrew-login #lostpasswordform label,
body.login.qc-hebrew-login label[for="user_login"],
body.login.qc-hebrew-login label[for="user_pass"],
body.login.qc-hebrew-login label#user_label,
body.login.qc-hebrew-login label#pass_label {
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: var(--qc-color-navy);
	margin: 0 0 8px;
	text-align: right;
}

/* Undo BuddyBoss screen-reader-only labels — we want visible Hebrew labels */
body.login.qc-hebrew-login #loginform label .screen-reader-text,
body.login.qc-hebrew-login #lostpasswordform label .screen-reader-text {
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	clip: auto !important;
	clip-path: none !important;
	overflow: visible !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	color: inherit !important;
}

body.login.qc-hebrew-login #loginform .input,
body.login.qc-hebrew-login #lostpasswordform .input,
body.login.qc-hebrew-login input[type="text"],
body.login.qc-hebrew-login input[type="password"],
body.login.qc-hebrew-login input[type="email"] {
	font-family: var(--qc-font);
	font-size: 15px;
	color: var(--qc-color-text-muted);
	background: var(--qc-input-bg) !important;
	border: 1px solid var(--qc-border) !important;
	border-radius: var(--qc-radius) !important;
	box-shadow: none !important;
	padding: 12px 16px !important;
	height: auto !important;
	min-height: 48px;
	width: 100%;
	box-sizing: border-box;
	/* PDF shows placeholders/values right-aligned in the RTL form */
	direction: rtl;
	text-align: right;
	margin:0;
}

/* Keep typed emails readable LTR while still sitting on the right */
body.login.qc-hebrew-login #user_login {
	direction: ltr;
	text-align: right;
	unicode-bidi: plaintext;
}

body.login.qc-hebrew-login #loginform .input:focus,
body.login.qc-hebrew-login input[type="text"]:focus,
body.login.qc-hebrew-login input[type="password"]:focus {
	border-color: var(--qc-border-focus) !important;
	outline: none;
	box-shadow: 0 0 0 3px rgba(124, 6, 254, 0.15) !important;
}

body.login.qc-hebrew-login #loginform .input::placeholder {
	color: var(--qc-color-text-muted);
	opacity: 1;
}

/* Password field + הצגה toggle */
body.login.qc-hebrew-login .user-pass-wrap .wp-pwd,
body.login.qc-hebrew-login .qc-pass-field {
	position: relative;
	display: block;
}

body.login.qc-hebrew-login .wp-pwd input#user_pass,
body.login.qc-hebrew-login .qc-pass-field input#user_pass {
	padding-left: 64px !important;
	padding-right: 16px !important;
	direction: ltr;
	text-align: right;
	unicode-bidi: plaintext;
}

/* Hide core / BuddyBoss eye controls + lock/key icons; we use text toggle */
body.login.qc-hebrew-login .wp-hide-pw,
body.login.qc-hebrew-login .label-switch,
body.login.qc-hebrew-login #pass_label .label-switch,
body.login.qc-hebrew-login #caps-warning,
body.login.qc-hebrew-login .user-pass-wrap .wp-pwd:before,
body.login.qc-hebrew-login .user-pass-wrap .wp-pwd::before,
body.login.qc-hebrew-login #loginform label[for="user_pass"]:before,
body.login.qc-hebrew-login #loginform label[for="user_pass"]::before,
body.login.qc-hebrew-login #loginform label[for="user_login"]:before,
body.login.qc-hebrew-login #loginform label[for="user_login"]::before {
	content: none !important;
	display: none !important;
}

body.login.qc-hebrew-login .qc-show-pass {
	position: absolute;
	left: 14px;
	top: 50%;
	/* Nudge slightly above optical center so הצגה sits cleaner in the field */
	transform: translateY(calc(-50% - 2px));
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	font-family: var(--qc-font);
	font-size: 16px;
	font-weight: 700;
	color: var(--qc-color-violet) !important;
	cursor: pointer;
	z-index: 2;
	line-height: 1;
}

body.login.qc-hebrew-login .qc-show-pass:hover,
body.login.qc-hebrew-login .qc-show-pass:focus,
body.login.qc-hebrew-login .qc-show-pass:focus-visible {
	color: var(--qc-color-violet) !important;
	background: none !important;
	border-color: transparent !important;
	text-decoration: underline;
	outline: none;
	box-shadow: none;
}

body.login.qc-hebrew-login .qc-show-pass:focus-visible {
	outline: 2px solid rgba(124, 6, 254, 0.45);
	outline-offset: 2px;
	border-radius: 3px;
}

/* Options row: forgot (left) + remember (right) in mockup spatial terms */
body.login.qc-hebrew-login .qc-login-options {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	flex-direction: row; /* with #login dir=rtl: remember (first) on the right */
	gap: 8px;
	width: 100%;
	max-width: 420px;
	margin: 4px 0 22px !important;
	font-size: 13px;
	overflow: visible !important;
	box-sizing: border-box;
	padding-inline-end: 6px; /* room for remember-me checkbox */
}

body.login.qc-hebrew-login #loginform {
	overflow: visible !important;
}

body.login.qc-hebrew-login .qc-login-options .lostmenot,
body.login.qc-hebrew-login .qc-login-options .forgetmenot,
body.login.qc-hebrew-login #loginform .forgetmenot,
body.login.qc-hebrew-login #loginform .lostmenot {
	display: flex !important;
	align-items: center;
	gap: 8px;
	margin: 0 !important;
	float: none !important;
	width: auto !important;
	padding: 0 !important;
	overflow: visible !important;
}

body.login.qc-hebrew-login .lostmenot a,
body.login.qc-hebrew-login .qc-login-options a {
	color: var(--qc-accent) !important;
	font-weight: 700;
	text-decoration: none;
	font-size: 16px;
}

body.login.qc-hebrew-login .lostmenot a:hover,
body.login.qc-hebrew-login .lostmenot a:focus,
body.login.qc-hebrew-login .lostmenot a:focus-visible {
	color: var(--qc-color-violet) !important;
	text-decoration: underline;
}

/* Remember-me: one row, checkbox + label vertically centered.
   Undo core `.login form .forgetmenot { min-height: 40px }`, BuddyBoss padding-top,
   and our own generic `#loginform label { margin-bottom: 8px }`. */
body.login.qc-hebrew-login #loginform p.forgetmenot,
body.login.qc-hebrew-login.bb-login form p.forgetmenot {
	display: flex !important;
	flex-direction: row;
	align-items: center !important;
	gap: 8px;
	height: auto !important;
	min-height: 0 !important;
	line-height: 1 !important;
	padding: 0 !important;
	margin: 0 !important;
	flex-shrink: 0;
}

body.login.qc-hebrew-login #loginform p.forgetmenot label,
body.login.qc-hebrew-login #loginform label[for="rememberme"],
body.login.qc-hebrew-login.bb-login form p.forgetmenot label {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	min-height: 15px; /* = checkbox height */
	vertical-align: middle;
	float: none !important;
	font-weight: 400;
}

body.login.qc-hebrew-login .forgetmenot label,
body.login.qc-hebrew-login .forgetmenot {
	font-size: 14px;
	color: var(--qc-text);
	font-weight: 400;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	/* Keep checkbox fully inside the row (was clipped on the end edge) */
	padding-inline-end: 8px;
	margin-inline-end: 0;
	overflow: visible !important;
	position: relative;
	z-index: 1;
}

body.login.qc-hebrew-login input[type="checkbox"]#rememberme,
body.login.qc-hebrew-login #rememberme,
body.login.qc-hebrew-login.bb-login form .forgetmenot input[type="checkbox"],
body.login.qc-hebrew-login.bb-login form .forgetmenot input[type="checkbox"]:before {
	appearance: auto !important;
	-webkit-appearance: checkbox !important;
	opacity: 1 !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	width: 15px !important;
	height: 15px !important;
	min-width: 15px !important;
	min-height: 15px !important;
	margin: 0 !important;
	padding: 0 !important;
	accent-color: var(--qc-accent);
	flex-shrink: 0;
	box-sizing: border-box !important;
	transform: none !important;
	clip: auto !important;
	clip-path: none !important;
}

body.login.qc-hebrew-login span.checkbox {
	display: none !important; /* drop BuddyBoss fake checkbox */
}

/* CTA */
body.login.qc-hebrew-login #wp-submit,
body.login.qc-hebrew-login .submit .button-primary {
	font-family: var(--qc-font);
	font-size: 16px;
	font-weight: 700;
	width: 100% !important;
	max-width: 420px;
	float: none !important;
	height: auto !important;
	min-height: 50px;
	margin: 0 0 20px !important;
	background: var(--qc-accent) !important;
	border: none !important;
	border-radius: var(--qc-radius) !important;
	color: var(--qc-color-white) !important;
	box-shadow: none !important;
	text-shadow: none !important;
	cursor: pointer;
	transition: background 0.15s ease, transform 0.15s ease;
}

body.login.qc-hebrew-login #wp-submit:hover,
body.login.qc-hebrew-login #wp-submit:focus,
body.login.qc-hebrew-login #wp-submit:focus-visible,
body.login.qc-hebrew-login .submit .button-primary:hover,
body.login.qc-hebrew-login .submit .button-primary:focus,
body.login.qc-hebrew-login .submit .button-primary:focus-visible,
body.login.qc-hebrew-login .button.button-primary:hover,
body.login.qc-hebrew-login .button.button-primary:focus,
body.login.qc-hebrew-login .button.button-primary:focus-visible {
	background: var(--qc-color-violet) !important;
	background-color: var(--qc-color-violet) !important;
	border-color: var(--qc-color-violet) !important;
	color: var(--qc-color-white) !important;
	transform: translateY(-1px);
}

body.login.qc-hebrew-login p.submit {
	margin: 0;
	padding: 0;
}

/* Lost password: 1/3 + dots, RTL start (right). Current pill is rightmost. */
body.login.qc-hebrew-login .qc-progress {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	width: 100%;
	max-width: 420px;
	margin: 0 0 28px;
	padding: 0;
	direction: rtl;
	box-sizing: border-box;
}

body.login.qc-hebrew-login .qc-progress__step {
	display: block;
	flex: 0 0 auto;
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--qc-color-divider);
}

body.login.qc-hebrew-login .qc-progress__step.is-current {
	width: 28px;
	background: var(--qc-accent);
}

body.login.qc-hebrew-login .qc-progress__label {
	display: block;
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	font-size: 13px;
	font-weight: 400;
	line-height: 1;
	color: var(--qc-color-navy);
	letter-spacing: 0.02em;
}

body.login.qc-hebrew-login.login-action-lostpassword #login .qc-back-to-login,
body.login.qc-hebrew-login #lostpasswordform .qc-back-to-login,
body.login.qc-hebrew-login .qc-back-to-login {
	display: block !important;
	text-align: right !important;
	align-self: center;
	width: 100% !important;
	max-width: 420px !important;
	margin-block: 4px 0;
	margin-inline: auto !important;
	padding: 0;
}

body.login.qc-hebrew-login .qc-back-to-login a {
	color: var(--qc-accent);
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
}

body.login.qc-hebrew-login .qc-back-to-login a:hover,
body.login.qc-hebrew-login .qc-back-to-login a:focus,
body.login.qc-hebrew-login .qc-back-to-login a:focus-visible {
	color: var(--qc-color-violet) !important;
	text-decoration: underline;
}

body.login.qc-hebrew-login .qc-back-to-login__arrow {
	display: inline-block;
	margin-inline-end: 4px;
}

body.login.qc-hebrew-login.login-action-lostpassword .qc-login-invite,
body.login.qc-hebrew-login.login-action-lostpassword a.bs-sign-in,
body.login.qc-hebrew-login.login-action-lostpassword #login > p.message,
body.login.qc-hebrew-login.login-action-checkemail .qc-login-invite,
body.login.qc-hebrew-login.login-action-checkemail a.bs-sign-in,
body.login.qc-hebrew-login.login-action-checkemail #login > p.message,
body.login.qc-hebrew-login.login-action-checkemail #login-message,
body.login.qc-hebrew-login.login-action-checkemail #backtoblog,
body.login.qc-hebrew-login.login-action-rp .qc-login-invite,
body.login.qc-hebrew-login.login-action-rp a.bs-sign-in,
body.login.qc-hebrew-login.login-action-rp #login > p.message,
body.login.qc-hebrew-login.login-action-rp .message.reset-pass,
body.login.qc-hebrew-login.login-action-rp .notice.reset-pass,
body.login.qc-hebrew-login.login-action-rp #backtoblog,
body.login.qc-hebrew-login.login-action-rp #nav,
body.login.qc-hebrew-login.login-action-resetpass .qc-login-invite,
body.login.qc-hebrew-login.login-action-resetpass a.bs-sign-in,
body.login.qc-hebrew-login.login-action-resetpass #login > p.message,
body.login.qc-hebrew-login.login-action-resetpass .message.reset-pass,
body.login.qc-hebrew-login.login-action-resetpass .notice.reset-pass,
body.login.qc-hebrew-login.login-action-resetpass #backtoblog,
body.login.qc-hebrew-login.login-action-resetpass #nav {
	display: none !important;
}

/* Check email (lostpassword step 2/3) — centered max-width column in the white panel.
   Inside the column: RTL (flex-start = physical right) + text-align:right — not panel-edge pin. */
body.login.qc-hebrew-login .qc-check-email {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	max-width: 420px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	direction: rtl;
	text-align: right;
}

body.login.qc-hebrew-login .qc-check-email .qc-progress {
	justify-content: flex-start;
}

body.login.qc-hebrew-login .qc-check-email__icon {
	display: flex;
	justify-content: flex-start; /* RTL: start = physical right */
	width: 100%;
	margin: 0 0 24px;
}

body.login.qc-hebrew-login .qc-check-email__icon-circle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	border-radius: 50% !important; /* true circle — not rounded square */
	background: var(--qc-color-teal-tint);
	color: var(--qc-color-teal-ink); /* dark envelope on soft mint */
	box-sizing: border-box;
	overflow: hidden;
	flex-shrink: 0;
}

body.login.qc-hebrew-login .qc-check-email__envelope {
	display: block;
	width: 32px;
	height: 32px;
	color: var(--qc-text);
	stroke: currentColor;
}

body.login.qc-hebrew-login .qc-check-email__heading,
body.login.qc-hebrew-login .qc-check-email .qc-login-heading,
body.login.qc-hebrew-login .qc-check-email .login-heading,
body.login.qc-hebrew-login #login .qc-check-email .login-heading,
body.login.qc-hebrew-login #login .qc-check-email .qc-login-heading {
	align-items: flex-start !important; /* RTL: start = physical right */
	text-align: right !important;
	margin-bottom: 28px !important;
	width: 100%;
}

body.login.qc-hebrew-login .qc-check-email__heading h2,
body.login.qc-hebrew-login .qc-check-email .qc-login-heading h2,
body.login.qc-hebrew-login .qc-check-email .login-heading h2,
body.login.qc-hebrew-login #login .qc-check-email .login-heading h2,
body.login.qc-hebrew-login #login .qc-check-email .qc-login-heading h2,
body.login.qc-hebrew-login.login-action-checkemail #login .login-heading h2 {
	text-align: right !important;
	width: 100%;
}

/* Sent-link lead + bold address + spam note (brand-welcome JS targets this lead TOP). */
body.login.qc-hebrew-login .qc-check-email .qc-login-subtitle,
body.login.qc-hebrew-login .qc-check-email .login-heading .qc-login-subtitle,
body.login.qc-hebrew-login .qc-check-email .login-heading p,
body.login.qc-hebrew-login #login .qc-check-email .login-heading .qc-login-subtitle,
body.login.qc-hebrew-login #login .qc-check-email .login-heading p,
body.login.qc-hebrew-login #login .qc-check-email .qc-login-subtitle {
	text-align: right !important;
}

/* Bold email under lead — full column width, RTL right edge shared with lead.
   No shrink-wrapped mint chip (reference: plain bold text). */
body.login.qc-hebrew-login .qc-check-email__address,
body.login.qc-hebrew-login #login .qc-check-email__address,
body.login.qc-hebrew-login #login .qc-check-email .qc-check-email__address,
body.login.qc-hebrew-login .qc-check-email .login-heading .qc-check-email__address {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin: 8px 0 0 !important;
	padding: 0 !important;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
	color: var(--qc-color-navy);
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	float: none !important;
	align-self: stretch !important;
	unicode-bidi: isolate;
	direction: ltr;
	text-align: right !important;
}

body.login.qc-hebrew-login .qc-check-email__note,
body.login.qc-hebrew-login #login .qc-check-email__note,
body.login.qc-hebrew-login #login .qc-check-email .qc-check-email__note {
	display: block !important;
	width: 100%;
	margin: 15px 0 0 !important;
	padding: 0;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--qc-text-muted);
	text-align: right !important;
}

body.login.qc-hebrew-login .qc-check-email__actions,
body.login.qc-hebrew-login #login .qc-check-email__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start; /* RTL: start = physical right */
	gap: 8px 10px;
	width: 100%;
	max-width: 420px;
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.4;
	text-align: right;
}

body.login.qc-hebrew-login .qc-check-email__resend,
body.login.qc-hebrew-login .qc-check-email__actions > .qc-back-to-login {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	max-width: none !important;
	width: auto !important;
	text-align: inherit !important;
	align-self: auto !important;
}

body.login.qc-hebrew-login .qc-check-email__resend,
body.login.qc-hebrew-login .qc-check-email__actions > .qc-back-to-login {
	color: var(--qc-accent);
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
}

body.login.qc-hebrew-login .qc-check-email__resend:hover,
body.login.qc-hebrew-login .qc-check-email__resend:focus,
body.login.qc-hebrew-login .qc-check-email__resend:focus-visible,
body.login.qc-hebrew-login .qc-check-email__actions > .qc-back-to-login:hover,
body.login.qc-hebrew-login .qc-check-email__actions > .qc-back-to-login:focus,
body.login.qc-hebrew-login .qc-check-email__actions > .qc-back-to-login:focus-visible {
	color: var(--qc-color-violet) !important;
	text-decoration: underline;
}

body.login.qc-hebrew-login .qc-check-email__sep {
	color: var(--qc-color-text-muted);
	font-weight: 400;
	user-select: none;
}

body.login.qc-hebrew-login.login-action-checkemail .qc-login-heading h2,
body.login.qc-hebrew-login.login-action-checkemail .login-heading h2,
body.login.qc-hebrew-login.login-action-checkemail #login .login-heading h2 {
	font-size: 48px;
}

/* New password (resetpass step 3/3) */
body.login.qc-hebrew-login #resetpassform label,
body.login.qc-hebrew-login #resetpassform label[for="pass1"],
body.login.qc-hebrew-login #resetpassform label[for="pass2"],
body.login.qc-hebrew-login #resetpassform label[for="bs-pass2"] {
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: var(--qc-color-navy);
	margin: 0 0 8px;
	text-align: right;
}

body.login.qc-hebrew-login #resetpassform .user-pass1-wrap > p,
body.login.qc-hebrew-login #resetpassform .user-bs-pass2-wrap > p {
	display: block !important;
	margin: 0 0 8px !important;
	padding: 0;
	width: 100%;
}

body.login.qc-hebrew-login #resetpassform .user-pass1-wrap,
body.login.qc-hebrew-login #resetpassform .user-pass2-wrap {
	margin-bottom: 18px;
	position: relative;
}

body.login.qc-hebrew-login #resetpassform .user-bs-pass2-wrap {
	margin-bottom: 18px;
	position: relative;
	height: auto !important;
	min-height: 0;
}

body.login.qc-hebrew-login #resetpassform .user-bs-pass2-wrap label[for="bs-pass2"] {
	display: block !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 0 8px !important;
	clip: auto !important;
	clip-path: none !important;
	overflow: visible !important;
	font-size: 16px !important;
	font-weight: 700;
	color: var(--qc-color-navy);
	text-align: right;
}

body.login.qc-hebrew-login #resetpassform .wp-pwd {
	position: relative;
	display: block;
}

body.login.qc-hebrew-login #resetpassform #pass1,
body.login.qc-hebrew-login #resetpassform #pass2,
body.login.qc-hebrew-login #resetpassform #bs-pass2 {
	padding-left: 64px !important;
	padding-right: 16px !important;
	direction: ltr;
	text-align: right;
	unicode-bidi: plaintext;
}

body.login.qc-hebrew-login #resetpassform #bs-pass2 {
	/* Confirm field: no הצגה in mockup — normal padding */
	padding-left: 16px !important;
}

body.login.qc-hebrew-login #resetpassform .wp-generate-pw,
body.login.qc-hebrew-login #resetpassform .indicator-hint,
body.login.qc-hebrew-login #resetpassform #pass-strength-result {
	display: none !important;
}

/* Core/BuddyBoss may leave #pass1 hidden until “Generate”; keep it usable empty. */
body.login.qc-hebrew-login #resetpassform #pass1,
body.login.qc-hebrew-login #resetpassform .wp-pwd #pass1,
body.login.qc-hebrew-login #resetpassform .wp-pwd.is-open #pass1 {
	display: block !important;
	width: 100% !important;
}

body.login.qc-hebrew-login #resetpassform .pw-weak {
	display: none; /* shown by core JS only when weak + needed */
	margin: 0 0 16px;
	text-align: right;
}

body.login.qc-hebrew-login #resetpassform .pw-weak[style*="block"],
body.login.qc-hebrew-login #resetpassform .pw-weak.show {
	display: flex !important;
	align-items: center;
	gap: 8px;
	justify-content: flex-start;
}

body.login.qc-hebrew-login .qc-pass-strength {
	width: 100%;
	max-width: 420px;
	margin: 4px 0 20px;
	padding: 0;
	box-sizing: border-box;
	text-align: right;
}

body.login.qc-hebrew-login .qc-pass-strength__bars {
	display: flex;
	flex-direction: row;
	gap: 6px;
	width: 100%;
	margin: 0 0 8px;
	direction: rtl;
}

body.login.qc-hebrew-login .qc-pass-strength__seg {
	display: block;
	flex: 1 1 0;
	height: 6px;
	border-radius: 999px;
	background: var(--qc-color-border);
	transition: background-color 0.2s ease;
}

body.login.qc-hebrew-login .qc-pass-strength__seg.is-on {
	background: var(--qc-color-divider);
}

body.login.qc-hebrew-login .qc-pass-strength[data-level="1"] .qc-pass-strength__seg.is-on {
	background: var(--qc-color-coral-300);
}

body.login.qc-hebrew-login .qc-pass-strength[data-level="2"] .qc-pass-strength__seg.is-on {
	background: #f0c28a;
}

body.login.qc-hebrew-login .qc-pass-strength[data-level="3"] .qc-pass-strength__seg.is-on {
	background: #7ec8c0;
}

body.login.qc-hebrew-login .qc-pass-strength.is-strong .qc-pass-strength__seg.is-on,
body.login.qc-hebrew-login .qc-pass-strength[data-level="4"] .qc-pass-strength__seg.is-on {
	background: var(--qc-mint);
}

body.login.qc-hebrew-login .qc-pass-strength__text {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--qc-color-teal-900);
	text-align: right;
}

body.login.qc-hebrew-login #resetpassform p.submit.reset-pass-submit,
body.login.qc-hebrew-login #resetpassform .reset-pass-submit {
	display: block;
	margin: 8px 0 0;
	padding: 0;
}

body.login.qc-hebrew-login #resetpassform #wp-submit {
	width: 100%;
}

body.login.qc-hebrew-login.login-action-rp .qc-login-heading h2,
body.login.qc-hebrew-login.login-action-rp .login-heading h2,
body.login.qc-hebrew-login.login-action-rp #login .login-heading h2,
body.login.qc-hebrew-login.login-action-resetpass .qc-login-heading h2,
body.login.qc-hebrew-login.login-action-resetpass .login-heading h2,
body.login.qc-hebrew-login.login-action-resetpass #login .login-heading h2 {
	font-size: 48px;
}

/* Invitation footer */
body.login.qc-hebrew-login .qc-login-invite {
	text-align: center;
	font-size: 16px;
	color: var(--qc-color-navy);
	margin: 4px 0 0;
	max-width: 420px;
	line-height: 1.5;
}

body.login.qc-hebrew-login .qc-login-invite a {
	color: var(--qc-accent);
	font-weight: 700;
	text-decoration: none;
}

body.login.qc-hebrew-login .qc-login-invite a:hover {
	text-decoration: underline;
}

/* Errors / messages — soft pink notice; text centered, ! absolute right */
body.login.qc-hebrew-login #login_error,
body.login.qc-hebrew-login .notice.notice-error {
	position: relative;
	display: block;
	width: 100%;
	max-width: 420px;
	box-sizing: border-box;
	margin: 0 0 20px;
	/* Equal side padding so copy centers in the bar; ! sits in the right pad */
	padding: 14px 40px;
	border: 0 !important;
	border-inline-start: 0 !important;
	border-radius: 12px;
	background: var(--qc-color-coral-subtle) !important;
	color: var(--qc-color-coral-dark) !important;
	box-shadow: none !important;
	font-family: var(--qc-font);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	text-align: right !important;
	direction: rtl;
	unicode-bidi: isolate;
	overflow: visible;
}

/* Red circle + white ! — out of flow so message text can truly center. */
body.login.qc-hebrew-login #login_error::before,
body.login.qc-hebrew-login .notice.notice-error::before {
	content: "!";
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	margin: 0;
	border-radius: 50%;
	background: var(--qc-color-coral-600);
	color: var(--qc-color-white);
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	pointer-events: none;
}

body.login.qc-hebrew-login #login_error > p,
body.login.qc-hebrew-login #login_error .login-error-list,
body.login.qc-hebrew-login .notice.notice-error > p {
	margin: 0 !important;
	padding: 0;
	color: var(--qc-color-coral-dark) !important;
	text-align: right !important;
	unicode-bidi: plaintext;
}

body.login.qc-hebrew-login #login_error .login-error-list {
	padding-inline-start: 1.1em;
}

body.login.qc-hebrew-login #login_error .dashicons,
body.login.qc-hebrew-login #login_error .icon,
body.login.qc-hebrew-login .notice.notice-error .dashicons {
	display: none !important;
}

body.login.qc-hebrew-login .message,
body.login.qc-hebrew-login .success {
	max-width: 420px;
	border-radius: var(--qc-radius);
	border: 1px solid #c6e9d0;
	background: #f3fbf6;
	color: #166534;
	box-shadow: none;
	padding: 12px 14px;
	margin: 0 0 20px;
	font-size: 14px;
	line-height: 1.45;
	text-align: right;
}

body.login.qc-hebrew-login #login_error a,
body.login.qc-hebrew-login .notice.notice-error a {
	color: var(--qc-color-coral-dark);
	font-weight: 700;
	text-decoration: underline;
}

body.login.qc-hebrew-login #login_error a:hover,
body.login.qc-hebrew-login .notice.notice-error a:hover {
	color: var(--qc-color-coral-900);
}

/* ─── Brand panel (PDF: right-aligned logo, welcome, footer) ─── */
body.login.qc-hebrew-login .qc-brand-panel__inner {
	position: relative;
	z-index: 2;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start; /* RTL: start = right */
	text-align: right;
	padding-top: 80px; /* lockup sits lower in the purple panel */
	padding-bottom: 80px; /* mirror top; panel padding-bottom holds space under footer */
}

/* Wordmark + credit lockup — flush to the same RTL edge as welcome copy.
   Queen’s “n” ends ~60% across the mark; credit starts after that. */
body.login.qc-hebrew-login .qc-brand-logo {
	position: relative;
	display: block;
	align-self: flex-start; /* inner is RTL: start = right, with welcome/body */
	margin: 0 0 8px;
	margin-inline-start: auto;
	margin-inline-end: 0;
	width: min(260px, 68%);
	max-width: 260px;
	padding: 0;
	box-sizing: border-box;
	line-height: 0;
	background: transparent;
	direction: ltr;
	overflow: visible;
}

body.login.qc-hebrew-login .qc-brand-logo__img {
	display: block;
	height: auto;
	width: 100%;
	max-width: 260px;
	margin: 0;
	object-fit: contain;
	object-position: left center;
	overflow: visible;
	background: transparent;
	-webkit-user-drag: none;
}

/* Small italic credit — right of “Queen”, above “ademy”, clear of the n. */
body.login.qc-hebrew-login .qc-brand-logo__by {
	position: absolute;
	left: 63% !important;
	top: 22%;
	display: block;
	margin: 0;
	padding: 0;
	font-family: Georgia, "Times New Roman", "Palatino Linotype", serif;
	font-style: italic;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.1;
	color: var(--qc-color-white);
	white-space: nowrap;
	letter-spacing: 0.02em;
	pointer-events: none;
	z-index: 2;
	text-shadow: none;
	-webkit-text-stroke: 0;
	opacity: 1;
}

/* Kill any ghosted duplicate text from theme/BuddyBoss */
body.login.qc-hebrew-login .qc-brand-welcome,
body.login.qc-hebrew-login .qc-brand-body,
body.login.qc-hebrew-login .qc-brand-footer,
body.login.qc-hebrew-login .qc-brand-footer a,
body.login.qc-hebrew-login .qc-brand-footer span {
	text-shadow: none !important;
	-webkit-text-stroke: 0 !important;
	filter: none !important;
}

body.login.qc-hebrew-login .qc-brand-welcome::before,
body.login.qc-hebrew-login .qc-brand-welcome::after,
body.login.qc-hebrew-login .qc-brand-body::before,
body.login.qc-hebrew-login .qc-brand-body::after,
body.login.qc-hebrew-login .qc-brand-footer::before,
body.login.qc-hebrew-login .qc-brand-footer::after,
body.login.qc-hebrew-login .qc-brand-copy::before,
body.login.qc-hebrew-login .qc-brand-copy::after {
	content: none !important;
	display: none !important;
}

body.login.qc-hebrew-login .qc-brand-copy {
	position: relative;
	z-index: 2;
	max-width: 420px;
	text-align: right;
	margin-top: 16vh;
	padding-inline-end: 0;
}

/* Wide split only: welcome title = field top / check-email sent-link lead top (JS).
   JS sets the exact gap on load + resize for any ≥1100 width (1280, 1440, 2560, …). */
@media (min-width: 1100px) {
	body.login.qc-hebrew-login,
	body.login.qc-hebrew-login.login-split-page,
	body.login.qc-hebrew-login.bb-login {
		display: grid !important;
		grid-template-columns: minmax(0, 7fr) minmax(0, 3fr) !important;
		grid-template-areas: "form brand";
	}

	body.login.qc-hebrew-login .qc-brand-copy {
		margin-top: max(32px, calc(50vh - 205px));
	}

	/* Check-email: center the 420px column in the white panel (same as login/lostpassword).
	   RTL + text-align:right stay inside .qc-check-email — do not pin to panel right edge. */
	body.login.qc-hebrew-login.login-action-checkemail #login,
	body.login.qc-hebrew-login.login-action-checkemail.login-split-page #login,
	body.login.qc-hebrew-login.login-action-checkemail.bb-login #login {
		align-items: center !important;
	}

	body.login.qc-hebrew-login.login-action-checkemail .qc-check-email,
	body.login.qc-hebrew-login.login-action-checkemail #login .qc-check-email {
		align-self: center !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100%;
		max-width: 420px;
	}
}

body.login.qc-hebrew-login .qc-brand-welcome {
	margin: 0 0 18px;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--qc-color-white);
	letter-spacing: -0.02em;
	text-align: right;
}

body.login.qc-hebrew-login .qc-brand-body {
	margin: 0;
	font-size: 18px;
	line-height: 1.6;
	color: var(--qc-color-violet-300);
	font-weight: 400;
	max-width: 22em;
	text-align: right;
}

/* Check-email: address under brand subcopy (white/bold, LTR). */
body.login.qc-hebrew-login .qc-brand-email {
	margin: 14px 0 0;
	padding: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--qc-color-white);
	text-align: right;
	unicode-bidi: isolate;
	word-break: break-word;
}

/* Soft PDF crown — pinned to the panel’s physical bottom-right, behind the footer. */
body.login.qc-hebrew-login .qc-brand-watermark {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	max-width: 100%;
	height: 36%;
	margin: 0;
	padding: 0;
	line-height: 0;
	pointer-events: none;
	z-index: 0;
	overflow: hidden;
	box-sizing: border-box;
}

body.login.qc-hebrew-login .qc-brand-watermark__img {
	position: absolute;
	right: 0;
	bottom: 0;
	left: auto;
	display: block;
	width: 100%;
	max-width: none;
	height: 100%;
	max-height: none;
	margin: 0;
	padding: 0;
	object-fit: contain;
	object-position: right bottom;
	transform: none;
	image-rendering: auto;
	-webkit-user-drag: none;
	user-select: none;
}

@media (min-width: 1100px) {
	/* Desktop split: crown bottom-right, natural aspect (no stretch). */
	body.login.qc-hebrew-login .qc-brand-watermark {
		left: auto;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 36% !important;
		overflow: hidden;
	}

	body.login.qc-hebrew-login .qc-brand-watermark__img {
		position: absolute !important;
		right: 0 !important;
		bottom: 0 !important;
		left: auto !important;
		width: 100% !important;
		height: 100% !important;
		max-width: none !important;
		max-height: none !important;
		margin: 0 !important;
		object-fit: contain !important;
		object-position: right bottom !important;
	}

	body.login.qc-hebrew-login .qc-brand-footer {
		flex-wrap: nowrap;
		gap: 6px;
	}
}

body.login.qc-hebrew-login .qc-brand-footer {
	position: relative;
	z-index: 2;
	margin-top: auto;
	padding-top: 24px;
	padding-inline-end: 8px;
	font-size: 12px;
	color: var(--qc-color-violet-500);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	justify-content: flex-start; /* RTL start = right */
	text-align: right;
	width: 100%;
}

body.login.qc-hebrew-login .qc-brand-footer__copy {
	direction: ltr;
	unicode-bidi: isolate;
	color: var(--qc-color-violet-500);
}

body.login.qc-hebrew-login .qc-brand-footer a {
	color: var(--qc-color-violet-500);
	text-decoration: none;
}

body.login.qc-hebrew-login .qc-brand-footer a:hover {
	color: var(--qc-color-violet-500);
	text-decoration: underline;
}

body.login.qc-hebrew-login .qc-brand-footer__sep {
	opacity: 1;
	color: var(--qc-color-violet-500);
}

/*
Soft entrance motion — disabled during polish so screenshots match steady state.
@keyframes qc-fade-up {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}
@keyframes qc-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
body.login.qc-hebrew-login #login {
	animation: qc-fade-up 0.45s ease both;
}
body.login.qc-hebrew-login .qc-brand-panel {
	animation: qc-fade-in 0.55s ease both;
}
body.login.qc-hebrew-login .qc-brand-welcome {
	animation: qc-fade-up 0.55s 0.1s ease both;
}
*/

/*
 * Stacked layout below ~1100px — same format as the phone card:
 * purple brand band on top (help + logo + welcome), white form card
 * overlapping with large rounded corners. Wide desktop split (base
 * grid) is unchanged. Do not restyle remember-me / הצגה here.
 */
@media (max-width: 1099px) {
	body.login.qc-hebrew-login,
	body.login.qc-hebrew-login.login-split-page,
	body.login.qc-hebrew-login.bb-login {
		display: flex !important;
		flex-direction: column !important;
		grid-template-columns: none;
		grid-template-areas: none;
		background: var(--qc-color-indigo);
		/* Outer shell only: min-height fills one screen when short — never lock height. */
		height: auto !important;
		max-height: none !important;
		min-height: 100vh;
		min-height: 100dvh;
		overflow-x: clip;
		overflow-y: visible; /* page scrolls when content grows */
		width: 100%;
		position: relative;
	}

	/* Purple band first. */
	body.login.qc-hebrew-login .qc-brand-panel {
		order: 1;
		flex: 0 0 auto;
		width: 100% !important;
		min-height: 220px !important;
		height: auto !important;
		max-height: none;
		position: relative !important;
		right: auto !important;
		left: auto !important;
		top: auto !important;
		/* Physical right = 20px so logo/welcome aren’t flush. Desktop 80px stays above 1099.
		   Top pad clears fixed help (top:16px) so the logo has breathing room underneath. */
		padding: 76px 40px 50px 40px;
		padding-right: 20px !important;
		padding-inline-start: 20px !important; /* RTL start = physical right */
		box-sizing: border-box !important;
		overflow: hidden !important;
		justify-content: flex-start;
	}

	body.login.qc-hebrew-login .qc-brand-panel__inner {
		flex: 0 0 auto;
		padding-top: 0;
		padding-bottom: 8px;
		padding-right: 20px !important;
		padding-inline-start: 20px !important;
		box-sizing: border-box !important;
		max-width: 100%;
		align-items: flex-start;
		text-align: right;
	}

	body.login.qc-hebrew-login .qc-brand-logo {
		margin: 0 0 28px;
		margin-inline-start: auto;
		margin-inline-end: 0;
		width: min(220px, 70%);
		max-width: 220px;
		padding-inline-end: 0;
	}

	body.login.qc-hebrew-login .qc-brand-logo__img {
		width: 100%;
		max-width: 220px;
		margin-inline-end: 0;
	}

	body.login.qc-hebrew-login .qc-brand-logo__by {
		font-size: 11px;
		left: 63% !important;
		top: 21%;
	}

	body.login.qc-hebrew-login .qc-brand-copy {
		display: block;
		margin-top: 8px;
		max-width: 28em;
		padding-inline-end: 0;
	}

	body.login.qc-hebrew-login .qc-brand-welcome {
		font-size: 28px;
		margin: 0;
	}

	/* Mock / phone: heading only in the purple band. */
	body.login.qc-hebrew-login .qc-brand-body {
		display: none;
	}

	/* Keep check-email address visible on the purple band (body copy stays hidden). */
	body.login.qc-hebrew-login .qc-brand-email {
		display: block;
		margin-top: 10px;
		font-size: 16px;
		text-align: center;
	}

	/* Crown peeks from the physical bottom-right of the purple band — not mid, not left. */
	body.login.qc-hebrew-login .qc-brand-watermark {
		display: block;
		left: auto;
		right: 0;
		bottom: 0;
		width: min(78%, 560px);
		max-width: 100%;
		height: 92%;
		overflow: hidden;
	}

	body.login.qc-hebrew-login .qc-brand-watermark__img {
		position: absolute;
		right: 0;
		bottom: 0;
		left: auto;
		display: block;
		width: 100%;
		height: 100%;
		max-width: none;
		max-height: none;
		margin: 0;
		object-fit: contain;
		object-position: right bottom;
	}

	/* Footer sits on the white card at the bottom of the screen. */
	body.login.qc-hebrew-login .qc-brand-footer {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 10px;
		z-index: 5;
		justify-content: center;
		text-align: center;
		color: var(--qc-color-navy);
		padding: 0 16px;
		margin: 0;
		font-size: 11px;
		gap: 6px;
		margin-bottom: 10px;
	}

	body.login.qc-hebrew-login .qc-brand-footer a,
	body.login.qc-hebrew-login .qc-brand-footer span,
	body.login.qc-hebrew-login .qc-brand-footer__sep {
		color: var(--qc-color-navy);
	}

	/* White card overlaps the purple band.
	   No fixed view-height. flex:1 fills leftover shell when short;
	   min-height:auto so tall content grows the page (not a near-empty card scrollport). */
	body.login.qc-hebrew-login #login,
	body.login.qc-hebrew-login.login-split-page #login,
	body.login.qc-hebrew-login.bb-login #login {
		order: 2;
		flex: 1 1 auto;
		width: 100% !important;
		max-width: none !important;
		margin: -36px 0 0 !important;
		padding: 40px 32px 72px !important;
		background: var(--qc-color-white);
		border-radius: 32px 32px 0 0;
		z-index: 3;
		height: auto !important;
		min-height: auto !important; /* was 0 — that + overflow:auto felt locked on phone */
		max-height: none;
		overflow: visible; /* let the page scroll, not a trapped card scroller */
		/* Stacked login + lostpassword: center the form cluster in the white card. */
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		box-shadow: 0 -8px 24px rgba(16, 8, 40, 0.08);
	}

	/* Help lives on the purple header (JS parks it in #login). */
	body.login.qc-hebrew-login .qc-login-help {
		position: fixed;
		top: 19px;
		left: 16px;
		right: auto;
		color: var(--qc-color-white);
		font-size: 13px;
		z-index: 6;
	}

	body.login.qc-hebrew-login .qc-login-help a {
		color: var(--qc-color-white);
		font-weight: 700;
	}

	/* Form card: subtitle only — התחברות stays on the wide desktop split. */
	body.login.qc-hebrew-login .qc-login-heading h2,
	body.login.qc-hebrew-login .login-heading h2,
	body.login.qc-hebrew-login #login .login-heading h2 {
		display: none !important;
	}

	body.login.qc-hebrew-login.login-action-lostpassword .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-lostpassword .login-heading h2,
	body.login.qc-hebrew-login.login-action-lostpassword #login .login-heading h2,
	body.login.qc-hebrew-login.login-action-checkemail .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-checkemail .login-heading h2,
	body.login.qc-hebrew-login.login-action-checkemail #login .login-heading h2,
	body.login.qc-hebrew-login.login-action-rp .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-rp .login-heading h2,
	body.login.qc-hebrew-login.login-action-rp #login .login-heading h2,
	body.login.qc-hebrew-login.login-action-resetpass .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-resetpass .login-heading h2,
	body.login.qc-hebrew-login.login-action-resetpass #login .login-heading h2 {
		display: block !important;
		font-size: 32px;
	}

	body.login.qc-hebrew-login .qc-progress,
	body.login.qc-hebrew-login .qc-back-to-login,
	body.login.qc-hebrew-login .qc-check-email {
		max-width: 420px !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		align-self: center;
		box-sizing: border-box;
	}

	body.login.qc-hebrew-login .qc-login-heading,
	body.login.qc-hebrew-login .login-heading,
	body.login.qc-hebrew-login #login .login-heading {
		align-items: flex-start !important;
		text-align: right !important;
		max-width: 420px;
		width: 100%;
		margin-left: auto !important;
		margin-right: auto !important;
		margin-bottom: 20px !important;
	}

	body.login.qc-hebrew-login .qc-login-subtitle,
	body.login.qc-hebrew-login .login-heading .qc-login-subtitle,
	body.login.qc-hebrew-login #login .login-heading p {
		text-align: right !important;
	}

	/* Check-email: RTL right edge inside the centered column (not panel-edge pin). */
	body.login.qc-hebrew-login .qc-check-email,
	body.login.qc-hebrew-login #login .qc-check-email {
		text-align: right !important;
		align-items: flex-start !important;
	}

	body.login.qc-hebrew-login #login .qc-check-email .qc-login-heading,
	body.login.qc-hebrew-login #login .qc-check-email .login-heading,
	body.login.qc-hebrew-login #login .qc-check-email__heading h2,
	body.login.qc-hebrew-login.login-action-checkemail #login .login-heading,
	body.login.qc-hebrew-login.login-action-checkemail #login .login-heading h2 {
		text-align: right !important;
		align-items: flex-start !important;
	}

	body.login.qc-hebrew-login #login .qc-check-email .qc-login-subtitle,
	body.login.qc-hebrew-login #login .qc-check-email .login-heading p,
	body.login.qc-hebrew-login #login .qc-check-email__note,
	body.login.qc-hebrew-login #login .qc-check-email__address,
	body.login.qc-hebrew-login.login-action-checkemail #login .login-heading p {
		text-align: right !important;
	}

	body.login.qc-hebrew-login #login .qc-check-email__address,
	body.login.qc-hebrew-login .qc-check-email__address {
		display: block !important;
		width: 100% !important;
		background: transparent !important;
		padding: 0 !important;
		border-radius: 0 !important;
		text-align: right !important;
		font-weight: 700 !important;
	}

	body.login.qc-hebrew-login #login .qc-check-email__actions,
	body.login.qc-hebrew-login .qc-check-email__actions {
		justify-content: flex-start !important;
		text-align: right !important;
	}

	body.login.qc-hebrew-login .qc-check-email__icon {
		justify-content: flex-start !important;
	}

	body.login.qc-hebrew-login #loginform,
	body.login.qc-hebrew-login #lostpasswordform,
	body.login.qc-hebrew-login #resetpassform,
	body.login.qc-hebrew-login .qc-login-options,
	body.login.qc-hebrew-login #wp-submit,
	body.login.qc-hebrew-login .qc-login-invite,
	body.login.qc-hebrew-login #login_error,
	body.login.qc-hebrew-login .message {
		max-width: 420px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
	}

	body.login.qc-hebrew-login #loginform .input,
	body.login.qc-hebrew-login #lostpasswordform .input,
	body.login.qc-hebrew-login input[type="text"],
	body.login.qc-hebrew-login input[type="password"],
	body.login.qc-hebrew-login input[type="email"] {
		max-width: 100%;
		box-sizing: border-box;
	}

	body.login.qc-hebrew-login .qc-login-options {
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
	}

	/* Soft error box stays full form width on stacked layouts too. */
	body.login.qc-hebrew-login #loginform #login_error,
	body.login.qc-hebrew-login #login_error,
	body.login.qc-hebrew-login .notice.notice-error {
		max-width: 420px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 16px;
		background: var(--qc-color-coral-subtle) !important;
		color: var(--qc-color-coral-dark) !important;
		border: 0 !important;
		/* Keep equal side padding so centered copy stays true; ! is absolute */
		padding: 14px 40px;
		font-size: 14px;
		text-align: center !important;
		overflow: visible;
	}
}

/* Phone: same card pattern, tighter band so 390 stays compact. */
@media (max-width: 480px) {
	body.login.qc-hebrew-login .qc-brand-panel {
		/* Extra top room under fixed “צריכה עזרה?” so the lockup sits lower. */
		padding: 80px 20px 56px;
		padding-right: 20px !important;
		padding-inline-start: 20px !important;
		box-sizing: border-box !important;
	}

	body.login.qc-hebrew-login .qc-brand-panel__inner {
		padding-right: 20px !important;
		padding-inline-start: 20px !important;
		box-sizing: border-box !important;
	}

	body.login.qc-hebrew-login .qc-brand-logo {
		width: min(168px, 58%);
		max-width: 168px;
	}

	body.login.qc-hebrew-login .qc-brand-logo__img {
		max-width: 168px;
	}

	body.login.qc-hebrew-login .qc-brand-logo__by {
		font-size: 10px;
		top: 20%;
	}

	body.login.qc-hebrew-login .qc-brand-welcome {
		font-size: 26px;
	}

	body.login.qc-hebrew-login #login,
	body.login.qc-hebrew-login.login-split-page #login,
	body.login.qc-hebrew-login.bb-login #login {
		padding: 40px 20px 72px !important;
		/* Phone: same as tablet / lostpassword — center when the card has spare height. */
		justify-content: center;
		align-items: center;
	}
}

/*
 * Short phones (~390×844 and shorter): trim purple-band + card padding so short
 * content fits one screen without a huge empty scroll. Page/card still scroll
 * when content or the keyboard needs it. Desktop 70/30 split untouched.
 */
@media (max-width: 480px) and (max-height: 844px) {
	body.login.qc-hebrew-login .qc-brand-panel {
		min-height: 0 !important;
		padding: 60px 20px 40px;
		padding-right: 20px !important;
		padding-inline-start: 20px !important;
	}

	body.login.qc-hebrew-login .qc-brand-logo {
		margin: 0 0 16px;
	}

	body.login.qc-hebrew-login .qc-brand-welcome {
		font-size: 24px;
	}

	body.login.qc-hebrew-login #login,
	body.login.qc-hebrew-login.login-split-page #login,
	body.login.qc-hebrew-login.bb-login #login {
		padding: 28px 20px 56px !important;
		justify-content: center;
		align-items: center;
	}

	body.login.qc-hebrew-login .qc-login-heading,
	body.login.qc-hebrew-login .login-heading,
	body.login.qc-hebrew-login #login .login-heading {
		margin-bottom: 14px !important;
	}

	body.login.qc-hebrew-login.login-action-lostpassword .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-lostpassword .login-heading h2,
	body.login.qc-hebrew-login.login-action-lostpassword #login .login-heading h2,
	body.login.qc-hebrew-login.login-action-checkemail .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-checkemail .login-heading h2,
	body.login.qc-hebrew-login.login-action-checkemail #login .login-heading h2,
	body.login.qc-hebrew-login.login-action-rp .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-rp .login-heading h2,
	body.login.qc-hebrew-login.login-action-rp #login .login-heading h2,
	body.login.qc-hebrew-login.login-action-resetpass .qc-login-heading h2,
	body.login.qc-hebrew-login.login-action-resetpass .login-heading h2,
	body.login.qc-hebrew-login.login-action-resetpass #login .login-heading h2 {
		font-size: 28px;
	}

	body.login.qc-hebrew-login .qc-check-email__icon-circle {
		width: 64px;
		height: 64px;
	}

	body.login.qc-hebrew-login .qc-progress {
		margin-bottom: 18px;
	}

	body.login.qc-hebrew-login #login form p,
	body.login.qc-hebrew-login #login form .user-pass-wrap {
		margin-bottom: 16px;
	}

	body.login.qc-hebrew-login .qc-login-options {
		margin: 0 0 16px !important;
	}

	body.login.qc-hebrew-login #wp-submit,
	body.login.qc-hebrew-login .submit .button-primary {
		margin-bottom: 12px !important;
		min-height: 46px;
	}

	body.login.qc-hebrew-login .qc-brand-footer {
		bottom: 6px;
		margin-bottom: 6px;
	}
}
