/* Quick Columns
   The row is the flex parent; each child is a real Elementor container, so its
   own Width control governs how much space it takes when side by side. */
.elementor-widget-tl-quick-columns .tlqc-row {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    width: 100%;

    /* Read by the Direction control's child selector. Only the stacked values
       are defined: side-by-side deliberately has no entry so it falls back to
       each column's own --width and the set proportions survive. Custom
       properties inherit, so the columns pick these up from here. */
    --tlqc-w-column: 100%;
    --tlqc-w-column-reverse: 100%;
}

/* Children are containers Elementor created, not markup from this plugin.
   flex-basis is auto so each column starts from its own Width setting.
   flex-shrink is 1: when widths total 100% nothing shrinks and the set
   percentages are exact, but once a Gap is added the columns give up that
   space in proportion instead of pushing the last one out of the row.
   min-width:0 stops a wide child (an image, a long word) from forcing the
   column past its set width. */
.elementor-widget-tl-quick-columns .tlqc-row > .e-con {
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto;
    min-width: 0;
}
