/* Posicionamiento compartido de los flotantes y apariencia global de la pill.
   Se carga después del CSS de cada página durante la migración. */
.ai-launch{
  --floating-ui-gap:20px;
  --floating-ui-lift:0px;
  position:fixed !important;
  top:auto !important;
  right:max(16px,env(safe-area-inset-right,0px)) !important;
  left:auto !important;
  bottom:calc(max(var(--floating-ui-gap),env(safe-area-inset-bottom,0px)) + var(--floating-ui-lift)) !important;
  z-index:2147483645 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  width:auto !important;
  height:48px !important;
  min-width:0 !important;
  padding:8px 18px 8px 14px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#00152b !important;
  color:#fff !important;
  font-family:'Noto Sans',sans-serif !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  cursor:pointer !important;
  box-shadow:0 12px 32px rgba(0,21,43,.28) !important;
  transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .4s cubic-bezier(.22,.61,.36,1),background .2s cubic-bezier(.22,.61,.36,1),box-shadow .2s cubic-bezier(.22,.61,.36,1),visibility .4s !important;
}
.ai-launch:hover,
.ai-launch.is-visible:hover,
body > #aiLaunch.ai-launch:hover{
  background:#021c38 !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 16px 36px rgba(0,21,43,.34) !important;
}
body > #aiLaunch.ai-launch{
  transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .4s cubic-bezier(.22,.61,.36,1),background .2s cubic-bezier(.22,.61,.36,1),box-shadow .2s cubic-bezier(.22,.61,.36,1),visibility .4s !important;
  will-change:transform,box-shadow;
}
.ai-launch svg{
  flex:none !important;
  width:18px !important;
  height:18px !important;
  color:#fff !important;
  stroke:#fff !important;
}
.ai-launch > span{
  color:#fff !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
}
.ai-launch-dot{
  width:8px !important;
  height:8px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#00bdff !important;
  box-shadow:0 0 0 3px rgba(0,189,255,.25) !important;
  flex:none !important;
}
body.assistant-open > .ai-launch{
  visibility:hidden !important;
  pointer-events:none !important;
}
body > .ai-backdrop,
body > .ai-panel{
  position:fixed !important;
}

@media (max-width:640px){
  .ai-launch{
    --floating-ui-gap:12px;
    width:56px !important;
    height:56px !important;
    padding:0 !important;
    gap:0 !important;
    border-radius:50% !important;
  }
  .ai-launch svg{
    width:24px !important;
    height:24px !important;
  }
  .ai-launch > span:not(.ai-launch-dot){display:none !important;}
  .ai-launch-dot{
    display:block !important;
    position:absolute !important;
    right:2px !important;
    bottom:2px !important;
    width:12px !important;
    height:12px !important;
    border:2px solid #fff !important;
    background:#22c55e !important;
    box-shadow:none !important;
  }
}
