/**
 * Optimisation Mobile GoJardin Compagnons
 * Responsive design, slider adaptatif, layout mobile-first
 */

/* Mobile-first responsive */
@media (max-width: 1024px) {
    .gj-slider {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 1rem;
    }

    .gj-top10-cards {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 768px) {
    /* Top 9 slider - 2-3 colonnes sur mobile */
    .gj-slider {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.8rem;
    }

    .gj-slide {
        padding: 0.8rem;
    }

    .gj-slide .gj-thumb {
        height: 100px;
    }

    .gj-slide .gj-info {
        padding: 0.5rem;
    }

    .gj-slide .gj-name {
        font-size: 0.85rem;
    }

    .gj-slide .gj-count {
        font-size: 1rem;
    }

    /* Top 10 cards - 1 colonne sur mobile */
    .gj-top10-cards {
        grid-template-columns: 1fr;
    }

    .gj-card10 {
        padding: 1rem;
    }

    /* Quiz responsive */
    .gj-quiz {
        padding: 1rem;
        margin: 1rem 0;
    }

    .gj-quiz h2 {
        font-size: 1.3rem;
    }

    .gj-options button {
        padding: 0.6rem;
        font-size: 0.9rem;
    }

    /* Filtres - stack vertical */
    .gj-filters-bar {
        grid-template-columns: 1fr;
    }

    /* Calendrier */
    .gj-calendar-events {
        grid-template-columns: 1fr;
    }

    /* Dashboard */
    .gj-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gj-share-buttons {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    /* Extra small screens */
    .gj-slider {
        grid-template-columns: 1fr;
    }

    .gj-slide .gj-info {
        display: none;
    }

    .gj-quiz {
        padding: 0.8rem;
    }

    .gj-quiz h2 {
        font-size: 1.1rem;
    }

    .gj-options {
        gap: 0.3rem;
    }

    .gj-options button {
        padding: 0.5rem;
        font-size: 0.8rem;
    }

    .gj-stats-grid {
        grid-template-columns: 1fr;
    }

    .gj-stat-card {
        padding: 1rem;
    }

    .gj-stat-value {
        font-size: 1.5rem;
    }

    .gj-filters-bar {
        gap: 0.5rem;
    }

    .gj-btn-primary, .gj-btn-secondary {
        width: 100%;
        padding: 0.6rem;
    }
}

/* Touch-friendly buttons */
@media (hover: none) {
    button {
        min-height: 44px;
        min-width: 44px;
    }
}

/* Amélioration lisibilité sur petits écrans */
@media (max-width: 600px) {
    .gj-quiz .gj-question {
        font-size: 0.95rem;
    }

    .gj-calendar-controls {
        flex-wrap: wrap;
        gap: 1rem;
    }

    .gj-calendar-controls h3 {
        width: 100%;
        text-align: center;
    }
}
