/* Express-nedelia: TEC List View v1.3.0 -- isolated event markup.
   In v1.2 the TEC event.php output is REPLACED by an independent
   .enaf13-card template, so native TEC grid styles cannot squash text. */

/* Keep the existing TEC navigation/search/month grouping. */
#tribe-events-pg-template:has(.tribe-events-view--list) {
    box-sizing: border-box;
    width: min(100% - 24px, 1430px) !important;
    max-width: 1430px !important;
    margin-inline: auto !important;
}
.tribe-events-view--list .tribe-events-l-container {
    box-sizing: border-box;
    max-width: 1350px !important;
    margin-inline: auto !important;
    padding-inline: 15px !important;
}
.tribe-events-view--list .tribe-events-header__events-bar {
    background: #fff;
    border: 1px solid #e1e7ed;
    border-radius: 12px;
    box-shadow: 0 4px 18px rgba(22,58,95,.045);
}
.tribe-events-view--list .enaf13-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 14px 0 17px;
    padding: 0;
}
.tribe-events-view--list .enaf13-filter {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border: 1px solid #dbe4ec;
    border-radius: 7px;
    background: #fff;
    color: #173b60;
    font: 700 12px/1.25 Arial, sans-serif;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.tribe-events-view--list .enaf13-filter:hover,
.tribe-events-view--list .enaf13-filter:focus-visible {
    color: #a62828;
    border-color: #a62828;
    background: #fff7f7;
}
.tribe-events-view--list .enaf13-filter.is-active {
    color: #fff;
    background: #193c65;
    border-color: #193c65;
}
.tribe-events-view--list .tribe-events-calendar-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
}
.tribe-events-view--list .tribe-events-calendar-list__month-separator {
    grid-column: 1 / -1 !important;
    margin: 7px 0 3px !important;
}
.tribe-events-view--list .tribe-events-calendar-list__month-separator-text {
    color: #193c65 !important;
    font: 700 18px/1.3 Georgia,serif !important;
}
/* Every card contains ONLY new HTML; zero TEC row/grid internals. */
.tribe-events-view--list .enaf13-card {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 18px 20px 16px !important;
    border: 1px solid #e2e8ef !important;
    border-top: 3px solid #a62828 !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 4px 15px rgba(22,58,95,.05);
    box-sizing: border-box !important;
    overflow: hidden;
    color: #173b60;
    font-family: Arial,'Segoe UI',sans-serif;
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.tribe-events-view--list .enaf13-card * { box-sizing: border-box; }
.tribe-events-view--list .enaf13-card__top {
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) !important;
    column-gap: 12px;
    align-items: start;
    min-width: 0;
    width: 100%;
}
.tribe-events-view--list .enaf13-card__date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 68px;
    min-width: 68px;
    height: 74px;
    border-radius: 8px;
    background: #1c3c65;
    color: #fff;
    box-shadow: 0 4px 9px rgba(22,58,95,.16);
}
.tribe-events-view--list .enaf13-card__date time { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.tribe-events-view--list .enaf13-card__date strong {
    display:block;
    font: 700 30px/1.05 Georgia,serif;
    color:#fff;
}
.tribe-events-view--list .enaf13-card__date span { display:block; font: 700 10px/1.4 Arial,sans-serif; color:#fff; letter-spacing:.5px; }
.tribe-events-view--list .enaf13-card__headline {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}
.tribe-events-view--list .enaf13-card__labels {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap: 5px 7px;
    width:100%;
    min-width:0;
    margin: 0 0 7px;
}
.tribe-events-view--list .enaf13-card__category {
    display:inline;
    background:transparent;
    color:#aa2529 !important;
    text-transform:uppercase;
    font:800 11px/1.35 Arial,sans-serif !important;
    letter-spacing:.15px;
    text-decoration:none !important;
}
.tribe-events-view--list .enaf13-card__category:hover { text-decoration:underline !important; }
.tribe-events-view--list .enaf13-card__time {
    color:#708092;
    font:600 12px/1.4 Arial,sans-serif;
}
.tribe-events-view--list .enaf13-card__title {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:#173b60 !important;
    font:700 17px/1.34 Arial,'Segoe UI',sans-serif !important;
    letter-spacing:0 !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    white-space:normal !important;
}
.tribe-events-view--list .enaf13-card__title a {
    color:inherit !important;
    font:inherit !important;
    text-decoration:none !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    white-space:normal !important;
}
.tribe-events-view--list .enaf13-card__title a:hover { color:#a62828 !important; }
.tribe-events-view--list .enaf13-card__venue {
    margin:12px 0 0 !important;
    padding:10px 0 0 !important;
    border-top:1px solid #eaf0f4;
    color:#173b60;
    font:600 14px/1.5 Arial,sans-serif;
    overflow-wrap:break-word;
}
.tribe-events-view--list .enaf13-card__venue span { color:#a62828; font-weight:900; }
.tribe-events-view--list .enaf13-card__excerpt {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
    color:#65778a;
    font:400 14px/1.58 Arial,'Segoe UI',sans-serif;
    margin:11px 0 15px !important;
    padding:0 !important;
    overflow-wrap:break-word;
    word-break:normal;
    max-height:6em;
}
.tribe-events-view--list .enaf13-card__footer {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    margin-top:auto;
    padding-top:12px;
    border-top:1px solid #eef2f5;
}
.tribe-events-view--list .enaf13-card__footer a {
    color:#a62828 !important;
    font:700 13px/1.35 Arial,sans-serif !important;
    text-decoration:none !important;
}
.tribe-events-view--list .enaf13-card__footer a:hover { color:#173b60 !important; }
@media (hover:hover) {
    .tribe-events-view--list .enaf13-card:hover {
        transform: translateY(-2px);
        border-color:#d2dae4 !important;
        border-top-color:#a62828 !important;
        box-shadow:0 9px 26px rgba(22,58,95,.11);
    }
}
@media(max-width:850px) {
    .tribe-events-view--list .tribe-events-calendar-list {
        grid-template-columns:minmax(0, 1fr) !important;
        gap:12px !important;
    }
}
@media(max-width:480px) {
    #tribe-events-pg-template:has(.tribe-events-view--list) { width:calc(100% - 12px) !important; }
    .tribe-events-view--list .tribe-events-l-container { padding-inline:6px !important; }
    .tribe-events-view--list .enaf13-card { padding:13px !important; }
    .tribe-events-view--list .enaf13-card__top { grid-template-columns:59px minmax(0,1fr) !important; column-gap:11px; }
    .tribe-events-view--list .enaf13-card__date { width:59px;min-width:59px;height:63px; }
    .tribe-events-view--list .enaf13-card__date strong { font-size:25px; }
    .tribe-events-view--list .enaf13-card__title { font-size:17px !important; }
    .tribe-events-view--list .enaf13-filter { font-size:11px;min-height:38px;padding:8px 11px; }
}
@media(prefers-reduced-motion:reduce) {
    .tribe-events-view--list .enaf13-card { transition:none !important; }
    .tribe-events-view--list .enaf13-card:hover { transform:none !important; }
}

/* v1.3: make category/date information more obvious. */
.tribe-events-view--list .enaf13-card__date.is-ending { position: relative; }
.tribe-events-view--list .enaf13-card__date-prefix {
    color: #e9f2fb; font: 800 9px/1.2 Arial,sans-serif;
    letter-spacing: .5px; margin: 0 0 2px;
}
.tribe-events-view--list .enaf13-card__date.is-ending strong { font-size: 27px; }
.tribe-events-view--list .enaf13-card__status {
    padding: 3px 6px; border-radius: 4px;
    background: #edf5f2; color: #216448;
    font: 800 10px/1.3 Arial,sans-serif; letter-spacing: .35px;
    white-space: nowrap;
}
.tribe-events-view--list .tribe-events-c-top-bar { margin-bottom: 12px !important; }
.tribe-events-view--list .tribe-events-calendar-list__month-separator { padding-block: 0 !important; }
.tribe-events-view--list .enaf13-filters { margin-bottom: 12px; }
@media (max-width: 650px) {
    .tribe-events-view--list .enaf13-filters {
        flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch;
        scrollbar-width: thin; max-width: 100%; padding-bottom: 6px;
    }
    .tribe-events-view--list .enaf13-filter { flex: 0 0 auto; white-space: nowrap; }
    .tribe-events-view--list .enaf13-card__excerpt {
        font-size: 13.5px; line-height: 1.58; -webkit-line-clamp: 4;
        max-height: none;
    }
    .tribe-events-view--list .enaf13-card__venue { font-size: 13px; }
    .tribe-events-view--list .enaf13-card__category { font-size: 10px !important; }
    .tribe-events-view--list .enaf13-card__title { line-height: 1.38 !important; }
}
@media (max-width: 380px) {
    .tribe-events-view--list .enaf13-card__top {
        grid-template-columns: 55px minmax(0,1fr) !important; column-gap:10px;
    }
    .tribe-events-view--list .enaf13-card__date { width:55px;min-width:55px;height:66px; }
    .tribe-events-view--list .enaf13-card__date strong { font-size:25px; }
    .tribe-events-view--list .enaf13-card__title { font-size:16px !important; }
}
