@font-face {
    font-family: 'Open Sans Regular';
    src: url('fonts/OpenSans-Regular.ttf') format('truetype');
    font-style: normal;
  }

  body{
   font-family: 'Open Sans Regular', sans-serif;
  }

a{
    text-decoration: none;
    color:#00416A;
}

a:hover{
    color:#00416A;
}

.bg-dark{
    background-color: #000 !important;
    border-width: 0px 7px 0px 7px;
    border-color: #00416A;
}

div.bg-dark ul li a.nav-link:hover{
background-color: #142856 !important;
}

.nav-aside li{
    width: 100%;
}

.navbar {
    background-color: #fff;
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
    padding: 0;
  }
  
  .navbar-brand {
    color: #00CBB8;
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
    padding: 1rem;
  }
  
  .nav-link {
    color: #4245A4 !important;
    margin-right: 2rem;
    border-radius: 0.5rem;
    transition: all 0.3s ease-in-out;
    font-size: calc(0.2vw + 1vh);
  }

  
  
  .nav-link:hover {
    background-color: #4245A4 !important;
    color: #fff !important;
    transform: translateY(-2px);
  }
  

.fc .fc-button-primary{
    background-color: #4245A4 !important;
    border-color: #4245A4 !important;
}


.fc-h-event {
    display: block;
    border: 1px solid #3788d8;
    border: 1px solid var(--fc-event-border-color, #3788d8);
    background-color: #4245A4 !important;
    background: linear-gradient(90deg, #4245A4 0%, rgba(113, 141, 255, 0.188) 100%) !important;
}
.fc-h-event .fc-event-main {
    color: #ffffff !important;
    color: var(--fc-event-text-color, #ffffff) !important;
}

body{
    overflow: hidden;
}

div.py-3{
    overflow-y: scroll !important;
    height: 86vh;
}

.card-header {
    background-color: #f2fbfa !important;
    color: #00416A !important;
}


.parents-container{
    display: none;
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}

.container-content-parents{ 
    margin-top: 20vh;
}

.fc .fc-highlight {
    background: rgba(54, 191, 255, 0.73) !important;
}


.copyright{
    margin-top: 30px;
}



.input-credentials{

}

.input-credentials:focus{
    border-color:#bd0101;
}

.bootstrap-select .bs-ok-default:after {
    border-color: #0cca02;
}
.bootstrap-select-color:focus{
    background-color: #00CBB8  !important;
    border-width: 0 !important;
}
.bootstrap-select-color{
    background-color: #00CBB8  !important;
    border-width: 0 !important;
}
.bootstrap-select-color:hover{
    background-color: #00CBB8  !important;
    border-width: 0 !important;
}


.dropdown-item{
    color:#000 !important;
}

.dropdown-item:hover{
    color:#000 !important;
}


.dropdown-item.active, .dropdown-item:active {
    text-decoration: none;
    background-color: #f5f5f5;
}

.bootstrap-select > select.mobile-device:focus + .dropdown-toggle, .bootstrap-select .dropdown-toggle:focus {
    outline: none !important;
}


.badge-patient a{
    color:#fff !important;
}


.fc .fc-toolbar-title {
    font-size: 2vh !important;
    margin: 0;
}

.fc .fc-daygrid-day.fc-day-today {
    background-color: rgba(40, 158, 255, 0.15) !important;
    background-color: var(--fc-today-bg-color, rgba(40, 40, 255, 0.15));
  }

  #particles-js {
    position: absolute;
  }

  canvas {
    display: block;
    vertical-align: bottom;
  }



  
.dropdown-shortcuts{
    background-color: #00416A;
    .dropdown-item{
        color:#fff !important;
    }
    .dropdown-item:hover{
        color:#000 !important;
    }
}




.spinner {
    width: 80px;
    height: 80px;
    margin: 50px auto;
    position: relative;
    animation: spin 1s linear infinite;
  }
  
  .spinner-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #00CBB8;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .spinner-logo svg {
    width: 60%;
    height: 60%;
    fill: #ffffff;
  }
  
  @keyframes spin {
    to {transform: rotate(360deg);}
  }
  

  .card-header{
    h2{
        font-weight: bold !important;
    }
  }

@media(max-width:768px){
    .container-login {
        background-size: 165vw !important;
       background-repeat: no-repeat;
       background-position-y: 0vh;
       background-color: #d1f0f1;
       background-position-x: -31vw;
   }


}

@media (max-width: 1200px) {

    #MedContainerSidebar{
        display: none;
        width: 100% !important;
    }
    button.navbar-toggler{
        display: none !important;
    }
    button#btn-navbar-responsive{
        display: block !important;
    }

    .img-banner {
        width: 200px !important;
    }
    .container-dashboard {
        margin-top: 0px !important;
    }

    #navbarSupportedContent{
        display: none !important;
    }


    
}

@media (min-width: 1201px) {
    #MedContainerSidebar{
        display: block;
    }
    button#btn-navbar-responsive{
        display: none !important;
    }


}

/*
* Paleta de colores blue
*/
.btn-00416A {
    --bs-btn-color: #fff;
    --bs-btn-bg: #00416A;
    --bs-btn-border-color: #00416A;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #4245A4;
    --bs-btn-hover-border-color: #4245A4;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #00416A;
    --bs-btn-active-border-color: #00416A;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #00416A;
    --bs-btn-disabled-border-color: #00416A;
}

.bg-red-600 {
    background-color: #4245A4 !important;
    --bs-btn-color: #fff !important;
    --bs-btn-bg: #4245A4 !important;
    --bs-btn-border-color: #4245A4 !important;
    --bs-btn-hover-color: #fff !important;
    --bs-btn-hover-bg: #00416A;
    --bs-btn-hover-border-color: #00416A !important;
    --bs-btn-focus-shadow-rgb: 60, 153, 110 !important;
    --bs-btn-active-color: #fff !important;
    --bs-btn-active-bg: #4245A4;
    --bs-btn-active-border-color: #4245A4 !important;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
    --bs-btn-disabled-color: #fff !important;
    --bs-btn-disabled-bg: #4245A4 !important;
    --bs-btn-disabled-border-color: #4245A4 !important;
}

.bg-red-600:hover {
    background-color: #00416A !important;
    --bs-btn-color: #fff !important;
    --bs-btn-bg: #00416A !important;
    --bs-btn-border-color: #00416A !important;
    --bs-btn-hover-color: #fff !important;
    --bs-btn-hover-bg: #4245A4;
    --bs-btn-hover-border-color: #4245A4 !important;
    --bs-btn-focus-shadow-rgb: 60, 153, 110 !important;
    --bs-btn-active-color: #fff !important;
    --bs-btn-active-bg: #00416A;
    --bs-btn-active-border-color: #00416A !important;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
    --bs-btn-disabled-color: #fff !important;
    --bs-btn-disabled-bg: #00416A !important;
    --bs-btn-disabled-border-color: #00416A !important;
}

.btn-4245A4 {
    --bs-btn-color: #fff;
    --bs-btn-bg: #4245A4;
    --bs-btn-border-color: #4245A4;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #00416A;
    --bs-btn-hover-border-color: #00416A;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #4245A4;
    --bs-btn-active-border-color: #4245A4;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #4245A4;
    --bs-btn-disabled-border-color: #4245A4;
}

.btn-00CBB8 {
    --bs-btn-color: #fff;
    --bs-btn-bg: #00CBB8;
    --bs-btn-border-color: #00CBB8;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #EEFDF6;
    --bs-btn-hover-border-color: #EEFDF6;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #00CBB8;
    --bs-btn-active-border-color: #00CBB8;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #00CBB8;
    --bs-btn-disabled-border-color: #00CBB8;
}


.btn-EEFDF6 {
    --bs-btn-color: #fff;
    --bs-btn-bg: #EEFDF6;
    --bs-btn-border-color: #EEFDF6;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #00CBB8;
    --bs-btn-hover-border-color: #00CBB8;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #EEFDF6;
    --bs-btn-active-border-color: #EEFDF6;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #EEFDF6;
    --bs-btn-disabled-border-color: #EEFDF6;
}


.btn-outline-00416A {
    --bs-btn-color: #00416A;
    --bs-btn-border-color: #00416A;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #00416A;
    --bs-btn-hover-border-color: #00416A;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #00416A;
    --bs-btn-active-border-color: #00416A;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #00416A;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #00416A;
    --bs-gradient: none;
}



.btn-outline-4245A4 {
    --bs-btn-color: #4245A4;
    --bs-btn-border-color: #4245A4;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #4245A4;
    --bs-btn-hover-border-color: #4245A4;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #4245A4;
    --bs-btn-active-border-color: #4245A4;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #4245A4;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #4245A4;
    --bs-gradient: none;
}

.btn-outline-00CBB8 {
    --bs-btn-color: #00CBB8;
    --bs-btn-border-color: #00CBB8;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #00CBB8;
    --bs-btn-hover-border-color: #00CBB8;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #00CBB8;
    --bs-btn-active-border-color: #00CBB8;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #00CBB8;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #00CBB8;
    --bs-gradient: none;
}



.btn-outline-EEFDF6 {
    --bs-btn-color: #EEFDF6;
    --bs-btn-border-color: #EEFDF6;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #EEFDF6;
    --bs-btn-hover-border-color: #EEFDF6;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #EEFDF6;
    --bs-btn-active-border-color: #EEFDF6;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #EEFDF6;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #EEFDF6;
    --bs-gradient: none;
}



.text-color-00416A{
    color: #00416A;
}
//color primario
.text-color-4245A4{
    color: #4245a4;
}

.text-color-00CBB8{
    color: #00cbb8;
}

.text-color-EEFDF6{
    color: #EEFDF6;
}


.drop-zone {
    border: 2px dashed #007bff;
    border-radius: 4px;
    padding: 20px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
.drop-zone.dragover {
 background-color: #e9ecef;
}


.bi {
    display: inline-block;
    margin-top: 2px;
    fill: currentcolor;
}
  

#identificationPersonal{
    display: block;
}

.sub-tabs {
    margin-top: 15px;
    border-bottom: 2px solid #dee2e6;
}

.sub-tabs .nav-link {
    padding: 10px 20px;
    font-size: 0.9rem;
    border-radius: 0.25rem 0.25rem 0 0;
}

.sub-tab-content {
    border: none;
    padding: 15px 0;
}

/* Paleta de azules */
:root {
    --azul-primario: #2A4E6D;    /* Azul oscuro profesional */
    --azul-secundario: #3B6EA5;  /* Azul corporativo */
    --azul-destacado: #4A90E2;   /* Azul brillante para efectos */
    --azul-suave: #E3F2FD;       /* Azul claro para fondos */
    --degradado-azul: linear-gradient(135deg, #4A90E2 0%, #2A4E6D 100%);
}

/* Estilos generales para los tabs */
.nav-tabs {
    border-bottom: 3px solid #e0e0e0;
    position: relative;
}

.nav-tabs .nav-link {
    border: none;
    font-weight: 600;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    margin-right: 20px;
    color: #6c757d;
    background: transparent;
    padding: 1rem 1.5rem;
}

/* Estilo para el tab activo (versión premium) */
.nav-tabs .nav-link.active {
    color: var(--azul-primario);
    background: var(--azul-suave);
    border-radius: 8px 8px 0 0;
    box-shadow: 0 4px 6px -1px rgba(42, 78, 109, 0.1);
    transform: translateY(-2px);
}

/* Efecto hover para tabs no activos */
.nav-tabs .nav-link:not(.active):hover {
    color: var(--azul-secundario);
    background: rgba(234, 242, 250, 0.5);
}

/* Efecto de onda azul al activar */
.nav-tabs .nav-link.active::before {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 3px;
    background: var(--degradado-azul);
    animation: wave 0.6s ease-out;
}

@keyframes wave {
    0% { transform: scaleX(0); opacity: 0; }
    50% { transform: scaleX(1.1); opacity: 1; }
    100% { transform: scaleX(1); }
}

/* Sub-tabs estilo profesional */
.sub-tabs .nav-link {
    font-size: 0.9rem;
    padding: 0.75rem 1.5rem;
    color: #6c757d;
    border-radius: 20px;
    margin: 0 5px;
    transition: all 0.3s ease;
}

.sub-tabs .nav-link.active {
    color: white !important;
    background: var(--degradado-azul);
    box-shadow: 0 4px 6px rgba(42, 78, 109, 0.15);
    transform: scale(1.05);
}

.sub-tabs .nav-link:not(.active):hover {
    color: var(--azul-secundario);
    transform: translateY(-2px);
}

/* Efecto de brillo al pasar el mouse */
.nav-link:not(.active):hover::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at center, 
               rgba(74, 144, 226, 0.1) 0%, 
               rgba(255,255,255,0) 70%);
}

/* Responsive Design */
@media (max-width: 768px) {
    .nav-tabs {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: var(--azul-secundario) #f0f0f0;
    }
    
    .nav-tabs::-webkit-scrollbar {
        height: 6px;
    }
    
    .nav-tabs::-webkit-scrollbar-thumb {
        background: var(--azul-secundario);
        border-radius: 4px;
    }
}



/* Estilos específicos para el Sidebar */
.nav-aside {
    background: #ffffff; /* Fondo blanco */
    box-shadow: 4px 0 15px rgba(0, 0, 0, 0.05);
}

.nav-aside .nav-link {
    color: #2A4E6D !important; /* Azul oscuro para texto */
    padding: 0.8rem 1.5rem !important;
    margin: 0.15rem 0;
    border-radius: 0 8px 8px 0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

/* Efecto hover para el sidebar */
.nav-aside .nav-link:hover {
    background: #F0F7FF; /* Azul muy claro para hover */
    color: #F0F7FF !important;
    transform: translateX(5px);
}

.nav-aside .nav-link:hover::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 3px;
    background: #4A90E2; /* Borde azul izquierdo */
}

/* Íconos en estado normal */
.nav-aside .nav-link img {
    filter: brightness(0) saturate(100%) invert(28%) sepia(50%) saturate(1208%) hue-rotate(183deg) brightness(93%) contrast(93%); /* Azul #2A4E6D */
    transition: all 0.3s ease;
}

/* Íconos en hover y activo */
.nav-aside .nav-link:hover img,
.nav-aside .nav-link.active img {
    filter: brightness(0) invert(1); /* Blanco */
}

/* Elemento activo */
.nav-aside .nav-link.active {
    background: #4A90E2 !important; /* Azul brillante */
    color: white !important;
    box-shadow: 2px 2px 8px rgba(74, 144, 226, 0.2);
}

/* Submenús */
.nav-aside .collapse.nav .nav-link {
    color: #4A90E2 !important;
    padding-left: 2rem !important;
    font-size: 0.9em;
    border-left: 2px solid transparent;
}

.nav-aside .collapse.nav .nav-link:hover {
    border-left-color: #4A90E2;
    background: transparent;
}

/* Logo inferior */
.nav-aside img[src*="aside.png"] {
    filter: brightness(0) invert(0.3); /* Gris azulado */
    opacity: 0.8;
    transition: all 0.3s ease;
}

.nav-aside img[src*="aside.png"]:hover {
    filter: brightness(0) invert(0.6); /* Gris más claro */
}

/* Responsive */
@media (max-width: 768px) {
    .nav-aside {
        width: 70px;
        padding: 0.5rem !important;
    }
    
    .nav-aside .nav-link {
        padding: 1rem !important;
        justify-content: center;
    }
    
    .nav-aside .d-none.d-sm-inline {
        display: none !important;
    }
    
    .nav-aside .collapse.nav {
        margin-left: 0 !important;
    }
}

.-mb-1 {
    display: none;
}


.card-header {
    background: var(--degradado-azul);
    border-radius: 15px;
    padding: 1.5rem;
    color: white;
    box-shadow: 0 8px 30px rgba(42, 78, 109, 0.15);
    h2{
        color: white;
    }
}

.btn-success, .btn-00416A {
    background: var(--degradado-azul) !important;
    color: white !important;
    border: none !important;
}

.list-button{
    background: linear-gradient(135deg, #4A90E2 0%, #2A4E6D 100%);
    color: #fff;
    box-shadow: 0 4px 6px rgba(42, 78, 109, 0.15);
    transform: scale(1.05);
}


/* Estilos generales del scroll */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
  }
  
  /* Fondo de la barra de scroll */
  ::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 5px;
  }
  
  /* Barra de scroll (thumb) */
  ::-webkit-scrollbar-thumb {
    background: #00416A; /* Color principal */
    border-radius: 5px;
    border: 2px solid #f1f1f1;
  }
  
  /* Hover sobre la barra */
  ::-webkit-scrollbar-thumb:hover {
    background: #4245A4; /* Color secundario */
  }
  
   /* Para el contenedor .py-3 en Firefox */
div.py-3 {
    /* Firefox */
    scrollbar-width: thin;
    scrollbar-color: #00416A #f1f1f1;
  }
  
  /* Para el contenedor .py-3 en Chrome */
  div.py-3::-webkit-scrollbar {
    width: 8px !important;
  }
  div.py-3::-webkit-scrollbar-thumb {
    background: #00416A !important;
  }
  
  /* Para el contenedor #MedContainerSidebar en Firefox */
  #MedContainerSidebar {
    overflow-y: auto;
    height: 85vh;
    /* Firefox */
    scrollbar-width: thin;
    scrollbar-color: #00CBB8 #f1f1f1;
  }
  
  /* Para el contenedor #MedContainerSidebar en Chrome */
  #MedContainerSidebar::-webkit-scrollbar {
    width: 4px;
  }
  #MedContainerSidebar::-webkit-scrollbar-thumb {
    background: #00CBB8 !important;
  }

  .overflow-x-scroll {
    overflow-x: scroll !important;
    height:100vh;
}

.modal{
    background-color: rgba(0,0,0,0.5);
}
  
