/* HAMUP tour feedback bubble + compose sheet (fb.js). */
.hfb-bubble{position:fixed;z-index:2147483000;width:64px;height:64px;border-radius:50%;border:0;padding:0;cursor:grab;touch-action:none;
  display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-family:"Vazirmatn",Tahoma,sans-serif;
  background:linear-gradient(135deg,#ff3d7f,#b0244f);box-shadow:0 12px 30px -8px rgba(255,61,127,.75),0 0 0 4px rgba(255,255,255,.18);
  animation:hfb-float 3.2s ease-in-out infinite}
.hfb-bubble::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(255,61,127,.6);animation:hfb-ping 2.4s ease-out infinite}
.hfb-bubble span{font-size:1.45rem;line-height:1}
.hfb-bubble i{font-style:normal;font-size:.68rem;font-weight:800;margin-top:1px}
.hfb-bubble.drag{animation:none;cursor:grabbing;transform:scale(1.08)}
.hfb-bubble.snap{transition:left .3s cubic-bezier(.2,.8,.2,1)}
.hfb-bubble.busy{animation:hfb-spin 1s linear infinite}
@keyframes hfb-float{50%{transform:translateY(-7px)}}
@keyframes hfb-ping{from{opacity:.8;transform:scale(.9)}to{opacity:0;transform:scale(1.5)}}
@keyframes hfb-spin{to{transform:rotate(360deg)}}
.hfb-flash{position:fixed;inset:0;z-index:2147483150;background:#fff;animation:hfb-flash .45s ease-out forwards;pointer-events:none}
@keyframes hfb-flash{from{opacity:.85}to{opacity:0}}

.hfb-modal,.hfb-sheet-wrap{position:fixed;inset:0;z-index:2147483100;background:rgba(6,5,10,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;padding:16px;font-family:"Vazirmatn",Tahoma,sans-serif;direction:rtl}
.hfb-box{width:min(440px,100%);background:#120e17;color:#f4f1f6;border-radius:24px;padding:26px 22px;text-align:center;
  box-shadow:0 0 0 1px rgba(255,255,255,.1),0 40px 90px -20px rgba(255,61,127,.55)}
.hfb-emoji{font-size:2.4rem}
.hfb-box h3{margin:.4rem 0 .3rem;font-weight:900;font-size:1.35rem;color:#fff}
.hfb-box p{color:#b9adbd;font-size:.92rem;margin:0 0 16px;line-height:1.8}
.hfb-in{display:block;width:100%;margin-bottom:10px;padding:11px 13px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);
  color:#fff;font-family:inherit;font-size:1rem}
.hfb-in.err{border-color:#ff3d7f}
.hfb-btn{display:block;width:100%;border:0;border-radius:12px;padding:12px;font-family:inherit;font-weight:800;font-size:1rem;color:#fff;cursor:pointer;
  background:linear-gradient(135deg,#ff3d7f,#b0244f);box-shadow:0 12px 28px -12px rgba(255,61,127,.9)}
.hfb-btn:disabled{opacity:.6}
.hfb-link{display:block;margin:10px auto 0;background:none;border:0;color:#a49aa8;font-family:inherit;cursor:pointer;font-size:.88rem}

.hfb-sheet-wrap{align-items:flex-end;padding:0;opacity:0;transition:opacity .25s}
.hfb-sheet-wrap.open{opacity:1}
.hfb-sheet{width:min(560px,100%);max-height:92vh;overflow:auto;background:#120e17;color:#f4f1f6;border-radius:24px 24px 0 0;padding:10px 18px 22px;
  transform:translateY(40px);transition:transform .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 -20px 60px -20px rgba(255,61,127,.5)}
.hfb-sheet-wrap.open .hfb-sheet{transform:none}
@media (min-width:700px){.hfb-sheet-wrap{align-items:center}.hfb-sheet{border-radius:24px}}
.hfb-grip{width:44px;height:5px;border-radius:3px;background:rgba(255,255,255,.2);margin:4px auto 12px}
.hfb-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.hfb-head b{font-weight:900;font-size:1.15rem}.hfb-head span{color:#a49aa8;font-size:.85rem}
.hfb-x{margin-right:auto;background:rgba(255,255,255,.08);border:0;color:#fff;width:34px;height:34px;border-radius:50%;cursor:pointer}
.hfb-shot{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.12);margin-bottom:12px;background:#000}
.hfb-draw{display:block;margin:0 auto;max-width:100%;max-height:54vh;width:auto;height:auto;touch-action:none;cursor:crosshair}
.hfb-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;font-size:.82rem;color:#c9bccd}
.hfb-tools span{flex:1 1 100%}
.hfb-c{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,.25);background:var(--c);cursor:pointer;padding:0}
.hfb-c.on{border-color:#fff;box-shadow:0 0 0 3px var(--c)}
.hfb-undo,.hfb-clear{border:0;border-radius:999px;padding:5px 12px;background:rgba(255,255,255,.1);color:#fff;font-family:inherit;cursor:pointer}
.hfb-clear{margin-right:auto}
.hfb-shot label{position:absolute;bottom:8px;right:8px;background:rgba(6,5,10,.75);padding:4px 10px;border-radius:999px;font-size:.82rem}
.hfb-noshot{color:#ffcf70;font-size:.88rem;margin-bottom:10px}
.hfb-text{width:100%;min-height:96px;resize:vertical;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#fff;
  padding:11px 13px;font-family:inherit;font-size:1rem;line-height:1.8;margin-bottom:10px}
.hfb-rec{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.hfb-mic{border:0;border-radius:999px;padding:9px 16px;font-family:inherit;font-weight:800;color:#fff;background:rgba(255,255,255,.1);cursor:pointer}
.hfb-mic.on{background:#e11d48;animation:hfb-rec 1.2s ease-in-out infinite}
@keyframes hfb-rec{50%{box-shadow:0 0 0 8px rgba(225,29,72,.25)}}
.hfb-time{font-variant-numeric:tabular-nums;color:#ff8fb0;direction:ltr}
.hfb-play{width:100%;height:38px}
.hfb-del{background:none;border:0;color:#ff8fb0;font-family:inherit;cursor:pointer}
.hfb-toast{position:fixed;left:50%;bottom:24px;z-index:2147483200;transform:translate(-50%,20px);opacity:0;transition:all .3s;max-width:90vw;
  background:#120e17;color:#fff;padding:11px 18px;border-radius:14px;font-family:"Vazirmatn",Tahoma,sans-serif;direction:rtl;
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 20px 40px -12px rgba(0,0,0,.6)}
.hfb-toast.on{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){.hfb-bubble,.hfb-bubble::before{animation:none}}
