/* 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; 
    }

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

    #featurebar table {
      margin:0;
    }

    #featurebar  td, th {
      border:none;
      padding:0;
      margin:0;
    }

    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;
    }


    p {
      margin: 10px 0;
    }

    pre, blockquote , h2, h3 {
      margin: 20px 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;
    }

    /* AD FORMATTING */

    #textbar, #textbar a {
      height:18px;
      font: 10px Verdana, Arial, Helvetica, sans-serif;
      color: white;
      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;
    }









    #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,   .post {
      padding-bottom:15px;
      margin-bottom:15px;
      border-bottom:2px solid #ccc;
      overflow:hidden;
      width: 700px;
      margin-left:auto;
      margin-right:auto;
    }

    .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;
      }
    }
    .listen {
      display: block;
      height: 1.8em;
      float: right;
      list-style: none;

      margin: .5em 0 0 10px;
      padding: 0 0 0 10px;

      font-size: .75em;
      line-height: 1.5em;
      text-align: right;
    }



    .listen li {
      margin: 0;
      padding: 5px 0;
      display: inline;
      text-align: right;
    }

    .listen a {
      display: block;
      float: left;
      padding: 0 14px 0 0;
      height: 1.8em;
    }

    /*
    .listen a:hover {
    color: #990000;
    text-decoration: none;
    }
     */

.listen .button {
  font-size:12px;    
  margin-left: 10px;
    }
    .listen .option {
      font-size:12px;    
      display: none;
    }


