/* system.css — v10: الطبقةُ المرجعيّةُ الأخيرةُ لنظامِ التصميمِ الواحد (تُحمَّلُ آخرًا).
 *
 * المرجعُ هو الموقعُ الرئيسيّ (platform-site.css) حرفيًّا:
 *   • الخطوط: Alexandria للعناوينِ والتنقّلِ والأزرار، وIBM Plex Sans Arabic للنصّ — من ملفاتِ /platform/fonts نفسِها.
 *   • سُلَّمُ الأحجام: عنوانُ الصفحة 1.85rem/700، عنوانُ القسم 1.45rem/700، عنوانُ البطاقة 1rem/600،
 *     النصُّ 1.05rem بسطرٍ 1.9، التنقّل .92rem/700.
 *   • الأيقونات: لوحُ الرئيسيةِ (100×112) بأحجامِه: 36×40 في القوائم، 34×38 في الترويسة، 44×49 في البطاقات، 52×58 للحالاتِ الكبيرة.
 * لا قصَّ للنصّ داخلَ البطاقاتِ والحقول، ولا تراكبَ بين البطاقات. */

@font-face { font-family: "Alexandria"; src: url("/platform/fonts/Alexandria.ttf") format("truetype"); font-weight: 100 600; font-display: swap; }
@font-face { font-family: "Alexandria"; src: url("/platform/fonts/Alexandria-Bold.ttf") format("truetype"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Alexandria"; src: url("/platform/fonts/Alexandria-ExtraBold.ttf") format("truetype"); font-weight: 800 900; font-display: swap; }
@font-face { font-family: "IBM Plex Sans Arabic"; src: url("/platform/fonts/IBMPlexSansArabic-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Sans Arabic"; src: url("/platform/fonts/IBMPlexSansArabic-Medium.ttf") format("truetype"); font-weight: 500; font-display: swap; }
@font-face { font-family: "IBM Plex Sans Arabic"; src: url("/platform/fonts/IBMPlexSansArabic-SemiBold.ttf") format("truetype"); font-weight: 600; font-display: swap; }
@font-face { font-family: "IBM Plex Sans Arabic"; src: url("/platform/fonts/IBMPlexSansArabic-Bold.ttf") format("truetype"); font-weight: 700; font-display: swap; }

:root, html.t2-on, .t2 {
  /* v12: عائلتان فقط في كلِّ اللوحة — لا خطوطَ أخرى ولا بدائلَ نظامٍ ظاهرة */
  /* سُلَّمُ الرئيسية */
  /* أحجامُ اللوحِ */
}

/* ---------- الخطوط ---------- */
.t2, .t2-auth, [id^="screen-"] { font-family: var(--t2-ff-text); }
.t2 :is(h1, h2, h3, h4, .t2-phead-t, .t2-sec-t, .t2-card-t, .t2-btn, .t2-side-l, .t2-side-gh, .t2-tab), .t2-auth :is(h1, h2, h3, .t2-au-btn) { font-family: var(--t2-ff-display); }

/* ---------- سُلَّمُ الأحجام ---------- */
.t2 .t2-phead-t { font-size: var(--t2-t-h1); font-weight: 700; line-height: 1.45; letter-spacing: 0; }
.t2 .t2-phead-s { font-size: 1.05rem; line-height: 1.9; }
.t2 :is(.t2-sec-t, h2) { font-size: 1.2rem; font-weight: 700; line-height: 1.5; }
.t2 .t2-card-t { font-size: 1rem; font-weight: 600; line-height: 1.55; }
.t2 :is(.t2-card-d, .t2-note-b, .t2-empty-b, .t2-sec-n) { font-size: .92rem; line-height: 1.8; }
.t2 .t2-side-l { font-size: .92rem; font-weight: 700; }
.t2 .t2-side-gh { font-size: .8rem; font-weight: 700; }

/* ---------- الأيقونات: لوحُ الرئيسيةِ بأحجامِها ---------- */
.t2 svg.t2-tile { inline-size: var(--t2-ic-card); block-size: auto; aspect-ratio: 100 / 112; flex: none; overflow: visible; }
.t2 .t2-side-ic svg.t2-tile, .t2 .t2-side-icm svg.t2-tile { inline-size: var(--t2-ic-nav); }
.t2 .t2-side-ic { inline-size: var(--t2-ic-nav); block-size: calc(var(--t2-ic-nav) * 1.12); display: inline-grid; place-items: center; }
.t2 :is(.t2-hdr, .t2-head, header.t2-top) :is(button, a) svg.t2-tile { inline-size: var(--t2-ic-head); }
.t2 :is(.t2-empty, .t2-state) svg.t2-tile { inline-size: var(--t2-ic-lg); }
.t2 .t2-side-i { min-block-size: 48px; align-items: center; }

/* ---------- لا قصَّ للنصّ ---------- */
.t2 .t2-body :is(.t2-card-t, .t2-card-d, .t2-field-l, .t2-field-v, .t2-kv dt, .t2-kv dd, .t2-metric-l, .t2-metric-v, .t2-metric-s,
  .t2-sec-t, .t2-sec-n, .t2-panel-t, .t2-note-t, .t2-note-b, .t2-badge, .t2-dh-t, .t2-dh-s, .t2-tile-t, .t2-tile-d) {
  overflow: visible; text-overflow: clip; white-space: normal; -webkit-line-clamp: unset; line-clamp: none;
  overflow-wrap: anywhere; min-inline-size: 0; max-block-size: none;
}
.t2 .t2-body :is(.t2-card-d, .t2-card-t) { display: block; }
.t2 .t2-body .t2-card { overflow: visible; block-size: auto; min-block-size: 0; }
.t2 .t2-body :is(.t2-field) { overflow: visible; min-inline-size: 0; }

/* ---------- البطاقاتُ والقوالب: مسافاتٌ ثابتةٌ بلا تراكب ---------- */
.t2 .t2-sec-b { padding-block-start: 16px; }
.t2 .t2-grid { align-items: stretch; gap: 14px; }
.t2 .t2-grid > * { min-inline-size: 0; margin: 0; }
.t2 .t2-card { padding: 14px 16px; gap: 10px 12px; }

/* ---------- الوضعُ الليليّ: لا أسطحَ فاتحةً متبقّية ---------- */
html.theme .t2 :is(input, select, textarea):not([type="checkbox"]):not([type="radio"]) { background-color: var(--t2-input, var(--t2-surface-2)); color: var(--t2-ink); border-color: var(--t2-line-2); }
html.theme [id^="screen-"] :is(.t2-au-panel, .t2-review-card, .t2-au-card, .t2-twofa-factor, .t2-soon-card) { background: var(--t2-surface); color: var(--t2-ink); border-color: var(--t2-line); }

/* ---------- أساسُ الصفحة: v2 يملكُه بعد حذفِ admin.css ---------- */
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { font-family: var(--t2-ff-text); -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

/* ---------- «لوحتي»: تباعدُ فقراتٍ وأسطرٍ مريح، ومؤشّراتُ الحالة ---------- */
.t2 .t2-dash { display: grid; gap: 20px; }
.t2 .t2-dash :is(p, .t2-act-d, .t2-group-n) { line-height: 1.9; }
.t2 .t2-dash .t2-act-l { display: grid; gap: 12px; }
.t2 .t2-dash .t2-act-b { display: grid; gap: 4px; }
.t2 .t2-dash .t2-act-it { font: 700 1rem/1.55 var(--t2-ff-display); }
.t2 .t2-dash .t2-group-t { margin: 0; }
.t2 .t2-dash .t2-group-n { display: block; margin-block-start: 2px; }
.t2 .t2-dash-status { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 14px; }
.t2 .t2-dash-status .t2-sc { margin: 0; }
.t2 .t2-body .t2-sec > .t2-sec-b { padding-block-start: 16px; }
.t2 .t2-dash-head { isolation: isolate; }
.t2 .t2-dash-head > * { position: relative; z-index: 1; }
.t2 .t2-dash-head .t2-dash-at { color: rgba(255, 255, 255, .86); }
.t2 .t2-card-badge:not(.is-alert) { background: #0B2349; color: #fff !important; }
html.theme .t2 .t2-card-badge:not(.is-alert) { background: #63E2E0; color: #04211F !important; }
.t2 .t2-card-badge.is-alert { background: #F0962A; color: #2B1700 !important; }

/* v11: لا حركةَ ظهورٍ عند إعادةِ الرسمِ بعد طيِّ/توسيعِ الشريط */
html.t2-calm .t2 *, html.t2-calm .t2 *::before, html.t2-calm .t2 *::after { animation: none !important; transition: none !important; }
/* v11: «آخرُ تحديث» على رأسِ الترحيبِ الكحليِّ: الوقتُ أبيضُ واضحٌ في الوضعين */
.t2 .t2-dash-head .t2-dash-at, .t2 .t2-dash.is-cmd .t2-dash-head .t2-dash-at { color: rgba(255,255,255,.9); }
.t2 .t2-dash-head .t2-dash-at time { color: #fff; font-weight: 700; }

/* v11: مبدِّلُ الأدوار — الحاليُّ واضحٌ والأدوارُ الأخرى أزرارٌ مباشرة */
.t2 .t2-hwho-r { font: 700 12px/1 var(--t2-ff-display); padding: 4px 8px; border-radius: 999px;
  background: color-mix(in srgb, var(--t2-brand, #2fd0c0) 18%, transparent); color: var(--t2-ink, #0a1f44); white-space: nowrap; }
html.theme .t2 .t2-hwho-r { color: #e8f6f5; }
.t2 .t2-sw.is-inline { display: grid; gap: 6px; inline-size: 100%; }
.t2 .t2-sw.is-inline .t2-sw-cap { font: 700 12px/1.6 var(--t2-ff-display); color: var(--t2-muted); margin-block-start: 4px; }
.t2 .t2-sw.is-inline .t2-sw-cur { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px;
  border: 1.5px solid var(--t2-brand, #2fd0c0); background: color-mix(in srgb, var(--t2-brand, #2fd0c0) 10%, transparent); }
.t2 .t2-sw.is-inline .t2-sw-cur-l { flex: 1; font: 700 14.72px/1.5 var(--t2-ff-display); }
.t2 .t2-sw.is-inline .t2-sw-item { display: flex; align-items: center; gap: 8px; inline-size: 100%; padding: 8px 10px; border-radius: 10px;
  border: 1px solid var(--t2-line); background: var(--t2-surface); color: var(--t2-ink); cursor: pointer; text-align: start; }
.t2 .t2-sw.is-inline .t2-sw-item:hover { border-color: var(--t2-brand, #2fd0c0); }
.t2 .t2-sw.is-inline .t2-sw-l { flex: 1; font: 600 14px/1.5 var(--t2-ff-text); }
.t2 .t2-sw.is-inline .t2-sw-tag.is-on { background: var(--t2-ok, #3fbf7f); color: #fff; }
.t2 .t2-sw.is-inline .t2-sw-note { font-size: 12px; line-height: 1.8; color: var(--t2-muted); margin: 2px 0 0; }

/* v11: خطوطُ الصفحةِ الرئيسيةِ بالضبط (مقاسةٌ من الموقع): نصٌّ IBM Plex Sans Arabic 400 · 16px · ارتفاعُ سطر 1.9؛
   العناوينُ والأزرارُ Alexandria 700 (الأزرارُ 14.72px كأزرارِ الرئيسية) */
.t2 p, .t2 .t2-note, .t2 .t2-sec-n, .t2 .t2-empty-t { font-family: var(--t2-ff-text); line-height: 1.9; }
.t2 h1, .t2 h2, .t2 h3, .t2 h4, .t2 .t2-phead-t, .t2 .t2-sec-t { font-family: var(--t2-ff-display); font-weight: 700; }
.t2 .t2-btn, .t2 button.t2-btn { font-family: var(--t2-ff-display); font-weight: 700; font-size: 14.72px; }
/* v11: فقراتُ القوالبِ والمحتوى: تباعدٌ ومحاذاةٌ لبدايةِ السطر */
.t2 p + p, .t2 .t2-prose p + p, .t2 .t2-prose li + li { margin-block-start: .7em; }
.t2 .t2-prose, .t2 .t2-prose p, .t2 .t2-prose li, .t2 .t2-sec p { text-align: start; text-wrap: pretty; }
.t2 .t2-prose h2, .t2 .t2-prose h3 { margin-block: 1.1em .45em; }
.t2 .t2-prose ul, .t2 .t2-prose ol { padding-inline-start: 1.4em; }

/* v11: «لوحتي» — الاسمُ بحجمٍ متّزن، ومؤشّراتٌ مرتّبة */
.t2 .t2-dash-head .t2-dash-t { font-size: clamp(19px, 1.2vw + 12px, 22px); line-height: 1.45; margin-block: 2px 4px; }
.t2 .t2-dash-head .t2-dash-sub { margin: 0; line-height: 1.9; }
.t2 .t2-dash-kpis { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 10px; }
.t2 .t2-dash-kpi { display: inline-flex; align-items: baseline; gap: 6px; padding: 5px 10px; border-radius: 999px; font-size: 12.5px; line-height: 1.5;
  background: rgba(255,255,255,.12); color: rgba(255,255,255,.92); border: 1px solid rgba(255,255,255,.18); }
.t2 .t2-dash-kpi b { font: 700 14px/1 var(--t2-ff-display); color: #fff; direction: ltr; unicode-bidi: isolate; }
.t2 .t2-dash-kpi.is-warn { border-color: rgba(242,200,92,.6); }
.t2 .t2-dash-kpi.is-ok { border-color: rgba(78,203,146,.6); }

/* v11.1: زرُّ الخروجِ منفصلٌ بوضوحٍ عن شارةِ الاسم */
.t2 .t2-hbtn.is-out { margin-inline-start: 14px; position: relative; }
.t2 .t2-hbtn.is-out::before { content: ""; position: absolute; inset-block: 6px; inset-inline-start: -8px; inline-size: 1px; background: var(--t2-line); }

/* =====================================================================
 * v12 — الشريطُ الجانبيّ (سطحُ المكتب)
 *   • البنية: رأسٌ ثم زرُّ الطيِّ في شريطٍ مُصمَتٍ مستقلّ لا يتحرّك، والقائمةُ وحدَها تُمرَّر تحتَه —
 *     فلا يمرُّ عنصرٌ خلفَ الزرّ ولا فوقَه.
 *   • الألوان: النهاريُّ أبيضُ بنصٍّ كحليٍّ وتحديدٍ فيروزيٍّ هادئ (كقائمةِ الصفحةِ الرئيسية)،
 *     والليليُّ كحليٌّ كما هو.
 * ===================================================================== */
.t2.t2-app > .t2-side { --sd-bg: #FFFFFF; --sd-line: #D4DEEA; --sd-ink: #0A1F44; --sd-mute: #5B6B82; --sd-hov: #F2F6FA;
  --sd-on: #E3F4F5; --sd-on-ring: rgba(10, 165, 173, .38); --sd-accent: #0AA5AD; }
html.theme .t2.t2-app > .t2-side { --sd-bg: #0A1F44; --sd-line: rgba(255, 255, 255, .10); --sd-ink: rgba(255, 255, 255, .88); --sd-mute: rgba(255, 255, 255, .6);
  --sd-hov: rgba(255, 255, 255, .07); --sd-on: rgba(10, 165, 173, .22); --sd-on-ring: rgba(10, 165, 173, .5); --sd-accent: #2FD0C0; }
@media (min-width: 64.01rem) {
  .t2.t2-app > .t2-side { display: flex; flex-direction: column; gap: 0; overflow: hidden; padding-block: 0 8px; }
  .t2.t2-app > .t2-side > .t2-side-h { flex: none; }
  .t2.t2-app > .t2-side > .t2-side-top { flex: none; order: -1; position: relative; inset: auto; z-index: 3; display: block;
    margin: 0; padding: 12px 2px 10px; border: 0; border-block-end: 1px solid var(--sd-line); background: var(--sd-bg);
    box-shadow: 0 8px 12px -12px rgba(10, 31, 68, .45); }
  .t2.t2-app > .t2-side > .t2-side-n { flex: 1 1 auto; min-block-size: 0; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain;
    padding-block: 10px 6px; scrollbar-width: thin; scrollbar-color: var(--sd-line) transparent; }
  .t2.t2-app > .t2-side .t2-side-top .t2-side-t { display: flex; align-items: center; justify-content: flex-start; gap: 10px; inline-size: 100%;
    min-block-size: 40px; padding: 0 12px; border: 1px solid var(--sd-line) !important; border-radius: 12px; background: transparent !important;
    color: var(--sd-ink) !important; font: 700 .86rem/1 var(--t2-ff-display); cursor: pointer; }
  .t2.t2-app > .t2-side .t2-side-top .t2-side-t:hover { border-color: var(--sd-accent) !important; background: var(--sd-hov) !important; }
  .t2.t2-app > .t2-side .t2-side-top .t2-side-t .t2-chev { transform: rotate(90deg); }
  .t2.t2-app > .t2-side.is-min .t2-side-top .t2-side-t .t2-chev { transform: rotate(-90deg); }
  .t2.t2-app > .t2-side.is-min .t2-side-top .t2-side-t { justify-content: center; padding: 0; }
  .t2.t2-app > .t2-side .t2-side-top .t2-side-t-l { display: inline; }
  .t2.t2-app > .t2-side.is-min .t2-side-top .t2-side-t-l { display: none; }

  /* الألوان من المتغيّراتِ أعلاه في الوضعين */
  .t2.t2-app > .t2-side, .t2 .t2-side.is-min { background: var(--sd-bg); color: var(--sd-ink); border: 0; border-inline-end: 1px solid var(--sd-line); }
  html.theme .t2.t2-app > .t2-side, html.theme .t2 .t2-side.is-min { background: linear-gradient(180deg, #0A1F44, #07142A); }
  .t2.t2-app > .t2-side .t2-side-gh { color: var(--sd-mute); background: transparent; }
  .t2.t2-app > .t2-side .t2-side-gh:hover { color: var(--sd-ink); background: var(--sd-hov); }
  .t2.t2-app > .t2-side .t2-side-i { color: var(--sd-ink); background: transparent; box-shadow: none; }
  .t2.t2-app > .t2-side .t2-side-i:hover { background: var(--sd-hov); color: var(--sd-ink); }
  .t2.t2-app > .t2-side .t2-side-i.is-on { background: var(--sd-on); color: var(--sd-ink); box-shadow: inset 0 0 0 1px var(--sd-on-ring); }
  .t2.t2-app > .t2-side .t2-side-i.is-on::before { background: var(--sd-accent); }
  .t2.t2-app > .t2-side .t2-side-g + .t2-side-g { border-top: 1px solid var(--sd-line); }
  .t2.t2-app > .t2-side.is-min .t2-side-mark { border-bottom-color: var(--sd-line); }
}

/* =====================================================================
 * v12 — الوضعُ الليلي: لا تمريرَ ولا تركيزَ يُنتجُ سطحًا فاتحًا أو نصًّا غيرَ مقروء.
 * القاعدةُ عامة: كلُّ سطحٍ تفاعليٍّ يأخذُ عند التمرير درجةً أفتحَ قليلًا من سطحِه الداكن،
 * ويبقى نصُّه بلونِ الحبرِ الفاتح.
 * ===================================================================== */
html.theme .t2 :is(.t2-card, .t2-grid > .t2-card, .t2-act-i, .t2-tile, .t2-tl-i, .t2-vf-i, .t2-sw-item, .t2-cmd-i, .t2-fl-chip, .t2-tab, .t2-docrow):not([disabled]):not(.is-on):not([aria-selected="true"]):not([aria-current="page"]):hover {
  background: var(--t2-hover) !important; color: var(--t2-ink); border-color: var(--t2-hover-line);
}
html.theme .t2 :is(.t2-card, .t2-act-i, .t2-tile):hover :is(.t2-card-t, .t2-card-d, .t2-act-it, .t2-act-d, h3, h4, p, span:not(.t2-pill):not(.t2-card-badge)) { color: inherit; }
html.theme .t2 :is(.t2-card, .t2-act-i):hover .t2-card-t { color: var(--t2-brand-3); }
html.theme .t2 :is(.t2-btn:not(.is-primary):not(.is-danger), .t2-ibtn, .t2-hbtn:not(.is-out), .t2-back, .t2-crumb-a, .t2-pager button, .t2-hwho):hover {
  background: var(--t2-hover) !important; color: var(--t2-ink) !important; border-color: var(--t2-hover-line) !important;
}
html.theme[dir="rtl"] .t2 select.t2-input:not([multiple]):is(:hover, :focus, :active, :focus-visible), html.theme[dir="rtl"] .t2 select.t2-country-code:is(:hover, :focus, :active, :focus-visible), html.theme[dir="rtl"] select.t2-country-code:is(:hover, :focus, :active, :focus-visible), html.theme .t2 select.t2-country-code.t2-input:is(:focus, :active) { background-color: var(--t2-input); background-image: var(--t2-chev); color: var(--t2-ink); }
html.theme .t2-auth :is(input, select, textarea).t2-input:focus { background: var(--t2-input, #0D1F3C); color: var(--t2-ink, #E8EEF8); }
html.theme .t2-auth :is(.t2-btn:not(.is-primary):not(.t2-password-toggle), .t2-btn-secondary):hover { background: #16324A; color: #E8EEF8; }
html.theme :is(.t2-btn-ghost):hover { background: #16304F; color: #E8EEF8; }

/* =====================================================================
 * v12 — تبديلُ الدورِ بلا شاشةِ تحميل: المحتوى الحاليُّ يبقى هادئًا تحتَ شريطِ تقدّمٍ رفيع،
 * وشارةُ الدورِ في الترويسةِ تُظهرُ الانشغال، ثم يُستبدَلُ المحتوى مرّةً واحدةً بلا حركةِ ظهور.
 * ===================================================================== */
html.t2-switching .t2.t2-app > .t2-head::after { content: ""; position: absolute; inset-inline: 0; inset-block-end: -1px; block-size: 3px; z-index: 5;
  background: linear-gradient(90deg, transparent, var(--t2-brand), transparent) no-repeat; background-size: 40% 100%; animation: t2-sw-bar 1.1s linear infinite; }
html.t2-switching .t2.t2-app > .t2-main { opacity: .55; pointer-events: none; transition: opacity .18s ease; }
html.t2-switching .t2 .t2-hwho { cursor: progress; }
html.t2-switching .t2 .t2-hwho .t2-hwho-r::after { content: ""; display: inline-block; inline-size: 10px; block-size: 10px; margin-inline-start: 6px; vertical-align: -1px;
  border: 2px solid currentColor; border-inline-end-color: transparent; border-radius: 50%; animation: t2-sw-spin .7s linear infinite; }
@keyframes t2-sw-bar { from { background-position: -40% 0; } to { background-position: 140% 0; } }
@keyframes t2-sw-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { html.t2-switching .t2.t2-app > .t2-head::after, html.t2-switching .t2 .t2-hwho .t2-hwho-r::after { animation: none; } }

/* =====================================================================
 * v12 — الخطوطُ في كلِّ مكان: IBM Plex Sans Arabic للنصِّ والحقولِ والجداولِ والنوافذ،
 * وAlexandria للعناوينِ والأزرارِ والأرقام. سُلَّمٌ واحدٌ للأحجام (الرئيسية)، والأسماءُ القديمةُ أسماءٌ بديلةٌ له فقط.
 * ===================================================================== */
body, .t2, .t2-auth, .t2-dlg2, .t2-drawer, .t2-modal, .t2-cmd-bd, .toast, [id^="screen-"], .t2 :is(input, select, textarea, option, optgroup, label, legend, table, caption, td, p, li, dd, dt, small, code, kbd, pre, samp, blockquote), :is(.t2-dlg2, .t2-drawer, .t2-modal, .t2-cmd-bd) :is(input, select, textarea, option, label, td, p, li, code, kbd) { font-family: var(--t2-ff-text); }
.t2 :is(h1, h2, h3, h4, h5, h6, th, .t2-btn, .t2-phead-t, .t2-group-t, .t2-card-t, .t2-sec-t, .t2-side-l, .t2-side-gh, .t2-tab, .t2-sc-l, .t2-stp-l, .t2-dash-t, .t2-act-t, .t2-act-it, .t2-vf-pt, .t2-fm-title, .t2-fm-sec-t, .t2-fm-acc-t), :is(.t2-dlg2, .t2-drawer, .t2-modal) :is(h1, h2, h3, h4, .t2-btn, th) { font-family: var(--t2-ff-display); }
.t2 :is(input, select, textarea, button) { letter-spacing: 0; }
@media (max-width: 40rem) { .t2 :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { font-size: 16px; } }

/* =====================================================================
 * v12 — المسار (Breadcrumb): أيقونةُ بداية، أقسامٌ قابلةٌ للنقر بخطِّ النصّ، سهمٌ صغيرٌ فاصل،
 * والصفحةُ الحاليةُ شارةٌ هادئةٌ بلونِ الهوية. يلتفُّ على الجوالِ بلا تمريرٍ أفقيّ.
 * ===================================================================== */

/* =====================================================================
 * v12 — مُتتبِّعُ المراحل (مسودة · مقدَّم · تم الاستلام · قيد المراجعة …)
 * ===================================================================== */
.t2 .t2-stp { --stp-d: 34px; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 0; margin: 14px 0 4px; padding: 0; list-style: none; counter-reset: none; }
.t2 .t2-stp-i { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; min-inline-size: 0; padding-inline: 4px; text-align: center; color: var(--t2-muted); }
.t2 .t2-stp-i + .t2-stp-i::before { content: ""; position: absolute; z-index: 0; inset-block-start: calc(var(--stp-d) / 2 - 2px); block-size: 4px; border-radius: 4px;
  inset-inline-start: calc(-50% + var(--stp-d) / 2 + 6px); inset-inline-end: calc(50% + var(--stp-d) / 2 + 6px); background: var(--t2-line); }
.t2 .t2-stp-i.is-done + .t2-stp-i::before, .t2 .t2-stp-i.is-done + .t2-stp-i.is-now::before { background: var(--t2-brand); }
.t2 .t2-stp-m { position: relative; z-index: 1; display: grid; place-items: center; inline-size: var(--stp-d); block-size: var(--stp-d); border-radius: 50%;
  border: 2px solid var(--t2-line-2); background: var(--t2-surface); color: var(--t2-muted); font: 700 .86rem/1 var(--t2-ff-display); }
.t2 .t2-stp-l { font: 600 var(--t2-t-small)/1.45 var(--t2-ff-text); color: inherit; overflow-wrap: anywhere; }
.t2 .t2-stp-s { font: 600 .72rem/1.3 var(--t2-ff-text); color: var(--t2-brand-2); }
.t2 .t2-stp-i.is-done { color: var(--t2-ink-2); }
.t2 .t2-stp-i.is-done .t2-stp-m { border-color: var(--t2-brand); background: var(--t2-brand); color: #fff; }
.t2 .t2-stp-i.is-done .t2-stp-m::before { content: ""; inline-size: 12px; block-size: 7px; margin-block-start: -3px; border-left: 2.5px solid currentColor; border-bottom: 2.5px solid currentColor; transform: rotate(-45deg); }
.t2 .t2-stp-i.is-now { color: var(--t2-ink); }
.t2 .t2-stp-i.is-now .t2-stp-l { font-weight: 700; }
.t2 .t2-stp-i.is-now .t2-stp-m { border-color: var(--t2-brand); color: var(--t2-brand-3); background: var(--t2-brand-wash);
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--t2-brand) 18%, transparent); }
.t2 .t2-stp-i.is-bad { color: var(--t2-danger); }
.t2 .t2-stp-i.is-bad .t2-stp-m { border-color: var(--t2-danger); background: var(--t2-danger-wash); color: var(--t2-danger); }
html.theme .t2 .t2-stp-i.is-done .t2-stp-m { color: var(--t2-brand-ink); }
@media (max-width: 30rem) {
  .t2 .t2-stp { --stp-d: 28px; }
  .t2 .t2-stp-l { font-size: .74rem; }
  .t2 .t2-stp-s { display: none; }
}

/* =====================================================================
 * v12 — «لوحتي»: هيكلٌ ثابتٌ لكلِّ الأدوار. صفوفُ الأرقامِ تلتفُّ بلا بطاقةٍ يتيمةٍ ضيّقة،
 * والمؤشّراتُ الماليةُ بطاقاتٌ بنفسِ قالبِ مؤشّراتِ العمل (أيقونة · عنوان · رقمٌ بارز · سطرٌ مساعد).
 * ===================================================================== */
.t2 .t2-fin { display: flex; flex-wrap: wrap; gap: 12px; }
.t2 .t2-fin > .t2-fin-i { flex: 1 1 12rem; min-inline-size: 0; }
.t2 .t2-fin > :is(.t2-empty, .t2-skel, .t2-err, .t2-state) { flex: 1 1 100%; }
.t2 .t2-fin-i { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 12px; padding: 14px 16px; text-align: start;
  border: 1px solid var(--t2-line); border-radius: var(--t2-radius-card, 16px); background: var(--t2-surface); color: var(--t2-ink); box-shadow: var(--t2-sh-1); overflow: hidden; font: inherit; }
.t2 .t2-fin-i::after { content: ""; position: absolute; inset-inline: 0; inset-block-start: 0; block-size: 3px; background: linear-gradient(90deg, #0AA5AD, #0A1F44); opacity: .55; }
.t2 .t2-fin-i.is-ok::after { background: linear-gradient(90deg, #2FB37A, #067A82); }
.t2 .t2-fin-i.is-warn::after { background: linear-gradient(90deg, #F0962A, #A15C05); }
.t2 .t2-fin-i.is-click { cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, border-color .15s ease; }
.t2 .t2-fin-i.is-click:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--t2-brand) 45%, var(--t2-line)); box-shadow: var(--t2-sh-2); }
.t2 .t2-fin-i.is-click:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-fin-ic { display: grid; place-items: center; inline-size: 2.6rem; block-size: 2.6rem; border-radius: 12px; background: var(--t2-brand-wash); line-height: 0; }
.t2 .t2-fin-i.is-warn .t2-fin-ic { background: var(--t2-warn-wash); }
.t2 .t2-fin-i.is-ok .t2-fin-ic { background: var(--t2-ok-wash); }
.t2 .t2-fin-tx { display: grid; gap: 2px; min-inline-size: 0; }
.t2 .t2-fin-k { font: 600 var(--t2-t-small)/1.5 var(--t2-ff-text); color: var(--t2-muted); }
.t2 .t2-fin-v { font: 700 1.3rem/1.3 var(--t2-ff-display); color: var(--t2-ink); direction: ltr; unicode-bidi: isolate; text-align: end; justify-self: start; overflow-wrap: anywhere; }
.t2 .t2-fin-s { font: 500 var(--t2-t-caption)/1.5 var(--t2-ff-text); color: var(--t2-muted); }
html.theme .t2 .t2-fin-i.is-click:hover { background: var(--t2-hover); }
@media (max-width: 40rem) {
  .t2 .t2-fin > .t2-fin-i { flex-basis: calc(50% - 6px); }
  .t2 .t2-fin-i { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 12px; }
  .t2 .t2-fin-v { font-size: 1.1rem; }
}
.t2 .t2-dash.is-cmd .t2-dash-grid.is-one { grid-template-columns: minmax(0, 1fr); }
.t2 .t2-dash .t2-abar, .t2 .t2-sec:has(.t2-fin) .t2-abar { position: static; box-shadow: none; }

/* ===== v12 (i): أيقوناتُ الأزرار — البلاطةُ داخلَ الزرِّ بحجمِ السطر لا بحجمِ البطاقة ===== */
.t2 .t2-btn svg.t2-tile { inline-size: 20px; }
.t2 .t2-btn.is-sm svg.t2-tile { inline-size: 18px; }
.t2 .t2-ibtn svg.t2-tile { inline-size: 24px; }

/* ===== v12 (j): محرّرُ النماذج (fm-template) — أقسامٌ كبطاقاتٍ مطويّة، وصفوفُ الحقولِ قائمةٌ مقسَّمة ===== */
.t2 .t2-fm-accs { gap: 10px; }
.t2 .t2-fm-acc { border: 1px solid var(--t2-line); border-radius: 14px; background: var(--t2-surface); box-shadow: var(--t2-sh-1); overflow: hidden; }
.t2 .t2-fm-acc-h { gap: 10px; min-block-size: 54px; padding: 12px 16px; transition: background-color .15s ease; }
.t2 .t2-fm-acc-h:hover { background: var(--t2-surface-2); }
.t2 .t2-fm-acc[open] > .t2-fm-acc-h { border-block-end: 1px solid var(--t2-line); box-shadow: inset -3px 0 0 var(--t2-brand); }
.t2 .t2-fm-acc-t { font-family: var(--t2-ff-display); font-size: var(--t2-t-label); font-weight: 600; color: var(--t2-ink); }
.t2 .t2-fm-acc-b { padding: 4px 16px 14px; }
.t2 .t2-fm-acc-b > :is(.t2-btn, .t2-row-wrap):last-child { margin-block-start: 10px; }
.t2 .t2-fm-rows { gap: 0; }
.t2 .t2-fm-row { gap: 10px 14px; padding: 12px 4px; border: 0; border-radius: 0; background: transparent; }
.t2 .t2-fm-row + .t2-fm-row { border-block-start: 1px solid var(--t2-line); }
.t2 .t2-fm-row:hover { background: var(--t2-surface-2); }
.t2 .t2-fm-row.is-off { background: transparent; opacity: .72; }
.t2 .t2-fm-row-b { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 10px; }
.t2 .t2-fm-row-b > .t2-fm-row-t { flex: 0 1 auto; font-size: var(--t2-t-label); }
.t2 .t2-fm-row-b > .t2-fm-row-m {
  display: inline-flex; align-items: center; min-block-size: 24px; padding: 0 10px; border-radius: 999px;
  background: var(--t2-surface-3); color: var(--t2-ink-2); font-size: var(--t2-t-caption); line-height: 1.6;
}
.t2 .t2-fm-block, .t2 .t2-fm-box { border-radius: 14px; box-shadow: var(--t2-sh-1); }
.t2 .t2-fm-box-t { font-family: var(--t2-ff-display); }
.t2 .t2-fm-head { gap: 12px; padding-block-end: 14px; }
.t2 .t2-fm-sec-h { margin-block-start: 6px; }
.t2 .t2-fm-sec-t { font-family: var(--t2-ff-display); font-size: var(--t2-fs-lg); color: var(--t2-ink); }
.t2 .t2-fm-savebar { box-shadow: var(--t2-sh-2); }
html.theme .t2 .t2-fm-row-b > .t2-fm-row-m { background: var(--t2-surface-3); color: var(--t2-ink-2); }

/* ===== v12 (k): قوالبُ العقود — بطاقاتٌ مجمَّعةٌ بالحالة ===== */
.t2 .t2-tplq { max-inline-size: 30rem; }
.t2 .t2-tplq .t2-input { inline-size: 100%; }
.t2 .t2-tplw { display: flex; flex-direction: column; gap: 22px; }
.t2 .t2-tplg { display: flex; flex-direction: column; gap: 12px; }
.t2 .t2-tplg[hidden], .t2 .t2-tplc[hidden], .t2 .t2-tplw-none[hidden] { display: none; }
.t2 .t2-tplg-t { display: flex; align-items: center; gap: 10px; margin: 0; font-family: var(--t2-ff-display); font-size: var(--t2-fs-lg); font-weight: 600; color: var(--t2-ink); }
.t2 .t2-tplg-n { min-inline-size: 1.7rem; padding: 0 8px; border-radius: 999px; background: var(--t2-brand-wash); color: var(--t2-brand-3); font-size: var(--t2-t-caption); text-align: center; line-height: 1.7rem; }
.t2 .t2-tplg-l { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 19rem), 1fr)); gap: 14px; }
.t2 .t2-tplc {
  position: relative; display: flex; flex-direction: column; gap: 12px; min-inline-size: 0; padding: 16px 18px 14px;
  border: 1px solid var(--t2-line); border-radius: 16px; background: var(--t2-surface); box-shadow: var(--t2-sh-1);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.t2 .t2-tplc::before { content: ''; position: absolute; inset-block: 14px; inset-inline-start: 0; inline-size: 3px; border-radius: 0 3px 3px 0; background: var(--t2-line-2); }
.t2 .t2-tplc.is-active::before { background: var(--t2-brand); }
.t2 .t2-tplc.is-disabled::before { background: var(--t2-warn); }
.t2 .t2-tplc:hover { border-color: var(--t2-line-2); box-shadow: var(--t2-sh-2); }
.t2 .t2-tplc-h { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.t2 .t2-tplc-t { margin: 0; min-inline-size: 0; font-family: var(--t2-ff-display); font-size: var(--t2-t-body); font-weight: 600; line-height: 1.55; color: var(--t2-ink); overflow-wrap: anywhere; }
.t2 .t2-tplc-m { display: flex; flex-wrap: wrap; gap: 6px; }
.t2 .t2-tplc-chip { display: inline-flex; align-items: center; gap: 6px; min-block-size: 26px; padding: 0 10px; border-radius: 999px; background: var(--t2-surface-2); border: 1px solid var(--t2-line); font-size: var(--t2-t-caption); }
.t2 .t2-tplc-k { color: var(--t2-muted); }
.t2 .t2-tplc-v { color: var(--t2-ink); font-weight: 600; }
.t2 .t2-tplc-chip.is-ok .t2-tplc-v { color: var(--t2-ok); }
.t2 .t2-tplc-chip.is-warn .t2-tplc-v { color: var(--t2-warn); }
.t2 .t2-tplc-f { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-block-start: auto; padding-block-start: 10px; border-block-start: 1px dashed var(--t2-line); }
.t2 .t2-tplc-d { font-size: var(--t2-t-caption); color: var(--t2-muted); }
.t2 .t2-tplw-none { margin: 0; padding: 18px; border: 1px dashed var(--t2-line); border-radius: 14px; text-align: center; color: var(--t2-muted); }

/* ===== v12 (l): متنُ العقدِ داخلَ اللوحة (.t2-doc) — تباعدٌ ثابتٌ بين الفقرات ومحاذاةٌ مضبوطة ===== */
.t2 .t2-doc { max-inline-size: 75ch; line-height: 1.95; color: var(--t2-ink); text-align: justify; text-justify: inter-word; text-wrap: pretty; }
.t2 .t2-doc > * { margin: 0; }
.t2 .t2-doc > * + * { margin-block-start: .8em; }
.t2 .t2-doc p, .t2 .t2-doc li { text-align: inherit; }
.t2 .t2-doc p + p { margin-block-start: .8em; }
.t2 .t2-doc :is(h2, h3, h4) { margin-block: 1.2em .4em; font-family: var(--t2-ff-display); text-align: start; line-height: 1.5; }
.t2 .t2-doc :is(ul, ol) { padding-inline-start: 1.6em; }
.t2 .t2-doc li + li { margin-block-start: .35em; }
.t2 .t2-doc table { inline-size: 100%; border-collapse: collapse; }
.t2 .t2-doc :is(th, td) { padding: .45em .7em; border: 1px solid var(--t2-line); text-align: start; }
.t2 .t2-doc-h { margin: 0 0 .6em; font-family: var(--t2-ff-display); font-size: var(--t2-t-label); font-weight: 600; color: var(--t2-ink); }

/* ===== v12 (m): الجوال ٣٩٠px — رأسٌ لا يفيض، ودرجُ «المزيد» مخفيٌّ فعلًا حين يُغلَق ===== */
@media (max-width: 40rem) {
  .t2.t2-app > .t2-head.is-v3 { gap: 6px; padding-inline: 8px; }
  .t2.t2-app > .t2-head .t2-hd-brand { flex: 0 1 auto; min-inline-size: 0; max-inline-size: 84px; }
  .t2.t2-app > .t2-head .t2-hcmd { flex: 0 0 36px; inline-size: 36px; min-inline-size: 36px; block-size: 36px; padding: 0; justify-content: center; }
  .t2.t2-app > .t2-head .t2-hcmd-t, .t2.t2-app > .t2-head .t2-hcmd .t2-kbd { display: none; }
  .t2.t2-app > .t2-head .t2-hd-r { flex: 0 1 auto; gap: 2px; min-inline-size: 0; }
  .t2.t2-app > .t2-head .t2-hbtn { inline-size: 36px; min-inline-size: 36px; padding: 0; }
  .t2.t2-app > .t2-head .t2-hbtn.is-out { margin: 0; }
  .t2.t2-app > .t2-head .t2-hwho-w { flex: 0 1 auto; min-inline-size: 0; }
  .t2.t2-app > .t2-head .t2-hwho { min-inline-size: 0; max-inline-size: 100%; }
  .t2.t2-app > .t2-side .t2-side-gb .t2-side-i { display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; }
  .t2.t2-app > .t2-side .t2-side-gb .t2-side-i .t2-side-l { inline-size: 100%; font-size: .78rem; line-height: 1.45; overflow-wrap: normal; word-break: normal; hyphens: none; }
  .t2.t2-app > .t2-side .t2-side-gb .t2-side-i .t2-side-c { position: absolute; inset-block-start: 6px; inset-inline-end: 6px; }
  html:not(.t2-drawer-on) .t2.t2-app > .t2-side { visibility: hidden; transition: transform .24s ease, visibility 0s linear .24s; }
  html.t2-drawer-on .t2.t2-app > .t2-side { visibility: visible; transition: transform .24s ease, visibility 0s; }
}

/* ===== v12 (n): الحوارُ الموحَّد — الصندوقُ يحملُ الصنفَ .t2 فكان يرثُ خلفيّةَ الصفحةِ المعتمة
   ويُخفي الصفحةَ كلَّها خلفَ الحوار. الخلفيّةُ للستارةِ (.t2-scrim2) وحدَها، والصندوقُ شفّاف. ===== */
.t2.t2-dlg2 { background: transparent; min-block-size: 0; }

/* ===== v12 (o): بطاقةُ مهلةِ المسودة (me-verify) ===== */
.t2 .t2-reg-draft-card.t2-hold { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 16px 18px; border: 1px solid var(--t2-line); border-radius: 16px; background: var(--t2-surface); box-shadow: var(--t2-sh-1); color: var(--t2-ink); }
.t2 .t2-hold-h { display: flex; align-items: center; gap: 10px; }
.t2 .t2-hold-ic { position: relative; flex: none; inline-size: 34px; block-size: 34px; border-radius: 10px; background: var(--t2-warn-wash); }
.t2 .t2-hold-ic::before { content: ''; position: absolute; inset: 8px; border: 2px solid var(--t2-warn); border-radius: 50%; }
.t2 .t2-hold-ic::after { content: ''; position: absolute; inset-block-start: 12px; inset-inline-start: 16px; inline-size: 5px; block-size: 6px; border-inline-start: 2px solid var(--t2-warn); border-block-end: 2px solid var(--t2-warn); }
.t2 .t2-reg-draft-card.t2-hold .t2-reg-draft-title { margin: 0; font-family: var(--t2-ff-display); font-size: var(--t2-t-label); font-weight: 600; color: var(--t2-ink); }
.t2 .t2-hold-bar { block-size: 6px; border-radius: 99px; background: var(--t2-surface-3); overflow: hidden; }
.t2 .t2-hold-bar > i { display: block; block-size: 100%; border-radius: inherit; background: var(--t2-warn); }
.t2 .t2-reg-draft-meta.t2-hold-m { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.t2 .t2-reg-draft-meta.t2-hold-m > div { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 10px 12px; border: 1px solid var(--t2-line); border-radius: 12px; background: var(--t2-surface-2); }
.t2 .t2-reg-draft-meta.t2-hold-m dt { font-size: var(--t2-t-caption); color: var(--t2-muted); white-space: normal; }
.t2 .t2-reg-draft-meta.t2-hold-m dd { margin: 0; font-size: var(--t2-t-small); font-weight: 600; color: var(--t2-ink); text-align: start; }
.t2 .t2-reg-draft-meta.t2-hold-m > div.is-left, .t2 .t2-reg-draft-meta.t2-hold-m > div.is-due { border-color: color-mix(in srgb, var(--t2-warn) 35%, var(--t2-line)); background: var(--t2-warn-wash); }
.t2 .t2-reg-draft-meta.t2-hold-m > div.is-left dd, .t2 .t2-reg-draft-meta.t2-hold-m > div.is-due dd { color: var(--t2-warn); }
html.theme .t2 .t2-reg-draft-card.t2-hold { background: var(--t2-surface) !important; }
html.theme .t2 .t2-reg-draft-meta.t2-hold-m > div.is-left, html.theme .t2 .t2-reg-draft-meta.t2-hold-m > div:last-child { background: var(--t2-warn-wash); border-color: color-mix(in srgb, var(--t2-warn) 35%, var(--t2-line)); }
html.theme .t2 .t2-reg-draft-meta.t2-hold-m > div.is-left dd { color: var(--t2-warn); }
@media (max-width: 40rem) { .t2 .t2-reg-draft-meta.t2-hold-m { grid-template-columns: minmax(0, 1fr); } }

/* ===== (p) v13: أيقوناتُ السطر — أُسرةٌ واحدة (uiIcon، Phosphor) بلونِ النصّ ===== */
.t2-ui-ic { display: inline-block; flex: none; vertical-align: -.16em; }
:is(.t2-x, .t2-note-x, .t2-toast-x, .t2-fl-x, .t2-sheet-x, .tgm-x, .t2-fl-dir, .t2-fx-eye) { display: inline-grid; place-items: center; line-height: 0; }
.t2-file-ic, .t2-dp-i, .t2-hwho-c { display: inline-grid; place-items: center; }

/* ===== (q) v13: مكوّنُ الجدولِ الموحَّد — المصدرُ الوحيدُ لقواعدِ .t2-table (حُذفت طبقاتُه من theme/brand) =====
 * رأسٌ ثابتٌ داخلَ حاويةِ التمرير، محاذاةٌ واضحة (النصُّ للبداية، الأرقامُ والإجراءاتُ للنهاية)،
 * تظليلُ مرورٍ مقروءٌ في الوضعين، مؤشّراتُ فرز، إجراءاتٌ مدمجة، وبطاقاتٌ على الجوال. */
.t2 .t2-tablewrap {
  --tb-hover: color-mix(in srgb, var(--t2-brand) 8%, var(--t2-surface));
  --tb-zebra: color-mix(in srgb, var(--t2-surface-2) 65%, var(--t2-surface));
  background: var(--t2-surface); border: 1px solid var(--t2-line); border-radius: var(--t2-radius-card, 16px);
  box-shadow: var(--t2-sh-1); overflow: auto; -webkit-overflow-scrolling: touch; max-block-size: min(70vh, 44rem);
}
html.theme .t2 .t2-tablewrap { --tb-hover: color-mix(in srgb, var(--t2-brand) 16%, var(--t2-surface)); --tb-zebra: color-mix(in srgb, #fff 3%, var(--t2-surface)); }
.t2 .t2-table { inline-size: 100%; border-collapse: separate; border-spacing: 0; font-size: .9rem; color: var(--t2-ink); }
.t2 .t2-table thead th {
  position: sticky; inset-block-start: 0; z-index: 2;
  background: var(--t2-surface-3); color: var(--t2-ink-2);
  font-family: var(--t2-ff-display); font-size: .78rem; font-weight: 700; letter-spacing: 0;
  text-align: start; white-space: nowrap; padding: 10px 14px; border-block-end: 1px solid var(--t2-line-2);
}
.t2 .t2-table tbody td { padding: 10px 14px; border-block-end: 1px solid var(--t2-line); vertical-align: middle; line-height: 1.55; color: var(--t2-ink); background: var(--t2-surface); font-variant-numeric: tabular-nums; }
.t2 .t2-table tbody tr:nth-child(even) td { background: var(--tb-zebra); }
.t2 .t2-table tbody tr:last-child td { border-block-end: 0; }
.t2 .t2-table tbody tr { transition: background var(--t2-d1, .15s) var(--t2-ease, ease); }
.t2 .t2-table tbody tr:hover td { background: var(--tb-hover); color: var(--t2-ink); }
.t2 .t2-table tbody tr.is-click { cursor: pointer; }
.t2 .t2-table tbody tr.is-click:hover td:first-child, .t2 .t2-table tbody tr.is-on td:first-child { box-shadow: inset -3px 0 0 var(--t2-brand); }
.t2 .t2-table tbody tr.is-on td { background: var(--t2-brand-wash); }
.t2 .t2-table tbody tr.is-click:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: -2px; }
/* المحاذاة: رأسُ العمودِ يتبعُ خلاياه (tablefit/ds تُعلِّمُ th بـ is-num/is-act) */
.t2 .t2-table :is(td, th).is-num { text-align: end; white-space: nowrap; }
.t2 .t2-table :is(td, th).is-date { white-space: nowrap; color: var(--t2-ink-2); }
.t2 .t2-table td :is(time, .t2-pill, code, .t2-code, .t2-badge, .t2-btn) { white-space: nowrap; }
/* عمودُ الإجراءات: ثابتٌ في طرفِ الصفّ، أزرارٌ مدمجة */
.t2 .t2-table :is(td, th).is-act { text-align: end; white-space: nowrap; inline-size: 1%; position: sticky; inset-inline-end: 0; }
.t2 .t2-table thead th.is-act { z-index: 3; }
.t2 .t2-table td.is-act { display: table-cell; }
.t2 .t2-table td.is-act > * + * { margin-inline-start: 6px; }
.t2 .t2-table td.is-act .t2-btn { min-block-size: 30px; padding: 4px 10px; font-size: .8rem; border-radius: 10px; }
.t2 .t2-table td.is-act .t2-row-wrap { display: inline-flex; flex-wrap: nowrap; justify-content: flex-end; gap: 6px; }
.t2 .t2-table .t2-input { min-inline-size: 5.5rem; padding: .24rem .45rem; font-size: var(--t2-fs-xs); }
/* الفرز: الرأسُ زرٌّ، والمؤشّرُ سهمانِ خافتان أو سهمٌ واحدٌ بلونِ العلامة */
.t2 .t2-table th.t2-th-s { cursor: pointer; user-select: none; transition: color var(--t2-d1, .15s), background var(--t2-d1, .15s); }
.t2 .t2-table th.t2-th-s:hover { color: var(--t2-brand-3, var(--t2-brand)); background: color-mix(in srgb, var(--t2-brand) 10%, var(--t2-surface-3)); }
.t2 .t2-table th.t2-th-s.is-on { color: var(--t2-brand); }
.t2 .t2-table th.t2-th-s:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: -2px; }
/* لوحةُ الصفحةِ الرئيسيّة: الجدولُ المختصر */
.t2 .t2-dash-recent .t2-tablewrap { box-shadow: none; }
.t2 .t2-dash-recent .t2-table td { white-space: nowrap; }
.t2 .t2-dash-recent .t2-table td:nth-child(2) { white-space: normal; min-inline-size: 7rem; }
@media (min-width: 40.01rem) and (max-width: 48rem) { .t2 .t2-table { min-inline-size: 34rem; } }
/* الجوال (٣٩٠px): كلُّ صفٍّ بطاقة بعنوانِ عمودِ كلِّ خلية؛ الفرزُ من الشريطِ الموحَّد */
@media (max-width: 40rem) {
  .t2 .t2-tablewrap { max-block-size: none; }
  .t2 .t2-tablewrap:has(> .t2-table.is-stack) { overflow: visible; border: 0; background: transparent; box-shadow: none; }
  .t2 .t2-table.is-stack { display: block; min-inline-size: 0; }
  .t2 .t2-table.is-stack thead { display: none; }
  .t2 .t2-table.is-stack tbody { display: grid; gap: var(--t2-sm, 10px); }
  .t2 .t2-table.is-stack tbody tr { display: grid; gap: 4px; padding: 12px 14px; border: 1px solid var(--t2-line); border-radius: 16px; background: var(--t2-surface); box-shadow: var(--t2-sh-1); }
  .t2 .t2-table.is-stack tbody tr:hover { background: var(--tb-hover); }
  .t2 .t2-table.is-stack tbody tr.is-on { border-color: var(--t2-brand); background: var(--t2-brand-wash); }
  .t2 .t2-table.is-stack tbody td { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; min-inline-size: 0; padding: 2px 0; border: 0; background: transparent !important; box-shadow: none !important; text-align: end; overflow-wrap: anywhere; white-space: normal; position: static; }
  .t2 .t2-table.is-stack tbody td::before { content: attr(data-label); flex: none; max-inline-size: 45%; font-size: var(--t2-fs-xs); color: var(--t2-muted); text-align: start; }
  .t2 .t2-table.is-stack tbody td:not([data-label])::before { content: none; }
  .t2 .t2-table.is-stack tbody td:first-child { font-family: var(--t2-ff-display); font-weight: 700; font-size: 1rem; padding-block-end: 6px; margin-block-end: 4px; border-block-end: 1px dashed var(--t2-line); }
  .t2 .t2-table.is-stack tbody td.is-num { font-weight: 700; }
  .t2 .t2-table.is-stack tbody td.is-act { inline-size: auto; justify-content: flex-end; gap: 6px; padding-block-start: 8px; margin-block-start: 4px; border-block-start: 1px solid var(--t2-line); }
}

/* ===== (r) v13: بطاقةُ المؤشّرِ الموحَّدة (KPI) — DS.metric وkit.stat ولوحةُ الصفحةِ الرئيسيّةِ وصفحةُ الواتساب =====
 * قالبٌ واحد: لوحُ أيقونةِ الهويّة + عنوانٌ صغير + قيمةٌ كبيرة + ملاحظة، وشريطُ نسبةٍ اختياريّ.
 * النبرةُ تلوِّنُ القيمةَ فقط — لا حدودَ جانبيّةً ملوَّنة. (حُذفت طبقاتُ .t2-stat/.t2-kpi من theme/brand) */
.t2 .t2-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr)); gap: 12px; }
.t2 .t2-stat {
  position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 6px 12px;
  padding: 14px 16px; min-inline-size: 0; border-radius: var(--t2-radius-card, 16px);
  background: var(--t2-surface); border: 1px solid var(--t2-line); box-shadow: var(--t2-sh-1);
  color: var(--t2-ink); font: inherit; text-align: start;
  transition: border-color var(--t2-d1, .15s) var(--t2-ease, ease), box-shadow var(--t2-d1, .15s), transform var(--t2-d1, .15s);
}
.t2 .t2-stat:not(:has(> .t2-stat-ic)) { grid-template-columns: minmax(0, 1fr); }
.t2 .t2-stat-ic { display: grid; place-items: center; line-height: 0; }
.t2 .t2-stat-ic svg.t2-tile { inline-size: 40px; block-size: auto; }
.t2 .t2-stat-tx { display: grid; gap: 2px; min-inline-size: 0; }
.t2 .t2-stat-k { display: flex; align-items: center; gap: 6px; font-family: var(--t2-ff-text); font-size: .8rem; font-weight: 500; line-height: 1.5; color: var(--t2-muted); }
.t2 .t2-stat-row { display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.t2 .t2-stat-v { font-family: var(--t2-ff-display); font-size: clamp(1.25rem, 1.1rem + .5vw, 1.6rem); font-weight: 700; line-height: 1.25; color: var(--t2-ink); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.t2 .t2-stat-u { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-stat-n { font-size: .75rem; line-height: 1.5; color: var(--t2-muted); }
.t2 .t2-stat-n.is-dim { opacity: .8; }
.t2 .t2-stat.is-ok .t2-stat-v { color: var(--t2-ok); }
.t2 .t2-stat.is-warn .t2-stat-v { color: var(--t2-warn); }
.t2 .t2-stat.is-danger .t2-stat-v { color: var(--t2-danger); }
.t2 .t2-stat-t { display: inline-flex; align-items: center; gap: 3px; padding: 1px 7px; border-radius: 999px; font-size: .72rem; font-weight: 700; }
.t2 .t2-stat-t.is-up { background: var(--t2-ok-wash); color: var(--t2-ok); }
.t2 .t2-stat-t.is-down { background: var(--t2-danger-wash); color: var(--t2-danger); }
.t2 .t2-stat-t.is-flat { background: var(--t2-surface-3); color: var(--t2-muted); }
.t2 .t2-stat-t-n { color: var(--t2-muted); font-weight: 400; }
.t2 .t2-stat-p { grid-column: 1 / -1; block-size: 6px; border-radius: 6px; background: var(--t2-surface-3); overflow: hidden; }
.t2 .t2-stat-p-f { display: block; block-size: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--t2-brand), #2E8FD0); }
.t2 .t2-stat-s { grid-column: 1 / -1; }
.t2 .t2-stat.is-click { cursor: pointer; padding-inline-end: 34px; }
.t2 .t2-stat.is-click:hover { border-color: color-mix(in srgb, var(--t2-brand) 45%, var(--t2-line)); box-shadow: var(--t2-sh-2); transform: translateY(-2px); }
.t2 .t2-stat.is-click:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-stat-go { position: absolute; inset-inline-end: 12px; inset-block-start: 50%; translate: 0 -50%; display: inline-grid; place-items: center; color: var(--t2-muted); transition: color var(--t2-d1, .15s), transform var(--t2-d1, .15s); }
.t2 .t2-stat.is-click:hover .t2-stat-go { color: var(--t2-brand); transform: translateX(-3px); }
@media (max-width: 40rem) {
  .t2 .t2-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .t2 .t2-stat { padding: 12px; gap: 4px 10px; }
  .t2 .t2-stat-ic svg.t2-tile { inline-size: 32px; }
  .t2 .t2-stat-v { font-size: 1.2rem; }
}
@media (prefers-reduced-motion: reduce) { .t2 .t2-stat.is-click:hover { transform: none; } }

/* ===== (s) v13: قائمةُ الوصفِ الموحَّدة (DS.fields → .t2-fields.t2-desc) — جدولُ «المفتاح | القيمة» =====
 * تفاصيلُ الحساب، الأمانُ والدخول، رقمُ الواتساب ورمزُه… كلُّها صفوفُ جدولٍ واحد الشكل:
 * عمودُ المفتاحِ بخلفيّةِ رأسِ الجدول، وعمودُ القيمة، وحدودُ صفوفٍ واضحة. على الشاشاتِ العريضة عمودانِ من الصفوف. */
.t2 .t2-fields:not(.t2-desc) { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: 16px 28px; }
.t2 .t2-fields.t2-desc {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr)); gap: 0;
  border: 1px solid var(--t2-line); border-radius: 14px; overflow: hidden; background: var(--t2-surface);
}
.t2 .t2-fields.t2-desc > .t2-field {
  display: grid; grid-template-columns: minmax(7.5rem, 38%) minmax(0, 1fr); align-items: stretch; gap: 0;
  margin: 0 0 -1px; padding: 0; border: 0; border-block-end: 1px solid var(--t2-line); border-radius: 0; background: transparent; box-shadow: none; min-inline-size: 0;
}
.t2 .t2-fields.t2-desc > .t2-field:nth-child(even) { border-inline-start: 1px solid transparent; }
.t2 .t2-fields.t2-desc > .t2-field > .t2-field-k {
  display: flex; align-items: center; padding: 10px 14px; background: var(--t2-surface-3); color: var(--t2-ink-2);
  font-family: var(--t2-ff-text); font-size: .8rem; font-weight: 600; line-height: 1.5; white-space: normal; overflow-wrap: anywhere; max-inline-size: none;
}
.t2 .t2-fields.t2-desc > .t2-field > .t2-field-v {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px; padding: 10px 14px; min-inline-size: 0;
  color: var(--t2-ink); font-size: .9rem; font-weight: 600; line-height: 1.55; white-space: normal; overflow-wrap: anywhere; text-align: start; font-variant-numeric: tabular-nums;
}
.t2 .t2-fields.t2-desc > .t2-field:hover > .t2-field-v { background: color-mix(in srgb, var(--t2-brand) 6%, var(--t2-surface)); }
.t2 .t2-fields.t2-desc > .t2-field.is-empty > .t2-field-v { color: var(--t2-muted); font-weight: 500; font-size: .8rem; }
.t2 .t2-fields.t2-desc .t2-row-wrap { display: inline-flex; flex-wrap: wrap; gap: 6px; align-items: center; }
@media (min-width: 52rem) {
  /* عمودانِ من الصفوف: فاصلٌ رأسيٌّ بينهما */
  .t2 .t2-fields.t2-desc:not(:has(> :only-child)) > .t2-field:nth-child(even) { border-inline-start-color: var(--t2-line); }
}
@media (max-width: 40rem) {
  .t2 .t2-fields.t2-desc { grid-template-columns: minmax(0, 1fr); }
  .t2 .t2-fields.t2-desc > .t2-field { grid-template-columns: minmax(6.5rem, 40%) minmax(0, 1fr); }
  .t2 .t2-fields.t2-desc > .t2-field > :is(.t2-field-k, .t2-field-v) { padding: 9px 12px; }
}
.t2 .t2-grid2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 16px; align-items: start; }

/* ===== (t) v13: المسارُ (breadcrumb) بهويّةِ المنصّة — مكوّنٌ واحدٌ لكلِّ الصفحات =====
 * شريطٌ بحافّةٍ متدرِّجةٍ خفيفة: لوحُ القسم (نفسُ أيقونةِ الشريطِ الجانبيّ) + اسمُه، أسهمٌ بلونِ العلامة،
 * والصفحةُ الحاليّةُ شارةٌ معبَّأةٌ بتدرُّجِ الهويّة. يتمرَّرُ أفقيًّا على الجوالِ بلا التفاف. */
.t2 .t2-crumbs { margin: 0 0 10px; font: 500 .82rem/1.5 var(--t2-ff-text); color: var(--t2-ink-2); max-inline-size: 100%; }
.t2 .t2-crumb-ol {
  display: inline-flex; align-items: center; gap: 2px; margin: 0; padding: 4px; list-style: none; max-inline-size: 100%;
  border: 1px solid color-mix(in srgb, var(--t2-brand) 22%, var(--t2-line)); border-radius: 999px;
  background: linear-gradient(90deg, var(--t2-surface) 0%, color-mix(in srgb, var(--t2-brand) 7%, var(--t2-surface)) 100%);
  box-shadow: var(--t2-sh-1); overflow-x: auto; scrollbar-width: none; white-space: nowrap;
}
.t2 .t2-crumb-ol::-webkit-scrollbar { display: none; }
.t2 .t2-crumb-li { display: inline-flex; flex: none; min-inline-size: 0; }
.t2 .t2-crumb-a {
  display: inline-flex; align-items: center; gap: 7px; min-block-size: 30px; padding: 2px 10px; border: 0; border-radius: 999px;
  background: transparent; color: var(--t2-ink-2); font: inherit; font-weight: 600; cursor: pointer;
  transition: background var(--t2-d1, .15s), color var(--t2-d1, .15s);
}
.t2 .t2-crumb-a.is-root { padding-inline-start: 3px; }
.t2 .t2-crumb-a:hover { background: var(--t2-brand-wash); color: var(--t2-brand-3, var(--t2-brand)); }
.t2 .t2-crumb-a:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 1px; }
.t2 .t2-crumb-ic { display: inline-grid; place-items: center; line-height: 0; }
.t2 .t2-crumb-ic svg.t2-tile { inline-size: 24px; block-size: auto; }
.t2 .t2-crumb-s { display: inline-grid; place-items: center; inline-size: 16px; color: var(--t2-brand); opacity: .75; }
html[dir="ltr"] .t2 .t2-crumb-s svg { transform: scaleX(-1); }
.t2 .t2-crumb-c {
  display: inline-flex; align-items: center; min-block-size: 30px; padding: 2px 14px; border-radius: 999px;
  background: linear-gradient(135deg, #0AA5AD 0%, #06707A 100%); color: #fff;
  font-family: var(--t2-ff-display); font-weight: 700; box-shadow: 0 2px 8px color-mix(in srgb, #0AA5AD 35%, transparent);
}
html.theme .t2 .t2-crumb-ol { background: linear-gradient(90deg, var(--t2-surface) 0%, color-mix(in srgb, var(--t2-brand) 14%, var(--t2-surface)) 100%); }
.t2 .t2-crumbs.is-sub { margin: 0; font-size: .78rem; }
.t2 .t2-crumbs.is-sub .t2-crumb-ol { padding: 2px; box-shadow: none; background: var(--t2-surface); }
.t2 .t2-crumbs.is-sub .t2-crumb-a, .t2 .t2-crumbs.is-sub .t2-crumb-c { min-block-size: 26px; padding-block: 0; }
.t2 .t2-crumbs.is-sub .t2-crumb-c { background: var(--t2-brand-wash); color: var(--t2-brand-3, var(--t2-brand)); box-shadow: none; }
@media (max-width: 40rem) { .t2 .t2-crumbs { font-size: .78rem; } .t2 .t2-crumb-c, .t2 .t2-crumb-a { min-block-size: 28px; } }

/* ===== (u) v13: الصورةُ الرمزيّةُ الموحَّدة (kit.avatar) — حرفٌ واحد، دائرة، تدرُّجُ الهويّة، ثلاثةُ مقاسات ===== */
.t2-avatar {
  display: inline-grid; place-items: center; flex: none; border-radius: 50%; aspect-ratio: 1;
  background: linear-gradient(135deg, #0AA5AD 0%, #06707A 100%); color: #fff;
  font-family: var(--t2-ff-display, "Alexandria", sans-serif); font-weight: 700; line-height: 1; letter-spacing: 0;
  box-shadow: 0 0 0 2px var(--t2-surface, #fff), 0 0 0 3px color-mix(in srgb, #0AA5AD 30%, transparent);
  user-select: none;
}
.t2-avatar.is-sm { inline-size: 28px; block-size: 28px; font-size: .8rem; }
.t2-avatar.is-md { inline-size: 36px; block-size: 36px; font-size: 1rem; }
.t2-avatar.is-lg { inline-size: 56px; block-size: 56px; font-size: 1.45rem; }
.t2 .t2-hwho:hover .t2-avatar { box-shadow: 0 0 0 2px var(--t2-surface), 0 0 0 4px color-mix(in srgb, #0AA5AD 45%, transparent); }
@media (max-width: 40rem) { .t2-avatar.is-md { inline-size: 32px; block-size: 32px; font-size: .9rem; } .t2-avatar.is-lg { inline-size: 48px; block-size: 48px; font-size: 1.25rem; } }

/* ===== (v) v13: اللوحاتُ العائمة (session-geo.js: الموقع · الثقة · الإذن · تنبيهُ الخمول) — صنفٌ واحد .t2-float =====
 * تُبنى بأنماطٍ مضمَّنةٍ داكنةٍ احتياطًا للصفحاتِ القديمة؛ داخلَ البوابةِ تأخذُ رموزَ الهويّةِ فتتبعُ الوضعَ الليليَّ والنهاريّ. */
html.t2-on .t2-float {
  background: var(--t2-elev) !important; color: var(--t2-ink) !important;
  border: 1px solid var(--t2-line) !important; border-inline-start: 4px solid var(--t2-brand) !important;
  border-radius: 16px !important; padding: 16px 16px 14px !important;
  box-shadow: var(--t2-sh-3) !important;
  font-family: var(--t2-ff-text) !important; font-size: 14px !important; line-height: 1.75 !important;
  max-inline-size: min(380px, calc(100vw - 32px)) !important;
  animation: t2-toast-in .26s cubic-bezier(.2, .8, .2, 1) both;
}
html.t2-on .t2-float div { color: var(--t2-ink-2) !important; }
html.t2-on .t2-float > div:first-child { color: var(--t2-ink) !important; font-family: var(--t2-ff-display); font-weight: 700; }
html.t2-on .t2-float button {
  font-family: inherit !important; font-size: 13px !important; font-weight: 600 !important;
  min-block-size: 40px; border-radius: 10px !important; cursor: pointer;
  background: var(--t2-surface) !important; color: var(--t2-brand-2) !important; border: 1px solid var(--t2-line-2) !important;
  transition: transform .18s cubic-bezier(.2, .8, .2, 1), box-shadow .18s ease, background .12s ease;
}
html.t2-on .t2-float button.is-pri { background: linear-gradient(180deg, #0AA5AD 0%, #06707A 100%) !important; color: #fff !important; border-color: transparent !important; }
html.t2-on .t2-float button:hover { transform: translateY(-1px); box-shadow: 0 6px 14px color-mix(in srgb, var(--t2-brand) 22%, transparent); }
html.t2-on .t2-float button:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
html.t2-on .t2-float input {
  background: var(--t2-input) !important; color: var(--t2-ink) !important; border: 1px solid var(--t2-line-2) !important; border-radius: 10px !important;
  font-family: inherit !important;
}
html.t2-on .t2-float input:focus { outline: none; border-color: var(--t2-brand) !important; box-shadow: var(--t2-ring); }
@media (min-width: 64.0625rem) {
  html.t2-on .t2-float { inset-inline-start: auto !important; inset-inline-end: 16px !important; left: 16px !important; right: auto !important; }
}
@media (max-width: 64rem) { html.t2-drawer-on .t2-float { z-index: 50 !important; } }
@media (max-width: 640px) {
  html.t2-on .t2-float { inset-inline: 12px !important; bottom: 12px !important; max-inline-size: none !important; }
}

/* ===== (w) v13: الطيُّ والفتحُ الموحَّد — مؤشِّرٌ واحد .t2-chev لكلِّ الأقسامِ والبطاقاتِ والأكورديون والقائمة =====
 * الحالةُ من aria-expanded (أو open في details): مفتوحٌ = السهمُ للأسفلِ داخلَ دائرةٍ بلونِ العلامة،
 * مطويٌّ = السهمُ يدورُ نحوَ بدايةِ القراءة (يسارًا في العربية) بدائرةٍ محايدة. */
.t2 .t2-chev {
  display: inline-grid; place-items: center; flex: none; inline-size: 28px; block-size: 28px; border-radius: 999px;
  border: 1px solid var(--t2-line); background: var(--t2-surface); color: var(--t2-muted);
  transition: transform .22s var(--t2-ease), background-color .15s ease, color .15s ease, border-color .15s ease;
}
.t2 .t2-chev::before {
  content: ''; inline-size: 14px; block-size: 14px; background: currentColor;
  -webkit-mask: var(--t2-chev-m) center / contain no-repeat; mask: var(--t2-chev-m) center / contain no-repeat;
}
.t2 :is([aria-expanded="true"], details[open] > summary) > .t2-chev { transform: none; background: var(--t2-brand-wash); border-color: color-mix(in srgb, var(--t2-brand) 35%, transparent); color: var(--t2-brand-3); }
.t2 [aria-expanded="false"] > .t2-chev, .t2 details:not([open]) > summary > .t2-chev { transform: rotate(90deg); }
[dir="ltr"] .t2 [aria-expanded="false"] > .t2-chev, [dir="ltr"] .t2 details:not([open]) > summary > .t2-chev { transform: rotate(-90deg); }
.t2 :is([aria-expanded], summary):hover > .t2-chev { border-color: var(--t2-brand); color: var(--t2-brand-3); }
.t2 :is(.t2-sec-h, .t2-fold-h, .t2-fm-acc-h)[aria-expanded]:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-sec-h > .t2-chev, .t2 .t2-fold-h > .t2-chev, .t2 .t2-fm-acc-h > .t2-chev { margin-inline-start: auto; }
.t2 .t2-fold-h .t2-fold-n + .t2-chev { margin-inline-start: 10px; }
.t2 .t2-fm-acc-h { list-style: none; }
.t2 .t2-fm-acc-h::-webkit-details-marker { display: none; }
/* حالةُ الرأس: المفتوحُ يُفصَلُ عن محتواه بخطّ، والمطويُّ سطرٌ واحدٌ هادئ */
.t2 .t2-fold-h[aria-expanded="true"], .t2 .t2-fm-acc[open] > .t2-fm-acc-h { border-block-end: 1px solid var(--t2-line); }
/* القائمةُ الجانبية: نفسُ المؤشِّرِ بمقاسٍ أصغر */
.t2 .t2-side-gh > .t2-chev { inline-size: 20px; block-size: 20px; margin-inline-start: auto; border-color: transparent; background: transparent; }
.t2 .t2-side-gh > .t2-chev::before { inline-size: 12px; block-size: 12px; }
.t2 .t2-side-gh[aria-expanded="false"] > .t2-side-gh-n + .t2-chev { margin-inline-start: 6px; }
.t2 .t2-hwho[aria-expanded="true"] .t2-hwho-c { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) { .t2 .t2-chev { transition: none; } }

/* (x) التقويم الموحَّد — حقل التاريخ (datefield.js، دليل الهوية 2.0 «حقل التاريخ»):
 * الشكلُ نفسُه للميلاديِّ والهجري، في اللوحةِ وصفحاتِ الدخولِ والتسجيل، بالرموز وحدها. */
.t2-cal { display: grid; gap: var(--t2-gap-inline); }
.t2-cal-head { display: flex; align-items: center; gap: 8px; }
.t2-cal-head select { flex: 1 1 0; min-inline-size: 0; }
.t2-cal-nav {
  flex: 0 0 auto; inline-size: var(--t2-ctl-sm); block-size: var(--t2-ctl-sm);
  display: grid; place-items: center; padding: 0;
  border: 1px solid var(--t2-line-2); border-radius: var(--t2-r-xs);
  background: var(--t2-surface); color: var(--t2-ink); cursor: pointer;
}
.t2-cal-nav:hover { box-shadow: var(--t2-hover-ring); }
.t2-cal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
.t2-cal-wd { text-align: center; font-size: var(--t2-t-small); color: var(--t2-muted); padding-block: 4px; }
.t2-cal-d {
  block-size: var(--t2-ctl-sm); padding: 0;
  border: 1px solid transparent; border-radius: var(--t2-r-xs);
  background: var(--t2-surface-2); color: var(--t2-ink);
  font-family: var(--t2-ff-metric); font-variant-numeric: tabular-nums; cursor: pointer;
}
.t2-cal-d:hover { border-color: var(--t2-brand); }
.t2-cal-d.is-today { border-color: var(--t2-brand); color: var(--t2-brand-3); }
.t2-cal-d.is-sel { background: linear-gradient(135deg, var(--t2-brand-2), var(--t2-brand)); border-color: transparent; color: var(--t2-brand-ink); }
.t2-cal-d:disabled { opacity: .4; cursor: not-allowed; border-color: transparent; }
.t2-cal-d:focus-visible, .t2-cal-nav:focus-visible { outline: none; box-shadow: var(--t2-ring); }
.t2-cal-field { display: flex; align-items: center; gap: 8px; }
.t2-cal-field > input { flex: 1 1 auto; min-inline-size: 0; cursor: pointer; }
.t2-cal-field > .t2-cal-nav { inline-size: var(--t2-ctl-h); block-size: var(--t2-ctl-h); }
@media (max-width: 40rem) {
  .t2-cal-d { block-size: 44px; }
  .t2-cal-nav { inline-size: 44px; block-size: 44px; }
}

/* مسارُ أقسامِ الاستمارة في التسجيل: كلُّ قسمٍ زرٌّ للتنقّلِ الحرّ، وحالتُه «مكتمل» أو «ناقص». */
:is(.t2-auth, .t2-dlg-skin) .t2-reg-path li { padding: 0; }
.t2-reg-path .t2-reg-path-go {
  flex: 1 1 auto; min-inline-size: 0; display: flex; align-items: center; gap: 10px; min-block-size: 44px;
  padding: 8px 12px; border: 0; background: none; color: inherit; font: inherit; text-align: start; cursor: pointer;
}
.t2-reg-path .t2-reg-path-go:disabled { cursor: default; }
.t2-reg-path .t2-reg-path-go:focus-visible { outline: none; box-shadow: var(--t2-ring); border-radius: inherit; }
.t2-reg-path .t2-reg-path-st { margin-inline: auto 12px; font-size: var(--t2-t-small); font-weight: var(--t2-w-semibold); white-space: nowrap; }
.t2-reg-path .t2-reg-path-st.is-ok { color: var(--t2-ok); }
.t2-reg-path .t2-reg-path-st.is-miss { color: var(--t2-st-warn); }

/* ===== auth_72: رمزُ التحقّق بقالبٍ واحد — خاناتُ «إنشاء الحساب» مرجعُ كلِّ رموزِ المصادقة ===== */
:is(.t2-auth, .t2-dlg-skin) .t2-otp .t2-seg-b,
#screen-visitor .t2-otp .t2-seg-b { min-width: 0; min-height: 0; block-size: auto; aspect-ratio: 1; }
:is(.t2-auth, .t2-dlg-skin) .t2-otp .t2-seg-b.is-in { border-color: var(--t2-line); background: var(--t2-input); }
:is(.t2-auth, .t2-dlg-skin) .t2-otp.is-full .t2-seg-b { border-color: var(--t2-brand); background: var(--t2-brand-wash); }
:is(.t2-auth, .t2-dlg-skin) .t2-reg-digits.is-err .t2-reg-digit,
:is(.t2-auth, .t2-dlg-skin) .t2-otp.is-err .t2-seg-b { border-color: var(--t2-danger); background: var(--t2-danger-wash); }
@media (max-width: 34rem) {
  :is(.t2-auth, .t2-dlg-skin) .t2-otp.t2-seg { gap: 4px; }
}
/* حقولُ الدخولِ بعد تعبئةِ المتصفّح: سطحُ الحقلِ نفسُه، لا لونُ المتصفّح */
.t2-auth input:-webkit-autofill,
.t2-auth input:-webkit-autofill:hover {
  -webkit-text-fill-color: var(--t2-ink);
  -webkit-box-shadow: 0 0 0 1000px var(--t2-input) inset;
  caret-color: var(--t2-ink);
  transition: background-color 600000s ease 0s;
}

/* auth_74d: خاناتُ رقمِ الوثيقة في سطرٍ واحدٍ دائمًا — تتقلّصُ بعرضِ الحقلِ ولا يلتفُّ منها مربّع،
   وعددُها من قاعدةِ الوثيقة (10 · 12 · 15 …). الاستمارةُ و«ملفي الشخصي» مكوّنٌ واحد. رموزُ التحقّقِ (t2-otp) كما هي. */
.t2 .t2-seg:not(.t2-otp) { flex-wrap: nowrap; gap: 4px; inline-size: 100%; }
.t2 .t2-seg:not(.t2-otp) .t2-seg-b,
.t2 .t2-seg.is-long:not(.t2-otp) .t2-seg-b { flex: 1 1 0; min-inline-size: 0; inline-size: auto; max-inline-size: 2.6rem; }
.t2 .t2-seg:not(.t2-otp) .t2-seg-sep { flex: 0 0 6px; margin-inline: 0; }

/* auth_74e: «أخرى — اكتب»: القائمةُ والنصُّ في سطرٍ واحد بعرضٍ متساوٍ (الاستمارةُ و«ملفي الشخصي») */
.t2 .t2-pb-oth { display: flex; flex-wrap: nowrap; align-items: center; gap: var(--t2-s2); inline-size: 100%; }
.t2 .t2-pb-oth > * { flex: 1 1 0; min-inline-size: 0; margin: 0; }

/* auth_75: ملخّصُ الاستمارةِ قبلَ الإرسال */
.t2 .t2-vf-sums { max-block-size: none; overflow: visible; }
.t2 .t2-vf-sum-t { display: flex; align-items: center; justify-content: space-between; gap: var(--t2-s2); margin: 0 0 var(--t2-s1); font-weight: var(--t2-fw-b, 700); }

/* auth_78: الآيبانُ بالمربّعات — مربّعاتٌ ثابتة تلتفُّ بعرضِ الحقل، والمجموعاتُ الرباعيّةُ بفاصل */
.t2 .t2-seg.is-xl:not(.t2-otp) { flex-wrap: nowrap; gap: 2px; }
.t2 .t2-seg.is-xl:not(.t2-otp) .t2-seg-b { flex: 1 1 0; min-inline-size: 0; inline-size: auto; max-inline-size: 2.2rem; padding-inline: 0; font-size: clamp(.72rem, 2.4vw, 1rem); }
.t2 .t2-seg.is-xl:not(.t2-otp) .t2-seg-sep { flex: 0 0 4px; }
/* auth_78: أرقامُ المراحل للانتقالِ المباشر */
.t2 .t2-stage-nums { display: inline-flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.t2 .t2-stage-nums button { min-inline-size: 2.4rem; }

/* auth_79: الآيبانُ في سطرٍ وحدَه (مربّعاتٌ أو حقلٌ واحد) — الاستمارةُ و«ملفي الشخصي» */
.t2 .t2-pb-grid > .t2-pb-cell:has(.t2-seg.is-xl), .t2 .t2-pb-grid > .t2-pb-cell:has(.t2-iban) { grid-column: 1 / -1; }
/* auth_79: مسافةٌ كافيةٌ بين أرقامِ المراحل */
.t2 .t2-stage-nums { gap: 12px; margin-inline: 12px; }
.t2 .t2-stage-nums button { min-inline-size: 2.75rem; }

/* auth_80: «حدد طريقة الاستلام» في سطرٍ وحدَه، وما يتبعُه تحتَه — الاستمارةُ و«ملفي الشخصي» */
.t2 .t2-pb-grid > .t2-pb-cell[data-key="payout_method"] { grid-column: 1 / -1; }

/* auth_82: حقولُ «ملفي الشخصي» والاستمارةِ أكبر — ثلاثةُ أعمدةٍ على الويب بدلَ أربعة، وعمودٌ واحدٌ على الجوال */
.t2 div.t2-pb-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 24rem), 1fr)); }
/* auth_82: مفتاحُ الدولةِ في رقمِ الجوال مربّعٌ مقروء لا خانةٌ صغيرة */
.t2 .t2-pb-cell .t2-pi-row .t2-pi-cc { min-inline-size: 7.5rem; }
.t2 .t2-pb-cell .t2-pi-row .t2-pi-cc .t2-input { min-inline-size: 100%; }

/* auth_84: «الحالي» باسمِ الملفّ ومعاينتُه */
.t2 .t2-pb-doc { display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--t2-s2); }
.t2 .t2-pb-doc-name { font-weight: 600; overflow-wrap: anywhere; }
.t2 .t2-pb-prev { display: block; max-inline-size: 100%; max-block-size: 70vh; margin-inline: auto; object-fit: contain; border-radius: var(--t2-r); border: 1px solid var(--t2-line); background: var(--t2-surface-2); }

/* auth_85: إرشادُ الآيبان تحتَ الحقل */
.t2 .t2-pb-hint { margin: var(--t2-s1, 4px) 0 0; font-size: .85rem; line-height: 1.6; color: var(--t2-ink-2); }
.t2 .t2-pb-hint.is-ok { color: var(--t2-ok); font-weight: 600; }
.t2 .t2-pb-hint.is-bad { color: var(--t2-danger); font-weight: 600; }
/* auth_85b: ملفٌّ مختارٌ ينتظرُ الحفظ */
.t2 .t2-pb-pend { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--t2-s2); padding: var(--t2-s2); border: 1px dashed var(--t2-line); border-radius: var(--t2-r); background: var(--t2-surface-2); }

/* auth_86: نموذجُ التأكيدِ قبلَ الإرسال — منطقةُ تمريرٍ واحدة: الأيقونةُ والعنوانُ والوصفُ والأزرارُ ثابتة،
   والملخّصُ وحدَه يمرّر. أوسعُ على المكتب وبعرضِ الشاشةِ على الجوال. قشرةُ الحوارِ (dialog2) كما هي. */
.t2 .t2-dlg2-c:has(.t2-vf-sums) { display: flex; flex-direction: column; overflow: hidden; inline-size: min(880px, calc(100vw - 32px)); max-inline-size: none; }
.t2 .t2-dlg2-c:has(.t2-vf-sums) > :not(.t2-dlg2-b) { flex: 0 0 auto; }
.t2 .t2-dlg2-c:has(.t2-vf-sums) > .t2-dlg2-b { flex: 1 1 auto; min-block-size: 0; overflow: auto; overscroll-behavior: contain; padding-inline-end: var(--t2-s1, 4px); margin-block: var(--t2-s3, 12px); }
.t2 .t2-dlg2-c:has(.t2-vf-sums) .t2-vf-sum-t { margin-block-end: var(--t2-s2, 8px); }

/* auth_87: صفُّ التنقّلِ بين المراحل داخلَ المنصّة بتخطيطِ الهويّةِ نفسِه في صفحةِ التسجيل (identity.css):
   صفٌّ مرن بفاصل 8px ومحاذاةٍ عموديّة — فلا يتداخلُ «إرسال الاستمارة» مع «السابق» */
.t2 .t2-id-stage-nav { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 12px; }

/* auth_89: «متابعة الطلب» — فاصلٌ ثابتٌ بين العنوانِ والملاحظةِ والجدولِ والمسار (سلّمُ المسافات 16) */
.t2 .t2-fu-card { display: grid; gap: var(--t2-s4, 16px); }
.t2 .t2-fu-card > .t2-vf-ph { margin-block-end: 0; }

/* ===== auth_91 — «اعتماد الملف ومطابقة البيانات»: صفوفٌ مختصرة، قرارٌ مبسّط، ترتيبٌ للجوال ===== */
.t2 .t2-mblk-h { display: flex; align-items: center; justify-content: space-between; gap: 8px 12px; flex-wrap: wrap; margin-bottom: 12px; }
.t2 .t2-mblk-n { font-size: .82rem; color: var(--t2-muted); font-variant-numeric: tabular-nums; }
.t2 .t2-mblk-n.is-ok { color: var(--t2-ok); font-weight: 700; }
.t2 .t2-mlist { display: grid; border: 1px solid var(--t2-line); border-radius: 12px; overflow: hidden; }
.t2 .t2-mi { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; padding: 8px 12px; border-bottom: 1px solid var(--t2-line); border-inline-start: 3px solid transparent; background: var(--t2-surface); }
.t2 .t2-mi:last-child { border-bottom: 0; }
.t2 .t2-mi.is-match { border-inline-start-color: var(--t2-ok); }
.t2 .t2-mi.is-mismatch { border-inline-start-color: var(--t2-danger); background: color-mix(in srgb, var(--t2-danger-wash) 55%, var(--t2-surface)); }
.t2 .t2-mi.is-miss { border-inline-start-color: var(--t2-danger); }
.t2 .t2-mi-b { display: grid; gap: 2px; min-width: 0; }
.t2 .t2-mi-k { font-size: .75rem; color: var(--t2-muted); line-height: 1.4; }
.t2 .t2-mi-v { font-weight: 600; color: var(--t2-ink); overflow-wrap: anywhere; line-height: 1.5; }
.t2 .t2-mi-note { font-size: .75rem; color: var(--t2-warn); }
.t2 .t2-mi-why { font-size: .78rem; color: var(--t2-danger); }
.t2 .t2-mi-file { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.t2 .t2-mi-file bdi { font-weight: 500; overflow-wrap: anywhere; }
.t2 .t2-mi-file .t2-ui-ic { color: var(--t2-brand); flex: none; }
.t2 .t2-mi-t { display: inline-flex; border: 1px solid var(--t2-line); border-radius: 999px; overflow: hidden; background: var(--t2-surface-2); }
.t2 .t2-mi-btn { display: inline-flex; align-items: center; gap: 4px; min-block-size: 2rem; padding: 0 12px; border: 0; background: transparent; color: var(--t2-muted); font: inherit; font-size: .78rem; font-weight: 600; cursor: pointer; white-space: nowrap; }
.t2 .t2-mi-btn + .t2-mi-btn { border-inline-start: 1px solid var(--t2-line); }
.t2 .t2-mi-btn.is-ok.is-on { background: var(--t2-ok); color: #fff; }
.t2 .t2-mi-btn.is-no.is-on { background: var(--t2-danger); color: #fff; }
.t2 .t2-mi-btn.is-ok:not(.is-on):hover { color: var(--t2-ok); background: var(--t2-surface); }
.t2 .t2-mi-btn.is-no:not(.is-on):hover { color: var(--t2-danger); background: var(--t2-danger-wash); }
.t2 .t2-mi-btn:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: -2px; }
.t2 .t2-mi-r { grid-column: 1 / -1; display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.t2 .t2-mi-r .t2-input { flex: 1 1 14rem; min-width: 0; }
html.theme .t2 .t2-mi-btn.is-ok:not(.is-on):hover { background: var(--t2-hover); }

/* مسارُ الطلب: «إعادةٌ للتعديل» و«رفض» خطوةٌ حمراء */
.t2 ol.t2-steps > li.t2-step.is-bad > .t2-step-n { background: var(--t2-danger); border-color: var(--t2-danger); color: #fff; }
.t2 .t2-step.is-bad .t2-step-t { color: var(--t2-danger); }

/* ملخّصُ الطلبِ في الأعلى */
.t2 .t2-rv-sum-h { display: flex; align-items: center; gap: 8px 12px; flex-wrap: wrap; margin-bottom: 16px; }
.t2 .t2-rv-sum-h .t2-group-t { margin: 0; font-size: 1.15rem; }
.t2 .t2-rv-meta { display: grid; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); gap: 12px 16px; margin: 0; }
.t2 .t2-rv-meta > div { display: grid; gap: 2px; min-width: 0; }
.t2 .t2-rv-meta dt { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-rv-meta dd { margin: 0; font-weight: 600; color: var(--t2-ink); overflow-wrap: anywhere; }
.t2 .t2-rv-meta > .is-wide { grid-column: 1 / -1; }

/* عمودٌ واحد — بلا عمودٍ جانبي */
.t2 .t2-rvw-detail.is-one { display: flex; flex-direction: column; align-items: stretch; gap: 16px; min-width: 0; }

/* فتح / إغلاق لكلِّ قسم — مغلقةٌ افتراضًا، والرأسُ كلُّه زرُّ الفتح */
.t2 .t2-rvf > .t2-panel-h { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; cursor: pointer; user-select: none; }
.t2 .t2-rvf > .t2-panel-h .t2-group-t { flex: 1 1 auto; min-width: 0; }
.t2 .t2-rvf-x { display: flex; align-items: center; gap: 8px 12px; flex-wrap: wrap; }
.t2 .t2-rvf-b { display: inline-flex; align-items: center; gap: 8px; min-block-size: 2.25rem; padding-block: 0; padding-inline: 14px 6px; border: 1px solid var(--t2-line); border-radius: 999px; background: var(--t2-surface); color: var(--t2-ink-2); font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
.t2 .t2-rvf-i { display: inline-grid; place-items: center; inline-size: 1.5rem; block-size: 1.5rem; border-radius: 50%; background: var(--t2-surface-2); transition: transform .2s ease, background-color .15s ease; }
.t2 .t2-rvf:not(.is-folded) .t2-rvf-i { transform: rotate(180deg); }
.t2 .t2-rvf.is-folded .t2-rvf-b { background: var(--t2-brand-wash); border-color: color-mix(in srgb, var(--t2-brand) 35%, var(--t2-line)); color: var(--t2-brand-3); }
.t2 .t2-rvf.is-folded .t2-rvf-i { background: var(--t2-brand); color: #fff; }
.t2 .t2-rvf > .t2-panel-h:hover .t2-rvf-b { border-color: var(--t2-brand); }
.t2 .t2-rvf-b:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-rvf.is-folded > :not(.t2-panel-h) { display: none; }
.t2 .t2-rvf.is-folded > .t2-panel-h { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
.t2 .t2-rvf.is-folded { padding-block: 14px; }
html.theme .t2 .t2-rvf.is-folded .t2-rvf-b { background: rgba(10,165,173,.14); color: #5FD3D8; }
.t2 .t2-mblk-n.is-bad { color: var(--t2-danger); font-weight: 700; }

/* المعاينة: أدواتُ عرض */
.t2.t2-modal:has(.t2-pv) .t2-modal-c, .t2 .t2-modal:has(.t2-pv) .t2-modal-c { inline-size: min(1000px, calc(100vw - 32px)); max-inline-size: min(1000px, calc(100vw - 32px)); }
.t2 .t2-pv { display: grid; gap: 12px; }
.t2 .t2-pv-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; font-size: .85rem; }
.t2 .t2-pv-n { overflow-wrap: anywhere; color: var(--t2-ink-2); }
.t2 .t2-pv-tools { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; padding: 4px; border: 1px solid var(--t2-line); border-radius: 12px; background: var(--t2-surface-2); }
.t2 .t2-pv-b { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-block-size: 2.25rem; min-inline-size: 2.25rem; padding: 0 12px; border: 0; border-radius: 8px; background: transparent; color: var(--t2-ink); font: inherit; font-size: .8rem; font-weight: 600; cursor: pointer; }
.t2 .t2-pv-b:hover { background: var(--t2-surface); }
.t2 .t2-pv-b:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: -2px; }
.t2 .t2-pv-b.is-ico { padding: 0; }
.t2 .t2-pv-b.is-ico > span { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.t2 .t2-pv-z { min-inline-size: 3.2rem; text-align: center; font-variant-numeric: tabular-nums; font-size: .8rem; color: var(--t2-muted); }
.t2 .t2-pv-sep { flex: 1 1 auto; }
.t2 .t2-pv-stage { block-size: min(58vh, 640px); overflow: auto; display: grid; place-items: center; border: 1px solid var(--t2-line); border-radius: 12px; background: var(--t2-surface-2); overscroll-behavior: contain; touch-action: pan-x pan-y; }
.t2 .t2-pv-stage:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-pv-img { max-inline-size: 100%; max-block-size: 100%; object-fit: contain; transition: transform .15s ease; user-select: none; }
.t2 .t2-pv-img.is-zoom { max-inline-size: none; max-block-size: none; inline-size: calc(var(--z, 1) * 100%); place-self: start; cursor: grab; }
.t2 .t2-pv-stage.is-drag .t2-pv-img { cursor: grabbing; transition: none; }

/* لوحةُ القرار وشريطُ الإجراءاتِ الثابتُ أسفلَ الشاشة */
.t2 .t2-dc-mh { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-variant-numeric: tabular-nums; }
.t2 .t2-dc-type { display: grid; gap: 4px; }
.t2 .t2-dc-type > span { font-size: .78rem; color: var(--t2-muted); }
.t2 .t2-dc-type > small { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-dc-why { min-block-size: 5.5rem; resize: vertical; line-height: 1.6; }
.t2 .t2-rv-bar { position: sticky; bottom: 12px; z-index: 6; display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; padding: 12px 16px; border: 1px solid var(--t2-line); border-radius: 16px; background: color-mix(in srgb, var(--t2-surface) 94%, transparent); backdrop-filter: blur(8px); box-shadow: var(--b-sh); }
.t2 .t2-rv-bar.is-why { border-color: color-mix(in srgb, var(--t2-brand) 45%, var(--t2-line)); }
.t2 .t2-rv-bar-m { display: grid; gap: 6px; flex: 1 1 14rem; min-width: 0; }
.t2 .t2-rv-bar-m .t2-bar { flex: none; }
.t2 .t2-rv-bar-m small { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-rv-bar-a { display: flex; gap: 8px; flex-wrap: wrap; }
.t2 .t2-rv-bar .t2-btn.is-grant { background: var(--t2-navy-3); border-color: var(--t2-navy-3); color: #fff; }

/* التنقّلُ بين الطلباتِ حين يختفي عمودُ الطابور: «الطابور» و«السابق / التالي» */
.t2 .t2-rv-back { flex-wrap: nowrap; justify-content: space-between; }
.t2 .t2-rv-pager { display: none; align-items: center; gap: 4px; padding: 2px; border: 1px solid var(--t2-line); border-radius: 999px; background: var(--t2-surface); }
@media (max-width: 84rem) { .t2 .t2-rv-pager { display: inline-flex; } }
.t2 .t2-rv-pg { display: inline-grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; border: 0; border-radius: 50%; background: transparent; color: var(--t2-ink); cursor: pointer; }
.t2 .t2-rv-pg:disabled { opacity: .35; cursor: default; }
.t2 .t2-rv-pg:not(:disabled):hover { background: var(--t2-surface-2); }
.t2 .t2-rv-pg:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: -2px; }
.t2 .t2-rv-pgn { padding-inline: 4px; font-size: .8rem; color: var(--t2-ink-2); font-variant-numeric: tabular-nums; white-space: nowrap; }

/* قائمةُ الطلباتِ على الجوال: بطاقاتٌ ومرشِّحاتٌ وبحث — بدلَ الجدولِ وشاراتِ العدّ */
.t2 .t2-rvq-cards { display: none; }
@media (max-width: 62rem) {
  .t2 .t2-rvq-cards { display: grid; gap: 12px; }
  .t2 .t2-rvq-cards + * { display: none; }
  .t2 .t2-row:has(+ .t2-rvq-cards) { display: none; }
}
.t2 .t2-rvq-chips { display: flex; gap: 8px; overflow-x: auto; margin-inline: -4px; padding: 0 4px 4px; scrollbar-width: none; }
.t2 .t2-rvq-chips::-webkit-scrollbar { display: none; }
.t2 .t2-rvq-chip { flex: none; display: inline-flex; align-items: center; gap: 6px; min-block-size: 2.25rem; padding: 0 12px; border: 1px solid var(--t2-line); border-radius: 999px; background: var(--t2-surface); color: var(--t2-ink-2); font: inherit; font-size: .8rem; font-weight: 600; white-space: nowrap; cursor: pointer; }
.t2 .t2-rvq-chip.is-on { background: var(--t2-brand); border-color: var(--t2-brand); color: #fff; }
.t2 .t2-rvq-chip:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-rvq-cn { min-inline-size: 1.25rem; padding: 0 6px; border-radius: 999px; background: var(--t2-surface-2); color: var(--t2-ink-2); font-size: .72rem; text-align: center; font-variant-numeric: tabular-nums; }
.t2 .t2-rvq-chip.is-on .t2-rvq-cn { background: rgba(255, 255, 255, .25); color: #fff; }
.t2 .t2-rvq-list { display: grid; gap: 8px; }
.t2 .t2-rvq-card { display: grid; gap: 8px; inline-size: 100%; padding: 12px 14px; border: 1px solid var(--t2-line); border-radius: 14px; background: var(--t2-surface); color: var(--t2-ink); font: inherit; text-align: start; cursor: pointer; }
.t2 .t2-rvq-card[hidden] { display: none; }
.t2 .t2-rvq-card:active { background: var(--t2-surface-2); }
.t2 .t2-rvq-card:focus-visible { outline: 2px solid var(--t2-brand); outline-offset: 2px; }
.t2 .t2-rvq-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; }
.t2 .t2-rvq-n { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .95rem; }
.t2 .t2-rvq-meta { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: .78rem; color: var(--t2-muted); }
.t2 .t2-rvq-p { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; }
.t2 .t2-rvq-p .t2-bar { flex: none; }
.t2 .t2-rvq-p small { font-size: .75rem; color: var(--t2-muted); font-variant-numeric: tabular-nums; }
.t2 .t2-rvq-empty { margin: 0; padding: 16px; text-align: center; color: var(--t2-muted); }

@media (max-width: 62rem) {
  .t2 .t2-rv-bar { bottom: calc(70px + env(safe-area-inset-bottom)); }
}
@media (max-width: 40rem) {
  /* مفتاحُ الحكمِ أيقونتان بجانبِ القيمة — والتسميةُ في aria-label */
  .t2 .t2-mi-btn { padding: 0; inline-size: 2.25rem; min-block-size: 2.25rem; justify-content: center; }
  .t2 .t2-mi-btn > span { display: none; }
  .t2 .t2-rv-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  /* رأسُ القسمِ على الجوال: العنوانُ وزرُّ الفتحِ سطر، والعدّادُ و«مطابقةُ الكل» سطر */
  .t2 .t2-rvf-x { order: 3; flex-basis: 100%; justify-content: space-between; }
  .t2 .t2-rv-meta > div:has(.t2-email) { grid-column: 1 / -1; }
  /* شريطُ الإجراءاتِ مضغوطٌ على الجوال: العدّادُ سطرٌ والأزرارُ الثلاثةُ سطرٌ */
  .t2 .t2-rv-bar { padding: 8px 12px; gap: 8px; border-radius: 14px; }
  .t2 .t2-rv-bar-m { flex-basis: 100%; gap: 4px; }
  .t2 .t2-rv-bar-m small { display: none; }
  .t2 .t2-rv-bar-a { inline-size: 100%; flex-wrap: nowrap; }
  .t2 .t2-rv-bar-a > .t2-btn { flex: 1 1 0; min-width: 0; justify-content: center; padding-inline: 8px; font-size: .8rem; line-height: 1.3; white-space: normal; }
  .t2 .t2-rv-bar-a > .t2-btn > :not(span):first-child { display: none; }
  .t2 .t2-pv-stage { block-size: 55vh; }
  .t2 .t2-rvw ol.t2-steps { grid-auto-flow: column; grid-auto-columns: 1fr; }
  .t2 .t2-rvw ol.t2-steps > li.t2-step { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: 4px; padding: 0 2px; }
  .t2 .t2-rvw ol.t2-steps > li.t2-step::before { top: 14px; inset-inline-start: 50%; inline-size: 100%; block-size: 3px; }
  .t2 .t2-rvw ol.t2-steps > li.t2-step > .t2-step-n { inline-size: 28px; block-size: 28px; font-size: .78rem; }
  .t2 .t2-rvw .t2-step-t { font-size: .68rem; }
  .t2 .t2-rvw .t2-step-at { font-size: .6rem; direction: rtl; }
  .t2 .t2-rvw .t2-step:not(.is-now) .t2-step-at { display: none; }
}

/* ===== auth_94 — «التعديلاتُ المطلوبة»: الطلبُ المُعادُ يُعدَّلُ من شاشةٍ واحدةٍ مباشرة ===== */
.t2 .t2-fx { max-inline-size: 860px; margin-inline: auto; inline-size: 100%; }
.t2 .t2-fx-head { border-inline-start: 4px solid var(--t2-danger); }
.t2 .t2-fx-hh { display: flex; align-items: flex-start; gap: 12px; }
.t2 .t2-fx-hic { flex: none; display: grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; border-radius: 12px; background: var(--t2-danger-wash); color: var(--t2-danger); }
.t2 .t2-fx-ht { flex: 1 1 auto; min-width: 0; display: grid; gap: 4px; }
.t2 .t2-fx-ht .t2-group-t { margin: 0; font-size: 1.15rem; }
.t2 .t2-fx-ht p { margin: 0; color: var(--t2-ink-2); line-height: 1.7; }
.t2 .t2-fx-meta { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 12px 0 0; }
.t2 .t2-fx-meta div { display: grid; gap: 2px; }
.t2 .t2-fx-meta dt { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-fx-meta dd { margin: 0; font-weight: 600; }
.t2 .t2-fx-list { display: grid; gap: 12px; }
.t2 .t2-fx-it { display: grid; gap: 12px; padding: 14px 16px; border: 1px solid var(--t2-line); border-inline-start: 4px solid var(--t2-warn); border-radius: 14px; background: var(--t2-surface); }
.t2 .t2-fx-it.is-done { border-inline-start-color: var(--t2-ok); background: color-mix(in srgb, var(--t2-ok) 5%, var(--t2-surface)); }
.t2 .t2-fx-row { display: grid; gap: 10px; }
.t2 .t2-fx-row + .t2-fx-row { padding-top: 12px; border-top: 1px dashed var(--t2-line); }
.t2 .t2-fx-top { display: flex; align-items: center; gap: 10px; }
.t2 .t2-fx-st { flex: none; display: grid; place-items: center; inline-size: 1.75rem; block-size: 1.75rem; border-radius: 50%; background: var(--t2-surface-2); color: var(--t2-ink-2); font-size: .8rem; font-weight: 700; }
.t2 .t2-fx-row.is-done .t2-fx-st { background: var(--t2-ok); color: #fff; }
.t2 .t2-fx-tt { flex: 1 1 auto; min-width: 0; display: grid; gap: 2px; }
.t2 .t2-fx-tt small { color: var(--t2-muted); font-size: .75rem; }
.t2 .t2-fx-why { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 0; padding: 8px 12px; border-radius: 10px; background: color-mix(in srgb, var(--t2-danger-wash) 70%, var(--t2-surface)); color: var(--t2-danger); font-size: .85rem; }
.t2 .t2-fx-row.is-done .t2-fx-why { background: var(--t2-surface-2); color: var(--t2-muted); }
.t2 .t2-fx-cur { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: .9rem; }
.t2 .t2-fx-cur > span:first-child { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-fx-cur bdi { font-weight: 600; overflow-wrap: anywhere; }
/* حقلُ «ملفي الشخصي» داخلَ البطاقة بلا إطارٍ ثانٍ */
.t2 .t2-fx-ed .t2-panel { padding: 0; border: 0; box-shadow: none; background: transparent; }
.t2 .t2-fx-ed .t2-fm-head:empty { display: none; }
.t2 .t2-fx-ed .t2-pb-page { gap: 12px; }
@media (max-width: 40rem) {
  .t2 .t2-fx-head .t2-pill, .t2 .t2-fx-head .t2-badge { display: none; }
  .t2 .t2-fx-it { padding: 12px; }
}

/* ===== auth_96 — «التعديلاتُ المطلوبة»: «قبل ← بعد» ثابتٌ بعدَ الحفظ، والحقلُ يُطوى إلى «حُفظ تعديلُك» ===== */
.t2 .t2-fx-cmp { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: stretch; gap: 8px; }
.t2 .t2-fx-cmp-c { display: grid; gap: 4px; align-content: start; padding: 8px 12px; border-radius: 10px; border: 1px solid var(--t2-line); background: var(--t2-surface); min-width: 0; }
.t2 .t2-fx-cmp-c > span { font-size: .75rem; color: var(--t2-muted); }
.t2 .t2-fx-cmp-c bdi { font-weight: 600; overflow-wrap: anywhere; }
.t2 .t2-fx-cmp-c.is-was bdi { color: var(--t2-muted); text-decoration: line-through; text-decoration-thickness: 1px; }
.t2 .t2-fx-cmp-c.is-now { border-color: color-mix(in srgb, var(--t2-ok) 45%, var(--t2-line)); background: color-mix(in srgb, var(--t2-ok) 8%, var(--t2-surface)); }
.t2 .t2-fx-cmp-c.is-now bdi { color: var(--t2-ok); }
.t2 .t2-fx-cmp-ar { align-self: center; color: var(--t2-muted); font-weight: 700; }
.t2 .t2-fx-saved { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 10px; background: var(--t2-surface-2); }
.t2 .t2-fx-saved-ic { flex: none; display: grid; place-items: center; inline-size: 1.5rem; block-size: 1.5rem; border-radius: 50%; background: var(--t2-ok); color: #fff; }
.t2 .t2-fx-saved-t { flex: 1 1 auto; font-weight: 600; color: var(--t2-ink-2); }
@media (max-width: 40rem) {
  .t2 .t2-fx-cmp { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .t2 .t2-fx-cmp-ar { justify-self: center; transform: rotate(-90deg); }
}
