@import url('https://fonts.googleapis.com/css2?family=VT323&display=swap');

* {
    box-sizing: border-box;
}

html, body {
    width: 100%;
    height: 100%;
    font-size: 30px;
}

body {
    padding: 0;
    margin: 0;
    font-family: 'VT323', monospace;
    background-color: #000000;
    text-transform: uppercase;
    color: #00DD00;
    display: grid;
    grid-template-rows: calc(2.6rem + 20px) 1fr;
    
}

#status-bar {
    line-height: 1rem;
    font-size: 1rem;
    padding: 5px 20px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    .status-bar-row {
        display: flex;
        justify-content: space-between;
    }
}

#status-message {
    height: 30px;
    text-align: center;
}

.error {
    color: #DD0000;;
}

#title-bar {
    text-align: center;
    & h1#title {
        font-size: 2.6rem;
        display: inline;
        padding: 10px 0;
        margin: 0;
    }
}
#content {
    display: flex;
    justify-content: center;
    width: 100%;
}

.scene-container {
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 500px;
    min-width: 350px;
    width: 100%;
    border: 2px solid #00DD00;
    max-height: 700px;

    .scene {
        flex-direction: column;
        flex-grow: 1;
        display: none;
        height: 100%;
    }

    .current-scene {
        display: flex;
    }
    
    .row {
        display: flex;
        justify-content: center;
        margin-top: 10px;
    
        &#question-row {
            margin-top: 0px;
            font-size: 2.3rem;
            span {
                line-height: 2.3rem;
                padding: 0 10px;
            }
        }

        .row-answer {
            position: relative;
            display: inline;

            #answer {
                width: 200px;
                display: inline-block;
                font-size: 1.2rem;
                color: #00DD00;
                text-align: center;
                padding: 0 30px;
                border-bottom: #00DD00 3px solid;
            }

            .button-submit {
                position: absolute;
                width: 40px;
                height: 40px;
                line-height: 40px;
                right:-50px;
            }
        }

        .results {
            text-align: center;
            p {
                margin-top: 40px;
                margin-bottom: 40px;
                font-size: 1.2rem;
            }
        }

    }
    
    .grid {
        width: 220px;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-rows: 1fr 1fr 1fr 1fr;
        gap: 5px;
        margin-top: 40px;
    }
}
.button {
    font-family: 'VT323', monospace;
    font-size: 1.2rem;
    border: 2px solid #00DD00;
    border-radius: 10px;
    background-color: unset;
    color: #00DD00;
    touch-action: manipulation;
    border-radius: 25%;
    width: 70px;
    height: 70px;
    padding: unset;
}

.hero {
    font-size: 2rem;
    .row& {
        margin-top: 50px;
    }
}

#gameover-scene {
    #correct-answer, #wrong-answer {
        margin-left: 1ch;
    }
}

@media (hover: hover) and (pointer: fine) {
    /* Desktops with mouse */
    .button:hover {
        background-color: rgba(50, 255, 50, 0.3);
        cursor: pointer;
    }
}