.filter-container {
    display: flex;
    gap: 15px;
    align-items: flex-end; /* تغییر از center به flex-end برای تراز شدن ورودی‌ها و دکمه */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background: #f4f7f6;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    width: 100%; /* تغییر از fit-content به 100% برای مدیریت بهتر فضا */
    box-sizing: border-box;
}

.filter-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1; /* اجازه می‌دهد گروه‌ها فضا را تقسیم کنند */
}

label {
    font-size: 12px;
    font-weight: bold;
    color: #555;
    text-transform: uppercase;
}

select, input { /* اینپوت‌ها را هم به لیست اضافه کردم */
    padding: 8px 12px;
    border-radius: 5px;
    border: 1px solid #ccc;
    background-color: white;
    font-size: 14px;
    cursor: pointer;
    outline: none;
    transition: border-color 0.3s, box-shadow 0.3s;
    min-width: 130px;
    width: 100%; /* برای پر کردن فضای گروه */
    box-sizing: border-box;
}

select:hover, input:hover {
    border-color: #007bff;
}

select:focus, input:focus {
    border-color: #007bff;
    box-shadow: 0 0 5px rgba(0,123,255,0.25);
}

/* دکمه آپدیت */
.btn-update {
    background-color: #007bff;
    color: white;
    padding: 9px 15px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.3s;
}

.btn-update:hover {
    background-color: #0056b3;
}

.btn-add {
    background-color: #28a745;
    color: white;
    padding: 9px 15px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.3s;
}

.btn-add:hover {
    background-color: #218838;
}

.btn-delete {
    background-color: #dc3545;
    color: white;
    padding: 6px 12px; /* کمی کوچک‌تر برای زیبایی در کنار فیلدها */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 13px;
    transition: background 0.3s;
}

.btn-delete:hover {
    background-color: #c82333;
}

/* --- بخش موبایل: تبدیل به کارت --- */
@media (max-width: 768px) {
    .filter-container {
        flex-direction: column; /* تبدیل به ستونی */
        align-items: stretch; /* کشیدن همه اجزا به عرض کامل */
        gap: 10px;
    }

    .filter-group {
        background: #ffffff; /* پس‌زمینه سفید برای حالت کارت */
        padding: 12px;
        border-radius: 6px;
        box-shadow: 0 1px 3px rgba(0,0,0,0.1);
        border: 1px solid #eee;
        flex: none; /* در موبایل دیگر نباید تقسیم‌کننده فضا باشد */
    }

    .btn-update, .btn-add {
        margin-top: 5px;
        width: 100%; /* دکمه تمام عرض در موبایل */
    }
}

.channels-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 0;
}

/* استایل هر آیتم (چک‌باکس + عدد) */
.channel-item {
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    user-select: none; /* جلوگیری از انتخاب شدن متن هنگام کلیک سریع */
    font-size: 14px;
    color: #444;
    transition: color 0.2s;
}

.channel-item:hover {
    color: #007bff;
}

/* استایل خود چک‌باکس برای هماهنگی با inputهای شما */
.channel-item input[type="checkbox"] {
    width: 16px;  /* عرض ثابت برای چک‌باکس */
    height: 16px; /* ارتفاع ثابت برای چک‌باکس */
    min-width: 16px; /* جلوگیری از جمع شدن در flex */
    cursor: pointer;
    accent-color: #007bff; /* تغییر رنگ اصلی چک‌باکس به رنگ برند شما */
    margin: 0; /* حذف مارجین پیش‌فرض */
}

/* --- اصلاح بخش موبایل در Media Query شما --- */
@media (max-width: 768px) {
    
    .channels-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(45px, 1fr));
        gap: 10px;
        justify-items: center;
    }
    
    .channel-item {
        font-size: 13px;
    }
}
