* {
	margin:0;
	padding:0;
}

body {
	background-color:rgb(250,250,250);
	font-family:sans;
}

header::after {
	background-image:url("/images/logo2.png");
	background-size:320px auto;
	background-repeat:no-repeat;
	opacity:0.3;
	content:"";
	top:-80px;
	left:0;
	bottom:0;
	right:0;
	position:absolute;
	z-index:-1;
}

h1#title {
	text-align:center;
	color:#505050;
	font-size:250%;
	padding-bottom:5px;
	width:100%;
	text-shadow:
	-2px -2px 1px rgb(250,250,250),
	2px -2px 1px rgb(250,250,250),
	-2px 2px 1px rgb(250,250,250),
	2px 2px 1px rgb(250,250,250);
}

div#subtitle {
	text-align:center;
	width:100%;
	font-weight:bold;
	color:#5A5A5A;
	text-shadow:
	-2px -2px 1px rgb(250,250,250),
	2px -2px 1px rgb(250,250,250),
	-2px 2px 1px rgb(250,250,250),
	2px 2px 1px rgb(250,250,250);
}

div#authorlist {
	text-align:center;
	width:100%;
}

div#main-content {
	height:100%;
	text-align:center;
}

#menu-bar,
#menu-bar ul,
#menu-bar ul li,
#menu-bar ul li a {
	border:0;
	list-style:none;
	display:block;
	position:relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#menu-bar {
	width:100%;
}

#menu-bar ul {
	width:100%;
	display:none;
}

#menu-bar.align-center > ul {
	text-align:left;
}

#menu-bar ul li {
	width:100%;
	height:52px;
	border-top:1px solid rgba(120,120,120,0.2);
	background:gray;
}

#menu-bar > ul > li > a {
	padding:20px;
	font-size:12px;
	letter-spacing:1px;
	text-decoration:none;
	color:white;
	font-weight:700;
	text-transform:uppercase;
}

#menu-bar > ul > li#current {
	display:none;
}

#menu-bar #menu-button {
	display:block;
	height:17px;
	padding:17px;
	color:white;
	cursor:pointer;
	font-size:12px;
	text-transform:uppercase;
	font-weight:700;
	background:darkblue;
}

#menu-bar #menu-button.menu-opened {
	text-shadow:
	-2px -2px 1px blue,
	2px -2px 1px blue,
	-2px 2px 1px blue,
	2px 2px 1px blue;
}

#menu-bar #menu-button:after {
	position: relative;
	top:-8px;
	left:95%;
	display: block;
	height: 4px;
	width: 20px;
	border-top: 2px solid white;
	border-bottom: 2px solid white;
	content: '';
}

#menu-bar #menu-button:before {
	position:relative;
	top:2px;
	left:95%;
	display: block;
	height:2px;
	width:20px;
	background:white;
	content: '';
}

#menu-bar #menu-button.menu-opened:after {
	border-top: 2px solid white;
	border-bottom: 2px solid white;
}

#menu-bar #menu-button.menu-opened:before {
	background:white;
}

div#page-content {
	background-color:rgb(250,250,250);
	width:100%;
	padding-bottom:20px;
}

div#page-content > div > h3 {
	font-size:150%;
	color:darkblue;
}

div#sub-page-left {
	color:black;
	font-size:small;
	width:100%;
}

div#sub-page-right {
	color:black;
	font-size:small;
	width:100%;
	border-top:thick solid black;
}

div.content-box {
	background-color:rgb(240,240,240);
	text-align:left;
	padding:1em;
	padding-top:0;
	margin:0.5em;
	overflow-x:auto;
	box-shadow:0px 0px 2px #888888;
	margin-bottom:1em;
}

div.content-box > h5 {
	margin-bottom:1px;
	margin-top:10px;
	font-size:small;
	text-align:left;
}

div.content-box > hr {
	color:black;
	margin-bottom:5px;
}

div.gallery {
	margin: 10px auto;
	padding:10px;
	width:90%;
	position: relative;
	text-align:left;
	overflow:visible;
	border:2px groove DarkGrey;
	padding-top:20pt;
	padding-bottom:20pt;
}

div.gallery .webapp {
	display:inline-block;
	position:relative;
	width:95%;
	margin:10px;
}

div.gallery .appcaption {
	display:inline-block;
	position:absolute;
	text-align:justify;
	font-size:70%;
	width:180px;
	padding:3px;
}

div.gallery a {
	display: inline-block;
	width: 40%;
	height: 100px;
	position: relative;
	border: 5px solid DarkGrey;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

div.gallery a img {
	display: block;
	width: 100%;
	height: 90px;
	position: absolute;
	top: 0px;
	left: 0px;
	cursor: pointer;
}

div.appname {
	text-align: center;
	font-style: normal;
	font-size: 20pt;
	color: white;
	position: absolute;
	opacity: 0.70;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	filter: alpha(opacity=70);
	background-color: black;
	padding: 5pt 0pt;
	border-radius: 4pt;
	width: 98%;
	left: 1%;
	top: 10%;
	-webkit-transition:all 0.5s ease-in-out;
	-moz-transition:all 0.5s ease-in-out;
	-o-transition:all 0.5s ease-in-out;
	-ms-transition:all 0.5s ease-in-out;
	transition:all 0.5s ease-in-out;
}

a.applink:hover .appname {
	opacity: 0.10;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
	filter: alpha(opacity=10);
}

table, th, td {
	border: 1px solid black;
	border-collapse: collapse;
}

span.code {
	font-family:monospace;
	font-size:medium;
	background:white;
}

span.shell-code {
	font-family:monospace;
	font-size:medium;
	padding:1px;
}
