body {
  color:#222;
  font-family: 'Lucida Grande', 'Lucida Sans', Tahoma, Ubuntu sans-serif;
  font-size:100%;
  line-height:1.25;
  background-color:#FAFAFA;
  margin:0;
  padding:0;
}

/* HEADER */
#head {
  text-align:center;
}
#head img {
  vertical-align:middle;
  margin:-10px 0 0 -82px;
  padding:0 15px 0 0;
  border:0;
}
#head h1 {
  color:#000;
  font-family:georgia, 'bitstream vera serif', serif;
  font-size:4.5em;
  font-weight:normal;
  letter-spacing:-3px;
  line-height:1;
  margin:0;
  padding:20px 0 8px 0;
}
#head h1 a, #head h1 a:link, #head h1 a:visited, #head h1 a:hover {
  color:#100;
  text-decoration:none;
}
#head ul {
  font-size:1.1em;
  font-family:"lucida console", "monaco", "andale mono", "bitstream vera sans mono",
    "consolas", monospace;
  font-weight:normal;
  text-transform:uppercase;
  letter-spacing:2px;
  text-align:center;
  margin:0;
  padding:0 40px 0.25em 40px;
}
#head ul li {
  display:inline;
  list-style-type:none;
  padding:0 0.5em 0 0;
}
#head ul a, #head ul a:link, #head ul a:visited {
  color:#56534f;
  text-decoration:none;
}
#head ul a:hover {
  color:#000;
  text-decoration:underline
}

/* CONTENT */

#content {
  color:#111;
  max-width:52em;
  min-width:27em;
  margin:7px auto;
  border-top:2px solid #837d7c;
  padding-top:10px;
}

/* HEADINGS */

h1, h2, h3, h4, h5, h6 { color:#000 }
h1 a, h2 a, h3 a { color:#000 }
h1 {
  font-size:2em;
  letter-spacing:-1px;
  margin-bottom:0;
}
h2 {
  font-size:1.5em;
  letter-spacing:-1px;
  margin:1.25em 0 -0.32em 0;
}
h3 {
  font-size:1.1em;
  letter-spacing:-1px;
  margin:1.8em 0 -0.25em 0;
}
h3 code {
  font-size:1.1em;
  color:#000;
}

/* LINKS */
a {
  color:#000;
  text-decoration:underline;
}
a:hover {
  color:#910;
  text-decoration:underline;
}
a img {
  border:none;
}
a.out {
  background: url('/images/link-out.gif') center right no-repeat;
  padding-right: 12px;
}


/* CODE */

code, pre, textarea, tt {
  font-family:"lucida console", "monaco", "andale mono", "bitstream vera sans mono",
    "consolas", monospace;
}
pre {
  font-size:0.85em;
  background:#f4f5f5;
  border:2px solid #d5d0d2;
  padding:0.5em;
  line-height:1.15;
  color:#111;
}
code, tt {
  font-size:0.85em;
  color:#222;
}
h1 code, h2 code, h3 code, h4 code {
  color:#111;
}
pre code {
  font-size:1em;
  color:#222;
}

/* MISC */

hr {
  margin:2em 0;
  padding:0;
  color:#eee;
}

/* HOME */

body#home {
  background: #fff url(../images/legend.gif) no-repeat fixed right 130px;
}
#home #content {
  font-size:1.05em;
  margin:20px 0 0 0;
  padding:0 20px;
  border-width:0;
}
#home #head, #home #foot {
  display:none;
}
.pipe {
  clear:both;
  padding:50px 0;
}
.pipe p {
  color:#000;
  font-size:62px;
  font-family:'georgia', 'bitstream vera serif', serif;
  letter-spacing:-3px;
  line-height:1;
  text-align:right;
  margin:0em 43% 0 0;
  padding:0 60px 0 0;
}
.pipe pre {
  float:right;
  background:transparent;
  font-size:28px;
  margin:0;
  padding:5px 0 0 0;
  width:42%;
  border-width:0;
}
.pipe pre code {
  color:#666;
  background:transparent;
}
.pipe.shell p {
  font-size:56px;
}
.pipe.shell pre {
  font-size:18px;
}
.pipe.nav p {
  font-size:100px;
  letter-spacing:-6px;
}
.pipe.nav pre {
  font-size:36px;
  padding-top:20px;
  text-transform:uppercase;
  letter-spacing:4px;
  line-height:1.25;
}
.pipe.nav {
  padding:25px 0 50px 0;
}
.pipe.nav a, .pipe.nav a:link, .pipe.nav a:visited {
  color:#444;
  text-decoration:none;
}
.pipe.nav a:hover {
  color:#000;
  text-decoration:underline;
}

/* README */
.toc {
  float: right;
  clear: both;
  background:#f4f5f5;
  border:2px solid #d5d0d2;
  max-width: 20em;
  padding:0.5em;
  line-height:1.15;
  color:#111;
  margin-left: 2em;
  margin-bottom: -2.5em;
  position: relative;
  top: -3.5em;
  font-size: 0.9em;
}
.toc a {
  text-decoration: none;
}
.toc .level-1 {
  padding-left: 2em;
  font-size:0.8em;
  position: relative;
  top: -0.1em;
}
.toc .level-2 {
  list-style-type: none;
  font-weight: normal;
  padding-left: 1em;
}
.toc .level-1 > li {
  margin: 0.05em;
}
.toc .level-1 > li a {
  font-weight: bold;
  font-size: 1.25em;
  position: relative;
  top: 0.1em;
}
.toc h2 {
  padding-top: 0;
  margin-top: 0;
}
pre {
  overflow: hidden;
}

/* BLOG POSTS */

div.post { margin:2em 0 }
div.post h1 a { text-decoration:none }
div.post h1 a:hover { text-decoration:underline }
p.meta {
  font-size:0.8em;
  color:#555;
  margin-top:0;
}

/* ABOUT PAGE */

body#about ul li{
  margin-bottom:20px;
}
body#about #content strong, body#about #content a {
  font-weight:bold;
}

/* THE BOOK */
#book .maruku_toc {
  margin:1em 0;
}
#book .maruku_toc ul:first-child {
  padding-left:0;
}
#book pre {
  overflow:auto;
}
