/* =====================================================
   Blockenberg — content-ticker  (bkbg-ctk-*)
   ===================================================== */

/* ── App shell ── */
.bkbg-ctk-app {
    /* filled by frontend.js */
    display: block;
}

/* ── Wrapper ── */
.bkbg-ctk-wrap {
    display: flex;
    align-items: stretch;
    overflow: hidden;
    position: relative;
    font-family: var(--bkctk-text-font-family, inherit);
    font-size: var(--bkctk-text-font-size-d, 14px);
    font-weight: var(--bkctk-text-font-weight, 400);
    font-style: var(--bkctk-text-font-style, normal);
    text-transform: var(--bkctk-text-text-transform, none);
    text-decoration: var(--bkctk-text-text-decoration, none);
    line-height: var(--bkctk-text-line-height-d, 1);
    letter-spacing: var(--bkctk-text-letter-spacing-d, normal);
    word-spacing: var(--bkctk-text-word-spacing-d, normal);
}

/* ── Prefix label ── */
.bkbg-ctk-prefix {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    font-weight: 700;
    white-space: nowrap;
    letter-spacing: 0.02em;
    z-index: 2;
    font-size: inherit;
}

/* ── Scrolling track ── */
.bkbg-ctk-track {
    flex: 1;
    overflow: hidden;
    display: flex;
    align-items: center;
    min-width: 0;
}

/* ── Inner strip (doubled for seamless loop) ── */
.bkbg-ctk-inner {
    display: flex;
    align-items: center;
    white-space: nowrap;
    will-change: transform;
    animation: bkbg-ctk-scroll linear infinite;
    animation-play-state: running;
}

/* Pause on hover — class set by JS based on pauseOnHover attribute */
.bkbg-ctk-wrap.bkbg-ctk-pauseable:hover .bkbg-ctk-inner,
.bkbg-ctk-wrap.bkbg-ctk-paused .bkbg-ctk-inner {
    animation-play-state: paused;
}

/* Right-to-left direction */
.bkbg-ctk-wrap.bkbg-ctk-rtl .bkbg-ctk-inner {
    animation-direction: reverse;
}

/* ── Individual item ── */
.bkbg-ctk-item {
    display: inline-flex;
    align-items: center;
}

.bkbg-ctk-item a {
    text-decoration: inherit;
    transition: opacity 0.2s;
}
.bkbg-ctk-item a:hover {
    opacity: 0.75;
    text-decoration: underline;
}

/* ── Separator ── */
.bkbg-ctk-sep {
    display: inline-flex;
    align-items: center;
    margin: 0 4px;
    flex-shrink: 0;
    user-select: none;
}

/* ── Direction arrow badge ── */
.bkbg-ctk-arrow {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    padding: 0 10px;
    font-size: 0.85em;
    z-index: 2;
}

/* ── Scroll keyframe ── */
@keyframes bkbg-ctk-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

/* ── Editor wrapper (block editor only) ── */
.bkbg-ctk-editor-wrap {
    border-radius: 4px;
    overflow: hidden;
}

@media (max-width: 1024px) {
    .bkbg-ctk-wrap {
        font-size: var(--bkctk-text-font-size-t, var(--bkctk-text-font-size-d, 14px));
        line-height: var(--bkctk-text-line-height-t, var(--bkctk-text-line-height-d, 1));
        letter-spacing: var(--bkctk-text-letter-spacing-t, var(--bkctk-text-letter-spacing-d, normal));
        word-spacing: var(--bkctk-text-word-spacing-t, var(--bkctk-text-word-spacing-d, normal));
    }
}
@media (max-width: 767px) {
    .bkbg-ctk-wrap {
        font-size: var(--bkctk-text-font-size-m, var(--bkctk-text-font-size-t, var(--bkctk-text-font-size-d, 14px)));
        line-height: var(--bkctk-text-line-height-m, var(--bkctk-text-line-height-t, var(--bkctk-text-line-height-d, 1)));
        letter-spacing: var(--bkctk-text-letter-spacing-m, var(--bkctk-text-letter-spacing-t, var(--bkctk-text-letter-spacing-d, normal)));
        word-spacing: var(--bkctk-text-word-spacing-m, var(--bkctk-text-word-spacing-t, var(--bkctk-text-word-spacing-d, normal)));
    }
}
