        body {
            background-color: #0f172a;
            color: #f1f5f9;
            scroll-behavior: smooth;
            overflow-x: hidden;
        }

        .typewriter::after {
            content: '|';
            animation: cursor 1s infinite;
            color: #10b981;
        }

        @keyframes cursor {

            0%,
            100% {
                opacity: 1;
            }

            50% {
                opacity: 0;
            }
        }

        .reveal {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .reveal.active {
            opacity: 1;
            transform: translateY(0);
        }

        .skill-ring {
            transition: stroke-dashoffset 2s ease-out;
        }

        ::-webkit-scrollbar {
            width: 6px;
        }

        ::-webkit-scrollbar-track {
            background: #0f172a;
        }

        ::-webkit-scrollbar-thumb {
            background: #1e293b;
            border-radius: 10px;
        }

        ::-webkit-scrollbar-thumb:hover {
            background: #10b981;
        }

        .glass-panel {
            background: rgba(30, 41, 59, 0.7);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(71, 85, 105, 0.5);
        }

        #bg-canvas {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            opacity: 0.5;
            pointer-events: none;
        }

        .stagger-item {
            opacity: 0;
            transform: translateY(20px);
            transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .active .stagger-item {
            opacity: 1;
            transform: translateY(0);
        }

        .bg-grid-pattern {
            background-image: linear-gradient(to right, rgba(16, 185, 129, 0.05) 1px, transparent 1px),
                linear-gradient(to bottom, rgba(16, 185, 129, 0.05) 1px, transparent 1px);
            background-size: 60px 60px;
        }

        @keyframes blink {

            0%,
            100% {
                opacity: 1;
            }

            50% {
                opacity: 0;
            }
        }

        .cursor-blink {
            animation: blink 1s step-end infinite;
        }

        .terminal-scroll {
            scrollbar-width: thin;
            scrollbar-color: #334155 transparent;
        }

        .terminal-scroll::-webkit-scrollbar {
            width: 4px;
        }

        .terminal-scroll::-webkit-scrollbar-thumb {
            background-color: #334155;
            border-radius: 4px;
        }

        @keyframes progress-fill {
            0% {
                width: 0%;
            }

            20% {
                width: 15%;
            }

            40% {
                width: 45%;
            }

            60% {
                width: 60%;
            }

            80% {
                width: 85%;
            }

            100% {
                width: 100%;
            }
        }

        .animate-progress {
            animation: progress-fill 4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
        }

        .line-entry {
            opacity: 0;
            transform: translateY(4px);
            animation: line-fade-in 0.2s forwards;
        }

        @keyframes line-fade-in {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .glitch-text {
            text-shadow: 2px 0 #00422b, -2px 0 #10b981;
        }

        .terminal-glow {
            box-shadow: 0 0 40px rgba(16, 185, 129, 0.05);
        }

        #loading-canvas {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            pointer-events: none;
        }
    


/* Marquee Specific Styles */
@keyframes marquee-ltr {
    from {
        transform: translateX(-50%);
    }
    to {
        transform: translateX(0%);
    }
}

@keyframes marquee-rtl {
    from {
        transform: translateX(0%);
    }
    to {
        transform: translateX(-50%);
    }
}

.marquee-container {
    display: flex;
    overflow: hidden;
    user-select: none;
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.marquee-content {
    display: flex;
    gap: 2rem;
    padding: 1rem 0;
    min-width: max-content;
}

.animate-ltr {
    animation: marquee-ltr 40s linear infinite;
}

.animate-rtl {
    animation: marquee-rtl 40s linear infinite;
}

.animate-ltr:hover,
.animate-rtl:hover {
    animation-play-state: paused;
}
