/* ========================================================================
   EL ARTE DEL PLACER — FILTRO LUXURY REBUILD v10.39
   Capa independiente cargada DESPUÉS de style.css.
   Corrige desbordamientos, inputs globales, checkboxes gigantes y móvil.
   ======================================================================== */

:root{
  --eap-f-bg:#fffdfa;
  --eap-f-bg-soft:#fbf4f6;
  --eap-f-ink:#24171e;
  --eap-f-text:#43313a;
  --eap-f-muted:#82727a;
  --eap-f-line:#eadde2;
  --eap-f-line-strong:#dcc7d0;
  --eap-f-rose:#c92f69;
  --eap-f-rose-dark:#951c4b;
  --eap-f-rose-soft:#fff0f5;
  --eap-f-gold:#b38a53;
  --eap-f-shadow:0 24px 70px rgba(48,24,36,.12);
  --eap-f-shadow-soft:0 10px 30px rgba(48,24,36,.07);
  --eap-f-radius:26px;
  --eap-f-control-radius:15px;
}

/* Base de catálogo: evita que el panel fuerce el ancho del grid. */
[data-live-catalog],
.catalog-layout,
.pm5-catalog-layout,
.catalog-layout > *,
.pm5-catalog-layout > *{
  min-width:0!important;
  max-width:100%;
  box-sizing:border-box;
}

@media (min-width:901px){
  .catalog-layout,
  .pm5-catalog-layout{
    display:grid!important;
    grid-template-columns:minmax(270px,308px) minmax(0,1fr)!important;
    align-items:start!important;
    gap:28px!important;
  }

  .filters-wrap{
    position:sticky!important;
    top:92px!important;
    z-index:14!important;
    width:100%!important;
    min-width:0!important;
    max-height:calc(100vh - 112px)!important;
  }
}

/* Barra superior: filtro y orden siempre alineados. */
.eap-catalog-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  min-height:62px!important;
  margin:18px 0 22px!important;
  padding:8px 10px!important;
  border:1px solid rgba(88,52,69,.10)!important;
  border-radius:20px!important;
  background:rgba(255,253,251,.92)!important;
  box-shadow:0 13px 38px rgba(48,24,36,.06)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.eap-sort-form,
.eap-sort-form label{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
}

.eap-sort-form{margin:0!important}
.eap-sort-form label{gap:10px!important}
.eap-sort-label{
  color:var(--eap-f-muted)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}

.eap-sort-form select{
  width:auto!important;
  min-width:185px!important;
  max-width:240px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0 42px 0 15px!important;
  border:1px solid var(--eap-f-line)!important;
  border-radius:14px!important;
  background-color:#fff!important;
  color:var(--eap-f-ink)!important;
  box-shadow:0 5px 16px rgba(48,24,36,.045)!important;
  font:700 13px/1.2 Montserrat,Arial,sans-serif!important;
  outline:none!important;
}

.eap-sort-form select:focus{
  border-color:rgba(201,47,105,.55)!important;
  box-shadow:0 0 0 4px rgba(201,47,105,.09)!important;
}

.eap-filter-trigger{
  display:none!important;
  position:relative!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-width:145px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#d23b76 0%,#a51f54 100%)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(166,31,84,.24),inset 0 1px 0 rgba(255,255,255,.24)!important;
  font:850 13px/1 Montserrat,Arial,sans-serif!important;
  letter-spacing:.015em!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}

.eap-filter-trigger:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 15px 32px rgba(166,31,84,.29),inset 0 1px 0 rgba(255,255,255,.28)!important;
}

.eap-filter-trigger svg{
  width:20px!important;
  height:20px!important;
  flex:0 0 20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
}

.eap-filter-count{
  display:grid!important;
  place-items:center!important;
  min-width:22px!important;
  height:22px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--eap-f-rose-dark)!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
}
.eap-filter-count[hidden]{display:none!important}

/* Panel premium. */
.filters-wrap,
.eap-premium-filters,
.eap-premium-filters *{box-sizing:border-box}

.eap-premium-filters{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  max-height:calc(100vh - 112px)!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(97,56,76,.13)!important;
  border-radius:var(--eap-f-radius)!important;
  background:
    radial-gradient(circle at 100% 0,rgba(201,47,105,.10),transparent 31%),
    radial-gradient(circle at 0 100%,rgba(179,138,83,.07),transparent 28%),
    linear-gradient(145deg,#fff 0%,#fffdfb 59%,#fbf3f6 100%)!important;
  box-shadow:var(--eap-f-shadow)!important;
  color:var(--eap-f-text)!important;
  isolation:isolate!important;
}

.eap-premium-filters::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  z-index:-1;
  height:5px;
  background:linear-gradient(90deg,var(--eap-f-gold),#e5b1c6 48%,var(--eap-f-rose));
}

.eap-filter-heading{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  flex:0 0 auto!important;
  min-height:105px!important;
  margin:0!important;
  padding:25px 23px 20px!important;
  border:0!important;
  border-bottom:1px solid var(--eap-f-line)!important;
  background:rgba(255,255,255,.54)!important;
}

.eap-filter-title-wrap{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}

.eap-filter-eyebrow,
.eap-filter-label{
  display:block!important;
  margin:0!important;
  color:var(--eap-f-rose)!important;
  font:900 10px/1.25 Montserrat,Arial,sans-serif!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}

.eap-filter-heading strong{
  display:block!important;
  margin:0!important;
  color:var(--eap-f-ink)!important;
  font:700 34px/1.02 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.045em!important;
}

.eap-filter-subtitle{
  color:var(--eap-f-muted)!important;
  font:650 11px/1.25 Montserrat,Arial,sans-serif!important;
}

.eap-filter-heading-actions{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex:0 0 auto!important;
}

.eap-filter-clear,
.eap-filter-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  margin:0!important;
  border:1px solid var(--eap-f-line)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--eap-f-rose-dark)!important;
  box-shadow:0 5px 16px rgba(48,24,36,.04)!important;
  text-decoration:none!important;
  cursor:pointer!important;
}

.eap-filter-clear{
  padding:0 11px!important;
  font:850 10px/1 Montserrat,Arial,sans-serif!important;
  letter-spacing:.02em!important;
}

.eap-filter-clear:hover,
.eap-filter-close:hover{
  border-color:rgba(201,47,105,.36)!important;
  background:var(--eap-f-rose-soft)!important;
}

.eap-filter-close{
  display:none!important;
  width:36px!important;
  min-width:36px!important;
  height:36px!important;
  padding:0!important;
}
.eap-filter-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}

.eap-filter-scroll{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  padding:21px 23px 20px!important;
  scrollbar-width:thin;
  scrollbar-color:#d9bbc7 transparent;
}
.eap-filter-scroll::-webkit-scrollbar{width:6px}
.eap-filter-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#d9bbc7}
.eap-filter-scroll::-webkit-scrollbar-track{background:transparent}

/* Anula reglas globales que inflaban inputs y labels. */
.eap-premium-filters label,
.eap-premium-filters .filter-group,
.eap-premium-filters .filter-check{
  width:auto!important;
  max-width:none!important;
  height:auto!important;
  min-height:0;
  margin:0!important;
  padding:0;
  border:0;
  background:transparent;
}

.eap-filter-search{
  display:block!important;
  margin:0!important;
}

.eap-filter-search-control{
  position:relative!important;
  display:block!important;
  width:100%!important;
  margin-top:10px!important;
}

.eap-filter-search-control > svg{
  position:absolute!important;
  left:15px!important;
  top:50%!important;
  z-index:2!important;
  width:20px!important;
  height:20px!important;
  transform:translateY(-50%)!important;
  fill:none!important;
  stroke:#8c7882!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  pointer-events:none!important;
}

.eap-premium-filters .eap-filter-search input[type="search"]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:52px!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 15px 0 46px!important;
  border:1px solid var(--eap-f-line-strong)!important;
  border-radius:var(--eap-f-control-radius)!important;
  background:#fff!important;
  color:var(--eap-f-ink)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 20px rgba(48,24,36,.04)!important;
  font:650 13px/1.2 Montserrat,Arial,sans-serif!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  outline:none!important;
}

.eap-premium-filters .eap-filter-search input[type="search"]::placeholder{color:#9a8991!important;opacity:1!important}
.eap-premium-filters .eap-filter-search input[type="search"]:focus{
  border-color:rgba(201,47,105,.56)!important;
  box-shadow:0 0 0 4px rgba(201,47,105,.09),0 10px 24px rgba(48,24,36,.05)!important;
}
.eap-premium-filters input[type="search"]::-webkit-search-cancel-button{cursor:pointer}

/* Conmutadores premium. */
.eap-filter-switches{
  display:grid!important;
  gap:8px!important;
  margin:18px 0 0!important;
  padding:0!important;
  border:0!important;
}

.eap-premium-filters .eap-filter-toggle-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 44px!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  min-width:0!important;
  min-height:58px!important;
  padding:9px 10px!important;
  border:1px solid #efe3e7!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.78)!important;
  box-shadow:0 7px 20px rgba(48,24,36,.035)!important;
  cursor:pointer!important;
  transition:border-color .18s ease,background .18s ease,transform .18s ease!important;
}

.eap-premium-filters .eap-filter-toggle-row:hover{
  border-color:#e2c9d3!important;
  background:#fff!important;
  transform:translateY(-1px)!important;
}

.eap-filter-row-icon{
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  border-radius:12px!important;
  background:linear-gradient(145deg,#fff5f8,#f9e9ef)!important;
  color:var(--eap-f-rose)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.eap-filter-row-icon svg{
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.eap-filter-row-copy{
  min-width:0!important;
  color:var(--eap-f-text)!important;
  font:750 13px/1.35 Montserrat,Arial,sans-serif!important;
  overflow-wrap:anywhere!important;
}

.eap-premium-filters .eap-filter-checkbox{
  position:absolute!important;
  right:10px!important;
  top:50%!important;
  z-index:3!important;
  display:block!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:26px!important;
  min-height:26px!important;
  max-height:26px!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  opacity:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
}

.eap-filter-checkmark{
  position:relative!important;
  grid-column:3!important;
  display:block!important;
  width:42px!important;
  height:24px!important;
  margin:0!important;
  border:1px solid #ccb9c1!important;
  border-radius:999px!important;
  background:#eee5e8!important;
  box-shadow:inset 0 2px 4px rgba(47,24,35,.07)!important;
  pointer-events:none!important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}

.eap-filter-checkmark > span{
  position:absolute!important;
  left:3px!important;
  top:3px!important;
  display:block!important;
  width:16px!important;
  height:16px!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 2px 6px rgba(47,24,35,.2)!important;
  transition:transform .18s ease!important;
}

.eap-filter-checkbox:checked + .eap-filter-checkmark{
  border-color:var(--eap-f-rose)!important;
  background:linear-gradient(135deg,var(--eap-f-rose),var(--eap-f-rose-dark))!important;
  box-shadow:0 7px 17px rgba(166,31,84,.22),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.eap-filter-checkbox:checked + .eap-filter-checkmark > span{transform:translateX(18px)!important}
.eap-filter-checkbox:focus-visible + .eap-filter-checkmark{outline:3px solid rgba(201,47,105,.18)!important;outline-offset:3px!important}

/* Secciones, precio y selects. */
.eap-premium-filters .eap-filter-section{
  display:block!important;
  width:100%!important;
  margin:20px 0 0!important;
  padding:20px 0 0!important;
  border:0!important;
  border-top:1px solid var(--eap-f-line)!important;
}

.eap-filter-section-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.eap-filter-section-icon{
  display:grid!important;
  place-items:center!important;
  width:27px!important;
  height:27px!important;
  border-radius:9px!important;
  background:var(--eap-f-rose-soft)!important;
  color:var(--eap-f-rose-dark)!important;
  font:850 12px/1 Montserrat,Arial,sans-serif!important;
}

.eap-price-inputs{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  margin:11px 0 0!important;
}

.eap-price-separator{
  display:block!important;
  width:12px!important;
  height:1px!important;
  margin:auto!important;
  background:#cbb7c0!important;
}

.eap-premium-filters .eap-price-field{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto 25px!important;
  align-items:center!important;
  gap:3px 6px!important;
  width:100%!important;
  min-width:0!important;
  min-height:67px!important;
  padding:9px 10px!important;
  border:1px solid var(--eap-f-line-strong)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(48,24,36,.035)!important;
}

.eap-price-field small{
  grid-column:1/-1!important;
  color:var(--eap-f-muted)!important;
  font:800 9px/1.2 Montserrat,Arial,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.eap-price-field > span{
  color:#75636c!important;
  font:800 14px/1 Montserrat,Arial,sans-serif!important;
}

.eap-premium-filters .eap-price-field input[type="number"]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:25px!important;
  min-height:25px!important;
  max-height:25px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--eap-f-ink)!important;
  box-shadow:none!important;
  font:750 13px/1 Montserrat,Arial,sans-serif!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  outline:0!important;
}
.eap-price-field input[type="number"]::-webkit-inner-spin-button,
.eap-price-field input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
.eap-price-field:focus-within{
  border-color:rgba(201,47,105,.52)!important;
  box-shadow:0 0 0 4px rgba(201,47,105,.08)!important;
}

.eap-premium-filters .eap-filter-select{display:block!important}
.eap-select-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
  margin-top:10px!important;
}
.eap-select-wrap::after{
  content:""!important;
  position:absolute!important;
  right:16px!important;
  top:50%!important;
  width:8px!important;
  height:8px!important;
  border-right:1.5px solid #6f5a65!important;
  border-bottom:1.5px solid #6f5a65!important;
  transform:translateY(-70%) rotate(45deg)!important;
  pointer-events:none!important;
}

.eap-premium-filters .eap-select-wrap select{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:49px!important;
  min-height:49px!important;
  margin:0!important;
  padding:0 42px 0 14px!important;
  border:1px solid var(--eap-f-line-strong)!important;
  border-radius:15px!important;
  background:#fff!important;
  color:var(--eap-f-ink)!important;
  box-shadow:0 7px 18px rgba(48,24,36,.035)!important;
  font:700 13px/1.2 Montserrat,Arial,sans-serif!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  outline:none!important;
}
.eap-select-wrap select:focus{
  border-color:rgba(201,47,105,.52)!important;
  box-shadow:0 0 0 4px rgba(201,47,105,.08)!important;
}

/* Pie fijo dentro del panel. */
.eap-filter-footer{
  flex:0 0 auto!important;
  padding:13px 23px 18px!important;
  border-top:1px solid var(--eap-f-line)!important;
  background:rgba(255,253,251,.95)!important;
  box-shadow:0 -10px 28px rgba(48,24,36,.035)!important;
}
.eap-filter-footer .filter-live-status{
  min-height:15px!important;
  margin:0 0 5px!important;
  color:#8c6d7c!important;
  font:750 10px/1.2 Montserrat,Arial,sans-serif!important;
}

.eap-premium-filters .eap-filter-submit{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:50px!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 17px!important;
  border:0!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#d43a76 0%,#a31f53 100%)!important;
  color:#fff!important;
  box-shadow:0 13px 28px rgba(166,31,84,.24),inset 0 1px 0 rgba(255,255,255,.25)!important;
  font:850 12px/1 Montserrat,Arial,sans-serif!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.eap-filter-submit svg{
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.eap-filter-submit:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 16px 32px rgba(166,31,84,.29),inset 0 1px 0 rgba(255,255,255,.27)!important;
}

/* Estado AJAX del catálogo. */
[data-live-catalog]{position:relative!important}
[data-live-catalog].is-live-loading{min-height:180px!important}
[data-live-catalog].is-live-loading::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:90!important;
  border-radius:18px!important;
  background:rgba(255,253,251,.76)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
[data-live-catalog].is-live-loading::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:130px!important;
  z-index:91!important;
  width:34px!important;
  height:34px!important;
  margin:-17px 0 0 -17px!important;
  border:3px solid rgba(201,47,105,.16)!important;
  border-top-color:var(--eap-f-rose)!important;
  border-radius:50%!important;
  animation:eapFilterSpin .7s linear infinite!important;
}
@keyframes eapFilterSpin{to{transform:rotate(360deg)}}

/* Móvil/tablet: drawer real, sin empujar productos ni romper el grid. */
@media (max-width:900px){
  body.eap-filter-lock{overflow:hidden!important;touch-action:none!important}

  .eap-catalog-toolbar{
    position:relative!important;
    z-index:12!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:9px!important;
    min-height:62px!important;
    margin:15px 0 18px!important;
    padding:8px!important;
    border-radius:18px!important;
  }

  .eap-filter-trigger{display:inline-flex!important;width:100%!important;min-width:0!important}
  .eap-sort-form{width:100%!important}
  .eap-sort-form label{width:100%!important;gap:0!important}
  .eap-sort-label{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}
  .eap-sort-form select{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    min-height:46px!important;
    padding-left:12px!important;
    font-size:12px!important;
  }

  .catalog-layout,
  .pm5-catalog-layout{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }

  .filters-wrap{
    position:fixed!important;
    inset:0!important;
    z-index:4000!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:rgba(20,11,16,.55)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .22s ease,visibility .22s ease!important;
    backdrop-filter:blur(5px)!important;
    -webkit-backdrop-filter:blur(5px)!important;
  }

  .filters-wrap.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .filters-wrap .eap-premium-filters{
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(92vw,420px)!important;
    height:100dvh!important;
    max-height:none!important;
    border-width:0 0 0 1px!important;
    border-radius:28px 0 0 28px!important;
    box-shadow:-28px 0 80px rgba(22,10,16,.34)!important;
    transform:translateX(104%)!important;
    transition:transform .26s cubic-bezier(.2,.8,.2,1)!important;
  }

  [dir="rtl"] .filters-wrap .eap-premium-filters{
    right:auto!important;
    left:0!important;
    border-width:0 1px 0 0!important;
    border-radius:0 28px 28px 0!important;
    transform:translateX(-104%)!important;
  }

  .filters-wrap.open .eap-premium-filters{transform:translateX(0)!important}
  .eap-filter-close{display:inline-flex!important}
  .eap-filter-heading{padding-top:max(25px,calc(env(safe-area-inset-top) + 14px))!important}
  .eap-filter-footer{padding-bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px))!important}
}

@media (max-width:540px){
  .eap-catalog-toolbar{grid-template-columns:1fr 1fr!important;gap:7px!important;padding:7px!important}
  .eap-filter-trigger{padding:0 10px!important;font-size:12px!important}
  .eap-sort-form select{font-size:11px!important;padding-right:32px!important}

  .filters-wrap .eap-premium-filters{
    width:100vw!important;
    border:0!important;
    border-radius:0!important;
  }

  .eap-filter-heading{min-height:98px!important;padding-inline:18px!important}
  .eap-filter-heading strong{font-size:31px!important}
  .eap-filter-scroll{padding:18px!important}
  .eap-filter-footer{padding-inline:18px!important}
  .eap-price-inputs{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr)!important;gap:5px!important}
  .eap-price-field{padding-inline:8px!important}
}

@media (max-width:360px){
  .eap-catalog-toolbar{grid-template-columns:1fr!important}
  .eap-filter-trigger,.eap-sort-form{width:100%!important}
  .eap-filter-heading{padding-inline:15px!important}
  .eap-filter-scroll,.eap-filter-footer{padding-inline:15px!important}
}

/* Accesibilidad y movimiento. */
.eap-filter-trigger:focus-visible,
.eap-filter-clear:focus-visible,
.eap-filter-close:focus-visible,
.eap-filter-submit:focus-visible{
  outline:3px solid rgba(201,47,105,.23)!important;
  outline-offset:3px!important;
}

@media (prefers-reduced-motion:reduce){
  .eap-filter-trigger,
  .eap-filter-toggle-row,
  .eap-filter-checkmark,
  .eap-filter-checkmark > span,
  .eap-filter-submit,
  .filters-wrap,
  .filters-wrap .eap-premium-filters{transition:none!important;animation:none!important}
}
