/* ===== detail.css — track, gates, follow-ups, change requests, audit, drawer ===== */
/* track streams */
.tk-stream{margin-bottom:16px;overflow:hidden;}
.tk-sh{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--line);cursor:pointer;user-select:none;}
.tk-sh-n b{font-size:15px;}.tk-sh-n small{display:block;font-size:10.5px;}
.tk-sh-meta{margin-inline-start:auto;display:flex;align-items:center;gap:8px;}
.tk-tasks{display:flex;flex-direction:column;}
.tk-stream.collapsed .tk-scroll{display:none;}
.tk-stream.collapsed .tk-sh{border-bottom:none;}
.tk-collapse-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;flex-shrink:0;color:var(--muted);transition:transform .18s;}
.tk-stream.collapsed .tk-collapse-btn{transform:rotate(-90deg);}
.tk-task{display:grid;grid-template-columns:var(--tk-cols,130px 120px 90px minmax(280px,1.5fr) 130px 100px 100px 136px 116px 120px 14px);min-width:1280px;align-items:start;gap:0;padding:11px 16px;border-bottom:1px solid var(--line);cursor:pointer;transition:.12s;}
.tk-task:last-child{border-bottom:none;}
.tk-task:hover{background:var(--rowalt);}
.tk-tn{font-size:13.5px;font-weight:600;white-space:normal;word-break:break-word;line-height:1.45;}
.tk-path{font-size:11px;color:var(--muted);line-height:1.35;display:flex;flex-direction:column;gap:2px;}
.tk-path b{color:var(--ink);font-size:12px;font-weight:600;}
.tk-type-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 7px;border-radius:20px;font-weight:600;white-space:nowrap;}
.tk-type-badge.plan{background:color-mix(in srgb,var(--info) 12%,transparent);color:var(--info);}
.tk-type-badge.added-main{background:color-mix(in srgb,var(--warn) 14%,transparent);color:var(--accent);}
.tk-type-badge.sub{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);}
.tk-fu{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);}
.tk-fu svg{width:13px;height:13px;}
/* cap SVG size in any .tiny context to prevent icon blowup */
.tiny svg{width:13px;height:13px;flex:none;vertical-align:middle;}
/* reference ID chip shown next to entity titles */
.ref-id{display:inline-flex;align-items:center;font-size:10px;font-weight:700;font-family:'IBM Plex Mono',monospace;letter-spacing:.04em;color:var(--muted2);background:var(--panel3);border:1px solid var(--line);border-radius:5px;padding:1px 6px;margin-inline-start:6px;white-space:nowrap;vertical-align:middle;}
/* activity action buttons: view / edit / delete */
.fu-actions{display:flex;flex-direction:row;gap:4px;align-items:flex-start;padding-top:2px;}
.fu-act-btn{width:30px;height:30px;border-radius:8px;border:1px solid var(--line-strong);background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;flex-shrink:0;}
.fu-act-btn svg{width:14px;height:14px;}
.fu-act-btn:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel2));}
.fu-act-btn.danger:hover{border-color:var(--bad);color:var(--bad);background:color-mix(in srgb,var(--bad) 8%,var(--panel2));}
.gates{display:flex;gap:4px;margin-inline-start:auto;}
.gdot{width:9px;height:9px;border-radius:50%;background:var(--panel3);border:1px solid var(--line-strong);}
.gdot.on{background:var(--ok);border-color:var(--ok);}
.tk-rng{font-size:10.5px;flex:0 0 auto;min-width:120px;text-align:end;}
.tk-arrow{width:11px;height:11px;color:var(--muted2);flex:0 0 11px;opacity:.65;}

/* على الشاشات الضيقة: تكديس عمودي كامل بدل الشبكة الأفقية العريضة — كل صف
   مهمة يصبح بطاقة، وكل خلية تعرض تسمية عمودها (بنفس نصوص .tk-head) قبل قيمتها. */
@media(max-width:760px){
  .tk-head{display:none;}
  .tk-scroll{overflow-x:visible;}
  .tk-task{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;padding:12px 14px;}
  .tk-task .tk-c{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;}
  .tk-task .c-nm{flex-direction:column;align-items:flex-start;gap:4px;}
  .tk-task .c-arw{display:none;}
  .tk-task .c-st::before,.tk-task .c-apr::before,.tk-task .c-own::before,
  .tk-task .c-watch::before,.tk-task .c-by::before,.tk-task .c-gates::before,
  .tk-task .c-rng::before{font-size:11px;font-weight:700;color:var(--muted);flex:none;}
  .tk-task .c-st::before{content:"الحالة";}
  .tk-task .c-apr::before{content:"الاعتماد";}
  .tk-task .c-own::before{content:"المسند إليه";}
  .tk-task .c-watch::before{content:"المتابع";}
  .tk-task .c-by::before{content:"منشئ المهمة";}
  .tk-task .c-gates::before{content:"سير المرحلة";}
  .tk-task .c-rng::before{content:"المدة";}
  .tk-rng{text-align:start;}
}

/* defer + prompt modals */
.modal.sm{max-width:460px;}
.mh-ic{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;margin-inline-end:9px;vertical-align:-7px;}
.mh-ic svg{width:16px;height:16px;}
.mh-ic.warn{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn);}
.mh-ic.ok{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok);}
.df-task{font-size:14px;font-weight:600;padding:10px 12px;border-radius:9px;background:var(--panel2);border:1px solid var(--line);margin-top:4px;}
.rchips{display:flex;flex-wrap:wrap;gap:7px;}
.rchip{font-family:inherit;font-size:12px;color:var(--muted);background:var(--panel2);border:1px solid var(--line-strong);
  border-radius:999px;padding:6px 12px;cursor:pointer;transition:.12s;}
.rchip:hover{color:var(--ink);border-color:var(--muted2);}
.rchip.on{color:var(--warn);border-color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);}
.df-shift{margin-top:10px;}
.df-shift:empty{margin:0;}
.nt-ms{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:var(--muted);cursor:pointer;}
.nt-ms input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;}
.inp.err{border-color:var(--bad)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--bad) 18%,transparent);}

/* drawer body — centered modal */
.drawer{padding:0;}
.drawer-head{padding:20px 24px 0;}
/* عنوان المهمة القابل للتعديل مباشرة في رأس اللوحة */
.ttl-edit{border:1px solid transparent;border-radius:8px;margin-inline-start:-7px;padding:2px 6px;cursor:text;transition:background .12s,border-color .12s;}
.ttl-edit:hover{background:var(--panel3);border-color:var(--line);}
.ttl-edit:focus{outline:none;background:var(--panel);border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent);}
.drawer-body{flex:1;overflow:auto;margin-top:14px;padding:0 24px 24px;}
.gate-wrap{display:flex;flex-direction:column;gap:10px;}
.gate{display:flex;gap:13px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);}
.gate.on{border-color:color-mix(in srgb,var(--ok) 40%,var(--line));}
.gate-n{width:28px;height:28px;border-radius:50%;background:var(--panel3);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:0 0 28px;}
.gate.on .gate-n{background:var(--ok-d);color:#fff;}
.gate-n svg{width:15px;height:15px;}
.gate-c{flex:1;}
.gate-t{font-size:13.5px;font-weight:700;margin-bottom:9px;}
.gate-actions{display:flex;gap:8px;flex-wrap:wrap;}
.gate-done{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;}
.gate-done svg{width:15px;height:15px;}
.gate-done.ok{color:var(--ok);}.gate-done.warn{color:var(--warn);}.gate-done.bad{color:var(--bad);}
.gate-lock{font-size:12px;color:var(--muted2);}

/* follow-ups */
.fu-form{border:1px solid var(--line-strong);border-radius:12px;padding:14px;background:var(--panel2);margin-bottom:12px;}
.fu-form textarea.doc-page{background:#fff;color:#12161f;font-family:Tahoma,Arial,sans-serif;line-height:1.8;padding:20px;border-radius:6px;box-shadow:0 1px 4px rgba(0,0,0,.12);max-width:100%;}
.fu-timeline{display:flex;flex-direction:column;gap:2px;position:relative;}
.fu{display:flex;gap:11px;padding:10px 0;position:relative;}
.fu-ic{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:0 0 30px;}
.fu-ic svg{width:15px;height:15px;}
.fu-ic.ok{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok);}
.fu-ic.info{background:color-mix(in srgb,var(--info) 18%,transparent);color:var(--info);}
.fu-ic.warn{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn);}
.fu-ic.accent{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);}
.fu-ic.gray{background:var(--panel3);color:var(--muted);}
.fu-b{flex:1;}
.fu-h{display:flex;align-items:center;gap:8px;}
.fu-h b{font-size:13px;}
.fu-t{font-size:12.5px;color:var(--ink);margin-top:3px;line-height:1.5;}
.fu-att{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--accent);margin-top:5px;text-decoration:none;}
.fu-att:hover{text-decoration:underline;}
.fu-att svg{width:12px;height:12px;}
.fu .x{align-self:flex-start;}

/* change request cards */
.cr-card{padding:15px;display:flex;flex-direction:column;gap:9px;}
.cr-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.cr-h b{font-size:14px;}
.cr-d{font-size:12.5px;color:var(--muted);line-height:1.5;}
.cr-m{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px;}
.cr-type-ic{width:24px;height:24px;border-radius:7px;background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn);display:flex;align-items:center;justify-content:center;flex:0 0 24px;}
.cr-type-ic svg{width:14px;height:14px;}
.cr-type-ic.bad{background:color-mix(in srgb,var(--bad) 18%,transparent);color:var(--bad);}
.cr-cancel{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--bad);padding:9px 11px;border-radius:9px;
  background:color-mix(in srgb,var(--bad) 10%,transparent);border:1px solid color-mix(in srgb,var(--bad) 28%,transparent);}
.cr-cancel svg{width:15px;height:15px;flex:0 0 15px;}
.cr-warn{display:flex;align-items:flex-start;gap:8px;font-size:11.5px;color:var(--bad);margin-top:10px;line-height:1.5;}
.cr-warn svg{width:14px;height:14px;flex:0 0 14px;margin-top:2px;}
.tk-stream.cancelled{opacity:.7;}
.tk-stream.cancelled .tk-sh-n b{text-decoration:line-through;text-decoration-color:var(--bad);}
.tk-stream.cancelled .tk-tasks{opacity:.55;}
.badge.bad svg{width:12px;height:12px;}
/* before/now */
.cr-ba{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 12px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);}
.cr-ba-col{display:flex;flex-direction:column;gap:2px;}
.cr-lbl{font-size:9.5px;color:var(--muted2);font-weight:600;letter-spacing:.04em;}
.cr-old{font-size:12px;color:var(--muted);text-decoration:line-through;text-decoration-color:var(--muted2);}
.cr-new{font-size:12px;color:var(--ink);font-weight:600;}
.cr-arrow{color:var(--muted2);display:flex;}.cr-arrow svg{width:15px;height:15px;}
.cr-ba svg{width:15px;height:15px;flex:0 0 15px;color:var(--muted2);}
.cr-cur{margin-top:9px;font-size:12px;}
.cr-delta{margin-top:10px;}
/* CR type toggle */
.crtype{display:flex;gap:8px;margin-top:6px;}
.crtype-b{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;height:40px;border:1px solid var(--line-strong);background:var(--panel2);
  color:var(--muted);font-family:inherit;font-size:13px;font-weight:600;border-radius:10px;cursor:pointer;}
.crtype-b.on{border-color:var(--accent);color:var(--ink);background:color-mix(in srgb,var(--accent) 12%,transparent);}
.crtype-b svg{width:15px;height:15px;}

/* schedule box in drawer */
.sched-box{border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.sched-row{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid var(--line);}
.sched-row:last-child{border-bottom:none;}
.sched-lbl{font-size:12px;color:var(--muted);min-width:110px;}
.sched-base{color:var(--muted);}
.sched-now-ch{color:var(--warn);font-weight:700;}
.sched-row .badge{margin-inline-start:auto;}
.sched-hist{display:flex;flex-direction:column;gap:2px;margin-top:10px;}
.shh{display:flex;gap:11px;padding:9px 0;}
.shh-ic{width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn);display:flex;align-items:center;justify-content:center;flex:0 0 28px;}
.shh-ic svg{width:14px;height:14px;}
.shh-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;}
.shh-r svg{width:13px;height:13px;color:var(--muted2);}

/* dashboard schedule feed */
.sched-feed{display:flex;flex-direction:column;}
.sf{display:flex;align-items:center;gap:13px;padding:13px 18px;border-bottom:1px solid var(--line);cursor:pointer;transition:.12s;}
.sf:last-child{border-bottom:none;}
.sf:hover{background:var(--rowalt);}
.sf-ic{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:0 0 32px;}
.sf-ic svg{width:16px;height:16px;}
.sf-ic.warn{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn);}
.sf-ic.ok{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok);}
.sf-ic.gray{background:var(--panel3);color:var(--muted);}
.sf-b{flex:1;}
.sf-h{display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.sf-h b{font-size:13.5px;}
.sf-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:5px;}
.sf-r svg{width:13px;height:13px;color:var(--muted2);}
.sf-at{flex:0 0 auto;}

/* audit */
.auditlog{display:flex;flex-direction:column;}
.aud{display:flex;gap:13px;padding:13px 18px;border-bottom:1px solid var(--line);}
.aud:last-child{border-bottom:none;}
.aud-ic{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:0 0 32px;}
.aud-ic svg{width:16px;height:16px;}
.aud-ic.ok{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok);}
.aud-ic.info{background:color-mix(in srgb,var(--info) 16%,transparent);color:var(--info);}
.aud-ic.warn{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn);}
.aud-ic.bad{background:color-mix(in srgb,var(--bad) 16%,transparent);color:var(--bad);}
.aud-ic.gray{background:var(--panel3);color:var(--muted);}
.aud-b{flex:1;}
.aud-d{font-size:13px;font-weight:500;}
.aud-m{display:flex;align-items:center;gap:9px;margin-top:4px;}

/* اختيار لون المسار في نافذة «تعديل المسار» */
.st-colors{display:flex;gap:8px;flex-wrap:wrap}
.st-color{width:30px;height:30px;border-radius:9px;border:2px solid transparent;cursor:pointer;
  padding:0;transition:transform .12s,border-color .12s;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.st-color:hover{transform:translateY(-1px)}
.st-color.on{border-color:var(--ink);transform:translateY(-1px)}

/* حالة إرسال رابط التوقيع أمام كل موقّع في كتلة المحضر */
.pill .ok-text{color:var(--ok);display:inline-flex;align-items:center;gap:4px}
.pill .bad-text{color:var(--bad);display:inline-flex;align-items:center;gap:4px;max-width:26rem}
.pill .ok-text svg,.pill .bad-text svg{width:12px;height:12px;flex:0 0 12px}

/* اقتراحات جهات الاتصال في نافذة الحضور الخارجي */
.ea-hits{margin-top:6px;border:1px solid var(--line-strong);border-radius:11px;overflow:hidden;background:var(--bg2);max-height:210px;overflow-y:auto}
.ea-hits-t{padding:6px 12px;font-size:11px;color:var(--muted);background:var(--panel2);border-bottom:1px solid var(--line)}
.ea-hit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;width:100%;padding:8px 12px;border:0;
  background:none;cursor:pointer;text-align:start;border-bottom:1px solid var(--line);color:var(--ink)}
.ea-hit:last-child{border-bottom:0}
.ea-hit:hover{background:var(--panel2)}
.ea-hit b{font-size:12.5px;font-weight:600}
.ea-hit i{font-style:normal;font-size:11px;color:var(--muted);grid-column:1}
.ea-hit span{grid-row:1/3;align-self:center;font-size:11px;color:var(--muted);direction:ltr}

/* مكان الاجتماع / رابطه في بطاقة النشاط */
.fu-where{display:inline-flex;align-items:center;gap:4px;color:var(--muted)}
a.fu-where{color:var(--accent);text-decoration:none}
a.fu-where:hover{text-decoration:underline}
.fu-where svg{width:12px;height:12px;flex:0 0 12px}

/* شريط إدراج أماكن التواقيع تحت نص المحضر */
.sig-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:7px}
.sig-bar .btn{font-size:11.5px;padding:0 10px;height:28px}

/* شريط أماكن التواقيع: عنوانه يربطه بمربّع النص فوقه */
.sig-bar{margin-top:8px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}
.sig-bar-h{font-size:12px;font-weight:600;color:var(--ink);margin-bottom:7px}
.sig-bar-b{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.sig-bar .btn{font-size:11.5px;padding:0 10px;height:28px}
.sig-bar .btn svg{width:12px;height:12px}
/* ومضة تُري المستخدم أين ذهب الوسم */
.sig-flash{border-color:var(--accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
/* تصحيح تاريخ بوابة مؤكَّدة أو الرجوع خطوة */
.gate-fix{display:flex;gap:7px;margin-top:8px;flex-wrap:wrap}
.gate-fix .btn{font-size:11.5px}
/* نصّ الخطأ داخل لوحة المهمة — لينقله المستخدم كما هو */
.dr-err{margin:8px 0 0;padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;
  background:var(--bg2);font-size:11.5px;line-height:1.7;white-space:pre-wrap;word-break:break-word;direction:ltr;text-align:left}

/* نافذة إغلاق المسار: ما بقي مفتوحاً يُسرد قبل الضغط */
.cs-open{margin:10px 0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);background:color-mix(in srgb,var(--warn) 10%,transparent);border-radius:10px}
.cs-open b{display:block;font-size:13px;margin-bottom:4px}
.cs-open ul{margin:4px 0 6px;padding-inline-start:18px;font-size:12.5px;line-height:1.8}
.cs-open small{display:block;margin-top:4px;line-height:1.7}
.badge.rest{cursor:pointer}
.badge.rest:hover{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}
.rest-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;max-height:46vh;overflow:auto}
.rest-row{display:flex;align-items:center;gap:8px;width:100%;text-align:start;padding:8px 10px;border:1px solid var(--line);
  background:var(--bg2);border-radius:9px;cursor:pointer;font:inherit}
.rest-row:hover{border-color:var(--accent)}
.rest-row b{flex:1;font-size:13px;line-height:1.6}

/* تنقّل بين مهام المسار من رأس اللوحة */
.drnav-wrap{display:flex;align-items:center;gap:4px}
.drnav{padding:5px 8px}
.drnav svg{width:16px;height:16px}
.drnav svg.mir{transform:scaleX(-1)}
.drnav[disabled]{opacity:.38;cursor:default}
.drnav-c{font-size:11.5px;color:var(--muted);min-width:46px;text-align:center;letter-spacing:.3px}
