html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    background-color: #051b36;
    overflow: hidden;
}

html, body * {
    font-family: Anonymous Pro, Arial, Helvetica, sans-serif;
}

p {
    font-size: 1em;
    margin: 0.2rem 0;
}

pre {
    margin: 0.2rem 0;
}

span {
    vertical-align: top;
}

*:focus {
    outline: none;
}

.window {
    max-width: 1008px;
    height: 90%;
    margin: 2rem auto;
    
}

.container {
    padding:0 2rem;
    border-right: 2px solid #405F7B;
    border-left: 2px solid #405F7B;
    margin: 0 20px;
}

.code_container {
    margin: 0 2vw;
}


.console {
    overflow-y: auto;
    overflow-x: auto;
    height: 70vh;
    width: 100%;
}

.header {
    color: white;
    font-size: 1rem;
    margin-bottom: 2rem;
}

.title {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.subtitle {
    opacity: 65%;
    color: rgba(255, 255, 255, 0.65);
}

.input {
    margin: 0.2rem 0;
    padding-left: 0.5rem;
    background: transparent;
    border: none;
    color: transparent;
    text-shadow: 0 0 0 #FFF;
    font-size: 1rem;

    position: relative;
    display: -moz-inline-stack;
    display: inline-block;
    *display: inline;
    line-height: 1.5em;
    _height: 1.5em;
}

.input:hover {
    cursor: pointer;
}

.input::after {
    content: "";
    position: absolute;
    top: 0;
    right: -12px;
    display: -moz-inline-stack;
    display: inline-block;
    *display: inline;
    background-color: #DD56E2;
    vertical-align: top;
    width: 10px;
    height: 100%;
    -webkit-animation: blink 1s step-end infinite;
    animation: blink 1s step-end infinite;
}

@-webkit-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; }
}

@keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; }
}

.input.no-after::after {
    display: none;
}

.program {
    color: #FF9F21;
    padding-right: 0.5rem;
    float: left;
    clear: left;
}

.tilde {
    color: #00C8A5;
    padding-right: 0.5rem;
    float: left;
    clear: left;
}

.tilde br {
    display: none;
}

.update {
    color: #00C8A5;
    float: left;
    clear: left;
}

.comment {
    color: #5DA0DF;
    float: left;
    clear: left;
}

.error {
    color: rgb(206, 100, 100);
    float: left;
    clear: left;
}

.result {
    color: #FFF;
    float: left;
    clear: left;
}

.result pre {
    word-wrap: break-word;
}

.result-grid {
    color: #5DA0DF;
    float: left;
    clear: left;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1rem;
    justify-items: left;
}

.result-grid * {
    text-decoration: underline;
}

.result-grid *:hover {
    cursor: pointer;
}

.console::-webkit-scrollbar {
    width: 10px;
}
 
.console::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(255, 255, 255, 0.5);
    box-shadow: inset 0 0 6px rgba(255, 255, 255, 0.5);
    border-radius: 5px;
}
 
.console::-webkit-scrollbar-thumb {
  background-color: white;
  outline: 1px solid slategrey;
  border-radius: 5px;
}

@media screen and (max-width: 640px) {
    .container {
        padding: 0 3vw;
    }

    .title {
        font-size: 5vw;
    }

    .subtitle, p, .input, pre, .program {
        font-size: 3vw;
    }

    .input {
        line-height: 1.5em;
    }
}