
/* template */

html{
	height: 100%;
}

body {
	display:flex;
	flex-direction: column;
	margin:0;
	padding:0;
	/*font-family: Gotham, Helvetica Neue, Helvetica, Arial," sans-serif";*/
	font-family: Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
	font-size:16px;
    min-height: 100vh;      /* n'est pas compris par IE */
}

header{
	background-color: #2EAE9B;
	padding:15px 0px;
	color:#FFF;
	margin-bottom:30px;
	box-shadow: 0px 3px 10px #aaa;
}

header div.inner {
	display:flex;
	flex-direction: row;
	align-items: center;
}

header h1 {
	margin:0px;		
	margin-left:20px;
}

header a {
	text-decoration: none;
	color:#FFF;
}

header ul{									/* rubriques principales */
	list-style: none;
	margin:0;
	margin-left:auto;		/* pousser à droite */
	padding:0;
	display:flex;
	flex-direction: row;
}

header ul li {
	font-weight: bold;
	padding-left:34px;
	background-repeat: no-repeat;
	background-position: 10px 2px;
	margin:0.2em 7px;
}

header ul li + li {
	border-left:2px solid #fff;
}

header ul li.apis{
	background-image: url(/images/icons/wall-brick.png);
}

header ul li.books{
	background-image: url(/images/icons/book-question.png);
}

header ul li.webtools{
	background-image: url(/images/icons/drill.png);
}

header ul li.mytools{
	background-image: url(/images/icons/user.png);
}

div.inner {
	max-width: 890px;
	margin-left:auto;
	margin-right: auto;
	width:100%;
}

section{
	flex-grow: 1;
    min-height: 600px;  /* hack IE qui ne comprend pas le min-height:100vh du body */

}

section li {
    margin-top:5px;
    margin-bottom:5px;
}

footer{
	background-color: #666;
	color:#aaa;
	font-size:0.8em;
	margin-top:50px;
	padding:6px 0px;
	box-shadow: 0px -3px 10px #aaa;
}

footer a {
	color:#ccc;
}

.small_space_before {
    margin-top:15px;
}








/* styles perso spécifiques à certaines pages */
.photo_perso{
    float:left;
    margin-right:15px;
	box-shadow: 3px 3px 5px #CCC;
}

iframe.onlinetools_iframe{
    border:0px;
    width:100%;
    height:100vh;
}


li.mytools a {
    background-color: moccasin;
    color: steelblue;
    padding:0px 5px;
    display: inline-block;
}





/* formats pico */

section h1 {
	color: darkcyan;
	text-shadow: 1px 1px 2px #999;
	font-size: 2em;
	border-bottom: 3px solid darkcyan;
	padding-bottom: 5px;
}

a {
	color:#0033CC;	
}

h2 {
	color: steelblue;
	text-shadow: 1px 1px 2px #999;
	font-size: 1.6em;
}

h3 {
	font-size:1.3em;
    color:darkcyan;
}

h2, h3 {
	margin-top:2.3em;
}

h3::before{
	content:'- ';
}

h1 + h2 {
	margin-top:0px;
}

h2 + h3 {
	margin-top:0px;
}

.footnote-ref {		/* renvoi vers note de bas de page */
	background-color:yellow;
	padding:2px 3px;
}

.footnotes{			/* cadre bas de page pour notes */
	background-color:#FFFCB2;
	font-size:0.8em;
	padding:0px 5px 5px 5px;
}

hr {					/* séparation */
	border-top: 1px dashed #8c8b8b;
	border-bottom: 1px dashed #fff;
	margin-top:4em;
	margin-bottom:4em;
}

.footnotes hr {		/* séparation des notes de bas de page : annuler marge basse */
	margin-bottom:2em;
}

em {
	color:#444;
}


abbr, 
acronym {
    cursor: help;
    border-bottom: 0.1em dotted;
}

td, 
td img {
    vertical-align: top;
}

td, 
th {
    border: solid 1px #999;
    padding: 0.25em 0.5em;
}

th {
    font-weight: bold;
    text-align: center;
    background: #eee;
	white-space: nowrap;
}

td img {
	border:0px;
	box-shadow:none;
	margin:0px;
}

sub {
    vertical-align: sub;
    font-size: 0.6em;
}

sup {
    vertical-align: super;
    font-size: 0.6em;
}

code {
    font-family: Courier, "Courier New", Monaco, Tahoma;
    background: #eee;
    color: #333;
    padding: 0px 2px;
}

pre {
    background: #eee;
    padding: 20px;
    overflow: auto;
}

blockquote {
    font-style: italic;
    margin-left: 15px;
    padding-left: 10px;
    border-left: 5px solid #dddddd;
}

dd {
    margin-left: 2em;
}






/* écran pc petit */
@media screen and (max-width:1024px){
	
	header img {
		width:65%;
	}
	
	header div.inner{
		font-size: 13px;
	}
	
	div.inner {
		max-width: unset;
		margin-left:1em;
		margin-right: 1em;
		width:unset;
		font-size: 14px;
	}
	
	div.line2 {
		margin-top:1em;
	}
	
	header ul {
		flex-wrap: wrap;
	}
	
	header ul li + li {
		border-left:0;
	}

}



/* écran pc grand */
@media screen and (min-width:1281px){
	
	div.inner {
		max-width: 1154px;
		margin-left:auto;
		margin-right: auto;
		width:100%;
		font-size:18px;
	}
}

