section.input-checkbox {
    position: absolute;
    width: 60vw;
    left: 20vw;
    top: 25vh;
    background-color: lightgray;
    border-radius: 0.5vw;
    padding: 0.5vw;
    font-size: 1.5vw;
    z-index: 10;
}


p.input-checkbox {
    display: block;
    position: relative;
    color: black;
}

div.input-checkbox {
    margin-top: 1vw;
    position: relative;
    border: 1px solid black;
    display: inline-block;
    padding: 1vw;
    border-radius: 0.5vw;
}

div.input-checkbox:hover {
    cursor: pointer;
    background-color: lightpink;
}

label.input-checkbox {
    display: inline-block;
    width: 15vw;
    text-align: right;
}

input.input-checkbox {
    display: inline-block;
    margin-left: 1vw;
}

section.function-library, section.binding-library {
    position: fixed;
    z-index: 6;
    top: 10vw;
    width: 30vw;
    height: calc(100vh - 20vw);
    background-color: lightgray;
    border-radius: 1vw;
    overflow-y: scroll;
    overflow-x: hidden;
}

div.toggle-libraries {
    position: fixed;
    z-index: 6;
    top: 7vw;
    left: 1vw;
    background-color: lightgray;
    font-size: 1vw;
    padding: 0.5vw;
    color: black;
}

div.toggle-libraries:hover {
    background-color: grey;
    color: white;
}

section.function-library {
    left: 1vw;
}

section.binding-library {
    right: 1vw;
}

div.function, div.binding {
    margin: 1vw;
    display: block;
    width: 28vw;
    background-color: green;
    border-radius: 0.5vw;
    padding-top: 1vw;
    padding-bottom: 0.5vw;
}

div.remove-binding {
    background-color: lightgray;
    display: inline-block;
    margin-left: 1vw;
    border-radius: 0.5vw;
    color: red;
    padding: 1vw;
}

div.remove-binding:hover {
    background-color: red;
    color: lightgray;
    cursor: pointer;
}

p.title {
    font-size: 3vw;
    background-color: lightpink;
    border-radius: 1vw;
    margin: 1vw;
    margin-top: 0;
    padding: 1vw;
    padding-top: 0;
    display: block;
    color: brown;
}

p.description {
    font-size: 1vw;
    color: white;
    background-color: darkgreen;
    padding-left: 0.5vw;
    padding-right: 0.5vw;
    font-style: italic;
}

div.args {
    background-color: lightpink;
    border-radius: 1vw;
    font-size: 1vw;
    padding: 1vw;
    margin: 0.5vw;
}

div.arg {
    background-color: lightcoral;
    border-radius: 0.5vw;
    padding: 0.25vw;
    margin-top: 0.5vw;
}

p.arg-title {
    font-size: 1vw;
    background-color: lightpink;
    border-radius: 0.5vw;
    padding: 0.25vw;
}

p.arg-description {
    font-size: 0.75vw;
    font-style: italic;
}

section#samples {
    height: 100vh;
    width: 100vw;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

section#controls, section#controls-bottom {
    position: absolute;
    left: 1vw;
    width: 97vw;
    background-color: lightgray;
    border-radius: 0.5vw;
    height: 4vw;
    padding: 0.5vw;
    z-index: 3;
}

section#controls {
    top: 1vw;
}

section#controls-bottom {
    bottom: 1vw;
}

div#scroller {
    display: inline-block;
    width: 75vw;
    height: 4vw;
    background-color: grey;
    margin-right: 0.5vw;
}

div#scrollview, div#zoomview {
    opacity: 0.5;
    background-color: orange;
    width: 1vw;
    height: 4vw;
    position: relative;
    top: 0;
}

div#zoomer {
    display: inline-block;
    width: 15vw;
    height: 4vw;
    background-color: gray;
}

div#zoomer:hover, div#scroller:hover {
    cursor: pointer;
}

div.sample {
    position: absolute;
    bottom: 50vh;
    height: 25vh;
    background-color: grey;
}

div.selected {
    position: absolute;
    top: 0;
    background-color: black;
    height: 100vh;
    opacity: 0.5;
    z-index: 2;
}

div.selecting {
    position: absolute;
    top: 0;
    background-color: white;
    height: 100vh;
    opacity: 0.3;
    z-index: 2;
}

div#but {
    display: inline-block;
    height: 4vw;
    background-color: green;
    top: 0;
    margin-right: 0.5vw;
    width: 4vw;
}


div#but:hover {
    background-color: lightgreen;
    cursor: pointer;
}

div.bottom-button {
    display: inline-block;
    height: 4vw;
    background-color: lightgray;
    border: 1px solid gray;
    padding-left: 1vw;
    padding-right: 2vw;
    text-align: center;
    line-height: 4vw;
    font-size: 1.25vw;
}

div.bottom-button:not(.disabled):hover {
    border: 1px solid green;
    background-color: lightgreen;
    cursor: pointer;
}

div.bottom-button.disabled {
    color: gray;
}

section#edit-interface {
    z-index: 5;
    bottom: 1vw;
    left: 1vw;
    position: fixed;
}

div#copy input {
    width: 2vw;
    font-size: 1.25vw;
}

div#copy p {
    display: inline;
    margin-left: 1vw;
}

div#cursor-line {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    height: 100vh;
    width: 1px;
    background-color: white;
}

body {
    overflow: hidden;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; 

    font-family: Verdana;
    background-color: black;
}

.hidden {
    display: none;
}

input#formula {
    position: absolute;
    bottom: 1vw;
    left: 10vw;
    width: 80vw;
    border: none;
    font-size: 4vw;
}

html {
    box-sizing: border-box;
}