body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 20px;
    background-color: #f4f4f4;
}
h1 {
    text-align: center;
    color: #333;
}
.search-container {
    display: none; /* Hidden on desktop, used only for mobile */
    text-align: center;
    margin-bottom: 20px;
}
.filter-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.error-message {
    text-align: center;
    color: red;
    margin: 10px 0;
}
.results-count {
    text-align: center;
    margin: 5px 0;
    color: #666;
    font-size: 14px;
}
.pagination {
    text-align: center;
    margin: 20px 0;
}
.pagination button {
    padding: 8px 12px;
    margin: 0 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    cursor: pointer;
}
.pagination button:disabled {
    background-color: #f0f0f0;
    cursor: not-allowed;
}
input[type="date"], select, input[type="text"] {
    padding: 8px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    box-sizing: border-box;
}
a {
    color: #0066cc;
    text-decoration: none;
    padding: 4px 6px;
    display: inline-block;
}
a:hover {
    text-decoration: underline;
}
a:active {
    background-color: #e6f0ff;
}
table {
    width: 100%;
    max-width: 2200px;
    margin: 20px auto;
    border-collapse: collapse;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
th, td {
    padding: 12px;
    text-align: left;
    border: none;
}
th {
    background-color: #f2f2f2;
    color: #333;
    font-weight: bold;
    position: sticky;
    top: 0;
    z-index: 1;
}
tr:nth-child(even) {
    background-color: #609f9f; /* Light gray for even rows */
}
tr:nth-child(odd) {
    background-color: #ffffff; /* White for odd rows */
}
tr:hover {
    background-color: #f1f1f1; /* Light hover effect, applied to both */
}
.verses-list {
    display: inline;
}
.verses-list a, .verses-list span {
    margin-right: 5px;
}
@media (max-width: 600px) {
    body {
        padding: 0; /* Remove padding to test full viewport */
        margin: 0; /* Ensure no margin constraints */
    }
    table {
        width: 100vw; /* Use viewport width */
        max-width: none; /* Override max-width */
        margin: 0; /* Remove margin to fill screen */
        box-sizing: border-box; /* Include padding in width */
    }
    th, td {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 10px;
    }
    tr {
        margin-bottom: 15px;
        border-bottom: 1px solid #ddd;
        padding: 10px 0;
        width: 100%;
        box-sizing: border-box;
    }
    table thead {
        display: none; /* Hide table headers on mobile */
    }
    .search-container {
        display: block; /* Show filters on mobile */
        padding: 0 10px; /* Add minimal padding for readability */
    }
    .filter-container input[type="date"],
    .filter-container select,
    .filter-container input[type="text"] {
        width: 100%;
    }
    .verses-list {
        display: block;
    }
    .verses-list a, .verses-list span {
        display: block;
        margin-bottom: 8px;
        padding-left: 15px; /* Keep bullet alignment */
        position: relative;
    }
    .verses-list a::before, .verses-list span::before {
        content: '•';
        position: absolute;
        left: 0;
        color: #333;
    }
    td {
        padding-left: 0;
        padding-right: 0;
        width: 100%;
        text-align: left;
        box-sizing: border-box;
    }
    td:before {
        content: attr(data-label);
        font-weight: bold;
        display: block;
        color: #555;
        margin-bottom: 5px;
    }
    td:nth-child(1):before { content: "Date"; }
    td:nth-child(2):before { content: "Title"; }
    td:nth-child(3):before { content: "Pastor"; }
    td:nth-child(4):before { content: "Event"; }
    td:nth-child(5):before { content: "Verses"; }
    td:nth-child(6):before { content: "Summary"; }
    td:nth-child(7):before { content: "Share"; } /* Added for Share column */
}
@media (min-width: 601px) {
    th:nth-child(1) { width: 15%; } /* Date */
    th:nth-child(2) { width: 20%; } /* Title */
    th:nth-child(3) { width: 15%; } /* Pastor */
    th:nth-child(4) { width: 15%; } /* Event */
    th:nth-child(5) { width: 15%; } /* Verses */
    th:nth-child(6) { width: 20%; } /* Summary */
    input[type="date"], select, input[type="text"] {
        width: 100%;
        min-width: 120px;
    }
}