/* The comedy festival calendar (19 Oct 2026, tools/calendar-page.mjs, js/calendar.js): the months as lists in the site's
   own panels, the filters as chips, and a jump bar of months. */
.cal-subs{margin-top:18px;flex-wrap:wrap}
.cal-subs-note{max-width:70ch;margin-top:10px}
.cal-subs-note code{font-size:13px;word-break:break-all}
.cal-filters{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-bottom:18px}
.cal-kinds{display:flex;flex-wrap:wrap;gap:8px}
.cal-kinds .chip{font:700 14px/1 var(--sans);padding:10px 14px;border-radius:999px;border:1px solid var(--line2);background:var(--panel);color:var(--ink);cursor:pointer;min-height:44px}
.cal-kinds .chip[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--bg)}
.cal-country{display:flex;gap:8px;align-items:center;font-weight:700}
.cal-country select{min-height:44px;padding:0 10px;border-radius:10px;border:1px solid var(--line2);background:var(--panel);color:var(--ink);font:inherit;max-width:60vw}
.cal-note{margin:0;color:var(--muted)}
.cal-jump{display:flex;gap:6px;overflow-x:auto;padding:4px 0 12px;margin-bottom:8px;scrollbar-width:thin}
.cal-jump a{flex:none;padding:8px 12px;border-radius:999px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:14px}
.cal-jump a:hover{border-color:var(--gold)}
.cal-jump a.empty{opacity:.45}
.cal-month{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin-bottom:18px;scroll-margin-top:90px}
.cal-month h2{font-size:28px;margin:0 0 12px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.cal-month h2 small{font:600 14px/1 var(--sans);color:var(--muted)}
.cal-now{border-color:var(--gold)}
.cal-list{list-style:none;margin:0;padding:0}
.cal-f{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:4px 16px;padding:12px 0;border-top:1px solid var(--line);align-items:baseline}
.cal-f:first-child{border-top:0}
.cal-f[hidden]{display:none}
.cal-d{font-weight:700;color:var(--gold)}
.cal-d small{display:block;font:500 12px/1.3 var(--sans);color:var(--muted)}
.cal-main{display:flex;flex-direction:column;min-width:0}
.cal-n{font-weight:700;font-size:18px;color:var(--ink)}
.cal-w{font-size:14px;color:var(--muted)}
.cal-k{display:flex;gap:6px;flex-wrap:wrap;grid-column:2}
.cal-k i{font:700 11px/1 var(--sans);font-style:normal;letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-radius:6px;background:var(--panel2);color:var(--soft)}
.cal-a{grid-column:3;grid-row:1 / span 2;display:flex;flex-direction:column;gap:6px;align-items:flex-end;font-size:14px}
.cal-month[hidden]{display:none}
.cal-more{margin:12px 0 0}
.cal-feeds{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:10px}
.cal-feeds li{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.cal-feeds span{color:var(--muted);font-size:14px}
@media (max-width:700px){
  .cal-month{padding:16px}
  .cal-f{grid-template-columns:minmax(0,1fr)}
  .cal-k,.cal-a{grid-column:1;grid-row:auto}
  .cal-a{flex-direction:row;flex-wrap:wrap;gap:14px;align-items:baseline}
}
