[data-countdown] {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    direction: ltr;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
[data-countdown] span[data-countdown-part]{
    color: currentColor;
    border-radius: 5px;
    padding:5px;
    isolation: isolate;
    position: relative;
}
[data-countdown] span[data-countdown-part]:before{
    content: ' ';
    pointer-events: none;
    border: 2px solid currentColor;
    opacity: 0.75;
    filter: saturate(1.5);
    border-radius: 5px;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

[data-top-banner] {
    --color: #fafafa;
    --background:  #151515;
    --scroll-margin: 0;
    --scroll-speed: .5s;
    --scroll-timing: ease-in-out;

    padding: 0;
    margin: 0;
    width: 100%;
    background-color: var(--background);
    color: var(--color);
    transition: 0.3s background-color ease, 0.1s color linear;
}
[data-top-banner] *{
    color: currentColor;
    transition:  0.1s color linear;
}
[data-top-banner] .tb-all-wrapper{
    width: calc(100vw - 50px);
    max-width: 500px;
    margin: auto;
    display: flex;
    flex-direction: row;
    overflow: hidden;
}
[data-top-banner] .slides-wrapper {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    overflow-y: hidden;
    /*overflow-x: scroll;*/
    /*scroll-snap-type: x mandatory;*/
    overflow-x: hidden;
    flex: 1;
}
[data-top-banner] .slides-wrapper > .slides-scroll-content{
    display: flex;
    flex-wrap: nowrap;
    gap: 1rem;
    min-width: 100%;
    transform: translate3d(var(--scroll-margin), 0, 0);
    transition: var(--scroll-speed) transform var(--scroll-timing);

}
[data-top-banner] .slides-wrapper::-webkit-scrollbar {
    display: none;
}
[data-top-banner] .slide-item {
    scroll-snap-align: start;
    min-width: 100%;
    min-height: 40px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    box-sizing: border-box;
    text-align: center;
}