body {
	font-family: "Droid Serif", Georgia, serif;
}
[lang=zh-hant], [lang=zh-HK], [lang=zh-TW] {
	font-family: "Ming (for ISO10646)", SimSun, MingLiU, serif;
}
h1 {
	/* font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; */
	font-style: inherit;
	text-transform: uppercase;
	font-size: inherit;
	color: #808080;
}
h2 {
	font-size: 123.6%;
	font-weight: bolder;
	color: #a16501 /* s5 */;
}
h3, h4, h5, h6 {
	color: #a16501 /* s5 */;
}
h1 {
	font-family: "Droid Sans" /*TimesToGo*/, "Helvetica Neue", Arial, Helvetica, sans-serif;
}
h2, h3, h4, h5, h6 {
	font-family: "Droid Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
}
h2+h3 {
	margin-top: -12px;
}
sup, sub {
	font-size: 61.8%;
	line-height: 50%; /* This is of course wrong, but it is impossible to control the real leading in CSS */
}
caption, .caption {
	font-family: "Droid Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-style: inherit;
	text-transform: uppercase;
	font-size: 70.7%;
	line-height: 161.8%;
}
caption *:lang(zh-hant), .caption *:lang(zh-hant) {
	font-family: "Hiragino Kaku Gothic Pro", "MS PGothic", "MS Gothic", sans-serif;
	font-style: inherit;
}
ul, ol {
	margin-left: 1.25em;
}
a {
	text-decoration: inherit;
	border-bottom-style: inherit;
}
a:hover {
	text-decoration: underline;
}
cite + .f, em + .f, i + .f {
	font-style: italic;
}
b + .f {
	font-weight: bold;
}
pre i {
	font-family: "Droid Serif", Georgia, serif;
	color: green;
}
.comments {
	margin-top: 2em;
	font-family: "Droid Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-style: inherit;
	font-size: 80.9%;
}
.comment-count {
	font-family: "Droid Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-style: inherit;
	font-size: 61.8%;
	white-space: nowrap;
	background-color: #d1c9df /* y21 */ /* #005698 /* from typeimg */;
	color: white;
	padding-top: 2px;
	padding-bottom: 1px;
	border-radius: 3px;
}
.comment-count a {
	color: inherit;
	text-decoration: none;
	border: 0;
	padding-left: 0.5em;
	padding-right: 0.5em;
}
.comment-count:hover {
	background-color: black;
}
.comment-count a:hover {
	text-decoration: underline;
}
#recentcomments {
	font-size: 80.9%;
	line-height: 18px; /* FIXME - this breaks the grid, but the grid is probably broken in any case */
}
.license {
	font-size: 61.8%;
	width: 80.9%;
}
.license br {
	display: none;
}
.license img {
	float: left;
	padding-right: 12px;
	position: relative;
	top: 8px;
}
.non-gui {
	position:absolute;
	left:-10000px;
	top:auto;
	width:1px;
	height:1px;
	overflow:hidden;
}
.sysload {		/* for DEBUG purposes =p */
	font-size: 80.9%;
}
address {
	color: white;
	background-color: #a0a0a0;
	font-family: "Droid Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-style: inherit;
	font-size: 80.9%;
	padding-left: 0.5em;
	padding-right: 0.5em;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	margin-bottom: -3px;
	margin-right: 0.5em;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
//.container {
//	background: url("images/testbg.png") center repeat-y fixed;
//}
.nav {
	font-family: "Droid Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 80.9%;
	line-height: 24px;
}
.nav a {
	position: relative;
	color: white;
	background-color: #f4aa29 /* c5 */;
	padding-top: 1em;
	padding-left: 0.5em;
	padding-right: 0.5em;
	padding-bottom: 0.25em;
	text-decoration: none;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}
.nav a:hover {
	color: white;
	background-color: black;
	text-decoration: underline;
}
.nav-rev {
	float: right;
}
.nav-rev-sep {
	display: none;
}
.nav-rev-sep .nav-sep {
	position: absolute;
	right: 8px;
}
.nav-sep {
	color: #c0c0c0;
}
.nav-sep:before, .nav-sep:after {
	content: "\A0\A0\A0";
}
.pagehead {
	height: 240px; /* NOTE HACK - see .pagehead + .row rule */
	margin-bottom: 12px;
}
.pagehead blockquote,
.pagehead .tagline {
	border-left: 0;
	border: 1px solid #c0c0c0;
	border-top-left-radius: 1em;
	border-top-right-radius: 1em;
	border-bottom-right-radius: 1em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-right: 1em;
}
.pagehead .tagline {
	margin-top: 18px; /* FIXME */
	margin-left: -1em;
	padding-left: 1em;
}
.pagehead img {
	position: absolute;
	margin-left: -320px;
	margin-top: -24px;
}
.pagehead .byline {
}
.pagehead * {
	color: #c0c0c0;
}
.pagehead hr {
	position: relative;
	margin-top: -12px;
	border-top: 2px solid orange;
	border-bottom: none;
	border-left: none;
	border-right: none;
}
.pagehead + .row {
	padding-top: 12px; /* NOTE HACK */
}
.share {
	display: inline;
}
.fb-like {
	display: inline-block;
}
.fb-like,
.fb-like iframe {
	position: relative;
	top: 3px;
}
.tags {
	font-size: 80.9%;
	color: #808080;
	line-height: 36px;
	text-align: center;
}
.cloudsize0, .cloudsize1, .cloudsize2, .cloudsize3, .cloudsize4,
.cloudsize5, .cloudsize6, .cloudsize7, .cloudsize8, .cloudsize9, .cloudsize10 {
	line-height: 12px;
}
.cloudsize0 {
	font-size: 6pt;
}
.cloudsize1 {
	font-size: 6.89pt;
}
.cloudsize2 {
	font-size: 7.78pt;
}
.cloudsize3 {
	font-size: 8.67pt;
}
.cloudsize4 {
	font-size: 9.56pt;
}
.cloudsize5 {
	font-size: 10.44pt;
}
.cloudsize6 {
	font-size: 11.33pt;
}
.cloudsize7 {
	font-size: 12.22pt;
}
.cloudsize8 {
	font-size: 13.11pt;
}
.cloudsize9, .cloudsize10 {
	font-size: 14pt;
}
.byline .name,
/*.byline cite,*/
.byline .ref {
	white-space: nowrap;
}
.footer {
	position: relative;
	margin-top: 2em;
}
.footer a[type="application/rss+xml"]:hover img {
	content: url('images/feed-icon-16x16-grey.png');
	width: 16px;
	height: 16px;
	z-index: 100000;
}
.footer img { /* I don't know why we need this */
	display: inline;
	margin: 0;
}
.footer a[type="application/rss+xml"] img {	/* I don't know why we need these rules */
	position: relative;
	top: 0.35em;
	width: 16px;
	height: 16px;
}
.footer img.copyright {
	position: relative;
	top: 3px;
	display: inline; /* I don't know why I need to do this, and even now I don't know if it will work =p */
}
.footer iframe {
	display: inline;
	margin: 0;
}
.footer-content {
	position: fixed;
	bottom: 0;
	z-index: 300000; /* Make sure the footer content (specifically the share buttons) appears over the whiteout */
}
.footer-buttons-bg {
	position: fixed;
	bottom: 0;
	padding: 0;
	margin: 0;
	width: 100%;
	height: 36px;
	background: url("images/footer-gradient.png") repeat-x bottom fixed;
	z-index: 200000; /* Make sure the whiteout appears over the normal content (specially the Disqus comments) */
}
.footer-date.footer-stamp-updated {
	font-weight: bold;
}
.table th {
	color: white;
	background-color: #a0a0a0;
	padding-left: 0.5em;
	padding-right: 0.5em;
}
.table th+th {
	margin-left: 3pt;
}
.table tr.o {
	background-color: #f0f0f0;
}
.table tr.e {
	background-color: #e8e8e8;
}
pre + h2,
pre + p,
.table + p {
	margin-top: 24px;
}
.TeX-e {
	text-transform: uppercase;
	position: relative;
	margin-left: -0.1em;
	top: 0.25em;
}
.LaTeX-a {
	text-transform: uppercase;
	position: relative;
	margin-left: -0.25em;
	bottom: 0.25em;
	font-size: 80.9%;
}
.cta {
	background-color: #fff6c7 /* y7 */ /* #fdd6b3 /* y5 */;
	padding-top: 24px;
	border-radius: 5px;
}
.cta, .widget {
	padding-left: 0.5em;
	padding-right: 0.5em;
	padding-bottom: 12px;
	margin-bottom: 36px;
}
.widget, .dsq-widget {
	padding-top: 12px;
	background-color: #f8f8f8;
	z-index: 100;
	border-radius: 5px;
}
.onecol .widget:first-child, .twocol .widget:first-child, .threecol .widget:first-child,
.fourcol .widget:first-child, .fivecol .widget:first-child, .sixcol .widget:first-child,
.sevencol .widget:first-child, .eightcol .widget:first-child, .ninecol .widget:first-child,
.tencol .widget:first-child, .elevencol .widget:first-child, .twelvecol .widget:first-child {
	margin-top: -12px;
}
.cta + .cta, .cta + .widget, .widget + .widget, .widget + .cta {
	margin-top: -18px;
}
.hidden {
	display: none;
}
.protest {
	width: 61.8%;
	padding: 3em;
	background: black;
	color: white;
	z-index: 999999;
}
.protest h1,
.protest blockquote {
	color: white;
}
.protest a {
	color: #c0c0c0;
}
/* twitter hacks */
#custom-tweet-button a {
	display: block;
	padding: 2px 5px 2px 20px;
	background: url('http://a4.twimg.com/images/favicon.gif') left center no-repeat;
	border: 1px solid #ccc;
}
.twitter-share-button {
	position: relative;
	top: 6px;
}

table.html-structure-illustration[border] + table.html-structure-illustration[border] {
	margin-top: 1em;
}
table.html-structure-illustration[border] table[border] {
	width: 100%;
	margin: 1em 0 0.5em 0;
}
table.html-structure-illustration[border] caption:before {
	content: " <";
}
table.html-structure-illustration[border] caption:after {
	content: "> ";
}
table.html-structure-illustration[border] caption {
	text-align: left;
	background-color: black;
	color: white;
	display: inline-block;
	margin-bottom: -4px;
}
table.html-structure-illustration[border] tbody {
	margin: 0;
}
table.html-structure-illustration[border] td {
	padding: 0.5em;
	border: 1px dashed black;
}

/* Workarounds for HTML brain damage */
div.p + div.p {
	text-indent: 2em; /* standard paragraph indent for Chinese */
}
div.blockquote {
	margin: 18px 4em 18px 4em; /* FIXME - should be standard leading */
	color: #747474;
}

/* Media queries */
@media print {
	a { color: inherit; text-decoration: inherit }
	.comment-count { display: none }
	.comments noscript { display: none }
	.dsq-brlink { display: none }
	#dsq-content #dsq-global-toolbar { display: none }
	#dsq-content #dsq-like-tooltip { display: none }
	#dsq-content #dsq-new-post { display: none }
	#dsq-content #dsq-options { display: none }
	.footer address { padding-left: 0 }
	h1, h2, h3, h4, h5, h6 { color: inherit }
	.nav { display: none }
	.share { display: none }
	.table { border-collapse: collapse }
	.table tr th { color: inherit }
}
@media handheld, only screen and (max-width: 767px) {
	.collapsable {
		display: none;
	}
	.footer {
		position: inherit;
	}
	.footer.last {
		margin-top: 0;
	}
	.footer-content {
		position: inherit;
	}
	.footer-buttons-bg {
		background: none;
	}
	.nav {
		float: left;
	}
	.nav-rev-sep, .nav-rev-sep .nav-sep {
		position: static;
		display: inline;
	}
	.nav-rev {
		float: left;
	}
	.pagehead {
		height: inherit;
	}
	.protest {
		left: auto;
		position: absolute !important; /* override "fixed" */
	}
}
