:root{--bg:#fffaf3;--ink:#2b2a33;--acc:#ff6b4a;--acc2:#2bb3a3;--card:#fff;--mut:#6b6a75}
*{box-sizing:border-box}body{margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink)}
header{background:linear-gradient(135deg,#ffd166,#ff8c69);padding:28px 18px 22px;text-align:center}
h1{margin:0;font-size:2.4rem;letter-spacing:-1px}h1 span{color:#fff}header p{margin:4px 0 0}
.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;max-width:1000px;margin:-14px auto 0;padding:12px;background:#fff;border-radius:14px;box-shadow:0 4px 18px #0001;position:sticky;top:6px;z-index:2}
.filters input,.filters select{width:100%;padding:10px;border:1px solid #e6e1d8;border-radius:10px;font:inherit;background:#fff}
.count{max-width:1000px;margin:14px auto 4px;padding:0 14px;color:var(--mut)}
main{max-width:1000px;margin:0 auto;padding:0 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.card{background:var(--card);border-radius:14px;padding:14px 16px;box-shadow:0 2px 10px #0000000d;display:flex;flex-direction:column;gap:6px}
.card h3{margin:0;font-size:1.05rem}.card a{color:inherit;text-decoration:none}.card a:hover h3{color:var(--acc)}
.when{font-weight:600;color:var(--acc)}.where{color:var(--mut);font-size:.92rem}.desc{font-size:.9rem;color:#444;margin:0}
.tags{display:flex;flex-wrap:wrap;gap:5px}.tag{font-size:.75rem;padding:2px 8px;border-radius:99px;background:#f1eee8}.tag.free{background:#d9f4ef;color:#13786c}.tag.cat{background:#ffe6dd;color:#b4401f}
#more{display:block;margin:18px auto;padding:12px 26px;border:0;border-radius:99px;background:var(--acc2);color:#fff;font:inherit;font-weight:600;cursor:pointer}
footer{text-align:center;color:var(--mut);font-size:.85rem;padding:30px 16px}footer a{color:var(--acc)}

.kinds{display:flex;gap:6px;max-width:1000px;margin:14px auto 0;padding:0 12px;flex-wrap:wrap}
.kinds button{border:1px solid #e6e1d8;background:#fff;border-radius:99px;padding:8px 14px;font:inherit;font-size:.9rem;cursor:pointer}
.kinds button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.tag.kind-event{background:#e5efff;color:#2756a8}.tag.kind-program{background:#efe5ff;color:#6a32b0}
