/* BB_BUILD: design_2026 tables global light-blue v1
   Unified Sneat V2 DataTables / bb-sn-table styling (excludes POS). */

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) {
  --bb-tbl-blue: #03c3ec;
  --bb-tbl-blue-deep: #0ea5e9;
  --bb-tbl-blue-text: #0369a1;
  --bb-tbl-blue-accent: #0284c7;
  --bb-tbl-blue-border: rgba(3, 195, 236, 0.22);
  --bb-tbl-blue-border-strong: rgba(3, 195, 236, 0.38);
  --bb-tbl-blue-hover: rgba(3, 195, 236, 0.12);
  --bb-tbl-blue-zebra: rgba(3, 195, 236, 0.045);
}

/* —— Table shell wrappers —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card__table-wrap,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--bb-tbl-blue-border) !important;
  border-radius: var(--bb-v2-radius-lg, 0.75rem) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  background: #fff;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card:has(.bb-sn-data-card__table-wrap),
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card:has(table.bb-sn-table),
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card:has(table.dataTable) {
  border-color: var(--bb-tbl-blue-border-strong) !important;
  box-shadow: 0 10px 28px rgba(3, 195, 236, 0.1) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card:has(table) .bb-sn-data-card__header {
  border-bottom-color: rgba(3, 195, 236, 0.18) !important;
  background: linear-gradient(148deg, rgba(3, 195, 236, 0.2) 0%, rgba(125, 211, 252, 0.1) 42%, rgba(255, 255, 255, 0.98) 100%) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card:has(table) .bb-sn-data-card__icon {
  background: rgba(3, 195, 236, 0.18) !important;
  color: var(--bb-tbl-blue) !important;
}

/* —— DataTables toolbar —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-dt-toolbar {
  padding: 0.75rem 0.9rem !important;
  background: linear-gradient(145deg, rgba(3, 195, 236, 0.14) 0%, rgba(255, 255, 255, 0.96) 100%) !important;
  border: 1px solid rgba(3, 195, 236, 0.24) !important;
  border-radius: var(--bb-v2-radius-lg, 0.75rem) !important;
  box-shadow: 0 2px 12px rgba(3, 195, 236, 0.08);
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-dt-toolbar .dataTables_filter input {
  border-color: rgba(3, 195, 236, 0.32) !important;
  background: rgba(255, 255, 255, 0.92) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-dt-toolbar .dataTables_filter input:focus {
  border-color: var(--bb-tbl-blue) !important;
  box-shadow: 0 0 0 0.2rem rgba(3, 195, 236, 0.18) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-dt-toolbar .dataTables_length select {
  border-color: rgba(3, 195, 236, 0.32) !important;
  background: rgba(255, 255, 255, 0.92) !important;
}

/* —— Pill tabs (reports / tabbed tables) —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-tabs--pill-scroll {
  padding: 0.35rem;
  border-radius: var(--bb-v2-radius-lg, 0.75rem);
  background: rgba(3, 195, 236, 0.07);
  border: 1px solid rgba(3, 195, 236, 0.14);
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-tabs--pill-scroll .bb-sn-tabs__list > li.active > a {
  color: var(--bb-tbl-blue-accent) !important;
  background: linear-gradient(145deg, rgba(3, 195, 236, 0.22) 0%, rgba(255, 255, 255, 0.98) 100%) !important;
  border-color: rgba(3, 195, 236, 0.42) !important;
  box-shadow: 0 4px 14px rgba(3, 195, 236, 0.14) !important;
}

/* —— Core tables —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-page > .table,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-page .bb-sn-data-card .table,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-v2-page-content .bb-sn-data-card .table {
  border-collapse: separate !important;
  border-spacing: 0;
  border-color: var(--bb-tbl-blue-border) !important;
}

/* —— Header —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table thead th,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table thead th,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable thead th,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-page > .table thead th,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card .table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 0.72rem 0.85rem !important;
  background: linear-gradient(180deg, rgba(3, 195, 236, 0.22) 0%, rgba(125, 211, 252, 0.1) 100%) !important;
  color: var(--bb-tbl-blue-text) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em;
  border-color: rgba(3, 195, 236, 0.14) !important;
  border-bottom: 2px solid rgba(3, 195, 236, 0.34) !important;
  vertical-align: middle;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable thead .sorting_asc,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable thead .sorting_desc {
  color: var(--bb-tbl-blue-accent) !important;
  background: linear-gradient(180deg, rgba(3, 195, 236, 0.28) 0%, rgba(125, 211, 252, 0.12) 100%) !important;
}

/* —— Body —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table tbody td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table tbody td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable tbody td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-page > .table tbody td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-data-card .table tbody td {
  padding: 0.65rem 0.85rem !important;
  border-color: rgba(3, 195, 236, 0.1) !important;
  font-size: 0.8125rem;
  color: var(--bb-v2-text-strong, #32475c);
  vertical-align: middle !important;
  transition: background 0.14s ease, border-color 0.14s ease, box-shadow 0.14s ease;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table tbody tr:nth-child(even) td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table tbody tr:nth-child(even) td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable tbody tr:nth-child(even) td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.table-striped tbody tr:nth-child(even) td {
  background: var(--bb-tbl-blue-zebra) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table tbody tr:hover td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table tbody tr:hover td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable tbody tr:hover td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.table-hover tbody tr:hover td {
  background: var(--bb-tbl-blue-hover) !important;
  border-top-color: rgba(3, 195, 236, 0.18) !important;
  border-bottom-color: rgba(3, 195, 236, 0.18) !important;
  border-inline-start-color: transparent !important;
  border-inline-end-color: transparent !important;
  box-shadow: inset 4px 0 0 rgba(3, 195, 236, 0.55);
}

html[dir='rtl'] body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table tbody tr:hover td,
html[dir='rtl'] body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table tbody tr:hover td,
html[dir='rtl'] body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable tbody tr:hover td,
html[dir='rtl'] body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.table-hover tbody tr:hover td {
  box-shadow: inset -4px 0 0 rgba(3, 195, 236, 0.55);
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table td.text-end,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table td.text-end,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable td.text-end,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table th.text-end,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table th.text-end,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable th.text-end {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

/* —— Footer / totals —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table tfoot td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table tfoot td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable tfoot td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .bb-sn-table-footer td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) tr.bb-sn-table__foot td,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) tr.footer-total td {
  padding: 0.75rem 0.85rem !important;
  background: linear-gradient(180deg, rgba(3, 195, 236, 0.2) 0%, rgba(125, 211, 252, 0.08) 100%) !important;
  color: var(--bb-tbl-blue-text) !important;
  font-weight: 700 !important;
  border-top: 2px solid rgba(3, 195, 236, 0.38) !important;
  border-color: rgba(3, 195, 236, 0.14) !important;
}

/* —— Pagination + processing —— */
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .dataTables_wrapper .dataTables_paginate .paginate_button {
  border-radius: 999px !important;
  border-color: rgba(3, 195, 236, 0.26) !important;
  background: rgba(255, 255, 255, 0.95) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .dataTables_wrapper .dataTables_paginate .paginate_button.current,
body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: linear-gradient(135deg, #03c3ec 0%, #0ea5e9 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(3, 195, 236, 0.32);
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: rgba(3, 195, 236, 0.12) !important;
  border-color: rgba(3, 195, 236, 0.38) !important;
  color: var(--bb-tbl-blue-accent) !important;
}

body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) .dataTables_processing {
  border-radius: var(--bb-v2-radius-lg, 0.75rem);
  border: 1px solid rgba(3, 195, 236, 0.26);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 24px rgba(3, 195, 236, 0.14);
  color: var(--bb-tbl-blue-accent);
  font-weight: 600;
}

@media (max-width: 767.98px) {
  body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-table thead th,
  body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.bb-sn-dt-table thead th,
  body.bb-theme-v2:not(.bb-v2-mod-pos):not(.bb-v2-mod-customer-display) table.dataTable thead th {
    position: static;
  }
}

@media print {
  body.bb-theme-v2 table.bb-sn-table thead th,
  body.bb-theme-v2 table.dataTable thead th,
  body.bb-theme-v2 table.bb-sn-table tfoot td,
  body.bb-theme-v2 table.dataTable tfoot td {
    background: #f3f3f3 !important;
    color: #000 !important;
    box-shadow: none !important;
  }

  body.bb-theme-v2 table.bb-sn-table tbody tr:hover td,
  body.bb-theme-v2 table.dataTable tbody tr:hover td {
    background: transparent !important;
    box-shadow: none !important;
  }
}
