/* Keep the filters above a scrolling registry; table headers stay visible. */
#course-checkin .student-management-panel,
#course-checkin .course-management-panel {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 4px 6px;
}
@media (min-width: 981px) {
    #course-checkin .student-management-panel .teaching-filter-row {
        grid-template-columns: minmax(136px, 150px) repeat(2, minmax(140px, 170px));
    }
    #course-checkin .student-management-panel.registry-viewport-pinned {
        position: fixed;
        top: var(--registry-sticky-top, 12px);
        left: var(--registry-pin-left);
        width: var(--registry-pin-width);
        z-index: 20;
    }
    #registry-student-list > .teaching-table-wrap {
        box-sizing: border-box;
        max-height: var(--registry-scroll-height, calc(100dvh - 120px));
        overflow: auto;
        overscroll-behavior: auto;
        scrollbar-gutter: stable;
    }
    #registry-student-list thead th {
        position: sticky;
        top: 0;
        z-index: 3;
        background: var(--site-paper, #fff8ec);
        box-shadow: 0 1px 0 var(--site-line, #ead2b5);
    }
    #registry-student-list .student-table tbody td {
        padding-top: 4px;
        padding-bottom: 4px;
    }
}
