/* Custom Styles for MOVE Tracker */

* {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.font-inter {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* SAP Blue */
.bg-sap-blue {
    background-color: #0070F2;
}

.text-sap-blue {
    color: #0070F2;
}

/* Shake animation for error messages */
@keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
    20%, 40%, 60%, 80% { transform: translateX(5px); }
}

.shake {
    animation: shake 0.5s;
}

/* Stage badge colors */
.bg-gray-500 {
    background-color: #6B7280;
}

.bg-blue-500 {
    background-color: #3B82F6;
}

.bg-indigo-500 {
    background-color: #6366F1;
}

.bg-yellow-500 {
    background-color: #F59E0B;
}

.bg-orange-500 {
    background-color: #F97316;
}

.bg-purple-500 {
    background-color: #8B5CF6;
}

.bg-green-500 {
    background-color: #10B981;
}

.bg-red-500 {
    background-color: #EF4444;
}

/* Text colors for stage indicators */
.text-gray-500 {
    color: #6B7280;
}

.text-blue-500 {
    color: #3B82F6;
}

.text-indigo-500 {
    color: #6366F1;
}

.text-yellow-500 {
    color: #F59E0B;
}

.text-orange-500 {
    color: #F97316;
}

.text-purple-500 {
    color: #8B5CF6;
}

.text-green-500 {
    color: #10B981;
}

.text-red-500 {
    color: #EF4444;
}

/* Table hover effects */
tbody tr:hover {
    background-color: #F9FAFB;
}

/* Focus styles for inputs */
input:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: #0070F2;
    ring: 2px;
    ring-color: #0070F2;
}

/* Smooth transitions */
a,
button,
input,
select,
textarea {
    transition: all 0.2s ease-in-out;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #F3F4F6;
}

::-webkit-scrollbar-thumb {
    background: #9CA3AF;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #6B7280;
}

/* Loading spinner */
.spinner {
    border: 2px solid #F3F4F6;
    border-top: 2px solid #0070F2;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
