/* MyPowerly Widget Elementor Integration - Frontend Styles */

/* Force full width for Elementor widgets */
.elementor-widget-ptmpgb_widget {
    width: 100% !important;
}

.elementor-widget-ptmpgb_widget .elementor-widget-container {
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    padding: 0 !important;
}

/* MyPowerly widget container overrides */
.ptmpgb-elementor-widget-wrapper {
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
}

/* Force horizontal layout for pricing tables */
.ptmpgb-elementor-widget-wrapper > div[id],
.ptmpgb-elementor-widget-wrapper > div[data-widget-id] {
    width: 100% !important;
    max-width: none !important;
    display: block !important;
}

/* Target common MyPowerly pricing table structures */
.ptmpgb-elementor-widget-wrapper .pricing-table,
.ptmpgb-elementor-widget-wrapper .pricing-plans,
.ptmpgb-elementor-widget-wrapper .pricing-grid,
.ptmpgb-elementor-widget-wrapper [class*="pricing"],
.ptmpgb-elementor-widget-wrapper [class*="plan"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: none !important;
}

/* Individual pricing plan items */
.ptmpgb-elementor-widget-wrapper .pricing-table > div,
.ptmpgb-elementor-widget-wrapper .pricing-plans > div,
.ptmpgb-elementor-widget-wrapper .pricing-grid > div,
.ptmpgb-elementor-widget-wrapper [class*="pricing"] > div,
.ptmpgb-elementor-widget-wrapper [class*="plan"]:not([class*="pricing"]) {
    flex: 1 1 auto !important;
    min-width: 250px !important;
    max-width: calc(33.333% - 20px) !important;
    margin: 0 10px !important;
}

/* Responsive behavior */
@media (max-width: 1024px) {
    .ptmpgb-elementor-widget-wrapper [class*="pricing"] > div,
    .ptmpgb-elementor-widget-wrapper [class*="plan"]:not([class*="pricing"]) {
        max-width: calc(50% - 20px) !important;
    }
}

@media (max-width: 768px) {
    .ptmpgb-elementor-widget-wrapper .pricing-table,
    .ptmpgb-elementor-widget-wrapper .pricing-plans,
    .ptmpgb-elementor-widget-wrapper .pricing-grid,
    .ptmpgb-elementor-widget-wrapper [class*="pricing"],
    .ptmpgb-elementor-widget-wrapper [class*="plan"] {
        flex-direction: column !important;
    }
    
    .ptmpgb-elementor-widget-wrapper [class*="pricing"] > div,
    .ptmpgb-elementor-widget-wrapper [class*="plan"]:not([class*="pricing"]) {
        max-width: 100% !important;
        margin: 10px 0 !important;
    }
}

/* Override any theme or Elementor constraints */
.elementor-section .ptmpgb-elementor-widget-wrapper,
.elementor-container .ptmpgb-elementor-widget-wrapper,
.elementor-column .ptmpgb-elementor-widget-wrapper {
    width: 100% !important;
    max-width: none !important;
}