:root {
	--color-gray-20: #e0e0e0;
	--color-gray-50: #C0C0C0;
	--color-gray-90: #dad8d8;

	/* --text-color is assigned to --color-gray-_ above */
	--text-color-link: #1493fb;
	--text-color-link-active: #6969f7;
	--text-color-link-visited: #a6a6f8;

	--background-color: #121018;

	--text-color: var(--color-gray-90);
	
	--font-family: -apple-system, system-ui, sans-serif;
	--font-family-monospace: Consolas, Menlo, Monaco, Andale Mono WT, Andale Mono, Lucida Console, Lucida Sans Typewriter, DejaVu Sans Mono, Bitstream Vera Sans Mono, Liberation Mono, Nimbus Mono L, Courier New, Courier, monospace;
}

* {
	box-sizing: border-box;
}

html,
body {
	padding: 0;
	margin: 0 auto;
	min-height:100%;
	font-family: var(--font-family);
	color: var(--text-color);
	max-width:1600px;
}
html {
	overflow-y: scroll;
	background: center bottom fixed repeat-x url("/img/dark-b10.png"), center top fixed url("/img/erratu18.png");
	background-color:#120f2b;
}

/* https://www.a11yproject.com/posts/how-to-hide-content/ */
.visually-hidden {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

a[href] {
	color: var(--text-color-link);
}
a[href]:visited {
	color: var(--text-color-link-visited);
}
a[href]:hover,
a[href]:active {
	color: var(--text-color-link-active);
}

blockquote {
  opacity: 75%;
  border-left: 3px solid currentColor;
  padding-left: 12px;
}

/* Direct Links / Markdown Headers */
.header-anchor {
	text-decoration: none;
	font-style: normal;
	font-size: 1em;
	margin-left: .1em;
}
a[href].header-anchor,
a[href].header-anchor:visited {
	color: transparent;
}
a[href].header-anchor:focus,
a[href].header-anchor:hover {
	text-decoration: underline;
}
a[href].header-anchor:focus,
:hover > a[href].header-anchor {
	color: #aaa;
}

.wrapper {
  display:flex;
}

header h1 a {
  display:block;
  margin:auto;
}

h1 img {
  display:block;
  height:128px;
  width:auto;
  margin:auto 0;
}

header nav {
  margin: 3px 12px;
}

header nav {
  display: flex;
  justify-content: space-between;
}

header nav ul,
ul.flex {
  display:flex;
  padding:0;
  margin:0;
}

header nav .nav-item a,
div.parent a {
  background-color:var(--background-color);
  border:1px solid rgba(255,255,255,0.05);
  box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.8);
  padding: 0.66rem;
  border-radius:4px;
  text-decoration:none;
  color:var(--text-color)!important;
}

header nav .nav-item a {
  display: block;
}

div.parent a {
  display:block;
}

div.parent {
  padding: 8px;
  padding-bottom: 0px;
}

header nav .nav-item a:hover,
div.parent a:hover {
  box-shadow: 0px 0px 3px 2px rgba(255,255,255,0.3);
}

header nav .nav-item:not(:last-child) {
  margin-right:12px;
}

main,
.card,
#sidebar ul > li {
  background-color:var(--background-color);
  border:1px solid rgba(255,255,255,0.05);
  box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.8);
  border-radius:6px;
  padding:8px;
  margin:8px;
}

main {
  padding-left: 24px;
  padding-right: 24px;
  line-height:1.5rem;
}

#core {
  flex-grow: 1;
}

.model,
main {
  margin-left:0;
  margin-right:0;
}

#sidebar ul > li,
.model h2,
#more-info h2 {
	list-style: none;
	font-weight: bold;
  font-size: 1rem;
}


#more-info ol > li,
#more-info ul > li {
	list-style: none;
}

#sidebar ul > li li,
#more-info li {
  border-radius:0px;
  padding:0px;
  margin:0px;
  font-weight: normal;
  border:0;
  box-shadow: none;
}

ul.nav,
#sidebar ul li ul,
#more-info ol,
#more-info ul,
ul.flex li,
.model h2,
#more-info h2 {
  padding:0;
  margin:0;
	list-style: none;
}

#sidebar ul li ul {
  display:flex;
  flex-wrap: wrap;
}

#sidebar ul li a,
#more-info li a,
.model a {
  display:block;
  width:100%;
  text-decoration:none;
  color:var(--text-color)!important;
  border-radius:3px;
  padding:3px;
}

#more-info li a {
  padding-left:12px;
}

.model a {
  margin: 2px;
}

.model li:first-child a {
  margin-left:0;
}

#sidebar ul li li {
  width:50%;
}

#sidebar ul li:last-child li {
  width: 100%;
}

#sidebar ul li a.active,
#more-info li a.active {
  background-color:rgba(255,255,255,0.1);
}

#sidebar ul li a:hover,
#more-info li a:hover,
.model a:hover {
  background-color:rgba(255,255,255,0.2);
  box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.5);
}

#more-info {
  min-width:240px;
  width:240px;
}

#sidebar {
  min-width:320px;
  width:320px;
}

footer {
  text-align:right;
  margin:12px;
}

table {
  width:100%;
  border-collapse: collapse;
}

th, td {
  border: 1px solid rgba(255,255,255,0.15);
  padding: 3px;
}

th {
  border-bottom-width: 3px;
}

th {
  background-color: rgba(255, 255, 255, 0.1);
}

tr:nth-child(even) td {
  background-color: rgba(255, 255, 255, 0.03);
}