/* Asistente con IA · estilos (colores por variables --aic-*) */
.aic-launch{position:fixed;right:22px;bottom:96px;z-index:45;display:flex;align-items:center;gap:10px;padding:13px 18px 13px 14px;border:0;border-radius:999px;cursor:pointer;background:var(--aic-accent,#222);color:var(--aic-accent-ink,#fff);font:500 14px/1 var(--aic-font,system-ui,sans-serif);box-shadow:0 18px 40px -16px rgba(0,0,0,.45);transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .3s}
.aic-launch:hover{transform:translateY(-3px)}
.aic-launch svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.aic-launch__dot{position:absolute;top:8px;left:30px;width:9px;height:9px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 2px var(--aic-accent,#222)}
.aic-launch.is-open{opacity:0;pointer-events:none;transform:scale(.9)}

.aic-panel{position:fixed;right:22px;bottom:22px;z-index:70;width:380px;max-width:calc(100vw - 32px);height:min(620px,calc(100vh - 44px));display:flex;flex-direction:column;background:var(--aic-bg,#fff);color:var(--aic-text,#222);border:1px solid var(--aic-line,rgba(0,0,0,.1));border-radius:22px;box-shadow:0 40px 90px -30px rgba(0,0,0,.5);font:400 15px/1.55 var(--aic-font,system-ui,sans-serif);overflow:hidden;opacity:0;transform:translateY(16px) scale(.98);pointer-events:none;transition:opacity .3s,transform .35s cubic-bezier(.2,.7,.2,1)}
.aic-panel.is-open{opacity:1;transform:none;pointer-events:auto}
.aic-head{display:flex;align-items:center;gap:12px;padding:16px 16px 14px;border-bottom:1px solid var(--aic-line,rgba(0,0,0,.1))}
.aic-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--aic-accent,#222);color:var(--aic-accent-ink,#fff);font:500 18px/1 var(--aic-title-font,var(--aic-font,serif))}
.aic-head__txt{flex:1;display:grid;line-height:1.25}
.aic-head__txt b{font:500 17px/1.2 var(--aic-title-font,var(--aic-font,sans-serif))}
.aic-head__txt span{font-size:12.5px;color:var(--aic-muted,#777);display:flex;align-items:center;gap:6px}
.aic-head__txt i{width:7px;height:7px;border-radius:50%;background:#3ddc84}
.aic-close{width:34px;height:34px;border-radius:50%;border:1px solid var(--aic-line,rgba(0,0,0,.1));background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer}
.aic-body{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}
.aic-msg{max-width:86%;padding:11px 14px;border-radius:16px;word-wrap:break-word}
.aic-msg a{color:inherit;text-decoration:underline}
.aic-msg--bot{align-self:flex-start;background:var(--aic-bot-bg,rgba(0,0,0,.05));border-bottom-left-radius:5px}
.aic-msg--user{align-self:flex-end;background:var(--aic-accent,#222);color:var(--aic-accent-ink,#fff);border-bottom-right-radius:5px}
.aic-dots{display:inline-flex;gap:4px;padding:4px 0}
.aic-dots i{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.35;animation:aicb 1.2s infinite}
.aic-dots i:nth-child(2){animation-delay:.15s}.aic-dots i:nth-child(3){animation-delay:.3s}
@keyframes aicb{30%{opacity:1;transform:translateY(-3px)}}
.aic-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}
.aic-chip{font:inherit;font-size:13.5px;padding:8px 13px;border-radius:999px;border:1px solid var(--aic-line,rgba(0,0,0,.12));background:transparent;color:inherit;cursor:pointer;transition:border-color .2s,background .2s}
.aic-chip:hover{border-color:var(--aic-accent,#222)}
.aic-form{display:flex;gap:8px;padding:12px 12px 6px;border-top:1px solid var(--aic-line,rgba(0,0,0,.1))}
.aic-input{flex:1;min-width:0;font:inherit;font-size:16px;color:inherit;background:var(--aic-input-bg,rgba(0,0,0,.04));border:1px solid var(--aic-line,rgba(0,0,0,.1));border-radius:999px;padding:12px 16px}
.aic-input:focus{outline:none;border-color:var(--aic-accent,#222)}
.aic-send{width:46px;height:46px;flex:none;border:0;border-radius:50%;background:var(--aic-accent,#222);cursor:pointer;display:grid;place-items:center}
.aic-send svg{width:20px;height:20px;fill:var(--aic-accent-ink,#fff)}
.aic-note{margin:0;padding:4px 16px 12px;font-size:11.5px;color:var(--aic-muted,#888);text-align:center}
.aic-note a{color:inherit}
@media (max-width:760px){
  .aic-launch{bottom:90px;right:16px;padding:14px}
  .aic-launch__txt{display:none}
  .aic-launch__dot{left:auto;right:8px}
  .aic-panel{right:0;left:0;bottom:0;width:100%;max-width:none;height:min(86vh,640px);border-radius:22px 22px 0 0}
}
@media (prefers-reduced-motion:reduce){.aic-dots i{animation:none;opacity:.6}}

/* con el chat abierto se ocultan los botones flotantes de la web */
html.aic-open .wa-float,html.aic-open .book-float{opacity:0;pointer-events:none;transition:opacity .2s}
