/*
	Mémo : 
	
	Pour une meilleure lisibilité, préférer le classement suivant
	
	- position, placement, type d'affichage...
	- arrière plan
	- marge externe
	- bordures
	- marge interne
	- propriétés spécifiques au type de boite (list-..., etc...)
	- Réglage de l'affichage du contenu (text-..., font-..., couleurs...)
	
	Non valide dans cette feuille de style:
	- Les bordures arrondies sur sitebar, menu, page et les boutons de soumission
*/

html, body {
    background-color: #79C;
    color: black;
}

body {
	margin: 0;
	border-width: 0;
	padding: 0;
	font-family: "Trebuchet MS", Verdana, Helvetica, Arial, sans-serif;
	font-size: .8em;
}

h1 { display: none; }


/* Barre de menu fixe */

ul#sitebar {
	z-index: 3;
	position: absolute;
	top: 0; left: 0;
	background-color: #05090C;
	margin: 0;
	border-width: 0 1px 1px 0;
	border-style: solid;
	border-color: #F95;
	-moz-border-radius-bottomright: 10px;
	padding: 3px 6px;
	list-style: none;
	font-size: .9em;
	color: #5E8DC8;
}

html > body ul#sitebar {
	position: fixed;
}

/*
	Comme IE est très stupide, il ne comprend pas le pseudo-sélecteur :before, 
	On définit pour lui une marge droite de 5 pixels afin que les liens soient 
	suffisamment discernables les uns des autres.
	Et on retire la marge pour les vrais navigateurs en utilisant le sélecteur 
	d'enfant (le > ) que IE ne comprend pas non plus... (Y a t-il quelque chose 
	que cette sombre bouse comprenne ??)
*/
ul#sitebar li             { display: inline; margin-right: 5px; }
ul#sitebar > li           { margin-right: 0; }
ul#sitebar li + li:before { content: "\25AA\00A0" }

ul#sitebar a         { text-decoration: none; }
ul#sitebar a:link, 
ul#sitebar a:visited { background-color: transparent; color: white; }
ul#sitebar a:hover   { background-color: transparent; color: #F95; }


/* Switcher de style et champs de recherche */

#forms { padding: 3em 240px 15px 0; }

#forms form, #forms p    { display: inline; margin-left: 5px; }
#forms p , #forms option, 
#forms optgroup          { font-size: 0.9em; }
#forms label             { font-weight: bold; }
#forms label, #forms p span { background-color: inherit; color: white; }
#forms p span            { cursor: pointer; }
#forms p span:hover, 
#forms p span:active     { text-decoration: underline; }
#forms p span.hidden     { display: inline; }
#forms p span.visible    { display: none; }

select[id="style"]                { background-color: white; color: black; }
select[id="style"]:hover, 
select[id="style"]:focus,
select[id="style"]:focus option   { background-color: #79C; color: white; }
select[id="style"]:focus optgroup { background-color: black; font-style: normal; font-weight: bold; color: white; }

/* Menu du site */

#menu {
	z-index: 2;
	position: absolute;
	top: 30px;
	right: 10px;
	width: 210px;
}

/* En deux fois, sinon IE bug à cause du sélecteur d'enfant */
#menu hr, #menu h1      { display: none; }
#menu > .menu div.empty { display: none; }

#menu .menu,
#menu .menu2,
#menu .poll {
	background-color: #FEFBF6;
	margin-bottom: 15px;
	border: 2px solid #FC9;
	-moz-border-radius: 10px;
	padding: 5px;
	font-size: 0.88em;
	color: black;
}

#menu h2 {
	background-color: inherit;
	margin: 5px 5px 0;
	border-left: 3px solid black;
	border-bottom: 1px solid black;
	padding: 1px 4px;
	white-space: nowrap;
	text-transform: lowercase;
	font-size: 1.4em;
	color: black;
}

#menu h2:first-letter {
	background-color: inherit;
	text-transform: uppercase;
	color: #F95;
}

#menu .menu ul {
	margin: 15px;
	border-width: 1px 1px 0;
	border-style: solid;
	border-color: black;
	padding: 0;
	list-style-type: none;
}

#menu .menu2 > div {
	overflow: auto;
	max-height: 235px;
	margin: 15px 5px;
	padding: 5px;
}

#menu .menu2 ul {
	margin: 10px;
	padding-left: 10px;
	list-style-type: circle;
}

#menu .poll ul {
	margin: 15px 5px;
	padding: 0;
	list-style-type: none;
}

#menu .menu2 ul, #menu .poll p {
	line-height: 1.3em;
}

#menu .menu li         { margin: 0; padding: 0; border-bottom: 1px solid black; }
#menu .menu2 li        { margin: 0; padding: 0; }
#menu .menu form       { margin: 15px; text-align: center; }
#menu .menu fieldset   { margin: 0; border: 1px solid black; padding: 5px; }
#menu .poll form       { margin: 0; padding: 0; }
#menu .poll img        { margin-left: -3px; }
#menu .poll div.submit { text-align: center; }
#menu .poll p          { margin: 6px; padding: 3px; }
#menu .poll .results p { margin: 0 6px 0 9px; border-left: 1px solid black; }

#menu .menu a {
	display: block;
	width: 99%;
	margin: 0;
	padding: 1px 8px;
	text-decoration: none;
	font-weight: bold;
}

#menu > .menu a { width: auto; }

#menu .menu a:link, 
#menu .menu a:visited { background-color: #E2EDF8; color: #202020; }
#menu .menu a:hover   { background-color: #FFD5A3; color: #202020; }
#menu .menu a:active  { background-color: black; color: white; }

#menu .menu2 a:link, 
#menu .menu2 a:visited, 
#menu .poll a:link, 
#menu .poll a:visited { background-color: inherit; text-decoration: underline; color: #202020; }
#menu .menu2 a:hover, 
#menu .poll a:hover   { background-color: inherit; color: #F95; }


/* Page centrale */

#page {
	z-index: 1;
	min-height: 280px;
	background: #FAFAFA url("Phpcodeur/phpinup.png") 98% 100% no-repeat;
	margin-right: 60px;
	margin-bottom: 10px;
	border-width: 2px 2px 2px 0;
	border-style: solid;
	border-color: #FC9;
	-moz-border-radius: 0 10px 10px 0;
	padding: 20px 180px 0 20px;
	color: black;
}

#page a         { text-decoration: none; font-weight: bold; font-size: 1em; }
#page a:link, 
#page a:visited { background-color: transparent; color: #227FC7; }
#page a:hover   { background-color: #FFD5A3; color: #202020; border-bottom: 1px solid #7DACE7; }
#page a:active  { background-color: black; color: white; }


/* Tableaux de données */

table {
	margin: 0 25px 20px;
	border: 1px solid #7DACE7;
	border-collapse: collapse;
}

table caption {
	caption-side: top;
	background-color: transparent;
	margin-top: 10px;
	margin-left: 25px;
	padding-bottom: 3px;
	text-align: left;
	font-size: 1em;
	font-weight: bold;
	color: #202020;
}

table caption span:first-letter {
	background-color: transparent;
	text-transform: uppercase;
	color: #F95;
}

table thead th { background-color: #79C; text-align: center; color: white; }
table tfoot td { padding: 2px 6px; font-size: 0.9em; }
table thead th, 
table tbody td { border-color: #7DACE7; padding: 3px 8px; }
table tbody td { text-align: left; vertical-align: top; }
table.data tbody td { text-align: center; }
table tbody td:first-child { text-align: left; background-color: #DCE9F6; }


/* Copyright */

#footer {
	background-color: inherit;
	margin: 10px 240px 10px 10px;
	text-align: center;
	font-size: 0.85em;
	font-style: normal;
	color: white;
}

#footer a:link, #footer a:visited {
	background-color: transparent;
	text-decoration: none;
	font-weight: bold;
	color: white;
}

#footer a:hover {
	text-decoration: underline overline;
}


/* Boutons de validation */

#check     { margin: 10px 240px 10px 10px; text-align: center; }
#check img { border-width: 0; }


/* Styles génériques */

.bloc, .comments {
	background-color: #E2EDF8;
	margin: 0 0 20px;
	border: 1px solid #7DACE7;
	padding: 10px 10px 0;
	color: black;
}

.comments + .comments {
	border-width: 2px;
}

.bloc h2, .comments h2 {
	background-color: inherit;
	margin: 0;
	border-width: 0 0 1px 4px;
	border-style: solid;
	border-color: #F95;
	padding: 1px 5px;
	font-size: 1.25em;
	font-variant: small-caps;
	letter-spacing: 0.06em;
	font-weight: bold;
	color: black;
}

.bloc h3 {
	background-color: inherit;
	margin: 0;
	padding: 20px 5px 5px;
	text-decoration: underline;
	font-weight: bold;
	font-size: 1em;
	color: #26A;
}

.bloc h3:before { content: "\003C\003F\00A0"; }
.bloc h3:after  { content: "\00A0\003F\003E"; }

.comments h3 {
	background-color: inherit;
	margin: 25px 0 10px;
	padding-left: 3px;
	border-bottom: 1px solid #7DACE7;
	font-size: 0.85em;
	color: black;
}

.bloc h4 {
	background-color: inherit;
	margin: 0;
	padding: 20px 5px 0;
	font-weight: bold;
	font-size: 1em;
	color: black;
}

.bloc h4:before { content: "-\00A0"; }
.bloc h4:after  { content: "\00A0-"; }

.bloc p, .comments p, .bloc address {
	background-color: inherit;
	margin-top: 15px;
	margin-bottom: 10px;
	padding: 0 5px;
	font-size: 1em;
	font-family: "Bitstream Vera Sans", Verdana, Helvetica, Arial, sans-serif;
	line-height: 1.6em;
	color: black;
}

.bloc div.bloccentre, 
.bloc ul, .bloc ol   { margin: 25px; }
.bloc ul             { padding: 0 20px; list-style-type: disc; }
.bloc li             { margin: 6px 0; }
.bloc div > img      { border: 2px outset #7DACE7; }
.bloc div.note       { margin: 0 25px; }
.bloc div.image      { float: right; margin: 5px 5px 15px 15px; }
.bloc div.bloccentre { text-align: center; }
.bloc a.dl img       { border: none; vertical-align: bottom; }
.bloc div.anchor     { padding: 0 5px; text-align: right; font-size: 0.85em; }

.bloc ol.sommaire {
	border-left: 4px solid #F95;
	padding: 0 35px;
	list-style-type: decimal;
}

.bloc ul.header {
	float: right;
	width: 16em;
	background-color: #EBF5FE;
	margin: 0 0 10px 10px;
	border-width: 0 1px 1px;
	border-style: solid;
	border-color: #F95;
	padding: 3px 5px 3px 24px;
	list-style-image: url("Phpcodeur/carre.png");
	font-weight: bold;
	font-size: 0.85em;
	color: black;
}

.bloc ul.header li { margin: 2px 0; }

ul#listenote {
	border-top: 1px solid #7DACE7;
	padding-top: 20px;
	font-size: 0.9em;
}

ul#listenote a:first-child { font-size: 0.9em; }

div.bottom {
	clear: both;
	background-color: inherit;
	margin-top: 15px;
	margin-bottom: 5px;
	border-top: 1px solid #7DACE7;
	padding: 1px 2px 0;
	font-size: 0.85em;
	color: black;
}

div.bottom .bottom-left  { float: left; text-align: left; font-style: normal; }
div.bottom .bottom-right { text-align: right; }

.bloc form fieldset {
	background-color: inherit;
	margin: 20px 10px;
	border: 1px dashed #7DACE7;
	padding: 10px;
	color: black;
}

.bloc form legend {
	background-color: #79C;
	border: 1px solid #F69D2A;
	padding: 1px 8px;
	font-weight: bold;
	color: white;
}

/*
.bloc form label:first-child {
	display: block;
	float: left;
	width : 30%;
}
*/

.bloc form fieldset          { display: table; }
.bloc form fieldset > p      { display: table-row; }
.bloc form fieldset > p span { display: table-cell; padding: 5px; vertical-align: top; }
.bloc form p.submit          { margin: 0 0 15px; text-align: center; }
.bloc form fieldset > p span:first-child { width: auto; }

hr {
	width: 95%;
	height: 1px;
	background-color: black;
	border: none;
	color: white;
}

abbr[title], 
acronym[title]  { border-bottom: 1px dotted black; cursor: help; }
abbr.sigle      { text-transform: uppercase; }
dl              { margin: 25px; }
dt              { margin-bottom: 2px; }
dd              { margin-bottom: 5px; }
blockquote      { margin: 25px; border-left: 2px solid #F95; padding: 0 10px; }
blockquote p    { font-style: normal; }
span.tlt        { font-style: italic; }
span.tlt[title],
em[title]       { cursor: help; }


/* formulaires */

input, textarea, select { font-size: 1em; }

input[type="text"], textarea {
	background-color: #FEFCFA;
	border: 1px inset black;
	text-indent: 1px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: black;
}

/* bug ie sur la déclaration précédente */
textarea { font-family: Verdana, Arial, Helvetica, sans-serif; }

input[type="text"]:focus, textarea:focus {
	background-color: white;
	border-style: solid;
	color: black;
}

input[type="submit"], input[type="reset"] {
	background-color: #79C;
	border: 2px outset #F69D2A;
	-moz-border-radius: 5px;
	padding: 0 4px;
	font-weight: bold;
	font-size: 0.9em;
	color: white;
}

input[type="submit"]:hover, input[type="reset"]:hover,
input[type="submit"]:focus, input[type="reset"]:focus   { background-color: #7DACE7; color: #FC9; }
input[type="submit"]:active, input[type="reset"]:active { border: 2px inset black; }

pre {
	overflow: auto;
	/* 
		On spécifie une largeur, sinon, IE laisse la boite déborder 
		du cadre parent et ignore la propriété overflow...
	*/
	width: 88%;
	max-height: 1000px;
	background-color: #FCFCFC;
	margin: 25px;
	border-width: 1px 1px 1px 4px;
	border-color: #7DACE7;
	border-style: dashed dashed dashed solid;
	padding: 10px;
	color: black;
}

/* Pour les navigateurs conformes, on les laisse gérer eux mêmes la largeur */
.bloc > pre { width: auto; }

code, var       { font-weight: bold; font-style: normal; color: green; }
pre code        { font-weight: normal; }
code.constant   { color: #B29; text-transform: uppercase; }
code.setting    { color: #E70; }


/*
	Couleurs du code php colorisé
*/
span.hl-bg      { background-color: inherit; color: white; }
span.hl-comment { background-color: inherit; color: #F90; }
span.hl-default { background-color: inherit; color: #00C; }
span.hl-html    { background-color: inherit; color: black; }
span.hl-keyword { background-color: inherit; color: green; }
span.hl-string  { background-color: inherit; color: #D00; }

