html
{
	text-align:center;
	margin:0;
	padding:0;
}

body
{
	width:960px;
	margin:0 auto;
}

body a:link, a:visited
{
	text-decoration:underline;
}

body a:hover, a:active
{
	text-decoration:underline;
}

img
{
	border:0px;
}

hr
{
	height:1px;
	border-bottom:none;
}

.hidden
{
	border:0;
	display:none;
}

#root
{
	text-align:center;
	padding-left:17px;
	padding-right:19px;
	margin:0;
	min-height:700px;
}

#container
{
	margin:0;
	padding:70px 10px 0 10px;
	text-align:left;
}

#header
{
	display:table;
	width:691px;
	text-align:left;
	vertical-align:middle;
	height:50px;
	margin:0;
}

#content
{
	text-align:left;
	width:691px;
	float:left;
}

#content-header
{
	height:36px;
	vertical-align:bottom;
	text-align:right;
	padding:0px 15px 2px 0;
}

#content-body
{
	padding:3px 13px 15px 14px;
}

#content-body .item
{
	margin-bottom:2px;
}

#content-body .title
{
	margin-top:3px;
	margin-bottom:0;
}

#content-footer
{
	height:36px;
	line-height:18px;
	padding:3px 20px 0 0;
	text-align:right;
	vertical-align:top;
}
#content-footer a
{
	text-decoration:none;
}

#calendar-container
{
	margin-bottom:1em;
}

.loading
{
	display:block;
	background-color:white;
	padding:3px;
	text-align:center;
}

#calendar-container td.calcell.restricted
{
	text-decoration:none;
}

#sidebar
{
	float:right;
	width:189px;
	text-align:left;
	padding:0;
	overflow:hidden;
}

#sidebar h3
{
	margin:0 10px 0 10px;
	padding:0;
	text-align:left;
}

#sidebar h2
{
	margin:0px 10px 0 10px;
	padding:10px 0 0 0;
	text-align:left;
	border-bottom:1px solid;
}

#sidebar h2 a
{
	text-decoration:none;
}

#title
{
	margin:0;
	padding:0;
}

#tagline
{
	margin:0;
	padding-left:0.5em;
	font-size:130%;
}

#footer
{
	display:block;
	text-align:center;
	font-weight:bold;
	margin:0;
	padding:0;
	padding-top:2em;
	height:90px;
}


/* -----------------------------------------------------
portfolio
 ----------------------------------------------------- */
.portfolio .item
{
	margin:0 0 1em 0;
	padding:1em 0 0 1em;
	font-size:110%;
	opacity:0.85;
}

.portfolio .item h2
{
	padding-top:0;
	margin-top:0;
}

.portfolio .item p
{
	text-align:justify;
}

.portfolio .item .main-image
{
	display:block;
	width:260px;
	height:300px;
	text-align:center;
	vertical-align:middle;
	float:right;
	margin-left:2em;
}

/* -----------------------------------------------------
navigation
 ----------------------------------------------------- */

.nav-list, .nav-list ul, .nav-list li
{
	display:inline;
	list-style-type:none;
	margin:0;
	padding:0;
}

.nav-list a:link, .nav-list a:hover, .nav-list a:visited, .nav-list a:active
{
	text-decoration:none;
}

#nav-main
{
	padding:20px 0 0 20px;
	text-align:left;
	font-size:120%;
	font-weight:bold;
	vertical-align:middle;
	width:680px;
}

#nav-main li
{
	display:block;
	float:left;
	width:100px;
	height:30px;
	line-height:30px;
	margin-right:10px;
	vertical-align:middle;
	text-align:center;
}

#nav-main a
{
	display:block;
	width:100px;
	height:30px;
}

#nav-language, #nav-theme
{
	display:inline;
}

#nav-footer li, #nav-language li
{
	border-left: 1px solid #000;
	line-height: 1.1em;
	margin: 0 .5em 0 -.5em;
	padding: 0 .5em 0 .5em;
}

#nav-footer .first, #nav-language .first
{
	border:none;
}

.gadget-list
{
	text-align:center;
}

.gadget-item
{
	margin-bottom:10px;
}

.delicious
{
	text-align:left;
}

.delicious ul, .delicious li
{
	margin:0;
	padding:0 0 0 5px;
}

#affiliate-list
{
	text-align:center;
}

.affiliate-item
{
	margin:5px;
}

.theme-item
{
	display:inline;
}

.pagenation
{
	display:block;
	width:100%;
	text-align:left;
}

.pagenation .current
{
	font-weight:bold;
}

#full-page
{
	margin:30px 0 2em 0;
	padding:1em;
	border:1px solid black;
	background:white;
}

.system-message
{
	border:1px solid black;
	text-align:center;
	width:680px;
	margin:0 auto;
	padding:1em;
}

.system-message h1
{
	margin:0;
	padding:0;
	display:inline;
	vertical-align:bottom;
}

.system-message p
{
	margin:1em;
	font-weight:bold;
}

.component
{
	display:block;
	text-align:center;
	margin-top:0.5em;
}

.component .error
{
	border:1px solid red;
	background:#FFEEEE;
	color:red;
	padding:5px;
}

.component .info
{
	border:1px solid blue;
	background:#EEEEFF;
	color:blue;
	padding:5px;
}

.component .warning
{
	border:1px solid #FFEE00;
	background:#FFFFEE;
	color:black;
	padding:5px;
}

#info h1
{
	color:blue;
}

#info
{
	background:#efefff;
	border:1px solid blue;
}

#warning h1
{
	color:orange;
}

#warning
{
	background:#ffffef;
	border:1px solid orange;
}

#error h1
{
	color:red;
}

#error
{
	background:#ffefef;
	border:1px solid red;
}

/* -----------------------------------------------------
photo module
 ----------------------------------------------------- */
#albums
{
	display:table;
	text-align:center;
}

#albums .item
{
	float:left;
	display:table-row;
	text-align:center;
	margin:0 5px 10px 5px;
	width:196px;
}

#nav-photo
{
	padding:10px 5px 10px 5px;
	text-align:center;
	margin-bottom:2px;
}

#nav-photo img
{
	border:1px solid #555;
	padding:3px;
}

#nav-photo .current
{
	background-color:#444;
}

#photos
{
	display:table-cell;
}

#photos .item
{
	float:left;
	padding:0;
	display:table-row;
	text-align:center;
	vertical-align:middle;
	margin:0 2px 4px 2px;
	width:160px;
	height:160px;
}

#albums .thumb
{
	margin-bottom:10px;
}

#photos .thumb
{
	vertical-align:middle;
	text-align:center;
}

#photo
{
	text-align:center;
	background:black;
	margin-bottom:3px;
}

.caption
{
	color:white;
	padding:10px;
	width:99%;
	text-align:center;
}

#album-info
{
	text-align:center;
	width:100%;
}

#album-info p
{
	text-align:justify;
}


#calendar-container td.calcell.today
{
	background-color:#b3d4ff;
}

