/* ============================================================================
  MR. FOX Digital · WhatsApp flotante v1.2.14
  Modificable desde Apariencia > Personalizar > MR. FOX > WhatsApp flotante.
  Sin dependencia de Elementor ni bibliotecas externas.
  ============================================================================ */
.mf-wa-widget {
  --mf-wa-pink: var(--mf-pink, #fb3bda);
  --mf-wa-cyan: var(--mf-cyan, #19e8f6);
  position: fixed;
  right: max(18px, env(safe-area-inset-right, 0px));
  bottom: max(20px, env(safe-area-inset-bottom, 0px));
  z-index: 190;
  width: 60px;
  height: 60px;
  font-family: inherit;
  isolation: isolate;
}
.mf-wa-fab {
  display:flex; align-items:center; justify-content:center;
  position:absolute; right:0; bottom:0;
  width:60px; height:60px; border-radius:19px; cursor:pointer;
  color:#fff!important;
  border:1px solid rgba(255,155,246,.87);
  background:linear-gradient(138deg,#ff4de2 4%,#cf15db 64%,#9707bf 100%);
  box-shadow: 0 0 0 3px rgba(27,236,252,.14), 0 8px 28px rgba(234,21,208,.35), 0 15px 30px rgba(0,0,0,.55), inset 0 1px 1px rgba(255,255,255,.38);
  transition: transform .22s cubic-bezier(.21,.85,.25,1), box-shadow .22s, filter .22s;
}
.mf-wa-fab::before{
  content:""; position:absolute; inset:-5px; pointer-events:none;
  border:1px solid rgba(35,243,255,.54);
  border-radius:23px;
  opacity:.65;
}
.mf-wa-fab svg { width:29px; height:29px; position:relative; z-index:1; filter:drop-shadow(0 2px 6px rgba(0,0,0,.25)); }
.mf-wa-fab__pulse{
  position:absolute; top:9px; right:8px; height:8px; width:8px; border-radius:50%;
  background:#26f8ff; box-shadow:0 0 0 2px rgba(7,16,35,.82),0 0 9px #26f8ff;
  animation:mf-wa-dot 3.3s ease-in-out infinite;
}
.mf-wa-fab:hover, .mf-wa-fab:focus-visible,.mf-wa-widget.is-open .mf-wa-fab{
  transform:translateY(-5px) scale(1.05);
  box-shadow:0 0 0 3px rgba(29,232,247,.28),0 0 25px rgba(35,234,254,.3),0 8px 33px rgba(251,45,216,.56),0 17px 36px rgba(0,0,0,.58);
}
.mf-wa-fab:focus-visible,.mf-wa-panel__close:focus-visible,.mf-wa-panel__action:focus-visible{
  outline:2px solid var(--mf-wa-cyan); outline-offset:4px;
}
.mf-wa-panel[hidden] { display:none!important; }
.mf-wa-panel{
  position:absolute; right:0; bottom:calc(100% + 18px);
  width:min(350px, calc(100vw - 32px));
  overflow:hidden;
  border-radius:17px;
  border:1px solid rgba(35,223,244,.52);
  background:radial-gradient(ellipse at 94% 4%,rgba(238,31,216,.16),transparent 45%),linear-gradient(152deg,#09172d,#040918 77%);
  box-shadow:0 0 0 1px rgba(255,65,231,.12) inset,0 14px 46px rgba(0,0,0,.66),0 0 30px rgba(21,216,244,.11);
  color:#eff9ff;
  animation:mf-wa-enter .25s cubic-bezier(.2,.88,.25,1) both;
  transform-origin:bottom right;
}
.mf-wa-panel__top{
  display:flex; align-items:center; gap:11px;
  position:relative; min-height:99px; padding:19px 45px 16px 18px;
  background:linear-gradient(120deg,rgba(12,44,70,.72),rgba(9,19,40,.88));
  border-bottom:1px solid rgba(47,213,245,.22);
}
.mf-wa-panel__top::after{
  content:""; position:absolute;bottom:-1px;left:17px;right:22px;height:2px;
  background:linear-gradient(90deg,var(--mf-wa-cyan),transparent 45%,var(--mf-wa-pink));
}
.mf-wa-panel__portrait{
  flex:0 0 61px;width:61px;height:61px;display:grid;place-items:center;
  overflow:hidden;border:1px solid rgba(246,60,218,.46);border-radius:13px;
  background:radial-gradient(circle at 50% 24%,rgba(221,27,218,.22),transparent 72%),#060d1f;
}
.mf-wa-panel__portrait img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 0 7px rgba(251,51,231,.24))}
.mf-wa-panel__brand{min-width:0;display:flex;flex-direction:column;gap:3px;}
.mf-wa-panel__eyebrow{font-size:.56rem;font-weight:900;letter-spacing:.17em;color:#41e9f7;}
.mf-wa-panel__brand strong{font-size:1.08rem;letter-spacing:.02em;color:#fff;line-height:1.2;}
.mf-wa-panel__brand strong span{color:#ff6ce8;}
.mf-wa-panel__brand small{font-size:.7rem;color:#a4c5df;}
.mf-wa-panel__close{
  position:absolute;top:13px;right:11px;width:31px;height:31px;border-radius:9px;
  border:1px solid rgba(47,213,245,.22);background:rgba(9,22,43,.7);
  display:grid;place-items:center;color:#dbedfc;cursor:pointer;font-size:24px;line-height:1;
}
.mf-wa-panel__close:hover{border-color:#42efff;color:#40f4ff;background:rgba(29,206,248,.12)}
.mf-wa-panel__body{padding:22px 20px 20px;}
.mf-wa-panel__tag{display:inline-flex;align-items:center;gap:7px;font-size:.59rem;font-weight:950;letter-spacing:.15em;color:#53eaff;}
.mf-wa-panel__dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#ff54e7;box-shadow:0 0 9px rgba(255,83,238,.9)}
.mf-wa-panel__body h2{font-size:1.35rem;line-height:1.15;letter-spacing:-.03em;font-weight:900;color:#fff;margin:12px 0 8px;}
.mf-wa-panel__body p{font-size:.86rem;line-height:1.54;color:#bdcce0;margin:0 0 19px;}
.mf-wa-panel__action{
  display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;
  width:100%;padding:13px 11px;min-height:47px;border-radius:9px;
  background:linear-gradient(105deg,#ff52e9,#be12dd);color:#090918!important;
  font-size:.71rem;letter-spacing:.045em;font-weight:950;text-decoration:none!important;
  border:1px solid rgba(255,169,247,.4);
  box-shadow:0 0 21px rgba(245,41,217,.22);
  transition:transform .18s,filter .18s;
}
.mf-wa-panel__action:hover{transform:translateY(-2px);filter:brightness(1.12)}
.mf-wa-panel__action svg{flex-shrink:0;width:21px;height:21px}
.mf-wa-panel__action span:last-child{margin-left:auto;font-size:1.12rem}
.mf-wa-panel__note{display:block;text-align:center;margin-top:10px;font-size:.68rem;color:#7e9ab4}
.mf-wa-panel__bottom{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid rgba(36,168,209,.13);color:#7899b1;font-size:.55rem;font-weight:850;letter-spacing:.085em;}
.mf-wa-panel__bottom span:last-child{color:#ff6ee6;}
body.mf-drawer-open .mf-wa-widget{visibility:hidden;pointer-events:none}
@keyframes mf-wa-enter{from{opacity:0;transform:translateY(11px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes mf-wa-dot{0%,100%{opacity:.72;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}}
@media(max-width:760px){
  .mf-wa-widget{width:53px;height:53px;right:max(15px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px))}
  .mf-wa-fab{width:53px;height:53px;border-radius:17px}
  .mf-wa-fab::before{border-radius:21px}
  .mf-wa-fab svg{width:26px;height:26px}
  .mf-wa-panel{bottom:calc(100% + 14px);width:min(340px,calc(100vw - 26px));max-height:min(580px,calc(100dvh - 104px));overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:390px){
  .mf-wa-widget{width:49px;height:49px;right:max(13px,env(safe-area-inset-right,0px));bottom:max(14px,env(safe-area-inset-bottom,0px))}
  .mf-wa-fab{width:49px;height:49px;border-radius:16px}
  .mf-wa-fab svg{width:24px;height:24px}
  .mf-wa-panel{width:calc(100vw - 26px)}
  .mf-wa-panel__top{padding:14px 43px 13px 14px;min-height:86px}
  .mf-wa-panel__portrait{flex-basis:52px;width:52px;height:52px}
  .mf-wa-panel__body{padding:18px 17px 16px}
  .mf-wa-panel__body h2{font-size:1.23rem}
  .mf-wa-panel__bottom{padding:10px 12px;font-size:.49rem}
}
@media(prefers-reduced-motion:reduce){
  .mf-wa-fab,.mf-wa-panel,.mf-wa-panel__action,.mf-wa-fab__pulse{animation:none!important;transition:none!important}
}
