@import url("https://fonts.googleapis.com/css?family=Fira+Sans:400,500,600,700,800");
@import url("https://fonts.googleapis.com/css?family=Work+Sans:400,500,600,700,800");

:root {
  --blue: rgb(42, 97, 119);
  --dark-blue: rgb(8, 35, 63);
  --petro: rgb(23, 53, 59);
  --bone: rgb(199, 198, 194);
  --red: rgb(220, 53, 69);
  --dark-red: rgb(187, 45, 49);
  --green: rgb(25, 135, 84);
  --dark-green: rgb(21, 115, 71);
  --gray: rgb(8, 35, 63);
  --darkness: rgb(19, 31, 38);
  --light: rgb(255, 252, 247);  
}

.bg-primary {
  background-color: rgba(42, 97, 119, 1) !important;
  background-image: var(--bs-gradient)!important;
}

body {
  font-family: "Fira Sans", sans-serif;
  background-color: var(--dark-blue) !important;
}

.row-colorNBG > div:nth-child(even) {
  background: #E2E3E5;
}

#logo-text {
	font-family: "Work Sans", sans-serif;
}

.login-form {
  width: 420px;
  box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 9px 26px 0 rgba(0, 0, 0, 0.19);
  padding-top: 10px;
  padding-bottom: 30px;
  border-radius: 8px;
  background-color: white;
}

.login-content {
  padding-left: 12%;
  padding-right: 12%;
}

@media screen and (max-width: 530px) {
  /* For mobile phones: */
  .login-form {
    width: 300px;
  }
}

#error_login_div {
  border-radius: 8px;
}

.main-div-base {
  background: #e9e4e4 none repeat scroll 0 0;
  border-radius: 4px;
  margin: 10px auto 10px;
  width: 98%;
  padding: 15px 20px 20px 20px;
  margin-top: 30px;
}

.logoWebPos {
  object-fit: cover;
  width: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.logoInfomedical {
  background-image: url("../imagenes/logoCreador.png");
  /*height: 75px;*/
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* CONTENEDOR EN PANTALLA DE LOGIN Y CAMBIO DE PASS */
.main-div input {
  background: #f7f7f7 none repeat scroll 0 0;
  border-radius: 8px;
  font-size: 15px;
  height: 45px;
}

@media screen and (min-width: 800px) {
  .main-div {
    max-width: 35%;
  }
}

@media screen and (max-width: 800px) {
  .main-div {
    max-width: 75%;
  }
}

/* MENU */

.navbar-nav a:hover:not(.nopadding) {
  background-color: rgb(42, 97, 119) !important;
  color: #ffffff !important;
  border-color: rgb(42, 97, 119) !important;
  -webkit-transition: background-color 200ms linear;
  -moz-transition: background-color 200ms linear;
  -o-transition: background-color 200ms linear;
  -ms-transition: background-color 200ms linear;
  transition: background-color 200ms linear;
}

/* PARA IMPRESION */
.main-div-impresion {
  max-width: 95%;
}

@media screen and (min-width: 800px) {
  .main-div-impresion {
    max-width: 60%;
  }
}

/* ALL LOADERS */

.loader {
  width: 25px;
  height: 25px;
  border-radius: 100%;
  position: relative;
  margin: 0 auto;
  display: none;
}

/* LOADER 1 */

.loader:before,
.loader:after {
  content: "";
  position: absolute;
  top: -5px;
  left: -5px;
  width: 100%;
  height: 100%;
  border-radius: 100%;
  border: 5px solid transparent;
  border-top-color: #3498db;
}

.loader:before {
  z-index: 100;
  animation: spin 1s infinite;
}

.loader:after {
  border: 5px solid #ccc;
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* PARA LOS GRAFICOS EN EL LOGIN */
.inner-addon {
  position: relative;
}

/* style glyph */
.inner-addon .fa {
  position: absolute;
  padding: 12px;
}

/* align glyph */
.left-addon-icon {
  left: 0px;
}

.right-addon-icon {
  right: 0px;
}

/* add padding  */
.left-addon input {
  padding-left: 35px;
}

.right-addon input {
  padding-right: 35px;
}

.left-right-addon input {
  padding-left: 35px;
  padding-right: 35px;
}

/* Quitando padding en .row */

.nopadding {
  padding: 0 !important;
  margin: 0 !important;
}

.clear-fix-2 {
  clear: both;
}

.encabezado {
  padding: 10px;
  margin: 0 10px 10px 10px;
  font-weight: bold;
  background-color: #fff;
  border-bottom: 1px solid gray;
  -webkit-box-shadow: -3px 3px 3px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: -3px 3px 3px rgba(0, 0, 0, 0.4);
  box-shadow: -3px 3px 3px rgba(0, 0, 0, 0.4);
  border-radius: 6px 6px 6px 6px;
  -moz-border-radius: 6px 6px 6px 6px;
  -webkit-border-radius: 6px 6px 6px 6px;
}

.detalle {
  padding: 5px 5px 5px 5px;
  margin: 6px 2px 6px 2px;
}

.wrap-text {
  word-wrap: break-word;
}

.button-margin button {
  margin-bottom: 10px;
}

a:hover {
  cursor: pointer;
}

.font-large {
  font-size: large !important;
}

.ImageMini {
  height: 50px;
}

.vh-80 {
  height: 80vh;
}

.row-info {
  --bs-gutter-y: 0.5rem;
  --bs-gutter-x: 0.5rem;
  margin-bottom: var(--bs-gutter-y);
}

.text-right {
  text-align: right;
}

label {
  font-weight: 700 !important;
}

.mp-tabla {
  padding: 0 5px 5px 5px;
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.mp-tabla-row {
  padding: 0 5px;
  margin: 0 10px;
}

.row-container {
  padding-bottom: 8px;
  margin: 5px 0;
}

.bg-lightgray {
  background-color: #e2e3e5;
}

.bg-lightgray2 {
  background-color: #d9d9da;
}

.border-lightgray {
  border: 1px solid #b8b8b8;
  border-radius: 5px;
}

.icon-big {
  font-size: calc(1.375rem + 1.5vw);
  margin: 0 10px;
}

.cursor-pointer {
  cursor: pointer;
}

@media screen and (min-width: 500px) {
  .button-margin button {
    margin-bottom: 0px;
  }
}

@media (min-width: 768px) {
  .border-md-none {
    border: none !important;
  }

  .bg-md-lightgray {
    background-color: #e2e3e5;
  }
}

@media (min-width: 992px) {
  .row-container {
    margin-top: calc(var(--bs-gutter-y) * -1);
    margin-right: calc(var(--bs-gutter-x) / -2);
    margin-left: calc(var(--bs-gutter-x) / -2);
    margin-bottom: var(--bs-gutter-y);
  }

  .border-lg-none {
    border: none !important;
  }

  .icon-big {
    font-size: calc(1.275rem + 0.3vw);
    margin: 0;
  }

  .bg-lg-lightgray {
    background-color: #e2e3e5;
  }
}

@media print {
  .oculto-impresion {
    display: none !important;
  }
  @page {
    size: landscape;
    margin: 0;
  }
}

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

.spinner-container {
  z-index: 2000;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  background: #00000045;
}

.spinner-container:before {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}

.spinner-container .spinner:before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6rem;
  height: 6rem;
  margin-top: -2rem;
  margin-left: -3rem;
  border-radius: 50%;
  border-top: 5px solid rgb(255, 88, 0);
  border-right: 2px solid transparent;
  animation: spinner 0.9s linear infinite;
}

.spinner-container .spinner .spinner-text {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -2.4rem;
  color: #000;
  text-shadow: rgb(255, 255, 255) 1px 0 10px;
}

.fs-8 {
  font-size: 0.9rem;
}
