
/* Frozy empleados en Portal Shell · BUILD 71641 */
.fzn-es-launcher{position:fixed;right:14px;bottom:12px;z-index:10020;border:0;background:transparent;border-radius:0;padding:0;display:grid;place-items:end center;width:82px;height:98px;box-shadow:none;cursor:pointer;overflow:visible;appearance:none;-webkit-appearance:none}
.fzn-es-launcher img{width:78px;height:94px;object-fit:contain;object-position:center bottom;animation:frozyFloat 2.6s ease-in-out infinite;filter:drop-shadow(0 7px 8px rgba(70,25,38,.18));pointer-events:none}.fzn-es-launcher img.talking{animation:frozyTalkBounce .55s ease-in-out infinite}.fzn-es-launcher span{display:none}
.fzn-es-panel{position:fixed;right:18px;bottom:92px;width:min(405px,calc(100vw - 24px));height:min(620px,calc(100vh - 116px));z-index:10021;background:#fff;border:1px solid #eadfe3;border-radius:24px;box-shadow:0 22px 68px rgba(67,21,39,.24);overflow:hidden;display:flex;flex-direction:column}
.fzn-es-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #efe4e8;background:linear-gradient(180deg,#fff,#fff7fa)}
.fzn-es-brand{display:flex;align-items:center;gap:10px}.fzn-es-brand img{width:60px;height:60px;object-fit:contain;animation:frozyFloat 2.8s ease-in-out infinite}.fzn-es-brand img.talking{animation:frozyTalkBounce .55s ease-in-out infinite}.fzn-es-brand b{display:block;color:#711438;font-size:18px}.fzn-es-brand small{display:block;color:#756a6e;font-size:11px;margin-top:2px}
.fzn-es-close{border:0;background:#f7edf1;color:#711438;width:38px;height:38px;border-radius:12px;font-size:25px;cursor:pointer}
.fzn-es-intro{padding:12px 14px;border-bottom:1px solid #efe4e8;display:grid;gap:4px}.fzn-es-intro b{font-size:15px}.fzn-es-intro span{font-size:11px;line-height:1.45;color:#70666a}
.fzn-es-messages{flex:1;overflow:auto;padding:13px;background:#fbf9fa;display:flex;flex-direction:column;gap:9px}
.fzn-es-msg{max-width:88%;padding:10px 12px;border-radius:16px;line-height:1.45;font-size:13px;white-space:pre-wrap}.fzn-es-msg.bot{align-self:flex-start;background:#fff;border:1px solid #eadfe3}.fzn-es-msg.user{align-self:flex-end;background:#711438;color:#fff}
.fzn-es-chips{display:flex;gap:7px;overflow:auto;padding:9px 12px;border-top:1px solid #f0e5e9}.fzn-es-chip{white-space:nowrap;border:1px solid #decbd3;background:#fff;color:#711438;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer}
.fzn-es-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 12px;border-top:1px solid #f0e5e9}.fzn-es-form input{min-width:0;border:1px solid #d9cbd0;border-radius:12px;padding:11px;font:inherit}.fzn-es-form button{border:0;border-radius:12px;background:#711438;color:#fff;padding:0 14px;font-weight:900;cursor:pointer}
.fzn-es-voice{margin:0 12px 10px;border:1px solid #decbd3;background:#fff;color:#711438;border-radius:11px;padding:9px;font-weight:800;cursor:pointer}
@media(max-width:700px){.fzn-es-panel{right:10px;bottom:82px;width:calc(100vw - 20px);height:min(650px,calc(100vh - 96px))}.fzn-es-launcher{right:10px;bottom:10px;width:66px;height:66px;padding:3px}.fzn-es-launcher img{width:56px;height:56px}}

/* BUILD 71657 · botón Frozy visible en navegación */
.frozy-nav-btn{display:flex!important;align-items:center;gap:12px;width:100%;min-height:54px;border:0;background:transparent;color:#fff;padding:10px 18px;border-radius:12px;font:inherit;font-weight:800;cursor:pointer;text-align:left}
.frozy-nav-btn:hover{background:rgba(255,255,255,.10)}
.frozy-nav-btn .ico{display:grid;place-items:center;width:28px;min-width:28px}

@keyframes frozyFloat{0%,100%{transform:translateY(0) scale(1)}25%{transform:translateY(-2px) scale(1.02)}50%{transform:translateY(-5px) scale(1.03)}75%{transform:translateY(-2px) scale(1.01)}}
@keyframes frozyTalkBounce{0%,100%{transform:translateY(0) scale(1)}20%{transform:translateY(-2px) scale(1.03)}40%{transform:translateY(1px) scale(0.99)}60%{transform:translateY(-3px) scale(1.04)}80%{transform:translateY(0) scale(1.01)}}
.frozy-nav-btn .ico img{animation:frozyFloat 2.6s ease-in-out infinite}

/* BUILD 71657 · ojos/manos/pies/boca con frames reales */
.fzn-es-launcher img{transition:transform .12s ease,filter .12s ease}
.fzn-es-launcher:hover img,.fzn-es-launcher:focus img{filter:drop-shadow(0 9px 10px rgba(70,25,38,.22));transform:translateY(-2px)}
.fzn-es-launcher img.waving,.fzn-es-brand img.waving{animation:frozyHandWave .42s ease-in-out infinite}
.fzn-es-launcher img.talking,.fzn-es-brand img.talking{animation:frozyTalkBody .34s ease-in-out infinite}
.frozy-nav-btn:hover .ico img{animation:frozyNavWave .44s ease-in-out infinite}
@keyframes frozyHandWave{0%,100%{transform:translateY(0) rotate(-1deg) scale(1)}25%{transform:translateY(-3px) rotate(2deg) scale(1.03)}55%{transform:translateY(-1px) rotate(-2deg) scale(1.02)}75%{transform:translateY(-4px) rotate(1deg) scale(1.035)}}
@keyframes frozyTalkBody{0%,100%{transform:translateY(0) scale(1)}35%{transform:translateY(-3px) scale(1.035)}65%{transform:translateY(1px) scale(.995)}}
@keyframes frozyNavWave{0%,100%{transform:rotate(0) translateY(0)}25%{transform:rotate(-7deg) translateY(-2px)}60%{transform:rotate(6deg) translateY(-3px)}}

/* BUILD 71657 · estado IA local */
.fzn-es-ai-status{margin-top:3px;font-size:10px;font-weight:800;color:#8e1749}

/* BUILD 71657 · Frozy transparente, sin círculo ni tarjeta */
.fzn-es-launcher::before,.fzn-es-launcher::after{display:none!important;content:none!important}
.fzn-es-brand img{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;object-fit:contain}
.fzn-es-launcher:focus{outline:2px solid rgba(142,23,73,.22);outline-offset:2px;border-radius:14px}
@media(max-width:700px){
  .fzn-es-launcher{right:8px;bottom:8px;width:72px;height:88px;padding:0;background:transparent;border:0;box-shadow:none}
  .fzn-es-launcher img{width:68px;height:84px}
}

/* BUILD 71662 · botón Hablar con Frozy */
.fzn-es-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;gap:10px!important;align-items:center!important}
.fzn-es-mic{
  min-height:48px;padding:0 14px;border:1px solid #decbd4;border-radius:14px;background:#fff7fb;
  color:#861344;font-weight:850;cursor:pointer;white-space:nowrap;
}
.fzn-es-mic:hover{background:#fbeaf2}
.fzn-es-mic.listening{background:#861344;color:#fff;border-color:#861344}
.fzn-es-mic.hidden{display:none!important}
@media(max-width:640px){
  .fzn-es-form{grid-template-columns:1fr auto!important}
  .fzn-es-form input{grid-column:1/-1!important}
  .fzn-es-mic{min-height:46px;font-size:13px;padding:0 11px}
}

/* BUILD 71662 · controles de audio claros y micrófono siempre visible para admin */
.fzn-es-form{grid-template-columns:minmax(0,1fr) auto!important}
.fzn-es-audio-actions{
  display:grid;grid-template-columns:1fr;gap:8px;padding:0 12px 10px;
}
.fzn-es-audio-actions .fzn-es-mic,
.fzn-es-audio-actions .fzn-es-voice{
  margin:0!important;min-height:46px!important;width:100%;display:flex;align-items:center;justify-content:center;
}
.fzn-es-mic{border:1px solid #861344!important;background:#861344!important;color:#fff!important}
.fzn-es-mic:hover{background:#a01955!important}
.fzn-es-mic.listening{background:#c92770!important;border-color:#c92770!important;box-shadow:0 0 0 4px rgba(201,39,112,.12)}
.fzn-es-mic.hidden,.fzn-es-voice.hidden{display:none!important}
@media(max-width:560px){
  .fzn-es-audio-actions{grid-template-columns:1fr}
}

/* BUILD 71705 · Frozy sin voz de salida */
#fznEmpShellVoice{display:none!important}

/* BUILD 71705 · Frozy sin voz de salida */
#fznEmpShellVoice,#fznEmpFrozyVoice,.fzn-es-voice,.fzn-ef-voice{display:none!important}

/* BUILD 71705 · Frozy sólo texto */
.fzn-es-audio-actions,.fzn-es-mic{display:none!important}
