/* Custom scrollbar */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: #94a3b8; } .dark ::-webkit-scrollbar-thumb { background: #475569; } .dark ::-webkit-scrollbar-thumb:hover { background: #64748b; } /* Select styling enhancements */ select { background-image: none !important; } /* Focus ring animation */ .focus-ring-animate { animation: focusPulse 0.3s ease-out; } @keyframes focusPulse { 0% { box-shadow: 0 0 0 0 rgba(14, 165, 233, 0.4); } 100% { box-shadow: 0 0 0 4px rgba(14, 165, 233, 0); } } /* Modal animations */ .modal-enter { animation: modalIn 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards; } .modal-exit { animation: modalOut 0.2s ease-out forwards; } @keyframes modalIn { from { opacity: 0; transform: scale(0.95) translateY(10px); } to { opacity: 1; transform: scale(1) translateY(0); } } @keyframes modalOut { from { opacity: 1; transform: scale(1) translateY(0); } to { opacity: 0; transform: scale(0.95) translateY(10px); } } /* Gradient text animation */ .gradient-text-animate { background-size: 200% auto; animation: gradientShift 3s ease infinite; } @keyframes gradientShift { 0%, 100% { background-position: 0% center; } 50% { background-position: 100% center; } } /* Button hover glow */ .btn-glow:hover { box-shadow: 0 0 20px rgba(14, 165, 233, 0.4); } /* Tag animation */ .tag-pop { animation: tagPop 0.3s ease-out; } @keyframes tagPop { 0% { transform: scale(0); opacity: 0; } 70% { transform: scale(1.1); } 100% { transform: scale(1); opacity: 1; } } /* Smooth transitions */ .transition-smooth { transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } /* Glass effect */ .glass { background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .dark .glass { background: rgba(15, 23, 42, 0.7); } /* Custom select dropdown styling */ select option { padding: 12px; font-size: 14px; } /* Dropdown menu animations */ #dropdownMenu { transform-origin: top; } /* Info button in dropdown */ .info-btn { transition: all 0.2s ease; } .info-btn:hover { transform: scale(1.1); } .info-btn:active { transform: scale(0.95); } /* Dropdown item hover effects */ .dropdown-item { position: relative; } .dropdown-item::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: linear-gradient(to bottom, #0ea5e9, #d946ef); opacity: 0; transition: opacity 0.2s ease; } .dropdown-item:hover::before { opacity: 1; } /* Dropdown arrow rotation */ #dropdownArrow { transition: transform 0.2s ease; } #dropdownArrow.rotate-180 { transform: rotate(180deg); } /* Custom scrollbar for dropdown */ #dropdownMenu::-webkit-scrollbar { width: 6px; } #dropdownMenu::-webkit-scrollbar-track { background: transparent; border-radius: 0 8px 8px 0; } #dropdownMenu::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; } .dark #dropdownMenu::-webkit-scrollbar-thumb { background: #475569; } /* Dropdown trigger focus state */ #dropdownTrigger:focus, #dropdownTrigger.ring-2 { border-color: transparent; } /* Floating label show */ .show-label { opacity: 1 !important; } /* Selected display animation */ .selected-show { animation: slideDown 0.3s ease-out; } @keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }