/* Custom Styles for CodeScribe AI */ /* Smooth scrolling */ html { scroll-behavior: smooth; } /* Custom scrollbar */ ::-webkit-scrollbar { width: 6px; } ::-webkit-scrollbar-track { background: #f1f1f1; } ::-webkit-scrollbar-thumb { background: #c1c1c1; border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: #a8a8a8; } /* Loading animations */ @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: .5; } } .animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; } /* Hover effects */ .hover-lift { transition: all 0.3s ease; } .hover-lift:hover { transform: translateY(-2px); box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); } /* Gradient backgrounds */ .gradient-primary { background: linear-gradient(135deg, #21223a 0%, #2d2f52 100%); } /* Custom button styles */ .btn-primary { @apply bg-primary hover:bg-primary/90 text-white font-medium py-2 px-4 rounded-lg transition-all duration-200; } .btn-secondary { @apply bg-secondary hover:bg-secondary/90 text-white font-medium py-2 px-4 rounded-lg transition-all duration-200; } /* Card hover effects */ .card-hover { transition: all 0.3s ease; border: 1px solid transparent; } .card-hover:hover { border-color: #ff580f; box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); } /* Status indicators */ .status-indicator { @apply w-2 h-2 rounded-full; } .status-active { @apply bg-green-500; } .status-inactive { @apply bg-gray-400; } .status-error { @apply bg-red-500; } /* Agent status animations */ .agent-status { position: relative; } .agent-status::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border-radius: 0.375rem; opacity: 0; transition: opacity 0.3s ease; } .agent-status:hover::before { opacity: 0.05; background-color: #ff580f; } /* Responsive text sizing */ @media (max-width: 640px) { .responsive-text { font-size: 0.875rem; } } /* Focus states for accessibility */ .focus-primary:focus { outline: 2px solid #21223a; outline-offset: 2px; } /* Custom badge styles */ .badge { @apply inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium; } .badge-success { @apply bg-green-100 text-green-800; } .badge-warning { @apply bg-yellow-100 text-yellow-800; } .badge-error { @apply bg-red-100 text-red-800; } /* Code block styling */ .code-block { @apply bg-gray-900 text-gray-100 rounded-lg p-4 font-mono text-sm overflow-x-auto; }