div {
    margin: 1em 0;
}

#topButtons {
    margin:0;
    display:grid;
    grid-template-columns: auto auto;
}

#topButtons div {
    margin:0;
}

#renderCheckDiv {
    justify-self:center;
}

#topButtons label {
    position: absolute;
  left: 70%; 
}

#IO {
    display:flex;
    height:80vh;
    margin-top:1ex;
}

textarea, pre, iframe {
    border:1px solid #000;
    margin:0;
    padding:2px;
    font-size:1em;
    overflow:scroll;
    white-space: pre-wrap;
    resize: horizontal;
    width:50%;
}

#regexDIV {
    display:grid;
    grid-template-columns: 40% auto 40%;
    justify-items: center;
}

#firstRegexDIV {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
}

#matchbox {
    padding-right:1em;
}

#flags label {
    padding:0 .5ex;
}

#regexDIV div {
    margin:0;
}

label {
    font-weight:bold;
}

label abbr {
    color:red;
    font-size:90%;
    padding-left:.5ex;
}

#helpPopover {
    position: absolute;
    top: 25%;
    left: 50%;
    transform: translate(-50%);
}

#helpPopover button {
    float:right;
}

footer {
    margin-top:2em;
    text-align:center;
}
