/*加载中*/
.x-loading {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 99;
  user-select: none;
  background-color: var(--x-loading-background-color);

  &.is--visible {
    display: block;
  }

  .x-loading--spinner {
    width: 56px;
    height: 56px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    &:before,
    &:after {
      content: "";
      width: 100%;
      height: 100%;
      border-radius: 50%;
      background-color: var(--x-primary-color);
      opacity: 0.6;
      position: absolute;
      top: 0;
      left: 0;
      animation: bounce 2s infinite ease-in-out;
    }

    &:after {
      animation-delay: -1s;
    }
  }

  @keyframes bounce {

    0%,
    100% {
      transform: scale(0);
    }

    50% {
      transform: scale(1);
    }
  }
}

.size--mini {
  .x-loading {
    .x-loading--spinner {
      width: 38px;
      height: 38px;
    }
  }
}

.size--small {
  .x-loading {
    .x-loading--spinner {
      width: 44px;
      height: 44px;
    }
  }
}

.size--medium {
  .x-loading {
    .x-loading--spinner {
      width: 50px;
      height: 50px;
    }
  }
}