:where([class^="ri-"])::before { content: "\f3c2"; } .gradient-primary { background: linear-gradient(135deg, #0061FF 0%, #2AFFD3 100%); } .gradient-whatsapp { background: linear-gradient(135deg, #25D366 0%, #128C7E 100%); } .glass-effect { backdrop-filter: blur(16px); background: rgba(255, 255, 255, 0.9); } .neon-glow { box-shadow: 0 0 20px rgba(42, 255, 211, 0.3); } .upload-pulse { animation: pulse-border 2s infinite; } @keyframes pulse-border { 0%, 100% { border-color: rgba(42, 255, 211, 0.5); } 50% { border-color: rgba(42, 255, 211, 1); } } .modal-in { animation: modalIn 0.3s ease-out; } @keyframes modalIn { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } } .fade-in-up { animation: fadeInUp 0.5s ease-out; } @keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .checkmark-draw { animation: drawCheck 1s ease-in-out; } @keyframes drawCheck { 0% { stroke-dasharray: 0 100; } 100% { stroke-dasharray: 100 0; } } .confetti { animation: confetti 3s ease-out; } @keyframes confetti { 0% { transform: translateY(0) rotate(0deg); opacity: 1; } 100% { transform: translateY(-100vh) rotate(720deg); opacity: 0; } } input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } input[type="number"] { -moz-appearance: textfield; } /* --- New Floating Bottom Navigation Styles --- */ .nav-item { display: flex; align-items: center; justify-content: center; padding: 0.375rem; /* p-1.5 */ border-radius: 9999px; color: #6b7280; /* text-gray-500 */ transition: all 0.4s ease-in-out; } .nav-item .nav-text { font-weight: 600; /* font-semibold */ font-size: 0.75rem; /* text-xs */ line-height: 1rem; transition: all 0.4s ease-in-out; max-width: 0; overflow: hidden; white-space: nowrap; } .nav-item.active { background-color: #EBF2FF; /* A light primary color, e.g., blue-50 */ color: #0061FF; /* text-primary */ padding-left: 0.75rem; /* px-3 */ padding-right: 0.75rem; /* px-3 */ } .nav-item.active .nav-text { max-width: 100px; margin-left: 0.25rem; /* ml-1 */ } /* Hide scrollbar for date scroller */ #dateScroller::-webkit-scrollbar { display: none; } #dateScroller { -ms-overflow-style: none; /* IE and Edge */ scrollbar-width: none; /* Firefox */ }