#nqb{position:fixed;bottom:var(--nqb-oy,24px);z-index:var(--nqb-z,99990);direction:var(--nqb-dir,ltr);
--nqb-c:#111111;--nqb-on:#ffffff;--nqb-t:rgba(17,17,17,.11);--nqb-t2:rgba(17,17,17,.18);--nqb-rad:18px;
-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}
#nqb.nqb-side--right{right:var(--nqb-ox,24px)}
#nqb.nqb-side--left{left:var(--nqb-ox,24px)}
#nqb *{box-sizing:border-box;margin:0;padding:0;border:0;font-family:inherit;line-height:1.6;text-align:start;float:none;text-decoration:none;text-shadow:none;list-style:none;background:none}
#nqb svg{display:block;flex:0 0 auto;max-width:none;height:auto;vertical-align:middle}
#nqb-spacer{display:none}

/* ---------- launcher (desktop) ---------- */
#nqb .nqb__launch{display:flex;align-items:center;gap:12px;flex-direction:row}
#nqb.nqb-flip .nqb__launch{flex-direction:row-reverse}
#nqb .nqb__bar{display:none}
#nqb .nqb__btn{position:relative;width:58px;height:58px;min-width:58px;flex:0 0 58px;border-radius:50%;
background:var(--nqb-c);color:var(--nqb-on);display:flex;align-items:center;justify-content:center;cursor:pointer;
box-shadow:0 8px 24px rgba(0,0,0,.18);transition:transform .2s cubic-bezier(.2,.8,.3,1),box-shadow .2s ease;
touch-action:manipulation;appearance:none;-webkit-appearance:none}
#nqb .nqb__btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.22)}
#nqb .nqb__btn:active{transform:scale(.95)}
#nqb .nqb__btn:focus-visible{outline:2px solid var(--nqb-c);outline-offset:4px}
#nqb .nqb__btn > span{display:flex;align-items:center;justify-content:center;transition:opacity .18s ease,transform .25s cubic-bezier(.2,.8,.3,1)}
#nqb .nqb__btn .nqb-x{position:absolute;inset:0;opacity:0;transform:rotate(-90deg) scale(.7)}
#nqb.is-open .nqb__btn .nqb-main{opacity:0;transform:rotate(90deg) scale(.7)}
#nqb.is-open .nqb__btn .nqb-x{opacity:1;transform:none}
#nqb .nqb__label{display:block;background:#fff;color:#1b1d20;font-size:13px;font-weight:500;
padding:10px 16px;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.10);
white-space:nowrap;cursor:pointer;border:1px solid rgba(0,0,0,.05);
transition:transform .2s ease,opacity .18s ease,box-shadow .2s ease}
#nqb .nqb__label:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.13)}
#nqb.is-open .nqb__label{opacity:0;transform:translateY(6px);pointer-events:none}

/* ---------- scrim ---------- */
#nqb .nqb__scrim{display:none;position:fixed;inset:0;background:rgba(10,12,15,.45);
opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s;touch-action:none;z-index:1}

/* ---------- panel ---------- */
#nqb .nqb__panel{position:absolute;bottom:calc(100% + 14px);left:auto;right:auto;width:328px;max-width:calc(100vw - 32px);
max-height:calc(100vh - 150px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
background:#fff;border-radius:var(--nqb-rad);border:1px solid rgba(0,0,0,.055);
box-shadow:0 2px 6px rgba(0,0,0,.04),0 20px 48px -12px rgba(0,0,0,.22);padding:14px;z-index:3;
opacity:0;visibility:hidden;transform:translateY(14px) scale(.97);transform-origin:bottom center;pointer-events:none;
transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.3,1),visibility .28s}
#nqb.is-open .nqb__panel{opacity:1;visibility:visible;transform:none;pointer-events:auto}
#nqb .nqb__grip{display:none}

@media(min-width:781px){
#nqb.nqb-side--right .nqb__panel{right:0;transform-origin:bottom right}
#nqb.nqb-side--left .nqb__panel{left:0;transform-origin:bottom left}
}

#nqb .nqb__head{display:flex;align-items:flex-start;gap:10px;padding:2px 4px 14px;
border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:12px}
#nqb .nqb__htxt{flex:1 1 auto;min-width:0}
#nqb .nqb__title{font-size:14.5px;font-weight:700;color:#14161a;letter-spacing:-.1px}
#nqb .nqb__sub{font-size:11.5px;color:#868c94;margin-top:3px;line-height:1.5}
#nqb .nqb__close{width:30px;height:30px;min-width:30px;flex:0 0 30px;border-radius:50%;background:#f2f3f5;color:#61666d;
display:flex;align-items:center;justify-content:center;cursor:pointer;appearance:none;-webkit-appearance:none;
transition:background .16s ease,color .16s ease}
#nqb .nqb__close:hover{background:var(--nqb-t);color:var(--nqb-c)}
#nqb .nqb__close:focus-visible{outline:2px solid var(--nqb-c);outline-offset:2px}

/* ---------- items ---------- */
#nqb .nqb__list{display:flex;flex-direction:column;gap:9px}
#nqb .nqb__item{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:14px;
background:#f7f8f9;border:1px solid transparent;color:inherit;text-decoration:none;
opacity:0;transform:translateY(8px);
transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .28s cubic-bezier(.2,.8,.3,1),opacity .28s ease}
#nqb.is-open .nqb__item{opacity:1;transform:none}
#nqb.is-open .nqb__item:nth-child(1){transition-delay:.03s}
#nqb.is-open .nqb__item:nth-child(2){transition-delay:.06s}
#nqb.is-open .nqb__item:nth-child(3){transition-delay:.09s}
#nqb.is-open .nqb__item:nth-child(4){transition-delay:.12s}
#nqb.is-open .nqb__item:nth-child(5){transition-delay:.15s}
#nqb.is-open .nqb__item:nth-child(6){transition-delay:.18s}
#nqb .nqb__item:hover{background:#fff;border-color:var(--nqb-t2);box-shadow:0 6px 18px -6px rgba(0,0,0,.18)}
#nqb .nqb__item:active{transform:scale(.985)}
#nqb .nqb__item:focus-visible{outline:2px solid var(--nqb-c);outline-offset:2px}
#nqb .nqb__ico{width:42px;height:42px;min-width:42px;flex:0 0 42px;border-radius:13px;
background:var(--nqb-t);color:var(--nqb-c);display:flex;align-items:center;justify-content:center;
transition:background .18s ease,color .18s ease}
#nqb .nqb__item:hover .nqb__ico{background:var(--nqb-c);color:var(--nqb-on)}
#nqb .nqb__txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
#nqb .nqb__t{display:block;max-width:100%;font-size:13.5px;font-weight:600;color:#14161a;line-height:1.4;
white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nqb .nqb__d{display:block;max-width:100%;font-size:11px;color:#71767d;background:#eceef0;
padding:3px 9px;border-radius:999px;line-height:1.5;
white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .18s ease,color .18s ease}
#nqb .nqb__item:hover .nqb__d{background:var(--nqb-t);color:var(--nqb-c)}
#nqb .nqb__d.is-num{direction:ltr;unicode-bidi:isolate;letter-spacing:.3px;font-weight:500}

/* ======================================================================
   موبایل: نوار چسبان تمام‌عرض یا دکمه گرد شناور + شیت کشویی
   (مطابق انتخاب «نحوه نمایش» در تنظیمات)
   ====================================================================== */
@media(max-width:780px){
/* ---------- حالت نوار چسبان (nqb-m--bar) ---------- */
#nqb.nqb-m--bar{inset:auto 0 0 0;width:100%;bottom:0}
#nqb-spacer{display:block;height:calc(65px + env(safe-area-inset-bottom,0px))}

#nqb.nqb-m--bar .nqb__btn,#nqb.nqb-m--bar .nqb__label{display:none}
#nqb.nqb-m--bar .nqb__launch{display:block;position:relative;z-index:2}
#nqb.nqb-m--bar .nqb__bar{position:relative;display:flex;align-items:center;gap:12px;width:100%;
min-height:calc(65px + env(safe-area-inset-bottom,0px));
padding:0 18px env(safe-area-inset-bottom,0px);
background:var(--nqb-c);color:var(--nqb-on);cursor:pointer;overflow:hidden;
box-shadow:0 -6px 24px -8px rgba(0,0,0,.35);appearance:none;-webkit-appearance:none;
touch-action:manipulation;transition:opacity .22s ease}
#nqb.nqb-m--bar.is-open .nqb__bar{opacity:0;pointer-events:none}
#nqb.nqb-m--bar .nqb__barico{position:relative;display:flex;align-items:center;justify-content:center;
width:38px;height:38px;min-width:38px;flex:0 0 38px;border-radius:50%;
background:rgba(255,255,255,.14);color:inherit}
#nqb.nqb-m--bar .nqb__bartxt{flex:1 1 auto;min-width:0;font-size:14.5px;font-weight:600;letter-spacing:-.1px;
white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}
#nqb.nqb-m--bar .nqb__barchev{flex:0 0 auto;opacity:.7}

/* ---------- حالت دکمه گرد شناور (nqb-m--button) ---------- */
#nqb.nqb-m--button{bottom:calc(var(--nqb-oy,24px) + env(safe-area-inset-bottom,0px))}
#nqb.nqb-m--button .nqb__bar{display:none}
#nqb.nqb-m--button .nqb__btn:active{transform:scale(.93)}

/* ---------- مشترک: شیت کشویی و سایزهای موبایل ---------- */
#nqb .nqb__scrim{display:block}
#nqb.is-open .nqb__scrim{opacity:1;visibility:visible}

#nqb .nqb__panel{position:fixed;inset:auto 0 0 0;width:100%;max-width:none;
border-radius:22px 22px 0 0;border:0;padding:8px 14px calc(16px + env(safe-area-inset-bottom,0px));
max-height:78vh;transform:translateY(101%);transform-origin:bottom center;
box-shadow:0 -10px 40px -10px rgba(0,0,0,.3);
transition:transform .34s cubic-bezier(.32,.72,0,1),visibility .34s;opacity:1}
#nqb.is-open .nqb__panel{transform:translateY(0)}
#nqb .nqb__grip{display:block;width:38px;height:4px;border-radius:999px;background:#d9dcdf;
margin:6px auto 10px}
#nqb .nqb__head{padding:0 2px 14px}
#nqb .nqb__title{font-size:16px}
#nqb .nqb__sub{font-size:12px}
#nqb .nqb__close{width:34px;height:34px;min-width:34px;flex:0 0 34px}
#nqb .nqb__list{gap:10px;padding-bottom:2px}
#nqb .nqb__item{padding:13px 14px;border-radius:15px;background:#f6f7f8}
#nqb .nqb__ico{width:44px;height:44px;min-width:44px;flex:0 0 44px}
#nqb .nqb__t{font-size:14.5px}
#nqb .nqb__d{font-size:11.5px}
}

/* ---------- افکت جلب توجه (فقط transform و opacity) ---------- */
@keyframes nqb-pulse{0%,62%,100%{transform:scale(1)}72%{transform:scale(1.13)}84%{transform:scale(.98)}}
@keyframes nqb-halo{0%,62%{transform:scale(.82);opacity:0}71%{opacity:.75}100%{transform:scale(1.9);opacity:0}}
@keyframes nqb-shine{0%,8%{transform:translate3d(-160px,0,0)}45%,100%{transform:translate3d(110vw,0,0)}}
@keyframes nqb-shine-btn{0%,8%{transform:translate3d(-80px,0,0)}45%,100%{transform:translate3d(80px,0,0)}}
#nqb .nqb__bar.fx-pulse .nqb__barico{animation:nqb-pulse 3.6s ease-in-out infinite}
#nqb .nqb__bar.fx-pulse .nqb__barico::after{content:"";position:absolute;inset:-4px;border-radius:50%;
border:4px solid currentColor;opacity:0;animation:nqb-halo 3.6s ease-out infinite}
#nqb .nqb__bar.fx-shine::after{content:"";position:absolute;top:0;bottom:0;width:110px;pointer-events:none;
background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);
transform:translate3d(-160px,0,0);animation:nqb-shine 5.5s linear infinite}
#nqb.is-open .nqb__bar::after,#nqb.is-open .nqb__barico,#nqb.is-open .nqb__barico::after{animation:none}
/* افکت دکمه گرد (دسکتاپ و حالت «دکمه گرد» موبایل) */
#nqb .nqb__btn.fx-pulse .nqb-main{animation:nqb-pulse 3.6s ease-in-out infinite}
#nqb .nqb__btn.fx-pulse::after{content:"";position:absolute;inset:-6px;border-radius:50%;pointer-events:none;
border:3px solid var(--nqb-c);opacity:0;animation:nqb-halo 3.6s ease-out infinite}
#nqb .nqb__btn.fx-shine{overflow:hidden}
#nqb .nqb__btn.fx-shine::after{content:"";position:absolute;top:0;bottom:0;left:0;width:60px;pointer-events:none;
background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
transform:translate3d(-80px,0,0);animation:nqb-shine-btn 4.2s linear infinite}
#nqb.is-open .nqb__btn.fx-pulse .nqb-main,#nqb.is-open .nqb__btn.fx-pulse::after,#nqb.is-open .nqb__btn.fx-shine::after{animation:none}

@media(prefers-reduced-motion:reduce){
#nqb *,#nqb *::before,#nqb *::after{transition-duration:.01ms!important;transition-delay:0s!important;animation:none!important}
}

/* ---------- محدوده نمایش (طبق تنظیمات) ---------- */
@media(min-width:781px){#nqb.nqb-hide-d{display:none!important}}
@media(max-width:780px){#nqb.nqb-hide-m{display:none!important}}
