/* =========================================================================
   Modern base: readable type, a visible keyboard focus ring and larger
   controls, layered over Skeleton 1.2 (2011). Page styles below win.
   ========================================================================= */
:root {
	--nb-text: #1f2328;
	--nb-muted: #57606a;
	--nb-link: #0a58ca;
	--nb-link-hover: #084298;
	--nb-control-border: #8c959f;
	--nb-surface: #f6f8fa;
	--nb-focus: #0a58ca;
}

body {
	color: var(--nb-text);
	font: 15px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--nb-text);
	font-family: inherit;
}

a, a:visited {
	color: var(--nb-link);
	text-underline-offset: 2px;
}

a:hover {
	color: var(--nb-link-hover);
}

/* Skeleton removed the focus ring from links and inputs; keyboard users need to see it. */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
	outline: 3px solid var(--nb-focus);
	outline-offset: 2px;
}

.skip-link {
	background: #fff;
	border: 2px solid var(--nb-focus);
	border-radius: 6px;
	left: 12px;
	padding: 8px 14px;
	position: absolute;
	top: -80px;
	z-index: 1000;
}

.skip-link:focus {
	top: 12px;
}

/* The logo link wraps a block image; left inline it draws no focus ring. */
.menu .two.columns > a {
	display: inline-block;
}

/* Text for screen readers only, such as a state shown elsewhere by colour. */
.visually-hidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

/* One readable button style instead of 11px bold gradients. */
.button, button, input[type="submit"], input[type="reset"], input[type="button"] {
	background: var(--nb-surface) none;
	border: 1px solid var(--nb-control-border);
	border-radius: 6px;
	box-sizing: border-box;
	color: var(--nb-text);
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	min-height: 34px;
	padding: 7px 14px;
	text-shadow: none;
}

.button:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover {
	background: #eaeef2 none;
	border-color: var(--nb-muted);
	color: var(--nb-text);
}

/* Link buttons keep button text colour after a visit (a:visited outranks .button). */
a.button, a.button:visited, a.button:hover {
	color: var(--nb-text);
	text-decoration: none;
}

input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"],
input[type="url"], input[type="tel"], input[type="date"], select, textarea {
	border: 1px solid var(--nb-control-border);
	border-radius: 6px;
	box-sizing: border-box;
	color: var(--nb-text);
	font-family: inherit;
	font-size: 15px;
	min-height: 36px;
	padding: 6px 9px;
}

textarea {
	min-height: 60px;
}

/* input[type] outranks Skeleton's grey text-input focus border. */
input:focus, input[type]:focus, select:focus, textarea:focus {
	border-color: var(--nb-focus);
}

label, legend {
	color: var(--nb-text);
	font-size: 14px;
}

/* Main navigation: larger targets and the current section marked. */
.nav li a {
	display: inline-block;
	padding: 6px 8px;
}

/* "page" marks the section's own page, "true" a page inside it. .menu raises this above the
   menu's own text-decoration: none. */
.menu .nav li a[aria-current] {
	color: var(--nb-text);
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-underline-offset: 8px;
}

th, td{
    padding: 0.5em 0.65em;
}

th, th a{
    background: #24292f;
    color: white;
    font-weight: 600;
}

td{
    background: #EEE;
    color: black;
}

p {
    
}

form.inline-action {
	display: inline;
	margin: 0;
}

button.link-action,
input[type="submit"].link-action {
	background: none;
	border: 0;
	border-radius: 0;
	color: var(--nb-link);
	display: inline;
	font: inherit;
	font-weight: normal;
	line-height: inherit;
	margin: 0;
	min-height: 0;
	padding: 0;
	text-decoration: underline;
	text-shadow: none;
}

button.link-action:hover,
button.link-action:focus,
button.link-action:active,
input[type="submit"].link-action:hover,
input[type="submit"].link-action:focus,
input[type="submit"].link-action:active {
	background: none;
	border: 0;
	color: var(--nb-link-hover);
}


tr.current th, tr.current th a {
    background-color:  #00cc00;
    color: black;
}

tr.past th, tr.past th a {
    background-color:  #EEE;
    color: black;
}

tr.future th, tr.future th a {
    background-color:  #ffff66;
    color: black;
}

tr.pending th, tr.pending th a {
    background-color:  red !important;
    color: black;
}

tr.total td {
    background-color: #999;
}

.messageFailed {
    border: solid 1px #FF7F8A;
    background-color: #FFCCD0;
    padding:12px;
    margin: 6px 0px;
}

.messageSuccess {
    background-color:#CCFFDD;
    border:1px solid #7FFFAA;
    padding:12px;
    margin: 6px 0px;
}

.messageFuture {
    background-color:#FFFFDD;
    border:1px solid #FFFF44;
    padding:12px;
    margin: 6px 0px;
}

.lightGray, tr.lightGray td {
	background-color:#eee;
	padding: 12px 0px;
}

.darkGray, tr.darkGray td {
	background-color:#ddd;
	padding: 12px 0px;
}

/* Dashboard feature list. Darker than plain green and red so the text stays readable on
   the grey rows, and features that are off are struck through, not just coloured. */
.feature-on, a.feature-on, a.feature-on:visited, a.feature-on:hover {
	color: #116329;
}

.feature-off {
	color: #a40e26;
	text-decoration: line-through;
}

/* input.search-input outranks Skeleton's fixed 210px text-input width. */
input.search-input {
	box-sizing: border-box;
	max-width: 22em;
	width: 100%;
}

.rounded-top {
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
}

.rounded-bottom {
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}

.remove-margins {
	margin-left:0px !important;
	margin-right:0px !important;
	margin-top:0px !important;
	margin-bottom:0px !important;
}

label.checklbl {
	display:inline;
}


/*
	LAYOUT
*/

.menu{
	border-bottom: 1px solid #666;
	position:relative;
}

.menu img {
	display:block;
}

.menu ul.nav {
	position:absolute;
	bottom:0;
	display:inline;
	margin-bottom:0px;
}

.menu ul.nav li {
	display:inline;
	margin-right: 2em;
}

.menu ul.nav li  a {
	text-decoration:none;
	font-size: 1.5em;
}

/* On phones the absolutely placed menu wraps over the logo, so let it flow below it. */
@media only screen and (max-width: 767px) {
	.menu ul.nav {
		display: flex;
		flex-wrap: wrap;
		gap: 0 6px;
		margin: 6px 0 4px;
		position: static;
	}

	.menu ul.nav li {
		margin-right: 0;
	}

	.menu ul.nav li a {
		font-size: 17px;
	}

	.menu .content {
		padding: 0;
	}
}





.content {
	padding: 1em 0;
}

.footer{
	border-top: 1px solid #666;
}

/* iOS Safari zooms into a focused field whose text is under 16px. */
@media only screen and (max-width: 767px) {
	input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"],
	input[type="url"], input[type="tel"], input[type="date"], select, textarea {
		font-size: 16px;
	}
}
