.query-filter-native { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; pointer-events:none!important; }
.query-filter-multiselect { display:inline-flex; min-width:0; max-width:100%; vertical-align:middle; }
.query-filter-toggle { display:inline-flex; align-items:center; justify-content:space-between; gap:8px; min-height:28px; max-width:240px; padding:4px 8px; border:1px solid var(--line,#64748b); border-radius:6px; background:var(--panel-soft,#1e293b); color:var(--fg,#f1f5f9); font:inherit; font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer; }
.query-filter-toggle::after { content:''; display:block; flex:0 0 5px; width:5px; height:5px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin:0 2px 3px; }
.query-filter-toggle.is-active { border-color:var(--chart-accent,#60a5fa); background:color-mix(in srgb,var(--chart-accent,#60a5fa) 14%,var(--panel,#fff)); }
.query-filter-toggle:focus-visible,.query-filter-search:focus-visible { outline:2px solid var(--chart-accent,#60a5fa); outline-offset:2px; }
.query-filter-toggle:disabled { opacity:.55; cursor:not-allowed; }
.query-filter-menu { position:fixed; z-index:11050; display:flex; flex-direction:column; box-sizing:border-box; padding:8px; border:1px solid var(--line,#64748b); border-radius:8px; background:var(--panel,#1e293b); color:var(--fg,#f1f5f9); box-shadow:0 12px 32px #0004; overflow:hidden; font-size:12px; }
.query-filter-menu[hidden] { display:none!important; }
.query-filter-search { flex:0 0 auto; box-sizing:border-box; width:100%; min-height:32px; padding:5px 8px; border:1px solid var(--line,#64748b); border-radius:5px; background:var(--panel-soft,#0f172a); color:var(--fg,#f1f5f9); font:inherit; }
.query-filter-options { margin-top:6px; overflow:auto; overscroll-behavior:contain; min-height:0; }
.query-filter-option { display:flex; align-items:center; gap:8px; min-height:30px; padding:4px 6px; cursor:pointer; border-radius:4px; }
.query-filter-option:hover { background:var(--panel-soft,#334155); }
.query-filter-option span { min-width:0; overflow-wrap:anywhere; }
/* All multi-value query dropdowns use text-only options. Their real checkboxes
   remain keyboard/screen-reader accessible; form and table checkboxes stay visible. */
.query-filter-menu .query-filter-option { position:relative; flex-direction:row; gap:0; }
.query-filter-menu .query-filter-option > input[type="checkbox"] {
  position:absolute; width:1px; height:1px; min-height:0; padding:0; margin:-1px;
  overflow:hidden; clip-path:inset(50%); white-space:nowrap; pointer-events:none;
}
.query-filter-menu .query-filter-option:has(> input:checked) {
  background:color-mix(in srgb,var(--chart-accent,#60a5fa) 16%,var(--panel,#fff));
  color:var(--fg,#f1f5f9); font-weight:600;
}
.query-filter-menu .query-filter-option:has(> input:focus-visible) {
  outline:2px solid var(--chart-accent,#60a5fa); outline-offset:-2px;
}
.query-filter-hint,.query-filter-empty { flex:0 0 auto; padding:7px 3px 0; color:var(--muted,#94a3b8); font-size:10px; }
#mainAppShell > .top-toolbar .query-filter-toggle { min-height:24px; max-width:120px; padding:2px 5px; font-size:11px; }
@media(max-width:980px) {
  #mainAppShell.has-query-multiselect > .top-toolbar > .top-toolbar-scroll { flex-wrap:wrap; }
  #mainAppShell.has-query-multiselect > .top-toolbar .toolbar-filters.filter-group-box { flex-basis:100%; width:100%; }
  #mainAppShell.has-query-multiselect > .top-toolbar .toolbar-filter-global-select-row { max-width:100%; }
}
