/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #111827;
}

::-webkit-scrollbar-thumb {
    background: #374151;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #4b5563;
}

/* Selection */
::selection {
    background: rgba(99, 102, 241, 0.3);
    color: white;
}

/* Custom Animations */
@keyframes gradient-shift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.animate-gradient {
    background-size: 200% 200%;
    animation: gradient-shift 3s ease infinite;
}

/* Glow Effects */
.glow-primary {
    box-shadow: 0 0 20px rgba(99, 102, 241, 0.5);
}

.glow-secondary {
    box-shadow: 0 0 20px rgba(6, 182, 212, 0.5);
}

/* Terminal Blink */
@keyframes blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

.terminal-cursor::after {
    content: '_';
    animation: blink 1s infinite;
    color: #22d3ee;
}

/* Glassmorphism */
.glass {
    background: rgba(17, 24, 39, 0.7);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

/* Power Button Ring Animation */
@keyframes ripple {
    0% {
        transform: scale(1);
        opacity: 0.5;
    }
    100% {
        transform: scale(1.5);
        opacity: 0;
    }
}

.ripple-ring {
    animation: ripple 2s linear infinite;
}

/* Responsive utilities */
@media (max-width: 768px) {
    .hide-mobile {
        display: none;
    }
}