tokmaganbet1, наверное я всё-таки поспешил с ответом )
Вряд ли обойдёмся одним элементом. для закрашенной полоски придётся вкладывать внутрь еще блок.
или писать сто стилей (на каждый процент)
@each $i from 1 through 100 {
.progress[data-value="#{$i}%"]::before { width: percentage($i / 100); }
}