{"version":3,"file":"VirtualTable.module.cjs","names":[],"sources":["../../../src/components/VirtualTable/VirtualTable.module.css"],"sourcesContent":[".scroll {\n    width: 100%;\n    overflow: auto;\n    border: 1px solid var(--tempest-border);\n    border-radius: var(--tempest-radius-lg);\n    background-color: var(--tempest-bg);\n    box-shadow: var(--tempest-shadow-xs);\n}\n\n.table {\n    width: 100%;\n    border-collapse: separate;\n    border-spacing: 0;\n    font-family: var(--tempest-font-sans);\n    font-size: var(--tempest-text-base);\n    line-height: var(--tempest-leading-snug);\n    /*\n     * Fixed layout is what keeps columns from jumping mid-scroll: with `auto`,\n     * the browser sizes each column from the rows currently in the DOM, and a\n     * virtualized table swaps those rows out as you scroll.\n     */\n    table-layout: fixed;\n}\n\n.caption {\n    position: absolute;\n    width: 1px;\n    height: 1px;\n    padding: 0;\n    margin: -1px;\n    overflow: hidden;\n    clip-path: inset(50%);\n    white-space: nowrap;\n    border-width: 0;\n}\n\n/*\n * `border-collapse: separate` above exists for this: a sticky `<th>` inside a\n * collapsed table loses its bottom border while scrolling, because the shared\n * border belongs to the cell that scrolled away.\n */\n.head .th {\n    position: sticky;\n    top: 0;\n    z-index: 1;\n}\n\n.th,\n.td {\n    padding: 0 var(--tempest-space-4);\n    text-align: left;\n    border-bottom: 1px solid var(--tempest-border);\n    overflow: hidden;\n    text-overflow: ellipsis;\n    white-space: nowrap;\n}\n\n.th {\n    padding-block: var(--tempest-space-3);\n    background-color: var(--tempest-surface);\n    color: var(--tempest-text-muted);\n    font-weight: var(--tempest-weight-semibold);\n    font-size: var(--tempest-text-xs);\n    letter-spacing: var(--tempest-tracking-wider);\n    text-transform: uppercase;\n}\n\n.alignRight {\n    text-align: right;\n}\n\n.alignCenter {\n    text-align: center;\n}\n\n.sortButton {\n    display: inline-flex;\n    align-items: center;\n    gap: var(--tempest-space-1);\n    padding: 0;\n    border: none;\n    background: none;\n    color: inherit;\n    font: inherit;\n    letter-spacing: inherit;\n    text-transform: inherit;\n    cursor: pointer;\n}\n\n.sortButton:focus-visible {\n    outline: 2px solid var(--tempest-primary);\n    outline-offset: 2px;\n    border-radius: var(--tempest-radius-sm);\n}\n\n.sortIndicator {\n    font-size: var(--tempest-text-xs);\n    opacity: 0.55;\n}\n\n.tr.clickable {\n    cursor: pointer;\n    transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n@media (hover: hover) and (pointer: fine) {\n    .tr.clickable:hover {\n        background-color: var(--tempest-surface);\n    }\n}\n\n.tr.clickable:focus-visible {\n    outline: 2px solid var(--tempest-primary);\n    outline-offset: -2px;\n}\n\n.emptyRow {\n    padding: var(--tempest-space-8) var(--tempest-space-4);\n    text-align: center;\n    color: var(--tempest-text-muted);\n}\n\n@media (prefers-reduced-motion: reduce) {\n    .tr.clickable {\n        transition: none;\n    }\n}\n"],"mappings":";"}