/**
 * Ensemble Elementor Frontend Styles
 * 
 * Additional styles for Elementor widgets
 * 
 * @package Ensemble
 * @since 3.1.0
 */

/* ============================================
   ELEMENTOR WIDGET WRAPPER OVERRIDES
   ============================================ */

/* Ensure Ensemble styles work within Elementor columns */
.elementor-widget-ensemble-events-grid .es-grid,
.elementor-widget-ensemble-artists-grid .es-grid,
.elementor-widget-ensemble-locations-grid .es-grid {
    display: grid;
    width: 100%;
}

/* Fix card links in Elementor */
.elementor-widget .es-card a {
    text-decoration: none;
}

/* Calendar widget full width */
.elementor-widget-ensemble-calendar .es-calendar {
    width: 100%;
}

/* ============================================
   RESPONSIVE ADJUSTMENTS
   ============================================ */

/* Elementor breakpoints integration */
@media (max-width: 1024px) {
    .elementor-widget .es-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 767px) {
    .elementor-widget .es-grid {
        grid-template-columns: 1fr !important;
    }
    
    .elementor-widget .es-calendar-view-buttons {
        flex-wrap: wrap;
    }
}

/* ============================================
   ELEMENTOR PREVIEW PLACEHOLDER
   ============================================ */

.es-elementor-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    background: #f5f5f5;
    border: 2px dashed #ccc;
    border-radius: 8px;
    padding: 40px 20px;
    text-align: center;
}

.es-elementor-placeholder-icon {
    font-size: 48px;
    color: #999;
    margin-bottom: 15px;
}

.es-elementor-placeholder-text {
    font-size: 14px;
    color: #666;
}

/* ============================================
   DARK MODE SUPPORT (if theme uses dark mode)
   ============================================ */

@media (prefers-color-scheme: dark) {
    .es-elementor-placeholder {
        background: #2d2d2d;
        border-color: #444;
    }
    
    .es-elementor-placeholder-icon {
        color: #888;
    }
    
    .es-elementor-placeholder-text {
        color: #aaa;
    }
}
