/* style.css */
html {
    /* Smooth scroll handled by Lenis now */
}

body {
    overflow-x: hidden;
    cursor: none; /* Replaced by custom cursor */
}

/* Hide default scrollbar for a cleaner look when using Lenis */
::-webkit-scrollbar {
    width: 0px;
    background: transparent;
}

/* Revert cursor on mobile */
@media (max-width: 768px) {
    body, a, button, input, textarea {
        cursor: auto;
    }
}

a, button, input, textarea {
    cursor: none;
}

/* Custom Cursor Hover State */
.cursor-hover {
    transform: translate(-50%, -50%) scale(2.5) !important;
    background-color: rgba(0, 102, 204, 0.1) !important;
    border-color: transparent !important;
    mix-blend-mode: normal !important;
}

/* Glassmorphism utility for clean, Apple-like panels */
.glass-panel {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.05);
}
.dark .glass-panel {
    background: rgba(20, 20, 22, 0.65);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4);
}

/* Timeline specific styles */
.timeline-dot {
    box-shadow: 0 0 0 6px rgba(0, 102, 204, 0.15);
}
.dark .timeline-dot {
    box-shadow: 0 0 0 6px rgba(0, 102, 204, 0.2);
}

/* RTL helper for alternating timeline alignment */
.dir-rtl {
    direction: rtl;
}
.dir-rtl > * {
    direction: ltr;
}

/* Skill Badges styling */
.skill-badge {
    @apply px-5 py-2.5 bg-white dark:bg-gray-900 rounded-full shadow-sm text-sm font-semibold border border-gray-100 dark:border-gray-800 transition-all hover:scale-105 hover:shadow-md cursor-none hover:text-apple-blue;
    display: inline-block;
}

/* Tech Tags styling */
.tech-tag {
    @apply text-xs font-bold px-3 py-1.5 bg-white/60 dark:bg-black/60 rounded-lg border border-gray-200/50 dark:border-gray-700/50 backdrop-blur-sm shadow-sm;
    display: inline-block;
}

/* Gradient Text Animation */
.gradient-text {
    background: linear-gradient(to right, #0066cc, #00d2ff, #0066cc);
    background-size: 200% auto;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    animation: gradientShift 5s linear infinite;
}
.dark .gradient-text {
    background: linear-gradient(to right, #fff, #86868b, #fff);
    background-size: 200% auto;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    animation: gradientShift 5s linear infinite;
}

@keyframes gradientShift {
    to { background-position: 200% center; }
}

/* Delay for animated blobs */
.animation-delay-2000 { animation-delay: 2s; }
.animation-delay-4000 { animation-delay: 4s; }

/* Reveal Text effect */
.reveal-text-container {
    overflow: hidden;
    display: inline-block;
}
