.slider { display: grid; gap: var(--space-2); } .head { display: flex; align-items: baseline; justify-content: space-between; } .label { color: var(--color-text-secondary); font-size: var(--font-size-small); } .value { color: var(--color-text); } /* The track is the height of a chapter's progress bar: the same quantity is drawn the same way everywhere in the shell. */ .track { position: relative; display: flex; height: var(--row-height); align-items: center; } .track::before { position: absolute; right: 0; left: 0; height: 3px; border-radius: var(--radius-bar); background-color: var(--color-separator); content: ''; } .fill { position: absolute; left: 0; width: calc(var(--progress) * 100%); height: 3px; border-radius: var(--radius-bar); background-color: var(--color-text-secondary); } .thumb { width: var(--thumb-size); height: var(--thumb-size); border-radius: var(--radius-round); background-color: var(--color-text); } .thumb[data-dragging] { background-color: var(--color-accent); } .thumb[data-focus-visible] { outline: 1px solid var(--color-accent); outline-offset: 2px; } .hint { color: var(--color-text-secondary); font-size: var(--font-size-small); }