@charset "utf-8";

.m-page-transition { position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 999999; background: rgb(255, 255, 255); pointer-events: none; display: flex; align-items: center; justify-content: center; max-width: 100vw; max-height: 100vh; transition-property: opacity, visibility; transition-duration: var(--m-duration-default); transition-timing-function: ease; }

.m-page-transition.fade-out { opacity: 0; visibility: hidden; }

.m-page-transition.m-page-transition--design-mode { opacity: 1; visibility: visible; }

.m-page-transition.fade-in { opacity: 1; visibility: visible; }

.m-page-transition.fade-out .m-page-transition__spinner-content { display: none; }

.m-page-transition.m-page-transition--design-mode .m-page-transition__spinner-content { display: block; }

@keyframes pageTransitionSpinner { 
  0% { transform: rotate3d(0, 0, 1, 0deg); }
  25% { transform: rotate3d(0, 0, 1, 90deg); }
  50% { transform: rotate3d(0, 0, 1, 180deg); }
  75% { transform: rotate3d(0, 0, 1, 270deg); }
  100% { transform: rotate3d(0, 0, 1, 360deg); }
}

@keyframes m-blink { 
  25% { opacity: 0.5; }
  50% { opacity: 0; }
  75% { opacity: 0.5; }
}

.m-page-transition__loading { position: absolute; animation: 1.5s linear 0s infinite normal none running pageTransitionSpinner; width: var(--loading-size); height: var(--loading-size); top: 10px; left: 10px; border-radius: 50%; box-shadow: 0 2px 0 0 var(--loading-color); transform-origin: calc(var(--loading-size) / 2) calc(var(--loading-size) / 2 + 1px); }

.m-page-transition__logo { animation: 1.5s linear 0s infinite normal none running m-blink; position: absolute; width: var(--loading-size); height: var(--loading-size); top: 10px; left: 10px; display: flex; align-items: center; justify-content: center; }

.m-page-transition__spinner { width: var(--loading-size); height: var(--loading-size); display: inline-block; overflow: hidden; background: transparent; }

.m-page-transition__spinner-content { width: 100%; height: 100%; position: relative; transform: translateZ(0px) scale(0.8); backface-visibility: hidden; transform-origin: 0px 0px; }

.m-page-transition__spinner-content div { box-sizing: content-box; }