/**
 * Tiger Visibility — frontend.
 *
 * Only one job: hide the element once JS has evaluated client-side rules.
 * `display: none` is intentional — visibility:hidden still occupies layout,
 * which would leave a hole in the page for matched-and-hidden elements.
 *
 * The class is added in two waves:
 *  - JS sets `.tiger-vis-hidden` after evaluation. This is the live state.
 *  - To avoid a flash of the element before JS runs, elements that carry
 *    client-side rules are rendered with `tiger-vis-pending`. JS removes that
 *    class once it's decided whether to also add `tiger-vis-hidden`. The
 *    pending state is `visibility: hidden` (keeps layout, no flash) — once
 *    JS resolves, either the element shows normally or fully unmounts.
 */

.tiger-vis.tiger-vis-pending {
    visibility: hidden;
}
.tiger-vis-hidden {
    display: none !important;
}

/* Editor-only: never hide in the editor, otherwise the user can't select &
   edit conditional elements. Elementor toggles body.elementor-editor-active
   on the preview iframe. */
body.elementor-editor-active .tiger-vis-hidden,
body.elementor-editor-active .tiger-vis-pending {
    display: revert !important;
    visibility: visible !important;
    outline: 1px dashed rgba(99, 102, 241, 0.55);
    outline-offset: 2px;
}
