/*
 * ZYNORA HR — Unified Components Layer (المرحلة الأولى من توحيد الستايل)
 * يُحمّل بعد RenderBody فيفوز بترتيب المصدر على CSS الصفحات دون !important.
 * المبدأ: يستهلك design tokens الموجودة (لا ألوان صلبة) فيتبع محرّك الهوية والثيم.
 * النطاق: توحيد شكل عناصر النماذج الأصلية (تاريخ/دروب/إدخال/نص) + شكل الأزرار
 *         (الأبعاد/الحواف/التركيز) دون لمس دلالات الألوان (أساسي/خطر...).
 *
 * ملاحظة: الصفحات التي تُنسّق حقولها صراحةً بمحدّد أعلى تبقى كما هي (لا نكسرها)؛
 *         هذا الملف يوحّد أساساً العناصر الأصلية غير المنسّقة (المصدر الأكبر للتفاوت).
 */

/* ===== 0. لا خطوط سفلية تحت أي رابط داخل التطبيق (ستايل موحّد عام) ===== */
.zy-scope a,
.zy-scope a:hover,
.zy-scope a:focus,
.zy-scope a:active,
.zy-scope a:visited {
    text-decoration: none !important;
}

/* ===== 1. عناصر النماذج الأصلية: إدخال/نص/رقم/بحث ===== */
.zy-scope input:not([type]),
.zy-scope input[type="text"],
.zy-scope input[type="number"],
.zy-scope input[type="search"],
.zy-scope input[type="email"],
.zy-scope input[type="tel"],
.zy-scope input[type="password"],
.zy-scope input[type="url"],
.zy-scope input[type="date"],
.zy-scope input[type="time"],
.zy-scope input[type="month"],
.zy-scope input[type="datetime-local"],
.zy-scope select,
.zy-scope textarea {
    /* !important محصور بخصائص الشكل الجوهرية للعناصر الأصلية فقط — لتوحيد فعلي
       يتغلّب على ستايل الصفحات عالي الـspecificity (سبب التفاوت المرئي). */
    font-family: var(--zy-font-ar);
    font-size: 14px;
    line-height: 1.4;
    color: var(--zy-text);
    background-color: var(--zy-input) !important;
    border: 1px solid var(--zy-border) !important;
    border-radius: var(--zy-radius-md) !important;
    padding: 0 12px;
    min-height: 40px !important;
    box-sizing: border-box;
    transition: border-color var(--zy-duration-fast) var(--zy-ease),
                box-shadow var(--zy-duration-fast) var(--zy-ease);
    appearance: none !important;
    -webkit-appearance: none !important;
}

.zy-scope textarea {
    padding: 10px 12px;
    min-height: 88px !important;
    resize: vertical;
    line-height: 1.6;
}

.zy-scope input:focus,
.zy-scope select:focus,
.zy-scope textarea:focus {
    outline: none;
    border-color: var(--zy-border-strong);
    box-shadow: var(--zy-focus-ring);
}

.zy-scope input::placeholder,
.zy-scope textarea::placeholder {
    color: var(--zy-text-muted);
    opacity: .8;
}

.zy-scope input:disabled,
.zy-scope select:disabled,
.zy-scope textarea:disabled {
    background-color: var(--zy-surface-soft);
    color: var(--zy-text-muted);
    cursor: not-allowed;
}

/* ===== 2. الدروب (select) الأصلي: سهم موحّد واعٍ بالـRTL ===== */
.zy-scope select {
    padding-inline-end: 34px !important;
    /* سهم SVG موحّد بلون النص المكتوم — data URI فلا طلب خارجي */
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23627386' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: left 12px center !important;
    background-size: 12px 8px !important;
}
[dir="rtl"] .zy-scope select {
    background-position: left 12px center;
}
html[dir="ltr"] .zy-scope select,
.zy-scope [dir="ltr"] select {
    background-position: right 12px center;
    padding-inline-end: 34px;
}

/* أيقونة التقويم للتاريخ/الوقت الأصلي (Webkit) بلون موحّد */
.zy-scope input[type="date"]::-webkit-calendar-picker-indicator,
.zy-scope input[type="time"]::-webkit-calendar-picker-indicator,
.zy-scope input[type="month"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: .55;
    filter: grayscale(1);
}
.zy-scope input[type="date"]::-webkit-calendar-picker-indicator:hover {
    opacity: .85;
}

/* ===== 3. الأزرار: توحيد شامل لكل العائلات (شكل/طباعة/تفاعل) ===== */
/* baseline: أي صنف يحوي "-btn" أو "-button" + nxos__button — عدا الـpills.
   يوحّد الطباعة/الحواف/المحاذاة/التفاعل لكل الأزرار بلا فرض حجم (فتبقى المضغوطة). */
.zy-scope [class*="-btn"]:not([class*="pill"]),
.zy-scope [class*="-button"]:not([class*="pill"]),
.zy-scope .nxos__button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px;
    box-sizing: border-box;
    font-family: var(--zy-font-ar) !important;
    font-weight: 700 !important;
    line-height: 1.1;
    text-align: center;
    cursor: pointer;
    border-radius: var(--zy-radius-md) !important;
    transition: transform var(--zy-duration-fast) var(--zy-ease),
                box-shadow var(--zy-duration-fast) var(--zy-ease),
                filter var(--zy-duration-fast) var(--zy-ease);
}
/* الحجم القياسي 40px — أزرار الإجراءات فقط (نستثني المضغوطة: أيقونة/mini/ترقيم/link/switch) */
.zy-scope [class*="-btn"]:not([class*="pill"]):not([class*="icon"]):not([class*="mini"]):not([class*="pager"]):not([class*="pagination"]):not([class*="link"]):not([class*="switch"]),
.zy-scope [class*="-button"]:not([class*="pill"]):not([class*="icon"]):not([class*="switch"]):not([class*="pagination"]),
.zy-scope .nxos__button {
    min-height: 40px !important;
    padding: 0 18px;
    font-size: 14px !important;
}
/* hover/active/focus موحّد لكل الأزرار */
.zy-scope [class*="-btn"]:not([class*="pill"]):hover:not(:disabled),
.zy-scope [class*="-button"]:not([class*="pill"]):hover:not(:disabled),
.zy-scope .nxos__button:hover:not(:disabled) {
    filter: brightness(1.05);
}
.zy-scope [class*="-btn"]:not([class*="pill"]):active:not(:disabled),
.zy-scope [class*="-button"]:not([class*="pill"]):active:not(:disabled),
.zy-scope .nxos__button:active:not(:disabled) {
    transform: translateY(1px);
}
.zy-scope [class*="-btn"]:not([class*="pill"]):focus-visible,
.zy-scope [class*="-button"]:not([class*="pill"]):focus-visible,
.zy-scope .nxos__button:focus-visible {
    outline: none;
    box-shadow: var(--zy-focus-ring) !important;
}

/* ===== 4. توحيد ألوان الأزرار حسب الدلالة (شامل كل العائلات عبر [class*=]) ===== */
/* أساسي/تطبيق = تيل الهوية */
.zy-scope [class*="btn-primary"],
.zy-scope [class*="btn--primary"],
.zy-scope .tax-apply-btn {
    background: var(--zy-electric-teal) !important;
    color: #fff !important;
    border-color: var(--zy-electric-teal) !important;
}
/* ثانوي = محايد بحدّ */
.zy-scope [class*="btn-secondary"],
.zy-scope [class*="btn--secondary"],
.zy-scope [class*="icon-btn--muted"] {
    background: var(--zy-surface) !important;
    color: var(--zy-text) !important;
    border: 1px solid var(--zy-border) !important;
}
/* خطر/حذف = أحمر الحالة */
.zy-scope [class*="btn-danger"],
.zy-scope [class*="btn--danger"],
.zy-scope .tax-delete-btn {
    background: var(--zy-danger) !important;
    color: #fff !important;
    border-color: var(--zy-danger) !important;
}
/* نجاح = أخضر الحالة */
.zy-scope [class*="btn-success"],
.zy-scope [class*="btn--success"] {
    background: var(--zy-success) !important;
    color: #fff !important;
    border-color: var(--zy-success) !important;
}
/* شبح/إلغاء = شفّاف بحدّ */
.zy-scope [class*="btn--ghost"],
.zy-scope [class*="btn-ghost"],
.zy-scope [class*="cancel-button"] {
    background: transparent !important;
    color: var(--zy-text) !important;
    border: 1px solid var(--zy-border) !important;
}
/* تحذير/لين = كهرماني/تيل ناعم */
.zy-scope [class*="btn-warning"] {
    background: var(--zy-warning) !important;
    color: #fff !important;
    border-color: var(--zy-warning) !important;
}
.zy-scope .bp-btn-soft {
    background: var(--zy-primary-soft) !important;
    color: var(--zy-electric-teal) !important;
    border: 1px solid var(--zy-border-strong) !important;
}

/* ===== 5. عناصر الأفعال القابلة للنقر بتسميات غير -btn (chip/link كأزرار) ===== */
/* روابط/أزرار الأفعال المسمّاة chip أو link-btn (لا span الحالة) → شكل زر شبح موحّد.
   يلتقط zxd-chip / zua-chip / nxr-chip / dat-chip / rec-chip / zhr-page-link ... */
.zy-scope a[class*="chip"],
.zy-scope button[class*="chip"],
.zy-scope a[class*="link-btn"],
.zy-scope a[class*="page-link"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px;
    min-height: 38px !important;
    padding: 0 15px !important;
    border-radius: var(--zy-radius-md) !important;
    font-family: var(--zy-font-ar) !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    line-height: 1;
    cursor: pointer;
    text-decoration: none !important;
    background: var(--zy-surface) !important;
    color: var(--zy-text) !important;
    border: 1px solid var(--zy-border) !important;
    transition: filter var(--zy-duration-fast) var(--zy-ease),
                border-color var(--zy-duration-fast) var(--zy-ease);
}
.zy-scope a[class*="chip"]:hover,
.zy-scope button[class*="chip"]:hover,
.zy-scope a[class*="link-btn"]:hover,
.zy-scope a[class*="page-link"]:hover {
    filter: brightness(1.06);
    border-color: var(--zy-border-strong) !important;
}

/* ===== 6. طلب المستخدم: كل أزرار الأفعال بنفس ستايل «دفعة مسير جديدة» (تيل صلب) =====
   يُطبَّق أخيراً فيتغلّب على ألوان المتغيّرات أعلاه. الاستثناءات المقصودة:
   - الخطر/الحذف تبقى أحمر (سلامة)
   - الإلغاء/الرجوع تبقى محايدة (تمييز الفعل التراجعي)
   - الأيقونة/mini/ترقيم/pill/link/switch تبقى مضغوطة بلا تعبئة كاملة */
.zy-scope [class*="-btn"]:not([class*="danger"]):not([class*="delete"]):not([class*="cancel"]):not([class*="back"]):not([class*="icon"]):not([class*="mini"]):not([class*="pager"]):not([class*="pagination"]):not([class*="pill"]):not([class*="link"]):not([class*="switch"]):not([class*="secondary"]),
.zy-scope [class*="-button"]:not([class*="danger"]):not([class*="delete"]):not([class*="cancel"]):not([class*="back"]):not([class*="icon"]):not([class*="pagination"]):not([class*="switch"]):not([class*="pill"]):not([class*="logout"]),
.zy-scope .nxos__button,
.zy-scope a[class*="chip"]:not([class*="status"]),
.zy-scope button[class*="chip"] {
    background: var(--zy-electric-teal) !important;
    background-image: none !important;
    color: #04141d !important;
    border: 1px solid var(--zy-electric-teal) !important;
}
.zy-scope [class*="-btn"]:not([class*="danger"]):not([class*="delete"]):not([class*="cancel"]):not([class*="back"]):not([class*="icon"]):not([class*="pill"]):not([class*="link"]):not([class*="switch"]):not([class*="secondary"]):hover:not(:disabled),
.zy-scope [class*="-button"]:not([class*="danger"]):not([class*="cancel"]):not([class*="back"]):not([class*="icon"]):not([class*="pill"]):not([class*="logout"]):hover:not(:disabled),
.zy-scope .nxos__button:hover:not(:disabled) {
    filter: brightness(1.07) !important;
}
