/* Google fonts import */
@import url('https://fonts.googleapis.com/css2?family=Luckiest+Guy&family=Poppins:wght@300&display=swap');

/* Override browser default styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Background styling */
html {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 2%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 98%, rgba(0, 0, 0, 1) 100%), url(../assets/images/pexels-pixabay-302820.jpg);
    background-color: #000000;
    background-size: contain;
    background-repeat: no-repeat;
    height: 100%;
    background-position: bottom;
}

body {
    width: 100%;
}

p {
    font-family: 'Poppins', sans-serif;
}

h1 {
    font-size: 7rem;
    margin-bottom: 20px;
    font-family: 'Luckiest Guy', cursive;
    color: #FFF;
    text-align: center;
}

h2 {
    font-size: 2.5rem;
    margin-bottom: 20px;
    font-family: 'Poppins', serif;
    text-align: center;
}



#header-div {
    margin: 0 auto;
    padding: 4rem 0 2rem 0;
}

/* Quiz container */
#quiz-container {
    max-width: 800px;
    margin: 20px auto;
    background-color: #fff;
    border: 1px solid #ddd;
    padding: 2rem;
    text-align: left;
    border-radius: 5px;
}

/* Start view */
#quiz-start {
    margin: 3rem 0;
    text-align: center;
}

/* Start and retry button */
#new-quiz-button {
    background-color: #4e4e4e;
    color: #fff;
    font-size: 1.5rem;
    padding: 15px 35px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-family: 'Poppins', sans-serif;
    margin-top: 2.5rem;
}

/* Quiz question view */
#quiz-question {
    max-width: 100%;
}

#quiz-image {
    max-width: 100%;
    height: auto;
    border: 1px solid #ddd;
    border-radius: 5px;
}

#quiz-question-text {
    font-size: 2.5rem;
    margin: 20px 0;
}

/* Quiz form with possible answers */
#quiz-form {
    margin: 20px 0;
}

/* Answer text */
label {
    display: block;
    margin-bottom: 10px;
    font-size: 1.2rem;
    font-family: 'Poppins', serif;
}

input[type="radio"] {
    margin-right: 10px;
}

/* Question submit button */
#submit-button {
    background-color: #4e4e4e;
    color: #fff;
    font-size: 18px;
    padding: 15px 30px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-family: 'Poppins', serif;
}

/* Progress bar container */
#progress-bar {
    width: 100%;
    height: 20px;
    margin-top: 3rem;
    border-radius: 5px;
    overflow: hidden;
    text-align: center;
}

/* Progress dots */
.progress-dot {
    width: 10px;
    height: 10px;
    margin: 0 5px;
    border: 1px solid #5f5f5f;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.3s;
}

/* Answered progress dots */
.progress-dot.answered {
    background-color: #222222;
}

/* Style for result view */
#quiz-result {
    font-size: 2.5rem;
    margin-bottom: 20px;
    font-family: 'Poppins', serif;
    text-align: center;
    margin-bottom: 20px;
}

#result-text {
    font-size: 1.5rem;
    margin-bottom: 20px;
}

#total-score {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 20px;
}


/* Responsive styling */


@media only screen and (max-width: 375px) {
    h1 {
        font-size: 1.8rem;
        margin-bottom: 10px;
        font-family: 'Luckiest Guy', cursive;
        color: #FFF;
        text-align: center;
    }

    h2 {
        font-size: 1rem;
        margin-bottom: 10px;
        font-family: 'Poppins', serif;
        text-align: center;
    }

    #quiz-container {
        margin: 0;
        padding: 1rem;
        border-radius: 0px;
    }

    #quiz-question-text {
        font-size: 1.5rem;
    }

    label {
        font-size: 1rem;
    }
}


@media only screen and (max-width: 720px) {
    h1 {
        font-size: 4rem;
        margin-bottom: 10px;
        font-family: 'Luckiest Guy', cursive;
        color: #FFF;
        text-align: center;
    }

    h2 {
        font-size: 2rem;
        margin-bottom: 10px;
        font-family: 'Poppins', serif;
        text-align: center;
    }

    p {
        font-size: 1.8rem;
    }
}

/* Apply smooth gradient to edges of image on wide screens */
@media only screen and (min-width: 1279px) {
    html {
        background-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 10%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 89%, rgba(0, 0, 0, 1) 100%), url(/assets/images/pexels-pixabay-302820.jpg);
    }
}

@media only screen and (min-width: 2700px) {
    html {
        background-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 85%, rgba(0, 0, 0, 1) 100%), url(/assets/images/pexels-pixabay-302820.jpg);
    }
}

@media only screen and (min-width: 3000px) {
    html {
        background-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 1) 100%), url(/assets/images/pexels-pixabay-302820.jpg);
    }
}
