@import url(https://fonts.googleapis.com/css?family=Inconsolata|Open+Sans:300,400,600);

*{
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}
html {
   height:100%;
   color: #2a2a2a;
   font-family: 'Open Sans',sans-serif;
   font-size: 1em;
   margin: 0;
   padding: 0;
   vertical-align: baseline;
   word-wrap: break-word;
}
body {
   background-color: white;
   font-family: 'Open Sans', sans-serif;
   font-weight: 400;
   color: #2a2a2a;
   max-width:960px;
   margin:auto;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   min-height:100%;
   border-right: thin solid #eaeaed;
   border-left: thin solid #eaeaed;

}
h1{
   font-size: 2em;
   font-weight: bold;
   line-height: normal;
   margin: 0 0 1rem 0;
   text-transform: uppercase;
}
   
h2{
   color: #595959;
   font-size: 1.4em;
   font-weight: bold;
   line-height: normal;
   margin: 1rem 0;
   text-transform: uppercase;
}
   
h3{
   color: #E6142D;
   font-size: 1.25em;
   font-weight: bold;
   line-height: normal;
   margin: 1rem 0;
}
   
h4{
   color: #2A2A2A;
   font-size: 1.125em;
   font-weight: bold;
   line-height: normal;
   margin: 1rem 0;
}
   
h5,h6{
   color: #595959;
   font-size: 1.062em;
   font-weight: bold;
   line-height: normal;
   margin: 1rem 0;
}
p {
   margin:1em 0;
   text-indent:unset;
} 
a, a:link, a:visited{
   text-decoration:none;
   color:#e6142d;
}
   
a:hover{
   text-decoration:underline;
}
 
a:active, a:focus {
}
.visuallyhidden{
   position: absolute;
   left:-20000px;
   height:0;
}

/* a[href^="tel"]::before {
    content: "📞 ";
} */
header{
   width:100%;
   max-width: inherit;
   z-index:100;
   background-color:white;
}
header img{
   height:2em;
   margin:2em;
   width:auto;
}
header h1 div{
   display:flex;
   flex-direction: row;
   align-items: center;
}
header h1 a{
   display:flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   height:1.8em;
   margin:0;
   padding:0.5em;
}
header h1 img{
   width:auto;
   margin:0;
   height:100%;
}
header h1 {
   display:flex;
   justify-content: space-between;
   align-items: center;
   padding-left:1em;
   background-color:#e6142d;
   font-size:1.75rem;
   font-weight: 400;
   color:#ffffff;
   text-transform: none;
   margin:0;

}
header h1 a:link, 
header h1 a:visited{
   text-align:center;
   text-decoration:none;
   background-color:transparent;
}
header h1 a:hover, 
header h1 a:active{
   text-decoration:none;
   background-color:rgba(255,255,255,0.5);
}
header label{
   color:white;
   font-size: 50%;
}


div.main{
   display: flex;
   flex-direction: column;
   justify-content:center;
   align-items: center;
   padding:2em 1.5rem!important;
   flex-grow: 1;
   /* height:100%; */
}

.closebutton img {
   width: 50px;
   height: 50px;
   border-radius: 25px;
}
section.fixed{
   display: flex;
   flex-direction: column;
   align-items:center;
   padding:0.5rem;
   margin-top:0;
   width:100%;
   /* max-width:500em;
   max-height:500em; */
   transition-property:margin-top;
   transition-duration: 50ms;
}
section.move{
   margin-top:-1000%;
   /* max-width:0;
   max-height:0; */
   transition-property:margin-top;
   transition-duration: 50ms;
}
.searchform{
   flex-grow: 1;
   color:rgba(255,255,255,0.7);
   width:100%;
   position:relative;
   padding: 2rem 0 0 0;
   max-width:75%;
}
.searchform input[type="button"]{
   height: 3rem;
   width: 5em;
}
.searchhelp{
   color:initial;
   margin:0.5rem 0;
   }
.searchbox{
   display: flex;
   flex-direction: row;
   flex-wrap: nowrap;
   justify-content: center;
   align-items: center;
   border: 3px solid #707070;
   background-color: #EAEAED;
   background-image: none;
   border-radius: 75px;
   padding: 1em 1em 1em 2em;
   font-size:1em;
}
.searchinput{
   flex-grow: 1;
   border:none;
   border-bottom: 1px solid #2a2a2a;
   font-family:inherit;
   font-size:1.75rem;
   font-weight:inherit;
   color:#2a2a2a;
   background-color:transparent;
}

#suggestions{
   display:none;
   position:absolute;
   z-index:100;
   flex-direction: column;
   justify-content:flex-start;
   margin-left: 1em;
   width: 90%;
   left:2em;
   max-height:300px;
   overflow:auto;
   padding: 0!important;
   font-size:1em;
   background-color:#FFF;
   margin: auto;
   color:black;
}

#suggestions hr{
   border-top: thin solid lightgray;
   margin: 10px 0;
}
#suggestions hr:last-child{
   border:none;
}

.sug-template{
   display: flex;
   flex-direction: column;
   background-color:#EAEAED;
   padding:0.5rem;
}

 /*résultats*/
#mess{
   display:none;
}
#results{
   display:none;
   flex-direction: column;
   border: thin solid #eaeaed;
   width: 100%;
   
   padding: 0.5rem;
   margin-top:2em;
}
#results .more.hidden{
   max-height:0;
   overflow:hidden;
}

#results h3 {
   font-weight: 400;
   font-style: inherit;
}
#results h3 span{
   font-weight:600;
   font-style:normal;
}
#results h3.trait {
    margin-top: 1em;
    border-top: thin double lightgray;
}
#results h5 {
   font-weight: normal;
   margin: 1em 0.2em!important;
}

#results .cat a:link,
#results .cat a:visited{
   text-decoration:none;
}
#results .cat a:hover,
#results .cat a:active{
   text-decoration:underline;
}
#results .cat a:focus{
   text-decoration:underline;
}
#results .cat .closed,
#results .cat .open{
   display:block;
   margin-left:2em!important;
   margin-bottom:0.5em;
}
#results .cat .closed:before{
   content: "\025B8";
   font-size: 130%;
   margin-right: 5px;
   color: rgba(0,0,0,0.6);
}
#results .cat .open:before{
   content: "\025BE";
   font-size: 130%;
   margin-right: 5px;
   color: rgba(0,0,0,0.6);
}
#results h4{
   font-weight: bold;
   font-style: inherit;
   margin-top: inherit;
}
#results a{
   margin-left: 2em!important;
}


body #maqdescscont .cours label{
   color:#2a2a2a;
   }

#doc{
   margin:1rem 0.5rem;
   border: thin solid #eaeaed;
}
#doc .doc-content{
   border-radius: 0;
   margin-top:0;
   padding:0;
}
#doc label, .cours label{
   color: #595959;
   font-size: 1.4em;
   font-weight: bold;
   line-height: normal;
   margin: 1rem 0;
   text-transform: uppercase;
   font-style:inherit;
   display: inline-block;
}
.cours, .biblio{
   margin: 0.5rem 3rem 0.5rem 0.5rem;
}
.closebutton{
   /* float:right; */
   width:auto!important;
   height:auto!important;
}
   
.closebutton img, a.copylink img{
   height:2.5em!important;
   width:2.5em!important;
   border-radius:3px!important;
}
#doc > div:first-child{
   display: flex;
   flex-direction: row;
   flex-wrap: nowrap;
   justify-content: space-between;
   align-items: center;
   padding:0.5em;
   background-color: rgba(0,0,0,0.04);
}
/* #doc a.copylink{
   display:inline-block;
   height:2em;
   line-height:2em;
   padding:0 1em;
}
#doc a.copylink img{
   height:100%;
   width:auto;
} */

 
.biblio h3{
   margin:0.5em;
   font-style:italic;
}
.biblio h4{
   margin:0.2em 1em;
   font-weight:300;
}
.searchform input[type="button"]{
   /* font-size:2em; */
   border:none;
   background: url(../img/loupe-rouge.png) center center no-repeat;
   background-size: contain;
   cursor: pointer;
}
.searchhelp{
   font-style:italic;
   color:#545454;
   padding:0.1em 1.5em 0.6em 1.5em;
   text-align:center;
}

.bookicon{
   height:8em;
   width:8em;
}
.gslink:link, .gslink:visited .gslink:hover, .gslink:active{
   display: flex;
   flex-direction: column;
   align-items: center;
   text-decoration:none;
   color:#545454;
}
/* //BIBLIOGRAPHIES */
div.lectures{
   margin:3em;
}
div.cours .lectures{
   margin: 0 0.5rem 0.5rem 0.5rem;
}
div.lectures h2{
   color: #E6142D;
   font-size: 1.25em;
   font-weight: bold;
   line-height: normal;
   margin: 1rem 0;
   text-transform:initial;
   text-style:initial;
}
div.lectures h3{
   color: #2A2A2A;
   font-weight: 400;
   line-height: normal;
   margin: 0.5rem;
   font-style: initial;
}
div.lectures div.lectlist{
   margin: 0.5rem;
   }



/* do not group these rules */
*::-webkit-input-placeholder {
   color:#2a2a2a;
   opacity:1;
   font-weight:300;
   font-style: italic;
}
*:-moz-placeholder {
   color:#2a2a2a;
   opacity:1;
   font-weight:300;
   font-style: italic;
}
*::-moz-placeholder {
   color:#2a2a2a;
   opacity:1;
   font-weight:300;
   font-style: italic;
}
*:-ms-input-placeholder {
   color:#2a2a2a;
   opacity:1;
   font-weight:300;
   font-style: italic;
}
*::-ms-input-placeholder {
   color:#2a2a2a;
   opacity:1;
   font-weight:300;
   font-style: italic;
}
*::placeholder {
   color:#2a2a2a;
   opacity:1;
   font-weight:300;
   font-style: italic;
}

footer{
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   justify-content: center;
   border-top:0.4em solid #e6142d;
   padding:1em;
   text-align:center;
}
footer *{
   margin:0.2em 1em;
}


@media screen and  (min-width: 300px) and (max-width: 574px) {
   header h1  {
      font-size:100%;
   }
   .searchinput{
      font-size:100%;
   }
   .searchform input[type="button"]{
      height:2.5em;
      width:2.5em;

   }
}
@media (min-width: 575px) {
   header h1  {
      font-size:200%;
   }
   .searchinput{
      font-size:200%;
   }
   .searchform input[type="button"]{
      height:5em;
      width:5em;

   }

}

/* BIBLIOGRAPHIES DANS LES DESCRIPTIFS DE COURS */
.lectures .contlectprinc,
.lectures .contlectsecond{
   margin:0 1em;
}
.lectures .lectprinc,
.lectures .lectsecond{
   font-size:1em!important;
}
.lectures .item{
   margin:0 1em;
   border-bottom: thin solid rgba(0,0,0,0.1);
   padding: 1em 0;
}
.lectures .item .titre{
   font-style:italic;
   font-weight: 600;
   color: rgba(0,0,0,0.7);
}
.lectures .item ul{
   margin: 0 2em;
   list-style: circle;
}
.lectures .item ul li{
   margin: 0 0.5em;
}

.lectures label.emprunt,
.lectures label.achat{
   text-transform: none !important;
   font-size: 1em !important;
   font-style: italic !important;
   font-weight: normal !important;
   margin: 0.7em 0 0.3em 0 !important;
}
/* BIBLIOGRAPHIES DANS LES DESCRIPTIFS DE COURS */


/* //ROULETTE TIMER */
.lds-ring {
   position: fixed;
   z-index:30000;
   left:50%;
   top:50%;
  /* display: inline-block;
  position: relative; */
  width: 80px;
  height: 80px;
  margin-left:-40px;
  margin-top:-40px;
}
.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 64px;
  height: 64px;
  margin: 8px;
  border: 8px solid #ff9933;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #ff9933 transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* //ROULETTE TIMER */
