/* V17.7.4.177 — Reports SBS-165 edge-line correction.
   Body-only native scrollbar + approved #304659 table-edge finish. */
body.v17-reports-constrained #view-reports #reportOutput .reports-table-panel.sbs165-reports-scroll-layout{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  min-height:0!important;
  padding:0!important;
  border:1px solid #304659!important;
  border-radius:8px!important;
  background:var(--v17-panel,#102535)!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165{
  flex:0 0 auto;
  width:100%;
  overflow:hidden;
  background:#f6f8fa;
  position:relative;
  z-index:50;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-table-sbs165,
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165 > table.data-table{
  width:100%!important;
  min-width:880px!important;
  table-layout:fixed!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  margin:0!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-table-sbs165 thead,
body.v17-reports-constrained #view-reports #reportOutput .reports-header-table-sbs165 thead tr,
body.v17-reports-constrained #view-reports #reportOutput .reports-header-table-sbs165 thead th{
  position:static!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-table-sbs165 thead th{
  padding:10px 12px!important;
  background:#f6f8fa!important;
  color:#5e6c7d!important;
  font-size:9px!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  text-align:left!important;
  white-space:nowrap!important;
  background-clip:padding-box!important;
  box-shadow:0 1px 0 #d7e0e8!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  overflow-y:scroll!important;
  overflow-x:auto!important;
  scrollbar-width:auto;
  scrollbar-color:#8B8B8B var(--v17-panel,#102535);
  background:var(--v17-panel,#102535);
  overscroll-behavior:contain;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165 > table.data-table > thead{
  display:none!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar{
  width:17px!important;
  height:12px!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar-track{
  background:var(--v17-panel,#102535)!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar-thumb{
  background:#8B8B8B!important;
  border:3px solid var(--v17-panel,#102535)!important;
  border-radius:9px!important;
  min-height:28px!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar-button:single-button{
  display:block!important;
  width:17px!important;
  height:17px!important;
  background-color:var(--v17-panel,#102535)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:9px 9px!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar-button:single-button:vertical:decrement{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 7.5 6 4l3.5 3.5' fill='none' stroke='%238B8B8B' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar-button:single-button:vertical:increment{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%238B8B8B' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165::-webkit-scrollbar-corner{
  background:var(--v17-panel,#102535)!important;
}
html[data-theme="light"] body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165{
  background:var(--v17-panel,#fff);
  scrollbar-color:#8B8B8B var(--v17-panel,#fff);
}

/* SBS-165 approved table-edge finish:
   - far-left and far-right visible header edge lines are #304659
   - at full scroll bottom, only one #304659 outer panel line remains. */
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165::before,
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:1px;
  background:#304659;
  z-index:60;
  pointer-events:none;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165::before{left:0}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165::after{right:0}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165 > table.data-table{
  border-bottom:0!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165 > table.data-table > tbody > tr:last-child > td{
  border-bottom:0!important;
}

/* Reports SBS-165 side-edge correction.
   The Reports panel did not inherit .v12-panel dark-theme border styling, so its
   original #d7e0e8 border remained visible on the far left/right. Force the
   complete report table perimeter to the approved #304659 line. */
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165,
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165{
  box-sizing:border-box!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165{
  border-left:0!important;
  border-right:0!important;
}
body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165{
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
}

/* Preserve the existing Reports print behaviour: print the original report table header
   and full table, not the screen-only cloned header/body viewport arrangement. */
@media print{
  body.v17-reports-constrained #view-reports #reportOutput .reports-table-panel.sbs165-reports-scroll-layout{
    display:block!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    border:0!important;
  }
  body.v17-reports-constrained #view-reports #reportOutput .reports-header-viewport-sbs165{display:none!important}
  body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165{
    display:block!important;
    height:auto!important;
    overflow:visible!important;
    background:#fff!important;
  }
  body.v17-reports-constrained #view-reports #reportOutput .reports-body-viewport-sbs165 > table.data-table > thead{
    display:table-header-group!important;
  }
}
