@import 'src/styles/variables'; .wrap { display: flex; flex-direction: row; height: $comment_height; position: relative; align-items: center; justify-content: stretch; flex: 1; user-select: none; } .playpause { flex: 0 0 $comment_height; display: flex; align-items: center; justify-content: center; cursor: pointer; svg { width: 32px; height: 32px; fill: $gray_50; stroke: $gray_50; transition: fill 250ms, stroke 250ms; } &:hover { svg { fill: white; stroke: white; } } } .content { flex: 1; display: flex; flex-direction: column; min-width: 0; padding: 0 $gap * 2 0 $gap; position: relative; } .title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; position: absolute; bottom: 0; left: 0; width: 100%; opacity: 0.7; pointer-events: none; touch-action: none; padding: 0 10px; box-sizing: border-box; height: 100%; top: 0; text-align: left; transition: all 0.5s; font: $font_18_semibold; .playing & { top: 20px; opacity: 1; font-size: 12px; padding-right: 140px; color: $gray_75; } } .progress { height: 20px; position: relative; opacity: 0; pointer-events: none; touch-action: none; transition: opacity 0.5s; left: 0; cursor: pointer; .playing & { opacity: 1; pointer-events: all; touch-action: auto; } &::after { content: ' '; position: absolute; height: 10px; border-radius: 5px; background: $gray_90; width: 100%; top: 5px; left: 0; } } .bar { background: $primary_gradient; position: absolute; height: 10px; left: 0; top: 5px; border-radius: 5px; min-width: 10px; transition: width 0.5s; } .drop { width: 24px; height: 24px; background: #222222; position: absolute; right: 10px; top: 10px; border-radius: 12px; z-index: 2; transition: background-color 250ms, opacity 0.25s; cursor: pointer; display: flex; align-items: center; justify-content: center; svg { width: 20px; height: 20px; } } .input { flex: 1; box-sizing: border-box; padding: 0 48px 0 0; }