.wa-side-tab {
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
  display: flex;
  align-items: center;
  cursor: pointer;
  text-decoration: none;
  filter: drop-shadow(2px 4px 10px rgba(37,211,102,0.3));
  transition: filter 0.3s ease;
}
.wa-side-tab:hover {
  filter: drop-shadow(2px 6px 16px rgba(37,211,102,0.6));
}
.wa-side-tab-body {
  background: linear-gradient(160deg, #25D366, #128C7E);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 16px 8px;
  border-radius: 0 10px 10px 0;
  animation: wa-slide-in 0.7s cubic-bezier(0.34,1.56,0.64,1) forwards;
  transform: translateX(-100%);
  position: relative;
}
.wa-side-tab-body::before,
.wa-side-tab-body::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 0 10px 10px 0;
  background: rgba(37,211,102,0.35);
  animation: wa-pulse 2.2s ease-out infinite;
  z-index: -1;
}
.wa-side-tab-body::after {
  animation-delay: 1.1s;
  background: rgba(37,211,102,0.2);
}
.wa-side-tab-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  animation: wa-ring 2.5s ease-in-out infinite;
}
.wa-side-tab-icon svg {
  width: 14px;
  height: 14px;
  fill: #fff;
  transform: scaleX(-1) rotate(0deg);
}
.wa-side-tab-text {
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
  white-space: nowrap;
  letter-spacing: 1.5px;
  font-family: 'Tajawal', 'Arial', sans-serif;
}
@keyframes wa-slide-in {
  from { transform: translateX(-100%); }
  to   { transform: translateX(0); }
}
@keyframes wa-pulse {
  0%   { transform: scale(1);    opacity: 0.7; }
  100% { transform: scale(1.35); opacity: 0; }
}
@keyframes wa-ring {
  0%, 100% { transform: scaleX(-1) rotate(0deg); }
  15%       { transform: scaleX(-1) rotate(-20deg); }
  30%       { transform: scaleX(-1) rotate(20deg); }
  45%       { transform: scaleX(-1) rotate(-10deg); }
  60%       { transform: scaleX(-1) rotate(10deg); }
  75%       { transform: scaleX(-1) rotate(0deg); }
}
@media (max-width: 600px) {
  .wa-side-tab-text { font-size: 10.5px; }
  .wa-side-tab-body { padding: 13px 7px; gap: 5px; }
  .wa-side-tab-icon svg { width: 12px; height: 12px; }
}