.mantiz-modal:not([data-enter="none"]) .mantiz-modal__overlay {
	transition: opacity var(--mantiz-duration, 320ms) var(--mantiz-easing, cubic-bezier(0.22, 1, 0.36, 1));
}

.mantiz-modal:not([data-enter="none"]) .mantiz-modal__dialog {
	transition:
		opacity var(--mantiz-duration, 320ms) var(--mantiz-easing, cubic-bezier(0.22, 1, 0.36, 1)),
		transform var(--mantiz-duration, 320ms) var(--mantiz-easing, cubic-bezier(0.22, 1, 0.36, 1));
}

.mantiz-modal[data-enter="fade-scale-up"] .mantiz-modal__dialog,
.mantiz-modal:not([data-enter]) .mantiz-modal__dialog {
	transform: translate(-50%, calc(-50% + 18px)) scale(0.94);
}

.mantiz-modal[data-enter="fade"] .mantiz-modal__dialog {
	transform: translate(-50%, -50%) scale(1);
}

.mantiz-modal[data-enter="slide-up"] .mantiz-modal__dialog {
	transform: translate(-50%, calc(-50% + 36px)) scale(1);
}

.mantiz-modal.is-open .mantiz-modal__dialog {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

.mantiz-modal:not([data-enter="none"]) .mantiz-modal__body > * {
	opacity: 0;
	transition: opacity 360ms var(--mantiz-easing, cubic-bezier(0.22, 1, 0.36, 1));
}

.mantiz-modal:not([data-enter="none"]) .mantiz-modal__body > *:not(.mantiz-modal__icon) {
	transform: translateY(10px);
	transition:
		opacity 360ms var(--mantiz-easing, cubic-bezier(0.22, 1, 0.36, 1)),
		transform 360ms var(--mantiz-easing, cubic-bezier(0.22, 1, 0.36, 1));
}

.mantiz-modal.is-open .mantiz-modal__body > * {
	opacity: 1;
}

.mantiz-modal.is-open .mantiz-modal__body > *:not(.mantiz-modal__icon) {
	transform: translateY(0);
}

.mantiz-modal.is-open .mantiz-modal__body > *:nth-child(1) { transition-delay: 70ms; }
.mantiz-modal.is-open .mantiz-modal__body > *:nth-child(2) { transition-delay: 120ms; }
.mantiz-modal.is-open .mantiz-modal__body > *:nth-child(3) { transition-delay: 170ms; }
.mantiz-modal.is-open .mantiz-modal__body > *:nth-child(4) { transition-delay: 220ms; }
.mantiz-modal.is-open .mantiz-modal__body > *:nth-child(5) { transition-delay: 270ms; }

.mantiz-modal[data-enter="none"] .mantiz-modal__dialog,
.mantiz-modal[data-enter="none"] .mantiz-modal__overlay,
.mantiz-modal[data-enter="none"] .mantiz-modal__body > * {
	transition: none;
}

.mantiz-modal[data-enter="none"] .mantiz-modal__body > * {
	opacity: 1;
	transform: none;
}

.mantiz-modal.is-closing .mantiz-modal__dialog {
	opacity: 0;
	transition-duration: calc(var(--mantiz-duration, 320ms) * 0.85);
}

.mantiz-modal.is-closing[data-enter="fade-scale-up"] .mantiz-modal__dialog,
.mantiz-modal.is-closing:not([data-enter]) .mantiz-modal__dialog {
	transform: translate(-50%, calc(-50% + 10px)) scale(0.97);
}

.mantiz-modal.is-closing[data-enter="fade"] .mantiz-modal__dialog {
	transform: translate(-50%, -50%) scale(1);
}

.mantiz-modal.is-closing[data-enter="slide-up"] .mantiz-modal__dialog {
	transform: translate(-50%, calc(-50% + 20px)) scale(1);
}

.mantiz-modal.is-closing .mantiz-modal__overlay {
	opacity: 0;
	transition-duration: calc(var(--mantiz-duration, 320ms) * 0.85);
}

.mantiz-modal.is-closing .mantiz-modal__body > * {
	opacity: 0;
	transition-duration: 180ms;
	transition-delay: 0ms !important;
}

.mantiz-modal.is-closing .mantiz-modal__body > *:not(.mantiz-modal__icon) {
	transform: translateY(6px);
}

.mantiz-trigger:active {
	transform: scale(0.98);
}

.mantiz-modal__btn:hover {
	filter: brightness(1.03);
}

.mantiz-modal__close:hover {
	color: #12264C;
}

@media (max-width: 640px) {
	.mantiz-modal[data-enter="fade-scale-up"] .mantiz-modal__dialog,
	.mantiz-modal:not([data-enter]) .mantiz-modal__dialog {
		transform: translate(0, 18px) scale(0.94);
	}

	.mantiz-modal[data-enter="fade"] .mantiz-modal__dialog {
		transform: translate(0, 0) scale(1);
	}

	.mantiz-modal[data-enter="slide-up"] .mantiz-modal__dialog {
		transform: translate(0, 36px) scale(1);
	}

	.mantiz-modal.is-open .mantiz-modal__dialog {
		transform: translate(0, 0) scale(1);
	}

	.mantiz-modal.is-closing[data-enter="fade-scale-up"] .mantiz-modal__dialog,
	.mantiz-modal.is-closing:not([data-enter]) .mantiz-modal__dialog {
		transform: translate(0, 10px) scale(0.97);
	}

	.mantiz-modal.is-closing[data-enter="slide-up"] .mantiz-modal__dialog {
		transform: translate(0, 20px) scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mantiz-modal .mantiz-modal__overlay,
	.mantiz-modal .mantiz-modal__dialog,
	.mantiz-modal .mantiz-modal__body > * {
		transition: none !important;
	}

	.mantiz-modal .mantiz-modal__body > * {
		opacity: 1 !important;
		transform: none !important;
	}
}
