* { margin:0; padding:0; }
body {
  font-family:georgia,serif; background-color:#fff; color:#333;
  background: white url('paper.png') repeat-x scroll top center;
  
}
body,p,li,td { font-size:15px; }
p, ul, ol, div.codeblock, table { margin:13px 0 20px 0; line-height:1.5; }
hr { border:none; height:1px; background-color:#ddd; }
img { border:none; vertical-align:bottom; }
ul, ol { padding-left:1.618em; }

a { text-decoration:none; border-bottom:1px solid #ddd; }
a:link, a:active { color:#316d96; border-bottom-color:#d9ebf8; }
a:visited { color:#7e5494; border-bottom-color:#f1ddfb; }
a:link:hover, a:active:hover { color:#006be4; background:#e2f4ff; border-bottom-color:#c7e4f7; }
a:visited:hover { color:#af00cf; background:#f4e6ff; border-bottom-color:#e5cbf0; }
a > img { margin-bottom:-1px; } /* hide the bottom border implied by the "a" tag */
a.img { border:none; background:transparent !important; }

h1, h2, h3, h4 { color:#000; font-family:'helvetica neue',helvetica,arial,sans-serif; }
h1 a, h2 a, h3 a, h4 a { border:none; }
h1 a:link, h2 a:link, h3 a:link, h4 a:link, 
  h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited { color:inherit; }
h1 { font-size:26px; }
h2 { font-size:19px; }
h3 { font-size:17px; color:#555; }

/* Universal helpers */
.highlight { background-color:#fffe95; color:#302400; }
.breaker { clear:both; }
.wrapper { clear:both; margin:0 auto; width:920px; }
  .wrapper hr {
    margin:1em -20px 1em -9999em;
    background-color:transparent;
    height:0;
    border-top:1px solid #ccc;
  }

/* Errors from gb::$errors */
#gb-errors { background-color:#fcc; color:#611; padding:10px; min-height:48px; border-bottom:4px solid #c00; }
  #gb-errors a { border:none; background:transparent; }
  #gb-errors a.close {
    display:block; float:right;
    width:16px; height:16px;
    background-image:url(icons16.png);
    background-position:0 -32px;
    background-repeat:no-repeat;
  }
  #gb-errors a.close:hover { background-position:0 -48px; }
  #gb-errors a.close span { display:none; }
  #gb-errors div.icon {
    background-image:url(icons48.png);
    background-position:0 -48px;
    background-repeat:no-repeat;
    width:48px; height:48px;
    float:left;
    margin-left:-15px;
  }
  #gb-errors ul { display:block; float:left; margin:0; padding:0; list-style:none; }
  #gb-errors li { font-family:'helvetica neue',helvetica,arial,sans-serif; font-size:16px; }
  #gb-errors li.title { font-weight:bold; line-height:1; margin:0.2em 0; }

/* Header */
#header {
  font-family:'helvetica neue',helvetica,arial,sans-serif;
  border-top:2px solid #444;
  border-bottom:2px solid #999;
  background-repeat:repeat-x;
  background-position:0 0;
  height:165px; /* = (#header div.title).height + (#header ul).height */
  width:100%;
  padding-top:40px;
  overflow:hidden;
}
  #header a { border:none; }
  #header div.date {
    float:right; line-height:1; margin-top:-5px; color:#999;
    text-align:right;
  }
  #header div.title {
    height:152px;
    margin-left:-25px;
    padding-right:-25px;
    margin-bottom:-13px;
    z-index:10;
  }
    #header div.title > a {
      display:block; width:790px; height:130px; position:relative; top:-150px;
      background:transparent !important; z-index:1;
    }
      #header div.title > a h1 { display:none; }
    #header div.title img.logo { }
  #header div.menu {
    border-top:1px solid #ccc; z-index:1;
    margin:0 -9000px; padding:0 9000px;
  }
  #header ul {
    display:block; height:25px; 
    list-style:none; margin:0; padding:0;
    position:relative; z-index:10;
  }
    #header ul li { float:left; font-size:12px; font-weight:bold; color:#999; }
    #header ul li.divider {
      width:20px; height:25px; margin-right:10px;
      background:transparent url('/images/menu-spacer.png') no-repeat scroll 0 0;
    }
    #header ul li.right { float:right; }
      #header ul li.right a { margin-right:0; }
      /*#header ul li.divider + li a { border-left:1px solid #ccc; }*/
    /*#header ul li:first-child a { border-left:1px solid #ccc; }*/
      #header ul li a {
        display:block; line-height:25px; height:25px;
        margin-right:10px;
        color:#999;
        color:rgba(0,0,0,0.4);
      }
      #header ul li a:hover {
        color:#000;
        background-color:transparent;
      }
      #header ul li a.current, #header ul li a.current:hover {
        color:#000;
      }

  @font-face {
    font-family:Inconsolata;
    src:local(Inconsolata), url('inconsolata.otf') format('opentype');
  }
  body { font-family: 'Palatino Linotype', Palatino, Palladio, 'URW Palladio L', 'Book Antiqua', Baskerville, 'Bookman Old Style', 'Bitstream Charter', 'Nimbus Roman No9 L', Garamond, 'Apple Garamond', 'ITC Garamond Narrow', 'New Century Schoolbook', 'Century Schoolbook', 'Century Schoolbook L', Georgia, serif; }
  #header div.title div.description { font-style: italic; }
  div.post code, div.post pre, div.post tt, div.post samp { font-family:'Inconsolata', monospace; }
  div.post div.body blockquote { font-style: italic;; }
  div.post div.body b, div.post div.body strong { font-weight: bold; }
  div.post div.body em, div.post div.body i { font-style: italic; }
  div.post div.body em b, div.post div.body i b, div.post div.body em strong, div.post div.body i strong,
    div.post div.body b em, div.post div.body b i, div.post div.body strong em, div.post div.body strong i
  {
    font-weight: bold;
  }
  /* End of the posh styling */
  
  /* theme-2010*/
  #twitter-status { }
    #twitter-status h2 span { font-weight:normal; color:#ccc; }
    #twitter-status div.body {
      /*background-color:#fffe95; color:#685c00;
      border-radius:9px; -webkit-border-radius:9px; -moz-border-radius:9px;*/
      border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px;
      border-left:1px solid #ddd;
      padding:10px;
      margin:8px 0px;
    }
      /*#twitter-status div.body:hover { border-color:#666; cursor:pointer; }*/
      #twitter-status div.body > a { display:inline-block; width:48px; 
        vertical-align:top; }
      #twitter-status div.body > p { display:inline-block; max-width:200px; 
        vertical-align:top; margin:-6px 0 0 5px; text-wrap:unrestricted;
        overflow:hidden; text-overflow:ellipsis; }
      #twitter-status div.body > p > span.loading { color:#ccc; font-size:36px; }
  

/* Main content */
#main { }

/* Columns */
div.columns div.col { float:left; }
div.columns.c3 {}
  div.columns.c3 div.col { width:280px; float:left; }
  div.columns.c3 div.col + div.col { margin:0 40px; }
  div.columns.c3 div.col + div.col + div.col { margin:0; }

/* Summary columns */
#summary { border-bottom:1px solid #ccc; padding-top:20px; padding-bottom:10px; }
  #summary p, #summary li, #summary blockquote { font-size:13px; color:#555; }
  #summary div.recent-posts {}
    #summary div.recent-posts ol { list-style:none; padding:0; }
    #summary div.recent-posts li { white-space:nowrap; overflow:hidden; color:#999; }
      #summary div.recent-posts li a { margin-right:5px; }
      #summary div.recent-posts li span.age { white-space:nowrap;; }
  #summary h2 { font-size:14px; color:#555; margin-bottom:-5px; }
  ol.tags { overflow:hidden; }
  ol.tags a:link, ol.tags a:visited { border:none; }
  ol.tags a:link:hover, ol.tags a:visited:hover { color:#444 !important; }
  ol.tags { padding:0; }
  ol.tags li { float:left; list-style:none; padding:0 10px 0 0; }
  ol.tags li.p0   a:link, ol.tags li.p0   a:visited { color:#eee; }
  ol.tags li.p1   a:link, ol.tags li.p1   a:visited { color:#ddd; }
  ol.tags li.p2   a:link, ol.tags li.p2   a:visited { color:#ccc; }
  ol.tags li.p3   a:link, ol.tags li.p3   a:visited { color:#bbb; }
  ol.tags li.p4   a:link, ol.tags li.p4   a:visited { color:#aaa; }
  ol.tags li.p5   a:link, ol.tags li.p5   a:visited { color:#999; }
  ol.tags li.p6   a:link, ol.tags li.p6   a:visited { color:#888; }
  ol.tags li.p7   a:link, ol.tags li.p7   a:visited { color:#777; }
  ol.tags li.p8   a:link, ol.tags li.p8   a:visited { color:#666; }
  ol.tags li.p9   a:link, ol.tags li.p9   a:visited { color:#555; }
  ol.tags li.p10  a:link, ol.tags li.p10  a:visited { color:#555; }
  
#summary.breadcrumb { padding:10px 0; border-bottom:1px dashed #ddd; }
  #summary.breadcrumb p {
    margin:0;
    font-style:italic;
  }

/* Sidebar */
#sidebar {
  float:right;
  width:280px;
  margin:0 0 0 20px;
  padding:20px 0 20px 20px;
}
  #sidebar > hr {
    margin:1em -20px 1em -20px;
    background-color:transparent;
    height:0;
    border-top:1px dashed #ccc;
  }
  /* summaries */
  #sidebar div.summaries {}
    #sidebar div.summaries div.summary { border-bottom:1px solid #ccc; margin:5px 0 10px 0; padding-bottom:20px; }
      #sidebar div.summaries div.summary p.meta {
        font-family:"lucida grande","tahoma",sans-serif; font-size:9px;
        color:#999; margin:5px 0; xborder-bottom:1px solid #ccc; 
      }
      #sidebar div.summaries div.summary p.body { line-height:1.1; margin:0; }
  /* flickr */
  #sidebar ol.recent-flickr { list-style:none; padding:0; }
    #sidebar .recent-flickr { max-width:280px; }
      #sidebar .recent-flickr img {
        max-width:280px; display:inline-block; margin:0 0 6px 0;
      }
  /* recent comments */
  #sidebar ol.recent-comments { list-style:none; padding:0; }
    #sidebar ol.recent-comments li { white-space:nowrap; max-width:280px; }
      #sidebar ol.recent-comments small { color:#999; width:75px; }
      #sidebar ol.recent-comments a { max-width:200px; }
      #sidebar ol.recent-comments a, #sidebar ol.recent-comments small {
        display:inline-block; overflow:hidden; text-overflow:ellipsis; border:none;
      }

/* Posts */
div.posts { width:600px; float:left; }
  div.posts > h1 { display:none; /* for SEO reasons, since we don't have a proper H1 */ }
  div.posts div.post { padding-bottom:20px; }
    div.posts div.post > h2 { font-size:26px; /* same as h1 for single posts */ }

/* Post */
div.post { margin-top:20px; margin-bottom:10px; width:600px; }
  div.post p.meta {
    font-family:"lucida grande","tahoma",sans-serif; font-size:11px;
    margin:2px 0;
    color:#999;
  }
    div.post p.meta a:link, div.post p.meta a:active { color:#9bafbd; border-bottom-color:#e3eff7; }
    div.post p.meta a:visited { color:#bca6c8; border-bottom-color:#f8effc; }
    div.post p.meta a:link:hover, div.post p.meta a:active:hover { color:#006be4; border-bottom-color:#c7e4f7; }
    div.post p.meta a:visited:hover { color:#af00cf; border-bottom-color:#e5cbf0; }
      div.post a.numcomments {
        font-family:'helvetica neue',helvetica,arial,sans-serif;
        border:none;
        display:block;
        float:right;
        background-image:url(icons16.png);
        background-position:right -64px;
        background-color:transparent;
        background-repeat:no-repeat;
        padding-right:19px;
        margin-top:9px;
        height:16px;
        line-height:16px;
      }
      div.post a.numcomments:hover { background-position:right -80px; }
      div.post a.numcomments:link, div.post a.numcomments:visited { color:#777; }
      div.post a.numcomments:link:hover, div.post a.numcomments:visited:hover { color:#000; }
  div.post div.body { /*overflow-x:hidden;*/ }
  div.post div.body a.img { background-color:transparent; border:none; }
  div.post div.body object, div.post div.body img { max-width:600px; }
  div.post div.body hr { border-top-style:dashed; }
  div.post div.body blockquote {
    padding-left:10px;
    border-left:5px solid #ccc;
    font-style:italic;
    color:#666;
  }
  div.posts.single div.post div.head blockquote {
    text-align: center;
    background-color: #eee;
    padding:30px;
    font-style:italic;
    color:#666;
    font-size: 1.2em;
  }
  div.post div.body .center { margin-left:auto; margin-right:auto; }
  div.post div.body img.center { display:block; }
  div.post div.body table { border-collapse:collapse; }
    div.post div.body table th, div.post div.body table td { border-left:1px solid #ccc; padding:0 7px; }
    div.post div.body table th { border-bottom:1px solid #ccc; }
    div.post div.body table th:first-child, div.post div.body table td:first-child { border-left:none; padding-left:0; }
    div.post div.body table th:last-child, div.post div.body table td:last-child { padding-right:0; }
  div.post *[align=right] { margin-left:15px; margin-bottom:15px; }
  div.post div.body > p.read-more { }
    div.post div.body > p.read-more a {
      display:inline-block; padding:0 7px; line-height:22px;
      border-radius:5px; -webkit-border-radius:5px; -moz-border-radius:5px;
      background-color:#fffe95; color:#685c00; border:none;
    }
    div.post div.body > p.read-more a:hover { background-color:#fff000; color:#302400; }
  div.post div.body :target { background:#fe0; }
  div.post div.body sup:target { padding:2px 5px; }
  div.post div.body div.footnotes {}
    div.post div.body div.footnotes ol:before { content:"Footnotes"; color:#999; }
    div.post div.body div.footnotes ol { padding-left:0; }
    div.post div.body div.footnotes li, div.post div.body div.footnotes p { font-size:13px; }
    div.post div.body div.footnotes li > p { margin:6px 0 10px 0; }
    div.post div.body div.footnotes li:target { background:#ffc; padding:4px 10px; margin:4px -10px; }

  /* single post is wider (head and images/objects) */
  div.posts.single {}
    div.posts.single div.post div.body object, div.posts.single div.post div.body img {
      max-width:920px;
    }
    div.posts.single div.post div.body *[align=right] { margin-right:-320px; }
    div.posts.single div.post div.head { width:920px; }

/* Paged posts footer */
#paged-footer {
  border-bottom:2px solid #999;
  border-top:1px solid #ccc;
  margin-top:-1px;
  padding:10px 0;
}

/* Comments */
#comments {
  float:left;
  width:600px;
}
  #comments div.notification { background:#9cc8ff; color:#00234e; width:560px; padding:10px 20px; margin:20px 0; }
  #comments div.notification p { padding-top:10px;padding-bottom:10px; margin:0; }
  #comments hr { margin-top:0; margin-right:0; }
  #comments h2 { margin-bottom:1em; }
  #comments ul { list-style:none; margin:0; padding:0 0 10px 30px; width:600px; }
  #comments > ul { padding-left:0; } /* first level is not indented */
    #comments ul.l1, #comments ul.l1 li { width:570px; }
    #comments ul.l2, #comments ul.l2 li { width:540px; }
    #comments ul.l3, #comments ul.l3 li { width:510px; }
    #comments ul.l4, #comments ul.l4 li { width:480px; }
    #comments ul.l5, #comments ul.l5 li { width:450px; }
    #comments ul.l6, #comments ul.l6 li { width:420px; }
    #comments ul.l1 div.message-wrapper { width:507px; }
    #comments ul.l2 div.message-wrapper { width:477px; }
    #comments ul.l3 div.message-wrapper { width:447px; }
    #comments ul.l4 div.message-wrapper { width:417px; }
    #comments ul.l5 div.message-wrapper { width:387px; }
    #comments ul.l6 div.message-wrapper { width:357px; }
  /* Comment */
  li.comment {
    width:600px;
    margin:0 0 10px 0;
    display:block;
  }
    li.comment.post-author div.author a.name { color:#00942a; }
    li.comment.post-author div.author a.name:after { content:" (author)"; font-weight:normal; font-style:italic; }
    li.comment div.avatar { float:left; width:48px; height:48px; margin:10px 0; }
    li.pingback div.avatar {
      background-image:url(icons48.png);
      background-position:0 0;
      background-repeat:no-repeat;
    }
      li.pingback div.avatar img { display:none; }
    li.comment div.message-wrapper {
      float:left;
      width:537px;
      margin:10px 0 10px 15px;
    }
      li.comment div.actions { float:right; }
        li.comment div.actions a {
          width:16px; height:16px;
          display:block;
          border:none;
          float:left;
          background-color:transparent;
          background-position:0 0;
          background-repeat:no-repeat;
          background-image:url(icons16.png);
        }
          li.comment div.actions a span { display:none; }
        li.comment div.actions a.reply { }
        li.comment div.actions a.reply:hover { background-position:0 -16px; }
        li.pingback div.actions a.reply { display:none; }
        li.comment div.actions a.rm { background-position:0 -32px; }
        li.comment div.actions a.rm:hover { background-position:0 -48px; }
    li.comment div.author {
      float:left;
      line-height:1;
      font-family:'helvetica neue',helvetica,arial,sans-serif;
      font-weight:bold;
    }
      li.comment div.author a { color:#111; border:none; }
      li.comment div.author a.age { margin-left:0.3em; color:#999; }
      li.comment div.author a:link:hover { color:#006be4; }
      li.comment div.author a:visited:hover { color:#af00cf; }
    li.comment div.message { margin-top:5px; margin-right:10px; }
    li.comment div.message > p { margin:0.6em 0 0 0; }
    li.comment div.message > p:first-child { margin:0; }
    li.comment > form { margin:10px 10px 10px 68px; }
#reply-title { margin-top:1em; }
#comment-form { width:500px; }
  #comment-form p { margin:0; }
  #comment-form textarea {
    width:488px;
    margin:0;
    padding:5px;
    border-width:3;
    font-family:inherit;
    font-size:1em;
  }
  #comment-form input[type="text"] { width:156px; margin-left:4px; padding:1px; border-width:3; }
  #comment-form input[type="text"]:first-child { margin-left:0; }
  #comment-form input { margin-top:5px; }
  #comment-form input.default { color:#999; }
  #comment-form.inline-reply { width:420px; padding-bottom:10px; }
  #comment-form.inline-reply textarea { width:408px; }
  #comment-form.inline-reply input[type="text"] { width:129px; }
  #comment-form.inline-reply input[type="text"]:first-child { width:130px; }

/* Footer */
#footer { padding:10px 0; color:#ccc; }
#footer a:link, #footer a:visited { color:#ccc; }

/* Error 404 not found */
#error404 { margin:100px; text-align:center; }
  #error404 h1 { margin-bottom:30px; }

/* Pygments source code syntax highlight */
/*div.codeblock {
  font-size:14px;
  background-color:#fff;
  margin-left:-10px;
  padding-left:9px;
  border-left:1px solid #eee;
}*/
pre {
  font-size:14px;
  background-color:#eee;
  padding:10px 10px;
  border:1px solid #ddd;
  margin:0px 0 15px 0; line-height:1.25;
}
  pre code { overflow:auto; }
  pre code .hll { background-color: #ffffcc }
  pre code .g { color: #000000 } /* Generic */
  pre code .gh { color: #000080; font-weight: bold } /* Generic.Heading */
  pre code .gd { color: #a40000 } /* Generic.Deleted */
  pre code .ge { color: #000000; font-style: italic } /* Generic.Emph */
  pre code .gr { color: #ef2929 } /* Generic.Error */
  pre code .gi { color: #00A000 } /* Generic.Inserted */
  pre code .go { color: #000000; font-style: italic } /* Generic.Output */
  pre code .gp { color: #8f5902 } /* Generic.Prompt */
  pre code .gs { color: #000000; font-weight: bold } /* Generic.Strong */
  pre code .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
  pre code .gt { color: #a40000; font-weight: bold } /* Generic.Traceback */
  pre code .c { color: #999; font-style: italic } /* Comment */
  pre code .cm { color: #999; } /* Comment.Multiline */
  pre code .cp { color: #8f5902; font-style: italic } /* Comment.Preproc */
  pre code .c1 { color: #999; font-style: italic } /* Comment.Single */
  pre code .cs { color: #8f5902; font-style: italic } /* Comment.Special */
  pre code .err { color: #a40000; border: 1px solid #ef2929 } /* Error */
  pre code .k { color: #204a87; } /* Keyword */
  pre code .l { color: #000000 } /* Literal */
  pre code .n { color: #000000 } /* Name */
  pre code .o { color: #c31; } /* Operator */
  pre code .x { color: #000000 } /* Other */
  pre code .p { color: #000000; } /* Punctuation */
  pre code .kc { color: #204a87; } /* Keyword.Constant */
  pre code .kd { color: #1166cc; } /* Keyword.Declaration */
  pre code .kn { color: #204a87; } /* Keyword.Namespace */
  pre code .kp { color: #204a87; } /* Keyword.Pseudo */
  pre code .kr { color: #204a87; } /* Keyword.Reserved */
  pre code .kt { color: #204a87; } /* Keyword.Type */
  pre code .ld { color: #000000 } /* Literal.Date */
  pre code .m { color: #0000cf; } /* Literal.Number */
  pre code .s { color: #4b8911 } /* Literal.String */
  pre code .na { color: #c4a000 } /* Name.Attribute */
  pre code .nb { color: #204a87 } /* Name.Builtin */
  pre code .nc { color: #000000 } /* Name.Class */
  pre code .no { color: #000000 } /* Name.Constant */
  pre code .nd { color: #5c35cc; } /* Name.Decorator */
  pre code .ni { color: #ce5c00 } /* Name.Entity */
  pre code .ne { color: #cc0000; } /* Name.Exception */
  pre code .nf { color: #000000 } /* Name.Function */
  pre code .nl { color: #f57900 } /* Name.Label */
  pre code .nn { color: #000000 } /* Name.Namespace */
  pre code .nx { color: #000000 } /* Name.Other */
  pre code .py { color: #000000 } /* Name.Property */
  pre code .nt { color: #204a87; } /* Name.Tag */
  pre code .nv { color: #000000 } /* Name.Variable */
  pre code .ow { color: #204a87; } /* Operator.Word */
  pre code .w { color: #f8f8f8; text-decoration: underline } /* Text.Whitespace */
  pre code .mf { color: #91c; } /* Literal.Number.Float */
  pre code .mh { color: #91c; } /* Literal.Number.Hex */
  pre code .mi { color: #91c; } /* Literal.Number.Integer */
  pre code .il { color: #91c; } /* Literal.Number.Integer.Long */
  pre code .mo { color: #91c; } /* Literal.Number.Oct */
  pre code .sb { color: #4e9a06 } /* Literal.String.Backtick */
  pre code .sc { color: #4e9a06 } /* Literal.String.Char */
  pre code .sd { color: #8f5902; font-style: italic } /* Literal.String.Doc */
  pre code .s2 { color: #4e9a06 } /* Literal.String.Double */
  pre code .se { color: #4e9a06 } /* Literal.String.Escape */
  pre code .sh { color: #4e9a06 } /* Literal.String.Heredoc */
  pre code .si { color: #4e9a06 } /* Literal.String.Interpol */
  pre code .sx { color: #4e9a06 } /* Literal.String.Other */
  pre code .sr { color: #4e9a06 } /* Literal.String.Regex */
  pre code .s1 { color: #4e9a06 } /* Literal.String.Single */
  pre code .ss { color: #4e9a06 } /* Literal.String.Symbol */
  pre code .bp { color: #3465a4 } /* Name.Builtin.Pseudo */
  pre code .vc { color: #000000 } /* Name.Variable.Class */
  pre code .vg { color: #000000 } /* Name.Variable.Global */
  pre code .vi { color: #000000 } /* Name.Variable.Instance */
