/*
	Main style sheet for melnichenko.name website.

	Copyright 2008-2009, Nikita Melnichenko.
	Based on terrafirma1.0 design by nodethirtythree (http://www.nodethirtythree.com).
	License: GPL-2 (http://opensource.org/licenses/gpl-license.php)
*/

*
{
	padding: 0px;
	margin: 0px;
}

html
{
	height: 100%;
}

body
{
	background: #F9F9F7 url('images/bg.png') repeat-x;
	font-size: 15px;
	font-family: "trebuchet ms", helvetica, sans-serif;
	color: #8C8C73;
	line-height: 18px;
	height: 100%;
}

a
{
	color: #cd4d18;
	text-decoration: underline;
}

a:hover
{
	text-decoration: none;
}

a.email
{
	color: #64f;
}

pre
{
	overflow: auto;
	margin-bottom: 14px;
}

p
{
	margin-bottom: 14px;
	text-align: justify;
}

p.sign
{
	margin-bottom: 0px;
	font-style: italic;
	font-size: 13px;
}

blockquote p
{
	padding: 0 0 0 50%;
	margin-bottom: 14px;
	font-style: italic;
	text-align: right;
}

img.post_icon, img.contact_icon
{
	position: relative;
	top: -2px;
	background: url('images/bg-post-icon.png') no-repeat;
	width: 80px;
	height: 80px;
	padding: 8px;
	float: left;
	margin: 0px 14px 3px 0px;
}

img.contact_icon
{
	margin-left: 20px;
}

img.about
{
	position: relative;
	top: -2px;
	left: 11px; /* centered: (250 - 2 * 10 - 2 * 8 - 192) / 2 */
	background: url('images/bg-about-image.png') no-repeat;
	width: 192px;
	height: 96px;
	padding: 8px;
	margin-bottom: 2px;
	display: block;
}

img.blog_photo
{
	padding: 8px;
	margin: 0px auto 14px auto;
	display: block;
}

img.blog_photo.horizontal
{
	background: url('images/bg-post-photo-500x375.png') no-repeat;
	width: 500px;
	height: 375px;
}

img.blog_photo.vertical
{
	background: url('images/bg-post-photo-375x500.png') no-repeat;
	width: 375px;
	height: 500px;
}

img.blog_photo.horizontal-2x3
{
	background: url('images/bg-post-photo-525x350.png') no-repeat;
	width: 525px;
	height: 350px;
}

img.blog_photo.vertical-2x3
{
	background: url('images/bg-post-photo-350x525.png') no-repeat;
	width: 350px;
	height: 525px;
}

img.captcha
{
	padding: 2px 0px;
	display: block;
}

ul
{
	list-style: square inside;
}

ul.linklist
{
	list-style: none;
}

ul.rsslist li
{
	list-style: none;
	padding-left: 20px;
	padding-bottom: 3px;
	background-repeat: no-repeat;
	background-position: 0px 2px;
	background-image: url('images/rss.png');
}

ul.text
{
	margin-bottom: 14px;
}
ul.text li
{
	text-align: justify;
	margin-bottom: 5px;
}

div.contact
{
	clear: both;
	position: relative;
	line-height: 80px;
}

div.contact noscript p
{
	line-height: 15px;
}

div.message
{
	margin-bottom: 10px;
}

div.message p
{
	text-align: center;
	margin-bottom: 2px;
}

div.message.error
{
	color: #8b0000; /* darkred */
	background-color: #ffc0cb; /* pink */
	border: 1px solid red;
}

div.message.contacts_notice
{
	clear: both;
	color: #8b0000; /* darkred */
	padding: 30px 0px 10px 0px;
	margin-bottom: 0px;
}

div.message.ok
{
	color: #008b00; /* darkgreen */
	background-color: #c0ffcb;
	border: 1px solid green;
}

h3
{
	position: relative;
	top: 4px;
	line-height: 25px;
	color: #656551;
	letter-spacing: -1px;
	background: url('images/post-header-line.gif') bottom repeat-x;
	margin-bottom: 20px;
}

div.post div.h3
{
	width: 425px;
}

div.post div.header
{
	background: url('images/post-header-line.gif') bottom repeat-x;
}

div.post div.h3 h3,
div.post div.comment div.header
{
	background: none;
}

h4
{
	font-size: 17px;
	margin-bottom: 5px;
}

h5
{
	font-size: 15px;
}

label, textarea.field, input.field
{
	display: block;
}

textarea.field, input.field
{
	border: 1px solid #656551;
	margin: 3px 0px;
}

textarea.field:focus, input.field:focus
{
	border: 1px solid #874e97;
}

div.recipe
{
	background-color: #eee;
	border: 1px solid silver;
	padding: 5px;
	margin-top: 30px;
	margin-bottom: 25px;
}

div.recipe p.list_header
{
	margin-top: 7px;
	margin-bottom: 5px;
}

div.recipe h5
{
	margin: 10px 0px 5px 0px;
}

div.recipe ul
{
	padding-left: 1.5em;
	list-style: square outside;
}

tt.file
{
	color: #535373;
}

span.nobr
{
	white-space: nowrap;
}

#outer
{
	position: relative;
	width: 930px;
	background: url('images/bg-content.png') repeat-y;

	/* Using sticky footer tech from http://ryanfait.com/sticky-footer/ */
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -80px; /* the bottom margin is the negative value of the footer's height */
}

#inner
{
	position: relative;
	padding: 13px 30px 13px 30px;
	z-index: 2;
}

#header
{
	position: absolute;
	background: #b94516 url('images/bg-header.png') repeat-x;
	width: 280px;
	height: 100px;
	color: #fff;
	padding-left: 20px;
	z-index: 3;
}

#header span
{
	font-weight: normal;
}

#header h1
{
	position: absolute;
	font-size: 30px;
	line-height: 30px;
	letter-spacing: -1px;
	top: 25px;
	height: 100px;
}

#header h2
{
	position: absolute;
	font-size: 15px;
	font-weight: normal;
	color: #FCE2CA;
	top: 55px;
}

#splash
{
	position: absolute;
	right: 30px;
	background: #aba398 url('images/splash.jpg') no-repeat;
	width: 563px;
	height: 100px;
}

#menu
{
	position: relative;
	background: #6c72a5 url('images/bg-menu.png') repeat-x;
	height: 67px;
	padding: 0px 20px 0px 5px;
	margin: 106px 0px 20px 0px;
}

#menu ul
{
}

#menu ul li
{
	display: inline;
	line-height: 52px;
	padding-left: 3px;
}

#menu ul li.first
{
	border-left: 0px;
}

#menu ul li a
{
	background-color: transparent;
	background-repeat: repeat-x;
	padding: 8px 12px 8px 12px;
	font-size: 15px;
	color: #fff;
	font-weight: bold;
}

#menu ul li a:hover
{
	background: #fff url('images/bg-menu-hover.gif') repeat-x top;
	color: #4A4A24;
	text-decoration: none;
}

#date
{
	position: absolute;
	top: 0px;
	line-height: 52px;
	color: #222255;
	right: 30px;
	font-weight: bold;
	font-size: 15px;
	letter-spacing: -1px;
}

#language
{
	position: relative;
	top: -12px;
	width: 870px;
	height: 0px;
	padding: 0px;
	margin: 0px;
	/* IE fix */
	font-size: 1px;
	line-height: 1px;
}

#language span
{
	visibility: hidden;
}

#language a
{
	position: absolute;
	display: block;
	top: -17px;
	height: 10px;
	text-decoration: none;
	border: 1px solid black;
}

#language a.russian
{
	right: 30px;
	width: 15px;
	background: #ccc url('images/flag-russia.png') no-repeat;
}

#language a.russian.disabled
{
	background: #aaa url('images/flag-russia-disabled.png') no-repeat;
	border-color: #c7c7c7;
}

#language a.english
{
	right: 0px;
	width: 20px;
	background: #ccc url('images/flag-uk.png') no-repeat;
}

#language a.english.disabled
{
	background: #aaa url('images/flag-uk-disabled.png') no-repeat;
	border-color: #c7c7c7;
}


#content
{
	position: relative;
}

#single_page_content
{
	padding: 0px 15px;
}


#primary_content
{
	position: relative;
	width: 580px;
	float: left;
}


#primary_content h3, #content h3
{
	font-size: 22px;
	padding: 0px 0px 10px 15px;
}

#primary_content .comments h3, #primary_content .comment_form h3
{
	font-size: 18px;
	padding: 0px 0px 5px 15px;
	margin-top: 30px;
}

#primary_content .content, #content .content
{
	padding: 0px 15px 0px 15px;
	margin-bottom: 20px;
	min-height: 100px;
}

#primary_content .post
{
	margin-bottom: 30px;
}

#primary_content .post .header
{
	position: relative;
}

#primary_content .post .date
{
	position: absolute;
	right: 15px;
	bottom: 0px;
	line-height: 35px;
	color: #AFAFA4;
	font-weight: bold;
	font-size: 13px;
}

#primary_content .post .content
{
	margin-bottom: 0px;
}

#primary_content .post .footer
{
	position: relative;
	background: url('images/bg-post-footer-h40.gif') 0px 0px repeat-x;
	height: 40px;
	font-size: 13px;
}

#primary_content .post .footer ul
{
	list-style: none;
	position: absolute;
	right: 15px;
	bottom: 15px;
}

#primary_content .post .footer ul li
{
	display: inline;
	line-height: 14px;
	padding-left: 17px;
	margin-left: 25px;
	background-repeat: no-repeat;
	background-position: 0px 2px;
}

#primary_content .post .footer ul li.printerfriendly
{
	background-image: url('images/printerfriendly.gif');
}

#primary_content .post .footer ul li.comments
{
	background-image: url('images/comments.gif');
}

#primary_content .post .footer ul li.readmore
{
	background-image: url('images/readmore.gif');
}

#primary_content .post .footer ul li.readmore.disabled
{
	background-image: url('images/readmore-disabled.gif');
}

#primary_content .post .footer ul li.disabled
{
	color: #ddd;
}

#primary_content .comment .author
{
	padding: 0px 15px 0px 15px;
	line-height: 25px;
	font-weight: bold;
	color: #454c74;
}

#primary_content .comment .author a
{
	color: #454c74;
}

#primary_content .comment .author.approved
{
	color: #24713b;
}

#primary_content .comment .datetime
{
	position: absolute;
	right: 15px;
	top: 0px;
	color: #AFAFA4;
	font-size: 11px;
}

#primary_content .comment .content
{
	padding-bottom: 30px;
	min-height: 15px;
}

#primary_content .comment_form form
{
	padding: 0px 15px 0px 15px;
}

#primary_content .comment_form span.note
{
	line-height: 30px;
	font-style: italic;
	font-size: 13px;
}


#secondary_content, #blog_panel
{
	position: relative;
	width: 250px;
	float: right;
}

#secondary_content h3, #blog_panel h3
{
	font-size: 20px;
	padding: 0px 0px 10px 10px;
}

#secondary_content .content, #blog_panel .content
{
	padding: 0px 10px 0px 10px;
	margin-bottom: 20px;
}


/* Using sticky footer tech from http://ryanfait.com/sticky-footer/ */
#footer_pusher, #footer_outer, #footer_inner
{
	clear: both;
	height: 80px; /* the footer's height is the negative value of the bottom margin */
}

#footer_outer
{
	position: relative;
	width: 930px;
	margin: 0 auto;
}

#footer_inner
{
	background: url('images/bg-footer.gif') repeat-x top;
	color: #A8A88D;
	font-size: 13px;
	width: 870px; /* 930 - 2 * 30 */
	margin: 0 auto;
}

#footer_inner p
{
	text-align: center;
	padding: 0px;
	margin: 0px;
}

#footer_inner p.first
{
	padding-top: 20px;
}

#footer_inner a
{
	color: #8C8C73;
}

#footer_outer.local_mirror span.copy
{
	color: black;
}
