*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
min-height:100vh;
background:linear-gradient(135deg,#020817,#07122f,#020817);
color:white;
}

body::before{
content:"";
position:fixed;
inset:0;
background:
radial-gradient(circle at top left,#0f3b91 0%,transparent 35%),
radial-gradient(circle at bottom right,#0d1b52 0%,transparent 40%);
z-index:-1;
}

/* ===== CONTAINER ===== */

.container{
width:80%;
max-width:1500px;
margin:auto;
padding:20px 0 50px;
}

/* ===== NAVBAR ===== */

.navbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 28px;
border-radius:24px;
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
backdrop-filter:blur(18px);
margin-bottom:40px;
}

.logo{
font-size:38px;
font-weight:800;
}

.logo span{
color:#38bdf8;
}

.back-btn{
text-decoration:none;
color:white;
padding:14px 24px;
border-radius:16px;
background:linear-gradient(135deg,#2563eb,#38bdf8);
font-weight:600;
transition:.3s;
}

.back-btn:hover{
transform:translateY(-3px);
}

/* ===== HERO ===== */

.hero{
text-align:center;
margin-bottom:40px;
}

.hero h1{
font-size:68px;
margin-bottom:15px;
}

.hero p{
font-size:20px;
color:#cbd5e1;
}

/* ===== MASTER CARD ===== */

.master-card{
display:flex;
align-items:center;
gap:30px;
padding:35px;
border-radius:30px;
text-decoration:none;
color:white;
background:linear-gradient(135deg,#2563eb,#38bdf8);
margin-bottom:35px;
transition:.3s;
}

.master-card:hover{
transform:translateY(-5px);
}

.master-icon{
font-size:70px;
}

.master-card h2{
font-size:40px;
margin-bottom:8px;
}

.master-card p{
font-size:18px;
}

/* ===== TOPIC GRID ===== */

.topic-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.topic-card{
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
backdrop-filter:blur(18px);
border-radius:22px;
padding:22px;
text-decoration:none;
color:white;
min-height:150px;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
transition:.3s;
}

.topic-card:hover{
transform:translateY(-5px);
border-color:#38bdf8;
box-shadow:0 0 25px rgba(56,189,248,.3);
}

.topic-number{
font-size:32px;
font-weight:700;
color:#38bdf8;
margin-bottom:12px;
}

.topic-title{
font-size:15px;
line-height:1.5;
}

/* ===== QUIZ PAGE ===== */

.quiz-box{
width:100%;
max-width:800px;
margin:auto;
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
backdrop-filter:blur(20px);
border-radius:30px;
padding:35px;
}

.quiz-title{
text-align:center;
margin-bottom:20px;
font-size:32px;
}

.progress{
height:12px;
background:rgba(255,255,255,.08);
border-radius:20px;
overflow:hidden;
margin-bottom:20px;
}

.progress-bar{
height:100%;
width:0%;
background:linear-gradient(135deg,#2563eb,#38bdf8);
transition:.3s;
}

.timer{
text-align:center;
font-size:26px;
font-weight:700;
margin-bottom:20px;
color:#38bdf8;
}

.question{
font-size:20px;
font-weight:600;
margin-bottom:25px;
line-height:1.6;
}

.answers{
display:grid;
gap:10px;
}

.answer{
padding:10px;
border-radius:10px;
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
cursor:pointer;
transition:.3s;
}

.answer:hover{
border-color:#38bdf8;
}

.correct{
background:#16a34a !important;
}

.wrong{
background:#dc2626 !important;
}

.next-btn{
margin-top:20px;
width:100%;
padding:16px;
border:none;
border-radius:16px;
background:linear-gradient(135deg,#2563eb,#38bdf8);
color:white;
font-size:18px;
font-weight:600;
cursor:pointer;
display:none;
}

.result{
display:none;
text-align:center;
}

.result h2{
font-size:42px;
margin-bottom:25px;
}

.result p{
font-size:22px;
line-height:2;
}

.restart{
margin-top:20px;
padding:16px 30px;
border:none;
border-radius:16px;
background:linear-gradient(135deg,#2563eb,#38bdf8);
color:white;
font-size:18px;
cursor:pointer;
}

.back-to-quizs{
display:inline-block;
margin-top:15px;
margin-left:10px;
padding:16px 30px;
border-radius:16px;
text-decoration:none;
color:white;
font-size:18px;
font-weight:600;
background:linear-gradient(135deg,#0f766e,#14b8a6);
transition:.3s;
}

.back-to-quizs:hover{
transform:translateY(-3px);
}

/* ===== BACKGROUND TEXT ===== */

#background-texts{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
overflow:hidden;
z-index:-1;
pointer-events:none;
}

.floating-text{
position:absolute;
font-size:28px;
font-weight:700;
color:rgba(255,255,255,.06);
white-space:nowrap;
user-select:none;
}

/* ===== RESPONSIVE ===== */

@media(max-width:1200px){

.topic-grid{
grid-template-columns:repeat(3,1fr);
}

}

@media(max-width:768px){

.hero h1{
font-size:42px;
}

.topic-grid{
grid-template-columns:repeat(2,1fr);
}

.master-card{
flex-direction:column;
text-align:center;
}

.quiz-box{
padding:25px;
}

.question{
font-size:20px;
}

}

@media(max-width:500px){

.topic-grid{
grid-template-columns:1fr;
}

.logo{
font-size:28px;
}

.hero h1{
font-size:34px;
}

}