/* 几何粒子背景（关于页） */
.particle-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}

.geo-particle {
  position: absolute;
  opacity: 0;
  animation: breatheAndMove 18s ease-in-out infinite;
}

.circle-particle {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: radial-gradient(
    circle at 30% 30%,
    rgba(100, 149, 237, 0.6),
    rgba(74, 111, 201, 0.2)
  );
  box-shadow: 0 0 30px rgba(100, 149, 237, 0.3);
}

.triangle-particle {
  width: 0;
  height: 0;
  border-left: 35px solid transparent;
  border-right: 35px solid transparent;
  border-bottom: 60px solid rgba(138, 169, 255, 0.5);
  transform-origin: center;
  filter: drop-shadow(0 0 20px rgba(138, 169, 255, 0.3));
}

.square-particle {
  width: 50px;
  height: 50px;
  background: rgba(74, 111, 201, 0.4);
  transform: rotate(45deg);
  box-shadow: 0 0 30px rgba(74, 111, 201, 0.3);
}

.geo-particle-1 { top: 10%; left: 5%; animation-delay: 0s; }
.geo-particle-2 { top: 20%; right: 8%; animation-delay: 1.5s; }
.geo-particle-3 { bottom: 15%; left: 12%; animation-delay: 2.8s; }
.geo-particle-4 { bottom: 25%; right: 15%; animation-delay: 4.2s; }
.geo-particle-5 { top: 40%; left: 20%; animation-delay: 5.5s; }
.geo-particle-6 { top: 60%; right: 25%; animation-delay: 6.8s; }
.geo-particle-7 { bottom: 40%; left: 30%; animation-delay: 8s; }
.geo-particle-8 { top: 70%; right: 35%; animation-delay: 9.5s; }
.geo-particle-9 { top: 15%; left: 45%; animation-delay: 10.8s; }
.geo-particle-10 { bottom: 55%; right: 45%; animation-delay: 12s; }
.geo-particle-11 { top: 80%; left: 55%; animation-delay: 13.5s; }
.geo-particle-12 { bottom: 65%; right: 60%; animation-delay: 14.8s; }

@keyframes breatheAndMove {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(1);
    opacity: 0.2;
  }
  25% {
    transform: translate(20px, -15px) rotate(45deg) scale(1.3);
    opacity: 0.6;
  }
  50% {
    transform: translate(-15px, 25px) rotate(90deg) scale(1);
    opacity: 0.3;
  }
  75% {
    transform: translate(25px, -20px) rotate(180deg) scale(1.2);
    opacity: 0.5;
  }
  100% {
    transform: translate(0, 0) rotate(0deg) scale(1);
    opacity: 0.2;
  }
}
