/* Pro Floating Contact — frontend */
.pfc-root{position:fixed;z-index:var(--pfc-z,99999);direction:rtl;font-family:inherit;-webkit-tap-highlight-color:transparent}
.pfc-root *{box-sizing:border-box;margin:0;padding:0}

/* main button */
.pfc-btn{position:relative;width:var(--pfc-btn-size,60px);height:var(--pfc-btn-size,60px);border:none;cursor:pointer;border-radius:var(--pfc-btn-radius,50%);background:linear-gradient(135deg,var(--pfc-btn-bg,#7c6ff0),var(--pfc-btn-bg2,#5b4ee0));color:var(--pfc-icon-color,#fff);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.25);transition:transform .25s ease,box-shadow .25s ease;overflow:visible}
.pfc-btn:hover{transform:scale(1.07)}
.pfc-btn-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease,transform .3s ease}
.pfc-btn-icon svg{width:52%;height:52%}
.pfc-btn-icon img{width:60%;height:60%;object-fit:contain;border-radius:inherit}
.pfc-icon-close{opacity:0;transform:rotate(-90deg) scale(.5)}
.pfc-open .pfc-icon-open{opacity:0;transform:rotate(90deg) scale(.5)}
.pfc-open .pfc-icon-close{opacity:1;transform:rotate(0) scale(1)}

/* panel (desktop popover) */
.pfc-panel{position:absolute;bottom:calc(var(--pfc-btn-size,60px) + 14px);width:340px;max-width:calc(100vw - 32px);background:var(--pfc-panel-bg,#fff);border-radius:var(--pfc-panel-radius,24px);box-shadow:0 20px 60px rgba(20,30,70,.25);padding:22px 18px 18px;opacity:0;visibility:hidden;transform:translateY(14px) scale(.96);transition:all .28s cubic-bezier(.34,1.4,.64,1)}
.pfc-pos-right .pfc-panel{right:0}
.pfc-pos-left .pfc-panel{left:0}
.pfc-open .pfc-panel{opacity:1;visibility:visible;transform:translateY(0) scale(1)}

.pfc-panel-head{text-align:center;margin-bottom:16px}
.pfc-panel-title{color:var(--pfc-title,#1e2a4a);font-size:calc(var(--pfc-fs,15px) + 4px);font-weight:800}
.pfc-panel-subtitle{color:var(--pfc-subtitle,#8a94ad);font-size:calc(var(--pfc-fs,15px) - 2px);margin-top:6px}

.pfc-items{display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow-y:auto;padding:8px;margin:-8px}
.pfc-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--pfc-item-bg,#f5f7fb);border:none;width:100%;border-radius:var(--pfc-item-radius,16px);padding:10px 16px;text-decoration:none!important;cursor:pointer;font-size:var(--pfc-fs,15px);font-weight:600;color:var(--pfc-item-text,#1e2a4a)!important;transition:transform .15s ease,box-shadow .15s ease;font-family:inherit;direction:rtl;text-align:right}
.pfc-item:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(20,30,70,.12)}
.pfc-item-icon{flex:0 0 auto;width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.15)}
.pfc-item-icon svg{width:55%;height:55%}
.pfc-item-icon img{width:100%;height:100%;object-fit:cover}
.pfc-item-label{flex:1}

/* overlay */
.pfc-overlay{position:fixed;inset:0;background:rgba(15,20,40,.55);opacity:0;visibility:hidden;transition:opacity .25s ease;z-index:-1}
.pfc-open .pfc-overlay{opacity:1;visibility:visible}

/* per-item device conditions */
@media(max-width:781px){.pfc-dev-desktop{display:none!important}}
@media(min-width:782px){.pfc-dev-mobile{display:none!important}.pfc-overlay{display:none}}

/* mobile: centered modal like screenshot */
@media(max-width:781px){
	.pfc-panel{position:fixed;left:16px!important;right:16px!important;top:50%;bottom:auto;width:auto;transform:translateY(-45%) scale(.95);margin:0 auto;max-height:80vh}
	.pfc-open .pfc-panel{transform:translateY(-50%) scale(1)}
}

/* ---------- Attention effects ---------- */
/* pulse */
.pfc-effect-pulse::after{content:"";position:absolute;inset:0;border-radius:inherit;background:inherit;animation:pfc-pulse 2s ease-out infinite;z-index:-1}
@keyframes pfc-pulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.7);opacity:0}}
/* shine */
.pfc-effect-shine{overflow:hidden}
.pfc-effect-shine::before{content:"";position:absolute;top:-50%;left:-70%;width:45%;height:200%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.65),transparent);transform:rotate(20deg);animation:pfc-shine 2.6s ease-in-out infinite}
@keyframes pfc-shine{0%{left:-70%}55%{left:130%}100%{left:130%}}
/* ring */
.pfc-effect-ring::after{content:"";position:absolute;inset:-4px;border-radius:inherit;border:3px solid var(--pfc-btn-bg,#7c6ff0);animation:pfc-ring 1.8s ease-out infinite}
@keyframes pfc-ring{0%{transform:scale(.9);opacity:1}100%{transform:scale(1.5);opacity:0}}
/* bounce */
.pfc-effect-bounce{animation:pfc-bounce 2.4s ease infinite}
@keyframes pfc-bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-12px)}60%{transform:translateY(-6px)}}
/* shake */
.pfc-effect-shake{animation:pfc-shake 3s ease infinite}
@keyframes pfc-shake{0%,86%,100%{transform:rotate(0)}88%{transform:rotate(10deg)}90%{transform:rotate(-10deg)}92%{transform:rotate(8deg)}94%{transform:rotate(-8deg)}96%{transform:rotate(4deg)}98%{transform:rotate(-4deg)}}
/* glow */
.pfc-effect-glow{animation:pfc-glow 2s ease-in-out infinite}
@keyframes pfc-glow{0%,100%{box-shadow:0 8px 24px rgba(0,0,0,.25),0 0 0 rgba(124,111,240,0)}50%{box-shadow:0 8px 24px rgba(0,0,0,.25),0 0 26px 6px var(--pfc-btn-bg,#7c6ff0)}}
/* effects stop while open */
.pfc-open .pfc-btn{animation:none}
.pfc-open .pfc-btn::before,.pfc-open .pfc-btn::after{display:none}

@media (prefers-reduced-motion:reduce){.pfc-btn,.pfc-btn::before,.pfc-btn::after{animation:none!important}}
