/* MABIO MARKET PREMIUM DISCOVERY V55 */

:root{
  --m55-accent:#635BFF;
  --m55-text:#101828;
  --m55-muted:#667085;
  --m55-line:#EAECF0;
  --m55-soft:#F8F8FC;
  --m55-surface:#fff;
}

body.m55-lock{
  overflow:hidden !important;
}

.m55-toolbar{
  margin:10px 10px 12px;
  padding:8px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  background:#fff;
  border:1px solid #EAECF0;
  border-radius:16px;
  box-shadow:0 5px 18px rgba(16,24,40,.04);
}

.m55-filter-btn,
.m55-sort{
  min-height:42px;
  border:1px solid #E4E7EC;
  border-radius:12px;
  background:#fff;
  color:#344054;
  font-size:.72rem;
  font-weight:850;
}

.m55-filter-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 12px;
}

.m55-filter-btn .m55-count{
  display:none;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  align-items:center;
  justify-content:center;
  background:var(--m55-accent);
  color:#fff;
  font-size:.60rem;
}

.m55-filter-btn.has-filter .m55-count{
  display:inline-flex;
}

.m55-sort{
  padding:0 30px 0 12px;
  appearance:auto;
}

.m55-result-info{
  margin:-3px 12px 10px;
  color:#667085;
  font-size:.64rem;
  font-weight:700;
}

/* Sheet filtres */
.m55-overlay{
  display:none;
  position:fixed;
  inset:0;
  z-index:2147483550;
  background:rgba(15,23,42,.52);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}

.m55-overlay.is-open{
  display:block;
}

.m55-sheet{
  display:none;
  position:fixed;
  left:8px;
  right:8px;
  bottom:8px;
  z-index:2147483551;
  max-height:84dvh;
  overflow:auto;
  background:#fff;
  border-radius:24px;
  box-shadow:0 24px 80px rgba(15,23,42,.28);
}

.m55-sheet.is-open{
  display:block;
}

.m55-sheet-head{
  position:sticky;
  top:0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 16px 10px;
  background:#fff;
}

.m55-sheet-title{
  margin:0;
  color:#101828;
  font-size:1rem;
}

.m55-close{
  width:38px;
  height:38px;
  border:1px solid #EAECF0;
  border-radius:999px;
  background:#fff;
  color:#101828;
  font-size:1.25rem;
}

.m55-sheet-body{
  padding:0 16px 16px;
}

.m55-filter-group{
  padding:13px 0;
  border-bottom:1px solid #F0F1F4;
}

.m55-filter-group:last-child{
  border-bottom:0;
}

.m55-filter-label{
  margin-bottom:9px;
  color:#344054;
  font-size:.74rem;
  font-weight:900;
}

.m55-chip-wrap{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.m55-chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:8px 10px;
  border:1px solid #E4E7EC;
  border-radius:999px;
  background:#fff;
  color:#475467;
  font-size:.66rem;
  font-weight:800;
}

.m55-chip input{
  accent-color:var(--m55-accent);
}

.m55-range{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.m55-range input{
  width:100%;
  min-height:42px;
  padding:0 10px;
  border:1px solid #E4E7EC;
  border-radius:11px;
  background:#fff;
  color:#101828;
  font-size:.72rem;
}

.m55-sheet-actions{
  position:sticky;
  bottom:0;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:9px;
  padding:10px 16px calc(12px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.97);
  border-top:1px solid #EAECF0;
}

.m55-reset,
.m55-apply{
  min-height:46px;
  border-radius:13px;
  font-size:.74rem;
  font-weight:900;
}

.m55-reset{
  padding:0 14px;
  border:1px solid #E4E7EC;
  background:#fff;
  color:#475467;
}

.m55-apply{
  border:0;
  background:var(--m55-accent);
  color:#fff;
}

/* Sections découverte */
.m55-discovery{
  margin:14px 10px 0;
}

.m55-discovery-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
}

.m55-discovery-title{
  margin:0;
  color:#101828;
  font-size:1rem;
  line-height:1.05;
  letter-spacing:-.025em;
}

.m55-discovery-sub{
  margin-top:3px;
  color:#667085;
  font-size:.61rem;
  font-weight:650;
}

.m55-discovery-badge{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:999px;
  background:#F2F0FF;
  color:#6941C6;
  font-size:.58rem;
  font-weight:900;
}

.m55-horizontal{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(150px,44vw);
  gap:9px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  padding-bottom:4px;
  scrollbar-width:none;
}

.m55-horizontal::-webkit-scrollbar{
  display:none;
}

.m55-horizontal .product-card{
  scroll-snap-align:start;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}

.m55-empty{
  padding:20px 12px;
  border:1px dashed #D0D5DD;
  border-radius:15px;
  text-align:center;
  color:#667085;
  font-size:.70rem;
}

.m55-hidden{
  display:none !important;
}

@media(min-width:769px){
  .m55-toolbar,
  .m55-result-info,
  .m55-discovery{
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
  }
}
/* MABIO_DISCOVERY_STYLE_HARDENING_V55_1 */

/* Barre filtres/tri */
.m55-toolbar{
  position:relative !important;
  z-index:20 !important;
  width:auto !important;
  box-sizing:border-box !important;
}

.m55-filter-btn,
.m55-sort{
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif !important;
}

.m55-filter-btn{
  cursor:pointer !important;
}

.m55-sort{
  max-width:160px !important;
}

/* Le panneau doit être totalement hors du flux */
.m55-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483400 !important;
  display:none !important;
}

.m55-overlay.is-open{
  display:block !important;
}

.m55-sheet{
  position:fixed !important;
  left:8px !important;
  right:8px !important;
  bottom:8px !important;
  top:auto !important;
  z-index:2147483401 !important;
  display:none !important;
  width:auto !important;
  max-height:82dvh !important;
  overflow:auto !important;
  box-sizing:border-box !important;
  background:#fff !important;
  color:#101828 !important;
  border-radius:24px !important;
  box-shadow:0 24px 90px rgba(15,23,42,.30) !important;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif !important;
}

.m55-sheet.is-open{
  display:block !important;
}

.m55-sheet-head{
  background:#fff !important;
  border-radius:24px 24px 0 0 !important;
}

.m55-sheet-title{
  font-size:1.02rem !important;
  font-weight:900 !important;
}

.m55-filter-group{
  background:#fff !important;
}

.m55-chip{
  min-height:36px !important;
  box-sizing:border-box !important;
}

.m55-chip input{
  width:16px !important;
  height:16px !important;
  margin:0 !important;
}

.m55-range input{
  box-sizing:border-box !important;
  font-family:inherit !important;
}

.m55-sheet-actions{
  background:#fff !important;
  box-shadow:0 -8px 24px rgba(16,24,40,.05) !important;
}

/* Eviter le chevauchement avec le menu fixe Mabio */
.m55-sheet-actions{
  padding-bottom:max(14px,env(safe-area-inset-bottom)) !important;
}

/* Sections recommandées / récemment vues */
.m55-discovery{
  box-sizing:border-box !important;
}

.m55-horizontal{
  -webkit-overflow-scrolling:touch !important;
}

/* Mobile */
@media(max-width:520px){
  .m55-toolbar{
    margin:10px 12px 12px !important;
    grid-template-columns:minmax(0,1fr) minmax(124px,auto) !important;
  }

  .m55-filter-btn,
  .m55-sort{
    min-height:44px !important;
  }

  .m55-sheet{
    left:6px !important;
    right:6px !important;
    bottom:6px !important;
    max-height:86dvh !important;
    border-radius:26px !important;
  }

  .m55-sheet-body{
    padding-bottom:6px !important;
  }

  .m55-horizontal{
    grid-auto-columns:minmax(145px,47vw) !important;
  }
}

/* /MABIO_DISCOVERY_STYLE_HARDENING_V55_1 */