.rom-frontend-container {
    margin: 20px 0;
}

/* Frontend Search Styling */
.rom-frontend-search {
    margin-bottom: 20px;
}

.rom-search-form {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.rom-search-input {
    flex: 1;
    min-width: 250px;
    padding: 10px 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
}
.rom-search-form input {
    flex: 1;
    padding: 0 22px !important;
    min-height: 44px !important;
    border: 1px solid #7D7D7D;
    outline: none;
    color: #7D7D7D;
    border-radius: 8px !important;
    max-width: 300px;
    width: 100%;
}
.rom-search-btn {
    border-width: 2px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: #3366FE !important;
    border-color: #3366FE !important;
    color: #ffffff;
    transition: all 0.3s ease;
    font-weight: 700;
    min-height: 44px !important;
    min-width: 145px !important;
    border-radius: 12px !important;
}
.rom-search-btn:hover, .rom-search-btn:focus {
    background-color: #ffffff !important;
    color: #3366FE !important;
    border-color: #3366FE;
    border-width: 2px;
    box-shadow: none;
}

.rom-search-btn:hover {
    background: #005177;
}

.rom-clear-search:hover {
    background: #f5f5f5;
    text-decoration: none;
}

.rom-clear-search {
    border-width: 2px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: transparent !important;
    border: 1px solid #333333 !important;
    color: #333333;
    transition: all 0.3s ease;
    font-weight: 700;
    min-height: 44px !important;
    min-width: 145px !important;
    border-radius: 12px !important;
    text-decoration: none;
}
.rom-clear-search:hover, .rom-clear-search:focus {
    background-color: transparent !important;
    border-color: #333333 !important;
    color: #333333;
}

/* Record Counts Styling */
.rom-record-counts {
    margin-bottom: 20px;
}

.rom-count-item {
    color: #333;
    font-size: 14px;
    margin-right: 10px;
}

.rom-count-item strong {
    color: #3366FE !important;
    margin-right: 5px;
}

.rom-frontend-table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    background: #fff;
}

.rom-frontend-table th,
.rom-frontend-table td {
    border: 1px solid #ddd;
    padding: 12px;
    text-align: left;
}

.rom-frontend-table th {
    background-color: #f4f4f4;
    font-weight: bold;
    color: #333;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 0.5px;
}

.rom-frontend-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

.rom-frontend-table tr:hover {
    /* background-color: #f1f1f1; */
}

.rom-frontend-pagination {
    text-align: center;
    margin: 20px 0;
}
body table.rom-frontend-table tr td {
    cursor: default !important;
}
table tbody tr:nth-child(odd) {
    background-color: #ffffff;
}
.ulb-table tbody tr:nth-child(even) {
    background-color: #f8f9fa;
}

body .rom-frontend-pagination .current, body .rom-frontend-pagination .active {
    background: #3366FE !important;
    color: #ffffff !important;
    border-color: #3366FE !important;
    cursor: default;
    box-shadow: none !important;
}
body .rom-frontend-pagination .rom-page-link, body .rom-frontend-pagination span {
    display: inline-block;
    padding: 2.5px 0 !important;
    margin: 0 3px;
    text-decoration: none;
    border: 2px solid #E6E6E6;
    border-color: #E6E6E6 !important;
    background-color: #E6E6E6 !important;
    border-radius: 6px !important;
    color: #333333 !important;
    font-weight: 500;
    transition: all 0.3s ease;
    min-width: 33px !important;
    text-align: center;
    box-shadow: none !important;
}

.rom-page-link, body .rom-frontend-pagination .rom-page-link{
    display: inline-block;
    padding: 8px 12px;
    margin: 0 2px;
    text-decoration: none;
    border: 1px solid #ddd;
    color: #333;
    background: #fff;
    border-radius: 3px;
    transition: all 0.3s ease;
}
body .rom-frontend-pagination .rom-page-next, body .rom-frontend-pagination .rom-page-prev {
    font-weight: 600;
    padding: 2.5px 10px !important;
    background: #3366FE !important;
    color: white !important;
    border-color: #3366FE !important;
    box-shadow: none !important;
}

.rom-page-link:hover, body .rom-frontend-pagination .rom-page-link:hover {
    /* background: #f4f4f4;
    border-color: #ccc;
    color: #333; */
    background: #3366FE !important;
    color: #ffffff !important;
    border-color: #3366FE !important;
    text-decoration: none;
}

body .rom-frontend-pagination .rom-page-link.active {
    background: #3366FE !important;
    color: #fff !important;
    border-color: #3366FE !important;
}

.rom-page-link.active:hover {
    background: #3366FE;
    border-color: #3366FE;
}

/* Table styling enhancements */
.rom-frontend-table th:first-child,
.rom-frontend-table td:first-child {
    text-align: center;
    width: 80px;
}

.rom-frontend-table th:nth-child(2),
.rom-frontend-table td:nth-child(2) {
    width: 25%;
}

.rom-frontend-table th:nth-child(3),
.rom-frontend-table td:nth-child(3) {
    width: 20%;
}

.rom-frontend-table th:nth-child(4),
.rom-frontend-table td:nth-child(4) {
    width: 25%;
}

.rom-frontend-table th:nth-child(5),
.rom-frontend-table td:nth-child(5) {
    width: 20%;
}

/* Empty cell styling */
.rom-frontend-table td:empty:after {
    content: "-";
    color: #999;
}

/* Email links */
.rom-frontend-table a[href^="mailto:"] {
    color: #3366FE;
    text-decoration: none;
}

.rom-frontend-table a[href^="mailto:"]:hover {
    text-decoration: underline;
}

/* Responsive design */
@media (max-width: 768px) {
    .rom-search-form {
        flex-direction: column;
        align-items: stretch;
    }
    
    .rom-search-input {
        min-width: auto;
        margin-bottom: 10px;
    }
    
    .rom-search-btn,
    .rom-clear-search {
        width: 100%;
        text-align: center;
    }
    
    .rom-record-counts {
        flex-direction: column;
        gap: 10px;
    }
    
    .rom-frontend-table {
        font-size: 12px;
    }
    
    .rom-frontend-table th,
    .rom-frontend-table td {
        padding: 8px 4px;
    }
    
    .rom-frontend-table th {
        font-size: 11px;
    }
    
    .rom-page-link {
        padding: 6px 8px;
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .rom-frontend-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .rom-frontend-table th,
    .rom-frontend-table td {
        min-width: 120px;
    }
    
    .rom-frontend-pagination {
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* Print styles */
@media print {
    .rom-frontend-search,
    .rom-frontend-pagination {
        display: none !important;
    }
    
    .rom-frontend-table {
        border: 2px solid #000;
    }
    
    .rom-frontend-table th {
        background-color: #000 !important;
        color: #fff !important;
    }
    
    .rom-frontend-table tr:nth-child(even) {
        background-color: #f0f0f0 !important;
    }
    
    .rom-record-counts {
        border: 1px solid #000;
        background: #f9f9f9 !important;
    }
}