/* Twinkling Stars Background */
.stars, .stars2, .stars3 {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: -1;
}

.stars {
    background: transparent url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200"><circle cx="20" cy="20" r="1" fill="%23ffffff" opacity="0.8"/><circle cx="80" cy="40" r="1" fill="%2300ffff" opacity="0.6"/><circle cx="150" cy="30" r="1" fill="%23ffffff" opacity="0.9"/><circle cx="60" cy="80" r="1" fill="%2300ffff" opacity="0.7"/><circle cx="180" cy="70" r="1" fill="%23ffffff" opacity="0.5"/><circle cx="30" cy="120" r="1" fill="%2300ffff" opacity="0.8"/><circle cx="120" cy="100" r="1" fill="%23ffffff" opacity="0.6"/><circle cx="170" cy="140" r="1" fill="%2300ffff" opacity="0.9"/><circle cx="50" cy="160" r="1" fill="%23ffffff" opacity="0.7"/><circle cx="140" cy="180" r="1" fill="%2300ffff" opacity="0.5"/></svg>') repeat;
    animation: twinkle 4s linear infinite;
}

.stars2 {
    background: transparent url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="300" height="300" viewBox="0 0 300 300"><circle cx="40" cy="60" r="1.5" fill="%23ffffff" opacity="0.6"/><circle cx="160" cy="80" r="1.5" fill="%2300ffff" opacity="0.8"/><circle cx="250" cy="50" r="1.5" fill="%23ffffff" opacity="0.4"/><circle cx="90" cy="150" r="1.5" fill="%2300ffff" opacity="0.7"/><circle cx="200" cy="120" r="1.5" fill="%23ffffff" opacity="0.9"/><circle cx="70" cy="220" r="1.5" fill="%2300ffff" opacity="0.5"/><circle cx="280" cy="200" r="1.5" fill="%23ffffff" opacity="0.8"/><circle cx="130" cy="260" r="1.5" fill="%2300ffff" opacity="0.6"/></svg>') repeat;
    animation: twinkle 6s linear infinite reverse;
}

.stars3 {
    background: transparent url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" viewBox="0 0 400 400"><circle cx="100" cy="100" r="2" fill="%23ffffff" opacity="0.3"/><circle cx="300" cy="150" r="2" fill="%2300ffff" opacity="0.5"/><circle cx="200" cy="250" r="2" fill="%23ffffff" opacity="0.7"/><circle cx="350" cy="300" r="2" fill="%2300ffff" opacity="0.4"/><circle cx="50" cy="350" r="2" fill="%23ffffff" opacity="0.6"/></svg>') repeat;
    animation: twinkle 8s linear infinite;
}

@keyframes twinkle {
    0% {
        opacity: 0.3;
        transform: scale(1);
    }
    25% {
        opacity: 0.8;
        transform: scale(1.1);
    }
    50% {
        opacity: 0.5;
        transform: scale(1);
    }
    75% {
        opacity: 1;
        transform: scale(1.05);
    }
    100% {
        opacity: 0.3;
        transform: scale(1);
    }
}

/* Additional star effects for more realism */
.stars::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 20% 30%, rgba(0, 255, 255, 0.1) 0%, transparent 50%),
                radial-gradient(circle at 80% 70%, rgba(255, 255, 255, 0.05) 0%, transparent 50%),
                radial-gradient(circle at 60% 20%, rgba(0, 255, 255, 0.08) 0%, transparent 50%);
    animation: nebula 20s ease-in-out infinite alternate;
}

@keyframes nebula {
    0% {
        opacity: 0.3;
        transform: rotate(0deg) scale(1);
    }
    100% {
        opacity: 0.6;
        transform: rotate(5deg) scale(1.1);
    }
}

/* Shooting stars effect */
.stars2::after {
    content: '';
    position: absolute;
    top: 20%;
    left: -10%;
    width: 2px;
    height: 2px;
    background: linear-gradient(45deg, transparent, #00ffff, transparent);
    border-radius: 50%;
    animation: shooting-star 3s linear infinite;
}

@keyframes shooting-star {
    0% {
        transform: translateX(-100px) translateY(-100px);
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        transform: translateX(100vw) translateY(100vh);
        opacity: 0;
    }
}

