/* Velzon + Tabulator: carga este archivo DESPUÉS de tabulator_simple o tabulator_bootstrap5. */
/* Modo oscuro: el layout usa data-bs-theme="dark" en <html> (ver app.js), no data-layout-mode. */

.tabulator-cell {
    border-right: none !important;
    align-items: center;
    padding-left: 10px !important;
}
.tabulator-header {
    padding-right: 0px !important;
    color: #646670!important;
    border-color: var(--vz-border-color) !important;
    font-weight: 700 !important;
    padding-left: 10px !important;
}
.tabulator-row-even {
    background-color: var(--vz-card-bg) !important;
}
.tabulator {
    border: none !important;
    font-size: var(--vz-body-font-size) !important;
    font-weight: var(--vz-body-font-weight) !important;
    line-height: var(--vz-body-line-height) !important;
    color: var(--vz-body-color) !important;
    background-color: var(--vz-card-bg) !important;
    box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
}
.tabulator .tabulator-header .tabulator-col {
    border: none !important;
    height: 40px !important;
}
.tabulator-row.tabulator-group {
    cursor: pointer;
    background-color: rgba(64,81,137,.05) !important;
}
.tabulator-row.tabulator-group:hover {
    cursor: pointer;
    background-color: rgba(0,0,0,0.07) !important;
}
.tabulator-row.tabulator-selectable:hover {
    background-color: rgba(0,0,0,0.07) !important;
}
.tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row {
    background-color: rgba(64,81,137,.05) !important;
}
.tabulator .tabulator-header {
    background-color: rgba(64,81,137,.05) !important;
    color: #3a497bc2 !important;
}
.tabulator .tabulator-footer {
    background-color: rgba(64,81,137,.05) !important;
}
.tabulator .tabulator-header .tabulator-calcs-holder {
    background-color: transparent !important;
}
.tabulator .tabulator-header .tabulator-col {
    background: none !important;
}
.tabulator-row.tabulator-selected {
    background-color: #9abcea !important;
    color: black !important;
}
.tabulator-row.tabulator-selected:hover,
[data-bs-theme="dark"] .tabulator-row.tabulator-selected:hover,
html[data-bs-theme="dark"] .tabulator-row.tabulator-selected:hover {
    background-color: #9abcea !important;
    color: black !important;
}
/* Tabulator 5 usa tabulator-tableholder (minúsculas) en el CSS oficial */
.tabulator .tabulator-tableholder .tabulator-placeholder span,
.tabulator .tabulator-tableHolder .tabulator-placeholder span {
    color: #909090 !important;
}
.tabulator .tabulator-footer {
    border-top: #fff !important;
}
.tabulator .tabulator-header .tabulator-col .tabulator-col-content {
    margin-top: 7px;
    margin-right: 12px !important;
}
.tabulator-calcs-holder {
    pointer-events: none;
}

/* ---------- Modo oscuro (data-bs-theme en <html>, Velzon / Bootstrap 5) ---------- */
html[data-bs-theme="dark"] .tabulator,
[data-bs-theme="dark"] .tabulator {
    background-color: var(--vz-body-bg) !important;
    color: var(--vz-body-color) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

html[data-bs-theme="dark"] .tabulator .tabulator-header,
[data-bs-theme="dark"] .tabulator .tabulator-header {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-col,
[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-col {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-calcs-holder,
[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-calcs-holder,
html[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row,
[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-tableholder .tabulator-table,
[data-bs-theme="dark"] .tabulator .tabulator-tableholder .tabulator-table,
html[data-bs-theme="dark"] .tabulator .tabulator-tableHolder .tabulator-table,
[data-bs-theme="dark"] .tabulator .tabulator-tableHolder .tabulator-table {
    background-color: var(--vz-body-bg) !important;
    color: var(--vz-body-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-tableholder,
[data-bs-theme="dark"] .tabulator .tabulator-tableholder,
html[data-bs-theme="dark"] .tabulator .tabulator-tableHolder,
[data-bs-theme="dark"] .tabulator .tabulator-tableHolder {
    background-color: var(--vz-body-bg) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-row,
[data-bs-theme="dark"] .tabulator .tabulator-row,
html[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-row-even,
[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-row-even {
    background-color: var(--vz-card-bg) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-row-odd,
[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-row-odd {
    background-color: var(--vz-body-bg) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-row .tabulator-cell,
[data-bs-theme="dark"] .tabulator .tabulator-row .tabulator-cell {
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator-row.tabulator-selectable:hover,
[data-bs-theme="dark"] .tabulator-row.tabulator-selectable:hover,
html[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-selectable:hover,
[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-selectable:hover {
    background-color: var(--vz-light) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-footer,
[data-bs-theme="dark"] .tabulator .tabulator-footer,
html[data-bs-theme="dark"] .tabulator .tabulator-paginator,
[data-bs-theme="dark"] .tabulator .tabulator-paginator {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-footer,
[data-bs-theme="dark"] .tabulator .tabulator-footer {
    border-top: 1px solid var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-page,
[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-page,
html[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-paginator,
[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-paginator,
html[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-page-size,
[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-page-size {
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
    background-color: var(--vz-card-bg) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-page.active,
[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-page.active {
    color: var(--vz-info) !important;
    font-weight: 600;
}

html[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-calcs-holder,
[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-calcs-holder,
html[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-calcs-holder .tabulator-row,
[data-bs-theme="dark"] .tabulator .tabulator-footer .tabulator-calcs-holder .tabulator-row {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-tableholder .tabulator-table .tabulator-row.tabulator-calcs,
[data-bs-theme="dark"] .tabulator .tabulator-tableholder .tabulator-table .tabulator-row.tabulator-calcs {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
}

html[data-bs-theme="dark"] .tabulator-row.tabulator-group,
[data-bs-theme="dark"] .tabulator-row.tabulator-group {
    background-color: var(--vz-light) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-col .tabulator-header-filter input,
html[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-col .tabulator-header-filter select,
[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-col .tabulator-header-filter input,
[data-bs-theme="dark"] .tabulator .tabulator-header .tabulator-col .tabulator-header-filter select {
    background-color: var(--vz-card-bg) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

html[data-bs-theme="dark"] .tabulator .tabulator-tableholder .tabulator-placeholder .tabulator-placeholder-contents,
html[data-bs-theme="dark"] .tabulator .tabulator-tableHolder .tabulator-placeholder .tabulator-placeholder-contents,
[data-bs-theme="dark"] .tabulator .tabulator-tableholder .tabulator-placeholder .tabulator-placeholder-contents,
[data-bs-theme="dark"] .tabulator .tabulator-tableHolder .tabulator-placeholder .tabulator-placeholder-contents {
    color: var(--vz-body-color) !important;
    opacity: 0.55;
}

html[data-bs-theme="dark"] .tabulator .tabulator-popup-container,
html[data-bs-theme="dark"] .tabulator .tabulator-tooltip,
html[data-bs-theme="dark"] .tabulator .tabulator-menu,
[data-bs-theme="dark"] .tabulator .tabulator-popup-container,
[data-bs-theme="dark"] .tabulator .tabulator-tooltip,
[data-bs-theme="dark"] .tabulator .tabulator-menu {
    background-color: var(--vz-card-bg) !important;
    color: var(--vz-body-color) !important;
    border-color: var(--vz-border-color) !important;
}

/* Secuencias NCF: fila resaltada legible en oscuro */
html[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-selected-ncf,
[data-bs-theme="dark"] .tabulator .tabulator-row.tabulator-selected-ncf {
    background-color: rgba(13, 110, 253, 0.22) !important;
    color: var(--vz-body-color) !important;
}
