/**
 * WaveformPlayer Grid Layout
 * Minimal CSS for grid-based audio player layouts
 */

/* ==========================================================================
   Gallery Grid
   ========================================================================== */

.waveform-gallery {
    display: grid;
    grid-template-columns: repeat(var(--waveform-columns, 1), 1fr);
    gap: var(--waveform-gap, 20px);
    width: 100%;
}

.waveform-gallery__item {
    min-width: 0; /* Prevent grid blowout */
}

/* ==========================================================================
   Multiple Galleries Container
   ========================================================================== */

.waveform-galleries {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.waveform-galleries__section {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.waveform-galleries__title {
    margin: 0;
    padding: 0;
}

/* ==========================================================================
   Responsive - Tablet
   ========================================================================== */

@media (max-width: 768px) {
    .waveform-gallery {
        grid-template-columns: repeat(min(var(--waveform-columns, 1), 2), 1fr);
    }
    
    .waveform-gallery--columns-3,
    .waveform-gallery--columns-4,
    .waveform-gallery--columns-5,
    .waveform-gallery--columns-6 {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ==========================================================================
   Responsive - Mobile
   ========================================================================== */

@media (max-width: 480px) {
    .waveform-gallery {
        grid-template-columns: 1fr;
    }
    
    .waveform-gallery--columns-2,
    .waveform-gallery--columns-3,
    .waveform-gallery--columns-4,
    .waveform-gallery--columns-5,
    .waveform-gallery--columns-6 {
        grid-template-columns: 1fr;
    }
    
    .waveform-galleries {
        gap: 30px;
    }
}
