body {
	font-size: 16px;
	margin: 0;
	background-color: #060a08;
	color: #fff;
	font-family: helvetica;
	line-height: 1.3334;
	letter-spacing: 0.03125em;
	-webkit-transition: background-color .4s, color .4s;
	transition: background-color .4s, color .4s;

}
body.light {
	color: #000;
	background-color: #f9f5f7;
}
h1, .h1, h2, .h2, h3, .h3, .h3a, h4, .h4, h5, .h5, h6, .h6 {
	all: unset;
	display: block;
}
p, .p {
	margin: 0;
	margin-bottom: 0.25em;
}
p.spaced, .p.spaced {
	margin-bottom: 1em;
}
p.top-spaced, .p.top-spaced {
	margin-top: 1em;
}
p.double-spaced, .p.double-spaced {
	margin-bottom: 2em;
}
p.top-double-spaced, .p.top-double-spaced {
	margin-top: 2em;
}
pre {
	font-size: 12px;
}
b, h4, .h4, .block-section-title.section-title-4 {
	font-weight: 900;
}
i, h5, .h5, .block-section-title.section-title-5 {
	font-style: italic;
}
u {
	text-decoration: underline;
}
ul {
	list-style-position: inside;
	padding-left: 0;
}
ul>li>ul {
	padding-left: 1em;
}
h1, .h1, .block-title.h1, .block-section-title.section-title-1 {
	font-size: 2em;
	font-weight: bold;
}
.block-title.h3, .block-title.h4, .block-title.h5, .block-title.h6 {
	font-size: 1em;
}
.block-title.h5, .block-title.h6 {
	font-weight: normal;
}
span.enlarged {
	font-size: 1.25em;
}
span.reduced {
	font-size: 0.75em;
}
span.inset, span.inset-double, span.inset-triple, span.inset-quad {
	display: block;
}
span.inset {
	margin-left: 1em;
}
span.inset-double {
	margin-left: 2em;
}
span.inset-triple {
	margin-left: 3em;
}
span.inset-quad {
	margin-left: 4em;
}
span.subtitle {
	display: block;
	border-style: solid none;
	font-weight: bold;
	margin-bottom: 0.25em;
}
.block2 span.subtitle {
	margin: 1em 0;
}
#sidebar {
	background-color: #FFC87D;
	color: #000;
	position: fixed;
	top: 0;
	left: 0;
	min-width: 11em;
	width: 20vw;
	max-width: 3in;
	height: 100vh;
	font-size: 1.25em;
	overflow-y: auto;
}
#center {
	position: absolute;
	top: 0;
	right: 0;
	max-width: calc(100vw - 10em - 5rem);
	width: calc(80vw - 5rem);
	min-width: calc(100vw - 3in - 5rem);
	min-height: 100vh;
	overflow-x: hidden;
}
#top {
	position: relative;
}
#content {
	min-height: 100vh;
}
#counting {
	position: absolute;
	top: 0.5rem;
	left: 5vw;
	width: calc(100% - 10vw - 60px);
	text-align: center;
}
a {
	color: inherit;
}
a:visited {
	color: inherit;
}
a:active {
	color: inherit;
}
table, th, td {
	border: 1px solid black;
	vertical-align: top;
}
table {
	border-collapse: collapse;
	color: #000000;
	margin: 0;
	max-width: 100%;
}
.table-wrapper {
	margin: 1em;
	overflow-x: auto;
	max-width: calc(100vw - 10em - 5rem - 1em);
	width: auto;
}
table.expand {
	width: 100%;
	max-width: unset;
}
.table-wrapper.expand {
	margin: 1em 1em 1em 0;
	width: calc(80vw - 5rem - 1em);
	min-width: calc(100vw - 3in - 5rem - 1em);
}
.table-label+.table-wrapper {
	margin-top: 0;
}
table.inline {
	display: inline-table;
}
.table-wrapper.inline {
	margin: 0;
	display: inline-table;
}
th {
	background-color: #000000;
	color: #ffffff;
	-webkit-transition: background-color .4s, color .4s;
	transition: background-color .4s, color .4s;
}
body.light th {
	background-color: #fff;
	color: #000;
}
tr {
	background-color: #c0c0c0;
}
tr:nth-child(odd) {
	background-color: #808080;
}
td, th {
	padding: 0.25em;
}
.table-label {
	font-weight: bold;
	margin: 1em 1em 0 1em;
}
.table-label:before {
	content: "Table: ";
	font-weight: bold;
}
.table-label.expand {
	font-weight: bold;
	margin: 1em 1em 0 0;
}
table.class-features, table.class-features th, table.class-features td {
	border-width: 2px;
	border-color: white;
	color: #ffffff;
	vertical-align: middle;
}
table.class-features tr {
	background-color: #404040;
}
table.class-features tr:nth-child(odd) {
	background-color: #101010;
}
body.light table.class-features, body.light table.class-features th, body.light table.class-features td {
	border-color: black;
	color: #000000;
}
body.light table.class-features tr {
	background-color: #808080;
}
body.light table.class-features tr:nth-child(odd) {
	background-color: #c0c0c0;
}
ul.menu-vertical {
	list-style-type: none;
	padding: 0;
	overflow: hidden;
	/*padding-inline-start: 0.5em;*/
}
ul.menu-vertical p.label {
	padding-left: 1em;
}
ul.menu-vertical li.has-dropdown>p.label {
	cursor: pointer;
}
ul.menu-vertical li.has-dropdown>p.label:before {
	content: "▸ "
}
ul.menu-vertical li.has-dropdown.open>p.label:before {
	content: "▾ "
}
ul.menu-vertical li:not(li.has-dropdown)>a>p.label:before {
	content: "\00a0\00a0\00a0"
}
ul.menu-vertical li>a {
	text-decoration: none;
	color: inherit;
}
@media (pointer: fine) {
	ul.menu-vertical li.has-dropdown>p.label:hover, ul.menu-vertical li:not(li.has-dropdown)>a>p.label:hover {
		background-color: rgba(255, 255, 255, 0.5);
	}
}
ul.menu-vertical li.has-dropdown.open {
	background-color: rgba(255, 255, 255, 0.25);
	border-style: solid none;
	border-width: 2px;
}
ul.menu-vertical li.has-dropdown.open>p.label {
	background-color: rgba(255, 255, 255, 0.333);
	border-style: none none solid;
	border-width: 1px;
}
ul.menu-vertical li.has-dropdown>ul.menu-vertical {
	height: 0;
}
ul.menu-vertical li.has-dropdown.open>ul.menu-vertical {
	height: auto;
}
.to-contents {
	border-style: solid;
	border-color: #fff;
	border-width: 1px;
	display: block;
	float: left;
	margin: 0.5em;
	-webkit-transition: border-color .4s;
	transition: border-color .4s;
}
body.light .to-contents {
	border-color: #000;
}
.toc-title {
	padding: 0.25em;
	background-color: #333;
	font-size: 1.25em;
	cursor: pointer;
	-webkit-transition: background-color .4s;
	transition: background-color .4s;
}
body.light .toc-title {
	background-color: #bbb;
}
.toc-contents {
	margin-block-start: 0;
	margin-block-end: 0;
	margin: 0;
	margin-right: 1em;
	height: 0;
	overflow: hidden;
}
.to-contents.open>.toc-contents {
	height: unset;
	margin-top: 1em;
	margin-bottom: 1em;
}
.to-contents>.toc-title:after {
	content: "\00a0◂"
}
.to-contents.open>.toc-title:after {
	content: "\00a0▾"
}
#sidebar-label {
	padding: 1em 1em 0;
	text-align: center;
	font-size: 1.5em;
}
#top-nav {
	margin: calc(2.5rem + 35px - 0.5in) 5vw 2.5vw;
	font-size: 1.5em;
}
.top-row {
	text-align: center;
}
.top-label {
	text-decoration: none;
}
.top-label.status-empty {
	color: #888
}
body.light .top-label.status-empty {
	color: #888
}
.top-label.status-wip:before {
	content: "WIP\00a0";
	font-size: 0.5em;
	vertical-align: super;
}
.top-label:hover, .top-label.selected {
	text-decoration: underline;
}
.clickable {
	cursor: pointer;
}
.sort-asc:after {
	content: "\00a0▾";
}
.sort-dec:after {
	content: "\00a0▴";
}
.block {
	padding: 0.5em;
	clear: both;
}
.block-title, h2, .h2 {
	font-size: 1.5em;
}
.block-title, h1, .h1, h2, .h2, .block-section-title.section-title-1, .block-section-title.section-title-2 {
	font-weight: bold;
	background-color: #482818;
	color: #cca94a;
	padding: 0 0.25em;
	margin-bottom: 0.25em;
	-webkit-transition: background-color .4s, color .4s;
	transition: background-color .4s, color .4s;
}
body.light .block:not(.block-sf) .block-title, body.light h1:not(.sf), body.light .h1:not(.sf), body.light h2:not(.sf), body.light .h2:not(.sf), body.light .block-section-title.section-title-1, body.light .block-section-title.section-title-2 {
	background-color: #cca94a;
	color: #482818;
}
.block2 .block-title {
	margin-top: 1em;
}
.block-sf .block-title,  h1.sf,  h2.sf,  .h1.sf,  .h2.sf {
	margin: 1em 0 0.5em;
	background-color: #9A0800;
	color: #f0f0ff;
}
.block-section-title, .block-section-title.section-title-3, h3:not(.alt), .h3 {
	border-style: solid none;
	font-weight: bold;
	margin-bottom: 0.25em;
}
.block-section-title.section-title-1, .block-section-title.section-title-2, .block-section-title.section-title-3a, .block-section-title.section-title-4, .block-section-title.section-title-5, .block-section-title.section-title-6 {
	border-style: none;
}
.block-section-title-alt, h3.alt, .h3a, .block-section-title.section-title-3a {
	background-color: #a47800;
	color: #000000;
	padding: 0 0.25em;
	margin: 1em 0;
}
.block-sf .block-section-title,  h3.sf,  .h3.sf {
	font-size: 1.25em;
	background-color: #0D117C;
	color: #f0f0ff;
	border-style: none;
	font-weight: bold;
	padding: 0 0.25em;
	margin: 0.75em 0 0.5em;
}
.layered-block {
	margin-left: 2em;
}
.goto-top, .goto-top-2 {
	display: none;
	float: right;
}
.to-contents~.block .goto-top, .to-contents~.block .goto-top-2 {
	display: inline-block;
}
.goto-top {
	font-size: 0.667em;
}
.level-label {
	display: inline-block;
	float: right;
}
.trait, trt {
	display: inline-block;
	padding: 0.25em;
	margin: 0.125em;
	border-style: solid;
	border-width: 2px;
	border-color: #cca94a;
	background-color: #482818;
	-webkit-transition: border-color .4s, background-color .4s;
	transition: border-color .4s, background-color .4s;
}
input.show-stance {
	font-size: 0.85em;
}
ul.stance {
	margin: 0 0 0 1em;
	list-style-type: none;
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.25s;
}
.show-stance.active+ul.stance {
	max-height: 16em;
}
ul.stance>li {
	margin-left: 1em;
}
ul.stance>li.axis {
	margin-left: 0em;
}
body.light .trait, body.light trt {
	border-color: #482818;
	background-color: #cca94a;
}
.trait.trait-blue, trt.trait-blue {
	background-color: #140050;
	-webkit-transition: border-color .4s, background-color .4s;
	transition: border-color .4s, background-color .4s;
}
body.light .trait.trait-blue, body.light trt.trait-blue {
	border-color: #482818;
	background-color: #55f;
}
.trait.trait-orange, trt.trait-orange {
	background-color: #803000;
	-webkit-transition: border-color .4s, background-color .4s;
	transition: border-color .4s, background-color .4s;
}
body.light .trait.trait-orange, body.light trt.trait-orange {
	border-color: #482818;
	background-color: #FF953F;
}
.action-img {
	height: 1em;
	padding: 0 0.125em;
}

body.mobile {
	font-size: 32px;
}
body.mobile #sidebar {
	display: block;
	visibility: hidden;
	font-size: 64px;
	min-width: unset;
	width: 100vw;
	max-width: unset;
	min-height: 100vh;
	height: unset;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	padding-bottom: 30px;
	animation-name: slide-on;
	transform: translate(-100vw, 0);
}
body.mobile-secondary #sidebar {
	transition: transform 0.25s ease-in-out, visibility 0s linear 0.25s;
}
body.mobile #sidebar.open {
	visibility: visible;
	transform: translate(0, 0);
	transition: transform 0.25s ease-in-out;
}
body.mobile #center.hide {
	display: none;
}
body.mobile #sidebar-label {
	padding-top: 0;
}
body.mobile #center {
	position: static;
	margin: auto;
	max-width: unset;
	width: calc(100vw - 5rem);
	min-width: unset;
}
body.mobile .table-wrapper {
	max-width: calc(100vw - 5rem);
	width: auto;
}
body.mobile .table-wrapper.expand {
	width: calc(100vw - 5rem);
}
#menu-open, #menu-close {
	display: none;
}
body.mobile #menu-open, body.mobile #menu-close {
	display: block;
	margin: 2.5rem 2.5rem 1.25rem;
	width: 0.5in;
	height: 0.5in;
}
body.mobile #menu-open {
	margin-left: 0;
	background: linear-gradient(to bottom, #fff 0%, #fff 20%, transparent 20%, transparent 40%, #fff 40%, #fff 60%, transparent 60%, transparent 80%, #fff 80%, #fff 100%);
	-webkit-transition: background .4s;
	transition: background .4s;
}
body.light.mobile #menu-open {
	background: linear-gradient(to bottom, #000 0%, #000 20%, transparent 20%, transparent 40%, #000 40%, #000 60%, transparent 60%, transparent 80%, #000 80%, #000 100%);
}
body.mobile #menu-close {
	background: 
		linear-gradient(140deg, transparent 0%, transparent 20%, #000 20%, #000 34.5%, transparent 34.5%, transparent 100%),
		linear-gradient( 40deg, transparent 0%, transparent 20%, #000 20%, #000 34.5%, transparent 34.5%, transparent 100%),
		linear-gradient(to bottom, transparent 0%, transparent 40%, #000 40%, #000 60%, transparent 60%, transparent 100%);
		/*linear-gradient(to bottom right, transparent 0%, transparent 43%, #000 43%, #000 57%, transparent 57%, transparent 100%),
		linear-gradient(to bottom left, transparent 0%, transparent 43%, #000 43%, #000 57%, transparent 57%, transparent 100%);*/
}
#controls {
	height: 0.5in;
}

#light-switch {
	top: 0;
	right: 0;
	display: block;
	position: absolute;
	margin-top: 2.5rem;
	margin-right: 2.5rem;
}
body.mobile #light-switch {
	margin: 0;
	width: 0.88235in;
	height: 0.5in;
}
body.mobile #light-switch .slider {
	border-radius: 0.5in;
}
body.mobile #light-switch .slider:before {
	height: 0.38235in;
	width: 0.38235in;
	left: 0.05882in;
	bottom: 0.05882in;
}
body.mobile input:checked + .slider:before {
	-webkit-transform: translateX(0.38235in);
	-ms-transform: translateX(0.38235in);
	transform: translateX(0.38235in);
}

 /* The switch - the box around the slider */
.switch {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 34px;
}
/* Hide default HTML checkbox */
.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}
/* The slider */
.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: background-color .4s;
	transition: background-color .4s;
	border-radius: 34px;
}
.slider:before {
	position: absolute;
	content: "";
	height: 26px;
	width: 26px;
	left: 4px;
	bottom: 4px;
	background-color: #fff;
	-webkit-transition: background-color .4s, transform .4s, -ms-transform .4s, -webkit-transform .4s;
	transition: background-color .4s, transform .4s, -ms-transform .4s, -webkit-transform .4s;
	border-radius: 50%;
}
input:checked + .slider {
	background-color: #444;
}
input:focus + .slider {
	box-shadow: 0 0 1px #444;
}
input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
	background-color: #000;
}

#setting-note {
	border-style: solid none none;
	border-width: 1px;
	margin-bottom: 2em;
}
#wip-note {
	border-style: none none solid;
	border-width: 1px;
	margin-bottom: 2em;
}
#wip-note>*:first-child:before {
	content: "WIP ";
	font-size: 2em;
}

@media (max-aspect-ratio: 1/1), (max-width: 100vh), (min-height: 100vw) {
	#counting {
		position: absolute;
		top: 0.5rem;
		left: calc(5vw + 0.333in);
		width: calc(100% - 10vw - 60px - 0.333in);
		text-align: center;
	}
	#sidebar {
		display: block;
		visibility: hidden;
		min-width: unset;
		width: 100vw;
		min-height: 100vh;
		overflow-y: scroll;
		top: 0;
		left: 0;
		z-index: 1;
		padding-bottom: 30px;
		animation-name: slide-on;
		transform: translate(-100vw, 0);
	}
	body.small-secondary #sidebar {
		transition: transform 0.25s ease-in-out, visibility 0s linear 0.25s;
	}
	body.small-secondary #sidebar.open {
		visibility: visible;
		transform: translate(0, 0);
		transition: transform 0.25s ease-in-out;
	}
	#sidebar-label {
		padding-top: 0;
	}
	#center {
		right: 2.5rem;
		max-width: unset;
		width: calc(100vw - 5rem);
		min-width: unset;
	}
	#menu-open, #menu-close {
		display: block;
		cursor: pointer;
	}
	#menu-open {
		width: 0.333in;
		height: 0.333in;
		margin: 2.5rem 2.5rem 1.25rem 0rem;
		background: linear-gradient(to bottom, #fff 0%, #fff 20%, transparent 20%, transparent 40%, #fff 40%, #fff 60%, transparent 60%, transparent 80%, #fff 80%, #fff 100%);
		-webkit-transition: background .4s;
		transition: background .4s;
	}
	body.light #menu-open {
		background: linear-gradient(to bottom, #000 0%, #000 20%, transparent 20%, transparent 40%, #000 40%, #000 60%, transparent 60%, transparent 80%, #000 80%, #000 100%);
	}
	#menu-close {
		width: 0.3in;
		height: 0.3in;
		margin: 1.25rem 1.25rem 0.625rem;
		background: 
			linear-gradient(140deg, transparent 0%, transparent 20%, #000 20%, #000 34.5%, transparent 34.5%, transparent 100%),
			linear-gradient( 40deg, transparent 0%, transparent 20%, #000 20%, #000 34.5%, transparent 34.5%, transparent 100%),
			linear-gradient(to bottom, transparent 0%, transparent 40%, #000 40%, #000 60%, transparent 60%, transparent 100%);
			/*linear-gradient(to bottom right, transparent 0%, transparent 43%, #000 43%, #000 57%, transparent 57%, transparent 100%),
			linear-gradient(to bottom left, transparent 0%, transparent 43%, #000 43%, #000 57%, transparent 57%, transparent 100%);*/
	}

	#light-switch {
		margin: 0;
	}

	.table-wrapper {
		max-width: calc(100vw - 5rem);
		width: auto;
	}
	.table-wrapper.expand {
		width: calc(100vw - 5rem);
	}
}

/* Hide Scroll Bars */
* {
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
}
::-webkit-scrollbar { 
    display: none;  /* Safari and Chrome */
}