body {
    background-color: #fafafa;
    overflow-x: hidden;
}

.container {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100dvh;
}

#signContainer {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 25vh;
    min-height: 25vh;
    max-height: 25vh;
    width: 100%;
}

.button-grid {
    flex: 25;
    display: grid;
    align-items: center;
    justify-content: center;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0.5rem;
    min-height: 30vh;
    width: 100%;
}

.button-grid .btn {
    width: 100%;
    height: 100%;
    white-space: normal;
}

.button-line {
    flex: 5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.button-line .btn {
    margin: 5px 10px;
    min-height: 32px;
    min-width: 96px;
}

.spacer {
    height: 100%;
}

.spacerW {
    width: 5%;
}

#questionText {
    display: flex;
    align-items: center;
    justify-content: center;
    position: center;
    width: 100%;
    min-height: 6dvh;
    font-size: 1.2rem;
}

#answerText,
#finishText {
    min-height: 6dvh;
    font-size: 1.2rem;
}

#finishText {
    position: absolute;
    width: 100%;
    background-color: #fafafaef;
}

#footerText {
    font-size: 0.6rem;
}

#selfTest {
    position: fixed;
    margin: 0 0 0 0;
    bottom: 16px;
    right: 0px;
    opacity: 0.7;
}

.form-switch {
    margin: 0 0 0 0;
}

@media only screen and (max-width: 600px) {
    #questionText {
        font-size: 0.8rem;
    }

    .button-grid {
        min-height: 50dvh;
    }
}

@media only screen {
    .btn:hover {
        background: #fff;
    }
}