:root {
  --xz_box_width: 224px;
  --xz_box_height: 180px;
  /*宽度一半*/
  --xz_box_haf_width: 102px;
  --transform_w_origin: 50% 50% -112px;
  /*高度一半*/
  --transform_h_origin: 50% 50% -90px;
  --transform_o_origin: 50% 50% 90px;
}

.xz_box li {
  margin: 0;
  position: relative;
  width: var(--xz_box_width);
  height: var(--xz_box_height);
  display: inline-block;
  vertical-align: top;
  -webkit-perspective: 300px;
  perspective: 300px;
  -webkit-transform-origin: var(--transform_o_origin);
  transform-origin: var(--transform_o_origin);
  cursor: pointer;
  /*margin-left: 0;*/
}

.xz_box li:not(:last-child){
  margin-right: 20px;
}

.xz_box .w {
  /*font-size: medium;*/
  font-size: initial;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform-origin: var(--transform_h_origin);
  transform-origin: var(--transform_h_origin);
  will-change: transform;
  -webkit-animation: 200ms ease-out 0ms 1 normal forwards paused;
  animation: 200ms ease-out 0ms 1 normal forwards paused;
}

.xz_box .in-left .w, .xz_box .in-right .w {
  -webkit-transform-origin: var(--transform_w_origin);
  transform-origin: var(--transform_w_origin);
}

.xz_box .f,
.xz_box .b {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  color: white;
  -webkit-transition: none;
  transition: none;
}

.xz_box .f {
  background-color: #00BCD4;
  background: -webkit-linear-gradient(#00BCD4, #673AB7);
  background: linear-gradient(#00BCD4, #673AB7);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.xz_box .f > svg {
  mix-blend-mode: luminosity;
}

.xz_box .b {
  padding: 16px;
  padding: 1rem;
  background-image: -webkit-radial-gradient(circle, #333, #000 160%);
  background-image: radial-gradient(circle, #333, #000 160%);
  -webkit-transform: translate3d(0, 0, -1px);
  transform: translate3d(0, 0, -1px);

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-shadow: 0 20px 20px black;
  text-align: center;
}

.xz_box .in-top .b {
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
  -webkit-transform: translate3d(0, -100%, 0) rotate3d(1, 0, 0, 90deg);
  transform: translate3d(0, -100%, 0) rotate3d(1, 0, 0, 90deg);
}

.xz_box .out-top .b {
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
  -webkit-transform: translate3d(0, -100%, 0) rotate3d(1, 0, 0, 90deg);
  transform: translate3d(0, -100%, 0) rotate3d(1, 0, 0, 90deg);
}

.xz_box .in-right .b{
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
  -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 1, 0, 90deg);
  transform: translate3d(100%, 0, 0) rotate3d(0, 1, 0, 90deg);
}

.xz_box .out-right .b  {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
  -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 1, 0, 90deg);
  transform: translate3d(100%, 0, 0) rotate3d(0, 1, 0, 90deg);
}

.xz_box .in-bottom .b {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
  -webkit-transform: translate3d(0, 100%, 0) rotate3d(-1, 0, 0, 90deg);
  transform: translate3d(0, 100%, 0) rotate3d(-1, 0, 0, 90deg);
}

.xz_box .out-bottom .b {
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
  -webkit-transform: translate3d(0, 100%, 0) rotate3d(-1, 0, 0, 90deg);
  transform: translate3d(0, 100%, 0) rotate3d(-1, 0, 0, 90deg);
}

.xz_box .in-left .b{
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, -1, 0, 90deg);
  transform: translate3d(-100%, 0, 0) rotate3d(0, -1, 0, 90deg);
}

.xz_box .out-left .b {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, -1, 0, 90deg);
  transform: translate3d(-100%, 0, 0) rotate3d(0, -1, 0, 90deg);
}

.xz_box .in {
}

.xz_box .in-top .w {
  -webkit-animation-name: in-top;
  animation-name: in-top;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .in-right .w {
  -webkit-animation-name: in-right;
  animation-name: in-right;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .in-bottom .w {
  -webkit-animation-name: in-bottom;
  animation-name: in-bottom;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .in-left .w {
  -webkit-animation-name: in-left;
  animation-name: in-left;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .out {
}

.xz_box .out-top .w {
  -webkit-animation-name: out-top;
  animation-name: out-top;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .out-right .w {
  -webkit-animation-name: out-right;
  animation-name: out-right;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .out-bottom .w {
  -webkit-animation-name: out-bottom;
  animation-name: out-bottom;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

.xz_box .out-left .w {
  -webkit-animation-name: out-left;
  animation-name: out-left;
  -webkit-animation-play-state: running;
  animation-play-state: running;
}

@-webkit-keyframes in-top {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(-1, 0, 0, 90deg);
    transform: rotate3d(-1, 0, 0, 90deg)
  }
}

@keyframes in-top {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(-1, 0, 0, 90deg);
    transform: rotate3d(-1, 0, 0, 90deg)
  }
}

@-webkit-keyframes out-top {
  from {
    -webkit-transform: rotate3d(-1, 0, 0, 90deg);
    transform: rotate3d(-1, 0, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@keyframes out-top {
  from {
    -webkit-transform: rotate3d(-1, 0, 0, 90deg);
    transform: rotate3d(-1, 0, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@-webkit-keyframes in-right {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(0, -1, 0, 90deg);
    transform: rotate3d(0, -1, 0, 90deg)
  }
}

@keyframes in-right {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(0, -1, 0, 90deg);
    transform: rotate3d(0, -1, 0, 90deg)
  }
}

@-webkit-keyframes out-right {
  from {
    -webkit-transform: rotate3d(0, -1, 0, 90deg);
    transform: rotate3d(0, -1, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@keyframes out-right {
  from {
    -webkit-transform: rotate3d(0, -1, 0, 90deg);
    transform: rotate3d(0, -1, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@-webkit-keyframes in-bottom {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(1, 0, 0, 90deg);
    transform: rotate3d(1, 0, 0, 90deg)
  }
}

@keyframes in-bottom {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(1, 0, 0, 90deg);
    transform: rotate3d(1, 0, 0, 90deg)
  }
}

@-webkit-keyframes out-bottom {
  from {
    -webkit-transform: rotate3d(1, 0, 0, 90deg);
    transform: rotate3d(1, 0, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@keyframes out-bottom {
  from {
    -webkit-transform: rotate3d(1, 0, 0, 90deg);
    transform: rotate3d(1, 0, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@-webkit-keyframes in-left {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(0, 1, 0, 90deg);
    transform: rotate3d(0, 1, 0, 90deg)
  }
}

@keyframes in-left {
  from {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
  to {
    -webkit-transform: rotate3d(0, 1, 0, 90deg);
    transform: rotate3d(0, 1, 0, 90deg)
  }
}

@-webkit-keyframes out-left {
  from {
    -webkit-transform: rotate3d(0, 1, 0, 90deg);
    transform: rotate3d(0, 1, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}

@keyframes out-left {
  from {
    -webkit-transform: rotate3d(0, 1, 0, 90deg);
    transform: rotate3d(0, 1, 0, 90deg)
  }
  to {
    -webkit-transform: rotate3d(0, 0, 0, 0deg);
    transform: rotate3d(0, 0, 0, 0deg)
  }
}
