.kal-sekcja{padding:0 5% 2rem}
.kal-lead{max-width:70ch}
.kal-filtr{display:grid;gap:1rem;margin:1.2rem 0;padding:1.2rem;background:#fffdf8;border:1px solid #d9d0c3;border-top:4px double var(--ink);border-radius:2px}
.kal-filtr fieldset{border:0;padding:0;margin:0}
.kal-filtr legend,.kal-filtr__q label{display:block;margin-bottom:.4rem;padding:0;font:700 .78rem ui-monospace,Menlo,Consolas,monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.kal-filtr__q input{width:100%;max-width:520px;font:inherit;padding:.7rem .8rem;border:2px solid var(--ink);background:#fff;color:var(--ink);border-radius:2px}
.chipy{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{position:relative;display:inline-block}
.chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.chip span{display:inline-block;padding:.45rem .85rem;border:2px solid var(--ink);border-radius:999px;background:#fff;font-size:.9rem;font-weight:600}
.chip input:checked+span{background:var(--ink);color:#fff}
.chip input:focus-visible+span{outline:3px solid #0b57d0;outline-offset:2px}
.chip.is-zero span{opacity:.55}
.chip__n{margin-left:.25rem;font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:400}
.btn{font:inherit;font-weight:700;padding:.6rem 1.1rem;border:2px solid var(--ink);background:#fff;color:var(--ink);border-radius:2px;cursor:pointer}
.btn:hover{background:#efe6db}
.btn--cichy{border-color:#d9d0c3;color:var(--muted)}
.status{margin:.6rem 0 1rem;font:.9rem ui-monospace,Menlo,Consolas,monospace;color:var(--muted)}
.kal-brak{padding:1rem 1.2rem;margin:1rem 0;border:2px solid #a63f1f;background:#fff}
.kal-brak[hidden],.kal-grupa[hidden],.event-card[hidden]{display:none}
.kal-grupa h2{margin:2rem 0 .3rem}
.kal-grupa__opis{margin:0 0 1rem;color:var(--muted);font-size:.92rem}
.licz{font-weight:400;color:var(--muted);font-size:.8em}
.events-list{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}
.event-card{display:flex;flex-direction:column;height:100%;background:var(--card);padding:1.2rem;border-radius:8px;border-left:4px solid var(--accent);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.event-card--wkrotce{border-left-color:var(--accent2)}
.event-card h3{margin:.2rem 0 .4rem;font-size:1.2rem;line-height:1.3}
.event-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .3rem}
.badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;background:#ece6dc;color:#1c1b1a;font:700 .75rem Arial,sans-serif}
.badge--trwa{background:#2b4a5e;color:#fff}
.badge--wkrotce{background:#efe6db;color:#8a3a1c;border:1px solid #d9d0c3}
.badge--ostatnie{background:#a63f1f;color:#fff}
.event-place{margin:0 0 .3rem;font-size:.92rem}
.event-date{margin:0 0 .6rem;font-weight:700;color:#2b4a5e}
.event-odl{display:inline-block;margin-left:.4rem;padding:.05rem .5rem;border-radius:4px;background:#efe6db;color:#8a3a1c;font:700 .78rem Arial,sans-serif}
.event-opis{margin:0 0 .6rem}
.event-wiecej{margin:0 0 .8rem}
.event-wiecej summary{cursor:pointer;font-weight:700;color:#2b4a5e}
.event-wiecej p{margin:.6rem 0 0}
.event-src{margin:auto 0 0;font-size:.88rem;color:var(--muted)}
.event-src a{color:#2b4a5e}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
