/*! syntai Shop Tools – AJAX filter · syntai.studio */
.sst-filter,.sst-chips,.sst-results{--sst-lime:var(--lime,#C4DA2E);--sst-lime-soft:var(--lime-soft,#EEF4C4);--sst-moss:var(--moss,#7F8C1F);--sst-olive:var(--olive,#616734);--sst-ink:var(--ink,#201C1E);--sst-cream:var(--cream,#F5F6EE);--sst-line:var(--line,#E6E6E1);--sst-grey:var(--grey,#87868C);--sst-r:var(--radius,18px);--sst-display:var(--display,"Barlow Condensed",system-ui,sans-serif);--sst-body:var(--body,"Inter",system-ui,sans-serif)}
.sst-filter{font-family:var(--sst-body);color:var(--sst-ink);font-size:14px}
.sst-filter svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sst-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;margin:0;padding:0;border:0}

/* Toggle bar (mobile/tablet) */
.sst-filter__bar{display:none}
.sst-filter__toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:46px;padding:0 20px;border-radius:999px;background:var(--sst-ink);color:#fff;font-weight:700;font-size:14.5px;text-decoration:none;width:100%}
.sst-filter__toggle svg{width:20px;height:20px}
.sst-filter__badge{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--sst-lime);color:var(--sst-ink);font-size:12px;font-weight:800;display:inline-grid;place-items:center}
.sst-filter__badge[hidden]{display:none}

/* Panel (desktop: static sidebar card) */
.sst-drawer__backdrop{display:none}
.sst-drawer__panel{background:#fff;border:1px solid var(--sst-line);border-radius:var(--sst-r);padding:6px 20px 18px;position:relative}
.sst-drawer__head{display:flex;align-items:baseline;gap:10px;padding:16px 0 12px;border-bottom:1px solid var(--sst-line)}
.sst-drawer__title{margin:0;font-family:var(--sst-display);font-weight:800;text-transform:uppercase;font-size:26px;line-height:1;letter-spacing:.01em}
.sst-drawer__count{color:var(--sst-grey);font-size:13px;font-weight:600;margin-right:auto}
.sst-drawer__close{display:none}
.sst-filter.is-loading .sst-form__body{opacity:.6;transition:opacity .15s}

.sst-sec{border-bottom:1px solid var(--sst-line);padding:4px 0}
.sst-sec--flat{padding:14px 0}
.sst-sec__title{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:14px 0 12px;font-family:var(--sst-display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:15px;color:var(--sst-ink)}
.sst-sec__title::-webkit-details-marker{display:none}
.sst-sec__title:after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.sst-sec:not([open]) > .sst-sec__title:after{transform:rotate(-45deg)}
.sst-sec__n{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--sst-lime);font-family:var(--sst-body);font-size:11px;font-weight:800;letter-spacing:0;display:inline-grid;place-items:center}
.sst-sec[open] > :not(summary){animation:sst-fade .18s ease}
@keyframes sst-fade{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}

.sst-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:2px}
.sst-list li[hidden]{display:none}
.sst-depth-1{padding-left:22px}.sst-depth-2,.sst-depth-3{padding-left:40px}
.sst-check,.sst-nav{display:flex;align-items:center;gap:10px;min-height:38px;padding:4px 8px;margin:0 -8px;border-radius:10px;cursor:pointer;text-decoration:none;color:inherit}
.sst-check:hover,.sst-nav:hover{background:var(--sst-cream)}
.sst-check input{position:absolute;opacity:0;width:1px;height:1px}
.sst-check__box{width:20px;height:20px;border-radius:6px;border:1.5px solid #c9c8c2;flex:none;display:grid;place-items:center;background:#fff;transition:background .15s,border-color .15s}
.sst-check input:checked + .sst-check__box{background:var(--sst-ink);border-color:var(--sst-ink)}
.sst-check input:checked + .sst-check__box:after{content:"";width:6px;height:10px;border:solid var(--sst-lime);border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}
.sst-check input:focus-visible + .sst-check__box{outline:3px solid var(--sst-lime);outline-offset:2px}
.sst-check__label,.sst-nav__label{flex:1;min-width:0;line-height:1.3}
.sst-check input:checked ~ .sst-check__label{font-weight:700}
.sst-count{margin-left:auto;font-size:12px;font-weight:600;color:var(--sst-grey);background:var(--sst-cream);border-radius:999px;padding:2px 8px;min-width:26px;text-align:center}
.sst-nav.is-current{background:var(--sst-lime-soft);font-weight:700}
.sst-nav.is-current .sst-count{background:#fff}
.sst-more{background:none;border:0;padding:4px 0 12px;font:inherit;font-weight:700;font-size:13px;color:var(--sst-moss);cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* Price */
.sst-price{padding:4px 0 16px}
.sst-range{display:none;position:relative;height:28px;margin:0 10px 12px}
.sst-js .sst-range{display:block}
.sst-range__rail{position:absolute;left:0;right:0;top:12px;height:4px;border-radius:2px;background:var(--sst-line)}
.sst-range__fill{position:absolute;top:0;bottom:0;background:var(--sst-moss);border-radius:2px}
.sst-range__input{position:absolute;left:-10px;width:calc(100% + 20px);top:0;height:28px;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.sst-range__input::-webkit-slider-runnable-track{background:none;height:28px}
.sst-range__input::-moz-range-track{background:none}
.sst-range__input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:22px;height:22px;margin-top:3px;border-radius:50%;background:#fff;border:3px solid var(--sst-ink);box-shadow:0 2px 6px rgba(32,28,30,.2);cursor:grab}
.sst-range__input::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--sst-ink);cursor:grab}
.sst-range__input:focus-visible::-webkit-slider-thumb{outline:3px solid var(--sst-lime);outline-offset:2px}
.sst-range__input:focus-visible::-moz-range-thumb{outline:3px solid var(--sst-lime)}
.sst-price__fields{display:flex;align-items:center;gap:8px}
.sst-price__dash{color:var(--sst-grey)}
.sst-field{flex:1;display:flex;align-items:center;gap:6px;height:42px;border:1.5px solid var(--sst-line);border-radius:12px;padding:0 10px;background:var(--sst-cream);min-width:0}
.sst-field:focus-within{border-color:var(--sst-ink);background:#fff}
.sst-field span{font-size:11.5px;color:var(--sst-grey);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.sst-field input{flex:1;min-width:0;width:100%;border:0;background:none;font:inherit;font-weight:700;outline:0;-moz-appearance:textfield;appearance:textfield;padding:0}
.sst-field input::-webkit-outer-spin-button,.sst-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.sst-field i{font-style:normal;color:var(--sst-grey);font-weight:600}

/* Switch */
.sst-switch{display:flex;align-items:center;gap:12px;cursor:pointer;min-height:36px}
.sst-switch input{position:absolute;opacity:0;width:1px;height:1px}
.sst-switch__track{width:42px;height:24px;border-radius:999px;background:#d8d7d1;position:relative;flex:none;transition:background .2s}
.sst-switch__track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}
.sst-switch input:checked + .sst-switch__track{background:var(--sst-moss)}
.sst-switch input:checked + .sst-switch__track:after{transform:translateX(18px)}
.sst-switch input:focus-visible + .sst-switch__track{outline:3px solid var(--sst-lime);outline-offset:2px}
.sst-switch__label{font-weight:600}

/* Attribute pills */
.sst-pills{border:0;margin:0;padding:0 0 14px;display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.sst-pill{position:relative;cursor:pointer}
.sst-pill input{position:absolute;opacity:0;width:1px;height:1px}
.sst-pill span{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;border:1.5px solid var(--sst-line);background:#fff;font-weight:700;font-size:13.5px;transition:background .15s,border-color .15s,color .15s}
.sst-pill small{font-size:11px;font-weight:600;color:var(--sst-grey)}
.sst-pill:hover span{border-color:var(--sst-ink)}
.sst-pill input:checked + span{background:var(--sst-ink);border-color:var(--sst-ink);color:#fff}
.sst-pill input:checked + span small{color:var(--sst-lime)}
.sst-pill input:focus-visible + span{outline:3px solid var(--sst-lime);outline-offset:2px}
.sst-pill.is-empty span{opacity:.45}

/* Footer: reset + apply */
.sst-drawer__foot{display:flex;flex-direction:column;gap:10px;padding-top:16px}
.sst-apply{height:48px;border-radius:999px;border:0;background:var(--sst-lime);color:var(--sst-ink);font:inherit;font-weight:700;font-size:15px;cursor:pointer;padding:0 20px}
.sst-apply:hover{background:var(--lime-bright,#DFF732)}
.sst-js .sst-filter.is-ready .sst-apply{display:none}
.sst-reset{font-weight:700;font-size:13.5px;color:var(--sst-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--sst-lime);text-decoration-thickness:2px}
.sst-reset--foot{align-self:flex-start}
.sst-reset.is-hidden{display:none}

/* Active chips (top of results) */
.sst-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:-12px 0 24px;font-family:var(--sst-body)}
.sst-chips[hidden]{display:none}
.sst-chips__label{font-size:13px;font-weight:600;color:var(--sst-grey)}
.sst-chips__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sst-chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 8px 0 14px;border-radius:999px;background:var(--sst-lime-soft);color:var(--sst-ink);font-size:13px;text-decoration:none;border:1px solid transparent;transition:background .15s,border-color .15s}
.sst-chip span{color:var(--sst-olive)}
.sst-chip:hover,.sst-chip:focus-visible{background:#fff;border-color:var(--sst-ink)}
.sst-chip__x{width:22px;height:22px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:16px;line-height:1;color:var(--sst-ink)!important}
.sst-results{position:relative;transition:opacity .15s}
.sst-results.is-loading{opacity:.45;pointer-events:none}
.sst-results.is-loading:after{content:"";position:absolute;left:50%;top:120px;width:36px;height:36px;margin-left:-18px;border-radius:50%;border:3px solid var(--sst-line);border-top-color:var(--sst-moss);animation:sst-spin .8s linear infinite}
@keyframes sst-spin{to{transform:rotate(360deg)}}

/* ---------- < 1024px: off-canvas drawer ---------- */
@media (max-width:1023.98px){
  .sst-filter__bar{display:block;margin:0 0 18px}
  .sst-drawer{position:fixed;inset:0;z-index:99990;visibility:hidden;pointer-events:none}
  .sst-drawer:target,.sst-drawer.is-open{visibility:visible;pointer-events:auto}
  .sst-drawer__backdrop{display:block;position:absolute;inset:0;background:rgba(32,28,30,.55);opacity:0;transition:opacity .25s}
  .sst-drawer:target .sst-drawer__backdrop,.sst-drawer.is-open .sst-drawer__backdrop{opacity:1}
  .sst-drawer__panel{position:absolute;top:0;bottom:0;left:0;width:min(420px,92vw);border-radius:0 22px 22px 0;border:0;padding:0;display:flex;flex-direction:column;transform:translateX(-102%);transition:transform .3s cubic-bezier(.2,.8,.2,1);overflow:hidden}
  .sst-drawer:target .sst-drawer__panel,.sst-drawer.is-open .sst-drawer__panel{transform:none}
  .sst-drawer__head{padding:16px 16px 14px 20px;align-items:center}
  .sst-drawer__close{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--sst-line);color:var(--sst-ink);flex:none}
  .sst-drawer__close svg{width:20px;height:20px}
  .sst-form{display:flex;flex-direction:column;flex:1;min-height:0}
  .sst-form__body{flex:1;overflow:auto;overscroll-behavior:contain;padding:0 20px}
  .sst-drawer__foot{flex-direction:row-reverse;align-items:center;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--sst-line);background:#fff}
  .sst-apply{flex:1}
  .sst-js .sst-filter.is-ready .sst-apply{display:block}
  .sst-reset--foot{align-self:center}
  .sst-reset--foot.is-hidden{display:none}
  .sst-chips{margin:-6px 0 18px}
  html.sst-drawer-lock{overflow:hidden}
}
@media (max-width:480px){
  .sst-drawer__panel{width:100vw;border-radius:0}
  .sst-chips__label{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .sst-drawer__panel,.sst-drawer__backdrop,.sst-results{transition:none}
}
