@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;700&display=swap'); body { margin: 0; overflow: hidden; background-color: #000; color: #EFEFEF; font-family: 'Roboto', sans-serif; } #setup-phase-ui { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; text-align: center; background-color: #000; z-index: 5000; } #setup-content { padding: 20px 30px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 15px; } #setup-content h1 { margin: 0 0 15px; } @keyframes pulse { 0% { opacity: 1; } 50% { opacity: 0.4; } 100% { opacity: 1; } } #loading-text { animation: pulse 1.5s ease-in-out infinite; } #start-button { padding: 12px 25px; font-size: 18px; font-weight: bold; color: #fff; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 8px; cursor: pointer; transition: background 0.3s; backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); } #start-button:hover { background: rgba(255, 255, 255, 0.25); } @keyframes screen-shake { 0% { transform: translate(2px, 1px) rotate(0deg); } 10% { transform: translate(-1px, -3px) rotate(-1deg); } 20% { transform: translate(-4px, 0px) rotate(1deg); } 30% { transform: translate(4px, 2px) rotate(0deg); } 40% { transform: translate(1px, -1px) rotate(1deg); } 50% { transform: translate(-1px, 3px) rotate(-1deg); } 60% { transform: translate(-4px, 1px) rotate(0deg); } 70% { transform: translate(4px, 1px) rotate(-1deg); } 80% { transform: translate(-1px, -1px) rotate(1deg); } 90% { transform: translate(2px, 3px) rotate(0deg); } 100% { transform: translate(0, 0) rotate(0deg); } } @keyframes screen-flash { 0% { opacity: 0.8; } 100% { opacity: 0; } } .shake-effect { animation: screen-shake 0.4s ease-in-out; } #flash-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #FFFFFF; opacity: 0; pointer-events: none; z-index: 9999; } #flash-overlay.flash-effect { animation: screen-flash 0.3s ease-out; } .glass-ui { background: rgba(0, 0, 0, 0.25); box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.18); } #ar-ui-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 10; display: none; } #ui-overlay { position: absolute; top: 20px; left: 20px; font-size: 16px; padding: 12px 18px; pointer-events: auto; z-index: 11; } #distance-text, #status-text, #collection-text { margin-bottom: 8px; color: #FFFFFF; font-weight: 400; text-shadow: 0 0 8px rgba(0, 0, 0, 0.5); } #collection-text { margin-bottom: 0; } #minimap-container { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); width: 140px; height: 140px; border-radius: 50%; overflow: hidden; pointer-events: auto; z-index: 11; } #minimap-canvas { width: 100%; height: 100%; } #completion-screen { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 2000; display: none; justify-content: center; align-items: center; background: rgba(0, 0, 0, 0.5); opacity: 0; transition: opacity 0.5s ease-in-out; } #completion-screen.visible { display: flex; opacity: 1; } #fireworks-canvas { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } #completion-popup { position: relative; z-index: 2001; padding: 25px 35px; text-align: center; color: #FFFFFF; background: rgba(200, 30, 30, 0.25); box-shadow: 0 8px 32px 0 rgba(211, 47, 47, 0.37); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-radius: 15px; border: 1px solid rgba(255, 82, 82, 0.2); width: 90%; max-width: 450px; box-sizing: border-box; } #completion-popup h2 { margin: 0 0 15px 0; font-size: 24px; font-weight: 700; text-shadow: 0 0 10px rgba(255, 82, 82, 0.8); } #restart-button { margin-top: 20px; padding: 12px 25px; background: rgba(255, 255, 255, 0.2); border: 1px solid rgba(255, 255, 255, 0.3); color: #FFFFFF; font-size: 16px; font-weight: bold; text-transform: uppercase; border-radius: 8px; cursor: pointer; transition: background 0.2s ease; } #restart-button:hover { background: rgba(255, 255, 255, 0.4); }