/* Listings page: area picker + refine panel */
.pick{position:relative;width:min(100%,280px);margin:0 auto 22px;z-index:5}
.pick summary{list-style:none;cursor:pointer;text-align:center;padding:14px 40px;border:1px solid var(--k-ink);border-radius:var(--r);background:linear-gradient(90deg,var(--k-accent-2),var(--k-accent));color:#fff;font-size:1.2rem}
.pick summary::-webkit-details-marker{display:none}
.pick summary::after{content:'';position:absolute;top:24px;left:16px;width:8px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .2s}
.pick[open] summary::after{transform:rotate(-135deg);top:28px}
.pick ul{position:absolute;inset-inline:0;top:calc(100% + 4px);list-style:none;margin:0;padding:6px;max-height:60vh;overflow:auto;background:var(--k-bar);border:1px solid var(--k-accent);border-radius:var(--r);box-shadow:0 8px 24px var(--k-shade)}
.pick a{display:block;padding:8px 10px;border-radius:var(--r);color:var(--k-ink);text-decoration:none}
.pick a:hover{background:var(--k-accent);color:#fff}

/* refine: trigger row */
.rf{margin-bottom:18px}
.rf-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 16px}
.rf-go{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border:2px solid var(--k-accent);border-radius:999px;background:transparent;color:var(--k-ink);font-weight:700}
.rf-go:hover{background:color-mix(in srgb,var(--k-accent) 20%,transparent)}
.rf-go i{font-style:normal;min-width:22px;padding:0 6px;border-radius:999px;background:var(--k-accent);color:#fff;font-size:.8rem}
.rf-go i:empty{display:none}
.rf-sum{color:var(--k-muted);font-size:.95rem}
.rf-sum b{color:var(--k-ink)}
.rf-on{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px}
.rf-on:empty{display:none}
.rf-on button{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 12px;border:0;border-radius:999px;background:var(--k-bar);color:var(--k-ink);font-size:.85rem}
.rf-on button::after{content:'×';display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--k-accent);color:#fff;line-height:1}
.rf-on .rf-x{background:transparent;color:var(--k-hot);text-decoration:underline;padding-inline:8px}
.rf-on .rf-x::after{display:none}

/* refine: sheet */
.rf-d{width:min(100%,640px);max-height:86vh;padding:0;border:1px solid var(--k-line);border-radius:14px;background:var(--k-bg);color:var(--k-ink);overflow:hidden}
.rf-d[open]{display:flex;flex-direction:column}
.rf-d::backdrop{background:#000b}
.rf-h{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--k-line)}
.rf-h b{font-size:1.15rem}
.rf-h button{border:0;background:none;font-size:1.6rem;line-height:1;color:var(--k-muted)}
.rf-b{overflow:auto;padding:4px 18px 10px}
.rf-b fieldset{border:0;margin:0;padding:12px 0;border-bottom:1px dashed var(--k-line)}
.rf-b legend{float:right;width:100%;font-weight:700;color:var(--k-hot);padding:0;margin-bottom:8px}
.rf-b legend+*{clear:both}
.rf-b legend small{color:var(--k-muted);font-weight:400;margin-inline-start:6px}
.rf-b p{margin:6px 0 0;color:var(--k-muted);font-size:.8rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border:1px solid var(--k-line);border-radius:999px;background:color-mix(in srgb,var(--k-bar) 55%,transparent);font-size:.92rem;transition:background .15s,border-color .15s}
.chip sup{font-size:.7rem;color:var(--k-muted)}
.chip input:checked+span{background:var(--k-accent);border-color:var(--k-accent);color:#fff}
.chip input:focus-visible+span{outline:2px solid var(--k-ink);outline-offset:2px}
.chip input:disabled+span{opacity:.35;text-decoration:line-through}
.rf-f{display:flex;gap:10px;padding:12px 18px;border-top:1px solid var(--k-line);background:color-mix(in srgb,var(--k-bar) 40%,var(--k-bg))}
.rf-f .pill{flex:1;justify-content:center;padding-block:11px}
.rf-f .rf-clr{border:1px solid var(--k-line);border-radius:var(--r);background:none;padding:0 16px}
.rf-none{text-align:center;padding:30px 10px;border:1px dashed var(--k-line);border-radius:var(--r);color:var(--k-muted)}
.tile.off,.deck.off,.hd.off{display:none}
@media (max-width:719px){
  .rf-d{margin:auto 0 0;width:100%;max-width:none;border-radius:14px 14px 0 0}
}
