
/* -------------------------------------------------------------------------- */
/*                           STYLES BACKGROUND COLOR                          */
/* -------------------------------------------------------------------------- */

.bg-huixquilucan1 {
    background-color: #19225c !important;
}

.bg-huixquilucan2 {
    background-color: #192075 !important;
}

.bg-huixquilucan3 {
    background-color: #0b4e91 !important;
}

.bg-huixquilucan4 {
    background-color: #125e9e !important;
}

.bg-huixquilucan5 {
    background-color: #4f9fcf !important;
}

.bg-huixquilucan6 {
    background-color: #05c3de !important;
}

.bg-update-huixquilucan {
    background-color: #df7f25 !important;
}

.bg-info-huixquilucan {
    background-color: #4f9fcf !important;
}


.bg-inactive-huixquilucan {
    background-color: #37474f !important;
}


.bg-delete-huixquilucan {
    background-color: #f30606 !important;
}

.bg-gradiente-huixquilucan {
	background: rgb(18,94,158);
	background: linear-gradient(360deg, rgba(18,94,158,1) 19%, rgba(79,159,207,1) 56%); 
}

/* -------------------------------------------------------------------------- */
/*                           STYLES TEXT COLOR                                */
/* -------------------------------------------------------------------------- */

.text-huixquilucan1 {
    color: #19225c !important;
}

.text-huixquilucan2 {
    color: #192075 !important;
}

.text-huixquilucan3 {
    color: #0b4e91 !important;
}

.text-huixquilucan4 {
    color: #125e9e !important;
}

.text-huixquilucan5 {
    color: #4f9fcf !important;
}

.text-huixquilucan6 {
    color: #05c3de !important;
}

.text-update-huixquilucan {
    color: #df7f25 !important;
}

.text-delete-huixquilucan {
    color: #f30606 !important;
}




/* -------------------------------------------------------------------------- */
/*                           STYLES BUTTONS                                   */
/* -------------------------------------------------------------------------- */

.btn-primary-huixquilucan1 {
	background-color: #19225c;
	border-color: #19225c;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-primary-huixquilucan1:hover {
	background-color: #192075;
	border-color: #192075;
	color: #fff;
}

.btn-primary-huixquilucan1:active {
	background-color: #0b4e91 !important;
	border-color: #0b4e91;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-primary-huixquilucan1:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #192075;
}

.btn-primary-huixquilucan1.disabled {
	background-color: rgba(68, 138, 255, 0.5);
	border-color: rgba(68, 138, 255, 0.5);
}




.btn-primary-huixquilucan2 {
	background-color: #125e9e;
	border-color: #125e9e;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-primary-huixquilucan2:hover {
	background-color: #4f9fcf;
	border-color: #4f9fcf;
	color: #fff;
}

.btn-primary-huixquilucan2:active {
	background-color: #05c3de !important;
	border-color: #05c3de;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-primary-huixquilucan2:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #4f9fcf;
}

.btn-primary-huixquilucan2.disabled {
	background-color: rgba(118, 168, 255, 0.5);
	border-color: rgba(68, 138, 255, 0.5);
}


.btn-primary-huixquilucan2 {
	background-color: #125e9e;
	border-color: #125e9e;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-primary-huixquilucan2:hover {
	background-color: #4f9fcf;
	border-color: #4f9fcf;
	color: #fff;
}

.btn-primary-huixquilucan2:active {
	background-color: #05c3de !important;
	border-color: #05c3de;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-primary-huixquilucan2:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #4f9fcf;
}

.btn-primary-huixquilucan2.disabled {
	background-color: rgba(118, 168, 255, 0.5);
	border-color: rgba(68, 138, 255, 0.5);
}



.btn-primary-huixquilucan3 {
	background-color: #4f9fcf;
	border-color: #4f9fcf;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-primary-huixquilucan3:hover {
	background-color: #05c3de;
	border-color: #05c3de;
	color: #fff;
}

.btn-primary-huixquilucan3:active {
	background-color: #07cfe9 !important;
	border-color: #07cfe9;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-primary-huixquilucan3:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #4f9fcf;
}

.btn-primary-huixquilucan3.disabled {
	background-color: rgba(127, 174, 255, 0.5);
	border-color: rgba(72, 138, 251, 0.5);
}




.btn-gradient-huixquilucan {
	background: rgb(18,94,158);
	background: linear-gradient(360deg, rgba(18,94,158,1) 19%, rgba(79,159,207,1) 56%); 
	color: #c7c7c7;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-gradient-huixquilucan:hover {
	background: rgb(18,94,158);
	background: linear-gradient(360deg, rgba(18,94,158,1) 19%, rgba(79,159,207,1) 56%);
	color: #fff;
}

.btn-gradient-huixquilucan:active {
	background: rgb(18,94,158);
	background: linear-gradient(360deg, rgba(18,94,158,1) 19%, rgba(79,159,207,1) 56%); 
	border-color: #05c3de;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-gradient-huixquilucan:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	background: rgb(18,94,158);
	background: linear-gradient(360deg, rgba(18,94,158,1) 19%, rgba(79,159,207,1) 56%); 
}

.btn-gradient-huixquilucan.disabled {
	background: rgb(18,94,158);
	background: linear-gradient(360deg, rgba(18,94,158,1) 19%, rgba(79,159,207,1) 56%); 
}





.btn-update {
	background-color: #df7f25;
	border-color: #df7f25;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-update:hover {
	background-color: #e3ad23;
	border-color: #e3ad23;
	color: #fff;
}

.btn-update:active {
	background-color: #e78629 !important;
	border-color: #e78629;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-update:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #e3ad23;
}

.btn-update.disabled {
	background-color: rgba(255, 106, 19, 0.5);
	border-color: rgba(255, 106, 19, 0.5);
}

.btn-outline-update {
	color: #df7f25;
	border-color: #df7f25;
	background-color: #ffffff;
  }

.btn-outline-update.active, .btn-outline-update:active,
.show > .btn-outline-update.dropdown-toggle, .btn-outline-update:hover, .btn-update.active,
.btn-update:active, .show > .btn-update.dropdown-toggle {
  background-color: #df7f25;
  border: 1px solid #df7f25;
  color:#ffffff;
}



.btn-delete {
	background-color: #f30606;
	border-color: #f30606;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-delete:hover {
	background-color: #e24e4e;
	border-color: #e24e4e;
	color: #fff;
}

.btn-delete:active {
	background-color: #fa2c2c !important;
	border-color: #fa2c2c;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-delete:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #fb4a4a;
}

.btn-delete.disabled {
	background-color: rgba(255, 82, 82, 0.5);
	border-color: rgba(255, 82, 82, 0.5);
}





.btn-active {
	background-color: #33d176;
	border-color: #33d176;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-active:hover {
	background-color: #4cd787;
	border-color: #4cd787;
}

.btn-active:active {
	background-color: #0c8940 !important;
	border-color: #0c8940;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-active:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #4cd787;
}

.btn-active.disabled {
	background-color: rgba(17, 193, 91, 0.5);
	border-color: rgba(17, 193, 91, 0.5);
}



.btn-inactive {
	background-color: #37474f;
	border-color: #37474f;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-inactive:hover {
	background-color: #4c626d;
	border-color: #4c626d;
	color: #fff;
}

.btn-inactive:active {
	background-color: #1e272b !important;
	border-color: #1e272b;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-inactive:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #4c626d;
}

.btn-inactive.disabled {
	background-color: rgba(55, 71, 79, 0.5);
	border-color: rgba(55, 71, 79, 0.5);
}



.btn-info {
	background-color: #00bcd4;
	border-color: #00bcd4;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}

.btn-info:hover {
	background-color: #08e3ff;
	border-color: #08e3ff;
}

.btn-info:active {
	background-color: #008697 !important;
	border-color: #008697;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}

.btn-info:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	background-color: #08e3ff;
}

.btn-info.disabled {
	background-color: rgba(0, 188, 212, 0.5);
	border-color: rgba(0, 188, 212, 0.5);
}

.btn-disabled {
	background-color: rgba(68, 138, 255, 0.5);
	border-color: rgba(68, 138, 255, 0.5);
	color: #fff;
	cursor: pointer;
	-webkit-transition: all ease-in 0.3s;
	transition: all ease-in 0.3s;
}


/* -------------------------------------------------------------------------- */
/*                                   A LINKS                                  */
/* -------------------------------------------------------------------------- */

a {
	color: #0b4e91;
	text-decoration: none;
  }

a:hover {
	color: #125e9e;
	text-decoration: none;
  }



/* -------------------------------------------------------------------------- */
/*                                STYLES BADGES                               */
/* -------------------------------------------------------------------------- */

.badge-huixquilucan1 {
	color: #fff;
	background-color: #19225c;
  }
  a.badge-huixquilucan1:focus,
  a.badge-huixquilucan1:hover {
	color: #fff;
	background-color: #192075;
  }
  a.badge-huixquilucan1.focus,
  a.badge-huixquilucan1:focus {
	outline: 0;
	box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.379);
  }



  .badge-huixquilucan2 {
	color: #fff;
	background-color: #0b4e91;
  }
  a.badge-huixquilucan2:focus,
  a.badge-huixquilucan2:hover {
	color: #fff;
	background-color: #125e9e;
  }
  a.badge-huixquilucan2.focus,
  a.badge-huixquilucan2:focus {
	outline: 0;
	box-shadow: 0 0 0 0.2rem rgba(1, 44, 90, 0.283);
  }



  .badge-huixquilucan3 {
	color: #fff;
	background-color: #4f9fcf;
  }
  a.badge-huixquilucan3:focus,
  a.badge-huixquilucan3:hover {
	color: #fff;
	background-color: #05c3de;
  }
  a.badge-huixquilucan3.focus,
  a.badge-huixquilucan3:focus {
	outline: 0;
	box-shadow: 0 0 0 0.2rem rgba(1, 44, 90, 0.283);
  }


  .badge-update {
	color: #fff;
	background-color: #df7f25;
  }
  a.badge-update:focus,
  a.badge-update:hover {
	color: #fff;
	background-color: #c36a17;
  }
  a.badge-update.focus,
  a.badge-update:focus {
	outline: 0;
	box-shadow: 0 0 0 0.2rem rgba(208, 122, 1, 0.283);
  }



    .badge-delete {
	color: #fff;
	background-color: #fa2c2c;
  }
  a.badge-delete:focus,
  a.badge-delete:hover {
	color: #fff;
	background-color: #fa2c2c;
  }
  a.badge-delete.focus,
  a.badge-delete:focus {
	outline: 0;
	box-shadow: 0 0 0 0.2rem rgba(208, 122, 1, 0.283);
  }

/* -------------------------------------------------------------------------- */
/*                               CURSOR POINTER                               */
/* -------------------------------------------------------------------------- */

.cursor-pointer {
	cursor:pointer;
}

/* ========================================================================== */
/* ====================== STYLES ONLY FOR THIS PROJECT ====================== */
/* ========================================================================== */


.menu-acordeon .accordion-button{
	font-weight:600;
}

.submenu,
.submenu2{
display:none;
list-style:none;
padding-left:15px;
margin-top:5px;
}

.submenu2{
padding-left:20px;
}

.submenu-toggle{
cursor:pointer;
font-weight:500;
}

.submenu a,
.submenu2 a{
text-decoration:none;
color:#444;
font-size:14px;
}

.submenu a:hover{
color:#0d6efd;
}



.about-section{
    position: relative;
    overflow: visible;
}

.about-floating{
    position: absolute;
    right: 100px;
    bottom: 20px;
    z-index: 1000;
}

.about-floating img{
    width: 180px;
    height: auto;
}

.speech-bubble{
    position: absolute;
    left: 180px;
    top: 20px;
    max-width: 280px;
    padding: 15px 20px;
    background: #fff;
    border: 3px solid #003983;
    border-radius: 20px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

/* Borde del pico */
.speech-bubble::before{
    content: "";
    position: absolute;
    left: -18px;
    top: 60%;
    transform: translateY(-50%);
    border-width: 12px 18px 12px 0;
    border-style: solid;
    border-color: transparent #003983 transparent transparent;
}

/* Relleno del pico */
.speech-bubble::after{
    content: "";
    position: absolute;
    left: -14px;
    top: 60%;
    transform: translateY(-50%);
    border-width: 10px 16px 10px 0;
    border-style: solid;
    border-color: transparent #fff transparent transparent;
}

@keyframes floatBubble{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(-8px);}
}

.speech-bubble{
    animation: floatBubble 3s ease-in-out infinite;
}

.predial-chatbot {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 99999;
  font-family: inherit;
}

/* Botón flotante */
.predial-chatbot-toggle {
  position: relative;
  width: 82px;
  height: 82px;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  background: linear-gradient(135deg, #ffffff, #eaf4ff);
  box-shadow:
    0 24px 55px rgba(15, 23, 42, 0.22),
    inset 0 0 0 4px rgba(37, 99, 235, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.predial-chatbot-toggle:hover {
  transform: translateY(-6px) scale(1.04);
  box-shadow:
    0 30px 70px rgba(37, 99, 235, 0.28),
    inset 0 0 0 4px rgba(37, 99, 235, 0.18);
}

.predial-chatbot-toggle img {
  width: 68px;
  height: 68px;
  object-fit: contain;
  animation: chatbotFloat 2.8s ease-in-out infinite;
}

.predial-chatbot-label {
  position: absolute;
  bottom: -18px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  font-size: 0.7rem;
  font-weight: 800;
  color: #164eab;
  background: rgba(255, 255, 255, 0.95);
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(37, 99, 235, 0.16);
  box-shadow: 0 12px 25px rgba(15, 23, 42, 0.14);
  pointer-events: none;
}