/* gCar catalog — filter + results UI (v2026-09). Uses the design tokens of gcar-catalog.css
   (--ink/--panel/--line/--bronze/--flame/--paper…), so dark + light themes follow automatically. */
:root{--gf-stick:72px;--gf-glow:rgba(220,174,92,.10);--gf-flame-soft:rgba(253,86,49,.12);--gf-sheet:#231d31;}
:root[data-theme="light"]{--gf-glow:rgba(156,111,44,.10);--gf-flame-soft:rgba(253,86,49,.10);--gf-sheet:#fbf8f3;}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--gf-glow:rgba(156,111,44,.10);--gf-flame-soft:rgba(253,86,49,.10);--gf-sheet:#fbf8f3;}}

/* ---------- layout ---------- */
.cat-layout.gf{grid-template-columns:296px minmax(0,1fr);gap:32px;align-items:start;}
.gf-main{min-width:0;}
.gf-search{margin-bottom:24px;}
.gf-search .searchbar__clear[hidden]{display:none;}

/* ---------- sidebar ---------- */
.gf-side{position:sticky;top:calc(var(--gf-stick) + 16px);max-height:calc(100vh - var(--gf-stick) - 32px);display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-lg,22px);background:linear-gradient(180deg,var(--panel),var(--ink-2));box-shadow:0 1px 0 rgba(255,255,255,.04) inset;overflow:hidden;}
.gf-form{display:flex;flex-direction:column;flex:1;min-height:0;margin:0;}
.gf-side__head{flex:none;display:flex;align-items:center;gap:10px;padding:16px 18px 14px;border-bottom:1px solid var(--line);}
.gf-side__head h2{font-family:'Fraunces',Georgia,serif!important;font-size:21px!important;font-weight:420!important;display:flex;align-items:center;gap:9px;margin:0;}
.gf-side__n{font-family:'Manrope',sans-serif;font-size:11.5px;font-weight:800;line-height:1;background:var(--flame);color:#fff;border-radius:999px;padding:4px 8px;}
.gf-side__n[hidden],.gf-bar__n[hidden],.gf-g__n[hidden],.gf-reset[hidden]{display:none!important;}
.gf-reset{margin-left:auto;font-size:13px;font-weight:700;color:var(--flame)!important;}
.gf-reset:hover{text-decoration:underline!important;}
.gf-x{display:none;width:44px;height:44px;margin:-8px -10px -8px 0;border:0;background:transparent;color:var(--paper-dim);border-radius:12px;cursor:pointer;place-items:center;}
.gf-x:hover{color:var(--paper);background:var(--gf-glow);}
.gf-side__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;}
.gf-side__body::-webkit-scrollbar{width:6px;}
.gf-side__body::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:3px;}
.gf-side__foot{flex:none;display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel);}
.gf-js .gf-side__foot{display:none;}
.gf-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 18px;border-radius:999px;font:700 15px/1 'Manrope',sans-serif;cursor:pointer;border:0;white-space:nowrap;transition:.2s var(--ease);}
.gf-btn--ghost{background:transparent;color:var(--paper)!important;border:1px solid var(--line-2);}
.gf-btn--ghost:hover{border-color:var(--bronze);}
.gf-btn--cta{flex:1;background:linear-gradient(180deg,var(--flame-2),var(--flame));color:#fff;box-shadow:0 10px 24px -10px rgba(253,86,49,.7);}
.gf-btn--cta b{font-variant-numeric:tabular-nums;}

/* groups */
.gf-g{border-bottom:1px solid var(--line);}
.gf-g:last-child{border-bottom:0;}
.gf-g__h{margin:0!important;font:inherit!important;}
.gf-g__h button{width:100%;display:flex;align-items:center;gap:9px;background:transparent;border:0;cursor:pointer;padding:15px 18px;color:var(--paper);font:700 12px/1.2 'Manrope',sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:left;}
.gf-g__h button:hover{color:var(--bronze-hi);}
.gf-g__h button:focus-visible{outline:2px solid var(--bronze);outline-offset:-2px;border-radius:8px;}
.gf-g__n{font-style:normal;font-size:11px;letter-spacing:0;background:var(--gf-flame-soft);color:var(--flame);border:1px solid rgba(253,86,49,.35);border-radius:999px;padding:2px 7px;line-height:1.2;}
.gf-chev{margin-left:auto;display:grid;place-items:center;color:var(--muted);transition:transform .25s var(--ease);}
.gf-g[data-open] .gf-chev{transform:rotate(180deg);}
.gf-g__b{display:none;padding:0 18px 18px;}
.gf-g[data-open] .gf-g__b{display:block;}

/* list options (checkbox rows) */
.gf-list{display:flex;flex-direction:column;gap:1px;}
.gf-o{position:relative;display:flex;align-items:center;gap:11px;min-height:38px;padding:4px 8px;margin:0 -8px;border-radius:10px;cursor:pointer;color:var(--paper-dim);font-size:14.5px;font-weight:500;transition:background .15s,color .15s;}
.gf-o:hover{background:var(--gf-glow);color:var(--paper);}
.gf-o input,.gf-t input,.gf-p input,.gf-seg input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none;}
.gf-o__box{position:relative;width:20px;height:20px;flex:none;border-radius:6px;border:1.5px solid var(--line-2);transition:.15s;}
.gf-o__box::after{content:"";position:absolute;left:5.5px;top:2px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .15s var(--ease);}
.gf-o.is-on .gf-o__box::after,.gf-o input:checked+.gf-o__box::after{transform:rotate(45deg) scale(1);}
.gf-o.is-on{color:var(--paper);}
.gf-o.is-on .gf-o__box,.gf-o input:checked+.gf-o__box{background:var(--flame);border-color:var(--flame);}
.gf-o input:focus-visible+.gf-o__box{box-shadow:0 0 0 3px rgba(253,86,49,.35);}
.gf-o__l{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gf-o__n{font-size:12px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;}
.gf-o__logo{width:22px;height:22px;flex:none;background:currentColor;-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat;opacity:.85;}
.gf-o__mono{width:22px;height:22px;flex:none;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;font:700 10.5px/1 'Manrope',sans-serif;color:var(--bronze);}
.gf-o.is-on .gf-o__logo{opacity:1;color:var(--bronze-hi);}
.is-zero{opacity:.38;cursor:not-allowed!important;}
.is-zero:hover{background:transparent!important;}
.gf-extra{display:none!important;}
.gf-g.is-all .gf-extra,.gf-g.is-finding .gf-extra{display:flex!important;}
.gf-g.is-finding .gf-hide{display:none!important;}
.gf-showall{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:6px 0;border:0;background:none;color:var(--bronze-hi);font:700 13px/1.2 'Manrope',sans-serif;cursor:pointer;}
.gf-showall svg{transition:transform .2s;}
.gf-g.is-all .gf-showall svg{transform:rotate(180deg);}
.gf-g.is-finding .gf-showall{display:none;}
.gf-find{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:0 12px;height:40px;border:1px solid var(--line-2);border-radius:12px;background:var(--ink-3);color:var(--muted);}
.gf-find:focus-within{border-color:var(--bronze-dim);color:var(--bronze);}
.gf-find input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--paper);font:500 14px 'Manrope',sans-serif;}
.gf-find input::-webkit-search-cancel-button{display:none;}

/* pills */
.gf-pills{display:flex;flex-wrap:wrap;gap:7px;}
.gf-p{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);color:var(--paper-dim);font-size:14px;font-weight:600;cursor:pointer;transition:.15s;}
.gf-p:hover{border-color:var(--bronze-dim);color:var(--paper);}
.gf-p small{font-size:11.5px;}
.gf-p.is-on,.gf-p:has(input:checked){background:var(--gf-flame-soft);border-color:var(--flame);color:var(--paper);}
.gf-p:has(input:focus-visible){box-shadow:0 0 0 3px rgba(253,86,49,.3);}
.gf-g.is-all .gf-pills .gf-extra{display:inline-flex!important;}

/* body-type tiles */
.gf-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.gf-t{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 4px 9px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.015);cursor:pointer;text-align:center;transition:.18s var(--ease);}
.gf-t:hover{border-color:var(--bronze-dim);transform:translateY(-1px);}
.gf-t__ic{width:34px;height:26px;background:var(--paper-dim);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat;transition:.18s;}
.gf-t__l{font-size:12.5px;font-weight:700;color:var(--paper);line-height:1.15;}
.gf-t__n{font-size:11px!important;}
.gf-t.is-on,.gf-t:has(input:checked){border-color:var(--flame);background:var(--gf-flame-soft);}
.gf-t.is-on .gf-t__ic,.gf-t:has(input:checked) .gf-t__ic{background:var(--flame);}
.gf-t:has(input:focus-visible){box-shadow:0 0 0 3px rgba(253,86,49,.3);}

/* toggles */
.gf-sws{display:flex;flex-direction:column;gap:2px;}
.gf-sw{position:relative;display:flex;align-items:center;gap:12px;min-height:42px;cursor:pointer;color:var(--paper-dim);font-size:14.5px;font-weight:500;}
.gf-sw:hover{color:var(--paper);}
.gf-sw__l{flex:1;}
.gf-sw__l small{margin-left:4px;}
.gf-sw input{position:absolute;opacity:0;width:1px;height:1px;}
.gf-sw__t{width:40px;height:24px;flex:none;border-radius:999px;background:var(--line-2);position:relative;transition:background .2s;}
.gf-sw__t::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.35);transition:transform .22s var(--ease);}
.gf-sw input:checked+.gf-sw__t{background:var(--flame);}
.gf-sw input:checked+.gf-sw__t::after{transform:translateX(16px);}
.gf-sw input:focus-visible+.gf-sw__t{box-shadow:0 0 0 3px rgba(253,86,49,.35);}

/* price */
.gf-seg{display:grid;grid-template-columns:repeat(3,1fr);padding:3px;border-radius:12px;background:var(--ink-3);border:1px solid var(--line);margin-bottom:14px;}
.gf-seg label{position:relative;cursor:pointer;}
.gf-seg span{display:grid;place-items:center;height:34px;border-radius:9px;font-size:13px;font-weight:700;color:var(--muted);transition:.18s;}
.gf-seg label:hover span{color:var(--paper);}
.gf-seg input:checked+span{background:var(--panel);color:var(--paper);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 4px 12px -4px rgba(0,0,0,.45);}
.gf-seg input:focus-visible+span{box-shadow:0 0 0 2px var(--bronze);}
.gf-range{position:relative;height:74px;margin:0 4px;}
.gf-hist{position:absolute;left:0;right:0;top:0;height:44px;display:flex;align-items:flex-end;gap:2px;}
.gf-hist i{flex:1;height:calc(var(--h,0) * 100%);min-height:2px;border-radius:2px 2px 0 0;background:var(--line-2);transition:height .35s var(--ease),background .2s;}
.gf-hist i.in{background:linear-gradient(180deg,var(--bronze-hi),var(--bronze));opacity:.85;}
.gf-range__rail{position:absolute;left:0;right:0;top:52px;height:4px;border-radius:3px;background:var(--line-2);}
.gf-range__fill{position:absolute;top:0;bottom:0;left:0;right:0;border-radius:3px;background:linear-gradient(90deg,var(--bronze),var(--flame));}
.gf-range__i{position:absolute;left:-11px;right:-11px;width:calc(100% + 22px);top:43px;height:22px;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;}
.gf-range__i::-webkit-slider-runnable-track{height:22px;background:none;border:0;}
.gf-range__i::-moz-range-track{height:22px;background:none;border:0;}
.gf-range__i::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--flame);box-shadow:0 2px 8px rgba(0,0,0,.35);cursor:grab;}
.gf-range__i::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--flame);box-shadow:0 2px 8px rgba(0,0,0,.35);cursor:grab;}
.gf-range__i:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.08);}
.gf-range__i:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(253,86,49,.35);}
.gf-range__io{display:flex;align-items:center;gap:8px;margin-top:2px;}
.gf-range__io>i{color:var(--muted);font-style:normal;}
.gf-range__io label{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:7px 12px;border:1px solid var(--line-2);border-radius:12px;background:var(--ink-3);cursor:text;}
.gf-range__io label:focus-within{border-color:var(--bronze-dim);}
.gf-range__io span{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.gf-range__io input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--paper);font:700 15px 'Manrope',sans-serif;font-variant-numeric:tabular-nums;padding:0;-moz-appearance:textfield;}
.gf-range__io input::-webkit-inner-spin-button,.gf-range__io input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
.gf-range__io input::placeholder{color:var(--muted-2,var(--muted));font-weight:600;}
.gf-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
.gf-pr{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 11px;border-radius:999px;border:1px solid var(--line);font-size:12.5px;font-weight:700;color:var(--paper-dim)!important;background:rgba(255,255,255,.015);transition:.15s;}
.gf-pr:hover{border-color:var(--bronze-dim);color:var(--paper)!important;}
.gf-pr small{font-size:11px;}
.gf-pr.is-on{border-color:var(--flame);background:var(--gf-flame-soft);color:var(--paper)!important;}
.gf-note{margin:10px 0 0!important;font-size:12px;line-height:1.5;color:var(--muted);}
.gf-note[hidden]{display:none;}

/* ---------- toolbar ---------- */
.gf-bar{position:relative;display:flex;align-items:center;gap:12px;margin-bottom:14px;min-height:44px;}
.gf-bar__btn{display:none;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--panel);color:var(--paper);font:700 14px/1 'Manrope',sans-serif;cursor:pointer;}
.gf-bar__n{background:var(--flame);color:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:3px 7px;line-height:1;}
.gf-count{font-size:14px;color:var(--muted);font-weight:600;white-space:nowrap;}
.gf-count b{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:26px;color:var(--paper);font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-right:2px;}
.gf-bar__r{margin-left:auto;display:flex;align-items:center;gap:10px;}
.gf-sort{position:relative;display:flex;align-items:center;gap:8px;height:44px;padding:0 14px 0 16px;border:1px solid var(--line-2);border-radius:999px;background:var(--panel);font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;}
.gf-sort:focus-within{border-color:var(--bronze-dim);}
.gf-sort select{appearance:none;-webkit-appearance:none;border:0;outline:0;background:transparent;color:var(--paper);font:700 14px 'Manrope',sans-serif;cursor:pointer;padding-right:18px;margin-right:-18px;position:relative;z-index:1;}
.gf-sort select option{background:var(--panel);color:var(--paper);}
.gf-sort svg{color:var(--muted);}
.gf-bar .view{background:var(--panel);}
.gf-bar .view button{width:42px;height:42px;}
.gf-progress{position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:2px;overflow:hidden;opacity:0;transition:opacity .2s;}
.gf-progress::after{content:"";position:absolute;top:0;bottom:0;width:36%;background:linear-gradient(90deg,transparent,var(--flame),var(--bronze),transparent);animation:gfbar 1s linear infinite;}
.gf.is-loading .gf-progress{opacity:1;}
@keyframes gfbar{from{left:-36%}to{left:100%}}

/* chips */
.gf-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;}
.gf-chips:empty{display:none;}
.gf-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 8px 0 14px;border-radius:999px;border:1px solid var(--bronze-dim);background:var(--gf-glow);color:var(--paper)!important;font-size:13.5px;font-weight:600;white-space:nowrap;transition:.15s;}
.gf-chip:hover{border-color:var(--bronze);}
.gf-chip__x{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:rgba(127,127,127,.16);color:var(--paper-dim);}
.gf-chip:hover .gf-chip__x{background:var(--flame);color:#fff;}
.gf-chip--scope{border-color:var(--line-2);background:transparent;color:var(--bronze-hi)!important;}
.gf-chips__clear{font-size:13px;font-weight:700;color:var(--flame)!important;padding:8px 6px;white-space:nowrap;}
.gf-chips__clear:hover{text-decoration:underline!important;}

/* results */
.gf-results{position:relative;transition:opacity .2s;}
.gf.is-loading .gf-results{opacity:.45;pointer-events:none;}
.gf-results .cat-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.gf-card__flags{position:absolute;left:12px;bottom:12px;display:flex;gap:6px;flex-wrap:wrap;z-index:1;}
.gf-card__flags span{font-size:10.5px;font-weight:800;letter-spacing:.04em;padding:5px 9px;border-radius:7px;background:rgba(18,161,80,.88);color:#fff;}
.gf-card__by{margin-top:10px;font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.card__b h3{overflow-wrap:anywhere;}
.card.gf-in{animation:gfin .45s var(--ease) both;}
@keyframes gfin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.gf-more{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:30px;}
.gf-more[hidden]{display:none;}
.gf-more__meta{font-size:13px;color:var(--muted);font-weight:600;}
.gf-morebtn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border-radius:999px;border:1px solid var(--line-2);color:var(--paper)!important;font-weight:700;font-size:15px;background:var(--panel);transition:.2s;}
.gf-morebtn:hover{border-color:var(--bronze);color:var(--bronze-hi)!important;}
.gf-morebtn.is-busy{opacity:.6;pointer-events:none;}
.gf-pager{margin-top:22px!important;}

/* empty state */
.gf-empty{text-align:center;padding:52px 22px;border:1px dashed var(--line-2);border-radius:var(--r-lg,22px);background:radial-gradient(120% 90% at 50% 0%,var(--gf-glow),transparent 60%);}
.gf-empty__ic{width:78px;height:78px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);color:var(--bronze);}
.gf-empty h3{font-size:clamp(22px,3vw,28px)!important;font-weight:400!important;margin:0 0 8px!important;}
.gf-empty p{color:var(--muted);font-size:15px;max-width:46ch;margin:0 auto 18px!important;}
.gf-empty__sugs{display:flex;flex-direction:column;gap:8px;max-width:440px;margin:0 auto 22px;}
.gf-sug{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:0 16px;border-radius:14px;border:1px solid var(--line-2);background:var(--panel);color:var(--paper-dim)!important;font-size:14.5px;text-align:left;transition:.15s;}
.gf-sug b{color:var(--paper);}
.gf-sug em{font-style:normal;font-weight:800;font-size:13px;color:var(--flame);white-space:nowrap;}
.gf-sug:hover{border-color:var(--bronze);}
.gf-empty__cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

/* sheets + scrim (mobile) */
.gf-scrim{position:fixed;inset:0;z-index:4990;background:rgba(8,6,12,.58);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;transition:opacity .25s;}
.gf-scrim.is-on{opacity:1;}
.gf-scrim[hidden]{display:none;}
.gf-sortsheet{position:fixed;left:0;right:0;bottom:0;z-index:5001;background:var(--gf-sheet);border-radius:22px 22px 0 0;border:1px solid var(--line);border-bottom:0;padding:6px 0 calc(10px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px -20px rgba(0,0,0,.6);transform:translateY(100%);transition:transform .3s var(--ease);}
.gf-sortsheet.is-open{transform:none;}
.gf-sortsheet[hidden]{display:none;}
.gf-sheet__head{display:flex;align-items:center;justify-content:space-between;padding:10px 18px 6px;}
.gf-sheet__head h2{font-size:21px!important;font-weight:420!important;margin:0!important;}
.gf-sheet__head .gf-x{display:grid;}
.gf-sortlist{display:flex;flex-direction:column;padding:0 8px;}
.gf-sortlist button{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:var(--paper-dim);font:600 16px 'Manrope',sans-serif;cursor:pointer;text-align:left;}
.gf-sortlist button svg{opacity:0;color:var(--flame);}
.gf-sortlist button.is-on{color:var(--paper);font-weight:800;}
.gf-sortlist button.is-on svg{opacity:1;}
.gf-sortlist button:hover{background:var(--gf-glow);}
html.gf-lock,html.gf-lock body{overflow:hidden!important;overscroll-behavior:none;}
/* .wrap is position:relative + z-index:1 (its own stacking context) — lift it above the sticky
   site header (z 1000) while a sheet is open, otherwise the header covers the sheet's top. */
html.gf-lock .wrap.catalog{z-index:6000;}

/* ---------- responsive ---------- */
@media(max-width:1180px){.gf-results .cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:920px){
  .cat-layout.gf{grid-template-columns:minmax(0,1fr);gap:0;}
  /* sticky action bar under the site header */
  .gf-bar{position:sticky;top:var(--gf-stick);z-index:30;margin:0 calc(-1 * clamp(18px,5vw,44px)) 12px;padding:10px clamp(18px,5vw,44px);background:var(--ink);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s;gap:8px;}
  .gf-bar.is-stuck{border-bottom-color:var(--line);box-shadow:0 12px 24px -18px rgba(0,0,0,.6);}
  .gf-bar__btn{display:inline-flex;}
  .gf-bar__r{display:none;}
  .gf-count{margin-left:auto;}
  .gf-count b{font-size:21px;}
  .gf-progress{bottom:-1px;}
  .gf-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * clamp(18px,5vw,44px)) 14px;padding:0 clamp(18px,5vw,44px);}
  .gf-chips::-webkit-scrollbar{display:none;}
  .gf-chip,.gf-chips__clear{flex:none;min-height:40px;}
  /* the filter panel becomes a full-height bottom sheet (only when JS is on) */
  .gf-js .gf-side{position:fixed;left:0;right:0;bottom:0;top:max(10px,env(safe-area-inset-top));max-height:none;z-index:5000;border-radius:22px 22px 0 0;border-bottom:0;background:var(--gf-sheet);box-shadow:0 -24px 70px -20px rgba(0,0,0,.7);transform:translateY(104%);visibility:hidden;transition:transform .32s var(--ease),visibility 0s linear .32s;}
  .gf-js .gf-side.is-open{transform:none;visibility:visible;transition:transform .32s var(--ease),visibility 0s;}
  .gf-js .gf-side::before{content:"";position:absolute;top:7px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:4px;background:var(--line-2);}
  .gf-js .gf-side__foot{display:flex;}
  .gf-x{display:grid;}
  .gf-side__head{padding:18px 18px 12px;}
  .gf-side:not(.is-open) .gf-side__head .gf-x{display:none;}
  html:not(.gf-js) .gf-side{position:static;max-height:none;margin-bottom:22px;}
  html:not(.gf-js) .gf-x{display:none;}
  .gf-o{min-height:46px;font-size:15.5px;}
  .gf-p{min-height:44px;padding:0 16px;font-size:15px;}
  .gf-sw{min-height:48px;font-size:15.5px;}
  .gf-g__h button{padding:17px 18px;}
  .gf-find{height:46px;}
  .gf-find input{font-size:16px;}
  .gf-range__io input{font-size:16px;}
  .gf-seg span{height:40px;font-size:14px;}
  .gf-pr{min-height:40px;padding:0 13px;}
  .gf-tiles{grid-template-columns:repeat(4,1fr);}
  .gf-range__i::-webkit-slider-thumb{width:28px;height:28px;}
  .gf-range__i{height:28px;top:40px;left:-14px;right:-14px;width:calc(100% + 28px);}
  .gf-range__i::-webkit-slider-runnable-track{height:28px;}
}
@media(max-width:560px){
  .gf-results .cat-grid{grid-template-columns:minmax(0,1fr);}
  .gf-tiles{grid-template-columns:repeat(3,1fr);}
  .gf-bar__btn{padding:0 14px;}
  .gf-bar__btn span[data-gf-sortlabel]{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .gf-search input[type=search]{font-size:16px;}
  .gf-empty{padding:40px 16px;}
}
@media(max-width:380px){
  .gf-bar__btn{padding:0 12px;gap:6px;font-size:13.5px;}
  .gf-count{font-size:12.5px;}
  .gf-count b{font-size:19px;}
  .gf-tiles{grid-template-columns:repeat(3,1fr);gap:6px;}
}
@media(prefers-reduced-motion:reduce){.gf *,.gf-side,.gf-sortsheet{transition:none!important;animation:none!important;}}
