:root {
    --primary-solid: #cdbdff;
    --primary-grad-start: #b133ff;
    --primary-grad-end: #5c1fde;
    --bg-deep: #0f0d16;
}

body.bg-midnight {
    background-color: var(--bg-deep);
    background-image: radial-gradient(circle at 50% 0%, rgba(92, 31, 222, 0.15) 0%, transparent 60%);
    font-family: 'Inter', sans-serif;
}

.font-heading {
    font-family: 'Space Grotesk', sans-serif;
}

.container-sm {
    max-width: 500px;
}

/* Glassmorphism Card System */
.glass-card {
    background: rgba(33, 30, 40, 0.6) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: all 0.3s ease;
}

.glass-card:hover {
    background: rgba(54, 51, 62, 0.8) !important;
    transform: translateY(-2px);
}

/* Custom Borders based on Bootstrap variables */
.border-accent-vip { border: 1px solid rgba(255, 193, 7, 0.2); }
.border-accent-cyan { border: 1px solid rgba(13, 202, 240, 0.2); }
.border-accent-secondary { border: 1px solid rgba(108, 117, 125, 0.2); }
.border-accent-flame { border: 1px solid rgba(220, 53, 69, 0.2); }

.border-accent-vip:hover { border-color: rgba(255, 193, 7, 0.6); box-shadow: 0 0 15px rgba(255,193,7,0.1); }
.border-accent-cyan:hover { border-color: rgba(13, 202, 240, 0.6); box-shadow: 0 0 15px rgba(13,202,240,0.1); }

/* Main CTA Button */
.btn-main {
    background: linear-gradient(135deg, var(--primary-grad-start), var(--primary-grad-end));
    border: none;
    color: white;
    font-weight: 700;
    font-family: 'Space Grotesk', sans-serif;
    letter-spacing: 0.5px;
    border-radius: 12px;
}

.btn-main:hover {
    color: white;
    background: linear-gradient(135deg, #c765ff, #6200ea);
}

/* Pulsing Glow Animation */
.pulse-glow {
    animation: pulseGlow 2s infinite;
}

@keyframes pulseGlow {
    0% { box-shadow: 0 0 0 0 rgba(177, 51, 255, 0.5); }
    70% { box-shadow: 0 0 0 15px rgba(177, 51, 255, 0); }
    100% { box-shadow: 0 0 0 0 rgba(177, 51, 255, 0); }
}

/* Footer link hovers */
.hover-white:hover {
    color: #fff !important;
}
