*{box-sizing:border-box;margin:0;padding:0}html,body{color:#fff;background:#050816;width:100%;height:100%;font-family:Poppins,sans-serif;overflow:hidden auto}#game{width:100vw;height:100vh;min-height:100vh;position:relative;overflow-y:auto}#stars{background:#050816;width:100%;height:100%;position:absolute;top:0;left:0}#overlay{background:radial-gradient(circle at top,#4527a088 0%,#0000 40%),radial-gradient(circle at bottom,#00c8ff22 0%,#0000 45%);width:100%;height:100%;position:absolute}#bootScreen{z-index:5;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute}#terminal{color:#dffcff;text-shadow:0 0 8px #00ffff80;max-width:700px;font-family:Orbitron,sans-serif;font-size:24px;line-height:40px;position:absolute;top:80px;left:80px}.cursor{background:#0ff;width:10px;height:24px;margin-left:6px;animation:.8s infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}#progressContainer{background:#ffffff14;border:1px solid #ffffff14;border-radius:999px;width:500px;max-width:90vw;height:10px;margin-bottom:30px;overflow:hidden}#progressBar{border-radius:inherit;background:linear-gradient(90deg,#00d9ff,#7b61ff,#ff4fd8);width:0%;height:100%;transition:width .45s;box-shadow:0 0 15px #00d9ff,0 0 35px #7b61ff}#bootPercent{letter-spacing:3px;color:#74f7ff;margin-bottom:25px;font-family:Orbitron;font-size:15px}#game{transition:opacity .5s}#homeScene{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;animation:2s fadeIn;display:flex;position:absolute}#homeScene h1{letter-spacing:12px;color:#fff;text-shadow:0 0 25px #7b61ff,0 0 50px #00d9ff;font-family:Orbitron;font-size:90px}#homeScene p{opacity:.8;margin-top:20px;font-size:28px}.pressEnter{color:#0ff;margin-top:70px;font-size:22px;animation:1s infinite blink}#aiScene{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100vh;animation:1s fadeIn;display:flex}.aiOrb{background:radial-gradient(circle,#66e3ff,#4058ff);border-radius:50%;width:110px;height:110px;margin-bottom:35px;position:relative;box-shadow:0 0 30px #4fdfff,0 0 60px #4058ff}.pulse{border:2px solid #66e3ff;border-radius:50%;width:100%;height:100%;animation:2.5s infinite pulse;position:absolute}#aiScene h1{letter-spacing:8px;color:#fff;text-shadow:0 0 20px #66e3ff;margin:0;font-family:Orbitron;font-size:55px}.subtitle{opacity:.7;margin-top:10px;margin-bottom:40px;font-size:18px}.aiCard{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:25px;width:700px;max-width:90%;padding:28px;animation:1s cardAppear;box-shadow:0 0 40px #00ffff26}#aiText{min-height:220px}#aiText p{opacity:0;font-size:20px;line-height:1.8;animation:.5s forwards lineFade;transform:translateY(10px)}#beginJourney{color:#08101d;cursor:pointer;opacity:0;background:#66e3ff;border:none;border-radius:999px;margin-top:30px;padding:15px 35px;font-size:18px;transition:all .3s;transform:translateY(15px);box-shadow:0 0 15px #56e0ff66}#beginJourney:hover{transform:translateY(-3px);box-shadow:0 0 30px #56e0ffb3}#beginJourney.show{opacity:1;transform:translateY(0)}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}@keyframes lineFade{to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.aiOrb{animation:4s ease-in-out infinite float}@keyframes cardAppear{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}#memoryScene{color:#fff;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;display:flex}.memoryTitle{margin-bottom:10px;font-size:55px}.memorySubtitle{opacity:.8;margin-bottom:60px}.galaxy{width:1000px;height:600px;position:relative}.star{cursor:pointer;flex-direction:column;align-items:center;font-size:42px;transition:all .35s;animation:4s ease-in-out infinite float;display:flex;position:absolute}.star span{margin-top:10px;font-size:15px}.star:hover{filter:drop-shadow(0 0 30px #0ff);transform:scale(1.25)}.star1{top:40px;left:150px}.star2{top:180px;right:120px}.star3{top:280px;left:420px}.star4{bottom:90px;left:180px}.star5{bottom:50px;right:220px}#bikeGallery{color:#fff;flex-direction:column;align-items:center;width:100%;min-height:100vh;padding:40px;display:flex}.galleryGrid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;width:90%;margin-top:40px;display:grid}#bikeGallery{color:#fff;flex-direction:column;align-items:center;width:100%;min-height:100vh;padding:40px;display:flex;overflow-y:auto}.galleryGrid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;width:100%;max-width:1300px;margin:40px auto;animation:.6s fadeIn;display:grid}.galleryItem{cursor:pointer;border-radius:15px;width:100%;transition:all .3s;box-shadow:0 0 25px #00ffff26}.galleryItem:hover{transform:scale(1.04)}.glassBtn{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:50px;margin:60px auto;padding:16px 40px;font-size:18px;transition:all .35s;display:block;box-shadow:0 0 25px #0ff3}.glassBtn:hover{background:#00ffff26;transform:translateY(-4px);box-shadow:0 0 40px #00ffff73}.galleryHeader{text-align:center;max-width:850px;margin:auto}.galleryHeader h1{margin-bottom:20px;font-size:48px}.introText{color:#d7d7d7;margin-bottom:50px;font-size:20px;line-height:1.8}.endingText{text-align:center;color:#d7d7d7;max-width:850px;margin-top:60px;font-size:20px;line-height:1.8}.backFloating{z-index:999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:50px;padding:12px 22px;font-size:16px;transition:all .3s;position:fixed;top:25px;left:25px;box-shadow:0 0 20px #00ffff26}.backFloating:hover{background:#00ffff26;transform:translateY(-2px)}#birthdayLetter{text-align:center;color:#fff;max-width:900px;margin:auto;padding:40px 20px 100px}.birthdayTitle{margin-bottom:10px;font-size:3rem}.birthdaySub{opacity:.8;margin-bottom:30px}.birthdayPhoto{border-radius:20px;width:340px;max-width:90%;margin:30px auto;display:block;box-shadow:0 0 25px #ffffff26}.letterCard{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border-radius:20px;max-width:700px;margin:40px auto;padding:30px;font-size:18px;line-height:1.9}.finalCard{background:#ffffff14;border-radius:20px;margin-top:40px;padding:30px}
