
<script>
(function(){
  const CLEAN_PATTERNS = [
    /^•\s*يدعم[:：]/,
    /^يدعم[:：]/,
    /^•\s*سيتم منع تكرار الأكواد/,
    /^سيتم منع تكرار الأكواد/,
    /^لا يوجد أصناف كروت بعد/,
    /^أدخل\s.+اضغط حفظ\.?$/,
    /^يعرض منافذ\s.+قبل التطبيق\.?$/,
    /^الصيغة[:：]/,
    /^0\s*=\s*/,
    /^يُ?ستخدم فقط إذا اخترت/,
    /^مفيد لو أردت/,
    /^سيتم إنشاء\s.+تلقائي/,
    /^عند اختيار\s.+QR/,
    /^عند بيع الكرت/,
    /^يتم ربط الكرت بأول جهاز/,
    /^يتم تعطيل المستخدم مؤقتًا/,
    /^يؤثر على QR/,
    /^للعداد\/القياس/,
    /^يُستخدم لقياس الإنترنت/,
    /^بالوضع الافتراضي[:：]/,
    /^ملاحظة[:：]\s*المعاينة تعرض/,
    /^أضف Router1/,
    /^إدارة الراوترات، القطاعات VLAN/,
    /^نقطة بيع\s*—\s*نظام الكروت$/,
    /^MAX\s*\d+/i,
    /^\d+\s*GB$/i,
    /^اضغط لفتح القائمة/,
    /^انقر لفتح القائمة/,
    /^مثال[:：]/,
    /^Example[:：]/i,
    /^هذه الصفحة تجهّز/,
    /^يتم ربط هذه الإعدادات/,
    /^يفضل إدخال الرقم بصيغة/,
    /^إذا كان صنف الكرت يحتوي/,
    /^الرسائل تنتظر الإرسال/,
    /^متغيرات جاهزة[:：]/,
    /^تم دمج المبيعات/,
    /^يعرض فقط نتائج/,
    /^فترة التحديث/,
    /^عدد أيام السماح/,
    /^بعد كم يوم/,
    /^مدة الكرت تبدأ/,
    /^هذه صفحة واحدة تجمع/,
    /^Runner[:：]/i
  ];

  function normalizeText(value){
    return String(value || '')
      .replace(/\s*\((?:اختياري|اختیاري)\)\s*/g, '')
      .replace(/\s*[-–—]\s*اختياري\s*/g, '')
      .replace(/\s{2,}/g, ' ')
      .trim();
  }

  function shouldRemoveHelperText(text){
    const t = String(text || '').replace(/\s+/g, ' ').trim();
    if (!t) return false;
    return CLEAN_PATTERNS.some(function(rx){ return rx.test(t); });
  }

  function markRemoval(el){
    if (!el || !el.classList) return;
    el.classList.add('ua-clean-remove');
  }

  function isProtected(el){
    if (!el || !el.closest) return false;
    return !!el.closest('.ua-sb3, .ua-sb3-fly, a[href], nav, [role="menu"], [role="navigation"], .ua-footer, #uaUnifiedFooter, .ua-topbar, .ua-search, .ua-footer-inner, .ua-subnav, .ua-comms-page, .ua-comms-modal, .ua-net-window');
  }

  function cleanLabels(root){
    root.querySelectorAll('label, .form-label, .input-group-text, option, button, a, small, span, div').forEach(function(el){
      if (!el || el.children.length) return;
      const txt = String(el.textContent || '');
      if (isProtected(el) || !txt.trim()) return;
      const cleaned = normalizeText(txt);
      if (cleaned !== txt.trim()) el.textContent = cleaned;
      if (!cleaned || shouldRemoveHelperText(cleaned)) markRemoval(el);
    });
  }

  function cleanPlaceholders(root){
    root.querySelectorAll('input[placeholder], textarea[placeholder]').forEach(function(el){
      const ph = String(el.getAttribute('placeholder') || '').trim();
      if (!ph) return;
      if (/^(?:اختياري|—\s*إدخال يدوي\s*—)$/u.test(ph) || /^(?:مثال|example)\s*[:：]/iu.test(ph) || /#RRGGBB/i.test(ph)) {
        el.setAttribute('placeholder', '');
      }
    });
  }

  function cleanHelpers(root){
    root.querySelectorAll('small, .small, .form-text, .hint, .help-block, .ua-ftabs-hint, .note').forEach(function(el){
      if (isProtected(el)) return;
      const text = String(el.textContent || '').trim();
      if (!text || shouldRemoveHelperText(text)) markRemoval(el);
    });
  }

  function hideNotesFields(root){
    root.querySelectorAll('label, .form-label').forEach(function(label){
      const t = String(label.textContent || '').replace(/\s+/g,' ').trim();
      if (isProtected(label) || !t) return;
      if (/^(?:ملاحظات|مواصفات\/ملاحظات|ملاحظات للعميل)$/u.test(t)) {
        const grp = label.closest('.form-group, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-sm-12, .col-lg-12, .row > div, td, .form-row > div');
        if (grp && grp.querySelector('input, textarea, select')) grp.classList.add('ua-clean-hidden-group');
      }
    });
  }

  function sanitize(root){
    if (!root || root.nodeType !== 1) return;
    document.documentElement.classList.add('ua-clean-mode');
    cleanLabels(root);
    cleanPlaceholders(root);
    cleanHelpers(root);
    hideNotesFields(root);
    root.querySelectorAll('.ua-ftabs-hint').forEach(markRemoval);
  }

  function sanitizeDocument(){ sanitize(document.body || document.documentElement); }

  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', sanitizeDocument);
  } else {
    sanitizeDocument();
  }

  if (document.documentElement) {
    const mo = new MutationObserver(function(mutations){
      mutations.forEach(function(m){
        m.addedNodes.forEach(function(node){
          if (node && node.nodeType === 1) sanitize(node);
        });
      });
    });
    mo.observe(document.documentElement, {childList:true, subtree:true});
  }
})();
</script>
