.aurora-bubble{position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;background:#6C5CE7;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer;box-shadow:0 10px 25px rgba(0,0,0,.35);z-index:2147483000}
.aurora-panel{position:fixed;right:18px;bottom:86px;width:380px;max-height:70vh;background:#0e0f16;color:#e8ecf7;border:1px solid #1f2030;border-radius:16px;overflow:hidden;display:none;flex-direction:column;box-shadow:0 10px 30px rgba(0,0,0,.45);z-index:2147483000}
.aurora-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#12131a;border-bottom:1px solid #1f2030}
.aurora-title{font-weight:700;flex:1;text-align:center}
.aurora-header button{background:transparent;border:1px solid #2a2b3a;color:#cfd2dc;border-radius:10px;padding:6px 10px;cursor:pointer}
.aurora-body{flex:1;overflow:auto;padding:12px}
.aurora-msg{max-width:80%;margin:6px 0;padding:10px 12px;border-radius:12px;border:1px solid #2a2b3a;background:#12131a;color:#e8ecf7}
.aurora-msg.visitor{margin-left:auto;background:#1a1b27;border-color:#35364b}
.aurora-msg.agent{margin-right:auto;background:#12131a;border-color:#2a2b3a}
.aurora-msg.system{max-width:90%;text-align:center;margin:8px auto;background:#0f1017;color:#9aa0b4;border-style:dashed}
.aurora-time{display:block;color:#9aa0b4;font-size:12px;margin-top:4px}
.aurora-composer{border-top:1px solid #1f2030;padding:10px;background:#0e0f16}
.aurora-composer textarea{width:100%;resize:vertical;min-height:48px;max-height:160px;border:1px solid #2a2b3a;background:#12131a;color:#fff;border-radius:12px;padding:10px}
.aurora-composer textarea:disabled{opacity:0.6;cursor:not-allowed}
.aurora-row{display:flex;gap:8px;align-items:center;margin-top:8px}
.aurora-row .spacer{flex:1}
.aurora-btn{background:#6C5CE7;border:0;color:#fff;border-radius:12px;padding:8px 12px;cursor:pointer}
.aurora-btn:disabled{opacity:0.5;cursor:not-allowed}
.aurora-ghost{background:transparent;border:1px solid #2a2b3a;color:#cfd2dc;border-radius:12px;padding:8px 12px;cursor:pointer}
.aurora-typing{color:#9aa0b4;padding:6px 12px;background:#12131a;border-bottom:1px solid #1f2030;font-size:13px;text-align:center;display:none}
.aurora-typing:not(.hidden){display:block}
.aurora-rating{display:flex;gap:6px;justify-content:center;margin:8px 0}
.aurora-star{font-size:20px;cursor:pointer}
@media (max-width:480px){
  .aurora-panel{right:0;bottom:0;width:100%;max-height:100vh;border-radius:0}
  .aurora-bubble{right:12px;bottom:12px}
}
/* v1.3: wrap & stable scroll */
.aurora-msg, .aurora-body { overflow-wrap:anywhere; word-break:break-word; }
.aurora-body{ scrollbar-gutter: stable both-edges; }

/* v1.9.5: bubble badge + dark scrollbars */
.aurora-bubble{ position:fixed; right:16px; bottom:16px; }
.aurora-badge{ position:absolute; top:-6px; right:-6px; min-width:18px; height:18px; padding:0 5px; border-radius:9px; background:#ff4d4f; color:#fff; font-size:12px; display:none; text-align:center; line-height:18px; box-shadow:0 0 0 2px rgba(0,0,0,.4);}
/* Online label (appears when operator is online) */
.aurora-online-label{ position:fixed; right:16px; bottom:82px; display:flex; align-items:center; gap:8px; background:#0f1117; color:#b7f7c2; border:1px solid #1f3a27; border-radius:12px; padding:6px 10px; font-size:13px; box-shadow:0 10px 18px rgba(0,0,0,.35); z-index:2147483000; }
.aurora-online-label .dot{ width:10px; height:10px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 3px rgba(34,197,94,.15); display:inline-block; }
@media (max-width:480px){ .aurora-online-label{ right:12px; bottom:78px; } }
/* Scrollbars */
*::-webkit-scrollbar{ width:10px; height:10px; }
*::-webkit-scrollbar-track{ background:#0f1117; border-radius:10px; }
*::-webkit-scrollbar-thumb{ background:#2a2f3a; border-radius:10px; border:2px solid #0f1117; }
*::-webkit-scrollbar-thumb:hover{ background:#3a4152; }

/* Attachment preview */
.aurora-attach-preview{ display:flex; align-items:flex-start; gap:12px; padding:10px; margin:8px 0; background:rgba(255,255,255,.05); border:1px solid #2a2b3a; border-radius:12px; position:relative; }
.aurora-attach-preview.uploading{ opacity:.6; pointer-events:none; }
.aurora-attach-preview.uploading::after{ content:''; position:absolute; top:50%; left:50%; width:20px; height:20px; margin:-10px 0 0 -10px; border:2px solid rgba(255,255,255,.2); border-top-color:#fff; border-radius:50%; animation:aurora-spin 0.8s linear infinite; }
@keyframes aurora-spin{ to{ transform:rotate(360deg); } }
.aurora-attach-image{ width:80px; height:80px; object-fit:cover; border-radius:8px; background:#12131a; border:1px solid #2a2b3a; }
.aurora-attach-info{ flex:1; display:flex; flex-direction:column; gap:8px; min-width:0; }
.aurora-attach-name{ font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#e8ecf7; }
.aurora-ghost-small{ background:transparent; border:1px solid #2a2b3a; color:#cfd2dc; border-radius:8px; padding:6px 12px; cursor:pointer; font-size:12px; transition:all 0.2s; align-self:flex-start; }
.aurora-ghost-small:hover{ background:rgba(255,255,255,.08); border-color:#3a3b4a; }
.aurora-attach-status{ color:#9aa0b4; font-size:12px; margin:4px 0 0 0; }
.aurora-attach-status:empty{ display:none; }
