.m-modal {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  z-index: 9999;
  top: 0;
  left: 0;
  background-color: rgba(var(--rgb-primary), 0.3);
  position: fixed;
  opacity: 0;
  transition: opacity var(--default-transition-easing) var(--default-transition-timing), visibility var(--default-transition-easing) var(--default-transition-timing);
  visibility: hidden;
  pointer-events: none;
}
.m-modal.active {
  visibility: visible;
  opacity: 1;
  pointer-events: unset;
}
.m-modal.loading .m-modal__inner {
  visibility: hidden;
  opacity: 0;
}
.m-modal.loading .m-modal__loading {
  visibility: visible;
  justify-content: center;
  align-items: center;
  opacity: 1;
}
.m-modal__loading {
  visibility: hidden;
  opacity: 0;
  flex-grow: 1;
  display: flex;
  justify-content: center;
  transition: opacity var(--default-transition-easing) var(--default-transition-timing), visibility var(--default-transition-easing) var(--default-transition-timing);
}
.m-modal__loading svg {
  stroke: var(--color-primary);
}
.m-modal__inner {
  background: white;
  width: 95%;
  min-height: 20rem;
  display: flex;
  flex-direction: column;
  padding: 2.4rem;
  max-height: 95%;
  overflow: auto;
  opacity: 1;
  transition: opacity var(--default-transition-easing) var(--default-transition-timing), visibility var(--default-transition-easing) var(--default-transition-timing);
}
@media screen and (min-width: 990px) {
  .m-modal__inner {
    width: 60%;
    max-width: 75rem;
  }
}
@media screen and (min-width: 990px) {
  .m-modal__content {
    padding: 0.7rem 4.7rem;
  }
}
.m-modal__close {
  display: flex;
  justify-content: flex-end;
}
.m-modal__close .icon {
  cursor: pointer;
  width: 2rem;
  height: 2rem;
}
