*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Poppins',sans-serif;
    color:white;
    overflow-x:hidden;

    background:
    linear-gradient(rgba(0,0,0,.85),rgba(0,0,0,.85)),
    url("https://images.unsplash.com/photo-1462331940025-496dfbfc7564?auto=format&fit=crop&w=1920&q=80");

    background-size:cover;
    background-position:center;
    background-attachment:fixed;
}

header{
    text-align:center;
    padding:70px 20px;
}

header h1{
    font-size:4rem;
    text-shadow:0 0 25px #60a5fa;
}

header p{
    margin-top:15px;
    color:#cbd5e1;
}

.universe{
    position:relative;
    width:100%;
    height:900px;
}

.planet{
    position:absolute;
    width:130px;
    height:130px;
    border-radius:50%;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    cursor:pointer;
    transition:.3s;
    font-size:2rem;
}

.planet span{
    font-size:.8rem;
    margin-top:5px;
}

.planet:hover{
    transform:scale(1.12);
}

.quasar{
    width:190px;
    height:190px;

    top:300px;
    left:50%;
    transform:translateX(-50%);

    background:radial-gradient(circle,#fbbf24,#f59e0b);
    box-shadow:0 0 80px #fbbf24;
}

.admin{
    top:120px;
    left:18%;
    background:#2563eb;
    box-shadow:0 0 25px #2563eb;
}

.economy{
    top:150px;
    right:18%;
    background:#16a34a;
    box-shadow:0 0 25px #16a34a;
}

.stock{
    top:550px;
    right:15%;
    background:#9333ea;
    box-shadow:0 0 25px #9333ea;
}

.levels{
    top:550px;
    left:15%;
    background:#0891b2;
    box-shadow:0 0 25px #0891b2;
}

.tickets{
    top:720px;
    left:50%;
    transform:translateX(-50%);
    background:#ea580c;
    box-shadow:0 0 25px #ea580c;
}

.universe{
    position:relative;
}

#connections{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:1;
    pointer-events:none;
}

.planet{
    z-index:2;
}

.info-panel{
    max-width:1000px;
    margin:auto;
    margin-bottom:80px;

    background:rgba(15,23,42,.8);
    backdrop-filter:blur(10px);

    border-radius:20px;
    padding:30px;
}

.info{
    display:none;
}

.info.active{
    display:block;
}

.info h2{
    color:#60a5fa;
    margin-bottom:20px;
}

.info ul{
    margin-left:20px;
}