# قواعد الترويسات للاستضافة التي تقرأ ملف _headers
# (Netlify / Cloudflare Pages / Vercel). الخادم المرفق deploy/server.js يطبّق
# القواعد نفسها بالحرف — هذا الملف للنسخ الاحتياطي عند نقل الموقع لاستضافة أخرى.

/*
  Strict-Transport-Security: max-age=31536000; includeSubDomains
  X-Content-Type-Options: nosniff
  X-Frame-Options: SAMEORIGIN
  Referrer-Policy: strict-origin-when-cross-origin
  Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), usb=()
  Cross-Origin-Opener-Policy: same-origin
  Cross-Origin-Resource-Policy: same-site
  Content-Security-Policy: default-src 'self'; script-src 'self' https://accounts.google.com https://apis.google.com; style-src 'self' 'unsafe-inline' https://accounts.google.com https://fonts.googleapis.com; img-src 'self' data: blob: https; font-src 'self' https://fonts.gstatic.com; connect-src 'self' https://accounts.google.com https://apis.google.com; frame-src https://accounts.google.com; media-src 'self' blob:; worker-src 'self' blob:; manifest-src 'self'; object-src 'none'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'; upgrade-insecure-requests

# صفحات HTML: تُتحقَّق في كل زيارة (لا تخزين قديم يمنع وصول تحديث) + منع الفهرسة عن
# مسارات اللوحة الخاصة حتى لا تظهر نتائج البحث لأي حساب.
/index.html
  Cache-Control: public, max-age=0, must-revalidate

/
  Cache-Control: public, max-age=0, must-revalidate
  X-Robots-Tag: noindex

# الحزم المبصومة ببصمة المحتوى: تخزين أبدي، لا إعادة تحقق أبدًا.
/assets/*
  Cache-Control: public, max-age=31536000, immutable

# الخطوط: ثابتة الأسماء — تخزين أبدي.
/fonts/*
  Cache-Control: public, max-age=31536000, immutable

# الوسائط: أسبوع في المتصفح.
/media/*
  Cache-Control: public, max-age=604800, stale-while-revalidate=86400

# عامل الخدمة: لا يُخزَّن حتى يلتقط المتصفح أي نسخة جديدة فورًا.
/sw.js
  Cache-Control: no-cache, no-store, must-revalidate
  Service-Worker-Allowed: /

# ملفات الجذر الصغيرة (شعارات وأيقونات): يوم واحد.
/*.svg
  Cache-Control: public, max-age=86400, stale-while-revalidate=604800
