/* ── FILTER SECTION ─────────────────────────────────────────── */
.search-filter-section {
    margin:2rem 0; padding:1.25rem;
    background:rgb(from var(--nav-background-color) r g b / calc(alpha * 0.4));
    border:none;
    border-bottom:1px solid rgba(255,255,255,.08);
    border-radius:2px;
}
.search-filter-section form { margin-bottom:1rem; }
.search-filter-section form:last-child { margin-bottom:0; }

.search-filter-section input[type="text"] {
    flex:1; min-width:0; padding:8px 2px;
    border-radius:0;
    border:none; border-bottom:1px solid rgba(255,255,255,.15);
    background:transparent; color:var(--text);
    font-size:.95rem; font-family:"Lexend",sans-serif;
    transition:var(--transition);
}
.search-filter-section input[type="text"]:focus {
    outline:none; border-bottom-color:var(--primary);
    background:transparent; box-shadow:none;
}
.search-group { display:flex; align-items:center; gap:.5rem; flex:0 1 420px; min-width:0; }

.search-filter-section input[type="text"]::placeholder { color:rgba(255,255,255,.35); }

.search-filter-section button {
    display:inline-flex; align-items:center; justify-content:center;
    width:38px; height:38px; padding:0; flex-shrink:0;
    border:2px solid var(--primary-2-hsl); border-radius:50%;
    background:var(--primary); color:transparent;
    cursor:pointer; transition:var(--transition);
}
.search-filter-section button:hover { background:#0c0a1a; border-color:var(--primary-2-hsl); color:var(--primary); svg { stroke:var(--primary); } }
.search-filter-section button svg { width:16px; height:16px; stroke:var(--bg); stroke-width:4px; }

.tag-filter { display:flex; flex-wrap:wrap; gap:8px; margin-top:.75rem; }

.tag {
    padding:6px 16px; border-radius:var(--radius-pill);
    background:transparent; color:var(--text-muted);
    font-size:.85rem; font-weight:400; cursor:pointer;
    transition:var(--transition); border:1px solid rgba(255,255,255,.12); user-select:none;
}
.tag input { display:none; }
.tag:hover { color:var(--text); border-color:rgba(255,255,255,.3); }
.tag:has(input:checked) {
    background:transparent; border-color:var(--primary);
    color:var(--primary); font-weight:500; transform:none;
    box-shadow:none;
}

.location-select {
    padding:8px 2px; border-radius:0;
    background:transparent; color:var(--text);
    border:none; border-bottom:1px solid rgba(255,255,255,.15); min-width:200px;
    font-size:.95rem; font-family:"Lexend",sans-serif;
    cursor:pointer; transition:var(--transition); margin-right:1rem;
}
.location-select:hover { border-bottom-color:rgba(255,255,255,.35); }
.location-select:focus { outline:none; border-bottom-color:var(--primary); box-shadow:none; }
.location-select option { background:#111; color:var(--text); }

.filter-row { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; }
.filter-row .location-select { margin-left:auto; }

.clear-filters {
    color:var(--text-muted); font-size:.85rem;
    text-decoration:underline; text-underline-offset:3px;
    cursor:pointer; transition:var(--transition);
}
.clear-filters:hover { color:var(--primary); }

.active-filter-summary {
    margin:-0.5rem 0 1.5rem; font-size:.85rem; color:var(--text-muted);
}
