/* ===========================
   MYSTERIA - STYLE.CSS
   Version 1.0
=========================== */

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Poppins:wght@300;400;500;600&display=swap');

/* Reset */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;

background:#050816;

color:white;

overflow-x:hidden;

}

/* Progress Bar */

#progress-bar{

position:fixed;

top:0;

left:0;

width:0%;

height:4px;

background:#8a5cff;

z-index:9999;

}

/* Loader */

#loader{

position:fixed;

top:0;

left:0;

width:100%;

height:100vh;

background:#050816;

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

z-index:99999;

}

.loader-logo{

font-family:'Cinzel',serif;

font-size:40px;

color:#ffd54f;

letter-spacing:4px;

margin-bottom:15px;

}

#loader p{

color:#d0d0d0;

font-size:16px;

}

/* Navigation */

header{

position:fixed;

top:0;

left:0;

width:100%;

padding:18px 40px;

z-index:1000;

background:rgba(255,255,255,.06);

backdrop-filter:blur(12px);

border-bottom:1px solid rgba(255,255,255,.08);

}

nav{

display:flex;

justify-content:space-between;

align-items:center;

}

.logo{

font-family:'Cinzel',serif;

font-size:26px;

color:#FFD54F;

font-weight:bold;

}

nav ul{

display:flex;

list-style:none;

gap:30px;

}

nav a{

text-decoration:none;

color:white;

transition:.3s;

}

nav a:hover{

color:#FFD54F;

}

#theme-btn{

background:#7c3aed;

color:white;

border:none;

padding:10px 16px;

border-radius:12px;

cursor:pointer;

}

/* Hero */

.hero{

height:100vh;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

padding:20px;

}

.hero-content{

max-width:850px;

}

.top-text{

letter-spacing:4px;

color:#FFD54F;

margin-bottom:20px;

}

.hero h1{

font-family:'Cinzel',serif;

font-size:65px;

margin-bottom:20px;

}

.subtitle{

font-size:19px;

line-height:1.8;

color:#d8d8d8;

margin-bottom:35px;

}

.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.primary{

background:#7c3aed;

color:white;

padding:16px 32px;

border:none;

border-radius:40px;

cursor:pointer;

font-size:16px;

transition:.35s;

}

.primary:hover{

transform:translateY(-5px);

box-shadow:0 0 20px #7c3aed;

}

.secondary{

background:transparent;

color:#FFD54F;

padding:16px 32px;

border:2px solid #FFD54F;

border-radius:40px;

cursor:pointer;

transition:.35s;

}

.secondary:hover{

background:#FFD54F;

color:black;

}

/* Cards */

.preview{

padding:120px 8%;

}

.preview h2{

text-align:center;

font-size:42px;

margin-bottom:60px;

font-family:'Cinzel',serif;

}

.cards{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:30px;

}

.card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

backdrop-filter:blur(12px);

padding:30px;

border-radius:20px;

transition:.4s;

}

.card:hover{

transform:translateY(-10px);

box-shadow:0 0 25px rgba(124,58,237,.5);

}

.card h3{

margin-bottom:15px;

color:#FFD54F;

}

/* Footer */

footer{

padding:30px;

text-align:center;

border-top:1px solid rgba(255,255,255,.08);

color:#cfcfcf;

}

/* Responsive */

@media(max-width:900px){

nav ul{

display:none;

}

.hero h1{

font-size:42px;

}

.subtitle{

font-size:17px;

}

}
/* Flying Rocket */

.rocket {
    position: fixed;
    font-size: 60px;
    left: -100px;
    bottom: 20%;
    z-index: 5;
    animation: flyRocket 6s linear infinite;
}

@keyframes flyRocket {
    0% {
        transform: translateX(-150px) translateY(100px) rotate(-20deg);
    }

    100% {
        transform: translateX(calc(100vw + 300px)) translateY(-150px) rotate(-20deg);
    }
}

    


/* Smoke */

.smoke {
    position: absolute;
    width: 18px;
    height: 18px;
    background: white;
    border-radius: 50%;
    left: 5px;
    bottom: -5px;
    filter: blur(2px);
    animation: smokeMove 1s infinite;
}

.smoke::before,
.smoke::after {
    content: "";
    position: absolute;
    background: white;
    border-radius: 50%;
}

.smoke::before {
    width: 25px;
    height: 25px;
    left: -15px;
    top: 10px;
}

.smoke::after {
    width: 30px;
    height: 30px;
    left: -25px;
    top: 25px;
}


@keyframes smokeMove {

    0% {
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        transform: translateY(40px);
    }

}
/* Quiz Section */
.quiz {
    background: #0b0b16;
    padding: 60px 20px;
    text-align: center;
    color: white;
}

.quiz h2 {
    font-size: 38px;
    color: #8a7cff;
    margin-bottom: 15px;
    text-shadow: 0 0 15px #8a7cff;
}

.quiz p {
    color: #b8b8c8;
    font-size: 18px;
    margin-bottom: 30px;
}

.quiz-card {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(138, 124, 255, 0.4);
    border-radius: 15px;
    padding: 30px;
    max-width: 600px;
    margin: auto;
    box-shadow: 0 0 25px rgba(138, 124, 255, 0.2);
    backdrop-filter: blur(10px);
}

.quiz-card h3 {
    font-size: 22px;
    margin-bottom: 25px;
}

.quiz-card button {
    display: block;
    width: 80%;
    margin: 12px auto;
    padding: 12px;
    border-radius: 25px;
    border: 1px solid #8a7cff;
    background: transparent;
    color: white;
    cursor: pointer;
    transition: 0.3s;
}

.quiz-card button:hover {
    background: #8a7cff;
    color: black;
    box-shadow: 0 0 20px #8a7cff;
}
/* Contact Section */
.contact {
    background: #080812;
    padding: 60px 20px;
    text-align: center;
    color: white;
}

.contact h2 {
    font-size: 38px;
    color: #8a7cff;
    margin-bottom: 15px;
    text-shadow: 0 0 15px #8a7cff;
}

.contact p {
    color: #b8b8c8;
    font-size: 18px;
    margin-bottom: 30px;
}

.contact form {
    max-width: 600px;
    margin: auto;
    background: rgba(255, 255, 255, 0.05);
    padding: 30px;
    border-radius: 15px;
    border: 1px solid rgba(138, 124, 255, 0.4);
    box-shadow: 0 0 25px rgba(138, 124, 255, 0.2);
    backdrop-filter: blur(10px);
}

.contact input,
.contact textarea {
    width: 90%;
    padding: 14px;
    margin: 12px;
    background: transparent;
    border: 1px solid #8a7cff;
    border-radius: 10px;
    color: white;
    outline: none;
    font-size: 16px;
}

.contact textarea {
    height: 120px;
    resize: none;
}

.contact input::placeholder,
.contact textarea::placeholder {
    color: #aaa;
}

.contact button {
    margin-top: 15px;
    padding: 12px 35px;
    border-radius: 25px;
    border: 1px solid #8a7cff;
    background: transparent;
    color: white;
    cursor: pointer;
    font-size: 16px;
    transition: 0.3s;
}

.contact button:hover {
    background: #8a7cff;
    color: black;
    box-shadow: 0 0 20px #8a7cff;
}
/* Theme Button */
#theme-toggle {
    background: transparent;
    border: 1px solid #8a7cff;
    color: white;
    font-size: 20px;
    border-radius: 50%;
    width: 45px;
    height: 45px;
    cursor: pointer;
    transition: 0.3s;
}

#theme-toggle:hover {
    background: #8a7cff;
    box-shadow: 0 0 20px #8a7cff;
}


/* Light Mode */
.light-mode {
    background: #f4f4f4;
    color: #111;
}

.light-mode .navbar {
    background: rgba(255,255,255,0.8);
}

.light-mode .navbar a {
    color: #111;
}

.light-mode .quiz,
.light-mode .contact {
    background: #ffffff;
    color: #111;
}

.light-mode .quiz-card,
.light-mode .contact form {
    background: rgba(0,0,0,0.05);
}
#ancient {
    scroll-margin-top: 350px;
}
/* Saturn Background */
.saturn-bg {
    position: fixed;
    top: 50%;
    right: 40px;
    transform: translateY(-50%);
    font-size: 250px;
    opacity: 0.08;
    z-index: -1;
    pointer-events: none;
    user-select: none;
    animation: floatSaturn 8s ease-in-out infinite;
}

@keyframes floatSaturn {
    0%, 100% {
        transform: translateY(-50%);
    }

    50% {
        transform: translateY(-55%);
    }
}
/* Daily Mystery Box */
.mystery-box {
    margin: 30px auto;
    max-width: 700px;
    padding: 25px;
    background: rgba(255,255,255,0.05);
    border: 1px solid #8a7cff;
    border-radius: 15px;
    color: white;
    text-align: center;
    box-shadow: 0 0 20px rgba(138,124,255,0.3);
}

.mystery-box h3 {
    color: #8a7cff;
    margin-bottom: 15px;
}

.mystery-box p {
    color: #ddd;
    line-height: 1.6;
}
.mystery-box {
    animation: fadeIn 0.8s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* ============================= */
/* Ancient Civilizations Page */
/* ============================= */
.page-header{
    text-align:center;
    padding:1px 1px 1px;
}

.page-header h1{
    color:#ffd54f;
    font-size:2.5rem;
    text-shadow:0 0 15px rgba(255,213,79,0.7);
}

.page-header p{
    color:#cccccc;
    margin-top:1px;
    margin-bottom:40px;
}

.back-btn{
    display:inline-block;
    margin-bottom:20px;
    color:#8a7cff;
    text-decoration:none;
    font-weight:bold;
    transition:0.3s;
}

.back-btn:hover{
    color:#ffffff;
}

.mystery-page{
    max-width:900px;
    margin:40px auto;
    padding:25px;
}
.mystery-image{
    width:100%;
    max-width:850px;
    display:block;
    margin:200px auto 200px auto;
    border-radius:18px;
    box-shadow:0 0 25px rgba(255,215,0,0.35);
}
.info-box{
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(138,124,255,0.4);
    border-radius:15px;
    padding:20px;
    margin:25px 0;
    backdrop-filter:blur(8px);
}

.info-box p{
    margin:10px 0;
    color:#eeeeee;
}

.mystery-page h2{
    color:#ffd54f;
    margin-bottom:15px;
}

.mystery-page h3{
    color:#8a7cff;
    margin-top:30px;
}

.mystery-page p,
.mystery-page li{
    color:#dddddd;
    line-height:1.8;
}

.mystery-page ul{
    padding-left:20px;
}

#clue-btn{
    margin-top:30px;
}

#hidden-clue{
    display:none;
    margin-top:30px;
    padding:20px;
    border-left:5px solid gold;
    background:rgba(255,215,0,0.08);
    border-radius:10px;
    animation:fadeClue 1s ease;
}

@keyframes fadeClue{
    from{
        opacity:0;
        transform:translateY(20px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}
.card-link {
    text-decoration: none;
    color: inherit;
    display: block;
}
/* ===========================
   Mysteria Quiz Section
=========================== */

.quiz{
    padding:80px 20px;
    text-align:center;
}

.quiz h2{
    font-size:2.2rem;
    color:#ffd700;
    margin-bottom:15px;
    text-shadow:0 0 15px rgba(255,215,0,0.5);
}

.quiz p{
    color:#cfcfcf;
    margin-bottom:30px;
}

.quiz-card{
    max-width:700px;
    margin:auto;
    padding:35px;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(255,255,255,0.1);
    border-radius:20px;
    backdrop-filter:blur(10px);
    box-shadow:0 0 30px rgba(0,0,0,0.5);
}

.quiz-card h3{
    color:white;
    margin-bottom:25px;
    line-height:1.6;
}
.quiz-option{

    width:100%;
    padding:15px;
    margin:12px 0;

    background:#141414;
    color:white;

    border:2px solid #333;
    border-radius:12px;

    cursor:pointer;
    transition:0.3s;
    font-size:17px;

}

.quiz-option:hover{

    border-color:#ffd700;
    background:#1d1d1d;
    transform:translateY(-2px);

}

.quiz-option.correct{

    background:#1f8f4d;
    border-color:#32cd32;
    color:white;

}

.quiz-option.wrong{

    background:#8b1e1e;
    border-color:#ff4d4d;
    color:white;

}
#quiz-result{

    margin-top:25px;
    font-size:18px;
    font-weight:bold;
    color:#ffd700;

}
/* Go To Top Button */

#topBtn{

    position:fixed;

    bottom:25px;

    right:25px;

    width:55px;

    height:55px;

    border:none;

    border-radius:50%;

    background:#ffd700;

    color:black;

    font-size:24px;

    font-weight:bold;

    cursor:pointer;

    display:none;

    z-index:999;

    box-shadow:0 0 20px rgba(255,215,0,0.6);

    transition:0.3s;

}

#topBtn:hover{

    transform:scale(1.15);

    box-shadow:0 0 30px rgba(255,215,0,1);

}