/* =====================================================================
   responsive.css
   كل استعلامات الوسائط (media queries) الخاصة بتجاوب الموبايل/التابلت،
   محفوظة بنفس ترتيبها الأصلي بالحرف لضمان نفس سلوك الـ cascade تمامًا.
   ملحوظة: يتم تحميل هذا الملف بعد كل ملفات الـ CSS الأخرى عمدًا.
   منصة زِمام الرقمية
   ===================================================================== */

@media (min-width: 420px) {
            .brand-text p { display: block; }
            .brand-text h1 { font-size: 1.1rem; }
            .brand-logo { width: 42px; height: 42px; font-size: 22px; }
        }
@media (min-width: 768px) {
            .navbar { padding: 12px 5%; }
            .brand-logo { width: 48px; height: 48px; border-radius: 14px; font-size: 24px; }
            .brand-text h1 { font-size: 1.25rem; }
            .brand-text p { font-size: 0.7rem; }
        }
@media (min-width: 480px) {
            .nav-btn { padding: 12px 22px; font-size: 0.85rem; }
        }
@media (min-width: 480px) {
            .container { padding: 0 16px; margin: 20px auto; }
        }
@media (min-width: 768px) {
            .container { padding: 0 24px; margin: 24px auto; }
        }
@media (prefers-reduced-motion: reduce) {
            *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
        }
@media (min-width: 480px) {
            .hero-banner h2 { font-size: 1.8rem; }
            .hero-banner p { font-size: 1rem; }
        }
@media (min-width: 768px) {
            .hero-banner h2 { font-size: 2rem; }
            .hero-banner p { font-size: 1.05rem; }
            .hero-banner { margin-bottom: 32px; }
        }
@media (min-width: 480px) { .news-section-title { font-size: 1.2rem; } }
@media (min-width: 600px) { .news-cards-grid { grid-template-columns: repeat(2,1fr); } }
@media (min-width: 900px) { .news-cards-grid { grid-template-columns: repeat(3,1fr); gap: 18px; } }
@media (min-width: 480px) { .card-box { padding: 22px 20px; } }
@media (min-width: 768px) { .card-box { padding: 28px 28px; } }
@media (min-width: 480px) {
            .form-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
        }
@media (min-width: 768px) { .form-grid { gap: 16px; margin-bottom: 14px; } }
@media (min-width: 480px) { .form-label { font-size: 0.85rem; } }
@media (min-width: 480px) { .btn-submit { width: auto; min-width: 180px; } }
@media (min-width: 992px) {
            .dashboard-layout { grid-template-columns: 250px 1fr; gap: 24px; }
        }
@media (min-width: 992px) {
            .sidebar { display: flex; flex-direction: column; }
        }
@media (max-width: 991px) {
            .main-content { padding-bottom: calc(var(--bottom-nav-h) + 18px + env(safe-area-inset-bottom)); }
        }
@media (min-width: 992px) { .mobile-bottom-nav { display: none !important; } }
@media (min-width: 500px) { .stats-grid { grid-template-columns: repeat(5,1fr); gap: 12px; } }
@media (min-width: 480px) { .stat-card { padding: 16px 14px; } }
@media (min-width: 480px) { .stat-info h4 { font-size: 0.75rem; } .stat-info .val { font-size: 1.6rem; } }
@media (min-width: 480px) { .collapse-header { padding: 20px 20px; } }
@media (min-width: 480px) { .collapse-inner { padding: 0 20px 24px; } }
@media (min-width: 480px) { table { font-size: 0.75rem; } }
@media (min-width: 768px) { table { font-size: 0.8rem; min-width: auto; } }
@media (min-width: 480px) { th { padding: 12px 8px; font-size: 0.7rem; } }
@media (max-width: 700px) {
            .table-card-view table { min-width: 0; }
            .table-card-view thead { display: none; }
            .table-card-view, .table-card-view table, .table-card-view tbody { display: block; width: 100%; }
            .table-card-view tr {
                display: block;
                border: 1px solid var(--border-light);
                border-radius: var(--radius-md);
                margin: 10px;
                overflow: hidden;
            }
            .table-card-view tr.critical-alert { border-color: var(--danger); }
            .table-card-view td {
                display: flex;
                justify-content: space-between;
                align-items: center;
                gap: 10px;
                text-align: left;
                padding: 9px 12px;
                border-bottom: 1px dashed var(--border-light);
            }
            .table-card-view td:last-child { border-bottom: none; }
            .table-card-view td::before {
                content: attr(data-label);
                font-weight: 800;
                color: var(--text-muted);
                font-size: 0.68rem;
                flex-shrink: 0;
            }
            .table-card-view td > * { text-align: left; }
        }
@media (min-width: 480px) {
            .filter-bar input, .filter-bar select { min-width: 140px; flex: 0 1 auto; }
        }
@media (min-width: 600px) { .charts-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 991px) { .toast { bottom: calc(var(--bottom-nav-h) + 16px + env(safe-area-inset-bottom)); } }
