/* tools */
.replace { position:relative; margin: 0; padding: 0; overflow: hidden; }
.replace span { display: block; float: left; position: absolute; top: 0; left: 0; z-index: 100; }
.replace a { cursor: pointer; }
.clear { clear: both; }
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } /* clear fix */
.clearfix {display: inline-block;}
* html .clearfix {height: 1%;} /* Hides from IE-mac \*/
.clearfix {display: block;}


/* global */
body { font-size: 76%; background: #eaeaea; font-family: "Lucida Grande", arial, sans-serif; padding: 0; margin: 0; color: #7f7f7f; }
a img { border: none; }


/* container */
div.bg { width: 100%; min-width: 978px; background: #eaeaea; margin: 0; padding: 0; }
div.container { width: 978px; margin: 0 auto; padding: 0; clear: both; z-index: 0;  }


/* --------- LAYOUT --------- */

/* header */
div#header { position: relative; display: inline; float: left; width: 677px; height: 226px; margin: 0; padding: 0; clear: both; }
div#header h1 { position: absolute; top: 0; text-indent: -9000px; height: 0; width: 0; margin: 0; padding: 0; }
div#header img { float: left; width: 100%; height: 226px; }

div#logo { float: left; width: 100%; height: 226px; }


/* toolbar */
div#toolbar { display: inline; float: left; width: 100%; height: 20px; color: #9aa1a5; font-size: 0.9em; margin: 10px 0 0; }
div#toolbar a { color: #9aa1a5; margin: 0; padding-bottom: 3px; text-decoration: none; border-bottom: 1px #9aa1a5 dotted; }
div#toolbar a:hover { color: #2194cd; }
div#toolbar ul { display: inline; float: right; margin: 0; padding: 0; list-style-type: none; clear: both; }
div#toolbar li { float: left; margin: 0 0 0 8px; padding: 0 8px 0 0; }
div#toolbar li.last { padding: 0 !important; border: none !important; }
div#toolbar p { float: right; clear: both; }


/* login */
div#login { display: inline; float: left; width: 478px; height: 30px; margin: 0 0 16px; padding: 0; }
div#login form { display: inline; float: right; }
div#login label { display: inline; float: left; width: 50px; height: 19px; padding: 4px 0 0; font-size: 0.9em; text-align: right; }
div#login input { display: inline; float: left; margin: 0; padding: 2px; color: #444; font-size: 0.9em; vertical-align: middle; }
div#login .formelement { width: 90px; padding: 3px; margin: 0 10px 0 0; }
div#login .button { color: #333; }


/* navigation */
div#navigation { position: absolute; top: 203px; left: 30px; }
div#navigation ul { display: inline; float: left; width: auto !important; width: 100%; height: 23px; padding: 0; margin: 0; list-style-type: none; clear: both; }
div#navigation ul a { font-size: 0.9em; color: #fff; text-decoration: none; text-align: center; } 
div#navigation li { float: left; display: block; background: url(../images/nav_left.jpg) no-repeat top left; width: auto !important; height: 23px; margin: 0 5px 0 0; padding: 0 0 0 10px; }
div#navigation li a { display: block; float: left; background: url(../images/nav_bg.jpg) no-repeat top right; height: 14px; margin: 0px; padding: 5px 10px 4px 0; font-weight: bold; outline: none; }
div#navigation li.current_page_item { background: url(../images/nav_active_left.jpg) no-repeat top left; }
div#navigation li.current_page_item a, div#navigation li.current_page_item a:hover { background: url(../images/nav_active_bg.jpg) no-repeat top right; color: #171717; border: none; } 
div#navigation li a:hover { color: #ade8f9; }


/* content div */
div#content { display: inline; float: left; background: #fff url(../images/content_bg.gif) no-repeat bottom center; width: 677px; height: auto !important; height: 380px; min-height: 380px; padding: 0; margin: 0 30px 0 0; }

/* sidebar */
div#sidebar { display: inline; float: right; width: 271px; height: auto !important; height: 380px; min-height: 380px; padding: 75px 0 30px; }
div#sidebar strong { color: #455b6a; }
div#sidebar form { width: 100%; }
div#sidebar #newsletter input { vertical-align: middle; margin: 0 5px 0 0; }
div#sidebar #newsletter .formelement { width: 229px; height: 27px; background: #fff url(../images/input_bg.gif) no-repeat; border: none; padding: 3px 0 0 3px; }
div#sidebar .sp { display:inline; float: left; width: 186px; }

/* footer */
div#footer { float: left; width: 677px; margin: 0; padding: 0; clear: both; text-align: center; }
div#footer h3, div#footer h4 { color: #626b70; }
div#footer strong { color: #626b70; }
div#footer p { color: #afb7bc; font-size: 1em; }
div#footer small { color: #CDD2D5; }

div#footer ul { list-style-type: none; margin: 0; padding: 0; }
div#footer li { margin: 0 0 3px; padding: 0; font-size: 0.9em; line-height: 1.6em; }
div#footer a { color: #afb7bc; border: none; }
div#footer .copyright { color: #bbb; text-align: center; margin: 40px 0 0; }
div#footer .copyright a { color: #afb7bc; border-bottom: 1px #9aa1a5 dotted; padding-bottom: 3px; }

div#footer .col1 { width: 400px; margin: 0 40px 20px 0; }
div#footer .col2 { width: 299px; margin: 0 40px 20px 0; }
div#footer .col3 { width: 299px; margin: 0; }




/* --------- DEFAULT TEMPLATE --------- */

/* content styles */
div.content h1 { font-size: 2em; font-weight: normal; color: #171717; margin: 0 0 25px; }
div.content h2 { font-size: 1.6em; font-weight: normal; color: #2194cd; margin: 0 0 25px; }
div.content h2.underline { border-bottom: 1px solid #ddd; margin: 10px 0 20px; padding: 0 0 6px; }
div.content h1 small, div.content h2 small { line-height: 2em; font-size: 0.5em; }
div.content h3 { font-size: 1.4em; font-weight: normal; color: #171717; margin: 0 0 25px; }
div.content h4 { font-size: 1.2em; font-weight: normal; color: #171717; margin: 0 0 25px; }
div.content p { font-size: 1em; margin: 0 0 25px; line-height: 1.6em; }
div.content small { color: #9aa1a5; font-size: 0.9em; line-height: 1.4em; }
div.content small strong { color: #777; }
div.content ul { padding: 0 0 0 16px; list-style-position: outside; }
div.content a { color: #2194cd; text-decoration: none;  }
div.content a:hover { color: #29c4f0; text-decoration: }
div.content blockquote { color: #2194CD; font-size: 1em; line-height: 1.8em; margin: 0 0 25px; padding: 10px 0 10px 40px; border-left: 3px solid #2194cd; }
div.content li { padding: 0 0 8px 25px; }
div.content li ul li { padding: 8px 0 0 25px; }
div.content hr { border: 0; color: #ddd; background-color: #ddd; height: 1px; width: 100%; text-align: left; margin: 10px 0; }
div.content pre { width: 458px; background: #f5f5f5; overflow: auto; margin: 0 0 25px; }
div.content .highlight { color: #afb7bc; }
div.content .grey { color: #899094; }

/* menus */
ul.menu { list-style-type: none; margin: 0 0 25px; padding: 6px; background: #f6f6f6; color: #999; }
ul.menu li { padding: 8px 0; margin: 0; }

/* forms */
form.default { margin: 0 0 25px; }
form.default label, form.default input, form.default textarea, form.default select, form.default a.button { float: left; font-family: "Lucida Grande", arial, sans-serif; font-size: 1em; }
form.default input, form.default textarea, form.default select, .formelement { margin: 0 6px 6px 0; }
form.default label { width: 110px; margin: 0 10px 6px 0; padding: 4px 0 0; }
form.default .formelement { width: 230px; background: #f6f6f6; color: #555; border: 1px solid #ddd; padding: 7px; }
form.default select.formelement { width: 266px; padding-right: 2px !important; }
form.default textarea.formelement { width: 475px; height: 200px; }
form.default textarea.small { width: 322px !important; height: 100px; }
form.default textarea.big { height: 240px; }
form.default .button { margin: 0 4px 0 0; font-size: 1.1em; }
form.default .nolabel { margin: 0 4px 6px 120px; }
form.default .uploadfile { float: left; width: 250px; padding: 6px; background: #ffeece; border: 1px solid #bbb; margin: 0 0 6px; }
form.default .tip { float: left; border: 1px solid #A6FF9F; background: #D2FFCF; padding: 6px; font-size: 0.95em; color: #4A9F45; margin: 0 0 6px 120px; }
form.default input.error, form.default select.error, form.default textarea.error { border: 1px solid red !important; }
form.default label.error { color: red !important; }
form.default img { float: left; margin: 0 6px 6px 0; }

/* errors */
div.error { background: #FFDFDF; padding: 20px 10px 0; border: 1px solid #BF0000; margin: 0 0 20px 0; color: #444; font-weight: bold; clear: both; }
div.error h2 { color: #BF0000 !important; margin: 10px 0 !important; }
div.message { background: #f4f4f4; border: 1px solid #ccc; padding: 20px 10px; margin: 0 0 20px 0; font-weight: bold; clear: both; }
div.hidden { display: none; background: #e1f7ff; padding: 20px; border: 1px solid #29c1fe; margin: 0 0 20px 0; }
div.hide { display: none; }

/* pics */
img.avatar { margin: 0 0 10px; }
.avatarbox { display: inline; float: left; height: auto !important; height: 100px; min-height: 110px; background: #f4f4f4; border: 1px solid #ccc; padding: 8px; margin: 0 10px 20px 0; text-align: center; font-size: 0.9em; }

/* search */
div.search {  display: inline; float: left;  margin: 0 0 30px; padding: 0; clear: both; }
div.search form { display: inline; float: left; margin: 0 4px; }
div.search label { display: inline; float: left; width: 45px; padding: 8px 0; margin: 0 4px 0 0; color: #767676; background: url(../gfx/search_left.gif) no-repeat top right; text-align: right; font-size: 0.9em; }
div.search input { display: inline; float: left; font-size: 1em; color: #444; vertical-align: middle; }
input.searchbox { width: 96px; background: #f6f6f6; padding: 4px; margin: 0 4px 0 0; border: 1px solid #ddd; }
div.search #searchbutton { margin: 3px 1px; }

/* boxes */
div.box { background: #f9f9f9; border: 1px solid #eee; padding: 20px; margin: 0 0 25px; }
div.box.center { text-align: center; }
div.scroll { height: 250px; padding: 10px; border: 1px solid #ccc; background: #fff; overflow: auto; margin: 0 0 25px; }

/* tables */
table.default { width: 100%; font-size: 1em; border-collapse: collapse; margin: 0 0 25px; clear: both; }
table.default th { padding: 10px 8px; background: #f2f2f2; color: #777; text-align: left; border-bottom: 1px solid #ddd; }
table.default td { padding: 10px 8px; background: #fff; vertical-align: top; }
table.default tr.header th { font-size: 1em; background: #eaeaea; color: #222; }
table.default .narrow { width: 60px; }
table.default .medium { width: 150px; }

/* heading left and right */
h1.headingleft, h2.headingleft { float: left; width: 400px; padding: 0; }
div.headingright { float: right; text-align: right; margin: 0 0 15px 20px; }
div.headingright select, div.headingright a.button, div.headingright input { float: left; }
div.headingright label { display: none; }
div.headingright select { width: 180px; background: #f6f6f6 !important; margin: 0 0 0 4px; }
div.headingright h2 { margin: 0 !important; }
div.headingright div { margin: 0 !important; }

/* columns */
div.col1 { display: inline; float: left; width: 214px; margin: 0 40px 20px 0; padding: 0; }
div.col2 { display: inline; float: left; width: 214px; margin: 0 40px 20px 0; padding: 0; }
div.col3 { display: inline; float: left; width: 214px; margin: 0 40px 20px 0; padding: 0; }
div.col4 { display: inline; float: left; width: 214px; margin: 0; padding: 0; }

/* buttons */
p.buttons { padding: 8px 0; }
.button { background: #eee url(/gfx/button_bg.gif) repeat-x; border: 1px solid #d0d0d0; color: #333; text-decoration: none; vertical-align: middle; margin: 0 4px 6px 0; font-weight: bold; }
.button:hover { color: #777; border: 1px solid #ddd; }
a.button { padding: 6px 10px; color: #333 }
input.button { padding: 4px 10px; cursor: pointer; }
input.button.big { background: #29c4f0; border: 1px solid #2194cd; padding: 10px 25px; font-size: 1.5em !important; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; color: #fff !important; }
div#tpl-blog a.button { color: #333 }


/* pagination */
div.pagination { margin: 0 0 15px 0; clear: both; }
div.pagination p { margin: 0 0 8px; text-align: right; margin: 2px 0 0; }
div.pagination a { background: #fff; border: 1px solid #ccc; padding: 2px 4px; }
div.pagination b { background: #f4f4f4; border: 1px solid #ccc; padding: 2px 4px; }

/* tabs */
ul.innernav { display: inline; float: left; width: 100%; padding: 0; margin: 0 0 25px; list-style-type: none; border-bottom: 1px solid #ccc; clear: both; }	
ul.innernav li { position: relative; top: 1px; float: left; background: #e0e0e0; padding: 5px 18px; margin: 0 8px 0 0; border: 1px solid #ccc; }
ul.innernav li.selected { background: #fff; border-bottom: 1px solid #fff; }
ul.innernav li.selected:hover { background: #fff; }
ul.innernav li a { color: #777; text-decoration: none; outline: none; }
ul.innernav li a:hover { color: #999; }
ul.innernav li:hover { background: #eee; }

/* feed */
div.feed { display: inline; float: left; width: 100%; margin: 0 0 25px; clear: both; }
div.entry { display: inline; float: left; width: 100%; margin: 0 0 10px 0; }
div.entry p { margin: 0; padding: 0; }
div.active { background: #f0f0f0; }
div.feed div.left { display: inline; float: left; width: 32px; padding: 4px; margin: 0 10px 0 0; }
div.feed div.right { display: inline; float: left; width: 406px; padding: 4px; margin: 0; }
div.file { float: left; width: 100%; padding: 10px 0; background: #fff; border: 1px solid #ddd; margin: 0 0 10px; }
div.file img { display: inline; float: left; margin: 0; padding: 0 10px; }
div.file p { display: inline; float: left; width: 300px; margin: 0; padding: 0; }

/* tag cloud */
ul.tags { display: inline; float: left; list-style-type: none; margin: 0 0 20px 0; padding: 6px !important; background: #f6f6f6; color: #999; text-align: center; clear: both; }
ul.tags li { display: inline; padding: 0; margin: 0 2px; line-height: 2em; }


/* files */
div.filebox { float: left; width: 140px; padding: 10px; margin: 0 15px 15px 0; border: 1px solid #ddd; height: auto !important; height: 160px; min-height: 160px; text-align: center; }
div.filebox .description { margin: 5px 0 0; font-size: 0.9em; line-height: 1.4em; }
div.filebox .description small { color: #aaa; font-size: 0.9em; }

/* tooltip */
.tooltip{ position: absolute; top: 0; left: 0; z-index: 3; display: none; }

/* tweets */
div.tweets .tweet_list { -webkit-border-radius: .5em; list-style-type: none; margin: 0; padding: 6px; background: #fff; }
div.tweets .tweet_list li { background-color: #f6f6f6; overflow: auto; padding: .5em; }
div.tweets .tweet_list .tweet_even { background-color: #eee; }
div.tweets .tweet_list .tweet_avatar { padding-right: .5em; float: left; }
div.tweets .tweet_list .tweet_avatar img { vertical-align: middle; }

