html { height: 100%; }
body {
	font: 14px Verdana;
	background: linear-gradient(#CDE, 80%, #9AB) no-repeat fixed;
	margin: 0;
}
a { color: #000; }
h1 {
	text-shadow: 2px 2px 0 #EEE;
	padding: 8px 20px;
	margin: 0;
}
h2 { margin-left: 20px; }
hr { color: #678; }

/* Login Elements */

h1 img.user {
	position: absolute;
	top: 24px;
	right: 20px;
}
h1 img.user:hover {
	//background-color: rgba(0,0,0,0.2);
	cursor: pointer;
}
h1 span.user {
	position: absolute;
	right: 108px;
	top: 36px;
	font-size: 18px;
	text-align: right;
}
h1 span.login {
	position: absolute;
	right: 108px;
	top: 60px;
	font-size: 14px;
	font-weight: normal;
	text-align: right;
	text-shadow: none;
}

/* Sections Menu */

div.sections {
	background: linear-gradient(90deg, #9AB, 80%, rgba(0,0,0,0));
	padding-left: 20px;
	border-top: 1px solid #678;
	border-bottom: 1px solid #678;
	margin-bottom: 20px;
}
div.section {
	display: inline-block;
	width: 7em;
	text-align: center;
	padding: 12px 8px;
}
div.section:hover {
	cursor: pointer;
	text-decoration: underline;
}
div.sel {
	font-weight: bold;
	text-decoration: none;
	background: linear-gradient(#BCD, #9AB);
	border-left: 2px solid #678;
	border-right: 2px solid #678;
}
div.sel:hover {
	text-decoration: none;
}

/* Database Search */

div.search_block {
	display: inline-block;
	vertical-align: top;
	background-color: rgba(170, 185, 205, 0.5);
	padding: 20px;
	border: 1px solid #678;
	box-shadow: 1px 1px 0 #000;
	margin: 0 20px 12px 20px;
}
div.search_block p.subtitle {
	font-weight: bold;
	margin: 0 0 8px 0;
}
select.dropdown {
	width: 20em;
}
input[type="text"] {
	width: 19.3em;
}
div.subsection {
	padding: 6px 20px;
}

select,option,input {
	height: 22px;
	font-size: 14px;
	background-color: #EEE;
	padding-left: 6px;
	border: 1px solid #789;
	margin-bottom: 8px;
}
input[type="checkbox"] {
	position: relative;
	top: 4px;
	margin: 0 8px 0 0;
}
input[type="text"] {
	height: 20px;
}
textarea {
	border: 1px solid #789;
}
span.label {
	display: inline-block;
	width: 6.5em;
}
button {
	font: bold 14px Verdana;
	background: linear-gradient(#BCD, #9AB);
	padding: 8px 20px;
	border-width: 1px;
	box-shadow: 1px 1px 0 #345;
	margin: 20px;
	cursor: pointer;
}

div.search {
	padding: 16px;
	margin-left: 20px;
}
div.search p {
	display: inline;
	font-weight: bold;
}
div.search span {
	margin-right: 64px;
}

table.results {
	max-width: calc(100% - 80px);
	margin-left: 20px;
	margin-bottom: 20px;
	border-collapse: collapse;
	box-shadow: 1px 1px 0 #000;
}
table.results td,th {
	padding: 6px 12px;
	border: 1px solid #678;
}
table.results th { background: linear-gradient(#FFF, 12%, #DDD, 98%, #678); }
table.results tr:nth-child(odd) { background-color: #ABC; }
table.results tr:nth-child(even) { background-color: #9AB; }

/* Details */

div.img-title {
	display: inline-block;
	margin-left: 32px;
	vertical-align: top;
}
div.description {
	min-width: 300px;
	background: linear-gradient(90deg, rgba(100, 120, 140, 0.4), rgba(0, 0, 0, 0));
	padding: 20px 32px;
	border-top: 1px solid #678;
	border-bottom: 1px solid #678;
	box-shadow: -3px 0 2px -1px #345;
	margin-bottom: 20px;
}
p.section-title {
	font-size: 24px;
	font-weight: bold;
	text-shadow: 0 1px 0 #DDD;
	margin: 0 0 20px 0;
}

button.download {
	display: block;
	margin: 12px auto 20px auto;
}

img.title {
	max-width: 512px;
	border: 1px solid #678;
}
img.ss {
	display: inline-block;
	max-width: 256px;
	box-shadow: 0 4px 8px #777;
	margin-right: 20px;
	margin-bottom: 20px;
}

/* Reviews */

div.reviews p {
	max-width: 800px;
}
div.reviews tr.separator {
	background: none;
	border: none;
}
div.reviews tr.separator td {
	background: none;
	border: none;
}
div.reviews tr.review-header {
	background: linear-gradient(#FFF, 12%, #DDD, 98%, #678);
}

/****/

div.footer {
	text-align: center;
	padding: 8px;
	padding-bottom: 20px;
}

div.asm {
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background: url("bg.png") fixed;
	opacity: 0.2;
	z-index: -1;
}

.b { font-weight: bold; }
.c { text-align: center; }
.invis { display: none; }
p.c { text-align: center; }
ul { list-style-type: disc; }
.pl20 { padding-left: 20px; }
.pr40 { padding-right: 40px; }
.pb40 { padding-bottom: 40px; }
.mt8 { margin-top: 8px; }
.mt20 { margin-top: 20px; }
.mb20 { margin-bottom: 20px; }
.ml20 { margin-left: 20px; }
.mr20 { margin-right: 20px; }
.mw50p { max-width: 50%; }
.mw800 { max-width: 800px; }