/* First-start layout overrides kept separate so development servers reload them reliably. */
.vcontrol.mj-firststart-popup[data-utalic-class="VScenePopup"] > .vcontrol.mj-firststart {
	margin: 0 !important;
	margin-top: 0 !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-visual {
	height: 240px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-step {
	top: 240px !important;
}

.device-mode-mobile .mj-firststart .VChipsEdit {
	top: 204px !important;
	bottom: 128px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-visual-claim {
	top: auto !important;
	right: 48% !important;
	bottom: 12px !important;
	left: 32px !important;
	width: auto !important;
	height: 100px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-welcome-title {
	top: 82px !important;
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
	height: 190px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-welcome-eyebrow {
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-welcome-copy {
	top: 286px !important;
	right: 28px !important;
	left: 28px !important;
	height: 145px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goals-title {
	top: 56px !important;
	right: 22px !important;
	left: 22px !important;
	height: 96px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goals-copy {
	top: 154px !important;
	right: 22px !important;
	left: 22px !important;
	height: 44px !important;
}

.mj-firststart,
.mj-firststart .mj-onboarding-visual,
.mj-firststart .mj-onboarding-step {
	transition: background-color 360ms ease;
}

.mj-firststart .mj-onboarding-progress {
	z-index: 30;
	letter-spacing: 3px;
}

.mj-firststart .mj-onboarding-back {
	z-index: 31;
	box-shadow: 0 8px 22px rgba(35, 20, 58, .12);
	backdrop-filter: blur(10px);
}

.mj-firststart .mj-onboarding-back button {
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.mj-firststart .mj-onboarding-back button:hover {
	transform: translateX(-2px);
	box-shadow: 0 8px 20px rgba(35, 20, 58, .14);
}

.mj-firststart .VChipsEditChip {
	grid-template-columns: 36px minmax(0, 1fr) 24px;
	gap: 10px;
	min-height: 56px;
	padding: 8px 11px;
}

.mj-firststart .VChipsEditMarker {
	width: 36px;
	height: 36px;
	border-radius: 12px;
}

.mj-firststart .VChipsEditCaption {
	font-size: 13px;
	line-height: 1.25;
}

.mj-firststart .vcontrol[data-utalic-class="VTextEdit"] input {
	height: 100% !important;
	padding: 0 18px !important;
	box-sizing: border-box;
}

.mj-firststart .vcontrol[data-utalic-class="VMultilineEdit"] textarea {
	padding: 14px 16px !important;
	box-sizing: border-box;
}

.mj-firststart .vcontrol[data-utalic-class="VTagsEdit"] {
	padding: 14px 16px !important;
	box-sizing: border-box;
}

.mj-firststart .VTagsEditPlaceholder {
	padding: 0;
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-container,
.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection--single {
	height: 100% !important;
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection--single {
	position: relative;
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection__rendered {
	display: flex !important;
	align-items: center;
	height: 100% !important;
	padding: 0 78px 0 16px !important;
	line-height: normal !important;
	box-sizing: border-box;
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection__clear {
	position: absolute;
	top: 50%;
	right: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 9px;
	color: #665c75;
	font-size: 21px !important;
	line-height: 1 !important;
	transform: translateY(-50%);
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection__clear:hover {
	background: rgba(33, 21, 53, .08);
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection__arrow {
	top: 0 !important;
	right: 3px !important;
	width: 38px !important;
	height: 100% !important;
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-selection__arrow b {
	margin-top: -3px !important;
	margin-left: -6px !important;
	border-width: 7px 6px 0 6px !important;
	border-color: #665c75 transparent transparent transparent !important;
}

.mj-firststart .vcontrol[data-utalic-class="VLookupComboBox"] .select2-container--open .select2-selection__arrow b {
	border-width: 0 6px 7px 6px !important;
	border-color: transparent transparent #665c75 transparent !important;
}

.mj-firststart .mj-page-enter {
	animation: mj-page-enter 420ms cubic-bezier(.22, .8, .32, 1) both;
}

.mj-firststart .mj-visual-change .img-wrapper {
	animation: mj-hero-enter 520ms cubic-bezier(.22, .8, .32, 1) both;
}

@keyframes mj-page-enter {
	from { opacity: 0; transform: translateX(24px); }
	to { opacity: 1; transform: translateX(0); }
}

@keyframes mj-hero-enter {
	from { opacity: 0; transform: translateY(18px) scale(.96); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
	.mj-firststart .mj-page-enter,
	.mj-firststart .mj-visual-change .img-wrapper {
		animation: none;
	}
}

.device-mode-mobile .mj-firststart .mj-onboarding-progress {
	top: 256px !important;
	right: 20px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-back {
	top: 16px !important;
	right: 16px !important;
	bottom: auto !important;
	left: auto !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-visual-claim .ut-lbl {
	font-size: 16px !important;
	line-height: 1.15 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-welcome-title .ut-lbl {
	font-size: 27px !important;
	line-height: 1.08 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-welcome-copy .ut-lbl {
	font-size: 15px !important;
	line-height: 1.3 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goals-title .ut-lbl,
.device-mode-mobile .mj-firststart .mj-onboarding-page-title .ut-lbl {
	font-size: 22px !important;
	line-height: 1.15 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-page-title {
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-page-title > span:last-child {
	font-size: 22px !important;
	line-height: 1.15 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goals-eyebrow {
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goals-copy .ut-lbl {
	font-size: 12px !important;
	line-height: 1.25 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goal-count {
	bottom: 84px !important;
	left: 22px !important;
	width: 190px !important;
	height: 28px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goal-count .ut-lbl {
	font-size: 12px !important;
	line-height: 1.25 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-goals-button {
	bottom: 18px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-field-help {
	top: 142px !important;
	right: 22px !important;
	left: 22px !important;
	height: 54px !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-field-help .ut-lbl {
	font-size: 12px !important;
	line-height: 1.25 !important;
}

.device-mode-mobile .mj-firststart .mj-onboarding-target-tags {
	top: 208px !important;
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
}

/* Edition checkout assistant */
.mj-checkout-popup.vcontrol[data-utalic-class="VScenePopup"] {
	width: min(1040px, calc(100vw - 40px)) !important;
	height: min(720px, calc(100dvh - 40px)) !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 28px !important;
	overflow: hidden !important;
	box-shadow: 0 30px 90px rgba(33, 21, 53, .26) !important;
}

.mj-checkout-popup > .VScenePopupHeading,
.mj-checkout-popup > .navigation-bar {
	display: none !important;
}

.vcontrol.mj-checkout-popup[data-utalic-class="VScenePopup"] > .vcontrol.mj-checkout-assistant {
	margin: 0 !important;
	margin-top: 0 !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
}

.mj-checkout-popup.vcontrol[data-utalic-class="VScenePopup"] > .close {
	top: 18px;
	right: 18px;
	border-color: rgba(33, 21, 53, .08);
	background: rgba(255, 255, 255, .72);
	color: #665c75;
	backdrop-filter: blur(10px);
}

.mj-checkout-assistant {
	box-shadow: 0 30px 90px rgba(33, 21, 53, .26);
	overflow: hidden !important;
}

.mj-checkout-assistant .mj-checkout-visual,
.mj-checkout-assistant .mj-checkout-step {
	transition: background-color .35s ease, opacity .25s ease, transform .25s ease;
}

.mj-checkout-assistant .mj-edition-grid {
	box-sizing: border-box;
	box-shadow: 0 12px 32px rgba(55, 39, 78, .08);
	overflow: hidden !important;
}

.mj-checkout-assistant .mj-edition-grid > .VOwnerControlInnerPanel {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
	height: 100%;
}

.mj-checkout-assistant .mj-edition-card {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	box-sizing: border-box;
	width: auto !important;
	height: auto !important;
	min-width: 0;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none;
	transition: background-color .2s ease, box-shadow .2s ease;
}

.mj-checkout-assistant [data-utalic-name="pnlFree"],
.mj-checkout-assistant [data-utalic-name="pnlStandard"] {
	border-right: 1px solid #e5deee !important;
}

.mj-checkout-assistant [data-utalic-name="pnlUltimate"] {
	background: #fcfaff !important;
	box-shadow: inset 0 4px 0 #7455cc;
}

.mj-checkout-assistant .mj-checkout-back {
	z-index: 31;
	box-shadow: 0 8px 22px rgba(35, 20, 58, .12);
	backdrop-filter: blur(10px);
}

.mj-checkout-assistant .mj-checkout-back button {
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.mj-checkout-assistant .mj-checkout-back button:hover {
	transform: translateX(-2px);
	box-shadow: 0 8px 20px rgba(35, 20, 58, .14);
}

.mj-checkout-assistant [data-utalic-name="lblEditionCopy"] .ut-lbl,
.mj-checkout-assistant [data-utalic-name="lblUsersTitle"] .ut-lbl,
.mj-checkout-assistant [data-utalic-name="lblUsersCopy"] .ut-lbl,
.mj-checkout-assistant [data-utalic-name="lblVisualClaim"] .ut-lbl {
	line-height: 1.2;
}

.mj-checkout-assistant .mj-edition-card:hover,
.mj-checkout-assistant .mj-edition-card.mj-selected {
	transform: none;
	background: #f7f2ff !important;
	box-shadow: inset 0 4px 0 #7455cc;
}

.mj-checkout-assistant .mj-edition-card .mj-feature-list > .hl,
.mj-checkout-assistant .mj-edition-card .mj-feature-list > .hl > .ut-lbl {
	display: block !important;
	white-space: pre-line !important;
	line-height: 1.72;
}

.mj-checkout-assistant .mj-ultimate-badge > .hl {
	display: flex !important;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.mj-checkout-assistant .mj-checkout-quantity-card input {
	color: #211535 !important;
	background: #fbf9ff !important;
	font-weight: 700 !important;
}

.mj-checkout-assistant .mj-stripe-checkout-form {
	overflow: auto !important;
	box-shadow: 0 12px 40px rgba(55, 39, 78, .08);
}

.mj-checkout-assistant .mj-stripe-checkout-form iframe {
	min-width: 100% !important;
	min-height: 100% !important;
}

@media (max-width: 760px) {
	.mj-checkout-assistant {
		border-radius: 0 !important;
		overflow-y: auto !important;
	}

	.mj-checkout-assistant .mj-checkout-visual {
		display: none !important;
	}

	.mj-checkout-assistant .mj-checkout-step {
		left: 0 !important;
		overflow-y: auto !important;
	}

	.mj-checkout-assistant .mj-checkout-step > .VOwnerControlInnerPanel {
		min-height: 700px;
	}

	.mj-checkout-assistant [data-utalic-name="pnlEdition"] > .VOwnerControlInnerPanel {
		min-height: 1430px;
	}

	.mj-checkout-assistant .mj-edition-grid {
		top: 180px !important;
		right: 22px !important;
		left: 22px !important;
		width: auto !important;
		height: 1200px !important;
	}

	.mj-checkout-assistant .mj-edition-grid > .VOwnerControlInnerPanel {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: repeat(3, 400px);
	}

	.mj-checkout-assistant .mj-edition-card {
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
	}

	.mj-checkout-assistant [data-utalic-name="pnlFree"],
	.mj-checkout-assistant [data-utalic-name="pnlStandard"] {
		border-right: 0 !important;
		border-bottom: 1px solid #e5deee !important;
	}

	.mj-checkout-assistant .mj-checkout-interval {
		top: 132px !important;
		right: 22px !important;
		left: 22px !important;
		width: auto !important;
	}

	.mj-checkout-assistant .mj-checkout-quantity-card {
		right: 22px !important;
		left: 22px !important;
	}

	.mj-checkout-assistant .mj-stripe-checkout-form {
		top: 156px !important;
		right: 12px !important;
		left: 12px !important;
	}

	.mj-checkout-assistant > .VOwnerControlInnerPanel > [data-utalic-name="lblProgress"] {
		left: 22px !important;
	}

	.mj-checkout-assistant .mj-checkout-back {
		top: 16px !important;
		right: 16px !important;
		bottom: auto !important;
		left: auto !important;
	}
}

.device-mode-mobile .mj-checkout-assistant {
	border-radius: 0 !important;
	overflow-y: auto !important;
}

.device-mode-mobile .mj-checkout-popup.vcontrol[data-utalic-class="VScenePopup"] {
	width: 100% !important;
	height: 100% !important;
	border-radius: 0 !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-checkout-visual {
	display: none !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-checkout-step {
	left: 0 !important;
	overflow-y: auto !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-checkout-step > .VOwnerControlInnerPanel {
	min-height: 700px;
}

.device-mode-mobile .mj-checkout-assistant [data-utalic-name="pnlEdition"] > .VOwnerControlInnerPanel {
	min-height: 1430px;
}

.device-mode-mobile .mj-checkout-assistant .mj-edition-grid {
	top: 180px !important;
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
	height: 1200px !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-edition-grid > .VOwnerControlInnerPanel {
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: repeat(3, 400px);
}

.device-mode-mobile .mj-checkout-assistant .mj-edition-card {
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

.device-mode-mobile .mj-checkout-assistant [data-utalic-name="pnlFree"],
.device-mode-mobile .mj-checkout-assistant [data-utalic-name="pnlStandard"] {
	border-right: 0 !important;
	border-bottom: 1px solid #e5deee !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-checkout-interval {
	top: 132px !important;
	right: 22px !important;
	left: 22px !important;
	width: auto !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-checkout-quantity-card {
	right: 22px !important;
	left: 22px !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-stripe-checkout-form {
	top: 156px !important;
	right: 12px !important;
	left: 12px !important;
}

.device-mode-mobile .mj-checkout-assistant > .VOwnerControlInnerPanel > [data-utalic-name="lblProgress"] {
	left: 22px !important;
}

.device-mode-mobile .mj-checkout-assistant .mj-checkout-back {
	top: 16px !important;
	right: 16px !important;
	bottom: auto !important;
	left: auto !important;
}

/* Free upgrade and trial surfaces */
.mj-free-upgrade {
	box-shadow: 0 30px 90px rgba(50, 27, 32, .24);
	overflow: hidden !important;
}

.mj-free-upgrade .ut-lbl {
	white-space: pre-line;
	line-height: 1.55;
}

.mj-demo-banner {
	background: linear-gradient(90deg, #5d3fc3 0%, #8759d8 52%, #d25183 100%) !important;
	box-shadow: 0 8px 22px rgba(61, 37, 130, .24);
	overflow: hidden !important;
}

.mj-demo-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 20% 10%, rgba(255,255,255,.22), transparent 32%);
	pointer-events: none;
}

.mj-demo-banner:hover {
	filter: brightness(1.06);
}

.mj-demo-expired {
	box-shadow: 0 28px 80px rgba(33, 21, 53, .28);
	overflow: hidden !important;
}

.mj-demo-expired .ut-lbl {
	white-space: pre-line;
	line-height: 1.55;
}

.device-mode-mobile .mj-free-upgrade .mj-free-upgrade-visual {
	display: none !important;
}

.device-mode-mobile .mj-free-upgrade,
.device-mode-mobile .mj-demo-expired {
	overflow-y: auto !important;
}

.device-mode-mobile .mj-free-upgrade > .VOwnerControlInnerPanel {
	min-height: 560px;
}

.device-mode-mobile .mj-demo-expired > .VOwnerControlInnerPanel {
	min-height: 580px;
}

.device-mode-mobile .mj-free-upgrade > .VOwnerControlInnerPanel > [data-utalic-name="pnlContent"] {
	left: 0 !important;
}

.device-mode-mobile .mj-demo-expired .mj-demo-expired-visual {
	display: none !important;
}

.device-mode-mobile .mj-demo-expired > .VOwnerControlInnerPanel > [data-utalic-name="pnlContent"] {
	left: 0 !important;
}

@media (max-width: 680px) {
	.mj-free-upgrade,
	.mj-demo-expired {
		overflow-y: auto !important;
	}

	.mj-free-upgrade > .VOwnerControlInnerPanel {
		min-height: 560px;
	}

	.mj-demo-expired > .VOwnerControlInnerPanel {
		min-height: 580px;
	}

	.mj-free-upgrade .mj-free-upgrade-visual {
		display: none !important;
	}

	.mj-free-upgrade > .VOwnerControlInnerPanel > [data-utalic-name="pnlContent"] {
		left: 0 !important;
	}

	.mj-demo-expired .mj-demo-expired-visual {
		display: none !important;
	}

	.mj-demo-expired > .VOwnerControlInnerPanel > [data-utalic-name="pnlContent"] {
		left: 0 !important;
	}
}
