
.loading-icon {
    box-sizing: border-box;
    width: 11px;
    height: 11px;
    border-radius: 120%;
    box-shadow:
      0 -30px 0 #eee,     /*  上  */
      21px -21px 0 #ddd,  /* 右上 */
      30px 0 0 #ccc,      /*  右  */
      21px 21px 0 #bbb,   /* 右下 */
      0 30px 0 #aaa,      /*  下  */
      -21px 21px 0 #999,  /* 左下 */
      -30px 0 0 #666,     /*  左  */
      -21px -21px 0 #000; /* 左上 */
    animation: rotate 0.7s steps(8) 0s infinite;
  }
  
  @keyframes rotate {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  
  /****** Base style. ******/
  body {
    display: flex;
    height: 100vh;
    justify-content: center;
    align-items: center;
    margin: 0;
  }