.nxrs-journey {
	box-sizing: border-box;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 10px;
	width: 100%;
	min-width: 0;
	min-height: 0;
}

.nxrs-journey *,
.nxrs-journey *::before,
.nxrs-journey *::after {
	box-sizing: border-box;
}

.nxrs-journey__content {
	display: flex;
	flex: 1 1 auto;
	justify-content: center;
	width: 100%;
	min-width: 0;
	min-height: 0;
}

.nxrs-journey .nxrs-journey__content > :is(.nxtorigin-adbook, .nlsm-booking) {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	min-height: 0;
	max-height: 100%;
	margin: 0 auto;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	touch-action: pan-y;
}

.nxrs-switcher {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 8px 10px;
	border: 1px solid var(--nx-border, #243a56);
	border-radius: 12px;
	background: color-mix(in srgb, var(--nx-panel, #0b1329) 90%, transparent);
	color: var(--nx-text, #f7fbff);
}

.nxrs-switcher__label {
	flex: 0 0 auto;
	color: var(--nx-muted, #9fb0c5);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.nxrs-switcher__options {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
	gap: 6px;
	min-width: 0;
}

.nxrs-switcher__option {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 6px 11px;
	border: 1px solid var(--nx-border, #243a56);
	border-radius: 9px;
	background: var(--nx-panel-soft, #102039);
	color: var(--nx-text, #f7fbff);
	font-size: 12px;
	font-weight: 750;
	line-height: 1.2;
	text-decoration: none;
	transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.nxrs-switcher a.nxrs-switcher__option:hover,
.nxrs-switcher a.nxrs-switcher__option:focus-visible {
	border-color: var(--nx-cyan, #22d3ee);
	color: var(--nx-cyan, #22d3ee);
	outline: none;
}

.nxrs-switcher__option.is-current {
	border-color: color-mix(in srgb, var(--nx-cyan, #22d3ee) 70%, transparent);
	background: color-mix(in srgb, var(--nx-cyan, #22d3ee) 18%, var(--nx-panel, #0b1329));
	color: var(--nx-cyan, #22d3ee);
}

.nxrs-switcher__select-label {
	display: none;
	flex: 1 1 auto;
	margin: 0;
}

.nxrs-switcher__select {
	width: 100%;
	min-height: 38px;
	margin: 0;
	padding: 7px 34px 7px 10px;
	border: 1px solid var(--nx-border, #243a56);
	border-radius: 9px;
	background: var(--nx-panel-soft, #102039);
	color: var(--nx-text, #f7fbff);
	font: inherit;
	font-size: 13px;
}

.nxtorigin-auth-modal--event-registration .nxrs-journey {
	height: 100%;
	overflow: hidden;
	padding: 10px;
}

.nxtorigin-auth-modal--event-registration.is-registration-panel {
	height: min(90vh, 820px);
	height: min(90dvh, 820px);
	overflow: hidden;
}

.nxtorigin-auth-modal--event-registration.is-registration-panel .nxtorigin-auth-modal__surface {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 0;
}

.nxtorigin-auth-modal--event-registration.is-registration-panel .nxtorigin-auth-modal__panel[data-nxtorigin-auth-panel="sign-up"]:not([hidden]) {
	display: flex;
	flex: 1 1 auto;
	min-height: 0;
	overflow: hidden;
}

.nxtorigin-auth-modal--event-registration .nxrs-journey__content {
	overflow: hidden;
}

.nxtorigin-auth-modal--event-registration .nxrs-journey__content > .nxar-shell {
	height: 100%;
	max-height: 100%;
	min-height: 0;
	width: 100%;
}

.nxtorigin-auth-modal--event-registration .nxar-step {
	flex: 1 1 0;
	max-height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	touch-action: pan-y;
}

@media (max-width: 720px) {
	.nxrs-switcher {
		align-items: stretch;
		gap: 6px;
		padding: 6px 8px;
	}

	.nxrs-switcher__label,
	.nxrs-switcher__options {
		display: none;
	}

	.nxrs-switcher__select-label {
		display: block;
	}

	.nxtorigin-auth-modal--event-registration .nxrs-journey {
		gap: 6px;
		padding: 7px;
	}
}

@media (max-width: 560px) {
	.nxtorigin-auth-modal--event-registration.is-registration-panel {
		width: calc(100% - 14px);
		height: calc(100vh - 14px);
		height: calc(100dvh - 14px);
		max-height: calc(100vh - 14px);
		max-height: calc(100dvh - 14px);
	}

	.nxtorigin-auth-modal--event-registration .nxrs-journey {
		padding: 5px;
	}
}
