/* v0.1.14: Full-width default for FullControl widget wrappers in Elementor
 * Flex Containers. Elementor may otherwise let a widget inherit an auto-sized
 * --container-widget-width, causing a shrink-to-fit column on narrow previews.
 *
 * Only widgets with DEFAULT width receive this fallback. Elementor's explicit
 * Inline (auto) and Custom (initial) controls keep their original semantics,
 * and generated per-element CSS/inline values remain authoritative.
 * No changes are made to parent Containers or to inner preset/card geometry.
 */
:where(.e-con, .e-con-inner) > :where(
    .elementor-widget-fcwidget_advanced_heading,
    .elementor-widget-fcwidget_advanced_icon_box,
    .elementor-widget-fcwidget_advanced_image_box,
    .elementor-widget-fcwidget_master_accordion,
    .elementor-widget-fcwidget_master_pricing_table,
    .elementor-widget-fcwidget_master_reviews,
    .elementor-widget-fcwidget_master_table,
    .elementor-widget-fcwidget_master_list,
    .elementor-widget-fcwidget_unlimited_design_button,
    .elementor-widget-fcwidget_all_in_one_divider
):not(.elementor-widget__width-auto):not(.elementor-widget__width-initial) {
    --container-widget-width: 100%;
    width: var(--container-widget-width, 100%);
    box-sizing: border-box;
    min-width: 0;
}

/* FullControl Widgets v0.1.11 — Elementor flex child sizing compatibility.
 * Applies only when a FullControl widget is a direct child of an Elementor
 * flex container. Never changes the parent .e-con display or direction.
 * :where() keeps these defaults below Elementor's explicit per-element CSS,
 * preserving any responsive width/grow/height values chosen by the editor.
 */
@media (max-width: 1024px) {
  :where(.e-con, .e-con-inner) > :where(
    .elementor-widget-fcwidget_advanced_heading,
    .elementor-widget-fcwidget_advanced_icon_box,
    .elementor-widget-fcwidget_advanced_image_box,
    .elementor-widget-fcwidget_master_accordion,
    .elementor-widget-fcwidget_master_pricing_table,
    .elementor-widget-fcwidget_master_reviews,
    .elementor-widget-fcwidget_master_table,
    .elementor-widget-fcwidget_master_list,
    .elementor-widget-fcwidget_unlimited_design_button,
    .elementor-widget-fcwidget_all_in_one_divider
  ) {
    /* Replace only the inherited default, not a per-widget saved override. */
    --container-widget-height: auto;
    --container-widget-flex-grow: 0;
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
  }

  :where(.e-con, .e-con-inner) > :where(
    .elementor-widget-fcwidget_advanced_heading,
    .elementor-widget-fcwidget_advanced_icon_box,
    .elementor-widget-fcwidget_advanced_image_box,
    .elementor-widget-fcwidget_master_accordion,
    .elementor-widget-fcwidget_master_pricing_table,
    .elementor-widget-fcwidget_master_reviews,
    .elementor-widget-fcwidget_master_table,
    .elementor-widget-fcwidget_master_list,
    .elementor-widget-fcwidget_unlimited_design_button,
    .elementor-widget-fcwidget_all_in_one_divider
  ) > .elementor-widget-container {
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
  }
}

/* v0.1.13: The JS applies either a temporary probe or a durable fix only
   after inspecting actual rendered content. Do not force unrelated widgets. */
@media (max-width: 1024px) {
  .e-con > .elementor-widget:is(.fcwidget-widget-fit-probe, .fcwidget-widget-autofit),
  .e-con-inner > .elementor-widget:is(.fcwidget-widget-fit-probe, .fcwidget-widget-autofit) {
    --container-widget-height: auto !important;
    --container-widget-flex-grow: 0 !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .e-con > .elementor-widget:is(.fcwidget-widget-fit-probe, .fcwidget-widget-autofit) > .elementor-widget-container,
  .e-con-inner > .elementor-widget:is(.fcwidget-widget-fit-probe, .fcwidget-widget-autofit) > .elementor-widget-container {
    height: auto !important;
    min-height: 0 !important;
  }
}
