
/* Consolidated app3 presentation. Download and platform-routing logic is unchanged. */
:root {
  --app-viewport-top: 0px;
  --app-viewport-height: 100vh;
  --browser-bottom-offset: 0px;
  --app3-top-height: 18.5333vw;
  --app3-bottom-height: 22.6667vw;
}

@supports (height: 100dvh) {
  :root {
    --app-viewport-height: 100dvh;
  }
}

* {
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "PingFang SC",
    "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  -webkit-tap-highlight-color: transparent;
}

html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  background: #000;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

a,
button,
.click-but-dow,
img[onclick] {
  cursor: pointer;
  touch-action: manipulation;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: top;
}

p {
  margin: 0;
  padding: 0;
}

#azwangye3.dow-nav,
.app3-top-ad {
  position: fixed !important;
  top: var(--app-viewport-top, 0px) !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 2147482999 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: var(--app3-top-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #000 !important;
}

.app3-top-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill;
}

#azwangye3.dow-nav::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.downssa {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  margin: var(--app3-top-height) 0
    calc(
      var(--app3-bottom-height) + var(--browser-bottom-offset, 0px) +
        env(safe-area-inset-bottom, 0px)
    ) !important;
  padding: 0 !important;
  background: #000 !important;
  touch-action: pan-y;
}

.downssa > img:not(.app3-keep-img) {
  display: none !important;
}

.downssa::before {
  display: none !important;
}

.app3-bg-img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.app3-title {
  position: absolute !important;
  top: 20.5vw !important;
  left: 10% !important;
  z-index: 2 !important;
  width: 80% !important;
}

.app3-mf {
  position: absolute !important;
  top: 153.5vw !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 2 !important;
  width: 100% !important;
  margin: auto !important;
}

.app3-title img,
.app3-mf img,
.app3-bottom-buttons img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

#xiayi,
.dow-nav-foot {
  position: fixed !important;
  right: 0 !important;
  bottom: calc(
    var(--browser-bottom-offset, 0px) + env(safe-area-inset-bottom, 0px)
  ) !important;
  left: 0 !important;
  z-index: 2147483000 !important;
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: none !important;
  height: var(--app3-bottom-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 1 !important;
  background: #000 !important;
}

.app3-bottom-bg-link,
.app3-bottom-img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
}

.app3-bottom-bg-link {
  display: block !important;
}

.app3-bottom-img {
  object-fit: fill;
}

#xiayi #dianji2,
#xiayi .dow-nav-butq,
.dow-nav-foot #dianji2,
.dow-nav-foot .dow-nav-butq {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.app3-bottom-buttons {
  position: absolute !important;
  right: 0 !important;
  bottom: 8vw !important;
  left: 0 !important;
  z-index: 3 !important;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: flex !important;
  visibility: visible !important;
  align-items: flex-start !important;
  justify-content: space-around !important;
  width: 100% !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.app3-bottom-buttons a {
  display: block !important;
  visibility: visible !important;
  width: 40% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 1 !important;
  background: transparent !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-animation: downloadImageButtonBreath 1.35s ease-in-out infinite;
  animation: downloadImageButtonBreath 1.35s ease-in-out infinite;
  will-change: transform, filter;
}

.app3-bottom-buttons img {
  pointer-events: none !important;
}

.app3-install-links {
  position: absolute !important;
  right: 0 !important;
  bottom: 2.6667vw !important;
  left: 0 !important;
  z-index: 3 !important;
  display: none !important;
  align-items: flex-start !important;
  justify-content: space-around !important;
  width: 100% !important;
}

.app3-install-links a {
  color: #fff !important;
  font-size: 3.7333vw !important;
  line-height: 4.8vw !important;
  white-space: nowrap !important;
}

.app3-install-popup {
  position: fixed !important;
  top: var(--app-viewport-top, 0px) !important;
  left: 0 !important;
  z-index: 2147483002 !important;
  width: 100% !important;
  max-width: none !important;
  height: var(--app-viewport-height, 100vh) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: rgba(0, 0, 0, .36) !important;
  -webkit-overflow-scrolling: touch;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  transform: none !important;
}

.app3-install-close {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 90% !important;
  padding: 2.6667vw !important;
  color: #fff !important;
  background: rgba(143, 7, 49, .9) !important;
}

.app3-install-popup img {
  width: 90% !important;
  height: auto !important;
}

#dibu,
.dow-nav-foots {
  position: fixed !important;
  top: calc(
    var(--app-viewport-top, 0px) + var(--app-viewport-height, 100vh) / 2
  ) !important;
  right: 0 !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 2147483001 !important;
  /* Hidden until the existing configuration logic explicitly enables it. */
  display: none !important;
  box-sizing: border-box !important;
  width: calc(1.10rem + .18rem) !important;
  max-width: none !important;
  height: auto !important;
  max-height: calc(var(--app-viewport-height, 100vh) - 16px) !important;
  padding: .16rem .05rem .16rem .13rem !important;
  overflow: hidden !important;
  border-radius: .37rem 0 0 .37rem !important;
  background: rgba(96, 12, 28, .78) !important;
  box-shadow: 0 .48rem 1.2rem rgba(0, 0, 0, .28) !important;
  -webkit-backdrop-filter: blur(.3195rem);
  backdrop-filter: blur(.3195rem);
  -webkit-transform: translateY(-50%) !important;
  transform: translateY(-50%) !important;
}

#dibu .dow-nav-buts,
#dibu .dow-nav-wybuts,
#dibu #azwangye1,
.dow-nav-foots .dow-nav-buts,
.dow-nav-foots .dow-nav-wybuts {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box !important;
  width: 1.10rem !important;
  height: min(
    2.58rem,
    calc((var(--app-viewport-height, 100vh) - .64rem - 20px) / 2)
  ) !important;
  min-height: 1.5rem;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  float: none !important;
  border: .02rem solid rgba(255, 255, 255, .36) !important;
  border-radius: .37rem 0 0 .37rem !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: #fff !important;
  background: linear-gradient(135deg, #ff6b6b 0%, #e1223f 52%, #9b0d25 100%) !important;
  box-shadow: 0 .17rem .37rem rgba(225, 34, 63, .36) !important;
  font-size: .37rem !important;
  font-weight: 700 !important;
  line-height: 1.10rem !important;
  text-align: center !important;
  text-indent: 0 !important;
  letter-spacing: .02rem !important;
  writing-mode: vertical-rl !important;
  -webkit-writing-mode: vertical-rl !important;
  text-orientation: upright !important;
}

#dibu .dow-nav-wybuts,
#dibu #azwangye1,
.dow-nav-foots .dow-nav-wybuts {
  margin-top: .16rem !important;
  background: linear-gradient(135deg, #9b0d25 0%, #e1223f 48%, #ff6b6b 100%) !important;
}

#dibu .dow-nav-buts:active,
#dibu .dow-nav-wybuts:active,
.dow-nav-foots .dow-nav-buts:active,
.dow-nav-foots .dow-nav-wybuts:active {
  -webkit-transform: translateX(-.08rem);
  transform: translateX(-.08rem);
}

.van-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 70%;
  min-width: 0;
  max-width: 310px;
  padding: 0;
  overflow: visible;
  border-radius: 22px;
  color: #fff;
  background: linear-gradient(135deg, #e84c59 0%, #e95451 100%);
  box-shadow: 0 18px 44px rgba(232, 76, 89, .34), inset 0 1px 0 rgba(255, 255, 255, .18);
  font-size: 16px;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}

#android_text::before {
  content: "";
  position: absolute;
  inset: -999px;
  z-index: -1;
  background: rgba(0, 0, 0, .42);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

#android_text .van-dialog__content {
  position: relative;
  display: block;
  padding: 28px 20px 22px;
  text-align: center;
}

#android_text .download-status {
  position: relative;
  width: 76px;
  height: 76px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, .22), rgba(255, 255, 255, .07));
  box-shadow: 0 0 0 8px rgba(255, 255, 255, .07);
}

#android_text .download-status::before {
  content: "";
  position: absolute;
  inset: -5px;
  border: 2px solid rgba(255, 255, 255, .16);
  border-top-color: rgba(255, 255, 255, .88);
  border-radius: inherit;
  -webkit-animation: downloadSpin .9s linear infinite;
  animation: downloadSpin .9s linear infinite;
}

#android_text .loadingimg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 42px;
  height: 42px;
  margin: 0;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .18);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#android_text .download-title {
  margin: 0;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
}

#android_text .download-desc {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, .8);
  font-size: 13px;
  line-height: 20px;
}

body.ios-download-loading #android_text,
html[data-dpr="2"] body.ios-download-loading #android_text,
html[data-dpr="3"] body.ios-download-loading #android_text {
  width: 70% !important;
  min-width: 0 !important;
  max-width: 310px !important;
  border-radius: 16px !important;
}

#download_fallback_mask {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: none;
  background: rgba(0, 0, 0, .58);
}

#download_fallback_panel {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 3001;
  display: none;
  width: 88vw;
  min-width: 0;
  max-width: 330px;
  padding: 20px 16px 18px;
  border: 0;
  border-radius: 14px;
  color: #111;
  background: #fff;
  text-align: center;
  box-shadow: 0 16px 44px rgba(0, 0, 0, .26);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#download_fallback_panel .fallback-title {
  margin: 0 0 8px;
  color: #111;
  font-size: clamp(18px, 5.2vw, 22px);
  font-weight: 700;
  line-height: 1.35;
}

#download_fallback_panel .fallback-desc {
  margin: 0 0 16px;
  color: #666;
  font-size: clamp(13px, 3.6vw, 15px);
  line-height: 1.55;
}

#download_fallback_panel .fallback-btn {
  display: block;
  width: 100%;
  min-height: 44px;
  margin-top: 10px;
  border-radius: 8px;
  color: #fff !important;
  background: #f04444;
  font-size: clamp(15px, 4.3vw, 17px);
  font-weight: 700;
  line-height: 44px;
  text-align: center;
}

#download_fallback_panel .fallback-btn:last-child {
  background: #222;
}

@media (orientation: landscape) and (max-height: 420px) {
  :root {
    --app3-top-height: min(18.5333vw, 28vh);
    --app3-bottom-height: min(22.6667vw, 34vh);
  }
}

@-webkit-keyframes downloadSpin {
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}

@keyframes downloadSpin {
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}

@-webkit-keyframes downloadImageButtonBreath {
  0%,
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: brightness(1);
    filter: brightness(1);
  }
  50% {
    -webkit-transform: scale(1.06);
    transform: scale(1.06);
    -webkit-filter: brightness(1.1);
    filter: brightness(1.1);
  }
}

@keyframes downloadImageButtonBreath {
  0%,
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: brightness(1);
    filter: brightness(1);
  }
  50% {
    -webkit-transform: scale(1.06);
    transform: scale(1.06);
    -webkit-filter: brightness(1.1);
    filter: brightness(1.1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .app3-bottom-buttons a,
  #android_text .download-status::before {
    -webkit-animation: none;
    animation: none;
  }
}
  
/* Shared native-click additions for PHP-routed landing pages. */
.landing-trigger { cursor: pointer; }
#dibu[style*="display: none"] { display: none !important; }
#azwangye1[style*="display: none"] { display: none !important; }
.dow-nav-buts, .dow-nav-wybuts { white-space: normal; }
.u-dialog-hidden {
  display: none;
}

.landing-dialog-mask {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1000;
  background: rgba(0, 0, 0, .56);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
}

.landing-dialog-progress {
  pointer-events: none;
}

.landing-dialog-backup {
  pointer-events: auto;
}

.landing-dialog {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 7.15rem;
  margin: 0 0 0 -3.575rem;
  padding: 0 .42rem;
  overflow: hidden;
  border: .02rem solid rgba(255, 70, 170, .22);
  border-radius: .2rem;
  background: rgba(20, 3, 16, .9);
  color: #fff;
  text-align: center;
  box-shadow: 0 .24rem .7rem rgba(0, 0, 0, .62), 0 0 .3rem rgba(216, 22, 145, .24);
}

.landing-dialog-inner {
  display: table-cell;
  width: 6.31rem;
  height: 4.18rem;
  vertical-align: middle;
}

.landing-dialog:before {
  content: "";
  position: absolute;
  left: .42rem;
  right: .42rem;
  top: 0;
  height: .035rem;
  background: -webkit-linear-gradient(left, rgba(216, 22, 145, 0), rgba(255, 45, 157, .72), rgba(255, 255, 255, .34), rgba(216, 22, 145, 0));
  background: linear-gradient(90deg, rgba(216, 22, 145, 0), rgba(255, 45, 157, .72), rgba(255, 255, 255, .34), rgba(216, 22, 145, 0));
}

.landing-progress-dialog {
  height: 4.18rem;
  margin-top: -2.09rem;
}

.landing-backup-dialog {
  height: 4.18rem;
  margin-top: -2.09rem;
  padding: 0 .52rem;
}

.landing-backup-dialog .landing-dialog-inner {
  width: 6.11rem;
}

.landing-backup-dialog .landing-dialog-title {
  margin: 0 0 .12rem;
  font-size: .42rem;
  line-height: .54rem;
}

.landing-backup-dialog .landing-dialog-desc {
  width: 5.85rem;
  margin: 0 auto .28rem;
  font-size: .255rem;
  line-height: .36rem;
}

.landing-backup-dialog .landing-dialog-primary {
  width: 5.12rem;
  height: .84rem;
  margin: 0 auto .24rem;
  border-radius: .44rem;
  font-size: .34rem;
  line-height: .84rem;
}

.landing-backup-dialog .landing-dialog-close {
  height: .46rem;
  font-size: .255rem;
  line-height: .46rem;
}

.landing-spinner {
  position: relative;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0 auto .24rem;
  border: .035rem solid rgba(255, 255, 255, .22);
  border-radius: 50%;
  background: rgba(255, 255, 255, .03);
  box-shadow: 0 0 0 .07rem rgba(255, 45, 157, .1), 0 0 .18rem rgba(240, 45, 143, .38);
}

.landing-spinner:before {
  content: "";
  position: absolute;
  left: -.035rem;
  right: -.035rem;
  top: -.035rem;
  bottom: -.035rem;
  border: .055rem solid transparent;
  border-top-color: #ff2a9d;
  border-right-color: rgba(255, 255, 255, .95);
  border-bottom-color: rgba(255, 205, 232, .48);
  border-radius: 50%;
  -webkit-animation: landing-spin .78s linear infinite;
  animation: landing-spin .78s linear infinite;
}

.landing-spinner i {
  position: absolute;
  left: 50%;
  top: 50%;
  width: .04rem;
  height: .16rem;
  margin: -.37rem 0 0 -.02rem;
  border-radius: .04rem;
  background: rgba(255, 255, 255, .18);
  -webkit-transform-origin: .02rem .37rem;
  transform-origin: .02rem .37rem;
  -webkit-animation: landing-pulse 1s linear infinite;
  animation: landing-pulse 1s linear infinite;
}

.landing-spinner i:nth-child(1) { -webkit-transform: rotate(0deg); transform: rotate(0deg); -webkit-animation-delay: -.92s; animation-delay: -.92s; }
.landing-spinner i:nth-child(2) { -webkit-transform: rotate(30deg); transform: rotate(30deg); -webkit-animation-delay: -.84s; animation-delay: -.84s; }
.landing-spinner i:nth-child(3) { -webkit-transform: rotate(60deg); transform: rotate(60deg); -webkit-animation-delay: -.76s; animation-delay: -.76s; }
.landing-spinner i:nth-child(4) { -webkit-transform: rotate(90deg); transform: rotate(90deg); -webkit-animation-delay: -.68s; animation-delay: -.68s; }
.landing-spinner i:nth-child(5) { -webkit-transform: rotate(120deg); transform: rotate(120deg); -webkit-animation-delay: -.6s; animation-delay: -.6s; }
.landing-spinner i:nth-child(6) { -webkit-transform: rotate(150deg); transform: rotate(150deg); -webkit-animation-delay: -.52s; animation-delay: -.52s; }
.landing-spinner i:nth-child(7) { -webkit-transform: rotate(180deg); transform: rotate(180deg); -webkit-animation-delay: -.44s; animation-delay: -.44s; }
.landing-spinner i:nth-child(8) { -webkit-transform: rotate(210deg); transform: rotate(210deg); -webkit-animation-delay: -.36s; animation-delay: -.36s; }
.landing-spinner i:nth-child(9) { -webkit-transform: rotate(240deg); transform: rotate(240deg); -webkit-animation-delay: -.28s; animation-delay: -.28s; }
.landing-spinner i:nth-child(10) { -webkit-transform: rotate(270deg); transform: rotate(270deg); -webkit-animation-delay: -.2s; animation-delay: -.2s; }
.landing-spinner i:nth-child(11) { -webkit-transform: rotate(300deg); transform: rotate(300deg); -webkit-animation-delay: -.12s; animation-delay: -.12s; }
.landing-spinner i:nth-child(12) { -webkit-transform: rotate(330deg); transform: rotate(330deg); -webkit-animation-delay: -.04s; animation-delay: -.04s; }

@-webkit-keyframes landing-pulse {
  0% { opacity: 1; background: #fff; }
  100% { opacity: .18; background: rgba(255, 255, 255, .18); }
}

@keyframes landing-pulse {
  0% { opacity: 1; background: #fff; }
  100% { opacity: .18; background: rgba(255, 255, 255, .18); }
}

@-webkit-keyframes landing-spin {
  from { -webkit-transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg); }
}

@keyframes landing-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.landing-dialog-title {
  margin: 0 0 .12rem;
  font-size: .44rem;
  font-weight: bold;
  line-height: .58rem;
  color: #fff;
  text-shadow: 0 .02rem .08rem rgba(240, 45, 143, .45);
}

.landing-dialog-desc {
  margin: 0 auto;
  color: rgba(255, 232, 246, .8);
  font-size: .25rem;
  line-height: .36rem;
}

.landing-dialog-primary {
  display: block;
  width: 5.3rem;
  height: .96rem;
  margin: .08rem auto .22rem;
  border-radius: .5rem;
  background: #f02d8f;
  color: #fff;
  font-size: .38rem;
  font-weight: bold;
  line-height: .96rem;
  text-align: center;
  box-shadow: 0 .08rem .22rem rgba(240, 45, 143, .38);
}

.landing-dialog-close {
  display: block;
  width: 2.2rem;
  height: .58rem;
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(255, 221, 240, .72);
  font-size: .3rem;
  line-height: .58rem;
}
