/**
 * INFOBMS — neutralize colored borders/outlines on app chrome.
 * Load last among Infobms CSS so these rules win.
 * Keeps table tint borders, table cell grids, and focus rings.
 */

/* Decorative chrome — no colored borders */
body, header, footer, aside, nav, main, section, article, div,
form, label, p, span, a, ul, ol, li, h1, h2, h3, h4, h5, h6,
svg, img, figure, figcaption,
input, textarea, select, button,
.btn, .form-control, .input-group, .input-group-addon, .input-group-text,
.box, .box-header, .box-body, .box-footer,
.card, .card-header, .card-body, .card-footer,
.modal-content, .modal-header, .modal-footer,
.navbar, .navbar-nav, .sidebar, .main-sidebar, .main-header, .main-footer,
.content-wrapper, .content, .nav-tabs, .nav-tabs > li > a, .tab-content,
.dropdown-menu, .panel, .panel-heading, .panel-body,
.list-group, .list-group-item,
.table-responsive, .dataTables_wrapper,
.select2-container .select2-selection,
.select2-dropdown,
.tw-dw-btn {
  border-color: transparent !important;
}

/* Clear leftover debug/decorative outlines on wrappers */
body, header, footer, aside, section, div, nav, main, article {
  outline-color: transparent !important;
}

/* ── Exceptions: table tint borders (hashed chrome) ── */
table.table.infobms-table-border,
table.dataTable.infobms-table-border,
.dataTables_scroll.infobms-table-border {
  border-color: var(--infobms-table-tint, #6366F1) !important;
}

/* ── Exceptions: keep readable table cell grid ── */
table.table > thead > tr > th,
table.table > tbody > tr > th,
table.table > tfoot > tr > th,
table.table > thead > tr > td,
table.table > tbody > tr > td,
table.table > tfoot > tr > td,
table.dataTable > thead > tr > th,
table.dataTable > tbody > tr > td,
.table > thead > tr > th,
.table > tbody > tr > td {
  border-color: var(--border-color, #dee2e6) !important;
}

body.dark-mode table.table > thead > tr > th,
body.dark-mode table.table > tbody > tr > td,
body.dark-mode table.dataTable > thead > tr > th,
body.dark-mode table.dataTable > tbody > tr > td,
body.dark-mode .table > thead > tr > th,
body.dark-mode .table > tbody > tr > td {
  border-color: var(--border-color, #3d4460) !important;
}

/* ── Exceptions: focus / pagination rings stay visible ── */
:focus-visible,
.page-link:focus,
.pagination > li > a:focus,
.paginate_button:focus,
.dataTables_paginate .paginate_button:focus,
.dataTables_paginate .paginate_button > a:focus {
  outline-color: var(--pos-paginate-active-bg, var(--btn-primary-bg, #3b82f6)) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button,
.dataTables_paginate .paginate_button,
.page-link,
.pagination > li > a,
.pagination > li > span {
  border-color: var(--pos-paginate-border, var(--border-color, #dee2e6)) !important;
}

body.dark-mode .dataTables_wrapper .dataTables_paginate .paginate_button,
body.dark-mode .dataTables_paginate .paginate_button,
body.dark-mode .page-link,
body.dark-mode .pagination > li > a,
body.dark-mode .pagination > li > span {
  border-color: var(--pos-paginate-border, var(--border-color, #3d4460)) !important;
}

.page-item.active .page-link,
.pagination > .active > a,
.pagination > .active > span,
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.active,
.paginate_button.current,
.paginate_button.active {
  border-color: var(--pos-paginate-active-bg, var(--btn-primary-bg, #3b82f6)) !important;
}
