/* HTML defaults */
body, h1 {
    padding:0;
    margin:0;
    font:75% Verdana, Arial, Helvetica, sans-serif;
}

form {
    margin:0;
}

blockquote {
    background:#efefef;
    padding:10px;
    clear:both;
}

blockquote + blockquote {
    margin: 0;
}

pre {
    clear: both;
    overflow:auto;
    background-color:#efefef;
    
    font-size:12px;
    padding:2px;

    padding-bottom:2px !important;
    padding-bottom:1.5em; /* for IE */

    width:auto !important;
    width:586px; /* for IE */
}

code {
    color: #003366;
    font-family: 'Andale Mono','Courier New', Courier, monospace;
}

a img {
    border:none;
}

#blog table, #article table {
    border-collapse:collapse;
    empty-cells:show;
    margin:1em 0 0 1px; /* 1px left margin fixes disappearing left border in FF */
}

td, th {
    border: 1px solid black;
    padding: 2px;
}

th {
    background-color:#efefef;
    text-align:left;
}

thead th {
    text-align:center;
}

caption {
    caption-side: top; 
    font-style: italic;
    text-align:left;
}

/* page title, article/blog title */
h1, h2 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 17px;
    margin:0;
}

h2 a {
    color:black;
    text-decoration:none;
}

h2 a:hover {
    text-decoration:underline;
}


/* section header 1 */
h3 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 14px;
    margin-bottom:0;
}

/* section header 2, 3, 4 */
h4, h5, h6 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 12px;
    margin-bottom:0;
}

h3 + p, h4 + p, h5 + p, h6 + p {
    margin-top:0;
}





/* page structure */

#header {
    min-width:970px;
    position:relative;
}

#page-content, #content {
    background: url(http://www.oreillynet.com/blogs/images/background.gif) repeat-y;
    width:970px;
}

#footer {
    border-top:2px solid #ccc;
    background-color:#efefef;
    font: 10px verdana;
    padding-bottom:10px;
    clear:both;
    z-index:1;
} 


/* page header style */
ol#menubar {
    background:#000;
    float:left;
    width:100%;
    margin:1px;
    padding:0;
}

ol#menubar li {
    list-style:none;
    display:inline;
    float:left;
    margin:0;
    font: bold 11px verdana,helvetica,sans-serif;
    border-right:1px solid #fff;
}

ol#menubar li a {
    display:block;
    padding:5px 8px;
    color:#fff;
    text-decoration:none;
}

ol#menubar li:hover {
    color:#fff;
}



#tabs {
    height:16px;
    overflow:hidden;
}

#tabs ol {
    padding:0;
    margin:0;
}

#tabs ol li {
    list-style-type:none;
    display:inline;
    margin:0;
    float:left;
}

#tabs img {
    border:0px;
}

#account-links {
    float:right;
    font:10px verdana;
    margin-right:12px;
    margin-top:2px;
}

#leaderboard {
    background:#efefef;
    height:90px;
    text-align:center;
    padding:10px 0;
    min-width:790px;
}

#leaderboard * {
border: 0px;
}

#textbar, #textbar a {
    height:18px;
    font: 10px Verdana, Arial, Helvetica, sans-serif;
    color: white;
    background-color:#69c;
    text-align:center;
    padding-top:6px;
}



/* image float style */
.left {
   float:left;
   margin:0 1em 1em 0;
}

.right {
   float:right;
   margin:0 0 1em 1em;
}

.center {
   display:block;
   clear:both;
   margin:0 auto 1em;
}

.image {
    margin-top:1em;
}

.image p {
   padding:0;
   margin:0;
   font-style:italic;
}





/* article specific style */



/* avoid border on tables inserted into articles */

#article table.adtag {
    margin:0;
}

#article table#page-break td {
    border:none;
}

#article table.adtag td {
    border:none;
}

#article table#article-tools td {
    border:none;
}

#blog h2.archive {
    border-bottom:2px solid #ccc;
    margin-bottom:1em;
    
}

#sidebar h2 {
    font-size:110%;
    margin:1em 0 0;
}





#blog, #article {
    width:590px;
    float:left;
    margin-left:10px;
    margin-top:1em;
    display:inline; /* IE fix to prevent margin-left:10px from being doubled: http://positioniseverything.net/explorer/doubled-margin.html */

    padding-right:5px;
    margin-right:5px;
    padding-bottom:10px;

}


#sidebar {
    width:170px;
    float:left;
    padding-left:10px;
}

.sidebar-item {
    padding:0;
    margin-bottom:20px;
}

.sidebar-item h3 {
    border-top: 1px solid #999;
    border-left: 1px solid #999;
    border-right: 1px solid #999;
    font-size:11px !important;
    text-align:center;
    background-color:#eee;
    background:url(/images/box-item-header.gif) no-repeat 0 0;
    margin:0 !important;
    padding:5px;
    position: relative;
}

.sidebar-item-content {
    border: 1px solid #999;
    margin:0;
    padding:10px;
    font-size:95%;
    position:relative;
}


#skyscraper {
    width:170px;
    float:left;
    margin-left:10px;
    padding-top:1em;
}


.ad-header{
   text-align: center;
   font-size: .9em
}

#blog .post {
    padding-bottom:15px;
    margin-bottom:15px;
    border-bottom:2px solid #ccc;
    overflow:hidden;
}

.post-content {
    clear:left;
}

.post-content-footer {
    clear:both;
}

.post-byline {
    font-size:90%;
    font-style:italic;
}

.post-footer {
    font-size:90%;
    margin-top:10px;
}

#blog .post p {
    margin-bottom:0px;
}

#blog .post blockquote > p:first-child
{
    margin-top:0px;
}


#blog byline {
    font-size:100%;
}


#sidebar ul {
    margin:0px;
    padding-left:1.5em;
}

#sidebar ul li {
    margin-bottom:2px;
}   



#comments > .comment:first-child {
    border-top:none;
}

.comment {
    border-top:2px solid #ccc;
    padding:0px 10px 10px 10px;
    overflow:hidden;
}

.comment-preview {
    border:2px solid #ccc;
    padding:5px;
    overflow:auto;
    height:100px;

}

#comment-form {
    background-color:#efefef;
    border:1px solid #ccc;
    padding:10px;
    margin-right:5px;
}





/* article comment box style */

.rbox {
	color:#000;
	background-color:#ccc;
	line-height:14px;
	padding-top:0;
	margin-top:2em;
}
.rbcontent {
	margin: 0 6px;
	background-color: #ccc;
	color: #000;
}
.rboxtop { background: url(http://www.oreillynet.com/images/gray_tr.gif) no-repeat top right; }
.rboxtop div { background: url(http://www.oreillynet.com/images/gray_tl.gif) no-repeat top left; }
.rboxbot { background: url(http://www.oreillynet.com/images/gray_br.gif) no-repeat top right; }
.rboxbot div { background: url(http://www.oreillynet.com/images/gray_bl.gif) no-repeat top left; }
.rboxtop, .rboxtop div, .rboxbot, .rboxbot div {
	height: 6px;
	font-size: 1px;
	margin: 0;
	padding: 0;
}
.tb_left {
	width: 30%;
	height: 20px;
	float: left;
	margin-top:0.5em;
}
.tb_right {
	text-align: right;
	width: 60%;
	height: 20px;
	float: right;
	margin-top:0.5em;
}
/* trb versions are for trackbacks */
.trb_left {
    width: 60%;
    height: 20px;
    float: left;
    margin-top:0.5em;
}
.trb_right {
    text-align: right;
    width: 30%; 
    height: 20px;
    float: right;
    margin-top:0.5em;
}
div.feedback { margin-top: 1em; }
.feedback ul {
	margin: 0 0 0 1em;
	padding: 0 0 0 1em;
}
.feedback li {
	list-style-image: url(http://www.oreillynet.com/images/bullet-post.gif);
	margin-left: 0px;
	padding: 0 0 1em 0;
}
.feedback ul ul li {
	list-style-image: url(http://www.oreillynet.com/images/bullet-reply.gif);
	margin-left: 0px;
	padding: 0 0 1em 0;
}
li.trackback {list-style-image: url(http://www.oreillynet.com/images/icons/trackback_18.gif);
    padding: 0 0 1em 2em;
}

.headline {
    font-size: 12px;
    font-weight:bold;
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
 
@media print {
#blog .post {
    overflow:visible;
}
}



