$shadow-width: 40px; $shadow-transition-width: 10px; .data-table-block { position: relative; display: inline-block; width: 100%; .data-table { &__wrapper { position: relative; border: 1px solid $ui-fleet-black-10; border-radius: 6px; margin-top: $pad-small; flex-grow: 1; width: 100%; // Shadow background-image: /* Shadows */ linear-gradient( to right, white, $transparent ), linear-gradient(to left, white, $transparent), /* Shadow covers */ linear-gradient(to right, $ui-shadow, white $shadow-transition-width), linear-gradient(to left, $ui-shadow, white $shadow-transition-width); background-position: left center, right center, left center, right center; background-repeat: no-repeat; background-color: white; background-size: $shadow-width 100%, $shadow-width 100%, 50% 100%, 50% 100%; /* Opera doesn't support this in the shorthand */ background-attachment: local, local, scroll, scroll; // End shadow } &__table { position: relative; width: 100%; border-collapse: collapse; color: $core-fleet-black; font-size: $x-small; } tbody { .component__tooltip-wrapper { margin: 10px 0; // vertical padding multiline text with tooltip } .component__tooltip-wrapper__element { white-space: initial; // wraps long text with tooltip } tr, .single-row { transition: background-color 150ms ease-out; &:hover { background-color: $ui-off-white-opaque; // opaque needed for horizontal scroll shadow } } .single-row { &:hover { cursor: pointer; } &:active { background-color: $ui-vibrant-blue-10-opaque; // opaque needed for horizontal scroll shadow } } } tr { border-bottom: 1px solid $ui-fleet-black-10; &:last-child { border-bottom: 0; } // override styles of checkbox data cells .form-field--checkbox { display: flex; justify-content: center; margin-bottom: 0; .fleet-checkbox__label { padding-left: 0; } } } thead { background-color: $ui-off-white-opaque; // opaque needed for horizontal scroll shadow color: $core-fleet-black; text-align: left; border-bottom: 1px solid $ui-fleet-black-10; // resize header icons img { width: 16px; height: 16px; vertical-align: top; } // do not resize button icons inside headers .button { img { width: initial; height: initial; vertical-align: initial; } } th { padding: $pad-medium $pad-large; white-space: nowrap; border-right: 1px solid $ui-fleet-black-10; font-weight: $bold; &:first-child { border-top-left-radius: 6px; } &.selection__header { width: 22px; padding: $pad-medium; } &:last-child { border-right: none; border-top-right-radius: 6px; } .column-header { span { display: flex; align-items: center; gap: 3px; } } } &.active-selection { background: none; z-index: 1; th { border: 0; } .fleet-checkbox { opacity: 0; } .active-selection__container { background-color: $ui-off-white; width: 100% !important; // Too much specificity currently at page-level styling. Revisit after data table CSS update to remove !important. .active-selection__inner { justify-content: flex-start; } } } } .active-selection { position: absolute; top: 0px; width: 100%; border: 0; border-radius: 6px; &__checkbox { padding: 16px; width: 20px; } &__container { padding: 0 24px; } &__inner { display: flex; justify-content: space-between; align-items: center; p { margin: 0 $pad-medium 0 0; font-weight: $regular; span { font-weight: $bold; } } button { margin-right: $pad-medium; } } &__inner-left, &__inner-right { display: flex; align-items: center; } } tbody { td { height: 40px; padding: 0 $pad-large; &.selection__cell { width: 0px; padding: 0 $pad-medium; } .link-cell, .text-cell { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin: 0; } .w400 { max-width: calc(400px - 48px); min-width: 100%; text-align: left; } .w250 { max-width: calc(250px - 48px); min-width: 100%; text-align: left; } .grey-cell { color: $ui-fleet-black-50; font-style: italic; } } .disable-highlight:hover { background-color: initial; } } } .loading-overlay { display: flex; flex-grow: 1; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(255, 255, 255, 0.8); z-index: 1; } &__pagination { display: flex; justify-content: flex-end; margin-top: $pad-small; margin-bottom: $pad-small; margin-left: auto; text-align: right; button { color: $core-vibrant-blue; padding: 6px; font-weight: $bold; .fleeticon-chevronleft { margin-right: $pad-small; &:before { font-size: 0.6rem; font-weight: $bold; position: relative; top: -2px; } } .fleeticon-chevronright { margin-left: $pad-small; &:before { font-size: 0.6rem; font-weight: $bold; position: relative; top: -2px; } } } button:hover, button:focus { background-color: $ui-vibrant-blue-10; } .button--disabled:hover, .button--disabled:focus { background-color: transparent; } button:last-child { margin-left: $pad-large; } } &__footer { display: flex; align-items: center; } &__footer-text { font-size: $x-small; display: flex; align-items: center; } }