/* Tailwind Plugin Base Configuration Injection */
@layer base {
  :root {
    --surface-container-high: #2a2930;
    --on-surface: #e4e1ea;
    --on-surface-variant: #d4c0d7;
    --surface-dim: #131319;
    --outline: #9d8ba0;
    --primary-fixed: #f8d8ff;
    --secondary-fixed: #a5eeff;
    --secondary-container: #00e0ff;
    --primary: #ecb2ff;
    --tertiary-container: #e7006e;
    --on-primary: #520071;
    --surface-tint: #ecb2ff;
    --tertiary: #ffb1c3;
    --tertiary-fixed-dim: #ffb1c3;
    --on-tertiary-fixed-variant: #8f0041;
    --on-primary-container: #ffffff;
    --on-tertiary-container: #ffffff;
    --surface: #131319;
    --on-primary-fixed: #320047;
    --surface-container-lowest: #0e0e14;
    --on-primary-fixed-variant: #74009f;
    --on-secondary-fixed: #001f25;
    --inverse-surface: #e4e1ea;
    --on-error-container: #ffdad6;
    --on-secondary-fixed-variant: #004e5a;
    --surface-variant: #35343b;
    --on-tertiary-fixed: #3f0019;
    --on-tertiary: #66002c;
    --background: #131319;
    --surface-container-highest: #35343b;
    --on-secondary: #00363f;
    --surface-bright: #393840;
    --error-container: #93000a;
    --outline-variant: #514255;
    --tertiary-fixed: #ffd9e0;
    --surface-container: #1f1f26;
    --error: #ffb4ab;
    --primary-fixed-dim: #ecb2ff;
    --secondary: #b9f1ff;
    --on-secondary-container: #005f6d;
    --inverse-on-surface: #303037;
    --secondary-fixed-dim: #00daf8;
    --on-background: #e4e1ea;
    --on-error: #690005;
    --primary-container: #bd00ff;
    --surface-container-low: #1b1b22;
    
    /* Spacing & Layout */
    --gutter: 24px;
    --margin-mobile: 20px;
    --unit: 8px;
    --container-max: 1280px;
    --margin-desktop: 80px;
  }
}

/* Material Symbols Setup */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Animations */
@keyframes float {
    0% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
    100% { transform: translateY(0px) rotate(0deg); }
}

@keyframes pulse-glow {
    0%, 100% { filter: drop-shadow(0 0 10px rgba(236,178,255,0.4)); }
    50% { filter: drop-shadow(0 0 25px rgba(236,178,255,0.8)); }
}

.floating-element {
    animation: float 6s ease-in-out infinite;
}

/* Scroll Reveal Classes */
.reveal-up {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

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

/* UI Elements */
.glass-card {
    background: rgba(15, 15, 26, 0.7);
    backdrop-filter: blur(12px);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ticket-glow-primary { box-shadow: 0 0 20px rgba(236, 178, 255, 0.2); }
.ticket-glow-secondary { box-shadow: 0 0 20px rgba(0, 224, 255, 0.2); }