/* Addon: Amazon-style sidebar filters for Material Mart – Fast Woo Quick Order */

/* Desktop sidebar layout (does not move existing markup; adds a first child <aside>). */
.mmq-fast-order.mmqfa-has-filters{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:16px;
  align-items:start;
}

.mmq-fast-order.mmqfa-has-filters > .mmqfa-side{
  grid-column:1;
  grid-row:1;
  position:sticky;
  top:16px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow);
  overflow:hidden;
}

.mmq-fast-order.mmqfa-has-filters > .mmqfa-maincol{
  grid-column:2;
  grid-row:1;
  min-width:0;
}

/* Mobile overlay (fixed; must not contribute to document height) */
.mmq-filter-overlay{
  position:fixed;
  inset:0;
  height:100vh;
  width:100vw;
  background:rgba(0,0,0,.45);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
  z-index:99998;
}
.mmq-filter-overlay.is-open{
  opacity:1;
  pointer-events:auto;
}

.mmq-fast-order.mmqfa-has-filters > .mmq-top,
.mmq-fast-order.mmqfa-has-filters > .mmq-grid,
.mmq-fast-order.mmqfa-has-filters > .mmq-cartbar,
.mmq-fast-order.mmqfa-has-filters > .mmqfa-mobile-controls{
  grid-column:2;
}

/* Sidebar structure */
.mmq-fast-order .mmqfa-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px;
  border-bottom:1px solid var(--line);
}
.mmq-fast-order .mmqfa-title{
  font-weight:900;
  letter-spacing:.2px;
}
.mmq-fast-order .mmqfa-body{
  padding:14px;
  overflow:auto;
  max-height:calc(100vh - 16px - 56px - 68px);
}
.mmq-fast-order .mmqfa-foot{
  padding:14px;
  border-top:1px solid var(--line);
  display:flex;
  gap:10px;
}

/* Bigger close button (requested). Hidden on desktop; shown on mobile. */
.mmq-fast-order .mmqfa-close{
  height:44px;
  width:44px;
  border-radius:14px;
  font-size:20px;
}

/* Filter button row (mobile only) */
.mmq-fast-order .mmqfa-mobile-controls{
  display:none;
  margin:12px 0 16px;
}

/* Hidden cards */
.mmq-fast-order .mmqfa-hidden{display:none !important;}

/* Category tree spacing */
.mmq-fast-order .mmqfa-catwrap{display:flex;flex-direction:column;gap:8px;}

/* Mobile: turn sidebar into off-canvas drawer */
@media (max-width:980px){
  .mmq-fast-order.mmqfa-has-filters{
    display:block;
  }

  .mmq-fast-order .mmqfa-mobile-controls{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
  }

  .mmq-fast-order .mmqfa-side{
    position:fixed;
    top:0;
    left:0;
    height:100%;
    width:min(380px, 92vw);
    transform:translateX(-102%);
    transition:transform .22s ease;
    z-index:99999;
    box-shadow:0 20px 40px rgba(0,0,0,.18);
    border-radius:0;
  }
  .mmq-fast-order .mmqfa-side.is-open{transform:translateX(0)}

  /* Make inner scroll area full height on mobile */
  .mmq-fast-order .mmqfa-body{max-height:calc(100vh - 56px - 68px)}
}
