/* IA BS 360º — mesmo modelo do ChatIA do sistema RotaGO, tema Black System */
.bsia{--g1:#ffe07a;--g2:#f1b928;--g3:#d38e0a;--n0:#05090e;--n1:#0b131c;--n2:#16222f;--mist:#f3f5f8;--line:#e3e7ec;
  position:fixed;right:20px;bottom:20px;z-index:95;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:Inter,Arial,sans-serif}
.bsia [hidden]{display:none!important}
.bsia.is-dragging{user-select:none}

/* ---------- painel ---------- */
.bsia-panel{width:440px;max-width:calc(100vw - 24px);height:620px;max-height:calc(100vh - 140px);background:#fff;border-radius:18px;overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 26px 60px rgba(5,9,14,.35),0 0 0 1px rgba(9,14,22,.08);animation:bsiaIn .25s cubic-bezier(.2,.7,.2,1)}
.bsia-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;color:#fff;
  background:linear-gradient(135deg,var(--n0),var(--n2));border-bottom:2px solid var(--g2)}
.bsia-head-id{display:flex;align-items:center;gap:12px;min-width:0}
.bsia-head-av{position:relative;flex:none;width:44px;height:44px;border-radius:14px;padding:2px;background:linear-gradient(135deg,var(--g1),var(--g3));box-shadow:0 4px 10px rgba(241,185,40,.4)}
.bsia-head-av img{width:100%;height:100%;border-radius:12px;background:#fff;object-fit:contain;padding:3px}
.bsia-head-av i{position:absolute;right:-2px;bottom:-2px;width:12px;height:12px;border-radius:50%;background:#2fd36f;box-shadow:0 0 0 2px var(--n0)}
.bsia-head-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bsia-head-name strong{font-size:15px;font-weight:800}
.bsia-tag{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:999px;color:var(--g1);background:rgba(241,185,40,.18)}
.bsia-head-sub{margin:2px 0 0;font-size:11.5px;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:6px}
.bsia-head-sub b{width:6px;height:6px;border-radius:50%;background:#2fd36f;animation:bsiaBlink 1.6s infinite}
.bsia-head-actions{display:flex;gap:6px}
.bsia-icon{width:32px;height:32px;border:0;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;cursor:pointer;transition:background .2s}
.bsia-icon:hover{background:rgba(255,255,255,.2)}
.bsia-icon svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.bsia-body{flex:1;overflow-y:auto;padding:16px 14px;background:linear-gradient(180deg,var(--mist),#fff);display:flex;flex-direction:column;gap:12px;scrollbar-width:thin}
.bsia-pill{align-self:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:5px 12px;border-radius:999px;color:#8a5b00;background:#fff3d1}
.bsia-msgs{display:flex;flex-direction:column;gap:12px}
.bsia-row{display:flex;gap:8px;align-items:flex-end;max-width:88%;animation:bsiaIn .3s ease}
.bsia-row.is-bot{align-self:flex-start}
.bsia-row.is-user{align-self:flex-end;justify-content:flex-end}
.bsia-av{flex:none;width:28px;height:28px;border-radius:10px;padding:2px;background:linear-gradient(135deg,var(--g1),var(--g3))}
.bsia-av img{width:100%;height:100%;border-radius:8px;background:#fff;object-fit:contain;padding:2px}
.bsia-msg{padding:10px 14px;font-size:14px;line-height:1.55;white-space:pre-wrap;word-break:break-word}
.bsia-row.is-bot .bsia-msg{color:#141a22;background:#fff;border:1px solid var(--line);border-radius:16px 16px 16px 6px;box-shadow:0 1px 2px rgba(9,14,22,.05)}
.bsia-row.is-user .bsia-msg{color:#141008;font-weight:600;background:linear-gradient(135deg,var(--g1),var(--g2) 60%,var(--g3));border-radius:16px 16px 6px 16px;box-shadow:0 4px 10px rgba(241,185,40,.3)}
.bsia-msg.is-typing::after{content:"|";margin-left:2px;color:var(--g3);animation:bsiaBlink .8s infinite}
.bsia-dots .bsia-msg{display:flex;gap:4px;padding:13px 15px}
.bsia-dots b{width:6px;height:6px;border-radius:50%;background:rgba(211,142,10,.65);animation:bsiaDot 1s infinite}
.bsia-dots b:nth-child(2){animation-delay:.15s}.bsia-dots b:nth-child(3){animation-delay:.3s}
.bsia-link{font-weight:700;color:#a86e00;text-decoration:underline;text-underline-offset:2px}
.bsia-wa{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;margin:0 2px;border-radius:8px;vertical-align:middle;color:#fff!important;font-size:12px;font-weight:800;text-decoration:none;background:#25d366}
.bsia-wa:hover{background:#1fb855}
.bsia-wa svg{width:13px;height:13px}

.bsia-quick{padding:10px 14px;background:#fff;border-top:1px solid var(--line)}
.bsia-quick p{margin:0 0 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#7a8592}
.bsia-quick div{display:flex;flex-wrap:wrap;gap:6px}
.bsia-quick button{font:600 12px Inter,Arial,sans-serif;padding:7px 12px;border-radius:999px;border:1px solid transparent;background:var(--mist);color:#2b3644;cursor:pointer;transition:all .2s}
.bsia-quick button:hover{background:#fff;border-color:var(--g2);color:#8a5b00}

.bsia-form{display:flex;gap:8px;padding:12px 14px;background:#fff;border-top:1px solid var(--line)}
.bsia-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:999px;padding:10px 16px;font:400 13.5px Inter,Arial,sans-serif;color:#141a22;background:var(--mist);outline:none;transition:border-color .2s,background .2s}
.bsia-form input:focus{border-color:var(--g2);background:#fff}
.bsia-form input:disabled{opacity:.6}
.bsia-form button{width:42px;height:42px;flex:none;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:linear-gradient(135deg,var(--g1),var(--g2) 55%,var(--g3));box-shadow:0 4px 10px rgba(241,185,40,.35);transition:transform .2s,opacity .2s}
.bsia-form button:hover:not(:disabled){transform:scale(1.06)}
.bsia-form button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
.bsia-form button svg{width:17px;height:17px;fill:none;stroke:#141008;stroke-width:2;stroke-linejoin:round}
.bsia-foot{padding:8px 14px;text-align:center;font-size:10.5px;color:rgba(255,255,255,.55);background:var(--n0)}
.bsia-foot a{color:var(--g2);font-weight:700}

/* ---------- botao flutuante (globo com orbitas) ---------- */
.bsia-fab{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0;border:0;background:transparent;cursor:grab;touch-action:none;outline:none}
.bsia.is-dragging .bsia-fab{cursor:grabbing}
.bsia-globe{position:relative;display:grid;place-items:center;width:78px;height:78px;transition:transform .3s}
.bsia-fab:hover .bsia-globe{transform:translateY(-2px)}
.bsia-glow{position:absolute;inset:-10px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(241,185,40,.38),transparent 70%);filter:blur(10px);animation:bsiaPulse 2.6s ease-in-out infinite}
.bsia-glow2{inset:-18px;background:radial-gradient(circle,rgba(5,9,14,.35),transparent 70%);filter:blur(18px);animation-duration:3.4s;animation-delay:.6s}
.bsia-orb{position:absolute;border-radius:50%;pointer-events:none}
.bsia-orb i{position:absolute;left:50%;border-radius:50%}
.bsia-orb1{inset:-6px;animation:bsiaSpin 4s linear infinite}
.bsia-orb1 i:nth-child(1){top:0;width:10px;height:10px;transform:translate(-50%,-50%);background:var(--g2);box-shadow:0 0 10px 2px rgba(241,185,40,.8)}
.bsia-orb1 i:nth-child(2){bottom:0;width:5px;height:5px;transform:translate(-50%,50%);background:rgba(241,185,40,.7)}
.bsia-orb2{inset:-2px;animation:bsiaSpin 6s linear infinite reverse}
.bsia-orb2 i:nth-child(1){top:0;width:7px;height:7px;transform:translate(-50%,-50%);background:var(--g1);box-shadow:0 0 8px 2px rgba(255,224,122,.7)}
.bsia-orb2 i:nth-child(2){bottom:0;width:5px;height:5px;transform:translate(-50%,50%);background:rgba(255,224,122,.7)}
.bsia-orb3{inset:-14px;animation:bsiaSpin 8s linear infinite}
.bsia-orb3 i:nth-child(1){top:0;width:5px;height:5px;transform:translate(-50%,-50%);background:rgba(241,185,40,.7)}
.bsia-orb3 i:nth-child(2){top:50%;left:auto;right:0;width:7px;height:7px;transform:translate(50%,-50%);background:var(--g1);box-shadow:0 0 8px 2px rgba(255,224,122,.7)}
.bsia-ring{position:absolute;border-radius:50%;pointer-events:none}
.bsia-ring1{inset:-6px;border:1px solid rgba(241,185,40,.28);animation:bsiaSpin 10s linear infinite}
.bsia-ring2{inset:-2px;border:1px dashed rgba(241,185,40,.22);animation:bsiaSpin 14s linear infinite reverse}
.bsia-ring3{inset:-14px;border:1px solid rgba(22,34,47,.35);animation:bsiaSpin 18s linear infinite}
.bsia-core{position:relative;z-index:2;width:58px;height:58px;border-radius:50%;overflow:hidden;display:grid;place-items:center;
  background:radial-gradient(circle at 35% 30%,#fff,#eef1f4);border:2.5px solid rgba(211,142,10,.85);
  box-shadow:0 0 22px 4px rgba(241,185,40,.5),inset 0 0 10px rgba(255,255,255,.4);transition:transform .3s}
.bsia-fab:hover .bsia-core{transform:scale(1.05)}
.bsia-core img{width:82%;height:82%;object-fit:contain;animation:bsiaBob 3s ease-in-out infinite}
.bsia-label{display:flex;flex-direction:column;align-items:center;padding:4px 10px;border-radius:10px;background:rgba(5,9,14,.9);box-shadow:0 0 0 1px rgba(241,185,40,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.bsia-label em{font-style:normal;font-size:9.5px;font-weight:800;letter-spacing:.08em;color:var(--g2)}
.bsia-label strong{font-size:12.5px;font-weight:800;color:#fff}
.bsia-hide{position:absolute;top:-4px;right:-4px;z-index:4;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
  font-size:15px;line-height:1;color:rgba(255,255,255,.85);background:rgba(5,9,14,.92);box-shadow:0 0 0 1px rgba(255,255,255,.25),0 3px 8px rgba(0,0,0,.3);cursor:pointer}
.bsia-hide:hover{color:#fff;background:var(--n2)}
.bsia-close-core{display:none;width:56px;height:56px;border-radius:50%;place-items:center;background:#e53935;box-shadow:0 10px 28px rgba(0,0,0,.35);transition:transform .2s}
.bsia-close-core svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round}
.bsia.is-open .bsia-globe,.bsia.is-open .bsia-label,.bsia.is-open .bsia-hide{display:none}
.bsia.is-open .bsia-close-core{display:grid}
.bsia.is-open .bsia-fab:hover .bsia-close-core{transform:scale(1.06)}
.bsia-show{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:0;border-radius:999px;cursor:pointer;
  font:800 11px Inter,Arial,sans-serif;letter-spacing:.06em;color:var(--g1);background:rgba(5,9,14,.92);box-shadow:0 0 0 1px rgba(241,185,40,.45),0 6px 16px rgba(0,0,0,.3)}
.bsia-show svg{width:14px;height:14px;fill:var(--g2)}

@keyframes bsiaSpin{to{transform:rotate(360deg)}}
@keyframes bsiaPulse{0%,100%{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}
@keyframes bsiaBob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-2px) rotate(2deg)}}
@keyframes bsiaBlink{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes bsiaDot{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-4px)}}
@keyframes bsiaIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1024px){.bsia-panel{width:520px;height:min(700px,calc(100vh - 140px))}}
@media(max-width:640px){.bsia{right:10px;bottom:10px}.bsia-globe{width:56px;height:56px}.bsia-core{width:42px;height:42px}.bsia-label{display:none}.bsia-panel{height:calc(100dvh - 100px)}}
@media(prefers-reduced-motion:reduce){.bsia-orb,.bsia-ring,.bsia-glow,.bsia-core img{animation:none}}

/* Celular: mostra o nome "IA BS 360º" embaixo do botao, compacto */
@media(max-width:640px){
  .bsia-label{display:flex;padding:3px 8px;border-radius:8px}
  .bsia-label em{display:none}
  .bsia-label strong{font-size:10.5px;letter-spacing:.02em}
  .bsia-fab{gap:4px}
}
