/* * Custom CSS for AI Executive Chatbot * Akatsuki AI Technologies * * This file contains additional custom styles beyond the theme. * Import this in your Gradio app alongside the theme CSS. */ /* Additional brand-specific overrides can go here */ /* Animation for loading states */ @keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } } .loading-shimmer { background: linear-gradient( 90deg, #1a1a2e 25%, #2a2a4e 50%, #1a1a2e 75% ); background-size: 200% 100%; animation: shimmer 1.5s infinite; } /* Typing indicator */ .typing-indicator { display: flex; gap: 4px; padding: 8px 12px; } .typing-indicator span { width: 8px; height: 8px; background: #e94560; border-radius: 50%; animation: typing 1.4s infinite ease-in-out; } .typing-indicator span:nth-child(1) { animation-delay: 0s; } .typing-indicator span:nth-child(2) { animation-delay: 0.2s; } .typing-indicator span:nth-child(3) { animation-delay: 0.4s; } @keyframes typing { 0%, 60%, 100% { transform: translateY(0); } 30% { transform: translateY(-10px); } } /* Hover effects for interactive elements */ .interactive-card { transition: transform 0.2s ease, box-shadow 0.2s ease; } .interactive-card:hover { transform: translateY(-2px); box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3); } /* Focus states for accessibility */ input:focus, textarea:focus, button:focus { outline: 2px solid #e94560; outline-offset: 2px; } /* Print styles */ @media print { .no-print { display: none !important; } .gradio-container { max-width: 100% !important; } }