/* ---------------------------------
   WRAPPER
----------------------------------*/
.wcat-wrapper {
    max-width: 1100px;
    margin: 20px auto;
    font-family: Arial, sans-serif;
}

/* ---------------------------------
   CONTROLS
----------------------------------*/
.wcat-controls {
    margin-bottom: 20px;
    display: flex;
    gap: 15px;
    align-items: center;
    flex-wrap: nowrap;
}

#wcat-category,
#wcat-search {
    flex: 1;
    min-width: 250px;
    max-width: 420px;
    padding: 7px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

/* ---------------------------------
   CATEGORY HEADER
----------------------------------*/
.wcat-category-block {
    margin-bottom: 40px;
}

.wcat-category-title {
    font-size: 22px;
    font-weight: bold;
    color: #003f8c;
    border-bottom: 2px solid #f7901e;
    padding-bottom: 8px;
    margin-bottom: 15px;
}

/* ---------------------------------
   TABLE
----------------------------------*/
.wcat-table-wrapper {
    width: 100%;
    overflow-x: auto; /* responsive scroll */
}

.wcat-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed; /* ensures consistent cell width */
    border: 1px solid #ddd;
}

/* HEADERS */
.wcat-table th {
    background: #003f8c;
    color: #fff;
    padding: 6px !important;   /* minimal padding */
    font-size: 13px;
    text-align: left;
    white-space: nowrap;
}

/* CELLS */
.wcat-table td {
    padding: 5px 6px !important; /* minimal padding */
    font-size: 13px;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
}

/* REMOVE EXTRA SPACING FROM ALL CELL CONTENT */
.wcat-table td * {
    margin: 0 !important;
    padding: 0 !important;
}

/* EVEN ROWS */
.wcat-table tr:nth-child(even) td {
    background: #f9f9f9;
}

/* ---------------------------------
   CATEGORY IMAGE COLUMN
----------------------------------*/
.wcat-cat-image-cell {
    width: 220px;    /* reduced width */
    padding: 0 !important;
    margin: 0 !important;
    background: #fafafa;
    vertical-align: top;
}

.wcat-cat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* LABEL UNDER IMAGE */
.wcat-cat-img-label {
    text-align: center;
    font-weight: bold;
    font-size: 13px;
    padding: 6px 0 !important;
    text-transform: uppercase;
}

/* ---------------------------------
   RESPONSIVE FIXES
----------------------------------*/
@media (max-width: 768px) {
    .wcat-controls {
        flex-wrap: wrap;
    }

    #wcat-category,
    #wcat-search {
        width: 100%;
        max-width: 100%;
    }

    .wcat-table th,
    .wcat-table td {
        font-size: 12px !important;
    }
}
.wcat-table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.wcat-table {
    min-width: 900px; /* forces scrollability */
}

