/* Learn With — admission popup (Home page palette: deep green + lime #c8f135) */

/* ---------- Scrollbars: slim, dark green, lime on hover (site-wide, also inside the popup) ---------- */
@supports (-moz-appearance: none) {
	html,
	* {
		scrollbar-width: thin;
		scrollbar-color: #2e5440 #011f01;
	}
}
*::-webkit-scrollbar {
	width: 10px;
	height: 10px;
	background: #011f01;
}
*::-webkit-scrollbar-track {
	background: #011f01;
}
*::-webkit-scrollbar-thumb {
	background-color: #2e5440;
	border: 2px solid #011f01;
	border-radius: 999px;
	min-height: 48px;
}
*::-webkit-scrollbar-thumb:hover,
*::-webkit-scrollbar-thumb:active {
	background-color: #c8f135;
}
*::-webkit-scrollbar-button {
	display: none;
	width: 0;
	height: 0;
}
*::-webkit-scrollbar-corner {
	background: #011f01;
}

/* ---------- Modal ---------- */
.lw-pop {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.22s ease, visibility 0.22s;
}
.lw-pop[hidden] {
	display: none;
}
.lw-pop.is-open {
	opacity: 1;
	visibility: visible;
}
.lw-pop__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(2, 8, 5, 0.78);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}
.lw-pop__dialog {
	position: relative;
	width: 100%;
	max-width: 980px;
	height: min(92vh, 900px);
	height: min(92dvh, 900px);
	background: #011f01;
	border: 1px solid rgba(200, 241, 53, 0.28);
	border-radius: 22px;
	box-shadow: 0 40px 120px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(200, 241, 53, 0.06);
	overflow: hidden;
	transform: translateY(18px) scale(0.985);
	transition: transform 0.28s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.lw-pop.is-open .lw-pop__dialog {
	transform: none;
}
.lw-pop__close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 3;
	width: 40px;
	height: 40px;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 1px solid #2e5440;
	background: rgba(6, 19, 14, 0.9);
	color: #f2f1ec;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	transition: border-color 0.18s, color 0.18s, transform 0.18s;
}
.lw-pop__close:hover,
.lw-pop__close:focus-visible {
	border-color: #c8f135;
	color: #c8f135;
	transform: rotate(90deg);
	outline: 0;
}
.lw-pop__frame {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: #011f01;
	opacity: 0;
	transition: opacity 0.25s ease;
}
.lw-pop.is-ready .lw-pop__frame {
	opacity: 1;
}
.lw-pop__loader {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.lw-pop__loader span {
	width: 38px;
	height: 38px;
	border: 3px solid #1f3a2d;
	border-top-color: #c8f135;
	border-radius: 50%;
	animation: lwPopSpin 0.8s linear infinite;
}
.lw-pop.is-ready .lw-pop__loader {
	display: none;
}
@keyframes lwPopSpin {
	to {
		transform: rotate(360deg);
	}
}
html.lw-pop-lock,
html.lw-pop-lock body {
	overflow: hidden;
}
html.lw-pop-lock body {
	padding-right: var(--lw-sbw, 0px);
}

@media (max-width: 640px) {
	.lw-pop {
		padding: 0;
	}
	.lw-pop__dialog {
		height: 100%;
		max-width: none;
		border: 0;
		border-radius: 0;
	}
	.lw-pop__close {
		top: 12px;
		right: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lw-pop,
	.lw-pop__dialog,
	.lw-pop__frame,
	.lw-pop__close {
		transition: none;
	}
	.lw-pop__loader span {
		animation-duration: 2s;
	}
}

/* ---------- /register/ shown inside the popup frame ---------- */
html:has(body.lw-popup) {
	margin-top: 0 !important;
}
body.lw-popup #wpadminbar,
body.lw-popup .lw-header,
body.lw-popup .lw-footer,
body.lw-popup .lw-reg-hero,
body.lw-popup .lw-reg-help,
body.lw-popup .lw-skip,
body.lw-popup .skip-link {
	display: none !important;
}
body.lw-popup,
body.lw-popup .lw-main {
	margin: 0 !important;
	padding: 0 !important;
	background: #011f01 !important;
}
body.lw-popup .lw-reg-form {
	padding: 0 !important;
	background: #011f01 !important;
}
body.lw-popup .lw-reg-form .e-con-inner {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
}
body.lw-popup .uia-shell {
	max-width: none !important;
}
body.lw-popup .uia-card {
	min-height: 100vh;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
body.lw-popup .uia-header {
	padding-right: 80px !important;
}
@media (max-width: 640px) {
	body.lw-popup .uia-header {
		padding-right: 68px !important;
	}
}
