* {
    box-sizing: border-box;
}

body {
    margin: 0;
}

p, div, ul {
    margin: 8px;
}

div, canvas {
    margin-top: 6px;
    margin-bottom: 6px;
    padding: 6px;
}

button {
    outline: none;
}

.main {
    display: block;
}

.nav {
    display: flex;
    flex-wrap: nowrap;
    border-radius: 5px;
    margin-bottom: 8px;
}
.nav a {
    text-align: center;
    text-decoration: none;
    margin: 5px;
}

.row {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    padding: 0;
}
.row:after {
    content: "";
    display: table;
    clear: both;
}
.row-tall {
    height: 512px;
}
.row-short {
    height: 200px;
}
.row-tiny {
    height: 50px;
}

.column-3 {
    padding: 8px;
    justify-content: space-evenly;
}
.column-3-center {
    flex-basis: 512px;
}
.column-3-side {
    flex-grow: 1;
}
.column-2 {
    padding: 8px;
    justify-content: space-evenly;
    width: 50%;
}
.column-1 {
    padding: 8px;
    width: 100%;
}

.left-right > * + * {
    float: right;
}

button {
    border-radius: 5px;
}
button:active:after {
    border-radius: 5px;
    outline: none;
}
iframe {
    display: block;
    border: none;
    height: 100vh;
    width: 100%;
}

.text {
    border: none;
}

.together-1 {
    margin-bottom: 2px;
}
.together-2 {
    margin-top: 2px;
}

.space-below {
    margin-bottom: 25px;
}

.left {
    justify-content: left;
}
.center {
    justify-content: center;
}
.right {
    justify-content: right;
}

.no-stretch {
    width: fit-content;
}

.margin {
    margin: 6px 12px;
}
.no-margin {
    margin: 0;
}

.no-padding {
    padding: 0;
}

.text-left {
    text-align: left;
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}

.invisible {
    visibility: hidden;
}

.border {
    border-radius: 5px;
}

.hidden {
    display: none;
}

div.faq {
	padding: 0px;
	margin-top: 0px;
	margin-bottom: 5px;
	margin-left: 0px;
	margin-right: 0px;
}

.faq-question1 {
	display: inline;
	padding-right: 16px;
}
.faq-question2 {
	display: inline;
}

.faq-answer1 {
	display: inline;
	padding-right: 16px;
}
.faq-answer2 {
	display: inline;
}

kbd {
	border-style:double;
	border-width: 2px;
	border-radius: 5px;
}