/* components/dashboard/dashboard.wxss */
.dashboard {
  width: 100%;
  height: 480rpx;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FAFCFF;
}

.dashboard .content {
  width: 240rpx;
  height: 100%;
  margin-right: 60rpx;
}

.dashboard .content .count {
  width: 192rpx;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  background: rgba(255, 255, 255, 1);
  border-radius: 12rpx;
  padding: 0 24rpx;
  overflow: hidden;
}

.dashboard .content .count .number {
  font-size: 66rpx;
  font-weight: bold;
  color: rgba(66, 70, 86, 0.7);
  line-height: 96rpx;
}

.dashboard .content .count .number text {
  font-size: 40rpx;
  font-weight: bold;
  color: rgba(66, 70, 86, 0.7);
  line-height: 48rpx;
  letter-spacing: 10rpx;
  margin-top: 6rpx;
}

.dashboard .content .count .txt {
  font-size: 22rpx;
  font-weight: 400;
  color: rgba(66, 70, 86, 0.7);
  line-height: 32rpx;
  text-align: center;
}

.dashboard .content .item {
  width: 240rpx;
  height: 60rpx;
  border-radius: 12rpx;
  margin-top: 20rpx;
  display: flex;
  align-items: center;
}

.dashboard .content .item .icon {
  width: 20rpx;
  height: 20rpx;
  border-radius: 100%;
  margin: 0 20rpx 0 24rpx;
}

.dashboard .content .item .name {
  font-size: 22rpx;
  font-weight: 400;
  color: rgba(66, 70, 86, 1);
}



.dashboard .ruler {
  width: 130rpx;
  height: 100%;
  margin-left: 40rpx;
}

.dashboard .ruler .item {
  position: relative;
}

.dashboard .ruler .item .area {
  height: 100%;
  display: flex;
  align-items: center;
}

.dashboard .ruler .item .area .bg {
  height: 70%;
  width: 40rpx;
  border-radius: 4rpx;
}

.dashboard .ruler .item .area .scale {
  width: 24rpx;
  height: 80%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  margin-left: 16rpx;
}

.dashboard .ruler .item .area .scale .line {
  display: inline-block;
  width: 24rpx;
  height: 2rpx;
  background: rgba(221, 223, 225, 1);
}

.dashboard .ruler .long-scale {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.dashboard .ruler .long-scale .line {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  width: 80rpx;
  height: 2rpx;
  background: rgba(221, 223, 225, 1);
}

.dashboard .ruler .long-scale .number {
  display: inline-block;
  position: absolute;
  right: 0;
  bottom: -17rpx;
  font-size: 24rpx;
  font-weight: 400;
  color: rgba(104, 107, 120, 1);
  line-height: 34rpx;
  background-color: rgba(250, 252, 255, 1);
  padding-left: 10rpx;
}

.dashboard .ruler .long-scale.top {
  top: 0;
  bottom: unset;
}

.wave-wrap {
  width: 180rpx;
  height: 100%;
  border-radius: 90rpx;
  box-shadow: 10rpx 20rpx 20rpx 0rpx rgba(236, 238, 245, 1), -10rpx -20rpx 20rpx 0rpx rgba(255, 255, 255, 1), 8rpx 4rpx 30rpx 0rpx rgba(247, 249, 252, 1);
  overflow: hidden;
  position: relative;
  background: rgba(250,252,255,1);
}

.wave-wrap .wave-inner {
  width: 100%;
  height: 0;
  position: absolute;
  bottom: 0;
  background-color: rgb(118, 218, 255);
  background: linear-gradient(360deg, #59B7FF 0%, #0091FF 80%, #59B7FF 100%);
}

.wave-wrap .wave-inner .bubble {
  width: 100%;
  height: 100rpx;
  position: absolute;
  top: -5rpx;
  left: 0;
  animation-name: translate;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-duration: 4s;
}

.wave-wrap .before,
.wave-wrap .after {
  position: absolute;
  left: 50%;
  width: 540rpx;
  height: 576rpx;
  border-radius: 45%;
  background-color: rgba(250,252,255,1);
  animation-name: rotate;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.wave-wrap .before {
  bottom: 95%;
  animation-duration: 10s;
}

.wave-wrap .after {
  bottom: 92%;
  opacity: .5;
  border-radius: 48%;
  animation-duration: 10s;
}


@keyframes rotate {
  0% {
    transform: translate(-50%, 0) rotateZ(0deg);
  }

  25% {
    transform: translate(-50%, -0.5%) rotateZ(90deg);
  }

  50% {
    transform: translate(-50%, 0%) rotateZ(180deg);
  }

  75% {
    transform: translate(-50%, -0.5%) rotateZ(270deg);
  }

  100% {
    transform: translate(-50%, 0%) rotateZ(360deg);
  }
}

@keyframes translate {
  0% {
    top: -5rpx;
    opacity: 0;
  }

  25% {
    top: -25rpx;
    opacity: 0.7;
  }

  50% {
    top: -50rpx;
    opacity: 0.5;
  }

  75% {
    top: -80rpx;
    opacity: 0;
  }

  100% {
    top: -5rpx;
    opacity: 0;
  }

}