/* GSMBazaar Widget Base */
#gsm-widget {
  position: fixed;
  z-index: 9999;
}

/* Floating Button Vertical */
#gsm-float-btn {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: linear-gradient(135deg, #0072ff, #00c6ff);
  color: #fff;
  border: none;
  border-radius: 10px 0 0 10px;
  padding: 15px 10px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}
#gsm-float-btn:hover {
  transform: translateY(-50%) scale(1.05);
}
#gsm-float-btn .float-icon {
  width: 24px; height: 24px;
  background: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0yMSAxYTQgNCAwIDAgMC00LTRIMTRMMTAuMjkgMUgxMWgtNEE0IDQgMCAwIDAgMyA1djE0YzAgMi4yMSAxLjc5IDQgNCA0aDEwYTQgNCAwIDAgMCA0LTRWMWgtM3pNMTIgMjAuMzRjLTIuNCAwLTQuMzMtMS45My00LjMzLTQuMzNTOS42IDExLjY3IDEyIDExLjY3YzIuNCAwIDQuMzMgMS45MyA0LjMzIDQuMzNzLTEuOTMgNC4zMy00LjMzIDQuMzN6Ii8+PC9zdmc+") no-repeat center/contain;
}
#gsm-float-btn .float-text {
  font-size: 12px;
  text-align: center;
  line-height: 14px;
  font-weight: 600;
}

/* Overlay */
#gsm-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.6);
  z-index: 9998;
}

/* Popup Card */
#gsm-popup {
  display: none;
  position: fixed;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(12px);
  width: 90%;
  max-width: 400px;
  border-radius: 20px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.3);
  animation: fadeInScale 0.3s ease;
  z-index: 9999;
  overflow: hidden;
}

/* Header */
#gsm-popup .popup-header {
  text-align: center;
  padding: 20px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
}
#gsm-popup .popup-header .logo {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-bottom: 10px;
}
#gsm-popup .popup-header h2 {
  font-size: 18px;
  margin: 0;
  font-weight: 700;
}
#gsm-popup .popup-header h3 {
  font-size: 15px;
  margin: 5px 0;
  font-weight: 600;
  color: #0072ff;
}
#gsm-popup .popup-header p {
  font-size: 13px;
  color: #444;
}

/* Links */
#gsm-popup .popup-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
}
#gsm-popup .popup-link {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  padding: 12px 15px;
  border-radius: 12px;
  font-weight: 600;
  color: #fff;
  transition: transform 0.2s ease;
}
#gsm-popup .popup-link:hover { transform: scale(1.05); }

/* Social button colors */
.fb { background: #1877f2; }
.tg { background: #0088cc; }
.wa { background: #25d366; }
.ig { background: linear-gradient(45deg,#fd1d1d,#e1306c,#c13584,#833ab4); }
.yt { background: #ff0000; }

/* Icons (Base64 SVG masks) */
.popup-link .link-icon {
  width: 20px; height: 20px;
  background: #fff;
  display: inline-block;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
.fb-icon { mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0xMiAyQzYuNDggMiAyIDYuNDggMiAxMnM0LjQ4IDEwIDEwIDEwIDEwLTQuNDggMTAtMTBTMTcuNTIgMiAxMiAyem0xLjUgMTBoLTIuVjdoMnY1aDIuNXYyaC0yLjV2NmgtdjZ6Ii8+PC9zdmc+"); }
.tg-icon { mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0yMSAyLjVsLTE5IDEwIDYuOSA0LjA4TDExLjUgMjFsMi45LTYuMTJsNi41IDMuNjItMi45LTYuMDhMMjEgMi41eiIvPjwvc3ZnPg=="); }
.wa-icon { mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0xMiAyQzYuNDggMiAyIDYuNDggMiAxMnM0LjQ4IDEwIDEwIDEwIDEwLTQuNDggMTAtMTBTMTcuNTIgMiAxMiAyem01LjAyIDE0LjYyYy0uMjA4LjQyNi0xLjI2Ljg0OC0xLjcyLjkwNS0uNDQuMDU1LS45OS4wOTctMS42OS0uMTRhOC40NjIgOC40NjIgMCAwIDEtMy4xMS0xLjk3IDguMjI4IDguMjI4IDAgMCAxLTEuNi0yLjAyYy0uMjgtLjUxNi0uMDItLjk0LjIxLTEuMTk1LjIxNC0uMjI2LjQ4OC0uNTg0LjczLS44MjQuMjItLjIyNi40OC0uMjU0Ljc1LS4wNzQuMjMuMTUzLjk5IDIuNDI0IDEuMTI4IDIuNzIuMTI3LjI3LjE0OC40NzYtLjAzNS43NjctLjE3Mi4yNzItLjQ4Ljg4LS42MTggMS4xOC0uMTM3LjI5NC0uMjc4LjI0LS41MTIuMTQ5LTEuMTYtLjQ5LTEuODk3LTEuMTQtMi42MDQtMS44NTgtLjY3OC0uNjgyLTEuNjA4LTEuODQ2LTEuODk2LTIuNTItLjI4Ni0uNjc0LS4wNzctMS4yNjEuMTQtMS41NjQuMjEtLjMwMy40Ny0uNjQuNzM0LS43NjQuMjctLjEyLjY0NS0uMDg3Ljk5LS4wNjcuMzY4LjAyMy44Ny4wNzggMS4zNDEuMzc5LjQ3LjI5MiAxLjYgMS41NSAxLjkxIDIuMDE2LjMyLjQ2LjUyIDEuMDQzLjY3IDEuNjQuMTUyLjU5LjEyNSAxLjA2LS4wNTUgMS41MnoiLz48L3N2Zz4="); }
.ig-icon { mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0xNiA4YTIgMiAwIDEgMS00IDAgMiAyIDAgMCAxIDQgMHptLTQgM2MtMS42NiAwLTMgMS4zNC0zIDNzMS4zNCAzIDMgMyAzLTEuMzQgMy0zLTEuMzQtMy0zLTN6bTggM2MwIDIuNzYtMi4yNCA1LTUgNXMtNS0yLjI0LTUtNSA1LTIuMjQgNSA1em0yLTkuMjZhMSAyIDAgMCAxLTIgMiAxIDAgMCAxLTItMiAxIDAgMCAxIDItMnoiLz48L3N2Zz4="); }
.yt-icon { mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0yMy40OTUgNi42NzhjLS4yNzYtMS4wMzItMS4wODUtMS44NDItMi4xMTYtMi4xMTdDMTkuMDE2IDQuMjc2IDEyIDQuMjc2IDEyIDQuMjc2cy03LjAxNiAwLTkuMzc5LjI5N2MtMS4wMzIuMjc2LTEuODQxIDEuMDg1LTIuMTE3IDIuMTFDMiAyLjAzMSAyIDEyIDIuMDE0IDEyYzAgMCAwIDkuOTcgMi40OTIgMTEuMzE1IDEuMDM2LjI3NCA0LjM1Ny4yNzQgNy41MzMuMjc0czYuNDk3IDAgNy41MzMtLjI3NGMxLjAzMi0uMjc2IDEuODQxLTEuMDg0IDIuMTE3LTIuMTFDMjQgMjEuOTcgMjQgMTIgMjMuNDk1IDYuNjc4ek0xMC4wMDEgMTYuNTI0di03LjA0OGw2LjM2OCAzLjUyNC02LjM2OCAzLjUyNnoiLz48L3N2Zz4="); }

/* Footer */
#gsm-popup .popup-footer {
  text-align: center;
  padding: 12px;
  font-size: 12px;
  background: #f4f4f4;
}
#gsm-popup .popup-footer a {
  color: #0072ff;
  font-weight: 600;
  text-decoration: none;
}

/* Animation */
@keyframes fadeInScale {
  from { opacity: 0; transform: translate(-50%, -50%) scale(0.85); }
  to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}