.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.875rem;position:relative}.filter-bar .dim-wrap{position:relative;display:inline-flex}.filter-bar .dim-btn,.filter-bar .palette-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-muted);font-size:.825rem;font-family:inherit;cursor:pointer;transition:border-color .12s,color .12s}.filter-bar .dim-btn:hover,.filter-bar .palette-btn:hover{border-color:var(--text-muted);color:var(--text)}.filter-bar .dim-btn.active,.filter-bar .dim-btn[aria-expanded=true],.filter-bar .palette-btn[aria-expanded=true]{border-color:#2563eb;color:#2563eb}.filter-bar .dim-dot{width:.45rem;height:.45rem;border-radius:50%;background:#2563eb;opacity:0;transition:opacity .12s}.filter-bar .dim-btn.active .dim-dot{opacity:1}.filter-bar .dim-summary:not(:empty):before{content:"· ";color:var(--text-muted)}.filter-bar .dim-summary{color:var(--text);font-weight:500}.filter-bar .palette-btn kbd{display:inline-block;background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:0 .3em;font-size:.7rem;font-family:inherit;color:var(--text-muted)}.filter-bar .filter-chips{display:inline-flex;flex-wrap:wrap;gap:.4rem}.filter-chip-wrap{display:inline-flex;align-items:stretch;border:1px solid color-mix(in srgb,#2563eb 35%,var(--border));border-radius:999px;overflow:hidden;background:color-mix(in srgb,#2563eb 8%,var(--surface))}.filter-chip{all:unset;cursor:pointer;padding:.2rem .55rem .2rem .65rem;font-size:.78rem;color:var(--text);display:inline-flex;align-items:center;gap:.3rem}.filter-chip:hover{background:color-mix(in srgb,#2563eb 14%,transparent)}.filter-chip .chip-key{color:var(--text-muted);font-weight:500}.filter-chip .chip-val{font-weight:600}.chip-x{all:unset;cursor:pointer;padding:0 .5rem;font-size:.95rem;color:var(--text-muted);border-left:1px solid color-mix(in srgb,#2563eb 25%,var(--border));display:inline-flex;align-items:center;line-height:1}.chip-x:hover{background:color-mix(in srgb,#dc2626 14%,transparent);color:#dc2626}.filter-bar .clear-all{all:unset;cursor:pointer;padding:.2rem .5rem;font-size:.78rem;color:var(--text-muted);border-radius:4px}.filter-bar .clear-all:hover{color:var(--text);background:var(--surface)}.filter-bar .clear-all.hidden{display:none}.filter-bar .filter-count{font-size:.78rem;color:var(--text-muted);margin-left:auto}.filter-bar .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.filter-bar .dim-panel,.filter-bar .palette-panel{position:absolute;top:calc(100% + .4rem);left:0;z-index:150;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 28px #0000002e;overflow:hidden;width:320px;max-height:min(60vh,520px);display:flex;flex-direction:column;animation:fb-slide .12s ease-out}.filter-bar .palette-panel{width:360px}@keyframes fb-slide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.filter-bar .dim-panel.hidden,.filter-bar .palette-panel.hidden,.filter-bar .stage.hidden{display:none}.filter-bar .dim-panel.flip-x,.filter-bar .palette-panel.flip-x{left:auto;right:0}.filter-bar .dim-panel.flip-y,.filter-bar .palette-panel.flip-y{top:auto;bottom:calc(100% + .4rem)}.palette-input-wrap{padding:.6rem;border-bottom:1px solid var(--border);background:var(--bg)}.palette-input-wrap input{width:100%;padding:.4rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.875rem;font-family:inherit;outline:none}.palette-input-wrap input:focus{border-color:#2563eb}.dim-list{list-style:none;margin:0;padding:.3rem;overflow-y:auto;flex:1 1 auto}.dim-item{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border-radius:6px;cursor:pointer;font-size:.85rem;color:var(--text)}.dim-item.selected{background:#2563eb1f;outline:1px solid rgba(37,99,235,.4)}.dim-item-label{flex-shrink:0}.dim-item-summary{flex:1;text-align:right;color:var(--text-muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dim-item-arrow{color:var(--text-muted)}.dim-item-empty{list-style:none;padding:1rem .6rem;color:var(--text-muted);font-size:.825rem;text-align:center}.stage-value-header{display:flex;align-items:center;gap:.5rem;padding:.55rem .7rem;border-bottom:1px solid var(--border);background:var(--bg)}.stage-back,.value-stage-close{all:unset;cursor:pointer;color:var(--text-muted);padding:0 .3rem;font-size:1rem}.stage-back:hover,.value-stage-close:hover{color:var(--text)}.stage-value-title,.value-stage-title{font-weight:600;font-size:.875rem}.stage-value-body{flex:1 1 auto;overflow:auto}.palette-footer{display:flex;gap:1rem;padding:.45rem .7rem;border-top:1px solid var(--border);background:var(--bg);font-size:.65rem;color:var(--text-muted)}.palette-shortcut strong{color:var(--text);background:var(--surface);border:1px solid var(--border);padding:0 .2rem;border-radius:3px;font-family:monospace;margin-right:.2rem}.filter-bar .dim-panel{padding:0}.value-stage-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .7rem;border-bottom:1px solid var(--border);background:var(--bg)}.value-stage-close{font-size:1.1rem}.value-multi{display:flex;flex-direction:column;flex:1 1 auto;overflow:hidden}.value-typeahead{margin:.55rem .6rem 0;padding:.35rem .5rem;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);font-size:.85rem;font-family:inherit;outline:none}.value-typeahead:focus{border-color:#2563eb}.value-multi-toolbar{display:flex;gap:.3rem;padding:.4rem .6rem;border-bottom:1px solid var(--border)}.vmt-btn{all:unset;cursor:pointer;padding:.2rem .55rem;border:1px solid var(--border);border-radius:4px;font-size:.75rem;color:var(--text-muted);background:var(--bg)}.vmt-btn:hover{color:var(--text);border-color:var(--text-muted)}.value-multi-list{list-style:none;margin:0;padding:.3rem;overflow-y:auto;flex:1 1 auto;outline:none}.value-multi-row{display:flex;align-items:center;padding:.25rem .45rem;border-radius:5px;font-size:.85rem;gap:.55rem}.value-multi-row:hover,.value-multi-row.focused{background:#2563eb0f}.value-multi-label{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer;flex:1 1 auto;min-width:0}.value-multi-label input[type=checkbox]{accent-color:#2563eb;cursor:pointer}.value-flag{font-size:1rem;line-height:1}.value-label-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.value-count{color:var(--text-muted);font-size:.75rem;font-variant-numeric:tabular-nums}.value-only{all:unset;cursor:pointer;padding:0 .35rem;font-size:.7rem;color:var(--text-muted);border-radius:3px;text-transform:uppercase;letter-spacing:.04em;opacity:.6;transition:opacity .1s,color .1s}.value-only:hover,.value-multi-row:hover .value-only,.value-multi-row.focused .value-only{opacity:1;color:#2563eb}.value-range{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding:.6rem}.value-range input{width:5.5rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);font-family:inherit;font-size:.85rem;outline:none}.value-range input:focus{border-color:#2563eb}.value-range-dash{color:var(--text-muted)}.value-range-unit{color:var(--text-muted);font-size:.78rem}.value-range-apply,.value-range-clear{all:unset;cursor:pointer;padding:.35rem .85rem;border-radius:5px;font-size:.825rem}.value-range-apply{background:#2563eb;color:#fff}.value-range-apply:hover{background:#1d4ed8}.value-range-clear{color:var(--text-muted)}.value-range-clear:hover{color:var(--text);background:var(--surface)}.value-tristate,.value-single{display:flex;flex-wrap:wrap;gap:.3rem;padding:.6rem}.vt-btn,.vs-btn{all:unset;cursor:pointer;padding:.35rem .85rem;border:1px solid var(--border);border-radius:6px;font-size:.85rem;color:var(--text-muted);background:var(--surface)}.vt-btn:hover,.vs-btn:hover{color:var(--text);border-color:var(--text-muted)}.vt-btn.active,.vs-btn.active{background:#2563eb;border-color:#2563eb;color:#fff}.filter-backdrop{position:fixed;inset:0;background:#00000059;z-index:149;display:none}.filter-backdrop:not(.hidden){display:block}@media(max-width:600px){.filter-bar .dim-panel:not(.hidden),.filter-bar .palette-panel:not(.hidden){position:fixed;inset:auto 0 0;width:auto;border-radius:12px 12px 0 0;max-height:80vh;box-shadow:0 -10px 28px #0000002e;animation:fb-sheet-up .18s ease-out}@keyframes fb-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.filter-bar .dim-panel.flip-x,.filter-bar .palette-panel.flip-x{left:0;right:0}.filter-bar .dim-panel.flip-y,.filter-bar .palette-panel.flip-y{top:auto;bottom:0}}
