/* css/global.css */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;800&family=Fredoka+One&family=Inter:wght@400;600&display=swap');

:root {
    --neon-cyan: #00f0ff;
    --neon-magenta: #ff007f;
    --neon-green: #39ff14;
    --neon-amber: #ffaa00;
    --font-hud: 'Orbitron', sans-serif;
    --font-game: 'Fredoka One', cursive;
    --bg-space: #03050a; /* Base dark background */
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
    font-family: 'Inter', sans-serif;
    color: #f8fafc;
    overflow-x: hidden;
    user-select: none; -webkit-user-select: none;
    background-color: var(--bg-space);
}

/* =========================================
   DEEP SPACE PARALLAX (GLOBAL)
   ========================================= */
#starfield {
    position: fixed; inset: 0; z-index: -10; pointer-events: none; overflow: hidden;
    background: radial-gradient(circle at 50% 50%, #0a0e29 0%, var(--bg-space) 100%);
}
.star {
    position: absolute; background: white; border-radius: 50%;
    animation: twinkle var(--d) ease-in-out infinite alternate;
}
@keyframes twinkle { 
    0% { opacity: 0.1; transform: scale(0.8); } 
    100% { opacity: 0.9; transform: scale(1.2); } 
}

/* BUTTONS */
.btn-primary {
    background: linear-gradient(180deg, var(--neon-cyan) 0%, #00a0b0 100%);
    color: #000; border: none; padding: 18px 45px; border-radius: 12px;
    font-family: var(--font-game); font-size: 20px; cursor: pointer;
    box-shadow: 0 0 20px rgba(0, 240, 255, 0.4); transition: transform 0.2s;
}
.btn-primary:hover { transform: scale(1.05); }

/* --- THEME ENGINE FOR HUB MAP --- */
body.theme-space { background-image: radial-gradient(circle at 50% 50%, #0a1122 0%, #03050a 100%); }
body.theme-space .planet-node { border-color: #1e294a; background: #0a0f1c; }
body.theme-space .planet-node.unlocked { border-color: var(--neon-cyan); box-shadow: 0 0 20px var(--neon-cyan); }

body.theme-forest { background-image: radial-gradient(circle at 50% 50%, #174222 0%, #081a0b 100%); }
body.theme-forest #starfield { display: none; } /* No stars in forest */
body.theme-forest .planet-node { border-color: #2b5938; background: #1a3823; }
body.theme-forest .planet-node.unlocked { border-color: var(--neon-amber); box-shadow: 0 0 20px var(--neon-amber); }

body.theme-candy { background-image: radial-gradient(circle at 50% 50%, #4a193f 0%, #20081a 100%); }
body.theme-candy #starfield { display: none; }
body.theme-candy .planet-node { border-color: #7a2b68; background: #4a193f; }
body.theme-candy .planet-node.unlocked { border-color: var(--neon-magenta); box-shadow: 0 0 20px var(--neon-magenta); }