body{
  color: #0c3c66;
}
[class*=sidebar-dark-] {
  background-color: #ffffff;
}
[class*=sidebar-dark-] .sidebar a{
  color: #0c3c66;
}
[class*=sidebar-dark-] .nav-treeview>.nav-item>.nav-link {
  color: #0c3c66;
}
[class*=sidebar-dark-] .nav-treeview>.nav-item>.nav-link:focus, [class*=sidebar-dark-] .nav-treeview>.nav-item>.nav-link:hover {
  background-color: rgba(255,255,255,.1);
  color: #0c3c66;
}
[class*=sidebar-dark-] .nav-sidebar>.nav-item.menu-open>.nav-link, [class*=sidebar-dark-] .nav-sidebar>.nav-item:hover>.nav-link, [class*=sidebar-dark-] .nav-sidebar>.nav-item>.nav-link:focus {
    background-color: rgba(255,255,255,.1);
    color: #0c3c66;
}
.mayuscula
{
  text-transform: uppercase;
}
.minuscula
{
  text-transform: lowercase;
}
.text-azul{
  color: #0c3c66;
  font-weight: 500 !important;
}
.center{
  text-align: center;
}
.left{
  text-align: left;
}
.right{
  text-align: right;
}
.justify{
 text-align: justify; 
}
[class*=sidebar-dark-] .user-panel a:hover {
    color: #0c3c66;
}
[class*=sidebar-dark] .brand-link {
  border-bottom: 2px solid #0b8cd3;
}
.card{
  color: #0c3c66;
}
h1, h2, h3, h4, h5{
  color: #0c3c66;
}
.opciones{
  color: #0b8cd3;
  font-size: 22px;
}
.card-primary:not(.card-outline)>.card-header {
  background-color: #0b8cd35e;
}
.btn-primary {
  font-weight: 510;
  color: #fff;
  background-color: #0b8cd3;
  border-color: #0b8cd3 !important;
}
.btn-primary:hover {
  font-weight: 510;
  color: #fff;
  background-color: #0b8cd3;
  border-color: #0b8cd3;
}
a {
  color: #0c3c66;
}
.card-footer {
  background-color: rgb(251 251 251 / 3%);
}
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
  font-weight: 510;
  color: #0c3c66;
  background-color: #0b8cd3;
  border-color: #0b8cd3;
}
.table td, .table th {
  vertical-align: middle;
}
.alert-warning {
  color: #0c3c66;
  background-color: #ffc1073b;
  border-color: #edb100;
}
.btn:not(:disabled):not(.disabled) {
  margin-left: 12px;
}
.table thead th {
  vertical-align: inherit;
}
.error {
  color: #f10a20;
  font-weight: 500 !important;
}
.pendient {
  color: #f10a20;
  font-weight: bold;
}
.success {
  color: #28a745;
  font-weight: bold;
}
.warning {
  color: #ffc107;
  font-weight: bold;
}
.pendiente_bg {
  background-color: #7ecce98f ;
}
.error_bg {
  background-color: rgb(255 0 0 / 22%);
}
.warning_bg {
  background-color: rgb(243 235 140 / 33%);
}
.warning_bg_note {
  background-color: rgb(243 235 140 / 60%);
}
.success_bg {
  background-color: rgb(34 188 53 / 15%);
}
.warning_2_bg {
  background-color: #d6ef63 !important;
}
.card-header {
  background-color: #0b8cd35e;
}
.page-item.active .page-link {
  color: #0b8cd3;
  background-color: #0c3c66;
  border-color: #0c3c66;
}
.page-link {
  color: #0c3c66;
}
.page-link:hover {
  z-index: 2;
  /* color: #0056b3; */
  text-decoration: none;
  background-color: #0c3c66;
  border-color: #0c3c66;
} 

.loader {
  position: fixed;
  z-index: 5000;
  background: rgba(255, 255, 255,0.6);
  left: 0px;
  top: 0px;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition:all .2s ease;
}
.loader::before {
  content: "";
  position: absolute;
  border: 2px solid rgb(182, 235, 255, 1);
  width: 60px;
  height: 60px;
  border-radius: 50%;
  box-sizing: border-box;
  border-left: 2px solid rgba(50, 150, 176,0);
  border-top: 2px solid rgba(50, 150, 176,0);
  animation: rotarload 1s linear infinite;
  transform: rotate(0deg);
}
@keyframes rotarload {
    0%   {transform: rotate(0deg)}
    100% {transform: rotate(360deg)}
}

.loader::after {
  content: "";
  position: absolute;
  border: 2px solid rgba(4, 53, 121, 0.5);
  width: 60px;
  height: 60px;
  border-radius: 50%;
  box-sizing: border-box;
  border-left: 2px solid rgba(50, 150, 176, 0);
  border-top: 2px solid rgba(50, 150, 176, 0);
  animation: rotarload 1s ease-out infinite;
  transform: rotate(0deg);
}

.main-footer {
  padding: 0.4rem;
}
.back-to-top {
  bottom: 2.3rem;
  position: fixed;
  right: 1rem;
  z-index: 1032;
}
.t_docente
{
  width: 100%;
  font-size:1rem;
  margin-bottom: 0rem;
}
.t_docente tr td {
  border: 1px solid #dee2e6;
  padding: .1rem !important;
  width: 25%;
}

.switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
}
.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #0c3c66;
  -webkit-transition: .4s;
  transition: .4s;
}
.slider:before {
  position: absolute;
  content: "";
  height: 20px;
  width: 20px;
  left: 2px;
  bottom: 2px;
  background-color: white;
  -webkit-transition: .3s;
  transition: .3s;
}
input:checked + .slider {
  background-color: #ccc;
}
input:focus + .slider {
  box-shadow: 0 0 1px #ccc;
}
input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}
  /* Rounded sliders */
.slider.round {
  border-radius: 34px;
}
.slider.round:before {
  border-radius: 50%;
}
/*COLORES PARA LOS MODULOS*/
.bg-1 {
  background-color: #f32a82 !important;
}    
.bg-2 {
  background-color: #17a2b8 !important;
}
.bg-3 {
  background-color: #fdcc37 !important;
}
.bg-4 {
  background-color: #28a745 !important;
}
.bg-5 {
  background-color: #473489 !important;
}
.bg-6 {
  background-color: #054bdb !important;
}
.bg-7 {
  background-color: #b528d3 !important;
}
.bg-8 {
  background-color: #f3481b !important;
}
.bg-9 {
  background-color: #2ae32c !important;
}
.bg-10 {
  background-color: #21d9bc !important;
}
.bg-11 {
  background-color: #36bdc1 !important;
}
.bg-12 {
  background-color: #bbd932 !important;
}
.presente{
  color: #ffffff !important;
  font-weight: 500 !important;
  background-color: #10b981 !important;
}
.justificado{
  color: #ffffff !important;
  font-weight: 500 !important;
  background-color: #f59e0b !important;
}
.ausente{
  color: #ffffff !important;
  font-weight: 500 !important;
  background-color: #f43f5e !important;
}
/* Transición suave para campos habilitados/deshabilitados */
.justificacion-input {
  transition: all 0.2s ease-in-out;
}
.table-hover tbody tr:hover {
  color: #0c3c66;
}
.text-alineado-balance
{ 
  text-wrap:balance; 
}
.text-alineado-inital
{ 
  text-wrap:initial; 
}
.text {
  font-size:28px;
  font-family:helvetica;
  font-weight:bold;
  color:#71d90b;
  text-transform:uppercase;
}
.parpadea {
  animation-name: parpadeo;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;

  -webkit-animation-name:parpadeo;
  -webkit-animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
}

@-moz-keyframes parpadeo{  
  0% { opacity: 1.0; }
  50% { opacity: 0.0; }
  100% { opacity: 1.0; }
}

@-webkit-keyframes parpadeo {  
  0% { opacity: 1.0; }
  50% { opacity: 0.0; }
   100% { opacity: 1.0; }
}

@keyframes parpadeo {  
  0% { opacity: 1.0; }
   50% { opacity: 0.0; }
  100% { opacity: 1.0; }
}

.foto-card {
  width: 60%;/*50*/
  height: 60px;/*70*/
  object-fit: cover; /* Recorta la imagen para que todas midan lo mismo contain cover */
  display: inline; /*block;*/
}
.brand-link .brand-image {
  margin-top: -10px;
  max-height: 45px;
}
.text-brand {
  color: rgb(11 140 211) !important;
}