/* AVIGA · chat de la web (chat.js). Usa los colores de la página y valores de reserva si no existen. */
.ac-btn{position:fixed;right:16px;bottom:16px;z-index:40;display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 18px 0 14px;border:0;border-radius:999px;background:var(--glow,#2EC4D6);color:var(--on-glow,#0B1A2E);font:700 .95rem/1 var(--font,system-ui,sans-serif);box-shadow:0 14px 30px -12px rgba(11,26,46,.55);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}
.ac-btn svg{width:24px;height:24px;flex-shrink:0}
.ac-btn:hover{transform:translateY(-2px)}
.ac-btn:focus-visible{outline:3px solid var(--ink,#0B1A2E);outline-offset:3px}
.ac-btn[aria-expanded="true"] .ac-btn-txt{display:none}
.ac-btn[aria-expanded="true"]{padding:0;width:52px;justify-content:center}
@media (max-width:760px){
  .ac-btn{bottom:calc(84px + env(safe-area-inset-bottom,0px));padding:0;width:52px;justify-content:center}
  .ac-btn .ac-btn-txt{display:none}
}
.ac-panel{position:fixed;right:16px;bottom:80px;z-index:41;width:min(380px,calc(100vw - 32px));height:min(580px,calc(100dvh - 110px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-radius:20px;overflow:hidden;background:var(--night-2,#12243B);color:var(--night-ink,#EEF3F7);border:1px solid var(--night-line,#243A54);box-shadow:0 30px 70px -24px rgba(0,0,0,.6);font-family:var(--font,system-ui,sans-serif)}
.ac-panel[hidden]{display:none}
@media (max-width:760px){
  .ac-panel{right:0;left:0;bottom:0;width:100%;height:min(100dvh,640px);border-radius:20px 20px 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}
}
.ac-head{display:flex;align-items:center;gap:10px;padding:14px 12px 14px 16px;border-bottom:1px solid var(--night-line,#243A54)}
.ac-av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--hl,#9AD3DB);color:var(--night,#0B1A2E);font-weight:800;font-size:.75rem;flex-shrink:0}
.ac-head strong{display:block;font-size:.95rem;line-height:1.2}
.ac-head small{display:block;font-size:.76rem;color:var(--night-muted,#A3B3C4)}
.ac-close{margin-left:auto;width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:var(--night-ink,#EEF3F7);cursor:pointer;display:grid;place-items:center}
.ac-close:hover{background:rgba(255,255,255,.06)}
.ac-close svg{width:20px;height:20px}
.ac-log{min-height:0;padding:16px 14px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}
.ac-log > *{flex-shrink:0}
.ac-log{scrollbar-width:thin;scrollbar-color:var(--night-line,#243A54) transparent}
.ac-log::-webkit-scrollbar{width:6px}
.ac-log::-webkit-scrollbar-thumb{background:var(--night-line,#243A54);border-radius:3px}
.ac-log::-webkit-scrollbar-button{display:none;height:0}
.ac-msg{max-width:88%;padding:9px 12px;border-radius:14px 14px 14px 4px;font-size:.92rem;line-height:1.45;background:#1A3150;white-space:pre-line;overflow-wrap:anywhere}
.ac-msg a{color:var(--hl,#9AD3DB);text-underline-offset:2px}
.ac-me{align-self:flex-end;background:#DCE6EE;color:var(--night,#0B1A2E);border-radius:14px 14px 4px 14px}
.ac-sys{align-self:center;max-width:100%;background:transparent;border:1px solid var(--night-line,#243A54);color:var(--night-muted,#A3B3C4);font-size:.76rem;line-height:1.35;border-radius:12px;padding:6px 10px;text-align:center}
.ac-typing{display:inline-flex;gap:4px;padding:12px 14px}
.ac-typing i{width:6px;height:6px;border-radius:50%;background:var(--night-muted,#A3B3C4);animation:ac-blink 1s infinite}
.ac-typing i:nth-child(2){animation-delay:.15s}.ac-typing i:nth-child(3){animation-delay:.3s}
@keyframes ac-blink{50%{opacity:.25}}
/* Preguntas sugeridas: dentro de la conversación, bajo el saludo (se van al preguntar) */
.ac-sug{align-self:stretch;display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.ac-sug-t{flex-basis:100%;font-size:.76rem;font-weight:600;color:var(--night-muted,#A3B3C4)}
.ac-sug button{min-height:36px;padding:.4em .8em;text-align:left;border-radius:999px;border:1px solid var(--night-line,#243A54);background:transparent;color:var(--night-ink,#EEF3F7);font:600 .82rem/1.2 var(--font,system-ui,sans-serif);cursor:pointer}
.ac-sug button:hover{border-color:var(--hl,#9AD3DB)}
.ac-form{display:grid;gap:6px;padding:10px 12px 12px;border-top:1px solid var(--night-line,#243A54)}
.ac-row{display:flex;gap:8px}
.ac-row input{flex:1;min-width:0;min-height:46px;padding:0 12px;border-radius:12px;border:1px solid var(--night-line,#243A54);background:var(--night,#0B1A2E);color:var(--night-ink,#EEF3F7);font:400 16px/1.3 var(--font,system-ui,sans-serif);color-scheme:dark}
.ac-row input::placeholder{color:#7489A0}
.ac-row input:focus{outline:none;border-color:var(--glow,#2EC4D6);box-shadow:0 0 0 3px rgba(46,196,214,.2)}
.ac-send{width:46px;height:46px;border:0;border-radius:12px;background:var(--glow,#2EC4D6);color:var(--on-glow,#0B1A2E);cursor:pointer;display:grid;place-items:center;flex-shrink:0}
.ac-send:disabled,.ac-row input:disabled{opacity:.5;cursor:default}
.ac-send svg{width:20px;height:20px}
.ac-foot{font-size:.72rem;line-height:1.4;color:var(--night-muted,#A3B3C4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-foot a{color:inherit}
@media (prefers-reduced-motion: reduce){.ac-btn,.ac-typing i{transition:none;animation:none}}
