body.subpage { background:#fff; }
.activities-filters { display:grid; grid-template-columns:2fr 1fr 1fr auto; gap:16px; align-items:end; padding:24px; background:#f6f5f5; border-radius:8px; margin:24px 0; }
.activities-filters label { display:grid; gap:8px; font-size:.9rem; color:#353535; }
.activities-filters input,.activities-filters select { width:100%; min-width:0; background:#fff; border:1px solid #ccc; padding:12px; border-radius:5px; font:inherit; }
.activities-filters button,.activities-actions button { padding:12px 20px; border:1px solid #a50920; background:#fff; color:#a50920; border-radius:5px; cursor:pointer; font:inherit; }
.activities-actions { text-align:center; margin:32px 0; }
.activities-actions button { background:#a50920; color:white; }
.activities-actions [hidden] { display:none; }
#activitiesStatus { margin-bottom:20px; color:#666; }
#activitiesAllGrid { align-items:stretch; }
.activity-card { border:1px solid #dedede; border-radius:8px; box-shadow:none; overflow:hidden; display:flex; flex-direction:column; }
.activity-cover { display:grid; place-items:center; aspect-ratio:1.5; background:#f4f4f4; color:#a50920; overflow:hidden; }
.activity-cover img { width:100%; height:100%; }
.activity-card .post__body { flex:1; display:flex; flex-direction:column; padding:22px; }
.activity-card h2 { font-size:1.1rem; line-height:1.7; color:#252525; }
.activity-card .post__meta { flex-wrap:wrap; }
.activity-pin { color:#a50920; font-size:.75rem; font-weight:600; }
.activity-excerpt { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; color:#616161; }
.activity-card .post__link { margin-top:auto; padding-top:18px; color:#a50920; }
.activities-empty { grid-column:1/-1; padding:40px 0; }
.activities-filters :focus-visible,.activities-actions :focus-visible,.activity-card a:focus-visible { outline:2px solid #a50920; outline-offset:4px; }
@media(max-width:800px) { .activities-filters { grid-template-columns:1fr 1fr; } .activities-filters label:first-child { grid-column:1/-1; } #activitiesAllGrid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:500px) { #activitiesAllGrid { grid-template-columns:1fr; } .activities-filters { padding:16px; gap:12px; } .activities-filters button { grid-column:1/-1; } }
