/* AFerrolterra v3.1.7 — controles añadidos, sin modificar hojas preexistentes */
.aft-filter-panel{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;padding:1rem 0;border-block:1px solid var(--aft-line,#d6dce4);margin:1rem 0}
.aft-filter-set{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.aft-filter-set .aft-filter-label{font-weight:700;font-size:.85rem;margin-inline-end:.2rem}
.aft-filter-btn{border:1px solid #9bacba;border-radius:999px;background:#fff;color:#18354d;padding:.5rem .75rem;min-height:42px;font:inherit;font-size:.85rem;cursor:pointer}
.aft-filter-btn[aria-pressed="true"]{background:#1a365d;border-color:#1a365d;color:white}
.aft-filter-btn:focus-visible,.btn-scroll-top:focus-visible{outline:3px solid #f2b84b;outline-offset:3px}
.aft-filter-summary{font-weight:600;font-size:.9rem;margin:.35rem 0 1.1rem}
.aft-event-detail{max-width:850px;margin:1.5rem auto 3rem;padding:clamp(1rem,3vw,2rem);background:#fff;border:1px solid #d7dee6;border-left:7px solid var(--municipio-color,#1a365d);border-radius:14px;box-shadow:0 6px 18px rgba(0,0,0,.045)}
.aft-event-detail h1{overflow-wrap:anywhere;line-height:1.2}
.aft-event-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.aft-event-meta span{border:1px solid #d9e1e8;padding:.4rem .65rem;border-radius:999px;font-size:.86rem}
.aft-event-warning{border-left:4px solid #ad7711;background:#fff8e9;padding:1rem;margin:1rem 0;line-height:1.5}
.aft-event-detail .aft-event-body{line-height:1.7;max-width:78ch}
.aft-event-detail .aft-event-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.3rem 0}
.aft-event-detail .aft-event-actions a{display:inline-flex;align-items:center;min-height:44px;border:1px solid #7d91aa;border-radius:8px;padding:.6rem .95rem;text-decoration:none;font-weight:700}
.btn-scroll-top{position:fixed;inset:auto 20px 23px auto;width:46px;height:46px;border:0;border-radius:50%;background:#1a365d;color:white;display:grid;place-items:center;box-shadow:0 4px 12px #0003;z-index:999;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(7px);transition:opacity .3s ease,transform .3s ease,visibility .3s ease}
.btn-scroll-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
@media(max-width:700px){.btn-scroll-top{right:12px;bottom:75px}.aft-filter-panel{gap:.6rem}}
@media(prefers-reduced-motion:reduce){.btn-scroll-top{transition:none}}

/* Hidden must win over original display:flex card rule. */
.agenda-unified .card-evento[hidden]{display:none!important}
