/* Shared table scrolling rule: every visible table owns both axes and never expands the page. */
.table-scroll,
.v090-table-wrap,
.v091-process-scroll,
.workflow-round-table{
  min-width:0;
  max-width:100%;
  overflow:auto!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable both-edges;
  -webkit-overflow-scrolling:touch;
}

.table-scroll table,
.v090-table-wrap table,
.v091-process-scroll table,
.workflow-round-table table{max-width:none}

.table-scroll thead th,
.v090-table-wrap thead th,
.v091-process-scroll thead th,
.workflow-round-table thead th{
  position:sticky;
  z-index:3;
  top:0;
}

/* Teacher and rectifier full-page workspaces must scroll inside the fixed process frame. */
.process-main>.v090-field-shell{
  width:100%;
  flex:1 1 auto;
  min-height:0;
  align-content:start;
  grid-auto-rows:max-content;
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  -webkit-overflow-scrolling:touch;
}

.table-scroll::-webkit-scrollbar,
.v090-table-wrap::-webkit-scrollbar,
.v091-process-scroll::-webkit-scrollbar,
.workflow-round-table::-webkit-scrollbar{width:10px;height:10px}
.table-scroll::-webkit-scrollbar-thumb,
.v090-table-wrap::-webkit-scrollbar-thumb,
.v091-process-scroll::-webkit-scrollbar-thumb,
.workflow-round-table::-webkit-scrollbar-thumb{border:2px solid #f4f7f9;border-radius:999px;background:#9eafbb}
.table-scroll::-webkit-scrollbar-track,
.v090-table-wrap::-webkit-scrollbar-track,
.v091-process-scroll::-webkit-scrollbar-track,
.workflow-round-table::-webkit-scrollbar-track{background:#f4f7f9}

@media(min-width:901px){
  .work-main,.results-main{
    display:flex;
    height:calc(100dvh - 66px);
    min-height:0;
    flex-direction:column;
    overflow:hidden;
    padding-bottom:0;
  }
  .work-main>.breadcrumb,.work-main>.summary-strip,
  .results-main>.breadcrumb,.results-main>.summary-strip{flex:0 0 auto}
  .work-main>.panel,.results-main>.panel{
    display:flex;
    flex:1 1 auto;
    min-height:0;
    flex-direction:column;
    overflow:hidden;
  }
  .work-main>.panel>.panel-head,.work-main>.panel>.work-view-tabs,.work-main>.panel>.work-sticky-controls,
  .results-main>.panel>.panel-head,.results-main>.panel>.results-sticky-controls,.results-main>.panel>.table-pagination{flex:0 0 auto}
  .work-main>.panel>.table-scroll,.results-main>.panel>.table-scroll{
    flex:1 1 auto;
    min-height:0;
    max-height:none;
  }
  .detail-dialog .table-scroll,.detail-dialog .v091-process-scroll,.detail-dialog .workflow-round-table{max-height:38dvh}
}

@media(max-width:900px){
  html,body,.app-shell,.workspace,.main-content,.panel,.detail-dialog,.detail-body{max-width:100%;min-width:0}
  html,body{overflow-x:hidden}
  .detail-dialog{max-width:calc(100vw - 18px)}
  .detail-dialog .table-scroll,
  .detail-dialog .v091-process-scroll,
  .detail-dialog .workflow-round-table{
    display:block;
    max-height:48dvh;
  }
}

@media(max-width:620px){
  .work-main{display:flex;flex-direction:column}
  .work-main>.breadcrumb,.work-main>.summary-strip{flex:0 0 auto}
  .work-main>.panel{height:auto!important;flex:1 1 auto;min-height:0}
}
