/* 手机端统一导航 */
.nav-toggle {
  position: absolute;
  left: 3.3926rem;
  top: 0.23rem;
  width: 0.2474rem;
  height: 0.245rem;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  z-index: 1004;
}

.nav-toggle img {
  width: 100%;
  height: 100%;
  display: block;
}

.header:not(.mobile-fixed-header),
.layer.header {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1002;
}

/* index.html 顶部固定导航 */
.dual-mobile .mobile-fixed-header {
  position: fixed !important;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 3.75rem;
  height: 0.7rem;
  z-index: 1002;
  overflow: visible;
  box-sizing: border-box;
}

.dual-mobile .mobile-fixed-header .header-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 3.75rem;
  height: 0.7rem;
}

.dual-mobile .mobile-fixed-header .logo {
  position: absolute;
  left: 0.03rem;
  top: 0.03rem;
  width: 1.03rem;
  height: 0.67rem;
}

.dual-mobile .mobile-fixed-header .title {
  position: absolute;
  left: 1.08rem;
  top: 0.15rem;
  font-size: 0.15rem;
  line-height: 1;
  color: #ffffff;
  white-space: nowrap;
}

.dual-mobile .mobile-fixed-header .subtitle {
  position: absolute;
  left: 1.08rem;
  top: 0.42rem;
  font-size: 0.12rem;
  line-height: 1;
  color: #ffffff;
  white-space: nowrap;
}

.dual-mobile .mobile-fixed-header .nav-toggle {
  position: absolute;
  left: 3.3926rem;
  top: 0.23rem;
}

.dual-mobile a.logo,
.dual-mobile a.layer.logo {
  display: block;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.dual-mobile a.logo img,
.dual-mobile a.layer.logo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

body.menu-open {
  overflow: hidden;
}

.mobile-menu-overlay {
  position: fixed;
  top: .7rem;
  width: 100%;
  height: calc(100vh - 0.7rem);
  z-index: 1003;
  display: none;
  /* align-items: center; */
  justify-content: center;
  background: rgba(0, 0, 0, 0.72);
  padding: 0 0 0.6rem;
  box-sizing: border-box;
}

.mobile-menu-overlay.is-open {
  display: flex;
}

.mobile-menu {
  width: 100%;
  max-width: 3.75rem;
  margin: 0 auto;
  padding: 0 0.48rem;
  box-sizing: border-box;
}

.mobile-menu-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  padding: 0.26rem 0;
  text-decoration: none;
  color: #ffffff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  -webkit-tap-highlight-color: transparent;
  transition: opacity 0.2s ease;
  white-space: nowrap;
}

.mobile-menu-item:first-child {
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.mobile-menu-item:active {
  opacity: 0.75;
}

.mobile-menu-item.active .mobile-menu-cn,
.mobile-menu-item.active .mobile-menu-en {
  color: #7ec4ff;
}

.mobile-menu-cn {
  font-family: var(--font-serif);
  font-size: 0.22rem;
  line-height: 1;
  color: #ffffff;
}

.mobile-menu-en {
  font-family: var(--font-serif);
  font-size: 0.14rem;
  line-height: 1;
  letter-spacing: 0.02rem;
  color: rgba(255, 255, 255, 0.82);
}

/* 底部下一页箭头（全站统一：210×170 @2x → 105×85） */
.dual-mobile .page {
  position: relative;
}

.dual-mobile .bottom:not(.mobile-home-next) {
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: max(0.12rem, env(safe-area-inset-bottom, 0px));
  top: auto !important;
  width: 1.05rem;
  height: 0.85rem;
  margin: 0 auto;
  transform: none;
  z-index: 25;
  display: block;
  text-decoration: none;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
}

.dual-mobile .bottom-img {
  display: block;
  width: 1.05rem;
  height: 0.85rem;
  object-fit: contain;
  filter: drop-shadow(0 0 0.06rem rgba(80, 180, 255, 0.85));
}

.dual-mobile .bottom .bottom-img.m-anim-bounce,
.dual-mobile .bottom-img.m-anim-bounce {
  animation: mArrowBounce 1.6s ease-in-out infinite;
  transform-origin: center center;
}

html.embedded .dual-mobile .bottom {
  position: fixed !important;
  left: 0;
  right: 0;
  bottom: max(0.12rem, env(safe-area-inset-bottom, 0px));
  z-index: 100;
}

/* 首页下箭头：fixed 于视口底部，避免 swiper transform 影响定位 */
.dual-mobile .mobile-home-next {
  display: none;
  position: fixed !important;
  left: 50%;
  bottom: calc(max(0.12rem, env(safe-area-inset-bottom, 0px)) - 20px);
  top: auto !important;
  transform: translateX(-50%);
  width: 1.05rem;
  height: 0.85rem;
  margin: 0;
  z-index: 1001;
  text-decoration: none;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
}

html[data-mobile-page="home"] .dual-mobile .mobile-home-next {
  display: block;
}

html.embedded .nav-toggle,
html.embedded .header,
html.embedded .layer.header,
html.embedded .mobile-menu-overlay {
  display: none !important;
}
