/* Asistente GBO — widget flotante.
   Los colores, la tipografía y el redondeo se toman del sitio (Ajustes > Asistente GBO > Línea gráfica). */
#gboa{
  --gboa-main:#000000; --gboa-on-main:#ffffff;        /* color institucional y texto sobre él */
  --gboa-acc:#000000;  --gboa-on-acc:#ffffff;         /* color de los botones del sitio */
  --gboa-bg:#ffffff; --gboa-soft:#f4f4f5; --gboa-ink:#111111; --gboa-mut:#6b6b70; --gboa-line:#e4e4e7;
  --gboa-font:inherit; --gboa-head:inherit; --gboa-r:12px;
  position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:max(18px,env(safe-area-inset-bottom,0px));z-index:999999;
  font-family:var(--gboa-font);font-size:15px;line-height:1.5;color:var(--gboa-ink);letter-spacing:normal;text-transform:none;text-align:left}
#gboa *{box-sizing:border-box}
#gboa [hidden]{display:none!important}
#gboa img{max-width:100%;height:auto;display:block;border:0;box-shadow:none}

/* Botón flotante con el logo */
#gboa .gboa-launch{position:relative;width:64px;height:64px;padding:0;border-radius:50%;border:3px solid var(--gboa-main);background:#fff;cursor:pointer;
  display:grid;place-items:center;box-shadow:0 10px 28px rgba(0,0,0,.28);transition:transform .2s}
#gboa .gboa-launch:hover{transform:scale(1.06)}
#gboa .gboa-launch .gboa-logo{width:44px;height:44px;object-fit:contain}
#gboa .gboa-launch .gboa-ico{color:var(--gboa-main)}
#gboa .gboa-badge{position:absolute;right:-4px;bottom:-4px;width:26px;height:26px;border-radius:50%;background:var(--gboa-acc);color:var(--gboa-on-acc);
  display:grid;place-items:center;border:2px solid #fff}
#gboa .gboa-open .gboa-badge{display:none}

#gboa .gboa-teaser{position:absolute;right:0;bottom:78px;width:260px;background:var(--gboa-bg);border:1px solid var(--gboa-line);border-radius:var(--gboa-r);
  padding:12px 30px 12px 14px;box-shadow:0 8px 24px rgba(0,0,0,.15);font-size:14px;cursor:pointer;animation:gboaIn .3s ease-out}
#gboa .gboa-teaser-x{position:absolute;top:4px;right:6px;border:0;background:none;font-size:18px;color:var(--gboa-mut);cursor:pointer;line-height:1;padding:2px}

/* Ventana */
#gboa .gboa-panel{position:absolute;right:0;bottom:82px;width:380px;height:min(620px,calc(100vh - 120px));background:var(--gboa-bg);border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.3);display:flex;flex-direction:column;overflow:hidden;animation:gboaIn .22s ease-out}
#gboa .gboa-head{background:var(--gboa-main);color:var(--gboa-on-main);padding:14px 12px 14px 14px;display:flex;align-items:center;gap:12px}
#gboa .gboa-av{width:44px;height:44px;border-radius:10px;background:#fff;display:grid;place-items:center;flex:none;overflow:hidden;padding:4px}
#gboa .gboa-av .gboa-logo{width:100%;height:100%;object-fit:contain}
#gboa .gboa-av b{font-family:var(--gboa-head);font-size:13px;color:var(--gboa-main);letter-spacing:.04em}
#gboa .gboa-ttl{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
#gboa .gboa-ttl strong{font-family:var(--gboa-head);font-size:16px;font-weight:700;color:inherit}
#gboa .gboa-ttl span{font-size:12px;opacity:.8;display:flex;align-items:center;gap:6px}
#gboa .gboa-ttl i{width:7px;height:7px;border-radius:50%;background:#22c55e;display:inline-block}
#gboa .gboa-head button{background:rgba(255,255,255,.14);border:0;color:inherit;width:32px;height:32px;border-radius:8px;font-size:18px;cursor:pointer;line-height:1;padding:0}
#gboa .gboa-head button:hover{background:rgba(255,255,255,.26)}

#gboa .gboa-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--gboa-soft)}
#gboa .gboa-msg{max-width:86%;padding:10px 14px;border-radius:16px;word-wrap:break-word;overflow-wrap:anywhere;animation:gboaIn .2s ease-out}
#gboa .gboa-bot{background:var(--gboa-bg);color:var(--gboa-ink);align-self:flex-start;border-bottom-left-radius:5px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
#gboa .gboa-me{background:var(--gboa-main);color:var(--gboa-on-main);align-self:flex-end;border-bottom-right-radius:5px}
#gboa .gboa-msg a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}
#gboa .gboa-bot a{color:var(--gboa-acc-txt,var(--gboa-ink))}
#gboa .gboa-msg strong{font-weight:700}
#gboa .gboa-typing{display:flex;gap:4px;padding:14px 16px}
#gboa .gboa-typing span{width:7px;height:7px;border-radius:50%;background:var(--gboa-mut);animation:gboaDot 1s infinite}
#gboa .gboa-typing span:nth-child(2){animation-delay:.15s}.gboa-typing span:nth-child(3){animation-delay:.3s}

#gboa .gboa-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;background:var(--gboa-soft)}
#gboa .gboa-chips:empty{display:none}
#gboa .gboa-chips button{border:1.5px solid var(--gboa-main);background:var(--gboa-bg);color:var(--gboa-main);border-radius:var(--gboa-r);padding:6px 12px;
  font-family:var(--gboa-font);font-size:13px;font-weight:600;line-height:1.3;cursor:pointer;text-transform:none;letter-spacing:normal}
#gboa .gboa-chips button:hover{background:var(--gboa-main);color:var(--gboa-on-main)}

#gboa .gboa-form{display:flex;gap:8px;padding:10px 12px;margin:0;border-top:1px solid var(--gboa-line);background:var(--gboa-bg)}
#gboa .gboa-form input[type=text]{flex:1;min-width:0;height:auto;margin:0;border:1px solid var(--gboa-line);border-radius:var(--gboa-r);padding:10px 12px;
  font-family:var(--gboa-font);font-size:15px;color:var(--gboa-ink);background:var(--gboa-bg);box-shadow:none}
#gboa .gboa-form input[type=text]:focus{outline:2px solid var(--gboa-acc);outline-offset:0;border-color:transparent}
#gboa .gboa-form button{width:46px;min-height:44px;margin:0;border:0;border-radius:var(--gboa-r);background:var(--gboa-acc);color:var(--gboa-on-acc);cursor:pointer;display:grid;place-items:center;padding:0}
#gboa .gboa-form .gboa-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
#gboa .gboa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#gboa .gboa-foot{font-size:11.5px;text-align:center;color:var(--gboa-mut);padding:0 12px 10px;background:var(--gboa-bg)}
#gboa .gboa-foot a{color:var(--gboa-mut)}
#gboa button:focus-visible{outline:2px solid var(--gboa-acc);outline-offset:2px}

@keyframes gboaIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes gboaDot{0%,80%,100%{opacity:.3}40%{opacity:1}}
@media (prefers-reduced-motion:reduce){#gboa *{animation:none!important;transition:none!important}}
@media (max-width:480px){
  #gboa .gboa-panel{position:fixed;inset:0;width:100%;height:100%;border-radius:0;
    padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  #gboa .gboa-open .gboa-launch{display:none}
  #gboa .gboa-form input[type=text]{font-size:16px}
}
/* Resalta el botón y la casilla del formulario del sitio después de llenarlo */
.gboa-pulso{outline:3px solid var(--gboa-pulso,#000)!important;outline-offset:3px;animation:gboaPulso 1.2s ease-in-out 6}
@keyframes gboaPulso{50%{outline-color:transparent}}
#gboa .gboa-aviso{margin-top:3px;font-size:10.5px;opacity:.85}

/* Blindaje frente a estilos genéricos del tema (button, span, div, input) */
#gboa button{text-transform:none;letter-spacing:normal;font-size:inherit;line-height:1.3;box-shadow:none;min-width:0;min-height:0;text-decoration:none;text-shadow:none}
#gboa .gboa-chips button{background:var(--gboa-bg)!important;color:var(--gboa-main)!important;border:1.5px solid var(--gboa-main)!important;padding:6px 12px!important;font-size:13px!important;font-weight:600}
#gboa .gboa-chips button:hover,#gboa .gboa-chips button:focus-visible{background:var(--gboa-main)!important;color:var(--gboa-on-main)!important}
#gboa .gboa-me{background:var(--gboa-main)!important;color:var(--gboa-on-main)!important}
#gboa .gboa-bot{background:var(--gboa-bg)!important;color:var(--gboa-ink)!important}
#gboa .gboa-form button{background:var(--gboa-acc)!important;color:var(--gboa-on-acc)!important;padding:0!important}
#gboa .gboa-head button{background:rgba(255,255,255,.14)!important;color:var(--gboa-on-main)!important;padding:0!important;font-size:18px!important}
#gboa .gboa-launch{background:#fff!important;padding:0!important}
#gboa span,#gboa div{line-height:inherit}
#gboa .gboa-msg,#gboa .gboa-ttl span{font-size:inherit}
#gboa .gboa-ttl span{font-size:12px}
#gboa .gboa-form input[type=text]{border:1px solid var(--gboa-line)!important;border-radius:var(--gboa-r)!important;padding:10px 12px!important;font-size:15px!important;background:var(--gboa-bg)!important;color:var(--gboa-ink)!important}
