.news-image-carousel .swiper-slide {
            height: auto;
        }
        
        .news-image-carousel .swiper-slide img {
            width: 100%;
            height: 500px;
            object-fit: cover;
            border-radius: 0.5rem;
        }
        
        .news-thumbnails .swiper-slide {
            width: auto;
            height: 80px;
            cursor: pointer;
            opacity: 0.5;
            transition: opacity 0.3s;
        }
        
        .news-thumbnails .swiper-slide-thumb-active {
            opacity: 1;
        }
        
        .news-thumbnails .swiper-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 0.375rem;
            border: 2px solid transparent;
            transition: border-color 0.3s;
        }
        
        .news-thumbnails .swiper-slide-thumb-active img {
            border-color: #FFC464;
        }
        
        @media (max-width: 640px) {
            .news-image-carousel .swiper-slide img {
                height: 300px;
            }
            
            .news-thumbnails .swiper-slide {
                height: 60px;
            }
        }
        
        /* Modal image centering */
        .news-modal-carousel {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 100%;
        }
        
        .news-modal-carousel .swiper-wrapper {
            display: flex;
            align-items: center;
            height: 100%;
        }
        
        .news-modal-carousel .swiper-slide {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 100%;
        }
        
        .news-modal-carousel .swiper-slide img {
            max-width: 90vw;
            max-height: calc(100vh - 120px); /* Оставляем место для миниатюр и отступов */
            object-fit: contain;
        }
        
        /* На широких экранах ограничиваем высоту изображения */
        @media (min-width: 1024px) {
            .news-modal-carousel .swiper-slide img {
                max-height: calc(100vh - 140px); /* Больше места для миниатюр на широких экранах */
            }
        }
        
        /* На очень широких экранах еще больше ограничиваем */
        @media (min-width: 1536px) {
            .news-modal-carousel .swiper-slide img {
                max-height: calc(100vh - 160px);
            }
        }
        
        /* Swiper buttons styling - Main carousel */
        .news-image-carousel .swiper-button-next,
        .news-image-carousel .swiper-button-prev {
            color: #1a3a5f;
            background: rgba(255, 255, 255, 0.95);
            width: 48px;
            height: 48px;
            border-radius: 50%;
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
            transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
            backdrop-filter: blur(10px);
            border: 2px solid rgba(26, 58, 95, 0.1);
        }
        
        .news-image-carousel .swiper-button-next::after,
        .news-image-carousel .swiper-button-prev::after {
            font-size: 20px;
            font-weight: bold;
        }
        
        .news-image-carousel .swiper-button-next:hover,
        .news-image-carousel .swiper-button-prev:hover {
            background: #1a3a5f;
            color: white;
            transform: scale(1.15);
            box-shadow: 0 6px 20px rgba(26, 58, 95, 0.3);
            border-color: #1a3a5f;
        }
        
        .news-image-carousel .swiper-button-next:active,
        .news-image-carousel .swiper-button-prev:active {
            transform: scale(1.05);
        }
        
        /* Swiper buttons styling - Modal carousel */
        .news-modal-carousel .swiper-button-next,
        .news-modal-carousel .swiper-button-prev {
            color: white;
            background: rgba(0, 0, 0, 0.6);
            width: 48px;
            height: 48px;
            border-radius: 50%;
            box-shadow: 0 4px 12px rgba(0,0,0,0.3);
            transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
            backdrop-filter: blur(10px);
            border: 2px solid rgba(255, 255, 255, 0.2);
        }
        
        .news-modal-carousel .swiper-button-next::after,
        .news-modal-carousel .swiper-button-prev::after {
            font-size: 20px;
            font-weight: bold;
        }
        
        .news-modal-carousel .swiper-button-next:hover,
        .news-modal-carousel .swiper-button-prev:hover {
            background: rgba(0, 0, 0, 0.85);
            color: #FFC464;
            transform: scale(1.15);
            box-shadow: 0 6px 20px rgba(255, 196, 100, 0.4);
            border-color: #FFC464;
        }
        
        .news-modal-carousel .swiper-button-next:active,
        .news-modal-carousel .swiper-button-prev:active {
            transform: scale(1.05);
        }
        
        .news-modal-thumbnails .swiper-slide-thumb-active img {
            opacity: 1 !important;
            border: 2px solid #FFC464;
        }
        
        @media (max-width: 640px) {
            .news-image-carousel .swiper-button-next,
            .news-image-carousel .swiper-button-prev,
            .news-modal-carousel .swiper-button-next,
            .news-modal-carousel .swiper-button-prev {
                width: 40px;
                height: 40px;
            }
            
            .news-image-carousel .swiper-button-next::after,
            .news-image-carousel .swiper-button-prev::after,
            .news-modal-carousel .swiper-button-next::after,
            .news-modal-carousel .swiper-button-prev::after {
                font-size: 16px;
            }
        }

#toast {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.3s ease, transform 0.3s ease;
    }
    
    #modalImage {
        opacity: 1;
        transition: opacity 0.3s ease;
    }
    
    @media (max-width: 640px) {
        #prevImageBtn, #nextImageBtn {
            padding: 0.5rem;
        }
        
        #prevImageBtn svg, #nextImageBtn svg {
            width: 1.25rem;
            height: 1.25rem;
        }
    }