.container {
    border: solid 1px black;
    border-radius: 5px;
    box-shadow: 5px 5px 2px 1px rgba(0, 0, 255, .2);
    padding: 5px;
    margin-left: 5px;
    margin-right: 5px;
}

.flex {
    display: flex;
    flex-flow: wrap;
    min-height: 5em;
}

.mainForm {
    width: 20em;
    position: absolute;
}

/* All table elements are equal size */
table {
    width: 100%;
    table-layout: fixed;
}

#mainTable {
    margin-left: 21em;
    width: calc(100% - 21em);
}

td {
    vertical-align: top;
}

/* for input text and textarea, take full size */
textarea {
    width: 98%;
    resize: vertical;
}

/* Center header */
h1, h2, h3, h4 {
    margin: 0;
    text-align: center;
}

/* .topRight elements are displayed at the top right of the .topRightContainer container */
.topRightContainer {
    position: relative;
}

.topRight {
    position: absolute;
    top: 0;
    right: 0;
}

/* Greyout divs that are disabled */
.disabled {
    opacity: 0.5;
}

#network {
    margin-left: 21em;
    width: calc(100% - 21em);
    height: 40vw;
    border: black 1px solid;
}