/* LICENSE
 * 
 * BanSE - a site base (designed to be the SCEngine website)
 * Copyright (C) 2007-2009 Colomban "Ban" Wendling <ban@herbesfolles.org>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 * 
 */

body {
	background: #fcfcfc;
	color: #525252;
	font-family: Georgia, Verdana, serif;
}
* {
	margin: 0;
	padding: 0;
}


h1, h2, h3, h4, h5, h6 {
	font-family: Georgia, Verdana, serif;
	padding: 0.5em;
	clear: both; /* particularly for medias page */
}
/*#body h1, #body h2 {
	margin-left: -0.5em;
	padding-left: 1em;
	background: url(images/puce.png) left center no-repeat;
}*/
a {
	text-decoration: none;
	color: #BF0000;
}
a[href*="://"]:after {
	content: '↗';
}
/*a[href^="mailto"] {
	color: #0000BF;
}*/
a img {
	border: none;
}
p {
	padding: 5px 0;
	text-align: justify;
}

ul, ol {
	margin-left: 2em;
}

blockquote {
	border-left: 6px solid #c7c7c7;
	padding-left: 6px;
}

img.bordered {
	/*-moz-border-radius: 10px;*/
	border: 2px solid #C7C7C7;
}

.ok, .info, .warning, .error {
	border-style: solid;
}
div.ok, div.info, div.warning, div.error {
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-width: 1px;
	padding: 0.2em 0.5em;
}
.ok, .info {
	background: #8ae234;
	border-color: #4e9a09;
}
.warning {
	background: #fcaf3e;
	border-color: #ce5c00;
}
.error {
	background: #ef2929;
	border-color: #a40000;
}

.clearer {
	clear: both;
}
.center {
	text-align: center;
	margin: auto;
}

.more {
	font-style: italic;
}
.more:after {
	/*content: ' →';*/
	content: '...'; /* Midori seems not to like UTF-8 characters from CSS */
}

.right {
	text-align: right;
}
.fright {
	float: right;
}

ul.buttonbox {
	list-style-type: none;
	margin: 0;
	text-align: right;
	/*border-top: 1px solid #c7c7c7;*/
}
ul.buttonbox li {
	display: inline;
}

#banner {
	height: 124px;
/*
	border-bottom: 2px solid #750000;
	margin-bottom: -2px;
*/
	background: #e98625 url(images/banner-bg.png) repeat-x;
	color: #FCFCFF;
	text-shadow: 0 0 2px #750000;
}
#banner h1 {
	padding: 0;
}
#banner h1 a, #banner h1 a:hover {
	display: block;
	text-align: left;
	color: inherit;
	font-family: Georgia, Verdana, serif;
	font-size: 50px;
	padding: 20px 50px;
}

#menubar {
	/*margin: 0 0 0 100px;*/
	margin: -24px 0 50px 0;
	padding: 0 50px;
	color: #750000;
	height: 30px;
	background: #e98625 url(images/menubar-bg.png) left bottom repeat-x;
}
#menubar ul {
	margin: 0;
}
#menubar ul>li {
	display: block;
	float: left;

	margin: -1px 10px 0px 0;
	/*padding: 10px 0 3px 0;*/
	padding: 0 0 11px 0;
	font-family: Georgia, Verdana, serif;
	font-weight: bold;
}
#menubar ul>li:hover,
#menubar ul>li.current {
	background: url(images/current-tab-bg.png) center bottom no-repeat;
}
#menubar ul>li>ul {
	display: none;
}
#menubar a {
	display: block;
	color: inherit;
	text-decoration: none;
	padding: 0px 10px 3px 10px;
}
#menubar .current a,
#menubar a:hover {
	/*color: #750000;*/
}

#navbar {
	clear: both;
	color: #888;
	font-size: 75%;
	font-variant: small-caps;
	margin: 0 50px;
}

#body {
	clear: both;

	/*margin: 20px 100px;*/
	margin: 20px 50px;
	/*padding: 20px 100px;*/
	/*margin-right: 25%;*/
}

#content .main-modules,
#content .main-modules .column:nth-child(odd) {
	clear: both;
}
#content .main-modules .module {
	margin-bottom: 50px;
}
#content .main-modules .module {
	float: left;
	width: 50%;
	margin-top: 20px;
}
#content .main-modules .module>* {
	margin: 0 10px;
}
#content .main-modules .module h3 {
	border-bottom: 1px solid #C7C7C7;
	padding-bottom: 0;
	margin-bottom: 0.5em;
}
#content .main-modules .module .links {
	clear: both; /* for inline floating data not to overflow */
	margin: 5px 0 0 0 ;
	padding: 0 0 5px 0;
	border-top: 1px solid #C7C7C7;
	text-align: right;
}
#content .main-modules .module .data > ul {
	margin: 0;
	list-style-type: none;
}
#content .main-modules .module .data > ul > li:nth-child(odd) {
	border-style: solid none;
	border-width: 1px;
	border-color: #eee;
	background-color: #f8f8f8;
	padding: 1px;
}
/* main image specific stuff */
#content .main-modules .module.image {
	/*max-height: 300px;*/
	overflow: hidden;
}
#content .main-modules .module.image .data #main-image-box {
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	/* god only knows why there is a 4px space under the image without this */
	font-size: 0;
}
#content .main-modules .module.image .data p {
	font-size: 1.2em;
	text-align: center;
	font-style: italic;
	padding: 2em;
}
#content .main-modules .module.image img {
	width: 100%;
	margin: 0;
	border: none;
	/*box-shadow: 0 0 8px #000;*/
}

#content .modules .column {
	float: left;
	width: 50%;
}
#content .modules .module {
	margin: 20px 0;
}
#content .modules .module>h3 {
	margin: 0 10px;
	padding: 0 10px;
	/*background-color: #750000;*/
	background-color: #525252;
	color: #FCFCFF;
	border: 2px solid #C7C7C7;
	border-bottom: none;
	border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
}
#content .modules .module .data {
	margin: 0 10px;
	background-color: #E3E3E6;
	border: 2px solid #C7C7C7;
	border-top: none;
	padding: 5px;
	/*-moz-border-radius: 0 0 10px 10px;*/
	text-align: justify;
}
#content .modules .module .data ul {
	text-align: left;
}
#content .main-modules .module>.links,
#content .modules .module>.links {
	margin: 5px 10px;
}
#content .modules .module .data .links {
	margin-top: 5px;
	border-top: 1px solid #C7C7C7;
	clear: both; /* for inline floating data not to overflow */
}
#content .modules .module .data .links,
#content .modules .module .data .links ul {
	text-align: right;
}
/*#content .modules .module .data .date {
	font-size: 90%;
}
#content .main-modules .module .data .date {
	float: right;
	color: #aaa;
	margin: 0;
	padding-top: 0.90em;
	font-size: 75%;
	text-align: right;
	font-style: italic;
}*/
#content .main-modules .module .data h4 {
	clear: none;
}
#content .cut_module {
	/*clear: left;
	clear: both;*/
}
#content .modules {
	clear: both;
}
#content .modules .modules-end /*,
#content .module:nth-child(odd)*/ {
	clear: both;
}
#content .modules .module form {
	font-size: 80%;
}

#menu {
	width: 25%;
	margin: 20px 0 0 75%;
	float: right;
	position: absolute;
	top: 135px;
	/*padding-left: 10px;*/
	/*
	background-color: #750000;
	border-left: 2px solid #C7C7C7;
	color: #FCFCFF;*/
	font-size: 90%;
}
#menu .module {/*
	border: 2px solid #C7C7C7;*/
	border-right: none;
	margin: 10px 0 10px 20px;
}
#menu .module h3 {
	padding: 0 10px;
	border: 2px solid #C7C7C7;
	border-right: none;
	border-bottom: none;
	/*background-color: #FCFCFF;
	color: #750000;*/
	/*background-color: #525252;*/
	color: #FCFCFF;
	background-color: #750000;
	border-radius-topleft: 10px;
	-moz-border-radius-topleft: 10px;
	-webkit-border-radius-topleft: 10px;
}
#content .module h3 a img {
	padding: 0.25em 0;
}
#menu .module .data {
	border: 2px solid #C7C7C7;
	border-right: none;
	border-top: none;
	/*background-color: #750000;*/
	/*background: #750000 url(images/banner.png) -300px top no-repeat;*/
	/*background-color: #525252;
	color: #FCFCFF;*/

	background-color: #E3E3E6;
	border-radius-bottomleft: 10px;
	-moz-border-radius-bottomleft: 10px;
	-webkit-border-radius-bottomleft: 10px;

	padding: 5px;
}
#menu .module a {
	color: inherit;
}

#footer {
	clear: both;
	/*color: #FCFCFF;
	background-color: #750000;*/
	color: #949494;
	background: #EBEBEB url(footer.png) bottom repeat-x;
	border-top: 2px solid #C7C7C7;
	margin-top: 80px; /* 20 + 60 */
	/*padding: 10px 110px;*/
	padding: 10px 60px;
	font-size: 80%;
}
#footer a {
	color: inherit;
}
#footer a:hover {
	text-decoration: underline;
}
#footer p {
	font-size: 80%;
	text-align: center;
	width: 50%;
	margin: 0 25%;
}
#footer p a {
	text-decoration: underline;
}
#footer .module {
	float: left;
	width: 33.33%; /* 100/n_modules */
	margin-bottom: 10px;
}

.email .at:after { content: '@'; }
.email .dot:after { content: '.'; }



.u { text-decoration: underline; }
.s { text-decoration: line-through; }
.b { font-weight: bold; }
.i { font-style: italic; }

#content .news {
	margin: 1em 0;
}
#content .main-modules .module h4 a,
#content .news .data h3 a {
	color: inherit;
}
#content .main-modules .module h4 a:after,
#content .news .data h3 a:after {
	content: ' ¶';
	color: #aaa;
	visibility: hidden;
}
#content .main-modules .module h4 a:hover:after,
#content .news .data h3 a:hover:after {
	visibility:visible;
}

#content .news .data {
	margin: 0;
	padding: 5px;
	text-align: justify;
}
#content .news .data .content {
	margin: 0 1em 1em 1em;
	padding: 5px 5px 0 5px;
}
/*#content .news .data .date,*/
#content .news .data .tags {
	margin: 0 1em;
	padding: 0 5px;
	font-size: 90%;
	color: #aaa;
	text-align: right;
	font-style: italic;
}
#content .news .links {
	margin: 5px 1em 0 1em;
	padding: 0 5px 5px 5px;
	border-top: 1px solid #C7C7C7;
	text-align: right;
}
#content .news .tags ul {
	margin: 0;
	display: inline;
}
#content .news .links li,
#content .module .links li,
#content .news .tags li {
	display: inline;
}
#content .news .links li:after,
#content .module .links li:after {
	content: ' | ';
}
#content .news .tags li:after {
	content: ', ';
}
#content .news .links li:last-child:after,
#content .module .links li:last-child:after,
#content .news .tags li:last-child:after {
	content: '';
}
#content .news .data img,
#content .module .data img {
	margin: 0.5em;
	border: 2px solid #C7C7C7;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
#content .news.draft .data {
	background-image: url(images/draft-bg.svg);
	background-repeat: repeat;
}


#content .profile,
#content .comment {
	clear: left;
	margin: 0 0 0;
	padding: 1em;
	min-height: 82px; /* 1+80+1 */
}
#content .profile .vcard,
#content .comment .vcard {
	float: left;
}
#content .profile .vcard img,
#content .comment .vcard img {
	width: 80px;
	height: 80px;
	border: 1px solid #c7c7c7;
}
#content .profile .data,
#content .comment .meta,
#content .comment .data {
	margin-left: 94px; /* 1+80+1+12 */
}

#content .comment {
	border-bottom: 1px solid #eee;
}
#content .comments .comment:nth-child(odd) {
	background-color: #f8f8f8;
}
#content .comments .comment.moderated {
	background-color: #fff9c7;
}
#content .comments .comment.moderated:nth-child(odd) {
	background-color: #f4edb5;
}
#content .comment .meta {
	font-style: italic;
	font-size: 85%;
}
#content .comment .meta .author {
	font-style: normal;
}
#content .comment .links {
	clear: left;
	font-size: 85%;
	text-align: right;
}
#content .comment .links li {
	display: inline;
}
#content .comment .links li:after {
	content: ' | ';
}
#content .comment .links li:last-child:after {
	content: '';
}

/* admin navbar */
.admin.navbar {
	margin: 0 -50px;
	padding: 0 50px;
	border-bottom: 2px solid #BF0000;
	font-size: 80%;
}
.admin.navbar li {
	display: inline;
	/*display: block;
	float: left;*/
	
	margin: 0 0.25em 0 0;
	border: 2px solid #BF0000;
	background-color: #BF0000;
	color: #FCFCFF;
	border-radius: 0 0 10px 10px;
	-moz-border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	font-weight: bold;
}
.admin.navbar li.current,
.admin.navbar li:hover {
	background-color: #fcfcff;
	color: #BF0000;
}
.admin.navbar li.current {
	border-bottom: 2px solid #fcfcff;
	padding-top: 2px;
}
.admin.navbar li a {
	padding: 0 0.5em;
	color: inherit;
}


.formedit .options ul {
	list-style-type: none;
	margin-left: 0;
}

label {
	display: block;
	vertical-align: middle;
}
label textarea {
	vertical-align: top;
}
label .label {
	font-weight: bold;
	display: inline-block;
	min-width: 20%;
	
	/* size to align with textareas, keep in sync with other style below */
	padding: 7px 0;
	border-left:none;
	border-right:none;
}
label .label.required:before {
	content:'*';
	color: #750000;
	margin-left: -1em;
	width: 1em;
	display: inline-block;
}
input[type=text],
input[type=password],
input[type=file],
textarea,
select {
/*
  width: 95%;
*/
	width: 50%;
}
input,
button,
textarea,
select {
	margin: 2px;
	padding: 3px 6px;
	/*border: 2px solid #C7C7C7;
	border-radius: 5px;
	background-color: #fcfcff;
	color: #525252;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	transition-duration: 0.5s;*/
}
/* fix checkboxes under IE */
input[type=checkbox] {
	margin: 0;
	border: none;
}/*
input:hover,
input:focus,
button:hover,
button:focus,
textarea:hover,
textarea:focus,
select:hover,
select:focus {
	border-color: #750000;
}
input[type=button],
input[type=submit],
input[type=reset],
button {
	background-color: #750000;
	color: #FCFCFF;
	font-weight: bold;
}*/
/*
textarea {
	vertical-align: middle;
}
*/

select.inline {
	width: auto;
	border: none;
	background: none;
	color: inherit;
	margin: 0;
	padding: 0;
	overflow: hidden;
}


table {
	width: 100%;
	border-collapse: collapse;
}
th {
	font-weight: bold;
	text-align: center;
	text-align: left; /* FIXME: */
	vertical-align: top;
}
table.leftheads th {
	text-align: right;
}
table.rightheads th {
	text-align: left;
}
td, th {
	padding: 1px 4px;
}
tr:nth-child(odd) {
	border-style: solid none;
	border-width: 1px;
	border-color: #eee;
	background-color: #f8f8f8;
}
thead tr, thead tr:nth-child(odd),
tfoot tr, tfoot tr:nth-child(odd) {
	border: none;
	background: none;
}
/*table tr.sub td:first-child {
	padding-left: 1em;
	background: url(images/subentry.png) 0.5em center no-repeat;
}*/
/*table tr.sub td:first-child:before {
	content:'↳';
}*/
table col.small {
	width:20%;
}
table col.tiny {
	width:1%;
}
caption {
	text-align: left;
	font-size: 18px;
	font-weight: bold;
	padding: 20px 0 5px 0;
}
fieldset {
	padding: 0.5em;
	border: 1px solid #C7C7C7;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
fieldset.noframe {
	border: none;
}

table.layout,
table.layout tr,
table.layout td {
	border: none;
	background: none;
}

table td.numeric {
	text-align: right;
}
table tr.positive {
	/*background-color: #ccffcc;*/
}
table tr.negative {
	background-color: #ffcccc;
}

/* restore weight in buttons of the editor */
.bcode-editor button {
	font-weight: normal;
}

ul.nobullet {
	list-style-type: none;
	margin: 0;
}


/* Paging */
.paging {
	color: #ccc;
	margin-top: 1em;
	clear: both;
	text-align: center;
}
.paging span.disabled {
	color: #ddd;
}
.paging span.current {
	color: #bf1800;
}



.gallery {
	border: 2px solid #750000;
	background: #000;
	border-radius: 8px;
	padding: 8px;
	box-shadow: 0 0 10px #333;
	text-align: center;
}
.gallery .image {
	/*float: left;*/
	display: inline-block;
	vertical-align: middle;
	margin: 8px;
	/*height: 120px;*/
	width: 200px;
}
.gallery .image a {
	border-radius: 3px;
	
	display: inline-block;
	transition: box-shadow 0.5s;
	-o-transition: box-shadow 0.5s;
	-ms-transition: box-shadow 0.5s;
	-moz-transition: box-shadow 0.5s;
	-webkit-transition: box-shadow 0.5s;
	
/*
	border: 1px solid #000;
*/
}
.gallery .image a:active,
.gallery .image a:focus {
	outline: none;
}
.gallery .image img {
	border-radius: 3px;
	/*display: none;*/
	vertical-align: middle; /* WTF??? */
	padding:0;
	margin:0;
	max-width: 200px;
	max-height: 120px;
}
.gallery .slider, .gallery .slider .center-helper { height: 432px; }
.gallery .slider {
	/*height: 432px;*/ /* height must be the same as the helper one, see above */
	width: 720px;
	
	margin: 0 auto 1em auto;
	display: block;
	vertical-align: middle;
	text-align: center;
	/* prevent possible floating stuff from messing with the layout */
	clear: both;
}
.gallery .slider .center-helper {
	display: inline-block;
	width: 0;
	vertical-align: middle;
}
.gallery .slider img {
	vertical-align: middle;
}
.gallery .image a.current {
	box-shadow: 0 0 8px #750000;
}

ul.rating {
	display: inline;
	font-size: 150%;
	margin: 0;
	padding: 0;
	font-style: normal;
}
ul.rating li {
	display: inline-block;
	width: 1em;
	margin-right: -0.2em;
}
ul.rating li a {
	outline: none;
}

.graph dl dt {
clear:left;
float:left;
}
.graph dl dt:after {
	content: ' : ';
}


ul.admin.links {
	background: black;
	color: #fcfcfc;
	border: 2px solid #750000;
	padding: 0.3em 0.5em 0.3em 1.5em;
/*
	margin: 0;
*/
	border-radius: 0.5em;
	box-shadow: 0 0 10px #333;
	float: right;
}
/*ul.admin.links li {
	display: inline-block;
}
ul.admin.links li:after {
	content:' | ';
}
ul.admin.links li:last-child:after {
	content:'';
}*/

.admin.links a button.edit,
.admin.links a button.delete {
	color: transparent;
	background-color: black;
	background-repeat: no-repeat;
	background-position: center center ;
	border: none;
/*
	border: 1px solid #888;
*/
	border-radius: 25%;
	width: 24px;
	height: 24px;
	cursor: pointer;
	overflow: hidden;
}
.admin.links a button.edit {
	background-image: url('images/button-edit.png');
}
.admin.links a button.delete {
	background-image: url('images/button-delete.png');
}


.review .description {
	font-size: 90%;
	font-style: italic;
}


/*.ui-helper-hidden-accessible {
	display: none;
}
.ui-menu {
	background: #fcfcfc;
	border: 1px solid #525252;
	border-radius: 0.2em;
	box-shadow: 0 0 5px #333;
	padding: 0.2em;
	margin: 0;
	list-style-type: none;
}
.ui-autocomplete {
	width: 50%;
	overflow: hidden;
}
.ui-menu-item {
	padding-left: 1em;
	text-indent: -1em;
}*/
.ui-menu {
	/*max-width: 50%;*/
	font-size: 90%;
	padding: 0;
}
.chosen-container .chosen-results li.highlighted,
.ui-widget-content .ui-state-focus,
.ui-state-focus {
	background: #750000;
	color: #fcfcfc;
	border-color: #750000;
}

.query-log td {
	font-family: monospace;
}
.query-log tr td:nth-child(1),
.query-log tr td:nth-child(2) {
	vertical-align: top;
}
.query-log tr.error,
.query-log tr.backtrace {
	background-color: #E8A8A8;
	color: black;
}
.query-log tr.error {
	border: 3px solid #910000;
}
.query-log tr.backtrace td {
	padding-left: 2em;
}


.ui-fold-link-container {
	text-align: right;
	padding: 0 0.5em;
	position: relative;
	background: -webkit-linear-gradient(to right, rgba(252,252,252,0), #fcfcfc);
	background:    -moz-linear-gradient(to right, rgba(252,252,252,0), #fcfcfc);
	background:     -ms-linear-gradient(to right, rgba(252,252,252,0), #fcfcfc);
	background:      -o-linear-gradient(to right, rgba(252,252,252,0), #fcfcfc);
	background:         linear-gradient(to right, rgba(252,252,252,0), #fcfcfc);
}
.ui-fold-link-container-folded {
	top: -2ex;
}
