@media (prefers-color-scheme: light) {
	:root {
		--body-bg: white;
		--body-color: black;
		--link-color: #1d5cb5;
		--logo-url: url(logo.svg);
		--border-color: #aaa;
	}
}
@media (prefers-color-scheme: dark) {
	:root {
	  --body-bg: black;
	  --body-color: white;
	  --link-color: #58a7f9;
	  --border-color: #eaeaea;
	  --logo-url: url(logo-dark.svg);
	}
  }

:root {
	background-color: var(--body-bg);
	color: var(--body-color)
}

html, body {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", system-ui, "Ubuntu", "Droid Sans", sans-serif;   
	font-size: 14px;
	padding: 0 26px;
	line-height: 22px;
	word-wrap: break-word;
}

.logo {
	background-image: var(--logo-url);
	background-repeat: no-repeat;
	background-size: 296px;
	padding-top: 150px;
}

body {
	padding-top: 1em;
}

/* Reset margin top for elements */
h1, h2, h3, h4, h5, h6,
p, ol, ul, pre {
	margin-top: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	margin-top: 24px;
	margin-bottom: 16px;
	line-height: 1.25;
}

/* Prevent `sub` and `sup` elements from affecting line height */
sub,
sup {
	line-height: 0;
}

ul ul:first-child,
ul ol:first-child,
ol ul:first-child,
ol ol:first-child {
	margin-bottom: 0;
}

img, video {
	max-width: 100%;
	max-height: 100%;
}

a {
	text-decoration: none;
	color: var(--link-color)
}

a:hover {
	text-decoration: underline;
}

a:focus,
input:focus,
select:focus,
textarea:focus {
	outline: 1px solid -webkit-focus-ring-color;
	outline-offset: -1px;
}

p {
	margin-bottom: 16px;
}

li p {
	margin-bottom: 0.7em;
}

ul,
ol {
	margin-bottom: 0.7em;
}

hr {
	border: 0;
	height: 1px;
	border-bottom: 1px solid var(--border-color);
}

h1 {
	font-size: 2em;
	margin-top: 0;
	padding-bottom: 0.3em;
	border-bottom: 1px solid var(--border-color);
}

h2 {
	font-size: 1.5em;
	padding-bottom: 0.3em;
	border-bottom: 1px solid var(--border-color);
}

h3 {
	font-size: 1.25em;
}

h4 {
	font-size: 1em;
}

h5 {
	font-size: 0.875em;
}

h6 {
	font-size: 0.85em;
}

table {
	border-collapse: collapse;
	margin-bottom: 0.7em;
}

th {
	text-align: left;
	border-bottom: 1px solid var(--border-color);
}

th,
td {
	padding: 5px 10px;
}

table > tbody > tr + tr > td {
	border-top: 1px solid var(--border-color);
}

blockquote {
	margin: 0;
	padding: 0px 16px 0 10px;
	border-left-width: 5px;
	border-left-style: solid;
	border-radius: 2px;
}

code {
	font-family: Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace;
	font-size: 1em;
	line-height: 1.357em;
}

body.wordWrap pre {
	white-space: pre-wrap;
}

pre:not(.hljs),
pre.hljs code > div {
	padding: 16px;
	border-radius: 3px;
	overflow: auto;
}

pre code {
	display: inline-block;
	tab-size: 4;
	background: none;
}
