input.editable-principal {
    font-weight: bold;
    border: none;
    font-size: 24px;
}

input.editable {
    border: none;
}

a {
    cursor: pointer;
}

/* Overlay de carga a pantalla completa */
#cargando {
    position: fixed !important;
    top: 0; right: 0; bottom: 0; left: 0;     /* full viewport */
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;                    /* ignora col-* */
    max-width: none !important;
  
    z-index: 9999;
    display: none;                             /* tu JS lo muestra */
    background: rgba(0,0,0,.35);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    pointer-events: auto;
  }
  
  /* Centrar contenido (spinner + texto) sin añadir nodos */
  #cargando::before,             /* spinner */
  #cargando::after {             /* etiqueta "Cargando…" */
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    content: "";
  }
  
  /* Spinner */
  #cargando::before {
    top: 45%;
    width: 44px;
    height: 44px;
    border: 4px solid rgba(255,255,255,.35);
    border-top-color: #0ea5e9;   /* color del borde activo */
    border-radius: 50%;
    animation: spin .9s linear infinite;
  }
  
  /* Texto */
  #cargando::after {
    top: calc(45% + 56px);
    content: attr(data-text);    /* usa el texto del atributo data-text */
    padding: 10px 14px;
    border-radius: 12px;
    background: rgba(255,255,255,.9);
    color: #0f172a;
    font-weight: 600;
    box-shadow: 0 10px 30px rgba(0,0,0,.25);
  }
  
  /* Animación spinner */
  @keyframes spin { to { transform: translateX(-50%) rotate(360deg); } }
  

.tabla-cabecera-fija thead tr th {
    position: sticky;
    top: 0;
    z-index: 10;
    background-color: #ffffff;
}

.select2-selection__choice {
    color: #000000;
}

.blink {
    animation: blink-animation 1s steps(1, start) infinite;
    color: red;
    /* Opcional */
}

@keyframes blink-animation {
    0% {
        visibility: visible;
    }

    50% {
        visibility: hidden;
    }

    100% {
        visibility: visible;
    }
}