/* Componentstijlen uit het ontwerp. */
.gradient-text {
    background: linear-gradient(to right, #d0bcff, #4cd7f6);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.vibe-card {
    background-color: rgba(30, 41, 59, 0.6);
    backdrop-filter: blur(20px);
    border: 1px solid #334155;
    transition: all 0.3s ease;
}
.vibe-card:hover {
    border-image: linear-gradient(to right, #571bc1, #008da5) 1;
    box-shadow: 0 0 15px rgba(76, 215, 246, 0.2);
}
.btn-primary {
    background: linear-gradient(135deg, #571bc1, #008da5);
    box-shadow: 0 4px 15px rgba(87, 27, 193, 0.3);
    transition: all 0.3s ease;
}
.btn-primary:hover {
    box-shadow: 0 0 20px rgba(76, 215, 246, 0.5);
    transform: translateY(-2px);
}
.btn-primary:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}
.btn-secondary {
    border: 1px solid #571bc1;
    background: transparent;
    transition: all 0.3s ease;
}
.btn-secondary:hover {
    background: rgba(87, 27, 193, 0.05);
    box-shadow: 0 0 10px rgba(87, 27, 193, 0.2);
}
html { scroll-behavior: smooth; }
body.vc-modal-open { overflow: hidden; }
