/* -*- Mode: CSS; tab-width: 4; indent-tabs-mode: 1; c-basic-offset: 4; -*- */
/* ********** General ********** */

body {
	font-family: Candara, 'Trebuchet MS', Arial, Helvetica, Sans-Serif;
	margin: 0 auto;
	padding: 0;
	color: rgb(0,0,0);
	background-color: rgb(255,255,255);
	font-size: 80%;
	height: 100%; /* Allow div height 100% */
}

tt, pre, code {
	font-family: Consolas, monospace;
	font-size: 0.99em;
}
/* ********** Anchors ********** */
a, .text a {
	text-decoration: none;
	color: rgb(0,50,140);
}
a:link, .text a:link {
	color: rgb(0,50,140);
}

.text a:visited {
	color: rgb(50,0,140);
}

.text a.subtle {
	color: rgb(0,0,0);
}
#dotoc a {
	color: rgb(0,50,140);
}
a:hover, .text a:hover {
	color: rgb(160,20,0);
	text-decoration: underline;
}
a:active, .text a:active {
	color: rgb(160,20,0);
}

#headnav a {
	text-shadow: 0 0 4px rgba(0,50,140,0.3) !important;
}
#headnav a:hover {
	text-shadow: 0 0 4px rgba(160,20,0,0.3) !important;
}

/* ********* General Page Structure ********** */
#topnav, #head, #container, #foot {
	width: 950px;
	margin: 0 auto;
	position: relative;
}

#topnavwrap {
	position: absolute;
	top: 0px;
	width: 100%;
}

#headwrap {
	position: absolute;
	top: 25px;
	width: 100%;
}

#head {
	margin-top: 15px;
	width: 962px;
	
}

#containerwrap {
	margin-top: 150px;
	min-height: 200px;
	position: relative;
}

#footwrap {
	margin: 25px 0 0 0;
}

/* Header specifics */

#headhead {
	border-bottom: 4px solid rgb(200,200,200);
	position: relative;
	height: 38px;
}

#sitetitle {
	margin: 0;
	padding: 0;
	font-size: 48px;
	font-weight: normal;
	position: absolute;
	bottom: -11px;
	left: 6px;
	text-shadow: 0 0 5px rgb(200,200,200);
}
#sitetitle a {
	color: rgb(0,0,0);
	font-weight: normal;
}
#sitetitle img {
	position: relative;
	top: 15px;
	outline: 0;
	border: 0;
}

#siteslogan {
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-weight: normal;
	position: absolute;
	bottom: -2px;
	right: 6px;
	width: 210px;
	text-align: center;
	text-shadow: 0 0 4px rgb(220,220,220);
}
#siteslogan img {
	position: relative;
	top: 7px;
	outline: 0;
}


/* Footer specifics */

#foot p {
	text-align: center;
	margin: 0.2em auto;
	padding: 0;
}
#foot p.poweredby {
	font-size: 0.8em;
}


/* Container specifics */

#maincolumn {
	width: 700px;
}

#maincolumn.fullwidth {
	width: 950px;
}

#navcolumn {
	width: 210px;
	position: absolute;
	top: -50px;
	right: 0;
}


div.clr {
	clear: both;
}

/* ********** General Page Colors ********** */

img { border: 0; }

#topnavwrap {
	border-top: 1px solid rgb(220,220,220);
	border-bottom: 1px solid rgb(220,220,220);
	background-color: rgb(240,240,240);
}


#footwrap {
	border: 1px solid rgb(220,220,220);
	border-left: 0;
	border-right: 0;
	background-color: rgb(240,240,240);
}

/* ********** Top Navig ********** */
#topnav ul, #headnav ul {
	list-style-type: none;
	list-style-position: outside;
	list-style-image: none;
	margin: 0;
	padding: 0;
}
#topnav ul.r li, #headnav ul.r li { float: right; }
#topnav ul.l li, #headnav ul.l li { float: left; }

#topnav ul li, #headnav ul li {
	display: inline;
	margin: 0;
	padding: 0;
}
#topnav ul.r li span, #headnav ul.r li span {
	padding: 0 0 0 5px;
}
#topnav ul.l li span, #headnav ul.l li span {
	padding: 0 5px 0 0;
}

/* Compensate: #head is 6px larger on each side (12 total) */
#headnav {
	margin: 5px 6px 0 6px;
}

/* Above logo: full height of nav stays clickable */
#headnav {
	position: relative;
	z-index: 2;
}

div.article {
	position: relative; /* Allow width: 100% in this column for pos: abs */
	margin: 4em 0;
}
div.comment {
	position: relative; /* Allow width: 100% in this column for pos: abs */
	margin: 1em 0 3em 0;
}
div.article div.date, div.comment div.date {
	margin: 0;
	font-variant: small-caps;
}
div.article h2.title, div.article h1 {
	margin: 0 0 .5em 0;
	font-size: 1.8em;
	font-weight: bold;
}
div.article h1, #commentlist h2, #commentbox h2 {
	text-shadow: 0 0 4px rgba(0,0,0,0.22);
}
div.article .text, div.comment .text {
	font-size: 1.05em;
}
div.article .foot, div.comment .foot, div#paginate {
	margin: 1.5em auto 2em auto;
	background-color: rgb(248,248,248);
	border-top: 1px solid rgb(200,200,200);
	border-bottom: 1px solid rgb(200,200,200);
	font-size: 0.9em;
	color: rgb(60,60,60);
	position: relative;
	padding: 0 0.2em;
}
div.article .foot .left {
	position: absolute;
	display: block;
	z-index: 1;
	left: 0;
	margin-left: .2em;
}
div.article .foot .right {
	position: absolute;
	display: block;
	z-index: 1;
	right: 0;
	top: 0;
	margin-right: .2em;
}
div.article .foot .middle {
	position: relative;
	text-align: center;
	z-index: 0;
}
div.article .foot .line2 {
	clear: both;
	position: relative;
	z-index: 1;
}

#commentlist {
	position: relative;
}
#commentlist .rssicon {
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	line-height: 1.8em; /* same as h1/h2 .title */
}
#commentlist .rssicon img {
	margin-top: 2px;
}

div.article .blogphoto {
	float: right;
	padding: 4px;
	border: 1px solid rgb(220,220,220);
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	margin: 0 0 0.25em 0.75em;
}

#paginate {
	font-size: 1.4em;
}
#paginate > p {
	margin: 1em auto;
	text-align: center;
}
#paginate > p > span {
	padding-right: 4ex;
}

#navcolumn div.h {
	/* simulate <Hn> without being an H for search engines */
	margin: 1.5em 0 0 0;
	font-size: 1.2em;
	font-weight: bold;
	text-shadow: 0 0 4px rgba(0,0,0,0.3);
}
#navcolumn div.h a {
	text-shadow: 0 0 4px rgba(0,50,140,0.3);
}
#navcolumn div.h a:hover {
	text-shadow: 0 0 4px rgba(160,20,0,0.3);
}
#navcolumn p, #navcolumn form, #navcolumn ul, #recentslide, #recentslidetitle {
	margin: 0.3em 0;
}
#navcolumn .sphinxpowered {
	float: right;
	margin: 0.3em 0 0 0;
	padding: 0;
	font-size: 0.7em;
	font-weight: normal;
}
.search {
	/* border for opera, not transparent for ie6 */
	border-bottom: 1px solid rgb(255,255,255);
}
.search input {
	margin: 0;
	padding: 1px 2px;
	width: 165px;
}
.search button {
	float: right;
	margin: 1px 0 0 0;
	width: 30px;
}

#navcolumn ul {
	list-style: disc outside none;
	padding: 0 0 0 4ex;
}

/* "v2": modified by jquery */
#navcolumn ul.v2 {
	list-style: none outside none;
	padding: 0;
}
#navcolumn ul.v2 li {
	margin-left: 2ex;
}
#navcolumn ul.v2 li span {
	position: absolute;
	left: 0;
	text-align: center;
	width: 2ex;
	color: rgb(160,160,160);
}


.article ul, .article ol {
	padding: 0 0 0 2em;
	margin: 0;
}
.article li {
	margin: 0.15em 0;
}
.article ul {
	list-style: disc outside none;
}
/* "v2": modified by jquery */
.article ul.v2 {
	list-style: none outside none;
	padding: 0;
	margin-left: 2em;
	position: relative;
}
.article ul.v2 > li > span:first-child {
	position: absolute;
	left: -2em;
	text-align: right;
	padding-right: 0.5em;
	width: 1.5em;
	color: rgb(160,160,160);
}

.article ol {
	list-style: decimal outside none;
}

.article ol.v2 > li {
	color: rgb(160,160,160);
}
.article ol.v2 > li > span {
	color: rgb(0,0,0);
}

.article dl {
	margin: 1em 0;
}
.article dl dt {
	margin: 0;
	padding: 0;
	font-weight: bold;
}
.article dl dd {
	margin: 0 0 0 2em;
}

.article dd p:first-child, .article li p:first-child {
	margin-top: 0;
}
.article dd p:last-child, .article li p:last-child {
	margin-bottom: 0;
}

.article pre {
	background-color: rgb(250,250,250);
	border: 1px solid rgb(220,220,220);
	padding: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

.article quote, .article pre {
	margin: 1em 1em;
}

.article p, .article table {
	margin: 1em 0;
}

.article table.docutils {
	margin: 1em auto;
	border-collapse: collapse;
	border-spacing: 0;
	caption-side: bottom;
	empty-cells: show;
	
	background-color: rgb(250,250,250);
	border: 1px solid rgb(220,220,220) !important;
	border-left: 0;
	border-right: 0;
	padding: 4px;
}
.article table.docutils td, .article table.docutils th {
	text-align: left;
	padding: 0.1em 0.4em;
	border: 0 !important;
}

.article table.docutils > caption {
	font-size: 0.95em;
	font-style: italic;
	color: rgb(60,60,60);
}
.article table.docutils th {
	font-weight: bold;
	background-color: rgb(240,240,240);
}

.article table.docutils tr.odd > td {
	background-color: rgb(255,255,255);
}

#container table.codehilitetable {
	border-collapse: collapse;
	border-spacing: 0;
	caption-side: bottom;
	empty-cells: show;
	border: 0;
	margin: 1em 1em;
	padding: 0;
	background-color: transparent;
}
#container table.codehilitetable td {
	padding: 0;
}
#container table.codehilitetable pre {
	margin: 0 0.3em;
}
.article .slogan {
	font-size: 0.9em;
	font-style: italic;
	position: absolute;
	top: 5px;
	right: 0;
	border: 1px solid rgb(220,220,220);
	padding: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}


#dotoc {
	border: 1px solid rgb(220,220,220);
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	background-color: rgb(250,250,250);
	padding: 4px;
	margin: 0 0 1em 1em;
	font-size: 0.85em;
	float: right;
	clear: right;
}
#dotoc h2 {
	font-size: 1em;
	margin: 0 0 0.3em 0;
}
#dotoc ol {
	margin-top: 0;
	margin-bottom: 0;
}

#fr-only {
	position: absolute;
	width: 100%;
	top: -25px;
	font-size: 0.9em;
	color: rgb(60,60,60);
	font-style: italic;
}

.article p.ancient_warning {
	font-size: 0.9em;
	font-style: italic;
	border: 1px solid rgb(220,220,205);
	background-color: rgb(250,250,235);
	padding: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

#thanks-for-comment {
	display: none;
	position: absolute;
	width: 482px; /* max: 690, 70%, center */
	top: -3.6em;
	left: 104px;
	border: 1px solid rgb(180,180,150);
	background-color: rgb(220,220,205);
	padding: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	text-align: center;
}

/* Blogroll stuff */
#blogroll p {
	margin: 0;
}
#blogroll p.desc {
	color: rgb(100,100,100);
	font-style: italic;
}

.photocatline {
	margin: 2px 0 0 2em;
	position: relative;
	border-bottom: 1px solid rgb(220,220,220);
}

.photocatline .stats {
	position: absolute;
	right: 0;
}

.photocatline .name {
}

.photocatline .desc {
	margin: 0 0 0 2em;
	color: rgb(160,160,160);
	font-style: italic;
}

.photogrid {
	margin-left: 12px;
}

.photocell {
	position: relative;
	width: 210px;
	margin: 1em 0 1em 15px;
	float: left;
}

/* max img: 210x157 */
.photocell .image {
	width: 210px;
	height: 157px;
	margin: 0;
	padding: 0;
	line-height: 160px;
	text-align: center;
}

.photocell .image img {
	margin: 0 0;
	padding: 0;
	vertical-align: middle;
	display: inline;
}

.photocell .caption, .blogphoto > .caption {
	display: block;
	width: 100%;
	text-align: center;
	margin: 0.8em 0 0 0;
}
.blogphoto > .caption { margin: 0; }

.photocell .caption .photo_size {
	font-size: 0.9em; color: rgb(125,125,125);
	float: right;
}

#lbCaption > div.document {
	margin: 1em 0;
}

.singlephoto {
	position: relative;
}
.singlephoto .photo {
	text-align: center;
}
.singlephoto .fullsizeurl {
	text-align: center;
	margin: 1em 0;
}
.singlephoto div.caption {
	margin: 1em 0;
	
	background-color: rgb(250,250,250);
	border: 1px solid rgb(220,220,220);
	padding: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}
.singlephoto .caption p {
	margin: 1em 0;
}
.singlephoto .caption p:first-child {
	margin-top: 0;
}
.singlephoto .caption p:last-child {
	margin-bottom: 0;
}
.singlephoto table.photodata { width: 100%;}
.singlephoto table.photodata td { vertical-align: top; }
/*.singlephoto table.photodata td.caption { width: 65%; }*/
.singlephoto table.photodata td.exif { width: 35%; }

.singlephoto div.exif {
	margin: 1em 0;
	background-color: rgb(250,250,250);
	border: 1px solid rgb(220,220,220);
	padding: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}
.singlephoto div.exif div.data {
	font-size: 0.9em;
}
.singlephoto .exif .h {
	text-align: center;
	color: rgb(60,60,60);
	border-bottom: 1px solid rgb(220,220,220);
}
.singlephoto .exif .item {
	margin: 0;
}
.singlephoto .exif .tag {
	color: rgb(60,60,60);
}
.singlephoto .exif .val {
	color: rgb(0,0,0);
	padding-left: 1ex;
}

.singlephoto .previous {
	float: left;
}
.singlephoto .next {
	float: right;
}


/* search */
.article .sphinxpowered, .article .sphinxstats {
	position: absolute;
	top: 0;
	font-size: 0.84em;
	padding-top: 0.12em;
}
.article .sphinxpowered {
	right: 0;
	z-index: 1;
}
.article .sphinxstats {
	left: 175px;
	width: 350px;
	text-align: center;
	z-index: 0;
}


div.excerpt {
	margin: 1em 2em 1em 0;
}
div.excerpt span { /* excerpt separator */
	color: rgb(160,160,160);
	padding: 0 5px;
}
div.excerpt strong { /* word highlight */
	background-color: rgb(240,240,240);
	border: 1px solid rgb(200,200,200);
	padding: 0 1px;
	margin: 0 1px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

form#pagesearchform input {
	width: 50%;
}

#paginate {
	position: relative;
}
#paginate > p {
	margin: 0.6em auto;
}
#paginate > p span.page {
	padding: 0 1ex;
}
#paginate > p span.nextprev {
	position: absolute;
	right: 0;
}


/* ****************************** Tag Cloud */
.clouditem { padding-right: 1.3ex; }
.cloudsize-1 a { font-size: 0.9em; color: rgb(125,125,125); }
.cloudsize-2 a { font-size: 1em; color: rgb(100,100,100); }
.cloudsize-3 a { font-size: 1.1em; color: rgb(75,75,75); }
.cloudsize-4 a { font-size: 1.2em; color: rgb(50,50,50); }
.cloudsize-5 a { font-size: 1.3em; color: rgb(25,25,25); }
.clouditem a:hover, #tagcloud .clouditem a:active { color: rgb(160,20,0); }
.clouditem a { white-space: nowrap; }
/* ****************************** Latest photos */
#recentslide { width: 210px; height: 157px; }
#recentslidetitle { text-align: center; }
#photo_tag_cloud { margin: 1em 1em; }

