@import url('https://fonts.googleapis.com/css2?family=Comfortaa:wght@300;400;500;600;700&family=Roboto:ital,wght@0,300;0,400;1,300;1,400&family=Rubik:ital,wght@0,300;0,400;0,500;0,600;1,400;1,700&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css");
@import url("https://cdn.jsdelivr.net/npm/remixicon@4.2.0/fonts/remixicon.css");
@import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;600;700;800;900&display=swap");
/* 
font-family: 'Comfortaa', cursive;
font-family: 'Rubik', sans-serif;
font-family: 'Roboto', sans-serif;

CSS Document */
html, body {
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
  font-family: 'Roboto', cursive;
  font-size: 12px;
  overflow: hidden;
}
a:hover,
a {
  text-decoration: none;
	color: inherit;
}
/* SCROLL BARS*/

*::-webkit-scrollbar {
  width: 6px; /* Ancho de la barra de desplazamiento */
}
*::-webkit-scrollbar-thumb {
  background-color: #888; /* Color del pulgar */
  border-radius: 3px; /* Borde redondeado */
}
*::-webkit-scrollbar-track {
  background-color: #f1f1f1;
}
*::-webkit-scrollbar-thumb:hover {
  background-color: #555;
}

/* Aplica a todos los scrollbars en la página */
* {
  scrollbar-width: thin; /* Para Firefox */
  scrollbar-color: #004F89 #f1f1f1;
}

/* Aplica específicamente a elementos con overflow */
div::-webkit-scrollbar, 
section::-webkit-scrollbar {
  width: 6px;
}

div::-webkit-scrollbar-thumb, 
section::-webkit-scrollbar-thumb {
  background-color: #004F89;
  border-radius: 3px;
}

div::-webkit-scrollbar-track, 
section::-webkit-scrollbar-track {
  background-color: #f1f1f1;
}

div::-webkit-scrollbar-thumb:hover, 
section::-webkit-scrollbar-thumb:hover {
  background-color: #004F89;
}

select.required,
select:required,
input.required,
input:required{
    border: 1px solid red!important;
}
i{
	cursor: pointer;
}
#epsilon {
  display: block;
  width: 100vw;
  height: 100vh;
  position: fixed;
  z-index: 10000;
  background-color: #FFF
}
#alpha {
  position: fixed;
  overflow: hidden;
  height: 100vh;
  max-height: 100vh;
  width: 100vw;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: cover;
  display: none
}
#beta {
  position: fixed;
  overflow: hidden;
  height: calc(100% - 80px);
  max-height: calc(100vh - 50px);
  width: 100vw;
  left: 0;
  top: 30px;
  z-index: 10;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: cover
}
#omega3 {
  position: fixed;
  overflow: hidden;
  left: 0;
  top: 0;
  height: 35px;
  line-height:35px;
  width: 100vw;
  z-index: 11;
}
footer {
  position: absolute;
  bottom: 0px;
  right: 0;
  width: 100vw;
  height: 50px;
  font-size: 0.6rem;
  line-height: 50px;
  z-index: 1070;
  background-color: rgba(0, 166, 153, 1.00);
  border-top: 1px solid rgba(192, 192, 192, 1.00);
}
time {
  position: fixed;
  bottom: 10px;
  right: 35px;
  width: auto;
  height: auto;
  z-index: 100;
  font-size: 0.8rem;
  line-height: 0.95rem;
  font-family: 'Roboto', sans-serif;
  color: #FFF;
  text-align: end;
}
#help {
  position: fixed;
  bottom: 10px;
  right: 3px;
  width: auto;
  height: auto;
  font-size: 1.5rem;
  line-height: 2rem;
  z-index: 100;
}
#searchResponse {
  position: absolute;
  bottom: 55px;
  left: 150px;
  width: 300px;
  height: auto;
  font-size: 1rem;
  line-height: 1.5rem;
  z-index: 105;
  background-color: aliceblue;
    border-radius: 5px;
}
#tools i {
  margin: 0 10px;
  font-size: 1.5rem;
  line-height: 1.5rem
}
#offcanvasTop{
    border-bottom: 2px solid black;
    background-color:lightblue;
}
#offcanvasHelp{
    border-left: 2px solid black;
    background-color:lightblue;
    width: auto!important;
    max-width: 30vw!important;
}
datalist.custom-list{
    height: 300px;
    overflow-y: auto;
}
.tooltip,
.z-top{
	z-index: 5000!important;
}
.w-top{
	z-index: 4999!important;
}
.cpoint{
	cursor: pointer;
}
.btn-fs {
  border: none;
  margin: 0;
  background-color: transparent;
  color: #FFF;
  line-height: normal;
  padding: 3px 0;
}
.f-a {
  width: 50px;
  min-width: 50px;
  max-width: 50px;
  position: fixed;
  bottom: 10px;
  left: 0px;
  z-index: 100;
  font-size: 0.8rem;
  line-height: 0.95rem;
  font-family: 'Roboto', sans-serif;
  color: #FFF;
  text-align: start;
}
.f-b {
  flex-grow: 1;
  position: fixed;
  bottom: 10px;
  left: 50px;
  z-index: 100;
  font-size: 0.8rem;
  line-height: 1.5rem;
  font-family: 'Roboto', sans-serif;
  color: #FFF;
  text-align: start;
  margin: 0 5px
}
.f-c {
  width: 300px;
  min-width: 300px;
  max-width: 300px;
  position: fixed;
  bottom: 10px;
  right: 0px;
  z-index: 100;
  font-size: 0.8rem;
  line-height: 0.95rem;
  font-family: 'Roboto', sans-serif;
  color: #FFF;
  text-align: start;
}
.dropdown-menu.show {
  z-index: 1080!important;
}
/* MODALES */
.modal-container {
  position: absolute;
  z-index: 1050;
  width: auto;
  min-width: 50%!important;
  }
.modal-container.active {
  z-index: 1060; /* Asegúrate de que el z-index es mayor que otros modales */
}
.modal-content {
  position: relative;
}
.modal-body {
  /*height: calc(100vh - 200px);*/
  height: 100%;
  max-height: calc(100vh - 200px);
  overflow-y: auto;
}
.wrapper {
  width: 100%;
  margin: 10px auto;
  overflow-y: auto;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 5px;
  padding: 1%;
}
.scr-full {
  position: fixed!important;
  height: calc(100% - 50px)!important;
  max-height: calc(100vh - 50px)!important;
  width: 100vw!important;
  left: 0;
  top: 0;
}
.scr-full .modal-body{
  max-height: calc(100% - 50px)!important;
}
.bg-w-translucid{
  background-color: rgba(255, 255, 255, 0.8);
  color:black;
}


/* Login */
#togglePassword{position: absolute; right: 15px; top: 8px;}
.form-signin {
  width: 100%;
  max-width: 600px;
  padding: 15px;
  margin: 50px auto;
}
.form-signin .checkbox {
  font-weight: 400;
}
.form-signin .form-floating:focus-within {
  z-index: 2;
}
.form-signin input[type="email"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.form-signin input[type="text"],
.form-signin input[type="password"] {
  margin-bottom: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.nav-item.border{
    padding: 5px!important;
}
.nav-item{
    padding: 0 3px!important;
    margin-top: 5px;
}
/* RESPONSIVE */
@media (min-width:1200px) {
  #alpha {
    width: 100vw;
    left: 0;
    height: 100vh;
  }
  footer {
    font-size: 0.9rem;
    width: 100vw;
  }
  html, body {
    font-size: 16px;
  }
}
@media (min-width:992px) {
  html, body {
    font-size: 14px;
  }
}
@media (min-width:768px) {
  #alpha {
    display: block
  }
  #epsilon {
    display: none
  }
}
@media (min-width:576px) {}