:root{color-scheme:light;--paper:#d4d0c7;--link:#000080;--purple:#8b5b8b;--teal:#008080}
.event-recordings,.event-location{margin:24px 0}.event-recordings>h2,.event-location>h2{font-size:1.2rem;margin:0 0 16px}.event-recording{margin:0 0 20px;min-width:0}.event-recording h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.event-recording p{font-size:.85rem;margin:4px 0 8px;overflow-wrap:anywhere}.event-recording iframe{display:block;width:100%;max-width:100%;height:120px;border:0}
*{box-sizing:border-box}html{scroll-padding-top:1rem}body{background:var(--paper);color:#000;font-family:"Open Sans",sans-serif;margin:0;padding:0;font-size:16px}#mainContainer{margin:8px}main{max-width:42em;margin:15px auto;position:relative}h1{margin:0;font-size:2em}a{color:var(--link)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #000080;outline-offset:3px}[hidden]{display:none!important}.sr-only,.skip-link{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;z-index:20;top:5px;left:5px;width:auto;height:auto;padding:10px;clip-path:none;background:white}
.header{margin-bottom:10px}.header-row{display:flex;flex-wrap:wrap;width:100%;gap:0}.burger-column{flex:1;min-width:32px}.burger-column button{font-size:2rem;border:0;padding:0;background:none;color:#000;line-height:1.2}.brand-column{flex:10}.brand-column a{color:#000;text-decoration:none}.header-links{flex:10;text-align:right;padding-top:6px}.site-name{display:block;font-size:2em;font-weight:bold;white-space:nowrap}.event-title{font-size:1.4em;margin:15px 0}.venue-address{font-size:.85rem}#menu{margin:16px 0 50px}#menu nav a{display:block;font-weight:bold;margin:5px 0}.search{text-align:center;margin:20px 0}.search input[type=search]{width:200px;max-width:65%;padding:3px}.search button{margin-left:4px}footer{text-align:center;margin:30px 0;line-height:1.7;font-size:.95rem}.pre-calendar{margin-bottom:10px}.pre-calendar p{margin:6px 0}.post-calendar{margin-top:10px}.month-title{margin-bottom:15px}.month-nav{padding:1px 6px 2px;display:flex;align-items:baseline;background:var(--purple)}.month-nav a{flex:1;color:#fff;text-align:center;font-weight:normal}.bottom-month-nav{margin:30px 0}#calendar table{border-collapse:collapse;width:100%;table-layout:fixed}#calendar tr{font-weight:bold}#calendar th{font-size:1rem;padding:0}#calendar td{padding:1rem 0;border:1px solid #ddd;text-align:center;font-size:1.6rem}#calendar td a{display:block}#calendar .date-today{background:#fbf7e0}#calendar .other-month a{color:#999}.legend{margin:10px 0;font-size:.85rem;line-height:1.4}.legend>a{font-weight:bold;color:var(--teal)}.day h2{position:sticky;top:0;z-index:3;background:var(--paper);text-align:center;font-size:2em;padding:10px 0 5px;margin:20px 0 10px}.day:first-of-type h2{margin-top:5px}.day h2 a{color:black}.map-toggle-row{text-align:center;font-size:.9rem;font-weight:bold;margin-bottom:10px}.map-toggle{border:0;border-radius:0;color:white;background:green;padding:0 2px;font-size:inherit;font-weight:inherit;text-decoration:underline}.day-map{height:300px;margin-bottom:10px;width:100%;text-indent:0}.map-selection{background:#eef;padding:10px;margin-bottom:10px}.map-selection p{margin:5px 0}.map-empty{display:flex;align-items:center;justify-content:center;text-align:center;padding:25px;font-size:.9rem}.map-marker{background:#ab2538;border:1px solid white;border-radius:50% 50% 50% 0;width:20px;height:20px;transform:rotate(-45deg);box-shadow:0 1px 3px #0006}.map-marker.selected{background:#135fc1}.maplibregl-marker button{font:inherit}.day-message{text-align:center;margin:10px 0}.event{display:flex;text-indent:-3em;padding:10px 0 10px 3em;border-bottom:1px solid #0004;scroll-margin-top:4em;overflow-wrap:anywhere}.event-content{flex:1;min-width:0}.event p{display:inline}.event-preface{display:inline-block;text-indent:0}.event-preface:empty{display:none}.event-description,.price,.accessibility,.event-actions{font-size:.85rem}.accessibility a{color:var(--teal)}.event-actions a{color:black}.event-actions .map-link{color:#993366}.event-ticket{flex:0 0 24px;text-align:right;text-indent:0}.event-ticket a{background:#ffff3bcc;border:1px solid black;font-size:.9rem;color:black;text-decoration:none;padding:0 1px;font-weight:bold}.event:last-child{border-bottom:none}.event.cancelled .event-body{text-decoration:line-through;color:#666}.event.cancelled .event-body a{color:#444}.event:target{background:#ffa60015;animation:highlight 2s ease-out}.go-top{text-align:center;margin:15px 0}.go-top a{color:var(--teal)}.empty-day{font-size:.9rem;text-align:center;margin:20px 0;color:#444}.static-page{line-height:1.4}.static-page h1{line-height:1.2;margin-bottom:16px}.static-page img,.static-page iframe{max-width:100%}.static-page img{height:auto}.static-page pre{overflow:auto;white-space:pre-wrap;background:#ffffff50;padding:10px}.static-page table{border-collapse:collapse}.static-page th,.static-page td{border:1px solid #aaa;padding:5px;text-align:left}.pagination{display:flex;justify-content:space-between;margin:20px 0}.submission h1{text-align:center}.submission form>div{display:flex;flex-wrap:wrap;justify-content:flex-end;padding:.4em 0;gap:5px}.submission label{flex:1;padding:.5em 1em .5em 0;text-align:right}.submission input,.submission select,.submission textarea{flex:2;min-width:0;padding:.5em;max-width:100%}.submission .helptext{width:66%;font-size:.85rem;color:#333}.submission .errorlist{width:100%;color:#8c1212;font-weight:bold;list-style:none;padding-left:0;text-align:right}.submission .submit-row button{background:#666;color:white;border:0;padding:.6em 1em}.notice{border:2px solid #008080;padding:12px;text-align:center}#ios-prompt{position:sticky;bottom:0;width:100%;background:black;color:white;padding:20px;text-align:center;font-size:1.1rem}#dismiss-ios{position:absolute;right:10px;top:5px;background:none;color:white;border:0}#ios-prompt button{font-size:1rem}@keyframes highlight{from{background:#ffa600ae}to{background:#ffa60015}}@media(prefers-reduced-motion:reduce){.event:target{animation:none}}@media(max-width:360px){.brand-column .site-name{font-size:1.65em}.header-links{font-size:.85rem}.header-row{align-items:flex-start}.submission label{flex-basis:100%;text-align:left;padding:0}.submission .helptext{width:100%}}
/* Keep filters and match context within the calendar's compact column. */
.search-page { flex-wrap: wrap; }
.search-filters { flex-basis: 100%; margin: .5rem 0; font-size: .85rem; }
.search-filters summary { cursor: pointer; color: #008080; text-decoration: underline; }
.search-filter-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: .5rem; margin: .5rem 0; }
.search-filter-fields label { display: flex; flex-direction: column; min-width: 0; }
.search-filter-fields input, .search-filter-fields select { box-sizing: border-box; width: 100%; min-width: 0; font: inherit; }
.search-chips { display: flex; flex-wrap: wrap; gap: .4rem .75rem; list-style: none; padding: 0; font-size: .85rem; }
.search-chips a { color: #008080; }
.search-excerpt { font-size: .85rem; margin: .2rem 0 .8rem 3em; white-space: pre-line; overflow-wrap: anywhere; }
.search-notice { font-size: .85rem; }
