/* ===== Tombol melayang "Unduh Lambang" ===== */
.floating-download-btn{
  bottom:92px;right:24px;gap:14px;padding:8px 14px 8px 8px;
  background:linear-gradient(135deg,#0a2a6b 0%,#0b6bdc 100%);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 10px 28px rgba(10,42,107,.45),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .3s cubic-bezier(.2,.9,.3,1.2),box-shadow .3s ease;
  animation:fdIn .8s cubic-bezier(.2,.9,.3,1.15) .6s backwards, fdFloat 3.8s ease-in-out 1.5s infinite
}
.floating-download-btn:hover,.floating-download-btn:focus-visible{
  transform:scale(1.045);
  box-shadow:0 14px 34px rgba(10,42,107,.55),inset 0 1px 0 rgba(255,255,255,.3);
  animation-play-state:running,paused
}
.floating-download-btn:focus-visible{outline:3px solid rgba(255,255,255,.85);outline-offset:3px}

/* kilau cahaya */
.floating-download-btn::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.38) 50%,transparent 65%);
  background-size:200% 100%;background-position:130% 0;
  animation:fdShine 5s ease-in-out 2s infinite
}

/* lambang */
.floating-download-btn .fd-icon{
  width:46px;height:46px;box-sizing:border-box;border:2px solid rgba(255,255,255,.95);
  animation:fdRing 2.6s ease-out 1s infinite
}
.floating-download-btn .fd-icon i{color:#0a2a6b}

/* teks */
.floating-download-btn .fd-text{font-size:12.5px;font-weight:600;letter-spacing:.4px;line-height:1.35;color:rgba(255,255,255,.85)}
.floating-download-btn .fd-text strong{font-size:16px;font-weight:800 !important;letter-spacing:.3px;color:#fff}

/* panah unduh */
.floating-download-btn .fd-arrow{
  width:34px;height:34px;justify-content:center;border-radius:50%;
  background:rgba(255,255,255,.18);font-size:15px;transition:background .25s ease,color .25s ease
}
.floating-download-btn .fd-arrow i{display:inline-block;animation:fdArrow 1.6s ease-in-out infinite}
.floating-download-btn:hover .fd-arrow,.floating-download-btn:focus-visible .fd-arrow{background:#fff;color:#0a2a6b}
.floating-download-btn:hover .fd-arrow i{animation-duration:.7s}

@keyframes fdIn{from{transform:translateX(150%);opacity:0}to{transform:none;opacity:1}}
@keyframes fdFloat{0%,100%{translate:0 0}50%{translate:0 -6px}}
@keyframes fdShine{0%{background-position:130% 0}35%,100%{background-position:-30% 0}}
@keyframes fdRing{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}70%,100%{box-shadow:0 0 0 10px rgba(255,255,255,0)}}
@keyframes fdArrow{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}

@media (max-width:767px){
  .floating-download-btn{bottom:128px;right:14px;gap:10px;padding:6px 10px 6px 6px}
  .floating-download-btn .fd-icon{width:38px;height:38px}
  .floating-download-btn .fd-text{font-size:10.5px}
  .floating-download-btn .fd-text strong{font-size:13px !important}
  .floating-download-btn .fd-arrow{width:28px;height:28px;font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  .floating-download-btn,.floating-download-btn::before,
  .floating-download-btn .fd-icon,.floating-download-btn .fd-arrow i{animation:none !important}
}
