.downloads-widget-table { /*Set Header static and overflow body instead*/ display: flex; height: 100%; flex-direction: column; .mantine-Table-tbody { overflow-y: auto; flex: 1; scrollbar-width: 0; } /*Hide scrollbar until I can apply an overlay scrollbar instead*/ .mantine-Table-tbody::-webkit-scrollbar { width: 0; } /*Properly size header*/ .mrt-table-head-cell-labels { min-height: var(--ratioWidth); gap: 0; padding: 0; } /*Properly size controls*/ .mrt-grab-handle-button { margin: unset; width: var(--dragButtonSize); min-width: var(--dragButtonSize); height: var(--dragButtonSize); min-height: var(--dragButtonSize); } .mrt-table-head-sort-button { margin: unset; width: var(--sortButtonSize); min-width: var(--sortButtonSize); height: var(--sortButtonSize); min-height: var(--sortButtonSize); } } /*Make background of component different on hover, depending on base var*/ .hoverable-component { &:hover { background-color: rgb(from var(--background-color) calc(r + 10) calc(g + 10) calc(b + 10) / var(--opacity)); } } /*Make background of component different on click, depending on base var, inverse of hover*/ .clickable-component { &:active { background-color: rgb(from var(--background-color) calc(r - 10) calc(g - 10) calc(b - 10) / var(--opacity)); } } /*FadingGlowing effect for text that updates, add className and put the updating value as key*/ @keyframes glow { from { text-shadow: 0 0 var(--glow-size) var(--mantine-color-text); } to { text-shadow: none; } } .text-flash { animation: glow 1s ease-in-out; } /*To apply to any ScrollArea that we want to flex. Same weird workaround as before*/ .flexed-scroll-area { height: 100%; .mantine-ScrollArea-viewport { & div[style="min-width: 100%; display: table;"] { display: flex !important; height: 100%; } } }