/**
 * Sneat V2 — Phase 0 final overrides (wins over vendor / AdminLTE / Tailwind legacy)
 * Load last when body.bb-theme-v2. Revert: BB_THEME_V2=false
 */

/* ——— Neutralize AdminLTE layout offsets ——— */
body.bb-theme-v2 .content-wrapper,
body.bb-theme-v2 .main-footer,
body.bb-theme-v2 .right-side {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html[dir="rtl"] body.bb-theme-v2 .content-wrapper,
html[dir="rtl"] body.bb-theme-v2 .main-footer {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

body.bb-theme-v2 .wrapper,
body.bb-theme-v2 .thetop {
  overflow-x: hidden;
}

/* ——— Remove legacy skin tinting ——— */
body.bb-theme-v2[class*="skin-"] .box.box-primary,
body.bb-theme-v2[class*="skin-"] .box.box-success,
body.bb-theme-v2[class*="skin-"] .box.box-warning,
body.bb-theme-v2[class*="skin-"] .box.box-danger,
body.bb-theme-v2[class*="skin-"] .box.box-info {
  border-top-color: var(--bb-v2-border) !important;
}

body.bb-theme-v2 .box.box-primary > .box-header,
body.bb-theme-v2 .box.box-success > .box-header,
body.bb-theme-v2 .box.box-warning > .box-header,
body.bb-theme-v2 .box.box-danger > .box-header {
  background: #f8f8fb !important;
  color: var(--bb-v2-text-strong) !important;
}

/* ——— Kill legacy gradient / pill buttons (Sneat solid) ——— */
body.bb-theme-v2 .tw-bg-gradient-to-r,
body.bb-theme-v2 .tw-bg-gradient-to-l,
body.bb-theme-v2 .tw-bg-gradient-to-b,
body.bb-theme-v2 [class*="tw-from-"],
body.bb-theme-v2 [class*="tw-to-"] {
  background-image: none !important;
}

body.bb-theme-v2 a.tw-dw-btn.tw-rounded-full,
body.bb-theme-v2 .tw-dw-btn.tw-rounded-full {
  border-radius: var(--bb-v2-radius) !important;
}

body.bb-theme-v2 a.tw-dw-btn[class*="tw-from-"],
body.bb-theme-v2 a.tw-dw-btn[class*="tw-bg-gradient"] {
  background: var(--bb-v2-primary) !important;
  border: 1px solid var(--bb-v2-primary) !important;
  color: #fff !important;
  font-weight: 600 !important;
  box-shadow: 0 2px 6px rgba(105, 108, 255, 0.3) !important;
}

body.bb-theme-v2 a.tw-dw-btn[class*="tw-from-"]:hover {
  background: var(--bb-v2-primary-strong) !important;
  border-color: var(--bb-v2-primary-strong) !important;
}

/* ——— Typography cleanup ——— */
body.bb-theme-v2 .tw-text-black,
body.bb-theme-v2 .box-title.tw-text-black,
body.bb-theme-v2 h1.tw-text-black {
  color: var(--bb-v2-text-strong) !important;
}

body.bb-theme-v2 .tw-text-gray-700,
body.bb-theme-v2 .tw-text-gray-600 {
  color: var(--bb-v2-muted) !important;
}

/* ——— Form labels in filters / content ——— */
body.bb-theme-v2 section.content label,
body.bb-theme-v2 .bb-v2-filter-card label {
  font-weight: 500;
  color: var(--bb-v2-text-strong);
  font-size: 0.875rem;
}

/* ——— Select2 in filter cards ——— */
body.bb-theme-v2 .bb-v2-filter-card .select2-container {
  width: 100% !important;
  max-width: 100%;
}

/* ——— Modals & dropdowns above tables ——— */
body.bb-theme-v2 .modal-backdrop {
  background: rgba(47, 51, 73, 0.5);
}

body.bb-theme-v2 .dropdown-menu > .active > a,
body.bb-theme-v2 .dropdown-menu > .active > a:hover {
  background: var(--bb-v2-primary-soft) !important;
  color: var(--bb-v2-primary-strong) !important;
}

/* ——— DataTables sorting: kill vendor pseudo-icons (تتداخل مع RTL) ——— */
body.bb-theme-v2 table.dataTable thead > tr > th.sorting::before,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting::after,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting_asc::before,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting_asc::after,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting_desc::before,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting_desc::after {
  content: none !important;
  display: none !important;
}

body.bb-theme-v2 table.dataTable thead > tr > th.sorting,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting_asc,
body.bb-theme-v2 table.dataTable thead > tr > th.sorting_desc {
  background-image: none !important;
}

/* ——— DataTables: override vendor blue links ——— */
body.bb-theme-v2 table.dataTable a {
  color: var(--bb-v2-primary);
  font-weight: 500;
}

body.bb-theme-v2 table.dataTable a:hover {
  color: var(--bb-v2-primary-strong);
}

body.bb-theme-v2 .dataTables_wrapper .dataTables_paginate .paginate_button {
  color: var(--bb-v2-text) !important;
}

body.bb-theme-v2 .dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
  color: var(--bb-v2-muted) !important;
}

/* ——— POS / lockscreen: do not apply ——— */
body.bb-theme-v2.lockscreen .content-wrapper {
  margin: 0 !important;
}

/* ——— Sneat: DateRangePicker (bb-sneat-drp) ——— */
body.bb-theme-v2 .daterangepicker.bb-sneat-drp {
  border: 1px solid var(--bb-v2-border) !important;
  border-radius: var(--bb-v2-radius-lg) !important;
  background: var(--bb-v2-surface) !important;
  box-shadow: 0 0.25rem 1rem rgba(47, 43, 61, 0.14) !important;
  padding: 0.65rem !important;
  color: var(--bb-v2-text) !important;
  font-family: inherit;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp:before,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp:after,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp.drop-up:before,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp.drop-up:after {
  display: none !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-calendar {
  max-width: none;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .calendar-table {
  border: 0 !important;
  background: transparent !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .calendar-table th,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp .calendar-table td {
  min-width: 2rem;
  height: 2rem;
  line-height: 2rem;
  border-radius: var(--bb-v2-radius);
  border: 0 !important;
  font-size: 0.8125rem;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .calendar-table thead th {
  color: var(--bb-v2-muted);
  font-weight: 600;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp td.available:hover,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp th.available:hover {
  background: var(--bb-v2-primary-soft) !important;
  color: var(--bb-v2-primary) !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp td.in-range {
  background: var(--bb-v2-primary-soft) !important;
  color: var(--bb-v2-text-strong) !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp td.active,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp td.active:hover {
  background: var(--bb-v2-primary) !important;
  color: #fff !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp td.off,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp td.off.in-range {
  color: var(--bb-v2-muted) !important;
  opacity: 0.55;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .ranges {
  border-inline-end: 1px solid var(--bb-v2-border);
  padding-inline-end: 0.65rem;
  margin-inline-end: 0.65rem;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .ranges ul {
  width: 100%;
  min-width: 9.5rem;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .ranges li {
  font-size: 0.8125rem;
  font-weight: 500;
  padding: 0.5rem 0.75rem;
  border-radius: var(--bb-v2-radius);
  color: var(--bb-v2-text);
  margin-bottom: 0.2rem;
  transition: background 0.15s ease, color 0.15s ease;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .ranges li:hover {
  background: var(--bb-v2-primary-soft) !important;
  color: var(--bb-v2-primary) !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .ranges li.active {
  background: var(--bb-v2-primary) !important;
  color: #fff !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-buttons {
  border-top: 1px solid var(--bb-v2-border) !important;
  padding: 0.65rem 0.35rem 0.15rem !important;
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-selected {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--bb-v2-muted);
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-buttons .btn {
  min-height: 2.125rem;
  padding: 0.35rem 0.85rem !important;
  border-radius: var(--bb-v2-radius) !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  border: 1px solid var(--bb-v2-border) !important;
  background: var(--bb-v2-surface) !important;
  color: var(--bb-v2-text) !important;
  box-shadow: none !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-buttons .btn.applyBtn,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-buttons .btn.btn-primary {
  background: var(--bb-v2-primary) !important;
  border-color: var(--bb-v2-primary) !important;
  color: #fff !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .drp-buttons .btn.cancelBtn {
  background: #f8f8fb !important;
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp select.monthselect,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp select.yearselect {
  min-height: 2rem;
  padding: 0.2rem 0.45rem;
  border: 1px solid var(--bb-v2-border);
  border-radius: var(--bb-v2-radius);
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--bb-v2-text-strong);
  background: var(--bb-v2-surface);
}

body.bb-theme-v2 .daterangepicker.bb-sneat-drp .calendar-table .next span,
body.bb-theme-v2 .daterangepicker.bb-sneat-drp .calendar-table .prev span {
  border-color: var(--bb-v2-primary);
}

@media (max-width: 767.98px) {
  body.bb-theme-v2 .daterangepicker.bb-sneat-drp.show-ranges .drp-calendar.left {
    border-inline-end: 0 !important;
    border-bottom: 1px solid var(--bb-v2-border);
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
  }

  body.bb-theme-v2 .daterangepicker.bb-sneat-drp .ranges {
    border-inline-end: 0;
    margin-inline-end: 0;
    padding-inline-end: 0;
    margin-bottom: 0.5rem;
  }
}

/* ——— Print ——— */
@media print {
  body.bb-theme-v2 .bb-v2-table-card,
  body.bb-theme-v2 section.content .box {
    box-shadow: none !important;
    border: 1px solid #ccc !important;
  }
}
