/* Asistente GENPAR Dual Fuel (chat con IA en el simulador) */
.gpai-dock{position:fixed;right:20px;bottom:92px;z-index:61;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:Barlow,system-ui,sans-serif}
.gpai-dock[hidden]{display:none}
.gpai-fab{position:relative;display:flex;align-items:center;border:0;background:none;padding:0;cursor:pointer;color:#fff;animation:gpaiPop .4s ease}
.gpai-fab:focus-visible{outline:3px solid #ffd43b;outline-offset:4px;border-radius:99px}
.gpai-pill{position:relative;display:flex;align-items:center;padding:10px 50px 10px 18px;margin-right:-44px;border-radius:99px;
  background:linear-gradient(120deg,#0057b8,#1c9cc9,#4b9b45,#0057b8);background-size:300% 100%;
  box-shadow:0 10px 30px rgba(0,87,184,.45),inset 0 0 0 2px rgba(255,255,255,.25);animation:gpaiGrad 6s linear infinite;transition:transform .2s}
.gpai-fab:hover .gpai-pill{transform:scale(1.04)}
.gpai-lbl{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;line-height:1.1;text-align:left}
.gpai-lbl b{font-size:16px;font-weight:800;letter-spacing:.2px}
.gpai-lbl small{font-size:12px;opacity:.92;margin-top:2px}
.gpai-ring{position:absolute;inset:0;border-radius:99px;border:3px solid rgba(28,156,201,.55);animation:gpaiRing 2.4s ease-out infinite;pointer-events:none}
.gpai-ring.r2{animation-delay:1.2s}
.gpai-gl{position:relative;z-index:2;width:88px;height:95px;display:block;filter:drop-shadow(0 8px 14px rgba(6,28,58,.35));transition:transform .2s}
.gpai-gl svg{width:100%;height:100%;display:block;overflow:visible}
.gpai-fab:hover .gpai-gl{transform:scale(1.08) rotate(-4deg)}
.gpai-live{position:absolute;top:30px;right:10px;width:13px;height:13px;border-radius:50%;background:#3ddc6a;border:2px solid #fff;animation:gpaiLive 1.6s ease-in-out infinite}
.gpai-fab.wiggle .gpai-gl{animation:gpaiJump .9s ease}
.gpai-dock{animation:gpaiStroll 24s ease-in-out 6s infinite}
@keyframes gpaiJump{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-18px) rotate(-8deg)}55%{transform:translateY(0) rotate(4deg)}75%{transform:translateY(-7px)}}
@keyframes gpaiStroll{0%,78%,100%{transform:translateX(0)}82%{transform:translateX(-28px) translateY(-12px)}86%{transform:translateX(-56px)}90%{transform:translateX(-28px) translateY(-12px)}94%{transform:translateX(0)}}
.gpai-tip{position:relative;max-width:260px;background:#fff;color:#14213d;border-radius:16px 16px 4px 16px;padding:12px 30px 12px 14px;font-size:14.5px;line-height:1.35;box-shadow:0 12px 34px rgba(6,28,58,.28);cursor:pointer;border:2px solid #cfe0f3;opacity:0;transform:translateY(8px) scale(.96)}
.gpai-tip[hidden]{display:none}
.gpai-tip.in{animation:gpaiTipIn .35s cubic-bezier(.2,1.4,.4,1) forwards}
.gpai-tip.out{animation:gpaiTipOut .25s ease forwards}
.gpai-tip b{color:#0057b8}
.gpai-tip-x{position:absolute;top:4px;right:6px;border:0;background:none;color:#7a8699;font-size:18px;line-height:1;cursor:pointer;padding:2px 4px}
@keyframes gpaiGrad{to{background-position:300% 0}}
@keyframes gpaiBob{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes gpaiRing{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.35,1.6);opacity:0}}
@keyframes gpaiLive{0%,100%{box-shadow:0 0 0 0 rgba(61,220,106,.7)}50%{box-shadow:0 0 0 6px rgba(61,220,106,0)}}
@keyframes gpaiBlink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.85)}}
@keyframes gpaiWiggle{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}
@keyframes gpaiTipIn{to{opacity:1;transform:none}}
@keyframes gpaiTipOut{from{opacity:1;transform:none}to{opacity:0;transform:translateY(8px) scale(.96)}}
@keyframes gpaiPop{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.gpai{position:fixed;right:20px;bottom:20px;z-index:99980;width:390px;height:min(640px,calc(100vh - 40px));background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(6,28,58,.38);display:flex;flex-direction:column;overflow:hidden;font-family:Barlow,system-ui,sans-serif;color:#14213d;animation:gpaiPop .25s ease}
.gpai[hidden]{display:none}
.gpai-h{display:flex;align-items:center;gap:10px;padding:12px 12px 12px 14px;background:linear-gradient(110deg,#061c3a,#0a2a55 55%,#0057b8);color:#fff}
.gpai-hgl{width:44px;height:48px;flex:none;display:block}
.gpai-hgl svg{width:100%;height:100%;display:block;overflow:visible}
.gpai-h div{flex:1;min-width:0;line-height:1.2}
.gpai-h b{display:block;font-size:15.5px}
.gpai-h small{font-size:12.5px;color:#cfe0f3;display:flex;align-items:center;gap:6px}
.gpai-h small i{width:8px;height:8px;border-radius:50%;background:#70b85a;display:inline-block}
.gpai-x{border:0;background:rgba(255,255,255,.12);color:#fff;width:36px;height:36px;border-radius:10px;cursor:pointer;display:grid;place-items:center}
.gpai-x svg{width:20px;height:20px}
.gpai-m{flex:1;overflow-y:auto;padding:14px;background:#f3f6fa;display:flex;flex-direction:column;gap:8px;-webkit-overflow-scrolling:touch}
.gpai-b{max-width:86%;padding:10px 13px;border-radius:16px;font-size:15px;line-height:1.45;word-wrap:break-word}
.gpai-b.bot{align-self:flex-start;background:#fff;border:1px solid #e3e8ef;border-bottom-left-radius:5px}
.gpai-b.me{align-self:flex-end;background:#0057b8;color:#fff;border-bottom-right-radius:5px}
.gpai-b.err{border-color:#f3c2bb;background:#fdecea;color:#7a1d14}
.gpai-b b{color:inherit}
.gpai-b.typing{display:flex;gap:4px;padding:13px 14px}
.gpai-b.typing i{width:7px;height:7px;border-radius:50%;background:#9fb3c8;animation:gpaiDot 1s infinite}
.gpai-b.typing i:nth-child(2){animation-delay:.15s}.gpai-b.typing i:nth-child(3){animation-delay:.3s}
@keyframes gpaiDot{0%,80%,100%{opacity:.3;transform:none}40%{opacity:1;transform:translateY(-3px)}}
.gpai-upd{display:flex;align-items:center;gap:7px;margin-top:8px;border:1px solid #bfe0b4;background:#eef7ec;color:#2f6e2a;font:700 13px Barlow,sans-serif;border-radius:9px;padding:7px 10px;cursor:pointer}
.gpai-upd svg{width:16px;height:16px}
.gpai-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.gpai-acts button,.gpai-acts a{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:10px;padding:9px 12px;font:700 13.5px Barlow,sans-serif;cursor:pointer;text-decoration:none;background:#0057b8;color:#fff}
.gpai-acts .wa{background:#25d366}
.gpai-acts svg{width:17px;height:17px}
.gpai-q{display:flex;gap:6px;flex-wrap:wrap;padding:0 12px;background:#f3f6fa}
.gpai-q:not(:empty){padding-bottom:10px}
.gpai-q button{border:1.5px solid #cfe0f3;background:#fff;color:#0057b8;border-radius:99px;padding:7px 12px;font:700 13.5px Barlow,sans-serif;cursor:pointer}
.gpai-f{display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid #e3e8ef;background:#fff}
.gpai-f textarea{flex:1;resize:none;border:1px solid #e3e8ef;border-radius:12px;padding:10px 12px;font:16px/1.35 Barlow,system-ui,sans-serif;outline:none;max-height:120px;background:#fbfcfe}
.gpai-f textarea:focus{border-color:#0057b8;box-shadow:0 0 0 3px rgba(0,87,184,.12)}
.gpai-f button{width:44px;height:44px;border:0;border-radius:12px;background:#4b9b45;color:#fff;cursor:pointer;display:grid;place-items:center;flex:none}
.gpai-f button svg{width:20px;height:20px}
.gpai-n{font-size:11px;color:#7a8699;text-align:center;padding:0 12px 9px;background:#fff}
.gp-sim .gpai-invw{margin-top:-60px;position:relative;z-index:3}
.gp-sim .gpai-invw + .main{margin-top:0}
.gpai-inv{width:100%;display:flex;align-items:center;gap:12px;margin:0 0 16px;border:2px solid #cfe0f3;background:linear-gradient(135deg,#f3f8ff,#fff);border-radius:16px;padding:12px 16px;cursor:pointer;text-align:left;font-family:Barlow,system-ui,sans-serif;color:#14213d;box-shadow:0 6px 18px rgba(0,87,184,.08)}
.gpai-inv:hover{border-color:#0057b8}
.gpai-inv-i{width:52px;height:56px;display:grid;place-items:center;flex:none}
.gpai-inv-i svg{width:100%;height:100%;overflow:visible}
.gpai-inv b{display:block;font-size:16.5px;color:#0a2a55}
.gpai-inv small{font-size:13.5px;color:#4a5568}
.gpai-inv-go{margin-left:auto;font-weight:800;color:#0057b8;white-space:nowrap}
.gp-sim .field.gp-flash{animation:gpaiFlash 1.4s ease}
@keyframes gpaiFlash{0%,100%{background:transparent}25%{background:#e8f6ec;box-shadow:0 0 0 6px #e8f6ec;border-radius:10px}}
@media (max-width:700px){
  .gpai{inset:0;width:auto;height:auto;border-radius:0;bottom:0;right:0;padding-bottom:env(safe-area-inset-bottom)}
  .gpai-h{padding-top:calc(12px + env(safe-area-inset-top))}
  html.gpai-on, html.gpai-on body{overflow:hidden}
  html.gpai-on .gp-wa-float{display:none}
  .gpai-dock{bottom:88px;right:14px}
  .gpai-pill{display:none}
  .gpai-gl{width:74px;height:80px}
  .gpai-live{top:24px;right:8px}
  .gpai-tip{max-width:220px;font-size:14px}
  .gpai-inv-go{display:none}
}

/* la invitación dentro del simulador también se mueve un poco */
.gpai-inv-i{animation:gpaiWiggle 1.1s ease 2s 2}
.gpai-inv{position:relative;overflow:hidden}
.gpai-inv:before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.75),transparent);animation:gpaiShine 5s ease-in-out 1.5s infinite;pointer-events:none}
@keyframes gpaiShine{0%{left:-60%}30%,100%{left:130%}}
@media (prefers-reduced-motion:reduce){.gpai-dock,.gpai-fab,.gpai-pill,.gpai-ring,.gpai-gl,.gpai-live,.gpai-inv:before,.gpai-inv-i{animation:none!important}.gpai-ring{display:none}}
