.bunny-stream-carousel-wrapper {
position: relative;
margin: 20px 0;
padding: 0 10px; width: 100%;
box-sizing: border-box;
overflow: visible; } .bunny-stream-videos-container {
display: flex;
overflow-x: hidden;
scroll-behavior: smooth;
-webkit-overflow-scrolling: touch;
padding: 10px 0;
width: 100%;
max-width: 100%;
scroll-snap-type: x mandatory; -ms-overflow-style: none; scrollbar-width: none; } .bunny-stream-videos-container::-webkit-scrollbar {
display: none;
} .bunny-stream-video-item {
flex: 0 0 100%;
padding: 0 5px; box-sizing: border-box;
transition: transform 0.3s ease;
width: 100%;
scroll-snap-align: start; } @media (min-width: 768px) {
.bunny-stream-video-item {
flex: 0 0 33.333%;
}
} .bunny-stream-videos-container[data-columns="2"] .bunny-stream-video-item {
flex: 0 0 100%;
}
@media (min-width: 768px) {
.bunny-stream-videos-container[data-columns="2"] .bunny-stream-video-item {
flex: 0 0 50%;
}
}
.bunny-stream-videos-container[data-columns="4"] .bunny-stream-video-item {
flex: 0 0 100%;
}
@media (min-width: 768px) {
.bunny-stream-videos-container[data-columns="4"] .bunny-stream-video-item {
flex: 0 0 25%;
}
} @media (max-width: 767px) {
.bunny-stream-video-item {
padding: 0 2px; }
.bunny-stream-carousel-wrapper {
margin: 10px 0;
}
.bunny-stream-video-title {
font-size: 14px;
padding: 8px 10px;
}
} .bunny-stream-video-card {
border-radius: 8px;
overflow: hidden; background-color: transparent;
height: 100%;
display: flex;
flex-direction: column;
}  .bunny-stream-video-wrapper {
position: relative;
padding-bottom: 56.25%; height: 0;
overflow: hidden;
background-color: #000;
width: 100%;
max-width: 100%;
} .bunny-stream-video-iframe-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: none;
border-radius: 8px; } .bunny-stream-video-iframe-container {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
} .bunny-stream-loader {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 40px;
height: 40px;
border: 4px solid rgba(255, 255, 255, 0.3);
border-radius: 50%;
border-top: 4px solid #ffffff;
animation: bunny-stream-spin 1s linear infinite;
}
@keyframes bunny-stream-spin {
0% { transform: translate(-50%, -50%) rotate(0deg); }
100% { transform: translate(-50%, -50%) rotate(360deg); }
} .bunny-stream-video-title {
padding: 10px 10px;
margin: 0;
font-size: 15px;
font-weight: 600;
text-align: left;
color: #000; line-height: 1.3;
width: 100%;
box-sizing: border-box;
display: block !important;
visibility: visible !important;
margin-top: -5px;
position: relative; border-radius: 0 0 8px 8px; overflow: hidden;
background: linear-gradient(135deg, #f8f8f8, #f0f0f0, #e8e8e8, #f8f8f8); animation: gradientAnimation 12s ease infinite; background-size: 300% 300%; } .bunny-stream-video-title::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(to right, 
rgba(255,255,255,0.1), 
rgba(240,240,240,0.5), rgba(220,220,220,0.5), rgba(255,255,255,0.1));
z-index: -1;
animation: shimmerEffect 8s infinite; } @keyframes gradientAnimation {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
} @keyframes shimmerEffect {
0% { opacity: 0.1; transform: translateX(-100%); }
50% { opacity: 0.4; }
100% { opacity: 0.1; transform: translateX(100%); }
}  .bunny-stream-video-card {
border-radius: 8px;
overflow: hidden;
} .bunny-stream-nav-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 40px;
height: 40px;
background-color: rgba(255, 255, 255, 0.8);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
font-size: 20px;
font-weight: bold;
color: #333;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
z-index: 10;
transition: all 0.3s ease;
user-select: none;
}
.bunny-stream-nav-arrow:hover {
background-color: rgba(255, 255, 255, 0.9);
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
}
.bunny-stream-prev {
left: 10px;
}
.bunny-stream-next {
right: 10px;
}
.bunny-stream-nav-arrow.disabled {
opacity: 0.5;
cursor: not-allowed;
} @media (max-width: 767px) {
.bunny-stream-nav-arrow {
width: 32px;
height: 32px;
font-size: 16px;
}
.bunny-stream-prev {
left: 5px;
}
.bunny-stream-next {
right: 5px;
}
} .bunny-stream-dots {
display: flex;
justify-content: center;
margin-top: 15px;
}
.bunny-stream-dot {
width: 10px;
height: 10px;
border-radius: 50%;
background-color: #ccc;
margin: 0 5px;
cursor: pointer;
transition: background-color 0.3s ease;
}
.bunny-stream-dot.active {
background-color: #333;
} .bunny-stream-error {
color: #d63638;
padding: 10px;
background-color: #ffebe8;
border-left: 4px solid #d63638;
margin: 10px 0;
}
.bunny-stream-notice {
color: #333;
padding: 10px;
background-color: #f5f5f5;
border-left: 4px solid #000;
margin: 10px 0;
font-size: 15px;
line-height: 1.5;
} .bunny-stream-touch-scroll {
display: none;
text-align: center;
color: #666;
margin: 10px 0;
font-size: 14px;
}
@media (max-width: 767px) {
.bunny-stream-touch-scroll {
display: block;
}
}