/*[of]:Global*/
:root {
	--sans-font: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Nimbus Sans L", Roboto, "Noto Sans", "Segoe UI", Arial, Helvetica, "Helvetica Neue", sans-serif;
	--mono-font: Consolas, Menlo, Monaco, "Andale Mono", "Ubuntu Mono", monospace;

	--main-bg-color: #DDD;
	--bg: #BBB;
	--main-color: #444;
	--link: #00E;
	--link-visited: #518;
	--link-focus: #03F;
	--link-active: #E00;

	--bg-code: #CCC;
	--border-code: 0;
	--table-border: #AAA;
	--table-header: #CCC;
	
	--syn-text: #444;
	--syn-keyword: #249;
	--syn-type: #848;
	--syn-register: #848;
	--syn-string: #488;
	--syn-comment: #555;

	--light: inline;
	--dark: none;
}

@media (prefers-color-scheme: dark) {
	:root {
  		--main-bg-color: #333;
		--bg: #222;
  		--main-color: #ABD;
		--link: #79E;
		--link-visited: #95C;
		--link-focus: #58F;
		--link-active: #E71;
		
		--bg-code: #303338;
		--border-code: solid 1px #3E4044;
		--table-border: #555;
		--table-header: #444;

		--syn-text: #ABD;
		--syn-keyword: #6E8DD5;
		--syn-type: #AC78BD;
		--syn-register: #848;
		--syn-string: #3EA57B;
		--syn-comment: #8F8F8F;
		
		--light: none;
		--dark: inline;
	}

}

.light { display: var(--light); }
.dark { display: var(--dark); }

* {
	box-sizing:	border-box;
	margin:	0;
	padding:	0;
}

html {
	height: 100%;
	background:	var(--bg);
	padding-top: 8px;
}

body {
	line-height:	1.4;
	background:	var(--bg);
	color:	var(--main-color);
	font-family:	var(--sans-font);
	font-size:	11pt;
	max-width:	800px;
	margin:	0 auto; 
	height: 100%;
}

a:link {
	color: var(--link);
}
a:visited {
	color: var(--link-visited);
}
a:active {
	color: var(--link-active);
}

h1 {
	font-size: 2.0rem;
	font-weight: normal;
}

h2 {
	font-size: 1.7rem;
	margin-top: 1rem;
	font-weight: normal;
}

h3 {
	font-size: 1.4rem;
	margin-top: 1rem;
	font-weight: normal;
}

h4 {
	font-size: 1.2rem;
	margin-top: 0.6rem;
}

p {
	margin: 1rem 0;
}

a {
	text-decoration: none;
}

ul,
ol {
	list-style-position: outside;
	padding-left: 2em;
}

pre,
code,
kbd,
samp,
tt,
var {
	background-color: var(--bg-code);
	border-radius: .25rem;
	padding: .05rem .2rem;
}

rep {
	font-style:	italic;
}

pre {
	padding: .4rem;
	overflow: auto;
	white-space: pre;
	border: var(--border-code);
}
pre code {
	padding: 0;
}
/*[cf]*/
/*[of]:Header*/
header {
	background:	var(--bg);
	text-align:	left;
	font-size:	1.15rem;
	display:	flex;
}

header > span {
	padding: .2rem 0;
	flex: auto;
}

header > nav {
	flex: initial;
}

header > nav > menu {
	display: flex;
	list-style: none;
}

header > nav > menu li {
	padding: .2rem 1rem;
}

header > nav > menu a {
	text-decoration: none;
}

header > nav > menu li.selected {
	background-color:	var(--main-bg-color);
}
/*[cf]*/
/*[of]:Footer*/
footer {
	background:	var(--bg);
	text-align:	left;
}
/*[cf]*/
/*[of]:Main*/
main {
	padding:	1rem;
	background-color:	var(--main-bg-color);
	min-height: 100%;
}
/*[cf]*/
/*[of]:Syntax highlighting*/
.highlight {
	margin:	1rem 0;
	font-size:	10pt;
	color: var(--syn-text);
}

.highlight span.k {
	font-weight:	bold;
	color:	var(--syn-keyword);
}
.highlight span.kt {
	color:	var(--syn-type);
}
/* Registers */
.highlight span.kv {
	color:	var(--syn-register);
}
.highlight span.s {
	color:	var(--syn-string);
}

.highlight span.c1 {
	color:	var(--syn-comment);
	font-style: italic;
}

/*[c].highlight span.s, span.m, span.mh {*/
/*[c]	color:	#248;*/
/*[c]}*/
/*[cf]*/
/*[of]:Documentation*/
.doc table {	background:	var(--table-border);
	border-spacing:	1px;
	margin:	0;
	padding:	0;
	border:	0; }
		
.doc tr th {	background:	var(--table-header);
	font-weight:	bold;
	padding-left:	0.5em; 
	padding-right:	0.5em;
	margin:	0;
	border:	0; }
	
.doc tr td {	background:	var(--main-bg-color);
	padding-left:	0.5em; 
	padding-right:	0.5em;
	margin:	0;
	border:	0; }


/*[cf]*/
/*[of]:Download*/
.download {	border-spacing:	1px;
	margin-bottom:	1em;
	background-color: 	var(--table-border);	}
		
.download th {	background-color: 	var(--table-header);
	font-weight:	bold;
	padding:	.1em 1em; 	}
		
.download td {	background-color:	var(--main-bg-color);
	padding:	.1em 1em; }
/*[cf]*/
