/* Pages-sommaires « Explications pour les patients » (FR/AR) */
.expl-filtres { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.8rem; }
.expl-chip { font: inherit; font-weight: 600; font-size: .95rem; padding: .5rem 1rem; border-radius: 999px; border: 1.5px solid var(--border); background: #fff; color: var(--text); cursor: pointer; }
.expl-chip:hover { border-color: var(--blue-600); }
.expl-chip[aria-pressed="true"] { background: var(--blue-600); border-color: var(--blue-600); color: #fff; }
.expl-grille { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.4rem; }
.expl-carte { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); transition: box-shadow .2s, transform .2s; }
.expl-carte:hover { box-shadow: var(--shadow); transform: translateY(-2px); }
.expl-lien { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }
.expl-lien img { width: 100%; height: auto; aspect-ratio: 800 / 446; object-fit: cover; background: #f8fafc; border-bottom: 1px solid var(--border); }
.expl-corps { padding: 1.1rem 1.25rem 1.3rem; display: flex; flex-direction: column; gap: .55rem; flex: 1; }
.expl-region { font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--blue-700); }
.expl-corps h2 { font-size: 1.25rem; font-weight: 800; color: var(--blue-900); line-height: 1.25; }
.expl-corps p { color: var(--muted); }
.expl-meta { display: flex; flex-wrap: wrap; gap: .35rem .9rem; font-size: .88rem; color: var(--muted); list-style: none; padding: 0; margin: 0; }
.expl-meta li::before { content: "•"; color: var(--blue-600); margin-inline-end: .35rem; }
.expl-corps .btn { align-self: flex-start; margin-top: auto; }
.expl-bientot, .expl-vide { margin-top: 1.6rem; color: var(--muted); text-align: center; }
.expl-horsligne { display: flex; align-items: center; justify-content: space-between; gap: 1.2rem 2rem; flex-wrap: wrap; background: #fff; border: 1px solid var(--border); border-radius: var(--radius); padding: 1.4rem 1.6rem; }
.expl-horsligne h2 { font-size: 1.3rem; font-weight: 800; color: var(--blue-900); margin-bottom: .4rem; }
.expl-horsligne p { color: var(--muted); max-width: 760px; }
.expl-etat { margin-top: .7rem; font-weight: 700; }
.expl-etat[data-state="ok"] { color: var(--green-700); }
.expl-etat[data-state="ok"]::before { content: "✓ "; }
.expl-avert { margin-top: 1.4rem; font-size: .9rem; color: var(--muted); text-align: center; }
:lang(ar) .expl-region { letter-spacing: 0; text-transform: none; font-size: .9rem; }
