body * {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

body {
    margin: 10px;
}

body.embed {
    overflow: hidden;
}

.nodisplay {
    display: none;
}

.nodisplay * {
    display: none;
}

.fileoptions {
    display: flex;
    flex-direction: row;
    gap: 2px;
}

#options {
    display: flex;
    flex-direction: row;
    gap: 2px;
}

.fileoptions input, .fileoptions button, #runoptions button {
    font-size: 26pt;
    border-radius: 5px;
    border: 1px solid gray;
}

.fileoptions input:hover, .fileoptions button:hover, #runoptions button:hover {
    cursor: pointer;
}

#runoptions {
    display: flex;
    flex-direction: row;
    gap: 2px;
}

#codeindiv {
    width: 100%;
    overflow: hidden;
}

#output:not(.shown) {
    display: none;
}

#output.shown {
    display: block;
    height: max-content;
}

#runoptions button {
    border: 1px solid #888;
    border-radius: 4px;
}

#runbtn > span > img {
    aspect-ratio: 1;
    height: 100%;
}

#runbtn > span {
    display: block;
    height: 1em;
    width: 1.3em;
}

#runbtn:hover, #outbtn:hover {
    border: 1px solid #666;
    border-radius: 4px;
}

#codeinput {
    display: block;
    background-color: #2e3440;
    color: #fff;
    height: 100%;
    width: 100%;
    resize: none;
    border: 0px;
    border-radius: 4px;
}

#output {
    display: block;
    left: 0px;
    background-color: #2e3440;
    color: #fff;
    width: 100%;
    min-height: 12.5rem;
    height: 12.5rem;
    max-height: 12.5rem;
    border: 1px solid #888;
    border-radius: 3px;
    overflow-y: scroll;
}

#output:hover {
    border: 1px solid #666;
}

#file-loader {
    display: none;
}

#codeinput {
    font-family: "Roboto Mono", monospace;
}

@media print {
    #options {
        display: none;
    }
}