@keyframes left-shift-animation { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(1px); } } .conversation { @include flex; @include flex-shrink; border-bottom: 1px solid transparent; border-left: var(--space-micro) solid transparent; border-top: 1px solid transparent; cursor: pointer; padding: 0 var(--space-normal); position: relative; &.active { animation: left-shift-animation 0.25s $swift-ease-out-function; background: var(--color-background); border-bottom-color: var(--color-border-light); border-left-color: var(--color-woot); border-top-color: var(--color-border-light); .conversation--details { border-top-color: transparent; } + .conversation .conversation--details { border-top-color: transparent; } } &:first-child { .conversation--details { border-top-color: transparent; } } &:last-child { .conversation--details { border-bottom-color: var(--color-border-light); } } .conversation--details { @include border-light-bottom; @include border-light-top; border-bottom-color: transparent; padding: var(--space-slab) 0; } .conversation--user { font-size: var(--font-size-small); margin: 0 var(--space-small); text-transform: capitalize; .label { left: var(--space-one); max-width: var(--space-jumbo); overflow: hidden; position: relative; text-overflow: ellipsis; top: var(--space-one); white-space: nowrap; } } .conversation--message { color: var(--color-body); font-size: var(--font-size-small); font-weight: var(--font-weight-normal); height: var(--space-medium); line-height: var(--space-medium); margin: 0 var(--space-small); max-width: 96%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 27rem; } .conversation--meta { @include flex; flex-direction: column; position: absolute; right: var(--space-normal); top: var(--space-normal); .unread { @include round-corner; @include light-shadow; background: darken($success-color, 3%); color: var(--white); display: none; font-size: var(--font-size-micro); font-weight: var(--font-weight-black); height: var(--space-normal); line-height: var(--space-normal); margin-left: auto; margin-top: var(--space-smaller); min-width: var(--space-normal); padding: 0 var(--space-smaller); text-align: center; } .timestamp { color: $dark-gray; font-size: var(--font-size-micro); font-weight: var(--font-weight-normal); line-height: var(--space-normal); margin-left: auto; } } &.unread-chat { .unread { display: inline-block; } .conversation--message { font-weight: var(--font-weight-bold); } .conversation--user { font-weight: var(--font-weight-bold); } } &.compact { padding-left: 0; .conversation--details { border-radius: var(--border-radius-small); margin-left: 0; padding-left: var(--space-two); padding-right: var(--space-small); } } }