/* Externalise depuis la modification #56, bloc inline #68 — position et ordre de cascade inchanges */

/* G6M_LOGIN_DROPDOWN_PREMIUM_V346
   Guest header "Connexion" menu — Rockstar / GTA6Modding AAA panel.
   Scoped ONLY to menus that contain the login form (.g6m-login-hero).
   Does NOT alter alerts / conversations / account / search menus.
   Palette = same tokens as g6m-login-premium (no new colors).
*/

html body .menu.menu--medium:has(.g6m-login-hero),
html body .menu.g6m-login-dropdown {
	--g6m-lp-bg: #0c0914;
	--g6m-lp-card: rgba(12, 9, 20, 0.92);
	--g6m-lp-pink: #ff0b8b;
	--g6m-lp-violet: #8b3dff;
	--g6m-lp-violet-bright: #b47aff;
	--g6m-lp-cyan: #00d7ff;
	--g6m-lp-ink: #ffffff;
	--g6m-lp-muted: #c4c0d4;
	--g6m-lp-muted-soft: rgba(196, 192, 212, 0.72);
	--g6m-lp-input: rgba(8, 6, 14, 0.92);
	--g6m-lp-ease: 180ms cubic-bezier(0.22, 1, 0.36, 1);
	--g6m-lp-radius: 16px;
	--g6m-lp-field: 12px;
	--g6m-lp-field-h: 52px;
	--g6m-lp-btn-h: 52px;
	--g6m-lp-btn-r: 14px;
	--g6m-lp-grad: linear-gradient(115deg, #ff0b8b 0%, #8b3dff 48%, #00d7ff 100%);
	--g6m-lp-grad-btn: linear-gradient(115deg, #ff0b8b 0%, #c2189a 35%, #8b3dff 68%, #5ec8ff 100%);
	--g6m-lp-grad-border: linear-gradient(135deg, rgba(255, 11, 139, 0.9), rgba(139, 61, 255, 0.75), rgba(0, 215, 255, 0.9));
	--g6m-lp-glow: 0 0 0 3px rgba(139, 61, 255, 0.28), 0 0 22px rgba(255, 11, 139, 0.22), 0 0 16px rgba(0, 215, 255, 0.14);
	--g6m-ldd-w: 460px;
	--g6m-ldd-pad-x: 1.45rem;
	--g6m-ldd-pad-y: 1.35rem;
}

@keyframes g6mLoginDdFadeIn {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* —— Shell —— */
html body .menu.menu--medium.is-active:has(.g6m-login-hero),
html body .menu.g6m-login-dropdown.is-active {
	box-sizing: border-box !important;
	width: min(var(--g6m-ldd-w), calc(100vw - 16px)) !important;
	max-width: calc(100vw - 16px) !important;
	min-width: 0 !important;
	height: auto !important;
	max-height: min(88vh, 860px) !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain !important;
	border-radius: var(--g6m-lp-radius) !important;
	border: 1px solid transparent !important;
	background:
		linear-gradient(var(--g6m-lp-card), var(--g6m-lp-card)) padding-box,
		var(--g6m-lp-grad-border) border-box !important;
	background-color: var(--g6m-lp-bg) !important;
	box-shadow:
		0 18px 48px rgba(0, 0, 0, 0.48),
		0 0 28px rgba(139, 61, 255, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
	backdrop-filter: blur(16px) saturate(1.1) !important;
	-webkit-backdrop-filter: blur(16px) saturate(1.1) !important;
	z-index: 10060 !important;
	font-size: 0.9375rem !important;
	line-height: 1.45 !important;
	color: var(--g6m-lp-ink) !important;
	scrollbar-width: thin !important;
}

/* Inner fade (avoids fighting XF menu position transform) */
html body .menu.menu--medium.is-active:has(.g6m-login-hero) > .g6m-login-hero,
html body .menu.menu--medium.is-active:has(.g6m-login-hero) > .blocks,
html body .menu.g6m-login-dropdown.is-active > .g6m-login-hero,
html body .menu.g6m-login-dropdown.is-active > .blocks {
	animation: g6mLoginDdFadeIn var(--g6m-lp-ease) both !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) > .menu-arrow,
html body .menu.g6m-login-dropdown > .menu-arrow {
	display: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .menu-content,
html body .menu.g6m-login-dropdown .menu-content {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	max-height: none !important;
	overflow: visible !important;
	padding: 0 !important;
	font-size: inherit !important;
}

/* —— Hero —— */
html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-hero,
html body .menu.g6m-login-dropdown .g6m-login-hero {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	text-align: left !important;
	gap: 0.35rem !important;
	margin: 0 !important;
	padding: var(--g6m-ldd-pad-y) var(--g6m-ldd-pad-x) 1.05rem !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
	background: linear-gradient(180deg, rgba(139, 61, 255, 0.1) 0%, transparent 100%) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-hero__eyebrow,
html body .menu.g6m-login-dropdown .g6m-login-hero__eyebrow {
	display: block !important;
	margin: 0 !important;
	font-family: Rajdhani, Orbitron, "Segoe UI", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.28em !important;
	text-transform: uppercase !important;
	color: var(--g6m-lp-pink) !important;
	text-shadow: 0 0 14px rgba(255, 11, 139, 0.4) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-hero__title,
html body .menu.g6m-login-dropdown .g6m-login-hero__title {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: Rajdhani, Orbitron, "Segoe UI", sans-serif !important;
	font-size: clamp(1.15rem, 2.2vw, 1.35rem) !important;
	font-weight: 800 !important;
	letter-spacing: 0.01em !important;
	line-height: 1.28 !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-hero__brand,
html body .menu.g6m-login-dropdown .g6m-login-hero__brand {
	display: inline !important;
	background: var(--g6m-lp-grad) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	filter: drop-shadow(0 0 10px rgba(255, 11, 139, 0.28)) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-lead,
html body .menu.g6m-login-dropdown .g6m-login-lead {
	display: block !important;
	margin: 0.35rem 0 0 !important;
	padding: 0 !important;
	max-width: none !important;
	font-size: 0.84rem !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	color: var(--g6m-lp-muted-soft) !important;
}

/* —— Blocks / form shell —— */
html body .menu.menu--medium:has(.g6m-login-hero) > .blocks,
html body .menu.g6m-login-dropdown > .blocks {
	display: block !important;
	margin: 0 !important;
	padding: 1.15rem var(--g6m-ldd-pad-x) var(--g6m-ldd-pad-y) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .blocks > .block,
html body .menu.g6m-login-dropdown .blocks > .block,
html body .menu.menu--medium:has(.g6m-login-hero) form.block,
html body .menu.g6m-login-dropdown form.block {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .block-container,
html body .menu.g6m-login-dropdown .block-container {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	overflow: visible !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .block-body,
html body .menu.g6m-login-dropdown .block-body {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

/* Kill nested card hover glow from full-page rules bleeding if ever present */
html body .menu.menu--medium:has(.g6m-login-hero) .block-container:hover,
html body .menu.g6m-login-dropdown .block-container:hover {
	box-shadow: none !important;
	transform: none !important;
}

/* —— Form rows: stacked, breathing —— */
html body .menu.menu--medium:has(.g6m-login-hero) .formRow,
html body .menu.g6m-login-dropdown .formRow {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0.45rem !important;
	margin: 0 0 1rem !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formRow > dt,
html body .menu.menu--medium:has(.g6m-login-hero) .formRow > dd,
html body .menu.g6m-login-dropdown .formRow > dt,
html body .menu.g6m-login-dropdown .formRow > dd {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding: 0 !important;
	margin: 0 !important;
	text-align: left !important;
	background: transparent !important;
	border: 0 !important;
	box-sizing: border-box !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formRow-label,
html body .menu.g6m-login-dropdown .formRow-label {
	color: #ff6bc5 !important;
	font-family: Rajdhani, "Segoe UI", sans-serif !important;
	font-size: 0.7rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
}

/* Hide captcha "Vérification" label */
html body .menu.menu--medium:has(.g6m-login-hero) .formRow[context="xf_login"] > dt,
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has([data-xf-init="turnstile"]) > dt,
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has(.cf-turnstile) > dt,
html body .menu.g6m-login-dropdown .formRow[context="xf_login"] > dt,
html body .menu.g6m-login-dropdown .formRow:has([data-xf-init="turnstile"]) > dt,
html body .menu.g6m-login-dropdown .formRow:has(.cf-turnstile) > dt {
	display: none !important;
}

/* —— Inputs —— */
html body .menu.menu--medium:has(.g6m-login-hero) .input,
html body .menu.menu--medium:has(.g6m-login-hero) input.input,
html body .menu.g6m-login-dropdown .input,
html body .menu.g6m-login-dropdown input.input {
	width: 100% !important;
	min-height: var(--g6m-lp-field-h) !important;
	height: var(--g6m-lp-field-h) !important;
	padding: 0 1rem !important;
	border-radius: var(--g6m-lp-field) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	background: var(--g6m-lp-input) !important;
	color: var(--g6m-lp-ink) !important;
	font-size: 0.95rem !important;
	line-height: 1.2 !important;
	box-sizing: border-box !important;
	transition:
		border-color var(--g6m-lp-ease),
		box-shadow var(--g6m-lp-ease),
		background var(--g6m-lp-ease) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .input:hover,
html body .menu.g6m-login-dropdown .input:hover {
	border-color: rgba(139, 61, 255, 0.5) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .input:focus,
html body .menu.g6m-login-dropdown .input:focus {
	outline: none !important;
	border-color: var(--g6m-lp-cyan) !important;
	box-shadow: var(--g6m-lp-glow) !important;
}

/* Password group */
html body .menu.menu--medium:has(.g6m-login-hero) .inputGroup.inputGroup--joined,
html body .menu.g6m-login-dropdown .inputGroup.inputGroup--joined {
	display: flex !important;
	align-items: stretch !important;
	width: 100% !important;
	gap: 0 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .inputGroup .input,
html body .menu.g6m-login-dropdown .inputGroup .input {
	flex: 1 1 auto !important;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .inputGroup-text,
html body .menu.g6m-login-dropdown .inputGroup-text {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 var(--g6m-lp-field-h) !important;
	width: var(--g6m-lp-field-h) !important;
	min-width: var(--g6m-lp-field-h) !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-left: 0 !important;
	border-radius: 0 var(--g6m-lp-field) var(--g6m-lp-field) 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	box-sizing: border-box !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .inputGroup:focus-within .input,
html body .menu.menu--medium:has(.g6m-login-hero) .inputGroup:focus-within .inputGroup-text,
html body .menu.g6m-login-dropdown .inputGroup:focus-within .input,
html body .menu.g6m-login-dropdown .inputGroup:focus-within .inputGroup-text {
	border-color: var(--g6m-lp-cyan) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow .iconic-label,
html body .menu.g6m-login-dropdown .iconic--hideShow .iconic-label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow,
html body .menu.g6m-login-dropdown .iconic--hideShow {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 2rem !important;
	height: 2rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: var(--g6m-lp-violet-bright) !important;
	-webkit-text-fill-color: var(--g6m-lp-violet-bright) !important;
	cursor: pointer !important;
	position: relative !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > input,
html body .menu.g6m-login-dropdown .iconic--hideShow > input {
	position: absolute !important;
	opacity: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	cursor: pointer !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > i,
html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > input + i,
html body .menu.g6m-login-dropdown .iconic--hideShow > i,
html body .menu.g6m-login-dropdown .iconic--hideShow > input + i {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 1.15rem !important;
	height: 1.15rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	position: static !important;
	transform: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > i::before,
html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > i::after,
html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > input + i::before,
html body .menu.menu--medium:has(.g6m-login-hero) .iconic--hideShow > input + i::after,
html body .menu.g6m-login-dropdown .iconic--hideShow > i::before,
html body .menu.g6m-login-dropdown .iconic--hideShow > i::after,
html body .menu.g6m-login-dropdown .iconic--hideShow > input + i::before,
html body .menu.g6m-login-dropdown .iconic--hideShow > input + i::after {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Hide forgot under password when meta row exists; keep fallback */
html body .menu.menu--medium:has(.g6m-login-hero) .formRow--input a[href*="lost-password"],
html body .menu.g6m-login-dropdown .formRow--input a[href*="lost-password"] {
	display: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero):not(:has(.g6m-login-dd__meta)) .formRow--input a[href*="lost-password"],
html body .menu.g6m-login-dropdown:not(:has(.g6m-login-dd__meta)) .formRow--input a[href*="lost-password"] {
	display: inline-block !important;
	margin-top: 0.55rem !important;
	color: var(--g6m-lp-violet-bright) !important;
	font-size: 0.82rem !important;
	text-decoration: none !important;
}

/* —— Turnstile —— */
html body .menu.menu--medium:has(.g6m-login-hero) .formRow[context="xf_login"],
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has([data-xf-init="turnstile"]),
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has(.cf-turnstile),
html body .menu.g6m-login-dropdown .formRow[context="xf_login"],
html body .menu.g6m-login-dropdown .formRow:has([data-xf-init="turnstile"]),
html body .menu.g6m-login-dropdown .formRow:has(.cf-turnstile) {
	margin: 0.15rem 0 1rem !important;
	padding: 0.15rem 0 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formRow[context="xf_login"] > dd,
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has([data-xf-init="turnstile"]) > dd,
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has(.cf-turnstile) > dd,
html body .menu.g6m-login-dropdown .formRow[context="xf_login"] > dd,
html body .menu.g6m-login-dropdown .formRow:has([data-xf-init="turnstile"]) > dd,
html body .menu.g6m-login-dropdown .formRow:has(.cf-turnstile) > dd,
html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__captcha,
html body .menu.g6m-login-dropdown .g6m-login-dd__captcha {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 10px 12px !important;
	background: rgba(10, 8, 18, 0.85) !important;
	border: 1px solid rgba(168, 85, 247, 0.35) !important;
	border-radius: 12px !important;
	color-scheme: dark !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) [data-xf-init="turnstile"],
html body .menu.menu--medium:has(.g6m-login-hero) .cf-turnstile,
html body .menu.g6m-login-dropdown [data-xf-init="turnstile"],
html body .menu.g6m-login-dropdown .cf-turnstile {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 68px !important;
	margin: 0 auto !important;
	overflow: hidden !important;
	color-scheme: dark !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 8px !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .cf-turnstile iframe,
html body .menu.g6m-login-dropdown .cf-turnstile iframe {
	max-width: 100% !important;
}

/* —— Meta row: remember + forgot —— */
html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__meta,
html body .menu.g6m-login-dropdown .g6m-login-dd__meta {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 0.75rem !important;
	flex-wrap: wrap !important;
	width: 100% !important;
	margin: 0 0 1.05rem !important;
	padding: 0 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__meta .inputChoices,
html body .menu.g6m-login-dropdown .g6m-login-dd__meta .inputChoices {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has(.inputChoices):not(:has(.g6m-login-dd__meta)),
html body .menu.g6m-login-dropdown .formRow:has(.inputChoices):not(:has(.g6m-login-dd__meta)) {
	margin-bottom: 0.85rem !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__forgot,
html body .menu.g6m-login-dropdown .g6m-login-dd__forgot,
html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__meta a[href*="lost-password"],
html body .menu.g6m-login-dropdown .g6m-login-dd__meta a[href*="lost-password"] {
	display: inline-block !important;
	margin: 0 !important;
	color: var(--g6m-lp-violet-bright) !important;
	font-size: 0.82rem !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	transition: color var(--g6m-lp-ease), text-shadow var(--g6m-lp-ease) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__meta a[href*="lost-password"]:hover,
html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__meta a[href*="lost-password"]:focus-visible,
html body .menu.g6m-login-dropdown .g6m-login-dd__meta a[href*="lost-password"]:hover,
html body .menu.g6m-login-dropdown .g6m-login-dd__meta a[href*="lost-password"]:focus-visible {
	color: var(--g6m-lp-cyan) !important;
	text-shadow: 0 0 12px rgba(0, 215, 255, 0.35) !important;
	outline: none !important;
}

/* Remember checkbox — theme match */
html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow),
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.55rem !important;
	color: var(--g6m-lp-muted) !important;
	font-size: 0.88rem !important;
	cursor: pointer !important;
	position: relative !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input {
	position: absolute !important;
	opacity: 0 !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	pointer-events: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input + i,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input + i {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 1.05rem !important;
	height: 1.05rem !important;
	min-width: 1.05rem !important;
	border: 1.5px solid rgba(255, 255, 255, 0.28) !important;
	border-radius: 4px !important;
	background: rgba(8, 6, 14, 0.9) !important;
	box-sizing: border-box !important;
	flex: 0 0 auto !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input + i::before,
html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input + i::after,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input + i::before,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input + i::after {
	content: none !important;
	display: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input:checked + i,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input:checked + i {
	border-color: var(--g6m-lp-pink) !important;
	background: rgba(255, 11, 139, 0.28) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input:checked + i::after,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input:checked + i::after {
	content: "" !important;
	display: block !important;
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	width: 8px !important;
	height: 4px !important;
	border: solid #fff !important;
	border-width: 0 0 2px 2px !important;
	transform: translate(-50%, -62%) rotate(-45deg) !important;
	background: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) form.block label.iconic:not(.iconic--hideShow) > input:focus-visible + i,
html body .menu.g6m-login-dropdown form.block label.iconic:not(.iconic--hideShow) > input:focus-visible + i {
	outline: 2px solid var(--g6m-lp-violet-bright) !important;
	outline-offset: 2px !important;
}

/* Hide empty remember formRow chrome once meta exists */
html body .menu.menu--medium:has(.g6m-login-hero) .formRow:has(> dd > .g6m-login-dd__meta),
html body .menu.g6m-login-dropdown .formRow:has(> dd > .g6m-login-dd__meta) {
	margin-bottom: 0 !important;
}

/* —— Primary CTA —— */
html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow,
html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow-main,
html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow-controls,
html body .menu.g6m-login-dropdown .formSubmitRow,
html body .menu.g6m-login-dropdown .formSubmitRow-main,
html body .menu.g6m-login-dropdown .formSubmitRow-controls {
	display: block !important;
	width: 100% !important;
	margin: 0.15rem 0 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	position: static !important;
	height: auto !important;
	overflow: visible !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow-bar,
html body .menu.g6m-login-dropdown .formSubmitRow-bar,
html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow > dt,
html body .menu.g6m-login-dropdown .formSubmitRow > dt {
	display: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary,
html body .menu.menu--medium:has(.g6m-login-hero) .button.button--primary.button--icon--login,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary,
html body .menu.g6m-login-dropdown .button.button--primary.button--icon--login {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.55rem !important;
	width: 100% !important;
	min-height: var(--g6m-lp-btn-h) !important;
	height: var(--g6m-lp-btn-h) !important;
	max-height: var(--g6m-lp-btn-h) !important;
	margin: 0 !important;
	padding: 0 1.1rem !important;
	border: 0 !important;
	border-radius: var(--g6m-lp-btn-r) !important;
	box-sizing: border-box !important;
	font-family: Rajdhani, "Segoe UI", sans-serif !important;
	font-size: 1.02rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	text-align: center !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: var(--g6m-lp-grad-btn) !important;
	background-size: 140% 140% !important;
	background-position: 0% 50% !important;
	box-shadow:
		0 12px 28px rgba(255, 11, 139, 0.32),
		0 0 20px rgba(139, 61, 255, 0.2) !important;
	cursor: pointer !important;
	transition:
		transform var(--g6m-lp-ease),
		box-shadow var(--g6m-lp-ease),
		filter var(--g6m-lp-ease),
		background-position var(--g6m-lp-ease) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary .fa--xf,
html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary .fa--xf svg,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary .fa--xf,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary .fa--xf svg {
	display: inline-block !important;
	width: 1.05rem !important;
	height: 1.05rem !important;
	min-width: 1.05rem !important;
	min-height: 1.05rem !important;
	max-width: 1.05rem !important;
	max-height: 1.05rem !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
	overflow: hidden !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary .button-text,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary .button-text {
	display: inline-block !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: none !important;
	text-align: center !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary:hover,
html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary:focus-visible,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary:hover,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary:focus-visible {
	transform: translateY(-2px) !important;
	filter: brightness(1.08) saturate(1.06) !important;
	background-position: 100% 50% !important;
	box-shadow:
		0 16px 36px rgba(255, 11, 139, 0.4),
		0 0 28px rgba(0, 215, 255, 0.2),
		0 0 24px rgba(139, 61, 255, 0.3) !important;
	outline: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary:focus-visible,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary:focus-visible {
	box-shadow:
		0 0 0 3px rgba(180, 122, 255, 0.55),
		0 16px 36px rgba(255, 11, 139, 0.32) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary:active,
html body .menu.g6m-login-dropdown .formSubmitRow .button--primary:active {
	transform: translateY(0) scale(0.985) !important;
}

/* —— Register CTA —— */
html body .menu.menu--medium:has(.g6m-login-hero) .block-outer.block-outer--after,
html body .menu.g6m-login-dropdown .block-outer.block-outer--after {
	margin: 1.1rem 0 0.25rem !important;
	padding: 0.85rem 0 0 !important;
	border: 0 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
	background: transparent !important;
	text-align: center !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .block-outer-middle,
html body .menu.g6m-login-dropdown .block-outer-middle {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 0.35rem !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--g6m-lp-muted-soft) !important;
	font-size: 0.86rem !important;
	line-height: 1.4 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .block-outer-middle > .button,
html body .menu.menu--medium:has(.g6m-login-hero) .block-outer-middle a.button,
html body .menu.g6m-login-dropdown .block-outer-middle > .button,
html body .menu.g6m-login-dropdown .block-outer-middle a.button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0.2rem 0.4rem !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--g6m-lp-cyan) !important;
	-webkit-text-fill-color: var(--g6m-lp-cyan) !important;
	font-family: Rajdhani, sans-serif !important;
	font-size: 0.92rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	transition: color var(--g6m-lp-ease), text-shadow var(--g6m-lp-ease), transform var(--g6m-lp-ease) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .block-outer-middle > .button:hover,
html body .menu.menu--medium:has(.g6m-login-hero) .block-outer-middle a.button:hover,
html body .menu.menu--medium:has(.g6m-login-hero) .block-outer-middle > .button:focus-visible,
html body .menu.g6m-login-dropdown .block-outer-middle > .button:hover,
html body .menu.g6m-login-dropdown .block-outer-middle a.button:hover,
html body .menu.g6m-login-dropdown .block-outer-middle > .button:focus-visible {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	text-shadow: 0 0 14px rgba(0, 215, 255, 0.5) !important;
	transform: translateY(-1px) !important;
	outline: none !important;
}

/* —— OU separator —— */
html body .menu.menu--medium:has(.g6m-login-hero) .blocks-textJoiner,
html body .menu.g6m-login-dropdown .blocks-textJoiner {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.85rem !important;
	margin: 1.15rem 0 1rem !important;
	padding: 0 !important;
	width: 100% !important;
	font-size: 0.68rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	color: var(--g6m-lp-muted) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .blocks-textJoiner > span,
html body .menu.g6m-login-dropdown .blocks-textJoiner > span {
	flex: 1 1 auto !important;
	height: 1px !important;
	min-width: 1.5rem !important;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(255, 11, 139, 0.4) 22%,
		rgba(139, 61, 255, 0.65) 50%,
		rgba(0, 215, 255, 0.4) 78%,
		transparent 100%
	) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .blocks-textJoiner > em,
html body .menu.g6m-login-dropdown .blocks-textJoiner > em {
	flex: 0 0 auto !important;
	font-style: normal !important;
	padding: 0.35rem 0.55rem !important;
	border-radius: 999px !important;
	border: 1px solid rgba(139, 61, 255, 0.45) !important;
	background: rgba(16, 10, 28, 0.95) !important;
	box-shadow: 0 0 12px rgba(139, 61, 255, 0.25) !important;
}

/* —— Connexion rapide / social —— */
html body .menu.menu--medium:has(.g6m-login-hero) .blocks > .block:not(form) .formRow > dt,
html body .menu.g6m-login-dropdown .blocks > .block:not(form) .formRow > dt {
	display: block !important;
	width: 100% !important;
	margin: 0 0 0.55rem !important;
	text-align: center !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .blocks > .block:not(form) .formRow-label,
html body .menu.g6m-login-dropdown .blocks > .block:not(form) .formRow-label {
	font-size: 0 !important;
	line-height: 0 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .blocks > .block:not(form) .formRow-label::before,
html body .menu.g6m-login-dropdown .blocks > .block:not(form) .formRow-label::before {
	content: "Connexion rapide" !important;
	display: block !important;
	font-family: Rajdhani, sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
	color: var(--g6m-lp-cyan) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-passkey-desc,
html body .menu.g6m-login-dropdown .g6m-login-passkey-desc {
	display: none !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .listHeap,
html body .menu.g6m-login-dropdown .listHeap {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 0.65rem !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	width: 100% !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .listHeap > li,
html body .menu.g6m-login-dropdown .listHeap > li {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	min-width: 0 !important;
	width: 100% !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .listHeap > li > form,
html body .menu.g6m-login-dropdown .listHeap > li > form {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .button--provider,
html body .menu.menu--medium:has(.g6m-login-hero) .js-webauthnStart,
html body .menu.g6m-login-dropdown .button--provider,
html body .menu.g6m-login-dropdown .js-webauthnStart {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.4rem !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	min-height: 46px !important;
	height: 46px !important;
	padding: 0 0.7rem !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 215, 255, 0.42) !important;
	background: rgba(0, 215, 255, 0.06) !important;
	color: #fff !important;
	font-family: Rajdhani, sans-serif !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	transition:
		background var(--g6m-lp-ease),
		transform var(--g6m-lp-ease),
		box-shadow var(--g6m-lp-ease),
		border-color var(--g6m-lp-ease) !important;
}

html body .menu.menu--medium:has(.g6m-login-hero) .button--provider:hover,
html body .menu.menu--medium:has(.g6m-login-hero) .js-webauthnStart:hover,
html body .menu.menu--medium:has(.g6m-login-hero) .button--provider:focus-visible,
html body .menu.g6m-login-dropdown .button--provider:hover,
html body .menu.g6m-login-dropdown .js-webauthnStart:hover,
html body .menu.g6m-login-dropdown .button--provider:focus-visible {
	background: rgba(0, 215, 255, 0.14) !important;
	border-color: var(--g6m-lp-cyan) !important;
	box-shadow: 0 0 16px rgba(0, 215, 255, 0.22) !important;
	transform: translateY(-2px) !important;
	outline: none !important;
}

/* Single social button → full width */
html body .menu.menu--medium:has(.g6m-login-hero) .listHeap:has(> li:only-child),
html body .menu.g6m-login-dropdown .listHeap:has(> li:only-child) {
	grid-template-columns: 1fr !important;
}

/* —— Responsive —— */
@media (max-width: 520px) {
	html body .menu.menu--medium.is-active:has(.g6m-login-hero),
	html body .menu.g6m-login-dropdown.is-active {
		width: min(460px, calc(100vw - 12px)) !important;
		max-height: min(90vh, 860px) !important;
		--g6m-ldd-pad-x: 1.1rem;
		--g6m-ldd-pad-y: 1.1rem;
	}

	html body .menu.menu--medium:has(.g6m-login-hero) .listHeap,
	html body .menu.g6m-login-dropdown .listHeap {
		grid-template-columns: 1fr !important;
	}

	html body .menu.menu--medium:has(.g6m-login-hero) .g6m-login-dd__meta,
	html body .menu.g6m-login-dropdown .g6m-login-dd__meta {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

@media (max-width: 380px) {
	html body .menu.menu--medium.is-active:has(.g6m-login-hero),
	html body .menu.g6m-login-dropdown.is-active {
		--g6m-lp-field-h: 48px;
		--g6m-lp-btn-h: 48px;
	}
}

/* Prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
	html body .menu.menu--medium.is-active:has(.g6m-login-hero) > .g6m-login-hero,
	html body .menu.menu--medium.is-active:has(.g6m-login-hero) > .blocks,
	html body .menu.g6m-login-dropdown.is-active > .g6m-login-hero,
	html body .menu.g6m-login-dropdown.is-active > .blocks {
		animation: none !important;
	}

	html body .menu.menu--medium:has(.g6m-login-hero) .formSubmitRow .button--primary:hover,
	html body .menu.menu--medium:has(.g6m-login-hero) .button--provider:hover,
	html body .menu.g6m-login-dropdown .formSubmitRow .button--primary:hover,
	html body .menu.g6m-login-dropdown .button--provider:hover {
		transform: none !important;
	}
}

/* END G6M_LOGIN_DROPDOWN_PREMIUM_V346 */

