/* reset.css */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
body {line-height:1.5;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {text-align:left;font-weight:normal;}
table, td, th {vertical-align:middle;}
blockquote:before, blockquote:after, q:before, q:after {content:"";}
blockquote, q {quotes:"" "";}
a img {border:none;}

/* typography */
body {font-size: 1.1em;color:#222;background:#fff;font-family: "ff-tisa-web-pro-1","ff-tisa-web-pro-2",Georgia,"Times New Roman",Times,serif; word-spacing: 0.1em;}
h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111; font-family: "droid-serif-1","droid-serif-2", Georgia;}
h1 {font-size:2.0em;line-height:1;margin-bottom:0.5em;}
h2 {font-size:1.7em;margin-bottom:0.75em;}
h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
h4 {font-size:1.3em;line-height:1.25;margin-bottom:1.25em;}
h5 {font-size:1.1em;font-weight:bold;margin-bottom:1.5em;}
h6 {font-size:1em;font-weight:bold;}
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
p {margin:0 0 1.5em;}
p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
a:focus, a:hover {color:#000;}
a {color:#000;text-decoration:none;border-bottom:1px dotted #222;}
a:hover {text-decoration: none; border-bottom:1px solid #222;}
blockquote {margin:1.5em;color:#7d7d7d;font-style:italic;border-left:3px solid #7d7d7d;padding-left:1em;}
strong {font-weight:bold;}
em, dfn {font-style:italic;}
dfn {font-weight:bold;}
sup, sub {line-height:0;}
abbr, acronym {border-bottom:1px dotted #666;}
address {margin:0 0 1.5em;font-style:italic; padding: 0;}
del {color:#666;}
pre {margin:0 0 1.5em 0;white-space:pre;}
pre, code, tt {font-family:"DejaVu Sans Mono","Bitstream Vera Sans Mono","Andale Mono","Courier New",monospace;}
li ul, li ol {margin:0;}
ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
ul {list-style-type:disc;}
ol {list-style-type:decimal;}
dl {margin:0 0 1.5em 0;}
dl dt {font-weight:bold;}
dd {margin-left:1.5em;}
table {margin-bottom:1.4em;width:100%;}
th {font-weight:bold;}
thead th {background:#c3d9ff;}
th, td, caption {padding:4px 10px 4px 5px;}
tr.even td {background:#e5ecf9;}
tfoot {font-style:italic;}
caption {background:#eee;}
.small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
.large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
.hide {display:none;}
.quiet {color:#666;}
.loud {color:#000;}
.highlight {background:#fff;}
.added {background:#060;color:#fff;}
.removed {background:#900;color:#fff;}
.first {margin-left:0;padding-left:0;}
.last {margin-right:0;padding-right:0;}
.top {margin-top:0;padding-top:0;}
.bottom {margin-bottom:0;padding-bottom:0;}
.caption { font-style: italic; }
header, footer { display: block; }
dt a { border-bottom: none; }
dt a:hover { border-bottom: none; }

/* selected text */
*::-moz-selection { background: #000 none repeat scroll 0 0; color: #fff; }
::selection { background: #000 none repeat scroll 0 0; color: #fff; }

/* grid */
body { margin: 2% auto; position: relative; min-width: 28em; max-width: 40em; width: 90%; }

/* Indentation instead of line shifts for sibling paragraphs. */
p + p { text-indent:2em; margin-top:-1.5em; }
form p + p { text-indent: 0; } /* Don't want this in forms. */

/* header */
header#branding { border-bottom: 1px solid #000; margin-bottom: 1em; text-align: center; }
header#branding h1 { font-size: 4.5em; margin: 0.5em 0;}
header#branding a:hover,
header#branding a { border-bottom:none; color: #000; }

/* footer */
footer { text-align: right; }
footer p{ border-top: 1px solid #000; padding: 10px 0; font-size: 0.8em; line-height: 1.5em; }
footer a { border-bottom: none; font-weight: bold; }
footer a:hover { border-bottom: none; }
footer img { margin-bottom: -3px; }

/* article */
article { margin-bottom: 1em; }
article h1 { margin: 0; text-align: center; }
article h1,
article h2,
article h3,
article h4 { margin: 0.7em 0 0.5em 0; }
article p.meta { text-align: center; font-size: 1.1em; } 
article p.footnote { font-style: italic; margin-bottom: 0;}
article sup a { color: #000; border-bottom: none; font-size: 0.8em; margin: 0; padding: 0; }
article sup a:hover { background-color: #fff; color: #000; border-bottom: none; }
article a:hover { background-color:#222; color:#fff; padding: 0 2px; margin: 0 -2px; }
article code { background-color: #eee; padding: 0 2px; }
article .figure { text-align: center; }

/* standard page */
section#page h1 { text-align: center; }
section#page .figure { float: right; margin-left: 1.5em; text-align: center; }

/* List of articles used on the 404 page. */
ul#article-list li { list-style-type: none; }
ul#article-list li h1 { font-size: 1.5em; text-align: left;}

/* about me */
#about p { padding: 1em 0; text-align: center; }

/* table of contents */
nav h1 { text-align: center; }
ol#toc { padding: 0 10px 0;}
ol#toc li { list-style-type: none; }
ol#toc h2 { margin: 0.5em 0 0.1em; padding: 0; text-transform: capitalize; font-size: 1.3em; }
ol#toc li ol { margin: 0; padding-left: 2em; }
ol#toc li ol li { background: url('../img/dot.png') repeat-x 0 0.9em;}
ol#toc li ol li.empty { background: none; font-style: italic; }
ol#toc li a { background-color: #fff; padding-right: 5px; color: #000; }
ol#toc li time { float: right; background-color: #fff; padding-left: 0.5em; }

/* Syntax */
article code { font-size: 0.8em; }
article pre { color: #000; width: 92%; margin: 0 auto 1em auto; padding: 0em 0.4em; position: relative; border-left: 4px solid #eee; overflow-x: none; line-height: 0.95em; }
article pre code { background-color: transparent; margin: 0; padding: 0; }

span.language { font-size: 0.7em; background-color: #eee; color: #777; font-family:"DejaVu Sans Mono","Bitstream Vera Sans Mono","Andale Mono","Courier New",monospace; padding: 0 0.5em; position: absolute; top: 0; right: 0; text-transform: uppercase; }

/* Based on kate's own default colors for Haskell */
table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode, table.sourceCode pre { margin: 0; padding: 0; border: 0; vertical-align: baseline; border: none; }
table.sourceCode { margin: 2% auto; }
td.lineNumbers { border-right: 4px solid #ddd; background-color: #eee; }
td.lineNumbers pre { text-align: right; color: #777; font-family:"DejaVu Sans Mono","Bitstream Vera Sans Mono","Andale Mono","Courier New",monospace; font-size: 0.8em; line-height: 1.25em; } 
td.sourceCode { padding: 0.5em 0 0.5em 0.5em; }
pre.sourceCode span.Normal { }
pre.sourceCode span.Keyword { font-weight: bold; } 
pre.sourceCode span.DataType { color: #800000; }
pre.sourceCode span.DecVal { color: #0000FF; }
pre.sourceCode span.BaseN { color: #0000FF; }
pre.sourceCode span.Float { color: #800080; }
pre.sourceCode span.Char { color: #FF00FF; }
pre.sourceCode span.String { color: #DD0000; }
pre.sourceCode span.Comment { color: #808080; font-style: italic; }
pre.sourceCode span.Others { }
pre.sourceCode span.Alert { color: green; font-weight: bold; }
pre.sourceCode span.Function { color: #000080; }
pre.sourceCode span.RegionMarker { }
pre.sourceCode span.Error { color: red; font-weight: bold; }
