.login-page {
    background-image: url("../../dist/img/login.jpg");
    background-position: center; /* Center the image */
    background-repeat: no-repeat; /* Do not repeat the image */
    background-size: cover; /* Resize the background image to cover the entire container */
}

.login-page .card {
    box-shadow: 0 0 1px rgba(0, 0, 0, .125), 0 1px 3px rgba(0, 0, 0, .2);
    margin-bottom: 1rem;
    border-radius: 20px;
}

.login-card-body {
    border-radius: 20px;
}

.logo {
    width: 100%;
    height: 80px;
    padding: 10px 10px;
    margin-bottom: 20px;
}

.footer-login {
    margin-top: 10px;
}

.btn-login {
    margin-top: 10px;
}

.footer-sticky {
    position: fixed;
    bottom: 0px;
    width: 100%;
    padding: 10px 0px;
    display: flex;
    justify-content: center;
    background: #00000085;
    color: white;
}

.login-card-body, .register-card-body {
    background: #ffffff !important;
}

.card {
    background-color: #ffffff00 !important;
}

.footer {
    padding: 15px 15px;
    background-color: #000000ab;
    color: white;
    width: 100%;
    text-align: center;
    position: absolute;
    bottom: 0px;
}

.loader-spinner {
    position: fixed;
    top: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    display: none;
    background: rgba(0, 0, 0, 0.6);
}

.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.spinner {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;
    animation: sp-anime 0.8s infinite linear;
}

@keyframes sp-anime {
    100% {
        transform: rotate(360deg);
    }
}

.inputs-error {
    border: 1px solid red;
    border-radius: 5px;
}

.inputs-success {
    border: 1px solid green;
    border-radius: 5px;
}

.content-wrapper > .content {
    margin-bottom: 40px;
}

.alias {
    cursor: alias;
}

.all-scroll {
    cursor: all-scroll;
}

.auto {
    cursor: auto;
}

.cell {
    cursor: cell;
}

.context-menu {
    cursor: context-menu;
}

.col-resize {
    cursor: col-resize;
}

.copy {
    cursor: copy;
}

.crosshair {
    cursor: crosshair;
}

.default {
    cursor: default;
}

.e-resize {
    cursor: e-resize;
}

.ew-resize {
    cursor: ew-resize;
}

.grab {
    cursor: -webkit-grab;
    cursor: grab;
}

.grabbing {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.help {
    cursor: help;
}

.move {
    cursor: move;
}

.n-resize {
    cursor: n-resize;
}

.ne-resize {
    cursor: ne-resize;
}

.nesw-resize {
    cursor: nesw-resize;
}

.ns-resize {
    cursor: ns-resize;
}

.nw-resize {
    cursor: nw-resize;
}

.nwse-resize {
    cursor: nwse-resize;
}

.no-drop {
    cursor: no-drop;
}

.none {
    cursor: none;
}

.not-allowed {
    cursor: not-allowed;
}

.pointer {
    cursor: pointer;
}

.progress {
    cursor: progress;
}

.row-resize {
    cursor: row-resize;
}

.s-resize {
    cursor: s-resize;
}

.se-resize {
    cursor: se-resize;
}

.sw-resize {
    cursor: sw-resize;
}

.text {
    cursor: text;
}

.w-resize {
    cursor: w-resize;
}

.wait {
    cursor: wait;
}

.zoom-in {
    cursor: zoom-in;
}

.zoom-out {
    cursor: zoom-out;
}

@media (min-width: 978px) {
    .table-responsive {
        display: inline-table !important;
    }
}

.bg-green-sky {
    background-color: #20c99770 !important;
    font-weight: bold;
}

.bg-red-sky {
    background-color: #dc35456b !important;
    font-weight: bold;
}

.disabled-product {
    text-decoration: line-through;
}

.bigdrop {
    width: 1024px !important;
}

@media (min-width: 1200px) {
    .modal-xl {
        max-width: 1400px !important;
    }
}

.invalid {
    border: 2px dashed red;
    border-radius: 10px;
}

.valid {
    border: 2px solid green;
    border-radius: 10px;
}

td.details-control {
    background: url('../resources/details_open.png') no-repeat center center;
    cursor: pointer;
}

tr.shown td.details-control {
    background: url('../resources/details_close.png') no-repeat center center;
}

@media (min-width: 992px) {
    .navbar-style {
        max-width: 80%;
        margin: 0 auto;
    }

    .table-responsive {
        display: inerit !important;
    }

    .footer {
        padding: 15px 15px;
        background-color: #000000ab;
        color: white;
        width: 100%;
        text-align: center;
        position: fixed;
        bottom: 0px;
        display: block !important;
    }

    .footer_mobile {
        display: none !important;
    }
}

@media (max-width: 992px) {
    .footer {
        display: none !important;
    }

    .footer_mobile {
        padding: 15px 15px;
        background-color: #000000ab;
        color: white;
        width: 100%;
        text-align: center;
        position: fixed;
        bottom: 0px;
        display: block !important;
    }
}

table.table-fit {
<!-- width: auto !important;
-->
}

table.table-fit thead th, table.table-fit tfoot th {
    width: auto !important;
}

table.table-fit tbody td, table.table-fit tfoot td {
    width: auto !important;
}

.figure-mini {
    width: 100px !important;
    height: 100px !important;
}

.dataTables_filter {
    float: left !important;
}

.card-header .fa {
    transition: .3s transform ease-in-out;
}

.card-header .collapsed .fa {
    transform: rotate(-90deg);
}

.zoom {
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
    z-index: 99999 !important;
}

.zoom:hover,
.zoom:active,
.zoom:focus {
    /**adjust scale to desired size,
    add browser prefixes**/
    -ms-transform: scale(2.5);
    -moz-transform: scale(2.5);
    -webkit-transform: scale(2.5);
    -o-transform: scale(2.5);
    transform: scale(2.5);
    position: relative;
    z-index: 100;
}

/* ===================== FILE INPUT ===================== */
.file-area {
    width: 100%;
    position: relative;
}

.file-upload {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    cursor: pointer;
}

.file-dummy {
    width: 100%;
    padding: 30px;
    background: rgba(255, 255, 255, 0.2);
    border: 2px dashed rgba(255, 255, 255, 0.2);
    text-align: center;
    transition: background 0.3s ease-in-out;

}

.success {
    display: none;
}


:hover .file-dummy {
    background: rgba(255, 255, 255, 0.1);
}

input[type=file]:focus + .file-dummy {
    outline: 2px solid rgba(255, 255, 255, 0.5);
    outline: -webkit-focus-ring-color auto 5px;
}

input[type=file]:valid + .file-dummy {
    border-color: rgba(0, 255, 0, 0.4);
    background-color: rgba(0, 255, 0, 0.3);

}

.success-upload{
    position: absolute !important;
    text-align: center !important;
    align-content: center !important;
    margin-left: -62% !important;
    margin-top: 10% !important;
    font-size: 60px;
    opacity: 0;
}

.error-upload{
    position: absolute !important;
    text-align: center !important;
    align-content: center !important;
    margin-left: -62% !important;
    margin-top: 10% !important;
    font-size: 60px;
    opacity: 0;
}

.loader-upload{
    background: rgb(0 0 0 / 72%);
    overflow: hidden;
    height: 100%;
    z-index: 2;
    position: absolute;
    top: 0px;
    width: 92%;
    opacity: 0;
    border-radius: 5px;
}

.cursor-grab {
    cursor: -webkit-grab;
    cursor: grab;
}

.tasks {
    min-height: 450px;
}

.wrapword {
    white-space: -moz-pre-wrap !important;  /* Mozilla, since 1999 */
    white-space: -webkit-pre-wrap;          /* Chrome & Safari */ 
    white-space: -pre-wrap;                 /* Opera 4-6 */
    white-space: -o-pre-wrap;               /* Opera 7 */
    white-space: pre-wrap;                  /* CSS3 */
    word-wrap: break-word;                  /* Internet Explorer 5.5+ */
    word-break: break-all;
    white-space: normal;
}

.modal-body table thead th { 
    position: sticky; 
    top: 0; 
    z-index: 9999999999999;
    background-color: #343a40 !important;

}

.modal {
    overflow: auto !important;
}

/* placing the footer on top */
tfoot {
    display: table-header-group !important;
}

input:focus, input.error {
    border: 2px solid blue !important;
}

.modal-xl {
    max-width: 98% !important;
}

.btn-blue {
    background-color: #009bff !important;
    border-color: #009bff !important;
}


/* ===================== CUSTOM SYSTEM COLOR ===================== */


/* ===================== CUSTOM FULL CALENDAR ===================== */
.fc-event {
    margin-bottom: 5px; /* Agrega margen inferior para separar los eventos */
    padding: 2px; /* Ajusta el relleno para que los eventos tengan más espacio interior */
    border-radius: 5px; /* Suaviza los bordes */
}

.note-btn {
    background-color: #f39c12;
    border: none;
    color: white;
    padding: 2px 5px !important;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 10px;
    margin-left: 5px !important;
    cursor: pointer;
    border-radius: 3px;
    position: relative;
    z-index: 1000; /* Ensure the button is on top */
}

.fc-day-number {
    position: relative;
}

#ui-datepicker-div {
    z-index: 99999 !important;
}

.fc-event {
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1); /* Añade una sombra suave */
    border: 1px solid #ccc; /* Añade un borde claro */
}

.event-tooltip {
    background-color: #333;
    color: #fff;
    padding: 5px;
    border-radius: 3px;
    position: absolute;
    z-index: 10001;
    white-space: nowrap;
    pointer-events: none; /* Evitar que interfiera con otros eventos */
}

.fc-day-grid-event {
    margin: 2px 0; /* Añade margen arriba y abajo de cada evento */
}

.fc td, .fc th {
    padding: 3px; /* Aumenta el padding en las celdas para mayor espacio */
}

.bg-primary-light {
    background-color: rgba(0, 123, 255, 0.3) !important; /* Primary color (#007bff) */
}

.bg-secondary-light {
    background-color: rgba(108, 117, 125, 0.3) !important; /* Secondary color (#6c757d) */
}

.bg-success-light {
    background-color: rgba(40, 167, 69, 0.3) !important; /* Success color (#28a745) */
}

.bg-danger-light {
    background-color: rgba(220, 53, 69, 0.3) !important; /* Danger color (#dc3545) */
}

.bg-warning-light {
    background-color: rgba(255, 193, 7, 0.3) !important; /* Warning color (#ffc107) */
}

.bg-info-light {
    background-color: rgba(23, 162, 184, 0.3) !important; /* Info color (#17a2b8) */
}

.bg-light-light {
    background-color: rgba(248, 249, 250, 0.6) !important; /* Light color (#f8f9fa) */
}

/* Estilo para la columna de datos del evento */
.event-data {
    white-space: pre-wrap; /* Permite el salto de línea cuando es necesario */
    word-wrap: break-word; /* Corta las palabras largas que no caben */
    max-width: 600px; /* Establece un ancho máximo para que el texto no expanda la celda */
    overflow-wrap: break-word; /* Rompe palabras largas */
    text-align: left; /* Alinea el texto a la izquierda */
}

