html {
	background-color: #aae0dd;
	font-size: 13pt;
}

body {
	background-color: white;
	font-family: 'Arimo', sans-serif;
	margin: 0 auto;
	padding: 0;
	max-width: 56em;
}

#mainbody {
	margin: 0 auto;
	max-width: 56em;
	padding-left: 6em;
	padding-right: 6em;
	padding-top: 50px;
	padding-bottom: 50px;
	box-shadow: 1px 1px 2px #000;
}

/* hackishly position the date */
div#mainbody > p:first-of-type {
	font-size:0.7em;
	float: right;
}

.float-right {
	float: right;
}

code {
	font-size: inherit;
}

code span.dt {
	text-decoration: none;
	font-weight: bold;
}

div.sourceCode {
	border-radius: 8px;
}

pre.sourceCode {
	padding: 10px;
}

p.date {
	margin: 0 auto;
}

blockquote > p > img:first-child {
	float: left;
	padding: 0 20px;
}

h1, h2, h3 {
	font-family: 'Merriweather', serif;
	font-size: 2em;
	font-weight: bold;
	margin: 3ex 0 2ex -0em;
	text-shadow: 1px 1px 2px #bbb;
}

h2 {
	font-size: 1.12em;
}

h3 {
	font-size: 1.05em;
	margin: 3ex 0 2ex -0em;
}

h1.title {
	font-size: 1.8em;
	margin-bottom: 0.2ex;
}

header {
	margin-bottom: 3ex;
}

p {
	margin-bottom: 1.8ex;
	line-height: 115%;
}

i {
	font-style: italic;
}

b {
	font-weight: bold;
}

sup {
	vertical-align: super;
}

sub {
	vertical-align: sub;
}

ul, ol {
	margin-bottom: 1.8ex;
}

ul {
	list-style-type: circle;
}

ol {
	list-style-type: decimal;
}

li {
	margin-top: 1em;
}

li:first-child, h1:first-child {
	margin-top: 0;
}

tt, code, pre {
	font-family: 'Inconsolata', monospace;
}

:not(pre) > code {
    background: #e0e0e0;
    padding: 0 0.2em;
    border-radius: 3px;
	white-space: nowrap;
}

.pagetop h1, .pagetop h2, .pagetop h3 {
	font-family: 'Jockey One', sans-serif;
	margin-top: 0em;
}

pre > code {
	border-radius: 5px;
}

#histcommentshow {
	font-size: 90%;
	display: block;
	color: white;
	width: 3.5em;
	text-align: center;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	text-decoration: none;
	-webkit-box-shadow: 1px 1px 2px #000;
	-moz-box-shadow: 1px 1px 2px #000;
	box-shadow: 1px 1px 2px #000;

	background: #7db9e8; /* Old browsers */
	background: -moz-linear-gradient(top,  #7db9e8 21%, #2989d8 33%, #2989d8 68%, #1e5799 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(21%,#7db9e8), color-stop(33%,#2989d8), color-stop(68%,#2989d8), color-stop(100%,#1e5799)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #7db9e8 21%,#2989d8 33%,#2989d8 68%,#1e5799 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #7db9e8 21%,#2989d8 33%,#2989d8 68%,#1e5799 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #7db9e8 21%,#2989d8 33%,#2989d8 68%,#1e5799 100%); /* IE10+ */
	background: linear-gradient(top,  #7db9e8 21%,#2989d8 33%,#2989d8 68%,#1e5799 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7db9e8', endColorstr='#1e5799',GradientType=0 ); /* IE6-9 */
}

.histcommentsection {
	margin-top: 20px;
	margin-left: 7%;
	font-size: 90%;
}

.histcommentheader {
}

.histcommentauthor {
	color: #33c;
}

.histcommentdate {
	font-size: 70%;
	color: #777;
}

.histcommentbody {
	background-color: #eee;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-bottomright: 10px;
	border-bottom-right-radius: 10px;
	padding: 10px 15px;
	margin-bottom: 20px;
	word-wrap: break-word;
}

.histsysop {
	font-weight: bold;
	font-style: italic;
}

.histcommentref {
	color: #44c;
}

.histcommentavatar {
	/*
	border: 1px solid #ccc;
	*/
	border: 0;
	-webkit-box-shadow: 1px 1px 2px #000;
	-moz-box-shadow: 1px 1px 2px #000;
	box-shadow: 1px 1px 2px #000;
}

blockquote {
	border: 1px solid #ccc;
	background-color: #eee;
	box-shadow: 1px 1px 2px #000;
	margin-bottom: 1.8ex;
	padding: 5px 10px;
	border-bottom-right-radius: 5px;
	border-top-left-radius: 5px;
	margin-block-start: 0;
	margin-block-end: 0;
	margin-inline-start: 0;
	margin-inline-end: 0;
}

.textbutton {
	border:1px solid #aaf;
	color: white;
	padding: 0 0.5em;
	border-radius: 3px; 
	background: linear-gradient(to bottom, #7db9e8 0%,#2989d8 35%,#3299ff 100%); /* W3C */
}

div.figure {
    text-align: center;
    background: #eee;
    padding-left: 0.1em;
    padding-right: 0.1em;
    margin-block-start: 0;
    margin-block-end: 0;
    padding-top: 1em;
    padding-bottom: 1em;
	border: 1px solid #ccc;
	box-shadow: 1px 1px 2px #000;
	font-size: 0.9em;
	margin-bottom: 1ex;
}

div.figure.right {
	float: right;
	max-width: 35%;
	margin-left: 2em;
    padding-left: 1em;
    padding-right: 1em;
}

div.figure.right.mw50 {
	max-width: 50%;
}

div.figure > p > img:first-child, div.figure > canvas:first-child {
	display: block;
	margin: 0 auto;
	padding-bottom: 2ex;
	max-width: 95%;
}

div.figure > p {
    margin-left: 1em;
    margin-right: 1em;
}

figcaption {
    font-size: 0.9em;
}

a.nodeco {
	text-decoration: none;
}

.pagetop {
	background-color: #aae0dd;
	padding: 2em 0;
}

a.nodeco {
	text-decoration: none;
}

.pagetop h1, .pagetop h2, .pagetop h3 {
	font-family: 'Jockey One', sans-serif;
	margin-top: 0em;
}

.pagetop h1 {
	font-size: 220%;
	color: #444;
	display: inline;
	text-shadow: 1px 1px 2px #bbb;
	margin: 0;
}

.pagetop h2 {
	font-size: 180%;
	color: #fff;
	display: inline;
	text-shadow: 1px 1px 2px #bbb;
	margin: 0;
}

.pagetop h3 {
	font-size: 150%;
	color: #fff;
	display: inline;
	text-shadow: 1px 1px 2px #bbb;
	margin: 0;
}

.beejblogfooter {
	background-color: #aae0dd;
	text-align: center;
	padding: 3ex 0;
}

pre.numberSource {
	border-left: 1px transparent;
}

.left-icon {
	float: left;
	padding: 0 14px 10px 0;
}

div.demo {
	position: relative;
	margin-bottom: 3.5ex;
}

div.demo.aspect-4-3 > div {
	padding-top: 75%;
}

div.demo.aspect-16-9 > div {
	padding-top: 56.25%;
}

div.demo iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

div.table-mathproof td {
	padding: 1ex 0 1ex 2em;
}

div.table-mathproof td p {
	margin: 0;
}

div.table-noheader thead {
	display: none;
}

.indent {
	margin-left: 3em;
}

.nobr {
	white-space: nowrap;
}

.hidden {
	display: none;
}

.byline {
	font-size: 0.8em;
	font-style: italic;
}

.fineprint {
	font-size: 0.8em;
}

div.scroll {
	overflow: scroll;
}

h1.frontpage {
	margin-top: 0;
}

hr.frontpage {
	margin-bottom: 3ex;
}

.frontpage-entry {
	margin-bottom: 2ex;
}

.frontpage-entry > p {
    margin-top: 0;
    padding-left: 2em;
    margin-bottom: 0;
}

.frontpage-entry > a {
    font-size: 1.15em;
	font-weight: bold;
}

mjx-container[jax="CHTML"][display="true"] {
    overflow: auto;
}

@media screen and (max-width: 62em) {
	.pagetop > h1 {
		padding-left: 10px;
	}
}

@media screen and (max-width: 700px) {
	#mainbody {
		margin: 0 auto;
		padding-left: 10px;
		padding-right: 10px;
		padding-top: 50px;
		padding-bottom: 50px;
		box-shadow: 1px 1px 2px #000;
	}

	figure {
		margin-inline: 0;
		padding: 0;
	}

	div.figure.right {
		float: inherit;
		max-width: inherit;
		margin-left: inherit;
		padding-left: inherit;
		padding-right: inherit;
	}

	div.figure.right.mw50 {
		max-width: inherit;
	}

	.indent {
		margin-left: 2em;
	}

	h1, h2, h3 {
		margin-top: 2ex;
		text-shadow: 1px 1px 2px #bbb;
	}
}
