/* armor.css — Blindaje del CSS del front frente a temas/page builders (Astra,
 * Elementor, etc.). Prioritario en lo ESTRUCTURAL sin tocar lo PERSONALIZABLE
 * (fuente, colores y tamaño de títulos: los gestionan Apariencia y las .rossa-*).
 * :where() tiene especificidad 0, así las reglas .rossa-* + !important siguen
 * ganando. No vence a un tema con !important en genéricos (eso sería @layer). */

/* A. Anclaje: base fija en px para que los em del plugin no dependan del tema. */
.rossa-shortcode,
.rossa-efd-widget-searchfilter,
.rossa-datepicker-container,
.rossa-datepicker-wrapper,
.rossa-efd-modal,
.rossa-modal,
.rossa-alt-availabilities {
    font-size: 16px !important;
}
.rossa-shortcode,
.rossa-efd-widget-searchfilter,
.rossa-datepicker-container,
.rossa-datepicker-wrapper,
.rossa-efd-modal,
.rossa-modal,
.rossa-alt-availabilities {
    line-height: normal; /* sin !important: lo redefinen las clases del plugin */
}

/* B. Blindaje estructural: :where() (especificidad 0) + !important. */

/* B1. Box model: border-box para evitar desbordes y scroll horizontal. */
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-datepicker-container,
       .rossa-datepicker-wrapper,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) :where(*, *::before, *::after) {
    box-sizing: border-box !important;
}

/* B2. Iconos SVG outline (lucide): a línea, con el color heredado. */
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-datepicker-container,
       .rossa-datepicker-wrapper,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) svg[fill="none"],
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-datepicker-container,
       .rossa-datepicker-wrapper,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) svg[fill="none"] :is(path, circle, rect, line, polyline, polygon, ellipse) {
    fill: none !important;
}
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-datepicker-container,
       .rossa-datepicker-wrapper,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) svg[fill="none"] {
    stroke: currentColor !important;
}

/* B3. Listas: sin bullets ni sangría (.splide__list lo gestiona Splide). */
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) :where(ul, ol, li) {
    list-style: none !important;
}
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) :where(ul, ol):not(.splide__list) {
    margin: 0 !important;
    padding: 0 !important;
}

/* B4. h/p: sin margin ni uppercase/letter-spacing del tema (no toca tamaño/peso/color). */
:where(.rossa-shortcode,
       .rossa-efd-widget-searchfilter,
       .rossa-datepicker-container,
       .rossa-efd-modal,
       .rossa-modal,
       .rossa-alt-availabilities) :where(h1, h2, h3, h4, h5, h6, p) {
    margin: 0 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
