/* Grocery CRUD Bootstrap Override */

/* Container Styling */
.grocery-crud-container {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%) !important;
    border-radius: 20px !important;
    padding: 2rem !important;
    margin: 1rem 0 !important;
    box-shadow: 0 20px 50px -12px rgba(0, 0, 0, 0.15) !important;
    position: relative !important;
}

.grocery-crud-container:before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(135deg, #2563eb 0%, #3730a3 100%) !important;
    border-radius: 20px 20px 0 0 !important;
}

.grocery-crud {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    padding: 1.5rem;
    margin: 1rem 0;
}

/* Hide default flexigrid styling */
.flexigrid {
    border: none !important;
    background: transparent !important;
}

.flexigrid div.hDiv {
    background: none !important;
    border: none !important;
}

.flexigrid div.bDiv {
    background: none !important;
    border: none !important;
}

/* Table Styling */
.flexigrid table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100% !important;
    background: white !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
}

/* Header Styling */
.flexigrid table thead th,
.flexigrid div.hDiv table thead th {
    background: linear-gradient(135deg, #2563eb 0%, #3730a3 100%) !important;
    color: white !important;
    font-weight: 600 !important;
    border: none !important;
    padding: 1rem !important;
    text-transform: uppercase !important;
    font-size: 0.875rem !important;
    letter-spacing: 0.5px !important;
    text-align: left !important;
}

.flexigrid div.hDiv table thead th div {
    color: white !important;
    font-weight: 600 !important;
}

/* Row Styling */
.flexigrid table tbody tr {
    transition: all 0.2s ease !important;
    border-bottom: 1px solid #e2e8f0 !important;
    background: white !important;
}

.flexigrid table tbody tr:hover {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%) !important;
    transform: scale(1.001) !important;
}

.flexigrid table tbody tr.erow {
    background: #f9fafb !important;
}

.flexigrid table tbody tr.erow:hover {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%) !important;
}

/* Cell Styling */
.flexigrid table tbody td {
    padding: 1rem !important;
    vertical-align: middle !important;
    border: none !important;
    color: #374151 !important;
    font-size: 0.875rem !important;
}

/* Action Buttons */
.flexigrid table tbody td a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 0.5rem 1rem !important;
    border-radius: 8px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    margin: 0 0.25rem !important;
    transition: all 0.2s ease !important;
    border: none !important;
    font-size: 0.875rem !important;
    gap: 0.5rem !important;
}

/* Edit Button */
.flexigrid table tbody td a[title*="Edit"],
.flexigrid table tbody td a[href*="edit"] {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: white !important;
}

.flexigrid table tbody td a[title*="Edit"]:hover,
.flexigrid table tbody td a[href*="edit"]:hover {
    color: white !important;
    box-shadow: 0 8px 25px -3px rgba(16, 185, 129, 0.3) !important;
    transform: translateY(-1px) !important;
}

/* Delete Button */
.flexigrid table tbody td a[title*="Delete"],
.flexigrid table tbody td a[href*="delete"] {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: white !important;
}

.flexigrid table tbody td a[title*="Delete"]:hover,
.flexigrid table tbody td a[href*="delete"]:hover {
    color: white !important;
    box-shadow: 0 8px 25px -3px rgba(239, 68, 68, 0.3) !important;
    transform: translateY(-1px) !important;
}

/* View Button */
.flexigrid table tbody td a[title*="View"],
.flexigrid table tbody td a[href*="read"] {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: white !important;
}

.flexigrid table tbody td a[title*="View"]:hover,
.flexigrid table tbody td a[href*="read"]:hover {
    color: white !important;
    box-shadow: 0 8px 25px -3px rgba(59, 130, 246, 0.3) !important;
    transform: translateY(-1px) !important;
}

/* Add Button */
.gc-container .addBtn a,
.gc-container .addBtn input {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%) !important;
    color: white !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
    border: none !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    transition: all 0.3s ease !important;
}

.gc-container .addBtn a:hover,
.gc-container .addBtn input:hover {
    color: white !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px -3px rgba(139, 92, 246, 0.3) !important;
}

/* Top Controls and Buttons */
.flexigrid div.tDiv {
    background: white !important;
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
    padding: 1rem 1.5rem !important;
    margin-bottom: 1rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
}

.flexigrid div.tDiv div {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

/* Top buttons styling */
.flexigrid div.tDiv .fbutton {
    background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%) !important;
    color: white !important;
    border: none !important;
    padding: 0.75rem 1rem !important;
    border-radius: 8px !important;
    font-weight: 500 !important;
    font-size: 0.875rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    text-decoration: none !important;
}

.flexigrid div.tDiv .fbutton:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 25px -3px rgba(107, 114, 128, 0.3) !important;
    color: white !important;
}

/* Specific button types */
.flexigrid div.tDiv .fbutton.add {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
}

.flexigrid div.tDiv .fbutton.add:hover {
    box-shadow: 0 8px 25px -3px rgba(16, 185, 129, 0.3) !important;
}

.flexigrid div.tDiv .fbutton.delete {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
}

.flexigrid div.tDiv .fbutton.delete:hover {
    box-shadow: 0 8px 25px -3px rgba(239, 68, 68, 0.3) !important;
}

.flexigrid div.tDiv .fbutton.refresh {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
}

.flexigrid div.tDiv .fbutton.refresh:hover {
    box-shadow: 0 8px 25px -3px rgba(59, 130, 246, 0.3) !important;
}

/* Header title styling */
.flexigrid div.hDiv .htitle {
    color: #374151 !important;
    font-weight: 600 !important;
    font-size: 1.125rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

/* Search Section */
.gc-container .search-container,
.flexigrid div.sDiv {
    background: white !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
    padding: 1.5rem !important;
    margin-bottom: 1rem !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
    flex-wrap: wrap !important;
}

.flexigrid div.sDiv div {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

.flexigrid div.sDiv input {
    border: 2px solid #e5e7eb !important;
    border-radius: 8px !important;
    padding: 0.75rem 1rem !important;
    transition: all 0.3s ease !important;
    background: #f9fafb !important;
    font-size: 0.875rem !important;
    min-width: 200px !important;
}

.flexigrid div.sDiv input:focus {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
    background: white !important;
    outline: none !important;
}

.flexigrid div.sDiv .sDiv2 {
    color: #6b7280 !important;
    font-weight: 500 !important;
    font-size: 0.875rem !important;
}

/* Records per page dropdown */
.flexigrid div.sDiv select {
    border: 2px solid #e5e7eb !important;
    border-radius: 8px !important;
    padding: 0.75rem 1rem !important;
    background: #f9fafb !important;
    color: #374151 !important;
    font-size: 0.875rem !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.flexigrid div.sDiv select:focus {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
    background: white !important;
    outline: none !important;
}

/* Pagination - Complete Restructure */
.pDiv {
    background: white !important;
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
    padding: 1.5rem !important;
    margin-top: 1rem !important;
    overflow: hidden !important;
}

/* Reset all default pagination table styling */
.pDiv table {
    width: 100% !important;
    margin: 0 !important;
    border: none !important;
    border-collapse: collapse !important;
    background: transparent !important;
}

.pDiv tbody,
.pDiv tr,
.pDiv td {
    background: transparent !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Main pagination container */
.pDiv tbody tr td {
    vertical-align: middle !important;
    padding: 0.5rem !important;
}

/* Left side - Records info */
.pDiv tbody tr td:first-child {
    text-align: left !important;
    width: 30% !important;
}

.pDiv .pPageStat {
    color: #6b7280 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    margin: 0 !important;
}

/* Center - Page numbers */
.pDiv tbody tr td:nth-child(2) {
    text-align: center !important;
    width: 40% !important;
}

.pDiv .pGroup {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.25rem !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
}

.pDiv .pGroup span,
.pDiv .pGroup a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0.5rem 0.75rem !important;
    min-width: 2.25rem !important;
    height: 2.25rem !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    color: #6b7280 !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
    border: 1px solid #e5e7eb !important;
    background: white !important;
    font-size: 0.875rem !important;
    margin: 0 !important;
}

.pDiv .pGroup a:hover {
    background: #f3f4f6 !important;
    color: #2563eb !important;
    transform: translateY(-1px) !important;
    border-color: #2563eb !important;
}

.pDiv .pGroup span.pcontrol {
    background: linear-gradient(135deg, #2563eb 0%, #3730a3 100%) !important;
    color: white !important;
    border-color: #2563eb !important;
    box-shadow: 0 4px 6px -1px rgba(37, 99, 235, 0.3) !important;
}

/* Right side - Reload button */
.pDiv tbody tr td:last-child {
    text-align: right !important;
    width: 30% !important;
}

.pDiv .pReload {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    background: white !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    padding: 0.5rem 1rem !important;
    transition: all 0.2s ease !important;
}

.pDiv .pReload:hover {
    background: #f3f4f6 !important;
    border-color: #2563eb !important;
}

.pDiv .pReload a {
    color: #6b7280 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 0.875rem !important;
    transition: all 0.2s ease !important;
}

.pDiv .pReload:hover a {
    color: #2563eb !important;
}

/* Navigation buttons (First, Prev, Next, Last) */
.pDiv .pFirst,
.pDiv .pPrev,
.pDiv .pNext,
.pDiv .pLast {
    padding: 0.5rem 0.75rem !important;
    background: white !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 6px !important;
    color: #6b7280 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.25rem !important;
    font-size: 0.875rem !important;
    height: 2.25rem !important;
}

.pDiv .pFirst:hover,
.pDiv .pPrev:hover,
.pDiv .pNext:hover,
.pDiv .pLast:hover {
    background: #f3f4f6 !important;
    color: #2563eb !important;
    border-color: #2563eb !important;
    transform: translateY(-1px) !important;
}

/* Fix any floating issues */
.pDiv::after {
    content: "" !important;
    display: table !important;
    clear: both !important;
}

/* Form Container Enhancement */
.gc-container {
    background: white !important;
    border-radius: 15px !important;
    box-shadow: 0 10px 25px -3px rgba(0, 0, 0, 0.1) !important;
    padding: 2rem !important;
    margin: 1rem 0 !important;
}

/* Form Header */
.gc-container h3,
.gc-container h2 {
    color: #1e293b !important;
    font-weight: 700 !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 2px solid #e2e8f0 !important;
    display: flex !important;
    align-items: center !important;
}

.gc-container h3:before,
.gc-container h2:before {
    content: "👤" !important;
    margin-right: 0.75rem !important;
    font-size: 1.5rem !important;
}

/* Form Layout */
.gc-container form {
    background: #f8fafc !important;
    padding: 2rem !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    margin-top: 1rem !important;
}

.gc-container form table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 1rem !important;
}

.gc-container form table td {
    padding: 0.5rem 1rem !important;
    vertical-align: top !important;
}

.gc-container form table td:first-child {
    width: 200px !important;
    font-weight: 600 !important;
    color: #374151 !important;
    padding-right: 1.5rem !important;
}

/* Form Elements */
.gc-container form input[type="text"],
.gc-container form input[type="email"],
.gc-container form input[type="number"],
.gc-container form input[type="password"],
.gc-container form select,
.gc-container form textarea {
    border: 2px solid #e5e7eb !important;
    border-radius: 8px !important;
    padding: 0.75rem 1rem !important;
    transition: all 0.3s ease !important;
    background: #f9fafb !important;
    width: 100% !important;
    font-size: 0.875rem !important;
}

.gc-container form input:focus,
.gc-container form select:focus,
.gc-container form textarea:focus {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
    background: white !important;
    outline: none !important;
}

/* Form Buttons - Grocery CRUD specific */
.gc-container input[type="submit"],
.gc-container button[type="submit"] {
    background: linear-gradient(135deg, #2563eb 0%, #3730a3 100%) !important;
    color: white !important;
    border: none !important;
    padding: 0.875rem 2rem !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    margin: 1rem 0.5rem 0.5rem 0 !important;
    font-size: 0.95rem !important;
    box-shadow: 0 4px 6px rgba(37, 99, 235, 0.2) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.gc-container input[type="submit"]:hover,
.gc-container button[type="submit"]:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px -5px rgba(37, 99, 235, 0.4) !important;
}

/* Cancel/Back buttons */
.gc-container a[href*="back"],
.gc-container a.button {
    background: #6b7280 !important;
    color: white !important;
    padding: 0.875rem 2rem !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
    margin: 1rem 0.5rem 0.5rem 0 !important;
    display: inline-block !important;
    font-size: 0.95rem !important;
    box-shadow: 0 4px 6px rgba(107, 114, 128, 0.2) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.gc-container a[href*="back"]:hover,
.gc-container a.button:hover {
    background: #4b5563 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px -5px rgba(107, 114, 128, 0.4) !important;
}

/* Form Validation Messages */
.gc-container .error_message {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%) !important;
    color: #dc2626 !important;
    border: 1px solid #fca5a5 !important;
    border-radius: 10px !important;
    padding: 1rem !important;
    margin: 1rem 0 !important;
    font-weight: 500 !important;
}

.gc-container .success_message {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%) !important;
    color: #16a34a !important;
    border: 1px solid #86efac !important;
    border-radius: 10px !important;
    padding: 1rem !important;
    margin: 1rem 0 !important;
    font-weight: 500 !important;
}

/* Required Field Indicators */
.gc-container form td:first-child:after {
    content: " *" !important;
    color: #dc2626 !important;
    font-weight: bold !important;
}

/* Textarea Specific Styling */
.gc-container form textarea {
    min-height: 120px !important;
    resize: vertical !important;
}

/* Select Dropdown Enhancement */
.gc-container form select {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 1rem center !important;
    background-size: 1rem !important;
    padding-right: 3rem !important;
    appearance: none !important;
}

/* Enhanced Form Interaction States */
.gc-container input:hover,
.gc-container select:hover,
.gc-container textarea:hover {
    border-color: #3b82f6 !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important;
}


/* Form Field Animation */
.gc-container form table tr {
    animation: slideInUp 0.5s ease-out !important;
}

@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Custom Form Layout for Different Screen Sizes */
@media (max-width: 768px) {
    .gc-container form table td:first-child {
        display: block !important;
        width: 100% !important;
        padding-bottom: 0.5rem !important;
    }

    .gc-container form table td {
        display: block !important;
        width: 100% !important;
        padding: 0.25rem 0 !important;
    }

    .gc-container {
        padding: 1rem !important;
    }

    .gc-container form {
        padding: 1.5rem !important;
    }
}

/* Loading State for Forms */
.gc-container.loading {
    position: relative !important;
}

.gc-container.loading:after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(255, 255, 255, 0.8) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 15px !important;
}


/* Success/Error Messages */
.success-message {
    background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%) !important;
    color: #047857 !important;
    padding: 1rem !important;
    border-radius: 8px !important;
    margin-bottom: 1rem !important;
    border-left: 4px solid #10b981 !important;
    font-weight: 500 !important;
}

.error-message {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%) !important;
    color: #dc2626 !important;
    padding: 1rem !important;
    border-radius: 8px !important;
    margin-bottom: 1rem !important;
    border-left: 4px solid #dc2626 !important;
    font-weight: 500 !important;
}

/* Loading States */
.loading-data {
    text-align: center !important;
    padding: 2rem !important;
    color: #6b7280 !important;
}

/* Additional fixes for flexigrid structure */
.flexigrid div.tDiv2 {
    background: transparent !important;
    border: none !important;
}

.flexigrid div.tDiv3 {
    background: transparent !important;
    border: none !important;
}

.flexigrid div.gDiv {
    border: none !important;
    background: transparent !important;
}

.flexigrid div.hDiv {
    background: transparent !important;
    border: none !important;
}

.flexigrid div.bDiv {
    background: transparent !important;
    border: none !important;
}

/* Fix table layout */
.flexigrid table {
    margin: 0 !important;
}

/* Override any remaining flexigrid styling */
.flexigrid * {
    box-sizing: border-box !important;
}

/* Message styling */
.ui-state-highlight {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%) !important;
    color: #1e40af !important;
    border: 1px solid #3b82f6 !important;
    border-radius: 8px !important;
    padding: 1rem !important;
    margin: 1rem 0 !important;
}

.ui-state-error {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%) !important;
    color: #dc2626 !important;
    border: 1px solid #ef4444 !important;
    border-radius: 8px !important;
    padding: 1rem !important;
    margin: 1rem 0 !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .flexigrid table {
        font-size: 0.75rem !important;
    }

    .flexigrid table tbody td,
    .flexigrid table thead th {
        padding: 0.75rem 0.5rem !important;
    }

    .flexigrid table tbody td a {
        padding: 0.375rem 0.75rem !important;
        font-size: 0.75rem !important;
    }

    .gc-container,
    .grocery-crud-container {
        padding: 1rem !important;
    }

    .flexigrid div.tDiv {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.5rem !important;
    }

    .flexigrid div.sDiv {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.5rem !important;
    }

    .pDiv {
        padding: 1rem !important;
    }

    .pDiv tbody tr td:first-child,
    .pDiv tbody tr td:nth-child(2),
    .pDiv tbody tr td:last-child {
        width: 100% !important;
        text-align: center !important;
        display: block !important;
        padding: 0.5rem 0 !important;
    }

    .pDiv .pGroup {
        justify-content: center !important;
        gap: 0.25rem !important;
    }

    .pDiv .pGroup span,
    .pDiv .pGroup a {
        min-width: 2rem !important;
        height: 2rem !important;
        padding: 0.25rem 0.5rem !important;
        font-size: 0.75rem !important;
    }

    .pDiv .pReload {
        margin-top: 0.5rem !important;
        justify-content: center !important;
    }
}

/* Hide unwanted flexigrid elements */
.flexigrid div.hDiv table thead th div.cDrag {
    display: none !important;
}

.flexigrid div.hDiv .htitle {
    display: none !important;
}

.flexigrid .hBtn {
    display: none !important;
}

/* Custom table wrapper */
.grocery-crud-table-wrapper {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin: 1rem 0;
}

/* Status badges for any status columns */
.status-active,
td[data-status="active"],
td[data-status="1"] {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: white !important;
    padding: 0.375rem 0.75rem !important;
    border-radius: 20px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    display: inline-block !important;
}

.status-inactive,
td[data-status="inactive"],
td[data-status="0"] {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: white !important;
    padding: 0.375rem 0.75rem !important;
    border-radius: 20px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    display: inline-block !important;
}