/* ===== Custom Animations ===== */
@keyframes blob {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(30px, -50px) scale(1.1); }
    66% { transform: translate(-20px, 20px) scale(0.9); }
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-15px); }
}

@keyframes bounce-slow {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@keyframes pulse-slow {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.85; transform: scale(1.05); }
}

.animate-blob { animation: blob 7s infinite ease-in-out; }
.animate-float { animation: float 4s infinite ease-in-out; }
.animate-bounce-slow { animation: bounce-slow 2s infinite ease-in-out; }
.animate-pulse-slow { animation: pulse-slow 3s infinite ease-in-out; }

.animation-delay-1000 { animation-delay: 1s; }
.animation-delay-2000 { animation-delay: 2s; }
.animation-delay-3000 { animation-delay: 3s; }
.animation-delay-4000 { animation-delay: 4s; }

/* ===== Font Family ===== */
body {
    font-family: 'Fira Sans', system-ui, -apple-system, sans-serif;
}

.font-mono {
    font-family: 'Fira Sans' !important;
}
/* ===== Smooth Scroll ===== */
html { scroll-behavior: smooth; }

/* ===== Selection Color ===== */
::selection {
    background: #0ea5e9;
    color: white;
}

/* ===== Custom Scrollbar ===== */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb {
    background: linear-gradient(to bottom, #0ea5e9, #10b981);
    border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover { background: #0284c7; }