¿Por qué se va a dormir más allá de la medianoche sabiendo que puede causar insomnio?

Yo diría que debido a la ansiedad. La mayoría de la gente necesita despertarse para ir a trabajar temprano en la mañana. Por lo tanto, si van a dormir hasta tarde, intentan estimar cuánto les queda para dormir si se duermen ahora. A medida que pasa el tiempo, se siguen concentrando en el tiempo que les queda, muy preocupados por no descansar lo suficiente. Esto hace que luego no se pueda relajar completamente para poder conciliar el sueño, ese es un círculo vicioso.