.#{$prefix}listitem { display: flex; flex-direction: column; overflow: hidden; z-index: 0; &:not(.#{$prefix}pinned) { min-width: 100%; } &.#{$prefix}hovered { z-index: 1; } &.#{$prefix}selected { z-index: 2; } &.#{$prefix}pressed { z-index: 3; } &.#{$prefix}listitem-placeholder { height: 1px; } &.#{$prefix}focused { // overflow: visible so that focus outline pseudo element can overlap the borders. // Not visible in all cases because it needs to clip listswiper shadow. .#{$prefix}keyboard-mode & { overflow: visible; } &:not(.#{$prefix}pinned) { .#{$prefix}keyboard-mode & { z-index: 10; } } .#{$prefix}keyboard-mode .#{$prefix}no-row-lines &:after { // We use negative margins on the focus border element to account for row borders. // These margins must be suppressed when there are no rowLines. margin: 0; } } &.#{$prefix}pinned { z-index: 20; } &:last-child { :not(.#{$prefix}infinite) > & { margin-bottom: 0; } } } .#{$prefix}listitem-body-el { position: relative; overflow: hidden; flex: 1 1 auto; display: flex; // inherit background color so that the default transparent background does not allow // the background color of list swiper items to show through. background-color: inherit; } .#{$prefix}listitem-inner-el { display: flex; align-items: center; background-color: inherit; flex: 1 1 auto; &.#{$prefix}tool-anchor { display: block; align-self: center; flex-grow: 0; } } .#{$prefix}no-row-lines > .#{$prefix}listitem { border: 0; margin-bottom: 0; }