@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;500;700&display=swap";:root{--bg: #0A0A0A;--surface: #1A1A1A;--primary: #F59E0B;--primary-dark: #D97706;--accent: #FBBF24;--text: #FAFAFA;--text-muted: #A0A0A0;--border: #2A2A2A;--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--radius: 12px;--shadow: 0 12px 36px rgba(0,0,0,.4), 0 0 28px #F59E0B26}body{margin:0;padding:0;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:radial-gradient(ellipse at 50% 100%,#F59E0B26 0%,transparent 60%),radial-gradient(ellipse at 50% 0%,#FBBF241a 0%,transparent 50%),var(--bg);background-size:cover;background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative}body:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle,rgba(255,255,255,.02) 1px,transparent 1px);background-size:3px 3px;pointer-events:none;z-index:-1}.game-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;position:relative;width:100%;height:100vh;box-sizing:border-box}.game-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.loading-screen{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.2em;color:var(--text);z-index:1000}.loader{border:4px solid rgba(255,255,255,.2);border-top:4px solid var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-top:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cloud-toast{position:fixed;top:20px;right:20px;background:rgba(var(--surface),.9);color:var(--text);padding:10px 20px;border-radius:var(--radius);box-shadow:var(--shadow);z-index:1001;font-size:.9em;display:flex;align-items:center;gap:8px}.start-screen,.game-over-screen,.revive-screen{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface);padding:40px 60px;border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;max-width:90%}.game-title,.game-over-title,.revive-title{font-family:Bebas Neue,sans-serif;font-size:4.5em;color:var(--accent);margin-bottom:20px;letter-spacing:2px;text-shadow:0 0 20px var(--accent)}.high-score-display,.final-score{font-size:1.5em;color:var(--text-muted);margin-bottom:30px}.start-button,.restart-button,.revive-button{font-family:Bebas Neue,sans-serif;font-size:2em;padding:15px 40px;border:none;border-radius:var(--radius);background:var(--primary);color:var(--text);cursor:pointer;transition:all .3s ease;box-shadow:0 0 24px var(--primary);letter-spacing:1px}.start-button:hover,.restart-button:hover,.revive-button:hover{background:var(--primary-dark);box-shadow:0 0 30px var(--primary)}.controls-hint{margin-top:30px;font-size:.9em;color:var(--text-muted);line-height:1.5}.game-hud{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:20px;box-sizing:border-box;z-index:10;pointer-events:none}.stat-item{display:flex;align-items:center;gap:8px;font-size:1.2em;font-weight:500}.stat-item .icon{color:var(--accent);width:24px;height:24px}.stats-bar{display:flex;justify-content:space-around;width:100%;max-width:600px;background:rgba(var(--surface),.8);padding:15px 20px;border-radius:var(--radius);box-shadow:var(--shadow);margin-top:10px;pointer-events:auto}.player-health-bar{width:150px;height:20px;background:rgba(var(--danger),.3);border-radius:10px;overflow:hidden;position:relative;margin-left:20px;border:1px solid var(--danger)}.player-health-bar .health-fill{height:100%;background:var(--success);transition:width .3s ease-out}.player-health-bar .health-text{position:absolute;width:100%;text-align:center;line-height:20px;font-size:.8em;font-weight:700;color:var(--text);text-shadow:1px 1px 2px rgba(0,0,0,.5)}.phase-display{flex-grow:1;display:flex;align-items:center;justify-content:center;width:100%;pointer-events:none}.phase-card{background:rgba(var(--surface),.9);padding:30px;border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;max-width:400px;width:100%;pointer-events:auto}.phase-icon{width:60px;height:60px;color:var(--primary);margin-bottom:20px}.phase-card h2{font-family:Bebas Neue,sans-serif;font-size:2.5em;color:var(--accent);margin-top:0;margin-bottom:15px;text-shadow:0 0 10px var(--accent)}.phase-card p{font-size:1.1em;color:var(--text-muted)}.progress-bar{width:80%;height:15px;background:rgba(var(--border),.5);border-radius:8px;margin:20px auto;overflow:hidden;border:1px solid var(--border)}.progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .2s ease-out}.fight-phase{display:flex;flex-direction:column;align-items:center}.enemy-display{display:flex;flex-direction:column;align-items:center;margin-bottom:20px}.enemy-image{width:150px;height:150px;object-fit:contain;margin-bottom:15px;filter:drop-shadow(0 0 15px rgba(var(--accent),.5))}.enemy-fallback-icon{font-size:80px;line-height:1;margin-bottom:15px}.enemy-info{text-align:center}.enemy-info h3{font-family:Bebas Neue,sans-serif;font-size:1.8em;color:var(--danger);margin:0 0 10px;text-shadow:0 0 8px var(--danger)}.enemy-health-bar{width:120px;height:15px;background:rgba(var(--text-muted),.3);border-radius:8px;overflow:hidden;position:relative;border:1px solid var(--text-muted)}.enemy-health-bar .health-fill{height:100%;background:var(--danger);transition:width .3s ease-out}.enemy-health-bar .health-text{position:absolute;width:100%;text-align:center;line-height:15px;font-size:.7em;font-weight:700;color:var(--text);text-shadow:1px 1px 2px rgba(0,0,0,.5)}.combat-actions{display:flex;gap:20px;margin-top:20px}.action-button{display:flex;align-items:center;gap:8px;padding:12px 25px;border:none;border-radius:var(--radius);font-family:Inter,sans-serif;font-size:1.1em;font-weight:700;cursor:pointer;transition:all .3s ease;color:var(--text);box-shadow:0 0 15px #0000004d}.attack-button{background:var(--danger);box-shadow:0 0 15px var(--danger)}.attack-button:hover:not(:disabled){background:#c0392b;box-shadow:0 0 20px var(--danger)}.defend-button{background:var(--success);box-shadow:0 0 15px var(--success)}.defend-button:hover:not(:disabled){background:#0e7f5e;box-shadow:0 0 20px var(--success)}.action-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.combo-counter{font-size:1.3em;color:var(--accent);margin-top:15px;font-weight:700;text-shadow:0 0 8px var(--accent)}.escape-phase .escape-arrow-image{width:100px;height:100px;object-fit:contain;filter:drop-shadow(0 0 15px rgba(var(--primary),.7));margin-bottom:20px}.escape-phase .escape-fallback-icon{font-size:80px;line-height:1;margin-bottom:20px}.accelerate-button{background:var(--primary);box-shadow:0 0 15px var(--primary);margin-top:20px}.accelerate-button:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 0 20px var(--primary)}.combat-log{position:absolute;bottom:20px;left:20px;width:300px;max-height:150px;background:rgba(var(--surface),.7);padding:10px;border-radius:var(--radius);box-shadow:var(--shadow);font-size:.9em;color:var(--text);overflow-y:auto;pointer-events:none;z-index:10}.combat-log p{margin:5px 0;line-height:1.4}.player-character{position:absolute;bottom:50px;left:50%;transform:translate(-50%);width:180px;height:180px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(var(--primary),.6));z-index:5}.player-fallback-icon{position:absolute;bottom:50px;left:50%;transform:translate(-50%);font-size:100px;line-height:1;z-index:5}.player-character.invincible-glow,.player-fallback-icon.invincible-glow{filter:drop-shadow(0 0 25px var(--accent)) drop-shadow(0 0 10px var(--accent));animation:pulse-glow 1s infinite alternate}@keyframes pulse-glow{0%{filter:drop-shadow(0 0 25px var(--accent)) drop-shadow(0 0 10px var(--accent))}to{filter:drop-shadow(0 0 35px var(--primary)) drop-shadow(0 0 15px var(--primary))}}.game-over-screen .game-over-title{color:var(--danger);text-shadow:0 0 20px var(--danger)}.revive-screen{border:2px solid var(--primary)}.revive-title{font-family:Bebas Neue,sans-serif;font-size:4.5em;color:var(--primary);margin-bottom:20px;letter-spacing:2px;text-shadow:0 0 20px var(--primary)}.revive-lives-left{font-size:1.8em;color:var(--text);margin-bottom:30px;font-weight:700}
