/* ========================================
   FLOATING SOCIAL BAR STYLES
   ========================================
   Dedicated styles for the floating social media bar
   - Fixed positioning and z-index management
   - Enhanced visual effects and transitions
   - Responsive behavior across devices
   ======================================== */

/* ========================================
   CORE FLOATING SOCIAL BAR STYLES
   ======================================== */

/* Floating social bar improvements */
.fixed.top-1\/3.right-4,
.fixed[class*="top-1/3"][class*="right-4"] {
  /* Ensure proper stacking and visibility */
  z-index: 40;
  
  /* Add some breathing room from viewport edge */
  margin-right: 8px;
  
  /* Ensure icons don't get clipped */
  overflow: visible !important;
}

/* Enhance the social media icon styling */
.fixed.top-1\/3.right-4 a > div,
.fixed[class*="top-1/3"][class*="right-4"] a > div {
  /* Enhanced shadow for better visibility */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15), 0 2px 4px rgba(0, 0, 0, 0.1) !important;
  
  /* Ensure proper sizing */
  width: 48px !important;
  height: 48px !important;
  
  /* Better transitions */
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  
  /* Ensure icons are centered */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Hover effects for social icons */
.fixed.top-1\/3.right-4 a:hover > div,
.fixed[class*="top-1/3"][class*="right-4"] a:hover > div {
  transform: scale(1.1) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25), 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

/* ========================================
   FLOATING SOCIAL BAR RESPONSIVE BEHAVIOR
   ======================================== */

/* Extra small devices (phones, less than 576px) */
@media (max-width: 575px) {
  /* Hide floating social bar */
  .fixed.top-1\/3.right-4,
  .fixed[class*="top-1/3"][class*="right-4"] {
    display: none !important;
  }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767px) {
  /* Hide floating social bar */
  .fixed.top-1\/3.right-4,
  .fixed[class*="top-1/3"][class*="right-4"] {
    display: none !important;
  }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991px) {
  /* Hide floating social bar on tablets */
  .fixed.top-1\/3.right-4,
  .fixed[class*="top-1/3"][class*="right-4"] {
    display: none !important;
  }
}

/* Large devices (small laptops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199px) {
  /* Show floating social bar but positioned better */
  .fixed.top-1\/3.right-4,
  .fixed[class*="top-1/3"][class*="right-4"] {
    display: flex !important;
    right: 32px !important;
    z-index: 50 !important;
  }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media (min-width: 1200px) {
  /* Show floating social bar with full positioning */
  .fixed.top-1\/3.right-4,
  .fixed[class*="top-1/3"][class*="right-4"] {
    display: flex !important;
    right: 32px !important;
    z-index: 50 !important;
  }
}

/* ========================================
   ACCESSIBILITY & INTERACTION ENHANCEMENTS
   ======================================== */

/* Screen reader support */
.fixed.top-1\/3.right-4 .sr-only,
.fixed[class*="top-1/3"][class*="right-4"] .sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Focus states for keyboard navigation */
.fixed.top-1\/3.right-4 a:focus,
.fixed[class*="top-1/3"][class*="right-4"] a:focus {
  outline: 2px solid #ef4444;
  outline-offset: 2px;
}

/* Additional hover effects for better UX */
.fixed.top-1\/3.right-4 a,
.fixed[class*="top-1/3"][class*="right-4"] a {
  position: relative;
  display: block;
}

.fixed.top-1\/3.right-4 a::before,
.fixed[class*="top-1/3"][class*="right-4"] a::before {
  content: '';
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  border-radius: 50%;
  opacity: 0;
  background: rgba(255, 255, 255, 0.1);
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.fixed.top-1\/3.right-4 a:hover::before,
.fixed[class*="top-1/3"][class*="right-4"] a:hover::before {
  opacity: 1;
}
