.live-stream-player__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    object-fit: cover;
    background: #000;
}

.live-stream-player__video--idle {
    display: none;
}

.live-stream-player__stage {
    isolation: isolate;
}

/* Single .ratio child — Bootstrap must not stretch badges/overlays to 100%. */
.live-stream-player__frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.live-stream-badge {
    position: absolute;
    top: .75rem;
    left: .75rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .25rem .55rem;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.live-stream-badge--live {
    background: rgba(220, 53, 69, .92);
    color: #fff;
}

.live-stream-badge--scheduled {
    background: rgba(13, 110, 253, .88);
    color: #fff;
}

.live-stream-badge__dot {
    width: .55rem;
    height: .55rem;
    border-radius: 50%;
    background: #fff;
    animation: live-stream-pulse 1.2s ease-in-out infinite;
}

@keyframes live-stream-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: .55; transform: scale(.85); }
}

.live-stream-player__meta {
    position: absolute;
    bottom: .75rem;
    right: .75rem;
    z-index: 2;
    background: rgba(0, 0, 0, .55);
    padding: .2rem .5rem;
    border-radius: .35rem;
}

.live-stream-countdown {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    background: rgba(0, 0, 0, .45);
    border-radius: .75rem;
    min-width: 12rem;
    max-width: 92%;
}

.live-stream-countdown__value {
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: .01em;
}

.live-stream-health {
    position: absolute;
    bottom: .75rem;
    left: .75rem;
    z-index: 2;
}

[data-bs-theme="dark"] .live-stream-chat {
    background: var(--bs-body-bg);
}

.live-stream-card-badge {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .2rem .5rem;
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
    line-height: 1.2;
}

.live-stream-card-badge--live {
    background: rgba(220, 53, 69, .95);
    color: #fff;
}

.live-stream-card-badge--scheduled {
    background: rgba(13, 110, 253, .9);
    color: #fff;
}

.live-stream-card-badge__dot {
    width: .45rem;
    height: .45rem;
    border-radius: 50%;
    background: currentColor;
    animation: live-stream-pulse 1.2s ease-in-out infinite;
}

.auction-home-card__video-live {
    position: absolute;
    top: .5rem;
    right: .5rem;
    z-index: 3;
}

.pd-product-card__media {
    position: relative;
}

.pd-product-card__live-badge {
    position: absolute;
    top: .5rem;
    left: .5rem;
    z-index: 5;
}

.live-stream-shop-banner {
    position: relative;
    z-index: 1030;
}

.live-stream-chat__messages {
    background: color-mix(in srgb, var(--bs-body-bg) 92%, var(--bs-secondary-bg));
}

.live-stream-player--embedded {
    width: 100%;
    max-width: 100%;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-body-bg);
}

.product-profile-hero--has-live-stream .live-stream-player--embedded {
    border: 0;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    margin-bottom: 1rem;
}

.product-profile-hero--has-live-stream .product-media-carousel,
.product-profile-hero--has-live-stream .product-media-carousel-thumbs,
.product-profile-hero--has-live-stream .product-gallery {
    margin-top: 0;
}

.pd-estore-product-page .product-profile-hero--has-live-stream .live-stream-player--embedded {
    box-shadow: var(--pd-shadow, 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075));
    border-radius: calc(var(--pd-radius, 1rem) * 1.25);
}

.product-profile-hero .live-stream-player--embedded,
.auction-detail-page .live-stream-player--embedded {
    margin-bottom: 0;
}

.product-profile-hero--has-live-stream .product-sales-stock,
.product-profile-hero--has-live-stream .product-digital-panel {
    margin-top: 1.25rem;
}

.live-stream-player__stage.ratio-1x1 .live-stream-countdown {
    max-width: 85%;
}

.live-stream-chat--embedded {
    min-height: 220px;
}

.live-stream-chat--embedded .live-stream-chat__messages {
    min-height: 140px;
    max-height: 220px;
}

.live-stream-interest__btn .bi {
    margin-right: .25rem;
}

.live-stream-home-section__eyebrow {
    color: var(--bs-primary);
}

.live-stream-home-section__pulse {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--bs-danger);
    background: rgba(220, 53, 69, 0.12);
    flex-shrink: 0;
}

.live-stream-banner__phase {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.live-stream-banner__teaser {
    display: none;
}

.live-stream-home-section .auction-home-banner__content {
    gap: 0.45rem;
    padding-top: 1.25rem;
    padding-bottom: 1rem;
}

@media (min-width: 768px) {
    .live-stream-home-section .auction-home-banner__content {
        padding-top: 1.5rem;
        padding-bottom: 1.25rem;
    }
}

.live-stream-banner__title,
.live-stream-home-section .auction-home-banner__auction-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.45;
    padding-bottom: 0.2em;
    margin-bottom: -0.2em;
    max-height: calc(2 * 1.45em + 0.15em);
}

.live-stream-banner__title a,
.live-stream-home-section .auction-home-banner__auction-title a {
    display: inline;
    line-height: inherit;
}

.live-stream-banner__media-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 8rem;
    color: color-mix(in srgb, var(--bs-primary) 55%, var(--bs-secondary-color));
    font-size: 2.5rem;
}

@media (max-width: 767.98px) {
    .live-stream-home-section .auction-home-banner__content {
        padding-top: 1rem;
        padding-bottom: 0.85rem;
    }
}

/* Langsamer Crossfade wie Highlight-Slider / Spotlight */
.live-stream-home-carousel.carousel-fade {
    --bs-carousel-transition-duration: 1.15s;
}

.live-stream-home-carousel.carousel-fade .carousel-inner {
    position: relative;
}

.live-stream-home-carousel.carousel-fade .carousel-item {
    opacity: 0;
    transition: opacity 1.15s ease-in-out;
    display: block;
    float: none;
    margin-right: 0;
    backface-visibility: hidden;
}

.live-stream-home-carousel.carousel-fade .carousel-item.active {
    opacity: 1;
    position: relative;
    z-index: 2;
}

.live-stream-home-carousel.carousel-fade .carousel-item-next,
.live-stream-home-carousel.carousel-fade .carousel-item-prev {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
}

.live-stream-home-carousel.carousel-fade .carousel-item:not(.active) {
    pointer-events: none;
}

.live-stream-home-carousel .carousel-indicators [data-bs-target] {
    width: 0.55rem;
    height: 0.55rem;
    border-radius: 50%;
}

.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
