.search-elements {
    width: 100%;    
    max-width: 1000px;
    margin: auto;
    float: left;
    overflow-x: hidden;
}

@keyframes smooth-appear {
    from {
        width: 0;
        opacity: 0;
    }
    to {
        width: 50%;
        opacity: 1;
    }
}

/* Hover effects */
#words-reorder-table tbody tr:hover {
    background-color: #f1f1f1;
    transition: background-color 0.3s ease;
}

#search-box {
    display:none;
    border: 0;
    border-radius: 1rem;
    padding: 0.5rem 1rem;
    transition: all 1s ease-in-out;
    animation: smooth-appear 0.5s ease forwards;
}

.table-container {
    position: relative;
    max-height: 300px; /* Set a max height for the scrollable area */
    overflow-y: auto;
    /* margin: 1rem; */
}

.custom-table {
    width: 100%;
    /* max-width: 1000px; */
    margin: auto;
    border-collapse: collapse;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    background-color: white;
    border-radius: 8px;
    /* overflow: hidden; */
    /* table-layout: fixed; */
}

.custom-table thead {
    top: 0;
    background-color: #87a700;
    color: white;
    /* text-align: left; */
}

.custom-table .sticky-header, .custom-table .sticky-footer {
    position: sticky;
    z-index: 2; /* Ensure sticky rows appear on top */
}

.custom-table th,
.custom-table td {
    padding: 12px 15px;
    white-space: nowrap;
}

.custom-table th {
    font-size: 16px;
    font-weight: 600;
}

.custom-table td {
    font-size: 15px;
    color: #333;
    border-bottom: 1px solid #ddd;
}

.custom-table td.text-wrap {
    white-space: normal;
}

/* Styling the action buttons */
.custom-table .btn {
    padding: 6px 12px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin-right: 5px;
    font-size: 14px;
}

.custom-table .btn.view {
    background-color: #3498db;
    color: white;
}

.custom-table .btn.edit {
    background-color: #f1c40f;
    color: white;
}

.custom-table .btn.delete {
    background-color: #e74c3c;
    color: white;
}

.custom-table .btn:hover {
    opacity: 0.85;
}

/* Styling the badges */
.custom-table .badge {
    padding: 5px 10px;
    border-radius: 12px;
    font-size: 14px;
    color: white;
    display: inline-block;
}

.custom-table .badge.public {
    background-color: #4CAF50;
}

.custom-table .badge.private {
    background-color: #f39c12;
}

#words-reorder-table table {
    -webkit-user-select: none;
    /* Safari */
    -ms-user-select: none;
    /* IE 10+ and Edge */
    user-select: none;
    /* Standard syntax */
    margin: 0 auto;
}

.custom-table .sticky-header {
    top: 0; /* Stick footer to the bottom */
}

.custom-table .sticky-footer {
    background: #f9f9f9;
    bottom: 0; /* Stick footer to the bottom */
}

.scrollable-body tr:nth-child(even) {
    background-color: #f9f9f9; /* Optional: Row striping for readability */
}

.scrollable-body tr td {
    padding: 8px;
}

.scrollable-body {
    max-height: 240px; /* Adjust for the space left by header and footer */
    overflow-y: auto; /* Enable vertical scrolling */
}

::-webkit-scrollbar {
    width: 10px; /* Width of the scrollbar */
    height: 10px; /* Height for horizontal scrollbars, if any */
}

::-webkit-scrollbar-thumb {
    cursor: pointer;
    background-color: #87a700; /* Thumb color */
    border-radius: 10px; /* Rounded corners */
    border: 2px solid #f8f9fa; /* Optional: Border around the thumb to match background */
}

::-webkit-scrollbar-track {
    background-color: #f1f1f1; /* Track background color */
    border-radius: 10px; /* Rounded corners for the track */
}

::-webkit-scrollbar-thumb:hover {
    background-color: #5e8c00; /* Darker thumb color on hover */
}

::-webkit-scrollbar-thumb {
    transition: background-color 0.3s ease;
}

/* Buttons stack nicely on mobile */
@media (max-width: 576px) {
    .custom-table .btn-group {
        flex-direction: column;
        align-items: stretch;
    }

    .custom-table td,
    .custom-table th {
        font-size: 13px;
        padding: 8px;
    }
}