body {
  margin: 0;
  font-family: georgia, palatino, 'Times New Roman', times, serif;
  font-size: 13px;
  line-height: 18px;
  color: #555;
}

.clear { display: inline-block; }   
.clear:after, .container:after {
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
}
* html .clear { height: 1%; }
.clear { display: block; }

.amp {
  font-family: 'Goudy Old Style', palatino, georgia, serif;
}

/* --- FOOTER --- */
body {
  margin: 0;
  padding: 0 0 2.5em 0; }

#footer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: .75em 25px;
  background: #f4f4ff;
  color: #a1a1a1;
  border-top: 1px solid #d8d8d8;
  font-family: 'Lucida Grande', 'Helvetica Nueu', arial, helvetica, sans-serif;
  text-transform: uppercase;
  font-size: .769em;
}

#footer p {
  display: inline;
}
#footer a {
  background: none;
}

body > #footer {
  position: fixed;
}

* html body {
  overflow: hidden;
}
* html #wrapper {
  height: 100%;
  overflow: auto;
}



ol, ul {
  list-style: none;
}
ol, ul, li {
  margin: 0;
  padding: 0;
}

#nav {
  background: #333;
  border-bottom: 1px solid #000;
  font-family: 'Lucida Grande', 'Helvetica Nueu', arial, helvetica, sans-serif;
  padding-left: 25px;
  margin-bottom: 2em;
}

#nav li {
  float: left;
}

#nav li a {
  background: none;
  color: #fff;
  padding: 1em 2em;
  text-transform: uppercase;
  border: none;
  display: block;
  font-size: .769em;
}

#nav li a:hover {
  background: #444;
}

#wrapper {
  width: 960px;
}

#main {
  width: 750px;
  float: left;
  border-right: 1px solid rgb(230,230,230);
}

#sidebar {
  width: 185px;
  margin-left: 775px;
}
#sidebar li {
  margin-bottom: .5em;
  padding-bottom: .5em;
  border-bottom: 1px dotted rgb(230,230,230);
}

a, a:link, a:hover, a:active {
  /* color: rgb(173,225,119); */
  color: #999;
  padding-left: .25em;
  padding-right: .25em;
  /* background: rgb(255,255,240); */
  background: #f4f4ff;
  border-bottom: 1px solid rgb(222,243,200);
  border-bottom-color: #d8d8d8;
  text-decoration: none;
}
a:hover {
  background: none;
  border-color: rgb(173,225,119);
}

#site-title a {
  border: none;
  background: none;
  padding: 0;
  color: rgb(210,210,210);
}
#site-title, #site-subtitle {
  display: inline;
}

#site-title {
  font-size: 3em;
  padding-left: 25px;
}
#site-subtitle {
  font-size: 1.75em;
  color: rgb(225,225,225);
  padding-left: .25em;
}

.extended {
  /* color: rgb(173,225,119); */
  color: rgb(112,162,215);
  /* color: rgb(0,192,255); */
  font-size: 1.25em;
  line-height: 1.5em;
  border-left: 10px solid rgb(212,255,184);
  border-left-color: rgb(199,219,239);
  padding: 1em 0 1em 15px;
  margin-left: -25px;
}

#content {
  padding-left: 25px;
  margin-right: 15px;
}

.entry {
  padding-bottom: 1em;
  border-bottom: 1px solid rgb(210,210,210);
  margin-bottom: 2em;
}

p.info {
  font-size: .846em;
}
p.info a {
  color: rgb(210,210,210);
  background: none;
  border-bottom-style: dotted;
}

h1 span.cufon { padding-right: 4px; }

/* --- IMAGES --- */
a.image {
  border: none;
  background: none;
  padding: 0;
}
.img_wrapper {
  border: 1px solid rgb(210,210,210);
  padding: .75em 10px;
  background: #f4f4ff;
  text-align: center;
  margin: 1.385em 0;
}
.img_wrapper_small {
  width: 240px;
  margin-left: 225px;
}
.img_wrapper .caption {
  font-family: 'Lucida Grande', 'Helvetica Nueue', arial, helvetica, sans-serif;
  font-style: italic;
  font-size: x-small;
  display: block;
  margin: .25em 0;
}

/* --- COMMENTS --- */
#comment_wrapper {
  margin: .75em 0 .75em 25px;
}
.comment_heading {
  font-size: 2em;
  color: #aaa;
}
#comment_wrapper label {
  display: block;
  padding: .5em 10px;
  background: #f4f4ff;
  border-bottom: 1px solid #aaa;
  width: 150px;
  float: left;
}
#comment_wrapper input.text,
#comment_wrapper textarea {
  width: 400px;
}
#comment_wrapper select,
#comment_wrapper input,
#comment_wrapper textarea {
  padding: .5em 10px;
  display: block;
  margin-left: 185px;
  font-family: 'Lucida Grande', 'Helvetica Nueu', Arial, Helvetica, sans-serif;
}

#comments {
  font-family: 'Lucida Grande', 'Helvetica Nueu', Arial, Helvetica, sans-serif;
}

li.comment {
  position:relative;
  margin-bottom: .75em;
}

li.comment .meta {
  width: 175px;
  background: #f4f4ff;
  float: left;
  position: absolute;
  height: 100%;
}

li.comment .meta .author,
li.comment .meta .date {
  display: block;
  padding-right: 10px;
  text-align: right;
}

/* li.comment .content { padding-top: .75em; } */
li.comment .meta .author { margin-top: .75em }

li.comment .content,
li.comment .approval {
  margin-left: 185px;
}

li.comment .approval {
  color: #a1a1a1;
}


form .error {
  margin-left: 185px;
  display: block;
  color: #a61717;
  background-color: rgb(255,229,240);
  padding: .5em 10px;
  font-family: 'Lucida Grande', 'Helvetica Nueu', Arial, Helvetica, sans-serif;
  width: 400px;
}

/* --- CODE --- */
pre {
  overflow: auto;
  padding: 0 10px .75em 10px;
  border: 1px solid rgb(200,200,200);
  background: #F8F8FF;
}
code {
  font-family: 'Bitstream Vera Sans Mono','Courier',monospace;
}

/* --- RUBY CODE --- */
code .symbol {
  color: #990073;
}
code .keywords {
  color: #000000;
  font-weight: bold;
}
code .comment {
  color: #99a;
  font-style: italic;
}
code .constant {
  color: #008080;
}
code .string {
  color: #d14;
}
code .variable {
  color: rgb(0,134,179);
}
code .method_call {
  color: #008080;
}
code .klass {
  color: rgb(0,134,179);
}
code .error {
  color: #a61717;
  background-color: #e3d2d2;
}
