@font-face {
    font-family: "unscii";
    src: url("unscii-16.ttf") format("ttf") url("unscii-16.woff") format("woff");
}
a {
    color: lightgrey;
}
a:visited {
    color: lightblue;
}
a:hover {
    color: white;
}
html, body {
    margin: 0;
    width: 100%;
}

canvas {
    background-color: black;
    image-rendering: crisp-edges;
    image-rendering: pixelated;
    border: 0.1rem solid rgb(53, 53, 53);
    width: 100%;
}

canvas:fullscreen {
    border: none;
}
editor-window {
    width: auto;
}
editor-window > div > textarea {
  outline: none;
}
html {
    background: #303030;
    color: #EEE;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

body {
    height: 100vh;
}

textarea {
    background-color: #444;
    color: #FFF;
    border: 0px;
}

#register-view {
    overflow-x: auto;
}

#stdout {
    height: 40ch;
    width: 40ch;
    overflow: scroll;
    background: #000;
    color: #FFF;
    font-family: monospace;
    display: block;
    white-space: pre;
    resize: auto;
}

#stdin {
    background: #444;
    color: #fff;
    font-family: unscii;
    border-width: 0;
}

button {
    background: #444;
    color: #EEE;
    border-width: 0;
    filter: brightness(75%);
    text-transform: uppercase;
}
button:hover, button:focus {
    filter: brightness(85%);
}
button:disabled {
    filter: brightness(40%);
}
button:active {
    filter: brightness(100%);
}

input {
    font-family: unscii;
    background: #444;
    color: #FFF;
    border: 0;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    appearance: textfield;
    -moz-appearance: textfield;
}

select {
  background-color: #444;
  color: #EEE;
  font-family: unscii;
  border-width: 0;
}
#share-button {
    font-family: codicon;
}
main {
    #left-panel {
        width: 100%;
    }
    #right-panel {
        width: 100%;
        height: 80vh;
        display: flex;
        align-items: stretch;
        flex-direction: column;
        > * {
            overflow-y: scroll;
            flex-basis: 100%;
        }
    }
        > * {
            width: 100%;
        }
    }

#program-control-buttons {
    display: flex;
    flex-direction: row;
    button {
        flex-basis: 100%;
        padding: 1.25em;
        color: white;
    }
    #examples-button {
        background-color: #811ce6;
    }
    #compile-and-reset-button {
        background-color: #1266f1;
    }
    #pause-button {
        background-color: #f93154;
    }
    #compile-and-run-button {
        background-color: #00b74a;
    }
    #step-button {
        background-color: #ffa900;
    }
    #share-button {
        background-color: #39c0ed;
    }
}
#configuration-tab {
    display: flex;
    flex-direction: column;
}
#display-tab {
    max-width: 80%;
}
*[role="tablist"] {
        display: flex;
        flex-direction: row;
        max-width: 100%;
    button {
        flex-basis: 100%;
        border-bottom-width: 2px;
        border-color: transparent;
        padding: .5em;
    }
    button[aria-selected="true"] {
        border-bottom-color: #1266f1;
        filter: brightness(100%);
    }
}

*[aria-expanded="false"] {
    display: none !important;
}

*[role="tabpanel"] {
    max-width: 100%;
}

@media screen and (min-width: 100ch){

    main {
        display: grid;
        grid-template-columns: 50% 50%;
        #left-panel {
            grid-column-start: 1;
            grid-column-end: 2;
            width: 100%;
        }
        #right-panel {
            grid-column-start: 2;
            grid-column-end: 3;
            width: 100%;
            height: 80vh;
            display: flex;
            align-items: stretch;
            flex-direction: column;
            > * {
                overflow-y: scroll;
                flex-basis: 100%;
            }
        }
        > * {
            width: 100%;
        }
    }
    div {
        grid-column-start: 1;
        grid-column-end: 3;
    }
}