body {
	tab-size:            4;
	-moz-tab-size:       4; /**< CSS3 support, anybody? */
}

* {
	box-sizing:          border-box;
}

header, main > aside, body > footer, footer nav {
	display:             none;
}

footer {
	font-size:           80%;
	line-height:         24pt;
	clear:               both;
}

footer a img {
	width:               20pt;
	height:              20pt;
}

article > h1 {
	counter-reset:       listing section table;
}

article > h2 {
	counter-reset:       subsection;
}

article > h2::before {
	counter-increment:   section;
	content:             counter(section) ".";
	margin-right:        .5ex;
}

article > h3::before {
	counter-increment:   subsection;
	content:             counter(section) "." counter(subsection) ".";
	margin-right:        .5ex;
}

article blockquote {
	font-style:          italic;
}

article pre {
	counter-increment:   listing;
}

.details {
	border-radius:       5pt;
	margin:              15pt;
	padding:             15pt;
}

article pre {
	white-space:         pre-wrap;
	word-break:          break-all;
	border-radius:       5pt 0pt 0pt 5pt;
	border-left:         1pt solid #808080;
}

article > pre + p, article > .highlighter-rouge + p,
article > table + p, article > iframe + p {
	text-align:          center;
	margin-top:          -10pt;
	font-size:           80%;
}

article > pre + p::before, article > .highlighter-rouge + p::before {
	content:             "Listing " counter(listing) ": ";
}

article dt {
	font-weight:         bold;
}

a:hover {
	text-shadow:         0pt 0pt .1ex;
}

article > h1 a {
	color:               inherit;
}

article table {
	border-radius:       5pt;
	margin:              15pt auto;
	counter-increment:   table;
}

article td {
	margin:              1pt;
}

article > table + p::before {
	content:             "Table " counter(table) ": ";
}

article li {
	margin:              1ex 0ex;
}

article iframe {
	display:             block;
	max-width:           100%;
	width:               400pt;
	height:              225pt;
	margin:              15pt auto;
	border:              0pt none;
}

article img {
	display:             block;
	max-width:           100%;
	max-height:          calc(100vh - 30pt);
	margin:              15pt auto;
	border:              0pt none;
}

footer a {
	display:             inline-block;
}

footer a img {
	width:               20pt;
	height:              20pt;
}

.thumb {
	width:               100pt;
	height:              100pt;
}

.left {
	float:               left;
}

.right {
	float:               right;
}

/* optional meta { */

time:empty, .update:empty, .author:empty {
	display:             none;
}

time {
	font-size:           80%;
	display:             inline-block;
}

h1 time {
	display:             table;
}

.update, .author {
	font-style:          italic;
}

.update {
	position:            relative;
	top:                 -10pt;
	font-size:           80%;
	margin:              0pt;
	padding:             0pt;
	display:             inline;
	background:          none;
}

.update::before {
	content:             "Latest update: ";
}

.author::before {
	content:             "Written by: ";
}

.author:empty::before {
	content:             "";
}

.tag {
	font-size:           80%;
	border-radius:       2.5pt;
	font-variant:        small-caps;
	white-space:         nowrap;
	padding:             0pt 2.5pt;
}

article > .tags {
	position:            relative;
	top:                 -10pt;
	display:             inline;
}

article > .tags + * {
	margin-top:          2pt;
}

/* } optional meta */

.note {
	border-radius:       5pt;
	margin:              15pt;
	padding:             5pt;
}

.note h4 {
	border-radius:       5pt 0pt 2.5pt 0pt;
	margin:              -5pt 0pt 0pt -5pt;
	width:               150pt;
	padding:             0pt 5pt;
	font-variant:        small-caps;
}

.good {
	color:               #008000;
}

.bad {
	color:               #800000;
}

/* syntax hilghighting { */

/* taken from: https://github.com/mojombo/tpw/blob/master/css/syntax.css */
.highlight .c { color: #999988; font-style: italic } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
.highlight .k { font-weight: bold } /* Keyword */
.highlight .o { font-weight: bold } /* Operator */
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #999999 } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { font-weight: bold } /* Keyword.Constant */
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
.highlight .m { color: #009999 } /* Literal.Number */
.highlight .s { color: #d14 } /* Literal.String */
.highlight .na { color: #008080 } /* Name.Attribute */
.highlight .nb { color: #0086B3 } /* Name.Builtin */
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
.highlight .no { color: #008080 } /* Name.Constant */
.highlight .ni { color: #800080 } /* Name.Entity */
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
.highlight .nn { color: #555555 } /* Name.Namespace */
.highlight .nt { color: #000080 } /* Name.Tag */
.highlight .nv { color: #008080 } /* Name.Variable */
.highlight .ow { font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mf { color: #009999 } /* Literal.Number.Float */
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
.highlight .sc { color: #d14 } /* Literal.String.Char */
.highlight .sd { color: #d14 } /* Literal.String.Doc */
.highlight .s2 { color: #d14 } /* Literal.String.Double */
.highlight .se { color: #d14 } /* Literal.String.Escape */
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
.highlight .si { color: #d14 } /* Literal.String.Interpol */
.highlight .sx { color: #d14 } /* Literal.String.Other */
.highlight .sr { color: #009926 } /* Literal.String.Regex */
.highlight .s1 { color: #d14 } /* Literal.String.Single */
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #008080 } /* Name.Variable.Class */
.highlight .vg { color: #008080 } /* Name.Variable.Global */
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */

/* comments should be highlighted, not muted */
.highlight .c  { color:      #800000; } /* Comment */
.highlight .cm { color:      #800000; } /* Comment.Multiline */
.highlight .cp { color:      #800000; } /* Comment.Preproc */
.highlight .c1 { color:      #800000; } /* Comment.Single */
.highlight .cs { color:      #800000; } /* Comment.Special */

/* } syntax highlighting */

/* tags page { */
section[id^=tag\:] ul {
	list-style-type:     none;
	padding:             0pt;
}

section[id^=tag\:] a:first-child {
	color:               inherit;
}
/* } tags page */

/* default to sans-serif on low-dpi devices */
@media all and (max-resolution: 240dpi) {
body {
	font-family:         sans-serif;
}
} /* @media all and (max-resolution: 240dpi) */
