* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	scroll-margin-top: calc(max(13px, 2vw) + 4px);
}

@font-face {
  font-family: 'Comix Heavy';
  src:
	   url('COMIXHVY.WOFF2') format('woff2'),
	   url('COMIXHVY.TTF')  format('truetype');
}

code {
	background: RGBA(0,0,0, 0.1);
	padding: 1px 5px;
}
kbd {
	background: white;
	border: 3px outset black;
	border-radius: 8px;
	color: black;
	padding: 0 4px;
}
pre {
	background: RGBA(0,0,0, 0.1);
	font-size: 16px;
	text-wrap: wrap;
	padding: 4px;
	border: 1px solid black;
	margin-top: 1em;
}

html, body {
	font-family: Comic Sans MS, Arial, sans-serif;
	font-size: 16pt;
	min-height: 100dvh;
}
body {
	background: url("../img/bottom.png"), linear-gradient(180deg,rgba(75, 7, 128, 0.8) 0%, rgba(108, 23, 106, 1) 95%), url("../img/wisetyness.png");
	background-attachment: scroll, fixed, scroll;
	background-repeat: repeat-x, repeat, repeat;
	background-position: bottom, top, top;
	background-size: 100vw, auto, auto;
	display: flex;
	flex-direction: column;
}
@supports not (height: 100dvh){
    html, body { height: 100vh; }
}

main > *, footer {
	max-width: 835px;
}
main > * {
	margin: 60px auto;
	line-height: 1.2;
	position: relative;
	z-index: 1;
}
main > *:not(.borderless), aside, dl.commands {
	box-shadow: 0 0 15px 0px #000;
}
section:not(.borderless), aside {
	padding: 20px 3%;
	background: url("../img/textureWhite.png") white;
	border: 2px solid black;
	border-radius: 12px;
}
section:after {
	content: '';
	display: block;
	height: 0;
	clear: both;
}
aside {
	padding: 4px;
	position: absolute;
	font-size: 0.75em;
	width: 200px;
	max-width: calc(50vw - 420px);
	box-sizing: content-box;
}
aside.right {
	left: 100%;
	text-align: left;
}
aside.left {
	right: 100%;
	text-align: right;
}
aside img {
	display: block;
	max-width: 100%;
	height: auto;
}
aside img.lightbox {
	cursor: zoom-in;
}
/*aside img:not(:hover) {
	filter: blur(2px);
}*/
aside img:first-child {
	border-top-right-radius: 8px;
	border-top-left-radius: 8px;
}
aside img:last-child {
	border-bottom-right-radius: 8px;
	border-bottom-left-radius: 8px;
}
section.borderless {
	text-align: center;
	font-size: 1.2em;
	color: #ECD13A;
	font-style: italic;
	text-shadow: 3px 2px 1px #004A0A;
}
section > *:first-child {
	margin-top: 1em;
}
section > *:last-child {
	margin-bottom: 1em;
}

h1,h2,h3,h4 {
	margin-top: 1em;
	text-shadow: 2px 2px 1px #AAA;
	font-weight: bold;
	clear: both;
}

h1 {
	font-family: "Comix Heavy";
	font-size: 1.25em;
	color: #707;
}
h2 {
	font-size: 1.15em;
	font-style: italic;
}
h2, h2 a {
	color: #383;
}
h3 {
	font-size: 1.15em;
	color: #707;
}
h4 {
	font-size: 1em;
	color: #0418B0;
}

section p:not(.noindent) {
	text-indent: 1.15em;
}

section p, section ol, section ul, section li {
	margin-top: 0.67em;
}
section:not(.borderless) > p, section > ol, section > ul {
	font-size: 0.88em;
}

.float.left {
	float: left;
	margin-right: 14px;
}
.float.right {
	float: right;
	margin-left: 14px;
}
section img.float {
	max-width: 25%;
}

ul {
	margin-left: 0;
	padding-left: 0;
}
li {
	margin-left: 1em;
}
li.alt {
	margin-left: calc(1em + 25px);
}
li.alt2 {
	margin-left: calc(1em + 50px);
}

details {
	margin: 30px auto;
	font-size: 0.75em;
	font-family: Arial, Tahoma, "Liberation Sans", sans-serif;
	background-image: url("../img/gemwall.png");
}
details, details summary {
	border-radius: 18px;
}
details:open, details:open summary {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
details summary {
	color: #ECD13A;
	padding: 9px;
	font-style: italic;
	text-shadow: 2px 1px 1px #004A0A;
	background: RGBA(108, 23, 106,0.92);
	padding-left: 10%;
}
details summary ~ * {
	padding: 12px 22px;
	background: RGBA(255,255,255,0.93);
	margin-top: 0;
}
details:not(:open) summary {
	background: RGBA(200,200,200,0.91);
	color: #333;
	text-shadow: 1px 1px 1px black;
}
details summary + * {
	border-top: 2px solid black;
}
details > *:last-child {
	border-bottom: 4px solid black;
}
details h4 {
	padding-top: 0;
	padding-bottom: 0;
}

#logoholder {
	position: fixed;
	top: 2vw;
}
#logo {
	width: calc(50vw - 422px);
	max-width: 400px;
	position: relative;
	z-index: -1;
	filter: drop-shadow(10px 10px 0px rgba(0,0,0, 0.5));
}

.toc a {
	font-family: "Comix Heavy";
	font-variant-caps: small-caps;
}

.bigmenu {
	display: flex;
	flex-wrap: wrap;
}
.bigmenu a {
	width: 32%;
	padding-top: 24%;
	margin: 0.5%;
	height: 0;
	display: block;
	text-align: center;
	text-decoration: none;
	color: white;
	position: relative;
}
.bigmenu a img {
	border: 6px solid #DD4F01;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0; left: 0%;
}
.bigmenu a span {
	background: #DD4F01;
	position: absolute;
	top: 75%;
	left: 0;
	width: 100%;
}

header:nav::before {
	content: '\x1F955';
	position: absolute;
	left: 0;
}
header nav {
	display: flex;
	text-align: center;
	position: fixed;
	width: 100%;
	top: 0;
	min-height: 1.3em;
	font-family: Arial, Tahoma, "Liberation Sans", sans-serif;
	font-size: calc(max(10px, 1.5vw));
	z-index: 4;
}
header nav > div {
	width: 25%;
	background: linear-gradient(180deg, rgba(87,0,200,1) 0%, rgba(87,0,200,0.5) 100%);
}
header nav a {
	color: white;
	text-shadow:
		1px 1px 1px #000,
		-1px 1px 1px #000,
		1px -1px 1px #000,
		-1px -1px 1px #000;
	font-style: normal;
	text-decoration: none;
}
header .dropdown {
	list-style-type: none;
}
.dropdown li {
	margin-left: 0;
}
header a {
	display: block;
}
nav:not(:hover) .dropdown {
	display: none;
}

a {
	color: #DD4F01;
}
main a {
	font-style: italic;
}
footer a {
	font-style: normal;
	font-size: 12pt;
	text-decoration: none;
}
a:hover {
	color: #ECD13A;
}

footer {
	margin: auto auto 0 auto;
	color: #DD4F01;
	text-align: center;
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
footer img {
	display: block;
}
#previous img {
	filter: drop-shadow(-5px 4px 0px rgba(0,0,0, 0.5));
}
#up img {
	filter: drop-shadow(0 4px 0px rgba(0,0,0, 0.5));
}
#next img {
	filter: drop-shadow(5px 4px 0px rgba(0,0,0, 0.5));
}

#screenshotcarousel {
	height: 200px;
}
@keyframes marquee {
	0% {
		transform: translate(0,0);
	}
	100% {
		transform: translate(-50%, 0);
	}
}
.marquee {
	overflow: hidden;
	mask-image: linear-gradient(90deg, transparent 0%,black 5%, black 95%, transparent 100%);
}
.marquee2 {
	position: absolute;
	top: 0; bottom: 0;
	animation: marquee 15s linear infinite;
	display: flex;
}
.marqueecopy {
	display: flex;
}
.marquee * {
	height: 100%;
	width: auto;
}

img.lightbox {
	cursor: pointer;
}
#popup {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	background: rgba(0,0,0, 0.6667);
	opacity: 0;
	transition: opacity linear 0.25s;
	pointer-events: none;
	cursor: pointer;
	z-index: 9;
}
#popup.popup {
	opacity: 1;
	pointer-events: auto;
}
#popupImage {
	max-width: 0;
	max-height: 0;
	transition: max-width linear 0.33s, max-height linear 0.33s;
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	cursor: zoom-out;
}
#popup.popup #popupImage {
	max-width: 80%;
	max-height: 100%;
}

dl.commands {
	background-image: url("../img/gemwall.png");
	margin-top: 15px;
	margin-left: 8px;
	font-size: 19px;
}
dl.commands > dt {
	font-size: 0.85em;
	color: #ECD13A;
	font-style: italic;
	text-shadow: 2px 1px 1px #004A0A;
	background: RGBA(108, 23, 106,0.8);
	border: solid black 1px;
	padding: 3px;
}
dl.commands > dd {
	border: solid black 1px;
	font-size: 0.75em;
}
table {
	background: RGBA(192,192,192,0.93);
	display: block;
}
table tr td:first-child {
	text-align: right;
}
table.command tr td:last-child {
	font-family: monospace;
}
table#jcsmlle {
	font-family: Arial, Tahoma, "Liberation Sans", sans-serif;
	font-size: 0.8em;
	margin-top: 1em;
}
dl.commands dd > :not(table) {
	background: RGBA(255,255,255,0.93);
	padding: 6px 3px 5px 21px;
	text-indent: 0;
	margin: 0;
}
th, td {
	background: RGBA(255,255,255,0.4);;
	padding: 0 4px;
}

#trailer {
	display: block;
	max-width: 100%;
}

pre .comment {
	color: rgb(108, 43, 106);
}

ol.backslash {
	counter-reset: list;
}

ol.backslash > li {
	list-style: none;
	margin: 0;
}

ol.backslash > li:before {
	counter-increment: list;
	content: "\\" counter(list, numeric) " ";
	font-weight: bold;
}

@media (max-width: 950px) {
	html, body {
		font-size: 14pt;
	}
	#logo {
		display: none;
	}
}
@media (max-width: 1000px) {
	aside {
		display: none;
	}
}
@media (min-width: 1300px) {
	header nav a {
	font-family: "Comix Heavy", Arial, Tahoma, "Liberation Sans", sans-serif;
		text-shadow:
			2px 2px 3px #000,
			-2px 2px 3px #000,
			2px -2px 3px #000,
			-2px -2px 3px #000;
	}
}