/**
 * XoXo Cards - Styles responsive
 * 
 * @package XoXo_Cards
 * @since 2.0.0
 */

/* ============================
   Tablette (max 1024px)
   ============================ */
@media (max-width: 1024px) {
    .xoxo-cards-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }
    
    .xoxo-packs-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .xoxo-exchange-columns {
        gap: 16px;
    }
    
    .xoxo-generator-layout {
        gap: 24px;
    }
    
    .xoxo-generator-preview {
        width: 220px;
    }
}

/* ============================
   Mobile paysage (max 768px)
   ============================ */
@media (max-width: 768px) {
    .xoxo-cards-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    
    .xoxo-stats-bar {
        gap: 8px;
        padding: 16px;
    }
    
    .xoxo-stat-item {
        min-width: 80px;
    }
    
    .xoxo-stat-value {
        font-size: 20px;
    }
    
    .xoxo-stat-label {
        font-size: 10px;
    }
    
    .xoxo-filters {
        gap: 6px;
    }
    
    .xoxo-filter-btn {
        padding: 6px 12px;
        font-size: 12px;
    }
    
    .xoxo-tabs {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    
    .xoxo-tabs::-webkit-scrollbar {
        display: none;
    }
    
    .xoxo-tab {
        padding: 10px 16px;
        font-size: 13px;
        white-space: nowrap;
    }
    
    .xoxo-exchange-columns {
        flex-direction: column;
    }
    
    .xoxo-exchange-balance {
        flex-direction: row;
        min-width: auto;
        gap: 12px;
    }
    
    .xoxo-generator-layout {
        flex-direction: column;
    }
    
    .xoxo-generator-preview {
        width: 100%;
        order: -1;
    }
    
    .xoxo-card-preview {
        width: 200px;
        height: 280px;
        margin: 0 auto;
        position: static;
    }
    
    .xoxo-form-row {
        flex-direction: column;
        gap: 0;
    }
    
    .xoxo-points-amount {
        font-size: 36px;
    }
    
    .xoxo-points-details {
        gap: 16px;
    }
    
    .xoxo-packs-grid {
        grid-template-columns: 1fr;
    }
    
    .xoxo-pack-actions {
        flex-direction: column;
    }
    
    .xoxo-puzzles-grid {
        grid-template-columns: 1fr;
    }
    
    .xoxo-modal-content {
        padding: 20px;
        width: 95%;
    }
    
    .xoxo-pack-cards-reveal {
        gap: 8px;
    }
    
    .xoxo-reveal-card {
        width: 90px;
    }
    
    .xoxo-form-inline {
        flex-direction: column;
    }
}

/* ============================
   Mobile portrait (max 480px)
   ============================ */
@media (max-width: 480px) {
    .xoxo-cards-collection,
    .xoxo-cards-album,
    .xoxo-cards-packs,
    .xoxo-cards-exchanges,
    .xoxo-cards-puzzles,
    .xoxo-cards-points,
    .xoxo-cards-scanner,
    .xoxo-cards-my-cards,
    .xoxo-promo-code-form,
    .xoxo-card-generator,
    .xoxo-leaderboard {
        padding: 12px;
    }
    
    .xoxo-cards-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
    
    .xoxo-card-info {
        padding: 8px;
    }
    
    .xoxo-card-name {
        font-size: 12px;
    }
    
    .xoxo-card-level {
        font-size: 9px;
        padding: 1px 6px;
    }
    
    .xoxo-card-stats-mini {
        display: none;
    }
    
    .xoxo-stats-bar {
        flex-wrap: wrap;
        gap: 4px;
    }
    
    .xoxo-stat-item {
        min-width: 60px;
        flex: 0 0 calc(33.33% - 4px);
    }
    
    .xoxo-stat-value {
        font-size: 18px;
    }
    
    .xoxo-btn {
        padding: 8px 16px;
        font-size: 13px;
    }
    
    .xoxo-btn-large {
        padding: 12px 20px;
        font-size: 14px;
    }
    
    .xoxo-reveal-card {
        width: 70px;
    }
    
    .xoxo-leaderboard-table th,
    .xoxo-leaderboard-table td {
        padding: 8px;
        font-size: 13px;
    }
}
