@import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro); /* google font for footer powered-by text */

/* RESETS */

body {margin: 0;}
h1, h2, h3, h4, h5, h6 {margin: 0; padding: 0;}
ul, ol, li {margin: 0; padding: 0; font-weight: normal;}
p {margin: 0; padding: 0; padding-bottom: 14px;}
img {border: 0;}

/* CLASSES */

.strong {font-weight: bold;}
.clearleft {clear: left;}
.clearboth {clear: both;}
.error {font-weight: bold;
/*color: #ee311b; /* orange */}
p.note {font-size: 12px;}
.nopad {padding: 0;}
p.no-results {margin-bottom: 32px;}

/* ADMIN FUNCTIONS */

.admin_functions, .admin_functions a {
	font-size: small;
	font-weight: bold;
	color: red;
}

/* FORMS */

.basic_form {
	padding-top: 20px;
}

.basic_form th {
	font-weight: normal;
	text-align: right;
	width: 200px;
}

.basic_form td, .basic_form th {
	padding-bottom: 10px;
	padding-right: 18px;
}

input[type="submit"],
input[type="button"] {
	cursor: pointer;
	padding: 4px 8px;
}

.basic_form input[type=text],
.basic_form input[type=password],
.rounded_input {
	padding: 5px;
}

.basic_form input[type=text]:focus,
.basic_form input[type=password]:focus,
.rounded_input:focus {
	outline: none;
}

p.forgot-pass {
	margin-top: 1em; 
	font-size: 12px;
}

.pager .rss {
	display: inline-block;
	float: right;
}

/* STYLED input[type=file]. Containers created with JS */

.file_container {
	position: relative;
	height: 50px;
	width: 250px;
	text-align: right;
}

.file_container div {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.file_container input[type=button] {
	margin-top: 0;
	margin-left: 10px;
}

.file_container input[type=file] {
	position: relative;
	top: 7px;
	z-index: 2;
	opacity: 0;
	filter: alpha(opacity: 0);
	visibility: visible;
}

/* PAGE LAYOUT */

#center {text-align: center;}

#outermost {
	width: 990px;
	text-align: left;
	margin: 0 auto;
}

	#header_top {
		height: 24px;
		padding-top: 9px;
		font-size: 14px;
	}
	
		#header_author_invite {
			float: left;
			font-weight: bold;
		}

		#header_top_links {
			float: right;
			font-size: 12px;
		}
	 
			#header_top_links ul {margin: 0; padding: 0;}		
			#header_top_links ul li {list-style-type: none; display: inline; padding-left: 3px;}
			#header_top_links ul li a {padding: 4px;}
			#header_top_links ul > li:first-child {border: none;}	
	
			#header_top_links a {
				text-decoration: none;
			}

	#header_middle {
		height: 120px;
		position: relative;
	}
	
	#header_middle h1#logo {
		margin: 0; 
		padding: 0; 
		width: 312px; 
		height: 110px;
		position: relative;
	}	
	
		#header_ad {
			width: 728px;
			height: 90px;
			position: absolute;
			top: 13px;
			right: 0;
			text-align: right;
		}
	
	#header_bottom {
		height: 49px;
		margin-bottom: 10px;
	}

		#search {
			float: right;
			position: relative;
			top: 2px;
			width: 302px;
			height: 50px;
		}
			
			  #search input[type="text"] {
				border-radius: 4px;
				-moz-border-radius: 4px;
				-webkit-border-radius: 4px;
				height: 20px; /* plus padding-top = 36 */
				width: 255px;
				margin-left: 10px;
				margin-top: 4px;
				font-size: 14px; /* internal text */
				padding: 8px 14px;
			  }
			  
	#header_bottom ul#main-nav {
		margin: 0;
		padding: 0;
	}
	
		#header_bottom ul li.major_nav_link {
  			display: block;
			float: left;
			height: 49px;
			text-align: center;
		}
		
		#header_bottom ul li.major_nav_link:first-child {
			border-left: none;
		}

		  #header_bottom ul li.major_nav_link a {
			  padding-left: 24px;
			  padding-right: 24px;
			  padding-top: 14px;
			  display: block;
			  float: left;
			  height: 35px;
			  font-size: 16px;
			  font-weight: bold;
			  text-decoration: none;
		  }
		  			
			#header_bottom ul li.active a:hover {
				box-shadow: none;
			}

	#right_col {
	  float: right;
	  width: 300px;
	  clear: both;
	}

		#right_col ul#category-nav, #right_col ul#static_page_menu {
			margin: 0 0 5px 0; 
			padding: 0;
			}
		
			#right_col ul#category-nav li.category, #right_col ul#static_page_menu li {
				margin-bottom: 1px; 
				list-style-type: none;
				}
			
			.category a {
				text-decoration: none;
				}
						
			#right_col ul li.category a.cat_link, #right_col ul#static_page_menu li a  {
				margin: 0; 
				padding: 0;
				display: block;
				font-size: 16px;
				line-height: 16px;
				font-weight: bold;
				padding: 6px 18px;
				padding: 10px 18px;
				border: 2px solid transparent;
				text-decoration: none;
			}
			
			#right_col ul li.category a.cat_link:hover, #right_col ul#static_page_menu li a:hover {
			  -webkit-border-radius: 8px;
			  -moz-border-radius: 8px;
			  border-radius: 8px;
			}


			.category a.top_posts {
				font-weight: bold;
				text-decoration: underline;
			}

		  .current_category, #right_col ul#static_page_menu li a.active {
			-moz-border-radius: 10px;
			-webkit-border-radius: 10px;
			border-radius: 10px;
			position: relative;
		  }
		  
		  ul.current_category_links {margin: 0; padding: 0 0 8px 20px;}
		  ul.current_category_links li {list-style-type: none; display: inline; font-size: 12px; /*padding-left: 4px;*/ border-left: none !important;}
		  ul.current_category_links > li:first-child {border: none;}
		  ul.current_category_links li a {
				-moz-border-radius: 2px 2px 2px 2px;
				-webkit-border-radius: 2px 2px 2px 2px;
				border-radius: 2px 2px 2px 2px;
				font-size: 12px;
				padding: 2px 6px;
			}
					
		  ul.current_category_links li a.active {background: #FFF; background: rgba(255, 255, 255, 0.25);}
		  
		  		  
		  #right_col ul li.category.current_category a.cat_link:hover {
			  background: none; 
			  border: 2px solid transparent; 
			  box-shadow: none;
			  -moz-box-shadow: none;
			  -webkit-box-shadow:  none;
			  -webkit-border-radius: 0;
			  -moz-border-radius: 0;
			  border-radius: 0;
	  }
		
		  #right_col ul li.category.current_category a.cat_link {
			  padding-bottom: 3px; 
			  padding-top: 8px;
		  }		
		  
			
			  #right_col ul.current_category_links a:hover {
			  text-decoration: underline;
			}


	div.sidebar-ads {padding-left: 23px; margin-top: 34px;}
	
	div.sidebar-ads.ad-preview {
		margin-top: 0;
		padding-left: 0;
		display: inline-block;
	}
	
	div.sidebar-ads > div {
		width: 160px;
		margin-bottom: 34px;
	}
	
	div#sidebar-facebook, div#sidebar-twitter {padding-left: 23px; margin-bottom: 34px;}

		
	#main_body {
		width: 670px;
		float: left;
	}
		#body_author_invite {
		  margin-top: 12px;
		  margin-bottom: 32px;
		}
		
		img#category_image_title {padding: 3px; border: 1px solid #ccc; border-radius: 2px; float: left; margin: 0 12px 18px 0;}
		
		h2.top-posts {padding-top: 12px; color: #5b5b5b;}
		
		#main_body #top_new_toggle {clear: both;}
		
		#main_body #top_new_toggle li {
			width: 50%;
			float: left;
			display: block;
			margin-bottom: 1em;
		}
		
		#top_new_toggle + div.post_summary {
			border-top: none !important;
		}
		
		#top_new_toggle + div.post_summary.announcements {
			border-top: 1px dotted #CCCCCC !important;
		}
		
		#top_new_toggle li a {
			display: block;
			background: #FFF;
			border: none;
			border-bottom: 1px solid #ccc;
			padding: 1.25em 0;
			text-align: center;
			-webkit-border-radius: 4px 4px 0 0;
			-moz-border-radius: 4px 4px 0 0;
			border-radius: 4px 4px 0 0;
			text-transform: uppercase;
			font-size: 14px;
			text-decoration: none;
			font-weight: 700;
			color: #999;
		}
		
		#top_new_toggle li.current a {
			background: #f4f4f4; /* Old browsers */
			background: -moz-linear-gradient(top,  #f4f4f4 0%, #ffffff 100%); /* FF3.6+ */
			background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f4f4f4), color-stop(100%,#ffffff)); /* Chrome,Safari4+ */
			background: -webkit-linear-gradient(top,  #f4f4f4 0%,#ffffff 100%); /* Chrome10+,Safari5.1+ */
			background: -o-linear-gradient(top,  #f4f4f4 0%,#ffffff 100%); /* Opera 11.10+ */
			background: -ms-linear-gradient(top,  #f4f4f4 0%,#ffffff 100%); /* IE10+ */
			background: linear-gradient(to bottom,  #f4f4f4 0%,#ffffff 100%); /* W3C */
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */

			border: 1px solid #ccc;
			border-bottom: none;
			-webkit-box-shadow: -2px -2px 3px #efefef;
			-moz-box-shadow: -2px -2px 3px #efefef;
			box-shadow: -2px -2px 3px #efefef;
			color: #5b5b5b;
		}
		
		#top_new_toggle li a:hover {
			text-decoration: underline;
			color: #5b5b5b;
		}
		
		#top_new_toggle li.current a:hover {
			text-decoration: none;
		}
		
		#top_new_toggle li#new_post_tab a {
			-moz-box-shadow: inset 2px -2px 3px #efefef;
			-webkit-box-shadow: inset 2px -2px 3px #efefef;
			box-shadow: inset 2px -2px 3px #efefef;
		}

		#top_new_toggle li#top_post_tab a {
			-webkit-box-shadow: inset -2px -2px 3px #efefef;
			-moz-box-shadow: inset -2px -2px 3px #efefef;
			box-shadow: inset -2px -2px 3px #efefef;
		}
				
		#top_new_toggle li#top_post_tab.current a,
		#top_new_toggle li#new_post_tab.current a {
			-moz-box-shadow: none;
			-webkit-box-shadow: none;
			box-shadow: none;
		}
			
		.post_summary {
		  padding: 16px 0 20px 0;
		  clear: left;
		}
		
		.post_summary.announcements .post_img {
			margin-left: 75px;
		}
		
		.post_summary.announcements {background: #efefef;}
		
			.post_summary h2 {
			margin: 0; 
			padding: 0 10px 4px 0 !important; 
			margin-left: 75px;
			}
			
			.post_summary p.author {
				margin: 0; 
				padding: 0 0 14px 0; 
				}
			
			#main_body .post_summary a.author-link {
			padding: 0 1px 0 0;
			}
			
			#main_body .post_summary p.author span.date {		
			  padding: 0 1px 0 0;	
			}
			
			.post_summary p.author span.date {}
			
			ul.meta-links { /* post summary */
				list-style-type: none;
				margin: 0;
				padding: 0;
				}
				
				ul.meta-links li {
					display: inline; 
					float: left;
					padding: 0 6px;
				}
				
				#main_body div.announcements ul.meta-links li.comments-link  {
					border: none;
					}
				
				ul.meta-links li.category-link {
				padding-left: 0;
				}
				
			ul.meta-links li.flag-link { border: none;}

			.post_summary .summary_main_row {
			  margin-top: 10px;
			  position: relative;
			  width: 668px;
			  font-size: 14px;
			}
			
				.post_summary .vote_box {
					float: left;
					position: relative;
					top: 20px;
			}

				.post_summary .post_img {
					float: left;
					margin-left: 16px;
					margin-right: 16px;
					width: 140px;
				}

			.post_summary .summary_text_zone {
				float: left;
				width: 325px;
				padding-right: 14px;
			}	
				
					.post_summary .summary_intro {
						height: 84px;
						overflow: hidden;
						font-size: 13px;
					}
				
				.post_summary .sharing_buttons {
					float: left;
					width: 95px;
					padding-top: 1em;
				}

				.post_summary .sharing_buttons > div {
					margin-bottom: 1em;
				}

		.pager {
			padding: 15px;
		}

		.pager a {
			text-decoration: none;
		}

	.post-list-ad {
		 margin: 20px auto;
	}

	.post-list-ad > div {
		margin: auto;
	}

	#footer {
		margin-top: 25px;
		margin-bottom: 25px;
		padding-top: 25px;
		text-align: center;
		clear: both;
		font-size: 12px;
	}
	
		#footer a {
			text-decoration: none;
		}
		
		#footer_categories ul {
			font-size: 13px;
			margin: 0;
			padding: 0 0 6px 0;
		}
		
		#footer_categories ul li {
			list-style: none;
			display: inline;
			padding-left: 6px;
		}
		
		#footer_categories ul li a.category-link {
			 padding: 4px 4px 4px 4px;
		}
	
		#footer_categories ul > li:first-child {background: none;}
		
		#footer_links ul {margin: 18px 0 6px 0; padding: 0;}
		#footer_links ul li {list-style: none; display: inline; padding-left: 3px; border-left: 1px solid;}
		#footer_links ul li a {padding: 4px 4px 4px 4px;}
		#footer_links ul > li:first-child {border-left: none;}

		#footer .powered-by img.logo {
			height: auto;
			left: 4px;
			max-width: 120px;
			position: relative;
			top: 6px;
		}


/* COMMMON PAGE ELEMENTS */

  .vote_box {
	width: 46px; /* 62 */
	height: 62px; /* 78 */
	padding: 4px;
  }

			.vote_box:hover {
			  box-shadow: 0 0 4px #5b5b5b;
			  -moz-box-shadow: 0 0 4px #5b5b5b;
			  -webkit-box-shadow: 0 0 4px #5b5b5b;
			}

	.vote_box .vote_bg_inner {
		width: 46px;
		height: 60px;
		position: relative;
	}
			
	.vote_box .num_votes {
	  position: absolute;
	  top: 9px;
	  left: 0px;
	  width: 45px;
	  text-align: center;
	}
	
	.vote_box .vote_link {
	  display: block;
	  font-size: 11px;
	  line-height: 11px;
	  position: absolute;
	  top: 46px;
	  left: 16px;
	  text-align: center;
	  text-decoration: none;
	}

/* VIEW-POST PAGE */

.view_post .post_header {
	margin: 28px 0 32px 0;
	padding: 22px 0 18px 0;
}

	.view_post .vote_box {
		float: left;
		margin-right: 20px;
		margin-top: 0px;
	}

	.view_post .title_box {
	  /*float: left; 
	  width: 585px;*/
	  margin-left: 75px;
	  width: auto;
	}

		.view_post .post_header h2 {
			padding: 0;
			margin-top: 0;
			margin-bottom: 16px;
			font-size: 26px;
			}

			
	.view_post .header_links {
			float: left;
			font-size: 14px;
			}
	
			  .view_post .header_links img.comments {
				  position: relative; 
				  top: 2px; 
				  left: 2px;
				  }

	.view_post .sharing_buttons {
			float: right;
	}
	
		.view_post .sharing_buttons .email_post {
			margin: 3px 14px;
		}
	
	.view_post .post_img {
		float: left;
		margin: 0 20px 20px 0;
	}

	.view_post div#body_ad {float: left; padding: 16px 24px 24px 0;}
	.view_post div#body_ad.short_page {clear: left; margin: 0 auto;}

	.view_post .tags {clear: left;}
	
	.view_post .post_body {margin-bottom: 30px; font-size: 14px;}
	
	.post_body ul, 
	.post_body ol,
	ul.admin_functions  {clear: both; margin-left: 25px; padding-bottom: 14px }
	.post_body li { }
	
	.post_body ul.meta-links {clear: left; margin: 12px 0 0 0; height: 14px; padding: 10px 0 12px 0;}
	.post_body ul.meta-links li { margin-left: 0 }
	
	.post_author_box {clear: left; position: relative;}
	.post_author_box .inner_box {min-height: 155px;}
	
	.post_author_box img.author-img {position: absolute; right: 23px; top: 23px; margin: 0 0 16px 20px; padding: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px;;}
	
	.post_author_box h3.author, .post_author_box p {margin-right: 135px;}	
	
	.post_author_box ul.top-posts {margin: 0 0 14px 16px; padding: 0; width: 420px;}
	.post_author_box ul.author-links {list-style: none; text-align: right; position: absolute; top: 155px; right: 23px;}
	
	.post_author_box ul.author-links {}
	
	.blue_box {
		margin-bottom: 30px;
	}
	
	.inner_box {padding: 20px;}
		
	.blue_box ul {
		margin-left: 16px;
	}
	
	.blue_box p.login-first {padding: 0; margin: 0;}
	
	#add_comment textarea, #edit_comment textarea, .comment textarea {
	  width: 650px;
	  height: 90px;
	  padding: 10px;
	}
	
	.comment textarea { /* inline edit of comment */
		width: 578px !important;
		margin-bottom: 16px;
	}
	
	#add_comment textarea:focus, #edit_comment textarea:focus, .comment textarea:focus {
		outline: none;
	}
	
	#add_comment input[type=submit], #edit_comment input[type=submit] {
		margin-top: 16px;
		margin-bottom: 30px;
	}
	
	.view_post ol.comments {
		list-style: none; 
		margin-bottom: 14px;
	}
	
	ol.comments ol.comments {
		margin-top: 24px;
		margin-left: 72px;
		border-bottom: 0;
		padding-bottom: 0;
		margin-bottom: 0;
	}
	
	.view_post .comment {
		padding: 24px 0 24px 0;
		position: relative;
		min-width: 250px;
	}
	
	.comment .reply_form {
		margin-left: 72px;
	}
	
	.comment:last-child {
		padding-bottom: 0;
	}
	
	.comment div.date, .comment cite.author_name, .comment div.comment_body, .comment .comment_functions {padding-left: 72px;}

		.view_post .comment img { 
			padding: 6px;
			-moz-border-radius: 8px; 
			-webkit-border-radius: 8px; 
			border-radius: 8px;
	}
		
			.comment div.post-img { 
				float: left;
				-moz-border-radius: 8px; 
				-webkit-border-radius: 8px; 
				border-radius: 8px;
			}
		
		
		.view_post .comment cite.author_name {
			margin-bottom: 16px;
			display: block;
		}
		
		.view_post .comment .comment_body {
			white-space: pre-wrap;
			padding-right: 24px;
		}
		
		.view_post .comment .comment_functions {
			margin-top: 16px;
			font-size: 80%;
		}
		
/*  AUTHOR PAGE */

	img.author-img {float: right; margin: 0 0 16px 20px; padding: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px;}
	
	ul.author-stats {list-style-type: none; width: 400px;}
	ul.author-stats li {display: inline; padding-left: 8px; margin-right: 2px;}
	ul.author-stats > li:first-child {border-left: none; padding-left: 0;}
	
/* Forms */

form div.section {
	padding: 24px 0 18px 0; 
}

form div.group {
	margin: 18px 0 4px 0px;
}

form ul {
	list-style: none;
	margin-bottom: 14px;
}

form fieldset, 
form legend,
form div.label input[type="text"],
form div.label input[type="password"],
form div.label textarea,
div.label img.author-photo {	
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

form fieldset  {
	padding: 10px 20px 10px 20px;
	margin-bottom: 14px;
}

form fieldset legend {
	padding: 6px 12px; 
	margin-left: 20px; 
}

form fieldset legend input[type="radio"] {
	padding: 0; 
	margin: 0 4px 0 0;
}
	
form div.label {
	padding: 12px 0;
	clear: left;
}

form div.label p {
	margin: 0;
	padding: 0;
	float: left;
	width: 110px;
	margin-right: 10px;
	position: relative;
	top: 3px;
}

form div.label p.note {
	margin: 0;
	padding: 8px 0 0 0;
	float: none;
	width: auto;
	clear: left;
	margin-left: 120px;
	position: static;
}

form div.label p.upload-note {
	float: left;
	width: auto;
	position: relative;
	top: 8px;
}

form div.label p.full {
	float: none;
	width: auto;
}

form div.label p.error {
	float: none;
	width: auto;
	margin-left: 120px;
	margin-top: 4px
}

form div.label span.optional {
	font-size: 10px;
	display: inline; 
	border:none
}

form div.label input[type="text"],
form div.label input[type="password"],
form div.label textarea {
  width: 250px;
  padding: 5px;
}

form div.label input[type="text"]#titleField {
	width: 520px;
}

form div.label input[type="text"]:focus,
form div.label input[type="password"]:focus,
form div.label textarea:focus,
form div.label select:focus {	
	outline: none;
}

form div.label textarea {
	width: 510px;
	padding: 10px;
}

form div.label div.file_container {
	float: left;
	margin: 0;
	height: 35px;
}

form div.label div.file_container input[type="text"] {
	width: 140px;
}

form#postForm div.label input[type="checkbox"],
form#postForm div.label input[type="submit"] {
	margin-left: 120px;
}

div.label img.author-photo {
	padding: 3px; 
	margin: 12px 0 0 120px;
}

/* FAQs */

ol.faq {
	margin: 0 0 0 20px;
}

ol.faq li {
	padding: 6px 0;
}

/* Upgrade Account */

.terms_of_use {
	height: 300px;
	overflow: auto;
	margin-bottom: 1em;
	padding: 10px;
}

.terms_of_use h4 {
	margin-bottom: 1em;
}

.terms_of_use ul li {
	list-style-type: disc;
	margin-left: 1em;
}

.terms_of_use ol {
	margin-bottom: 1em;
}

.terms_of_use ol li {
	list-style-type: lower-roman;
	margin-left: 2em;
}

/* EXTERNAL LOGIN BUTTONS 
<div> version uses an <a> link, while the <button> version submits a form 
*/

.external-logins button {
	margin: 10px 20px;
	padding: 0 4px 0 25px;
	height: 24px;
	cursor: pointer;
}

.external-logins div {
	margin: 20px;
	padding: 4px 4px 0 25px;
	height: 18px;
}

	.facebook-login-button {
		background: #5F78AB url("http://static.ak.fbcdn.net/rsrc.php/v1/yL/r/FGFbc80dUKj.png") no-repeat left -188px;
		border-bottom: 1px solid #1A356E;
		border-top: 1px solid #879AC0;
	}

		.facebook-login-button, .facebook-login-button a {
			color: #ffffff;
		}

	.google-login-button {
		background: url(/images/google-icon.png) no-repeat;
		border: 1px solid #bbbbbb;
		color: #333333;
	}

/* Signup and Login pages */

table.signup {
	padding-top: 0;
}

h3.signup {
	margin-top: 20px;
}

.signup_cols, .login_cols {
	margin-bottom: 40px;
	position: relative;
}

.col_1 .basic_form {
	padding-top: 0;
}

.col_1 .basic_form tr:last-child td {
	padding-bottom: 0;
}

.signup_cols .col_1 {
	width: 310px;
}

.login_cols .col_1 {
	width: 400px;
}

.col_2 {
	position: absolute;
	top: 5px;
}

.signup_cols .col_2 {
	left: 320px;
}

.login_cols .col_2 {
	left: 410px;
}