/* Explain: Glassmorphism, paneles translúcidos, botones con glow effect y transiciones scroll */

.glass-panel {
    background: color-mix(in srgb, var(--surface-color) 4%, transparent);
    border: 1px solid color-mix(in srgb, var(--secondary-color) 15%, transparent);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37), inset 0 1px 1px color-mix(in srgb, var(--surface-color) 8%, transparent);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.neon-text {
    text-shadow: 0 0 20px color-mix(in srgb, var(--secondary-color) 50%, transparent);
}

.btn-neon {
    background: linear-gradient(135deg, color-mix(in srgb, var(--secondary-color) 60%, black), color-mix(in srgb, var(--primary-color) 40%, black));
    box-shadow: 0 0 20px color-mix(in srgb, var(--secondary-color) 30%, transparent);
    border: 1px solid color-mix(in srgb, var(--secondary-color) 40%, transparent);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-neon:hover {
    box-shadow: 0 0 40px color-mix(in srgb, var(--secondary-color) 60%, transparent);
    transform: translateY(-3px);
    background: linear-gradient(135deg, color-mix(in srgb, var(--secondary-color) 70%, black), color-mix(in srgb, var(--primary-color) 50%, black));
}

/* Reveal Animation Classes */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s cubic-bezier(0.5, 0, 0, 1), transform 0.8s cubic-bezier(0.5, 0, 0, 1);
    will-change: opacity, transform;
}

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