:root{
--vu:1rem;
--bg:#050816;
--text:#fff;
--primary:#00ffff;
--success:#00ffaa;
--danger:#ff8080;
--radius:calc(var(--vu)*1.2);
--space:calc(var(--vu)*1);
--space-lg:calc(var(--vu)*2);
--space-xl:calc(var(--vu)*3);
--font-xs:calc(var(--vu)*0.75);
--font-sm:calc(var(--vu)*0.9);
--font-md:var(--vu);
--font-lg:calc(var(--vu)*1);
--font-xl:calc(var(--vu)*1.5);
--font-xxl:calc(var(--vu)*2.5);
}

@media(max-width:576px){:root{--vu:0.8rem;}}
@media(min-width:576px){:root{--vu:0.9rem;}}
@media(min-width:768px){:root{--vu:1rem;}}
@media(min-width:992px){:root{--vu:1.15rem;}}
@media(min-width:1200px){:root{--vu:1.3rem;}}
@media(min-width:1400px){:root{--vu:1.45rem;}}

@font-face {
font-family: 'Vazirmatn';
src: url('../fonts/Vazirmatn-Regular.ttf') format('truetype');
font-weight: normal;
font-style: normal;
font-display: swap;
}

*{margin:0;padding:0;box-sizing:border-box}

body{
direction: rtl;
min-height:100vh;
overflow-x:hidden;
font-family:'Vazirmatn',Arial,sans-serif;
background:var(--bg);
color:var(--text);
}
input, a, button, div{
    font-family:'Vazirmatn',Arial,sans-serif;
}
.bg-grid{
position:fixed;
inset:0;
background-image:linear-gradient(rgba(0,255,255,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,255,0.06) 1px,transparent 1px);
background-size:40px 40px;
z-index:-2;
}

.bg-glow{
position:fixed;
width:calc(var(--vu)*40);
height:calc(var(--vu)*40);
background:radial-gradient(circle,rgba(0,255,255,0.15),transparent 70%);
top:calc(var(--vu)*-12);
right:calc(var(--vu)*-12);
z-index:-1;
filter:blur(40px);
}

.container{
max-width:1200px;
margin:auto;
padding:calc(var(--space-xl)) calc(var(--space)) calc(var(--space-xl)*3);
}

.hero{
text-align:center;
padding-top:calc(var(--space-xl));
margin-bottom:calc(var(--space-xl)*0.5);
}

.logo{
font-size:var(--font-xxl);
font-weight:900;
letter-spacing:calc(var(--vu)*0.5);
color:var(--primary);
text-shadow:0 0 10px var(--primary),0 0 20px var(--primary),0 0 40px var(--primary);
}

.subtitle{
margin-top:var(--space);
font-size:var(--font-sm);
opacity:.75;
}

.countdown-section{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:var(--space);
margin-bottom:calc(var(--space-xl)*0.5);
}

.countdown-box{
width:calc(var(--vu)*8);
border-radius:var(--radius);
text-align:center;
background:rgba(255,255,255,0.05);
border:1px solid rgba(0,255,255,0.2);
backdrop-filter:blur(12px);
box-shadow:0 0 20px rgba(0,255,255,0.08);
}

.countdown-box span{
display:block;
font-size:var(--font-lg);
font-weight:bold;
color:var(--primary);
}

.countdown-box small{
font-size:var(--font-xs);
opacity:.7;
}

#days, #hours, #minutes, #seconds{
font-size: var(--font-xl);
}

.notify-section,.game-section,.leaderboard{
margin-bottom:calc(var(--space-xl)*2);
padding:calc(var(--space-lg)*1.5);
border-radius:var(--radius);
background:rgba(255,255,255,0.04);
border:1px solid rgba(255,255,255,0.08);
backdrop-filter:blur(18px);
}

h2{
font-size:var(--font-lg);
color:var(--primary);
margin-bottom:var(--space-lg);
}

form{
display:flex;
flex-direction:column;
gap:var(--space);
}

input,textarea,button{
border:none;
outline:none;
border-radius:var(--radius);
font-size:var(--font-md);
}

input,textarea{
padding:var(--space);
background:rgba(255,255,255,0.06);
color:var(--text);
border:1px solid rgba(255,255,255,0.08);
}

textarea{
min-height:calc(var(--vu)*10);
display:none;
}

button{
padding:var(--space);
cursor:pointer;
font-weight:bold;
background:var(--primary);
color:#05111f;
transition:.2s;
}

button:hover{
transform:translateY(-2px);
box-shadow:0 0 20px rgba(0,255,255,0.5);
}

.checkbox-row{
display:flex;
align-items:center;
gap:var(--space);
}

.game-top{
display: flex;
justify-content: space-between;
justify-content: space-between;
}

.game-start{
display:flex;
gap:var(--space);
margin-bottom:var(--space-lg);
justify-content: space-between;
}

.game-box{
padding:calc(var(--space-lg)*1.5);
border-radius:var(--radius);
background:rgba(0,0,0,0.35);
border:1px solid rgba(0,255,255,0.12);
}

.word-display{
min-height:calc(var(--vu)*6);
display:flex;
align-items:center;
justify-content:center;
font-size:var(--font-lg);
color:var(--primary);
}

#wordInput{
font-size:var(--font-md);
text-align:center;
}

.leaderboard-list{
display: flex;
flex-direction: column;
gap: 25px;
}

.leaderboard-item{
display:grid;
grid-template-columns:70px 1fr 120px;
gap:var(--space);
padding:var(--space);
border-radius:var(--radius);
background:rgba(255,255,255,0.04);
}

@media(max-width:768px){
.game-start{flex-direction:column}
.leaderboard-item{grid-template-columns:50px 1fr 80px}
.word-display{font-size:var(--font-md)}
}