* {
  margin: 0;
  padding: 0;
}
html,
body {
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
}
body {
  display: flex;
  perspective: 1000px;
  transform-style: preserve-3d;
  /* 背景图核心适配样式 */
  background-image: url(./bg-img.jpg);
  background-position: center center; /* 图片水平+垂直居中 */
  background-size: cover; /* 保持比例，覆盖整个容器（要么适配宽，要么适配高），超出裁剪 */
  background-repeat: no-repeat; /* 禁止图片重复 */
  background-attachment: fixed; /* 可选：背景图固定，不随滚动移动（全屏场景更适配） */
  /* 原有尺寸+溢出裁剪 */
  height: 100vh; /* 改用100vh更稳定，确保占满视口高度 */
  width: 100vw; /* 占满视口宽度 */
  overflow: hidden; /* 裁剪超出视口的部分，避免滚动条 */
}

#box {
  z-index: 9999;
  position: relative;
  display: flex;
  width: 130px;
  height: 200px;
  margin: auto;
  transform-style: preserve-3d;
  transform: rotateX(-10deg);
}
#box > div {
  transform-style: preserve-3d;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  line-height: 200px;
  font-size: 50px;
  text-align: center;
  box-shadow: 0 0 10px #fff;
  -webkit-box-reflect: below
    10px -webkit-linear-gradient(
      top,
      rgba(0, 0, 0, 0) 40%,
      rgba(0, 0, 0, 0.8) 100%
    );
}

#box p {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 1200px;
  height: 1200px;
  background: -webkit-radial-gradient(
    center center,
    600px 600px,
    rgba(50, 50, 50, 1),
    rgba(0, 0, 0, 0)
  );
  border-radius: 50%;
  transform: rotateX(90deg) translate3d(-600px, 0, -105px);
}
/* 下雨特效 */
#codepen-link {
  position: absolute;
  bottom: 30px;
  right: 30px;
  height: 40px;
  width: 40px;
  z-index: 10;
  border-radius: 50%;
  box-sizing: border-box;
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/544318/logo.jpg");
  background-position: center center;
  background-size: cover;
  opacity: 0.5;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}

#codepen-link:hover {
  opacity: 0.8;
  box-shadow: 0 0 6px #efefef;
}

#stars {
  margin: 0 auto;
  max-width: 1600px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}

.star {
  display: block;
  width: 1px;
  background: transparent;
  position: relative;
  opacity: 0;
  /*过渡动画*/
  animation: star-fall 3s linear infinite;
  -webkit-animation: star-fall 3s linear infinite;
  -moz-animation: star-fall 3s linear infinite;
}

.star:after {
  content: "";
  display: block;
  border: 0px solid #fff;
  border-width: 0px 90px 2px 90px;
  border-color: transparent transparent transparent rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 1px 0 rgba(255, 255, 255, 0.1);
  /*变形*/
  transform: rotate(-45deg) translate3d(1px, 3px, 0);
  -webkit-transform: rotate(-45deg) translate3d(1px, 3px, 0);
  -moz-transform: rotate(-45deg) translate3d(1px, 3px, 0);
  transform-origin: 0% 100%;
  -webkit-transform-origin: 0% 100%;
  -moz-transform-origin: 0% 100%;
}

@keyframes star-fall {
  0% {
    opacity: 0;
    transform: scale(0.5) translate3d(0, 0, 0);
    -webkit-transform: scale(0.5) translate3d(0, 0, 0);
    -moz-transform: scale(0.5) translate3d(0, 0, 0);
  }
  50% {
    opacity: 1;
    transform: translate3d(-200px, 200px, 0);
    -webkit-transform: translate3d(-200px, 200px, 0);
    -moz-transform: translate3d(-200px, 200px, 0);
  }
  100% {
    opacity: 0;
    transform: scale(1.2) translate3d(-300px, 300px, 0);
    -webkit-transform: scale(1.2) translate3d(-300px, 300px, 0);
    -moz-transform: scale(1.2) translate3d(-300px, 300px, 0);
  }
}


/* 自定义播放按钮核心样式（默认显示） */
.play-btn {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 99999;
    display: flex; /* 默认显示按钮 */
    align-items: center;
    justify-content: center;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

/* 播放按钮视觉层 */
.play-btn .play-icon {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: url("./img/3.jpeg") center/cover no-repeat;
    box-shadow: 0 0 30px rgba(255, 255, 255, 0.8),
                inset 0 0 20px rgba(0, 0, 0, 0.5);
    position: relative;
    transition: all 0.3s ease;
    z-index: 1; /* 视觉层在上方 */
}

.play-btn .play-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 53%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 35px;
    border-color: transparent transparent transparent #ffffff;
}

.play-btn .play-icon:hover {
    transform: scale(1.1);
    box-shadow: 0 0 40px rgba(255, 255, 255, 1),
                inset 0 0 20px rgba(0, 0, 0, 0.5);
}

/* 原生音频控件样式（透明覆盖） */
.play-btn .audio-player {
    position: absolute;
    width: 120px; 
    height: 120px;
    opacity: 0.5; /* 临时设为半透明，能看到控件位置 */
    cursor: pointer;
    z-index: 9999999999999; 
    /* 关键：重置原生控件样式，确保可点击 */
    appearance: none;
    -webkit-appearance: none;
}

/* 手机端适配 */
@media (max-width: 768px) {
    .play-btn .play-icon {
        width: 90px;
        height: 90px;
    }
    .play-btn .play-icon::after {
        border-width: 15px 0 15px 25px;
    }
    .play-btn .audio-player {
        width: 90px;
        height: 90px;
    }
}