/* =========================================
RESET
========================================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,
body{
overflow-x:hidden;
font-family:'Orbitron',sans-serif;
background:#000814;
color:white;
}

/* =========================================
NAVBAR
========================================= */

.navbar{

display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;

gap:15px;

padding:15px 20px;

background:rgba(0,0,0,0.55);

backdrop-filter:blur(10px);

position:relative;
z-index:9999;
}

.logo{

display:flex;

align-items:center;

justify-content:center;

gap:4px;

font-size:22px;
font-weight:bold;

color:#ffd700;

letter-spacing:2px;

text-shadow:0 0 10px #ffd700;

line-height:1;
}

.logo img{

width:28px;
height:28px;

object-fit:cover;

border-radius:50%;

display:block;
}

.menu{

display:flex;
flex-wrap:wrap;

gap:15px;
}

.menu a{

color:white;
text-decoration:none;

font-size:14px;
font-weight:500;

transition:0.3s;
}

.menu a:hover{
color:#00ffcc;
}

.top-left-admin{

display:flex;
align-items:center;

gap:10px;
flex-wrap:wrap;
}

/* =========================================
LOGIN
========================================= */

.admin-login{

display:flex;
align-items:center;

gap:8px;
flex-wrap:wrap;
}

.admin-login input{

padding:8px 10px;

border-radius:8px;

border:1px solid #00ffcc;

background:#111;
color:white;

outline:none;

font-size:12px;
}

.admin-login button{

padding:8px 14px;

border:none;
border-radius:8px;

background:#00ffcc;
color:black;

font-weight:bold;

cursor:pointer;

transition:0.3s;
}

.admin-login button:hover{

transform:scale(1.05);

background:#00c3ff;
}

/* =========================================
HERO IMAGE
========================================= */

.hero-image{

width:100%;

padding:0;

margin:0;
}

.hero-image img{

width:100%;

height:auto;

display:block;

margin:0;

border-radius:0;
}

/* =========================================
HERO TEXT
========================================= */

.hero{
padding:0;
text-align:center;
}

.hero-text{

max-width:800px;

margin:auto;
}

.hero-text h1{

font-size:45px;

margin-bottom:20px;

color:#ffd700;

line-height:1.3;
}

.hero-text span{

color:#00ffcc;

text-shadow:0 0 10px #00ffcc;
}

.hero-text p{

font-size:16px;

line-height:1.8;

margin-bottom:30px;

color:#cccccc;
}

/* =========================================
BUTTON
========================================= */

.hero-button{

display:flex;
justify-content:center;

gap:15px;

flex-wrap:wrap;
}

.btn{

display:inline-flex;
align-items:center;
justify-content:center;

padding:14px 24px;

min-width:140px;

border-radius:12px;

font-size:14px;
font-weight:bold;

text-decoration:none;

transition:0.3s ease;

color:white;
}

.login{

background:linear-gradient(
135deg,
#008cff,
#00c3ff
);
}

.vip{

background:linear-gradient(
135deg,
#ffd700,
#ff8800
);

color:black;
}

.daftar{

background:linear-gradient(
135deg,
#00ff88,
#00cc66
);

color:black;
}

.btn:hover{

transform:translateY(-5px);

box-shadow:0 0 20px rgba(255,255,255,0.3);
}

/* =========================================
DASHBOARD
========================================= */

.dashboard{

display:flex;
justify-content:center;

flex-wrap:wrap;

gap:20px;

padding:30px 20px;
}

.card{

display:flex;
align-items:center;

gap:15px;

padding:20px;

width:200px;

border-radius:20px;

background:rgba(0,120,255,0.20);

border:1px solid rgba(255,255,255,0.3);

box-shadow:0 0 20px rgba(0,150,255,0.5);
}

.card-icon{

font-size:35px;
}

.card-info h2{

font-size:28px;

color:#00ffcc;
}

.card-info p{

font-size:13px;

color:#ddd;
}

/* =========================================
TITLE
========================================= */

.title{

text-align:center;

font-size:24px;

margin-bottom:30px;

color:#00ffcc;

text-shadow:
0 0 10px gold,
0 0 20px orange;
}

/* =========================================
PASARAN
========================================= */

.pasaran-section{

padding:40px 20px;
}

.pasaran-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:20px;
}

.pasaran-card{

background:rgba(255,255,255,0.05);

border:1px solid rgba(255,215,0,0.2);

padding:14px;

border-radius:15px;

color:#fff;

font-weight:bold;

text-align:center;

cursor:pointer;

transition:0.3s;
}

.pasaran-card:hover{

transform:translateY(-5px);

background:#00ffcc;

color:black;
}

.pasaran-card.active{

background:#00ffcc;

color:black;
}

/* =========================================
PREDIKSI BOX
========================================= */

.prediksi-box{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:20px;

padding:20px;
}

.prediksi-item{

padding:20px;

border-radius:20px;

text-align:center;

background:rgba(255,255,255,0.05);

border:1px solid rgba(255,255,255,0.1);
}

.prediksi-item h2{

margin-bottom:10px;

color:#ffd700;
}

.prediksi-item p{

font-size:20px;

font-weight:bold;
}

/* =========================================
PAITO
========================================= */

.result-section{

padding:40px 20px;
}

.paito-box{

overflow-x:auto;

margin-bottom:30px;
}

.paito-table{

width:100%;

border-collapse:collapse;

min-width:300px;
}

.paito-table th,
.paito-table td{

border:1px solid rgba(255,255,255,0.2);

padding:12px;

text-align:center;
}

.paito-table th{

background:#00ffcc;

color:black;
}

/* =========================================
ADMIN
========================================= */

.admin-form{

display:flex;
flex-direction:column;

gap:15px;

padding:20px;

max-width:500px;

margin:auto;
}

.admin-form input,
.admin-form select{

padding:12px;

border:none;

border-radius:10px;

outline:none;
}

.admin-form button{

padding:12px;

border:none;

border-radius:10px;

background:#00ffcc;

font-weight:bold;

cursor:pointer;
}

/* =========================================
RESPONSIVE
========================================= */

@media (max-width:768px){

.navbar{

flex-direction:column;

text-align:center;
}

.menu{

justify-content:center;
}

.hero-text h1{

font-size:30px;
}

.hero-button{

flex-direction:column;

align-items:center;
}

.btn{

width:100%;
max-width:220px;
}

.dashboard{

flex-direction:column;

align-items:center;
}

.card{

width:100%;
max-width:320px;
}

.pasaran-grid{

grid-template-columns:1fr;
}

.prediksi-box{

grid-template-columns:1fr;
}

}

/* HUJAN UANG */

.gold{

position:fixed;

top:-50px;
left:50%;

transform:translateX(-50%);

z-index:9999;

pointer-events:none;

animation:fall linear forwards;

}

@keyframes fall{

0%{
transform:
translateX(-50%)
translateY(0);
}

100%{
transform:
translateX(-50%)
translateY(120vh);
}

}

@media (max-width:768px){

.admin-login{

gap:5px;
}

.admin-login input{

width:65px;

padding:5px 6px;

font-size:10px;
}

.admin-login button{

padding:5px 8px;

font-size:10px;
}

}

#namaPasaran{

text-align:center;

width:100%;

margin-bottom:30px;

}

/* =========================
GENERATOR IWANCRACK
========================= */

.generator-box{

width:90%;
max-width:500px;

margin:40px auto;

padding:30px 20px;

border-radius:20px;

background:rgba(0,0,0,0.6);

border:1px solid rgba(255,255,255,0.2);

box-shadow:0 0 20px rgba(0,255,255,0.3);

text-align:center;
}

.generator-title{

font-size:28px;

color:#ffd700;

margin-bottom:25px;

text-shadow:0 0 10px #ffd700;
}

.generator-box input{

width:100%;

padding:14px;

border:none;

border-radius:12px;

outline:none;

font-size:18px;

text-align:center;

margin-bottom:20px;

background:#111;

color:white;

border:1px solid #00ffcc;
}

.generator-box button{

padding:12px 30px;

border:none;

border-radius:12px;

background:linear-gradient(
135deg,
#00ffcc,
#00c3ff
);

color:#000;

font-weight:bold;

font-size:16px;

cursor:pointer;

transition:0.3s;
}

.generator-box button:hover{

transform:scale(1.05);

box-shadow:
0 0 15px #00ffcc,
0 0 30px #00c3ff;
}

.result-box{

margin-top:30px;
}

.hasil-item{

margin-bottom:20px;

padding:15px;

border-radius:14px;

background:rgba(255,255,255,0.05);

border:1px solid rgba(255,255,255,0.1);
}

.hasil-item span{

display:block;

margin-bottom:8px;

color:#00ffcc;

font-weight:bold;
}

.hasil-item p{

font-size:22px;

color:white;

letter-spacing:3px;
}

/* ==========================
   FOOTER PREMIUM IWANCRACK
========================== */

.footer{
margin-top:60px;
background:#0a0a0a;
border-top:2px solid #ffd700;
padding:40px 20px;
position:relative;
overflow:hidden;
}

.footer::before{
content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:2px;
background:linear-gradient(
90deg,
transparent,
#ffd700,
transparent
);
animation:footerShine 4s linear infinite;
}

@keyframes footerShine{
100%{
left:100%;
}
}

.footer-container{
max-width:1000px;
margin:auto;
text-align:center;
}

.footer-logo{
font-size:32px;
font-weight:900;
letter-spacing:4px;
color:#ffd700;
text-shadow:
0 0 10px #ffd700,
0 0 20px #ffd700;
margin-bottom:15px;
}

.footer-desc{
color:#bdbdbd;
font-size:14px;
line-height:1.8;
max-width:700px;
margin:auto;
}

.footer-links{
margin:25px 0;
}

.footer-links a{
text-decoration:none;
color:#ffffff;
margin:0 15px;
font-size:14px;
font-weight:600;
transition:.3s;
}

.footer-links a:hover{
color:#ffd700;
text-shadow:0 0 10px #ffd700;
}

.footer-divider{
width:120px;
height:2px;
background:#ffd700;
margin:20px auto;
box-shadow:0 0 15px #ffd700;
}

.footer-copy{
color:#777;
font-size:12px;
letter-spacing:1px;
}

/* =========================================
DASHBOARD HP
========================================= */

@media (max-width:768px){

    .dashboard{
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:8px;
        padding:15px 5px;
    }

    .card{
        width:100%;
        padding:8px 5px;
        gap:5px;
    }

    .card-icon{
        font-size:18px;
    }

    .card-info h2{
        font-size:16px;
        margin:0;
    }

    .card-info p{
        font-size:7px;
        margin:0;
    }
}

#verify-screen{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:#000814;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
z-index:999999;
}

#masukBtn{
margin-top:20px;
padding:12px 30px;
border:none;
border-radius:10px;
background:#00e5ff;
color:#000;
font-weight:bold;
cursor:pointer;
}

#masukBtn:disabled{
opacity:.5;
cursor:not-allowed;
}