/* Yaksan Group Custom Stylesheet */

/* Custom Scrollbar for modern browsers */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #f1f5f9;
}
.dark ::-webkit-scrollbar-track {
    background: #09090b;
}
::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}
.dark ::-webkit-scrollbar-thumb {
    background: #27272a;
}
::-webkit-scrollbar-thumb:hover {
    background: #d97706;
}

/* Custom transitions */
.theme-transition {
    transition: background-color 0.3s ease, border-color 0.3s ease, text-decoration-color 0.3s ease, fill 0.3s ease, stroke 0.3s ease;
}

/* Animation Utilities */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.animate-fade-in-up {
    animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-fade-in {
    animation: fadeIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Delay modifiers */
.animation-delay-100 {
    animation-delay: 100ms;
}
.animation-delay-200 {
    animation-delay: 200ms;
}
.animation-delay-300 {
    animation-delay: 300ms;
}
.animation-delay-400 {
    animation-delay: 400ms;
}

/* Class to enforce smooth opacity initialization */
.opacity-init {
    opacity: 0;
}

/* Glassmorphism details */
.glass-panel {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.dark .glass-panel {
    background: rgba(18, 18, 18, 0.7);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.05);
}
