/*
 * v89 · 皇家像素级二次校准
 * 字体、按钮内部、间距、指示器、底栏和触控反馈按 428px 参考视口逐项量取。
 * 环球包网品牌、活动内容和业务功能保持不变。
 */

html body .phone-shell,
html body .phone-shell button,
html body .phone-shell input,
html body .phone-shell textarea,
html body .phone-shell select {
  font-family: "PingFang SC", PingFangSC-Regular, sans-serif !important;
  letter-spacing: normal !important;
}

/* 顶部 50.22px，Logo 使用参考页同等占位。 */
html body .phone-shell .home-view > .topbar {
  height: 50.22px !important;
  min-height: 50.22px !important;
  padding: 0 13.696px !important;
  border: 0 !important;
  background:
    radial-gradient(circle at 92% -30%, rgba(126, 35, 175, .34), transparent 43%),
    linear-gradient(90deg, rgba(17, 17, 58, .98), rgba(45, 13, 74, .94)) !important;
  box-shadow: none !important;
}

html body .phone-shell .home-view > .topbar > .brand {
  width: 131.25px !important;
  min-width: 131.25px !important;
  max-width: 131.25px !important;
  height: 40.70px !important;
  margin: 3.14px 0 0 !important;
  gap: 5.5px !important;
  align-self: flex-start !important;
}

html body .phone-shell .home-view > .topbar .brand-emblem {
  width: 40.70px !important;
  min-width: 40.70px !important;
  max-width: 40.70px !important;
  height: 40.70px !important;
}

html body .phone-shell .home-view > .topbar .brand-copy {
  width: 85.05px !important;
  min-width: 0 !important;
  height: 40.70px !important;
}

html body .phone-shell .home-view > .topbar .brand-copy strong {
  font-size: 19px !important;
  font-weight: 700 !important;
  line-height: 19px !important;
  letter-spacing: 1.15px !important;
}

html body .phone-shell .home-view > .topbar .brand-copy small {
  margin-top: 2.3px !important;
  font-size: 5.7px !important;
  line-height: 6px !important;
  letter-spacing: 1.18px !important;
}

/* 首页主内容、轮播和圆点。 */
html body .phone-shell .home-view > .home-content {
  padding: 9.131px 0 107.285px 15.979px !important;
}

html body .phone-shell .home-view .home-content > .hero {
  width: 400.62px !important;
  min-width: 400.62px !important;
  max-width: 400.62px !important;
  height: 203.15px !important;
  border-radius: 10.272px !important;
}

html body .phone-shell .home-view .home-content > .hero > .carousel {
  width: 400.62px !important;
  min-width: 400.62px !important;
  max-width: 400.62px !important;
  height: 175.76px !important;
  border-radius: 10.272px !important;
}

html body .phone-shell .home-view .home-content > .hero > .carousel > .slide,
html body .phone-shell .home-view .home-content > .hero > .carousel > .clean-banner-slide {
  width: 400.62px !important;
  min-width: 400.62px !important;
  max-width: 400.62px !important;
  height: 175.76px !important;
  flex-basis: 400.62px !important;
  border-radius: 10.272px !important;
}

html body .phone-shell .home-view .home-content > .hero > .carousel-dots {
  position: absolute !important;
  top: 173.445px !important;
  right: 0 !important;
  bottom: auto !important;
  left: 0 !important;
  width: 400.62px !important;
  height: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  margin: 0 !important;
  transform: none !important;
  z-index: 20 !important;
}

html body .phone-shell .home-view .home-content > .hero > .carousel-dots > span {
  width: 11.413px !important;
  min-width: 11.413px !important;
  height: 2.283px !important;
  margin: 0 2.283px !important;
  border-radius: 6.848px !important;
  background: rgba(255, 255, 255, .8) !important;
  box-shadow: none !important;
  opacity: .2 !important;
}

html body .phone-shell .home-view .home-content > .hero > .carousel-dots > span.active {
  width: 22.827px !important;
  min-width: 22.827px !important;
  border-radius: 4.565px !important;
  background: rgba(255, 255, 255, .2) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

/* 公告继续保留真实功能，但不占用参考布局的额外高度。 */
html body .phone-shell .home-view .home-content > .notice {
  width: 400.62px !important;
  min-width: 400.62px !important;
  max-width: 400.62px !important;
  font-family: PingFangSC-Regular, "PingFang SC", sans-serif !important;
  letter-spacing: normal !important;
  transform: translateY(-24px) !important;
  z-index: 4 !important;
}

/* 快捷入口：按钮、图标和文字内部全部按参考尺寸。 */
html body .phone-shell .home-view .home-content > .quick-grid {
  width: 412.02px !important;
  height: 82.16px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 0 !important;
  margin: 0 0 6.848px !important;
  padding: 0 17.691px 11.413px 1.712px !important;
  border-radius: 2.853px !important;
}

html body .phone-shell .home-view .home-content > .quick-grid > .quick-item {
  width: 63.91px !important;
  min-width: 63.91px !important;
  max-width: 63.91px !important;
  height: 70.76px !important;
  min-height: 70.76px !important;
  max-height: 70.76px !important;
  flex: 0 0 63.91px !important;
  gap: 0 !important;
}

html body .phone-shell .home-view .home-content > .quick-grid > .quick-item .quick-reference-icon,
html body .phone-shell .home-view .home-content > .quick-grid > .quick-item img {
  width: 50.22px !important;
  min-width: 50.22px !important;
  max-width: 50.22px !important;
  height: 50.22px !important;
  min-height: 50.22px !important;
  max-height: 50.22px !important;
  object-fit: fill !important;
}

html body .phone-shell .home-view .home-content > .quick-grid > .quick-item > span:last-child {
  height: 18.261px !important;
  margin: 2.283px 0 0 !important;
  color: rgb(230, 230, 230) !important;
  font-family: PingFangSC-Regular, "PingFang SC", sans-serif !important;
  font-size: 13.696px !important;
  font-weight: 400 !important;
  line-height: 18.261px !important;
  letter-spacing: normal !important;
  text-shadow: none !important;
}

/* 分类胶囊：字体、图标、左右留白、激活态完全对齐。 */
html body .phone-shell .home-view .home-content > .category-strip {
  width: 398.33px !important;
  height: 36.52px !important;
  min-height: 36.52px !important;
  max-height: 36.52px !important;
  margin: 0 13.696px 6.848px 0 !important;
  border: .5px solid rgba(255, 255, 255, .08) !important;
  border-radius: 114.133px !important;
  touch-action: pan-x !important;
}

html body .phone-shell .home-view .home-content > .category-strip > button.category {
  height: 31.95px !important;
  min-height: 31.95px !important;
  margin: 1.712px 2.283px !important;
  gap: 2px !important;
  padding: 0 9.131px !important;
  border-radius: 20.544px !important;
  color: rgb(178, 179, 191) !important;
  font-family: PingFangSC-Regular, "PingFang SC", sans-serif !important;
  font-size: 13.696px !important;
  font-weight: 400 !important;
  line-height: 22.827px !important;
  letter-spacing: normal !important;
}

html body .phone-shell .home-view .home-content > .category-strip > button.category.active {
  background: linear-gradient(175deg, rgba(33, 22, 39, .12), rgba(252, 245, 255, .12)) !important;
  color: #fff !important;
  font-family: PingFangSC-Semibold, "PingFang SC", sans-serif !important;
  font-weight: 600 !important;
  gap: 0 !important;
}

html body .phone-shell .home-view .home-content > .category-strip > button.category img {
  width: 14px !important;
  height: 14px !important;
}

html body .phone-shell .home-view .home-content > .category-strip > button.category .home-tab-icon {
  width: 18px !important;
  min-width: 18px !important;
  height: 14px !important;
  padding-right: 4px !important;
  color: #fff !important;
}

html body .phone-shell .home-view .home-content > .category-strip > button.category .home-tab-icon svg {
  width: 14px !important;
  height: 14px !important;
  color: #fff !important;
  fill: none !important;
  stroke: currentColor !important;
}

/* 游戏分区标题、箭头和图片卡。 */
html body .phone-shell .home-view .lobby-section,
html body .phone-shell .home-view .section-heading-row {
  min-height: 0 !important;
}

html body .phone-shell .home-view .section-heading-row {
  width: 412.02px !important;
  height: 45.653px !important;
}

html body .phone-shell .home-view .section-title {
  height: 45.653px !important;
  gap: 0 !important;
}

html body .phone-shell .home-view .section-title > .title-badge {
  width: 22.827px !important;
  min-width: 22.827px !important;
  height: 22.827px !important;
  border-radius: 4.565px !important;
}

html body .phone-shell .home-view .section-title > strong {
  min-width: 0 !important;
  height: 45.653px !important;
  padding: 0 0 0 6.848px !important;
  background: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: PingFangSC-Semibold, "PingFang SC", sans-serif !important;
  font-size: 18.261px !important;
  font-weight: 600 !important;
  line-height: 45.653px !important;
  letter-spacing: normal !important;
  text-shadow: none !important;
}

html body .phone-shell .home-view .section-title > i {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 18.261px !important;
  line-height: 45.653px !important;
}

html body .phone-shell .home-view .section-nav-buttons {
  gap: 0 !important;
  margin-right: 9.131px !important;
}

html body .phone-shell .home-view .section-nav-buttons > button {
  width: 31.957px !important;
  min-width: 31.957px !important;
  height: 31.957px !important;
  border-radius: 4.565px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 18px !important;
  line-height: 31.957px !important;
}

html body .phone-shell .home-view .section-nav-buttons > button + button {
  margin-left: -2.283px !important;
}

html body .phone-shell .home-view .hot-card {
  width: 89.02px !important;
  min-width: 89.02px !important;
  max-width: 89.02px !important;
  height: 118.70px !important;
  flex-basis: 89.02px !important;
  margin-right: 0 !important;
  border-radius: 6.848px !important;
}

html body .phone-shell .home-view .hot-row {
  gap: 6.848px !important;
}

html body .phone-shell .home-view .media-card {
  width: 120.98px !important;
  min-width: 120.98px !important;
  max-width: 120.98px !important;
  height: 118.70px !important;
  flex-basis: 120.98px !important;
  border-radius: 6.848px !important;
}

html body .phone-shell .home-view .media-row {
  gap: 9.131px !important;
}

/* 底部按钮内部：外框、五格、图标和字体按参考值。 */
html body .phone-shell > nav.bottom-nav {
  width: 400.60px !important;
  min-width: 400.60px !important;
  max-width: 400.60px !important;
  height: 63.91px !important;
  min-height: 63.91px !important;
  max-height: 63.91px !important;
  bottom: 27.39px !important;
  padding: 0 !important;
  border-radius: 31.957px !important;
  background: linear-gradient(rgba(64, 47, 71, .12), rgba(28, 4, 40, .12)) !important;
  box-shadow: inset 0 0 0 1.141px rgba(255, 255, 255, .20) !important;
  backdrop-filter: blur(28.533px) !important;
  -webkit-backdrop-filter: blur(28.533px) !important;
}

html body .phone-shell > nav.bottom-nav > button.bottom-item,
html body .phone-shell > nav.bottom-nav > button.bottom-item.active {
  position: relative !important;
  width: auto !important;
  min-width: 0 !important;
  height: 54.78px !important;
  margin: 4.565px !important;
  padding: 0 !important;
  gap: 0 !important;
  border-radius: 27.392px !important;
  background: transparent !important;
  color: rgb(206, 206, 217) !important;
  font-family: "PingFang SC", sans-serif !important;
  font-size: 13.696px !important;
  font-weight: 400 !important;
  line-height: 13.696px !important;
  transform: none !important;
}

html body .phone-shell > nav.bottom-nav > button.bottom-item.active {
  background: rgba(255, 255, 255, .14) !important;
  color: #fff !important;
}

html body .phone-shell > nav.bottom-nav > button.bottom-item.active::before {
  display: none !important;
}

html body .phone-shell > nav.bottom-nav > button.bottom-item > svg,
html body .phone-shell > nav.bottom-nav > button.bottom-item > img,
html body .phone-shell > nav.bottom-nav > button.bottom-item > i {
  position: absolute !important;
  top: 7.25px !important;
  left: 50% !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  color: currentColor !important;
  fill: none !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  filter: none !important;
  transform: translateX(-50%) !important;
}

html body .phone-shell > nav.bottom-nav > button.bottom-item > strong {
  position: absolute !important;
  right: auto !important;
  bottom: 5.71px !important;
  left: 50% !important;
  width: 27.392px !important;
  height: 13.696px !important;
  color: currentColor !important;
  font-family: "PingFang SC", sans-serif !important;
  font-size: 13.696px !important;
  font-weight: 400 !important;
  line-height: 13.696px !important;
  letter-spacing: normal !important;
  text-align: center !important;
  transform: translateX(-50%) !important;
}

/* 触控：即时响应，不闪色、不上下跳；游戏横排只允许横向手势。 */
html body .phone-shell button,
html body .phone-shell .clickable {
  transition: transform 45ms linear, filter 45ms linear, background-color 70ms ease-out, opacity 70ms ease-out !important;
  -webkit-tap-highlight-color: transparent !important;
}

html body .phone-shell .horizontal-row,
html body .phone-shell .category-strip {
  overflow-y: hidden !important;
  touch-action: pan-x !important;
  overscroll-behavior-x: contain !important;
  scroll-behavior: auto !important;
}

html body .phone-shell button:active,
html body .phone-shell .clickable:active {
  transform: scale(.985) !important;
  filter: brightness(.93) !important;
}

html::after {
  content: "GLOBAL_ROYAL_EXACT_v89" !important;
}

@media (max-width: 390px) {
  html body .phone-shell .home-view > .topbar {
    padding-right: 9px !important;
    padding-left: 9px !important;
  }

  html body .phone-shell .home-view > .topbar > .brand {
    width: 122px !important;
    min-width: 122px !important;
    max-width: 122px !important;
  }

  html body .phone-shell .home-view > .topbar .brand-emblem {
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    height: 38px !important;
  }

  html body .phone-shell .home-view > .topbar .brand-copy strong {
    font-size: 17.5px !important;
  }

  html body .phone-shell .home-view > .home-content {
    padding-left: 12px !important;
  }

  html body .phone-shell .home-view .home-content > .hero,
  html body .phone-shell .home-view .home-content > .hero > .carousel,
  html body .phone-shell .home-view .home-content > .notice {
    width: calc(100vw - 24px) !important;
    min-width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }

  html body .phone-shell .home-view .home-content > .hero > .carousel > .slide,
  html body .phone-shell .home-view .home-content > .hero > .carousel > .clean-banner-slide {
    width: calc(100vw - 24px) !important;
    min-width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    flex-basis: calc(100vw - 24px) !important;
  }

  html body .phone-shell .home-view .home-content > .hero > .carousel-dots {
    width: calc(100vw - 24px) !important;
  }

  html body .phone-shell .home-view .home-content > .quick-grid,
  html body .phone-shell .home-view .section-heading-row {
    width: calc(100vw - 12px) !important;
  }

  html body .phone-shell .home-view .home-content > .category-strip {
    width: calc(100vw - 24px) !important;
  }

  html body .phone-shell > nav.bottom-nav {
    width: calc(100vw - 27.4px) !important;
    min-width: calc(100vw - 27.4px) !important;
    max-width: calc(100vw - 27.4px) !important;
  }
}
