/* Custom styles for API Explorer Dashboard */

.api-card-hover {
    transform: translateY(-2px);
}

.loading-spinner {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.fade-in {
    animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Custom scrollbar for code blocks */
pre::-webkit-scrollbar {
    height: 4px;
}

pre::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 2px;
}

pre::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 2px;
}

pre::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* Syntax highlighting for JSON */
.json-key {
    color: #0066cc;
    font-weight: bold;
}

.json-string {
    color: #cc6600;
}

.json-number {
    color: #009900;
}

.json-boolean {
    color: #cc0066;
}

/* Responsive design improvements */
@media (max-width: 768px) {
    .api-card {
        margin-bottom: 1rem;
    }
    
    .tab-button {
        font-size: 0.875rem;
        padding: 0.5rem 0.75rem;
    }
}

/* Custom berry-themed elements */
.berry-gradient {
    background: linear-gradient(135deg, #ff6b9d 0%, #ff8e8e 100%);
}

.berry-shadow {
    box-shadow: 0 4px 6px -1px rgba(255, 107, 157, 0.1), 0 2px 4px -1px rgba(255, 107, 157, 0.06);
}

.berry-border {
    border-color: #ff6b9d;
}

/* Loading states */
.loading-shimmer {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
}

@keyframes shimmer {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}

/* Code copy button hover effect */
.copy-button:hover {
    transform: scale(1.05);
}

/* API status indicators */
.status-success {
    background-color: #dcfce7;
    border-color: #16a34a;
    color: #166534;
}

.status-error {
    background-color: #fef2f2;
    border-color: #dc2626;
    color: #991b1b;
}

.status-loading {
    background-color: #fef3c7;
    border-color: #d97706;
    color: #92400e;
}