.mba-assistant{--mba-navy:#06244a;--mba-blue:#078bc8;--mba-cyan:#20b7e5;position:fixed;right:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:1055;font-family:inherit;color:var(--mba-navy);transition:opacity .18s ease,visibility .18s ease}
.mba-assistant.is-campaign-open{opacity:0;visibility:hidden;pointer-events:none}
.mba-assistant *{box-sizing:border-box}
.mba-assistant button,.mba-assistant textarea{font:inherit}
.mba-assistant__launcher{display:grid;place-items:center;width:56px;height:56px;padding:0;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:linear-gradient(145deg,#087fba,var(--mba-cyan));color:#fff;box-shadow:0 12px 30px rgba(6,36,74,.28);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.mba-assistant__launcher:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(6,36,74,.32)}
.mba-assistant__launcher-icon{display:grid;place-items:center;width:32px;height:32px;color:#fff}
.mba-assistant__launcher-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mba-assistant__launcher-icon svg path:last-child{stroke-width:2.6}
.mba-assistant__panel{position:absolute;right:0;bottom:68px;display:flex;flex-direction:column;width:min(380px,calc(100vw - 28px));height:min(610px,calc(100vh - 115px));overflow:hidden;border:1px solid #d9e8f6;border-radius:24px;background:#f7fbff;box-shadow:0 24px 70px rgba(6,36,74,.28);opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity .2s ease,transform .2s ease,visibility .2s}
.mba-assistant.is-open .mba-assistant__panel{opacity:1;visibility:visible;transform:none}
.mba-assistant.is-open .mba-assistant__launcher{visibility:hidden;opacity:0}
.mba-assistant__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;background:linear-gradient(135deg,#06244a,#087eb7);color:#fff}
.mba-assistant__identity{display:flex;align-items:center;gap:10px;min-width:0}
.mba-assistant__identity>div{display:flex;flex-direction:column;line-height:1.15}.mba-assistant__identity small{margin-top:4px;color:#cceeff;font-size:12px}
.mba-assistant__avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;overflow:hidden;padding:5px;border:2px solid rgba(255,255,255,.82);border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(6,36,74,.18)}
.mba-assistant__avatar img{display:block;width:100%;height:100%;object-fit:contain}
.mba-assistant__header-actions{display:flex;gap:6px}.mba-assistant__header-actions button{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.25);border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font-size:22px;cursor:pointer}.mba-assistant__header-actions button:hover{background:rgba(255,255,255,.2)}
.mba-assistant__messages{flex:1;overflow:auto;padding:17px 14px 8px;scroll-behavior:smooth;overscroll-behavior:contain}
.mba-assistant__message{max-width:88%;margin:0 0 12px;animation:mbaMessageIn .18s ease both}.mba-assistant__message p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.mba-assistant__message.is-bot{padding:12px 13px;border:1px solid #dbeafa;border-radius:6px 18px 18px 18px;background:#fff;box-shadow:0 6px 18px rgba(6,36,74,.06)}.mba-assistant__message.is-user{margin-left:auto;padding:12px 13px;border-radius:18px 6px 18px 18px;background:linear-gradient(135deg,#078bc8,#18add8);color:#fff}.mba-assistant__message.is-error{border-color:#ffd7d7;background:#fff8f8;color:#8b1d1d}
.mba-assistant__message.is-user,.mba-assistant__message.is-user p{color:#fff!important;opacity:1}
.mba-assistant__message.is-bot>p a{color:#087eb7;font-weight:750;text-decoration:underline;text-underline-offset:2px}.mba-assistant__message.is-bot>p a:hover{color:#055f8c}
.mba-assistant__typing{display:flex;gap:5px;align-items:center;width:max-content;padding:12px 15px;border:1px solid #dbeafa;border-radius:6px 18px 18px 18px;background:#fff}.mba-assistant__typing i{width:7px;height:7px;border-radius:50%;background:#5c7896;animation:mbaTyping 1s infinite ease-in-out}.mba-assistant__typing i:nth-child(2){animation-delay:.15s}.mba-assistant__typing i:nth-child(3){animation-delay:.3s}
.mba-assistant__results{display:grid;gap:8px;margin-top:10px}.mba-assistant__card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;padding:9px;border:1px solid #d9e9f8;border-radius:14px;background:#f9fcff;color:var(--mba-navy);text-decoration:none}.mba-assistant__card:hover{border-color:#58bce3;background:#fff}.mba-assistant__card img,.mba-assistant__card-placeholder{width:52px;height:52px;border-radius:12px;object-fit:cover}.mba-assistant__card-placeholder{display:grid;place-items:center;background:#dff4fd;color:#078bc8;font-weight:900}.mba-assistant__card div{min-width:0}.mba-assistant__card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.mba-assistant__card span,.mba-assistant__card small{display:block;margin-top:3px;color:#5b6f86;font-size:12px;line-height:1.25}.mba-assistant__card small{color:#087eb7;font-weight:700}
.mba-assistant__quick{display:flex;gap:7px;overflow-x:auto;padding:8px 12px 9px;scrollbar-width:none}.mba-assistant__quick::-webkit-scrollbar{display:none}.mba-assistant__quick button{flex:0 0 auto;padding:8px 11px;border:1px solid #bfe3f4;border-radius:999px;background:#fff;color:#087eb7;font-size:12px;font-weight:750;cursor:pointer}.mba-assistant__quick button:hover{background:#eaf8fe}
.mba-assistant__composer{display:flex;align-items:flex-end;gap:8px;margin:0 12px;padding:7px;border:1px solid #cfe2f3;border-radius:17px;background:#fff;box-shadow:0 5px 18px rgba(6,36,74,.08)}.mba-assistant__composer textarea{width:100%;min-height:40px;max-height:106px;resize:none;overflow-y:auto;border:0;outline:0;padding:9px 7px;background:transparent;color:var(--mba-navy);line-height:1.35}.mba-assistant__composer textarea::placeholder{color:#7f8fa3}.mba-assistant__composer button{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:0;border-radius:13px;background:linear-gradient(135deg,#078bc8,#20b7e5);color:#fff;cursor:pointer}.mba-assistant__composer button:disabled{cursor:wait;opacity:.55}.mba-assistant__notice{padding:7px 14px 11px;text-align:center;color:#7a8999;font-size:10px}
@keyframes mbaMessageIn{from{opacity:0;transform:translateY(5px)}}@keyframes mbaTyping{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@media(max-width:575px){.mba-assistant{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}.mba-assistant__launcher{width:54px;height:54px}.mba-assistant__panel{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;height:min(640px,calc(100dvh - 84px));border-radius:22px;transform-origin:bottom right}}
@media(prefers-reduced-motion:reduce){.mba-assistant__panel,.mba-assistant__launcher,.mba-assistant__message{transition:none;animation:none}}
.mba-assistant__actions{display:grid;gap:8px;margin-top:10px}.mba-assistant__action{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border:1px solid #078bc8;border-radius:13px;background:linear-gradient(135deg,#078bc8,#18add8);color:#fff!important;font-size:13px;font-weight:800;line-height:1.2;text-align:center;text-decoration:none!important}.mba-assistant__action:hover{filter:brightness(.97);color:#fff!important}.mba-assistant__action.is-secondary{background:#fff;color:#087eb7!important}.mba-assistant__action.is-secondary:hover{background:#f4fbff;color:#055f8c!important}

/* En la aplicación instalada, la IA queda por encima de la barra inferior. */
@media (max-width:1199.98px) {
  html.mbaappo-is-installed.maapo-has-app-bottom-nav .mba-assistant {
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
  }

  html.mbaappo-is-installed.maapo-has-app-bottom-nav .mba-assistant__panel {
    max-height: calc(100dvh - 164px) !important;
  }
}

@media (max-width:575px) {
  html.mbaappo-is-installed.maapo-has-app-bottom-nav .mba-assistant__panel {
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
    height: min(620px, calc(100dvh - 166px)) !important;
  }
}
