@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;1,300;1,400&display=swap");

body{
font-family:"Roboto",Arial,Helvetica,sans-serif;
margin:0;
background:radial-gradient(circle,#000000 0%,#002d1a 100%);
background-attachment:fixed;
color:#ffffff;
display:flex;
flex-direction:column;
min-height:100vh;
}

.flex-center{
display:flex;
justify-content:center;
}

.header-center{
align-items:center;
flex-direction:column;
margin-top:10%;
}

.left-margin{
margin:0px 16px;
}

#sj-frame {
    border: none;
    position: fixed; /* 'fixed' keeps it locked to the edges */
    top: 0;
    left: 0;
    width: 100vw;   /* 100% of the viewport width */
    height: 100vh;  /* 100% of the viewport height */
    background-color: #111;
    z-index: 999;   /* Puts it on top of everything except the sidebar */
}


#sj-error{
color:#ff6666 !important;
white-space:pre-wrap;
}

#sj-error-code{
font-size:12px;
color:#fff;
font-family:"Courier New",Courier,monospace;
}

.logo{
height:25vh;
animation:ghost-float 4s ease-in-out infinite;
filter:drop-shadow(0 0 15px #00ff88);
}

.logo-wrapper .text{
font-size:75px;
color:#fff;
}

.logo-wrapper h1 {
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
}

footer{
margin:0 16px;
margin-top:auto;
display:flex;
flex-direction:column;
line-height:30px;
margin-bottom:20px;
}

footer>div{
display:flex;
justify-content:left;
align-items:center;
flex-wrap:wrap;
margin-bottom:15px;
}

footer a,footer span{
margin:0 15px;
text-decoration:none;
color:#fff;
font-size:15px;
}

footer a{
cursor:pointer;
}

footer a:hover{
text-decoration:underline;
}

.desc p{
width:560px;
color:rgba(253,253,253,0.514);
}

#sj-address{
background:none;
font-family:inherit;
padding:0px 17px;
height:30px;
border:1px solid rgb(255,255,255,0.2);
color:var(--text-color);
border-radius:3px;
outline:none;
width:350px;
margin-top:5px;
border-radius:50px;
color:#fff;
transition:border-radius .1s;
}

#sj-address:focus{
border:1px solid rgba(253,253,253,0.514);
border-radius:6px;
}

.credit{
border-radius:10px;
padding:10px;
display:block;
border:#fff 1px solid;
color:#fff;
display:flex;
flex-wrap:wrap;
margin-bottom:15px;
}

.credit label{
margin-left:auto;
margin-right:15px;
}

.credit a,.credit label{
color:white;
text-decoration:underline;
text-align:right;
}

.credit pre{
display:none;
width:100%;
}

.credit label::after{
content:"show license";
cursor:pointer;
}

.credit input:checked+label::after{
content:"hide license";
}

.credit input:checked~pre{
display:block;
}

@keyframes ghost-float{
0%,100%{transform:translateY(0)}
50%{transform:translateY(-25px)}
}

input{
background:rgba(0,0,0,.6) !important;
border:2px solid #00ff88 !important;
box-shadow:0 0 15px rgba(0,255,136,.3);
color:white !important;
border-radius:30px !important;
padding:15px 25px !important;
transition:all .3s ease;
font-family:monospace;
}

input:focus{
outline:none;
box-shadow:0 0 25px #00ff88;
transform:scale(1.02);
}

.side-nav{
position:fixed;
right:20px;
top:50%;
transform:translateY(-50%);
width:60px;
background:rgba(255,255,255,.2);
backdrop-filter:blur(15px);
border-radius:40px;
border:1px solid rgba(255,255,255,.3);
padding:25px 0;
display:flex;
flex-direction:column;
align-items:center;
box-shadow:0 0 25px rgba(0,0,0,.7);
z-index:1000;
}

.side-nav ul{
list-style:none;
padding:0;
margin:0;
}

.side-nav li{
margin:20px 0;
}

.side-nav a{
color:#cccccc;
font-size:1.6rem;
transition:all .3s ease;
text-decoration:none;
display:block;
}

.side-nav a:hover{
color:#00ff88;
text-shadow:0 0 15px #00ff88;
transform:scale(1.25);
}

.nav-icon{
width:28px;
height:auto;
transition:transform .3s ease,filter .3s ease;
}

.side-nav a:hover .nav-icon{
transform:scale(1.2);
filter:drop-shadow(0 0 8px #00ff88);
}

.game-card{
position:relative;
cursor:pointer;
background:rgba(255,255,255,.05);
border-radius:12px;
overflow:hidden;
transition:transform .25s ease,box-shadow .25s ease;
}

.game-card:hover{
transform:translateY(-6px);
box-shadow:0 10px 25px rgba(0,0,0,.6);
}

.card-icon{
position:relative;
width:100%;
aspect-ratio:16/9;
border-radius:12px;
overflow:hidden;
background:#e5e7eb;
}

.card-icon img{
width:100%;
height:100%;
object-fit:cover;
transform:scale(1);
transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .3s;
will-change:transform;
}

.game-card:hover .card-icon img{
transform:scale(1.15);
filter:brightness(.45);
}

.game-card h3{
position:absolute;
bottom:10px;
left:0;
width:100%;
margin:0;
padding:6px 10px;
text-align:center;
font-family:monospace;
font-size:18px;
color:#00ff88;
text-shadow:0 0 12px #00ff88;
opacity:0;
transform:translateY(10px);
transition:all .3s ease;
pointer-events:none;
}

.game-card:hover h3{
opacity:1;
transform:translateY(0);
}

.card-info{
display:none;
}

#gameContainer{
position:fixed;
inset:0;
background:#000;
display:none;
flex-direction:column;
z-index:999;
}

#gameHeader{
height:56px;
border-bottom:1px solid rgba(255,255,255,.1);
display:flex;
align-items:center;
justify-content:space-between;
padding:0 16px;
color:#fff;
}

#gameContent{
flex:1;
}

#gameContent iframe{
width:100%;
height:100%;
border:none;
}

.back-btn,.gh-action{
background:none;
border:none;
color:#fff;
font-size:16px;
opacity:.7;
cursor:pointer;
}

.back-btn:hover,.gh-action:hover{
opacity:1;
}
.discord-btn {
    position: fixed;
    bottom: 20px;
    left: 20px;
    width: 40px;
    height: 40px;
    background-color: #5865F2; /* Discord Blue */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 15px rgba(0, 255, 136, 0.5); /* Matching your green glow */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    z-index: 9999;
}

.discord-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 0 25px #00ff88;
}

.discord-btn img {
    width: 20px;
    height: auto;
}
