:root{
  --vg-font-sans: Inter, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --vg-surface: #ffffff;
  --vg-surface-soft: #fbfbfd;
  --vg-border-soft: rgba(148,163,184,.24);
  --vg-shadow-soft: 0 8px 24px rgba(15,23,42,.06);
}
body{font-family:var(--vg-font-sans);}
.panel-card,.kpi-card,.header-card,.sidebar-theme-card,.sidebar-user-box,.table-card{box-shadow:var(--vg-shadow-soft);}
.section-title,.header-title,.kpi-label,.gm-combo-title{letter-spacing:.01em;}
.btn-panel,.btn-theme-toggle,.amount-toggle-btn{font-weight:600;}
.table-top-scrollbar{background:#eef2f7;border:1px solid var(--vg-border-soft);border-radius:999px;height:14px;margin:0 0 10px;overflow-x:auto;overflow-y:hidden;}
.table-top-scrollbar-inner{height:1px;}
.table-top-scrollbar::-webkit-scrollbar{height:12px;}
.table-top-scrollbar::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:999px;}
.dt-container .dt-buttons .btn{margin-right:.35rem;}
.dt-container .dt-search input{border-radius:10px;border:1px solid rgba(148,163,184,.35);padding:.4rem .65rem;}
.dt-scroll-body thead th{position:sticky;top:0;z-index:20;background:#f8fafc !important;}
.dt-scroll-head thead th{background:#f8fafc !important;}

/* GM/Home sales KPI card spacing stabilization */
.home-summary-gm .gm-kpi-combo-card,
.gm-kpi-combo-row .gm-kpi-combo-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
  height: 100% !important;
  min-height: 0 !important;
}

.home-summary-gm .gm-combo-title,
.gm-kpi-combo-row .gm-combo-title {
  display: flex !important;
  align-items: flex-start !important;
  line-height: 1.18 !important;
  min-height: 2.45rem !important;
  margin-bottom: .5rem !important;
}

.home-summary-gm .gm-combo-metric-group,
.gm-kpi-combo-row .gm-combo-metric-group {
  margin-top: 0 !important;
  gap: .5rem !important;
  align-content: start !important;
}

.home-summary-gm .gm-combo-metric-item,
.gm-kpi-combo-row .gm-combo-metric-item {
  min-width: 0;
}

.home-summary-gm .gm-combo-metric-item .kpi-label,
.gm-kpi-combo-row .gm-combo-metric-item .kpi-label {
  margin-bottom: .12rem !important;
}

.home-summary-gm .gm-combo-metric-item .kpi-value,
.gm-kpi-combo-row .gm-combo-metric-item .kpi-value {
  line-height: 1.04 !important;
  margin: 0 0 .08rem !important;
}

.home-summary-gm .gm-combo-metric-item .trend-split,
.gm-kpi-combo-row .gm-combo-metric-item .trend-split,
.home-summary-gm .gm-combo-percent,
.gm-kpi-combo-row .gm-combo-percent {
  white-space: normal;
}

.home-summary-gm > .row > [class*="col-"],
.gm-kpi-combo-row > [class*="col-"] {
  display: flex;
}

@media (max-width: 1399.98px) {
  .home-summary-gm .gm-combo-title,
  .gm-kpi-combo-row .gm-combo-title {
    min-height: 2.7rem !important;
  }
}

@media (max-width: 1199.98px) {
  .home-summary-gm .gm-combo-title,
  .gm-kpi-combo-row .gm-combo-title {
    min-height: auto !important;
  }
}

/* 2026-04-25 Full project UI improvement pack */
:root{
  --vg-radius: 18px;
  --vg-radius-sm: 12px;
  --vg-ring: rgba(212,175,55,.28);
  --vg-head-bg: linear-gradient(180deg,#fffaf0,#f8fafc);
}
.panel-card,.table-card,.filter-card,.chart-card{
  border-radius: var(--vg-radius) !important;
  border:1px solid rgba(212,175,55,.18) !important;
}
.filter-grid,.advanced-filter-grid,.gm-filter-grid,.home-filter-grid{
  gap: .75rem !important;
  align-items:end !important;
}
.form-label,.filter-label{font-size:.78rem!important;font-weight:700!important;color:#7a5a16!important;margin-bottom:.25rem!important;}
.form-select,.form-control,.multi-select-trigger{
  min-height:36px!important;border-radius:10px!important;border-color:rgba(148,163,184,.32)!important;
  box-shadow:none!important;background-color:#fff!important;
}
.form-select:focus,.form-control:focus,.multi-select-trigger:focus{border-color:var(--gold)!important;box-shadow:0 0 0 .18rem var(--vg-ring)!important;}
.report-toolbar,.gm-report-toolbar,.table-toolbar{
  position:sticky;top:0;z-index:35;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);
  border:1px solid rgba(212,175,55,.18);border-radius:14px;padding:.55rem .65rem;margin-bottom:.7rem;
}
.report-toolbar-controls,.gm-report-toolbar-right{width:100%;display:flex!important;align-items:center!important;gap:.5rem!important;flex-wrap:wrap!important;}
.report-buttons-host,.dt-buttons,#gmReportButtonsHost{display:flex!important;gap:.35rem!important;flex-wrap:wrap!important;align-items:center!important;}
.dt-buttons .btn,.dt-buttons button{border-radius:10px!important;font-size:.78rem!important;padding:.35rem .55rem!important;}
.table-responsive,.report-table-shell,.gm-report-table-wrap{border-radius:14px!important;border:1px solid rgba(148,163,184,.20);background:#fff;}
.custom-table,.gm-report-table{font-size:.82rem!important;border-collapse:separate!important;border-spacing:0!important;}
.custom-table th,.custom-table td,.gm-report-table th,.gm-report-table td{padding:.44rem .55rem!important;vertical-align:middle!important;white-space:nowrap!important;}
.dt-scroll-head thead th,.custom-table thead th,.gm-report-table thead th{
  background:var(--vg-head-bg)!important;color:#111827!important;font-weight:800!important;border-bottom:1px solid rgba(148,163,184,.35)!important;
  box-shadow:inset 0 -1px 0 rgba(212,175,55,.20);position:sticky!important;top:0!important;z-index:30!important;
}
.report-total-head-row th{
  background:#fff8df!important;color:#111827!important;font-weight:800!important;position:sticky!important;z-index:31!important;
}
.report-total-head-row-final th{top:42px!important;}
.report-total-head-row-generic th{top:84px!important;}
.report-total-head-row-branded th{top:126px!important;}
#inventoryReportSectionBody #reportTable thead tr.report-total-head-row th.footer-label-cell{text-align:left!important;}
#inventoryReportSectionBody #reportTable thead tr.report-total-head-row th:not(.footer-label-cell){text-align:right!important;}
.sticky-col{position:sticky!important;z-index:20!important;box-shadow:2px 0 0 rgba(148,163,184,.15)!important;}
thead .sticky-col,.dt-scroll-head .sticky-col{z-index:45!important;}
.report-total-head-row .sticky-col{z-index:46!important;}
tbody .sticky-col{background:#fffdf9!important;}
.table-highlight{background:#fffdf9!important;}
.table-card:fullscreen,.panel-card:fullscreen,.gm-report-fullscreen:fullscreen,.inventory-report-fullscreen:fullscreen{
  background:#fff!important;padding:16px!important;overflow:auto!important;width:100vw!important;height:100vh!important;
}
.table-card:fullscreen .dt-scroll-body,.panel-card:fullscreen .dt-scroll-body{max-height:calc(100vh - 185px)!important;height:calc(100vh - 185px)!important;}
.table-card:fullscreen .report-toolbar,.panel-card:fullscreen .gm-report-toolbar{top:0!important;margin-bottom:.5rem!important;}
.table-card:fullscreen .custom-table,.panel-card:fullscreen .gm-report-table{font-size:.78rem!important;}
.table-card:fullscreen .custom-table th,.table-card:fullscreen .custom-table td,.panel-card:fullscreen .gm-report-table th,.panel-card:fullscreen .gm-report-table td{padding:.34rem .42rem!important;}
.dt-scroll-body{scrollbar-color:#9ca3af #eef2f7;}
.dt-scroll-body::-webkit-scrollbar,.table-responsive::-webkit-scrollbar{height:12px;width:12px;}
.dt-scroll-body::-webkit-scrollbar-thumb,.table-responsive::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:999px;}
.dt-scroll-body::-webkit-scrollbar-track,.table-responsive::-webkit-scrollbar-track{background:#eef2f7;}
@media (max-width:991.98px){
  .report-toolbar-controls,.gm-report-toolbar-right{align-items:stretch!important;}
  .report-toolbar-controls>.btn,.gm-report-toolbar-right>.btn,.dt-buttons .btn{flex:1 1 auto;}
  .custom-category-paging{width:100%;justify-content:stretch!important;display:grid!important;grid-template-columns:repeat(3,1fr);}
  .custom-page-btn{width:100%;}
}
@media (max-width:575.98px){
  .panel-card,.table-card{border-radius:14px!important;padding:.75rem!important;}
  .custom-table,.gm-report-table{font-size:.74rem!important;}
  }

/* Excel-like column filter / sort controls */
.vg-filterable-th{position:relative!important;padding-left:10px!important;padding-right:38px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:150px;text-align:left!important;}
.vg-filterable-th:first-child{min-width:190px;text-align:left!important;}
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.vg-filterable-th.inventory-always-hidden{min-width:0!important;padding:0!important;}
.dt-scroll-head th.vg-filterable-th,.dataTables_scrollHead th.vg-filterable-th,.gm-report-table th.vg-filterable-th{text-align:left!important;justify-content:flex-start!important;}
.dt-scroll-head th.vg-filterable-th .dt-column-title,.dataTables_scrollHead th.vg-filterable-th .dt-column-title{display:inline-block!important;text-align:left!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle!important;}
#inventoryReportSectionBody #reportTable.dataTable.custom-table > thead > tr:first-child > th.vg-filterable-th:not(.inventory-header-left):not(.sticky-col-1) .dt-column-title{
  text-align:right!important;white-space:nowrap!important;
}
.vg-excel-filter{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;z-index:10;background:#fffdf6;border-radius:7px;}
.vg-excel-filter-btn{width:19px;height:19px;border:1px solid rgba(143,106,18,.35);border-radius:6px;background:#fffdf6;color:#8f6a12;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;box-shadow:0 1px 4px rgba(143,106,18,.08);cursor:pointer;}
.vg-excel-filter-btn i{pointer-events:none;}
.dt-scroll-body thead .vg-excel-filter,.report-total-head-row .vg-excel-filter{display:none!important;}
.vg-excel-filter-btn:hover,.vg-excel-filter.is-open .vg-excel-filter-btn{background:#f0c64f;color:#111827;border-color:#8f6a12;}
.vg-excel-filter.is-filtered .vg-excel-filter-btn{background:#e8f0ff;color:#0b5ed7;border-color:#6ea8fe;}
.vg-excel-filter-menu{display:none;position:fixed;background:#fff;border:1px solid #eadfca;border-radius:12px;box-shadow:0 18px 45px rgba(17,24,39,.18);z-index:2147483000;padding:7px;color:#111827;text-align:left;font-size:11.5px;font-weight:500;overflow:hidden;}
.vg-excel-filter-menu.show{display:block;}
.vg-excel-filter-title{font-weight:800;color:#8f6a12;margin:1px 2px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vg-filter-sort-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.vg-filter-action{width:100%;border:1px solid #eadfca;background:#fff;border-radius:9px;padding:6px;text-align:left;font-weight:700;color:#374151;display:flex;align-items:center;gap:5px;justify-content:center;}
.vg-filter-action:hover{background:#fff8e6;color:#8f6a12;}
.vg-filter-divider{height:1px;background:#efe6d2;margin:7px 0;}
.vg-filter-search{width:100%;border:1px solid #eadfca;border-radius:10px;padding:7px 8px;outline:none;margin-bottom:6px;}
.vg-filter-search:focus{border-color:#d4af37;box-shadow:0 0 0 3px rgba(212,175,55,.16);}
.vg-filter-select-row{display:flex;gap:6px;margin-bottom:8px;}
.vg-filter-select-row button,.vg-filter-clear,.vg-filter-apply{border:1px solid #eadfca;background:#fffdf6;border-radius:9px;padding:6px 9px;font-weight:700;color:#374151;}
.vg-filter-select-row button:hover,.vg-filter-clear:hover{background:#fff8e6;color:#8f6a12;}
.vg-filter-values{max-height:105px;overflow:auto;border:1px solid #f0e7d6;border-radius:10px;padding:4px;background:#fffefa;}
.vg-filter-value{display:flex;gap:7px;align-items:center;padding:4px 6px;border-radius:8px;cursor:pointer;white-space:normal;color:#1f2937;}
.vg-filter-value:hover{background:#fff8e6;}
.vg-filter-value input{accent-color:#d4af37;flex:0 0 auto;}
.vg-filter-value span{overflow:hidden;text-overflow:ellipsis;}
.vg-filter-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:6px;position:sticky;bottom:0;background:#fff;padding-top:5px;}
.vg-filter-apply{background:linear-gradient(135deg,#8f6a12,#d4af37);color:#111827;border-color:#d4af37;}
.vg-filter-apply:hover{filter:brightness(.98);}
.dt-scroll-head{overflow:hidden!important;}


.common-filter-toggle {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    min-height: 38px;
    padding: .45rem .9rem;
    border: 1px solid rgba(164, 126, 37, .28);
    border-radius: 999px;
    background: #fffdf7;
    color: #6f5207;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(164, 126, 37, .08);
    cursor: pointer;
    user-select: none;
}
.common-filter-toggle input {
    width: 16px;
    height: 16px;
    accent-color: #a47e25;
}
.common-filter-toggle:has(input:checked) {
    background: linear-gradient(135deg, #fff7d8, #fffdf7);
    border-color: rgba(164, 126, 37, .55);
    color: #0a4f7a;
}

.common-filter-status {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: .25rem .75rem;
    border-radius: 999px;
    background: #eef9f5;
    color: #047857;
    font-weight: 700;
    font-size: .85rem;
    border: 1px solid rgba(4, 120, 87, .18);
}
.common-filter-locked {
    opacity: .62;
}
.common-filter-locked .multi-select-dropdown,
.common-filter-locked select {
    pointer-events: none;
}
.common-filter-locked .form-label::after {
    content: "  (Common)";
    color: #047857;
    font-weight: 700;
    font-size: .78rem;
}

/* Shipping Order Status summary table update */
.shipping-summary-total-row td {
    font-weight: 800;
    background: #f8fafc;
}
.shipping-summary-total-row:first-child td {
    background: #fff7ed;
}
.shipping-summary-customer-row:hover td {
    background: #fff7e6;
}
.shipping-customer-link {
    border: 0;
    background: transparent;
    padding: 0;
    color: #0f3b73;
    font-weight: 800;
    text-decoration: underline;
    cursor: pointer;
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.shipping-customer-link:hover {
    color: #9a5b00;
}
.shipping-summary-filters .form-select {
    min-width: 128px;
}

/* Shipping Order Status final alignment and standard table controls */
.shipping-status-table-area {
    padding: 12px 14px 14px;
    border: 1px solid #dfe8f3;
    border-radius: 16px;
    background: #fff;
}
.shipping-status-table-shell {
    max-height: 430px;
    overflow: auto;
    border: 1px solid #e3e8ef;
    border-radius: 12px;
}
#shippingStatusTable thead th {
    position: sticky;
    top: 0;
    z-index: 6;
}
#shippingStatusTable tbody tr:nth-child(1) td {
    position: sticky;
    top: 36px;
    z-index: 5;
    background: #fff7e6 !important;
    box-shadow: inset 0 -1px 0 #e4d7bd;
}
#shippingStatusTable tbody tr:nth-child(2) td {
    position: sticky;
    top: 72px;
    z-index: 5;
    background: #f8fafc !important;
    box-shadow: inset 0 -1px 0 #dbe3ee;
}
#shippingStatusTable tbody tr:nth-child(3) td {
    position: sticky;
    top: 108px;
    z-index: 5;
    background: #f8fafc !important;
    box-shadow: inset 0 -1px 0 #dbe3ee;
}
#shippingStatusTable th:first-child,
#shippingStatusTable td:first-child {
    overflow: hidden;
    text-overflow: ellipsis;
    position: sticky;
    left: 0;
}
#shippingStatusTable tbody tr.shipping-summary-customer-row td:first-child {
    z-index: 5;
    background: #fff;
    box-shadow: 2px 0 0 rgba(148,163,184,.16);
}
#shippingStatusTable thead th:first-child {
    z-index: 9;
    box-shadow: 2px 0 0 rgba(148,163,184,.16);
}
#shippingStatusTable tbody tr.shipping-summary-total-row td:first-child {
    z-index: 8;
    box-shadow: 2px 0 0 rgba(148,163,184,.16);
}
.shipping-th-filter {
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 800;
    padding: 0;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
}
.shipping-th-filter i {
    font-size: 11px;
    color: #9a6a10;
    opacity: .75;
}
.shipping-th-filter.active i,
.shipping-th-filter:hover i {
    opacity: 1;
    color: #0d6efd;
}

#shippingStatusTable th:not(:last-child),
#shippingStatusTable td:not(:last-child) {
  border-right: 1px solid rgba(148, 163, 184, .28) !important;
}

.shipping-status-card[data-shipping-card="All"] {
    border-color: #d8b86a;
    background: linear-gradient(180deg, #fffdf6 0%, #fff8e4 100%);
}

.shipping-info-bar {
    width: 100%;
    flex: 0 0 auto;
    align-self: stretch;
    display: none;
}
.shipping-info-bar.is-visible {
    display: block;
}
.shipping-date-range-summary {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0.65rem 0.95rem;
    border-radius: 10px;
    background: linear-gradient(180deg, #fffdf6 0%, #fff8e8 100%);
    border: 1px solid rgba(212, 175, 55, 0.28);
    font-size: 0.86rem;
    color: #6f5f48;
    line-height: 1.5;
    box-sizing: border-box;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    word-break: normal;
}
.shipping-date-range-summary.is-visible {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}
.shipping-date-range-summary .shipping-info-icon {
    flex: 0 0 auto;
    color: #8f6a12;
    font-size: 1rem;
    line-height: 1;
}
.shipping-date-range-summary .shipping-info-text {
    flex: 1 1 auto;
    min-width: 0;
}
.shipping-date-range-summary strong {
    color: #805b12;
}
.shipping-status-toolbar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 12px;
}
.shipping-filter-bar {
    display: flex;
    align-items: flex-end;
    flex-wrap: nowrap;
    gap: 10px 12px;
    padding: 12px 14px;
    border: 1px solid #e4ebf4;
    border-radius: 12px;
    background: linear-gradient(180deg, #fbfcfe 0%, #f6f9fc 100%);
    overflow-x: auto;
}
.shipping-summary-filters,
.shipping-date-filters {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}
.shipping-filter-divider {
    width: 1px;
    height: 34px;
    align-self: flex-end;
    margin: 0 2px;
    background: #d8e2ee;
    flex: 0 0 1px;
}
.shipping-orders-excel-btn {
    white-space: nowrap;
    align-self: flex-end;
}
.shipping-filter-item {
    width: 132px;
    flex: 0 0 132px;
    min-width: 0;
}
.shipping-filter-item .form-label {
    font-size: 11px;
    font-weight: 800;
    color: #805b12;
    margin-bottom: 4px !important;
    white-space: nowrap;
}
.shipping-filter-item .form-select,
.shipping-filter-item .form-control {
    width: 100% !important;
    min-width: 0 !important;
    height: 34px;
    border-radius: 10px;
    font-size: 12px;
}
.shipping-filter-item--date {
    width: 148px;
    flex: 0 0 148px;
}
.shipping-search-box {
    flex: 0 0 200px;
    width: 200px;
    max-width: 100%;
}
.shipping-search-box .form-label {
    font-size: 11px;
    font-weight: 800;
    color: #805b12;
    margin-bottom: 4px !important;
}
.shipping-search-box .form-control {
    height: 34px;
    border-radius: 10px;
    font-size: 12px;
}
.shipping-actions-bar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: nowrap;
    padding: 10px 14px;
    border: 1px solid #e4ebf4;
    border-radius: 12px;
    background: #fff;
}
.shipping-view-paging {
    margin-left: 0;
    flex: 0 0 auto;
}
.shipping-export-toolbar {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    flex: 0 0 auto;
}
.shipping-actions-bar .shipping-search-box,
.shipping-search-box--inline {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    margin-left: auto;
}
.shipping-actions-bar .shipping-search-box .form-label,
.shipping-search-box--inline .form-label {
    margin-bottom: 0 !important;
    white-space: nowrap;
    flex: 0 0 auto;
}
.shipping-actions-bar .shipping-search-box .form-control,
.shipping-search-box--inline .form-control {
    width: 190px !important;
    min-width: 160px;
    flex: 0 0 190px;
}
@media (max-width: 1100px) {
    .shipping-actions-bar,
    .shipping-filter-bar {
        flex-wrap: wrap;
    }
    .shipping-filter-divider {
        display: none;
    }
    .shipping-actions-bar .shipping-search-box,
    .shipping-search-box--inline {
        flex: 1 1 100%;
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }
    .shipping-actions-bar .shipping-search-box .form-control,
    .shipping-search-box--inline .form-control {
        flex: 1 1 auto;
        width: auto !important;
        min-width: 0;
    }
    .shipping-date-range-summary {
        white-space: normal;
    }
}
@media (max-width: 768px) {
    .shipping-filter-item,
    .shipping-filter-item--date {
        flex: 1 1 calc(50% - 10px);
        width: auto;
    }
}

/* Customer Type filter alignment - Sales Order Dashboard */
.salesorder-filter-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(180px, 1fr)) !important;
    gap: 1rem !important;
    align-items: end !important;
}
.salesorder-filter-grid .filter-box { min-width: 0 !important; width: 100% !important; }
.salesorder-filter-grid .dashboard-reset-filter-box { grid-column: auto !important; }
.multi-select-panel-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .75rem !important;
    width: 100% !important;
}
.multi-select-panel-actions .multi-select-check {
    display: inline-flex !important;
    align-items: center !important;
    gap: .4rem !important;
    margin: 0 !important;
    min-width: 0 !important;
}
.multi-select-panel-actions .multi-select-clear { margin-left: auto !important; padding: 0 !important; }
@media (max-width: 1199.98px) { .salesorder-filter-grid { grid-template-columns: repeat(2, minmax(180px, 1fr)) !important; } }
@media (max-width: 575.98px) { .salesorder-filter-grid { grid-template-columns: 1fr !important; } }

/* Inventory report — DataTables scrollX/scrollY with sticky Customer column */
#inventoryReportSectionBody .dt-scroll {
  width: 100%;
}
#inventoryReportSectionBody .dt-scroll-body {
  max-height: 52vh !important;
}
.table-card:fullscreen #inventoryReportSectionBody .dt-scroll-body,
.panel-card:fullscreen #inventoryReportSectionBody .dt-scroll-body {
  max-height: calc(100vh - 185px) !important;
}
#inventoryReportSectionBody .table-top-scrollbar {
  display: none !important;
}
#inventoryReportSectionBody #reportTable thead tr.report-total-head-row th.footer-label-cell {
  text-align: left !important;
}
#inventoryReportSectionBody #reportTable thead tr.report-total-head-row th:not(.footer-label-cell) {
  text-align: right !important;
}
#inventoryReportSectionBody #reportTable.dataTable.custom-table > thead > tr:first-child > th.vg-filterable-th:not(.inventory-header-left):not(.sticky-col-1) .dt-column-title {
  text-align: right !important;
  white-space: nowrap !important;
}
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.vg-filterable-th:not(.sticky-col-1):not(.inventory-header-left) {
  text-align: right !important;
  padding-right: 26px !important;
}
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.sticky-col-1,
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.inventory-header-left,
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.sticky-col-1.vg-filterable-th,
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.inventory-header-left.vg-filterable-th {
  position: sticky !important;
  left: 0 !important;
  text-align: left !important;
  z-index: 46 !important;
}
#inventoryReportSectionBody #reportTable th.sticky-col-1,
#inventoryReportSectionBody #reportTable td.sticky-col-1,
#inventoryReportSectionBody #reportTable th.footer-label-cell {
  min-width: 200px !important;
  width: 200px !important;
  max-width: 200px !important;
}
#inventoryReportSectionBody #reportTable th.inventory-total-inv-col,
#inventoryReportSectionBody #reportTable td.inventory-total-inv-col {
  min-width: 130px !important;
  width: 130px !important;
  max-width: 130px !important;
  padding-right: .3rem !important;
}
#inventoryReportSectionBody #reportTable thead .js-footer-amount,
#inventoryReportSectionBody #reportTable tbody .js-amount {
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  text-align: right !important;
}
#inventoryReportSectionBody #reportTable .customer-drill-link {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-align: left !important;
}
#inventoryReportSectionBody .dt-scroll-body .sticky-col-1,
#inventoryReportSectionBody .dt-scroll-head .sticky-col-1,
#inventoryReportSectionBody .dt-scroll-head .footer-label-cell {
  position: sticky !important;
  left: 0 !important;
  z-index: 46 !important;
}
#inventoryReportSectionBody .dt-scroll-head .report-total-head-row .sticky-col-1,
#inventoryReportSectionBody .dt-scroll-head .report-total-head-row .footer-label-cell {
  z-index: 47 !important;
}

/* Keep the inventory header/totals and customer rows visually in one table.
   Sticky column positions and the existing freeze logic are intentionally unchanged. */
#inventoryReportSectionBody .dt-scroll-head,
#inventoryReportSectionBody .dt-scroll-body,
#inventoryReportSectionBody .dataTables_scrollHead,
#inventoryReportSectionBody .dataTables_scrollBody {
  border-radius: 0 !important;
}

#inventoryReportSectionBody .dt-scroll-body,
#inventoryReportSectionBody .dataTables_scrollBody {
  border: 0 !important;
  border-top: 0 !important;
  scrollbar-gutter: stable !important;
}

#inventoryReportSectionBody .dt-scroll-head,
#inventoryReportSectionBody .dataTables_scrollHead {
  border-bottom: 0 !important;
}

/* Distinguish the upper summary block from the customer-detail rows. */
#inventoryReportSectionBody #reportTable thead tr.report-total-head-row th,
#inventoryReportSectionBody .dt-scroll-head tr.report-total-head-row th,
#inventoryReportSectionBody .dataTables_scrollHead tr.report-total-head-row th {
  background: #fff3cd !important;
}

#inventoryReportSectionBody #reportTable thead tr.report-total-head-row-final th,
#inventoryReportSectionBody .dt-scroll-head tr.report-total-head-row-final th,
#inventoryReportSectionBody .dataTables_scrollHead tr.report-total-head-row-final th {
  background: #f9e7ad !important;
}

/* Inventory numeric headings and values share the same right-hand alignment. */
#inventoryReportSectionBody #reportTable thead > tr:first-child > th:not(.inventory-always-hidden):not(.inventory-header-left):not(.sticky-col-1),
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th:not(.inventory-always-hidden):not(.inventory-header-left):not(.sticky-col-1),
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th:not(.inventory-always-hidden):not(.inventory-header-left):not(.sticky-col-1) {
  text-align: right !important;
}

#inventoryReportSectionBody #reportTable thead > tr:first-child > th:not(.inventory-always-hidden):not(.inventory-header-left):not(.sticky-col-1) .dt-column-title,
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th:not(.inventory-always-hidden):not(.inventory-header-left):not(.sticky-col-1) .dt-column-title,
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th:not(.inventory-always-hidden):not(.inventory-header-left):not(.sticky-col-1) .dt-column-title {
  display: block !important;
  width: 100% !important;
  padding-right: 22px !important;
  text-align: right !important;
}

#inventoryReportSectionBody #reportTable tbody td:not(.inventory-always-hidden):not(.sticky-col-1) {
  text-align: right !important;
}

/* Restore the table's horizontal scrollbar while retaining vertical scrolling. */
#inventoryReportSectionBody .dt-scroll-body,
#inventoryReportSectionBody .dataTables_scrollBody {
  overflow-x: auto !important;
  overflow-y: auto !important;
}

/* Compact inventory rows and columns without changing sticky/frozen behavior. */
#inventoryReportSectionBody #reportTable th,
#inventoryReportSectionBody #reportTable td,
#inventoryReportSectionBody .dt-scroll-head th,
#inventoryReportSectionBody .dataTables_scrollHead th {
  padding-top: .34rem !important;
  padding-bottom: .34rem !important;
  padding-left: .3rem !important;
  padding-right: .3rem !important;
  line-height: 1.2 !important;
}

#inventoryReportSectionBody #reportTable thead > tr:first-child > th:not(.inventory-always-hidden):not(.sticky-col-1),
#inventoryReportSectionBody #reportTable tbody td:not(.inventory-always-hidden):not(.sticky-col-1),
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th:not(.inventory-always-hidden):not(.sticky-col-1),
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th:not(.inventory-always-hidden):not(.sticky-col-1) {
  min-width: 130px !important;
  width: 130px !important;
}

#inventoryReportSectionBody #reportTable .badge-soft {
  padding: .22rem .48rem !important;
}

#inventoryReportSectionBody #reportTable .customer-drill-link {
  line-height: 1.2 !important;
}

/* DataTables keeps a hidden sizing header inside the scroll body.
   Do not let the visible-header padding create an empty band above row one. */
#inventoryReportSectionBody .dt-scroll-body #reportTable thead th,
#inventoryReportSectionBody .dataTables_scrollBody #reportTable thead th {
  height: 0 !important;
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  line-height: 0 !important;
}

/* The top header label sorts the column; the funnel remains filter-only. */
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th.vg-filterable-th,
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th.vg-filterable-th {
  cursor: pointer !important;
}

.inventory-group-toggle {
  display: inline-flex;
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 12;
  width: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  border: 1px solid rgba(143,106,18,.35);
  border-radius: 6px;
  background: #fffdf6;
  color: #8f6a12;
  font-size: 11px;
  line-height: 1;
  cursor: pointer;
}

#inventoryReportSectionBody #reportTable thead > tr:first-child > th:has(.inventory-group-toggle),
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th:has(.inventory-group-toggle),
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th:has(.inventory-group-toggle) {
  padding-left: 34px !important;
  text-align: right !important;
}

#inventoryReportSectionBody #reportTable thead > tr:first-child > th:has(.inventory-group-toggle) .dt-column-title,
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th:has(.inventory-group-toggle) .dt-column-title,
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th:has(.inventory-group-toggle) .dt-column-title {
  text-align: right !important;
}

/* Keep the title, sort indicator and filter control in one compact header line. */
#inventoryReportSectionBody #reportTable thead > tr:first-child > th.vg-filterable-th .dt-column-title,
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th.vg-filterable-th .dt-column-title,
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th.vg-filterable-th .dt-column-title {
  box-sizing: border-box !important;
  width: 100% !important;
  padding-right: 45px !important;
  margin: 0 !important;
}

#inventoryReportSectionBody #reportTable thead > tr:first-child > th.vg-filterable-th .dt-column-order,
#inventoryReportSectionBody .dt-scroll-head thead > tr:first-child > th.vg-filterable-th .dt-column-order,
#inventoryReportSectionBody .dataTables_scrollHead thead > tr:first-child > th.vg-filterable-th .dt-column-order {
  position: absolute !important;
  right: 29px !important;
  top: 50% !important;
  width: 12px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
}

/* Vertical separators between inventory columns. */
#inventoryReportSectionBody #reportTable th:not(:last-child),
#inventoryReportSectionBody #reportTable td:not(:last-child) {
  border-right: 1px solid rgba(148, 163, 184, .28) !important;
}

/* One unified scroll area for the Sales/GM header, totals and customer rows. */
#gmReportSectionBody .gm-report-table-wrap {
  max-height: 52vh !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

#gmReportSectionBody .gm-report-table-wrap > .dt-container,
#gmReportSectionBody #gmReportTable {
  width: 100% !important;
}

.gm-report-fullscreen:fullscreen #gmReportSectionBody .gm-report-table-wrap,
.gm-report-fullscreen:-webkit-full-screen #gmReportSectionBody .gm-report-table-wrap {
  max-height: calc(100vh - 185px) !important;
}

/* Inventory-style color separation for the upper Sales/GM totals. */
#gmReportTable thead tr.report-total-head-row-final th {
  background: #f9e7ad !important;
}

#gmReportTable thead tr.report-total-head-row-generic th,
#gmReportTable thead tr.report-total-head-row-branded th {
  background: #fff3cd !important;
}

/* Compact Sales/GM columns; long header labels may wrap to two lines. */
#gmReportSectionBody #gmReportTable th:nth-child(2),
#gmReportSectionBody #gmReportTable td:nth-child(2) {
  min-width: 160px !important;
  width: 160px !important;
  max-width: 160px !important;
}

#gmReportSectionBody #gmReportTable th:nth-child(3),
#gmReportSectionBody #gmReportTable td:nth-child(3) {
  min-width: 60px !important;
  width: 60px !important;
  max-width: 60px !important;
}

#gmReportSectionBody #gmReportTable th:nth-child(n+4),
#gmReportSectionBody #gmReportTable td:nth-child(n+4) {
  min-width: 130px !important;
  width: 130px !important;
  max-width: 130px !important;
}

#gmReportSectionBody #gmReportTable {
  table-layout: fixed !important;
  width: max-content !important;
  min-width: max-content !important;
}

#gmReportSectionBody #gmReportTable colgroup col {
  width: 130px !important;
  inline-size: 130px !important;
  min-width: 130px !important;
  max-width: 130px !important;
}

#gmReportSectionBody #gmReportTable colgroup col[data-dt-column="1"] {
  width: 160px !important;
  inline-size: 160px !important;
  min-width: 160px !important;
  max-width: 160px !important;
}

#gmReportSectionBody #gmReportTable colgroup col[data-dt-column="2"] {
  width: 60px !important;
  inline-size: 60px !important;
  min-width: 60px !important;
  max-width: 60px !important;
}

#gmReportSectionBody #gmReportTable thead tr:first-child th:nth-child(3) {
  padding-left: .2rem !important;
  padding-right: 1.45rem !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

#gmReportSectionBody #gmReportTable thead tr:first-child th:nth-child(3) .dt-column-order {
  display: none !important;
}

#gmReportSectionBody #gmReportTable .coop-rule-header {
  display: inline-block !important;
  white-space: nowrap !important;
  line-height: 1.05 !important;
  text-align: right !important;
}

#gmReportSectionBody #gmReportTable thead > tr:first-child > th:has(.gm-year-group-toggle),
#gmReportSectionBody #gmReportTable thead > tr:first-child > th:has(.gm-month-group-toggle) {
  padding-left: 34px !important;
  text-align: right !important;
}

#gmReportSectionBody #gmReportTable thead > tr:first-child > th:has(.gm-year-group-toggle) .dt-column-title,
#gmReportSectionBody #gmReportTable thead > tr:first-child > th:has(.gm-month-group-toggle) .dt-column-title {
  text-align: right !important;
}

#gmReportSectionBody #gmReportTable colgroup col[data-dt-column="0"] {
  display: none !important;
  width: 0 !important;
  inline-size: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
}

#gmReportSectionBody #gmReportTable .sticky-col-1 {
  left: 0 !important;
}

#gmReportSectionBody #gmReportTable .sticky-col-2 {
  left: 160px !important;
}

#gmReportSectionBody #gmReportTable thead tr:first-child th {
  height: 48px !important;
  padding: .3rem 1.8rem .3rem .4rem !important;
  line-height: 1.15 !important;
  vertical-align: middle !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

#gmReportSectionBody #gmReportTable thead tr:first-child th .dt-column-title {
  display: block !important;
  max-height: 2.3em !important;
  line-height: 1.15 !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

#gmReportSectionBody #gmReportTable thead tr:first-child th:not(.sticky-col-1),
#gmReportSectionBody #gmReportTable thead tr:first-child th:not(.sticky-col-1) .dt-column-title {
  text-align: right !important;
}

#gmReportSectionBody #gmReportTable thead tr:first-child th.sticky-col-1,
#gmReportSectionBody #gmReportTable thead tr:first-child th.sticky-col-1 .dt-column-title {
  text-align: left !important;
}

#gmReportSectionBody #gmReportTable tbody td,
#gmReportSectionBody #gmReportTable thead tr.report-total-head-row th {
  padding-left: .4rem !important;
  padding-right: .4rem !important;
  white-space: nowrap !important;
}

#gmReportSectionBody #gmReportTable th:not(:last-child),
#gmReportSectionBody #gmReportTable td:not(:last-child) {
  border-right: 1px solid rgba(148, 163, 184, .3) !important;
}

/* Keep horizontally scrolling headers behind the frozen Customer/CoOpRule
   headers. The opaque overlay also prevents long labels showing through. */
#gmReportSectionBody #gmReportTable thead > tr:first-child > th.sticky-col {
  z-index: 1000 !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background: #fff8ec !important;
  background-clip: padding-box !important;
}

#gmReportSectionBody #gmReportTable thead > tr:first-child > th.sticky-col::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #fff8ec;
  pointer-events: none;
}

#gmReportSectionBody #gmReportTable thead > tr:first-child > th.sticky-col > *:not(.vg-excel-filter):not(.dt-column-order) {
  position: relative;
  z-index: 2;
}

#gmReportSectionBody #gmReportTable thead > tr:first-child > th.sticky-col > .vg-excel-filter {
  z-index: 4 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row > th.sticky-col {
  z-index: 999 !important;
  overflow: hidden !important;
  background-clip: padding-box !important;
}

/* Freeze the GM header and all three summary rows as one four-row block.
   These scoped offsets override the older 42px global header assumption. */
#gmReportSectionBody #gmReportTable thead > tr:first-child > th {
  position: sticky !important;
  top: 0 !important;
  z-index: 104 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row-final > th {
  position: sticky !important;
  top: 48px !important;
  z-index: 103 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row-generic > th {
  position: sticky !important;
  top: 90px !important;
  z-index: 102 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row-branded > th {
  position: sticky !important;
  top: 132px !important;
  z-index: 101 !important;
}

#gmReportSectionBody #gmReportTable thead > tr:first-child > th.sticky-col {
  z-index: 1004 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row-final > th.sticky-col {
  z-index: 1003 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row-generic > th.sticky-col {
  z-index: 1002 !important;
}

#gmReportSectionBody #gmReportTable thead > tr.report-total-head-row-branded > th.sticky-col {
  z-index: 1001 !important;
}

.inventory-group-toggle:hover,
.inventory-group-toggle.is-expanded {
  background: #f0c64f;
  color: #111827;
}

/* Dashboard filter panels start minimized but retain their existing controls. */
.filter-panel-card.dashboard-filter-collapsed > :not(.panel-head) {
  display: none !important;
}

.filter-panel-card .dashboard-filter-toggle-actions {
  margin-left: auto;
  flex: 0 0 auto;
}

.filter-panel-card .dashboard-filter-toggle,
.home-filter-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .4rem !important;
  width: auto !important;
  min-width: 108px !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

.filter-panel-card .dashboard-filter-toggle i,
.filter-panel-card .dashboard-filter-toggle span,
.home-filter-toggle i {
  position: static !important;
  display: inline-block !important;
  margin: 0 !important;
  transform: none !important;
}

/* Sales Order aging summary total-row hierarchy. */
#shippingStatusTable tbody tr.shipping-summary-total-final > td {
  background: #f9e7ad !important;
}

#shippingStatusTable tbody tr.shipping-summary-total-generic > td {
  background: #fff3cd !important;
}

#shippingStatusTable tbody tr.shipping-summary-total-branded > td {
  background: #fff0c2 !important;
}

#shippingStatusTable tbody tr.shipping-summary-total-row > td {
  color: #111827 !important;
  font-weight: 800 !important;
}

/* Customer Details > Sales Order uses the same unified grouped-table behavior. */
#soC_inventoryReportSectionBody {
  max-height: 52vh !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

#soC_inventoryReportSectionBody #soC_reportTable {
  min-width: 720px !important;
  width: 100% !important;
}

#soC_inventoryReportSectionBody[data-expanded-group-count="1"] #soC_reportTable {
  min-width: 1050px !important;
}

#soC_inventoryReportSectionBody[data-expanded-group-count="2"] #soC_reportTable {
  min-width: 1450px !important;
}

#soC_reportTable thead > tr:first-child > th:has([data-soc-column-group]) {
  padding-left: 34px !important;
  text-align: right !important;
}

#soC_reportTable thead tr.report-total-head-row-final > th {
  background: #f9e7ad !important;
}

#soC_reportTable thead tr.report-total-head-row-generic > th {
  background: #fff3cd !important;
}

#soC_reportTable thead tr.report-total-head-row-branded > th {
  background: #fff0c2 !important;
}

#soC_inventoryReportSectionBody #soC_reportTable th:not(:last-child),
#soC_inventoryReportSectionBody #soC_reportTable td:not(:last-child) {
  border-right: 1px solid rgba(148, 163, 184, .32) !important;
}

#soC_inventoryReportSectionBody #soC_reportTable thead > tr:first-child > th:not(.sticky-col-1),
#soC_inventoryReportSectionBody #soC_reportTable thead > tr:first-child > th:not(.sticky-col-1) .dt-column-title {
  text-align: right !important;
  justify-content: flex-end !important;
}

#soC_inventoryReportSectionBody #soC_reportTable thead > tr:first-child > th.sticky-col-1,
#soC_inventoryReportSectionBody #soC_reportTable thead > tr:first-child > th.sticky-col-1 .dt-column-title {
  text-align: left !important;
  justify-content: flex-start !important;
}

#soC_inventoryReportSectionBody #soC_reportTable thead > tr:first-child > th.vg-filterable-th {
  padding-right: 2rem !important;
}

#soC_inventoryReportSectionBody #soC_reportTable thead > tr:first-child > th:has([data-soc-column-group]) {
  padding-left: 34px !important;
  padding-right: 2rem !important;
}

/* Use one scrollable inventory table so headers, totals and detail values
   always share the same physical column grid. */
#inventoryReportSectionBody {
  max-height: 52vh !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

.table-card:fullscreen #inventoryReportSectionBody,
.panel-card:fullscreen #inventoryReportSectionBody {
  max-height: calc(100vh - 185px) !important;
}

#inventoryReportSectionBody > .dt-container,
#inventoryReportSectionBody > .dt-container > #reportTable,
#inventoryReportSectionBody #reportTable {
  width: 100% !important;
}

#inventoryReportSectionBody[data-expanded-group-count="1"] #reportTable {
  min-width: 980px !important;
}

#inventoryReportSectionBody[data-expanded-group-count="2"] #reportTable {
  min-width: 1360px !important;
}

/* Keep grouped total headers directly above the matching body values. */
#inventoryReportSectionBody .dt-scroll-head table,
#inventoryReportSectionBody .dataTables_scrollHead table,
#inventoryReportSectionBody .dt-scroll-body #reportTable,
#inventoryReportSectionBody .dataTables_scrollBody #reportTable {
  width: 100% !important;
  table-layout: fixed !important;
}

#inventoryReportSectionBody .dt-scroll-head,
#inventoryReportSectionBody .dataTables_scrollHead,
#inventoryReportSectionBody .dt-scroll-headInner,
#inventoryReportSectionBody .dt-scroll-head-inner,
#inventoryReportSectionBody .dataTables_scrollHeadInner {
  width: 100% !important;
  min-width: 100% !important;
}

#inventoryReportSectionBody[data-expanded-group-count="1"] .dt-scroll-head table,
#inventoryReportSectionBody[data-expanded-group-count="1"] .dataTables_scrollHead table,
#inventoryReportSectionBody[data-expanded-group-count="1"] .dt-scroll-body #reportTable,
#inventoryReportSectionBody[data-expanded-group-count="1"] .dataTables_scrollBody #reportTable {
  min-width: 980px !important;
}

#inventoryReportSectionBody[data-expanded-group-count="2"] .dt-scroll-head table,
#inventoryReportSectionBody[data-expanded-group-count="2"] .dataTables_scrollHead table,
#inventoryReportSectionBody[data-expanded-group-count="2"] .dt-scroll-body #reportTable,
#inventoryReportSectionBody[data-expanded-group-count="2"] .dataTables_scrollBody #reportTable {
  min-width: 1360px !important;
}

.sales-order-dashboard-embedded {
  width: 100%;
  min-width: 0;
}

.sales-order-dashboard-frame {
  display: block;
  width: 100%;
  height: 760px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 18px;
  background: #fffdf9;
  overflow: hidden;
}

/* Customer Details: keep both scroll directions on every primary data table.
   The embedded Sales Order page uses #inventoryReportSectionBody as well. */
body:has(#sales-order-summary-embedded) #inventoryReportSectionBody,
body:has(#sales-order-summary-embedded) #gmReportSectionBody .gm-report-table-wrap,
.sales-order-embedded-page #inventoryReportSectionBody {
  overflow-x: scroll !important;
  overflow-y: scroll !important;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}

body:has(#sales-order-summary-embedded) #inventoryReportSectionBody::-webkit-scrollbar,
body:has(#sales-order-summary-embedded) #gmReportSectionBody .gm-report-table-wrap::-webkit-scrollbar,
.sales-order-embedded-page #inventoryReportSectionBody::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}

body:has(#sales-order-summary-embedded) #inventoryReportSectionBody::-webkit-scrollbar-thumb,
body:has(#sales-order-summary-embedded) #gmReportSectionBody .gm-report-table-wrap::-webkit-scrollbar-thumb,
.sales-order-embedded-page #inventoryReportSectionBody::-webkit-scrollbar-thumb {
  background: #9ca3af;
  border: 2px solid #eef2f7;
  border-radius: 999px;
}

body:has(#sales-order-summary-embedded) #inventoryReportSectionBody::-webkit-scrollbar-track,
body:has(#sales-order-summary-embedded) #gmReportSectionBody .gm-report-table-wrap::-webkit-scrollbar-track,
.sales-order-embedded-page #inventoryReportSectionBody::-webkit-scrollbar-track {
  background: #eef2f7;
}

/* Actual Customer Details scrolling nodes (including DataTables-generated
   wrappers and popup/detail tables). Keep both bars available at all times. */
.customer-details-page .table-responsive,
.customer-details-page .report-table-shell,
.customer-details-page .gm-report-table-wrap,
.customer-details-page .dt-scroll-body,
.customer-details-page .dataTables_scrollBody,
.sales-order-embedded-page .table-responsive,
.sales-order-embedded-page .report-table-shell,
.sales-order-embedded-page .dt-scroll-body,
.sales-order-embedded-page .dataTables_scrollBody {
  overflow-x: scroll !important;
  overflow-y: scroll !important;
  scrollbar-gutter: stable both-edges;
  scrollbar-width: thin;
  scrollbar-color: #c79a21 #fff8e8;
  overscroll-behavior: contain;
}

.customer-details-page .table-responsive::-webkit-scrollbar,
.customer-details-page .report-table-shell::-webkit-scrollbar,
.customer-details-page .gm-report-table-wrap::-webkit-scrollbar,
.customer-details-page .dt-scroll-body::-webkit-scrollbar,
.customer-details-page .dataTables_scrollBody::-webkit-scrollbar,
.sales-order-embedded-page .table-responsive::-webkit-scrollbar,
.sales-order-embedded-page .report-table-shell::-webkit-scrollbar,
.sales-order-embedded-page .dt-scroll-body::-webkit-scrollbar,
.sales-order-embedded-page .dataTables_scrollBody::-webkit-scrollbar {
  width: 7px !important;
  height: 7px !important;
}

.customer-details-page .table-responsive::-webkit-scrollbar-thumb,
.customer-details-page .report-table-shell::-webkit-scrollbar-thumb,
.customer-details-page .gm-report-table-wrap::-webkit-scrollbar-thumb,
.customer-details-page .dt-scroll-body::-webkit-scrollbar-thumb,
.customer-details-page .dataTables_scrollBody::-webkit-scrollbar-thumb,
.sales-order-embedded-page .table-responsive::-webkit-scrollbar-thumb,
.sales-order-embedded-page .report-table-shell::-webkit-scrollbar-thumb,
.sales-order-embedded-page .dt-scroll-body::-webkit-scrollbar-thumb,
.sales-order-embedded-page .dataTables_scrollBody::-webkit-scrollbar-thumb {
  background: #c79a21 !important;
  border: 1px solid #fff8e8;
  border-radius: 999px;
}

.customer-details-page .table-responsive::-webkit-scrollbar-track,
.customer-details-page .report-table-shell::-webkit-scrollbar-track,
.customer-details-page .gm-report-table-wrap::-webkit-scrollbar-track,
.customer-details-page .dt-scroll-body::-webkit-scrollbar-track,
.customer-details-page .dataTables_scrollBody::-webkit-scrollbar-track,
.sales-order-embedded-page .table-responsive::-webkit-scrollbar-track,
.sales-order-embedded-page .report-table-shell::-webkit-scrollbar-track,
.sales-order-embedded-page .dt-scroll-body::-webkit-scrollbar-track,
.sales-order-embedded-page .dataTables_scrollBody::-webkit-scrollbar-track {
  background: #fff8e8 !important;
}

/* Compact scrollbars for every dashboard data table. */
.table-responsive,
.report-table-shell,
.gm-report-table-wrap,
.dt-scroll-body,
.dataTables_scrollBody,
.shipping-status-table-shell,
.table-top-scrollbar {
  scrollbar-width: thin;
}

.table-responsive::-webkit-scrollbar,
.report-table-shell::-webkit-scrollbar,
.gm-report-table-wrap::-webkit-scrollbar,
.dt-scroll-body::-webkit-scrollbar,
.dataTables_scrollBody::-webkit-scrollbar,
.shipping-status-table-shell::-webkit-scrollbar,
.table-top-scrollbar::-webkit-scrollbar {
  width: 7px !important;
  height: 7px !important;
}

.table-responsive::-webkit-scrollbar-thumb,
.report-table-shell::-webkit-scrollbar-thumb,
.gm-report-table-wrap::-webkit-scrollbar-thumb,
.dt-scroll-body::-webkit-scrollbar-thumb,
.dataTables_scrollBody::-webkit-scrollbar-thumb,
.shipping-status-table-shell::-webkit-scrollbar-thumb,
.table-top-scrollbar::-webkit-scrollbar-thumb {
  border-width: 1px !important;
}

/* Sales Order default viewport: header + three frozen totals + nine data rows. */
.sales-order-report #inventoryReportSectionBody {
  height: 562px !important;
  max-height: 562px !important;
  overflow-y: scroll !important;
}

.sales-order-report:fullscreen #inventoryReportSectionBody,
.sales-order-report:-webkit-full-screen #inventoryReportSectionBody {
  height: calc(100vh - 185px) !important;
  max-height: calc(100vh - 185px) !important;
}
