/*
Theme Name: Astra Child
Template: astra
Version: 1.0.0
Description: A child theme for Astra, customized for UCI Biosci Events. Includes layout overrides, style enhancements, and integration with The Events Calendar plugin.
Author: Dunlop School Computing Team
Author URI: https://www.bio.uci.edu
*/

/* Layout Overrides & Flex Behavior */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event { flex-direction: row; justify-content: flex-start; }
.tribe-common .tribe-common-g-row { flex-wrap: nowrap; display: flex; } /* Prevent row wrap */
/* Event Image Styling */
.tribe-events .tribe-events-calendar-list__event-featured-image { aspect-ratio: 4/3 !important; object-fit: cover !important; border-radius: 0.25rem; }
.tribe-events-calendar-list__event-featured-image-wrapper { padding: 0 !important; width: calc(var(--tec-grid-width-1-of-8) * 3); }
/* Month Separator (List View) */
.tribe-events-calendar-list__month-separator { margin-left: -1rem !important; margin: 2rem 0 1rem; }
.tribe-events-calendar-list__month-separator-text { font-size: 16px !important; line-height: 1.62 !important; font-weight: 800 !important; font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif !important; }
.tribe-events .tribe-events-calendar-list__month-separator:after { height: 0 !important; }
/* Main Container & Section Padding */
.tribe-events-l-container { padding-top: 4% !important; } /* Top padding for layout container */
/* Events Header (List Page) */
.bs-events.bs-tribe-events { width: 100%; }
.bs-events .bs-events-header-fullwrap { position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; width: 100vw; max-width: 100vw; box-sizing: border-box; text-align: left; z-index: 1; }
.bs-events .bs-events-header-fullwrap::after { content: ""; display: table; clear: both; color: #494949; } /* Clearfix for float issues */
.bs-events .bs-events-header { font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif; font-weight: 900; font-size: 4.25rem; line-height: 4.25rem; color: #494949; }
.bs-events .bs-events-subheader { font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif; font-weight: 700; font-size: 1.25rem; color: #235699 !important; }
/* Filter Buttons (List Page) */
.bs-events-buttons { display: flex; gap: 1rem; padding: 4% 0; } /* Horizontal filter button layout */
.bs-button { font-size: 20px; font-weight: 500; display: inline-block; padding: 10px 20px; text-decoration: none; border-radius: 5px; transition: background-color 0.3s ease; color: #000000 !important; background-color: rgba(226, 226, 226, 0.55); }
.bs-button.active { color: #000000 !important; font-weight: 700 !important; text-decoration: underline !important; -webkit-text-decoration-color: #E09900 !important; text-decoration-color: #E09900 !important; background-color: rgba(255, 255, 255, 0.55); }
.bs-button:hover { background: #00b0ca; } /* Hover effect */
/* Event Cards (List View) */
.bs-tribe-events .bs-events-details { padding: 1rem !important; background-color: #f4f4f4; border-radius: 0.25rem; overflow: hidden; }
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-details { width: calc(var(--tec-grid-width-1-of-8) * 4); }
.bs-tribe-events h3 a { color: #494949 !important; font-size: 26px; font-family: 'Roboto', sans-serif; }
.tribe-events-calendar-list__event-datetime-wrapper { padding: 1rem 3rem !important; text-align: center; overflow-wrap: break-word; border-radius: 0.25rem; border: 2px solid #f7f5f5; background-color: #2290c3 !important; margin-bottom: 10px !important; }
.tribe-events-calendar-list__event-details { padding-left: 24px; }
.bs-tribe-callout-time .bs-eventTime-label { font-weight: bold; }
/* Events Date Blocks */
.bs-tribe-events .bs-tribe-callout_day,
.bs-tribe-events .bs-tribe-callout_month,
.bs-tribe-events .bs-tribe-callout_year { color: #FFFFFF; font-weight: 700; display: block; }
.bs-tribe-past-events.bs-tribe-events .bs-tribe-callout_day,
.bs-tribe-past-events.bs-tribe-events .bs-tribe-callout_month,
.bs-tribe-past-events.bs-tribe-events .bs-tribe-callout_year,
.bs-tribe-events-past .bs-tribe-events .bs-tribe-callout_day,
.bs-tribe-events-past .bs-tribe-events .bs-tribe-callout_month,
.bs-tribe-events-past .bs-tribe-events .bs-tribe-callout_year { color: #494949; }
.bs-tribe-events .bs-tribe-callout_day { font-size: 2.25rem !important; }
.bs-tribe-events .bs-tribe-callout_month,
.bs-tribe-events .bs-tribe-callout_year { font-size: 1rem !important; }
/* Past Events */
.bs-tribe-past-events .tribe-common-g-row { padding-top: 1rem; } /* Top padding for past event rows */
.bs-tribe-past-events .tribe-events-calendar-list__event-datetime-wrapper { padding: 1rem 1rem !important; background-color: rgba(226, 226, 226, 0.55) !important; }
.bs-tribe-past-events .bs-tribe-date { width: 16%; }
/* Pagination */
.bs-events-pagination { text-align: center; margin-top: 2em; }
.bs-events-pagination .page-numbers { display: inline-block; margin: 0 6px; padding: 8px 14px; background: #eee; color: #333; text-decoration: none; border-radius: 4px; }
.bs-events-pagination .page-numbers.current { background-color: #0073e6; color: white; font-weight: bold; }
/* notice msg */
.tribe-events-notices {   }
/* Responsive Tweaks (Mobile) */
@media (max-width: 767px) {
  .tribe-events-calendar-list__event { flex-direction: column !important; }
  .tribe-events-calendar-list__event-details,
  .tribe-common-g-col,
  .tribe-events-calendar-list__event-featured-image-wrapper { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
  .tribe-events-calendar-list__event-datetime-wrapper { text-align: center; margin-bottom: 1rem; }
}

/* Responsive Tweaks (Desktop) */
@media (min-width: 1201px),
(min-width: 993px) {
  .tribe-events-calendar-list__event-wrapper { max-width: 1224px; }
  .bs-tribe-events .bs-tribe-date { padding-right: 1rem; }
}

@media (max-width: 767px) {
  .bs-tribe-past-events .bs-tribe-date { width: 100%; }
}

/* Single Event Page Styles */
.bs-events.bs-tribe-events { width: 100%; }
.bs-single-event .bs-events-header-fullwrap { padding-top: 3em;padding-bottom: 3em;background-color: #ebedee !important; }
.tribe-events-single-event-title { font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif; font-weight: 900; font-size: 4.25rem !important; line-height: 4.25rem !important; color: #494949 !important; padding-top: 1rem !important; }
.single-tribe-events { background: #fff; margin-top: -3rem !important; position: relative; z-index: 2; padding: 4% 2rem 0 2rem !important; }
.bs-single-event .tribe_events.ast-article-single { margin-top: -3rem; position: relative; z-index: 1; background: #fff; padding: 4% 2rem 0 2rem; }
.bs-single-event { width: 100%; } /* Full width wrapper */
.bs-single-event .ast-container:first-of-type { display: block !important; } /* Force visibility */
.bs-single-event .event-meta { padding-bottom: 4rem; font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif; font-weight: 900; font-size: 2.7rem !important; color: #494949 !important; }
.single.single-tribe_events .event-description .tribe-events-schedule { display: none; } 
.single.single-tribe_events .event-description > figure:first-of-type { margin-bottom: 2rem; }
#tribe-events-pg-template { padding-top: 0 !important; width: 100% !important; }
#tribe-events-content { padding-top: 0px; }

/* Widget events */
.tribe-events-widget-events-list h2.tribe-common-h6 {font-size: 2.5rem;font-weight: 700;font-family: 'Roboto', sans-serif;line-height: 1.3em;color: #0064a4;}
.tribe-events-widget .tribe-events-widget-events-list__event-date-tag {background: #0076a1;border-radius: 0.3rem;  }
.tribe-events-widget-events-list__event-date-tag-datetime span {color: #fff !important;}
.tribe-events-widget-events-list__event-wrapper { margin-left: 2rem !important; }
.tribe-events-widget-events-list__event-datetime { font-size: 1rem; }
.tribe-common .tribe-common-c-svgicon{     color: #fe8d00 !important; }
.tribe-events-widget .tribe-events-widget-events-list__event-row--featured .tribe-events-widget-events-list__event-date-tag-datetime:after{background-color: #fe8d00 !important;}
.tribe-events-widget-events-list__view-more {text-align: end;}
a.tribe-events-widget-events-list__view-more-link {color: #0064a4 !important;}

/* Mobile menu */
#ast-hf-mobile-menu .sub-menu .ast-icon.icon-arrow { display: none; } /* Hide submenu arrows */
#ast-hf-mobile-menu { padding-bottom: 100vh !important; }


/** Header **/
.ast-above-header #ast-hf-menu-2 a:hover,
.site-below-footer-wrap .footer-widget-area a:hover {text-decoration: underline;}
/* Top top Menu */
.site-above-header-wrap .main-header-menu > .menu-item > .menu-link {text-decoration:none;}
@media (max-width: 767px) {
.ast-above-header  {padding-left:5px !important}
.ast-builder-grid-row {row-gap: 0;}
}

/** Footer widgets **/
#bsc-privacy { text-align: right; }
@media (max-width: 767px) {
  .widget,
  #bsc-privacy { text-align: center; }
  .widget ul,
  .widget p,
  .widget-title {
    margin-left: auto;
    margin-right: auto;
  }
  .widget-title {margin-top: 2rem;}
  .site-footer-section .site-footer-focus-item {justify-content: center;}
  .tribe-events-widget .tribe-events-widget-events-list__event-row {
    flex-wrap: wrap !important;
  }
}

/** External icon in navigation **/
.main-header-bar-navigation .fa-external-link {position: absolute;right: 25px;top: 40%;font-size: 15px;padding-left: 20px;}

/* footer links */
footer .widget_nav_menu li {margin-bottom: 0.8rem;}
footer a {border-bottom-width: 1px;border-bottom-style: solid;border-color: transparent;text-decoration: none !important;}
footer a:hover {border-color: #fff;}

/* Events pagination */
.tribe-events-pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin: 2rem 0; padding: 1rem 0; }
.tribe-events-pagination .page-numbers { display: inline-block; padding: 0.5em 1em; font-size: 1rem; border-radius: 6px; background-color: #f0f0f0; color: #333; text-decoration: none; transition: background-color 0.25s ease, color 0.25s ease; }
.tribe-events-pagination .page-numbers:hover { background-color: #2294c7; color: #fff; }
.tribe-events-pagination .page-numbers.current { background-color: #0076a1; color: #fff; font-weight: bold; cursor: default; }
.tribe-events-pagination .page-numbers.next { font-weight: 500; }

.tribe-events-pagination .page-numbers.current { background-color: #0076a1; color: #fff; font-weight: bold; cursor: default; }
#ast-hf-menu-2 .menu-link {border-bottom:none;}
@media (max-width: 767px) {
  .tribe-events-widget .tribe-events-widget-events-list__event-row {flex-wrap: wrap !important;}
  .ast-above-header-wrap .ast-above-header-bar .ast-builder-grid-row {display:block !important;text-align:center;}
}

/* Search */
.search-form {border-radius: 8px !important;}

/* search page */
body.search .ast-breadcrumbs-wrapper { display:none; }
.bs-search-form { display: flex;justify-content: center;margin: 2rem 0;width: 62% }
body.search .not-found .widget_search { display:none; }
.bs-search-form input[type="search"] { padding: 10px;border: 1px solid #ccc;border-radius: .25rem;font-size: 16px; }
.bs-search-title{    font-weight: 900 !important; font-size: 2.5rem !important; }
.bs-search-form input[type="submit"] { padding: 10px 20px; background-color: #FFD200; color: #666; font-weight: 700; border: none; border-radius: .25rem; cursor: pointer;}


/* Stackable tricks */
/* Full width row */
.bs-stackable-fullwidth {width: 100vw !important;max-width: 100vw !important;margin-left: calc(-50vw + 50%) !important;margin-right: calc(-50vw + 50%) !important;}
/* Images */
.wp-block-stackable-image:not(.bs-radius-0):not(.radius-0) img:not(.is-style-rounded) {border-radius: 0.25rem;}
/* Btns */
button.stk-button,a.stk-button,.stk-block-button__button {border-radius: 0.25rem;}
