/* =====================================================================
   sv-people.css: قسم «المشاركون» في لوحة المشرف (الجدول، وصفحة المشارك،
   وطابور واتساب، ومعالج الاستيراد). يستهلك رموز base.css فقط: لا ألوان ولا مسافات خام.
   ===================================================================== */

/* ============ الرأس والإجراءات ============ */
.pp-head{margin-block-end:var(--sp-1)}
.pp-acts .btn{gap:var(--sp-2)}
.pp-wa .icon{--ic-a:transparent}
.pp-n{display:inline-grid;place-items:center;min-inline-size:22px;block-size:22px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--yellow-solid);color:var(--ink-solid);font-size:var(--fs-2xs);font-weight:var(--fw-b);line-height:1;margin-inline-start:var(--sp-1)}
.pp-first{margin-block-start:var(--sp-6)}

/* ============ أدوات القائمة ============ */
.pp-tools{align-items:flex-end}
.pp-find{display:flex;gap:var(--sp-2);align-items:center;flex:0 1 360px;min-inline-size:0}
.pp-find .search{flex:1 1 auto}
.pp-sort{display:none;flex:0 0 auto}
.pp-sort .select{min-block-size:var(--tap);border-radius:var(--r-full);padding-block:0;font-size:var(--fs-input)}

/* ============ بطاقة الجدول ============ */
.pp-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.pp-card > .tbl-wrap{border:0;border-radius:0}
.pp-tbl{min-inline-size:860px}
.pp-stage{display:grid;gap:var(--sp-0);line-height:1.5}
.pp-stage small{font-size:var(--fs-xs);color:var(--ink-3);padding-inline-start:15px}
.pp-tbl th,.pp-tbl td{padding-inline:var(--sp-3)}
.pp-tbl th:first-child,.pp-tbl td:first-child{padding-inline-start:var(--sp-5)}
@media (max-width:85rem){.pp-tbl .c-wa{display:none}} /* تفضيل واتساب يظهر في صفحة المشارك */
.pp-tbl th:last-child,.pp-tbl td:last-child{padding-inline-end:var(--sp-5)}
.pp-tbl td.c-name{min-inline-size:220px;max-inline-size:300px}
.pp-tbl .pname{inline-size:100%;color:inherit;text-decoration:none}
.pp-tbl .pname:hover{text-decoration:none}
.pp-tbl .pname b{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}
.pp-tbl .pname small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:end;unicode-bidi:isolate}
.pp-flag{font-size:var(--fs-2xs);line-height:1.7;padding-inline:var(--sp-2);font-weight:var(--fw-sb)}
.pp-tbl tr.is-off td:not(.c-act){color:var(--ink-3)}
.pp-tbl td > .muted{font-size:var(--fs-xs)}
.pp-tbl tr.is-off .pname b{color:var(--ink-2)}
.pp-tbl .c-act{inline-size:1%}
.pp-tbl .c-act .btn{min-inline-size:118px}
/* مؤشر الترتيب: السهم يدور ليدل على الاتجاه */
.pp-sorti{display:inline-grid;place-items:center;inline-size:16px;block-size:16px;opacity:0;transform:rotate(90deg);transition:opacity var(--d1) var(--ease),transform var(--d2) var(--ease-out)}
.pp-sorti .icon{inline-size:14px;block-size:14px;stroke-width:2.4}
.pp-sorti.is-on{opacity:1;color:var(--brand-ink)}
.pp-sorti.is-desc{transform:rotate(-90deg)}
.tbl th button:hover .pp-sorti:not(.is-on){opacity:.45}
.tbl th[aria-sort="ascending"] button,.tbl th[aria-sort="descending"] button{color:var(--ink)}
/* التحميل أثناء التصفية والتنقل بين الصفحات */
.pp-card [data-rows]{transition:opacity var(--d2) var(--ease)}
.pp-card.is-loading [data-rows]{opacity:.45;pointer-events:none}
.pp-busy{display:none;margin-inline-start:var(--sp-2);vertical-align:middle}
.pp-busy .spin__c{inline-size:16px;block-size:16px;border-width:2px}
.pp-card.is-loading .pp-busy{display:inline-flex}
[data-rows].pp-in{animation:fadeIn var(--d3) var(--ease) both}
/* الحالة الفارغة داخل الجدول */
.pp-none{display:grid;justify-items:center;gap:var(--sp-3);padding:var(--sp-4) 0;color:var(--ink-2);white-space:normal}
.pp-none .empty__ic{margin:0}
.pp-none p{max-inline-size:46ch;font-size:var(--fs-sm)}
/* الصفحات */
.pp-pager{border-block-start:1px solid var(--line);padding:var(--sp-3) var(--sp-5)}
.pp-range b{color:var(--ink);font-weight:var(--fw-sb)}
.pp-pages{align-items:center}
.pp-pg{min-inline-size:var(--tap);block-size:var(--tap);border:0;border-radius:var(--r-md);background:transparent;color:var(--ink-2);font-size:var(--fs-sm);font-weight:var(--fw-sb);transition:background-color var(--d1) var(--ease),color var(--d1) var(--ease),transform var(--d1) var(--ease)}
.pp-pg:hover{background:var(--surface-2);color:var(--ink)}
.pp-pg:active{transform:scale(.94)}
.pp-pg[aria-current="page"]{background:var(--ink);color:var(--bg)}
.pp-pages .icon-btn:disabled{opacity:.35;cursor:not-allowed;background:transparent}
.pp-gap{color:var(--ink-3);padding-inline:var(--sp-1)}
.pp-export{margin-inline-start:auto}

/* خلية الإنجاز: «7/24 · 29%» وشريط تحتها */
.pp-prog{display:inline-grid;gap:6px;min-inline-size:7.5rem}
.pp-prog__t{display:inline-flex;align-items:baseline;gap:var(--sp-1);font-size:var(--fs-sm)}
.pp-prog__of{font-weight:var(--fw-sb);color:var(--ink)}
.pp-prog__sep{color:var(--line-2)}
.pp-prog__pct{color:var(--ink-3)}
.pp-prog__bar{inline-size:100%;block-size:4px}
.pp-cert{display:inline-flex;align-items:center;gap:3px;margin-inline-start:var(--sp-2);padding:0 var(--sp-2) 0 6px;border-radius:var(--r-full);background:var(--brand-soft);color:var(--brand-ink);font-size:var(--fs-2xs);font-weight:var(--fw-b);line-height:1.8}
.pp-cert .icon{inline-size:13px;block-size:13px;stroke-width:2.2}
.pp-cert--lg{margin:0;padding:var(--sp-0) var(--sp-3) var(--sp-0) var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-sb)}
.pp-cert--lg .icon{inline-size:15px;block-size:15px}
/* ما فات وقته: رقم هادئ بلا لون حكم */
.pp-missed{display:inline-flex;align-items:baseline;gap:var(--sp-1);font-size:var(--fs-xs);color:var(--ink-2)}
.pp-missed b{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink)}

/* ============ الجوال: كل صف بطاقة (الاسم وما فاته في الرأس) ============ */
@media (max-width:51.25rem){
  .pp-find{flex:1 1 100%}
  .pp-sort{display:block}
  .pp-sort .select{inline-size:auto;max-inline-size:44vw}
  .tbl.pp-tbl tbody tr{display:grid;align-items:center;grid-template-columns:auto minmax(0,1fr) auto;column-gap:var(--sp-3);row-gap:var(--sp-1);padding:var(--sp-4)}
  .tbl.pp-tbl td{grid-column:1/-1}
  .tbl.pp-tbl td.c-sel{grid-column:1;grid-row:1;align-self:start;padding:0;inline-size:auto}
  .tbl.pp-tbl td.c-name{grid-column:2;grid-row:1;display:block;padding:0;max-inline-size:none;min-inline-size:0}
  .tbl.pp-tbl td.c-score{grid-column:3;grid-row:1;align-self:start;padding:0}
  .tbl.pp-tbl td.c-score::before{content:none}
  .tbl.pp-tbl td.c-wa,.tbl.pp-tbl td:empty,.tbl.pp-tbl td.c-act--view{display:none}
  .tbl.pp-tbl td.c-act{padding-block-start:var(--sp-2)}
  .tbl.pp-tbl td.c-act .btn{inline-size:100%}
  .tbl.pp-tbl tbody tr.empty-row{display:block}
  .tbl.pp-tbl .pname small{text-align:end}
  .pp-pager{padding:var(--sp-3) var(--sp-4);justify-content:center}
  .pp-range{flex:1 1 100%;text-align:center}
  .pp-export{margin-inline:auto}
}
/* الأجهزة اللوحية: تمرير أفقي داخل البطاقة مع تثبيت عمود الاسم */
@media (min-width:51.3125rem) and (max-width:79.99rem){
  .pp-tbl td.c-sel,.pp-tbl th.c-sel{position:sticky;inset-inline-start:0;z-index:1;background:var(--surface)}
  .pp-tbl th.c-sel{background:var(--surface-2)}
  .pp-tbl td.c-name,.pp-tbl th.c-name{position:sticky;inset-inline-start:52px;z-index:1;background:var(--surface);box-shadow:inset 1px 0 0 var(--line)} /* بعد عمود التحديد؛ ظل داخلي على الحافة اليسرى = نهاية العمود في RTL */
  .pp-tbl th.c-name{background:var(--surface-2)}
  @media (hover:hover){.pp-tbl tbody tr:hover td.c-name{background:color-mix(in srgb,var(--brand-soft) 50%,var(--surface))}}
}
@media (max-width:30rem){
  .pp-acts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));inline-size:100%;gap:var(--sp-2)}
  .pp-acts .pp-wa{grid-column:1/-1;order:-1;min-block-size:var(--btn-h)}
  .pp-acts .btn--secondary{flex-direction:column;gap:var(--sp-0);min-block-size:64px;padding:var(--sp-2) var(--sp-1);white-space:normal;text-align:center;line-height:1.35;font-size:var(--fs-xs);border-radius:var(--r-md)}
  .pp-acts .btn--secondary .icon{inline-size:20px;block-size:20px}
}

/* ============ معاينة رسالة واتساب ============ */
.pp-chat{margin:0;display:grid;justify-items:end;gap:var(--sp-1);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--surface-2)}
.pp-bubble{max-inline-size:100%;inline-size:fit-content;background:color-mix(in srgb,var(--ok-soft) 78%,var(--surface));color:var(--ink);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg) var(--r-lg) var(--r-lg) var(--r-xs);white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--fs-sm);line-height:1.85;box-shadow:var(--sh-1)}
.pp-url{color:var(--blue-ink);font-weight:var(--fw-m);unicode-bidi:isolate;word-break:break-all}
.pp-chat__m{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--fs-2xs);color:var(--ink-3)}
.pp-chat__m .icon{inline-size:13px;block-size:13px;color:var(--blue-ink);stroke-width:2.4}

/* ============ الطابور ============ */
.pp-q{display:grid;gap:var(--sp-4);min-inline-size:0}
.pp-q > .swap{display:grid;gap:var(--sp-4);min-inline-size:0}
.pp-q__top{display:grid;grid-template-columns:1fr auto;gap:var(--sp-2) var(--sp-3);align-items:baseline;font-size:var(--fs-sm);color:var(--ink-2)}
.pp-q__top b{color:var(--ink);font-weight:var(--fw-b)}
.pp-q__top .progress{grid-column:1/-1}
.pp-q__who{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg)}
.pp-q__who > div{flex:1;min-inline-size:0;display:grid;line-height:1.45}
.pp-q__who b{font-size:var(--fs-md);font-weight:var(--fw-b)}
.pp-q__who small{font-size:var(--fs-sm);color:var(--ink-3);justify-self:start}
.pp-q__load{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-4);justify-content:center;color:var(--ink-3);font-size:var(--fs-sm);border:1px dashed var(--line-2);border-radius:var(--r-lg)}
.pp-q__h{margin:0}
.pp-q__a{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}
.pp-q__a--c{justify-content:center}
/* التخطي في آخر صف الروابط */
.pp-q__more .pp-q__skip{margin-inline-start:auto}
.pp-q__more{display:flex;flex-wrap:wrap;gap:0 var(--sp-4);margin-block-start:calc(var(--sp-2) * -1)}
.pp-q__more .linkbtn{color:var(--ink-2)}
.pp-q__more .linkbtn:hover{color:var(--brand-ink)}
.pp-rinv .icon{color:var(--ok)}
.pp-q__done{display:grid;justify-items:center;text-align:center;gap:var(--sp-2);padding:var(--sp-4) 0 var(--sp-2)}
.pp-q__done .done__ic{margin:0 0 var(--sp-3)}
.pp-q__done h3{font-size:var(--fs-xl)}
.pp-q__done p{max-inline-size:46ch}
.pp-q__done .pp-q__a{margin-block-start:var(--sp-4)}
.pp-q .alert > div{display:grid}
@media (max-width:51.25rem){
  .pp-q__a{position:sticky;inset-block-end:calc(-1 * (var(--sp-5) + env(safe-area-inset-bottom,0px)));z-index:1;margin-inline:calc(-1 * var(--sp-6));padding:var(--sp-3) var(--sp-6) calc(var(--sp-5) + env(safe-area-inset-bottom,0px));background:var(--surface);border-block-start:1px solid var(--line)}
  .pp-q__a > .btn--primary,.pp-q__a > .btn--secondary{flex:1 1 calc(50% - var(--sp-2))}
  .pp-q__done .pp-q__a{position:static;margin:var(--sp-4) 0 0;padding:0;border:0}
}
@media (max-width:30rem){
  .pp-q__a{margin-inline:calc(-1 * var(--sp-5));padding-inline:var(--sp-5)}
}

/* اختيار مجموعة الطابور والبريد */
.pp-fs{border:0;padding:0;margin:0 0 var(--sp-4);min-inline-size:0}
.pp-fs legend{padding:0;margin-block-end:var(--sp-2)}
.pp-fs .opt:has(input:disabled){opacity:.5;cursor:not-allowed}
.pp-names{min-block-size:var(--tap);align-items:center}
.pp-mprog{display:grid;gap:var(--sp-2);margin-block:var(--sp-4)}
.pp-mprog__t{display:flex;justify-content:space-between;font-size:var(--fs-sm);color:var(--ink-2)}
.pp-mprog__t b{color:var(--ink)}
[data-mres] .alert{margin-block-start:var(--sp-3)}
[data-mres] .alert > div{display:grid}
.pp-fails{margin-block-start:var(--sp-2)}
.pp-fails .tile{background:var(--bad-soft);color:var(--bad)}

/* ============ معالج الاستيراد ============ */
.pp-steps{list-style:none;margin:0 0 var(--sp-5);padding:0;display:flex;gap:var(--sp-2) var(--sp-5);flex-wrap:wrap;font-size:var(--fs-sm);color:var(--ink-3)}
.pp-steps li{display:flex;align-items:center;gap:var(--sp-2);font-weight:var(--fw-sb)}
.pp-steps .cnum{inline-size:28px;block-size:28px;font-size:var(--fs-xs)}
.pp-steps li[aria-current="step"]{color:var(--ink)}
.pp-steps li.is-done{color:var(--ink-2)}
.pp-drop{cursor:pointer;padding-block:var(--sp-10)}
.pp-drop:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.pp-drop:active{transform:scale(.995)}
.pp-imp__cols{margin-block-start:var(--sp-5);display:grid;gap:var(--sp-2)}
.pp-imp__cols .flabel{margin:0}
.pp-cols{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:var(--sp-2)}
.pp-cols li{display:grid;gap:var(--sp-0);padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}
.pp-cols b{font-size:var(--fs-sm);font-weight:var(--fw-sb)}
.pp-cols small{font-size:var(--fs-2xs);color:var(--ink-3)}
.pp-imp__cols .linkbtn{justify-self:start}
.pp-upl{margin-block-start:var(--sp-4);display:grid;gap:var(--sp-2)}
.pp-imp__file{display:flex;align-items:center;gap:var(--sp-3);margin-block-end:var(--sp-3);font-size:var(--fs-sm)}
.pp-imp__file > .icon{inline-size:22px;block-size:22px;color:var(--brand)}
.pp-imp__file span{display:grid;min-inline-size:0}
.pp-imp__file b{overflow-wrap:anywhere}
.pp-imp__file small{color:var(--ink-3);font-size:var(--fs-xs)}
.pp-band{grid-template-columns:repeat(4,1fr);margin-block-end:var(--sp-4)}
.pp-ok{color:var(--ok)}
.pp-bad{color:var(--bad)}
.pp-imp__tbl{max-block-size:min(46dvh,420px);overflow:auto;margin-block:var(--sp-3);overscroll-behavior:contain}
.pp-imp__tbl thead th{position:sticky;inset-block-start:0;z-index:2}
@media (min-width:51.3125rem){.dlg:has([data-imp]){inline-size:min(880px,calc(100% - 2 * var(--sp-4)))}}
.pp-itbl{min-inline-size:640px}
.pp-itbl td{white-space:normal}
.pp-itbl td:nth-child(3),.pp-itbl td:nth-child(4){white-space:nowrap}
.pp-itbl tr.is-off td{background:color-mix(in srgb,var(--surface-2) 60%,var(--surface))}
.pp-ist{min-inline-size:180px}
.pp-ist small{display:block;font-size:var(--fs-xs);color:var(--ink-3);margin-block-start:var(--sp-1);line-height:1.6}
.pp-imp__a{margin-block-start:var(--sp-4)}
@media (max-width:51.25rem){
  .pp-band{grid-template-columns:repeat(2,1fr)}
  .pp-band div:nth-child(3){border-inline-start:0;padding-inline-start:0}
  .pp-band div:nth-child(n+3){border-block-start:1px solid var(--line)}
  .pp-imp__tbl{max-block-size:none;overflow:visible}
  .tbl.pp-itbl tbody tr{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--sp-3)}
  .tbl.pp-itbl td{grid-column:1/-1}
  .tbl.pp-itbl td:first-child{grid-column:1;grid-row:1;display:block;padding:0;color:var(--ink-3)}
  .tbl.pp-itbl td:first-child::before{content:"صف ";font-weight:var(--fw-r);color:inherit;font-size:inherit}
  .tbl.pp-itbl td.c-name{grid-column:2;grid-row:1;padding:0}
  .pp-ist{text-align:end}
}

/* ============ صفحة المشارك (الدرج) ============ */
.pp-drw{inline-size:min(560px,100%)}
.pp-drw .dlg__in{display:flex;flex-direction:column;scrollbar-gutter:stable}
.pp-dh{align-items:flex-start}
.pp-dh > div{display:grid;gap:var(--sp-1)}
.pp-dh h2{font-size:var(--fs-lg);line-height:1.35}
.pp-dh h2:focus{outline:none}
.pp-dh__mail{text-align:end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;unicode-bidi:isolate}
.pp-dh__chips{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-block-start:var(--sp-1)}
.pp-dh .who__av.skel{background:var(--surface-3)}
.pp-dacts{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-block-end:var(--sp-5)}
.pp-nowa{display:flex;align-items:center;gap:var(--sp-1);flex-basis:100%}
.pp-nowa svg{inline-size:1.1em;block-size:1.1em;flex:none}
.pp-din{animation:rise var(--d3) var(--ease) both}

/* ملخص الإنجاز: حلقة النسبة وتفصيل الأجزاء */
.pp-sum{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--sp-5);align-items:center;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-1)}
.pp-ring{position:relative;inline-size:112px;aspect-ratio:1;flex-shrink:0}
/* الحلقة تبدأ من الأعلى وتمتلئ نحو اليسار، أي من بداية السطر في RTL */
.pp-ring svg{inline-size:100%;block-size:100%;transform:rotate(-90deg) scaleY(-1)}
.pp-ring circle{fill:none;stroke-width:9}
.pp-ring__bg{stroke:var(--surface-3)}
.pp-ring__fg{stroke:var(--brand);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--v,0))}
.pp-ring__fg.is-draw{animation:ppRing var(--d4) var(--ease-out) both}
@keyframes ppRing{from{stroke-dashoffset:100}}
.pp-ring__v{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;line-height:1.1}
.pp-ring__v b{font-size:var(--fs-xl);font-weight:var(--fw-b);display:inline-flex;align-items:baseline;direction:ltr}
.pp-ring__v b small{font-size:var(--fs-sm);color:var(--ink-3);font-weight:var(--fw-m)}
.pp-ring__v > small{font-size:var(--fs-2xs);color:var(--ink-3)}
.pp-sum__b{display:grid;gap:var(--sp-3);min-inline-size:0}
.pp-sum__t{font-size:var(--fs-sm);color:var(--ink-2)}
.pp-sum__t b{color:var(--ink);font-weight:var(--fw-b)}
.pp-parts{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-2)}
.pp-parts li{display:grid;grid-template-columns:7.5rem minmax(0,1fr) 2.75rem;align-items:center;gap:var(--sp-3);font-size:var(--fs-xs);color:var(--ink-2)}
.pp-parts__l{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:var(--fw-m)}
.pp-parts__l .icon{inline-size:15px;block-size:15px;color:var(--brand)}
.pp-parts .bar{block-size:5px}
.pp-parts__v{text-align:end;color:var(--ink);font-weight:var(--fw-sb)}
.pp-sum__f{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);align-items:center;font-size:var(--fs-xs);padding-block-start:var(--sp-3);border-block-start:1px solid var(--line)}
.pp-follow{margin:var(--sp-3) 0 0}
.pp-follow b{font-weight:var(--fw-sb);color:var(--ink)}

/* التبويبات: خط سفلي يظهر تحت الحالي، والشريط يُمرَّر أفقيًا إن ضاق */
.pp-tabs{display:flex;gap:var(--sp-1);margin:var(--sp-5) calc(var(--sp-6) * -1) 0;padding:var(--sp-1) var(--sp-6) 0;background:var(--surface);border-block-end:1px solid var(--line);overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.pp-tabs::-webkit-scrollbar{display:none}
.pp-tabs button{position:relative;flex-shrink:0;display:inline-flex;align-items:center;gap:var(--sp-1);min-block-size:var(--tap);padding:0 var(--sp-3);border:0;background:none;color:var(--ink-3);font-size:var(--fs-sm);font-weight:var(--fw-sb);white-space:nowrap;border-radius:var(--r-sm) var(--r-sm) 0 0;transition:color var(--d1) var(--ease),background-color var(--d1) var(--ease)}
.pp-tabs button:hover{color:var(--ink);background:var(--surface-2)}
.pp-tabs button::after{content:"";position:absolute;inset-inline:var(--sp-2);inset-block-end:0;block-size:3px;border-radius:3px 3px 0 0;background:var(--brand);transform:scaleX(0);transition:transform var(--d2) var(--ease-out)}
.pp-tabs button[aria-selected="true"]{color:var(--brand-ink)}
.pp-tabs button[aria-selected="true"]::after{transform:none}
.pp-tabs button:focus-visible{outline-offset:-2px}
.pp-tabn{display:inline-grid;place-items:center;min-inline-size:20px;block-size:20px;padding:0 5px;border-radius:var(--r-full);background:var(--surface-2);font-size:var(--fs-2xs);color:var(--ink-2)}
.pp-pane{padding-block-start:var(--sp-5)}
.pp-pane > .empty--block{margin-block-start:0}
.pp-tabin{animation:fadeIn var(--d2) var(--ease) both}
.pp-lead{font-size:var(--fs-sm);color:var(--ink-2);margin-block-end:var(--sp-3)}
.pp-lead b{color:var(--ink);font-weight:var(--fw-b)}
.pp-list.is-muted li{opacity:.75}
.pp-pane .ilist li{align-items:flex-start}
.pp-pane .ilist .chip{margin-block-start:var(--sp-1)}
.pp-small{font-size:var(--fs-sm);margin-block-start:var(--sp-2)}
.pp-anon{display:flex;gap:var(--sp-2);align-items:flex-start;margin-block-start:var(--sp-5)}
.pp-anon .icon{inline-size:16px;block-size:16px;color:var(--brand);margin-block-start:var(--sp-0);flex-shrink:0}

/* الإنجاز في كل جدارة */
.pp-comps{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-3)}
.pp-comp{display:grid;gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.pp-comp.is-soon{background:transparent;border-style:dashed}
.pp-comp__h{display:flex;align-items:center;gap:var(--sp-3)}
.pp-comp__h .cnum{inline-size:32px;block-size:32px;font-size:var(--fs-xs)}
.pp-comp__t{flex:1;min-inline-size:0;display:grid;line-height:1.45}
.pp-comp__t b{font-weight:var(--fw-sb);font-size:var(--fs-sm)}
.pp-comp__t small{font-size:var(--fs-xs);color:var(--ink-3)}
.pp-comp__pct{font-size:var(--fs-lg);font-weight:var(--fw-b);color:var(--ink)}
.pp-comp.is-soon .pp-comp__pct{color:var(--ink-3);font-weight:var(--fw-m)}
.pp-comp__m{display:grid;gap:var(--sp-1)}
.pp-comp__m .bar{block-size:5px}
.pp-comp__m small{font-size:var(--fs-xs);color:var(--ink-3);line-height:1.6}
.pp-dotsep{margin-inline:var(--sp-2);color:var(--line-2)}
/* سطر الشهادة داخل بطاقة الجدارة */
.pp-crt{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2)}
.pp-crt__ic{inline-size:34px;block-size:34px;border-radius:10px;display:grid;place-items:center;background:var(--surface);color:var(--brand);box-shadow:inset 0 0 0 1px var(--line);flex-shrink:0}
.pp-crt__ic .icon{inline-size:18px;block-size:18px}
.pp-crt__b{flex:1;min-inline-size:min(180px,100%);display:grid;line-height:1.45}
.pp-crt__b b{font-size:var(--fs-sm);font-weight:var(--fw-sb)}
.pp-crt__b small{font-size:var(--fs-xs);color:var(--ink-3)}
.pp-crt__a{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap;margin-inline-start:auto}
.pp-crt--on{background:var(--brand-soft)}
.pp-crt--on .pp-crt__ic{background:var(--brand);color:var(--on-brand);box-shadow:none}
.pp-crt--on .pp-crt__b b{color:var(--brand-ink)}
.pp-crt--off .pp-crt__ic{color:var(--ink-3)}
.pp-crt--off .pp-crt__b b{color:var(--ink-2)}
.pp-crt--quiet{background:transparent;padding:0}
.pp-serial{font-weight:var(--fw-sb);color:var(--ink-2)}
.pp-verify{color:var(--ink-2)}
.pp-del{color:var(--bad);font-size:var(--fs-xs)}

/* التسليمات */
.pp-tasks{list-style:none;margin:0 0 var(--sp-2);padding:0;display:grid;gap:var(--sp-2)}
.pp-task{padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.pp-task__h{display:flex;align-items:flex-start;gap:var(--sp-3);flex-wrap:wrap}
.pp-task__h .tile{inline-size:var(--tile-sm);block-size:var(--tile-sm);border-radius:11px}
.pp-task__h .tile .icon{inline-size:19px;block-size:19px}
.pp-task__h .b{flex:1;min-inline-size:min(160px,100%);display:grid;line-height:1.5}
.pp-task__h b{font-weight:var(--fw-sb);font-size:var(--fs-sm)}
.pp-task__h small{font-size:var(--fs-xs);color:var(--ink-3)}
.pp-task__h .cluster{gap:var(--sp-1)}
.pp-task__t{margin-inline-start:calc(var(--tile-sm) + var(--sp-3));margin-block-start:var(--sp-1)}
.pp-sub{margin-block-start:var(--sp-2);padding:var(--sp-4);border-radius:var(--r-md);background:var(--surface-2);animation:rise var(--d3) var(--ease-out) both}
.pp-sub__load{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-3)}
.pp-ans{margin:0;display:grid;gap:var(--sp-4)}
.pp-ans dt{display:flex;gap:var(--sp-2);align-items:flex-start;font-size:var(--fs-xs);font-weight:var(--fw-sb);color:var(--ink-3);line-height:var(--lh-snug)}
.pp-ans__n{display:inline-grid;place-items:center;inline-size:20px;block-size:20px;flex-shrink:0;border-radius:50%;background:var(--surface);color:var(--brand-ink);font-size:var(--fs-2xs);box-shadow:inset 0 0 0 1px var(--line)}
.pp-ans dd{margin:var(--sp-1) 0 0;font-size:var(--fs-sm);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;line-height:var(--lh-body)}
.pp-file{margin-block-start:var(--sp-3);background:var(--surface);flex-wrap:wrap}
.pp-sub__m{display:flex;align-items:center;gap:var(--sp-1);margin-block-start:var(--sp-3);font-size:var(--fs-xs);color:var(--ink-3)}
.pp-sub__m .icon{inline-size:14px;block-size:14px}

/* الملف والدعوة */
.pp-kv{display:inline-flex;align-items:center;gap:var(--sp-1);min-inline-size:0;max-inline-size:100%}
.pp-kv bdi{overflow-wrap:anywhere}
.pp-mini{inline-size:36px;block-size:36px;margin-block:calc(var(--sp-2) * -1)}
.pp-mini .icon{inline-size:17px;block-size:17px}
.pp-grid-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:var(--sp-2)}
.pp-grid-acts .btn{justify-content:flex-start}
.pp-pane .notebar{margin:0 0 var(--sp-3)}
.pp-pane .tl{margin-block-start:var(--sp-1)}
/* الملاحظات */
.pp-note{display:grid;gap:var(--sp-2);justify-items:start;padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2)}
.pp-note .field{margin:0;inline-size:100%}
.pp-note .textarea{min-block-size:96px}
.pp-note .help{display:flex;align-items:center;gap:var(--sp-1)}
.pp-note .help .icon{inline-size:14px;block-size:14px}
.pp-notes{list-style:none;margin:var(--sp-4) 0 0;padding:0;display:grid;gap:var(--sp-3)}
.pp-notes li{padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);animation:rise var(--d3) var(--ease) both}
.pp-notes p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--fs-sm);line-height:1.8}
.pp-notes__m{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-block-start:var(--sp-1)}
.pp-notes__m small{font-size:var(--fs-xs);color:var(--ink-3)}
@media (max-width:30rem){
  .pp-dacts .btn{flex:1 1 auto}
  .pp-tabs{margin-inline:calc(var(--sp-4) * -1);padding-inline:var(--sp-4)}
  .pp-sum{grid-template-columns:minmax(0,1fr);justify-items:center;padding:var(--sp-4)}
  .pp-sum__b{inline-size:100%}
  .pp-sum__t{text-align:center}
  .pp-parts li{grid-template-columns:6.5rem minmax(0,1fr) 2.5rem}
  .pp-task__t{margin-inline-start:0}
}

/* ============ التحديد والإرسال الجماعي ============ */
.pp-tbl .c-sel{inline-size:52px;padding-inline:var(--sp-4) var(--sp-1)}
.pp-cb{display:inline-grid;place-items:center;inline-size:var(--tap);block-size:var(--tap);margin:calc(-1 * var(--sp-3)) calc(-1 * var(--sp-3));cursor:pointer;border-radius:var(--r-sm)}
.pp-cb input{inline-size:18px;block-size:18px;margin:0;accent-color:var(--brand);cursor:pointer}
.pp-cb input:disabled{cursor:not-allowed;opacity:.45}
.pp-cb:hover input:not(:disabled){outline:3px solid var(--brand-soft);outline-offset:1px;border-radius:4px}
.pp-tbl tbody tr.is-sel td{background:color-mix(in srgb,var(--brand-soft) 60%,var(--surface))}
.pp-selbar{position:sticky;inset-block-end:calc(var(--sp-4) + env(safe-area-inset-bottom,0px));z-index:var(--z-sticky);display:flex;justify-content:center;margin-block-start:var(--sp-4);pointer-events:none}
.pp-selbar__in{pointer-events:auto;display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-5);border-radius:var(--r-full);background:var(--ink-solid);color:var(--on-solid);box-shadow:var(--sh-3)}
.pp-selbar.is-in .pp-selbar__in{animation:mxBarIn var(--d-spring) var(--ease-spring) both}
@keyframes mxBarIn{from{opacity:0;transform:translateY(16px) scale(.96)}}
.pp-selbar__n{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-1) var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-m)}
.pp-selbar__n b{font-size:var(--fs-md);font-weight:var(--fw-b)}
.pp-selbar__n small{flex-basis:100%;font-size:var(--fs-2xs);color:var(--on-solid-3)}
.pp-selbar__x{color:var(--on-solid-2)}
.pp-selbar__x:hover{background:var(--solid-fill);color:var(--on-solid)}
@media (max-width:51.25rem){
  .pp-cb{margin:calc(-1 * var(--sp-2)) calc(-1 * var(--sp-3)) 0}
  .pp-selbar__in{border-radius:var(--r-lg);inline-size:100%;justify-content:space-between;padding:var(--sp-2) var(--sp-3) var(--sp-2) var(--sp-4)}
  .pp-selbar__n{flex-basis:100%;justify-content:center}
  .pp-selbar__in .btn{flex:1 1 0}
}
