.filter-select{position:relative;min-width:0;width:140px}
.filter-select[data-filter=character]{width:205px}
.filter-select-button{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:8px 12px;background:var(--bg-surface);color:var(--text-primary);border:1.5px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-paper-sm);font-size:13px;text-align:left;transition:border-color .15s,box-shadow .15s}
.filter-select-button:hover,.filter-select-button[aria-expanded=true]{border-color:var(--brand);box-shadow:var(--shadow-paper)}
.filter-select-button:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
.filter-select-value{display:flex;align-items:center;gap:9px;flex:1;min-width:0}
.filter-option-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.filter-option-count{flex:none;padding:1px 7px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--bg-app);color:var(--text-secondary);font-family:var(--font-mono);font-size:10px;line-height:1.6}
.filter-select-arrow{flex:none;width:8px;height:8px;border-right:1.5px solid var(--text-secondary);border-bottom:1.5px solid var(--text-secondary);transform:rotate(45deg);margin:0 2px 4px;transition:transform .15s}
.filter-select-button[aria-expanded=true] .filter-select-arrow{transform:rotate(225deg);margin-bottom:-3px}
.filter-select-menu{position:fixed;z-index:180;overflow-y:auto;overscroll-behavior:contain;padding:7px;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:12px;box-shadow:var(--shadow-paper);scrollbar-width:thin;scrollbar-color:var(--border-subtle) transparent}
.filter-option{position:relative;display:flex;align-items:center;gap:10px;min-height:42px;margin:2px 0;padding:8px 10px;border:1px solid transparent;border-radius:7px;color:var(--text-primary);font-size:13px;line-height:1.5;cursor:pointer}
.filter-option.is-active{background:var(--bg-app);border-color:var(--border-subtle)}
.filter-option[aria-selected=true]{background:var(--brand-soft);color:var(--brand);font-weight:650}
.filter-option-check{width:15px;flex:none;color:var(--brand);visibility:hidden}
.filter-option[aria-selected=true] .filter-option-check{visibility:visible}
@media(max-width:760px){
  .filter-bar .filter-fields{grid-template-columns:1.2fr 1fr 1fr;gap:10px;width:100%}
  .filter-bar label{flex-direction:column;align-items:stretch;gap:7px}
  .filter-select,.filter-select[data-filter=character]{width:100%}
  .filter-select-button{font-size:12px;padding:8px 9px;gap:7px}
  .filter-select-value{gap:4px}
  .filter-select-value .filter-option-count{display:none}
  .filter-option{min-height:44px}
}
@media(prefers-reduced-motion:reduce){.filter-select-button,.filter-select-arrow{transition:none}}
/* Analytics sorts remain unavailable until the backend has a real aggregate. */
.filter-option[aria-disabled="true"]{opacity:.45;cursor:not-allowed}
