/* =========================================================
   مساعد العملاء — واجهة الدردشة العائمة (مشروع اللبان العُماني)
   النطاق: كل الأنماط مسبوقة بـ .asst- وبداخل #asstRoot لتجنّب أي تعارض
   ========================================================= */
#asstRoot{
  --asst-w:min(396px,calc(100vw - 26px));
  --asst-h:min(636px,calc(100vh - 132px));
  position:fixed;inset-inline-end:22px;bottom:22px;z-index:60;
  font-family:var(--font-body);direction:rtl
}
#asstRoot *{box-sizing:border-box}

/* ————— زر التشغيل ————— */
.asst-launch{
  display:inline-flex;align-items:center;gap:10px;border:0;cursor:pointer;
  padding:13px 18px 13px 16px;border-radius:var(--r-pill);
  background:linear-gradient(135deg,var(--resin-600),var(--resin-400));
  color:#fff;font:600 .92rem/1 var(--font-body);
  box-shadow:var(--shadow-3);transition:transform var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease)
}
.asst-launch:hover{transform:translateY(-2px);box-shadow:0 22px 52px rgba(16,21,19,.28)}
.asst-launch:focus-visible{outline:3px solid var(--sage-400);outline-offset:3px}
.asst-launch svg{width:20px;height:20px}
.asst-launch .asst-dot{width:9px;height:9px;border-radius:50%;background:var(--sage-300);box-shadow:0 0 0 0 rgba(147,192,175,.7);animation:asstPulse 2.4s infinite}
.asst-launch[hidden]{display:none}
@keyframes asstPulse{70%{box-shadow:0 0 0 12px rgba(147,192,175,0)}100%{box-shadow:0 0 0 0 rgba(147,192,175,0)}}

/* ————— اللوحة ————— */
.asst-panel{
  width:var(--asst-w);height:var(--asst-h);display:flex;flex-direction:column;
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);
  box-shadow:var(--shadow-3);overflow:hidden;animation:asstUp var(--dur-slow) var(--ease)
}
.asst-panel[hidden]{display:none}
@keyframes asstUp{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
.asst-head{
  display:flex;align-items:center;gap:11px;padding:13px 14px;
  background:linear-gradient(135deg,var(--ink-900),var(--ink-700));color:#f9f5ee;
  border-bottom:2px solid var(--resin-500)
}
.asst-avatar{
  flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 32% 28%,var(--resin-300),var(--resin-600));color:#1a1206
}
.asst-avatar svg{width:21px;height:21px}
.asst-head h2{margin:0;font-family:var(--font-heading);font-size:1rem;font-weight:600;line-height:1.3}
.asst-head p{margin:2px 0 0;font-size:.72rem;color:#bdb3a2}
.asst-head .asst-acts{margin-inline-start:auto;display:flex;gap:4px}
.asst-icon{
  width:32px;height:32px;display:grid;place-items:center;border-radius:9px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  color:#f0e8d9;cursor:pointer;transition:background var(--dur-fast) var(--ease)
}
.asst-icon:hover{background:rgba(255,255,255,.18)}
.asst-icon svg{width:17px;height:17px}

/* ————— مسار الرسائل ————— */
.asst-log{
  flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px 14px 6px;
  background:
    radial-gradient(620px 320px at 100% 0,rgba(226,182,92,.14),transparent 60%),
    radial-gradient(520px 320px at 0 100%,rgba(39,110,89,.10),transparent 60%),
    var(--bg);
  display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth
}
.asst-msg{display:flex;gap:9px;max-width:100%;animation:asstIn var(--dur-base) var(--ease)}
@keyframes asstIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.asst-msg .asst-mini{
  flex:none;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--resin-300),var(--resin-500));color:#1a1206;margin-top:2px
}
.asst-msg .asst-mini svg{width:15px;height:15px}
.asst-bubble{
  background:var(--surface);border:1px solid var(--border);border-radius:14px 14px 14px 5px;
  padding:11px 13px;font-size:.87rem;line-height:1.95;color:var(--text);
  box-shadow:var(--shadow-1);max-width:100%;word-break:break-word
}
.asst-bubble b{color:var(--resin-600);font-weight:700}
.asst-bubble .asst-h{display:block;font-weight:700;color:var(--ink-700);margin-bottom:4px;font-size:.9rem}
.asst-bubble ul{margin:6px 0 2px;padding-inline-start:18px}
.asst-bubble li{margin:2px 0}
.asst-bubble code{font-family:var(--font-num);background:var(--sand-300);border-radius:5px;padding:1px 5px;font-size:.82rem}

.asst-msg.me{flex-direction:row-reverse}
.asst-msg.me .asst-bubble{
  background:linear-gradient(135deg,var(--sage-600),var(--sage-500));color:#f4faf7;
  border-color:transparent;border-radius:14px 14px 5px 14px
}
.asst-msg.me .asst-bubble b{color:#eaf6f0}
.asst-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.asst-links a{
  display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:600;text-decoration:none;
  color:var(--resin-600);background:var(--resin-100);border:1px solid var(--resin-200);
  border-radius:var(--r-pill);padding:5px 11px;transition:transform var(--dur-fast) var(--ease)
}
.asst-links a:hover{transform:translateY(-1px);background:var(--resin-200)}
.asst-links svg{width:13px;height:13px}

/* ————— مؤشر الكتابة ————— */
.asst-typing{display:flex;gap:4px;align-items:center;padding:12px 14px}
.asst-typing i{width:7px;height:7px;border-radius:50%;background:var(--resin-400);animation:asstBlink 1.2s infinite}
.asst-typing i:nth-child(2){animation-delay:.18s}
.asst-typing i:nth-child(3){animation-delay:.36s}
@keyframes asstBlink{0%,60%,100%{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

/* ————— شرائح الأسئلة المقترحة ————— */
.asst-chips{display:flex;gap:7px;overflow-x:auto;padding:11px 13px 4px;background:var(--surface);
  border-top:1px solid var(--border);scrollbar-width:thin}
.asst-chips::-webkit-scrollbar{height:5px}
.asst-chips::-webkit-scrollbar-thumb{background:var(--sand-400);border-radius:9px}
.asst-chip{
  flex:none;white-space:nowrap;font:500 .78rem/1 var(--font-body);cursor:pointer;
  background:var(--sand-200);color:var(--ink-600);border:1px solid var(--border);
  border-radius:var(--r-pill);padding:8px 12px;transition:all var(--dur-fast) var(--ease)
}
.asst-chip:hover{background:var(--resin-100);border-color:var(--resin-300);color:var(--resin-600);transform:translateY(-1px)}

/* ————— حقل الإدخال والتذييل ————— */
.asst-form{display:flex;gap:8px;align-items:flex-end;padding:9px 13px 4px;background:var(--surface)}
.asst-form textarea{
  flex:1;resize:none;min-height:44px;max-height:110px;font:400 .88rem/1.7 var(--font-body);
  color:var(--text);background:var(--sand-200);border:1px solid var(--border);
  border-radius:var(--r-md);padding:11px 12px;outline:0
}
.asst-form textarea:focus{border-color:var(--resin-400);background:var(--surface);box-shadow:0 0 0 3px rgba(201,146,42,.16)}
.asst-send{
  flex:none;width:44px;height:44px;border:0;border-radius:var(--r-md);cursor:pointer;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--resin-600),var(--resin-400));color:#fff;
  transition:transform var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease)
}
.asst-send:hover{transform:translateY(-2px)}
.asst-send[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.asst-send svg{width:19px;height:19px}
.asst-note{
  padding:6px 14px 11px;background:var(--surface);font-size:.7rem;color:var(--text-muted);
  display:flex;gap:6px;align-items:center;line-height:1.6
}
.asst-note svg{width:13px;height:13px;flex:none;color:var(--sage-500)}

/* ————— توثيق التغطية داخل صفحة المساعد ————— */
.asst-doc-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));margin-top:8px}
.asst-doc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);
  padding:16px 18px;box-shadow:var(--shadow-1)}
.asst-doc-card h3{margin:0 0 6px;font-family:var(--font-heading);font-size:.98rem;color:var(--ink-700)}
.asst-doc-card p{margin:0 0 10px;font-size:.83rem;color:var(--text-muted);line-height:1.85}
.asst-q{display:flex;flex-wrap:wrap;gap:6px}
.asst-q button{font:500 .77rem/1.4 var(--font-body);cursor:pointer;text-align:start;
  background:var(--sand-200);border:1px solid var(--border);border-radius:var(--r-pill);padding:7px 11px;color:var(--ink-600)}
.asst-q button:hover{background:var(--resin-100);border-color:var(--resin-300);color:var(--resin-600)}
.asst-table-wrap{overflow-x:auto;margin-top:10px}
.asst-table{width:100%;border-collapse:collapse;font-size:.83rem;background:var(--surface);
  border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}
.asst-table th,.asst-table td{padding:10px 12px;text-align:start;border-bottom:1px solid var(--border);vertical-align:top}
.asst-table th{background:var(--sand-300);font-weight:700;color:var(--ink-700);white-space:nowrap}
.asst-table tr:last-child td{border-bottom:0}

/* ————— استجابة الشاشات وتباين الوضع الليلي ————— */
@media (max-width:560px){
  #asstRoot{inset-inline:10px 10px;bottom:10px}
  .asst-panel{width:100%;height:min(78vh,620px)}
  .asst-launch span{display:none}
  .asst-launch{padding:15px}
}
@media (max-width:560px) and (min-height:640px){
  .asst-panel{height:74vh}
}
[data-theme="dark"] .asst-bubble{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#f3f0e7}
[data-theme="dark"] .asst-bubble .asst-h{color:#f9ebcb}
[data-theme="dark"] .asst-bubble code{background:rgba(255,255,255,.09);color:#f0d494}
[data-theme="dark"] .asst-chip,[data-theme="dark"] .asst-q button{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#e6e2d8}
[data-theme="dark"] .asst-form textarea,[data-theme="dark"] .asst-log{background:#0f1513;color:#f3f0e7}
[data-theme="dark"] .asst-chips,[data-theme="dark"] .asst-form,[data-theme="dark"] .asst-note{background:var(--ink-800)}
[data-theme="dark"] .asst-links a{background:rgba(226,182,92,.14);border-color:rgba(226,182,92,.3);color:var(--resin-200)}

/* ————— احترام تقليل الحركة والطباعة ————— */
@media (prefers-reduced-motion:reduce){
  .asst-panel,.asst-msg{animation:none !important}
  .asst-launch .asst-dot{animation:none}
  .asst-log{scroll-behavior:auto}
}
@media print{
  #asstRoot{display:none !important}
}

/* ————— توثيق التغطية داخل صفحة المساعد: عدّاد، أسئلة، ملفات، تذييل ————— */
.asst-doc-card h3 .asst-doc-n{display:inline-block;margin-inline-start:6px;font-family:var(--font-num);
  font-size:.72rem;font-weight:600;color:var(--resin-600);background:var(--resin-100);
  border-radius:var(--r-pill);padding:2px 9px;vertical-align:middle}
.asst-doc-card .asst-q button{text-align:start}
.asst-doc-ask{font:inherit;font-size:.82rem;color:var(--resin-600);background:none;border:0;padding:0;
  cursor:pointer;text-align:start;border-bottom:1px dashed var(--resin-300)}
.asst-doc-ask:hover{color:var(--resin-500);border-bottom-style:solid}
.asst-kw{font-size:.74rem;line-height:1.75;color:var(--text-muted)}
.asst-files{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(232px,1fr))}
.asst-file{display:flex;gap:11px;align-items:center;padding:12px 14px;border-radius:var(--r-md);
  background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);
  color:#ece5d8;text-decoration:none;font-size:.85rem;transition:transform var(--dur-fast) var(--ease),
  background var(--dur-fast) var(--ease)}
.asst-file:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
.asst-file svg{width:17px;height:17px;flex:none;color:var(--resin-300)}
.asst-file small{display:block;color:#a49a89;font-size:.72rem;margin-top:3px}
.asst-footer{background:var(--ink-800);color:#d8d2c6;padding:38px 0 30px;margin-top:0}
.asst-footer .wrap{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.asst-footer h4{margin:0 0 8px;font-family:var(--font-heading);font-size:.95rem;color:var(--resin-200)}
.asst-footer p{margin:0;font-size:.83rem;line-height:1.9}
.asst-footer a{color:var(--sand-400)}
