body{
    background: #111;
}*{
    font-family: sans-serif;
    color: white;
    box-sizing: border-box
}
#main,#game{
    text-align: center;
    align-content: middle;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#game{
    max-width: 100vw;
    overflow-x: auto;
}
table{
    border-spacing: 3px;
}

td{
    border: 2px solid #fff8;
    border-radius: 10px;
    font-size: 2em;
    padding: 0.3em;
    font-family: monospace;
    min-width: 1em;
}
input{
    position: absolute;
    opacity: 0
}
dialog{
    background:#333;
    border-radius: 2px;
    width: 90vw;
    height: 70vh;
}
button{
    border: 2px solid #888;
    border-radius: 10px;
    padding: 5px;
    background: #000;
}
#keyboard td{
    min-width: calc(1ch + 0.6em + 4px);
}

@media only screen and (max-width: 30em) {
    /* mobile*/
    #game{
        align-items: start;
    }
}

.hidden{
    display: none;
}

#sharebutton{
    background-color: rgba(102, 204, 68, 0.8);
}

#keyboardtable td{
    border: 1px solid #fff8;
    opacity: 0.8;
    margin: 0.1em;
}

#keyboardtable tr{
    justify-content: center;
    width: 100%;
    display: flex;
}

#keyboardtable{
    margin-top: 5em;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: -moz-none;
    width: 100%;
    overflow-x: auto;
}