/* ── ADVANCED FILTER MODAL (shared) ── */
.advf-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.55);
  display:flex;align-items:center;justify-content:center;
  z-index:9500;opacity:0;visibility:hidden;transition:opacity .2s;padding:24px;
}
.advf-backdrop.open{opacity:1;visibility:visible}
.advf-modal{
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:var(--radius-lg);box-shadow:var(--shadow);
  width:min(760px,100%);max-height:86vh;display:flex;flex-direction:column;
  transform:translateY(12px);transition:transform .2s;
}
.advf-backdrop.open .advf-modal{transform:translateY(0)}
.advf-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;border-bottom:1px solid var(--border-soft);flex-shrink:0;
}
.advf-title{
  font-family:var(--font-title);font-size:15px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;color:var(--text-primary);
}
.advf-close{
  background:transparent;border:none;color:var(--text-secondary);
  font-size:16px;cursor:pointer;padding:4px 8px;border-radius:var(--radius);transition:all .15s;
}
.advf-close:hover{color:var(--text-primary);background:var(--bg-elevated)}
.advf-body{
  padding:16px 20px;overflow-y:auto;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;
}
.advf-group{display:flex;flex-direction:column;gap:6px;min-width:0}
.advf-group-hdr{display:flex;align-items:center;justify-content:space-between;gap:8px}
.advf-group-lbl{
  font-family:var(--font-title);font-size:.68rem;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);
}
.advf-group-actions{display:flex;gap:4px}
.advf-mini-btn{
  background:transparent;border:1px solid var(--border);color:var(--text-secondary);
  font-size:.65rem;padding:2px 7px;border-radius:5px;cursor:pointer;transition:all .15s;
}
.advf-mini-btn:hover{border-color:var(--accent);color:var(--accent)}
.advf-search{
  background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);
  padding:5px 9px;color:var(--text-primary);font-size:.78rem;outline:none;font-family:var(--font-body);
}
.advf-search:focus{border-color:var(--accent)}
.advf-list{
  border:1px solid var(--border-soft);border-radius:var(--radius);
  max-height:220px;overflow-y:auto;
}
.advf-item{
  display:flex;align-items:center;gap:8px;padding:6px 9px;cursor:pointer;
  font-size:.78rem;color:var(--text-primary);border-bottom:1px solid var(--border-soft);transition:background .1s;
}
.advf-item:last-child{border-bottom:none}
.advf-item:hover{background:var(--bg-elevated)}
.advf-item.checked{background:var(--accent-dim)}
.advf-item input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;flex-shrink:0;cursor:pointer}
.advf-item-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.advf-item-cnt{font-size:.68rem;color:var(--text-muted);flex-shrink:0}
.advf-empty{padding:14px;text-align:center;font-size:.75rem;color:var(--text-muted)}
.advf-footer{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;border-top:1px solid var(--border-soft);flex-shrink:0;flex-wrap:wrap;gap:10px;
}
.advf-footer-right{display:flex;gap:8px}
.advf-btn{
  border-radius:var(--radius);padding:0 14px;height:34px;font-size:.78rem;
  font-family:var(--font-title);font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  cursor:pointer;transition:all .2s;white-space:nowrap;border:1px solid var(--border);
  background:transparent;color:var(--text-secondary);
}
.advf-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}
.advf-btn-reset:hover{border-color:var(--danger);color:var(--danger)}
.advf-btn-apply{background:var(--accent);border-color:var(--accent);color:#fff}
.advf-btn-apply:hover{background:var(--accent-hover,#c94e14);border-color:var(--accent-hover,#c94e14)}

/* ── Trigger button (in filter bar) ── */
.fbar-btn-adv{
  background:transparent;border:1px solid var(--border);
  border-radius:var(--radius);color:var(--text-secondary);
  padding:0 12px;font-size:.78rem;height:32px;font-family:var(--font-title);font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .2s;white-space:nowrap;
  display:inline-flex;align-items:center;gap:6px;
}
.fbar-btn-adv:hover{border-color:var(--accent);color:var(--accent)}
.fbar-btn-adv.has-active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.advf-trigger-badge{
  background:var(--accent);color:#fff;border-radius:10px;
  padding:0 6px;font-size:.66rem;font-weight:800;line-height:16px;min-width:16px;text-align:center;
}

@media(max-width:640px){
  .advf-body{grid-template-columns:1fr}
}
