/* ══════════════════════════════════════
   Robot Chat Widget — WordPress Plugin
   ══════════════════════════════════════ */

/* ── Contenedor ── */
#rw{position:fixed;z-index:999999;bottom:28px;font-family:'Inter','Segoe UI',system-ui,-apple-system,sans-serif}
#rw.rw-right{right:28px}
#rw.rw-left{left:28px}

/* ── Boton ── */
#rw-btn{width:72px;height:72px;border-radius:50%;border:3px solid #fff;background:linear-gradient(145deg,#e8ecf4,#c8d0e0);box-shadow:0 6px 24px rgba(0,0,0,.22);cursor:pointer;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:transform .25s,box-shadow .25s;position:relative;animation:rw-pulse 3s ease-in-out infinite}
#rw-btn:hover{transform:scale(1.1);box-shadow:0 10px 36px rgba(0,0,0,.3)}
#rw-btn.open{animation:none;transform:scale(.92)}
#rw-btn svg{width:64px;height:64px;display:block;margin-top:10px}
.rw-btn-img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
@keyframes rw-pulse{0%,100%{box-shadow:0 6px 24px rgba(0,0,0,.22),0 0 0 0 rgba(0,212,255,.35)}60%{box-shadow:0 6px 24px rgba(0,0,0,.22),0 0 0 16px rgba(0,212,255,0)}}

/* Notificacion */
.rw-dot{position:absolute;top:1px;right:1px;width:20px;height:20px;border-radius:50%;background:#ef4444;border:2.5px solid #fff;font-size:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;animation:rw-dot-p 1.2s ease-in-out infinite}
.rw-dot.hidden{display:none}
@keyframes rw-dot-p{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}

/* Tooltip */
.rw-tip{position:absolute;right:82px;top:50%;transform:translateY(-50%) translateX(6px);background:#1e293b;color:#fff;padding:8px 14px;border-radius:10px;font-size:.8rem;font-weight:600;white-space:nowrap;box-shadow:0 4px 18px rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
#rw-btn:hover .rw-tip{opacity:1;transform:translateY(-50%) translateX(0)}
.rw-tip-arrow{position:absolute;top:50%;right:-7px;transform:translateY(-50%);border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:8px solid #1e293b}
.rw-left .rw-tip{right:auto;left:82px}
.rw-left .rw-tip-arrow{right:auto;left:-7px;border-left:none;border-right:8px solid #1e293b}

/* ── Ventana ── */
.rw-win{position:absolute;bottom:84px;width:360px;background:#0c1225;border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.6);display:flex;flex-direction:column;overflow:hidden;transform-origin:bottom right;transform:scale(.88) translateY(16px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;max-height:520px}
.rw-right .rw-win{right:0}
.rw-left .rw-win{left:0;transform-origin:bottom left}
.rw-win.open{opacity:1;pointer-events:all;transform:scale(1) translateY(0)}

/* Header */
.rw-head{background:linear-gradient(135deg,#0f2167,#1d4ed8);padding:14px 16px;display:flex;align-items:center;gap:12px;flex-shrink:0}
.rw-head-info{flex:1}
.rw-head-name{font-size:.95rem;font-weight:800;color:#fff}
.rw-head-sub{font-size:.72rem;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:5px;margin-top:2px}
.rw-pulse{width:6px;height:6px;border-radius:50%;background:#4ade80;animation:rw-dot-p 1.5s infinite}
.rw-icon-btn{background:rgba(255,255,255,.12);border:none;cursor:pointer;width:30px;height:30px;border-radius:50%;color:#fff;font-size:.85rem;display:flex;align-items:center;justify-content:center;transition:background .2s}
.rw-icon-btn:hover{background:rgba(255,255,255,.25)}

/* Mensajes */
.rw-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;scroll-behavior:smooth;min-height:200px;max-height:340px}
.rw-msgs::-webkit-scrollbar{width:3px}
.rw-msgs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}

/* Bubbles */
.rw-b{max-width:84%;padding:10px 14px;border-radius:16px;font-size:.87rem;line-height:1.55;word-break:break-word;animation:rw-in .28s ease}
@keyframes rw-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.rw-b.bot{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);color:#e2e8f0;align-self:flex-start;border-bottom-left-radius:4px}
.rw-b.user{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.rw-b.ok{background:rgba(74,222,128,.1);border:1px solid rgba(74,222,128,.2);color:#86efac;align-self:center;font-size:.8rem;border-radius:8px;padding:8px 14px;font-weight:600}

/* Typing */
.rw-typing{display:flex;align-items:center;gap:4px;padding:10px 14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:16px;border-bottom-left-radius:4px;align-self:flex-start;animation:rw-in .28s ease}
.rw-typing span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);animation:rw-td .8s ease-in-out infinite}
.rw-typing span:nth-child(2){animation-delay:.12s}
.rw-typing span:nth-child(3){animation-delay:.24s}
@keyframes rw-td{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}

/* Opciones rapidas */
.rw-opts{display:flex;flex-direction:column;gap:6px;align-self:flex-start;width:100%;animation:rw-in .3s ease}
.rw-opt{background:rgba(0,212,255,.08);border:1.5px solid rgba(0,212,255,.25);color:#7dd3fc;border-radius:10px;padding:9px 13px;font-family:inherit;font-size:.83rem;font-weight:600;cursor:pointer;text-align:left;transition:all .18s}
.rw-opt:hover{background:rgba(0,212,255,.2);border-color:rgba(0,212,255,.5);color:#fff;transform:translateX(3px)}

/* Input */
.rw-input-wrap{border-top:1px solid rgba(255,255,255,.07);padding:11px 13px;flex-shrink:0;background:#0c1225;display:flex;gap:8px;align-items:center}
.rw-input{flex:1;background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 13px;font-family:inherit;font-size:.87rem;color:#fff;outline:none;transition:border-color .2s,background .2s}
.rw-input::placeholder{color:rgba(255,255,255,.28)}
.rw-input:focus{border-color:rgba(0,212,255,.5);background:rgba(0,212,255,.05)}
.rw-send{width:38px;height:38px;border-radius:10px;border:none;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s,box-shadow .2s;box-shadow:0 3px 14px rgba(37,99,235,.4)}
.rw-send:hover{transform:scale(1.08);box-shadow:0 6px 20px rgba(37,99,235,.55)}
.rw-input-wrap.disabled .rw-input,.rw-input-wrap.disabled .rw-send{opacity:.4;pointer-events:none}

@media(max-width:420px){
  #rw{bottom:16px;right:10px!important;left:auto!important}
  .rw-win{width:calc(100vw - 20px);right:-10px!important;left:auto!important}
}
