body {
    background-color: #333;
    color: #bbb;
    text-align: center;
    font-family: sans-serif;
    font-size: 20px;
}
a {
    color: #bbb;
}
#canvasParent {
    background-color: #3d3d3d;
    padding: 20px;
    display: inline-block;
}
:checked + span {
    color: white;
}

#mainwrapper {
    display: flex;
    justify-content: center;
    padding-top: 60px;
}

.tools {
    display: flex;
    flex-direction: column;
}

#mainwrapper .left {
    margin-right: 8px;
}
#mainwrapper .center {
    position: relative;
    top: -60px;
    max-width: 700px;
}
h1 {
    font-size: 30px;
}
#mainwrapper .right {
    margin-left: 16px;
}
#mainwrapper > div {
    text-align: left;
}
#mainwrapper h2 {
    line-height: 1rem;
    font-size: 24px;
    margin-right: 8px;
}
#height {
    width: 2em;
}
input.error {
    background-color: red;
}

#info {
    text-align: left;
    margin: auto;
}
.output button {
    display: block;
}

.colorpick {
    position: absolute;
    z-index: 100;
    background-color: black;
    cursor: pointer;
}
.colorpick tr:first-child td {
    text-align: right;
}
.colorpick td {
    text-align: center;
}
.colorpick td.light {
    color: white;
}
.colorpick td.dark {
    color: black;
}
.colorHolder.light {
    color: white;
}
.colorHolder.dark {
    color: black;
}

.fgbg {
    display: inline-block;
    cursor: pointer;
}
.colorHolder {
    display: inline-block;
    width: 1.6em;
    text-align: center;
}

label.mini {
    font-size: 12px;
    text-align: left;
    padding-left: 40px;
}
button {
    margin-top: 4px;
}
select {
    font-size: 20px;
}
#sectiontext,
#sectioncolor,
#sectionselect,
#sectiongradiant {
    display: none;
    margin-left: 20px;
    background-color: #555;
    padding: 4px;
}
.cols2 {
    display: flex;
    justify-content: space-around;
}

#importmsg {
    visibility: hidden;
}

summary {
    font-size: 24px;
    font-weight: bold;
    line-height: 3rem;
}

.twocol {
    display: flex;
}
.twocol > div {
    padding-right: 20px;
}
.fauxlink {
    text-decoration: underline;
}

.gradrow td {
    width: 2px;
}
.gradrow td.full {
    width: auto;
}
.gradtable {
    border-spacing: 0;
}

.marginBelow {
    margin-bottom: 10px;
}

#kerneldesc {
    max-width: 300px;
}

details > details {
    margin-left: 20px;
}

.block2x2 {
    width: 200px;
    display: inline-flex;
    flex-wrap: wrap;
}
.block2x2 label {
    flex: 50%;
}

#scanlinecount {
    display: none;
}

#downloadButtonWrapper button {
    display: block;
}
