.llbc-schedule table {
    width: 100%;
    border-collapse: collapse;
}

.llbc-schedule th, .llbc-schedule td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
}

.llbc-schedule th {
    background-color: #00796b;
    color: #fff;
}

.llbc-schedule tr:nth-child(even) {
    opacity: 0.95; /* let row colors show subtly */
}

.llbc-schedule tr:hover {
    background-color: #b2dfdb !important; /* hover override */
}

/* Mobile responsive */
@media screen and (max-width: 768px) {
    .llbc-schedule table, .llbc-schedule thead, .llbc-schedule tbody, .llbc-schedule th, .llbc-schedule td, .llbc-schedule tr {
        display: block;
        width: 100%;
    }

    .llbc-schedule tr {
        margin-bottom: 10px;
        border: 1px solid #ddd;
        border-left: 5px solid;
        border-radius: 4px;
        padding: 8px;
        background-color: #fff; /* fallback, overridden inline by shortcode */
    }

    .llbc-schedule td {
        border: none;
        display: flex;
        justify-content: space-between;
        padding: 4px 0;
    }

    .llbc-schedule td span {
        display: inline-block;
        width: 48%;
    }

    .llbc-schedule td::before {
        display: none;
    }
}

