/* Synnio Newstext - Laufschrift Ticker */

.synnio-newstext-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    background-color: var(--snt-bg-color, #111);
    color: var(--snt-text-color, #fff);
    padding-top: var(--snt-padding-y, 10px);
    padding-bottom: var(--snt-padding-y, 10px);
    box-sizing: border-box;
    line-height: 1.3;
    -webkit-font-smoothing: antialiased;
}

/* Elementor full width: aus Container ausbrechen.
   Funktioniert sowohl in boxed-Containern als auch in bereits 100%-breiten Containern. */
.synnio-newstext-wrapper.snt-fullwidth {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    position: relative;
    left: auto;
    right: auto;
}

/* Scrollbar-Kompensation: wenn eine vertikale Scrollbar existiert, ist 100vw
   minimal breiter als der sichtbare Viewport -> horizontaler Overflow. */
html, body {
    overflow-x: clip;
}

.synnio-newstext-wrapper .snt-track {
    width: 100%;
    overflow: hidden;
    display: block;
    white-space: nowrap;
    mask-image: linear-gradient(90deg, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
}

.synnio-newstext-wrapper .snt-content {
    display: inline-flex;
    flex-wrap: nowrap;
    will-change: transform;
    animation: snt-scroll var(--snt-speed, 40s) linear infinite;
}

.synnio-newstext-wrapper .snt-item {
    display: inline-block;
    flex: 0 0 auto;
    padding-right: 0;
    font-family: var(--snt-font-family, inherit);
    font-size: var(--snt-font-size, 18px);
    font-weight: var(--snt-font-weight, 600);
    color: var(--snt-text-color, #fff);
    white-space: nowrap;
}

.synnio-newstext-wrapper .snt-sep {
    display: inline-block;
    padding: 0 0.25em;
    opacity: 0.8;
}

/* Pause bei Hover */
.synnio-newstext-wrapper.snt-pause-hover:hover .snt-content {
    animation-play-state: paused;
}

/* Animation: von rechts nach links - Inhalt enthaelt 4 Kopien, nach -25% springen wir nahtlos zurueck */
@keyframes snt-scroll {
    0%   { transform: translate3d(0, 0, 0); }
    100% { transform: translate3d(-25%, 0, 0); }
}

/* Reduzierte Bewegung: Barrierefreiheit */
@media (prefers-reduced-motion: reduce) {
    .synnio-newstext-wrapper .snt-content {
        animation-duration: calc(var(--snt-speed, 40s) * 3);
    }
}

/* Mobile: kleinere Schrift fuer Lesbarkeit */
@media (max-width: 767px) {
    .synnio-newstext-wrapper .snt-item {
        font-size: var(--snt-font-size-mobile, 14px);
    }
    .synnio-newstext-wrapper .snt-track {
        mask-image: linear-gradient(90deg, transparent 0, #000 20px, #000 calc(100% - 20px), transparent 100%);
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 20px, #000 calc(100% - 20px), transparent 100%);
    }
}

/* Sicherstellen, dass Elementor-Container die Laufschrift nicht zerbricht */
.elementor-widget-shortcode .synnio-newstext-wrapper,
.elementor-shortcode .synnio-newstext-wrapper {
    margin: 0;
}
