
/* Installation des fonts sur le serveur de livevoiceover!! */
/* fallback Google fonts not displaying -> Solution dans https://github.com/google/material-design-icons/issues/205 */
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: local('Material Icons'), local('MaterialIcons-Regular'), url(./fonts/google_fonts_icons.woff2) format('woff2');
}

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
/*  font-size: 24px;  */
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

a {
  text-decoration: none;
  cursor: pointer;
}

html, body {
  height: 100%;
  width: 100%;
  overflow: hidden;
  position: fixed;
  padding: 0;
  margin: 0;
}

.page {
/*    position: relative;  */
    position: absolute;
    top: 0px;
/*    width: 980px;  */
/*    height: 1600px;  */
    height: 100%;
/*    max-width: 900px;  */
/*    margin-left: auto;
    margin-right: auto;  */
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Chrome/Safari/Opera */
    -khtml-user-select: none; /* Konqueror */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
}

.pageInfo {   /* pour le whiteboard */
  position: absolute;
  left: 280px;
  top: 20px;
  z-index: 9;
}

/* Left side vertical menu bar */
.sideMenu {
  display: none;
        position: absolute;
        top: 30px;
        left: 0px;
        height: 100%;
/*        width: 120px; */
        text-align: center;
        background-color: #E9E9E9;
        z-index: 1;
    }
.sideMenu a {
        display: none;
/*        padding-top: 25px;
        padding-bottom: 25px; */
        color: darkblue;
    }

.sideMenu div {
  display: none;
  color: darkblue;
      }

.sideMenu_active {
  display: none;
        background-color: blue;
      }

a#M_mots_cles {
  position: absolute;
/*  padding-top: 340px;   /* premier élément du menu (supérieur) */
          }

div#M_edit_text {
  position: absolute;
  display: block;
  color: darkblue;
  z-index: 5;
  }

a#M_param {
  position: absolute;
        display: block;
      }

div#M_zoomSvg {
  position: absolute;
  display: block;
  color: darkblue;
  z-index: 5;
}
/*
a#M_favori {
        display: none;
      }

a#M_widget {
        display: block;
      }

a#M_edition {
        display: none;
      }
*/

div#facebook {
  position: absolute;
/*      left: 13px;
  top: 1035px; */
  z-index: 5;
}

div#infoPoint {
  position: absolute;
/*      left: 20px;
  top: 1520px; */
  z-index: 5;
}


/* style for text on path */
/*    @keyframes point11 {
      from {font-weight: normal;}
      to {font-weight: bold;}
    }
    .pathPoint11 {
      font-family: sans-serif;
      font-size: 11px;
    }
    .pathPoint11_show {
      font-family: sans-serif;
      font-size: 11px;
      animation-name: point11;
      animation-duration: 1s;
      animation-iteration-count: infinite;
    } */
/*    .endNumbers {
      font-family: "Times New Roman";
      font-size: 14px;
      stroke-width: 2;
      text-anchor: middle;
    }  */

/* Whiteboard */
    @keyframes turnWhiteboard1 {
      from {-webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg); opacity: 0; z-index: 0}
      to {-webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg); opacity: 1; z-index: 9}
    }
    .turnWB1 {
      animation-name: turnWhiteboard1;
      animation-duration: 1s;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
    }
    @keyframes turnWhiteboard2 {
      from {-webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg); opacity: 1; z-index: 9}
      to {-webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg); opacity: 0; z-index: 0}
    }
    .turnWB2 {
      animation-name: turnWhiteboard2;
      animation-duration: 1s;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
    }
    .whiteboard {
      position: absolute;
      opacity: 0;
      left: 10px;
      top: 50px;
      box-shadow: -3px -3px 9px 5px grey;
      background: lightyellow;
/*      width: 1000px;
      height:1460px;   */
      z-index: 0;
      font-family: "Comic Sans MS";
      font-size: 24px;
/*      transform: rotateX(0deg) rotateY(30deg) rotateZ(-5deg);  */
    }

    .txtArea {
      position: absolute;
      width: 100%;
      height: 200px;
    /*  overflow: scroll; */
      font-size: 30px;
      left: 0px;
      top: 30px;
      z-index: 1;  /* ATTENTION: z-index est utilisé dans le sideMenu (M_edit_text) pour déterminer l'affichage courant - texte ou paramètres (tags) */
      display: block;
/*      border: 8px solid white;  */
/*      border-bottom: 2px solid #E9E9E9;
      border-left: 0px solid #E9E9E9;
      border-top: 2px solid #E9E9E9;
      border-right: 0px solid #E9E9E9;
      border-radius: 30px; */
/*      border-left: 8px solid #F78181;
      border-right: 8px solid #F78181;   */
      background-color: #E9E9E9;
      overflow-x:hidden;
      overflow-y:auto;
    }

    #svgChangeAspect {
      display: block;
      position: absolute;
      top: 30px;
  /*    left: 150px;   */
    }

    .mainsvgDiv {    /* ses dimensions vont déterminer l'affichage du svg */
      overflow-y:scroll;
      overflow-x:hidden;
  /*    overflow: scroll; */
      position: absolute;
  /*    left:90px;  */
      width: 100%;
      height: 100%;
      top: 30px;  /* 30px */
  /*    right: 0px;  /* équivaut à occuper toute la place vers la droite  */
      bottom: 0px;  /* équivaut à occuper toute la place vers le bas à l'exception des 5 derniers pixels */
      z-index: 2;
      cursor: default;
      /* touch-action: pan-x pan-y;  /* pour désactiver les gestes de zoom et double click sur écrans tactiles et activer le scrolling vertical - fonctionne sur safari android ?? */
      /* touch-action: pan-up pan-down;  /* pour désactiver les gestes de zoom et double click sur écrans tactiles et activer le scrolling vertical - fonctionne sur safari android ?? */
    }

    /* Suppression de la scrollbar verticale: */
    /* !! pas de solution pour Firefox !! */
    .mainsvgDiv::-webkit-scrollbar {    /* Chrome + Safari + Opera + Samsung Internet*/
      display: none;
    }
    .mainsvgDiv {
      -ms-overflow-style: none;    /* Internet explorer + Edge */
    }

    #monFascicule {
      display: flex;            /* ok ok ok ok ok ok ok */
      flex-direction: column;   /* ok ok ok ok ok ok ok */
      flex-flow: column nowrap;
      justify-content: flex-start;
      align-items: center;
  /*    text-align: center;  */
  /*    height: 25000px;   */
      z-index: 2;
    }

    .mainSVG {
      /* SVG: viewport et viewbox sont définis dans l'élément SVG (voir html) */
  /*    display: absolute;  */
  /*    position: absolute; */
  /*    display: inline-block;  */
  /*    vertical-align: middle; */
/*      left: 0px;
      top: 0px;  */
  /*    height: 500px; */
      z-index: 2;
  /*    cursor: default;  */
  /*    overflow: hidden; */  /* Nécessair pour IE11  cf.: http://stackoverflow.com/questions/5971320/svg-image-is-not-cropped-in-ie9 */
    }


    .bgSlide1 {
/*      box-shadow: 3px -3px 7px 5px grey; */
      border: 4px solid grey;
      border-radius: 20px;
/*      position: relative;  */
/*      top: 145px;   */
/*      left: 130px;  */
      z-index: 5;
/*      width: 640px;  */
/*      height: 480px;  */
  /*    cursor: pointer;
      color: blue;  */
      background-color: #E9E9E9;
      fill: currentColor;
/*      transform: rotateX(0deg) rotateY(-60deg) rotateZ(20deg);   */
    }

    @keyframes bgS1 {
      from {box-shadow: 3px -3px 9px 5px grey; opacity: 1; z-index: 2}
      to {box-shadow: none; opacity: 0.2; z-index: 0}
    }
    .dimBgS1 {
      animation-name: bgS1;
      animation-duration: 0s;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
    }
    @keyframes bgS2 {
      from {box-shadow: none; opacity: 0.2; z-index: 0}
      to {box-shadow: 3px -3px 9px 5px grey; opacity: 1; z-index: 2}
    }
    .dimBgS2 {
      animation-name: bgS2;
      animation-duration: 0s;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
    }

    .play {
      position: absolute;
/*      top: 350px;
      left: 350px;  */
      width: 0;
      height: 0;
      border-top: 24px solid transparent;    /* Les bords sup et inf mettent en place un biseau transparent */
      border-left: 36px solid transparent;    /* Les bords en css sont biseautés: le gauche l'est vers la droite ce qui donne les côtés obliques du triangle quand la hauteur est définie à zéro */
      border-bottom: 24px solid transparent;   /* border-left sera changé à black pour que le triangle devienne visible. */
      z-index: 0;          /* z-index sera changé à 6 pour que le triangle devienne clickable */
      cursor: pointer;
    }

    .pause {
      position: absolute;
/*      top: 350px;
      left: 450px;  */
      width: 12px;
      height: 45px;
      border-right: 14px solid transparent;    /* border-right sera changé à black pour que le rectangle devienne visible. */
      border-left: 14px solid transparent;     /* border-left sera changé à black pour que le rectangle devienne visible. */
      z-index: 0;          /* z-index sera changé à 6 pour que les rectangles deviennent clickables */
      cursor: pointer;
    }
/*
    .actions {
      position: absolute;
      top: 140px;
      left: 800px;
      width:120px;
      height:480px;
      z-index: 1;
    }
*/
/*
    .menuContext {
      position: absolute;
      top: 620px;
      left: 10px;
      z-index: 3;
      width:100px;
      height:900px;
    }
*/
    .allTooltip {
      display: none;
      font-family: Courier New, Courier New, monospace;
      font-size: 9px;
    }

    #wbRegister {
      float: left;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: center;
    }

    #wbLogin {
      float: left;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: center;
    }
    #wbRegisterBtn {
      float: left;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: center;
    }

    #wbLoginBtn {
      float: left;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: center;
    }




    #wbProfile {
      float: right;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: space-around;
    }

    #wbRegisterConfirmText {
      float: right;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: space-around;
    }

    #wbText {
      float: right;
      display: flex;
    /*  justify-content: space-around; */
      justify-content: space-around;
    }

    /* CSS reads from Top to Bottom!!!!
    This means that if you have a rule specified for your .left element, it needs to be placed before your media query and not after */
    /* Desktop landscape: 1001-... */
    @media screen and (min-width: 1001px) and (orientation: landscape) {
      .page {width: 100%; height: 100%;}
      .mainsvgDiv {left: 0px;}
/*      .bgSlide1 {width: 120px; height: 110px; left: 15px; top: 55px;} */
      .bgSlide1 {width: 50px; height: 40px; left: 450px; top: 40px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 72px;}
      .fa {font-size: 60px;}
      .fa.fa-facebook-official {font-size: 80px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 13px; top: 500px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 13px; top: 400px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 13px; top: 600px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Laptop landscape: 851-1000 */
    @media screen and (min-width: 851px) and (max-width: 1000px) and (orientation: landscape) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 85px; height: 75px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 56px;}
      .fa {font-size: 50px;}
      .fa.fa-facebook-official {font-size: 65px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 8px; top: 400px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 8px; top: 300px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 8px; top: 500px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Tablet landscape: 641-850 */
    @media screen and (min-width: 641px) and (max-width: 850px) and (orientation: landscape) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 85px; height: 75px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 56px;}
      .fa {font-size: 50px;}
      .fa.fa-facebook-official {font-size: 65px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 8px; top: 400px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 8px; top: 300px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 8px; top: 500px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Mobile landscape: 360-640 */
    @media screen and (max-width: 640px) and (orientation: landscape) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 50px; height: 40px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 40px;}
      .fa {font-size: 40px;}  /* font awesome */
      .fa.fa-facebook-official {font-size: 50px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 3px; top: 420px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 3px; top: 360px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 3px; top: 480px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 480px; height:830px;}
    }

    /* Desktop portrait: 768-... */
    @media screen and (min-width: 768px) and (orientation: portrait) {
      .page {width: 100%; height: 100%;}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 120px; height: 110px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 72px;}
      .fa {font-size: 60px;}
      .fa.fa-facebook-official {font-size: 80px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 13px; top: 500px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 13px; top: 400px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 13px; top: 600px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Tablet portrait: 640-767 */
    @media screen and (min-width: 641px) and (max-width: 767px) and (orientation: portrait) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 85px; height: 75px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 56px;}
      .fa {font-size: 50px;}
      .fa.fa-facebook-official {font-size: 65px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 8px; top: 400px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 8px; top: 300px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 8px; top: 500px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Tablet portrait: 480-640 */
    @media screen and (min-width: 480px) and (max-width: 640px) and (orientation: portrait) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 85px; height: 75px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 56px;}
      .fa {font-size: 50px;}
      .fa.fa-facebook-official {font-size: 65px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 8px; top: 400px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 8px; top: 300px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 8px; top: 500px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Tablet portrait: 375-479 */
    @media screen and (min-width: 375px) and (max-width: 479px) and (orientation: portrait) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 85px; height: 75px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 56px;}
      .fa {font-size: 50px;}
      .fa.fa-facebook-official {font-size: 65px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 8px; top: 400px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 8px; top: 300px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 8px; top: 500px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 980px; height:830px;}
    }

    /* Mobile portrait: 320-374 */
    @media screen and (max-width: 374px) and (orientation: portrait) {
      .page {width: 100%; height: 100%}
      .mainsvgDiv {left: 0px;}
      .bgSlide1 {width: 50px; height: 40px; left: 450px; top: 55px;}
      .play {top: 95px; left: 25px;}
      .pause {top: 95px; left: 80px;}
      .material-icons {font-size: 40px;}
      .fa {font-size: 40px;}  /* font awesome */
      .fa.fa-facebook-official {font-size: 50px;}
      .fa.fa-user {font-size: 42px;}
      a#M_mots_cles {left: 3px; top: 420px;}
      div#M_edit_text {left: 540px; top: 40px;}
      a#M_param {left: 3px; top: 360px;}
      div#M_zoomSvg {left: 380px; top: 40px;}
      div#facebook {left: 3px; top: 480px;}
      div#infoPoint {left: 280px; top: 40px;}
      .whiteboard {width: 480px; height:830px;}
    }

    /* restriction de ce qui est imprimable */
    @media print {
    /*  #bs {display: none !important;}  */
      #svgdiv {display: none !important;}    /* !!!! ko :(  ??  */
      .mainsvgDiv {display: none !important;}    /* !!!! ko :(  ??  */
    }

/* contour des éléments <image>  */
.SVG_IMG {  /* image {  */
  /* outline: 2px solid grey; */
}
