/* --- EFEITOS ATMOSFÉRICOS (Apenas Formatos e Cores) --- */
.camada-atmosfera {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none; overflow: hidden; z-index: 5;
}

.particula {
    position: absolute; pointer-events: none;
    will-change: top, left, opacity; /* Otimiza para não travar o celular */
}

/* Base das partículas */
.gota-chuva { width: 2px; height: 15px; background: linear-gradient(transparent, rgba(255,255,255,0.8)); }
.floco-neve { width: 6px; height: 6px; background: #fff; border-radius: 50%; filter: blur(1px); }
.nevoa-palco { width: 200%; height: 40%; background: radial-gradient(circle, rgba(255,255,255,0.4) 0%, transparent 70%); filter: blur(20px); }
.feixe-luz { width: 150%; height: 100px; background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.15) 50%, transparent 100%); transform: rotate(45deg); }
.ponto-glitter { width: 3px; height: 3px; background: gold; border-radius: 50%; box-shadow: 0 0 5px gold; }
.tempestade-flash { width: 100%; height: 100%; background: #fff; opacity: 0; }
.aurora-boreal { width: 200%; height: 50%; background: linear-gradient(180deg, rgba(0,255,128,0.4) 0%, rgba(128,0,255,0.2) 50%, transparent 100%); filter: blur(30px); }