html {
  margin: 0;
  padding: 0;
}

.clearfix:after {
  clear: both;
  content: " ";
  display: block;
  height: 0;
  line-height: 0;
  font-size: 0;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
}

html[xmlns] .clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

span.replaced { visibility: hidden; }

a, a:link {
  color: #3366CC;
  text-decoration: none;
}

a:visited {
}

a.clearfix {
cursor: pointer;
}

a.clearfix * {
cursor: pointer;
}

a img {
  border: 0 none;
}

a.image,
.post-body p a.image {
  border-bottom: none;
}

#main .frame a,
#main .frame a:visited {
  border-bottom: 0;
}

.smallcaps {
font-size: 85%;
letter-spacing: 1px;
text-transform: uppercase;
}

body {
  background: #F0F0F0 url(../images/paper.jpg) repeat scroll 0 0;
  color: #222222;
  font-family: Georgia,"Palatino","Times New Roman",Times,serif;
  margin: 0;
  padding: 0;
}

  body * {
    margin: 0;
    padding: 0;
  }

code {
font-family: "Panic Sans","Bitstream Vera Sans Mono",Monaco,Lucida Console,Andale Mono,monospace;
font-size: 14px;
}

p code, li code {
background-color: #DDDDDD;
border-bottom: 1px solid #BBBBBB;
padding: 0 2px;
}

pre code {
font-size: 13px;
}

textarea {
font-family: "Panic Sans","Bitstream Vera Sans Mono",Monaco,Lucida Console,Andale Mono,monospace;
font-size: 12px;
}

ul {
list-style-type: none;
}

#header {
  width: 960px;
  position: relative;
}

  .i-wrote-this-book {
    position: absolute;
    top: 105px;
    right: 20px;
    width: 195px;
    height: 94px;
  }

#header .text-block {
}

#header h1 {
  margin-left: 180px;
}

#header h1 a {
background: #222222 url(../images/banner-background.gif) no-repeat scroll 0 0;
display: block;
padding: 100px 10px 10px;
width: 455px;
height: 90px;
}

#page {
  margin-top: 40px;
  width: 960px;
  position: relative;
}


#main {
  float: left;
  margin-right: 5px;
  width: 715px;
  margin-bottom: 40px;
}

  /* Page title on sub-pages. */
  #main h1 {
    font-family: "American Typewriter", "Courier New";
    width: 455px;
    margin-left: 180px;
    padding-left: 10px;
    margin-bottom: 20px;
  }
  
  #main .page-subhead {
    width: 455px;
    margin-left: 180px;
    padding-left: 3px;
    margin-top: -25px;
    margin-bottom: 30px;
    font-size: 120%;
    border-top: 2px solid #ccc;
    border-bottom: 2px solid #ccc;
    padding-top: 10px;
    padding-bottom: 10px;
    font-style: italic;
  }
  

.post-body p a {
  border-bottom: 1px solid #3366CC;
}

  .post-body h4 {
    margin: 1.5em 0 0.6em;
    font-size: 1.1em;
    font-family: Calibri, 'Trebuchet MS', Helvetica, sans-serif;
    text-transform: uppercase;
  }
  
    .post-body h4.minor-title {
      margin: 0 0 7px;
      text-transform: none;
    }
    
      .post-body h4.minor-title a {
        color: #222;
      }
      
        .post-body h4.minor-title a:visited {
          border: 0;
        }
        
  .post-body h5 {
    margin: 1.0em 0 0.6em;
    font-size: 1.0em;
  }
  
  .post-body ul, .post-body ol {
  }
  
  .post-body ol.indented {
    margin-left: 2em;
  }
  
  .post-body li {
    list-style-type: disc;
    margin: 0 0 0.8em;
  }
  
  .post-body ol li {
    list-style-type: decimal;
  }

.post-body a:visited {
  border-bottom: 1px solid #DDDDDD;
}

.post-body img.border {
  border: 2px solid #666;
}

.post-body p a:hover {
background-color: #3366CC;
color: #FFFFFF;
}

.post-body .description {
  font-family: Calibri, 'Trebuchet MS', Helvetica, sans-serif;
  font-size: 16px;
  line-height: 130%;
}

.no-calibri .post-body .description {
  font-size: 13px;
}

.post-body .frame {
  margin: 0.8em 0 0;
}

div.day {
  margin-right: 5px;
  width: 655px;
}

.date-container {
  width: 55px; 
  float: left;
  margin-right: 5px;
}

.date-container h2 {
  border: 2px solid #222;
  border-left: none;
  padding: 3px;
  width: 47px;
  color: #222222;
  font-family: Calibri,'Trebuchet MS',Helvetica,sans-serif;
}

.date-container h2 span.month {
display: block;
font-size: 17px;
font-weight: normal;
letter-spacing: 2px;
line-height: 100%;
text-align: center;
text-transform: uppercase;
}

.no-calibri .date-container h2 span.month {
font-size: 15px;
}

.date-container h2 span.day {
display: block;
font-size: 30px;
line-height: 100%;
margin-top: 2px;
text-align: center;
}

.no-calibri .date-container h2 span.day {
font-size: 26px;
}

.empty-date-container {
float: left;
padding: 3px;
width: 47px;
}

.post {
float: left;
line-height: 125%;
padding-right: 0;
text-align: left;
width: 595px;
}

.post-meta {
float: left;
font-family: Calibri,'Trebuchet MS',Helvetica,sans-serif;
font-size: 13px;
text-align: right;
width: 115px;
margin-right: 5px;
}

.no-calibri .post-meta {
font-size: 12px;
}

.post-meta .post-type {
background-color: #222222;
display: block;
margin: 0 0 0 60px;
text-align: center;
width: 55px;
}

.post-meta .post-meta-comments {
background: transparent url(../images/icon-comments.gif) no-repeat scroll 25% 65%;
border: 2px solid #222222;
margin: 0 0 0 60px;
font-size: 18px;
font-weight: bold;
height: 20px;
line-height: 20px;
margin-right: 0;
width: 51px;
}

#main .post-meta .post-meta-comments a {
border-bottom: 0 none;
color: #222222;
display: block;
padding-right: 10px;
}

.post-meta .post-meta-categories {
clear: right;
line-height: 140%;
margin: 55px 0 0;
}

.post-meta-categories h6 {
font-size: 100%;
font-weight: normal;
letter-spacing: 2px;
text-transform: uppercase;
}

.post-body {
border-bottom: 2px solid #BBBBBB;
float: left;
margin-left: 10px;
margin-right: 10px;
padding-bottom: 40px;
margin-bottom: 40px;
width: 455px;
}

.post-body .minor-title {
font-size: 22px;
}

pre {
  overflow: auto;
  overflow-y: hidden;
}

img.photo {
  border: 2px solid #666666;
}

img.review-photo {
  border: 1px solid #444444;
}

.no-display {
display: none;
}

.abbr {
margin: 0 0 0.5em;
}

.abbr abbr {
border-bottom: 0 none;
font-size: 28px;
text-decoration: none;
}

.post h3 {
  padding-bottom: 0.3em;
  border-bottom: 4px solid #333;
  margin-bottom: 0.6em;
}

#main .post h3 a {
  border-bottom: 0 none;
  color: #222222;
  font-family: "American Typewriter","Courier New";
  font-size: 30px;
  font-style: italic;
  line-height: 32px;
}

#main .post h3 a:hover {
background: transparent none repeat scroll 0 0;
border-bottom: 0 none;
color: #222222;
cursor: pointer;
}

#meta {
background-color: #222222;
color: #F0F0F0;
float: left;
font-family: Calibri,'Trebuchet MS',Helvetica,sans-serif;
margin-left: 0;
margin-right: 0;
padding: 5px 10px;
width: 215px;
}

#meta a {
color: #99BBFF;
}

#meta .meta-section {
font-size: 13px;
margin: 5px 0 20px;
}

.no-calibri #meta .meta-section {
font-size: 12px;
}

#meta h3 {
background: transparent url(../images/horizontal-rule.png) repeat-x scroll 0 5px;
font-size: 15px;
letter-spacing: 4px;
margin-bottom: 5px;
text-align: center;
text-transform: uppercase;
}

#meta h3 span {
background-color: #222222;
padding: 0 15px;
}

#meta .cat-item {
margin-left: -10px;
margin-right: -10px;
}

#meta .cat-item a {
border: 1px solid #222222;
display: block;
line-height: 100%;
padding: 4px 10px;
text-decoration: none;
}

#meta .cat-item a:hover {
background-color: #99BBFF;
color: #222222;
cursor: pointer;
}

#meta .cat-item a:focus {
  border: 1px solid #222222;
  outline-color: -moz-use-text-color;
  outline-style: none;
  outline-width: 0;
}

#meta .cat-item span.cat-name {
display: block;
float: left;
text-decoration: underline;
}

#meta .cat-item span.cat-num {
color: #F0F0F0;
display: block;
float: right;
text-decoration: none;
}

#meta .cat-item a:hover span.cat-num {
color: #222222;
}

#meta form {
margin: 10px 0 0;
}

.article {
  line-height: 140%;
}

.article p {
  margin: 0 0 0.8em;
}

.article pre, .code pre {
  background-color: #222;
  color: #F0F0F0;
  width: 443px;
  line-height: 120%;
  margin: 0 -10px 1.2em -10px;
  padding: 10px 21px 10px 11px;
}

.article blockquote {
border-left: 4px solid #222222;
padding-left: 15px;
}

#main blockquote .blockquote-citation {
font-size: 12px;
margin-top: -0.3em;
text-align: right;
}

/* POST TYPE: TIP */

.tip {
  font-size: 95%;
  font-style: italic;
}

  
/* POST TYPE: QUOTATION */

.quotation {
}

  .quotation blockquote {
    color: #555;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2em;
    letter-spacing: -1px;
    line-height: 120%;
    margin-bottom: 5px;
    text-align: left;
  }

.quotation blockquote .smallcaps {
font-size: 75%;
}

.quotation p.citation cite {
display: block;
font-size: 1.1em;
text-align: right;
}

/* POST TYPE: REVIEW */

.review {
  font-size: 1.1em;
  line-height: 130%;
}

  #main .review a.url {
    border-bottom: 0 none;
  }

  .review abbr b {
    background-color: #222222;
    color: #FFFFFF;
    display: block;
    font-size: 25px;
    letter-spacing: -1px;
    line-height: 150%;
    text-align: center;
    width: 55px;
  }

  .review .review-photo-container {
    margin-top: 10px;
  }
  
  .review p {
    margin: 0 0 0.7em;
  }

/* POST TYPE: VIDEO */

.video {
}

  .video .description {
    font-family: Calibri, 'Trebuchet MS', Helvetica, sans-serif;
  }

  .video .video-frame {
    background-color: #222222;
    margin: 10px 0;
    padding: 15px;
  }

/* POST TYPE: CODE */

.code {
}

  .code .description {
  }

  .code pre {
    margin-top: 0.8em;
  }

/* POST TYPE: THOUGHT */

.thought {
  font-family: Calibri,'Trebuchet MS',Helvetica,sans-serif;
  font-size: 17px;
}

  .thought p {
    margin-bottom: 0.8em;
  }

/* POST TYPE: CONVERSATION */

.conversation {
  
}

  .conversation .aside {
    font-family: Calibri, 'Trebuchet MS', Helvetica, sans-serif;
    font-size: 15px;
  }
  
  .conversation dt {
    text-transform: uppercase;
    font-style: italic;
    letter-spacing: 1px;
    margin: 5px 0 0;
  }
  
  .conversation dd {
    margin: 0 0 10px;
  }



/* The icon that ends articles. */
.end-sign {
  background: transparent url(../images/end-sign.gif) no-repeat scroll 75% 50%;
  padding-left: 14px;
  padding-right: 14px;
}

/* Navigation bar ("Older" / "Newer"). */

.page-navigation {
  width: 471px;
  border: 2px solid #222;
  font-family: Calibri,'Trebuchet MS',Helvetica,sans-serif;
  margin-left: 180px;
  margin-right: 60px;
  margin-bottom: -40px;
}

  .page-navigate-back, .page-navigate-forward {
    float: left;
    margin-right: 5px;
    width: 115px;
  }

  .page-navigate-forward {
    float: right;
    margin-right: 0;
  }

  .page-navigate-back a, .page-navigate-forward a {
    display: block;
    padding: 10px;
    text-align: center;
  }

  .page-navigate-back a:hover, .page-navigate-forward a:hover {
    background-color: #d0d0d0;
  }

.page-bottom {
  clear: both;
  width: 475px;
  background-color: #222222;
  color: #f0f0f0;
  font-family: Calibri, 'Trebuchet MS', Helvetica, sans-serif;
  margin-left: 180px;
  margin-right: 60px;
  padding-bottom: 40px;
  margin-top: 40px;
}

  .page-bottom .navigation {
    margin-bottom: 20px;
  }

  .page-bottom a {
    color: #99BBFF;
    white-space: nowrap;
  }

    .page-bottom a:hover {
      background-color: #99BBFF;
      color: #000000;
    }
  
  .page-bottom .colophon {
    font-size: 14px;
    padding: 40px 10px 10px;
    margin: 0;
  }
  
    .page-bottom .colophon a {
      text-transform: uppercase;
      font-weight: bold;
    }



  
.search-form {
  background-color: #222;
  width: 435px;
  margin-left: 180px;
  padding: 15px 10px 20px;
}

  .search-form h3 {
    font-family: Calibri,'Trebuchet MS',Helvetica,sans-serif;
    font-size: 15px;
    letter-spacing: 4px;
    margin-bottom: 5px;
    text-align: left;
    text-transform: uppercase;    
    color: #f0f0f0;
  }
  
  
#meta .meta-heading-twitter {
  padding-left: 41px;
  background: #222 url(http://friendfeed.com/static/images/icons/twitter.png) no-repeat 15px 50%;
}

.meta-twitter {
  
}

  .meta-twitter li {
    margin: 0 0 10px;
  }
  
    #meta .meta-twitter li .timestamp a {
      color: #999;
    }
    
span.ellipsis {
  color: #777;
}

.post-type a {
  display: block;
}

.adsense {
  margin-left: 180px;
  padding-bottom: 40px;
}