[data-sf-root] { min-width: 0; }
[data-sf-root] [hidden] { display:none !important; }
.sf-sidebar { border:1px solid #e6e1dc; border-top:3px solid #ef171b; border-radius:8px; background:#fff; padding:18px; align-self:start; }
.sf-sidebar h2 { margin:0 0 10px; font-size:20px; color:#242424; }
.sf-sidebar fieldset { border:0; border-top:1px solid #eee; padding:4px 0 10px; margin:0; min-width:0; }
.sf-sidebar legend { float:none; width:auto; margin:0; border:0; padding:0 0 4px; font-size:14px; font-weight:700; color:#292929; }
.sf-option { display:flex; gap:9px; align-items:center; min-height:32px; cursor:pointer; font-size:13px; font-weight:400; margin:0; }
.sf-option input { margin:0; width:17px; height:17px; flex-shrink:0; accent-color:#df1119; }
.sf-option:has(input:disabled) { color:#999; cursor:default; }
.sf-count { margin-left:auto; color:#777; font-size:12px; }
.sf-prices { display:flex; gap:10px; margin-bottom:10px; }
.sf-prices label { min-width:0; flex:1; font-size:12px; }
.sf-prices input { width:100%; min-width:0; border:1px solid #d9d5d1; border-radius:5px; padding:9px 7px; font-size:14px; }
.sf-sidebar button { font-size:13px; }
.sf-reset { width:100%; margin-top:14px; border:1px solid #d9d5d1; border-radius:5px; background:white; padding:10px; color:#333; }
.sf-note { color:#666; font-size:12px; line-height:1.5; margin:14px 0 0; }
.sf-status { margin:0 0 12px; font-weight:600; font-size:14px; }
.sf-chips { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:12px; }
.sf-chip { border:1px solid #f0c5c6; background:#fff1f1; border-radius:20px; color:#a60810; font-size:12px; padding:7px 11px; }
.sf-empty { grid-column:1/-1; padding:30px; background:white; border-radius:8px; }
.sf-pages { display:flex; gap:6px; flex-wrap:wrap; }
.sf-pages button { background:#fff; border:1px solid #ddd; border-radius:4px; padding:8px 13px; }
.sf-pages [aria-current] { background:#df1119; color:white; border-color:#df1119; }
.sf-sidebar input:focus-visible,.sf-sidebar button:focus-visible,.sf-chip:focus-visible,.sf-pages button:focus-visible { outline:2px solid #b9000b; outline-offset:3px; }
.sf-toggle { display:none; }
.sf-results { min-width:0; }
.sf-desktop-toggle { display:none; }
@media(min-width:992px) {
  .sf-ready .sf-desktop-toggle { display:inline-flex; align-items:center; gap:8px; margin:0 0 12px; border:1px solid #bd0010; border-radius:6px; background:#cc0012; padding:10px 18px; min-height:44px; color:#fff; font-size:14px; font-weight:700; box-shadow:0 2px 5px #a0001026; }
  .sf-ready .sf-desktop-toggle:hover { background:#a9000e; border-color:#a9000e; }
  .sf-desktop-toggle::before { content:'‹'; font-size:28px; line-height:1; font-weight:700; }
  .sf-collapsed .sf-desktop-toggle::before { content:'›'; }
  .sf-desktop-toggle:focus-visible { outline:2px solid #b9000b; outline-offset:3px; }
  .sf-ready { display:grid; grid-template-columns:240px minmax(0,1fr); gap:24px; align-items:start; }
  .sf-ready.sf-collapsed { grid-template-columns:minmax(0,1fr); }
  .sf-collapsed .sf-sidebar { display:none; }
  .sf-ready .et-product-grid--listing { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .sf-ready.sf-collapsed .et-product-grid--listing { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .sf-ready .et-listing-toolbar { flex-wrap:wrap; gap:12px; }
  .sf-ready .et-listing-toolbar__item { min-width:0; }
}
@media(min-width:992px) and (max-width:1199px) {
  .sf-ready { grid-template-columns:220px minmax(0,1fr); gap:18px; }
  .sf-ready .et-product-grid--listing { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:991px) {
  .sf-sidebar { margin-bottom:16px; padding:14px; }
  .sf-sidebar h2 { display:none; }
  .sf-toggle { display:flex; width:100%; align-items:center; justify-content:space-between; border:0; background:white; color:#292929; font-size:16px!important; font-weight:700; padding:3px 0; min-height:36px; }
  .sf-toggle::after { content:'+'; font-size:22px; }
  .sf-open .sf-toggle::after { content:'−'; }
  .sf-fields { display:none; }
  .sf-open .sf-fields { display:block; padding-top:14px; }
  .sf-option { min-height:44px; }
}

/* Compact toolbar: the filter toggle replaces comparison only in this pilot. */
.sf-toolbar-toggle { display:none; }
.sf-chips:empty { display:none; }
.sf-more { display:flex; flex-direction:column; align-items:center; gap:9px; width:100%; padding:8px 0; }
.sf-more button { border:1px solid #cc0012; border-radius:6px; background:white; color:#b00010; padding:12px 24px; font-size:14px; font-weight:700; min-height:44px; }
.sf-more button:hover { background:#fff0f1; }
.sf-more button:focus-visible { outline:2px solid #b00010; outline-offset:3px; }
@media(min-width:992px) {
  .sf-ready .sf-toolbar-toggle { display:flex; align-self:center; }
  .sf-ready .et-listing-toolbar .sf-desktop-toggle { margin:0; }
}

/* Pilot: controls, result count and selected properties share one compact panel. */
[data-sf-root] .et-listing-shell--more .et-listing-toolbar.sf-toolbar {
  grid-template-columns:auto minmax(0,1fr) 180px;
  align-items:center; gap:12px 16px; padding:16px 18px;
}
.sf-toolbar .sf-toolbar-toggle { grid-column:1; grid-row:1; }
.sf-toolbar .sf-toolbar-sort { grid-column:3; grid-row:1; }
.sf-toolbar .sf-toolbar-sort label { font-size:11px; margin-bottom:5px; }
.sf-toolbar .sf-toolbar-sort select { width:100%; min-width:0; font-size:13px; }
.sf-toolbar .sf-status { grid-column:2; grid-row:1; margin:0; font-size:12px; line-height:1.5; color:#666; }
.sf-toolbar .sf-status:empty { display:none; }
.sf-toolbar .sf-chips { grid-column:1/-1; margin:0; gap:8px; }
.sf-toolbar .sf-chip { max-width:100%; min-height:34px; padding:7px 12px; line-height:1.4; white-space:normal; overflow-wrap:anywhere; text-align:left; border-radius:6px; }
.sf-toolbar .sf-chip:hover { background:#ffe4e5; border-color:#d99498; }
@media(min-width:992px) {
  .sf-ready .sf-toolbar .sf-desktop-toggle { background:#fff; color:#424242; border:1px solid #d9d5d1; box-shadow:none; font-size:13px; font-weight:600; padding:8px 12px; }
  .sf-ready .sf-toolbar .sf-desktop-toggle:hover { background:#faf4f4; border-color:#cc9296; color:#a60810; }
  .sf-toolbar .sf-desktop-toggle::before { font-size:22px; color:#a60810; }
}
@media(max-width:991px) {
  [data-sf-root] .et-listing-shell--more .et-listing-toolbar.sf-toolbar { grid-template-columns:minmax(0,1fr); gap:12px; padding:14px; }
  .sf-toolbar .sf-status { grid-column:1; grid-row:1; }
  .sf-toolbar .sf-toolbar-sort { grid-column:1; grid-row:2; }
  .sf-toolbar .sf-chips { grid-column:1; grid-row:3; }
  .sf-toolbar .sf-chip { min-height:44px; }
}

/* Zoneway: reuse the category sidebar rather than taking a second product column. */
.sf-zoneway-docked-panel[hidden],.sf-zoneway-docked-panel.sf-zoneway-hidden{display:none!important}
@media(min-width:992px){
 [data-sf-root].sf-zoneway-docked.sf-ready{display:block}
 #zw-category-sidebar>.sf-zoneway-docked-panel{margin:16px 0 0;border:0;border-top:2px solid #252525;border-radius:0;padding:18px 14px}
 .sf-zoneway-docked .et-product-grid--listing,.sf-zoneway-docked.sf-collapsed .et-product-grid--listing{grid-template-columns:repeat(3,minmax(0,1fr))}
}
