.fbot{position:fixed;bottom:24px;z-index:99999;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--fbot-color:#185FA5}
.fbot-right{right:24px}
.fbot-left{left:24px}
.fbot *{box-sizing:border-box}
.fbot button{font-family:inherit;text-transform:none;letter-spacing:normal;box-shadow:none;outline:none}
.fbot .fbot-bubble{width:60px!important;height:60px!important;min-width:0!important;max-width:none!important;min-height:0!important;padding:0!important;margin:0!important;border:none!important;border-radius:50%!important;background:var(--fbot-color)!important;box-shadow:0 6px 18px rgba(0,0,0,.28)!important;cursor:pointer;display:none;align-items:center;justify-content:center;line-height:1!important;transition:transform .15s;box-sizing:border-box!important}
.fbot.fbot-visible:not(.fbot-open) .fbot-bubble{display:flex!important;animation:fbot-pop .3s ease}
.fbot .fbot-bubble svg{display:block!important;width:28px!important;height:28px!important}
.fbot .fbot-bubble:hover{transform:scale(1.06)}
.fbot .fbot-bubble img{width:100%!important;height:100%!important;border-radius:50%!important;object-fit:cover!important;display:block!important}

/* bocadillo emergente */
.fbot-teaser{position:absolute;bottom:80px;max-width:230px;background:#fff;color:#1a1a1a;padding:12px 34px 12px 14px;border-radius:16px;box-shadow:0 6px 22px rgba(0,0,0,.18);font-size:13.5px;line-height:1.4;display:none;cursor:pointer}
.fbot-right .fbot-teaser{right:6px}
.fbot-left .fbot-teaser{left:6px}
.fbot-teaser::after{content:"";position:absolute;bottom:-8px;width:16px;height:16px;background:#fff;transform:rotate(45deg)}
.fbot-right .fbot-teaser::after{right:24px}
.fbot-left .fbot-teaser::after{left:24px}
.fbot.fbot-teaser-show:not(.fbot-open) .fbot-teaser{display:block;animation:fbot-tease .35s ease}
@keyframes fbot-tease{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}
.fbot-teaser-x{position:absolute;top:4px;right:6px;background:none!important;border:none!important;padding:0!important;margin:0!important;width:22px!important;height:22px!important;min-width:0!important;font-size:18px;line-height:1;color:#999;cursor:pointer}
.fbot-teaser-x:hover{color:#555}
@keyframes fbot-pop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}

.fbot-panel{position:absolute;bottom:74px;width:340px;max-width:calc(100vw - 32px);height:480px;max-height:calc(100vh - 120px);background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.22);display:none;flex-direction:column;overflow:hidden}
.fbot-right .fbot-panel{right:0}
.fbot-left .fbot-panel{left:0}
.fbot.fbot-open .fbot-panel{display:flex;animation:fbot-up .25s ease}
@keyframes fbot-up{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}

.fbot-head{background:var(--fbot-color);padding:14px 16px;display:flex;align-items:center;gap:10px;color:#fff}
.fbot-ava{width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto}
.fbot-ava img{width:100%;height:100%;object-fit:cover}
.fbot-meta{line-height:1.25;flex:1}
.fbot-meta strong{display:block;font-size:15px}
.fbot-meta span{font-size:11.5px;opacity:.85}
.fbot-close{background:none;border:none;color:#fff;font-size:24px;line-height:1;cursor:pointer;opacity:.85}
.fbot-close:hover{opacity:1}

.fbot-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:9px;background:#f7f7f8}
.fbot-msg{max-width:82%;padding:9px 12px;font-size:13.5px;line-height:1.45;border-radius:14px;word-wrap:break-word}
.fbot-msg a{color:inherit;text-decoration:underline;word-break:break-all}
.fbot-bot{align-self:flex-start;background:#fff;border:1px solid #e6e6e8;color:#1a1a1a;border-bottom-left-radius:4px}
.fbot-user{align-self:flex-end;background:var(--fbot-color);color:#fff;border-bottom-right-radius:4px}
.fbot-typing{display:flex;gap:4px;align-items:center}
.fbot-typing span{width:7px;height:7px;border-radius:50%;background:#bbb;animation:fbot-blink 1.2s infinite}
.fbot-typing span:nth-child(2){animation-delay:.2s}
.fbot-typing span:nth-child(3){animation-delay:.4s}
@keyframes fbot-blink{0%,60%,100%{opacity:.3}30%{opacity:1}}

.fbot-input{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid #eaeaea;background:#fff}
.fbot-input input{flex:1;border:1px solid #ddd;border-radius:22px;padding:9px 14px;font-size:13.5px;outline:none}
.fbot-input input:focus{border-color:var(--fbot-color)}
.fbot-send{width:38px!important;height:38px!important;min-width:0!important;padding:0!important;margin:0!important;flex:0 0 auto;border:none!important;border-radius:50%!important;background:var(--fbot-color)!important;cursor:pointer;display:flex!important;align-items:center;justify-content:center;line-height:1!important}
.fbot-send svg{display:block!important}
.fbot-send:hover{opacity:.9}
