/* ===================
   Background Grid & Blur Layer
   =================== */

.background-grid {
  position: fixed;
  inset: 0;
  z-index: -10;
  overflow: hidden;

  background:
    linear-gradient(rgba(255, 179, 216, 0.08), rgba(0, 0, 0, 1)) center center / cover no-repeat,
    repeating-linear-gradient(
      to right,
      rgba(255, 255, 255, 0.04) 0px,
      rgba(255, 255, 255, 0.04) 1px,
      transparent 1px,
      transparent 80px
    ),
    repeating-linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0.04) 0px,
      rgba(255, 255, 255, 0.04) 1px,
      transparent 1px,
      transparent 80px
    ),
    radial-gradient(ellipse at top center, rgba(255, 179, 216, 0.08), #0a0a0a 70%);
}

/* Top pink blur layer */
.background-grid .top-blur {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 28rem;
  background: linear-gradient(to bottom, rgba(255, 179, 216, 0.1), transparent);
  filter: blur(120px);
  z-index: -1;
}

/* Stars container layer */
#starsContainer {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

/* ===================
   Floating Stars Animation
   =================== */

.floating-star {
  position: absolute;
  background: linear-gradient(45deg, #FFB3D8, #FFB3D8);
  border-radius: 50%;
  pointer-events: none;
  animation: floatUp 12s linear forwards;
  box-shadow: 0 0 10px rgba(255, 179, 216, 0.3);
}

@keyframes floatUp {
  from {
    transform: translateY(0) rotate(0deg);
    opacity: 1;
  }
  to {
    transform: translateY(-120vh) rotate(360deg);
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .floating-star {
    display: none;
  }
}

/* ===================
   Utility Gradient Backgrounds
   =================== */

.gradient-bg-1 {
  background: linear-gradient(135deg, rgba(255, 179, 216, 0.1), rgba(139, 92, 246, 0.1));
}

.gradient-bg-2 {
  background: linear-gradient(135deg, rgba(26, 26, 26, 0.5), rgba(10, 10, 10, 0.5));
}

/* ===================
   Footer & Hover Effects
   =================== */

footer {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 1));
  backdrop-filter: blur(10px);
}

footer a:hover {
  transform: translateY(-2px);
}

/* ===================
   Glossy Navbar with Shine
   =================== */

.navbar-glossy {
  background-color: rgba(26, 26, 26, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(50px);
  position: relative;
  overflow: hidden;
}

.navbar-glossy::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.05), transparent);
  transform: rotate(25deg);
  animation: shine 4s linear infinite;
  pointer-events: none;
  z-index: 0;
}

@keyframes shine {
  0% {
    transform: translateX(-100%) rotate(25deg);
  }
  100% {
    transform: translateX(100%) rotate(25deg);
  }
}
