@keyframes sparkle{0%{opacity:1;text-shadow:0 0 4px var(--color-secondary),0 0 8px var(--color-secondary)}50%{opacity:1;text-shadow:0 0 8px var(--color-secondary),0 0 16px var(--color-secondary),0 0 20px var(--color-secondary)}to{opacity:.9;text-shadow:0 0 4px var(--color-secondary),0 0 8px var(--color-secondary)}}.sparkle-star{animation:sparkle 1.5s infinite alternate;color:var(--color-secondary);text-shadow:0 0 8px var(--color-secondary),0 0 12px var(--color-secondary);display:inline-block}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.pop-in-star{animation:popIn .6s ease-out forwards;display:inline-block;color:var(--color-secondary);transform-origin:center}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.loading-text{animation:pulse 1.5s infinite;color:var(--color-secondary)}.shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-animation{animation:spin 1s linear infinite}.xp-reward-container{margin-bottom:25px;animation:popIn .6s ease-out forwards;border:2px solid var(--color-secondary);border-radius:10px;padding:12px;background-color:#ffc1071a}:root{--color-primary: #A3B18A;--color-secondary: #DDA15E;--color-background: #F4F1E1;--color-panel: #B8A27B;--color-text: #3E3C36;--color-text-muted: #78715A;--color-success: #9DBF9E;--color-error: #BC6C25;--color-primary-light: #bbc8a6;--color-primary-dark: #848f6c;--color-secondary-light: #e6b780;--color-secondary-dark: #c48942;--color-panel-light: #cbb99a;--color-panel-dark: #9a8864;--color-background-transparent: rgba(244, 241, 225, .9);--color-panel-transparent: rgba(184, 162, 123, .9);--color-success-light: #b5d2b6;--color-success-dark: #7fa17f;--color-success-transparent: rgba(157, 191, 158, .7);--color-error-light: #d0884c;--color-error-dark: #9a5820;--color-error-transparent: rgba(188, 108, 37, .7)}body{background-color:var(--color-background);color:var(--color-text);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.app{width:100%;height:100vh;position:relative;text-align:center;background-color:var(--color-background)}button{background-color:var(--color-primary);color:var(--color-text);border:none;border-radius:4px;padding:8px 16px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}button:hover{background-color:var(--color-secondary)}button:active{transform:scale(.98)}button.success{background-color:var(--color-success)}button.success:hover{background-color:var(--color-success-light)}button.error{background-color:var(--color-error)}button.error:hover{background-color:var(--color-error-light)}.panel,.card{background-color:var(--color-panel);border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:16px}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-weight:700}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}input,select,textarea{background-color:var(--color-background);border:1px solid var(--color-panel-dark);color:var(--color-text);border-radius:4px;padding:8px 12px}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);outline:none}input.success,select.success,textarea.success{border-color:var(--color-success);background-color:var(--color-success-transparent)}input.error,select.error,textarea.error{border-color:var(--color-error);background-color:var(--color-error-transparent)}a{color:var(--color-primary-dark);text-decoration:none}a:hover{color:var(--color-secondary);text-decoration:underline}.game-container{width:100%;height:100%;display:flex;overflow:hidden}.controls-ui{position:absolute;bottom:20px;left:20px;background-color:#ffffffb3;padding:10px 15px;border-radius:8px;z-index:10;display:flex;flex-direction:column;gap:10px;font-family:Arial,sans-serif}.controls-selector{display:flex;align-items:center;gap:8px}.controls-selector select{padding:4px 8px;border-radius:4px;border:1px solid #ccc;background-color:#fff}.controls-help{font-size:.9rem;color:#333}.reward-notification,.achievement-popup,.level-complete{background-color:var(--color-success-transparent);border:2px solid var(--color-success);color:var(--color-text);border-radius:8px;padding:12px 20px;animation:success-pulse 2s ease-in-out}@keyframes success-pulse{0%{transform:scale(.95);opacity:0}50%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}.score-increase,.points-earned{color:var(--color-success);font-weight:700;animation:pop-up .5s ease-out}@keyframes pop-up{0%{transform:scale(.5);opacity:0}80%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.damage-alert,.obstacle-hit,.missed-target{background-color:var(--color-error-transparent);border:2px solid var(--color-error);color:var(--color-text);border-radius:8px;padding:12px 20px;animation:error-shake .5s ease-in-out}@keyframes error-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.health-decrease,.time-penalty{color:var(--color-error);font-weight:700;animation:fade-in .3s ease-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.progress-bar{height:10px;background-color:var(--color-panel-light);border-radius:5px;overflow:hidden}.progress-bar .filled{height:100%;background-color:var(--color-primary);transition:width .3s ease}.progress-bar.success .filled{background-color:var(--color-success)}.damage-notification{background-color:var(--color-error-transparent);border:2px solid var(--color-error);color:var(--color-text);border-radius:8px;padding:8px 12px;display:flex;justify-content:space-between;min-width:200px;font-weight:700;animation:notification-slide-in .3s ease-out}.damage-notification-value{color:var(--color-error);font-weight:700}@keyframes notification-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes notification-fade-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}.notification-container{position:absolute;top:100px;right:20px;z-index:100;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:var(--color-panel-light);color:var(--color-text);font-size:1.5rem;font-weight:700;z-index:1000}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}html,body,#root{width:100%;height:100%}
