/**
 * Blog Widget - Melhorias de Responsividade
 * Sobrescreve estilos inline do widget
 */

/* Container Principal */
.blog-widget-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 20px !important;
}

@media (max-width: 768px) {
    .blog-widget-container {
        padding: 16px !important;
    }
}

@media (max-width: 480px) {
    .blog-widget-container {
        padding: 12px !important;
    }
}

/* Grid de Posts */
.blog-widget-posts-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
}

/* Desktop médio - 3 colunas */
@media (max-width: 1199px) and (min-width: 1024px) {
    .blog-widget-posts-grid {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }
}

/* Tablet - 2 colunas */
@media (max-width: 1023px) and (min-width: 640px) {
    .blog-widget-posts-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
}

/* Mobile - 1 coluna */
@media (max-width: 639px) {
    .blog-widget-posts-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

/* Cards */
.blog-widget-card {
    min-height: 300px !important;
    display: flex !important;
    flex-direction: column !important;
}

@media (max-width: 768px) {
    .blog-widget-card {
        min-height: 280px !important;
    }
}

@media (max-width: 480px) {
    .blog-widget-card {
        min-height: 260px !important;
    }
}

/* Título do Card */
.blog-widget-card-title {
    font-size: 1.25rem !important;
    line-height: 1.4 !important;
}

@media (max-width: 768px) {
    .blog-widget-card-title {
        font-size: 1.125rem !important;
    }
}

@media (max-width: 480px) {
    .blog-widget-card-title {
        font-size: 1rem !important;
    }
}

/* Categoria Badge */
.blog-widget-card-category {
    font-size: 0.75rem !important;
}

@media (max-width: 480px) {
    .blog-widget-card-category {
        font-size: 0.7rem !important;
    }
}

/* Link "Ler mais" */
.blog-widget-card-link {
    min-height: 44px !important;
    font-size: 0.95rem !important;
}

@media (max-width: 480px) {
    .blog-widget-card-link {
        font-size: 0.9rem !important;
    }
}

/* Imagem do Card */
.blog-widget-post-image {
    background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%) !important;
    position: relative !important;
}

.blog-widget-post-image img {
    height: 200px !important;
    object-fit: cover !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.blog-widget-post-image img[src] {
    opacity: 1 !important;
}

/* Placeholder animado */
.blog-widget-post-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.3) 50%,
        transparent 100%
    );
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
    pointer-events: none;
}

@keyframes shimmer {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

.blog-widget-post-image img[src] ~ .blog-widget-post-image::before {
    display: none;
}

@media (max-width: 768px) {
    .blog-widget-post-image img {
        height: 180px !important;
    }
}

@media (max-width: 480px) {
    .blog-widget-post-image img {
        height: 160px !important;
    }
}

/* Loading State */
.blog-widget-loading {
    padding: 40px 20px !important;
}

@media (max-width: 480px) {
    .blog-widget-loading {
        padding: 32px 16px !important;
    }
}

/* Touch Optimization */
@media (hover: none) and (pointer: coarse) {
    .blog-widget-card {
        /* Remove hover effect on touch devices */
        transform: none !important;
    }
    
    .blog-widget-card-link {
        min-height: 48px !important;
        padding: 12px !important;
    }
}

