/* v33 — محادثة فاخرة بمرفقات */
#chatModal{
  --c-navy:#072a6c; --c-blue:#0a3d91; --c-sky:#078ed5; --c-mint:#00a978; --c-mint-d:#08856a;
  --c-ink:#102f58; --c-muted:#6b8199; --c-line:#dbe8f1; --c-bg:#f3f8fc; --c-card:#fff;
  --c-mine-1:#0a4fb4; --c-mine-2:#078ed5;
  position:fixed;inset:0;z-index:2100;padding:0!important;display:block;
  font-family:"Tajawal",system-ui,sans-serif;color:var(--c-ink);
}
#chatModal.hidden{display:none!important}
#chatModal .modal-backdrop{display:none!important}
#chatModal *{box-sizing:border-box}
#chatModal button{font-family:inherit}

#chatModal .chat-modal-card{
  position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;
  max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;
  background:var(--c-bg)!important;box-shadow:none!important;padding:0!important;
  display:flex!important;flex-direction:column!important;
  animation:chat-in .32s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes chat-in{from{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:none}}

/* ───────── الترويسة ───────── */
#chatModal .chat-header{
  position:relative!important;display:flex!important;align-items:center;justify-content:space-between;gap:14px;
  min-height:76px;padding:12px 22px!important;border:0!important;color:#fff;z-index:10;
  background:
    radial-gradient(circle at 12% -40%,rgba(0,169,120,.55),transparent 55%),
    radial-gradient(circle at 92% 140%,rgba(7,142,213,.65),transparent 55%),
    linear-gradient(120deg,var(--c-navy),var(--c-blue) 55%,#0b6fc4);
  box-shadow:0 6px 24px rgba(7,42,108,.28);overflow:hidden;
}
#chatModal .chat-header::after{ /* موجة مائية خفيفة */
  content:"";position:absolute;inset:auto 0 0 0;height:14px;pointer-events:none;opacity:.5;
  background:radial-gradient(18px 10px at 12px 14px,rgba(255,255,255,.2) 98%,transparent) 0 0/36px 14px repeat-x;
}
#chatModal .chat-header-brand{display:flex;align-items:center;gap:14px;min-width:0}
#chatModal .chat-header-logo{
  width:48px;height:48px;flex:0 0 48px;border-radius:15px;display:grid;place-items:center;
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(6px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 6px 14px rgba(0,0,0,.15);
}
#chatModal .chat-header-logo svg{width:26px;height:26px;fill:#fff;stroke:none}
#chatModal .chat-header-text{min-width:0}
#chatModal .chat-header h2{margin:0!important;font-size:1.3rem!important;font-weight:900;color:#fff!important;letter-spacing:.2px;white-space:nowrap}
#chatModal .chat-header p{margin:3px 0 0!important;font-size:.8rem!important;color:rgba(255,255,255,.82)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:560px}
#chatModal .chat-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap!important;position:relative;z-index:1}
#chatModal .chat-header-actions .button{
  min-height:40px;padding:8px 14px;border-radius:12px;font-weight:800;font-size:.85rem;white-space:nowrap;
  color:#fff!important;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.3)!important;
  backdrop-filter:blur(6px);transition:background .15s,transform .15s;cursor:pointer;
}
#chatModal .chat-header-actions .button:hover{background:rgba(255,255,255,.26)!important;transform:translateY(-1px)}
#chatModal .modal-close{
  width:42px!important;height:42px!important;border-radius:50%!important;display:grid;place-items:center;
  font-size:1.6rem;line-height:1;color:#fff!important;background:rgba(255,255,255,.16)!important;
  border:1px solid rgba(255,255,255,.3)!important;cursor:pointer;transition:background .15s,transform .2s;position:static!important;
}
#chatModal .modal-close:hover{background:#e5484d!important;transform:rotate(90deg)}
.chat-notify-on{background:linear-gradient(135deg,#19c28f,#00a978)!important;border-color:transparent!important;color:#fff!important}

#chatModal .chat-warning{
  margin:0;padding:9px 22px;font-size:.88rem;font-weight:700;background:#fff4d6;color:#8a5a00;border-bottom:1px solid #f1d58a;z-index:9
}

/* ───────── التخطيط ───────── */
#chatModal .chat-layout{
  flex:1 1 0;display:grid;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(300px,360px) minmax(0,1fr);min-height:0;background:var(--c-card);
}
#chatModal .chat-sidebar{
  display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--c-card);
  border-inline-end:1px solid var(--c-line);
}
#chatModal .chat-sidebar-scroll{flex:1;min-height:0;overflow-y:auto;padding:4px 10px 16px;scrollbar-width:thin;scrollbar-color:#c3d5e4 transparent}

/* بطاقة المستخدم الحالي */
#chatModal .chat-self-status{
  display:flex;align-items:center;gap:12px;margin:14px 14px 10px;padding:12px 14px;border-radius:18px;
  background:linear-gradient(135deg,#eaf4ff,#e6faf3);border:1px solid #d4e8f3;
}
#chatModal .chat-self-copy{display:flex;flex-direction:column;min-width:0;line-height:1.35}
#chatModal .chat-self-copy strong{font-size:.98rem;font-weight:900;color:var(--c-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#chatModal .chat-self-copy small{font-size:.76rem;color:var(--c-mint-d);font-weight:700}

/* البحث */
#chatModal .chat-search{position:relative;margin:0 14px 8px}
#chatModal .chat-search svg{position:absolute;inset-inline-start:13px;top:50%;width:18px;height:18px;transform:translateY(-50%);fill:none;stroke:var(--c-muted);stroke-width:2;stroke-linecap:round;pointer-events:none}
#chatModal .chat-search input{
  width:100%;height:44px;padding:0 42px 0 14px;border-radius:14px;border:1px solid var(--c-line);background:#f3f8fc;
  font:600 .92rem "Tajawal",sans-serif;color:var(--c-ink);outline:0;transition:border-color .15s,box-shadow .15s,background .15s;
}
#chatModal .chat-search input:focus{background:#fff;border-color:var(--c-sky);box-shadow:0 0 0 4px rgba(7,142,213,.14)}

/* العنوان الفرعي */
#chatModal .chat-sidebar-title{
  display:flex;align-items:center;justify-content:space-between;padding:14px 8px 6px;
  font-size:.78rem;font-weight:800;color:var(--c-muted);letter-spacing:.4px;
}
#chatModal .chat-sidebar-title b{
  padding:3px 10px;border-radius:99px;background:#e4faf2;color:var(--c-mint-d);font-size:.74rem;font-weight:800;
}

/* جهات الاتصال */
#chatModal .chat-contacts{display:flex;flex-direction:column;gap:2px}
#chatModal .chat-contact{
  position:relative;width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:0;border-radius:16px;
  background:transparent;text-align:start;cursor:pointer;color:var(--c-ink);transition:background .15s,transform .15s;
}
#chatModal .chat-contact:hover{background:#f0f7fc}
#chatModal .chat-contact:active{transform:scale(.99)}
#chatModal .chat-contact.is-active{background:linear-gradient(135deg,#e7f2ff,#e5f9f1);box-shadow:inset 0 0 0 1px #cfe5f3}
#chatModal .chat-contact.is-active::before{
  content:"";position:absolute;inset-inline-start:0;top:20%;bottom:20%;width:4px;border-radius:4px;background:linear-gradient(var(--c-sky),var(--c-mint))
}
#chatModal .chat-contact-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
#chatModal .chat-contact-copy strong{font-size:.97rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#chatModal .chat-contact-copy small{font-size:.77rem;color:var(--c-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#chatModal .chat-contact-global{margin-bottom:2px}
#chatModal .chat-contact-icon{
  width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%;font-size:1.35rem;
  background:linear-gradient(135deg,var(--c-blue),var(--c-sky));box-shadow:0 6px 14px rgba(10,61,145,.25);filter:saturate(1.1)
}
#chatModal .chat-unread{
  min-width:24px;height:24px;padding:0 7px;display:grid;place-items:center;border-radius:99px;font-size:.76rem;font-weight:900;
  color:#fff;background:linear-gradient(135deg,#19c28f,#00a978);box-shadow:0 4px 10px rgba(0,169,120,.4);animation:chat-pop .35s cubic-bezier(.3,1.6,.5,1) both
}
@keyframes chat-pop{from{transform:scale(.3)}to{transform:scale(1)}}

/* الصور الرمزية */
#chatModal .chat-avatar{
  --av:#0a3d91;position:relative;flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;
  font-weight:900;font-size:1rem;color:#fff;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.35),transparent 55%),var(--av);
  box-shadow:0 5px 12px rgba(10,40,90,.2);user-select:none
}
#chatModal .chat-avatar-lg{width:46px;height:46px;flex-basis:46px;font-size:1.05rem}
#chatModal .presence-dot{
  position:absolute;inset-inline-end:-1px;bottom:-1px;width:14px;height:14px;border-radius:50%;background:#b4c2cf;border:3px solid #fff
}
#chatModal .presence-dot.online{background:#19c28f;box-shadow:0 0 0 0 rgba(25,194,143,.6);animation:chat-pulse 2s infinite}
@keyframes chat-pulse{70%{box-shadow:0 0 0 7px rgba(25,194,143,0)}100%{box-shadow:0 0 0 0 rgba(25,194,143,0)}}

/* قسم المسؤول */
#chatModal .chat-admin-section{margin-top:14px;padding-top:12px;border-top:1px dashed var(--c-line)}
#chatModal .chat-admin-toggle{
  width:100%;padding:11px 14px;border-radius:14px;border:1px solid #cfe0ee;background:#f3f8fc;color:var(--c-blue);
  font-weight:800;font-size:.9rem;cursor:pointer;transition:background .15s
}
#chatModal .chat-admin-toggle:hover{background:#e7f2ff}
#chatModal .chat-admin-threads{display:flex;flex-direction:column;gap:6px;margin-top:8px}
#chatModal .chat-admin-thread{
  display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:14px;border:1px solid var(--c-line);background:#fff;text-align:start;cursor:pointer
}
#chatModal .chat-admin-thread strong{font-size:.88rem;font-weight:800;color:var(--c-ink)}
#chatModal .chat-admin-thread small{font-size:.74rem;color:var(--c-muted)}
#chatModal .chat-admin-thread.is-active{background:#e7f2ff;border-color:var(--c-sky)}
#chatModal .chat-admin-empty{margin:6px;font-size:.82rem;color:var(--c-muted)}

/* ───────── منطقة المحادثة ───────── */
#chatModal .chat-main{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;height:100%;min-height:0;min-width:0;
  background:
    radial-gradient(circle at 85% 8%,rgba(0,169,120,.10),transparent 28rem),
    radial-gradient(circle at 8% 80%,rgba(7,142,213,.12),transparent 30rem),
    #eef5fa;
}
#chatModal .chat-main::before{ /* نقش خفيف */
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(10,61,145,.09) 1.2px,transparent 1.4px);background-size:26px 26px;
}
#chatModal .chat-main>*{position:relative}

#chatModal .chat-room-bar{
  display:flex;align-items:center;gap:13px;padding:11px 20px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--c-line);z-index:4;box-shadow:0 4px 18px rgba(10,61,145,.05)
}
#chatModal .chat-room-info{min-width:0;flex:1}
#chatModal .chat-room-bar h3{margin:0;font-size:1.06rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#chatModal .chat-room-bar p{margin:2px 0 0;font-size:.8rem;color:var(--c-mint-d);font-weight:700}
#chatModal .chat-room-badge{
  padding:5px 14px;border-radius:99px;font-size:.78rem;font-weight:800;background:#e7f2ff;color:var(--c-blue);border:1px solid #cfe3f7
}
#chatModal .chat-room-badge[data-kind="private"]{background:#e4faf2;color:var(--c-mint-d);border-color:#bfeedd}
#chatModal .chat-room-badge[data-kind="admin"]{background:#fff1d6;color:#9a6200;border-color:#f3d79a}
#chatModal .chat-back{
  display:none;width:40px;height:40px;border:0;border-radius:50%;background:#eef5fa;color:var(--c-blue);font-size:1.7rem;line-height:1;cursor:pointer
}

/* الرسائل */
#chatModal .chat-messages{
  display:flex;flex-direction:column;gap:4px;overflow-y:auto;padding:22px clamp(14px,5vw,80px) 14px;
  scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#b9cfdf transparent
}
#chatModal .chat-messages.hidden{display:none!important}
#chatModal .chat-day{display:flex;justify-content:center;margin:14px 0 10px}
#chatModal .chat-day span{
  padding:5px 16px;border-radius:99px;font-size:.76rem;font-weight:800;color:#5a7490;background:rgba(255,255,255,.92);
  border:1px solid var(--c-line);box-shadow:0 2px 8px rgba(10,61,145,.06)
}

#chatModal .chat-message{
  position:relative;align-self:flex-end;width:fit-content;min-width:120px;max-width:min(70%,720px);
  padding:9px 14px 7px;border-radius:18px 18px 18px 6px;background:#fff;border:1px solid #e0ebf3;
  box-shadow:0 2px 8px rgba(10,61,145,.07);margin-top:8px;animation:chat-msg .25s cubic-bezier(.2,.8,.2,1) both
}
@keyframes chat-msg{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
#chatModal .chat-message.is-follow{margin-top:0}
#chatModal .chat-message.is-follow .chat-message-user{display:none}
#chatModal .chat-message.is-mine{
  align-self:flex-start;border:0;color:#fff;border-radius:18px 18px 6px 18px;
  background:linear-gradient(135deg,var(--c-mine-1),var(--c-mine-2));box-shadow:0 6px 16px rgba(10,79,180,.28)
}
#chatModal .chat-message.is-admin:not(.is-mine){border-color:#f3d79a;background:linear-gradient(180deg,#fffaf0,#fff)}
#chatModal .chat-message-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
#chatModal .chat-message-user{display:flex;align-items:center;gap:7px;font-size:.82rem;font-weight:900;color:var(--c-sky);margin-bottom:2px}
#chatModal .chat-message.is-mine .chat-message-user{color:rgba(255,255,255,.88)}
#chatModal .chat-admin-badge{padding:1px 8px;border-radius:99px;font-size:.68rem;font-weight:800;background:#ffe9b5;color:#8a5a00}
#chatModal .chat-message-text{margin:0;font-size:1rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
#chatModal .chat-message-time{
  display:block;margin-inline-start:auto;font-size:.68rem;color:#8da2b6;font-weight:700;direction:ltr
}
#chatModal .chat-message.is-follow .chat-message-head{position:absolute;inset-inline-end:14px;bottom:6px}
#chatModal .chat-message.is-follow .chat-message-text{padding-bottom:12px}
#chatModal .chat-message:not(.is-follow) .chat-message-head{order:2;margin-top:2px;justify-content:flex-end}
#chatModal .chat-message:not(.is-follow){display:flex;flex-direction:column}
#chatModal .chat-message:not(.is-follow) .chat-message-head{display:contents}
#chatModal .chat-message:not(.is-follow) .chat-message-user{order:0}
#chatModal .chat-message:not(.is-follow) .chat-message-text{order:1}
#chatModal .chat-message:not(.is-follow) .chat-message-time{order:2;align-self:flex-end;margin-top:2px}
#chatModal .chat-message.is-mine .chat-message-time{color:rgba(255,255,255,.72)}
#chatModal .chat-message-actions{display:flex;justify-content:flex-end;margin-top:2px;order:3}
#chatModal .chat-delete-button{
  border:0;background:transparent;font-size:.72rem;font-weight:800;color:#d6455d;cursor:pointer;padding:2px 6px;border-radius:8px;opacity:.6;transition:opacity .15s,background .15s
}
#chatModal .chat-delete-button:hover{opacity:1;background:rgba(214,69,93,.12)}
#chatModal .chat-message.is-mine .chat-delete-button{color:#ffd3da}

/* حالة فارغة */
#chatModal .chat-empty{display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;padding:30px;color:var(--c-muted)}
#chatModal .chat-empty.hidden{display:none!important}
#chatModal .chat-empty-art{
  width:96px;height:96px;display:grid;place-items:center;border-radius:30px;font-size:3rem;margin-bottom:8px;
  background:linear-gradient(135deg,#e7f2ff,#e5f9f1);border:1px solid #d3e7f2;box-shadow:0 14px 30px rgba(10,61,145,.1);animation:chat-float 3.5s ease-in-out infinite
}
@keyframes chat-float{50%{transform:translateY(-8px)}}
#chatModal .chat-empty h3{margin:0;font-size:1.2rem;font-weight:900;color:var(--c-ink)}
#chatModal .chat-empty p{margin:0;font-size:.92rem}

#chatModal .chat-readonly{
  margin:0;padding:13px 20px;text-align:center;font-weight:800;font-size:.9rem;color:#8a5a00;background:#fff4d6;border-top:1px solid #f1d58a
}

/* حقل الكتابة */
#chatModal .chat-compose{
  padding:12px clamp(12px,3vw,28px) calc(12px + env(safe-area-inset-bottom));background:rgba(255,255,255,.9);
  backdrop-filter:blur(14px);border-top:1px solid var(--c-line);display:block
}
#chatModal .chat-compose.hidden{display:none!important}
#chatModal .chat-compose-box{
  display:flex;align-items:flex-end;gap:10px;padding:6px 8px 6px 8px;border-radius:26px;background:#fff;border:1.5px solid #cfe0ee;
  box-shadow:0 6px 20px rgba(10,61,145,.08);transition:border-color .15s,box-shadow .15s
}
#chatModal .chat-compose-box:focus-within{border-color:var(--c-sky);box-shadow:0 0 0 4px rgba(7,142,213,.14),0 6px 20px rgba(10,61,145,.1)}
#chatModal .chat-compose textarea{
  flex:1;min-height:44px;max-height:140px;padding:11px 14px;border:0!important;outline:0;resize:none;background:transparent!important;
  font:500 1rem/1.55 "Tajawal",sans-serif;color:var(--c-ink);box-shadow:none!important
}
#chatModal .chat-compose textarea::placeholder{color:#97abbd}
#chatModal .chat-send{
  flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:50%;cursor:pointer;
  background:linear-gradient(135deg,var(--c-blue),var(--c-sky));box-shadow:0 8px 18px rgba(10,79,180,.4);
  transition:transform .15s,box-shadow .15s,filter .15s
}
#chatModal .chat-send svg{width:22px;height:22px;fill:#fff;stroke:none;transform:scaleX(-1)}
#chatModal .chat-send:hover{transform:translateY(-2px) scale(1.04);filter:brightness(1.08)}
#chatModal .chat-send:active{transform:scale(.94)}
#chatModal .chat-send:disabled{filter:grayscale(.7);opacity:.6;cursor:wait;transform:none}
#chatModal .chat-status{display:block;min-height:0;padding:4px 14px 0;font-size:.76rem;font-weight:700;color:var(--c-muted)}
#chatModal .chat-status:empty{display:none}

/* إشعار منبثق */
#chatModal .chat-toast{
  position:fixed;top:88px;inset-inline-start:22px;z-index:2200;max-width:340px;padding:13px 18px;border-radius:16px;
  color:#fff;background:linear-gradient(135deg,var(--c-navy),var(--c-blue));box-shadow:0 18px 40px rgba(7,42,108,.4);
  border-inline-start:5px solid var(--c-mint);font-size:.9rem;animation:chat-in .3s both
}
#chatModal .chat-toast.hidden{display:none!important}
#chatModal .chat-toast strong{display:block;margin-bottom:2px;font-weight:900}

/* ───────── الجوال ───────── */
@media(max-width:860px){
  #chatModal .chat-header{min-height:64px;padding:9px 12px!important}
  #chatModal .chat-header-logo{width:40px;height:40px;flex-basis:40px;border-radius:12px}
  #chatModal .chat-header-logo svg{width:22px;height:22px}
  #chatModal .chat-header h2{font-size:1.08rem!important}
  #chatModal .chat-header p{display:none}
  #chatModal .chat-header-actions .button span{display:none}
  #chatModal .chat-header-actions .button{padding:0;width:40px;justify-content:center;display:grid;place-items:center}

  #chatModal .chat-layout{grid-template-columns:minmax(0,1fr);position:relative;overflow:hidden}
  #chatModal .chat-sidebar,#chatModal .chat-main{grid-area:1/1;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
  #chatModal .chat-sidebar{border:0;z-index:2}
  #chatModal .chat-main{transform:translateX(-100%);z-index:3}
  #chatModal.is-room-open .chat-main{transform:none}
  #chatModal.is-room-open .chat-sidebar{transform:translateX(30%)}
  #chatModal .chat-back{display:grid;place-items:center}
  #chatModal .chat-messages{padding:14px 10px 10px}
  #chatModal .chat-message{max-width:86%}
  #chatModal .chat-toast{top:72px;inset-inline:12px;max-width:none}
  #chatModal .chat-room-bar{padding:9px 12px}
  #chatModal .chat-room-badge{display:none}
}
@media(prefers-reduced-motion:reduce){
  #chatModal *,#chatModal *::before{animation:none!important;transition:none!important}
}


/* ───────── v33: المرفقات والإضافات ───────── */
#chatModal .chat-attach{
  width:44px;height:44px;flex:0 0 44px;border:0;border-radius:50%;background:transparent;color:#5d7a95;
  display:grid;place-items:center;cursor:pointer;transition:background .18s,color .18s,transform .18s
}
#chatModal .chat-attach:hover{background:#e7f2ff;color:var(--c-blue);transform:translateY(-1px)}
#chatModal .chat-attach:disabled{opacity:.5;cursor:not-allowed;transform:none}
#chatModal .chat-attach svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#chatModal .chat-compose-box{position:relative}

/* معاينة المرفق قبل الإرسال */
#chatModal .chat-attachment-preview{
  display:flex;align-items:center;gap:12px;margin:0 0 10px;padding:10px 12px;border-radius:18px;max-width:100%;
  background:linear-gradient(135deg,#f1f8ff,#effbf6);border:1px solid #cfe3f1;box-shadow:0 6px 16px rgba(10,61,145,.07);animation:chat-msg .25s both
}
#chatModal .chat-attachment-preview.hidden{display:none!important}
#chatModal .chat-attachment-preview .cap{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
#chatModal .chat-attachment-preview strong{font-size:.88rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatModal .chat-attachment-preview small{font-size:.74rem;color:var(--c-muted);font-weight:600}
#chatModal .chat-attachment-preview button{
  width:32px;height:32px;border:0;border-radius:50%;background:#fff;color:#d6455d;font-size:1.2rem;line-height:1;cursor:pointer;
  box-shadow:0 2px 6px rgba(0,0,0,.1);transition:transform .15s,background .15s
}
#chatModal .chat-attachment-preview button:hover{background:#d6455d;color:#fff;transform:rotate(90deg)}

/* بطاقة الملف */
#chatModal .chat-file-icon{
  width:46px;height:46px;flex:0 0 46px;border-radius:14px;display:grid;place-items:center;overflow:hidden;
  font-size:.72rem;font-weight:900;letter-spacing:.4px;color:#fff;direction:ltr;
  background:linear-gradient(145deg,color-mix(in srgb,var(--k,#5d7a95) 78%,#fff),var(--k,#5d7a95));box-shadow:0 6px 12px color-mix(in srgb,var(--k,#5d7a95) 38%,transparent)
}
#chatModal .chat-file-icon img{width:100%;height:100%;object-fit:cover;display:block}
#chatModal .kind-pdf{--k:#e5484d}#chatModal .kind-xls{--k:#14975f}#chatModal .kind-doc{--k:#2a6fdb}
#chatModal .kind-zip{--k:#d98a12}#chatModal .kind-img{--k:#7c4dff}#chatModal .kind-file{--k:#5d7a95}
#chatModal .chat-file-card{
  display:flex;align-items:center;gap:12px;min-width:250px;max-width:400px;margin-top:8px;padding:10px 12px;border-radius:16px;
  text-decoration:none;color:inherit;background:rgba(240,247,252,.9);border:1px solid #d9e8f3;transition:transform .15s,box-shadow .15s,background .15s
}
#chatModal .chat-file-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(10,61,145,.14);background:#fff}
#chatModal .chat-message.is-mine .chat-file-card{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);color:#fff}
#chatModal .chat-message.is-mine .chat-file-card:hover{background:rgba(255,255,255,.26)}
#chatModal .chat-file-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
#chatModal .chat-file-info strong{font-size:.88rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:auto}
#chatModal .chat-file-info small{font-size:.72rem;opacity:.7;font-weight:700}
#chatModal .chat-file-download{
  width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--c-blue);box-shadow:0 3px 8px rgba(10,61,145,.16)
}
#chatModal .chat-file-download svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
#chatModal .chat-image-attachment{
  display:block;margin-top:8px;width:380px;max-width:100%;border-radius:16px;overflow:hidden;background:#dfe9f1;cursor:zoom-in;
  box-shadow:0 6px 18px rgba(10,40,90,.18);position:relative
}
#chatModal .chat-image-attachment img{display:block;max-width:100%;width:100%;max-height:360px;object-fit:cover;transition:transform .35s}
#chatModal .chat-image-attachment:hover img{transform:scale(1.04)}
#chatModal .chat-message-text:empty{display:none}
#chatModal .chat-message:has(.chat-image-attachment){padding:6px 6px 7px}
#chatModal .chat-message:has(.chat-image-attachment) .chat-message-user,
#chatModal .chat-message:has(.chat-image-attachment) .chat-message-text{padding-inline:8px}

/* عارض الصور */
.chat-lightbox{
  position:fixed;inset:0;z-index:50;display:grid;grid-template-rows:auto 1fr;place-items:center;padding:0 18px 22px;
  background:rgba(4,18,44,.88);backdrop-filter:blur(14px);animation:chat-fade .2s both
}
@keyframes chat-fade{from{opacity:0}to{opacity:1}}
.chat-lightbox-bar{
  width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 4px;color:#fff;font-family:"Tajawal",sans-serif
}
.chat-lightbox-bar strong{font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-lightbox-bar span{display:flex;gap:10px;align-items:center}
.chat-lightbox-dl{padding:8px 16px;border-radius:12px;background:rgba(255,255,255,.16);color:#fff;text-decoration:none;font-weight:800;font-size:.85rem;border:1px solid rgba(255,255,255,.3)}
.chat-lightbox-x{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.16);color:#fff;font-size:1.5rem;cursor:pointer}
.chat-lightbox img{max-width:100%;max-height:100%;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.5);animation:chat-in .3s both;object-fit:contain}

/* لوحة الإيموجي */
#chatModal .chat-emoji-panel{
  position:absolute;bottom:calc(100% + 12px);inset-inline-start:0;z-index:20;width:min(320px,86vw);padding:10px;border-radius:20px;
  display:grid;grid-template-columns:repeat(6,1fr);gap:4px;background:#fff;border:1px solid var(--c-line);
  box-shadow:0 22px 50px rgba(10,40,90,.25);animation:chat-in .2s both
}
#chatModal .chat-emoji-panel.hidden{display:none!important}
#chatModal .chat-emoji-panel button{height:42px;border:0;border-radius:12px;background:transparent;font-size:1.4rem;cursor:pointer;transition:background .12s,transform .12s}
#chatModal .chat-emoji-panel button:hover{background:#e7f2ff;transform:scale(1.2)}

/* زر النزول + السحب والإفلات */
#chatModal .chat-scroll-down{
  position:absolute!important;inset-inline-end:26px;bottom:104px;width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;z-index:6;
  display:grid;place-items:center;background:#fff;color:var(--c-blue);box-shadow:0 10px 24px rgba(10,61,145,.28);
  opacity:0;transform:translateY(12px) scale(.8);pointer-events:none;transition:.22s
}
#chatModal .chat-scroll-down.is-visible{opacity:1;transform:none;pointer-events:auto}
#chatModal .chat-scroll-down svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
#chatModal .chat-main.is-dragging::after{
  content:"أفلت الملف هنا لإرفاقه 📎";position:absolute;inset:12px;z-index:30;display:grid;place-items:center;border-radius:26px;
  border:3px dashed var(--c-sky);background:rgba(231,242,255,.92);backdrop-filter:blur(6px);font-size:1.3rem;font-weight:900;color:var(--c-blue)
}
@media(max-width:860px){
  #chatModal .chat-file-card{min-width:0;width:100%}
  #chatModal .chat-scroll-down{inset-inline-end:14px;bottom:92px}
  #chatModal .chat-emoji-panel{grid-template-columns:repeat(6,1fr)}
}
@media(max-width:860px){#chatModal .chat-compose textarea{font-size:.95rem}#chatModal .chat-compose textarea::placeholder{font-size:.85rem}}
