Frontend projelerinde kullanılabilecek, modern ve minimal bir destek baloncuğu (floating contact widget) tasarımı paylaşıyorum. Kodları olabildiğince kısa tuttum; HTML, CSS ve sadece birkaç satır JS ile tamamen temiz ve stabil bir yapı.
Tasarım özellikleri:
  • 🎧 Tıklayınca açılan modern destek menüsü
  • 📞 “Hemen Ara”, 💬 WhatsApp, ✈️ Telegram butonları
  • 🌙 Hafif gölge + yumuşak animasyon hissi
  • 🧼 Minimal, sade ve projeye direkt entegre edilebilir yapı
  • 📱 Mobil + masaüstü tam uyumlu
İhtiyacı olan direkt kopyalayıp kendi projesine ekleyebilir.

HTML
<div class="contact-widget">
  <div class="contact-menu" id="contactMenu">
    <div class="bubble-arrow"></div>

    <button class="btn call">
      <span>📞</span> Hemen Ara
    </button>

    <button class="btn wa">
      <span>💬</span> WhatsApp Destek
    </button>

    <button class="btn tg">
      <span>✈️</span> Telegram
    </button>
  </div>

  <button class="contact-btn" id="contactBtn">
    🎧
  </button>
</div>
CSS
.contact-widget {
  position: fixed;
  right: 24px;
  bottom: 24px;
  font-family: Inter, sans-serif;
}

.contact-menu {
  position: absolute;
  bottom: 70px;
  right: 0;
  width: 220px;
  background: #fff;
  padding: 12px;
  border-radius: 12px;
  display: none;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}

.bubble-arrow {
  position: absolute;
  bottom: -10px;
  right: 20px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #fff;
}

.btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-size: 14px;
  background: #f1f5f9;
}

.btn.call {
  background: #e11d48;
  color: #fff;
  font-weight: 600;
}

.btn + .btn {
  margin-top: 8px;
}

.contact-btn {
  width: 54px;
  height: 54px;
  background: #e11d48;
  color: #fff;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(225,29,67,.3);
  font-size: 20px;
}
JS
const btn = document.getElementById("contactBtn");
const menu = document.getElementById("contactMenu");

btn.addEventListener("click", () => {
  menu.style.display = menu.style.display === "block" ? "none" : "block";
});

document.addEventListener("click", (e) => {
  if (!btn.contains(e.target) && !menu.contains(e.target)) {
    menu.style.display = "none";
  }
});