
/**********************************************/

/* CSS COMMUN A TOUTES LES APPLIS */

/**********************************************/

/****************************************************/

/* STRUCTURE */

/****************************************************/

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -moz-user-select: none;
  -webkit-user-select: none; 
}

body {
  font-family: "open-sans", sans-serif;
  -webkit-overflow-scrolling: touch;
}

/****************************************************/

/* ACCUEIL */

/****************************************************/

/* OUVERTURE DE LA PAGE */

#accueil {
  background-color: #fff;
  text-align: center;
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

#loader {
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -75px 0 0 -75px;
  border: 16px solid #f3f3f3;
  border-radius: 50%;
/*  border-top: 16px solid #3498db;*/
  border-top: 16px solid rgba(180, 230, 10, 0.9);
  width: 100px;
  height: 100px;
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.slidBottom {
  position: relative;
  -webkit-animation-name: animatebottom;
  -webkit-animation-duration: .37s;
  animation-name: animatebottom;
  animation-duration: .37s;
}

@-webkit-keyframes animatebottom {
  from { top:-100px; opacity:0 } 
  to { top:0px; opacity:1 }
}

@keyframes animatebottom { 
  from{ top:-100px; opacity:0 } 
  to{ top:0; opacity:1 }
}

.slidTop {
  position: relative;
  -webkit-animation-name: animatetop;
  -webkit-animation-duration: .37s;
  animation-name: animatetop;
  animation-duration: .37s;
}

@-webkit-keyframes animatetop {
  from { bottom:-100px; opacity:0 } 
  to { bottom:0px; opacity:1 }
}

@keyframes animatetop { 
  from{ bottom:-100px; opacity:0 } 
  to{ bottom:0; opacity:1 }
}

.slidRight {
  position: relative;
  -webkit-animation-name: animateright;
  -webkit-animation-duration: 1s;
  animation-name: animateright;
  animation-duration: 1s;
}

@-webkit-keyframes animateright {
  from {left:-1000px; opacity:0;} 
  to {left:0; opacity:1;}
}

@keyframes animateright { 
  from{left:-1000px; opacity:0;} 
  to{left:0; opacity:1;}
}

.slidLeft {
  position: relative;
  -webkit-animation-name: animateleft;
  -webkit-animation-duration: 1s;
  animation-name: animateleft;
  animation-duration: 1s;
}

@-webkit-keyframes animateleft {
  from {right:-1000px; opacity:0} 
  to {right:0; opacity:1}
}

@keyframes animateleft { 
  from{right:-1000px; opacity:0} 
  to{right:0; opacity:1}
}

.slidRightRot {
  position: relative;
  -webkit-animation-name: animaterightrot;
  -webkit-animation-duration: 1s;
  animation-name: animaterightrot;
  animation-duration: 1s;
}

@-webkit-keyframes animaterightrot {
  from {left:-1000px; opacity:0;transform:rotate(-180deg)} 
  to {left:0; opacity:1;transform:rotate(0deg)}
}

@keyframes animaterightrot { 
  from{left:-1000px; opacity:0;transform:rotate(-180deg)} 
  to{left:0; opacity:1;transform:rotate(0deg)}
}

/* ScaleIn */

.scaleIn {
  -webkit-animation-name: scalein;
  -webkit-animation-duration: 0.5s;
  animation-name: scalein;
  animation-duration: 0.5s;
}

@-webkit-keyframes scalein {
  from {opacity:0; transform: scale(0, 0)} 
  to {opacity:1; transform: scale(1, 1)}
}

@keyframes scalein { 
  from{opacity:0; transform: scale(0, 0)} 
  to{opacity:1; transform: scale(1, 1)}
}

/* FadIn */

.fadIn {
  -webkit-animation-name: fadin;
  -webkit-animation-duration: 1s;
  animation-name: fadin;
  animation-duration: 1s;
}

@-webkit-keyframes fadin {
  from {opacity:0} 
  to {opacity:1}
}

@keyframes fadin { 
  from{opacity:0} 
  to{opacity:1}
}

/**/

.bounceIn {
  animation-duration: .5s;
  animation-name: bounceIn;
}

@keyframes bounceIn {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  40% {
    transform: scale(1.2);
    opacity: 1;
  }
  70% {
    transform: scale(0.8);
  }
  100% {
    transform: scale(1);
  }
}

/**/

/* Hover Shadow */

@keyframes hover {
  50% {
    -webkit-transform: translateY(-3px);
    -ms-transform: translateY(-3px);
    transform: translateY(-3px);
  }

  100% {
    -webkit-transform: translateY(-6px);
    -ms-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@-webkit-keyframes hover-shadow {
  0% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }

  50% {
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }
}

@keyframes hover-shadow {
  0% {
    -webkit-transform: translateY(6px);
    -ms-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }

  50% {
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateY(6px);
    -ms-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }
}

.hover-shadow {
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: -webkit-transform;
  transition-property: transform;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

.hover-shadow:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 80%);
  /* W3C */
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
}

.hover-shadow {
  -webkit-transform: translateY(-6px);
  -ms-transform: translateY(-6px);
  transform: translateY(-6px);
  -webkit-animation-name: hover;
  animation-name: hover;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

.hover-shadow:before {
  opacity: .4;
  -webkit-transform: translateY(6px);
  -ms-transform: translateY(6px);
  transform: translateY(6px);
  -webkit-animation-name: hover-shadow;
  animation-name: hover-shadow;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  -webkit-animation-delay: .2s;
  animation-delay: .2s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/*****/


@-webkit-keyframes static-shadow {
  0% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }

  50% {
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }
}

@keyframes static-shadow {
  0% {
    -webkit-transform: translateY(6px);
    -ms-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }

  50% {
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateY(6px);
    -ms-transform: translateY(6px);
    transform: translateY(6px);
    opacity: .4;
  }
}

.static-shadow {
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: -webkit-transform;
  transition-property: transform;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

.static-shadow:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 80%);
  /* W3C */
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
}

.static-shadow {
  -webkit-transform: translateY(-12px);
  -ms-transform: translateY(-12px);
  transform: translateY(-12px);
  -webkit-animation-name: hover;
  animation-name: hover;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

.static-shadow:before {
  opacity: .4;
  -webkit-transform: translateY(6px);
  -ms-transform: translateY(6px);
  transform: translateY(6px);
  -webkit-animation-name: hover-shadow;
  animation-name: hover-shadow;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/****************************************************/

/* DISPOSITIONS */

/****************************************************/

#page {
  background-color: #fff;
  /*display: none;*/
  position: absolute;
  overflow: hidden;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-overflow-scrolling: touch;/* scroll fluide ios */
}

#motif {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.grd-1-1 {
  display: grid;
  grid-gap: 1em;
  grid-template-columns: 1fr 1fr;
  height: 100%;
  position: relative;
}

.inlBlk {
  display: inline-block;
  vertical-align: top;
}

.inlBlkB {
  display: inline-block;
}

.ctrVerti {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

/****************************************************/

/* HEADER */

/****************************************************/

#hdBox {
  padding: 1em 1em .5em;
  position: absolute;
  top: 0;
}

#avatarHd {
   border-radius: 50%;
   box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
   display: inline-block;
   height: 65px;
   vertical-align: top;
   width: 65px;
}

.avtr {
   border-radius: 50%;
   vertical-align: top;
}

#hdTxtBox {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 25px;
  display: inline-block;
  padding: .2em 1em .5em;
}

#pseudoHd {
   display: inline-block;
   font-size: 1.3em;
   vertical-align: top;
}

.headerT {
  position: absolute;
  top: .5em;
  right: 0;
  text-align: right;
  z-index: 99;
}

.headerB {
  bottom: 0;
  margin-bottom: 1em;
  position: absolute;
  right: 0;
  text-align: right;
  z-index: 99;
}

#botTbi {
  bottom: 0;
  cursor: pointer;
  position: absolute;
  right: 5px;
  z-index: 99;
}

.botTbi {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  width: 30px;
}

.botTbi:hover {
  background-color: rgba(180, 230, 10, 0.9);
}

#topTbi {
  display: none;
  cursor: pointer;
  position: absolute;
  right: 5px;
  top: 5px;
  z-index: 99;
}

.topTbi {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  width: 30px;
}

.topTbi:hover {
  background-color: rgba(180, 230, 10, 0.9);
}

/* Icones */

.icBg40 {
  background-color: rgba(255, 255, 255, 0.5);
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  cursor: pointer;
  height: 40px;
  margin: 0 .25em .3em .25em;
  width: 40px;
}

.icBg40:hover, .icBgClose:hover, .icPaint:hover, #paintHd:hover, .btResize:hover, .icClose:hover, .icWinClose:hover, .icWinOpen:hover, .icView:hover, .icMasq:hover, .icUndo:hover, .icRedo:hover, .icCorb:hover, #closeProfil:hover {
  background-color: rgba(180, 230, 10, 0.9);
}

/*.tool {
  margin-bottom: .5em;
}*/

.img, .imgBt{
  height: auto;
  max-width: 100%;
}

.icBgClose {
  background-color: rgba(255, 255, 255, 0.5);
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  cursor: pointer;
  height: 28px;
  position: absolute;
  right: 0;
  width: 28px;
  z-index: 1;
}

/* Pseudo */

#affPseudoBox {
  display: block;
}

#affPseudo {
  background-color: rgba(180, 230, 10, 0.9);
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  cursor: pointer;
  display: inline-block;
  font-size: .8em;
  font-weight: bold;
  padding: 0 1em 0 0;
}

#affPseudo:hover {
  background-color: rgba(255, 255, 255, 0.5);  
}

.icoEl {
  height: 22px;
  width: 22px;
}

/* Succes */

#affSucces ,#affSuccesComposer, #affSuccesEcrire, #affSuccesRendre {
  height: 22px
}

.affSucces {  
  background-color: rgba(255, 255, 255, 0.3);
  border-bottom-left-radius: 13px;
  border-top-left-radius: 13px;
  display: inline-block;
  font-size: .75em;
  padding: 0 .5em;
  text-align: right;
}

.txt08 {
  font-size: .8em;
}

/****************************************************/

/* OPTIONS */

/****************************************************/

.optionsT {
  background-color: rgba(255, 255, 255, 0.9);
  border-bottom: 1px dotted rgba(0, 0, 0, 0.1);
  font-size: .9em;
  margin-bottom: 1em;
  padding: .5em 200px 0 .5em;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 90;
}

.optionsB {
  background-color: rgba(255, 255, 255, 0.9);
  bottom: 0;
  border-top: 1px dotted rgba(0, 0, 0, 0.1);
  font-size: .9em;
  padding: .5em 200px 0 .5em;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 90;
}

.blocOptMenu {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  margin: 0 .5em .5em 0;
  padding: .2em .5em;
}

.blocOptMenu2 {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  margin: 0 .5em .5em 0;
  padding: .2em .5em;
}

.blocOptDeb {
  border-left: 3px dotted rgba(0, 0, 0, 0.15);
  border-right: 1px dotted rgba(0, 0, 0, 0.25);
  margin: 0 .5em 0 0;
  padding: 0 .5em 0 1em;
}

.blocOpt {
  border-right: 1px dotted rgba(0, 0, 0, 0.25);
  margin: 0 .5em 0 0;
  padding: 0 .5em 0 0;
}

.blocOptFin {
  margin: 0 .5em 0 0;
  padding: 0 .5em 0 0;
}

.lignOpt {
  margin: .4em 0;
}

.opt-1-1-1-1-1 {
  border-bottom: 1px dotted rgba(0, 0, 0, 0.25);
  display: grid;
  grid-gap: .5em;
  grid-template-columns: .8fr 1fr 1fr 1.5fr;
  margin: .3em 0;
  padding: 0 0 .2em 0;
  position: relative;
}

.opt-1 {
  margin: .4em 0; 
}

/* Input */

.inputNumber {
  width: 60px;
}

input {
  background-color: rgba(255, 255, 255, 0.5);
  border: 1px solid rgba(00, 00, 00, 0.2);
  border-radius: 3px;
  font-size: 1.1em;
  outline: none;
  -moz-user-select: text;
  -webkit-user-select: text; 
}

select {
  background-color: rgba(255, 255, 255, 0.5);
  border: 1px solid rgba(00, 00, 00, 0.2);
  border-radius: 3px;
  font-size: 1.1em;
  -moz-user-select: text;
  -webkit-user-select: text; 
}

.labelBtB {
  background-color: #147ae1;
}

.labelBtBc {
  ---background-color: #64b0fd;
  background-color: #4ea6ff;
}

.labelBtB, .labelBtBc {
  color: #fff;
  border: 0;
  border-radius: 30px;
  cursor: pointer;
  display: inline-block;
  padding: .1em .4em;
}

.labelBtB:hover, .labelBtBc:hover {
  opacity: .8;
}

.labelDisabled {
  background-color: rgba(0, 0, 0, 0.2);
  cursor: default;
}

.labelDisabled:hover {
  opacity: 1;
}

/* spectrum */

.sp-palette {
  max-width: 200px;
}

.sp-replacer {
  border: none;
  background: none;
  margin-top: -5px;
  padding: 0;
}

.sp-preview {
  border: none;
  background-image: none;
  height: 25px;
  margin-right: 0;
  width: 25px;
}

.sp-preview-inner {
  border-radius: 50%;
  /*border: 2px solid #ddd;*/
  border: 2px solid rgba(0, 0, 0, 0.1);
  height: 24px;
  width: 24px;
}

.sp-container {
  border: solid 1px #ccc;
}

.sp-dd {
  display: none;
}

#colPageBox {
  position: relative;
}

/* Enregistrer */

#confDefStorEx, #confDefStorApp {
  background-color: rgba(0, 0, 0, 0.1);
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
  display: inline-block;
  margin-top: -.4em;
  padding: .5em;    
}

.exoSavSucces, .appSavSucces {
  background-color: #DFFF71;
  border: 4px solid #ADDD07;
  border-radius: 30px;
  color: #607A05;
  display: inline-block;
  margin: .5em 0 0 0;
  padding: .3em .5em;
}

/*Options Prof */

#optProf {
  overflow-y: auto;
}

#optProf {  
  ---background-color: rgba(0, 0, 0, 0.05);
  background-color: rgb(87 171 255 / 18%);
  ---border: 1px solid rgba(0, 0, 0, 0.1);
  border: 3px solid #aad2fb;
  border-radius: 4px;
  margin: .5em 0 1.5em;
  padding: 1em;
}

.optProf {
  background-color: rgb(87 171 255 / 18%);
  border: 3px solid #aad2fb;
  border-radius: 4px; 
  padding: .5em;
}

.optProf-1-1 {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

#optProf p {
  margin: 1em 0;
}

#optProf label{
  font-weight: bold;
}

.inptLg {
  width: 50%;
}

.oblig {
  color: red;
  font-size: 1.5em;
  font-weight: bold;
}

#optProf .btN{
  font-size: 1.2em;
  padding: .5em 1em;
}

.alertRes {
  background: #ff7c7c;
  color: #fff;
  font-size: .8em;
  left: 0;
  padding: .2em 1em;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 89;
}

#alertT {
  background: #f98b3c1c;
  border: 2px dotted #ef9e66;
  border-radius: 4px;
  color: #e26d19;
  display: none;
  font-size: 1.1em;
  margin: 0 0 1em;
  padding: .5em 1em;
}

#alertS {
  background: #f98b3c1c;
  border: 2px dotted #ef9e66;
  border-radius: 4px;
  color: #e26d19;
  display: inline-block;
  font-size: 1.1em;
  margin: .5em 0 0 .5em;
  padding: .5em 1em;
  width: 540px;
}

.alertOpt {
  background: #ff7c7c;
  color: #fff;
  font-size: .8em;
  padding: .2em 1em;
}

.succes, .alert, .info {
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 2px;
  font-size: 1.1em;
  margin: 0 0 1em;
  padding: .5em 1em;
}

.succes {
  background: #DFFAC7;
  color: #00BB00;
}

.succes a {
  color: #007fff;
}

.alert {
  background: #FEDEDB;
  color: #FF0000;
}

.info {
  background-color: #FFF9C7;
  border: 1px solid #FCD10B;
  color: #C37E23;
}

.succes::before {
  content:'✔ ';
  font-size: 1.2em;
}

.alert::before {
  content:'⚠ ';
  font-size: 1.5em;
}

.info::before {
  content:'📌 ';
  font-size: 1.2em;
}

/****************************************************/

/* APP */

/****************************************************/

#depoCompoBox {
  background-color: #eee;
  border: 8px solid #ddd;
  border-radius: 7px;
}

/* Sliders */

.slid {
  cursor: pointer;
  /*margin-bottom: 1.3em;*/
}

.slidHandle {
  border-radius: 50%;
  cursor: pointer;
  font-size: 1em;
  height: 30px;
  line-height: 1.5;
  text-align: center;
  width: 30px;
}

.ui-slider {
  position: relative;
  text-align: left;
}
.ui-slider .ui-slider-handle {
  position: absolute;
  ---z-index: 3;
  ---width: 1.2em;
  ---height: 1.2em;
  ---cursor: default;
  -ms-touch-action: none;
  touch-action: none;
}
.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 2;
  font-size: .7em;
  display: block;
  border: 0;
  background-position: 0 0;
}

.ui-slider-horizontal {
  height: .5em;
}
.ui-slider-horizontal .ui-slider-handle {
  top: -.7em;
  margin-left: -.9em;
}
.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
  left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
  right: 0;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.slidBox .ui-button.ui-state-disabled:hover,
.slidBox .ui-button.ui-state-disabled:active {
  border: 3px solid rgba(255, 255, 255, 0.7);
  background: #007fff;
  font-weight: normal;
  color: #fff;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: #454545;
  text-decoration: none;
}

/* Component containers
----------------------------------*/

.slidBox .ui-widget.ui-widget-content {
  background-color: #81BEFC;
  border-radius: 6px;
}

/* InfoBulles */

.infBul1 {
  background-color: rgba(255, 255, 255, 0.5);
  border: 3px solid rgba(255, 255, 255, 0.7);
  border-radius: 50px;
  /*font-size: 1em;*/
  margin: .6em 0 .8em;
  padding: .2em .5em;
  position: relative;
}

.infBul1::after {
  border-top: 10px solid rgba(255, 255, 255, 0.7);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  content: "";
  height: 0;
  left: 10%;
  position: absolute;
  bottom: -13px;
  width: 0;
}

/****************************************************/

/* EXERCICES */

/****************************************************/

#propBtBox {
  margin: 1em 0 0;
  text-align: center;
}

#btVerifier, #btSuivant {
  border: 3px solid rgba(255, 255, 255, 0.7);
  border-radius: 30px;
  display: block;
  font-size: 2em;
}

#btVerifier {
  margin: 1em 0 0;
}

#btSuivant {
  margin: .5em 0 0;
}

#succesBox {
  display: none;
}

#smileyBox {
  margin: 0 0 2.5em;
}

#smiley {
  font-size: 120px;
  display: block;
  line-height: 1.3;
  margin: 0 auto;
  width: 140px;
}

.correct {
  background-color: #DFFF71  !important;
  border-color: #ADDD07 !important;
  color: #607A05   !important;
}

.incorrect {
  background-color: #FFB8B8  !important;
  border-color: #ff0000 !important;
  color: #ff0000  !important;
}

/****************************************************/

/* PROFIL */

/****************************************************/

#profilBox {
  background-color: rgba(255, 255, 255, 0.9);
  display: grid;
  grid-gap: 1em;
  grid-template-columns: 1fr;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

#profil {
  background-color: rgba(255, 255, 255, 0.9);
  border: 10px solid #aaa;
  border-radius: 30px;
  margin: auto;
  max-width: 60%;
  padding: 1em;
  position: relative;
}

#rstProfil {
  background-color: rgba(0, 0, 0, 0.15);
  border-radius: 30px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: .85em;
  line-height: 1.3;
  margin: 0 0 .3em 0;
  padding: .1em .4em;
}

#rstProfil:hover {
  background-color: rgba(180, 230, 10, 0.9);
}

#closeProfil {
  background-color: rgba(255, 255, 255, 0.7);
  position: absolute;
  right: -10px;
  top: -0;
}

#profilHd {
  background-color: #ddd;
  border: 5px solid #ccc;
  border-bottom: 12px solid #ccc;
  border-radius: 10px;
  font-size: 2em;
  margin: 0 0 .5em;
  padding: .3em;
  text-align: center;
}

#results {
  margin: 1em 0;
}

.resultBox {
  text-align: center;
}

.titreResult {
  background-color: rgba(255, 255, 255, 0.7);
  border: 3px solid rgba(255, 255, 255, 0.9);
  border-radius: 30px;
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  display: inline-block;
  margin: .3em 0 0;
  padding: .3em 1em;
}

#collect {
  height: 300px;
  overflow-y: auto;
}

.collectBox {
  background-color: #eee;
  border: 5px solid #aaa;
  border-radius: 10px;
  margin: .5em .5em 0 0;
  padding: .5em 0 .5em .5em;
}

.emojiBox {
  display: inline-block;
  height: 48px;
  margin: 0 .5em 1em 0;
  vertical-align: top;
}

.emojiX {
  background-color: #ddd;
  border: 2.5px solid rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  /*color: #555;*/
  color: rgba(255, 255, 255, 0.9);
  font-size: 2em;
  font-weight: bold;
  height: 48px;
  margin-top: 10px;
  text-align: center;
  width: 48px; 
}

.emoji {
  font-size: 3em;
}

.chart {
  background-color: rgba(255, 255, 255, 0.7);
  border: 5px solid rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  font-size: 2em;
  height: 100px;
  line-height: 2.8;
  margin: 0 auto;
  ---margin-top: 0px;
  margin: 0 auto;
  text-align: center;
  width: 100px;
}

/****************************************************/

/* INFO */

/****************************************************/

#infoBox {
  background-color: rgba(255, 255, 255, 0.8);
  display: grid;
  grid-gap: 1em;
  grid-template-columns: 1fr;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

#info {
  background-color: rgba(255, 255, 255, 0.9);
  border: 5px solid #d5e7f5;
  border-radius: 10px;
  margin: auto;
  max-width: 60%;
}

#infoHd {
  background-color: #007fff;
  border-bottom: 12px solid #d5e7f5;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  color: #fff;
  padding: 1em 2em 1em;
}

#infoHd h2 {
  margin: 0;
}

#author {
  font-size: .8em;
}

#logoInfo {
  float: right;
  margin-top: -4.5em;
}

#infos {
  font-size: .85em;
  padding: 2em;
}

#infos a {
  color: #007fff;
}

#infos a:hover {
  opacity: .8;
}

#version {
  font-weight: bold;
}


/****************************************************/

/* Info Contenus */

/****************************************************/

#addListInfoBox {
  background-color: rgba(255, 255, 255, 0.95);
  display: grid;
  grid-gap: 1em;
  grid-template-columns: 1fr;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

#addListInfo {
  background-color: #f0f8ff;
  border: 5px solid #77bbff;
  border-radius: 10px;
  font-size: 1.1em;
  margin: auto;
  max-width: 60%;
  padding: 2em;
}

/****************************************************/

/* PAINT */

/****************************************************/

#paintHd {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 2px;
  cursor: move;
  position: absolute;
  height: 25px;
  width: 100%;
  z-index: 8;
}

.icClose, .icWinClose, .icWinOpen, .icView, .icMasq, .icUndo, .icRedo, .icCorb {
  border-radius: 50%;
  cursor: pointer;
  height: 21px;
  /*opacity: .7;*/
  position: absolute;
  top: 0;
  width: 21px;
  z-index: 9;
}

.icClose {
  right: 0;
}

.icView, .icMasq {
  left: 28px;
}

.icView {
  background-color: rgba(255, 0, 0, 0.3);
}

.icUndo {
  right: 70px;
}

.icRedo {
  right: 50px;
}

.icCorb {
  right: 25px;
}

/*.icMasq {
  left: 60px;
}*/

.btResize {
  border-radius: 50%;
  cursor: pointer;
  position: absolute;
  bottom: 0;
  right: 0;
  height: 24px;
  /*opacity: .7;*/
  width: 24px;
  z-index: 2;
}

/* TOOLS */

#paintTools {
  background-color: rgba(255, 255, 255, 0.5);
  border-bottom: solid 3px rgba(255, 255, 255, 0.7);
  border-left: solid 3px rgba(255, 255, 255, 0.7);
  border-top: solid 3px rgba(255, 255, 255, 0.7);
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  padding: .1em 0/*.35em*/;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9;
}

.icPaint {
  background-color: rgba(255, 255, 255, 0.5);
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  cursor: pointer;
  height: 30px;
  margin: .3em .2em;
  width: 30px;
}

.sepTools {
  background-color: rgba(255, 255, 255, 0.7);
  height: 2px;
  margin: .3em 0;
}

.optTool {
  background-color: rgba(255, 255, 255, 0.5);
  border-bottom: solid 2px rgba(255, 255, 255, 0.7);
  border-left: solid 2px rgba(255, 255, 255, 0.7);
  border-top: solid 2px rgba(255, 255, 255, 0.7);
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  position: absolute;  
}

#sizePencilBox {
  position: relative;
}

#sizePenBox {
  /*background-color: rgba(255, 255, 255, 0.5);
  border-bottom: solid 2px rgba(255, 255, 255, 0.7);
  border-left: solid 2px rgba(255, 255, 255, 0.7);
  border-top: solid 2px rgba(255, 255, 255, 0.7);*/
  border-top-left-radius: 50%;
  border-bottom-left-radius: 50%;
  /*position: absolute;*/
  display: none;
  top: 50px;
  padding: .3em;
  right: 4.2em;
}

#temSizePen {
  background-color: #222;
  border-radius: 50%;
  height: 4px;
  width: 4px;
  /*position: absolute;
  top: -2px;
  left: -2px;*/
}

#slidSizePenBox {
  /*background-color: rgba(255, 255, 255, 0.5);
  border-bottom: solid 2px rgba(255, 255, 255, 0.7);
  border-left: solid 2px rgba(255, 255, 255, 0.7);
  border-top: solid 2px rgba(255, 255, 255, 0.7);
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;*/
  display: none;
  height: 90px;
  margin-left: -2em;
  /*position: absolute;*/
  top: 41px;
  width: 30px;
}

#slidSizePen {
  margin-left: -1.8em;
  ---position: absolute;
  ---top: 20px;
}

.rangeVrt {
  margin-top: 33px;
  transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  width: 80px;
}

#affSizePen {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  font-size: .8em;
  height: 18px;
  left: 5.6px;
  position: absolute;
  text-align: center;
  top: -24px;
  width: 18px;
}

#typForm {
  display: none;
  /*padding: .4em;*/
  right: 39px;
  top: 226px;
}

.typBox {
  margin: .3em;  
  height: 25px;
  padding: 4px;
  width: 25px;
}

#typ1, #typ2, #typ3 {
  cursor: pointer;
  height: 16px;
  margin: 0 auto;
  width: 16px;
}

#typ1 {
  background-color: transparent;
  border: 2px solid #222;
}

#typ2 {
  background-color: #878585;
  border: 2px solid transparent;
}

#typ3 {
  background-color: #878585;
  border: 2px solid #222;
}

#typLign {
  display: none;
  right: 39px;
  top: 191px;
}

.lignBox {
  margin: .3em;  
  height: 25px;
  width: 25px;
}

#lign1, #lign2, #lign3 {
  cursor: pointer;
}

.radius50 {
  border-radius: 50%;
}

.colPaint {
  margin: .5em 0 0;
  padding: 0 0 0 .0915em;
  text-align: center;
}

#inputImage {
  display: none;
}

/* TOOLS FONTS */

#textareaPaint {
  font-family: "Arial", sans-serif;
  font-size: 20px;
}

#toolsText {
  background-color: rgba(255, 255, 255, 0.5);
  /*border: solid 3px rgba(255, 255, 255, 0.7);*/
  border-radius: 6px;
  padding: .1em 1em;
  position: absolute;
  width: auto;
  z-index: 9;
}

/* COMMUNS */

hr {
  display: block;
  border: 1px dashed #57ABFF;
  height: 2px;
  margin: 1em 0;
}

.actif {
  border-bottom: 4px solid rgba(255, 155, 38, 0.7);
}

.dragOnly {
  cursor: move;
}

#alrtConf {
  background-color: rgba(255, 255, 255, 0.95);
  border: 8px solid #F4886B;
  border-radius: 7px;
  display: none;
  left: 50%;
  padding: 3em;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
}

.mesgConf {
  font-size: 1.7em;
}

.btRMedium, .btVMedium {
  font-size: 1.5em;
  margin: 1em .5em;
}