/* Scoped events finder. Native event content, site headers and signup forms are untouched. */
.tbm-finder-agenda{--bf-ink:#243c39;--bf-muted:#55655f;--bf-line:#d6ddd7;--bf-green:#285d52;--bf-wash:#f1f5ef;position:relative;color:var(--bf-ink);}
.tbm-finder-agenda [hidden],.tbm-calendar>[hidden]{display:none!important;}
.tbm-finder-toolbar{position:sticky;top:var(--tbm-finder-top,0px);z-index:20;display:flex;align-items:flex-end;gap:12px;background:#fff;border:1px solid var(--bf-line);border-radius:12px;padding:18px;margin:0!important;box-sizing:border-box;box-shadow:0 3px 12px #243c390d;}
.tbm-finder-toolbar>*,.tbm-finder-dates>*,.tbm-finder-summary>*{min-width:0;}
.tbm-finder-search{flex:1 1 280px;}
.tbm-finder-dates{display:flex;gap:12px;align-items:flex-end;flex:0 1 auto;}
.tbm-finder-when{width:230px;max-width:100%;}
.tbm-finder-chosen{width:180px;max-width:100%;}
.tbm-finder-agenda label{display:block;font-size:.82rem;font-weight:700;line-height:1.4;margin-bottom:5px;color:var(--bf-muted);}
.tbm-finder-agenda input,.tbm-finder-agenda select{box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:48px;background:#fff;color:var(--bf-ink);border:1px solid #9daa9f;border-radius:7px;padding:10px 12px;font:inherit;font-size:1rem;line-height:1.3;}
.tbm-finder-agenda input[type=date]{appearance:auto;-webkit-appearance:auto;}
.tbm-finder-agenda button:not(.wp-element-button){box-sizing:border-box;min-height:44px;min-width:44px;border:1px solid #9daa9f;border-radius:8px;padding:10px 14px;background:#fff;color:var(--bf-ink);font:inherit;font-size:.94rem;font-weight:600;line-height:1.3;cursor:pointer;}
.tbm-finder-agenda button:not(.wp-element-button):hover{background:var(--bf-wash);}
.tbm-finder-agenda button:disabled,.tbm-finder-agenda select:disabled{cursor:default;opacity:.65;}
.tbm-finder-agenda :focus-visible,.tbm-finder-guides :focus-visible{outline:3px solid var(--wp--custom--buzz--inner--action,Highlight);outline-offset:3px;}
.tbm-finder-agenda input::placeholder{color:#68756e;opacity:1;}
[id^="tbm-finder-date-error-"]{display:block;color:#9a3429;font-size:.9rem;line-height:1.45;margin:10px 0 0;}
.tbm-finder-date-pending{color:var(--bf-muted);font-size:.9rem;line-height:1.45;margin:10px 0 0;}
.tbm-finder-date-feedback{width:100%;}
.tbm-finder-active-label{font-size:.82rem;font-weight:600;color:var(--bf-muted);}
[id^="tbm-finder-toggle-"]{display:none;}
[id^="tbm-finder-panel-"]{padding:16px;background:#fff;border:1px solid var(--bf-line);border-radius:0 0 12px 12px;margin-top:-8px;}
.tbm-finder-panel-actions{display:flex;gap:12px;margin-top:16px;}
.tbm-finder-extras{margin:0 0 22px;}
.tbm-finder-active{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0;}
.tbm-finder-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0;}
.tbm-finder-chips button{background:var(--bf-wash);border-radius:24px;max-width:100%;overflow-wrap:anywhere;text-align:left;font-size:.88rem;}
.tbm-finder-reset{border-color:transparent!important;color:var(--bf-green)!important;text-decoration:underline;text-underline-offset:3px;}
.tbm-finder-summary{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;border-bottom:1px solid var(--bf-line);padding:12px 0 20px;}
[id^="tbm-finder-status-"]{margin:0;font-size:1rem;line-height:1.5;font-weight:600;overflow-wrap:anywhere;}
.tbm-finder-empty{border:1px solid var(--bf-line);border-radius:14px;padding:28px;background:#fff;margin:24px 0;}
.tbm-finder-empty h3{font-size:1.5rem;margin:0 0 12px;line-height:1.25;}
.tbm-finder-empty p{margin:0 0 20px;color:var(--bf-muted);line-height:1.6;}
.tbm-finder-date{font-size:clamp(1.25rem,3vw,1.6rem);line-height:1.4;margin:32px 0 8px!important;padding-bottom:12px;border-bottom:2px solid var(--bf-line);scroll-margin-top:var(--tbm-finder-scroll,160px);}
.tbm-finder-agenda h2,.tbm-finder-agenda [id]{scroll-margin-top:var(--tbm-finder-scroll,160px);}
.tbm-finder-list{list-style:none!important;padding:0!important;margin:0 0 24px!important;}
.tbm-finder-list>li{padding:16px 0;margin:0!important;border-bottom:1px solid var(--bf-line);line-height:1.65;overflow-wrap:anywhere;}
.tbm-finder-list>li>strong:first-child{font-size:1.05rem;line-height:1.5;color:var(--bf-ink);}
.tbm-finder-list a{display:inline-flex;align-items:center;min-height:44px;color:var(--bf-green);text-underline-offset:3px;}
.tbm-finder-guides{margin-block:1rem 1.5rem;border-bottom:1px solid #d6ddd7;padding-bottom:8px;}
.tbm-finder-guides summary{min-height:44px;box-sizing:border-box;padding:10px 0;cursor:pointer;color:#285d52;font-weight:600;}
.tbm-finder-guides .wb-event-categories{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;}
.tbm-finder-guides .wb-event-categories a{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box;border:1px solid #d6ddd7;border-radius:24px;padding:8px 14px;font-size:.9rem;color:#243c39;background:#fff;text-decoration:none;}
@media(max-width:1000px) and (min-width:701px){.tbm-finder-toolbar{flex-wrap:wrap;}.tbm-finder-search{flex-basis:45%;}.tbm-finder-dates{flex:1 1 40%;}.tbm-finder-when{flex:1;}.tbm-finder-chosen{flex:1;}.tbm-finder-submit{margin-left:auto;}}
@media(max-width:700px){
 .tbm-finder-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px;border-radius:10px;align-items:end;}
 .tbm-finder-search{grid-column:1/-1;display:grid;grid-template-columns:subgrid;}
 .tbm-finder-search label{grid-column:1/-1;}
 .tbm-finder-search input{grid-column:1/-1;}
 .tbm-finder-submit{grid-column:2;grid-row:3;}
 [id^="tbm-finder-toggle-"]{display:block;grid-column:1;grid-row:3;justify-self:start;min-height:48px;}
 .tbm-finder-dates{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;}
 .tbm-finder-when,.tbm-finder-chosen{width:100%;}
 .tbm-finder-expanded .tbm-finder-toolbar{position:relative;top:auto;box-shadow:none;}
 .tbm-finder-panel-actions button:first-child{flex:1;}
 .tbm-finder-summary{display:block;padding-top:16px;}
 .tbm-finder-active{margin:16px 0 0;}
 .tbm-finder-agenda button:not(.wp-element-button){font-size:.9rem;}
 .tbm-finder-empty{padding:22px;}
 .tbm-finder-date{font-size:1.25rem;}
}
@media(prefers-reduced-motion:reduce){.tbm-finder-agenda{scroll-behavior:auto;}}

/* One live filter state on desktop and mobile. */
.tbm-finder-category{width:190px;max-width:100%;}.tbm-finder-dates{flex-wrap:wrap;}.tbm-finder-toolbar{flex-wrap:wrap;}.tbm-finder-when{width:210px;}
@media(max-width:700px){.tbm-finder-category{width:100%;}.tbm-finder-dates{width:100%;}.tbm-finder-dates>*{flex:1 1 100%;}}


/* Keep the new calendar self-contained, without changing the host theme. */
.tbm-calendar [hidden]{display:none!important}.tbm-calendar .tbm-finder-category{min-width:150px}.tbm-calendar .tbm-finder-toolbar{flex-wrap:wrap}.tbm-calendar .tbm-finder-dates{flex-wrap:wrap}.tbm-calendar .tbm-finder-agenda{--tbm-finder-top:0px}.tbm-calendar .tbm-finder-toolbar{max-width:100%}

/* Action buttons inherit the active WordPress theme, including hover colors,
   typography, border and radius. Only layout and minimum target size are scoped. */
.tbm-finder-agenda .wp-element-button{box-sizing:border-box;min-height:44px;min-width:44px;cursor:pointer;}
.tbm-finder-help{margin:10px 0 0;font-size:.88rem;line-height:1.45;color:var(--bf-muted);}
.tbm-finder-summary{align-items:center;flex-wrap:wrap;}
.tbm-finder-progress{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:var(--bf-muted);}
.tbm-finder-progress::before{content:"";display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:tbm-filter-spin .6s linear infinite;}
@keyframes tbm-filter-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.tbm-finder-progress::before{animation:none;}}

/* System-selected focus color stays visible in forced-colors/high-contrast modes. */
@media(forced-colors:active){.tbm-finder-agenda :focus-visible,.tbm-finder-guides :focus-visible{outline-color:Highlight;}}
