    {% endif %}
    
    {# ─── استایل‌های پایه Core ─── #}
        * { margin: 0; padding: 0; box-sizing: border-box; }
        
        html, body {
            font-family: "{{ app_font|default(font_family()) }}", var(--font-persian, system-ui), sans-serif;
            font-size: var(--font-size-base, 14px);
            line-height: 1.6;
            color: var(--color-neutral-text, #202124);
            background: var(--color-neutral-bg, #f8f9fa);
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }
        
        html[dir="rtl"] body {
            direction: rtl;
            text-align: right;
        }
        
        html[dir="ltr"] body {
            direction: ltr;
            text-align: left;
        }
        
        a {
            color: var(--color-primary-default, #1a73e8);
            text-decoration: none;
            transition: color var(--transition-fast, 150ms);
        }
        
        a:hover {
            color: var(--color-primary-dark, #1557b0);
        }
        
        button {
            font-family: inherit;
            cursor: pointer;
        }
        
        input, textarea, select {
            font-family: inherit;
            font-size: inherit;
        }
        
        /* ─── Utility Classes (Core) ─── */
        .container { max-width: 1200px; margin: 0 auto; padding: 0 var(--spacing-lg, 16px); }
        .container-fluid { width: 100%; padding: 0 var(--spacing-lg, 16px); }
        
        .text-center { text-align: center; }
        .text-muted { color: var(--color-neutral-text_secondary, #5f6368); }
        
        .mt-sm { margin-top: var(--spacing-sm, 8px); }
        .mt-md { margin-top: var(--spacing-md, 12px); }
        .mt-lg { margin-top: var(--spacing-lg, 16px); }
        .mt-xl { margin-top: var(--spacing-xl, 24px); }
        
        .mb-sm { margin-bottom: var(--spacing-sm, 8px); }
        .mb-md { margin-bottom: var(--spacing-md, 12px); }
        .mb-lg { margin-bottom: var(--spacing-lg, 16px); }
        .mb-xl { margin-bottom: var(--spacing-xl, 24px); }
