:fullscreen {
  
}

* {  color:white; }

body {
    padding:0; margin:0;
    background: rgb(34,43,64);  /* fallback for old browsers */
    overflow: hidden;
}

.bee {
    height:100%;
    background-image: linear-gradient(45deg, #2A4584 1%, rgb(34,43,64) 100%);
    background-size: cover, cover;
    background-position: top, center;
    background-repeat: no-repeat, no-repeat;
    cursor: default;
}

.tutor { 
  display:none;
  overflow:hidden;
  position:absolute;
  left:20px;top:110px;width:200px;
  border:none;box-shadow:0px 0px 13px 2px black;
  z-index: 1000;
}

.diapositiva, #video_marco_interno, #examen, section {   
  height: 75vh;
  width: calc(75vh * 16 / 9);
  margin-top: 20px;
  border: 2px solid white;
  box-shadow: 1px 1px 20px 3px black;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.diapositiva { border-radius: 15px; }

.fullscreen { 
  height: 98vh;
  width: calc(98vh * 16 / 9);
  margin-top: 0px;
  border:none;
  box-shadow: none;
}

.video_marco_interno {
  box-shadow: none;
  border:none;
}

  .video_interno { 
    height:38vh; 
    border: 4px solid white;
    box-shadow: 1px 1px 10px 3px black;
    position:relative; float:right;
    top:50%; transform: translateY(-50%); 
    margin-right:30px; margin-top:20px;
  }

  .video_interno_fullscreen { 
    height:58vh;
    position: relative;
    top:50%; float:right; margin-right:30px;
}

video {
  background: black;
}

.flex { width: 100%; height: 100%; }


#examen { 
  display:none; 
  border: 0px solid white;
  box-shadow: none; 
  background: transparent;
  min-height: 80vh;
}

#cabecera {
  position: absolute; top: 0px; width: 100%; 
  color: white;
  height: 70px;
  overflow: hidden;
  padding: 10px;
  display: inline-flex;
  vertical-align: middle; text-align: right;
  border-bottom: 2px dotted rgba(255,255,255,.2);   
}

#cabecera #foto_perfil { border: 1px solid white; }

#cabecera label { 
  font-size: 70%; opacity:1; display: block; padding-bottom: 5px;
}

#cabecera span { font-size: 18px; }

#cabecera .reloj {
  position:absolute; right:20px; top:0px;
  border:none;
}

#cabecera .perfil {
  border-radius: 8px; background: white;
  border: 2px solid rgba(255,255,255,.8);
  box-shadow: 1px 1px 15px 1px black;
  position: fixed; 
}

#cabecera .titulo {
  font-size: 18px;
  opacity: .3;
  text-shadow: 1px 1px 3px black;
  text-align: left;
  margin-left: 20px; margin-right: 20px;
  margin-top: 20px;
}


#cabecera .participante, #foto_perfil, #cabecera .empresa, #cabecera .cliente { 
  margin-left: 10px; margin-top: 5px; text-align: left; 
}

#cabecera .empresa { margin-left:50px; margin-right: 10px; }

  #cabecera .participante {  }
  
  #participante { }

  #foto_perfil {     
    width: 55px; height: 55px;
    background-size:55px;
    background-position: center center;
    background-repeat: no-repeat;
    border: 2px solid rgba(255,255,255,.6);  
    border-radius: 8px;    
  }

#popup {
  z-index: 50000;
  position: absolute; top: 200px; padding: 20px; text-align: center;
  font-size: 20px; 
  box-shadow: 0px 0px 30px 1px black;
  width:20vw;  
  left:50%; transform: translateX(-50%);
  display: none;
  border-radius: 8px;
  border: 2px solid rgba(255,255,255,.8);
}

.subtitulo { 
  position: absolute; 
  bottom: 40px; padding: 10px 30px;
  border-radius: 8px;
  width: 70vw; max-width: 85vw; max-height: 80px;
  left:50%; transform: translateX(-50%);
  font-size: 1.3em; 
  background-color:rgba(0,0,0,1); 
  text-align: center;
  opacity: 0;
  z-index: 10000;
  overflow-y: auto;
}

#slide-window {
  z-index: 3000;
  position:fixed;
  width:100%;
  height:100%;
  overflow:hidden;
  top:0px;
  left:0px;
  z-index: 0;
  user-select: none;
}

#slides {
  z-index: 3001;
  display:none;
  height:100%;  
  position:absolute;
  margin:0px;
  padding:0px;
  -webkit-transform: translate3d(0px,0px,0px);
  transform: translate3d(0px,0px,0px);
  transition: all 0.66s ease; -webkit-transition: all 0.66s ease;   
}

#loading {
  width: 100%; height: 100%; background: transparent url('loading1.svg') center center no-repeat;
}

    .loading {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 9999;
        transition: 1s all;
        opacity: 0;
    }
    .loading.show {
        opacity: 1;
    }
    .loading.hide {
        opacity: 0;
    }
    .loading .spin {
        border: 5px solid hsla(185, 100%, 62%, 0.2);
        border-top-color: #3cefff;
        border-radius: 50%;
        width: 3em;
        height: 3em;
        animation: spin 1s linear infinite;
    }
    @keyframes spin {
      to {
        transform: rotate(360deg);
      }
    }

.slide {
  list-style:none;
  position: relative;
  float: left;
  margin: 0;
  padding: 0;
  width: 100% /*500px decia antes*/;
  height: 100%;
  text-align: center;
  background-size: cover; 
  background-position:50% 50%;
  color:#fff;  
  -webkit-transform: translate3d(0px,0px,0px);
  -webkit-transform-style: preserve-3d;
}

.alive { visibility:visible; }

.nav { 
  position:fixed; 
  z-index:10; 
  top:50%; 
  cursor:pointer; 
  color:#fff; 
  opacity:0.7; 
  transition: all 0.66s ease; -webkit-transition: all 0.66s ease; 
}

.nav:hover { opacity:1.0; }


#left { 
  z-index: 5000;
  left:3%; 
  background: transparent url(left.png) center center no-repeat;
  width: 60px; height: 90px;
  cursor: pointer;
  opacity:1;
  display: none;
  filter: drop-shadow(0px 0px 5px rgba(0,0,0,.9));
} 
#left:hover { opacity: 1; transform:scale(1.3); }

.left { left:3%; }

#right {
  z-index: 5000;
  right:3%; 
  background: transparent url(right.png) center center no-repeat;
  width: 60px; height: 90px;
  cursor: pointer;
  opacity:1;
  display: none;
  filter: drop-shadow(0px 0px 5px rgba(0,0,0,.9));
} 

@keyframes pulsate { 
    50% { -webkit-transform: scale(1.03); transform:scale(1.03); } 
    0%, 100% { -webkit-transform: scale(1); transform:scale(1); } 
  }

.pulsate {
    -webkit-animation:pulsate ease-in-out 1s infinite;
    -moz-animation:pulsate 1s ease-in-out infinite;
    animation:pulsate 1s ease-in-out infinite;
}

.blink { transform: scale(1.3); }
.blink_force { transform: scale(1.5) translate(20px) }

#right:hover {opacity: 1; transform:scale(1.3); }

.right { right:3%; }

.center { left: 50%; }

.blur { filter: blur(3px); opacity:.8; }

.blocked { opacity:.8; filter: blur(2px) grayscale(1); pointer-events: none; }

#pie {
  position: absolute;
  bottom:0px; 
  background: transparent;
  left:0px; width:100vw;
  color:white;
  text-align: left;
  border-top: 2px dotted rgba(255,255,255,.1);
  vertical-align: middle;
  padding:5px 10px;
}

#curso {
  display: inline-block; 
  text-align: left;
  font-size: 22px;
  height: 30px; line-height: 30px;   
}

#id_curso {
  display: inline-block; 
  font-size: 14px; opacity:.5;
  padding: 0px 5px;
  height: 30px; line-height: 30px;   
} 

#video_status {
  display: inline-block; 
  font-size: 16px; opacity:.95;
  padding: 0px 10px;
}

#slide_num {
  padding: 0px 5px;
  width: 100px; height: 30px; line-height: 30px;   
  float: right; text-align: right; 
  font-size:20px;
}

#video_progress { float:right; display:none; margin-top: -32px; margin-right: 40px;}

#status, #tts {
  width: 25px; height: 30px; line-height: 30px;   
  float: right;  
  padding: 0px 5px;
  color:#ccc;
  text-align: center;
  font-size: 26px;
  color:white;
}

#tts { cursor:pointer; z-index: 5000; margin-right:25px;}

  #video_play {
    right:3%; 
    background: transparent url(play.png) center center no-repeat;
    width: 60px; height: 90px;
    cursor: pointer;
    opacity:.6;
    display: none;
    filter: drop-shadow(0px 0px 5px rgba(0,0,0,.9));
    z-index: 100000;
  }
  #video_pause {
    right:3%; 
    background: transparent url(pause.png) center center no-repeat;
    width: 60px; height: 90px;
    cursor: pointer;
    opacity:.6;
    display: none;
    filter: drop-shadow(0px 0px 5px rgba(0,0,0,.9));
    z-index: 100000;
  }

  
  /* Cuando termina un slide, si hay preguntas tipo quiz, */

  .question {
    z-index: 100000;
    color: black; 
    display:none;
    width: 800px;
    max-width: 800px;
    min-width: 400px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    background-color: rgba(255, 255, 255, 1);
    padding: 20px;
    border-radius: 5px;
    border: 3px solid rgba(255, 255, 255, 1);
    overflow: hidden;
    transition: transform 4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    box-shadow:1px 1px 15px 3px rgba(0,0,0,0.25), 1px 16px 25px -2px rgba(0,0,0,0.5);
  }

  .question.blur {
    filter: blur(2px);
    pointer-events: none;
}

.deactivate {
  pointer-events: none;
}

.question h2{
  /*
  min-width: calc(100% - 20px);  
  max-width: calc(100% - 20px);
  */
  background-color: transparent;
  color: black;
  font-size: 22px;
  font-weight: bold;
  min-height:70px;
  margin: 20px;
  text-align: left;
}

.question .answers {
  display: flex;
  flex-wrap: wrap;
}

.question .answers span{
  display: inline-block;
  width: calc(50% - 5px);
  max-width: calc(50% - 5px);
  background-color: rgba(255, 255, 255, 1);
  color: #cb2d3e;
  font-size: 20px;
  margin: 5px 5px 0 0;
  padding: 0px 5px;
  border-radius: 3px;
  cursor: pointer;
}

.question .answers span.selected {
  animation: select-answer .2s ease;
  background-color: #fff;
}

@keyframes select-answer {
  0% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
  }
}

.question .next-question {
  margin: 15px;
  padding: 35px;
}

.question .next-btn, .btn {
  border: none; 
  padding: 10px;
  margin: 3px;  
  color: rgba(255,255,255,1);
  font-weight: 600;
  cursor: pointer;
  transition: all .5s ease;
  font-size: 16px;
  z-index:100;
  box-shadow: 0px 0px 5px 0px  black; 
  border-radius: 30px 30px 30px 30px; 
  text-shadow: 0 0 2px rgba(0, 0, 0, 0.7);
  background-color: #363636;   
  background-clip: padding-box;
  border-radius: 25px;
  -webkit-box-shadow: inset 0 1px rgba(255, 255, 255, 0.09), 0 1px 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.09), 0 1px 3px rgba(0, 0, 0, 0.3);
}

.question .next-btn:hover, .btn:hover {
  box-shadow: 0px 0px 3px 1px white;
}

.question .next-btn:last-child {
  margin-bottom: 30px;
}

.question .c-1 {
  width:92%;
}
.question .c-2 {
  width:45%;
}
.question .c-3 {
  width:30%;
}

.btnnok {
  opacity: 50%;
  background: red;
}


.wait_voice {
  
}

.wait_voice_on {
  opacity:.5;
  pointer-events: none;
  cursor: wait;
}

.wait_voice_off {
  opacity:1;
  cursor:pointer;
}

.next-btn:hover {
  background-color: #cb2d3e;
  color: white;
} 


.text-slide-button {
  padding: 10px 20px;
  border: 0;
  border-radius: 5px;
  color: red;
  position: absolute;
  top: 40px;
  right: 40px;
  transition: all .2s ease;
  cursor: pointer;
  box-shadow: 0px 1px 1px 0px black;
  &:hover {
    background-color: red;
    color: white;
  }
}

.question .next-btn:focus {
  outline: none;
}

.question .next-btn[disabled] {
  opacity: .5;
  cursor: no-drop;
}


/* cuenta regresiva */

#online, #time_total, #time_total_rest {
  font-size: 20px;
  position: absolute; top:100px; right: 10px;
 
  padding:0px;
  transition: all 0.66s ease; -webkit-transition: all 0.66s ease; 
  
  padding-right: 10px;
}

#time_total i, #time_total_rest i { opacity:.4; }

#time_total ul, #time_total_rest ul {
  margin:0px; padding:0px; text-align: right;
 
}

#time_total_rest { top: 130px; }

#online { top: 160px; }

.offline{
  color:red;
}
.online{
  color: green;
}




#countdown li { 
  color: white;  
  list-style-type: none;
  display: inline-block;
}
#count_rest li { 
  color: white;
  list-style-type: none;
  display: inline-block;
}

.label { opacity:.6; font-size: 80%;  }

.number {  
  
}


/* ventanas popup alertas */

.circle,
.inner,
.question,
.circle::before {
  border-radius: 8px;
  
}
.circle, .question  {
  background-color: rgba(200,220,220,.9);
  padding: 0px;
  box-shadow: 0px 0px 100px 0px black;
  margin-right: 0px;
}
.circle::before, .question::before  {
  content: "";
  position: absolute;
  display: block;
  z-index: -1;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
 
}
.inner {
  text-align: left;
  padding: 0px 20px 0px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset -1px 3px 6px 2px rgba(0, 0, 0, .3); /* Inner drop shadow inside the inner circle */
  margin:0px 5px 20px 5px;
}
/* Final touch : the inner gradient colors */
.inner.blue {
  background: #13d8d8;
  background: -moz-linear-gradient(45deg, #13d8d8 0%, #00a7c7 100%);
  background: -webkit-linear-gradient(45deg, #13d8d8 0%,#00a7c7 100%);
  background: linear-gradient(45deg, #13d8d8 0%,#00a7c7 100%);
}
.inner.purple {
  background: #a100ff;
  background: -moz-linear-gradient(45deg, #a100ff 0%, #6a00bc 100%);
  background: -webkit-linear-gradient(45deg, #a100ff 0%,#6a00bc 100%);
  background: linear-gradient(45deg, #a100ff 0%,#6a00bc 100%);
}
.inner.pink {
  background: #ff6bfd;
  background: -moz-linear-gradient(45deg, #ff6bfd 0%, #c400c2 100%);
  background: -webkit-linear-gradient(45deg, #ff6bfd 0%,#c400c2 100%);
  background: linear-gradient(45deg, #ff6bfd 0%,#c400c2 100%);
}
.inner.green {
  background: #abcf37;
  background: -moz-linear-gradient(45deg, #abcf37 0%, #66bb44 100%);
  background: -webkit-linear-gradient(45deg, #abcf37 0%,#66bb44 100%);
  background: linear-gradient(45deg, #abcf37 0%,#66bb44 100%);
}

.inner h2 { text-align: left; padding: 20px; font-height: bold; }



/*

  DIAPOSITIVA TIPO TEXTO INFOGRAFIA

*/


.intro { 
  border:none;
  box-shadow:none;
  overflow:hidden;
  color:black;
  background-color:transparent;
  position: relative; float:right; 
  margin-top: 100px; right:10%;
  width:200px; z-index: 7100; border:1px solid red;
  transform: translateX(0%);

  height: 75vh;
  width: calc((75vh * 16 / 9)/2) ;
  margin-top: 20px;
  border: none;
  box-shadow: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(0%);


}

.intro p {
    font-size: 3.2vh;    
    padding: 10px;
    font-size:21px; font-weight:bold; color: rgba(0,0,0,.8); text-shadow:0px 0px 5px blue;
}

.intro h1, h2{    
    color: #27272E;
    font-weight:100;
     -moz-font-feature-settings: "liga=1, dlig=1";
    -ms-font-feature-settings: "liga", "dlig";
    -webkit-font-feature-settings: "liga", "dlig";
    -o-font-feature-settings: "liga", "dlig";
    font-feature-settings: "liga", "dlig";
}

.intro h1 span {    
    font-weight: normal;
}

 .intro h1 {
    font-size: 6.5vh;
    margin: 0;
    line-height:1.1;
   
}

.intro h1 span:nth-of-type(1) {
    font-size: 5.5vh;
    display:block;
    margin: 1em auto 0 auto;
    text-transform: none;
}
/* Enable real small caps */
.intro h2 {
    border-top: 1px solid #999;
    font-size: 3vh;
    text-align: center;
    line-height:1;
    margin-top:1em;
    color: #000;
    
}
/* Add borders to the heading */
.intro h2 span {
    background:rgba(255,255,255,.8);
    position:relative;
    top:-.30em;
   
    color:black;    
}

/* Fancy pseudo elements heading */
.intro h3{
  text-align:center;
  font-size: 4.2vh;
  line-height: 1.2;
}





