/* ============================================================
   NOS CORPS VIVANTS — css/filtres.css — Uniforme compact
   ============================================================ */

.filtres-panel {
    padding: .2rem 2.5rem;
    border-bottom: 1px solid var(--rule-light);
    background: var(--bg);
}

/* Niveau 1 — catégories */
.filtres-level1 {
    display: flex;
    align-items: center;
    gap: .25rem;
    padding: .1rem 0;
}
.filtres-level1-label {
    font-family: var(--font-mono);
    font-size: .50rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--light);
    white-space: nowrap;
    margin-right: .15rem;
}

.cat-btn {
    font-family: var(--font-mono);
    font-size: .50rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: .1rem .4rem;
    border: 1px solid var(--rule);
    background: none;
    cursor: pointer;
    color: var(--light);
    transition: all .12s;
}
.cat-btn:hover, .cat-btn.active {
    border-color: var(--black);
    color: var(--black);
}

/* Tags actifs */
.filtres-actifs {
    display: flex;
    gap: .15rem;
    flex-wrap: wrap;
    align-items: center;
    padding: .08rem 0;
}
.filtre-tag {
    font-family: var(--font-mono);
    font-size: .48rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: .08rem .3rem;
    border: 1px solid var(--black);
    color: var(--black);
    display: inline-flex;
    align-items: center;
    gap: .2rem;
}
.filtre-tag .remove-tag {
    font-size: .46rem;
    color: var(--light);
    text-decoration: none;
}
.filtre-tag .remove-tag:hover { color: #a00; opacity: 1; }

.filtres-reset {
    font-family: var(--font-mono);
    font-size: .46rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--light);
    text-decoration: underline;
    margin-left: .3rem;
}
.filtres-reset:hover { color: var(--black); opacity: 1; }

/* Niveau 2 — valeurs — MAJUSCULES, taille lisible */
.filtres-level2 {
    display: none;
    flex-wrap: wrap;
    gap: .15rem;
    padding: .12rem 0;
}
.filtres-level2.open {
    display: flex;
}

.val-btn {
    font-family: var(--font-mono);
    font-size: .52rem;
    letter-spacing: .04em;
    text-transform: uppercase;
    padding: .08rem .35rem;
    border: 1px solid var(--rule-light);
    color: var(--mid);
    text-decoration: none;
    transition: all .12s;
}
.val-btn:hover, .val-btn.selected {
    border-color: var(--black);
    color: var(--black);
    opacity: 1;
}
.val-btn.selected {
    background: var(--black);
    color: var(--bg);
}
