/* Dark Mode Style Preset - Comprehensive Dark Theme */

/* General Site-Wide Dark Mode Styling */
body,
html {
    background-color: #1a1a1a !important;
    color: #e0e0e0 !important;
}
 
body {
    background: #1a1a1a !important;
}

/* WordPress Content Areas */
.site-content,
.content-area,
.main-content,
#content,
.content,
.entry-content,
.post-content,
.page-content,
article,
main {
    background-color: #1a1a1a !important;
    color: #e0e0e0 !important;
}

/* WordPress Post/Page Elements */
.entry,
.post,
.page,
article {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #3a3a3a !important;
}

.entry-header,
.post-header,
.page-header {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #3a3a3a !important;
}

.entry-title,
.post-title,
.page-title,
h1, h2, h3, h4, h5, h6 {
    color: #fff !important;
}

.entry-title a,
.post-title a,
.page-title a,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: #fff !important;
}

.entry-title a:hover,
.post-title a:hover,
.page-title a:hover,
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
    color: #64b5f6 !important;
}

.entry-content,
.post-content,
.page-content,
p {
    color: #b0b0b0 !important;
}

/* WordPress Widgets and Sidebars */
.widget,
.sidebar,
.widget-area {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #3a3a3a !important;
}

.widget-title {
    color: #fff !important;
}

/* WordPress Navigation */
.navigation,
.nav-menu,
.menu {
    background-color: #2d2d2d !important;
}

.navigation a,
.nav-menu a,
.menu a {
    color: #e0e0e0 !important;
}

.navigation a:hover,
.nav-menu a:hover,
.menu a:hover {
    color: #64b5f6 !important;
}

/* WordPress Footer */
.site-footer,
.footer {
    background-color: #1a1a1a !important;
    color: #b0b0b0 !important;
    border-top-color: #3a3a3a !important;
}

/* WordPress Header */
.site-header,
.header {
    background-color: #2d2d2d !important;
    border-bottom-color: #3a3a3a !important;
}

/* Links */
a {
    color: #64b5f6 !important;
}

a:hover {
    color: #90caf9 !important;
}

/* General Text Elements */
p, li, span, div, td, th {
    color: #e0e0e0 !important;
}

/* Tables */
table, thead, tbody, tr, td, th {
    background-color: #2d2d2d !important;
    border-color: #3a3a3a !important;
    color: #e0e0e0 !important;
}

th {
    background-color: #3a3a3a !important;
    color: #fff !important;
}

/* Forms */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="number"],
textarea,
select {
    background-color: #3a3a3a !important;
    border-color: #4a4a4a !important;
    color: #e0e0e0 !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
    background-color: #4a4a4a !important;
    border-color: #64b5f6 !important;
    color: #fff !important;
}

/* Buttons (general) - Only apply to non-plugin buttons */
button:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn):not(.ats_showtime_toggle_btn):not(.ats-calendar__button):not(.ats_event_list_more_details_btn):not(.agl-epgbutton),
.button:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn):not(.ats_showtime_toggle_btn):not(.ats-calendar__button):not(.ats_event_list_more_details_btn):not(.agl-epgbutton),
input[type="submit"]:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn),
input[type="button"]:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn) {
    background-color: #3a3a3a !important;
    border-color: #4a4a4a !important;
    color: #fff !important;
}

button:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn):not(.ats_showtime_toggle_btn):not(.ats-calendar__button):not(.ats_event_list_more_details_btn):not(.agl-epgbutton):hover,
.button:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn):not(.ats_showtime_toggle_btn):not(.ats-calendar__button):not(.ats_event_list_more_details_btn):not(.agl-epgbutton):hover,
input[type="submit"]:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn):hover,
input[type="button"]:not(.agileLink):not(.ats_filter_btn):not(.ats_filter_toggle_btn):hover {
    background-color: #4a4a4a !important;
    border-color: #64b5f6 !important;
    color: #fff !important;
}

/* Code and Pre elements */
code,
pre {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #3a3a3a !important;
}

/* Blockquotes */
blockquote {
    background-color: #2d2d2d !important;
    border-left-color: #64b5f6 !important;
    color: #e0e0e0 !important;
}

/* Horizontal Rules */
hr {
    border-color: #3a3a3a !important;
    background-color: #3a3a3a !important;
}

/* Images - slight brightness adjustment for dark mode */
img {
    opacity: 0.95;
}

/* Tab Content */
.ats-tab-contents {
    background: #1a1a1a;
    color: #e0e0e0;
}

.ats-tab-content {
    background: #1a1a1a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

.tab-navigation {
    background-color: #2d2d2d;
    border-color: #3a3a3a;
}

.tab-btn {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border-color: #3a3a3a;
}

.tab-btn:hover {
    background-color: #3a3a3a;
    border-color: #4a4a4a;
}

.tab-btn.active {
    background-color: #64b5f6;
    border-color: #64b5f6;
    color: #1a1a1a;
}

.agile-tab-subheader {
    color: #fff;
}

.venue-info {
    background: #2d2d2d;
    border-left-color: #64b5f6;
    color: #e0e0e0;
}

.showings-list > *:not(:last-child) {
    border-bottom-color: #3a3a3a;
}

/* Event List Container */
.ats_event_list_events_container {
    max-width: 1200px;
    margin: 0 auto;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background: #1a1a1a;
    color: #e0e0e0;
}

/* Event List Header */
.ats_event_list_events_header {
    background: #2d2d2d;
    color: #fff;
    padding: 16px 20px;
    margin-bottom: 24px;
    border-radius: 8px 8px 0 0;
    font-size: 18px;
    font-weight: 600;
    border: 1px solid #3a3a3a;
}

.ats_event_list_events_icons {
    color: #e0e0e0;
}

/* Event Items */
.ats_event_list_event_item {
    background: #2d2d2d;
    border: 1px solid #3a3a3a;
    border-radius: 8px;
    margin-bottom: 20px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.ats_event_list_event_item:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
    border-color: #4a4a4a;
}

.ats_event_list_event_content {
    display: flex;
    padding: 20px;
    gap: 20px;
}

/* Event Image */
.ats_event_list_event_image {
    flex-shrink: 0;
    width: 150px;
}

.ats_event_list_event_image img {
    width: 100%;
    height: auto;
    border-radius: 6px;
    object-fit: cover;
    filter: brightness(0.9);
    transition: filter 0.3s ease;
}

.ats_event_list_event_image:hover img {
    filter: brightness(1);
}

/* Event Details */
.ats_event_list_event_details {
    flex: 1;
}

.ats_event_list_event_title {
    font-size: 22px;
    font-weight: 600;
    margin: 0 0 12px 0;
    color: #fff;
}

.ats_event_list_event_title a {
    color: #fff;
    text-decoration: none;
    transition: color 0.2s ease;
}

.ats_event_list_event_title a:hover {
    color: #64b5f6;
}

.ats_event_list_event_description {
    color: #b0b0b0;
    margin: 0 0 16px 0;
    line-height: 1.6;
}

.ats_event_list_event_single_date {
    color: #b0b0b0;
    font-size: 14px;
    margin-bottom: 15px;
}

/* Showtimes */
.ats_event_list_event_showtimes {
    margin-top: 16px;
}

.ats_event_list_showtime_row {
    display: grid;
    grid-template-columns: 70px repeat(auto-fit, 80px);
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
    font-size: 14px;
}

.ats_event_list_showtime_row[class*="ats_showtime_hidden_"] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}

.ats_event_list_showtime_date {
    font-weight: 600;
    color: #fff;
}

.ats_event_list_showtime_time {
    background: #3a3a3a;
    border: 1px solid #4a4a4a;
    border-radius: 4px;
    padding: 6px 12px;
    text-align: center;
    color: #e0e0e0;
    transition: all 0.2s ease;
    font-size: 12px;
    text-decoration: none;
}

.ats_event_list_showtime_time:hover {
    background: #4a4a4a;
    border-color: #64b5f6;
    color: #fff;
}

/* Showtime Toggle */
.ats_showtime_toggle_container {
    margin: 0.5em 0;
}

.ats_showtime_toggle_btn {
    background: #64b5f6 !important;
    color: #000 !important;
    border: none;
    padding: 0.5em 1em;
    cursor: pointer;
    border-radius: 3px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.ats_showtime_toggle_btn:hover {
    background: #90caf9 !important;
    color: #000 !important;
    transform: translateY(-1px);
}

.ats_showtime_toggle_btn_active {
    background: #4a4a4a !important;
    color: #fff !important;
}

.ats_event_list_more_details_btn {
    background-color: #4a4a4a !important;
    color: #fff !important;
    padding: 8px 16px;
    text-decoration: none;
    border-radius: 3px;
    font-size: 12px;
    font-weight: bold;
    display: inline-block;
    transition: all 0.2s ease;
}

.ats_event_list_more_details_btn:hover {
    background-color: #64b5f6 !important;
    color: #000 !important;
}

/* Filter Styles */
.ats_event_list_filter_container {
    margin-bottom: 8px;
    background: #2d2d2d;
    padding: 12px;
    border-radius: 6px;
    border: 1px solid #3a3a3a;
}

.ats_event_list_filter_label {
    color: #e0e0e0;
    margin-bottom: 8px;
}

.ats_event_list_filter_buttons {
    display: inline;
}

.ats_filter_toggle_btn,
.ats_filter_btn {
    background: #3a3a3a !important;
    border: 1px solid #4a4a4a !important;
    border-radius: 6px;
    padding: 0.6rem 1.0rem;
    color: #fff !important;
    font-weight: 300;
    cursor: pointer;
    transition: all 0.3s ease;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    margin-right: 8px;
    margin-bottom: 8px;
}

.ats_filter_toggle_btn:hover,
.ats_filter_btn:hover {
    background: #4a4a4a !important;
    border-color: #64b5f6 !important;
    color: #fff !important;
    transform: scale(1.02);
}

.ats_filter_toggle_btn.active,
.ats_filter_btn.active,
.ats_filter_toggle_btn_active,
.ats_filter_btn_active {
    background: #64b5f6 !important;
    border-color: #64b5f6 !important;
    color: #000 !important;
}

.ats_filter_btn:disabled,
.ats_filter_btn[disabled] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Timeline Container */
.ats_event_timeline_container {
    max-width: 1200px;
    margin: 0 auto;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background: #1a1a1a;
    color: #e0e0e0;
    padding: 20px;
}

.ats_timeline_day {
    margin-bottom: 32px;
    border-left: 3px solid #64b5f6;
    padding-left: 20px;
    background: #2d2d2d;
    border-radius: 6px;
    overflow: hidden;
}

.ats_timeline_date_header {
    margin-bottom: 16px;
    background: #3a3a3a;
    padding: 8px 15px;
    border-bottom: 1px solid #4a4a4a;
}

.ats_timeline_day_name {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
}

.ats_timeline_date {
    display: none;
}

.ats_timeline_events {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 0;
}

.ats_timeline_event {
    background: #2d2d2d;
    border: 1px solid #3a3a3a;
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
    display: flex;
    align-items: stretch;
    gap: 12px;
    min-height: 60px;
}

.ats_timeline_event:last-child {
    border-bottom: none;
}

.ats_timeline_event:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
    transform: translateY(-2px);
    border-color: #4a4a4a;
}

.ats_timeline_event_times {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 60px;
    flex-shrink: 0;
    text-align: left;
    margin: 0;
    margin-right: 2px;
    gap: 8px;
}

.ats_timeline_time {
    background: #3a3a3a;
    border: 1px solid #4a4a4a;
    border-radius: 4px;
    padding: 6px 12px;
    font-size: 14px;
    color: #e0e0e0;
    transition: all 0.2s ease;
    text-decoration: none;
    display: block;
    margin-bottom: 3px;
}

.ats_timeline_time:hover {
    background: #4a4a4a;
    border-color: #64b5f6;
    color: #fff;
}

.ats_timeline_event_thumbnail {
    flex-shrink: 0;
}

.ats_timeline_event_thumbnail img {
    width: 40px;
    height: 40px;
    object-fit: cover;
    border-radius: 4px;
    filter: brightness(0.9);
}

.ats_timeline_event_content {
    margin-left: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

.ats_timeline_event_details {
    flex: 1;
    min-width: 0;
}

.ats_timeline_event_title {
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 8px 0;
    color: #fff;
}

.ats_timeline_event_title a {
    color: #fff;
    text-decoration: none;
    transition: color 0.2s ease;
}

.ats_timeline_event_title a:hover {
    color: #64b5f6;
}

.ats_timeline_event_description {
    color: #b0b0b0;
    margin: 0 0 12px 0;
    line-height: 1.6;
}

.ats_timeline_event_meta {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.ats_timeline_event_meta .calendar-icon {
    width: 16px;
    height: 16px;
    opacity: 0.6;
    filter: brightness(0) invert(1);
}

.ats_timeline_event_meta .venue-text {
    font-size: 11px;
    color: #b0b0b0;
    white-space: nowrap;
}

.ats_no_events_message {
    text-align: center;
    padding: 40px;
    color: #b0b0b0;
    font-size: 16px;
}

/* Calendar Styles */
.ats-calendar {
    background: #2d2d2d;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    border: 1px solid #3a3a3a;
}

.ats-calendar select {
    background-color: #3a3a3a;
    color: #e0e0e0;
    border: 1px solid #4a4a4a;
}

.ats-calendar__opts,
.ats-calendar__buttons {
    background-color: #2d2d2d;
}

.ats-calendar__opts {
    border-bottom: 1px solid #3a3a3a;
}

.ats-calendar__body {
    background-image: linear-gradient(to bottom, #3a3a3a, #2d2d2d);
}

.ats-calendar__days {
    background-color: #2d2d2d;
    border-bottom: 1px solid #3a3a3a;
}

.ats-calendar__days > div {
    color: #b0b0b0;
}

.ats-calendar__dates {
    background: #2d2d2d;
}

.ats-calendar__date {
    color: #e0e0e0;
}

.ats-calendar__date::before {
    background-color: rgba(100, 181, 246, 0.1);
}

.ats-calendar__date:not(.calendar__date--selected):not(.calendar__date--grey):hover::before {
    background-color: rgba(100, 181, 246, 0.3);
}

.ats-calendar__date--grey {
    color: #6a6a6a;
    cursor: not-allowed;
}

.ats-calendar__date--selected {
    color: #64b5f6;
}

.ats-calendar__date--selected::before {
    background-color: rgba(100, 181, 246, 0.4);
}

.ats-calendar__date--has-events {
    color: #90caf9;
    font-weight: 700;
}

.ats-calendar__date--has-events::after {
    background-color: #64b5f6;
}

.ats-calendar__date span {
    color: inherit;
}

.ats-calendar__buttons {
    border-top: 1px solid #3a3a3a;
}

.ats-calendar__button {
    color: #fff !important;
    background-color: #3a3a3a !important;
    transition: all 0.2s ease;
}

.ats-calendar__button:hover {
    background-color: #4a4a4a !important;
    color: #fff !important;
}

.ats-calendar__button--red {
    background-color: #d32f2f !important;
    color: #fff !important;
}

.ats-calendar__button--red:hover {
    background-color: #f44336 !important;
    color: #fff !important;
}

.ats-calendar__button--primary {
    background-color: #64b5f6 !important;
    color: #000 !important;
}

.ats-calendar__button--primary:hover {
    background-color: #90caf9 !important;
    color: #000 !important;
    box-shadow: 0 20px 30px -13px rgba(100, 181, 246, 0.45);
}

.ats-calendar-overlay {
    background: rgba(0, 0, 0, 0.7);
}

.ats-calendar-container {
    color: #e0e0e0;
}

/* Carousel Styles */
.carousel-container {
    background: #1a1a1a;
}

.carousel {
    background: #2d2d2d;
    border: 1px solid #3a3a3a;
}

.media-wrapper {
    background: #2d2d2d;
}

.carousel .item {
    background: #2d2d2d;
}

.carousel .caption {
    background-color: rgba(0, 0, 0, 0.7);
    color: #e0e0e0;
}

.carousel-container .btn {
    background-color: #3a3a3a !important;
    color: #fff !important;
    border: 1px solid #4a4a4a !important;
}

.carousel-container .btn:hover {
    background-color: #4a4a4a !important;
    border-color: #64b5f6 !important;
    color: #fff !important;
}

.ats-svg-arrow {
    fill: #e0e0e0;
    transition: transform 0.2s ease-in-out, fill 0.2s ease;
}

.ats-svg-arrow:hover {
    transform: scale(1.2);
    fill: #64b5f6;
}

.carousel-container .dots {
    background: transparent;
}

.carousel-container .dot {
    background-color: #4a4a4a;
}

.carousel-container .dot.active,
.carousel-container .dot:hover {
    background-color: #64b5f6;
}

/* Location SVG */
#ats-location-link-svg {
    fill: #64b5f6;
    transition: fill 0.3s ease, transform 0.2s ease;
}

#ats-location-link-svg:hover {
    fill: #90caf9;
    transform: scale(1.1);
}

#ats-location-link-svg path {
    fill: #64b5f6;
    transition: fill 0.3s ease;
}

#ats-location-link-svg:hover path {
    fill: #90caf9;
}

#ats-location-link-svg-div {
    background: transparent;
}

#ats-location-link-svg-div .ats-map-link {
    color: #64b5f6;
}

/* Purchase Links */
.agileLink {
    display: inline-block;
    padding: 12px 24px;
    background: #64b5f6 !important;
    color: #000 !important;
    text-decoration: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 15px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(100, 181, 246, 0.3);
    border: 2px solid #64b5f6 !important;
}

.agileLink:hover {
    background: #90caf9 !important;
    color: #000 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(100, 181, 246, 0.5);
    border-color: #90caf9 !important;
}

.agileLink:focus {
    outline: 2px solid #64b5f6;
    outline-offset: 2px;
    color: #000 !important;
}

/* Event List View Buttons */
#viewByAZbtn,
#viewByDatebtn {
    color: #64b5f6;
    cursor: pointer;
    transition: color 0.2s ease;
}

#viewByAZbtn:hover,
#viewByDatebtn:hover {
    color: #90caf9;
}

/* Event List Views */
#ats_event_list_AZView,
#ats_event_list_dateView {
    background: #1a1a1a;
}

/* Event List Items */
.ats-event-list {
    background: #1a1a1a;
}

.ats-event-item {
    background: #2d2d2d;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

/* EPG Button */
.agl-epgbutton {
    background: #3a3a3a !important;
    color: #fff !important;
    border: 1px solid #4a4a4a !important;
}

.agl-epgbutton:hover {
    background: #4a4a4a !important;
    border-color: #64b5f6 !important;
    color: #fff !important;
}

/* Hidden Tags */
.hiddenTags {
    display: none;
}

/* Responsive adjustments for dark mode */
@media (max-width: 768px) {
    .ats_event_list_event_content {
        flex-direction: column;
    }

    .ats_event_list_event_image {
        width: 100%;
    }

    .ats_timeline_event {
        flex-wrap: wrap;
        padding: 8px 12px;
    }

    .ats_timeline_event_thumbnail img {
        width: 35px;
        height: 35px;
    }

    .ats_timeline_event_title {
        font-size: 13px;
    }

    .ats_timeline_event_description {
        font-size: 11px;
    }
}
