/* =====================================================================
 * GSM ALO — ক্লিকের তাৎক্ষণিক প্রতিক্রিয়া
 * ux-feedback.php থেকে লোড হয়।  কিল-সুইচ: option gsmalo_click_feedback = 0
 * ===================================================================== */

:root{
  --gsa-ux-green:#0d7a5f;
  --gsa-ux-glow:#2fbf8f;
}

/* ---------- ১. উপরের অগ্রগতি-বার ---------- */

#gsa-bar{
  position:fixed; inset:0 auto auto 0;
  height:3px; width:0;
  background:linear-gradient(90deg,var(--gsa-ux-green),var(--gsa-ux-glow));
  box-shadow:0 0 10px rgba(47,191,143,.8), 0 0 4px rgba(47,191,143,.6);
  border-radius:0 3px 3px 0;
  z-index:2147483646;
  opacity:0;
  transition:width .25s cubic-bezier(.2,.7,.3,1), opacity .25s ease;
  pointer-events:none;
}
#gsa-bar.on{opacity:1}
/* বারের মাথায় ছোট আলোকরেখা — চলছে বোঝাতে */
#gsa-bar::after{
  content:""; position:absolute; right:0; top:-1px;
  width:70px; height:5px; border-radius:5px;
  background:var(--gsa-ux-glow);
  filter:blur(5px); opacity:.85;
}
/* অ্যাডমিন-বার থাকলে তার নিচে নামাই, নইলে ঢাকা পড়ে */
body.admin-bar #gsa-bar{top:32px}
@media(max-width:782px){ body.admin-bar #gsa-bar{top:46px} }

/* ---------- ২. বাটনের ভেতরে ঘূর্ণায়মান চাকতি ---------- */

.gsa-busy{
  position:relative !important;
  pointer-events:none;               /* দ্বিতীয় ক্লিক এখানেই আটকে যায় */
  cursor:progress !important;
  opacity:.92;
}
/* ভেতরের লেখা/আইকন লুকাই, কিন্তু জায়গা দখল করেই থাকে — নইলে বাটনের মাপ
   বদলে গিয়ে পাতা লাফিয়ে ওঠে।
   ⚠️ ক্লাসটি দুবার লিখেছি ইচ্ছে করেই: WoodMart-এর কিছু নিয়মে `!important`সহ
   রঙ বসানো আছে, একবার লিখলে সেগুলো জিতে যায়। সাথে `font-size:0` — রঙের
   নিয়ম কোনোভাবে হেরে গেলেও লেখাটি তাতে ঢাকা পড়বে (চাকতির মাপ px-এ, তাই
   সে অক্ষত থাকে)। */
.gsa-busy.gsa-busy{color:transparent !important; text-shadow:none !important; font-size:0 !important}
.gsa-busy > *{visibility:hidden}

.gsa-busy::after{
  content:"";
  position:absolute; top:50%; left:50%;
  width:19px; height:19px; margin:-9.5px 0 0 -9.5px;
  border:2.5px solid currentColor;
  border-radius:50%;
  border-top-color:transparent;
  border-right-color:transparent;
  color:#fff;                        /* রঙিন বাটনে সাদা চাকতি */
  opacity:.95;
  animation:gsa-spin .62s linear infinite;
}
/* সাদা/হালকা বাটনে সাদা চাকতি দেখা যায় না — সবুজ করে দিই */
.gsa-busy.gsa-busy-light::after{color:var(--gsa-ux-green)}

@keyframes gsa-spin{to{transform:rotate(360deg)}}

/* লিংক বা আইকনে চাকতি বসালে বাটনের মতো ভারী দেখায় — সেখানে ছোট চাকতি */
a.gsa-busy::after,.gsa-busy.gsa-busy-sm::after{
  width:15px; height:15px; margin:-7.5px 0 0 -7.5px; border-width:2px;
}

/* ---------- ৩. দীর্ঘ অপেক্ষার পর্দা ---------- */

#gsa-veil{
  position:fixed; inset:0;
  z-index:2147483645;
  display:flex; align-items:center; justify-content:center;
  background:rgba(6,32,26,.34);
  -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
  opacity:0; visibility:hidden;
  transition:opacity .22s ease, visibility .22s ease;
}
#gsa-veil.on{opacity:1; visibility:visible}

#gsa-veil .box{
  background:#fff;
  border-radius:16px;
  padding:24px 30px;
  box-shadow:0 18px 45px rgba(0,0,0,.22);
  text-align:center;
  min-width:210px;
  transform:translateY(8px) scale(.97);
  transition:transform .22s cubic-bezier(.2,.8,.3,1);
}
#gsa-veil.on .box{transform:none}

#gsa-veil .ring{
  width:42px; height:42px; margin:0 auto 13px;
  border:3px solid #d8ebe4;
  border-top-color:var(--gsa-ux-green);
  border-radius:50%;
  animation:gsa-spin .8s linear infinite;
}
#gsa-veil .t{font-size:15px; font-weight:700; color:#123f34; line-height:1.5}
#gsa-veil .s{font-size:12.5px; color:#7e948e; margin-top:4px}

/* ---------- চাপ দিলে সামান্য দেবে যাওয়া — ক্লিক "লেগেছে" বোঝায় ---------- */

button:active,
.button:active,
input[type=submit]:active,
.wd-buy-now-btn:active,
.single_add_to_cart_button:active{
  transform:scale(.985);
}

/* ---------- চলাফেরা কমানোর পছন্দ থাকলে সম্মান করি ---------- */

@media (prefers-reduced-motion:reduce){
  #gsa-bar{transition:opacity .2s ease}
  .gsa-busy::after,#gsa-veil .ring{animation-duration:1.6s}
  #gsa-veil .box{transform:none}
  button:active,.button:active,input[type=submit]:active{transform:none}
}

/* ছাপার সময় এসব দরকার নেই */
@media print{ #gsa-bar,#gsa-veil{display:none !important} }
