*
{
	font-family			: "Helvetica", "Lucida Grande", "Arial", "Verdana", "sans-serif";
	-webkit-font-smoothing		: antialiased;
}

body
{
	margin				: 0px;
	padding				: 0px;
}

body > #container
{
	height				: auto;
	min-height			: 100%;
	margin-left			: 0px;
	margin-right			: 0px;
	position			: relative;
	color				: #333;
}

#receptacle
{
	position			: relative;
	padding-top			: 3em;
	padding-bottom			: 3em;
	margin-left			: 1em;
	margin-right			: 1em;
}

nav
{
	font-weight			: 500;
	z-index				: 1042;
	margin-left			: 0px;
	margin-right			: 0px;
	padding-left			: 20px;
}

nav.menu
{
	position			: fixed;
}

nav > img
{
	max-height			: 40px;
	padding-left			: 20px;
}

nav > .navbar-header
{
	display				: inline-block;
	font-size			: x-large;
	margin				: 0px;
	padding-left			: 20px;
}

.navbar-checkbox
{
	display				: none;
}

.navbar-handle
{
	display			: none;
	cursor			: pointer;
	position		: relative;
	font-size		: 45px;
	padding			: .5em 0;
	height			: 0;
	width			: 1.6666666666666667em;
}

.navbar-handle:before, .navbar-handle:after
{
	position		: absolute;
	left			: 0;
	right			: 0;
	content			: ' ';
}

.menu
{
	top				: 0;
	left				: 0;
	right				: 0;
	padding-top			: 5px;
	padding-bottom			: 5px;
	color				: white;
	background-color		: #3a3c3c;
	background-color		: rgba(58, 60, 60, 0.95);
	min-height			: 1em;
	border-bottom			: 2px solid black;
}

.menu .navbar-handle
{
	position		: absolute;
	font-size		: 1.2em;
	top			: 0.6em;
	left			: 12px;
	z-index			: 10;
}

nav ul
{
	display				: block;
	list-style-type			: disc;
	margin-block-start		: 0px;
	margin-block-end		: 0px;
	margin-inline-start		: 0px;
	margin-inline-end		: 0px;
	padding-inline-start		: 40px;
	padding-inline-end		: 40px;
}

nav.menu ul
{
	float				: right;
}

nav ul li, footer ul li
{
	display				: inline-block;
	list-style			: none;
	list-style-image		: none;
	padding-top			: 5px;
	padding-bottom			: 5px;
	font-size			: initial;
	line-height			: initial;
}

nav ul li > a
{
	text-decoration			: none;
	font-weight			: bolder;
	padding				: 5px 5px 2px 5px;
}

nav.menu ul li > a
{
	color				: white;
}

nav ul li > a.selected
{
	border-bottom			: 1px solid red;
}

nav.menu ul li > a:hover
{
	color				: #d30037;
}

p
{
        margin-block-start              : .5em;
        margin-block-end                : 0px;
}

a
{
	color				: #d20036;
}

h2, h3
{
        margin-block-end                : 0px;
}

footer
{
	clear				: both;
	position			: relative;
	z-index				: 10;
	margin-top			: -4em;
	font-size			: xx-small;
	text-align			: right;
	width				: 100%;
	background-color		: #3a3c3c;
	font-size			: xx-small;
}

footer ul
{
	margin				: 0px;
	margin-right			: 30px;
	padding-top			: 5px;
	padding-bottom			: 5px;
}

footer ul li
{
	color				: white;
	font-size			: small;
	padding-left			: 10px;
}

.floatright
{
	float				: right;
}

pre code
{
	background-color		: #eee;
	border				: 1px solid #999;
	display				: block;
	padding				: 5px;
	white-space			: pre-wrap;
	font-family			: monospace;
}

table
{
	border-collapse			: collapse;
}

table.wide
{
	width				: 100%;
}

th
{
	text-align			: left;
	padding-bottom			: 10px;
}

th, td
{
	border-right			: 10px solid transparent;
	vertical-align			: top;
}

.clearboth
{
	clear				: both;
}

input[type=submit],
.button
{
	background-color		: #337ab7;
	color				: white;
	border				: 1px solid transparent;
	display				: inline-block;
	padding				: 5px;
	margin-bottom			: 1px;
	border-radius			: 4px;
	text-decoration			: none;
	font-size			: small;
}

input:invalid:not(.invalidokay)
{
	background-image		: url(/gfx/invalid.png);
	background-position		: right top;
	background-repeat		: no-repeat;
}

@media (max-width: 810px)
{
	nav.menu img
	{
		display		: none;
	}

	.menu ul
	{
		max-height	: 0;
		overflow	: hidden;
		padding-left	: 3em;
	}

	.menu li
	{
		visibility	: hidden;
		display		: block;
		border		: none;
	}

	.menu ul li a
	{
		display		: block;
		float		: none;
	}

	.menu .navbar-handle
	{
		display		: block;
		top		: 0.5em;
	}

	nav
	{
		margin-left	: 0px;
		margin-right	: 0px;
		padding-left	: 0px;
	}

	nav.menu
	{
		min-height	: 2em;
		border-bottom	: 2px solid #a8bdae;
	}

	nav.menu
	{
		min-height	: 2em;
		border-bottom	: 2px solid #a8bdae;
	}

	#navbar-checkbox:checked + nav.menu
	{
		z-index		: 1000;
	}

	#navbar-checkbox:checked + .menu ul
	{
		max-height	: 300px;
		overflow	: inherit;
		border-left	: 2px solid black;
		border-right	: 2px solid black;
	}

	#navbar-checkbox:checked + .menu li
	{
		visibility	: visible;
		display		: block;
	}

	.navbar-handle
	{
		-webkit-touch-callout	: none;
		-webkit-user-select	: none;
		 -khtml-user-select	: none;
		   -moz-user-select	: none;
		    -ms-user-select	: none;
		        user-select	: none;
	}

	.navbar-handle,
	.navbar-handle:before,
	.navbar-handle:after
	{
		border-top		: 0.27em solid #d30037;
	}

	.navbar-handle:before
	{
		top			: 0.37777777777777777em;
	}

	.navbar-handle:after
	{
		top			: 0.8888888888888888em;
	}

	#navbar-checkbox:checked .navbar-handle,
	#navbar-checkbox:checked .navbar-handle:before,
	#navbar-checkbox:checked .navbar-handle:after
	{
		border-top	: 0.27em solid #4c3665 !important;
	}


	#navbar-checkbox:checked + nav div.navbar-header
	{
		display		: none;
	}

	nav div.navbar-header
	{
		visibility	: visible;
		display		: block;
		width		: 100%;
		text-align	: center;
		z-index		: 20;
		text-transform	: none;
		color		: white;
	}

	article
	{
		border-bottom	: 2px solid #a8bdae;
	}

	p, h1, h2, h3, h4, h5
	{
		margin-left	: 5px;
		margin-right	: 5px;
		margin-top	: 10px;
		margin-bottom	: 5px;
		padding		: 0px;
	}

	#container, #receptacle, main
	{
		margin-left	: 0px;
		margin-right	: 0px;
		margin-top	: 0px;
		padding-left	: 0px;
		padding-right	: 0px;
	}

	footer
	{
		font-size	: small;
	}
}
