/* ============================================================
   Les Pierres de Claude – Boutique et archives produits (template Elementor #210, filtres JetSmartFilters)
   Maquettes Claude Design « Boutique » et « Boutique mobile ». Seulement l'habillage des widgets JetSmartFilters
   (onglets pierres, listes à cocher, puces mobiles, tri, filtres actifs, prix) — la structure est dans Elementor.
   ============================================================ */
:root { --lpc-primary: var(--e-global-color-primary, #505841); --lpc-green: var(--e-global-color-01cc989, #7A8663); --lpc-text: var(--e-global-color-text, #3B3A36); --lpc-line: #E3DCCD; --lpc-line-2: #D9D3C5; --lpc-muted: #6B6B65; }
.jet-filter .jet-filter-label { display: none; }

/* Onglets pierres (filtre radio) */
.lpc-stone-tabs .jet-radio-list-wrapper fieldset { display: flex; gap: 4px; flex-wrap: wrap; border: 0; padding: 0; margin: 0; min-width: 0; }
.lpc-stone-tabs .jet-radio-list__row { margin: 0; }
.lpc-stone-tabs .jet-radio-list__item { margin: 0; display: block; }
.lpc-stone-tabs .jet-radio-list__input { position: absolute; opacity: 0; width: 0; height: 0; }
.lpc-stone-tabs .jet-radio-list__decorator { display: none !important; }
.lpc-stone-tabs .jet-radio-list__button { display: inline-flex !important; align-items: center; gap: 8px; height: 46px; padding: 0 18px; border: 1px solid transparent; border-bottom: 0; border-radius: 8px 8px 0 0; background: transparent; color: var(--lpc-muted); font-family: 'Sora', sans-serif; font-size: 14px; font-weight: 600; white-space: nowrap; cursor: pointer; transition: color .15s, background .15s; }
.lpc-stone-tabs .jet-radio-list__label { padding: 0 !important; margin: 0 !important; }
.lpc-stone-tabs .jet-filters-counter { font-family: 'Lato', sans-serif; font-size: 12px; font-weight: 400; opacity: .7; }
.lpc-stone-tabs .jet-radio-list__button:hover { color: var(--lpc-primary); }
.lpc-stone-tabs .jet-radio-list__input:checked + .jet-radio-list__button { background: #fff; color: var(--lpc-primary); border-color: var(--lpc-line); }

/* Colonne de filtres : listes à cocher */
.lpc-facets .lpc-reset .jet-remove-all-filters__button, .lpc-reset .jet-remove-all-filters__button { background: none; border: 0; padding: 0; font-family: 'Lato', sans-serif; font-size: 13px; font-weight: 700; color: var(--lpc-green); cursor: pointer; }
.lpc-facet fieldset.jet-checkboxes-list-wrapper, .lpc-facet .jet-checkboxes-list-wrapper fieldset { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.lpc-facet .jet-checkboxes-list__row { margin: 0; }
.lpc-facet .jet-checkboxes-list__item { display: flex; align-items: center; gap: 10px; margin: 0; padding: 4px 0; cursor: pointer; }
.lpc-facet .jet-checkboxes-list__input { position: absolute; opacity: 0; width: 0; height: 0; }
.lpc-facet .jet-checkboxes-list__button { display: flex !important; align-items: center; gap: 10px; width: 100%; }
.lpc-facet .jet-checkboxes-list__decorator { width: 18px; height: 18px; flex-shrink: 0; border-radius: 4px; border: 1.5px solid var(--lpc-line-2); background: #fff; display: inline-flex; align-items: center; justify-content: center; transition: background .15s, border-color .15s; }
.lpc-facet .jet-checkboxes-list__checked-icon { display: none; color: #fff; width: 12px; height: 12px; }
.lpc-facet .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator { background: var(--lpc-green); border-color: var(--lpc-green); }
.lpc-facet .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__checked-icon { display: block; }
.lpc-facet .jet-checkboxes-list__label { flex: 1; font-family: 'Lato', sans-serif; font-size: 14px; color: var(--lpc-text); padding: 0 !important; margin: 0 !important; }
.lpc-facet .jet-filters-counter { font-size: 12px; color: var(--lpc-muted); margin-left: auto; }
.lpc-facet .jet-filters-counter .value { font-size: inherit; }
.lpc-facet .jet-filter-row-disabled, .lpc-facet .jet-filter-row.jet-filter-row-disabled .jet-checkboxes-list__label { color: #B5B1A8; }

/* Prix */
.lpc-price .jet-range__slider__range { background: var(--lpc-green) !important; }
.lpc-price .jet-range__slider__input { accent-color: var(--lpc-green); }
.lpc-price .jet-range__values { font-family: 'Lato', sans-serif; font-size: 13px; color: var(--lpc-muted); }
.lpc-price .jet-range__values-max { font-weight: 700; color: var(--lpc-text); }

/* Tri : select habillé en bouton (chevron, gras en mobile) */
.lpc-sort .jet-select { position: relative; }
.lpc-sort select, .lpc-sort .jet-select__control { -webkit-appearance: none; appearance: none; height: 40px; border: 1px solid var(--lpc-line-2) !important; border-radius: 6px !important; padding: 0 38px 0 14px !important; font-family: 'Lato', sans-serif; font-size: 14px; font-weight: 700; color: var(--lpc-text); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23505841' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center !important; box-shadow: none !important; cursor: pointer; width: 100%; transition: border-color .15s; }
.lpc-sort select:hover, .lpc-sort select:focus { border-color: var(--lpc-green) !important; outline: none; }

/* Filtres actifs (puces) */
.lpc-active .jet-active-tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; min-height: 34px; }
.lpc-active .jet-active-tag { display: inline-flex; align-items: center; gap: 8px; height: 32px; padding: 0 12px; border: 1px solid var(--lpc-green); background: #F7F2E8; color: var(--lpc-primary); border-radius: 999px; font-family: 'Lato', sans-serif; font-size: 13px; font-weight: 700; margin: 0; cursor: pointer; }
.lpc-active .jet-active-tag__label, .lpc-active .jet-active-tag__label-separator { display: none; }
.lpc-active .jet-active-tag__remove { font-size: 14px; line-height: 1; opacity: .8; }
.lpc-active .jet-active-tag.jet-active-tag--clear, .lpc-active .jet-active-tags__clear { background: none; border: 0; color: var(--lpc-green); padding: 0; height: auto; }

/* Grille : message « aucun produit » */
.lpc-shop-grid .jet-listing-not-found { border: 1px dashed var(--lpc-line-2); border-radius: 8px; padding: 48px; text-align: center; font-family: 'Lato', sans-serif; font-size: 14px; color: var(--lpc-muted); }

/* Tiroir de filtres mobile (JetPopup) : puces */
.lpc-facet--chips fieldset.jet-checkboxes-list-wrapper, .lpc-facet--chips .jet-checkboxes-list-wrapper fieldset, .lpc-facet--chips .jet-radio-list-wrapper fieldset { display: flex; flex-direction: row; flex-wrap: wrap; gap: 8px; border: 0; padding: 0; margin: 0; }
.lpc-facet--chips .jet-checkboxes-list__item, .lpc-facet--chips .jet-radio-list__item { display: block; padding: 0; margin: 0; }
.lpc-facet--chips .jet-checkboxes-list__input, .lpc-facet--chips .jet-radio-list__input { position: absolute; opacity: 0; width: 0; height: 0; }
.lpc-facet--chips .jet-checkboxes-list__decorator, .lpc-facet--chips .jet-radio-list__decorator { display: none !important; }
.lpc-facet--chips .jet-checkboxes-list__button, .lpc-facet--chips .jet-radio-list__button { display: inline-flex !important; align-items: center; gap: 6px; height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--lpc-line-2); background: #fff; color: var(--lpc-text); font-family: 'Lato', sans-serif; font-size: 13px; font-weight: 700; width: auto; cursor: pointer; }
.lpc-facet--chips .jet-checkboxes-list__label, .lpc-facet--chips .jet-radio-list__label { flex: none; font-size: 13px; padding: 0 !important; margin: 0 !important; }
.lpc-facet--chips .jet-filters-counter { margin: 0; font-size: 11px; opacity: .7; }
.lpc-facet--chips .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button, .lpc-facet--chips .jet-radio-list__input:checked + .jet-radio-list__button { background: var(--lpc-primary); border-color: var(--lpc-primary); color: #fff; }
.lpc-facet--chips .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-filters-counter { color: #fff; }

@media (max-width: 1024px) {
  .lpc-stone-tabs .jet-radio-list-wrapper fieldset { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; gap: 6px; margin: 0 -16px; padding: 0 16px; }
  .lpc-stone-tabs .jet-radio-list-wrapper fieldset::-webkit-scrollbar { display: none; }
  .lpc-stone-tabs .jet-radio-list__button { height: 40px; padding: 0 14px; font-size: 13px; }
  .lpc-stone-tabs .jet-filters-counter { display: none; }
  .lpc-sort select, .lpc-sort .jet-select__control { height: 44px; }
  .lpc-active .jet-active-tags { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .lpc-active .jet-active-tags::-webkit-scrollbar { display: none; }
  .lpc-active .jet-active-tag { flex-shrink: 0; }
  .lpc-filters-open .elementor-button { height: 44px; }
  .lpc-filters-open .elementor-button-content-wrapper { align-items: center; }
}

/* Longue liste (sous-pierres) : défilement interne */
.lpc-facet--long fieldset.jet-checkboxes-list-wrapper, .lpc-facet--long .jet-checkboxes-list-wrapper fieldset { max-height: 260px; overflow-y: auto; padding-right: 4px; scrollbar-width: thin; }
/* Filtres actifs : le libellé « Active tags » et la puce « Tout effacer » sont gérés par le widget « Tout effacer » */
.lpc-active .jet-active-tags__label { display: none; }
/* Barre outils : filtres actifs à gauche (masqués par JetSmartFilters quand vides), tri à droite */
.lpc-toolbar { justify-content: flex-end !important; }
.lpc-toolbar .lpc-active { margin-right: auto; }

/* Résultats de recherche (modèle Elementor construit par tools/search-elementor.php) */
.lpc-search__summary { margin: 0; font-family: 'Lato', sans-serif; font-size: 15px; color: var(--lpc-muted); }
.lpc-search__summary--none { color: var(--lpc-text); }
.lpc-search__grid .jet-listing-not-found { display: none; } /* le résumé du bandeau explique déjà l'absence de résultat */
.lpc-search__help a { color: var(--lpc-green); font-weight: 700; }
