/*Clase madre*/
.fab {
    border: 0px !important;
    border-radius: 70px !important;
    width: 50px;
    height: 50px;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14),
      0 3px 1px -2px rgba(0, 0, 0, 0.12),
      0 1px 5px 0 rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14),
      0 3px 1px -2px rgba(0, 0, 0, 0.12),
      0 1px 5px 0 rgba(0, 0, 0, 0.2);
    margin: 5px;
    background: #e0e1e2;
    color: white !important;
    cursor: pointer;
    outline: none;
  }
  
  .fab i {
    font-size: 24px;
    margin: 0px;
  }
  
  .fab:hover {
    background: #cacbcd;
  }
  
  /*fab contenedor*/
  .fab_contenedor {
    position: fixed;
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
  }
  
  .fab_contenedor dl {
    transition: .5s;
    margin: 0px;
    display: flex;
    flex-direction: column;
    visibility: hidden;
    opacity: 0;
  }
  
  .fab_contenedor dl dt button {
    transition: .5s;
    transform: scale(.4) translateY(-40px) translateX(0px);
  }
  
  .visible {
    visibility: visible !important;
    opacity: 1 !important;
  }
  
  /*TamaÃ±o de botones*/
  /*Enorme*/
  .fab.huge {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px;
    max-width: 80px;
    min-height: 80px;
    max-height: 80px;
  }
  
  .fab.huge i {
    font-size: 28px !important;
  }
  
  /*Grande*/
  .fab.big {
    width: 70px !important;
    height: 70px !important;
    min-width: 70px;
    max-width: 70px;
    min-height: 70px;
    max-height: 70px;
  }
  
  .fab.big i {
    font-size: 23px !important;
  }
  
  /*largo*/
  .fab.large {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px;
    max-width: 60px;
    min-height: 60px;
    max-height: 60px;
  
  }
  
  .fab.large i {
    font-size: 20px !important;
  }
  
  /*Mediano*/
  .fab.medium {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px;
    max-width: 50px;
    min-height: 50px;
    max-height: 50px;
  }
  
  .fab.medium i {
    font-size: 17px !important;
  }
  
  /*Chico*/
  .fab.small {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    max-height: 40px;
  }
  
  .fab.small i {
    font-size: 13px !important;
  }
  
  /*Diminuto*/
  .fab.tiny {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px;
    max-width: 30px;
    min-height: 30px;
    max-height: 30px;
  }
  
  .fab.tiny i {
    font-size: 11px !important;
  }
  
  /*Colores para los botones*/
  /*Rojo*/
  .fab.red {
    background: #db2828 !important;
    color: white !important;
  }
  
  .fab.red:hover {
    background: #d01919 !important;
  }
  
  /*Amarillo*/
  .fab.yellow {
    background: #eaae00 !important;
    color: white !important;
  }
  
  .fab.yellow:hover {
    background: #fbbd08 !important;
  }
  
  /*Naranja*/
  .fab.orange {
    background: #f2711c !important;
    color: white !important;
  }
  
  .fab.orange:hover {
    background: #f26202 !important;
  }
  
  /*Oliva*/
  .fab.olive {
    background: #b5cc18 !important;
    color: white !important;
  }
  
  .fab.olive:hover {
    background: #a7bd0d !important;
  }
  
  /*Verde*/
  .fab.green {
    background: #21ba45 !important;
    color: white !important;
  }
  
  .fab.green:hover {
    background: #16ab39 !important;
  }
  
  /*Verde azulado*/
  .fab.teal {
    background: #00b5ad !important;
    color: white !important;
  }
  
  .fab.teal:hover {
    background: #009c95 !important;
  }
  
  /*Azul*/
  .fab.blue {
    background: #2185d0 !important;
    color: white !important;
  }
  
  .fab.blue:hover {
    background: #1678c2 !important;
  }
  
  /*Cafe*/
  .fab.brown {
    background: #a5673f !important;
    color: white !important;
  }
  
  .fab.brown:hover {
    background: #975b33 !important;
  }
  
  /*Gris*/
  .fab.gray {
    background: #e0e1e2 !important;
    color: white !important;
  }
  
  .fab.gray:hover {
    background: #cacbcd !important;
  }
  
  /*Negro*/
  .fab.black {
    background: #1b1c1d !important;
    color: white !important;
  }
  
  .fab.black:hover {
    background: #27292a !important;
  }
  
  /*Pink*/
  .fab.pink {
    background: #e03997 !important;
    color: white !important;
  }
  
  .fab.pink:hover {
    background: #e61a8d !important;
  }
  
  /*Morado*/
  .fab.purple {
    background: #6435c9 !important;
    color: white !important;
  }
  
  .fab.purple:hover {
    background: #5829bb !important;
  }
  
  /*Posiciones*/
  .transform {
    transform: scale(1) translateY(0px) translateX(0px) !important;
  }
  
  .fab_contenedor.top-left.vertical dl button,
  .fab_contenedor.top-right.vertical dl button,
  .fab_contenedor.top-left dl button,
  .fab_contenedor.top-right dl button {
    transform: scale(.4) translateY(-40px) translateX(0px);
  }
  
  .fab_contenedor.bottom-left.vertical dl button,
  .fab_contenedor.bottom-right.vertical dl button,
  .fab_contenedor.bottom-left dl button,
  .fab_contenedor.bottom-right dl button {
    transform: scale(.4) translateY(40px) translateX(0px);
  }
  
  /*default*/
  .fab_contenedor.default {
    left: 10px;
    top: 10px;
  }
  
  /*Arriba izquiera*/
  .fab_contenedor.top-left {
    left: 10px;
    top: 10px;
    display: flex;
    flex-direction: column-reverse;
  }
  
  .fab_contenedor.top-left.vertical,
  .fab_contenedor.top-left.vertical dl {
    flex-direction: column-reverse !important;
  }
  
  .fab_contenedor.top-left.horizontal,
  .fab_contenedor.top-left.horizontal dl {
    flex-direction: row-reverse !important;
  }
  
  .fab_contenedor.top-left.horizontal dl button {
    transform: scale(.4) translateY(0px) translateX(-40px);
  }
  
  /*Arriba derecha*/
  .fab_contenedor.top-right {
    right: 10px;
    top: 10px;
    display: flex;
    flex-direction: column-reverse;
  }
  
  .fab_contenedor.top-right.vertical,
  .fab_contenedor.top-right.vertical dl {
    flex-direction: column-reverse !important;
  }
  
  .fab_contenedor.top-right.horizontal,
  .fab_contenedor.top-right.horizontal dl {
    flex-direction: row !important;
  }
  
  .fab_contenedor.top-right.horizontal dl button {
    transform: scale(.4) translateY(0px) translateX(40px);
  }
  
  /*Abajo izquierda*/
  .fab_contenedor.bottom-left {
    left: 10px;
    bottom: 10px;
    display: flex;
    flex-direction: column;
  }
  
  .fab_contenedor.bottom-left.vertical,
  .fab_contenedor.bottom-left.vertical dl {
    flex-direction: column !important;
  }
  
  .fab_contenedor.bottom-left.horizontal,
  .fab_contenedor.bottom-left.horizontal dl {
    flex-direction: row-reverse !important;
  }
  
  .fab_contenedor.bottom-left.horizontal dl button {
    transform: scale(.4) translateY(0px) translateX(-40px);
  }
  
  /*Abajo derecha*/
  .fab_contenedor.bottom-right {
    right: 10px;
    bottom: 10px;
    display: flex;
    flex-direction: column;
  }
  
  .fab_contenedor.bottom-right.vertical,
  .fab_contenedor.bottom-right.vertical dl {
    flex-direction: column !important;
  }
  
  .fab_contenedor.bottom-right.horizontal,
  .fab_contenedor.bottom-right.horizontal dl {
    flex-direction: row !important;
  }
  
  .fab_contenedor.bottom-right.horizontal dl button {
    transform: scale(.4) translateY(0px) translateX(40px);
  }