/* Loaded only on native calendar routes. */
/* Single-event blocks also need the site's palette, not plugin defaults. */
.single-tribe_events #tribe-events-pg-template { --tec-color-accent-primary:var(--cm-orange);--tec-color-accent-primary-hover:var(--cm-orange-dark);--tec-color-text-primary:var(--cm-ink);color:var(--cm-ink); }
.single-tribe_events #tribe-events-pg-template :is(h1,h2,h3,h4) { color:var(--cm-olive) !important;font-family:inherit; }
.single-tribe_events #tribe-events-pg-template :is(.tribe-events-schedule__separator,.tribe-events-schedule__timezone) { color:var(--cm-muted); }
.single-tribe_events #tribe-events-pg-template a:not(.button):not(.wp-block-button__link) { color:var(--ocean);text-underline-offset:.18em; }
.single-tribe_events #tribe-events-pg-template :is(a.button,a.wp-block-button__link) { color:#fff !important;background:var(--cm-orange) !important;border-color:var(--cm-orange) !important;text-decoration:none; }
.single-tribe_events #tribe-events-pg-template :is(a.button,a.wp-block-button__link):is(:hover,:focus-visible) { color:#fff !important;background:var(--cm-orange-dark) !important;border-color:var(--cm-orange-dark) !important; }
.tribe-common,.tribe-events{--tec-color-accent-primary:var(--cm-orange);--tec-color-accent-primary-hover:var(--cm-orange-dark);--tec-color-text-primary:var(--cm-ink);--tec-color-text-secondary:#555c51;--tec-color-border-default:rgba(52,71,47,.22);--tec-color-background:var(--cm-cream);--tec-color-background-secondary:var(--cm-sand);color:var(--cm-ink);font-family:inherit}
.tribe-common .tribe-common-h1,.tribe-common .tribe-common-h2,.tribe-common .tribe-common-h3,.tribe-common .tribe-common-h4,.tribe-common .tribe-common-h5,.tribe-common .tribe-common-h6,.tribe-events .tribe-events-calendar-list__event-title,
.tribe-events .tribe-events-calendar-month__calendar-event-title { color:var(--cm-olive);font-family:inherit;letter-spacing:-.02em;}
.tribe-common a,
.tribe-events a { color:var(--cm-orange-dark);text-underline-offset:.2em;}
#oasf-events-content .tribe-events .tribe-events-l-container { width:min(1240px,calc(100% - 2 * var(--cm-gutter)));max-width:1240px;padding:clamp(2rem,4vw,3rem) 0; margin-inline:auto;}
.tribe-events .tribe-events-header,
.tribe-events .tribe-events-calendar-list__event-row,
.tribe-events .tribe-events-calendar-month { border-color:var(--cm-line);}
.tribe-events .tribe-events-calendar-list__event-row{margin-block:1rem;padding:clamp(1rem,2vw,1.4rem);border:1px solid var(--cm-line);border-radius:14px;background:rgba(255,255,255,.76);box-shadow:0 8px 24px rgba(49,55,40,.06)}
.tribe-events .tribe-events-calendar-list__event-date-tag-datetime{min-height:72px;border-radius:10px;background:var(--cm-sand)}
.tribe-events .tribe-events-calendar-list__event-date-tag-weekday{color:var(--cm-orange-dark);font-weight:800}
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum{color:var(--cm-olive)}
.tribe-events :is(.tribe-events-c-search__button,.tribe-events-c-subscribe-dropdown__button,.tribe-events-c-top-bar__datepicker-button,.tribe-events-c-nav__next,.tribe-events-c-nav__prev,.tribe-events-calendar-month__day-cell--mobile) { min-height:44px;font-size:.88rem;}
.tribe-events .tribe-events-c-search__button,
.tribe-events .tribe-events-c-subscribe-dropdown__button { border:2px solid var(--cm-orange) !important;border-radius:999px !important;color:#fff !important;background:var(--cm-orange) !important;font-weight:800 !important;text-transform:uppercase;}
.tribe-events .tribe-events-c-search__button:hover,
.tribe-events .tribe-events-c-search__button:focus,
.tribe-events .tribe-events-c-subscribe-dropdown__button:hover,
.tribe-events .tribe-events-c-subscribe-dropdown__button:focus { border-color:var(--cm-orange-dark) !important;background:var(--cm-orange-dark) !important;}
.tribe-events .tribe-events-c-top-bar__datepicker-button{color:var(--cm-olive);font-weight:800}
.tribe-events .tribe-events-c-view-selector__list-item-link,
.tribe-events .tribe-events-c-nav__list-item a { min-height:44px;display:inline-flex;align-items:center;color:var(--cm-olive);font-weight:700;}
.tribe-events .tribe-events-c-messages__message{border-radius:10px;color:var(--cm-ink);background:var(--cm-sand)}
.tribe-events .tribe-events-calendar-month__header-column-title,
.tribe-events .tribe-events-calendar-month__day-date { color:var(--cm-olive);}
.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum { width:34px;height:34px;display:inline-grid;place-items:center;border-radius:50%;color:#fff;background:var(--cm-orange);}
.tribe-events .tribe-events-c-search__input-control input { min-height:44px;border:1px solid #aeb9aa;border-radius:7px;color:var(--cm-ink);background:#fff;}

/* Keep calendar choices visible without depending on the plugin's dropdown. */
.oasf-events-toolbar { display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding-top:1.5rem;}
.oasf-events-toolbar__label { margin:0;color:var(--cm-muted);font-size:1rem;font-weight:600;}
.oasf-events-views { display:flex;flex-wrap:wrap;gap:.5rem;}
.oasf-events-views a { display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.6rem 1rem;border:1px solid var(--cm-line);border-radius:8px;color:var(--cm-olive);background:#fffdf8;font-size:1rem;font-weight:650;line-height:1.35;text-decoration:none;}
.oasf-events-views a:hover { border-color:var(--cm-olive);background:var(--cm-mist);}
.oasf-events-views a[aria-current="page"] { border-color:var(--cm-olive);background:var(--cm-olive);color:#fff;}
#oasf-events-content .tribe-events-c-view-selector { display:none;}

@media(max-width:560px){
.oasf-events-toolbar { gap:.5rem;padding-top:1rem;}
.oasf-events-views { width:100%;}
.oasf-events-views a { flex:1 1 auto;}
}

#oasf-events-content .tribe-events-header{margin-inline:0;padding-inline:0;width:100%}
#oasf-events-content .tribe-events-c-top-bar__datepicker-container{width:min(360px,calc(100vw - 2 * var(--cm-gutter)));max-width:none}

#oasf-events-content .datepicker{width:100%;min-width:0;padding:0 8px 8px;left:0!important}
#oasf-events-content .datepicker table{width:100%;table-layout:fixed}
#oasf-events-content .datepicker :is(td,th,button){width:auto}
#oasf-events-content .datepicker button{width:100%;min-height:44px}

/* Keep featured accents between the date and description at every viewport. */
.tribe-events .tribe-events-calendar-list__event-row{display:grid;grid-template-columns:70px minmax(0,1fr);column-gap:28px}
.tribe-events .tribe-events-calendar-list__event-date-tag,.tribe-events .tribe-events-calendar-list__event-wrapper{width:auto;min-width:0;padding-inline:0}
.tribe-events .tribe-events-calendar-list__event{margin-inline:0}
.tribe-events .tribe-events-calendar-list__event-details{width:100%;padding-inline:0}
.tribe-events .tribe-events-calendar-list__event-date-tag-datetime{position:relative;height:100%}
.tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-date-tag-datetime::after{left:auto!important;right:-16px!important;top:0!important;bottom:0!important;height:auto!important;width:3px}
@media(max-width:600px){.tribe-events .tribe-events-calendar-list__event-row{grid-template-columns:52px minmax(0,1fr);column-gap:22px}.tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-date-tag-datetime::after{right:-13px!important}}
