/** mixins **/

.top-bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  z-index: 99;
}

.top-bar #logo {
  width: 1.98rem;
  height: 1.35rem;
  position: absolute;
  left: 0.55rem;
  top: 0.16rem;
}

.top-bar #logo img {
  width: 1.98rem;
  height: 1.35rem;
  -o-object-fit: contain;
  object-fit: contain;
}

.top-bar.scrolled::before {
  position: absolute;
  display: block;
  content: '';
  width: 25.18rem;
  height: 0.8rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/bg_54cd27f1.png) no-repeat;
  background-size: 100% 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.top-bar nav {
  margin-left: 3.32rem;
}

.top-bar nav ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.top-bar nav ul li {
  margin-right: 1.26rem;
  text-transform: uppercase;
  font-size: 0.28rem;
  font-weight: bold;
  color: #a1baff;
}

.top-bar nav ul li a {
  display: block;
  position: relative;
  -webkit-perspective: 5rem;
  perspective: 5rem;
}

.top-bar nav ul li a span {
  display: block;
}

.top-bar nav ul li a span:nth-child(1) {
  display: block;
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform-origin: center center -0.1rem;
  transform-origin: center center -0.1rem;
}

.top-bar nav ul li a span:nth-child(2) {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, right top, from(#f8b7cf), color-stop(#bab2fb), to(#b5c4fd));
  background: linear-gradient(to right, #f8b7cf, #bab2fb, #b5c4fd);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform-origin: center center -0.1rem;
  transform-origin: center center -0.1rem;
}

.top-bar nav ul li a:hover span:nth-child(1) {
  opacity: 0;
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
}

.top-bar nav ul li a:hover span:nth-child(2) {
  opacity: 1;
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}

.top-bar nav ul li a.active span:nth-child(1) {
  opacity: 0;
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(-90deg);
}

.top-bar nav ul li a.active span:nth-child(2) {
  opacity: 1;
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}

.top-bar nav ul li a.active::after,
.top-bar nav ul li a.active::before {
  display: block;
  content: '';
  position: absolute;
}

.top-bar nav ul li a.active::before {
  left: 0;
  top: 50%;
  margin-left: -0.52rem;
  margin-top: -0.13rem;
  width: 0.26rem;
  height: 0.26rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -1.25rem -1.5rem;
  -webkit-animation: z_i_3_hecheng_1_000_transform_bezier_anim 0.333s 0s both;
  animation: z_i_3_hecheng_1_000_transform_bezier_anim 0.333s 0s both;
}

.top-bar nav ul li a.active::after {
  right: 0;
  top: 50%;
  margin-right: -0.52rem;
  margin-top: -0.13rem;
  width: 0.26rem;
  height: 0.26rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -1.55rem -1.5rem;
  -webkit-animation: z_i_3_hecheng_1_000_transform_bezier_anim 0.333s 0s both;
  animation: z_i_3_hecheng_1_000_transform_bezier_anim 0.333s 0s both;
}

@-webkit-keyframes z_i_3_hecheng_1_000_transform_bezier_anim {
  0% {
    -webkit-transform: rotate(0deg) scale(0, 0);
    transform: rotate(0deg) scale(0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.33, 0, 0.67, 1);
    animation-timing-function: cubic-bezier(0.33, 0, 0.67, 1);
  }

  80% {
    -webkit-transform: rotate(180deg) scale(1, 1);
    transform: rotate(180deg) scale(1, 1);
    -webkit-animation-timing-function: cubic-bezier(0, 0, 1, 1);
    animation-timing-function: cubic-bezier(0, 0, 1, 1);
  }

  100% {
    -webkit-transform: rotate(180deg) scale(1, 1);
    transform: rotate(180deg) scale(1, 1);
  }
}

@keyframes z_i_3_hecheng_1_000_transform_bezier_anim {
  0% {
    -webkit-transform: rotate(0deg) scale(0, 0);
    transform: rotate(0deg) scale(0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.33, 0, 0.67, 1);
    animation-timing-function: cubic-bezier(0.33, 0, 0.67, 1);
  }

  80% {
    -webkit-transform: rotate(180deg) scale(1, 1);
    transform: rotate(180deg) scale(1, 1);
    -webkit-animation-timing-function: cubic-bezier(0, 0, 1, 1);
    animation-timing-function: cubic-bezier(0, 0, 1, 1);
  }

  100% {
    -webkit-transform: rotate(180deg) scale(1, 1);
    transform: rotate(180deg) scale(1, 1);
  }
}

.top-bar .right-section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: 0.65rem;
}

.top-bar .right-section .social-media {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 0.28rem;
  position: relative;
}

.top-bar .right-section .social-media a {
  position: relative;
  display: block;
  margin-right: 0.42rem;
}

.top-bar .right-section .social-media a:hover .qrcode-box {
  display: block;
}

.top-bar .right-section .social-media a:hover .qrcode-box .z_texiao_000-under-svg {
  -webkit-animation: sprite_z_texiao_000 0.8s 0s steps(1) both;
  animation: sprite_z_texiao_000 0.8s 0s steps(1) both;
}

.top-bar .right-section .social-media a:hover .qrcode-box .z_erweimashiyi_000 {
  -webkit-animation: z_erweimashiyi_000_anim 0.8s 0s linear both, z_erweimashiyi_000_transform_bezier_anim 0.8s 0s both;
  animation: z_erweimashiyi_000_anim 0.8s 0s linear both, z_erweimashiyi_000_transform_bezier_anim 0.8s 0s both;
}

.top-bar .right-section .social-media a:last-child {
  margin-right: 0;
}

.top-bar .right-section .social-media a .icon {
  display: block;
}

.top-bar .right-section .social-media a .icon-xhs {
  width: 0.4rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -2.38rem -0.45rem;
}

.top-bar .right-section .social-media a .icon-xhs:hover {
  width: 0.39rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -2.38rem -0.89rem;
}

.top-bar .right-section .social-media a .icon-wx {
  width: 0.48rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -1.86rem -0;
}

.top-bar .right-section .social-media a .icon-wx:hover {
  width: 0.48rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -1.86rem -0.44rem;
}

.top-bar .right-section .social-media a .icon-qq {
  width: 0.33rem;
  height: 0.39rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -0.51rem -1.5rem;
}

.top-bar .right-section .social-media a .icon-qq:hover {
  width: 0.33rem;
  height: 0.39rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -0.88rem -1.5rem;
}

.top-bar .right-section .social-media a .icon-douyin {
  width: 0.34rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -2.38rem -1.33rem;
}

.top-bar .right-section .social-media a .icon-douyin:hover {
  width: 0.34rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -2.38rem -1.77rem;
}

.top-bar .right-section .social-media a .icon-weibo {
  width: 0.47rem;
  height: 0.39rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -1.86rem -0.88rem;
}

.top-bar .right-section .social-media a .icon-weibo:hover {
  width: 0.47rem;
  height: 0.39rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -0 -1.5rem;
}

.top-bar .right-section .social-media a .icon-bili {
  width: 0.41rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -0 -1.93rem;
}

.top-bar .right-section .social-media a .icon-bili:hover {
  width: 0.41rem;
  height: 0.4rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -0.45rem -1.93rem;
}

.top-bar .right-section .social-media a .qrcode-box {
  position: absolute;
  top: 0.3rem;
  left: 50%;
  display: none;
  padding-top: 0.2rem;
  margin-left: -1.16rem;
  /* 节点名：二维码示意 */
  /* 节点名：特效 */
}

.top-bar .right-section .social-media a .qrcode-box .z_erweimashiyi_000 {
  position: absolute;
  left: 0;
  top: 0.2rem;
  height: 1.94rem;
  width: 1.82rem;
  mix-blend-mode: normal;
  opacity: 0;
  -webkit-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
  -webkit-transform: scale(0, 0);
  transform: scale(0, 0);
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/z_erweimashiyi_000_03ce9689.png);
  background-size: 100% 100%;
}

.top-bar .right-section .social-media a .qrcode-box .z_texiao_000 {
  position: absolute;
  left: 0.29rem;
  top: -0.17rem;
  height: 1.82rem;
  width: 1.54rem;
  mix-blend-mode: normal;
  -webkit-transform: scale(1.76, 1.76);
  transform: scale(1.76, 1.76);
  pointer-events: none;
}

.top-bar .right-section .social-media a .qrcode-box .z_texiao_000-under-svg {
  height: 182px;
  width: 154px;
  font-size: 0;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite_z_texiao_000_c127133e.png);
  background-size: 500% 500%;
  pointer-events: none;
}

.top-bar .right-section .social-media a .qrcode-box .imgbox {
  cursor: default;
}

.top-bar .right-section .social-media a .qrcode-box .imgbox .img {
  position: absolute;
  top: 0.33rem;
  left: 0.18rem;
  font-size: 0;
  border-radius: 0.12rem;
  overflow: hidden;
  width: 1.46rem;
  height: 1.46rem;
}

.top-bar .right-section .social-media a .qrcode-box .imgbox .img img {
  display: block;
  width: 100%;
  height: 100%;
}

.top-bar .language-switcher {
  position: relative;
}

.top-bar .language-switcher:hover .language-list {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0) translateX(-64%);
  transform: translateY(0) translateX(-64%);
}

.top-bar .language-switcher .language-trigger {
  cursor: pointer;
  width: 0.4rem;
  height: 0.41rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -2.38rem -0;
}

.top-bar .language-switcher .language-trigger i {
  font-size: 1.2rem;
  color: white;
}

.top-bar .language-switcher .language-list {
  position: absolute;
  left: 50%;
  top: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 1.82rem;
  height: 1.46rem;
  background: url(https://xt.res.netease.com/pc/gw/20250516173652/assets/sprite-2dec00_2dec0093.png) no-repeat;
  background-size: 2.82rem 2.37rem;
  background-position: -0 -0;
  padding-top: 0.2rem;
  margin-top: 0.05rem;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(0.1rem) translateX(-64%);
  transform: translateY(0.1rem) translateX(-64%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 100;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.top-bar .language-switcher .language-list .language-option {
  width: 1.5rem;
  height: 0.4rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  cursor: pointer;
  font-size: 0.22rem;
  margin-bottom: 0.1rem;
  border-radius: 0.4rem;
}

.top-bar .language-switcher .language-list .language-option span {
  color: #5c78db;
  background: -webkit-gradient(linear, left top, left bottom, from(#5c78db), to(#ad9cf0));
  background: linear-gradient(to bottom, #5c78db, #ad9cf0);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.top-bar .language-switcher .language-list .language-option:hover,
.top-bar .language-switcher .language-list .language-option.active {
  background-color: #fff;
}

.top-bar .language-switcher .language-list .language-option:last-child {
  margin-bottom: 0;
}
