html {
  width: 100%;
}

body {
  overflow-x: hidden !important;
}

body.show-spinner > main {
  overflow: hidden !important;
}

/* Hide everything under body tag */
body.show-spinner > *{
  opacity: 0;
}

/* Spinner */
body.show-spinner::after{
  content: " ";
  display: inline-block;
  width: 30px;
  height: 30px;
  border: 2px solid rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  border-top-color: rgba(0, 0, 0, 0.3);
  animation: spin 1s ease-in-out infinite;
  -webkit-animation: spin 1s ease-in-out infinite;
  left: calc(50% - 15px);
  top: calc(50% - 15px);
  position: fixed;
  z-index: 1;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}

.alert-primary {
  color: #145388;
  background-color: #f8f8f8;
  border-color: rgba(20,83,136,.1);
}
.alert-secondary {
  color: #222222;
  background-color: #62addb;
  border-color: rgba(42,147,213,.1);
}
.alert-success {
  color: #3c453e;
  background-color: #47ae5c;
  border-color: rgba(62,136,79,.1);
}
.alert-danger {
  color: #ffffff;
  background-color: #cb5b63;
  border-color: rgba(196,61,75,.1);
}
.alert-warning {
  color: #030303;
  background-color: #ffde78;
  border-color: rgba(182,147,41,.1);
}
.alert-info {
  color: #556264;
  background-color: #abdce4;
  border-color: rgba(22, 43, 47, 0.1);
}
.alert-light {
  color: #9a9a9a;
  background-color: #f6f6f6;
  border-color: rgba(236,236,236,.1);
}
.alert-dark {
  color: #ffffff;
  background-color: #3f3f3f;
  border-color: rgba(19,17,19,.1);
}
.select2-container .select2-results {max-height: 300px; overflow: auto;}
.has-float-label label{
  font-size: 75%;
}
.table-print{
  width: 595pt !important;
  background-color: #ffffff;
  border-collapse: separate !important;
  border-spacing: 0;
  color: #242128;
  margin: 0;
  padding: 30px;
}
.grey{
  background-color: #f9f9f9;
}
.bold{
  font-weight: bold;
}
.tr-bold td{
  font-weight: bold;
  padding: .5rem !important;
  font-size: .7rem;
}
.table-print-det{
  width: 100%;
}
table.table-print-det > tbody > tr > td {
  padding-left: .5rem !important;
  padding-right: .5rem !important;
}

.modal { overflow: auto !important; }
/*duplicado para imprimir*/
.table-bordered {
  border: 1px solid #dee2e6;
}
.table-bordered td{
  border: 1px solid #dee2e6;
}
.datepicker-orient-top{
  z-index: 1031 !important;
}
.print{
  width: 194mm;
  line-height: 1.15;
  /* SCRUM-1443: justificar el texto de todas las impresiones clínicas (mPDF).
     text-align se hereda a los bloques sin alineación propia; los estilos
     inline (center/right) y `.print-table td` la sobreescriben donde aplica. */
  text-align: justify;
  text-justify: inter-word;
}
.print-logo{
  width:100%;
  max-width:69mm;
  max-height:30mm;
  float:left;
  margin-left:1.6mm;
}
.print-row{
  margin-left: 3mm;
  display: block;
}
.print-divider{
  margin-top: 3mm;
  width: 195mm;
  height: .5mm;
  background-color: #9191915e;
}
.print-title1{
  font-family: "Nunito Black";
  font-size:15pt;
  color:#000000;
  font-weight: bold;
}
.print-title2{
  font-size:11pt;
  color:#000000;
  font-weight: bold;
}
.print-title3{
  font-size:11pt;
  color:#000000;
  font-weight: bold;
}
.print-grey{
  background-color: #e7e8ea;
  border-radius: 1.5mm;
  padding: 2mm;
}
/* SCRUM-1816: mantiene unido un titulo con su tabla y evita que una tabla se
   parta entre paginas. mPDF re-renderiza el bloque y lo baja entero si no cabe
   (libs/mpdf/.../Tag/BlockTag.php). Si el bloque supera una pagina completa se
   imprime partido, como antes. No usar sobre elementos con float: mPDF cancela
   el keep-together. `page-break-inside` no tiene efecto en pantalla. */
.print-keep{
  page-break-inside: avoid;
}
.print-table{
  border-collapse: collapse;
}
.print-table td{
  text-align: center;   
  margin: 0px;
  padding: 1mm;
}
.print-table .bordered{
  border:solid 1px #e7e8ea;
}
.print-table .bold{
  font-weight: bold;
}
.error{
  color:#FF0000 !important;
  font-weight: bold !important;
}
.navbar #iconMenuDropdown {
  height: auto;
}
.navbar .icon-menu-item span{
  padding: 0;
}
.navbar .navbar-right {
  flex-basis: 70%;
}
.form-control {
  border-radius: 0.3em !important;
}
.select2-container--default .select2-selection--single {
   background-color: #fff; 
  border: 1px solid #aaa; 
  border-radius: 0.3em !important;
  border-color: rgba(20,83,136,.7);
  border: 1px solid #d7d7d7;
}
.select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  user-select: none;
  -webkit-user-select: none;
  font-size: .8rem;
  padding: .5rem .75rem;
  line-height: 1;
  height: calc(2em + .8rem);
}
.print-right{
  text-align: right;
  /*background-color:#47ae5c;*/
  float:right;
  width: fit-content;
}
.print-stripped tr:nth-child(even){
    background-color: #f2f2f2;
}
.print-table.small-font td{
  font-size:8pt;
}

/* Informe del inventario físico (PDF). Vive aquí, y no en un <style> dentro del
   contenido, porque mPDF solo lee CSS en los modos 0 y 1 de WriteHTML: print.php
   escribe el contenido en modo 2, donde un <style> se descarta y su texto se
   imprime como párrafo. Esta hoja sí entra por WriteHTML($stylesheet, 1).
   Prefijo propio para no tocar ninguna otra impresión. */
.ifpdf-tit{
  font-size:12pt;
  font-weight:bold;
  color:#1f3b57;
  margin:0 0 1mm 0;
}
.ifpdf-prelim{
  border:0.4mm solid #f0b429;
  background-color:#fff8e6;
  color:#8a5a00;
  padding:1.5mm 2mm;
  font-size:8.5pt;
  margin-bottom:2mm;
}
.ifpdf-res{
  width:100%;
  border-collapse:collapse;
  margin-bottom:3mm;
}
.ifpdf-res td{
  border:0.2mm solid #d5dbe1;
  padding:1.5mm;
  text-align:center;
  font-size:8pt;
  color:#444444;
}
.ifpdf-res .ifpdf-num{
  font-size:13pt;
  font-weight:bold;
  color:#1f3b57;
}
/* Título del grupo. Va dentro del <thead> del detalle, así que es un th y hay que
   devolverle el fondo blanco y la alineación a la izquierda. */
.ifpdf-det th.ifpdf-grupo{
  font-size:10pt;
  font-weight:bold;
  color:#1f3b57;
  background-color:#ffffff;
  text-align:left;
  padding:3mm 0 1.2mm 0;
}
.ifpdf-det{
  width:100%;
  border-collapse:collapse;
  margin-bottom:1mm;
}
.ifpdf-det th{
  background-color:#2f5d8a;
  color:#ffffff;
  font-size:8pt;
  padding:1.5mm;
  text-align:left;
}
.ifpdf-det td{
  font-size:8pt;
  padding:1.2mm 1.5mm;
  border-bottom:0.2mm solid #e1e5ea;
}
.ifpdf-det .ifpdf-r{
  text-align:right;
}
.ifpdf-det .ifpdf-neg{
  color:#b42318;
  font-weight:bold;
}
.ifpdf-det .ifpdf-pos{
  color:#1d6f42;
  font-weight:bold;
}
.ifpdf-vacio{
  font-size:9pt;
  color:#444444;
}
.cont-loading{
  position: fixed;
  top: 0px;
  width: 100%;
  height: 100%;
  background-color: #7979798f;
  z-index: 1031;
  display: none;
}
.loadingwait {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  width: 100px;
  color: #FFF;
  margin: auto;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
.loadingwait span {
  position: absolute;
  height: 10px;
  width: 84px;
  top: 50px;
  overflow: hidden;
}
.loadingwait span > i {
  position: absolute;
  height: 4px;
  width: 4px;
  border-radius: 50%;
  -webkit-animation: wait 4s infinite;
  -moz-animation: wait 4s infinite;
  -o-animation: wait 4s infinite;
  animation: wait 4s infinite;
}
.loadingwait span > i:nth-of-type(1) {
  left: -28px;
  background: yellow;
}
.loadingwait span > i:nth-of-type(2) {
  left: -21px;
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
  background: lightgreen;
}

@-webkit-keyframes wait {
  0%   { left: -7px  }
  30%  { left: 52px  }
  60%  { left: 22px  }
  100% { left: 100px }
}
@-moz-keyframes wait {
  0%   { left: -7px  }
  30%  { left: 52px  }
  60%  { left: 22px  }
  100% { left: 100px }
}
@-o-keyframes wait {
  0%   { left: -7px  }
  30%  { left: 52px  }
  60%  { left: 22px  }
  100% { left: 100px }
}
@keyframes wait {
  0%   { left: -7px  }
  30%  { left: 52px  }
  60%  { left: 22px  }
  100% { left: 100px }
}
/*solucion error calendario*/
.fc .fc-scrollgrid-section>* {
  border-top-width: 1px;
}
/*impresion invisible*/
@media print{
main .container-fluid .row:not(.invoice) {
      display: block !important;
}
}
.WhatsappBubble{
  position: sticky;
    bottom: 20px;
    /* margin-right: 10px; */
    /* left: 100%; */
    float: right;
    border-radius: 50%;
    background-color: #08912c;
    width: 64px;
    height: 64px;
    right: 20px;
    font-size: xx-large;
    color: white;
    padding: 10px 0 0 14px;
}
.WhatsappBubbleOptions{
  border-radius: 0.75rem;
  position: sticky;
  bottom: 90px;
  right: 20px;
  float: right;
  background-color: white;
}
@media (min-height: 100px) and (max-height: 600px) {
.config{
  overflow:auto;
  height: 200px;
}

}

.custom-buttons-icon-fc{
  font-family: 'simple-line-icons' !important;
}
.menu .main-menu ul li a {
  height: 80px !important;
}

.fc-resourceTimeGridDay-view {
  overflow-x: auto;
}

.fc-resourceTimeGridDay-view .fc table {
  table-layout: auto;
}

.fc-resourceTimeGridDay-view .fc-view>table {
  min-width: 0;
  width: auto;
}

.fc-resourceTimeGridDay-view .fc-axis {
  min-width: 100px;
  /*the width of times column*/
  width: 100px;
  /*the width of times column*/
}

.fc-resourceTimeGridDay-view .fc-day,
.fc-resourceTimeGridDay-view .fc-resource-cell,
.fc-resourceTimeGridDay-view .fc-content-col,
.fc-resourceTimeGridDay-view .fc-col-header-cell {
  min-width: 150px;
  width: 150px;
}

.fc-resourceTimeGridDay-view .fc-scrollgrid-liquid {
  width: auto;
}