:root {
	/* Colours */
	--bg-colour: #fcfaf4;
	--link-colour: #a4303f;
	--text-colour: #3c3a36;
	--text-colour-darker: #2c2a26;
	--metadata-colour: #5e5d58;
	--light-line-colour: #dedcd6;

	--hintbox-colour: #fcf1ca;
	--hintbox-border-colour: #e5ddc5;
	--codeblock-colour: #eeece6;
	--codeblock-border-colour: #c4c3bd;

	/* Type scale */
	--size-200: 0.694rem;
	--size-300: 0.833rem;
	--size-400: 1rem;
	--size-500: 1.2rem;
	--size-600: 1.44rem;
	--size-700: 1.728rem;
	--size-800: 2.074rem;
	--size-900: 2.488rem;

	/* Fonts */
	--body-font: Merriweather;
	--sans-font: Merriweather Sans;
	--heading-font: Poppins;
	--mono-font: Source Code Pro;
}

/* Special links */

.title-link a,
a.title-link,
.title-link a:visited,
a.title-link:visited {
	color: inherit;
}

.title-link a:hover,
a.title-link:hover {
	color: var(--link-colour);
	text-decoration: none;
}

/* Nav boxes */

.nav-item {
	margin: 0.5em;
	align-self: flex-end;
	font-size: var(--size-500);
}

.nav-box time {
	color: var(--metadata-colour);
	font-family: var(--sans-font), sans-serif;
	font-size: var(--size-300);
	margin-left: 0.5em;
	margin-right: 0.5em;
}

.nav-box {
	--flow-space: 0;
	display: block;
	margin-bottom: 0.2rem;
	margin-right: 0.2rem;
	border: 2px solid var(--text-colour);
	flex-grow: 1;
	flex-basis: 0;
	min-width: 12em;
	background-repeat: no-repeat;
	background-position: right;
	background-size: cover;
	background-image: linear-gradient(rgba(255,255,255,.25), rgba(255,255,255,.25)),var(--bg);
}

.post-next-prev .nav-index {
	border-radius: 0% !important;
	text-align: center !important;
}

.post-next-prev a:first-of-type {
	border-top-left-radius: 3em;
	border-bottom-left-radius: 3em;
	text-align: right;
}

.post-next-prev a:nth-last-of-type(2) {
	border-top-right-radius: 3em;
	border-bottom-right-radius: 3em;
}

.backdated { border-color: #a00; }

.nav-box-description {
	background-color: var(--bg-colour);
	opacity: 0.95;
	padding: 1em;
	margin: 1em;
	border: 1px solid black;
}

.nav-box-description a {
	font-weight: normal; 
	text-shadow: none;
}

.post-summary {
	padding: 1em;
	flex: 1 1 50%;
}

.post-list-item {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	align-items: stretch;
	border: 2px solid var(--text-colour);
	margin-bottom: 0.2rem;
}

.post-list-item .nav-box {
	border: none;
	margin-right: -0.01em;
	margin-bottom: -0.01em;
}

.post-list-item .nav-item { font-size: var(--size-600); }
.post-list-item:nth-child(odd) { flex-direction: row-reverse; }
.post-list-item:nth-child(odd) .nav-box { text-align: right; }

/* Outlined text */

.nav-item,
.nav-box time,
.post-image {
	font-weight: bold;
	text-shadow:
	       1px 1px 0 var(--bg-colour),
	     -1px -1px 0 var(--bg-colour),  
	      1px -1px 0 var(--bg-colour),
	      -1px 1px 0 var(--bg-colour),
	       1px 1px 0 var(--bg-colour);
}


/* Nav containers */

.site-header, .home-container, .search-container {
	margin-left: auto;
	margin-right: auto;
}

.site-header, .search-container { max-width: 50em; }
.home-container { max-width: 55em; }

.home-container,
.nav-list,
.nav-list-headingless {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	align-items: stretch;
}

.nav-list,
.nav-list-headingless {
	padding: 1rem;
	margin-bottom: 0.5rem;
}

.home-container>:first-child,
.nav-list>:first-child,
.nav-list>.pagination {
	flex: 0 1 100%;
}

.home-container>div { flex: 1 1 30%; }

.home-links {
  margin: auto;
  text-align: center;
}

/* Pagination */

.pagination {
	font-family: var(--sans-font);
	text-align: right;
}

.more-arrow {
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	display:inline-block;
}

.page-number {
	margin: auto;
	text-align: center;
	margin-top: -1.8em;
}

.pagination a,
.more-arrow a:after,
.more-arrow a:hover:after {
	font-size: var(--size-500);
}

.more-arrow a:after { content: "›"; }

.more-arrow a:hover:after { content: "»"; }

/* Site headers */

.site-header {
	margin-top: 1rem;
	text-align: right;
}

.tagline {
	font-style: italic;
	font-size: var(--size-200);
}

.site-title {
	font-size: var(--size-900);
	font-weight: bold;
	padding-bottom: 0.25rem;
}

.logo {
	background: var(--text-colour-darker);
	color: var(--bg-colour);
	display: inline-block;
	padding: 0.4rem;
	margin-bottom: -13px;
}

.logo a:after { content: 'dy'; }

.logo a:hover:after { content: 'davidyat.es'; }


/* Site footer */

footer {
	padding-top: 1.5em;
	margin-bottom: 3em;
	margin-top: 3.5rem;
	font-size: var(--size-300);
	border-top: thin solid var(--light-line-colour);
	color: var(--metadata-colour);
}

footer a, footer a:visited {
	font-weight: bold;
	font-family: var(--heading-font), sans-serif;
	color: inherit;
}

footer p { font-size: 0.8em; text-align: center; margin: 1em auto; }

footer .navlinks { 
	text-transform: lowercase;
	font-size: 1em;
	padding-bottom: 1em;
}

footer .tagline {
	margin-top: 2em;
}


/* Big headings */

.home-section-title, .post-title, .home-links {
	font-weight: bold;
	margin-bottom: 0.4rem;
	margin-top: 2rem;
}

.post-title {
	font-size: var(--size-800);
	display: block;
}

.home-section-title {
	display: block;
	font-family: var(--heading-font);
}

.home-links, .home-section-title {
	font-size: var(--size-700);
	text-transform: lowercase;
	/*font-variant: small-caps;*/
}

/* Post dates */

.post-date {
	font-family: var(--sans-font), sans-serif;
	font-size: var(--size-300);
	color: var(--metadata-colour);
}


/** Tags **/

.tags {
	font-size: var(--size-200);
	list-style: none;
	margin: 0;
	padding-left: 0.5em;
	display: inline;
	font-family: var(--sans-font), sans-serif;
	color: var(--metadata-colour);
}

.tags li {
	display: inline-block;
	position: relative;
	line-height: 2em;
	margin: 1px 2px 1px 2px;
}

.tags li:after { display: inline; }

.tags li:last-child:after {
	content: normal;
	margin: 0;
	padding: 0;
}

.tags a,
.tags a:visited {
	color: inherit;
	border: solid 1px var(--light-line-colour);
	padding: 2px 4px 2px 4px;
}

.tags a:active,
.tags a:hover {
	color: inherit;
	border: solid 1px var(--metadata-colour);
	text-decoration: none;
}

/* Post footer */

.post-footer { margin-top: 6em; }
.post-footer-inner { margin: 0 auto; max-width: 52em; }

.post-footer-inner > summary {
  font-family: var(--heading-font);
  font-weight: bold;
  font-size: var(--size-500)
}

/* Typography */

.post-content > * + * { margin-top: var(--flow-space, 1em); }

body {
  hanging-punctuation: first allow-end last;
	font-family: var(--body-font), serif;
	font-size: var(--size-400);
	color: var(--text-colour);
	background-color: var(--bg-colour);
}

h1,h2,h3,h4,h5,h6,.site-title,.nav-item,.post-title, .home-link { font-family: var(--heading-font), sans-serif; }
h1,h2,h3,h4,h5,h6 {
	font-weight: bold;
	margin: 0;
	padding-top: 0.5em;
}

h1 { font-size: var(--size-700); }
h2 { font-size: var(--size-600); }
h3 { font-size: var(--size-500); }
p, ol, ul, dl { line-height: 1.6; }

.heading-anchor, .heading-anchor:visited {
	color: var(--bg-colour);
	margin-left: -1.2em;
	font-size: 0.6em;
	vertical-align: middle;
}

.heading-anchor:hover {
	color: var(--codeblock-colour);
	text-decoration: none;
}

.post {
	width: clamp(16rem, 86vw, 55rem);
	padding-bottom: 2rem;
	margin-top: 2rem;
	margin-left: auto;
	margin-right: auto;
}

.post-content :is(h1, h2, h3) { --flow-space: var(--size-900); }
.post-content :is(h1, h2, h3) + * { --flow-space: var(--size-300); }
.post-content figure, .post-content figure + * { --flow-space: var(--size-900); }

/* Bigger fonts for bigger screens */
@media (min-width: 45em) {
	:root {
		--size-200: 0.833rem;
		--size-300: 1rem;
		--size-400: 1.1rem;
		--size-500: 1.34rem;
		--size-600: 1.628rem;
		--size-700: 1.974rem;
		--size-800: 2.388rem;
		--size-900: 2.796rem;
	}
}

/* Images */

.post-content img,
.post-content iframe {
	display: block;
	max-width: min(55rem, 100%);
	margin: 0 auto;
}

.post-image {
	margin-top: -6rem;
	border: 2px solid var(--text-colour);
	padding: 14rem 1rem 1rem 1rem;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	background-image: var(--bg);
}

.image-left { margin-top: 0; margin-right: 1em; float: left; max-width: 22em; }
.image-right { margin-top: 0;  margin-left: 1em; float: right; max-width: 22em; }

.post-content > .image-right + p,
.post-content > .image-left + p {
	margin-top: 0;
}

@media (min-width: 1340px) {
	.image-left { margin-left: -7em; }
	.image-right { margin-right: -7em; }

	.hint-box .image-left { margin-left: 0; }
	.hint-box .image-right { margin-right: 0; }
}

.sdworkflow img {
	border: 2px solid purple;
}

/* Image galleries */

.gallery, .gallery-three {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-left: -7%;
}

@media (min-width: 1200px) {
.gallery, .gallery-three { margin-left: -15%; width: 130%; }
}

.gallery figure {
	margin: 0.5em;
	max-width: 25em;
}

.gallery-three figure {
	margin: 0.5em;
	max-width: 20em;
}

/* Links */

a { text-decoration: none; }

a, a:hover {
	-o-transition:.5s;
	-ms-transition:.5s;
	-moz-transition:.5s;
	-webkit-transition:.5s;
	transition:.5s;
}

a, a:visited { color: var(--link-colour); }
a:hover { text-decoration: underline; }

/* Rules */

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid var(--light-line-colour);
	margin: 3em 0;
	padding: 0;
}

/* Blockquotes */

blockquote {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: 1.6em 0 1.6em 1em;
	padding: 0 0 0 1.6em;
	border-left: var(--text-colour) 0.2em solid;
	font-size: var(--size-400);
}

blockquote p {
	margin: 0.8em 0;
	color: var(--text-colour);
	font-size: var(--size-300);
}

blockquote small {
	display: inline-block;
	font-weight: bold;
	font-size: var(--size-300);
	color: var(--text-colour);
}

blockquote small:before { content: '\2014 \00A0'; }

mark {
	background-color: #ffc336;
}

/* Regular lists */
li { margin-bottom: 0.25em; /* breathing space */ }

/* Description lists */
dl {
  display: grid;
  grid-template-columns: 25%, 75%;
  grid-gap: 0.5em;
}

dt {
  font-weight: bold;
  grid-column: 1;
}

@media (min-width: 600px) {
  dd { grid-column: 2; }
}

/* Code */

/* code::before {
	content: attr(data-lang);
	display: block;
	float: right;
	font-size: 0.7em;
} */

code, tt, pre {
	font-family: var(--mono-font), monospace, sans-serif;
	font-size: 0.9em;
	border: 1px solid var(--codeblock-border-colour);
	background-color: var(--codeblock-colour);
}

code, tt {
	padding: 1px 3px;
	white-space: pre-wrap;
	border-radius: 2px;
}

pre {
	box-sizing: border-box;
	margin: 1.6em 0;
	width: 100%;
	padding: 10px;
	white-space: pre-wrap;
	overflow: auto;
	border-radius: 3px;
}

pre code, tt {
	font-size: inherit;
	white-space: -moz-pre-wrap;
	white-space: pre-wrap;
	background: transparent;
	border: none;
	padding: 0;
}

kbd {
	display: inline-block;
	padding: 1px 6px;
	border: var(--metadata-colour) 1px solid;
	color: var(--metadata-colour);
	font-size: var(--size-200);
	font-weight: bold;
	background-color: var(--codeblock-colour);
	border-radius: 4px;
}


/* Tables */

table {
	box-sizing: border-box;
	margin: 1.6em 0;
	width:100%;
	max-width: 100%;
	background-color: transparent;
}

table th, table td {
	padding: 8px;
	line-height: 20px;
	text-align: left;
	vertical-align: top;
	border-top: 1px solid var(--light-line-colour);
}

table caption + thead tr:first-child th,
table caption + thead tr:first-child td,
table colgroup + thead tr:first-child th,
table colgroup + thead tr:first-child td,
table thead:first-child tr:first-child th,
table thead:first-child tr:first-child td {
	border-top: 0;
}

/* Footnotes */

.footnotes, .footnote-preview, sup[id^="fnref:"] > a:first-of-type { font-size: var(--size-200); }

/* stop refs from screwing up the line height */
sup[id^="fnref:"] {
	vertical-align: top;
	position: relative;
	line-height: 1em;
}

.footnotes ol li { margin-bottom: 0.5em; }

/* Inline hint box */

.hint-box {
	border: 2px var(--hintbox-border-colour) solid;
	background-color: var(--hintbox-colour);
	padding: 0 1em 0 1em;
	display: inline-block;
	font-family: var(--sans-font), sans-serif;
	font-size: var(--size-300);
	width: 95%;
}

/* Footnote previews */

@media only screen and (min-width: 1260px) {
	.footnote-preview {
		width: 18%;
		z-index: 10;
		background-color: var(--bg-colour);
		padding: 0.5em;
	}

	.footnote-preview-right {
		margin-right: -22%;
		float: right;
	}

	.footnote-preview-left {
		margin-left: -22%;
		float: left;
	}
}

/* Accordions */

.post-content > details > summary {
	font-style: italic;
}

/* Table of Contents */

nav#TableOfContents ul {
	list-style: none;
	font-weight: bold;
}

nav#TableOfContents ul li a {
	text-transform: none;
	font-family: var(--heading-font);
	color: var(--text-colour);
}

nav#TableOfContents ul li a:hover {
	color: var(--link-colour);
	text-decoration: none;
}

/* Captions */

figure { margin: 0 0 2em 0; }

.caption, figcaption {
	text-align: center;
	font-style: italic;
	font-size: var(--size-300);
	margin-top: -0.5em;
}

figcaption em, figcaption i {
	font-style: normal;
}

/* Fiction */

/* drop caps */
.story-collection > h1 + p::first-letter,
.story-collection > .story-section-break + p::first-letter,
.story-content > .story-section-break + p::first-letter,
.story-content > p:first-of-type:first-letter {
	float: left;
	font-size: 2.6em;
	font-weight: bold;
	font-style: normal;
	margin-right: 8px;
	margin-top: -8px;
	margin-bottom: -8px;
	letter-spacing: -.03em;
}

@supports (-moz-appearance:none) {
    .story-content > p:first-of-type:first-letter {
      padding-top: 6px;
    }
}

.story-beginning {
  display: inline-block;
  font-variant: small-caps;
  font-size: var(--size-500);
  letter-spacing: 0.03em;
  text-transform: lowercase;
  font-weight: 600;
}

.story-content { margin-top: 3rem; }

.story-section-break {
	text-align: center;
	font-weight: bold;
	font-size: var(--size-600);
	margin-top: 2em;
	margin-bottom: 2em;
}

.story-in-universe {
	text-align: center;
	font-weight: bold;
	font-size: var(--size-500);
	font-family: var(--mono-font);
	margin-top: 2em;
	margin-bottom: 2em;
}

/* Projects page */

.project-downloads {
	list-style: none;
	margin: 0;
	padding-left: 0;
	font-weight: bold;
}

.project-unsupported {
	border-color: #a00;
	background-color: #ddd;
}

.project-unsupported-label {
	color: #c00;
	opacity: 0.6;
	font-family: var(--sans-font), sans-serif;
	text-transform: uppercase;
	transform: rotate(3deg);
	border: 0.2rem solid #c00;
	display: inline-block;
	font-size: var(--size-600);
	font-weight: bold;
	padding: 0.25rem 0.5rem;
	border-radius: 5px;
}

.project-system {
	font-family: var(--sans-font), sans-serif;
	text-align: right;
	margin-top: 1em;
	font-weight: bold;
}

.project-release {
	font-style: italic;
	margin-top: 1em;
}

/* Links page */

.nav-list-links {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(20em, 1fr));
	grid-gap: 0.5em;
	max-width: 90em;
	margin: 0 auto;
}

.link-title {
	vertical-align: bottom;
  display: flex;
	background-repeat: no-repeat;
	background-position: right;
	background-size: cover;
	background-image: linear-gradient(rgba(255,255,255,.45), rgba(255,255,255,.45)),var(--bg);
	font-size: var(--size-500);
}

/* Inputs */

.field {
	padding: 5px;
	font-family: var(--mono-font), monospace;
	width:90%;
	background-color: inherit;
	border: none;
	border-bottom: 1px solid var(--metadata-colour);
}

.field:focus {
	border-bottom: 1px solid var(--text-colour);
	outline: none;
	outline-offset: 0;
}

.button {
	font-family: var(--sans-font);
	text-transform: lowercase;
	font-size: var(--size-300);
	color: var(--metadata-colour);
	background-color: inherit;
	border: 1px solid var(--metadata-colour);
	cursor: pointer;
	padding: 0.4em;
}

.button:hover {
	border: 1px solid var(--text-colour);
	text-decoration: none;
}

/* 404 page */

.fourohfour-outer { 
	margin: 0 auto;
	display: block;
}

.fourohfour-inner {
	position: fixed;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
}

.fourohfour-title {
	font-size: 10em;
	font-family: var(--heading-font), sans-serif;
	font-weight: bold;
	margin: 8px;
}

.fourohfour-description {
	font-family: var(--sans-font), sans-serif;
	position: fixed;
	top: 70%;
	right: 2%;
	font-size: var(--size-900);
}

.fourohfour-link {
	font-family: var(--sans-font), sans-serif;
	position: fixed;
	top: 95%;
	left:44%;
	font-size: var(--size-900);
}

/* Print stylesheet */

@media print {
	header, .post-footer, footer, .email-reply, .tags { display: none; }

	body {
		background: transparent;
	}

	.post-content, .story-content {
		column-width: 15em;
		column-gap: 1.5em;
		font-size: 12pt;
		text-align: justify;
	}

	h1 { font-size: 20pt; }
	h2 { font-size: 17pt; }
	h3 { font-size: 14pt; }

	h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
		break-after: avoid;
	}

	p, li, blockquote, figure, img {
    page-break-inside: avoid;
    break-inside: avoid;
	}

	figure {
		width: 85%;
		margin: 0 auto;
		float: none !important;
	}

	.footnotes, figcaption { font-size: 0.8em; }
	.hint-box, code, kbd, pre { font-size: 0.9em; }
	pre { text-align: left; }
	blockquote p { font-size: 11pt; }
	blockquote p small { font-size: 11pt; }
}

@page {
	@bottom-right-corner {
		content: counter(page);
	}
}

/* Syntax highlighting /*

/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
/* LineTable */ .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
/* LineHighlight */ .chroma .hl { background-color:#d8d8d8 }
/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f }
/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f }
/* Line */ .chroma .line { display:flex; }
/* Keyword */ .chroma .k { color:#007020;font-weight:bold }
/* KeywordConstant */ .chroma .kc { color:#007020;font-weight:bold }
/* KeywordDeclaration */ .chroma .kd { color:#007020;font-weight:bold }
/* KeywordNamespace */ .chroma .kn { color:#007020;font-weight:bold }
/* KeywordPseudo */ .chroma .kp { color:#007020 }
/* KeywordReserved */ .chroma .kr { color:#007020;font-weight:bold }
/* KeywordType */ .chroma .kt { color:#902000 }
/* Name */ .chroma .n {  }
/* NameAttribute */ .chroma .na { color:#4070a0 }
/* NameBuiltin */ .chroma .nb { color:#007020 }
/* NameBuiltinPseudo */ .chroma .bp {  }
/* NameClass */ .chroma .nc { color:#0e84b5;font-weight:bold }
/* NameConstant */ .chroma .no { color:#60add5 }
/* NameDecorator */ .chroma .nd { color:#555;font-weight:bold }
/* NameEntity */ .chroma .ni { color:#d55537;font-weight:bold }
/* NameException */ .chroma .ne { color:#007020 }
/* NameFunction */ .chroma .nf { color:#06287e }
/* NameFunctionMagic */ .chroma .fm {  }
/* NameLabel */ .chroma .nl { color:#002070;font-weight:bold }
/* NameNamespace */ .chroma .nn { color:#0e84b5;font-weight:bold }
/* NameOther */ .chroma .nx {  }
/* NameProperty */ .chroma .py {  }
/* NameTag */ .chroma .nt { color:#062873;font-weight:bold }
/* NameVariable */ .chroma .nv { color:#bb60d5 }
/* NameVariableClass */ .chroma .vc {  }
/* NameVariableGlobal */ .chroma .vg {  }
/* NameVariableInstance */ .chroma .vi {  }
/* NameVariableMagic */ .chroma .vm {  }
/* Literal */ .chroma .l {  }
/* LiteralDate */ .chroma .ld {  }
/* LiteralString */ .chroma .s { color:#4070a0 }
/* LiteralStringAffix */ .chroma .sa { color:#4070a0 }
/* LiteralStringBacktick */ .chroma .sb { color:#4070a0 }
/* LiteralStringChar */ .chroma .sc { color:#4070a0 }
/* LiteralStringDelimiter */ .chroma .dl { color:#4070a0 }
/* LiteralStringDoc */ .chroma .sd { color:#4070a0;font-style:italic }
/* LiteralStringDouble */ .chroma .s2 { color:#4070a0 }
/* LiteralStringEscape */ .chroma .se { color:#4070a0;font-weight:bold }
/* LiteralStringHeredoc */ .chroma .sh { color:#4070a0 }
/* LiteralStringInterpol */ .chroma .si { color:#70a0d0 }
/* LiteralStringOther */ .chroma .sx { color:#c65d09 }
/* LiteralStringRegex */ .chroma .sr { color:#235388 }
/* LiteralStringSingle */ .chroma .s1 { color:#4070a0 }
/* LiteralStringSymbol */ .chroma .ss { color:#517918 }
/* LiteralNumber */ .chroma .m { color:#40a070 }
/* LiteralNumberBin */ .chroma .mb { color:#40a070 }
/* LiteralNumberFloat */ .chroma .mf { color:#40a070 }
/* LiteralNumberHex */ .chroma .mh { color:#40a070 }
/* LiteralNumberInteger */ .chroma .mi { color:#40a070 }
/* LiteralNumberIntegerLong */ .chroma .il { color:#40a070 }
/* LiteralNumberOct */ .chroma .mo { color:#40a070 }
/* Operator */ .chroma .o { color:#666 }
/* OperatorWord */ .chroma .ow { color:#007020;font-weight:bold }
/* Punctuation */ .chroma .p {  }
/* Comment */ .chroma .c { color:#60a0b0;font-style:italic }
/* CommentHashbang */ .chroma .ch { color:#60a0b0;font-style:italic }
/* CommentMultiline */ .chroma .cm { color:#60a0b0;font-style:italic }
/* CommentSingle */ .chroma .c1 { color:#60a0b0;font-style:italic }
/* CommentSpecial */ .chroma .cs { color:#60a0b0;background-color:#fff0f0 }
/* CommentPreproc */ .chroma .cp { color:#007020 }
/* CommentPreprocFile */ .chroma .cpf { color:#007020 }
/* Generic */ .chroma .g {  }
/* GenericDeleted */ .chroma .gd { color:#a00000 }
/* GenericEmph */ .chroma .ge { font-style:italic }
/* GenericError */ .chroma .gr { color:#f00 }
/* GenericHeading */ .chroma .gh { color:#000080;font-weight:bold }
/* GenericInserted */ .chroma .gi { color:#00a000 }
/* GenericOutput */ .chroma .go { color:#888 }
/* GenericPrompt */ .chroma .gp { color:#c65d09;font-weight:bold }
/* GenericStrong */ .chroma .gs { font-weight:bold }
/* GenericSubheading */ .chroma .gu { color:#800080;font-weight:bold }
/* GenericTraceback */ .chroma .gt { color:#04d }
/* GenericUnderline */ .chroma .gl { text-decoration:underline }
/* TextWhitespace */ .chroma .w { color:#bbb }
