.filter-component{margin:16px 0 18px}
.filter-bar{margin:0}
.filter-quick-controls{display:flex;align-items:flex-end;gap:10px;min-width:0}
.filter-quick-controls>.filter-field,.filter-quick-controls>.multi-combobox{flex:1 1 180px;min-width:140px}
.filter-quick-controls>.filter-field:first-child{flex:2 1 280px}
.filter-field{display:grid;gap:5px;min-width:0;color:var(--ink);font-weight:700}
.filter-field>span,.filter-panel .multi-combobox>label{color:var(--muted);font-size:12px;font-weight:800}
.filter-field input,.filter-field select{min-height:46px}
.filter-panel-button{flex:0 0 auto;min-height:46px;margin-left:auto;white-space:nowrap}
.filter-panel-button svg{width:18px;height:18px;fill:currentColor}
.filter-panel-button>b{display:inline-grid;min-width:22px;padding:2px 6px;place-items:center;border-radius:99px;background:var(--brand);color:#fff;font-size:11px}
.filter-panel-button>b[hidden]{display:none}
.filter-meta{display:grid;gap:6px;min-height:28px;margin-top:10px}
.filter-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:11px 13px;border:1px solid #cbded8;border-radius:11px;background:#edf6f3}
.filter-status[hidden]{display:none}
.filter-status>b{margin-right:2px;color:#315d53;font-size:13px}
.filter-status-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 7px 5px 10px;border:0;border-radius:999px;background:#fff;color:#315d53;font-family:inherit;font-size:12px;font-weight:700;line-height:1.3;cursor:pointer}
.filter-status-chip i{display:grid;width:18px;height:18px;place-items:center;border-radius:50%;background:#e5eeeb;font-size:15px;font-style:normal;line-height:1}
.filter-status-chip:hover{background:#dcece7}
.filter-status-reset{margin-left:auto;border:0;background:transparent;color:var(--danger);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}
.filter-status-reset:hover{text-decoration:underline}
.filter-results-count{display:block;padding-left:3px;color:var(--muted);font-size:12px}
.filter-results-count b{color:var(--ink);font-variant-numeric:tabular-nums}
.filter-panel{width:min(480px,calc(100vw - 24px));max-height:min(760px,calc(100dvh - 24px));padding:0;border:0;border-radius:15px;background:#fff;box-shadow:0 25px 70px rgba(0,0,0,.3);overflow:hidden}
.filter-panel::backdrop{background:rgba(10,25,22,.55)}
.filter-panel>form{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:min(760px,calc(100dvh - 24px));max-height:inherit;padding:0}
.filter-panel-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--line)}
.filter-panel-header h2{margin:0;font:700 24px Georgia,serif}
.filter-panel-header .dialog-close{position:static}
.filter-panel-body{min-height:0;padding:20px 24px;overflow-y:auto;overscroll-behavior:contain}
.filter-panel-fields{display:grid;gap:16px}
.filter-panel .multi-control{min-height:46px}
.multi-combobox.multi-hide-selected .multi-chips{display:none}
.filter-panel .multi-results{z-index:100}
.filter-panel .filter-range{display:grid;gap:10px;margin:0;padding:14px;border:1px solid var(--line);border-radius:10px}
.filter-panel .filter-range legend{padding:0 5px;font-weight:800}
.filter-panel .filter-range label{display:grid;gap:5px;color:var(--muted);font-size:12px}
.filter-boolean{display:flex;align-items:center;gap:9px}
.filter-boolean input{width:18px;min-height:18px;margin:0}
.filter-view-setting{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.filter-panel-footer{display:flex;justify-content:space-between;gap:12px;padding:16px 24px;border-top:1px solid var(--line);background:#fff}
.filters-loading{opacity:.58;pointer-events:none;transition:opacity .15s}
@media(max-width:1050px){.filter-quick-controls{flex-wrap:wrap}.filter-panel-button{margin-left:0}.filter-quick-controls>.filter-field,.filter-quick-controls>.multi-combobox{flex-basis:calc(33.333% - 8px)}}
@media(max-width:700px){.filter-quick-controls>.filter-field,.filter-quick-controls>.multi-combobox{flex-basis:calc(50% - 5px)}.filter-panel-button{margin-left:auto}.filter-panel-button-label{display:none}}
@media(max-width:520px){.filter-quick-controls>.filter-field:first-child{flex-basis:100%}.filter-quick-controls>.filter-field:not(:first-child),.filter-quick-controls>.multi-combobox{flex:1 1 calc(50% - 5px);min-width:0}.filter-status-reset{width:100%;margin-left:0;text-align:left}.filter-panel{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border-radius:0}.filter-panel>form{height:100dvh;max-height:none}.filter-panel-body{padding:18px}.filter-panel-header,.filter-panel-footer{padding-left:18px;padding-right:18px}}
