/* =======================================================================
   CPTS · composant de filtres commun (Documents, Répertoire)
   Valeurs reprises de la barre de la page Ressources. Les couleurs du site
   viennent des variables --cpts-* ; sans thème, des gris neutres.
   ==================================================================== */
.cpts-filtres{--cf-ink:var(--cpts-ink,#1D2327);--cf-ink2:var(--cpts-ink2,#50575E);--cf-border:var(--cpts-border,#DCDCDE);--cf-accent:var(--cpts-violet,#3C434A);--cf-doux:var(--cpts-violet-soft,#F6F7F7);--cf-lien:#2E5BA8;}
.cpts-filtres [hidden]{display:none!important;}
.cpts-filtres .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}

.cpts-filtres__barre{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 16px;align-items:end;padding:22px 24px;margin:0 0 22px;border-radius:22px;background:var(--cf-doux);}
.cpts-filtres__champ{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0;}
.cpts-filtres__champ--recherche{grid-column:1 / -1;}
.cpts-filtres__champ>span{font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--cf-ink2);}
.cpts-filtres__champ input,.cpts-filtres__champ select{font:inherit;font-size:15px;color:var(--cf-ink);background:#fff;border:1.5px solid var(--cf-border);border-radius:12px;height:46px;padding:0 14px;width:100%;box-sizing:border-box;}
.cpts-filtres__champ input:focus,.cpts-filtres__champ select:focus{outline:none;border-color:var(--cf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--cf-accent) 20%,transparent);}
.cpts-filtres__coches{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;min-height:46px;margin:0;padding:0;border:0;font-size:14.5px;font-weight:600;color:var(--cf-ink2);}
.cpts-filtres__coches label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;margin:0;}
.cpts-filtres__coches input{width:18px;height:18px;margin:0;accent-color:var(--cf-accent);}
.cpts-filtres__reinit{font:inherit;font-size:14px;font-weight:700;height:46px;padding:0 6px;border:0;background:none;color:var(--cf-lien);cursor:pointer;text-decoration:underline;text-underline-offset:3px;justify-self:start;}
.cpts-filtres__reinit:focus-visible,.cpts-filtres__coches input:focus-visible{outline:3px solid color-mix(in srgb,var(--cf-accent) 45%,transparent);outline-offset:2px;}
.cpts-filtres__compte{margin:0 0 16px;font-size:14.5px;font-weight:700;color:var(--cf-ink2);}
.cpts-filtres__plus{margin:22px 0 0;text-align:center;}
.cpts-filtres__tout{margin:22px 0 0;}
.cpts-filtres__tout a{font-weight:700;color:var(--cf-lien);text-decoration:underline;text-underline-offset:3px;}

@media (max-width:900px){.cpts-filtres__barre{grid-template-columns:1fr 1fr;}}
@media (max-width:640px){.cpts-filtres__barre{grid-template-columns:1fr;padding:18px;}}
@media (prefers-reduced-motion:reduce){.cpts-filtres *{transition:none!important;}}
