/* EVOO Tech help assistant. All selectors namespaced with .hb- */
.hb-launcher{position:fixed;right:18px;bottom:18px;z-index:9000;display:inline-flex;align-items:center;gap:.55rem;border:0;border-radius:999px;padding:.85rem 1.2rem;background:linear-gradient(135deg,#6147df,#2f6bff);color:#fff;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;box-shadow:0 16px 34px rgba(47,66,160,.36);transition:transform .18s ease,box-shadow .18s ease}
.hb-launcher:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(47,66,160,.44)}
.hb-launcher svg{width:20px;height:20px;display:block}
.hb-launcher[hidden]{display:none}

.hb-panel{position:fixed;right:18px;bottom:18px;z-index:9001;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100vh - 36px));display:flex;flex-direction:column;background:#fff;border:1px solid #e2e7f0;border-radius:18px;overflow:hidden;box-shadow:0 28px 64px rgba(12,20,40,.28);opacity:0;transform:translateY(14px) scale(.98);pointer-events:none;transition:opacity .2s ease,transform .22s cubic-bezier(.2,.9,.3,1.1)}
.hb-panel.is-open{opacity:1;transform:none;pointer-events:auto}

.hb-head{display:flex;align-items:center;gap:11px;padding:14px 16px;background:linear-gradient(135deg,#0b1220,#22325e);color:#fff;flex:0 0 auto}
.hb-head svg{width:34px;height:34px;display:block;flex:0 0 34px}
.hb-head strong{display:block;font-size:.95rem;line-height:1.2}
.hb-head span{display:block;font-size:.74rem;color:#9fb0d0;margin-top:2px}
.hb-head .hb-dot{width:7px;height:7px;border-radius:50%;background:#31c48d;display:inline-block;margin-right:.35rem}
.hb-close{margin-left:auto;background:rgba(255,255,255,.12);border:0;color:#fff;width:30px;height:30px;border-radius:9px;font-size:1.1rem;line-height:1;cursor:pointer}
.hb-close:hover{background:rgba(255,255,255,.22)}

.hb-log{flex:1 1 auto;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:11px;background:#f6f8fc;scroll-behavior:smooth}
.hb-msg{max-width:88%;padding:.7rem .9rem;border-radius:14px;font-size:.9rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}
.hb-msg.bot{background:#fff;border:1px solid #e4e8f0;color:#33405c;border-bottom-left-radius:5px;align-self:flex-start}
.hb-msg.me{background:#0b1220;color:#fff;border-bottom-right-radius:5px;align-self:flex-end}
.hb-msg.err{background:#fdecec;border-color:#f4c2c2;color:#9a2626}
.hb-msg a.hb-cta{display:inline-block;margin-top:.55rem;background:#eeeaff;color:#5335df;font-weight:700;text-decoration:none;padding:.5rem .8rem;border-radius:10px;font-size:.84rem}
.hb-msg a.hb-cta:hover{background:#5c42eb;color:#fff}
.hb-typing{align-self:flex-start;display:flex;gap:4px;padding:.75rem .9rem;background:#fff;border:1px solid #e4e8f0;border-radius:14px;border-bottom-left-radius:5px}
.hb-typing i{width:6px;height:6px;border-radius:50%;background:#b6c0d4;animation:hb-bounce 1.1s infinite}
.hb-typing i:nth-child(2){animation-delay:.15s}
.hb-typing i:nth-child(3){animation-delay:.3s}
@keyframes hb-bounce{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-5px);opacity:1}}

.hb-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 10px;background:#f6f8fc;flex:0 0 auto}
.hb-chips button{border:1px solid #d9e0ee;background:#fff;color:#3d4c6b;font:inherit;font-size:.8rem;font-weight:600;border-radius:999px;padding:.4rem .75rem;cursor:pointer}
.hb-chips button:hover{border-color:#2f6bff;color:#2f6bff}

.hb-form{flex:0 0 auto;border-top:1px solid #e4e8f0;background:#fff;padding:10px 12px;display:flex;gap:8px;align-items:center}
.hb-form input{flex:1 1 auto;min-width:0;border:1px solid #d9e0ee;border-radius:11px;padding:.65rem .8rem;font:inherit;font-size:.9rem;background:#fbfcff}
.hb-form input:focus{outline:none;border-color:#2f6bff;box-shadow:0 0 0 3px rgba(47,107,255,.13)}
.hb-form button{flex:0 0 auto;border:0;border-radius:11px;width:40px;height:40px;background:#0b1220;color:#fff;cursor:pointer;display:grid;place-items:center}
.hb-form button:hover{background:#22325e}
.hb-form button svg{width:18px;height:18px}

.hb-lead{padding:12px 16px 14px;background:#fff;border-top:1px solid #e4e8f0;display:none;flex-direction:column;gap:8px;flex:0 0 auto}
.hb-lead.is-open{display:flex}
.hb-lead input,.hb-lead textarea{width:100%;border:1px solid #d9e0ee;border-radius:10px;padding:.55rem .7rem;font:inherit;font-size:.87rem;background:#fbfcff}
.hb-lead textarea{min-height:66px;resize:vertical}
.hb-lead input:focus,.hb-lead textarea:focus{outline:none;border-color:#2f6bff;box-shadow:0 0 0 3px rgba(47,107,255,.13)}
.hb-lead .hb-row{display:flex;gap:8px}
.hb-lead button{border:0;border-radius:10px;padding:.6rem 1rem;background:#f5b93c;color:#231703;font:inherit;font-weight:700;cursor:pointer}
.hb-lead .hb-cancel{background:#eef1f8;color:#4a5468}
.hb-note{font-size:.74rem;color:#8891a6;text-align:center;padding:0 16px 10px;background:#fff}

@media(max-width:480px){
  .hb-panel{right:8px;left:8px;bottom:8px;width:auto;height:min(78vh,540px)}
  .hb-launcher{right:14px;bottom:14px;padding:.8rem}
  .hb-launcher span{display:none}
}
@media print{.hb-launcher,.hb-panel{display:none!important}}
@media (prefers-reduced-motion:reduce){.hb-panel,.hb-launcher{transition:none}.hb-typing i{animation:none}}