/* Fixed live layers do not receive per-scroll translateY corrections. Their
 * structural slots/cells stay in flow, so data and scroll ranges do not jump. */
@media screen {
  .table-freeze-slot { display: flow-root; min-width: 0; overflow-anchor: none; }
  .table-freeze-summary,
  .table-freeze-tools,
  thead.table-freeze-head {
    position: relative;
    transform: none;
  }
  .table-freeze-summary {
    display: flow-root;
    z-index: 24;
    background: var(--canvas, #f5f7f8);
  }
  .table-freeze-tools {
    display: flow-root;
    z-index: 23;
    background: var(--surface, #fff);
  }
  thead.table-freeze-head {
    top: auto;
    z-index: 22;
    background: #edf4ef;
  }
  thead.table-freeze-head th { top: auto; background-color: #edf4ef; }
  .table-freeze-summary.table-freeze-pinned,
  .table-freeze-tools.table-freeze-pinned {
    position: fixed;
    top: var(--table-freeze-top);
    left: var(--table-freeze-x);
    width: var(--table-freeze-width);
    margin: 0;
  }
  .table-freeze-cell, .table-freeze-cell-content { display: contents; }
  .table-freeze-pinned .table-freeze-cell {
    display: flex;
    align-items: center;
    position: fixed;
    z-index: 22;
    top: var(--table-freeze-top);
    left: var(--table-freeze-x);
    width: var(--table-freeze-width);
    height: var(--table-freeze-height);
    box-sizing: border-box;
    padding: inherit;
    border: inherit;
    background: inherit;
    box-shadow: 0 2px 0 #dce7df;
  }
  .table-freeze-pinned .table-freeze-cell-content { display: block; width: 100%; min-width: 0; }
  .table-freeze-tools.table-freeze-pinned { box-shadow: 0 1px 0 var(--border); }
  .table-freeze-bounded { overflow: auto; scrollbar-width: thin; overscroll-behavior: contain; }
  .table-freeze-bounded:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
}
@media screen and (max-width: 1100px) {
  .ad-grid-table thead.table-freeze-head { position: absolute; transform: none; }
}
/* Printing/export keeps the ordinary continuous table, with repeated headers. */
@media print {
  .table-freeze-summary, .table-freeze-tools, thead.table-freeze-head {
    transform: none !important;
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
    box-shadow: none !important;
  }
  .table-freeze-slot { height: auto !important; }
  .table-freeze-cell, .table-freeze-cell-content { display: contents !important; }
}
