﻿
.overflow-ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.width-155 {
    width: 155px;
}

.modal {
    z-index: 1050 !important;
}

.modal-dialog {
    z-index: 1050 !important;
}

.modal-backdrop {
    z-index: 1045 !important;
}

.form-header-custom {
    background-color: #0C4A6D !important;
    color: #F5F5F5 !important;
}

.cw-120 {
    max-width: 120px;
    width: 100%;
}

.cw-240 {
    max-width: 240px;
    width: 100%;
}

.cw-360 {
    max-width: 360px;
    width: 100%;
}

.cw-480 {
    max-width: 480px;
    width: 100%;
}

.cw-600 {
    max-width: 600px;
    width: 100%;
}

.cw-720 {
    max-width: 720px;
    width: 100%;
}

.cw-840 {
    max-width: 840px;
    width: 100%;
}

.cw-960 {
    max-width: 960px;
    width: 100%;
}

.cw-1080 {
    max-width: 1080px;
    width: 100%;
}

.cw-1200 {
    max-width: 1200px;
    width: 100%;
}

.cw-1320 {
    max-width: 1320px;
    width: 100%;
}

.table-header-custom {
    background-color: #0C4A6D !important;
    color: #F5F5F5 !important;
}

.table-header-custom-ing {
    background-color: #2C6994 !important;
    color: #F5F5F5 !important;
}

.table-header-custom-sal {
    background-color: #486F98 !important;
    color: #F5F5F5 !important;
}

.table-cell-custom {
    background-color: #0C4A6D !important;
    color: #F5F5F5 !important;
}

.table-cell-custom-primary {
    background-color: #CFE2FF !important;
    color: #084298 !important;
}

.table-cell-custom-secondary {
    background-color: #E2E3E5 !important;
    color: #6C757D !important;
}

.table-cell-custom-success {
    background-color: #C3DCC3 !important;
    color: #016901 !important;
}

.table-cell-custom-warning {
    background-color: #FFF3CD !important;
    color: #856404 !important;
}

.table-cell-custom-danger {
    background-color: #F8C7C7 !important;
    color: #E30000 !important;
}

.table-cell-custom-info {
    background-color: #CFF4FC !important;
    color: #055160 !important;
}

.table-cell-custom-sc {
    background-color: #F7F8F9;
}

.table-footer-custom {
    background-color: #0C4A6D !important;
    color: #F5F5F5 !important;
}

.table-cell-disabled {
    background-color: #FAFAFB !important;
    color: #687085 !important;
}

.table-detail-header-custom {
    background-color: #E6E9ED !important;
    /*color: #F5F5F5 !important;*/
}

.pdf-viewer {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.ch-120 {
    max-height: 120px !important;
    height: 100% !important;
}

.ch-240 {
    max-height: 240px !important;
    height: 100% !important;
}

.ch-360 {
    max-height: 360px !important;
    height: 100% !important;
}

.ch-480 {
    max-height: 480px !important;
    height: 100% !important;
}

.ch-600 {
    max-height: 600px !important;
    height: 100% !important;
}

.ch-720 {
    max-height: 720px !important;
    height: 100% !important;
}

.ch-840 {
    max-height: 840px !important;
    height: 100% !important;
}

.ch-960 {
    max-height: 960px !important;
    height: 100% !important;
}

.ch-1080 {
    max-height: 1080px !important;
    height: 100% !important;
}

.ch-1200 {
    max-height: 1200px !important;
    height: 100% !important;
}

.ch-1320 {
    max-height: 1320px !important;
    height: 100% !important;
}

.alt-item {
    background-color: color-mix(in srgb, var(--bs-gray-300), transparent 50%);
}

.maw-100 {
    max-width: 100% !important;
}

.maw-75 {
    max-width: 75% !important;
}

.maw-50 {
    max-width: 50% !important;
}

.maw-25 {
    max-width: 25% !important;
}

.mah-100 {
    max-height: 100% !important;
}

.mah-75 {
    max-height: 75% !important;
}

.mah-50 {
    max-height: 50% !important;
}

.mah-25 {
    max-height: 25% !important;
}

.miw-100 {
    min-width: 100% !important;
}

.miw-75 {
    min-width: 75% !important;
}

.miw-50 {
    min-width: 50% !important;
}

.miw-25 {
    min-width: 25% !important;
}

.mih-100 {
    min-height: 100% !important;
}

.mih-75 {
    min-height: 75% !important;
}

.mih-50 {
    min-height: 50% !important;
}

.mih-25 {
    min-height: 25% !important;
}

.tabs-border-radius-top-0 {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.tabs-border-top-0 {
    border-top-width: 0 !important;
}

.mtdc-0 > div {
    margin-top: 0 !important;
}

/* clase sde los botones */

/*.btn-edit-compact, .btn-delete-compact {
    padding: 3px 6px;*/ /* Más compacto */
/*border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 12px;*/ /* Icono más pequeño */
/*min-width: 28px;*/ /* Ancho mínimo */
/*min-height: 28px;*/ /* Alto mínimo */
/*}

.btn-edit-compact {
    background: linear-gradient(145deg, #fff3cd, #ffdf7e);
    color: #856404;
    box-shadow: 2px 2px 4px #d4d4d4, -1px -1px 3px #ffffff;
}

    .btn-edit-compact:hover {
        transform: translateY(-1px);
        box-shadow: 3px 3px 5px #c4c4c4, -2px -2px 4px #ffffff;
    }

    .btn-edit-compact:active {
        transform: translateY(1px);
        box-shadow: inset 1px 1px 3px #d4b74c, inset -1px -1px 3px #ffeb99;
    }

.btn-delete-compact {
    background: linear-gradient(145deg, #f8d7da, #f1aeb5);
    color: #721c24;
    box-shadow: 2px 2px 4px #d4d4d4, -1px -1px 3px #ffffff;
}

    .btn-delete-compact:hover {
        transform: translateY(-1px);
        box-shadow: 3px 3px 5px #c4c4c4, -2px -2px 4px #ffffff;
    }

    .btn-delete-compact:active {
        transform: translateY(1px);
        box-shadow: inset 1px 1px 3px #e9a2a9, inset -1px -1px 3px #ffc9d0;
    }*/


/*.btn-custom-now {
    background: #0C4A6D;
    color: white;
    border: none;
    border-radius: 0;*/ /* Sin border-radius */
/*padding: 8px 16px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 500;
}

    .btn-custom-now:hover {
        background: #f8f9fa;*/ /* Blanco grisáceo */
/*color: #0C4A6D;
        border: 1px solid #0C4A6D;*/ /* Borde liviano azul */
/*}*/

button.btn-custom-now {
    background-color: #0C4A6D !important;
    color: white !important;
    /* BORDE FIJO */
    border: 1px solid #0C4A6D !important;
    /* AHORA CON UN REDONDEO NOTABLE */
    border-radius: 4px !important;
    padding: 4px 8px;
    font-weight: 500;
    transition: all 0.3s ease; /* Transición suave en todas las propiedades */
    cursor: pointer;
}

    /* 2. Definición del HOVER y FOCUS del botón de Creación/Nuevo/GUARDAR (Blanco con borde azul) */
    button.btn-custom-now:hover,
    button.btn-custom-now:focus,
    button.btn-custom-now:active {
        /* Color de fondo: Blanco Puro (Inversión de color) */
        background-color: white !important;
        /* Color de texto: Azul oscuro */
        color: #0C4A6D !important;
        /* Borde: Se mantiene el mismo borde y grosor */
        border: 1px solid #0C4A6D !important;
        border-radius: 4px !important;
        transition: all 0.3s ease;
    }

    /* 3. Estilo opcional para el estado deshabilitado */
    button.btn-custom-now.dxbs-disabled {
        opacity: 0.6;
        cursor: not-allowed;
        background-color: #0C4A6D !important;
        color: white !important;
        border: 1px solid #0C4A6D !important;
        border-radius: 4px !important;
    }

/* EDITAR */
.btn-edit-custom {
    background-color: #E8F5FC !important;
    color: #0C4A6D !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 4px !important;
    padding: 4px 7px !important;
    font-weight: 500;
    transition: all 0.1s ease;
    cursor: pointer;
}

    .btn-edit-custom:hover,
    .btn-edit-custom:focus,
    .btn-edit-custom:active {
        background-color: #DAEBF5 !important;
        color: #0C4A6D !important;
        border: none !important;
        box-shadow: none !important;
        transform: none;
    }

.btn-delete-custom {
    background-color: #FF3B1E !important;
    color: white !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 4px !important;
    padding: 4px 7px !important;
    transition: all 0.1s ease;
    cursor: pointer;
}

    .btn-delete-custom:hover,
    .btn-delete-custom:focus,
    .btn-delete-custom:active {
        background-color: #FF5835 !important;
        color: white !important;
        border: none !important;
        box-shadow: none !important;
        transform: none;
    }

.custom-drop-zone {
    height: 200px; /* Altura fija para el ejemplo */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 2px dashed #ccc;
    background-color: #f7f9fa;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    position: relative; /* Clave para el InputFile */
    padding: 20px;
    text-align: center;
}




/*ESTILOS CARGA DE ARCHIVOS*/
/* Estilo al arrastrar sobre la zona */
.file-input-stylish::file-selector-button {
    /* Estilos del botón */
    background-color: #20b2aa; /* Turquesa Brillante */
    color: white;
    border: none;
    padding: 8px 16px;
    border-radius: 6px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.1s ease;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.06);
}

    /* Efecto al pasar el ratón */
    .file-input-stylish::file-selector-button:hover {
        background-color: #17a49b; /* Turquesa un poco más oscuro */
    }

/* Estilo del bloque de información del archivo (similar al anterior, limpio y moderno) */
.file-status-block {
    display: flex;
    align-items: center;
    padding: 10px 15px;
    margin-top: 10px;
    border: 1px solid #d0d0d0;
    border-radius: 4px;
    background-color: #f7f9fa;
    min-height: 50px;
}

.status-icon {
    font-size: 1.2rem;
    margin-right: 12px;
}

.text-success-strong {
    color: #155724; /* Verde oscuro */
    font-weight: 600;
}

.text-info-muted {
    color: #6c757d; /* Gris para instrucciones */
}

/*Badge*/
.badge-habilitado {
    /* Base styles (tamaño y forma) */
    font-size: 0.75rem; /* text-xs */
    font-weight: 500; /* font-medium */
    padding: 3px 6px; /* px-1.5 py-0.5 */
    border-radius: 4px; /* rounded */
    display: inline-block;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    /* Estilos específicos de estado Habilitado */
    background-color: #ecfdf5; /* Fondo verde muy claro */
    color: #047857; /* Texto verde oscuro */
}

.badge-advertencia {
    /* Base styles (tamaño y forma) */
    font-size: 0.75rem; /* text-xs */
    font-weight: 500; /* font-medium */
    padding: 3px 6px; /* px-1.5 py-0.5 */
    border-radius: 4px; /* rounded */
    display: inline-block;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    /* Estilos específicos de estado Habilitado */
    background-color: #fef3c7; /* Fondo verde muy claro */
    color: #b45309; /* Texto verde oscuro */
}

.badge-error {
    /* Base styles (tamaño y forma) */
    font-size: 0.75rem; /* text-xs */
    font-weight: 500; /* font-medium */
    padding: 3px 6px; /* px-1.5 py-0.5 */
    border-radius: 4px; /* rounded */
    display: inline-block;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    background-color: #FEE2E2;
    color: #B91C1C;
}

.badge-inhabilitado {
    /* Base styles (tamaño y forma) */
    font-size: 0.75rem; /* text-xs */
    font-weight: 500; /* font-medium */
    padding: 3px 6px; /* px-1.5 py-0.5 */
    border-radius: 4px; /* rounded */
    display: inline-block;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    /* Estilos específicos de estado Inhabilitado */
    background-color: #f3f4f6; /* Fondo gris claro */
    color: #4b5563; /* Texto gris oscuro */
}

/*EXCEL*/
.bi-file-earmark-spreadsheet-fill {
    filter: drop-shadow(0 0 2px rgba(25, 135, 84, 0.5));
}

.bi-file-earmark-spreadsheet.text-danger {
    opacity: 0.6;
    filter: grayscale(20%);
}