





        /* carousel */


        .carousel-container {
            touch-action: pan-y pinch-zoom;
        }
        .slide-transition {
            transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .fade-in {
            animation: fadeIn 0.8s ease-in-out;
        }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }
        .progress-bar {
            animation: progress 5s linear infinite;
        }
        @keyframes progress {
            from { width: 0%; }
            to { width: 100%; }
        }
        .slide-counter {
            backdrop-filter: blur(10px);
            background: rgba(0, 0, 0, 0.3);
        }
        .nav-arrow {
            backdrop-filter: blur(15px);
            background: rgba(255, 255, 255, 0.1);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }
        .nav-arrow:hover {
            background: rgba(255, 255, 255, 0.2);
            transform: scale(1.05);
        }
        .thumbnail {
            border: 1px solid rgba(255, 255, 255, 0.2);
            transition: all 0.3s ease;
        }
        .thumbnail:hover {
            transform: scale(1.05);
        }
        .thumbnail.active {
            border: 1px solid rgba(255, 255, 255, 0.6);
            transform: scale(1.1);
        }








        @keyframes shimmer {
            0% {
                background-position: -200px 0;
            }
            100% {
                background-position: calc(200px + 100%) 0;
            }
        }
        
        html:not(dark) .skeleton {
            background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
            background-size: 200px 100%;
            animation: shimmer 1.5s infinite;
        }
    
        
         html:dark .skeleton {
            background: linear-gradient(90deg, #374151 25%, #4b5563 50%, #374151 75%);
            background-size: 200px 100%;
            animation: shimmer 1.5s infinite;
        }

