@import '../../_variables.scss'; .notifications { // a bit of a hack to allow scrolling below notifications padding-bottom: 15em; .panel { background: $fallback--bg; background: var(--bg, $fallback--bg) } .panel-body { border-color: $fallback--border; border-color: var(--border, $fallback--border) } .panel-heading { // force the text to stay centered, while keeping // the button in the right side of the panel heading position: relative; background: $fallback--btn; background: var(--btn, $fallback--btn); color: $fallback--faint; color: var(--faint, $fallback--faint); .read-button { position: absolute; right: 0.7em; height: 1.8em; line-height: 100%; background-color: $fallback--btn; background-color: var(--btn, $fallback--btn); color: $fallback--faint; color: var(--faint, $fallback--faint); } } .unseen-count { display: inline-block; background-color: $fallback--cRed; background-color: var(--cRed, $fallback--cRed); text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5); min-width: 1.3em; border-radius: 1.3em; margin: 0 0.2em 0 -0.4em; color: white; font-size: 0.9em; text-align: center; line-height: 1.3em; padding: 1px; } .notification { // Will have to use pixels here to ensure consistent distance with // pad alone and pad + border, browsers bad at rounding this with em, // they love to give a 1 pixel ghost offset with 0.7em vs 0.3em + 0.4em, // which does not happen with 10px vs 4px + 6px. padding: 0.4em 0 0 10px; display: flex; border-bottom: 1px solid; border-bottom-color: inherit; .notification-gradient { background: linear-gradient(to bottom, rgba(0, 0, 0, 0), $fallback--bg 80%); background: linear-gradient(to bottom, rgba(0, 0, 0, 0), var(--bg, $fallback--bg) 80%) } .text { min-width: 0px; word-wrap: break-word; line-height:18px; position: relative; overflow: hidden; .icon-retweet.lit { color: $fallback--cGreen; color: var(--cGreen, $fallback--cGreen); } .icon-user-plus.lit { color: $fallback--cBlue; color: var(--cBlue, $fallback--cBlue); } .icon-reply.lit { color: $fallback--cBlue; color: var(--cBlue, $fallback--cBlue); } .icon-star.lit { color: orange; color: $fallback--cOrange; color: var(--cOrange, $fallback--cOrange); } .status-content { margin: 0; max-height: 300px; } h1 { word-break: break-all; margin: 0 0 0.3em; padding: 0; font-size: 1em; line-height:20px; small { font-weight: lighter; } } padding: 0.3em 0.8em 0.5em; p { margin: 0; margin-top: 0; margin-bottom: 0.3em; } } .avatar { margin-top: 0.3em; width: 32px; height: 32px; border-radius: $fallback--avatarAltRadius; border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius); overflow: hidden; line-height: 0; &.animated::before { display: none; } } &:hover .animated.avatar { canvas { display: none; } img { visibility: visible; } } &:last-child { border-bottom: none; } } .notification-content { max-height: 12em; overflow-y: hidden; //text-overflow: ellipsis; img { object-fit: contain; } } .notification-gradient { position: absolute; width: 100%; height: 4em; margin-top:8em; } .unseen { border-left: 4px solid $fallback--cRed; border-left: 4px solid var(--cRed, $fallback--cRed); padding-left: 6px; } }