/*  
Theme Name: Basil's Professional Theme
Theme URI: http://www.basilv.com/psd
Description: Basil Vandegriend's theme for his Professional Software Development site.
Version: 1
Author: Basil Vandegriend
Author URI: http://www.basilv.com/psd
*/

/* Main Page Elements --------------------------*/
body {
	font-family: Arial, Sans-Serif; 
	/* 'Lucida Grande', Verdana caused layout problems under Firefox.
		'Trebuchet MS' had weird looking ampersand (&). */
	
	font-size: small;
	background-color: #5789AF; /* medium color lighter. */
					
	color: black;
	margin: 0;
	padding: 0;
	text-align: left;
	/*font-size: 62.5%;*/ /* Resets 1em to 10px */
	
	margin: auto;
	width: 999px; 
}
	
#page {
	background-color: #f7fbff;
	margin: 0;
	padding: 0;
}

/* Common Page Elements --------------------------*/

/* Provide custom underline effect for links in h2 heading */
h2 a:link {
	background-color: #f7fbff; /* Same as page background-color */
	color: blue; 
	border-bottom: 1px solid blue; 
	text-decoration: none;
}

h2 a:visited {
	background-color: #f7fbff; /* Same as page background-color */
	color: #551a8b;
	border-bottom: 1px solid #551a8b;
	text-decoration: none;
}

h1 {
	font-size: x-large;
	font-weight: bold;
}

h2 {
	font-size: large;
	font-weight: bold;
	margin: 0.7em 0 0.5em 0;
	padding: 0;
}

h3 {
	font-size: medium;
	font-weight: bold;
	margin: 0.6em 0 0.3em 0;
	padding: 0;
}

h4 {
	font-size: small;
	font-weight: bold;
	margin-top: 0.3em;
	margin-bottom: 0.3em;
	padding: 0;
}

div, form {
	margin: 0;
	padding: 0;
}

acronym, abbr {
	cursor: help;
}

a img {
	border: none;
}

p {
	margin: 0.3em 0 0.7em 0; 
 	padding: 0;
}

ul, ol {
	margin: 0.3em 0 0.3em 2.8em;
	padding: 0;
}

table, tr, td {
	padding: 0;
	margin: 0;
	border: none;
}

/* must also specify cellspacing="0" for the table */
table.fancy {
	border-right: 1px solid black;
	border-bottom: 1px solid black;
}

.fancy td, .fancy th {
	border-left: 1px solid black;
	border-top: 1px solid black;
	padding-left: 0.3em;
	padding-right: 0.3em;
	padding-top: 0.1em;
	padding-bottom: 0.1em;
}

.fancy th {
	background-color: #d8edff; /* same as post metadata */
	color: black;
}

pre.box { 
	border: solid 1px black; 
	background-color: white;
	color: black; 
	padding: 0.5em; 
	margin-left: 2em; 
	margin-right: 2em;
}

.download {
	color: white;
	background-color: #4f7a9e; /* same as navigation bar */
	padding: 0.25em;
	border: solid 1px black;
	
}

/* Header --------------------------*/
#header, #header h1, #header h1 a, #header h1 a:link, #header h1 a:visited, #header h1 a:hover {
	color: white; 
	background-color: #73a0c5;
	text-decoration: none;
}

#header-image {
	height: 45px; 
	vertical-align: middle;
	margin: 0.2em 0 0.2em 0.2em;
}

#header h1 {
	margin: 0;
	font-variant: small-caps; 
}

#header h1 a {
	margin: 0.5em;
	padding: 0;
}

/* Navigation Bar --------------------------*/
#navigation-bar 
{
    height:2em;
    line-height: 2em;
}

#navigation-bar ul {
	margin: 0;
	padding: 0;
}

#navigation-bar li {
  float:left;
  list-style-type:none;
  /* border-right:1px solid black; */
  display: block;  /* in order to use white-space:nowrap */
  white-space:nowrap;
}

#navigation-bar, #navigation-bar a, #navigation-bar a:link, #navigation-bar a:visited, #navigation-bar a:hover { 
	background-color: #4f7a9e; 
	color: white;
}

#navigation-bar a, #navigation-bar a:hover, #navigation-bar a:visited { 
  text-decoration: none;
  border-bottom: none;
  padding: 0 1em;
  font-size: 1.15em;
  font-variant: small-caps;  
}

#navigation-bar li a:hover {
	text-decoration: underline;
}

#navigation-bar form {
  float:right;
  height:100%;
  width:20em;
  margin: 0;
}

#navigation-bar form fieldset 
{
	margin: 0;
	padding: 0 0.5em 0 0;
	border: none;
	text-align: right;
}

/* IE-specific hack: see http://www.positioniseverything.net/explorer/escape-floats.html */
* html #navigation-bar form fieldset {margin-top:1px;}

/* Content --------------------------*/
#content 
{
	float: left;
	width: 66%;
	/* setting margin/padding will mess up the float with the sidebar. */
	margin: 0em;
	padding: 0em;
}

#content-interior
{
	padding-left: 2em;

	margin-top: 1em;
	margin-left: 1em;
	margin-bottom: 1em;
	margin-right: 0em;
}

#content-ad
{
	float: right;
	
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: 1.5em;
	margin-right: 0em;
}

/* Sidebar --------------------------*/
#sidebar {
	float: right;
	
	/* width = 100% - width of content div - width for spacing (at least 1%).
	   use this width for spacing rather than padding on content so that IE doesn't force sidebar
	   below content when window gets narrower.
	*/
	width: 32%;
	
	background-color: #e8f4ff;
	color: black;
	/* setting margin/padding will mess up the float with the content. */
	margin: 0em;
	padding: 0em;
}

#sidebar-mainlist {
	margin: 0.25em 0.75em 1.25em 1.25em;
	padding: 0;
}

#sidebar h2 {
	font-weight: normal;
	margin: 0.5em 0 0.1em 0;
	display: block;  /* in order to use white-space:nowrap */
	white-space: nowrap;
}

#sidebar h3 {
	font-size: small;
	font-weight: normal;
	margin: 0.5em 0 0 0.5em;
	display: block; /* in order to use white-space:nowrap */
	white-space: nowrap;
}

#sidebar ul li {
	list-style-type:none;
}

#sidebar ul li ul {
	margin-left:2em;	
	padding-left: 0;
}

#sidebar ul li ul li {
	list-style-type:square;
	margin-bottom: 0.2em;
}


#email-subscribe-button {
	background-color:#F59B2C;
	font-size: 1.3em;
	font-family: Arial, Sans-Serif; /* For firefox */
	font-weight: bold; 
	border-radius:5px; 
}

#email-subscribe-button:hover {
	background-color: #F6841E;
} 

/* Post --------------------------*/
.post {
	margin: 1.5em 0 0.5em;
	text-align: justify;
    line-height: 1.3em;	
}

.post-content {
	padding: 0.25em;
}

.post-title h2 {
	padding-bottom: 0.25em;
	font-weight: bold;
}

.post-title h3 {
	margin-top: 0.8em;
}

.post-metadata, .post-actions {
	background-color: #d8edff;
	color: black;
}

.post-metadata {
	padding: 0.3em;
}

.post-actions {
	margin: 0.3em 0;
	padding: 0.3em;
    height:1.3em;
    line-height: 1.3em;
}

.post-actions ul {
	margin: 0;
	padding: 0;
}
	
.post-actions li {
  float:left;
  list-style-type:none;
  padding: 0 0.5em;
  border-left:1px solid black; /* Separator for IE */
}

/* Separator for Firefox (IE ignores these) */
.post-actions ul > li {
	border-left: none; /* Disable IE separator */
	margin: 0;
	padding: 0;
}

.post-actions ul > li > * {
	margin: 0 0.6em;
}
	
/* Works only in Firefox (CSS 2.1) */
.post-actions li:before {
	content: "|";
}

/* Works only in Firefox (CSS 2.1) */
.post-actions li:first-child:before {
	content: "";		
}

.post-bottom {
	margin: 0.3em 0;
	border-bottom: solid 1px #4f7a9e;
}

/* Post Navigation -----------------*/
.post-navigation-basic {
/*	float: right; */
	text-align: right;
	margin: 0.5em 0 0.5em 0.5em;
}

.post-navigation-with-titles {
	text-align: right;
	margin: 0.5em 0 0.5em 0.5em;
}

/* Post Comments -------------------*/
h3#comments, h3#addcomment {
	font-weight: bold;
}

.commentlist {
	margin: 0;
	padding: 0;
}

.commentlist li {
	margin: 0 0 1em 1.5em;
	padding: 0;
	border-bottom: solid 1px #4f7a9e;
}

.commentlist li p {
	margin: 0.5em 0 0 0;
}

#commentlist li .avatar {
	float: right;
	margin-right: 25px;
	border: 1px dotted #ccc;
	padding: 2px;
}

.comment-meta, .comment-author {
	background-color: #d8edff;
	color: black;
}

li.bypostauthor {
	background-color: #e8f4ff;
}

li.bypostauthor .comment-author {
	font-weight: bold;
}


.comment-meta {
	font-size: x-small;
	padding: 0.3em;
}

.thread-alt {
	background-color: #f8f8f8;
}
.thread-even {
	background-color: white;
}
.depth-1 {
border: 1px solid #ddd;
}

.even, .alt {

	border-left: 1px solid #ddd;
}

.sticky {
	background: #f7f7f7;
	padding: 0 10px 10px;
	}
.sticky h2 {
	padding-top: 10px;
	}
#commentform {
	margin: 5px 10px 0 0;
	}
#commentform textarea {
	width: 100%;
	padding: 2px;
	}
#respond:after {
		content: "."; 
	    display: block; 
	    height: 0; 
	    clear: both; 
	    visibility: hidden;
	}
#commentform #submit {
	margin: 0 0 5px auto;
	float: left;
	}
.children { padding: 0; }


/* Ads --------------------------*/
.ad {
	margin: 1em 0.5em 1em 0.5em;
	padding: 0;
}

/* Book table -------------------*/
.content-table td {
	padding: 0.5em 0.5em 0.5em 0em;	
}


.vertical-separator {
	border-top: 1px solid gray; 
	padding-top: 0.5em;
}


/* Footer --------------------------*/
#footer {
	clear: both;
	margin-bottom: -1px; /* Fix display issue in Firefox. */
	padding: 0.3em 0.3em;
	background-color: #73a0c5;
	color: black;

	/* same color as sidebar to fix display issue in Firefox.  border needed to fix layout problem in firefox. */
	border-top: solid 1px #e8f4ff;
}

#footer p {
	font-size: x-small;
	text-align: center;
	margin: 0;
	padding: 0;
}

/* Print rules --------------------------*/
@media print {
	body {
		font-family:  'Times New Roman', Times, serif; 
		font-size: medium;
		color: black;
		background-color: white;
		}

	#header {
		color: black;
		background-color: white;
		border-bottom: solid 1px black;
	}

	#header h1, #header h1 a, #header h1 a:hover, #header h1 a:visited {
		color: black; 
		background-color: white;
		text-decoration: none;
	}

	.screen-only, .ad, #navigation-bar, #sidebar, .post-actions, .post-navigation-basic, .post-navigation-with-titles, 
	.post-bottom, #addcomment-section, .comment-actions, #footer-valid  {
		display: none;
	}

	#content {
		float: none;
		width: 100%;
	}

	.commentlist li {
		border-bottom: none;
	}

	#footer {
		color: black;
		background-color: white;
		border-top: solid 1px black;
		margin-top: 0.5em; 
	}

} /* End of @media print section */
