:root {
	--main-bg-color: #152c0e;
	--main-fg-color: #fff;
	--header-color: #fff;
	--header-highlight-color: #fff;
	--notice-box-bg-color: #eceb13;
	--notice-box-fg-color: var(--main-bg-color);
	--button-bg-color: #1a5806;
	--button-fg-color: #fff;
	--hover-button-bg-color: #acd;
	--hover-button-fg-color: #125;
	--selected-button-bg-color: #000;
	--selected-button-fg-color: #ffff6c;
	--modal-bg-color: #dfdfdf;
	--modal-fg-color: var(--main-bg-color);
	--table-text-color: var(--main-bg-color);
	--table-spacing-color: #fff;
	--table-head-bg-color: #eceb13;
	--table-head-fg-color: var(--table-text-color);
	--table-even-bg-color: #dfdfdf;
	--table-even-fg-color: var(--table-text-color);
	--table-odd-bg-color: #b4b4b4;
	--table-odd-fg-color: var(--table-text-color);
	--note-link-color: var(--table-text-color);
	--row-hover-bg-color: #f198f0;
	--row-hover-fg-color: #882250;
	--row-hover-link-color: var(--row-hover-fg-color);
	--footer-fg-color: var(--main-fg-color);
	--footer-link-color: #7cf;
}

/* MODIFY VARIABLES ABOVE THIS LINE */

html {
	font-size: 16px;
	font-family: "Fira Sans", "Liberation Sans", "Arial", sans-serif;
	margin: 0;
	padding: 0;
	background: var(--main-bg-color);
	color: #fff;
}

body {
	font-size: 62.5%;
	margin: 1.6em auto;
	padding: 0;
	width: 90%;
}

#top {
	margin-bottom: 1.5em;
	min-height: 2.8em;
}

#top h1 {
	color: var(--header-color);
	margin: 0;
	padding: 0;
	line-height: 1.3;
	font-size: 2.2em;
	float: left;
}

#top h1 em {
	background: var(--header-highlight-color);
	color: var(--main-bg-color);
	padding: .15em .2em;
	border-radius: 0.3em;
	font-style: normal;
}

#top p {
	float: right;
}

.help {
	display: inline-block;
	border: 1px solid #6ce;
	color: #fff;
	cursor: pointer;
	background: #39B;
	padding: .1em .2em;
	margin: 0;
	border-radius: 1em;
	width: .9em;
	height: 1.1em;
	text-align: center;
	text-shadow: 1px 1px 1px #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000;
	text-decoration: none;
	font-size: 1.8em;
	font-weight: bold;
}

.notice {
	border-radius: .5em;
	background: var(--notice-box-bg-color);
	color: var(--notice-box-fg-color);
	padding: .2em .5em;
	clear: both;
}

.notice p {
	margin: .5em;
	padding: 0;
	font-size: 1.5em;
}

nav {
	margin: 1em 0;
	padding: 0;
	/* background: #000; */
	clear: both;
}

nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: block;
}

nav ul li {
	display: inline-block;
	background: var(--button-bg-color);
	box-shadow: 0 0 .1em rgba(5,0,10,0.7);
	color: var(--button-fg-color);
	font-size: 1.8em;
	font-weight: bold;
	text-decoration: none;
	border-radius: .4em;
	margin: .1em .2em;
	padding: 0.1em 0.4em;
}

nav ul li:hover,
nav ul li.selected:hover {
	cursor: pointer;
	background: var(--hover-button-bg-color);
	color: var(--hover-button-fg-color);
}

nav ul li.selected {
	background: var(--selected-button-bg-color);
	color: var(--selected-button-fg-color);
}

table {
	font-size: 1em;
}

#modal {
	display: none;
}

.backdrop {
	position: fixed;
	left: 0;
	right; 0;
	top: 0;
	left: 0;
	background: rgba(30,30,30,0.8);
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	overflow: auto;
}

#modal_box {
	background: var(--modal-bg-color);
	color: var(--modal-fg-color);
	border-radius: 1.3em;
	width: 85%;
	margin: 3em auto;
	padding: 1em 0;
	font-size: 1.6em;
}

#modal_box > div {
	padding: 0 1em;
	margin: 0;
	/* overflow: auto; */
}

#modal_close {
	background: #d30;
	border-radius: 0.7em;
	border: 1px solid #e76;
	box-shadow: 0 0.1em 0.2em #000;
	color: #fff;
	cursor: pointer;
	display: block;
	float: right;
	font-size: 2.4em;
	line-height: 0.8;
	margin: 0;
	padding: 0;
	position: relative;
	right: -0.4em;
	text-align: center;
	text-decoration: none;
	text-shadow: 1px 1px 1px #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000;
	top: -0.7em;
	width: 0.8em;
}


#modal_box h2 {
	margin: 0;
	font-size: 1.7em;
	font-weight: bold;
	text-align: center;
	margin-bottom: 0.3em;
	padding-bottom: 0.3em;
}

#modal_box pre.notes {
	white-space: pre-wrap;
}

#modal_box table {
	color: var(--main-bg-color);
	background: var(--table-spacing-color);
	box-shadow: 0 0 0.8em rgba(17,14,16,0.7);
	border-radius: 0.3em;
	line-height: 1.4;
}

#modal_box table td {
	padding: 0.3em;
}

#modal_box thead tr th {
	background: var(--table-head-bg-color);
	color: var(--table-head-fg-color);
	font-size: 1.2em;
	border-bottom: 1px solid;
}

#modal_box tbody tr:nth-of-type(2n+1) {
	background: var(--table-odd-bg-color);
}

#modal_box tbody tr:nth-of-type(2n) {
	background: var(--table-even-bg-color);
}

#modal_box p:last-child {
	margin: 1em 0 0 0;
}

#modal_box span.notes {
	cursor: inherit;
}

/* VGS VIEW BELOW */

#vgs_view {
	clear: both;
}

#vgs_view p:first-child {
	font-size: 1.4em;
	text-align: center;
}

#vgs_view table {
	color: var(--table-text-color);
	background: var(--table-spacing-color);
	box-shadow: 0 0 0.8em rgba(17,14,16,0.7);
	border-radius: 0.3em;
	line-height: 1.4;
	font-size: 1.5em;
	width: 100%;
}

#vgs_view table thead {
	position: sticky;
	top: 0;
}

#vgs_view table td {
	padding: 0.3em;
}

#vgs_view thead tr th {
	background: var(--table-head-bg-color);
	font-size: 1.2em;
	border-bottom: 1px solid;
}

#vgs_view tbody tr:hover td {
	background: var(--row-hover-bg-color);
	color: var(--row-hover-fg-color);
}

#vgs_view tbody tr:hover td span.notes {
	color: var(--row-hover-link-color);
}

#vgs_view tr:nth-of-type(2n+1) {
	background: var(--table-odd-bg-color);
}

#vgs_view tr:nth-of-type(2n) {
	background: var(--table-even-bg-color);
}

tr[id|="n"]:target {
	/* display: table-row !important; */
	background: red;
}

span.notes {
	text-decoration: underline;
	cursor: pointer;
	font-weight: bold;
	color: var(--note-link-color);
}

footer {
	margin: 2em auto;
	font-size: 1.5em;
	text-align: center;
	color: var(--footer-fg-color);
}

footer a:link,
footer a:visited {
	/* TODO: color is arbitrary, revisit */
	color: var(--footer-link-color);
}
