/* Estilos base del widget de chat (antes inyectados por JS) */
#inse-widget-root{--bg:#0e1c26;--panel:#132735;--surface:#1c3646;--line:#2a4a5c;
  --ink:#eaf2f6;--muted:#9db3c0;--brass:#c9a24b;--brass-soft:#e4c987;--user:#1f5468;
  --radius:16px;--font:"Segoe UI",system-ui,-apple-system,sans-serif;
  position:fixed;bottom:calc(24px + env(safe-area-inset-bottom));right:24px;z-index:2147483000;font-family:var(--font)}
#inse-widget-root *{box-sizing:border-box;margin:0}
.inse-fab{width:62px;height:62px;border-radius:50%;border:1px solid var(--brass);
  background:linear-gradient(160deg,var(--panel),var(--bg));color:var(--brass-soft);
  cursor:pointer;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.4);
  transition:transform .25s ease}
.inse-fab:hover{transform:translateY(-3px)}
.inse-fab:focus-visible{outline:3px solid var(--brass-soft);outline-offset:3px}
.inse-fab svg{width:28px;height:28px}
.inse-panel{position:absolute;bottom:78px;right:0;width:370px;max-width:calc(100vw - 32px);padding:0;margin:0;
  max-height:min(560px,calc(100vh - 120px));background:var(--bg);border:1px solid var(--line);
  border-radius:var(--radius);display:none;flex-direction:column;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.5)}
.inse-panel.open{display:flex;animation:inseIn .28s cubic-bezier(.2,.9,.3,1)}
@keyframes inseIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.inse-head{background:linear-gradient(150deg,var(--surface),var(--panel));padding:14px 18px;
  display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line)}
.inse-seal{width:42px;height:42px;border-radius:10px;border:1px solid var(--brass);
  display:grid;place-items:center;color:var(--brass-soft);flex-shrink:0;background:rgba(0,0,0,.2);padding:5px}
.inse-seal img{width:100%;height:100%;object-fit:contain;display:block;filter:brightness(2) drop-shadow(0 2px 5px rgba(0,0,0,.25))}
.inse-title{font-size:14px;font-weight:700;color:var(--ink);letter-spacing:.2px;line-height:1.2}
.inse-sub{font-size:11px;color:var(--brass-soft);letter-spacing:.6px;text-transform:uppercase;margin-top:2px}
.inse-x{margin-left:auto;background:none;border:none;color:var(--muted);cursor:pointer;
  font-size:22px;line-height:1;padding:4px;border-radius:6px}
.inse-x:hover{color:var(--ink)}
.inse-x:focus-visible{outline:2px solid var(--brass-soft)}
.inse-log{flex:0 1 auto;overflow-y:auto;padding:16px 16px 10px;display:flex;flex-direction:column;gap:12px;
  max-height:230px;min-height:0;background:radial-gradient(120% 60% at 100% 0%,rgba(201,162,75,.06),transparent 60%),var(--bg)}
.inse-log::-webkit-scrollbar{width:7px}
.inse-log::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}
.inse-msg{max-width:85%;padding:11px 14px;border-radius:14px;font-size:13.5px;line-height:1.5;
  white-space:pre-line;word-wrap:break-word}
.inse-bot{align-self:flex-start;background:var(--surface);color:var(--ink);
  border:1px solid var(--line);border-bottom-left-radius:4px}
.inse-me{align-self:flex-end;background:var(--user);color:#eaf7fb;border-bottom-right-radius:4px}
.inse-chips{display:flex;flex-wrap:wrap;gap:7px;padding:6px 16px 14px}
.inse-chip{background:rgba(201,162,75,.1);border:1px solid var(--brass);color:var(--brass-soft);
  padding:7px 12px;border-radius:20px;font-size:12px;cursor:pointer;transition:background .2s}
.inse-chip:hover{background:rgba(201,162,75,.22)}
.inse-chip:focus-visible{outline:2px solid var(--brass-soft);outline-offset:2px}
.inse-chip-whatsapp{display:inline-flex;align-items:center;gap:6px;text-decoration:none;
  background:rgba(37,211,102,.12);border:1px solid #25d366;color:#25d366}
.inse-chip-whatsapp:hover{background:rgba(37,211,102,.24)}
.inse-chip-whatsapp:focus-visible{outline:2px solid #25d366;outline-offset:2px}
.inse-chip-whatsapp svg{flex-shrink:0}
.inse-form{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--line);background:var(--panel);margin-top:0}
.inse-in{flex:1;background:var(--bg);border:1px solid var(--line);color:var(--ink);
  padding:11px 13px;border-radius:11px;font-size:13.5px;font-family:var(--font)}
.inse-in::placeholder{color:var(--muted)}
.inse-in:focus{outline:none;border-color:var(--brass)}
.inse-send{background:var(--brass);border:none;color:#0e1c26;width:44px;border-radius:11px;
  cursor:pointer;display:grid;place-items:center;flex-shrink:0}
.inse-send:hover{background:var(--brass-soft)}
.inse-send:focus-visible{outline:3px solid var(--brass-soft);outline-offset:2px}
.inse-send svg{width:19px;height:19px}
.inse-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 15px;background:var(--surface);
  border:1px solid var(--line);border-radius:14px;border-bottom-left-radius:4px}
.inse-typing span{width:6px;height:6px;border-radius:50%;background:var(--muted);
  animation:inseBounce 1.2s infinite}
.inse-typing span:nth-child(2){animation-delay:.2s}
.inse-typing span:nth-child(3){animation-delay:.4s}
@keyframes inseBounce{0%,60%,100%{opacity:.3}30%{opacity:1}}
.inse-foot{text-align:center;font-size:10px;color:var(--muted);padding:6px 10px 10px;line-height:1.3}
@media (max-width:480px){
  #inse-widget-root{bottom:16px;right:16px}
  .inse-panel{width:min(100vw,370px);max-width:calc(100vw - 16px);max-height:calc(100vh - 94px);bottom:78px;right:0;border-radius:16px}
}

/* v12.4 - optimización responsive del chatbot (antes atrapado en un comentario HTML roto y nunca aplicado) */
#inse-widget-root .inse-panel{
  height:auto !important;
  width:min(370px, calc(100vw - 32px)) !important;
}
#inse-widget-root .inse-log{
  max-height:clamp(170px, 32vh, 230px) !important;
}
@supports (height: 100dvh){
  #inse-widget-root .inse-log{
    max-height:clamp(170px, 32dvh, 230px) !important;
  }
  #inse-widget-root .inse-panel{
    max-height:calc(100dvh - 118px) !important;
  }
}
@media(max-width:480px){
  #inse-widget-root{
    right:14px !important;
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
  }
  #inse-widget-root .inse-fab{
    width:58px !important;
    height:58px !important;
  }
  #inse-widget-root .inse-panel{
    right:0 !important;
    bottom:72px !important;
    width:calc(100vw - 28px) !important;
    max-width:calc(100vw - 28px) !important;
    max-height:calc(100vh - 104px) !important;
    border-radius:18px !important;
  }
  @supports (height: 100dvh){
    #inse-widget-root .inse-panel{
      max-height:calc(100dvh - 104px) !important;
    }
  }
  #inse-widget-root .inse-head{
    padding:12px 14px !important;
    gap:10px !important;
  }
  #inse-widget-root .inse-seal{
    width:38px !important;
    height:38px !important;
    border-radius:9px !important;
    padding:5px !important;
  }
  #inse-widget-root .inse-title{
    font-size:13px !important;
  }
  #inse-widget-root .inse-sub{
    font-size:10px !important;
    letter-spacing:.5px !important;
  }
  #inse-widget-root .inse-log{
    padding:14px 14px 8px !important;
    gap:10px !important;
    max-height:34vh !important;
  }
  @supports (height: 100dvh){
    #inse-widget-root .inse-log{
      max-height:34dvh !important;
    }
  }
  #inse-widget-root .inse-msg{
    max-width:92% !important;
    padding:10px 12px !important;
    font-size:13px !important;
    line-height:1.45 !important;
  }
  #inse-widget-root .inse-chips{
    padding:6px 14px 12px !important;
    gap:6px !important;
  }
  #inse-widget-root .inse-chip{
    padding:6px 10px !important;
    font-size:11.5px !important;
  }
  #inse-widget-root .inse-form{
    padding:10px 12px !important;
    gap:8px !important;
  }
  #inse-widget-root .inse-in{
    min-width:0 !important;
    padding:10px 12px !important;
    font-size:16px !important; /* >=16px evita el zoom automático de iOS al enfocar */
  }
  #inse-widget-root .inse-send{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
  }
  #inse-widget-root .inse-foot{
    padding:5px 8px 8px !important;
    font-size:9.5px !important;
    line-height:1.3 !important;
  }
}
@media(max-width:360px){
  #inse-widget-root .inse-panel{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
  }
  #inse-widget-root{
    right:10px !important;
  }
  #inse-widget-root .inse-chip{
    font-size:11px !important;
    padding:6px 9px !important;
  }
  #inse-widget-root .inse-title{
    font-size:12.5px !important;
  }
  #inse-widget-root .inse-sub{
    font-size:9.5px !important;
  }
}

/* v12.5 - elimina espacios superior/inferior causados por estilos globales de <section> */
#inse-widget-root .inse-panel{padding:0 !important;margin:0 !important;overflow:hidden !important;}
#inse-widget-root .inse-panel > *{margin-top:0 !important;margin-bottom:0 !important;}
