.dir-filters {
  margin: 0 0 1rem;
  padding: 1rem;
  border: 1px solid rgba(148, 163, 184, 0.3);
  border-radius: 12px;
  background: var(--surface, #111827);
}
.dir-filters__fields {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)) auto;
  gap: 0.85rem;
  align-items: end;
}
.dir-filters label {
  display: grid;
  gap: 0.4rem;
  min-width: 0;
  font-size: 0.85rem;
  font-weight: 600;
}
.dir-filters input, .dir-filters select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 0.65rem;
  border: 1px solid #64748b;
  border-radius: 7px;
  color: var(--text-hero, #f1f5f9);
  background: var(--bg, #0c1222);
  font: inherit;
}
.dir-filters input::placeholder { color: #94a3b8; }
.dir-filters button {
  min-height: 44px;
  margin: 0;
  padding: 0.65rem 0.8rem;
  border: 1px solid #64748b;
  border-radius: 7px;
  background: transparent;
  color: var(--text-hero, #f1f5f9);
  font: inherit;
  cursor: pointer;
}
.dir-filters button:hover { background: rgba(148, 163, 184, 0.15); }
.dir-filters :is(input, select, button):focus-visible {
  outline: 3px solid #7dd3fc;
  outline-offset: 3px;
}
.dir-filters__hint, .dir-result-count {
  margin: 0.75rem 0 0;
  font-size: 0.85rem;
  line-height: 1.5;
  color: var(--muted-hero, #94a3b8);
}
.dir-empty { padding: 2rem 1rem; text-align: center; line-height: 1.6; }
@media (max-width: 800px) {
  .dir-filters__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dir-filters__search { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
  .dir-filters__fields { grid-template-columns: minmax(0, 1fr); }
}
.dir-filters__fields {grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr)) auto}
.dir-filters__advanced {margin-top:1rem;border-top:1px solid #334155;padding-top:.8rem}
.dir-filters__advanced summary {cursor:pointer;font-weight:600;color:#93c5fd;min-height:30px}
.dir-filters__extra {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0}
.dir-filters fieldset {border:1px solid #334155;border-radius:8px;padding:.8rem;margin:1rem 0}.dir-filters legend{font-weight:600}
.dir-filter-checks {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
.dir-filter-checks label {display:flex;align-items:flex-start;gap:.5rem;line-height:1.5}
.dir-filter-checks input {width:17px;height:17px;min-height:17px;flex:none;margin:.2rem 0 0;accent-color:#60a5fa}
@media(max-width:1000px){.dir-filters__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.dir-filters__search{grid-column:1/-1}}
@media(max-width:650px){.dir-filter-checks,.dir-filters__extra{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.dir-filters__fields,.dir-filters__extra,.dir-filter-checks{grid-template-columns:1fr}}
