* {
  font-family: Muli;
  font-size: small;
}
#mensajeAlerta {
  background-color: #cc0033;
  color: #fff;
  font-size: 18px;
  text-align: center;
  height: 50px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
  display: none;
  padding-top: 10px;
}
#mensajeAlertaModal {
  background-color: #cc0033;
  color: #fff;
  font-size: 18px;
  text-align: center;
  height: 50px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
  display: none;
  padding-top: 10px;
}
.borde-celeste {
  border-bottom: solid 12px #66afff !important;
}
.borde-azul {
  border-bottom: solid 12px #023047 !important;
}

#aplicacion {
  font-size: 17px;
  padding-top: 10px;
  padding-right: 20px;
}
#retrieved-data {
  width: 90%;
  margin: 10px auto;
}
#formulario {
  border: solid 1px #ddd;
  width: 80%;
  margin: 0 auto 0px auto;
  padding: 15px 10px;
  background-color: #fff;
  border-radius: 6px;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
#contenedor3g {
  border: solid 1px #ddd;
  margin: 0 auto 0px auto;
  padding: 15px 10px;
  width: 80%;
  background-color: #fff;
  border-radius: 6px;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
.formularioModal {
  width: 85% !important;
  border-color: #fff !important;
}
@media print {
  header,
  footer,
  aside,
  form {
    display: none;
  }
  .myGrid {
    font-size: 11px;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    width: 99%;
  }
  .myGrid tr th {
    background-color: #fff;
    color: #333;
    text-align: center;
  }
  .myGrid tr td {
    text-align: justify;
    font-size: 11px;
  }
}
.myGrid {
  font-size: 11px;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  width: 99%;
}
.myGrid tr th {
  background-color: #336699;
  color: #fff;
  text-align: center;
}
.myGrid tr td {
  text-align: justify;
  font-size: 11px;
}
#contenido {
  background-color: #f9f9f9;
  padding-top: 0.75rem;
}
#edita {
  background-color: #ffffff;
  padding: 10px;
}

.myGrid tr td a {
  border: solid 1px #bbb;
  padding: 3px 7px;
  border-radius: 4px;
  text-decoration: none;
}
.myGrid tr td a:hover {
  background-color: #336699;
  color: #fff;
  text-decoration: none;
}
.myContent {
  min-height: 450px;
  background-color: #fff;
  display: block;
  border: solid 1px #ddd;
  border-radius: 6px;
  max-width: 95%;
  margin-top: -25px !important;
}
.etiqueta {
  font-weight: bold;
  font-size: 0.8em;
  color: #033;
  padding: 5px 15px;
  border: solid 1px #bbb;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  margin-left: 1px;
  margin-bottom: 0px;
  background-color: #f5f5f5;
}
.etiquetaL {
  font-weight: bold;
  font-size: 0.8em;
  color: #033;
}
.etiquetas {
  font-weight: normal;
  font-size: 0.8em;
  padding: 5px 15px;
  text-align: right;
  margin-left: 1px;
  margin-bottom: 0px;
  background-color: #d4d4d4;
  color: #444;
}

.page-nav {
  margin: 10px 0 0 0;
  padding: 0px;
  font-size: 13px;
}

.page-nav a {
  padding: 4px;
  text-decoration: none;
  color: #000;
  text-decoration: underline;
  margin-left: 2px;
}

.page-nav a:hover {
  border: thin solid #444;
  background-color: #66f;
  color: #fff;
}
/*this is the style for selected page number*/
.page_link {
  padding: 4px;
  color: #fff;
  background-color: #333;
  border: thin solid #444;
  border-radius: 50%;
}
.calendario {
  background: url(../../images/calendar_date.png) center no-repeat #fff;
  width: 24px;
  height: 30px;
}
.data-tr {
  color: #121212;
}
.data-tr a {
  border-radius: 40%;
  border: solid 1px #999;
  box-shadow: 1px 1px 2px #ddd;
  margin-bottom: 5px;
}
.data-tr a:hover {
  background-color: #666;
  color: #fff;
  box-shadow: none;
}
.info {
  position: absolute;
  top: 60px;
  right: 100px;
  width: 300px;
  border: solid 1px #ddd;
  border-radius: 6px;
}
.google {
  position: absolute;
  top: 5px;
  left: 10px;
  width: 100px;
}
.google:hover {
  left: 15px;
  filter: grayscale(100%);
}
.google img {
  width: 160px;
}
.logo {
  position: absolute;
  top: 60px;
  left: 100px;
  width: 270px;
}
.email {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 50px;
}

.logoMenu {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 190px;
}
.logoIndex {
  position: absolute;
  top: 10px;
  left: 48%;
  width: 100px;
}
.nombreLogo {
  position: fixed;
  top: 5px;
  left: 10px;
  width: 150px;
}

.fondoModulo {
  width: 50%;
  margin-top: 50px;
  /* filter: drop-shadow(5px 5px 15px #000); */
}
.myMasthead {
  background-image: url("../img/fondoMedicalNewMid03.jpg");
  background-position: center top;
  background-color: #444;
}
.botonesMain {
  margin-top: 150px;
  border: solid 1px #999;
  padding: 15px 50px !important;
  box-shadow: 1px 2px 4px #333;
}
.bt2 {
  box-shadow: 1px 2px 4px #333;
}
.logoLogin {
  width: 150px;
}
@media only screen and (max-width: 600px) {
  .logoLogin {
    width: 100px;
    margin-top: 0px;
  }
  .myMasthead {
    background-image: url("../img/fondoMedicalMobile.jpg");
    background-position: right top;
    background-color: #444;
    padding-bottom: 250px;
  }
  .botonesMain {
    margin-top: 180px;
    border: solid 1px #999;
    padding: 10px 50px !important;
    font-size: 0.8em;
    background-color: #dfeffd;
  }
  .bt2 {
    box-shadow: 8px 12px 20px #333;
    margin-top: 10px;
  }
  .info {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 180px;
  }
  .logo {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 180px;
  }
  .nombreLogo {
    display: none;
  }
  .logoMenu {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 100px;
  }
  .fondoModulo {
    width: 99%;
  }
  .logoIndex {
    top: 10px;
    left: -10px;
    width: 60px;
  }
  .google {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 140px;
  }
  .google img {
    width: 120px;
  }
}
.warningmess {
  font:
    normal 15px Verdana,
    Arial,
    Helvetica,
    sans-serif;
  color: #111111;
  background: url(../images/themes/dynamics/warning.png) left no-repeat;
  width: 600px;
  font-size: 10px;
  /*	height:30px; */
  display: block;
  border: solid #ffcc00 2px;
  margin: 0 auto 0 auto;
  padding: auto 0 auto 0;
  background-color: #ffff99;
}
.warningmess p {
  margin-left: 35px;
  text-align: center;
}
.okmess {
  font:
    normal 15px Verdana,
    Arial,
    Helvetica,
    sans-serif;
  color: #111111;
  background: url(../images/themes/dynamics/siverif.png) left no-repeat;
  width: 600px;
  font-size: 10px;
  /*	height:30px;*/
  display: block;
  border: solid #009933 4px;
  margin: 0 auto 0 auto;
  padding: auto 0 auto 0;
  background-color: #99ff66;
}
.okmess p {
  margin-left: 35px;
  text-align: center;
}

.errormess {
  font:
    normal 15px Verdana,
    Arial,
    Helvetica,
    sans-serif;
  color: #111111;
  background: url(../images/themes/dynamics/notice-alert.png) left no-repeat;
  width: 600px;
  font-size: 10px;
  /*	height:30px;*/
  display: block;
  border: solid #cc3366 2px;
  margin: 0px auto 0 auto;
  /*padding: auto 0 auto 0;*/
  background-color: #ffd7ff;
}
.errormess p {
  margin-left: 35px;
  text-align: center;
  padding: 5px;
}
.usuario {
  color: #444;
  font-size: 16px;
}
.usuario span {
  font-weight: normal;
  font-style: italic;
}
.curriculo {
  border: solid 1px #36f;
  border-radius: 6px;
  padding: 5px 20px;
}
.curriculo span {
  font-weight: bold;
}
.features-boxed {
  color: #313437;
  background-color: #fff;
}

.features-boxed p {
  color: #7d8285;
}

.features-boxed h2 {
  font-weight: bold;
  margin-bottom: 40px;
  padding-top: 40px;
  color: inherit;
}

@media (max-width: 767px) {
  .features-boxed h2 {
    margin-bottom: 25px;
    padding-top: 25px;
    font-size: 24px;
  }
}

.features-boxed .intro {
  font-size: 16px;
  max-width: 500px;
  margin: 0 auto;
}

.features-boxed .intro p {
  margin-bottom: 0;
}

.features-boxed .features {
  padding: 50px 0;
}

.features-boxed .item {
  text-align: center;
}
.features-boxed .item a:hover {
  text-decoration: none;
}
.features-boxed .item .box {
  text-align: center;
  padding: 30px;
  background-color: #fff;
  margin-bottom: 30px;
  border: solid 1px #bbb;
  border-radius: 8px;
}

.features-boxed .item .icon {
  font-size: 60px;
  color: #5b7c98;
  margin-top: 20px;
  margin-bottom: 35px;
}

.features-boxed .item .name {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 8px;
  margin-top: 0;
  color: #2e2a2a;
  padding-top: 10px;
  border-top: solid 1px #bbb;
}

.features-boxed .item .description {
  font-size: 15px;
  margin-top: 15px;
  margin-bottom: 20px;
}
.popover {
  box-shadow: 0px 7px 14px -8px #333;
}
.popover-header {
  color: #4b4ba8;
  font-size: 0.9em;
}
.popover-body {
  font-size: 11px;
}
.aPop {
  color: #444;
}
.aPop:hover {
  text-decoration: none;
}
.aPop i {
  font-size: 30px;
  color: #2c4ec0;
}
.menu-left,
.menu-left a,
.menu-left input[type="button"] {
  font-weight: normal;
}
.tooltipi {
  display: inline;
  position: relative;
}

.tooltipi:hover:after {
  background: rgba(220, 40, 31, 0.8);
  border-radius: 5px;
  bottom: 40px;
  color: #fff;
  content: attr(title);
  left: 50%;
  padding: 5px 15px;
  position: absolute;
  z-index: 98;
  width: 460px;
  font-size: 0.75em;
  font-weight: normal;
}

.tooltipi:hover:before {
  border: solid;
  border-color: #333 transparent;
  border-width: 6px 6px 0 6px;
  bottom: 30px;
  content: "";
  left: -5%;
  position: absolute;
  z-index: 99;
}
.cardH .card-footer,
.cardH .card-body {
  background-color: #fff !important;
}
.cardH .card-title {
  color: #444;
  text-align: center;
  font-weight: normal;
  text-transform: capitalize !important;
}
.cardH .card-text {
  color: #777;
  font-size: 0.8em;
}
.cardH a:hover {
  border: solid 1px #999;
  text-decoration: none;
}
.cardH a img:hover {
  filter: grayscale(100%);
}
.menuImg a img:hover {
  filter: grayscale(1);
}
.bg-medical {
  background-color: #147dc0;
  color: #fff;
}
.speech-bubble {
  position: relative;
  background: #fff;
  color: #000;
  border-radius: 0.4em;
}

.speech-bubble:after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 0;
  height: 0;
  border: 18px solid transparent;
  border-right-color: #fff;
  border-left: 0;
  border-top: 0;
  margin-top: -9px;
  margin-left: -18px;
}
.bubble {
  position: relative;
  padding: 0px;
  background: #7090a0;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
}

.bubble:after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 20px 10px 0;
  border-color: #7090a0 transparent;
  display: block;
  width: 0;
  z-index: 1;
  bottom: -20px;
  left: 44px;
}
.btn-circular {
  color: #777;
  border-color: #777;
  padding: 8px 13px;
  border-radius: 50%;
}
.btn-circular:hover {
  border-color: #777;
  background-color: #ccc;
}

.bg-transparent-green {
  background: rgba(29, 216, 113, 0.15) !important;
  color: rgba(29, 216, 113, 1) !important;
  border: 1px solid rgba(29, 216, 113, 1) !important;
}

.bg-transparent-blue {
  background: rgba(12, 66, 200, 0.537) !important;
  color: rgb(244, 248, 255) !important;
  border: 1px solid rgba(43, 62, 101, 1) !important;
}

.bg-transparent-indigo {
  background: rgba(77, 93, 219, 0.15) !important;
  color: rgba(77, 93, 219, 1) !important;
  border: 1px solid rgba(77, 93, 219, 1) !important;
}

.bg-transparent-pink {
  background: rgba(236, 130, 239, 0.15) !important;
  color: rgba(236, 130, 239, 1) !important;
  border: 1px solid rgba(236, 130, 239, 1) !important;
}

.bg-transparent-red {
  background: rgba(208, 61, 70, 0.15) !important;
  color: rgba(208, 61, 70, 1) !important;
  border: 1px solid rgba(208, 61, 70, 1) !important;
}

.bg-transparent-maroon {
  background: rgba(128, 0, 0, 0.15) !important;
  color: rgba(128, 0, 0, 1) !important;
  border: 1px solid rgba(128, 0, 0, 1) !important;
}

.bg-transparent-orange {
  background: rgba(252, 115, 3, 0.15) !important;
  color: rgba(252, 115, 3, 1) !important;
  border: 1px solid rgba(252, 115, 3, 1) !important;
}

.bg-transparent-yellow {
  background: rgba(255, 193, 2, 0.15) !important;
  color: rgba(255, 193, 2, 1) !important;
  border: 1px solid rgba(255, 193, 2, 1) !important;
}

.bg-transparent-teal {
  background: rgba(28, 175, 159, 0.15) !important;
  color: rgba(28, 175, 159, 1) !important;
  border: 1px solid rgba(28, 175, 159, 1) !important;
}

.bg-transparent-cyan {
  background: rgba(0, 209, 209, 0.15) !important;
  color: rgba(0, 209, 209, 1) !important;
  border: 1px solid rgba(0, 209, 209, 1) !important;
}

.bg-transparent-gray {
  background: rgba(134, 153, 163, 0.15) !important;
  color: rgb(70, 80, 85) !important;
  border: 1px solid rgba(134, 153, 163, 1) !important;
}

.bg-transparent-brown {
  background: #f3f2ef !important;
  color: rgb(85, 84, 70) !important;
  border: 1px solid rgb(182, 178, 171) !important;
}
.bg-brown {
  background: #8b8881 !important;
  color: rgb(248, 247, 244) !important;
  border: 1px solid rgb(90, 82, 70) !important;
}
.rojo-elegante {
  background-color: #fff3e3;
  color: #4a154b;
  border: 1px solid #4a154b;
}
.azul-moderno {
  background-color: #e8f0fe;
  color: #174ea6;
  border: 1px solid #174ea6;
}
.cafe-calido {
  background-color: #f6f0dd;
  color: #5c4033;
  border: 1px solid #5c4033;
}
.verde-natural {
  background-color: #e8f5e9;
  color: #1b5e20;
  border: 1px solid #1b5e20;
}
.anaranjado-vibrante {
  background-color: #fff3e0;
  color: #e65100;
  border: 1px solid #e65100;
}
.morado-rico {
  background-color: #f3e5f5;
  color: #7b1fa2;
  border: 1px solid #7b1fa2;
}
.azul-profundo {
  background-color: #e3f2fd;
  color: #1565c0;
  border: 1px solid #1565c0;
}
.lima-fresco {
  background-color: #f1f8e9;
  color: #558b2f;
  border: 1px solid #558b2f;
}

.btn-violet {
  color: #fff;
  background-color: #6f42c1;
  border-color: #6f42c1;
}

.btn-violet:hover {
  color: #fff;
  background-color: #5a32a3;
  border-color: #543099;
}

.btn-violet:focus,
.btn-violet.focus {
  color: #fff;
  background-color: #5a32a3;
  border-color: #543099;
  /* El shadow usa un degradado transparente del color violeta principal */
  box-shadow: 0 0 0 0.2rem rgba(135, 97, 201, 0.5);
}

.btn-violet.disabled,
.btn-violet:disabled {
  color: #fff;
  background-color: #6f42c1;
  border-color: #6f42c1;
  opacity: 0.65;
}

.btn-violet:not(:disabled):not(.disabled):active,
.btn-violet:not(:disabled):not(.disabled).active,
.show > .btn-violet.dropdown-toggle {
  color: #fff;
  background-color: #543099;
  border-color: #4e2d8f;
}

.btn-violet:not(:disabled):not(.disabled):active:focus,
.btn-violet:not(:disabled):not(.disabled).active:focus,
.show > .btn-violet.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(135, 97, 201, 0.5);
}

.btn-light-blue {
  color: #1a73e8; /* Texto azul para buen contraste, o usa #212529 para gris oscuro */
  background-color: #e8f0fe;
  border-color: #446bae;
}

.btn-light-blue:hover {
  color: #1866cf;
  background-color: #d2e3fc; /* Tono ligeramente más oscuro para el hover */
  border-color: #304c7d;
}

.btn-light-blue:focus,
.btn-light-blue.focus {
  color: #1866cf;
  background-color: #d2e3fc;
  border-color: #446bae;
  box-shadow: 0 0 0 0.2rem rgba(26, 115, 232, 0.25); /* Sombra celeste sutil */
}

.btn-light-blue.disabled,
.btn-light-blue:disabled {
  color: #1a73e8;
  background-color: #e8f0fe;
  border-color: #446bae;
  opacity: 0.65;
}

.btn-light-blue:not(:disabled):not(.disabled):active,
.btn-light-blue:not(:disabled):not(.disabled).active,
.show > .btn-light-blue.dropdown-toggle {
  color: #165cc2;
  background-color: #c4dafb; /* Estado activo más marcado */
  border-color: #446bae;
}

.btn-light-blue:not(:disabled):not(.disabled):active:focus,
.btn-light-blue:not(:disabled):not(.disabled).active:focus,
.show > .btn-light-blue.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(26, 115, 232, 0.25);
}
.contenedor-huecos {
  display: flex;
  gap: 5px;
  padding: 5px 20px;
  /* background-color: #f1f5f9; */
  /* font-family: Arial, sans-serif; */
}

/* FORMA CORRECTA Y SEGURA DE OCULTAR EL RADIO BUTTON */
.radio-hueco {
  display: none !important;
}

/* Estilo visual del cuadrado (El Label) */
.label-hueco {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  font-size: 1em;
  font-weight: normal;
  text-align: center;
  padding: 2px 6px;
  color: #334155;
  cursor: pointer;
  user-select: none;
  transition: all 0.2s ease;
}

/* Efecto al pasar el mouse por encima */
.label-hueco:hover {
  border-color: #94a3b8;
  background-color: #f8fafc;
  transform: translateY(-2px);
}

/* CUANDO EL RADIO ESTÁ SELECCIONADO: Cambia el estilo del label que está justo después (+) */
.radio-hueco:checked + .label-hueco {
  background-color: #2563eb !important;
  /* Azul intenso */
  border-color: #1d4ed8 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.4);
}

/* Efecto de clic presionado */
.label-hueco:active {
  transform: scale(0.95);
}
