body {
	margin: 0;
	padding: 0;
	background: url("../images/body_bg.png") top center repeat-x;
	font-family: Verdana,Arial,Helvetica,sans-serif;
	font-size: 0.75em;
	line-height: 1.5em;
}

acronym,
abbr {
	border-bottom: 0;	
}

/* override different bullet types in nested lists */
ul {
	list-style-type: disc;
}

a,
a:visited {
	color: #406280;	
}

a:hover {
	color: #ff7800;
}

a img {
	border: 0;	
}

img.avatar {
	width: 60px;
	height: 60px;	
}

#wrapper {
	width: 960px;
	margin: 0 auto;	
}

.leaderboard {
	width: 728px;
	height: 90px;
	margin: 0 auto;
	padding: 20px 0;
}

#header {
	height: 110px;
	padding: 10px 0 0 0;
	background-image: url("../images/header_bg.png");
}

#header div.busy {
	background-image: url("../images/icon_busy_header.gif");	
}

h1 {
	width: 242px;
	height: 41px;
	margin: 10px 0 19px 0;
}

h1 a {
	display: block;
	width: 242px;
	height: 41px;
	text-indent: -9999px;
	background-image: url("../images/logo.gif");
	outline: 0;
}

#search {
	width: 290px; /* 300px - 10px padding */
	height: 30px; /* 40px - 10px padding */
	background-image: url("../images/search_form_bg.png");
	padding: 10px 10px 0 0;
}

#search-keywords {
	border: 0;
	width: 216px; /* 220px - 4px padding */
	height: 16px; /* 20px - 4px padding */
	padding: 2px;
	font-family: Verdana,Arial,Helvetica,sans-serif;
	margin: 0 10px 0 0;
	vertical-align: middle;
}

#search button {
	border: 0;
	padding: 0;
	width: 60px;
	height: 20px;
	background-color: transparent;
	background-image: url("../images/search_submit.png");
	text-indent: -9999px;
	cursor: pointer;
	vertical-align: middle;
}

#session {
	float: right;
	width: 380px;
	height: 100px;
	font-size: 0.875em;
	color: #fff;
}

#session a {
	color: #bcd;
	text-decoration: none;	
}

#session-login {
	margin-top: 12px;
}

#session-login label {
	font-weight: bold;	
}

#session-login-identifier-div,
#session-login-password-div {
	width: 150px;
	float: left;
	margin: 0 10px 6px 0;
}

#session-login-identifier-div label,
#session-login-password-div label {
	display: block;
	height: 25px;
	float: left;
}

#session-login-identifier-div a,
#session-login-password-div a {
	display: block;
	height: 25px;
	float: right;
}

#session-login-identifier,
#session-login-password {
	clear: both;
	width: 146px; /* 150px - 4px padding */
	height: 16px; /* 20px - 4px padding */
	border: 0;
	padding: 2px;
	font-family: Verdana,Arial,Helvetica,sans-serif;
}

#session-login button {
	width: 60px;
	height: 20px;
	border: 0;
	padding: 0;
	background-image: url("../images/login-submit.gif");
	background-color: transparent;
	text-indent: -9999px;
	outline: 0;
	cursor: pointer;
	margin: 25px 0 0 0;
}

#session-login.busy button {
	/* TODO */
	background-position: 0 -20px;	
}

#session-login-error {
	clear: left;
	float: left;
	width: 240px;
	color: #bcd;
	font-weight: bold;	
}

#session-login-error span.note {
	font-weight: normal;
}

#session-login-error a {
	text-decoration: underline;
}

#session-login-remember-div {
	float: left;
	width: 140px;
	text-align: right;
}

#session-login-remember {
	vertical-align: middle;
}

#session-welcome img.avatar {
	float: left;
	margin: 0 10px 0 0;
}

#session-welcome a {
	font-weight: bold;
}

#session-welcome-logout button {
	color: #bcd;
	font-weight: bold;	
}

#session-welcome-logout div.busy {
	visibility: hidden;
}

#session-welcome-logout.busy div.busy {
	visibility: visible;
}

/**
 * Navigation
 */

#nav {
	list-style-type: none;
	margin: 0 0 20px 0;
	padding: 0;
	height: 30px;
}

#nav li {
	float: left;
	margin-right: 16px;
}

#nav a {
	display: block;
	height: 30px;
	background-image: url("../images/nav.png");
	text-indent: -9999px;
	outline: 0;
}

#nav-action {
	width: 119px;
	background-position: 0 0;
}

#nav-action:hover {
	background-position: 0 -30px;
}

#nav-shooter {
	width: 95px;
	background-position: -119px 0;
}

#nav-shooter:hover {
	background-position: -119px -30px;
}

#nav-adventure {
	width: 124px;
	background-position: -214px 0;
}

#nav-adventure:hover {
	background-position: -214px -30px;
}

#nav-strategy {
	width: 144px;
	background-position: -338px 0;
}

#nav-strategy:hover {
	background-position: -338px -30px;
}

#nav-sports {
	width: 119px;
	background-position: -482px 0;
}

#nav-sports:hover {
	background-position: -482px -30px;
}

#nav-puzzle {
	width: 119px;
	background-position: -601px 0;
}

#nav-puzzle:hover {
	background-position: -601px -30px;
}

#nav-after {
	clear: left;	
}

#footer-outer {
	height: 30px;
	background-image: url("../images/footer_bg.png");
	margin: 20px 0 0 0;
}

#footer {
	width: 960px;
	margin: 0 auto;
	color: #fff;
	font-weight: bold;
	font-size: 0.75em;
	padding: 6px 0 0 0;
}

#footer-links {
	float: left;	
}

#footer-social {
	list-style-type: none;
	margin: 0;
	padding: 0;
	float: right;	
}

#footer-social li {
	float: left;
	margin: 0 16px 0 0;
}

#footer-social a {
	display: block;
	height: 17px;
	padding: 0 0 0 24px;
	background-repeat: no-repeat;
	background-position: 0 1px;
}

#footer-facebook {
	background-image: url("../images/icon-facebook-16.png");
}

#footer-myspace {
	background-image: url("../images/icon-myspace-16.png");
}

#footer-twitter {
	background-image: url("../images/icon-twitter-16.png");
}

#footer-rss {
	background-image: url("../images/icon-rss-16.png");
}

#footer a {
	color: #bcd;
	text-decoration: none;
}

#footer a:hover {
	color: #cde;	
}

#footer-end {
	clear: both;	
}

h2 {
	margin: 0 0 20px 0;
	color: #406280;
	/* font-family: Lucida Sans Unicode, Lucida Grande, sans-serif; */
	font-family: Arial,Helvetica,sans-serif;
}

img.game-thumbnail {
	width: 60px;
	height: 60px;
}

/**
 * Home page
 */
 
div.home-column {
	float: left;
	width: 300px;
	margin-right: 20px;	
}

div.home-column h2 {
	margin: 0 0 20px 0;	
}

div.home-column-last {
	margin-right: 0;
}

div#home-column-end {
	clear: left;	
}

#home-h2-latest {
	width: 166px;
	height: 15px;
	background-image: url("../images/h2_latest_additions.gif");
	text-indent: -9999px;
}

#home-h2-picks {
	width: 111px;
	height: 15px;
	background-image: url("../images/h2_staff_picks.gif");
	text-indent: -9999px;
}

#home-h2-random {
	width: 143px;
	height: 15px;
	background-image: url("../images/h2_random_games.gif");
	text-indent: -9999px;
}

/**
 * Lists of games
 */

ul.games {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

ul.games li {
	margin: 0 0 20px 0;	
}

ul.games img {
	display: block;
	float: left;
	margin: 0 10px 10px 0;	
}

ul.games h3 {
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	font-size: 1.25em;
	margin: 0;
}

ul.games h3 a {
	color: #000;
	text-decoration: none;
}

ul.games h3 a:hover {
	color: #406280;	
}

ul.games p {
	margin: 0;	
}

ul.games p.meta {
	font-style: italic;
	color: #787878;
}

ul.games div.end {
	clear: left;
}

/**
 * Game pages
 */

h2.game-title {
	margin-bottom: 0;	
}

p.game-category {
	margin-top: 0;
	font-size: 0.75em;
}
 
#game-wrapper {
	margin: 0 auto;
}

#game-object {
	vertical-align: bottom; /* prevents ~5px bottom margin */	
}

#game-controlbar {
	margin: 1px auto 0 auto;
	height: 40px;
	background-image: url("../images/game-controlbar-bg.png");
}

#game-controlbar-rate {
	height: 28px;
	float: left;
	color: #fff;
	font-size: 0.75em;
	padding: 12px 0 0 12px;
	margin: 0;
}

#game-controlbar-rate button {
	border: 0;
	padding: 0;
	margin: 0;
	width: 17px;
	height: 16px;
	background-color: transparent;
	background-image: url("../images/stars.png");
	background-position: 0 -16px;
	text-indent: -9999px;
	outline: 0;
	cursor: pointer;
	vertical-align: top;
}

#game-controlbar-rate.rated1 button.r1,
#game-controlbar-rate.rated2 button.r1,
#game-controlbar-rate.rated3 button.r1,
#game-controlbar-rate.rated4 button.r1,
#game-controlbar-rate.rated5 button.r1 {
	background-position: 0 0;
}

#game-controlbar-rate.rated2 button.r2,
#game-controlbar-rate.rated3 button.r2,
#game-controlbar-rate.rated4 button.r2,
#game-controlbar-rate.rated5 button.r2 {
	background-position: 0 0;
}

#game-controlbar-rate.rated3 button.r3,
#game-controlbar-rate.rated4 button.r3,
#game-controlbar-rate.rated5 button.r3 {
	background-position: 0 0;
}

#game-controlbar-rate.rated4 button.r4,
#game-controlbar-rate.rated5 button.r4 {
	background-position: 0 0;
}

#game-controlbar-rate.rated5 button.r5 {
	background-position: 0 0;
}

#game-controlbar-rate div.busy {
	visibility: hidden;
	width: 16px;
	height: 16px;
}

#game-controlbar-rate.busy div.busy {
	visibility: visible;
}

.game-controlbar-button {
	float: right;
	width: 40px;
	height: 40px;
	padding: 0 0 0 2px;
	background: url("../images/game-controlbar-separator.png") no-repeat;
}

#game-controlbar-favorite {}

#game-controlbar-favorite button {
	width: 40px;
	height: 40px;
	border: 0;
	padding: 0;
	margin: 0;
	background: transparent url("../images/game-controlbar-icons.png") -40px 0;
	text-indent: -9999px;
}

#game-controlbar-favorite.favorited button {
	background-position: -80px 0;
}

#game-controlbar-share a {
	display: block;
	width: 40px;
	height: 40px;
	background: transparent url("../images/game-controlbar-icons.png") 0 0;
	cursor: pointer;
	outline: 0;
}

#game-controlbar-fullscreen div {
	width: 40px;
	height: 40px;
	background: transparent url("../images/game-controlbar-icons.png") -120px 0;
	cursor: pointer;
}

#game-controlbar-fsinfo {
	display: none;	
}

body.fullscreen {
	background-image: none;
	background-color: #000;	
}

body.fullscreen #wrapper {
	width: 100%;	
}

body.fullscreen #game-fullscreen-controls {
	display: block;
}

body.fullscreen div.leaderboard,
body.fullscreen #header,
body.fullscreen #nav,
body.fullscreen #game-top,
body.fullscreen #game-bottom,
body.fullscreen #footer-outer {
	display: none;
}

body.fullscreen #game-controlbar {
	margin: 0;
	height: 24px;
	overflow: hidden;	
}

body.fullscreen #game-controlbar-rate {
	height: 20px;
	float: left;
	color: #fff;
	font-size: 0.75em;
	padding: 4px 0 0 12px;
	margin: 0;
}

body.fullscreen .game-controlbar-button {
	float: right;
	width: 24px;
	padding: 0 0 0 2px;
	background: url("../images/game-controlbar-separator.png") no-repeat;
}

body.fullscreen #game-controlbar-share a {
	width: 24px;
	height: 24px;
	background: transparent url("../images/game-controlbar-icons-fullscreen.png") -72px 0;
}

body.fullscreen #game-controlbar-favorite button {
	width: 24px;
	height: 24px;
	background: transparent url("../images/game-controlbar-icons-fullscreen.png") -24px 0;
}

body.fullscreen #game-controlbar-favorite.favorited button {
	background-position: -48px 0;
}

body.fullscreen #game-controlbar-fullscreen div {
	width: 24px;
	height: 24px;
	background: transparent url("../images/game-controlbar-icons-fullscreen.png") 0 0;
}

body.fullscreen #game-controlbar-fsinfo {
	width: auto;
	white-space: nowrap;
	display: block;
	font-size: 0.875em;
	color: #fff;
	padding: 3px 12px 0 12px;
}

#game-controlbar-fsinfo a {
	color: #fff;	
}


#noflash {
	/* TODO */
}

div.noflash {
	background-color: #ccc;
	text-align: center;
	font-family: Arial,Helvetica,sans-serif;
	font-weight: bold;
	font-size: 1.25em;
}

div.noflash p {
	padding: 20px;
	margin: 0;	
}

#game-bottom {
	margin: 40px 0 0 0;
}

#game-bottom-main {
	float: left;
	width: 620px;
	margin: 0 20px 0 0;
}

#game-bottom-main p:first-child {
	margin-top: 0;	
}

#game-comments {
	width: 460px;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

#game-comments li {
	margin: 0 0 20px 0;
}

#game-comments div.comment-avatar {
	width: 60px;
	float: left;
	margin: 0 10px 0 0;	
}

#game-comments div.comment-avatar img {
	display: block;	
}

#game-comments div.comment-wrapper {
	/* This exists solely to create a new float context */
	overflow: auto;	
}

#game-comments div.comment-end {
	clear: both;	
}

#game-comments div.comment-username {
	width: 195px;
	float: left;
	color: #406280;
	font-weight: bold;
}

#game-comments div.comment-username a {
	text-decoration: none;
}

#game-comments div.comment-tools {
	width: 195px;
	float: right;
	text-align: right;
	margin: 0 0 2px 0;
	color: #999;
	font-size: 0.875em;
}

#game-comments button {
	border: 0;
	background: #406280 none;
	font-weight: normal;
	height: 16px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;	
}

#game-comments div.busy {
	background-image: url("../images/busy-black-on-white.gif");
	margin: 0 4px 0 0;
	visibility: hidden;	
}

#game-comments form.busy div.busy {
	visibility: visible;	
}

#game-comments div.comment-body {
	clear: both;	
}

#game-comments textarea {
	width: 380px;
	height: 30px;
	display: block; /* to enable the animations */
}

#game-bottom-sidebar {
	float: left;
	width: 300px;
}

#game-bottom-sidebar-plays {
	float: right;
	margin-top: 0;
}

#game-bottom-end {
	clear: left;
}

#game-recommendations {
	width: 280px;
	height: 300px;
	border: 1px #ccc solid;
	padding: 9px;
	overflow: scroll;
	overflow-x: hidden;
	overflow-y: scroll;	
}

#game-recommendations p {
	margin-top: 0;	
}

game-recommendations ul.games li:last-child {
	margin: 0;	
}


/**
 * Search results and tag index pages
 */
 
#generic-content {
	float: left;
	width: 780px;
	margin-right: 20px;
}

#generic-ad {
	float: left;
	width: 160px;
}

#generic-end {
	clear: left;
}

/**
 * Pagers
 */
 
div.pager {
	height: 24px;
	overflow: auto;
	margin: 0 0 20px 0;
}

p.pager-summary {
	height: 24px;
	float: left;
	padding: 3px 0 0 0;
	margin: 0;
}

div.pager ul {
	height: 24px;
	float: right;
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: auto;
}

div.pager li {
	float: left;
	width: 24px;
	height: 24px;
	margin: 0 4px 0 0;
}

div.pager li:last-child {
	margin: 0;	
}

div.pager a {
	border: 1px #ccc solid;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	display: block;
	width: 22px;
	height: 20px;
	padding: 2px 0 0 0;
	text-align: center;
	text-decoration: none;
}

div.pager li.current a {
	background-color: #ddd;	
}

/**
 * Forms
 */
 
form div.busy {
	display: inline-block;
	width: 16px;
	height: 16px;
	background: url("../images/icon_busy.gif");
	vertical-align: bottom;
}

form div.field {
	margin: 0 0 20px 0;
}

form div.field label {
	display: block;
	float: left;
	font-weight: bold;
	width: 140px;
	margin: 0 20px 0 0;
}

form div.buttons {
	padding: 0 0 0 160px;
}

div.field input.text {
	border: 1px #ccc solid;
	width: 210px; /* 220px - 8px padding - 2px border */
	height: 16px; /* 26px - 8px padding - 2px border */
	padding: 4px;
	font-family: Verdana,Arial,Helvetica,sans-serif;
}

textarea {
	border: 1px #ccc solid;
	width: 450px; /* 460px - 8px padding - 2px border */
	height: 140px;
	padding: 4px;
	font-family: Verdana,Arial,Helvetica,sans-serif;
	font-size: 1em;
}

span.error {
	color: #a80000;
	font-weight: bold;	
}

div.errors {
	border: 1px #eccb0a solid;
	padding: 15px 15px 15px 63px;
	color: #cc4800;
	background: url("../images/errors_bg.png") repeat-x #f3ec9c;
	margin: 0 0 16px 0;
}

div.errors *:first-child {
	margin-top: 0;
}

div.errors *:last-child {
	margin-bottom: 0;	
}

div.errors a {
	color: #900;	
}

div.success {
	border: 1px #eccb0a solid;
	padding: 15px 15px 15px 63px;
	color: #cc4800;
	background: url("../images/success_bg.png") repeat-x #f3ec9c;
	margin: 0 0 16px 0;
	min-height: 32px;
}

div.success *:first-child {
	margin-top: 0;
}

div.success *:last-child {
	margin-bottom: 0;	
}

div.success a {
	color: #900;	
}

span.field-note {
	color: #666;
	font-style: italic;	
}

button {
	border: 0;
	padding: 0 10px;
	height: 26px;
	background-image: url("../images/button_bg.png");
	color: #fff;
	font-weight: bold;
	font-family: Verdana,Arial,Helvetica,sans-serif;
	font-size: 0.875em;
	cursor: pointer;
}

button::-moz-focus-inner {
	padding: 0;
	border: none;	
}

button.login {
	width: 61px;
	height: 26px;	
	border: 0;
	padding: 0;
	background-image: url("../images/button_log_in.gif");
	text-indent: -9999px;
	outline: 0;
}

fieldset {
	border: 1px #ccc solid;
	padding: 15px;
	margin: 0 0 16px 0;
}

legend {
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1.25em;
	font-weight: bold;
	padding: 0 8px;
	color: #406280;	
}

form.simple {
	display: inline;
}

form.simple button {
	display: inline !important;
	background: none;
	padding: 0;
	margin: 0;
	height: auto;
	color: #000;
	font-weight: normal;
	color: #406280;
	text-decoration: underline;
	font-size: 1em;
}

/**
 * Contact page
 */
 
#contact-submit {
	border: 0;
	padding: 0;
	width: 113px;
	height: 26px;
	background-image: url("../images/contact_submit.gif");
	text-indent: -9999px;
	cursor: pointer;
	
}

/**
 * FAQ page
 */
 
#faq-index {
	padding-bottom: 24px;
	border-bottom: 1px #ccc solid;
	margin-bottom: 24px;
	font-weight: bold;	
}
 
#faq-answers {
	font-weight: bold;	
}
 
.faq-answers-question {
	font-weight: bold;
}

.faq-answers-answer {
	font-weight: normal;
}

/**
 * Registration page
 */
 
#register-username,
#register-email,
#register-password1,
#register-password2 {
	width: 140px;
}
 
#register-submit {
	width: 81px;
	height: 26px;
	border: 0;
	padding: 0;
	background-image: url("../images/register_submit.gif");
	text-indent: -9999px;
	outline: 0;
	cursor: pointer;
}

/**
 * My Account page
 */
 
#avatar-img {
	width: 60px;
	height: 60px;
	vertical-align: middle;
	margin: 0 20px 0 0;
	cursor: pointer;	
}
 
#avatar-lightbox ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: auto;	
}

#avatar-lightbox li {
	float: left;
	width: 60px;
	height: 60px;
}

#avatar-lightbox img {
	display: block;
	width: 60px;
	height: 60px;
	cursor: pointer;
}
 
#changepw-current,
#changepw-new1,
#changepw-new2 {
	width: 144px;
}

/**
 * User profile pages
 */
 
div.user-profile-header {
	height: 60px;
	margin: 0 0 20px 0;
}

div.user-profile-header img.avatar {
	float: left;
	margin: 0 20px 0 0;
}

/**
 * Tabs
 */
 
ul.tabs {
	list-style-type: none;
	margin: 0 0 24px 0;
	padding: 0;
	overflow: auto;
	border-left: 1px #ccc solid;
}

ul.tabs li {
	float: left;
}

ul.tabs a {
	display: block;
	height: 21px;
	border-top: 1px #ccc solid;
	border-right: 1px #ccc solid;
	border-bottom: 1px #ccc solid;
	padding: 3px 0 0 0;
	text-decoration: none;
	text-align: center;
	outline: 0;
}

ul.tabs li.active a {
	border-bottom: 1px #fff solid;	
}

ul.tabs-2 li {
	width: 389px;
}

ul.tabs-2 a {
	width: 388px;
}
