/* assistant/widget.css — Bulle de chat NOTDEAD (autonome, aucune dépendance). */
:root{
  --nd-cyan:#00a2ff; --nd-pink:#fe0979; --nd-bg:#070b14; --nd-card:#0b101d;
  --nd-border:rgba(255,255,255,.08); --nd-text:#e6edf6; --nd-grey:#94a3b8;
}
#nd-chat-btn{
  position:fixed; bottom:22px; right:22px; z-index:99998;
  width:60px; height:60px; border-radius:50%; cursor:pointer; border:none;
  background:linear-gradient(135deg,var(--nd-cyan),var(--nd-pink));
  box-shadow:0 8px 28px rgba(0,162,255,.45); color:#fff; font-size:26px;
  display:flex; align-items:center; justify-content:center; transition:transform .25s;
}
#nd-chat-btn:hover{ transform:scale(1.08); }
#nd-chat-btn.nd-open{ transform:scale(.9); opacity:.85; }

#nd-chat-panel{
  position:fixed; bottom:94px; right:22px; z-index:99999;
  width:min(380px,calc(100vw - 32px)); height:min(560px,calc(100vh - 130px));
  background:var(--nd-bg); border:1px solid var(--nd-border); border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.6); display:none; flex-direction:column; overflow:hidden;
  font-family:'Exo 2','Segoe UI',system-ui,sans-serif;
}
#nd-chat-panel.nd-show{ display:flex; }

.nd-head{
  padding:14px 16px; background:var(--nd-card); border-bottom:1px solid var(--nd-border);
  display:flex; align-items:center; gap:10px;
}
.nd-dot{ width:9px; height:9px; border-radius:50%; background:#22c55e; box-shadow:0 0 8px #22c55e; }
.nd-head b{ color:#fff; font-family:'Oxanium',sans-serif; letter-spacing:1px; font-size:.95rem; }
.nd-head span{ color:var(--nd-grey); font-size:.78rem; }

.nd-body{ flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:12px; }
.nd-msg{ max-width:85%; padding:10px 13px; border-radius:14px; font-size:.95rem; line-height:1.45; white-space:pre-wrap; word-wrap:break-word; }
.nd-msg.nd-bot{ align-self:flex-start; background:var(--nd-card); color:var(--nd-text); border:1px solid var(--nd-border); border-bottom-left-radius:4px; }
.nd-msg.nd-user{ align-self:flex-end; background:linear-gradient(135deg,rgba(0,162,255,.18),rgba(254,9,121,.18)); color:#fff; border:1px solid rgba(0,162,255,.35); border-bottom-right-radius:4px; }
.nd-typing{ align-self:flex-start; color:var(--nd-grey); font-size:.85rem; padding:4px 6px; }

.nd-foot{ padding:12px; border-top:1px solid var(--nd-border); display:flex; gap:8px; background:var(--nd-card); }
.nd-foot textarea{
  flex:1; resize:none; height:42px; max-height:110px; padding:10px 12px; border-radius:10px;
  background:var(--nd-bg); border:1px solid var(--nd-border); color:var(--nd-text);
  font-family:inherit; font-size:.95rem; outline:none;
}
.nd-foot textarea:focus{ border-color:var(--nd-cyan); box-shadow:0 0 0 2px rgba(0,162,255,.15); }
.nd-send{
  width:42px; height:42px; flex-shrink:0; border:none; border-radius:10px; cursor:pointer; color:#fff; font-size:18px;
  background:linear-gradient(135deg,var(--nd-cyan),var(--nd-pink));
}
.nd-send:disabled{ opacity:.5; cursor:default; }
.nd-legal{ text-align:center; color:var(--nd-grey); font-size:.68rem; padding:0 12px 8px; background:var(--nd-card); }
.nd-prefill-wrap{ margin-top:10px; }
.nd-prefill{ display:inline-flex; align-items:center; gap:6px; background:linear-gradient(135deg,var(--nd-cyan),var(--nd-pink)); color:#fff; text-decoration:none; padding:8px 14px; border-radius:8px; font-family:'Oxanium',sans-serif; font-size:.75rem; font-weight:700; }
.nd-prefill:hover{ box-shadow:0 0 14px rgba(0,162,255,.45); }
.nd-body::-webkit-scrollbar{ width:8px; } .nd-body::-webkit-scrollbar-thumb{ background:var(--nd-border); border-radius:8px; }
