/* Commons */

body, form, h1, h2, h3, h4, h5, h6, dl, ol, ul {
  margin:0;
  padding:0;
}
fieldset, img {
  border:0;
}
.clear{
  clear:both;
}
.right-float{
  float:right;
  margin-left:2em;
  margin-right:0;
}
.left-float{
  float:left;
  margin-right:2em;
  margin-left:0;
}

h1, h2, h3, p, ul, ol, dl, pre {
  margin-bottom:.5em;
}
h1, h2, h3 {
  font: 32px/1.5 Lucida Grande, Lucida Sans Unicode, Lucida Sans, Verdana, Tahoma, sans-serif;
  margin: .75em 0;
}
h1 {
  border-bottom: 1px solid #777;
}
h2, h3 {
  font-size:24px;
  font-variant:small-caps;
  border-bottom: 1px solid #eee;
}
h3 {
  font-size:18px;
}
h1:first-child {
  margin-top:-8px;
}
ul, ol {
  padding-left:32px;
}
#footer {
  text-align:center;
  padding: 24px;
  font-size:.75em;
}
#footer p {
  margin:0
}
ul > li > pre {
  margin-left: -57px;
}

/* Layout */

.amp {
  font-family:Baskerville, "Goudy Old Style", "Palatino", "Book Antiqua", serif !important;
  font-style:italic !important;
  font-weight:normal !important;
  line-height:.8em !important;
}
body {
  color:#333;
  font: 16px/1.5 Palatino Linotype, Book Antiqua, Palatino, FreeSerif, serif;
}
a, a:visited, a:hover {
  color:#516f5d;
}
a:hover {
  color:#304035;
}
#header {
  background: #ccc;
  background: -moz-linear-gradient(-90deg, #fff, #ccc);
  background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#ccc));
  border-bottom:1px solid #aaa;
  text-shadow:0 1px 1px #eee;
}
#header .wrap, #page, #footer {
  width:900px;
}
#header .wrap {
  background: url(/img/scala-line-54.png) 32px 0 repeat-y;
  height: 88px;
  padding-left: 56px;
}
#header h1 {
  margin:0;
  padding:4px 0 0 56px;
  border:0;
  float:left;
}
#header h1 a {
  text-indent:-9999px;
  width:288px;
  height:117px;
  position:absolute;
  background:transparent url(/img/logo.png) no-repeat;
}
#header a {
  text-decoration:none;
}
#topnav {
  display:block;
  float:right;
  margin-top:24px;
  overflow:hidden;
  padding: 0 8px;
}
#topnav > p {
  font-variant:small-caps;
  font-size:24px;
  line-height:24px;
  margin: 0 0 8px;
  color:#444;
}
#topnav > p a { color:#990000 }
#topnav > p a:hover { color:#770000; }

#slidemenu ul {
  margin: 0;
  padding: 0;
  list-style: none outside;
}
#slidemenu ul p, #slidemenu ul a {
  display:block;
  margin: 0;
  padding: 0;
  color:#444;
}
#slidemenu a:hover {
  color:#222;
}
#slidemenu > ul {
  position:absolute;
  background: #ccc;
  background: -moz-linear-gradient(-90deg, #ccc, #aaa);
  background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ccc), to(#aaa));
  box-shadow: 0 0 2px #555;
  -moz-box-shadow: 0 0 2px #555;
  -webkit-box-shadow: 0 0 2px #555;
  border-top-left-radius:4px;
  border-top-right-radius:4px;
  -webkit-border-top-left-radius:4px;
  -webkit-border-top-right-radius:4px;
  -moz-border-radius-topleft:4px;
  -moz-border-radius-topright:4px;
}
#slidemenu > ul > li {
  float:left;
  height: 32px;
  border-right:1px solid #bbb;
}
#slidemenu > ul > li:last-child {border:0}
#slidemenu > ul > li ul {
  background: #ddd;
  border:1px solid #aaa;
  border-width:0 1px 1px;
}
#slidemenu li a {
  display:block;
  padding:6px 16px 0;
}
#slidemenu > ul > li li a {
  border-top:1px solid #bbb;
  padding:8px 8px 0;
  background:#ccc;
  background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#eee), to(#ccc));
  line-height:24px;
}
#slidemenu > ul > li li a:hover {
  background:#ddd;
  background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#ccc));
}
#slidemenu > ul > li > ul li:first-child a {
  border-top:1px solid #aaa;
}
#slidemenu > ul > li > ul li {
  position:relative;
}
#slidemenu > ul > li > ul li ul {
  position:absolute;
}

#page {
  overflow:hidden;
  box-shadow: 1px 1px 3px #777;
  -moz-box-shadow: 1px 1px 3px #777;
  -webkit-box-shadow: 1px 1px 3px #777;
  background: #fff;
  background: -webkit-gradient(linear, 0% 0%, 2% 0%, from(#f7f7f7), to(#fff));
  padding: 24px 16px 16px 32px;
  border-bottom-right-radius:8px;
  -webkit-border-bottom-right-radius:8px;
  -moz-border-radius-bottomright:8px;
}
#page table {
  border-collapse:collapse;
}
#page table th {
  font: 18px/1.5 Lucida Grande, Lucida Sans Unicode, Lucida Sans, Verdana, Tahoma, sans-serif;
  background:#fafafa;
}
#page table tr {
  border-bottom:1px solid #eee;
}
#page table code {
  border:0;
}

.warning {
  border-radius:8px;
  -webkit-border-radius:8px;
  -moz-border-radius:8px;
  padding: 16px 16px 16px 64px;
  border:1px solid #aaaa00;
  background:#ffffcc url("/icons/warning.png") 4px 4px no-repeat;
}

/* Code highlighting */

pre, code {
  font-family: monaco, lucida console, bitstream vera sans mono, monospace;
  font-size:.85em;
  font-variant:normal;
  background: #f3f8f3;
  border: 1px solid #e3e8e3;
}
pre code {
  font-size: 12px;
  display: block;
  border:0;
  background:transparent;
}
pre {
  background: #f3f8f3;
  background: -webkit-gradient(linear, 0% 0%, 2% 0%, from(#e5eee3), to(#f3f8f3));
  border-top: 1px solid #e0e8e0;
  border-bottom: 1px solid #e0e8e0;
  margin: 0 -16px 16px -32px;
  padding: 8px 16px;
  overflow-x:auto;
}
pre .comment, pre .javadoc {
  color: #998;
  font-style: italic
}
pre .javadoctag, pre .annotation, pre .pi {
  color: #770;
}
pre .keyword, pre .class .keyword, pre .attribute {
  color: #550;
}
pre .number, pre .hexcolor, pre .string, pre .attribute .value {
  color: #2a2
}
pre .class .title, pre .tag {
  color: #337;
}

/* Table of Contents */

.toc {
  position:fixed;
  right:0;
  top:0;
  padding:8px 12px;
  background:rgba(0,0,0,.7);
  border-bottom-left-radius:8px;
  -webkit-border-bottom-left-radius:8px;
  -moz-border-radius-bottomleft:8px;
  border:2px solid #333;
  border-width: 0 0 2px 2px;
  overflow:hidden;
}
.toc, .toc a, .toc a:hover, .toc a:visited, .toc span, #toc-show, #toc-hide {
  color:#fff;
  font:13px/1.5 Lucida Grande, Lucida Sans Unicode, Arial, sans-serif;
  font-variant:small-caps;
  text-decoration:none;
}
#toc-show, #toc-hide {font-weight:bold}
#toc-hide { margin-right:4px;}
#toc-hide span { position:absolute;}
.toc a:hover {text-decoration:underline; color:#fff}
.toc li > span, .toc li > span * {color:#aaa}
.toc ul {
  list-style:none;
  padding-left:24px;
}
.toc > ul {
  margin:0;
  padding:0;
}

/* Markdown Live */

#me-markup-help-contents {
  background:#fff;
  padding:8px;
}
#me-source {
  font-family: Monaco, monospace;
}

/* Docco */

#docco-index ul { list-style:none outside }
#docco-back {
  position:absolute;
  padding:24px;
  border:0;
}
#docco-page .docs {
  max-width: 500px;
  min-width: 500px;
  min-height: 5px;
  padding: 12px 16px 0 24px;
  vertical-align: top;
  text-align: left;
}
#docco-page .code {
  padding: 8px;
  width: 100%;
  vertical-align: top;
  background: #f3f8f3;
  border-left: 1px solid #e5e5ee;
}
#docco-page .code pre {
  background:transparent;
  border:0;
  margin:0;
}
#docco-page .code pre code, #docco-page .docs pre code {
  font: 12px Monaco, Consolas, "Lucida Console", monospace;
  margin: 0;
  padding: 0;
}
#docco-page > table {
  border-bottom:1px solid #e5e5ee;
}

#components {
  width: 100%;
}

#components td {
  padding-left: 10px;
  width: 33%;
  vertical-align: top;
}

/* Projects slider */
#projects-slider {
  margin: 0 -16px 0 -32px;
  border:1px solid #eee;
  border-width:1px 0;
  text-shadow:0 1px 1px #fff;
}
#projects-slider hr {
  visibility:hidden;
  margin:0;
}
#projects-slider {
  overflow:hidden;
}
#projects-slider ul, #projects-slider-tabs p, #projects-slider h3 {
  margin: 0;
  padding: 0;
}
#projects-slider-tabs, #projects-slider-frames { list-style:none }

#projects-slider-tabs {
  width: 320px;
  float: left;
}
#projects-slider-tabs > li {
  background:#fafafa;
  height:96px;
  cursor:pointer;
}
#projects-slider-tabs img {
  float: left;
  margin: 12px 8px;
}
#projects-slider-tabs div {
  overflow:hidden;
}
#projects-slider-tabs h3 {
  font: 24px/1.5 Lucida Grande, Lucida Sans Unicode, Lucida Sans, Verdana, Tahoma, sans-serif;
}
#projects-slider-tabs p {
  font-size:16px;
  padding-top:4px;
}
#projects-slider-tabs > li.current {
  background: #eee;
  position:relative;
}
#projects-slider-tabs > li.current h3 {
  border-bottom: 1px solid #ddd;
}
#projects-slider-tabs > li.current:after {
  content:"";
  display:block;
  position:absolute;
  right:-16px;
  top: 0;
  border-style:solid;
  border-color:transparent #eee;
  border-width:48px 0 48px 16px;
}

#projects-slider-frames {
  overflow:hidden;
}
#projects-slider-frames h1, #projects-slider-frames p {
  margin:0 0 6px;
}
#projects-slider-frames > li {
  padding-left:24px;
  display:none;
}
#projects-slider-frames img {
  float:right;
  margin: 8px;
  margin-right: 8px;
  border: 1px solid #ccc;
}
#projects-slider-frames > ul > li ul {
  list-style:disc inside;
}

/* Tiles */
.tiles > ul {
  padding:0;
  margin: 8px -16px 8px;
  list-style:none outside;
  overflow:hidden;
}
.tiles > ul > li {
  display:inline-block;
  vertical-align:top;
  width:280px;
  margin-left:8px;
  padding:0 4px;
  border:1px solid #f7f7f7;
  border-radius:8px;
  -webkit-border-radius:8px;
  -moz-border-radius:8px;
}
.tiles h2 {
  margin-bottom:8px;
}

/* GitHub commits */
#gh-commits-list {
  list-style:none outside;
  padding:0;
}
#gh-commits-list li {
  overflow:hidden;
  margin-bottom:8px;
}
#gh-commits-list p {
  margin:0;
  padding-left: 48px;
  line-height:1em;
}
#gh-commits-list img {
  margin: 4px;
  float:left;
  display:block;
  border-radius:4px;
  -webkit-border-radius:4px;
  -moz-border-radius:4px;
}
#gh-commits-list .commit-author { font-size:1.2em }
#gh-commits-list .commit-date {
  font-size:.8em;
  color:#777;
}
#gh-commits-list .commit-date:before { content:"at " }
#gh-commits-list .commit-message {
  font-size:.75em;
  text-decoration:none;
  color:#333;
}
#gh-commits-list .commit-message:hover { text-decoration:underline }

/* Docs */
.docs-nav a {
  text-decoration:none;
  font-size:.85em;
  color:#777;
}
.docs-nav a:hover {
  color:#555;
  text-decoration:underline;
}
.docs-nav { width:100% }
.docs-nav td { width: 33% }
.docs-nav-prev { text-align: left }
.docs-nav-up { text-align: center; }
.docs-nav-next { text-align: right }

/* Misc */
.section img {
  float:right;
  margin:8px;
}