/* ═════ AGS Asistente IA · Widget compartido ═════ */
#ia-fab{position:fixed;bottom:20px;right:20px;width:52px;height:52px;border-radius:50%;background:#1B2A4A;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(27,42,74,.25);z-index:500;transition:all .2s}
#ia-fab:hover{transform:scale(1.05);box-shadow:0 6px 20px rgba(27,42,74,.35)}
#ia-fab svg{color:#C8A84B}
#ia-panel{position:fixed;bottom:0;right:0;top:0;width:360px;max-width:100vw;background:#fff;border-left:1px solid #E8E5DE;display:none;flex-direction:column;z-index:501;box-shadow:-8px 0 24px rgba(27,42,74,.08);font-family:'Inter',sans-serif;color:#3C3832}
#ia-panel.open{display:flex}
.ia-head{background:#1B2A4A;color:#fff;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #C8A84B}
.ia-head-l{display:flex;align-items:center;gap:10px}
.ia-ico{width:26px;height:26px;background:rgba(200,168,75,.15);border-radius:5px;display:flex;align-items:center;justify-content:center}
.ia-title{font-size:12px;font-weight:500}
.ia-model{font-family:'DM Mono',monospace;font-size:8px;color:#C8A84B;letter-spacing:.1em;margin-top:1px}
.ia-close{background:none;border:none;color:rgba(255,255,255,.55);cursor:pointer;font-size:18px;line-height:1;padding:0 4px}
.ia-close:hover{color:#fff}
.ia-body{flex:1;padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;background:#FAFAF7}
.ia-msg{max-width:92%;font-size:11.5px;line-height:1.5}
.ia-msg.user{align-self:flex-end;background:#F0EDE6;padding:8px 11px;border-radius:10px 10px 2px 10px;color:#1B2A4A;white-space:pre-wrap;word-wrap:break-word}
.ia-msg.bot{align-self:flex-start}
.ia-msg.bot .ia-brand{display:flex;align-items:center;gap:5px;margin-bottom:4px;font-family:'DM Mono',monospace;font-size:8px;color:#8A8578;letter-spacing:.08em}
.ia-msg.bot .ia-brand-dot{width:14px;height:14px;background:#1B2A4A;border-radius:3px;display:flex;align-items:center;justify-content:center}
.ia-msg.bot .ia-content{background:#fff;border:1px solid #E8E5DE;padding:9px 11px;border-radius:2px 10px 10px 10px;color:#3C3832;white-space:pre-wrap;word-wrap:break-word}
.ia-msg.bot .ia-content b{color:#1B2A4A;font-weight:600}
.ia-typing{align-self:flex-start;display:flex;gap:4px;padding:6px 2px}
.ia-typing span{width:6px;height:6px;background:#8A8578;border-radius:50%;animation:ia-blink 1.4s infinite both}
.ia-typing span:nth-child(2){animation-delay:.2s}
.ia-typing span:nth-child(3){animation-delay:.4s}
@keyframes ia-blink{0%,80%,100%{opacity:.3}40%{opacity:1}}
.ia-foot{padding:10px 12px;border-top:1px solid #E8E5DE;background:#fff}
.ia-input-row{display:flex;gap:6px;align-items:flex-end}
.ia-input{flex:1;padding:8px 10px;border:1px solid #E8E5DE;border-radius:5px;font-size:11.5px;outline:none;background:#fff;font-family:'Inter',sans-serif;resize:none;min-height:34px;max-height:80px;line-height:1.4}
.ia-input:focus{border-color:#2E4A6E;box-shadow:0 0 0 3px rgba(26,45,90,.08)}
.ia-send{background:#1B2A4A;color:#fff;border:none;width:34px;height:34px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ia-send:hover{background:#243B5C}
.ia-send:disabled{opacity:.4;cursor:not-allowed}
.ia-note{font-family:'DM Mono',monospace;font-size:7px;color:#8A8578;margin-top:6px;letter-spacing:.08em;text-align:center}
.ia-suggest{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.ia-suggest button{background:#fff;border:1px solid #E8E5DE;border-radius:12px;padding:4px 9px;font-size:10px;cursor:pointer;color:#1B2A4A;font-family:'Inter',sans-serif}
.ia-suggest button:hover{background:#F0EDE6;border-color:#2E4A6E}
.ia-err{align-self:center;background:#FCEBEB;color:#A32D2D;font-size:10.5px;padding:6px 10px;border-radius:4px;text-align:center;max-width:95%}

/* ── Responsive móvil: panel ocupa pantalla completa, FAB respeta safe-area ── */
@media(max-width:768px){
  #ia-fab{bottom:calc(20px + env(safe-area-inset-bottom));right:calc(20px + env(safe-area-inset-right));width:52px;height:52px}
  #ia-panel{width:100vw;max-width:100vw;left:0;right:0;top:0;bottom:0;border-left:none}
  .ia-head{padding:calc(12px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 12px max(14px,env(safe-area-inset-left))}
  .ia-body{padding:14px max(14px,env(safe-area-inset-left))}
  .ia-foot{padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-right))}
  .ia-input{font-size:16px}
}
