/**
 * EK Content Gate — engagement overlay (not content protection).
 * BEM: .ekfa-gate*
 */

.ekfa-gate {
	--ekfa-gate-bg: rgba(15, 23, 42, 0.92);
	--ekfa-gate-bg-hover: var(--ekfa-gate-bg);
	--ekfa-gate-blur: 0px;
	--ekfa-gate-pad: 1.5rem;
	--ekfa-gate-form-max: 28rem;
	--ekfa-gate-z: 20;
	--ekfa-gate-align: center;
	position: relative;
}

.ekfa-gate--wrap {
	display: block;
}

.ekfa-gate__content {
	position: relative;
	z-index: 0;
}

.ekfa-gate__overlay {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--ekfa-gate-pad);
	text-align: var(--ekfa-gate-align);
	background: var(--ekfa-gate-bg);
	z-index: var(--ekfa-gate-z);
	transition: opacity 0.35s ease, transform 0.35s ease;
}

.ekfa-gate__overlay:hover {
	background: var(--ekfa-gate-bg-hover);
}

.ekfa-gate--wrap > .ekfa-gate__overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.ekfa-gate--selector > .ekfa-gate__overlay {
	position: fixed;
	margin: 0;
}

.ekfa-gate--blur > .ekfa-gate__overlay {
	-webkit-backdrop-filter: blur(var(--ekfa-gate-blur));
	backdrop-filter: blur(var(--ekfa-gate-blur));
}

.ekfa-gate__panel {
	width: 100%;
	max-width: var(--ekfa-gate-form-max);
	margin: 0 auto;
}

.ekfa-gate__heading {
	margin: 0 0 0.5rem;
	font-family: var(--ekfa-gate-heading-font-family, inherit);
	font-weight: var(--ekfa-gate-heading-font-weight, inherit);
	font-style: var(--ekfa-gate-heading-font-style, inherit);
	font-size: var(--ekfa-gate-heading-font-size, inherit);
	letter-spacing: var(--ekfa-gate-heading-letter-spacing, inherit);
	text-transform: var(--ekfa-gate-heading-text-transform, inherit);
	line-height: var(--ekfa-gate-heading-line-height, 1.3);
	color: var(--ekfa-gate-heading-color, #f8fafc);
}

.ekfa-gate__text {
	margin: 0 0 1rem;
	font-family: var(--ekfa-gate-text-font-family, inherit);
	font-weight: var(--ekfa-gate-text-font-weight, inherit);
	font-style: var(--ekfa-gate-text-font-style, inherit);
	font-size: var(--ekfa-gate-text-font-size, inherit);
	letter-spacing: var(--ekfa-gate-text-letter-spacing, inherit);
	text-transform: var(--ekfa-gate-text-text-transform, inherit);
	line-height: var(--ekfa-gate-text-line-height, 1.5);
	color: var(--ekfa-gate-text-color, #e2e8f0);
}

.ekfa-gate__form .fusion-form {
	margin: 0;
}

/* Remembered unlock: hide overlay before paint when early script adds class. */
.ekfa-gate--unlocked > .ekfa-gate__overlay {
	display: none !important;
}

.ekfa-gate.is-revealing > .ekfa-gate__overlay {
	opacity: 0;
	transform: translateY(-0.5rem);
	pointer-events: none;
}

.ekfa-gate.is-revealed > .ekfa-gate__overlay {
	display: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.ekfa-gate__overlay {
		transition: none;
	}

	.ekfa-gate.is-revealing > .ekfa-gate__overlay {
		opacity: 0;
		transform: none;
	}
}

/* Inspect deterrent (scoped; minor deterrent only). */
.ekfa-gate--deter .ekfa-gate__content,
.ekfa-gate--deter .ekfa-gate__content *:not(input):not(textarea):not(select):not([contenteditable]):not([contenteditable="true"]) {
	-webkit-user-select: none !important;
	-moz-user-select: none !important;
	-ms-user-select: none !important;
	user-select: none !important;
}

.ekfa-gate--deter .ekfa-gate__content input,
.ekfa-gate--deter .ekfa-gate__content textarea,
.ekfa-gate--deter .ekfa-gate__content select,
.ekfa-gate--deter .ekfa-gate__content [contenteditable],
.ekfa-gate--deter .ekfa-gate__content [contenteditable="true"] {
	-webkit-user-select: text !important;
	-moz-user-select: text !important;
	-ms-user-select: text !important;
	user-select: text !important;
}

.ekfa-gate__editor-warning {
	margin: 0.5em 0;
	padding: 0.5em 0.75em;
	border-left: 3px solid #dba617;
	background: #fcf9e8;
	color: #1d2327;
	font-size: 13px;
	line-height: 1.4;
}

/* Live / preview: keep overlay readable without trapping the canvas. */
body.fusion-builder-live-preview .ekfa-gate__overlay,
body.fusion-builder-live-preview-only .ekfa-gate__overlay {
	pointer-events: none;
}
