@media (prefers-color-scheme: light) {

    button,
    select,
    textarea {
        background-color: #f0f0f0;
        color: #333;
    }

    textarea,
    select,
    fieldset {
        border-color: #333;
    }
}

@media (prefers-color-scheme: dark) {

    button,
    textarea,
    select {
        background-color: #333;
        color: #f0f0f0;
    }

    textarea,
    select,
    fieldset {
        border-color: #f0f0f0;
    }
}

body {
    text-align: center;
}

table {
    margin: auto;
}

textarea {
    font-family: "kodito";
    width: 32rem;
    height: 8rem;
    font-size: 2rem;
}

button.key {
    width: 4rem;
    height: 4rem;
    position: relative;
    border-radius: 1rem;
}

button.key.space {
    width: 12rem;
    height: 4rem;
}

.key .shifted {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    font-size: 1rem;
    opacity: 0.25;
}

.key .no-shifted {
    position: absolute;
    bottom: 0.5rem;
    left: 0.5rem;
    font-size: 2rem;
    opacity: 1;
}

.shift-active .shifted {
    font-size: 2rem;
    opacity: 1;
}

.shift-active .no-shifted {
    font-size: 1rem;
    opacity: 0.25;
}

p {
    text-align: left;
}

select {
    font-family: serif;
}