:root, [data-theme='dark'] {
    --color-neon: #00ff88;
    --color-neon-fg: #000000;
    --color-dark: #09090b;
    --color-card: #18181b;
    --color-text: #ffffff;
    --color-text-muted: #a1a1aa;
    
    /* Vanilla style.css compat */
    --color-background: #09090b;
    --color-foreground: #ffffff;
    --color-primary: #00ff88;
    --color-accent: #10b981;
    --color-on-primary: var(--color-neon-fg);
}

[data-theme='light'] {
    --color-neon: #059669;
    --color-neon-fg: #ffffff;
    --color-dark: #f8fafc;
    --color-card: #ffffff;
    --color-text: #0f172a;
    --color-text-muted: #64748b;

    /* Vanilla style.css compat */
    --color-background: #f8fafc;
    --color-foreground: #0f172a;
    --color-primary: #059669;
    --color-accent: #047857;
    --color-on-primary: var(--color-neon-fg);
}

[data-theme='purple'] {
    --color-neon: #a855f7;
    --color-neon-fg: #ffffff;
    --color-dark: #1e1b4b;
    --color-card: #312e81;
    --color-text: #ffffff;
    --color-text-muted: #c7d2fe;

    /* Vanilla style.css compat */
    --color-background: #1e1b4b;
    --color-foreground: #ffffff;
    --color-primary: #a855f7;
    --color-accent: #9333ea;
    --color-on-primary: var(--color-neon-fg);
}

[data-theme='gold'] {
    --color-neon: #fbbf24;
    --color-neon-fg: #000000;
    --color-dark: #18181b;
    --color-card: #27272a;
    --color-text: #ffffff;
    --color-text-muted: #d4d4d8;

    /* Vanilla style.css compat */
    --color-background: #18181b;
    --color-foreground: #ffffff;
    --color-primary: #fbbf24;
    --color-accent: #d97706;
    --color-on-primary: var(--color-neon-fg);
}

body {
    background-color: var(--color-dark);
    color: var(--color-text);
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Background patterns globals */
.bg-prizes-parallax {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: -10;
    background-image: url('/img/prizes-bg.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    opacity: 0.05;
    pointer-events: none;
}
