/* ============================================
   THE EVENTS CALENDAR (Tribe) - Criptocultural
   Conditionally loaded on event pages only
   ============================================ */

.tribe-common {
    font-family: 'Barlow', sans-serif !important;
}

.tribe-events-l-container {
    padding-top: 1.5rem !important;
}

.tribe-events-c-events-bar {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 1rem !important;
    padding: 0.75rem !important;
    margin-bottom: 1.5rem !important;
}

.tribe-events-c-events-bar--border {
    border-bottom: none !important;
}

.tribe-events-c-search__input {
    background: var(--cc-surface-low) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 0.75rem !important;
    color: var(--cc-text) !important;
    padding: 0.75rem 1rem !important;
    font-size: 0.9rem !important;
}

.tribe-events-c-search__input::placeholder {
    color: var(--cc-text-muted) !important;
}

.tribe-events-c-search__input:focus {
    border-color: var(--cc-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px var(--cc-primary-glow) !important;
}

.tribe-events-c-search__input-control-icon-svg {
    fill: var(--cc-text-muted) !important;
}

.tribe-events-c-search__button {
    background: var(--cc-primary) !important;
    border: none !important;
    border-radius: 0.75rem !important;
    color: #fff !important;
    font-family: 'Barlow Semi Condensed', sans-serif !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em !important;
    padding: 0.75rem 1.5rem !important;
    transition: background 0.2s ease !important;
}

.tribe-events-c-search__button:hover {
    background: var(--cc-primary-hover) !important;
}

.tribe-events-c-view-selector__content {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 0.75rem !important;
    box-shadow: var(--cc-shadow-elevated) !important;
}

.tribe-events-c-view-selector__list-item-link {
    color: var(--cc-text) !important;
    padding: 0.75rem 1rem !important;
    border-radius: 0.5rem !important;
}

.tribe-events-c-view-selector__list-item-link:hover {
    background: var(--cc-surface-low) !important;
    color: var(--cc-primary) !important;
}

.tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link {
    color: var(--cc-primary) !important;
}

.tribe-events-c-view-selector__button {
    color: var(--cc-text) !important;
}

.tribe-common-c-svgicon__svg-fill {
    fill: currentColor !important;
}

.tribe-events-c-top-bar__today-button {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 0.5rem !important;
    color: var(--cc-text) !important;
    font-size: 0.875rem !important;
    padding: 0.5rem 1rem !important;
    transition: border-color 0.2s ease, color 0.2s ease !important;
}

.tribe-events-c-top-bar__today-button:hover {
    border-color: var(--cc-primary) !important;
    color: var(--cc-primary) !important;
}

.tribe-events-c-top-bar__nav-link {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 0.5rem !important;
    color: var(--cc-text) !important;
    width: 2.5rem !important;
    height: 2.5rem !important;
    transition: border-color 0.2s ease, color 0.2s ease !important;
}

.tribe-events-c-top-bar__nav-link:hover:not([disabled]) {
    border-color: var(--cc-primary) !important;
    color: var(--cc-primary) !important;
}

.tribe-events-c-top-bar__nav-link[disabled] {
    opacity: 0.4 !important;
}

.tribe-events-c-top-bar__nav-link svg {
    fill: currentColor !important;
}

.tribe-events-c-top-bar__datepicker-button {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1.25rem !important;
}

.tribe-events-c-top-bar__datepicker-button:hover {
    color: var(--cc-primary) !important;
}

.tribe-events-c-top-bar__datepicker-button .tribe-common-c-svgicon {
    fill: var(--cc-text-muted) !important;
}

.tribe-events-c-messages__message--notice {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 0.75rem !important;
    color: var(--cc-text-secondary) !important;
    padding: 1rem 1.5rem !important;
    text-align: center !important;
}

.tribe-events-calendar-latest-past__heading {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 2px solid var(--cc-primary) !important;
    display: inline-block !important;
}

.tribe-events-calendar-latest-past__event-row,
.tribe-events-calendar-list__event-row,
.tribe-events-calendar-list__event,
.tribe-events-calendar-day__event,
.tribe-common-g-row.tribe-events-calendar-list__event-row {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 1rem !important;
    margin-bottom: 1rem !important;
    padding: 1.25rem 1.5rem !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 1.25rem !important;
}

.tribe-events-calendar-latest-past__event-row:hover,
.tribe-events-calendar-list__event-row:hover,
.tribe-events-calendar-list__event:hover,
.tribe-events-calendar-day__event:hover {
    border-color: var(--cc-border-strong) !important;
    box-shadow: var(--cc-shadow-card-hover) !important;
}

.tribe-events-calendar-latest-past__event-date-tag,
.tribe-events-calendar-list__event-date-tag,
.tribe-events-calendar-day__event-date-tag {
    text-align: center !important;
    min-width: 70px !important;
    padding: 0.75rem !important;
    background: var(--cc-surface-low) !important;
    border-radius: 0.75rem !important;
    flex-shrink: 0 !important;
}

.tribe-events-calendar-latest-past__event-date-tag-month,
.tribe-events-calendar-list__event-date-tag-month,
.tribe-events-calendar-day__event-date-tag-month {
    color: var(--cc-primary) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    display: block !important;
}

.tribe-events-calendar-latest-past__event-date-tag-daynum,
.tribe-events-calendar-list__event-date-tag-daynum,
.tribe-events-calendar-day__event-date-tag-daynum {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 2rem !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    display: block !important;
}

.tribe-events-calendar-latest-past__event-date-tag-year,
.tribe-events-calendar-list__event-date-tag-year,
.tribe-events-calendar-day__event-date-tag-year {
    color: var(--cc-text-muted) !important;
    font-size: 0.7rem !important;
    display: block !important;
}

.tribe-events-calendar-latest-past__event-datetime,
.tribe-events-calendar-list__event-datetime,
.tribe-events-calendar-day__event-datetime {
    color: var(--cc-text-muted) !important;
    font-size: 0.8125rem !important;
    margin-bottom: 0.25rem !important;
}

.tribe-events-calendar-latest-past__event-title,
.tribe-events-calendar-list__event-title,
.tribe-events-calendar-day__event-title {
    margin-top: 0.25rem !important;
    margin-bottom: 0 !important;
}

.tribe-events-calendar-latest-past__event-title-link,
.tribe-events-calendar-list__event-title-link,
.tribe-events-calendar-day__event-title-link,
.tribe-events-calendar-list__event-title a,
.tribe-events-calendar-latest-past__event-title a {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1.25rem !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
    text-decoration: none !important;
}

.tribe-events-calendar-latest-past__event-title-link:hover,
.tribe-events-calendar-list__event-title-link:hover,
.tribe-events-calendar-day__event-title-link:hover,
.tribe-events-calendar-list__event-title a:hover,
.tribe-events-calendar-latest-past__event-title a:hover {
    color: var(--cc-primary) !important;
}

.tribe-events-calendar-latest-past__event-details,
.tribe-events-calendar-list__event-details {
    flex: 1 !important;
    min-width: 0 !important;
}

.tribe-events-calendar-latest-past__heading,
.tribe-events-calendar-list__month-separator-text {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    margin-bottom: 1.5rem !important;
    margin-top: 2rem !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 3px solid var(--cc-primary) !important;
    display: inline-block !important;
}

.tribe-events-calendar-list__month-separator {
    margin: 2rem 0 1.5rem 0 !important;
}

.tribe-events-c-messages__message,
.tribe-events-c-messages__message--notice {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 1rem !important;
    color: var(--cc-text-secondary) !important;
    padding: 2rem !important;
    text-align: center !important;
    font-size: 1rem !important;
}

.tribe-events-calendar-month__day {
    background: var(--cc-surface) !important;
    border-color: var(--cc-border) !important;
}

.tribe-events-calendar-month__day:hover {
    background: var(--cc-surface-low) !important;
}

.tribe-events-calendar-month__day--current {
    background: var(--cc-surface-low) !important;
}

.tribe-events-calendar-month__calendar-event-title-link {
    color: var(--cc-text) !important;
}

.tribe-events-calendar-month__calendar-event-title-link:hover {
    color: var(--cc-primary) !important;
}

.tribe-events .tribe-common-c-svgicon {
    color: var(--cc-text-muted) !important;
}

.tribe-events .tribe-common-c-svgicon path {
    fill: currentColor !important;
}

.tribe-events-c-ical__link {
    color: var(--cc-text-muted) !important;
    font-size: 0.8125rem !important;
}

.tribe-events-c-ical__link:hover {
    color: var(--cc-primary) !important;
}

.tribe-events-c-subscribe-dropdown__content {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 0.75rem !important;
    box-shadow: var(--cc-shadow-elevated) !important;
}

.tribe-events-c-subscribe-dropdown__list-item-link {
    color: var(--cc-text) !important;
    padding: 0.625rem 1rem !important;
}

.tribe-events-c-subscribe-dropdown__list-item-link:hover {
    background: var(--cc-surface-low) !important;
    color: var(--cc-primary) !important;
}

.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-h5,
.tribe-common .tribe-common-h6 {
    color: var(--cc-text) !important;
}

.tribe-common .tribe-common-b1,
.tribe-common .tribe-common-b2,
.tribe-common .tribe-common-b3 {
    color: var(--cc-text-secondary) !important;
}

.tribe-common a,
.tribe-events a {
    color: var(--cc-text) !important;
}

.tribe-common a:hover,
.tribe-events a:hover {
    color: var(--cc-primary) !important;
}

.tribe-common-anchor-thin:hover {
    border-bottom-color: var(--cc-primary) !important;
}

.tribe-events .tribe-events-calendar-list__event-title a,
.tribe-events .tribe-events-calendar-list__event-title-link,
.tribe-events-calendar-list__event-title-link,
.tribe-events-calendar-latest-past__event-title a,
.tribe-events-pro-summary__event-title a,
.tribe-events-pro-photo__event-title a,
.tribe-events-calendar-month__calendar-event-title a,
.tribe-events-calendar-day__event-title a,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-title-link,
h3.tribe-events-calendar-list__event-title a,
h3.tribe-common-h6 a {
    color: var(--cc-text) !important;
    text-decoration: none !important;
}

.tribe-events .tribe-events-calendar-list__event-title a:hover,
.tribe-events .tribe-events-calendar-list__event-title-link:hover,
.tribe-events-calendar-list__event-title-link:hover,
.tribe-events-calendar-latest-past__event-title a:hover,
.tribe-events-pro-summary__event-title a:hover,
.tribe-events-pro-photo__event-title a:hover,
.tribe-events-calendar-month__calendar-event-title a:hover,
.tribe-events-calendar-day__event-title a:hover,
h3.tribe-events-calendar-list__event-title a:hover,
h3.tribe-common-h6 a:hover {
    color: var(--cc-primary) !important;
}

.tribe-events-calendar-list__event-date-tag-daynum,
.tribe-events-calendar-latest-past__event-date-tag-daynum,
.tribe-events-calendar-day__event-date-tag-daynum,
.tribe-events .tribe-events-c-day-marker__date {
    color: var(--cc-primary) !important;
}

.tribe-events-c-day-marker__date-wrap::after,
.tribe-events-calendar-list__month-separator-text::after {
    background-color: var(--cc-primary) !important;
}

.tribe-events-c-day-marker {
    border-color: var(--cc-border) !important;
}

.tribe-events-c-day-marker__date-daynum {
    color: var(--cc-primary) !important;
}

/* Variable overrides */
:root {
    --tec-color-accent-primary: #E85D04 !important;
    --tec-color-link-primary: #1C1917 !important;
    --tec-color-link-accent: #E85D04 !important;
    --tec-color-background: #FFFFFF !important;
    --tec-color-background-secondary: #FAFAF9 !important;
    --tec-color-text-primary: #1C1917 !important;
    --tec-color-text-secondary: rgba(28, 25, 23, 0.72) !important;
    --tec-color-border-default: rgba(0, 0, 0, 0.06) !important;
}

.dark,
.dark body {
    --tec-color-accent-primary: #FB923C !important;
    --tec-color-link-primary: #FAFAF9 !important;
    --tec-color-link-accent: #FB923C !important;
    --tec-color-background: #1C1917 !important;
    --tec-color-background-secondary: #0C0A09 !important;
    --tec-color-text-primary: #FAFAF9 !important;
    --tec-color-text-secondary: rgba(250, 250, 249, 0.72) !important;
    --tec-color-border-default: rgba(255, 255, 255, 0.06) !important;
}

body .tribe-events a.tribe-events-calendar-list__event-title-link,
body .tribe-events .tribe-events-calendar-list__event-title a,
body .tribe-common a.tribe-events-calendar-list__event-title-link,
body.tribe-theme-flavor-starter a.tribe-events-calendar-list__event-title-link {
    color: var(--cc-text) !important;
}

body .tribe-events a.tribe-events-calendar-list__event-title-link:hover,
body .tribe-events .tribe-events-calendar-list__event-title a:hover,
body .tribe-common a.tribe-events-calendar-list__event-title-link:hover {
    color: var(--cc-primary) !important;
}

body .tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
body .tribe-common .tribe-events-calendar-list__event-date-tag-daynum {
    color: var(--cc-primary) !important;
}

body .tribe-events-c-search__button,
body .tribe-common button.tribe-events-c-search__button {
    background-color: var(--cc-primary) !important;
    border-color: var(--cc-primary) !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-row,
body .tribe-events .tribe-events-calendar-list__event-row,
body .tribe-common .tribe-events-calendar-latest-past__event-row,
body .tribe-common .tribe-events-calendar-list__event-row,
.tribe-events-calendar-latest-past__event-row,
.tribe-events-calendar-list__event-row {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 1rem !important;
    margin-bottom: 1rem !important;
    padding: 1.25rem 1.5rem !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-row:hover,
body .tribe-events .tribe-events-calendar-list__event-row:hover,
.tribe-events-calendar-latest-past__event-row:hover,
.tribe-events-calendar-list__event-row:hover {
    border-color: var(--cc-border-strong) !important;
    box-shadow: var(--cc-shadow-card-hover) !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-date-tag,
body .tribe-events .tribe-events-calendar-list__event-date-tag,
.tribe-events-calendar-latest-past__event-date-tag,
.tribe-events-calendar-list__event-date-tag {
    background: var(--cc-surface-low) !important;
    border-radius: 0.75rem !important;
    padding: 0.75rem !important;
    min-width: 70px !important;
    text-align: center !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-date-tag-month,
body .tribe-events .tribe-events-calendar-list__event-date-tag-month,
.tribe-events-calendar-latest-past__event-date-tag-month,
.tribe-events-calendar-list__event-date-tag-month {
    color: var(--cc-primary) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.08em !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-date-tag-daynum,
body .tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
.tribe-events-calendar-latest-past__event-date-tag-daynum,
.tribe-events-calendar-list__event-date-tag-daynum {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 2rem !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-title a,
body .tribe-events .tribe-events-calendar-list__event-title a,
body .tribe-common .tribe-events-calendar-latest-past__event-title-link,
body .tribe-common .tribe-events-calendar-list__event-title-link,
.tribe-events-calendar-latest-past__event-title-link,
.tribe-events-calendar-list__event-title-link {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1.25rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

body .tribe-events .tribe-events-calendar-latest-past__event-title a:hover,
body .tribe-events .tribe-events-calendar-list__event-title a:hover,
.tribe-events-calendar-latest-past__event-title-link:hover,
.tribe-events-calendar-list__event-title-link:hover {
    color: var(--cc-primary) !important;
}

body .tribe-events .tribe-events-calendar-latest-past__heading,
.tribe-events-calendar-latest-past__heading {
    color: var(--cc-text) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    border-bottom: 3px solid var(--cc-primary) !important;
    padding-bottom: 0.75rem !important;
    margin-bottom: 1.5rem !important;
    display: inline-block !important;
}

body .tribe-events .tribe-events-c-messages__message,
.tribe-events-c-messages__message {
    background: var(--cc-surface) !important;
    border: 1px solid var(--cc-border) !important;
    border-radius: 1rem !important;
    padding: 2rem !important;
    text-align: center !important;
    color: var(--cc-text-secondary) !important;
}
