body {
	background-color: #333;
	color: #fff;
	font-size: 115%;
	font-family: "Segoe UI", Arial, sans-serif;
	text-shadow: 1px 1px 0px #000, -1px 1px 0px #000, -1px -1px 0px #000, 1px -1px 0px #000;
}

a {
	cursor: pointer;
	text-decoration: none;
	color: #fff;
}

.outputCanvas {
	border: 1px solid #aaa;
}

.originalCanvas {
	border: 1px solid #800;
}

.boxButton {
	border: 1px solid #000;
	background-color: #555;
	border-radius: 10px;
	box-shadow: 2px 2px 0px 0px #000;
	margin: 5px;
	padding: 5px 25px 5px 25px;
	position: relative;
	-webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none; /* Safari */
	-khtml-user-select: none; /* Konqueror HTML */
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* Internet Explorer/Edge */
	user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
}

.boxButton:hover {
	filter: brightness(150%);
}
.boxButton:active {
	top: 1px;
	left: 1px;
	box-shadow: none;
}

.textInputField {
	display: inline-block;
	position: relative;
	margin-top: 0.5em;
	margin: 5px;
}

.textInputFieldInput {
	padding: 1em 0.5em 0.5em 0.5em;
	border-radius: 10px;
	border: 1px solid #000;
	background-color: #cff;
}

.textInputFieldInput:focus {
	background-color: #fff;
}

.textInputFieldLabel {
	position: absolute;
	border: 1px solid #000;
	background-color: #ccf;
	border-radius: 5px;
	padding-left: 0.5em;
	padding-right: 0.5em;
	font-size: 75%;
	text-shadow: none;
	color: #000;
	top: -0.5em;
	left: 0.5em;
}

.labeledField {
	display: inline-block;
	position: relative;
	margin-top: 0.5em;
	margin: 5px;
}

.labeledFieldField {
	display: inline-block;
	text-shadow: none;
	color: #000;
	font-size: 85%;
	padding: 1em 0.5em 0.5em 0.5em;
	border-radius: 10px;
	border: 1px solid #000;
	background-color: #999;
}

.labeledFieldLabel {
	position: absolute;
	display: inline-block;
	border: 1px solid #000;
	background-color: #ccc;
	border-radius: 5px;
	padding-left: 0.5em;
	padding-right: 0.5em;
	font-size: 75%;
	text-shadow: none;
	color: #000;
	top: -0.5em;
	left: 0.5em;
}


.radioButton, .checkBox {
	display: block;
}

.radioButtonInput {
	display: none;
}

.checkBox, .radioButton {
	border: 1px solid #000;
	background-color: #555;
	border-radius: 10px;
	box-shadow: 2px 2px 0px 0px #000;
	margin: 5px;
	padding: 5px 25px 5px 25px;
	display: inline-block;
	position: relative;
	cursor: pointer;
	-webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none; /* Safari */
	-khtml-user-select: none; /* Konqueror HTML */
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* Internet Explorer/Edge */
	user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
}
.checkBox:active {
	top: 1px;
	left: 1px;
}

.checkBox:hover, .radioButton:hover {
	background-color: #888;
}

.checkBoxInput {
	display: none;
}

.checkBoxBox, .radioButtonBox {
	visibility: hidden;
}

.checkBox input:checked + span {
	color: #0f0;
	visibility: visible;
}

.radioButton input:checked + span {
	color: #0ff;
	visibility: visible;
}

#popup {
	background-color: #333;
	border: 1px solid #000;
	border-radius: 10px;
	box-shadow: 4px 4px 10px 0px #000;
}

#popupHeaderStrip {
	border-radius: 10px 10px 0px 0px;
	border-width: 0px 0px 1px 0px;
	border-color: #000;
	border-style: solid;
	padding-left: 5px;
	padding-right: 5px;
	background-color: #666;
}

#popupClose {
	color: #f22;
}

js-stage {
	border: 1px solid #aaa;
	background-color: #222;
	margin-top: 4em;
	display: block;
	/*height: 675px;*/
	margin-left: auto;
	margin-right: auto;
	padding: 10px;
	box-sizing: border-box;
	width: 800px;
}

#debugWindow {
	margin-top: 3em;
}

.noscript {
	display: block;
	width: 50%;
	border: 1px solid #888;
	background-color: #222;
	border-radius: 10px;
	margin-top: 4em;
	margin-left: auto;
	margin-right: auto;
	padding: 1em;
}

#mainContent {
	text-align: center;
}

.label {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

#pageTitleHeader {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width:  800px;
}

#tooltip {
	background-color: #222;
	width: 350px;
	border-radius: 10px;
	padding: 5px;
	font-size: 85%;
	border: 1px solid #000;
}

.textInputField {
	display: inline-block;
	position: relative;
	margin-top: 0.5em;
	margin: 5px;
}

.textInputFieldInput {
	padding: 1em 0.5em 0.5em 0.5em;
	border-radius: 10px;
	border: 1px solid #000;
	background-color: #cff;
}

.textInputFieldInput:focus {
	background-color: #fff;
}

.textInputFieldLabel {
	position: absolute;
	border: 1px solid #000;
	background-color: #ccf;
	border-radius: 5px;
	padding-left: 0.5em;
	padding-right: 0.5em;
	font-size: 75%;
	text-shadow: none;
	color: #000;
	top: -0.5em;
	left: 0.5em;
}

.enterHPText {
	width: 400px;
}

#helpFrame {
	width: 500px;
}

h1 {
	margin-top: 0.15em;
	margin-bottom: 0.15em;
}

.disclaimerCrap {
	font-size: 70%;
	color: #aaa;
}

.titleText {
	font-size: 150%;
	font-weight: bold;
	margin-left: auto;
	margin-right: auto;
	width: 425px;
}