/* Site test CSS */ body { background-color: #f8f9fa; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } .test-style { color: red; font-weight: bold; } /* Ensure Bootstrap and FontAwesome work */ .btn { border-radius: 0.375rem; } .card { box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075); } /* Share Button Styles */ #share-qr-btn { position: relative; transition: all 0.3s ease; } #share-qr-btn:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 123, 255, 0.3); } #share-dropdown { min-width: 250px; border: none; box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); } #share-dropdown .dropdown-item { padding: 12px 20px; border-bottom: 1px solid #f1f3f4; transition: all 0.2s ease; } #share-dropdown .dropdown-item:last-child { border-bottom: none; } #share-dropdown .dropdown-item:hover { background: linear-gradient(45deg, #f8f9fa, #e9ecef); padding-left: 25px; transform: translateX(5px); } #share-dropdown .dropdown-item i { width: 20px; margin-right: 12px; font-size: 16px; } /* Mobile optimizations for share button */ @media (max-width: 768px) { #share-dropdown { min-width: 100%; margin-top: 5px; } #share-dropdown .dropdown-item { padding: 15px 20px; font-size: 16px; } #share-dropdown .dropdown-item i { font-size: 18px; margin-right: 15px; } #share-qr-btn { font-size: 16px; padding: 12px 20px; } } /* Share button loading state */ #share-qr-btn.loading { pointer-events: none; opacity: 0.7; } #share-qr-btn.loading::after { content: ""; position: absolute; width: 16px; height: 16px; top: 50%; left: 50%; margin-left: -8px; margin-top: -8px; border: 2px solid transparent; border-top: 2px solid #ffffff; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* Special colors for social platforms */ .text-purple { color: #6f42c1 !important; } /* Share success feedback */ .share-success { position: fixed; top: 20px; right: 20px; z-index: 1050; transform: translateX(100%); transition: transform 0.3s ease; } .share-success.show { transform: translateX(0); }