/*******************************************************************************
* Variable
*******************************************************************************/

:root {
    --alternate-background: #f7f7fe;
    --color-link: #36c;
    --color-hover: #3056a9;
    --color-base: #202122;
    --color-border: #25617a;
}

/*******************************************************************************
* Éléments
*******************************************************************************/

body {
    font-family: "Open Sans", sans-serif;
    color: var(--color-base);
    margin: 0;
    padding: 0;
    line-height: 1.6;
}

code, kbd, var, samp, pre {
    font-family: 'B612 Mono', monospace;
}

p > code, p > kbd, p > var, p > samp {
    font-size: 0.909em;
}

code {
    white-space: pre-wrap;
}

figcaption {
	font-family: 'Oxygen', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
	font-family: 'Oxygen', sans-serif;
}

h1 {
    font-size: 1.8em;
    margin-bottom: 50px;
    font-weight: 400;
}

h2 {
    font-size: 1.5em;
    margin-top: 65px;
    margin-bottom: 15px;
}

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

h3 {
    font-size: 1.15em;
    margin-top: 45px;
    margin-bottom: 10px;
}

a {
    text-decoration: none;
    color: var(--color-link);
}

a:hover {
    text-decoration: underline;
    color: var(--color-hover);
}

a:visited {
    color: var(--color-link);
}


iframe {
    margin: auto;
    display: block;
    margin-top: 40px;
    margin-bottom: 40px;
}

summary:hover {
	cursor: pointer;
}

/*******************************************************************************
* .fbe- surcharge de _ficheblockelements.css
*******************************************************************************/

.fbe-caption-Legend {
	font-style: normal;
}

.fbe-figure-Code {
    margin-left: 25px;
    margin-right: 25px;
    position: relative;
}

.fbe-figure-CodeCaption {
    margin-top: 5px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 2px;
    padding-bottom: 2px;
}

.fbe-figure-CodeContent {
    padding: 10px;
    margin-bottom:10px;
    border-radius: 4px;
}

.fbe-figure-Div {
    margin-left: 25px;
    margin-right: 25px;
    display: flex;
    flex-direction: column;
    position: relative;
}

.fbe-figure-Div > .fbe-figure-Caption {
    margin-top: 5px;
    margin-left: 25px;
    margin-right: 25px;
    margin-bottom: 0;
    align-self: flex-start;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
    position: relative;
    top: 1px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 2px;
    padding-bottom: 2px;
    background-color: #fff;
    z-index: 10;
    order: -1;
}

.fbe-figure-Image {
    margin-left: 25px;
    margin-right: 25px;
    margin-bottom: 20px;
    margin-top: 30px;
}

.fbe-figure-ImageContent {
    background-color: #e5e5e5;
    padding-top: 10px;
    padding-bottom: 5px;
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
    display: inline-block;
}

.fbe-figure-Image .fbe-figure-Caption {
    margin-top: 5px;
    margin-left: 0;
    margin-right: 0;
}

.fbe-figure-Div > div.fbe-figure-ImageContent  {
    background-color: inherit;
    padding-top: 0;
    padding-bottom: 0;
}


.fbe-caption-Legend > code {
    font-style: normal;   
}

.fbe-caption-Legend > code.cm-bdf_initiale {
     font-style: italic;  
}


/*******************************************************************************
* Cas .fbe-figure-DivContent
* 
*******************************************************************************/

.fbe-figure-DivContent h2 {
    font-stretch: semi-condensed;
    font-size: 1.4em;
    margin-top: 65px;
    margin-bottom: 15px;
}

.fbe-figure-DivContent h3 {
    font-stretch: semi-condensed;
    font-size: 1.2em;
    margin-left: 35px;
    margin-top: 25px;
    margin-bottom: 25px;
}

.fbe-figure-DivContent h2 + .fbe-figure-DivContent h3 {
    margin-top: 30px;
}

.fbe-figure-DivContent h4 {
    font-stretch: semi-condensed;
    font-weight: normal;
    font-size: 1.1em;
    margin-left: 55px;
}


/*******************************************************************************
* Surcharge spip
*******************************************************************************/

.spip_documents_left {
        margin-right: 20px;
        margin-bottom: 20px;
        clear: left;
        margin-top: 10px;
}

h2.spip {
    font-size: 1.3em;
    font-weight: normal;
    margin-top: 50px;
    margin-bottom: 25px;
}


/*******************************************************************************
* Surcharge de _global.css
*******************************************************************************/

.global-button-Text {
    line-height: 16px;
}

.global-button-Icon.fichotheque-Icon {
    display: inline-block;
    vertical-align: middle;
}

/*******************************************************************************
* .CodeMirror
*******************************************************************************/

div.CodeMirror {
    height: auto !important;
    border-style: solid;
    border-color: #ccc !important;
    border-width: 1px;
    text-align: left;
    background-color: #fafafa;
    border-radius: 4px;
    padding: 4px;
    padding-top: 8px;
    padding-bottom: 8px;
}

div.CodeMirror pre.CodeMirror-line,
div.CodeMirror pre.CodeMirror-line-like {
    font-size: 0.85em;
    line-height: 1.4em;
    font-family: 'B612 Mono', monospace;
}


/*******************************************************************************
* formulaire
*******************************************************************************/

.erreur_message {
    color: #ff0000;
}

.formulaire_formidable li {
 margin-top: 20px;   
}

.formulaire_formidable textarea, .formulaire_formidable input {
    display: block;
}

.explication {
    font-style: italic;
}


/*******************************************************************************
* .ficheinfo-
*******************************************************************************/

.ficheinfo-Block {
    display: flex;
    justify-content: space-between;
    padding-top: 8px;
    padding-bottom: 8px;
    align-items: start;
}

.ficheinfo-Keywords {
    margin-top: 2px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    line-height: 1;
    flex-shrink: 0.1;
    flex-wrap: wrap;
    min-width: 100px;
}

.ficheinfo-Keywords .commandkey-Idalpha {
    font-size: 10px;
}

.ficheinfo-Keywords .commandkey-Key {
    padding: 4px;
    margin-bottom: 2px;
}

.ficheinfo-Link {
    display: block;
    text-decoration: none;
    color: #000;
    line-height: 1.5em;
    padding-left: 4px;
    flex-shrink: 2;
    margin-right: 4px;
    font-weight: 400;
}

.ficheinfo-Link:hover {
    text-decoration: underline;
}

.ficheinfo-Link:visited {
    color: #000;
}

.ficheinfo-Icon {
    /*border-style: solid;
    border-width: 1px;
    border-color: #818181;
    border-radius: 4px;
    padding: 3px;
    display: inline-flex;
    box-sizing: border-box;*/
    margin-right: 4px;
    margin-bottom: 2px;
    /*align-items: center;*/
}




/*******************************************************************************
* .fichotheque-
*******************************************************************************/

.fichotheque-LinkList {
    list-style: none;
    margin: 0;
    padding: 0;
}

.fichotheque-LinkList li {
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 6px;
    padding-bottom: 6px;
}

.fichotheque-LinkList li:nth-child(even) {
   background-color: var(--alternate-background);
}

.fichotheque-Link, .fichotheque-Link:visited, .fichotheque-LinkList a, .fichotheque-LinkList a:visited {
    background-image: none;
    color: #000;
}

.fichotheque-Subset {
	padding-left: 20px;
	background-repeat: no-repeat;
	min-height: 16px;
	background-position-y: 4px;
}

.fichotheque-Texte a {
    text-decoration: underline;
}

.fichotheque-Texte a[href^="http"] {
background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODI2LjQyOSAtNjk4Ljc5MSkiPjxyZWN0IHdpZHRoPSI1Ljk4MiIgaGVpZ2h0PSI1Ljk4MiIgeD0iODI2LjkyOSIgeT0iNzAyLjMwOSIgZmlsbD0iI2ZmZiIgc3Ryb2tlPSIjMjU2MTdhIi8+PGc+PHBhdGggZD0iTTgzMS4xOTQgNjk4Ljc5MWg1LjIzNHY1LjM5MWwtMS41NzEgMS41NDUtMS4zMS0xLjMxLTIuNzI1IDIuNzI1LTIuNjg5LTIuNjg5IDIuODA4LTIuODA4LTEuMzExLTEuMzExeiIgZmlsbD0iIzI1NjE3YSIvPjxwYXRoIGQ9Ik04MzUuNDI0IDY5OS43OTVsLjAyMiA0Ljg4NS0xLjgxNy0xLjgxNy0yLjg4MSAyLjg4MS0xLjIyOC0xLjIyOCAyLjg4MS0yLjg4MS0xLjg1MS0xLjg1MXoiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPgo=");
background-position: right center;
background-repeat: no-repeat;
padding-right: 13px;
text-decoration: none;
}


/*******************************************************************************
* .fichotheque-Unit
*******************************************************************************/

.fichotheque-Unit {
    background-color: #fff;
    border-color: #25617a;
    border-width: 1px;
    border-style: solid;
    margin-bottom: 16px;
    margin-top: 16px;
	font-family: 'Oxygen', sans-serif;
    font-weight: 300;
}

.fichotheque-UnitTitle {
    color: #fff;
    background-color: #25617a;
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 0;
    padding-bottom: 2px;
    position: sticky;
    top: 0;
    margin: 0;
    font-weight: 400;
    font-size: 1.0rem;
}

.fichotheque-MainUnit.fichotheque-Unit {
    margin-top: 55px;
}

.fichotheque-MainUnit.fichotheque-Unit:first-child {
    margin-top: 85px;
}


/*******************************************************************************
* .buttons-
*******************************************************************************/

.buttons-Link {
    display: inline-block;
    text-decoration: none;
    padding: 2px;
    font-size: small;
    border: 1px solid var(--color-link);
    border-bottom-width: 2px;
    border-right-width: 2px;
    padding: 2px 4px;
    border-radius: 4px;
    background-color:  #fafcff;
    text-align: center;
    color: var(--color-link);
    line-height: 1.3em;
    margin-bottom: 5px;
}

.buttons-Link:hover, .buttons-Link:focus {
    background-color: var(--color-link);
    color: #fff;
    text-decoration: none;
}

.buttons-Toolbar {
    margin-top: 35px;
    margin-bottom: 35px;
    position: sticky;
    top: 0;
    z-index: 10;
    background-color: #fff;
    padding-top: 2px;
    padding-bottom: 2px;
    text-align: center;
}


/*******************************************************************************
* .commandkey-
*******************************************************************************/

.commandkey-Family {
    font-size: smaller;
    color: #666;
}

.commandkey-Key {
    border-style: solid;
    border-width: 1px;
    border-radius: 5px;
    padding: 5px;
    display: inline-flex;
    box-sizing: border-box;
    margin-right: 3px;
}

.commandkey-Link:hover {
    text-decoration: none;
}

.commandkey-Link:hover .commandkey-Title {
    text-decoration: underline;
}

.commandkey-Idalpha {
    font-size: smaller;
    line-height: 1;
}

@media (max-width: 500px) {
    
    .commandkey-Type {
        display: block;
        margin-bottom: 10px;
    }
}


/*******************************************************************************
* .credit-
*******************************************************************************/

.credit-Entry {
    margin-left: 84px;
}

.credit-Picto {
    vertical-align: middle;
}


/*******************************************************************************
* .fiche-
*******************************************************************************/

.fiche-Header {
    margin-bottom: 30px;
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #eff5fb;
    border-radius: 8px;
}

.fiche-Header h1 {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.5em;
    font-weight: 400;
}

.fiche-Detail {
    margin-top: 15px;
}

.fiche-Detail p:last-child {
    margin-bottom: 0;
}


/*******************************************************************************
* .footer-
*******************************************************************************/
    
.footer-Container {
    margin-top: 40px;
    background-color: #25617a;
    padding: 10px 30px;
	font-family: 'Oxygen', sans-serif;
}

.footer-Container ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    padding: 0;
    margin: 0;
}

.footer-Container li {
    list-style: none;
    padding: 0;
    margin-left: 10px;
    margin-right: 10px;
}

.footer-Container a, .footer-Container a:visited {
    text-decoration: none;
    color: #fff;
    font-size: 0.85em;
}

.footer-Container a:hover {
    text-decoration: underline;
}

@media (max-width: 999px) {
    
    .footer-Container ul {
        justify-content: center;
        justify-content: space-around;
    }
}


/*******************************************************************************
* .header-
*******************************************************************************/
    
.header-Container {
    margin-bottom: 40px;
    height: 72px;
    background-color: #25617a;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 30px;
    padding-right: 30px;
	font-family: 'Oxygen', sans-serif;
}

.header-Details {
    display: none;
}

.header-Menu {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
    flex-grow: 1;
    justify-content: flex-end;
    margin-right: 40px;
}

.header-Menu li {
    margin: 0;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 1.1em;
}

.header-Menu a, .header-Menu a:visited {
    text-decoration: none;
    color: #fff;
}

.header-Menu a:hover {
    text-decoration: underline;
}

.header-Search {
    display: flex;
}

.header-Search input {
   border: 1px solid #25617a;
   padding: 4px;
   border-radius: 4px;
}

.header-Search input::placeholder {
    color: #25617a;
}

.header-Search button {
    border: none;
    background-repeat: no-repeat;
    background-image: url("images/search24.png");
    background-position: center center;
    padding: 0;
    width: 28px;
    min-height: 28px;
    background-color: #25617a;
    margin-left: 4px;
    color: #fff;
}

.header-Search button:hover, .header-Search button:focus {
    background-image: url("images/search28.png");
    border-color: #fff;
}

.header-Title {
    display: block;
    min-height: 68px;
    background-repeat: no-repeat;
    background-image: url("../images/circleicon68.png");
    color: #fff;
    text-decoration: none;
}

.header-Title:visited {
    color: #fff;
}

.header-Title:hover {
    text-decoration: underline;
}

.header-Title_1 {
    display: block;
    padding-left: 85px;
    font-size: 22px;
    line-height: 22px;
    padding-top: 8px;
    padding-right: 30px;
}
.header-Title_2 {
    display: block;
    padding-left: 100px;
    font-size: 16px;
    line-height: 16px;
    padding-top: 10px;
    padding-bottom: 5px;
}

@media screen and (max-width: 1099px) {
    
    
    .header-Container {
        flex-flow: column;
        height: auto;
        min-height: 72px;
        position: relative;
        justify-content: flex-start;
        align-items: start;
    }
    
    .header-Details {
        display: block;
        align-self: center;        
    }
    
    .header-Details summary {
        height: 26px;
        width: 30px;
        display: block;
        position: absolute;
        top: 14px;
        right: 30px;
        box-sizing: border-box;
        border-color: #fff;
        padding-left: 4px;
        padding-top: 1px;
    }
    
    .header-Details summary {
        list-style: none;
    }
    
    .header-Details summary::-webkit-details-marker {
        display: none;
    }
    
    .header-Details summary span {
        display: block;
        margin-top: 6px;
        width: 30px;
        height: 3px;
        background-color: #fff;
    }
    
    .header-Details ul {
        margin: 0;
        padding-left: 0;
        padding-bottom: 10px;
        padding-top: 10px;
    }
    
    .header-Details li {
        text-align: center;
        list-style: none;
        margin-bottom: 10px;
    }
    
    .header-Details a, .header-Details a:visited {
        color: #fff;
    }
    
    .header-Menu {
        display: none;
    }
    
    .header-Scrutari {
        display: none;
    }
}


/*******************************************************************************
* .entries-
*******************************************************************************/

.entries-Index {
    position: sticky;
    top: 0;
    font-size: smaller;
}

.entries-Link {
    font-weight: 400;
}

.entries-Unit .fichotheque-LinkList a {
    padding-left: 10px;
    
}

.entries-Unit .fichotheque-UnitTitle {
    font-size: 1.1rem;
    padding-left: 12px;
    padding-right: 12px;
    padding-top: 4px;
    padding-bottom: 6px;
  
}

.entries-Unit .fichotheque-LinkList li {
    padding-left: 10px;
  padding-right: 10px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.entries-Unit {
    position: relative;
}

/*******************************************************************************
* .nav-
*******************************************************************************/

.nav-Entries {
    margin-top: 60px;
	font-family: 'Oxygen', sans-serif;
    font-size: 1.1em;
    font-weight: 300;
    margin-bottom: 30px;
    text-align: center;
    background-repeat: no-repeat;
    background-image: url("../images/circleicon68.png");
    background-position: top center;
    padding-top: 80px;
}


.nav-Global {
    margin-top: 60px;
	font-family: 'Oxygen', sans-serif;
}

.nav-Global h1 {
    font-size: 1.6em;
    font-weight: 300;
    margin-bottom: 30px;
    text-align: center;
    background-repeat: no-repeat;
    background-image: url("../images/circleicon68.png");
    background-position: top center;
    padding-top: 80px;
}

.nav-Family:nth-child(odd) {
   background-color: var(--alternate-background);
}

.nav-Family summary {
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: small;
}

.nav-Family .fichotheque-LinkList {
    margin-left: 20px;
    padding-bottom: 15px;
}

.nav-Label {
    color: var(--color-border);
}

.nav-Indexation .fichotheque-LinkList,
.nav-Details  .fichotheque-LinkList,
.nav-Infos .fichotheque-LinkList,
.nav-Infos .fichotheque-Link {
    font-size: 0.85em;
}

.nav-Info {
    margin-top: 20px;
}

.nav-Infos {
    margin-bottom: 50px;
    padding-left: 20px;
    border-left-color: var(--color-border);
    border-left-style: solid;
    border-left-width: 1px;
    font-family: 'Oxygen', sans-serif;
}

.nav-Total {
    font-size: smaller;
}




/*******************************************************************************
* .sommaire-
*******************************************************************************/

.sommaire-Container {
    position: relative;
}

.sommaire-H1 {
    text-align: center;
    padding-top: 200px;
    background-repeat: no-repeat;
    background-position: top center;
    background-image: url("../images/ibis180.png");
    line-height: 2em;
    font-weight: 300;
}

.sommaire-H2 {
    font-size: 1.5em;
    font-weight: 300;
    margin-top: 30px;
    margin-bottom: 30px;
    text-align: center;
    background-repeat: no-repeat;
    background-image: url("../images/circleicon68.png");
    background-position: top center;
    padding-top: 80px;
}

.sommaire-Main, .sommaire-Nav {
    margin: auto;
    padding-left: 10px;
    padding-right: 10px;
    max-width: 800px;
}

.sommaire-Nav {
	font-family: 'Oxygen', sans-serif;
}

.sommaire-Title_1 {
    font-size: 2.0em;
    display: block;
}

.sommaire-Title_2 {
    font-size: 1.5em;
    display: block;
    margin-top: 20px;
}

@media (min-width: 1400px) {
    
    .sommaire-Nav {
        width: 420px;
        position: absolute;
        top: 150px;
        right: calc(25vw - 305px);
        margin: none;
    }
    
    .sommaire-Main {
        width: 800px;
        margin-left: calc(50vw - 610px);
    }
}


/*******************************************************************************
* .structure-
*******************************************************************************/

.structure-Container {
    display: flex;
    margin: auto;
    justify-content: space-around;
}

.structure-Main {
    margin-right: 10px;
    margin-left: 10px;
}

.structure-Nav {
    width: 300px;
    margin-top: 60px;
}

@media (max-width: 999px) {
    
    .structure-Container {
        flex-flow: column;
    }
    
    .structure-Main article {
        max-width: 800px;
        margin: auto;
    }
    
    .fichotheque-MainUnit.fichotheque-Unit {
        margin-right: 0;
        margin-left: 0;
    }
    
    .structure-Main {
        margin-right: 15px;
        margin-left: 15px;
    }
    
    .structure-Nav {
        width: auto;
        margin-right: 15px;
        margin-left: 15px;
        margin-top: 40px;
    }
}


@media (min-width: 1000px) {
    
    .structure-Main {
        width: 60%;
    }
    
    .structure-Nav {
        width: 360px;
    }
    
    .fichotheque-MainUnit.fichotheque-Unit {
        margin-right: 15px;
        margin-left: 15px;
    }
}

@media (min-width: 1300px) {
    
    .structure-Container {
        display: flex;
        width: 100%;
        max-width: 100vw;
        justify-content: start;
    }
    
    .structure-Main {
        width: 800px;
        margin-left: calc(50vw - 610px);
        margin-right: calc(25vw - 305px);
    }

    .structure-Nav {
        width: 420px;
    }
    
    .fichotheque-MainUnit.fichotheque-Unit {
        margin-right: 35px;
        margin-left: 35px;
    }
}
