/* Twenty v2.38.1: these full-page reports use the tab's vertical scrollbar.
 * Native dashboards otherwise fix every grid item to its saved rowSpan.
 *
 * Match only a single-item grid containing our explicit report marker. The
 * sibling grid overlay's cell-* attributes exist only in dashboard edit mode;
 * excluding that overlay leaves native drag/resize geometry untouched.
 * These selectors deliberately avoid generated Linaria class names.
 */
.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"])) {
  --widget-height: auto;
  --widget-card-content-overflow: visible;
  --widget-scroll-overflow: visible;
}

.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"])) > .react-grid-layout {
  height: auto !important;
}

.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"]))
  > .react-grid-layout > .react-grid-item {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: 100% !important;
  height: auto !important;
  transform: none !important;
}

/* The dashboard page already supplies the report title and its Edit action.
 * Remove only this report's redundant card chrome while viewing. */
.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"]))
  > .react-grid-layout > .react-grid-item > .widget {
  --widget-card-padding-inline: 0px;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}

.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"]))
  > .react-grid-layout > .react-grid-item > .widget > .widget-card-header {
  display: none;
}

/* WidgetCardContent still receives hasHeader=true, so clear its header gap.
 * Its direct child is FrontComponentWidgetRenderer's content frame in the
 * pinned host; keep the report's own table borders and cards inside it. */
.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"]))
  > .react-grid-layout > .react-grid-item > .widget > :not(.widget-card-header) {
  margin-top: 0;
  padding: 0;
}

.page-layout-scroll-wrapper div:has(
  > .react-grid-layout > .react-grid-item:only-child
  :is([data-soma-report="scorecard"], [data-soma-report="daily"], [data-soma-report="channel"], [data-soma-report="cohort"])
):not(:has(> div > [data-selectable-id^="cell-"]))
  > .react-grid-layout > .react-grid-item > .widget
  > :not(.widget-card-header) > div {
  border: 0;
  border-radius: 0;
}

/* Freeze Date, Owner and Client across desktop Lead Ledger table views.
   Native width variables preserve alignment during resize. Keep the built-in
   mobile layout below 768px, where the full pinned strip would fill the screen. */
@media (min-width: 768px) {
/* The native width variables follow column resizing and view changes. */
[id^="record-table-policySales-"] :is(.record-table-column-drag-and-drop,.record-table-column-checkbox,.record-table-column-field-0,.record-table-column-field-1,.record-table-column-field-2) {
  position: sticky !important;
  z-index: 8;
}
[id^="record-table-policySales-"] .record-table-column-drag-and-drop { left: 0; }
[id^="record-table-policySales-"] .record-table-column-checkbox { left: var(--record-table-drag-drop-width); }
[id^="record-table-policySales-"] .record-table-column-field-0 { left: calc(var(--record-table-drag-drop-width) + var(--record-table-checkbox-width)); }
[id^="record-table-policySales-"] .record-table-column-field-1 { left: calc(var(--record-table-drag-drop-width) + var(--record-table-checkbox-width) + var(--record-table-column-field-0)); }
[id^="record-table-policySales-"] .record-table-column-field-2 {
  left: calc(var(--record-table-drag-drop-width) + var(--record-table-checkbox-width) + var(--record-table-column-field-0) + var(--record-table-column-field-1));
  box-shadow: 2px 0 0 var(--t-border-color-medium);
}
[id^="record-table-policySales-"] .header-cell:is(.record-table-column-drag-and-drop,.record-table-column-checkbox,.record-table-column-field-0,.record-table-column-field-1,.record-table-column-field-2) { z-index: 14; }

/* Sortable headers need their wrapper pinned, not just its bounded child. */
[id^="record-table-policySales-"] div:has(> .header-cell.record-table-column-field-1) {
  position: sticky !important;
  left: calc(var(--record-table-drag-drop-width) + var(--record-table-checkbox-width) + var(--record-table-column-field-0));
  z-index: 14;
}
[id^="record-table-policySales-"] div:has(> .header-cell.record-table-column-field-2) {
  position: sticky !important;
  left: calc(var(--record-table-drag-drop-width) + var(--record-table-checkbox-width) + var(--record-table-column-field-0) + var(--record-table-column-field-1));
  z-index: 14;
}
[id^="record-table-policySales-"] .header-cell:is(.record-table-column-field-1,.record-table-column-field-2) { left: 0; right: auto; }
[id^="record-table-policySales-"] .footer-cell:is(.record-table-column-field-0,.record-table-column-field-1,.record-table-column-field-2) { z-index: 9; }
[id^="record-table-policySales-"] :is(.record-table-column-field-0,.record-table-column-field-1,.record-table-column-field-2):focus-within { z-index: 30; }
[id^="record-table-policySales-"] [data-record-table-col]:not([data-record-table-col="0"],[data-record-table-col="1"],[data-record-table-col="2"]) {
  scroll-margin-left: calc(var(--record-table-drag-drop-width) + var(--record-table-checkbox-width) + var(--record-table-column-field-0) + var(--record-table-column-field-1) + var(--record-table-column-field-2));
}

[id^="record-table-policySales-"] :is([data-record-table-col="0"],[data-record-table-col="1"],[data-record-table-col="2"]) { scroll-margin-left: 0 !important; }

}
