body.portal {

    background:
        linear-gradient(
            rgba(2,6,12,0.75),
            rgba(2,6,12,0.92)
        ),
        url("../images/frontpage.png");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;

    color:#cfe9ff;
}

/* Zentraler Command Bereich */

.portal-center{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    height:90vh;
    text-align:center;
}

.portal-title{
    font-size:48px;
    letter-spacing:4px;
    color:#7fdfff;
    text-shadow:0 0 20px #00cfff;
}
.portal-games{
    display:flex;
    gap:40px;
    margin-top:40px;
}

.portal-card{
    background:rgba(10,20,40,0.7);
    border:1px solid #00cfff;
    padding:30px;
    width:260px;
    transition:0.3s;
}

.portal-card:hover{
    transform:scale(1.05);
    box-shadow:0 0 25px #00cfff;
}

.portal-card a{
    display:inline-block;
    margin-top:15px;
    padding:10px 20px;
    border:1px solid #00cfff;
    color:#7fdfff;
    text-decoration:none;
}
.portal-center{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    min-height:100vh;
    text-align:center;
}
body.portal::after{
    content:"";
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    pointer-events:none;

    background:
        radial-gradient(
            circle at center,
            rgba(0,210,255,0.15),
            transparent 60%
        );

    animation:corePulse 6s ease-in-out infinite;
}

@keyframes corePulse{
    0%{opacity:0.4;}
    50%{opacity:0.8;}
    100%{opacity:0.4;}
}
body.portal::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;

    background:
        radial-gradient(circle at 50% 25%,
        rgba(0,255,255,0.35),
        transparent 80px);

    mix-blend-mode:screen;

    animation:wolfEyes 3s infinite alternate;
}

@keyframes wolfEyes{
    from{
        opacity:0.3;
        filter:blur(6px);
    }
    to{
        opacity:0.8;
        filter:blur(2px);
    }
}
