/**
 * Filter Boxes Standardization
 * Consistent styling for all table filters across the application
 */

/* Filter Inputs and Selects */
.filter-input,
.filter-select {
    border: 1px solid #d2d6da;
    border-radius: 0.5rem;
    padding: 0.5rem 0.75rem; /* Bootstrap default padding */
    font-size: 0.875rem;
    color: #495057;
    background: white;
    box-shadow: 0 1px 2px rgba(0,0,0,0.075);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    min-width: 200px;
    -webkit-appearance: none;
}

.filter-input:focus,
.filter-select:focus {
    border-color: #5e72e4;
    box-shadow: 0 0 0 0.2rem rgba(94, 114, 228, 0.25);
    outline: 0;
}

.filter-input::placeholder {
    color: #adb5bd;
    opacity: 1;
}

/* Custom dropdown arrow for filter selects */
.filter-select {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    padding-right: 2.5rem;
}

/* Filter Button */
.btn-filter {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    white-space: nowrap;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .filter-input,
    .filter-select {
        min-width: 150px;
        width: 100%;
    }

    .btn-filter {
        width: 100%;
        margin-top: 0.5rem;
    }
}
