body {
    font-family: Arial, sans-serif;
    margin: 20px 10%;
    padding: 0;
    background-color: #121212;
    /* Dark background */
    color: #e0e0e0;
    /* Light text */
}

.search-container {
    margin-top: 20px;
    text-align: center; /* Center all child elements */
}

.search-container select {
    margin: 15px;
    padding: 5px;
    background-color: #333;
    color: #ddd;
    border: 1px solid #444;
    display: inline-block;
    vertical-align: middle;
}

#searchInput {
    width: 300px; /* Fixed width and default look */
    display: inline-block;
    margin: 0 15px;
}

button {
    background-color: #333;
    color: #fff;
    border: none;
    padding: 10px 20px;
    margin: 10px;
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
}

button:hover {
    background-color: #555;
}

#resultsContainer {
    margin-top: 20px;
    text-align: center;
}

table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #333;
}

th,
td {
    border: 1px solid #444;
    padding: 8px;
    text-align: left;
    background-color: #222;
    /* Dark background for headers */
    color: #fff;
}

.sortable {
    cursor: pointer;
    background-color: #222;
    /* Dark background for sortable headers */
    color: #fff;
    text-align: center;
}

.sortable:hover {
    background-color: #333;
    /* Slightly lighter on hover for sortable headers */
}

td {
    background-color: #333;
    /* Slightly lighter background for cells */
    color: #ddd;
}

input[type="radio"] {
    margin: 0 5px;
}

label {
    color: #ccc;
}

.pagination-container {
    text-align: center;
    margin-top: 20px;
}

.pagination-container button {
    margin: 0 5px;
    padding: 5px 10px;
}

.pagination-container input,
.pagination-container button {
    margin-left: 5px;
    padding: 5px;
}

input[type="radio"]+label {
    padding: 5px 10px;
    background-color: #333;
    border-radius: 20px;
    cursor: pointer;
}

input[type="radio"]:checked+label {
    background-color: #666;
    color: #fff;
}

.search-container small {
    margin-left: 10px;
    display: inline-block;
    vertical-align: middle;
}


/* Responsive adjustments */

@media (max-width: 768px) {
    .search-container input[type="text"],
    .search-container input[type="number"],
    .search-container select,
    .search-container button {
        width: 100%;
        /* Full width on smaller screens */
        max-width: none;
        /* Override max-width */
        margin: 5px 0;
        /* Stack them with vertical spacing */
    }
    #searchInput {
        width: 100%;
        /* Adjust to full width on smaller screens */
    }
}