.is-pwa .pwa-bottom-padding {
  padding-bottom: var(--safe-bottom);
}

.is-pwa .pwa-bottom-margin {
  margin-bottom: var(--safe-bottom);
}

.loaderWrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 101;
  display: none;
  justify-content: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.6);
}

.loaderWrap.show {
  display: flex;
}

.loaderFirst {
  width: 40px;
  height: 40px;
  aspect-ratio: 1;
  /* 定义径向渐变背景图案 */
  --_s: no-repeat radial-gradient(farthest-side, #fff 94%, #0000);
  background:
    var(--_s) 0 0,
    var(--_s) 100% 0,
    var(--_s) 100% 100%,
    var(--_s) 0 100%;
  background-size: 40% 40%;
  animation: l50 0.5s infinite;
  opacity: 0.6;
}

/* 定义动画关键帧 */
@keyframes l50 {
  100% {
    background-position:
      100% 0,
      100% 100%,
      0 100%,
      0 0;
  }
}