.marquee-wrap {
    position: relative;
    overflow: hidden;
    width: 100%;
    font-family: sans-serif;
    line-height: 1.8;
    font-size: 16px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.marquee-track {
    display: inline-block;
    white-space: nowrap;
    will-change: transform;
    animation-name: shiv-scroll;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-duration: 30s;
    /* JS will overwrite */
}

.marquee-wrap.pause .marquee-track {
    animation-play-state: paused;
}

@keyframes shiv-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(var(--shift, -50%));
    }
}

.name,
.sep {
    display: inline-block;
}

.sep {
    opacity: .7;
    margin: 0 .25em;
}

.marquee-controls {
    display: flex;
    gap: 8px;
    align-items: center;
    margin: 8px 0;
}

.btn {
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 999px;
    background: #fff;
    cursor: pointer;
}

.btn[aria-pressed="true"] {
    background: #f3f3f3;
}