/*----------------------------------------------------------------------------------|  www.vdm.io  |----/
				Bad Developer 
/-------------------------------------------------------------------------------------------------------/

	@version		1.0.7
	@build			19th February, 2026
	@created		11th February, 2026
	@package		JoomStock
	@subpackage		site.css
	@author			RaZaMo <https://dev.vdm.io/>	
	@copyright		Copyright (C) 2026. All Rights Reserved
	@license		GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
  ____  _____  _____  __  __  __      __       ___  _____  __  __  ____  _____  _  _  ____  _  _  ____ 
 (_  _)(  _  )(  _  )(  \/  )(  )    /__\     / __)(  _  )(  \/  )(  _ \(  _  )( \( )( ___)( \( )(_  _)
.-_)(   )(_)(  )(_)(  )    (  )(__  /(__)\   ( (__  )(_)(  )    (  )___/ )(_)(  )  (  )__)  )  (   )(  
\____) (_____)(_____)(_/\/\_)(____)(__)(__)   \___)(_____)(_/\/\_)(__)  (_____)(_)\_)(____)(_)\_) (__) 

/------------------------------------------------------------------------------------------------------*/

/* CSS Document */
.no-click {
	pointer-events: none;
}
/* ==========================================================================
   JOOMSTOCK GLOBAL STYLES
   ========================================================================== */

/* --- 1. ELEMENTOS DE FORMULARIO Y SELECT2 --- */
.select2-container--bootstrap-5 .select2-selection--single {
    height: 31px !important; 
    min-height: 31px !important;
    font-size: 0.85rem !important;
    border: 1px solid #ced4da !important;
    display: flex !important;
    align-items: center !important;
}

.select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
    line-height: 31px !important;
    padding-left: 0.75rem !important;
    margin-top: 0 !important;
}

.select2-container--bootstrap-5 .select2-selection--single .select2-selection__arrow {
    height: 29px !important;
}

.input-group > .select2-container--bootstrap-5 {
    flex: 1 1 auto;
    width: 1% !important;
}

.input-group > .select2-container--bootstrap-5 .select2-selection {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.input-group-sm > .btn {
    padding-top: 0;
    padding-bottom: 0;
    height: 31px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* --- 2. DATATABLES: CONTENEDOR DE CABECERA (Header Buttons) --- */
#target-header-buttons {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    width: auto !important;
    margin-left: auto !important;
}

/* Buscador */
#target-header-buttons .dataTables_filter {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

#target-header-buttons .dataTables_filter label {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: normal !important;
    white-space: nowrap !important;
}

#target-header-buttons .dataTables_filter input {
    display: inline-block !important;
    width: 200px !important;
    height: 32px !important;
    margin: 0 0 0 10px !important;
    padding: 4px 8px !important;
    vertical-align: middle !important;
}

/* Grupo de Botones */
#target-header-buttons .dt-buttons {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    margin: 0 !important;
    gap: 5px !important;
}

#target-header-buttons .btn.dt-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: 4px !important;
}

/* Botón de Borrado Masivo (Específico) */
#btn-delete-batch {
    min-width: 120px !important;
    white-space: nowrap !important;
}

/* --- 3. DATATABLES: TABLA Y ORDENAMIENTO --- */
table.dataTable thead th:before,
table.dataTable thead th:after,
table.dataTable thead td:before,
table.dataTable thead td:after {
    display: none !important;
    content: "" !important;
}

table.dataTable thead th.sorting,
table.dataTable thead th.sorting_asc,
table.dataTable thead th.sorting_desc {
    background-image: none !important;
    cursor: pointer;
}

table.dataTable thead th {
    padding-right: 10px !important; 
}

/* --- 4. DATATABLES: PAGINACIÓN UNIFICADA --- */
.dataTables_paginate {
    margin-top: 25px !important;
    display: flex !important;
    justify-content: center !important;
    gap: 0 !important;
    padding: 0 !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 6px 12px !important;
    background: transparent !important;
    color: #0d6efd !important;
    cursor: pointer;
    position: relative;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background-color: #0d6efd !important;
    color: white !important;
    border-radius: 4px !important;
    z-index: 2;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover:not(.current) {
    background-color: #f0f0f0 !important;
    color: #0056b3 !important;
    border-radius: 4px !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.previous,
.dataTables_wrapper .dataTables_paginate .paginate_button.next {
    font-weight: 500;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:not(:last-child):not(.current) {
    border-right: 1px solid #eee !important;
}

/* --- 5. NOTIFICACIONES TOASTR --- */
#toast-container > .toast-success { background-color: #28a745 !important; color: #ffffff !important; opacity: 1 !important; }
#toast-container > .toast-error { background-color: #dc3545 !important; color: #ffffff !important; opacity: 1 !important; }
#toast-container > .toast-info { background-color: #007bff !important; color: #ffffff !important; opacity: 1 !important; }
#toast-container > .toast-warning { background-color: #ffc107 !important; color: #212529 !important; opacity: 1 !important; }

/* --- 6. UTILIDADES Y ANIMACIONES --- */
.loading-blink { animation: opacity-blink 1s infinite; }
@keyframes opacity-blink { 50% { opacity: 0.5; } }

.sticky-top {
    position: sticky;
    top: 0;
    background-color: white !important;
    box-shadow: 0 2px 2px -1px rgba(0,0,0,0.05);
    z-index: 10;
}

/* Scrollbar sutil */
.summary-table-container::-webkit-scrollbar { width: 6px; }
.summary-table-container::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 10px; }
.summary-table-container::-webkit-scrollbar-thumb { background: #ccc; border-radius: 10px; }
.summary-table-container::-webkit-scrollbar-thumb:hover { background: #adb5bd; }

/* Para todas las cabeceras de tarjeta que usen flexbox manual */
.card-header.d-flex {
    min-height: 49px !important;
    padding: 0.75rem 1.25rem !important;
}
